mappings.vim 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. imap <C-h> <C-w>h
  2. imap <C-j> <C-w>j
  3. imap <C-k> <C-w>k
  4. imap <C-l> <C-w>l
  5. " g Leader key
  6. let mapleader=" "
  7. " let localleader=" "
  8. nnoremap <Space> <Nop>
  9. " Better indenting
  10. vnoremap < <gv
  11. vnoremap > >gv
  12. if exists('g:vscode')
  13. " Simulate same TAB behavior in VSCode
  14. nmap <Tab> :Tabnext<CR>
  15. nmap <S-Tab> :Tabprev<CR>
  16. else
  17. " Better nav for omnicomplete
  18. inoremap <expr> <c-j> ("\<C-n>")
  19. inoremap <expr> <c-k> ("\<C-p>")
  20. " I hate escape more than anything else
  21. inoremap jk <Esc>
  22. inoremap kj <Esc>
  23. " Easy CAPS
  24. " inoremap <c-u> <ESC>viwUi
  25. " nnoremap <c-u> viwU<Esc>
  26. " TAB in general mode will move to text buffer
  27. nnoremap <silent> <TAB> :bnext<CR>
  28. " SHIFT-TAB will go back
  29. nnoremap <silent> <S-TAB> :bprevious<CR>
  30. " Move selected line / block of text in visual mode
  31. " shift + k to move up
  32. " shift + j to move down
  33. xnoremap K :move '<-2<CR>gv-gv
  34. xnoremap J :move '>+1<CR>gv-gv
  35. " Alternate way to save
  36. nnoremap <silent> <C-s> :w<CR>
  37. " Alternate way to quit
  38. nnoremap <silent> <C-Q> :wq!<CR>
  39. " Use control-c instead of escape
  40. nnoremap <silent> <C-c> <Esc>
  41. " <TAB>: completion.
  42. inoremap <silent> <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
  43. " Better window navigation
  44. nnoremap <C-h> <C-w>h
  45. nnoremap <C-j> <C-w>j
  46. nnoremap <C-k> <C-w>k
  47. nnoremap <C-l> <C-w>l
  48. " Terminal window navigation
  49. tnoremap <C-h> <C-\><C-N><C-w>h
  50. tnoremap <C-j> <C-\><C-N><C-w>j
  51. tnoremap <C-k> <C-\><C-N><C-w>k
  52. tnoremap <C-l> <C-\><C-N><C-w>l
  53. inoremap <C-h> <C-\><C-N><C-w>h
  54. inoremap <C-j> <C-\><C-N><C-w>j
  55. inoremap <C-k> <C-\><C-N><C-w>k
  56. inoremap <C-l> <C-\><C-N><C-w>l
  57. tnoremap <Esc> <C-\><C-n>
  58. " Use alt + hjkl to resize windows
  59. nnoremap <silent> <M-j> :resize -2<CR>
  60. nnoremap <silent> <M-k> :resize +2<CR>
  61. nnoremap <silent> <M-h> :vertical resize -2<CR>
  62. nnoremap <silent> <M-l> :vertical resize +2<CR>
  63. endif