general.vim 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. set nocompatible
  2. filetype indent plugin on
  3. set updatetime=100
  4. set cursorline
  5. set hidden
  6. set wildmenu
  7. set showcmd
  8. set hlsearch
  9. set incsearch
  10. set ignorecase
  11. set smartcase
  12. set backspace=indent,eol,start
  13. set lazyredraw
  14. set autoindent
  15. set nostartofline
  16. set ruler
  17. set cmdheight=1
  18. set laststatus=2
  19. set confirm
  20. set mouse=a
  21. set number
  22. set hid
  23. set notimeout ttimeout ttimeoutlen=200
  24. set nowrap
  25. set t_Co=256
  26. " No annoying sound on errors
  27. set noerrorbells
  28. set novisualbell
  29. set t_vb=
  30. set tm=500
  31. set encoding=utf8
  32. " Turn backup off
  33. set nobackup
  34. set nowb
  35. set noswapfile
  36. " Indentation
  37. set expandtab
  38. set smarttab
  39. set shiftwidth=2
  40. set softtabstop=2
  41. set tabstop=2
  42. set rtp+=/usr/local/opt/fzf
  43. " Remap yank & paste
  44. vnoremap <C-c> "+y
  45. map <C-p> "+P
  46. " Yank to end of line
  47. nnoremap Y yg_
  48. " Center next search results
  49. " cspell:disable
  50. nnoremap n nzzzv
  51. nnoremap N Nzzzv
  52. " cspell:enable
  53. " Better J cursor position
  54. nnoremap J mzJ`z
  55. " Undo break points
  56. inoremap , ,<c-g>u
  57. inoremap { {<c-g>u
  58. inoremap } }<c-g>u
  59. inoremap [ [<c-g>u
  60. inoremap ] ]<c-g>u
  61. inoremap ( (<c-g>u
  62. inoremap ) )<c-g>u
  63. " Jumplist mutation
  64. nnoremap <expr> k (v:count > 5 ? "m'" . v:count : "") . 'k'
  65. nnoremap <expr> j (v:count > 5 ? "m'" . v:count : "") . 'j'
  66. " Moving text
  67. vnoremap J :m '>+1<CR>gv=gv
  68. vnoremap K :m '<-2<CR>gv=gv