Update config

master
taco_diabolo 1 year ago
parent 9d623906fc
commit eaa6dfd17b
  1. 27
      .vim/pluginconfig/vim-ale.vim
  2. 151
      .vim/pluginconfig/vim-coc.vim
  3. 6
      .vim/pluginconfig/vim-deoplete.vim
  4. 10
      .vim/pluginconfig/vim-devicons.vim
  5. 88
      .vim/pluginconfig/vim-fern.vim
  6. 9
      .vim/pluginconfig/vim-gitgutter.vim
  7. 47
      .vim/pluginconfig/vim-keymaps.vim
  8. 10
      .vim/pluginconfig/vim-nerdtree.vim
  9. 11
      .vim/pluginconfig/vim-netrw.vim
  10. 53
      .vim/pluginconfig/vim-plug.vim
  11. 11
      .vim/pluginconfig/vim-syntastic.vim
  12. 179
      .vimrc

@ -0,0 +1,27 @@
let g:ale_disable_lsp = 1
"let b:ale_fixers = {'python': ['flake8']}
let g:ale_lint_on_text_changed = 1
let g:ale_lint_on_insert_leave = 1
let g:ale_lint_on_enter = 1
" Enable completion where available.
" This setting must be set before ALE is loaded.
"
" You should not turn this setting on if you wish to use ALE as a completion
" source for other completion plugins, like Deoplete.
let g:ale_completion_enabled = 0
let g:ale_lint_on_text_changed = 'always'
let g:ale_fix_on_save = 0
let g:ale_linters = {
\ 'python': ['flake8', 'bandit']
\ }
let g:ale_fixers = {
\ 'python': ['autopep8', 'black'],
\ '*': []
\ }
let g:airline#extensions#ale#enabled = 1
"let g:ale_echo_msg_format = '[%linter%] %code%: %s'

@ -0,0 +1,151 @@
" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
" delays and poor user experience.
set updatetime=300
" Don't pass messages to |ins-completion-menu|.
set shortmess+=c
" Always show the signcolumn, otherwise it would shift the text each time
" diagnostics appear/become resolved.
if has("nvim-0.5.0") || has("patch-8.1.1564")
" Recently vim can merge signcolumn and number column into one
set signcolumn=number
else
set signcolumn=yes
endif
" Use tab for trigger completion with characters ahead and navigate.
" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by
" other plugin before putting this into your config.
inoremap <silent><expr> <TAB>
\ pumvisible() ? "\<C-n>" :
\ <SID>check_back_space() ? "\<TAB>" :
\ coc#refresh()
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
function! s:check_back_space() abort
let col = col('.') - 1
return !col || getline('.')[col - 1] =~# '\s'
endfunction
" Use <c-space> to trigger completion.
if has('nvim')
inoremap <silent><expr> <c-space> coc#refresh()
else
inoremap <silent><expr> <c-@> coc#refresh()
endif
" Make <CR> auto-select the first completion item and notify coc.nvim to
" format on enter, <cr> could be remapped by other vim plugin
inoremap <silent><expr> <cr> pumvisible() ? coc#_select_confirm()
\: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>"
" Use `[g` and `]g` to navigate diagnostics
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)
" GoTo code navigation.
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)
" Use K to show documentation in preview window.
nnoremap <silent> K :call <SID>show_documentation()<CR>
function! s:show_documentation()
if (index(['vim','help'], &filetype) >= 0)
execute 'h '.expand('<cword>')
elseif (coc#rpc#ready())
call CocActionAsync('doHover')
else
execute '!' . &keywordprg . " " . expand('<cword>')
endif
endfunction
" Highlight the symbol and its references when holding the cursor.
autocmd CursorHold * silent call CocActionAsync('highlight')
" Symbol renaming.
nmap <leader>rn <Plug>(coc-rename)
" Formatting selected code.
xmap <leader>f <Plug>(coc-format-selected)
nmap <leader>f <Plug>(coc-format-selected)
augroup mygroup
autocmd!
" Setup formatexpr specified filetype(s).
autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected')
" Update signature help on jump placeholder.
autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
augroup end
" Applying codeAction to the selected region.
" Example: `<leader>aap` for current paragraph
xmap <leader>a <Plug>(coc-codeaction-selected)
nmap <leader>a <Plug>(coc-codeaction-selected)
" Remap keys for applying codeAction to the current buffer.
nmap <leader>ac <Plug>(coc-codeaction)
" Apply AutoFix to problem on the current line.
nmap <leader>qf <Plug>(coc-fix-current)
" Map function and class text objects
" NOTE: Requires 'textDocument.documentSymbol' support from the language server.
xmap if <Plug>(coc-funcobj-i)
omap if <Plug>(coc-funcobj-i)
xmap af <Plug>(coc-funcobj-a)
omap af <Plug>(coc-funcobj-a)
xmap ic <Plug>(coc-classobj-i)
omap ic <Plug>(coc-classobj-i)
xmap ac <Plug>(coc-classobj-a)
omap ac <Plug>(coc-classobj-a)
" Remap <C-f> and <C-b> for scroll float windows/popups.
if has('nvim-0.4.0') || has('patch-8.2.0750')
nnoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? coc#float#scroll(1) : "\<C-f>"
nnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>"
inoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? "\<c-r>=coc#float#scroll(1)\<cr>" : "\<Right>"
inoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? "\<c-r>=coc#float#scroll(0)\<cr>" : "\<Left>"
vnoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? coc#float#scroll(1) : "\<C-f>"
vnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>"
endif
" Use CTRL-S for selections ranges.
" Requires 'textDocument/selectionRange' support of language server.
" nmap <silent> <C-s> <Plug>(coc-range-select)
" xmap <silent> <C-s> <Plug>(coc-range-select)
" Add `:Format` command to format current buffer.
command! -nargs=0 Format :call CocAction('format')
" Add `:Fold` command to fold current buffer.
command! -nargs=? Fold :call CocAction('fold', <f-args>)
" Add `:OR` command for organize imports of the current buffer.
command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport')
" Add (Neo)Vim's native statusline support.
" NOTE: Please see `:h coc-status` for integrations with external plugins that
" provide custom statusline: lightline.vim, vim-airline.
set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}
" Mappings for CoCList
" Show all diagnostics.
nnoremap <silent><nowait> <space>a :<C-u>CocList diagnostics<cr>
" Manage extensions.
nnoremap <silent><nowait> <space>e :<C-u>CocList extensions<cr>
" Show commands.
nnoremap <silent><nowait> <space>c :<C-u>CocList commands<cr>
" Find symbol of current document.
nnoremap <silent><nowait> <space>o :<C-u>CocList outline<cr>
" Search workspace symbols.
nnoremap <silent><nowait> <space>s :<C-u>CocList -I symbols<cr>
" Do default action for next item.
nnoremap <silent><nowait> <space>j :<C-u>CocNext<CR>
" Do default action for previous item.
nnoremap <silent><nowait> <space>k :<C-u>CocPrev<CR>
" Resume latest coc list.
nnoremap <silent><nowait> <space>p :<C-u>CocListResume<CR>

