]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - vimrc
Use spaces around = in let.
[config/dotfiles.git] / vimrc
diff --git a/vimrc b/vimrc
index 5f64fc389b5a36e616b67fab65d7fb1f92b5afce..11d07d794eb7bdf0231a1d15a96dc02170ba5b0a 100644 (file)
--- a/vimrc
+++ b/vimrc
@@ -31,8 +31,8 @@ set autoindent
 " When joining lines only add one space after a sentence.
 set nojoinspaces
 
-" Allow backspacing over autoindent, line breaks and insert mode starts.
-set backspace=indent,eol,start
+" Allow backspacing over autoindent and line breaks.
+set backspace=indent,eol
 
 " Start a comment when hitting enter after a commented line (r) and when using
 " o or O around a commented line (o).
@@ -41,6 +41,10 @@ set formatoptions+=ro
 " started.
 set formatoptions+=l
 
+" Allow virtual editing (cursor can be positioned anywhere, even when there is
+" no character) in visual block mode.
+set virtualedit=block
+
 " Already display matches while typing the search command. This makes spotting
 " errors easily.
 set incsearch
@@ -55,8 +59,10 @@ set ignorecase
 set smartcase
 
 " Activate spell checking, use English as default.
-set spell
-set spelllang=en_us
+if v:version >= 700
+    set spell
+    set spelllang=en_us
+endif
 
 
 " DISPLAY SETTINGS
@@ -72,7 +78,9 @@ set ruler
 set showcmd
 
 " Visualize the line the cursor is currently in.
-set cursorline
+if v:version >= 700
+    set cursorline
+endif
 
 " Display tabs as "^I" and trailing space as "-".
 set list
@@ -88,28 +96,41 @@ set nomodeline
 " 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
+" MAPPINGS (except for plugins, see PLUGIN SETTINGS below)
 
 " Use "," as my mapleader.
 let mapleader = ","
 let maplocalleader = ","
 
-" Settings for the NERD commenter.
-" Don't create any mappings I don't want to use.
-let NERDCreateDefaultMappings=0
-" Map toggle comment.
-map <Leader><Leader> <plug>NERDCommenterToggle
-
 " 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>
 
 " I often type "W" instead of "w" when trying to save a file. Fix my mistake.
-cmap W w
-cmap Wq wq
+" Thanks to Tony Mechelynck <antoine.mechelynck@gmail.com> from the Vim
+" mailing list for the commands.
+if v:version < 700
+    cnoreabbrev W w
+    cnoreabbrev Wq wq
+else
+    cnoreabbrev <expr> W
+        \ ((getcmdtype() == ':' && getcmdpos() <= 2) ? 'w' : 'W')
+    cnoreabbrev <expr> Wq
+        \ ((getcmdtype() == ':' && getcmdpos() <= 3) ? 'wq' : 'Wq')
+endif
 " Also fix my typo with "Q".
-cmap Q q
+if v:version < 700
+    cnoreabbrev Q q
+else
+    cnoreabbrev <expr> Q
+        \ ((getcmdtype() == ':' && getcmdpos() <= 2) ? 'q' : 'Q')
+endif
 
 " Disable Apple style movements in MacVim.
 if has("gui_macvim")
@@ -123,6 +144,15 @@ endif
 syntax enable
 
 
+" PLUGIN SETTINGS
+
+" Settings for the NERD commenter.
+" Don't create any mappings I don't want to use.
+let NERDCreateDefaultMappings = 0
+" Map toggle comment.
+map <Leader><Leader> <plug>NERDCommenterToggle
+
+
 " Automatically save and the load the file state (stored in ~/.vim/view).
 autocmd BufWrite * mkview
 autocmd BufRead  * loadview