" Vim main configuration file.
+" EDITOR SETTINGS
+
" Make sure Vim (and not Vi) settings are enabled.
set nocompatible
+" Load my scripts from ~/.vim (my scripts), ~/.vim/plugins (plugins) and
+" ~/.vim/runtime (checkout of Vim runtime files).
+set runtimepath-=~/.vim
+set runtimepath^=~/.vim,~/.vim/plugins,~/.vim/runtime
+
+" When completing paths first use the longest path then display a list of all
+" possible files.
+set wildmode=longest,list
+
+" Increase number of tabs which can be opened with the -p option.
+if v:version >= 700
+ set tabpagemax=50
+endif
+
" EDIT SETTINGS
if has("folding")
set foldmethod=syntax
set foldcolumn=2
- set foldlevel=99 " no folding at default
+ set foldlevel=99 " no closed folds at default, 'foldenable' would disable
+ " folding which is not what I want
endif
" Only check for case if the searched word contains a capital character.
set spelllang=en_us
endif
+" Allow buffers with changes to be hidden.
+set hidden
+
" DISPLAY SETTINGS
set listchars=trail:-
-" EDITOR SETTINGS
-
-" When completing paths first use the longest path then display a list of all
-" possible files.
-set wildmode=longest,list
-
-" Increase number of tabs which can be opened with the -p option.
-if v:version >= 700
- set tabpagemax=50
-endif
-
-
" MAPPINGS (except for plugins, see PLUGIN SETTINGS below)
" Use <space> to move down a page and - to move up one like in mutt.
nnoremap <Space> <C-f>
nnoremap - <C-b>
-" Maps to change spell language between English and German.
-map <Leader>se :set spelllang=en_us<CR>
-map <Leader>sd :set spelllang=de_de<CR>
+" Maps to change spell language between English and German and disable it.
+map <Leader>sn :set nospell<CR>
+map <Leader>se :set spell spelllang=en_us<CR>
+map <Leader>sd :set spell spelllang=de_de<CR>
" Add semicolon to the end of the line. Thanks to
" http://www.van-laarhoven.org/vim/.vimrc for this idea and godlygeek in #vim
if v:version < 700
cnoreabbrev W w
cnoreabbrev Wq wq
+ cnoreabbrev Wqa wqa
else
cnoreabbrev <expr> W
\ ((getcmdtype() == ':' && getcmdpos() <= 2) ? 'w' : 'W')
cnoreabbrev <expr> Wq
\ ((getcmdtype() == ':' && getcmdpos() <= 3) ? 'wq' : 'Wq')
+ cnoreabbrev <expr> Wqa
+ \ ((getcmdtype() == ':' && getcmdpos() <= 4) ? 'wqa' : 'Wqa')
endif
" Also fix my typo with "Q".
if v:version < 700
cnoreabbrev Q q
+ cnoreabbrev Qa qa
else
cnoreabbrev <expr> Q
\ ((getcmdtype() == ':' && getcmdpos() <= 2) ? 'q' : 'Q')
+ cnoreabbrev <expr> Qa
+ \ ((getcmdtype() == ':' && getcmdpos() <= 3) ? 'qa' : 'Qa')
endif
" Make sure xa0 (alt + space) is automatically changed to a normal whitespace