@ -0,0 +1,6 @@
let g:deoplete#enable_at_startup = 1
" deoplete tab-complete
inoremap <expr><tab> pumvisible() ? "\<c-n>" : "\<tab>"
" tern
autocmd FileType javascript nnoremap <silent> <buffer> gb :TernDef<CR>

@ -0,0 +1,10 @@
let g:webdevicons_enable_ctrlp = 1
let g:webdevicons_enable_airline_statusline = 1
let g:webdevicons_enable_airline_tabline = 1
let g:webdevicons_enable_nerdtree = 1
let g:WebDevIconsUnicodeGlyphDoubleWidth = 1
let g:webdevicons_conceal_nerdtree_brackets = 1
let g:WebDevIconsNerdTreeAfterGlyphPadding = ' '
let g:WebDevIconsNerdTreeGitPluginForceVAlign = 1
let g:WebDevIconsTabAirLineAfterGlyphPadding = ' '
let g:WebDevIconsTabAirLineBeforeGlyphPadding = ' '

@ -0,0 +1,88 @@
" Disable listing ignored files/directories
let g:fern_git_status#disable_ignored = 1
" Disable listing untracked files
let g:fern_git_status#disable_untracked = 1
" Disable listing status of submodules
let g:fern_git_status#disable_submodules = 1
" Disable listing status of directories
let g:fern_git_status#disable_directories = 1
let g:fern#renderer = "DroidSansMono_Nerd_Font"
augroup my-glyph-palette
autocmd! *
autocmd FileType fern call glyph_palette#apply()
autocmd FileType nerdtree,startify call glyph_palette#apply()
augroup END
function! s:init_fern() abort
" Use 'select' instead of 'edit' for default 'open' action
nmap <buffer> <Plug>(fern-action-open) <Plug>(fern-action-open:select)
endfunction
augroup fern-custom
autocmd! *
autocmd FileType fern call s:init_fern()
augroup END
function! s:init_fern() abort
" Define NERDTree like mappings
nmap <buffer> o <Plug>(fern-action-open:edit)
nmap <buffer> go <Plug>(fern-action-open:edit)<C-w>p
nmap <buffer> t <Plug>(fern-action-open:tabedit)
nmap <buffer> T <Plug>(fern-action-open:tabedit)gT
nmap <buffer> i <Plug>(fern-action-open:split)
nmap <buffer> gi <Plug>(fern-action-open:split)<C-w>p
nmap <buffer> s <Plug>(fern-action-open:vsplit)
nmap <buffer> gs <Plug>(fern-action-open:vsplit)<C-w>p
nmap <buffer> ma <Plug>(fern-action-new-path)
nmap <buffer> P gg
nmap <buffer> C <Plug>(fern-action-enter)
nmap <buffer> u <Plug>(fern-action-leave)
nmap <buffer> r <Plug>(fern-action-reload)
nmap <buffer> R gg<Plug>(fern-action-reload)<C-o>
nmap <buffer> cd <Plug>(fern-action-cd)
nmap <buffer> CD gg<Plug>(fern-action-cd)<C-o>
nmap <buffer> I <Plug>(fern-action-hide-toggle)
nmap <buffer> q :<C-u>quit<CR>
endfunction
function! s:init_fern() abort
nmap <buffer><expr>
\ <Plug>(fern-my-expand-or-collapse)
\ fern#smart#leaf(
\ "\<Plug>(fern-action-collapse)",
\ "\<Plug>(fern-action-expand)",
\ "\<Plug>(fern-action-collapse)",
\ )
nmap <buffer><nowait> l <Plug>(fern-my-expand-or-collapse)
endfunction
function! s:init_fern() abort
nmap <buffer><expr>
\ <Plug>(fern-my-expand-or-enter)
\ fern#smart#drawer(
\ "\<Plug>(fern-open-or-expand)",
\ "\<Plug>(fern-open-or-enter)",
\ )
nmap <buffer><expr>
\ <Plug>(fern-my-collapse-or-leave)
\ fern#smart#drawer(
\ "\<Plug>(fern-action-collapse)",
\ "\<Plug>(fern-action-leave)",
\ )
nmap <buffer><nowait> l <Plug>(fern-my-expand-or-enter)
nmap <buffer><nowait> h <Plug>(fern-my-collapse-or-leave)
endfunction

