+ " I like highlighting strings inside C comments.
+ " Revert with ":unlet c_comment_strings".
+ let c_comment_strings=1
+endif
+
+" Only do this part when compiled with support for autocommands.
+if has("autocmd")
+
+ " Enable file type detection.
+ " Use the default filetype settings, so that mail gets 'tw' set to 72,
+ " 'cindent' is on in C files, etc.
+ " Also load indent files, to automatically do language-dependent indenting.
+ " Revert with ":filetype off".
+ filetype plugin indent on
+
+ " Put these in an autocmd group, so that you can revert them with:
+ " ":augroup vimStartup | au! | augroup END"
+ augroup vimStartup
+ au!
+
+ " When editing a file, always jump to the last known cursor position.
+ " Don't do it when the position is invalid or when inside an event handler
+ " (happens when dropping a file on gvim).
+ autocmd BufReadPost *
+ \ if line("'\"") >= 1 && line("'\"") <= line("$") |
+ \ exe "normal! g`\"" |
+ \ endif
+
+ augroup END
+
+endif " has("autocmd")
+
+" Convenient command to see the difference between the current buffer and the
+" file it was loaded from, thus the changes you made.
+" Only define it when not defined already.
+" Revert with: ":delcommand DiffOrig".
+if !exists(":DiffOrig")
+ command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis
+ \ | wincmd p | diffthis
+endif
+
+if has('langmap') && exists('+langremap')
+ " Prevent that the langmap option applies to characters that result from a
+ " mapping. If set (default), this may break plugins (but it's backward
+ " compatible).
+ set nolangremap
+endif
+
+"" End of defaults.vim related stuff }
+
+"" Begin of custom Grml configuration {
+ set autoindent " always set autoindenting on
+ set backspace=2 " specificy what <BS>, CTRL-W, etc. can do in Insert mode
+ set dictionary=/usr/share/dict/word " used with CTRL-X CTRL-K
+ set esckeys " recognize keys that start with <Esc> in insert mode
+ set formatoptions=cqrt " list of flags that tell how automatic formatting works
+ set laststatus=2 " when to use a status line for the last window
+ set nobackup " don't keep a backup file
+ set noerrorbells " don't ring the bell (beep or screen flash) for error messages
+ set nostartofline " keep cursor in the same column (if possible) when moving cursor
+ set pastetoggle=<f11> " don't change text when copy/pasting
+ set shortmess=at " list of flags to make messages shorter
+ set showmatch " show matching brackets.
+ set textwidth=0 " don't wrap lines by default
+ set viminfo=%,'50,\"100,:100,n~/.viminfo " what to store in .viminfo file
+ set visualbell " use a visual bell instead of beeping
+ set whichwrap=<,>,h,l " list of flags specifying which commands wrap to another line
+
+" set noet " use appropriate number of spaces to insert a <Tab>
+" set linebreak " Don't wrap words by default
+" set ignorecase " Do case insensitive matching
+" set smartcase " Do smart case matching
+" set autowrite " Automatically save before commands like :next and :make
+" set comments=b:#,:%,fb:-,n:>,n:) " definition of what comment lines look like
+" set nodigraph " enter characters that normally cannot be entered by an ordinary keyboard
+
+" list of strings used for list mode
+" set list listchars=tab:»·,trail:·
+" set list listchars=tab:»·
+ set listchars=eol:$,precedes:«,extends:»,tab:»·,trail:·
+
+" list of file names to search for tags
+ set tags=./tags,./TAGS,tags,TAGS,../tags,../../tags,../../../tags,../../../../tags
+
+" When switching between different buffers you can't use undo without 'set hidden':
+ set hidden " Hide buffers when they are abandoned
+
+" Suffixes that get lower priority when doing tab completion for filenames.
+" These are files we are not likely to want to edit or read.
+ set suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc