vimrc: Gutentags and gu for GitGutterUndoHunk
modules
This commit is contained in:
84
.vimrc
84
.vimrc
@@ -26,6 +26,7 @@ if filereadable(expand(vundle_dir) . "/README.md")
|
||||
Plugin 'cpiger/NeoDebug'
|
||||
Plugin 'ivan-krukov/vim-snakemake'
|
||||
Plugin 'nvie/vim-flake8'
|
||||
Plugin 'ludovicchabant/vim-gutentags'
|
||||
|
||||
call vundle#end() " required
|
||||
else
|
||||
@@ -110,6 +111,73 @@ noremap Y y$
|
||||
command! -bang -range=% -complete=file -nargs=* W <line1>,<line2>write<bang> <args>
|
||||
command! -bang Q quit<bang>
|
||||
|
||||
" Gutentags configuration
|
||||
let g:gutentags_add_default_project_roots = 0
|
||||
let g:gutentags_project_root = ['.git']
|
||||
|
||||
let g:gutentags_generate_on_new = 1
|
||||
let g:gutentags_generate_on_missing = 1
|
||||
let g:gutentags_generate_on_write = 1
|
||||
let g:gutentags_generate_on_empty_buffer = 0
|
||||
|
||||
" Put all tags in one place
|
||||
let g:gutentags_cache_dir = expand('~/.cache/vim/ctags/')
|
||||
|
||||
" Extra tag information
|
||||
let g:gutentags_ctags_extra_args = [
|
||||
\ '--tag-relative=yes',
|
||||
\ '--fields=+ailmnS',
|
||||
\ ]
|
||||
|
||||
let g:gutentags_ctags_exclude = [
|
||||
\ '*.git', '*.svg', '*.hg',
|
||||
\ '*/tests/*',
|
||||
\ 'build',
|
||||
\ 'dist',
|
||||
\ '*sites/*/files/*',
|
||||
\ 'bin',
|
||||
\ 'node_modules',
|
||||
\ 'bower_components',
|
||||
\ 'cache',
|
||||
\ 'compiled',
|
||||
\ 'docs',
|
||||
\ 'example',
|
||||
\ 'bundle',
|
||||
\ 'vendor',
|
||||
\ '*.md',
|
||||
\ '*-lock.json',
|
||||
\ '*.lock',
|
||||
\ '*bundle*.js',
|
||||
\ '*build*.js',
|
||||
\ '.*rc*',
|
||||
\ '*.json',
|
||||
\ '*.min.*',
|
||||
\ '*.map',
|
||||
\ '*.bak',
|
||||
\ '*.zip',
|
||||
\ '*.pyc',
|
||||
\ '*.class',
|
||||
\ '*.sln',
|
||||
\ '*.Master',
|
||||
\ '*.csproj',
|
||||
\ '*.tmp',
|
||||
\ '*.csproj.user',
|
||||
\ '*.cache',
|
||||
\ '*.pdb',
|
||||
\ 'tags*',
|
||||
\ 'cscope.*',
|
||||
\ '*.css',
|
||||
\ '*.less',
|
||||
\ '*.scss',
|
||||
\ '*.exe', '*.dll',
|
||||
\ '*.mp3', '*.ogg', '*.flac',
|
||||
\ '*.swp', '*.swo',
|
||||
\ '*.bmp', '*.gif', '*.ico', '*.jpg', '*.png',
|
||||
\ '*.rar', '*.zip', '*.tar', '*.tar.gz', '*.tar.xz', '*.tar.bz2',
|
||||
\ '*.pdf', '*.doc', '*.docx', '*.ppt', '*.pptx',
|
||||
\ ]
|
||||
|
||||
|
||||
" fugitive.vim looks for tags in .git
|
||||
" set tags +=~/tags " Recursively move upwards in tree, searching in subfolders for tags file
|
||||
|
||||
@@ -183,11 +251,11 @@ map <F5> :call CurtineIncSw()<CR>
|
||||
|
||||
nmap <Leader>cf :cd %:p:h <CR> " Change dir to parent of current file
|
||||
nmap <Leader>cg :cd $git_root_location <CR> " Change dir to git root
|
||||
nmap <Leader>vs :sp $MYVIMRC <CR>
|
||||
nmap <Leader>vv :vsp $MYVIMRC <CR>
|
||||
nmap <Leader>vt :tabnew $MYVIMRC <CR>
|
||||
nmap <Leader>vo :e $MYVIMRC <CR>
|
||||
nmap <Leader>v :e $MYVIMRC <CR>
|
||||
nmap <Leader>vs :sp $HOME/.vimrc <CR>
|
||||
nmap <Leader>vv :vsp $HOME/.vimrc <CR>
|
||||
nmap <Leader>vt :tabnew $HOME/.vimrc <CR>
|
||||
nmap <Leader>vo :e $HOME/.vimrc <CR>
|
||||
nmap <Leader>v :e $HOME/.vimrc <CR>
|
||||
|
||||
" Match git conflict markers
|
||||
nmap <Leader>/g /[<=>]\{7,}.*$<CR>
|
||||
@@ -197,6 +265,12 @@ nmap <Leader>gS :!git add %<CR>
|
||||
nmap <Leader>gc :Gcommit<CR>
|
||||
nmap <Leader>gg :Ggrep<space>
|
||||
nmap <Leader>gb :Gblame<CR>
|
||||
nmap <Leader>gu :GitGutterUndoHunk<CR>
|
||||
|
||||
" Fugitive Conflict Resolution
|
||||
nnoremap <leader>gd :Gvdiffsplit!<CR>
|
||||
nnoremap gdh :diffget //2<CR>
|
||||
nnoremap gdl :diffget //3<CR>
|
||||
|
||||
" Toggle wrapping of long lines
|
||||
nmap <Leader>l :set wrap!<CR>
|
||||
|
||||
Reference in New Issue
Block a user