@ -0,0 +1,9 @@
highlight GitGutterAdd guifg=#009900 ctermfg=Green
highlight GitGutterChange guifg=#bbbb00 ctermfg=Yellow
highlight GitGutterDelete guifg=#ff2222 ctermfg=Red
let g:gitgutter_enabled = 1
let g:gitgutter_map_keys = 0
set updatetime=100
"let g:gitgutter_highlight_lines = 1
"let g:gitgutter_highlight_linenrs = 1
"let g:gitgutter_log=1

@ -0,0 +1,47 @@
nnoremap k gk
nnoremap j gj
nnoremap <Down> gj
nnoremap <Up> gk
vmap k gk
vmap j gj
vmap <Down> gj
vmap <Up> gk
vmap <Right> l
vmap <Left> h
inoremap <Up> <C-o>gk
inoremap <Down> <C-o>gj
nnoremap / /\c
nnoremap ? ?\c
nnoremap o o<ESC>i
"inoremap <C-v> "+p
vnoremap <C-C> "+y
vnoremap <C-d> d
vnoremap <C-C> "+y
vnoremap <C-Insert> "+y
noremap <C-A> <C-C>ggvG$
inoremap <C-A> <C-C>ggvG$
cnoremap <C-A> <C-C>ggvG$
onoremap <C-A> <C-C>ggvG$
snoremap <C-A> <C-C>ggvG$
xnoremap <C-A> <C-C>ggvG$
nnoremap d "_d
vnoremap d "_d
nnoremap <BS> "_d<Esc>
vnoremap <BS> "_d<Esc>
nnoremap <Del> "_d<Esc>
vnoremap <Del> "_d<Esc>

@ -0,0 +1,10 @@
" Exit Vim if NERDTree is the only window left.
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() |
\ quit | endif
let g:NERDTreeDirArrowExpandable = '►'
let g:NERDTreeDirArrowCollapsible = '▼'
let NERDTreeShowLineNumbers=1
let NERDTreeShowHidden=1
let g:NERDTreeWinSize=38
let NERDTreeQuitOnOpen = 1

@ -0,0 +1,11 @@
" Test netrw
let g:netrw_liststyle = 3
let g:netrw_banner = 0
let g:netrw_browse_split = 4
let g:netrw_altv = 1
let g:netrw_winsize = 25
"augroup ProjectDrawer
" autocmd!
" autocmd VimEnter * :Vexplore
"augroup END

