" Environment { " Basics { set nocompatible " Must be first line " So we don't need to put it inside autoload source ~/.dotfiles/autoload/plug.vim " } " } " Deps { "Plug 'MarcWeber/vim-addon-mw-utils' "Plug 'tomtom/tlib_vim' " } " " Plugin directory let plugin_dir = '~/.vim/plugged/' call plug#begin(plugin_dir) Plug 'neoclide/coc.nvim', {'branch': 'release'} " add desired extensions to the following global variable " coc-tsserver: javascript " coc-pyright: python " coc-clangd: c/c++, may need to install clangd seperatly let g:coc_global_extensions = ['coc-pyright', 'coc-rls'] Plug 'rust-lang/rust.vim' " syntax highlighting(and more) for typescript " { Plug 'leafgarland/typescript-vim' " } " { Plug 'alvan/vim-closetag' let g:closetag_filenames = '*.html,*.xhtml,*.phtml, *.js' " } Plug 'altercation/vim-colors-solarized' "Plug 'lifepillar/vim-solarized8' "Plug 'spf13/vim-colors' Plug 'scrooloose/nerdtree' " for markdown{ Plug 'godlygeek/tabular' Plug 'preservim/vim-markdown' "} " for window resize{ Plug 'simeji/winresizer' let g:winresizer_start_key = '' let g:winresizer_vert_resize = 2 let g:winresizer_horiz_resize = 2 " } Plug 'tpope/vim-surround' Plug 'rhysd/conflict-marker.vim' " { Plug 'jiangmiao/auto-pairs' "let g:AutoPairsFlyMode = 1 " } " { Plug 'mg979/vim-visual-multi' " } Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' " For nvim-bufferline " { "Plug 'kyazdani42/nvim-web-devicons' "Plug 'akinsho/nvim-bufferline.lua' " } Plug 'bling/vim-bufferline' Plug 'easymotion/vim-easymotion' Plug 'nathanaelkane/vim-indent-guides' Plug 'vim-scripts/restore_view.vim' if executable('fzf') Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } endif call plug#end() " Plugin Preferences " " NerdTree { if isdirectory(expand(plugin_dir . "/nerdtree")) let g:NERDShutUp=1 nnoremap :NERDTreeToggle nmap e :NERDTreeFind let NERDTreeShowBookmarks=1 "let NERDTreeIgnore=['\.py[cd]$', '\~$', '\.swo$', '\.swp$', '^\.git$', '^\.hg$', '^\.svn$', '\.bzr$'] let NERDTreeChDirMode=0 let NERDTreeQuitOnOpen=1 let NERDTreeMouseMode=2 let NERDTreeShowHidden=1 let NERDTreeKeepTreeInNewTab=1 endif " } " indent_guides { if isdirectory(expand(plugin_dir . "/vim-indent-guides/")) let g:indent_guides_start_level = 2 let g:indent_guides_guide_size = 1 let g:indent_guides_enable_on_vim_startup = 0 map i :IndentGuidesToggle endif " } " vim-airline { " Set configuration options for the statusline plugin vim-airline. " Use the powerline theme and optionally enable powerline symbols. " To use the symbols , , , , , , and .in the statusline " segments add the following to your .vimrc.before.local file: " let g:airline_powerline_fonts=1 " If the previous symbols do not render for you then install a " powerline enabled font. " See `:echo g:airline_theme_map` for some more choices " Default in terminal vim is 'dark' let g:airline_section_z = '' let g:airline_section_y = '' if isdirectory(expand(plugin_dir . "/vim-airline-themes/")) if !exists('g:airline_theme') let g:airline_theme = 'solarized' endif endif " junegunnjunegunn/fzf { " [Buffers] Jump to the existing window if possible let g:fzf_buffers_jump = 1 let $FZF_DEFAULT_COMMAND = 'find -L' noremap f :FZF " } " }