call plug#begin('~/.vim/plugged') let mapleader="\" let maplocalleader="\\" Plug 'arcticicestudio/nord-vim' Plug 'vim-airline/vim-airline' let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#ale#enabled = 1 let g:airline_powerline_fonts = 1 Plug 'vim-airline/vim-airline-themes' Plug 'tpope/vim-sensible' Plug 'tpope/vim-repeat' " repeats plugin maps Plug 'tpope/vim-surround' " cs[{ -> change surrounding [ to {, cst -> change surrounding tag, ysiw] -> surround inner word with ], etc. Plug 'tpope/vim-fugitive' " Gdiff, Gblame, Gstatus - to add/reset, Gcommit Plug 'tpope/vim-endwise' " automatically add end block keyword or symbol Plug 'tpope/vim-unimpaired' Plug 'tpope/vim-speeddating' " ctrl-a & ctrl-x on dates works Plug 'tpope/vim-jdaddy' " cij: change inner json. gqaj: pretty print json Plug 'w0rp/ale' Plug 'honza/vim-snippets' " Plug 'autozimu/LanguageClient-neovim', { 'branch': 'next', 'do': 'bash install.sh' } Plug 'neoclide/coc.nvim', {'do': { -> coc#util#install()}} Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } Plug 'junegunn/fzf.vim' Plug 'christoomey/vim-tmux-navigator' " ctrl-l -> right in vim splits then tmux panes, etc. Plug 'terryma/vim-multiple-cursors' " ctrl-n -> start & next, ctrl-p -> prev, ctrl-x -> skip Plug 'easymotion/vim-easymotion' " w -> word, fx -> find x let g:EasyMotion_smartcase = 1 Plug 'justinmk/vim-sneak' " stp -> jump to next occurance of 'tp'. ; -> next. , -> go back, `` -> back home Plug 'scrooloose/nerdcommenter' " toggle: c, comment: cc Plug 'scrooloose/nerdtree' nnoremap t :NERDTreeToggle Plug 'mattn/emmet-vim' " ctrl-y,. formely sparkup Plug 'mbbill/undotree' nnoremap u :UndotreeToggle Plug 'coderifous/textobj-word-column.vim' " cic -> change inner column Plug 'kshenoy/vim-signature' " mx -> mark x, dmx delete mark x, m, -> place next mark, m. -> place next or toggle, m- -> delete, m -> delete all, ]` jump, etc. Plug 'junegunn/vim-easy-align' " gaip= -> align inner paragraph on = xmap ga (EasyAlign) nmap ga (EasyAlign) Plug 'gregsexton/MatchTag' " highlight matching HTML tag Plug 'qstrahl/vim-matchmaker' " highlight matching word under cursor let g:matchmaker_enable_startup = 1 let g:matchmaker_ignore_single_match = 1 Plug 'bruno-/vim-vertical-move' " move vertically without changing column: [v, ]v Plug 'ntpeters/vim-better-whitespace' " highlights trailing whitespace, provides :StripWhiteSpace Plug 'sdanielf/vim-stdtabs' " standard indentiation per language Plug 'mhinz/vim-signify' " vcs in gutter. previously 'airblade/vim-gitgutter' Plug 'terryma/vim-expand-region' " + to expand, _ to shrink. previously 'gcmt/wildfire.vim' Plug 'tommcdo/vim-exchange' " e.g. swap words: cxiw, move to other word, cxiw. swap lines: cxx, etc. Plug 'vim-scripts/argtextobj.vim' " e.g. cia -> change inner argument Plug 'vim-scripts/matchit.zip' " % will match more things Plug 'AndrewRadev/splitjoin.vim' " gS, gJ Plug 'junegunn/goyo.vim' " distraction free mode nmap g :Goyo Plug 'jceb/vim-orgmode' Plug 'sheerun/vim-polyglot' " syntax and indentation for many languages Plug 'ryanoasis/vim-devicons' " icons in airline, NERDTree, etc. Plug 'TaDaa/vimade' " fade inactive buffer Plug 'mhinz/vim-startify' " fancy start page Plug 'voldikss/vim-floaterm' " floating terminal noremap T :FloatermTogglei autocmd User Startified setlocal buflisted " fixing floaterm on Startify call plug#end() " set hidden " allow hidden unsaved buffers " set noswapfile " turn off swapfiles set number " line numbers " set wrap " set formatoptions=rqn1 " set smartindent set ignorecase set smartcase " if we include uppercase, it will be case sensitive " clear highlighting nnoremap / :noh " regex set magic set mouse=a " a = all modes: nvic let g:nord_italic = 1 " let g:nord_italic_comments = 1 let g:nord_underline = 1 colorscheme nord " open the current file for edit in Perforce nnoremap p4 :! p4 edit % " open split and switch to it nnoremap v vl nnoremap s sj " Browser let g:netrw_browsex_viewer = "browser" " FZF nnoremap a :Ag nnoremap f :Files nnoremap b :Buffers nnoremap w :Windows nnoremap c :Commands nnoremap hf :History nnoremap hc :History: nnoremap hs :History/ nnoremap l :BLines nnoremap l :Lines " nnoremap t :BTags nnoremap t :Tags nnoremap gc :BCommits nnoremap gc :Commits nmap (fzf-maps-n) xmap (fzf-maps-x) omap (fzf-maps-o) imap (fzf-complete-word) imap (fzf-complete-path) imap (fzf-complete-file-ag) imap (fzf-complete-line) " Coc inoremap \ pumvisible() ? coc#_select_confirm() : \ coc#expandableOrJumpable() ? coc#rpc#request('doKeymap', ['snippets-expand-jump','']) : \ check_back_space() ? "\" : \ coc#refresh() function! s:check_back_space() abort let col = col('.') - 1 return !col || getline('.')[col - 1] =~# '\s' endfunction let g:coc_snippet_next = '' let g:coc_snippet_prev = ''