]> Sergey Matveev's repositories - dotfiles.git/blobdiff - vim/.vimrc
More visible spellchecker highlight
[dotfiles.git] / vim / .vimrc
index b4da21a29d39464f5afa4500e98f3204ce59328a..2c728ba32f085bd84712c8855d1b6707022ca0ef 100644 (file)
@@ -8,7 +8,6 @@ set nocompatible
 set encoding=utf-8
 "set t_kD=\7f
 set mouse="" " if Vim is compiled with mouse support
-set nomodeline
 
 set viminfo='100,<50,s10,f1,%,n~/secure/vim/info
 set viewdir=~/secure/vim/view
@@ -34,6 +33,7 @@ set showcmd
 set showmatch
 set listchars=trail:·,tab:>→,nbsp:% ",eol:¶
 set list
+set completeopt-=preview
 
 set cursorline
 set cursorcolumn
@@ -50,8 +50,11 @@ set hlsearch
 set incsearch
 set gdefault
 set wildmode=longest:list
-set tags=tags;,./;
-set wildignore=**/_build/*,**/tags,**/.git,**/.hypothesis
+set tags=.tags/**/tags;
+set wildignore=**/.git,**/.tags
+
+set exrc
+set secure
 
 map <F4> :nohlsearch<CR>:MarkClear<CR>
 
@@ -68,16 +71,14 @@ highlight CursorColumn ctermfg=cyan ctermbg=red
 " }}}
 
 " Statusline {{{
-highlight User1 ctermbg=blue ctermfg=black
-highlight User2 ctermbg=green ctermfg=black
-highlight User3 ctermbg=yellow ctermfg=black
-highlight User4 ctermbg=red ctermfg=black
 set laststatus=2
-set statusline=%n\|%F%m%r%h%w%q\ %=
-set statusline+=%1*%Y[%{strlen(&fenc)?&fenc:&enc},%{&ff}]
-set statusline+=%2*[%l/%L]
-set statusline+=%3*[%c%V:0x%B]
-set statusline+=%4*%{LintStatus()}
+set statusline=%F\ %m%r%h%w%q%k\ %=
+set statusline+=%n\ %#Question#%Y
+set statusline+=%#DiffChange#%{strlen(&fenc)?&fenc:&enc}%{&bomb?'-bom':''}\ %{&ff}
+set statusline+=%#DiffAdd#%l/%L
+set statusline+=%#Todo#%c%V:0x%B
+set statusline+=%#Comment#%o
+set statusline+=%#Error#%{LintStatus()}
 set statusline+=%*\ %P
 
 function! LintStatus() " it is overrided in ftplugins
@@ -91,6 +92,7 @@ autocmd BufWinEnter *.* silent loadview
 " }}}
 
 " Windows related {{{
+nnoremap <C-b> <C-W>
 noremap <C-j> <C-w>j
 noremap <C-k> <C-w>k
 noremap <C-l> <C-w>l
@@ -108,7 +110,7 @@ autocmd BufEnter * let &titlestring = expand("%:t")
 " }}}
 
 " Fugitive {{{
-nmap <F7> "cyiw:execute "Gvsplit " . @c<CR>zR
+nmap <F7> :Gvsplit <C-R><C-W><CR>zR
 nmap <F9> :diffupdate<CR>:syntax off<CR>:syntax on<CR>
 " }}}
 
@@ -121,6 +123,7 @@ set formatoptions+=onj
 " Spelling {{{
 set spelllang=ru,en_gb
 highlight SpellBad cterm=inverse ctermfg=red ctermbg=black
+highlight SpellLocal term=reverse ctermfg=red ctermbg=cyan
 " }}}
 
 " Unimpaired-like textwidth switching {{{
@@ -140,6 +143,8 @@ iabbrev итп и т.п.
 set keywordprg=
 let g:sh_no_error = 1
 
+set termwinkey=<C-B>
+
 nmap <space> f<space>
 vmap <space> I<space><ESC>gv
 nmap _ f_l
@@ -156,8 +161,9 @@ cmap <C-P> <S-Right>
 map Q gq
 map Y y$
 cmap ][ '[,']
+imap <C-b> <C-x><C-o>
 nmap <F2> :set wrap!<CR>:set wrap?<CR>
-nmap <Tab> :buffers<CR>:buffer<Space>
+nmap <Tab> :buffers<CR>:b<Space>
 nmap <silent> <Home> :registers<CR>
 nmap <leader>' yiwciw"<C-r>""<ESC>
 nmap <leader>h1 yypVr=o