]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - vimrc
vimrc: Use syntax based omni completion.
[config/dotfiles.git] / vimrc
diff --git a/vimrc b/vimrc
index fecbf915c2e426b7bda41f85ec424e4ea34e1e45..3d7549816ecfc197fdbccb1033cd28ad3448d9b3 100644 (file)
--- a/vimrc
+++ b/vimrc
@@ -54,6 +54,11 @@ set history=1000
 " Increase number of possible undos.
 set undolevels=1000
 
+if has('viminfo')
+    " Remember marks (including the last cursor position) for more files.
+    set viminfo^='1000
+endif
+
 " Use strong encryption if possible, also used for swap/undo files.
 if exists('+cryptmethod')
     set cryptmethod=blowfish
@@ -197,6 +202,10 @@ endif
 
 " MAPPINGS (except for plugins, see PLUGIN SETTINGS below)
 
+" noremap is used to make sure the right side is executed as is and can't be
+" modified by a plugin or other settings. Except for <Nop> which isn't
+" affected by mappings.
+
 " Easy way to exit insert mode.
 inoremap jj <Esc>
 inoremap jk <Esc>
@@ -395,6 +404,15 @@ if has('syntax')
         set synmaxcol=500
     endif
 
+" Use (limited) syntax based omni completion if no other omni completion is
+" available. Taken from :help ft-syntax-omni.
+    if has('autocmd') && exists('+omnifunc')
+        autocmd FileType *
+            \ if &omnifunc == '' |
+            \     setlocal omnifunc=syntaxcomplete#Complete |
+            \ endif
+    endif
+
 " Highlight lines longer than 78 characters. Thanks to Tony Mechelynck
 " <antoine.mechelynck@gmail.com> from the Vim mailing list. It can easily be
 " disabled when necessary with :2match (in Vim >= 700).