From 05eb220cddc17563d117593d3ea0df97b66ed60c Mon Sep 17 00:00:00 2001 From: James Dixon Date: Sun, 12 Jul 2020 16:54:59 -0400 Subject: [PATCH] check for vimfile features, add settings --- vim/vimrc | 65 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 23 deletions(-) diff --git a/vim/vimrc b/vim/vimrc index a25f90e..fa86c97 100644 --- a/vim/vimrc +++ b/vim/vimrc @@ -9,22 +9,17 @@ if filereadable(expand('$VIMRUNTIME/defaults.vim')) source $VIMRUNTIME/defaults.vim endif -"vimfile paths -let myUndoDir = expand("$HOME/.vim/.undo") -let myBackupDir = expand("$HOME/.vim/.backup") -let mySwapDir = expand("$HOME/.vim/.swap") - -"plug paths -let plugDir = expand("$HOME/.vim/autoload/plug.vim") -let pluginDir = expand("$HOME/.vim/plugged") -let plugRemote = "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" - if has('win32') let &runtimepath.=",$HOME/.vim" endif "plugins (vim-plug) "------------------ +"vim-plug paths +let plugDir = expand("$HOME/.vim/autoload/plug.vim") +let pluginDir = expand("$HOME/.vim/plugged") +let plugRemote = "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" + "ensure vim-plug is installed on VimEnter if empty(glob(plugDir)) silent execute "!curl -fLo " . shellescape(expand(plugDir)) . " --create-dirs " . shellescape(plugRemote) @@ -80,21 +75,25 @@ let g:ale_linters = { \ 'javascript': ['standard'], \ 'markdown': ['mdl', 'write-good'] \} + let g:ale_fixers = { \ '*': ['remove_trailing_lines', 'trim_whitespace'], \ 'javascript': ['standard'], \ 'markdown': ['prettier'] \} + let g:ale_sign_error = '->' let g:ale_sign_warning = '--' -" let g:ale_lint_on_save = 1 -" let g:ale_fix_on_save = 1 +let g:ale_lint_on_save = 1 +let g:ale_fix_on_save = 1 "md let g:vim_markdown_folding_disabled = 1 +let g:vim_markdown_no_default_key_mappings = 1 +let g:vim_markdown_toc_autofit = 1 " colorschemes - +" {{{ " colorscheme 1989 " colorscheme PaperColor " colorscheme gruvbox @@ -108,6 +107,7 @@ let g:vim_markdown_folding_disabled = 1 " colorscheme wargrey " colorscheme Tomorrow-Night-Bright " colorscheme monokai-phoenix +" }}} "general settings "---------------- @@ -124,9 +124,11 @@ set confirm set background=dark set number set wrap +set foldmethod=marker set listchars=tab:→\ ,extends:›,precedes:‹,nbsp:·,trail:·,eol:¬ "set list -set foldmethod=marker + +"drawing set lazyredraw set regexpengine=1 set redrawtime=10000 @@ -166,18 +168,33 @@ set ttimeoutlen=20 "for keycodes set splitbelow set splitright -"undo/bkup dirs +"swap +let mySwapDir = expand("$HOME/.vim/.swap") +if !isdirectory(mySwapDir) + silent! call mkdir(mySwapDir, "p") +endif +let &directory=mySwapDir + +"undo if has('persistent_undo') - call mkdir(myUndoDir, "p") - call mkdir(myBackupDir, "p") - call mkdir(mySwapDir, "p") + let myUndoDir = expand("$HOME/.vim/.undo") + if !isdirectory(myUndoDir) + silent! call mkdir(myUndoDir, "p") + endif let &undodir=myUndoDir - let &backupdir=myBackupDir - let &directory=mySwapDir - set backup set undofile endif +"backup +if has('writebackup') + let myBackupDir = expand("$HOME/.vim/.backup") + if !isdirectory(myBackupDir) + silent! call mkdir(myBackupDir, "p") + endif + let &backupdir=myBackupDir + set backup +endif + "leader key let mapleader=' ' @@ -282,7 +299,7 @@ endfunction "syntax/filetype "--------------- -syntax enable +syntax on filetype plugin indent on runtime macros/matchit.vim @@ -318,7 +335,9 @@ if has("autocmd") autocmd! autocmd BufNewFile,BufRead *bash* set syntax=sh autocmd FileType python xnoremap r :'<,'>:w !python3 - autocmd FileType go set noexpandtab + autocmd FileType go set noexpandtab | + \ let g:go_auto_type_info = 1 | + \ let g:go_imports_autosave = 1 autocmd FileType html :syntax sync fromstart autocmd FileType html,javascript,css,json,yaml,sh \ setlocal ts=2 sts=2 sw=2 expandtab