vim/plugin/mappings.vim

106 lines
2.5 KiB
VimL

" YouCompleteMe
nnoremap <leader>fi :YcmCompleter FixIt<CR>
nnoremap <leader>gd :YcmCompleter GoTo<CR>
nnoremap <leader>gt :YcmCompleter GetType<CR>
nnoremap <leader>sd :YcmShowDetailedDiagnostic<CR>
" termdebug
" TODO: Detecet if termdebug is loaded, if not do the default action.
nnoremap <C-W><C-G> :Gdb<CR>
nnoremap <C-W><C-E> :Program<CR>
nnoremap <C-W><C-S> :Source<CR>
tnoremap <C-G> :Gdb<CR>
tnoremap <C-E> :Program<CR>
tnoremap <C-S> :Source<CR>
" GitGutter
nnoremap <leader>gn :GitGutterNextHunk<CR>
nnoremap <leader>gp :GitGutterPrevHunk<CR>
" Quickfix list
nnoremap <leader>qo :copen<CR>
nnoremap <leader>qc :cclose<CR>
nnoremap <leader>qq :cc<CR>
nnoremap <leader>qn :cnext<CR>
nnoremap <leader>qp :cprevious<CR>
nnoremap <leader>qf :cfirst<CR>
nnoremap <leader>qa :clast<CR>
" Location list
nnoremap <leader>lo :lopen<CR>
nnoremap <leader>lc :lclose<CR>
nnoremap <leader>ll :ll<CR>
nnoremap <leader>ln :lnext<CR>
nnoremap <leader>lp :lprevious<CR>
nnoremap <leader>lf :lfirst<CR>
nnoremap <leader>la :llast<CR>
" Preview window
nnoremap <leader>pc :pclose<CR>
nnoremap <leader>pe :pedit<Space>
nnoremap <leader>ps :psearch<Space>
" fzf
nnoremap <C-f>f :Files<Space>
nnoremap <C-f>a :Ag<Space>
nnoremap <C-f>g :GitFiles<CR>
nnoremap <C-f>b :Buffers<CR>
nnoremap <C-f>l :BLines<CR>
nnoremap <C-f>c :Colors<CR>
nnoremap <C-f>h :Helptags<CR>
nnoremap <C-f>s :Snippets<CR>
" Search to the word under the cursor
nnoremap <leader>ag :Ag <C-R>=expand('<cword>')<CR><CR>
" Treat long lines as line containing breaks
nnoremap j gj
nnoremap k gk
" Quick write
nnoremap <leader>w :w!<CR>
" Switch panes
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l
" Redraw window
nnoremap <C-w>l <C-l>
" Quick tabs
nnoremap <leader>tn :tabnew<Space>
nnoremap <leader>tc :tabclose<CR>
nnoremap <leader>to :tabonly<CR>
nnoremap <leader>tm :tabmove<Space>
" Clear search highlights
nnoremap <leader><Space> :nohlsearch<CR>
" System clipboard yank/put
noremap <leader>y "+y
noremap <leader>Y "+Y
noremap <leader>p "+p
noremap <leader>P "+P
" Quickly access spelling menu
inoremap <C-s> <C-g>u<C-X>s
nnoremap <C-s> i<C-g>u<C-X>s
" Disable 'Q' from opening Ex mode
nnoremap Q <nop>
" Disable 'K' from loading man pages
noremap K <nop>
" Split line at the cursor
nnoremap [j i<CR><Esc>
nnoremap ]j a<CR><Esc>
" Toggle Checkbox
nnoremap <leader><CR> :ToggleCheckbox<CR>
" Show highlight groups under the cursor
nnoremap <leader>hi :CursorHighlightGroups<CR>
" Rename C/C++ include guard
nnoremap <leader>rg :call do#rename_include_guard(expand('<cword>'))<cr>