vimrc 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. set vb t_vb=
  2. set backspace=indent,eol,start
  3. set incsearch
  4. set smartcase
  5. set ignorecase
  6. set hlsearch
  7. set nowrapscan
  8. set nowrap
  9. set scrolloff=5
  10. set sidescroll=1
  11. set sidescrolloff=10
  12. set tabstop=4
  13. set shiftwidth=4
  14. set wildmode=longest:list
  15. set background=dark
  16. set spelllang=en_us
  17. set foldminlines=2
  18. set foldlevelstart=1
  19. set foldnestmax=2
  20. set foldmethod=syntax
  21. set modeline
  22. set modelines=3
  23. set keywordprg=man\ -s
  24. set mouse=
  25. set linebreak
  26. set formatoptions-=o
  27. set ruler
  28. set laststatus=1
  29. set nojoinspaces
  30. set fileformats=unix,dos,mac
  31. set t_Co=256
  32. set completeopt=menuone
  33. set tags=tags;
  34. set backupdir=$HOME/.vim_swap//,/tmp
  35. set directory=$HOME/.vim_swap//,/tmp
  36. set guicursor=
  37. map <ESC>u :nohlsearch<CR>
  38. map j gj
  39. map k gk
  40. map Q ZQ
  41. map H za
  42. map \l :w<CR>:make<CR>
  43. map - $
  44. map _ ct_
  45. map <C-n> gt
  46. map <C-p> gT
  47. map <C-h> :AS<CR>
  48. nmap <Tab> :set expandtab!<CR>:set expandtab?<CR>
  49. nmap <Insert> :set paste!<CR>:set paste?<CR>
  50. nmap <C-j> :lnext<cr>
  51. nmap <C-k> :lprevious<cr>
  52. vmap P "_dP
  53. inoremap <C-d> <C-t>
  54. inoremap <C-a> <C-d>
  55. let g:mundo_prefer_python3 = 1
  56. nnoremap U :MundoToggle<CR>
  57. let g:ctrlp_map = '<c-o>'
  58. let g:ctrlp_match_func = {'match': 'pymatcher#PyMatch'}
  59. let g:rust_recommended_style = 0
  60. let g:rust_fold = 1
  61. filetype plugin indent on
  62. syntax on
  63. au BufNewFile,BufRead *.frag,*.vert,*.fp,*.vp,*.glsl setf glsl
  64. au BufNewFile,BufRead *.jinja2 set ft=htmldjango
  65. au BufNewFile,BufRead *.ccss set ft=clevercss
  66. au BufNewFile,BufRead *.pp set ft=puppet foldmethod=indent
  67. autocmd FileType c,cpp,perl,php,java,glsl set cindent foldmethod=syntax
  68. autocmd FileType python set autoindent foldmethod=indent
  69. autocmd FileType ruby set foldmethod=indent foldnestmax=4
  70. autocmd FileType sh set autoindent foldmethod=syntax
  71. autocmd FileType go set foldmethod=syntax foldlevel=0 foldnestmax=1
  72. autocmd FileType javascript,less,html set foldnestmax=3 formatoptions-=o
  73. autocmd FileType javascript,less set foldmethod=indent
  74. autocmd FileType tex,latex set wrap showbreak=+ spell makeprg=pdflatex\ -interaction=nonstopmode\ %
  75. autocmd FileType tf set foldmethod=indent foldlevel=0
  76. autocmd FileType html,htmldjango,sml set autoindent
  77. autocmd FileType man set nomod nolist readonly
  78. autocmd FileType man map q :q<CR>
  79. autocmd FileType diff map H zA
  80. autocmd FileType diff map L za
  81. autocmd FileType bzl set foldmethod=indent foldnestmax=3 foldlevel=2
  82. autocmd FileType proto set foldmethod=syntax
  83. autocmd FileType lua set foldmethod=indent foldnestmax=5 foldlevel=0
  84. autocmd InsertEnter * if !exists('w:last_fdm') | let w:last_fdm=&foldmethod | setlocal foldmethod=manual | endif
  85. autocmd InsertLeave,WinLeave * if exists('w:last_fdm') | let &l:foldmethod=w:last_fdm | unlet w:last_fdm | endif