"set t_kD=\7f
set mouse="" " if Vim is compiled with mouse support
-set viminfo='100,<50,s10,f1,%,n~/secure/vim/info
+set viminfo-=h
+set viminfo+=f1,%,n~/secure/vim/info
set viewdir=~/secure/vim/view
-set history=128
set directory=~/secure/vim/tmp
set undodir=~/secure/vim/undo
set undofile
set cpoptions+=$
set showcmd
set showmatch
-set listchars=trail:·,tab:>→,nbsp:% ",eol:¶
-set list
set completeopt-=preview
set diffopt+=indent-heuristic,algorithm:histogram
set cursorline
set cursorcolumn
set colorcolumn=80
+
+set listchars=trail:·,tab:>→,nbsp:% ",eol:¶
+set list
highlight ExtraWhitespace ctermbg=green ctermfg=blue
match ExtraWhitespace /\s\+$/
set hlsearch
set incsearch
set gdefault
-set wildmode=longest:list
+map <F4> :nohlsearch<CR>:MarkClear<CR>
+
+set wildmode=list:longest
set tags=.tags/**/tags;
set wildignore=**/.git,**/.tags
set exrc
set secure
-map <F4> :nohlsearch<CR>:MarkClear<CR>
-
" Folding {{{
set foldmethod=indent
set foldnestmax=9
" }}}
" Statusline {{{
+let LintStatus = {-> exists("b:lint_status_func") ? b:lint_status_func() : ""}
set laststatus=2
set statusline=%F\ %m%r%h%w%k
set statusline+=%{len(getqflist())?'[Q]':''}
set statusline+=%#Comment#%o
set statusline+=%#Error#%{LintStatus()}
set statusline+=%*\ %P
-
-function! LintStatus() " it is overrided in ftplugins
- return ""
-endfunction
" }}}
" View saving {{{
-autocmd BufWinLeave *.* mkview
-autocmd BufWinEnter *.* silent loadview
+autocmd BufWinLeave ?* silent! if &ft !=# "gitcommit" | mkview | endif
+autocmd BufWinEnter ?* silent! loadview
" }}}
" Windows related {{{
set keywordprg=
let g:sh_no_error = 1
-
set termwinkey=<C-B>
nmap <space> f<space>
command! E Explore
command! Ch cd %:p:h
command! -bar -nargs=? -bang Tmp :silent vnew<bang>|setlocal buftype=nofile bufhidden=hide noswapfile buflisted filetype=<args> modifiable
+command! Gcommit Git commit