@ -0,0 +1,53 @@
"let data_dir = has('nvim') ? stdpath('data') . '/site' : '/Program Files/Vim/vim82'
"if empty(glob(data_dir . '/autoload/plug.vim'))
" silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
" autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
"endif
" Specify a directory for plugins
" - For Neovim: stdpath('data') . '/plugged'
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('/home/vmware/.vim/pack/')
"
Plug 'junegunn/vim-plug'
"
Plug 'preservim/nerdtree'
"
Plug 'tpope/vim-surround'
"
Plug 'tpope/vim-unimpaired'
"
Plug 'inkarkat/vim-ExtractMatches'
"
Plug 'inkarkat/vim-ingo-library'
"
"Plug 'PProvost/vim-ps1'
"
"Plug 'ekalinin/Dockerfile.vim'
"
Plug 'vim-airline/vim-airline-themes'
"
Plug 'vim-airline/vim-airline'
"
Plug 'ryanoasis/vim-devicons'
"
Plug 'jamessan/vim-gnupg'
"
Plug 'airblade/vim-gitgutter'
"
Plug 'tpope/vim-fugitive'
"
Plug 'xuyuanp/nerdtree-git-plugin'
"
"Plug 'scrooloose/syntastic'
"
Plug 'dense-analysis/ale'
"
Plug 'davidhalter/jedi-vim'
"
Plug 'ctrlpvim/ctrlp.vim'
"
Plug 'neoclide/coc.nvim', {'branch': 'release'}
"
" Initialize plugin system
call plug#end()

@ -0,0 +1,11 @@
"let g:syntastic_always_populate_loc_list = 1
"let g:syntastic_auto_loc_list = 1
"let g:syntastic_check_on_open = 1
"let g:syntastic_check_on_wq = 0
" Check pylint for python
"let g:syntastic_python_flake8_exe = 'D:\Program Files\Python39\Scripts\flake8.exe'
"let g:syntastic_python_checkers = ['bandit', 'flake8', 'pylint']
"let g:syntastic_python_bandit_exe = 'D:\Program Files\Python39\Scripts\bandit.exe'
"
"let g:airline#extensions#syntastic#stl_format_err = 1
"let g:airline#extensions#syntastic#stl_format_warn = 1

179
.vimrc

