diff options
Diffstat (limited to 'vimrc')
| -rw-r--r-- | vimrc | 42 |
1 files changed, 32 insertions, 10 deletions
| @@ -1,9 +1,4 @@ | |||
| 1 | " https://vimhelp.org/options.txt.html | ||
| 2 | |||
| 3 | set nocompatible | 1 | set nocompatible |
| 4 | syntax enable | ||
| 5 | |||
| 6 | " Sane defaults. | ||
| 7 | set path+=** | 2 | set path+=** |
| 8 | set relativenumber | 3 | set relativenumber |
| 9 | set smartcase | 4 | set smartcase |
| @@ -20,13 +15,40 @@ set backspace=2 | |||
| 20 | set scrolloff=4 | 15 | set scrolloff=4 |
| 21 | set spelllang=en_us | 16 | set spelllang=en_us |
| 22 | set laststatus=2 | 17 | set laststatus=2 |
| 18 | set shiftwidth=4 | ||
| 19 | set tabstop=4 | ||
| 20 | |||
| 21 | filetype plugin on | ||
| 22 | filetype indent on | ||
| 23 | |||
| 24 | syntax enable | ||
| 23 | 25 | ||
| 24 | " Buffer navigation remaps. | ||
| 25 | nnoremap <C-]> :bnext<cr> | 26 | nnoremap <C-]> :bnext<cr> |
| 26 | nnoremap <C-[> :bprevious<cr> | 27 | nnoremap <C-[> :bprevious<cr> |
| 28 | nnoremap <C-b> :buffers<cr>:buffer | ||
| 29 | nnoremap <C-p> :Explore<cr> | ||
| 30 | nnoremap <C-l> :Lex<cr> | ||
| 31 | |||
| 32 | " Commenting blocks of code. | ||
| 33 | augroup commenting_blocks_of_code | ||
| 34 | autocmd! | ||
| 35 | autocmd FileType c,cpp,go,scala let b:comment_leader = '// ' | ||
| 36 | autocmd FileType sh,ruby,python let b:comment_leader = '# ' | ||
| 37 | autocmd FileType conf,fstab let b:comment_leader = '# ' | ||
| 38 | autocmd FileType lua let b:comment_leader = '-- ' | ||
| 39 | autocmd FileType vim let b:comment_leader = '" ' | ||
| 40 | augroup END | ||
| 41 | noremap <silent> gcc :<C-B>silent <C-E>s/^/<C-R>=escape(b:comment_leader,'\/')<CR>/<CR>:nohlsearch<CR> | ||
| 42 | noremap <silent> gcu :<C-B>silent <C-E>s/^\V<C-R>=escape(b:comment_leader,'\/')<CR>//e<CR>:nohlsearch<CR> | ||
| 27 | 43 | ||
| 28 | " Language specific indentation. | 44 | " Go autoformat. |
| 29 | filetype plugin indent on | 45 | function! GoFmt() |
| 30 | autocmd Filetype make,go,sh setlocal noexpandtab tabstop=4 shiftwidth=4 | 46 | let file = expand('%') |
| 31 | autocmd Filetype c,cpp,html,javascript,css,python setlocal expandtab tabstop=2 shiftwidth=2 | 47 | silent execute "!gofmt -w " . file |
| 48 | edit! | ||
| 49 | endfunction | ||
| 50 | command! GoFmt call GoFmt() | ||
| 51 | augroup go_autocmd | ||
| 52 | autocmd BufWritePost *.go GoFmt | ||
| 53 | augroup END | ||
| 32 | 54 | ||
