X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/ac83ce247dd25fa01d0b113c8294ee7bc5fb5428..7766518825040eacb1c168c3bb004d22d2d73f30:/vim/vimrc?ds=inline diff --git a/vim/vimrc b/vim/vimrc index c74b75c..2cbf3b6 100644 --- a/vim/vimrc +++ b/vim/vimrc @@ -338,8 +338,21 @@ nnoremap p* :silent! set paste"*p:set nopaste " paste from clipboard nnoremap p+ :silent! set paste"+p:set nopaste -" Clean trailing whitespace -nnoremap ww m':%s/\s\+$//:let @/=''``zz +" strip trailing whitespace +function! StripWhitespace(line1, line2, ...) " {{{2 + let s_report = &report + let &report=0 + let pattern = a:0 ? a:1 : '[\\]\@,) +nnoremap ww :Untrail " Source vnoremap S y:execute @@:echo 'Sourced selection.' @@ -423,7 +436,9 @@ nnoremap i vnoremap s " fix legacy vi inconsistency -map Y y$ +nnoremap Y y$ +" copy to clipboard +xnoremap Y "+y " allow repeat operator on visual vnoremap . :normal . @@ -446,6 +461,11 @@ for idt in range(1,8) exe 'nnoremap co'.idt.' :set tabstop='.idt.' shiftwidth='.idt.' softtabstop='.idt.'' endfor +" toggle auto format of text +nnoremap coa :set =&formatoptions =~ "a" ? 'formatoptions-=a' : 'formatoptions+=a' +nnoremap [oa :set formatoptions+=a +nnoremap ]oa :set formatoptions-=a + " space will toggle current fold in normal mode nnoremap za " create folds around visual selection @@ -545,7 +565,9 @@ let g:tagbar_iconchars = ['+', '-'] " ultisnips {{{2 let g:UltiSnipsEditSplit = 'vertical' let g:UltiSnipsSnippetsDir = expand("$XDG_CONFIG_HOME/vim/ultisnips") -let g:UltiSnipsSnippetDirectories = ["UltiSnips", "ultisnips"] +if has('fname_case') + let g:UltiSnipsSnippetDirectories = ["UltiSnips", "ultisnips"] +endif let g:UltiSnipsExpandTrigger = "" let g:UltiSnipsJumpForwardTrigger = "" let g:UltiSnipsJumpBackwardTrigger = "" @@ -635,9 +657,11 @@ let g:ycm_extra_conf_globlist = ['~/src/*','/mnt/data/src/*'] let g:ycm_global_ycm_extra_conf = expand('$XDG_CONFIG_HOME/vim/ycm_extra_conf.py') let g:ycm_extra_conf_vim_data = ['getcwd()'] let g:ycm_add_preview_to_completeopt = 1 +let g:ycm_complete_in_comments = 1 +let g:ycm_complete_in_strings = 1 let g:ycm_autoclose_preview_window_after_insertion = 0 "let g:ycm_extra_conf_vim_data = ['%:p'] -nnoremap jd :YcmCompleter GoTo +nnoremap gd :YcmCompleter GoTo " vim-easy-align {{{2 " start interactive EasyAlign in visual mode