@ -112,17 +112,11 @@ endif
"autocmd BufWritePre * :call CleanExtraSpaces()
" Exit Vim if NERDTree is the only window left.
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() |
\ quit | endif
"if (&diff==0)
" :autocmd BufReadPost * tab ball
"endif
set history=50
if has('gui_running')
@ -141,26 +135,13 @@ set nowritebackup
set noswapfile
set noundofile
"set equalalways
set path+=**
set encoding=utf8
set number relativenumber
map <C-o> :NERDTreeToggle<CR>
let g:NERDTreeDirArrowExpandable = '►'
let g:NERDTreeDirArrowCollapsible = '▼'
let NERDTreeShowLineNumbers=1
let NERDTreeShowHidden=1
let g:NERDTreeWinSize=38
let NERDTreeQuitOnOpen = 1
let g:GPGUseAgent = 1
let g:GPGPreferSymmetric = 1
let g:GPGPreferArmor = 1
"autocmd BufReadPre *.asc :set textwidth=72
"autocmd BufReadPre *.gpg :set textwidth=72
"autocmd BufReadPre *.pgp :set textwidth=72
"autocmd BufWritePre *.asc :set textwidth=72
"autocmd BufWritePre *.gpg :set textwidth=72
"autocmd BufWritePre *.pgp :set textwidth=72
"autocmd User GnuPG setlocal textwidth=72
set autoread
set viminfo=""
set wrap
@ -192,146 +173,40 @@ autocmd! bufwritepost /home/vmware/.vimrc source %
"set listchars=eol:¬,tab:>·,trail:~,extends:>,precedes:<,space:␣
"set list
nnoremap k gk
nnoremap j gj
nnoremap <Down> gj
nnoremap <Up> gk
vmap k gk
vmap j gj
vmap <Down> gj
vmap <Up> gk
vmap <Right> l
vmap <Left> h
inoremap <Up> <C-o>gk
inoremap <Down> <C-o>gj
nnoremap / /\c
nnoremap ? ?\c
nnoremap o o<ESC>i
let g:airline_powerline_fonts = 1
set rop=type:directx,gamma:1.0,contrast:0.5,level:1,geom:1,renmode:4,taamode:1
let g:airline_theme='murmur'
""source $HOME/.vim/colors/hacker.vim
source $HOME/.vim/colors/DarkModeReloaded.vim
""source /home/vmware/.vim/colors/hacker.vim
source /home/vmware/.vim/colors/DarkModeReloaded.vim
set guiheadroom=0
autocmd BufReadPre *.nfo :setlocal fileencodings=cp437,utf-8
autocmd BufReadPre *.nfo_original :setlocal fileencodings=cp437,utf-8
vnoremap <C-C> "+y
vnoremap <C-d> d
vnoremap <C-C> "+y
vnoremap <C-Insert> "+y
noremap <C-A> <C-C>ggvG$
inoremap <C-A> <C-C>ggvG$
cnoremap <C-A> <C-C>ggvG$
onoremap <C-A> <C-C>ggvG$
snoremap <C-A> <C-C>ggvG$
xnoremap <C-A> <C-C>ggvG$
nnoremap d "_d
vnoremap d "_d
nnoremap <BS> "_d<Esc>
vnoremap <BS> "_d<Esc>
nnoremap <Del> "_d<Esc>
vnoremap <Del> "_d<Esc>
" Git Gutter
highlight GitGutterAdd guifg=#009900 ctermfg=Green
highlight GitGutterChange guifg=#bbbb00 ctermfg=Yellow
highlight GitGutterDelete guifg=#ff2222 ctermfg=Red
let g:gitgutter_enabled = 1
let g:gitgutter_map_keys = 0
let g:gitgutter_highlight_lines = 1
let g:gitgutter_highlight_linenrs = 1
"let g:gitgutter_log=1
set updatetime=100
"let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0
" Check pylint for python
"let g:syntastic_python_flake8_exe = '~/.local/bin/flake8.exe'
"let g:syntastic_python_checkers = ['flake8']
"let g:syntastic_python_bandit_exe = '~/.local/bin/bandit.exe'
let g:airline#extensions#syntastic#stl_format_err = 1
let g:airline#extensions#syntastic#stl_format_warn = 1
let g:python3_host_prog = '/usr/bin/python3.exe'
" deoplete tab-complete
inoremap <expr><tab> pumvisible() ? "\<c-n>" : "\<tab>"
" tern
autocmd FileType javascript nnoremap <silent> <buffer> gb :TernDef<CR>
"let data_dir = has('nvim') ? stdpath('data') . '/site' : '/Program Files/Vim/vim82'
"if empty(glob(data_dir . '/autoload/plug.vim'))
" silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
" autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
"endif
" Specify a directory for plugins
" - For Neovim: stdpath('data') . '/plugged'
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/pack')
"
Plug 'junegunn/vim-plug'
"
Plug 'preservim/nerdtree'
"
Plug 'tpope/vim-surround'
"
Plug 'tpope/vim-unimpaired'
"
Plug 'inkarkat/vim-ExtractMatches'
"
Plug 'inkarkat/vim-ingo-library'
"
Plug 'PProvost/vim-ps1'
"
Plug 'ekalinin/Dockerfile.vim'
"
Plug 'vim-airline/vim-airline-themes'
"
Plug 'vim-airline/vim-airline'
"
Plug 'ryanoasis/vim-devicons'
"
Plug 'jamessan/vim-gnupg'
"
Plug 'airblade/vim-gitgutter'
"
Plug 'tpope/vim-fugitive'
"
Plug 'xuyuanp/nerdtree-git-plugin'
"
Plug 'scrooloose/syntastic'
"
Plug 'davidhalter/jedi-vim'
"
Plug 'ctrlpvim/ctrlp.vim'
"
Plug 'neoclide/coc.nvim'
"
" Initialize plugin system
call plug#end()
function! s:DiffWithSaved()
let filetype=&ft
diffthis
vnew | r # | normal! 1Gdd
diffthis
exe "setlocal bt=nofile bh=wipe nobl noswf ro ft=" . filetype
endfunction
com! DiffSaved call s:DiffWithSaved()
"source /home/vmware/.vim/pluginconfig/vim-deoplete.vim
"source /home/vmware/.vim/pluginconfig/vim-netrw.vim
source /home/vmware/.vim/pluginconfig/vim-ale.vim
"source /home/vmware/.vim/pluginconfig/vim-syntastic.vim
source /home/vmware/.vim/pluginconfig/vim-devicons.vim
source /home/vmware/.vim/pluginconfig/vim-gitgutter.vim
source /home/vmware/.vim/pluginconfig/vim-keymaps.vim
source /home/vmware/.vim/pluginconfig/vim-nerdtree.vim
"source /home/vmware/.vim/pluginconfig/vim-fern.vim
source /home/vmware/.vim/pluginconfig/vim-coc.vim
source /home/vmware/.vim/pluginconfig/vim-plug.vim
Loading…
Cancel
Save