" ~/.vimrc (6.1.48) - ref1.3 (c) 2000-2002 by Gerfried Fuchs " Feel free to comment on it or use it. Comments are welcome. SPAM _not_! " to test: beval -- according to doc primarly useful for Sun's Visual WorkShop " not in quickref: imdisable " printexpr " options.txt.gz viewoptions: "slash"?? " setting description: " [global] ... global setting " [buffer] ... local to a buffer " [window] ... settings for a window " [glo-lo] ... global or local (buffer) setting. :setlocal for local value " ############### " ### Options ### " ############### " [global] aleph ASCII code of the letter Aleph (Hebrew) " set al=224 " [global] allowrevins allow CTRL-_ in Insert and Command-line mode " set noari " [global] altkeymap for default second language (Farsi/Hebrew) " set noakm " [buffer] autoindent take indent for new line from previous line set noai " Debian ships with ai set in /etc/vimrc, default would be off " [glo-lo] autoread autom. read file when changed outside of Vim " set noar " [global] autowrite automatically write file if changed " set noaw " [global] autowriteall as 'autowrite', but works with more commands " set noawa " [global] background "dark" or "light", used for highlight colors "if &term == "pcterm" set bg=dark "endif " [global] backspace how backspace works at start of line set bs=indent,eol,start " [global] backup keep backup file after overwriting a file " set nobk " [global] backupcopy make backup as a copy, don't rename the file " set bkc=yes " [global] backupdir list of directories for the backup file " set bdir=.,~/tmp,~/ " [global] backupext extension used for the backup file " set bex=~ " [global] backupskip no backup for files that match these patterns " set bsk=/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/* " [global] baloondelay delay in mS before a balloon may pop up " set bdlay=600 " [global] ballooneval switch on balloon evaluation " set nobeval " [buffer] binary read/write/edit file in binary mode " set nobin " [global] bioskey MS-DOS: use bios calls for input characters " set biosk " [buffer] bomb prepend a Byte Order Mark to the file " set bomb " [global] breakat characters that may cause a line break " set brk=\ \ !@*-+_;:,./? " [global] browsedir which directory to start browsing in " set bsdir=last " [buffer] bufhidden what to do when buffer is no longer in window " set bh= " [buffer] buflisted whether the buffer shows up in the buffer list " set bl " [buffer] buftype special type of buffer " set bt= " [global] cdpath list of directories searched with ":cd" " set cd=,, " [global] cedit key used to open the command-line window " set cedit= " [global] charconvert expression for character encoding conversion " set ccv= " [buffer] cindent do C program indenting " set nocin " [buffer] cinkeys keys that trigger indent when 'cindent' is set " set cink=0{,0},:,0#,!,o,O,e " [buffer] cinoptions how to do indenting when 'cindent' is set " set cino= " [buffer] cinwords words where 'si' and 'cin' add an indent " set cinw=if,else,while,do,for,switch " [global] clipboard use the clipboard as the unnamed register " set cb=autoselect,exclude:\\\|linux " [global] cmdheight number of lines to use for the command-line " set ch=1 " [global] cmdwinheight height of the command-line window " set cwh=7 " [global] columns number of columns in the display " set co=80 " [buffer] comments patterns that can start a comment line " set com=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:- " [buffer] commentstring template for comments; used for fold marker " set cms=/*%s*/ " [global] compatible behave Vi-compatible as much as possible " set nocp " [buffer] complete specify how Insert mode completion works " set cpt=.,w,b,u,t,i " [global] confirm ask what to do about unsaved/read-only files set cf " [global] conskey get keys directly from console (MS-DOS only) " set noconsk " [global] cpoptions flags for Vi-compatible behavior " set cpo=aABceFs " [global] cscopepathcomp how many components of the path to show " set cspc=0 " [global] cscopeprg command to execute cscope " set csprg=cscope " [global] cscopetag use cscope for tag commands " set nocst " [global] cscopetagorder determines ":cstag" search order " set csto=0 " [global] cscopeverbose give messages when adding a cscope database " set nocsverb " [global] debug set to "msg" to see all error messages " set debug= " [glo-lo] define pattern to be used to find a macro definition " set def=^#\s*define " [global] delcombine delete combining characters on their own " set nodeco " [glo-lo] dictionary list of file names used for keyword completion set dict=/usr/share/dict/words " set dict=/usr/share/dict/british-english,/usr/share/dict/american-english " set dict=/usr/share/dict/ngerman,/usr/share/dict/german " [window] diff use diff mode for the current window " set nodiff " [global] diffexpr expression used to obtain a diff file " set dex= " [global] diffopt options for using diff mode set dip=filler,context:4,iwhite " [global] digraph enable the entering of digraphs in Insert mode " set nodg " [global] directory list of directory names for the swap file " set dir=.,~/tmp,/var/tmp,/tmp " [global] display list of flags for how to display text set dy=lastline " [global] eadirection in which direction 'equalalways' works " set ead=both " [global] edcompatible toggle flags of ":substitute" command " set noed " [global] encoding encoding used internally " set enc=latin1 " [buffer] endofline write for last line in file " set eol " [global] equalalways windows are automatically made the same size " set ea " [glo-lo] equalprg external program to use for "=" command " set ep= " [global] errorbells ring the bell for error messages " set noeb " [global] errorfile name of the errorfile for the QuickFix mode " set ef=errors.err " [glo-lo] errorformat description of the lines in the error file " set efm=%*[^\"]\"%f\"%*\\D%l:\ %m,\"%f\"%*\\D%l:\ %m,%f:%l:%m,\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m,%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',%DMaking\ %*\\a\ in\ %f " [global] esckeys recognize function keys in Insert mode " set ek " [global] eventignore autocommand events that are ignored " set ei= " [buffer] expandtab use spaces when is inserted " set noet " [global] exrc read .vimrc and .exrc in the current directory " set noex " [buffer] fileencoding file encoding for multi-byte text " set fenc=ansi " [global] fileencodings automatically detected character encodings " set fencs=ucs-bom " [buffer] fileformat file format used for file I/O " set ff=unix " [global] fileformats automatically detected values for 'fileformat' " set ffs=unix,dos " [buffer] filetype type of file, used for autocommands " set ft= " [global] fillchars characters to use for displaying special items " set fcs=vert:\|,fold:- " [global] fkmap Farsi keyboard mapping " set nofk " [global] foldclose close a fold when the cursor leaves it " set fcl= " [window] foldcolumn width of the column used to indicate folds " set fdc=0 " [window] foldenable set to display all folds open " set nofen " [window] foldexpr expression used when 'foldmethod' is "expr" " set fde=0 " [window] foldignore ignore lines when 'foldmethod' is "indent" " set fdi=# " [window] foldlevel close folds with a level higher than this " set fdl=0 " [global] foldlevelstart 'foldlevel' when startng to edit a file " set fdls=-1 " [window] foldmarker markers used when 'foldmethod' is "marker" " set fmr={{{,}}} " [window] foldmethod folding type " set fdm=manual " [window] foldminlines minimum number of lines for a fold to be closed " set fml=1 " [window] foldnestmax maximum fold depth " set fdn=20 " [global] foldopen for which commands a fold will be opened " set fdo=block,hor,mark,percent,quickfix,search,tag,undo " [window] foldtext expression used to display for a closed fold " set fdt=foldtext() " [buffer] formatoptions how automatic formatting is to be done " set fo=tcq set fo+=2 " [global] formatprg name of external program used with "gq" command " set fp= " [global] gdefault the ":substitute" flag 'g' is default on " set nogd " [global] grepformat format of 'grepprg' output " set gfm=%f:%l%m,%f\ \ %l%m " [glo-lo] grepprg program to use for ":grep" " set gp=grep\ -n\ $*\ /dev/null " [global] guicursor GUI: settings for cursor shape and blinking " set gcr=n-v-c:block-Cursor,ve:ver35-Cursor,o:hor50-Cursor,i-ci:ver25-Cursor,r-cr:hor20-Cursor,sm:block-Cursor-blinkwait175-blinkoff150-blinkon175 " [global] guifont GUI: Name(s) of font(s) to be used set gfn=Courier\ 10\ Pitch\ 12 " [global] guifontset GUI: Names of multi-byte fonts to be used " set gfs= " [global] guifontwide list of font names for double-wide characters " set gfw= " [global] guiheadroom GUI: pixels room for window decorations " set ghr=50 " [global] guioptions GUI: Which components and options are used " set go=agimrLtT " [global] guipty GUI: try to use a pseudo-tty for ":!" commands " set guipty " [global] helpfile name of this help file " set hf="$VIMRUNTIME/doc/help.txt.gz" " [global] helpheight minimum height of a new help window set hh=15 " [global] hidden don't unload buffer when it is |abandon|ed " set nohid " [global] highlight sets highlighting mode for various occasions " set hl=8:SpecialKey,@:NonText,d:Directory,e:ErrorMsg,i:IncSearch,l:Search,m:MoreMsg,M:ModeMsg,n:LineNr,r:Question,s:StatusLine,S:StatusLineNC,t:Title,v:Visual,w:WarningMsg " [global] hlsearch highlight matches with last search pattern set hls " [global] history number of command-lines that are remembered " set hi=20 " [global] hkmap Hebrew keyboard mapping " set nohk " [global] hkmapp phonetic Hebrew keyboard mapping " set nohkp " [global] icon let Vim set the text of the window icon " set icon " [global] iconstring string to use for the Vim icon text " set iconstring= " [global] ignorecase ignore case in search patterns set ic " [global] imactivatekey key that activates the X input method " set imak= " [global] imcmdline use IM when starting to edit a command line " set noimc " [global] imdisable wheter to use IM at all -- XXX " set noimd " [buffer] iminsert use :lmap or IM in Insert mode " set imi=0 " [buffer] imsearch use :lmap or IM when typing a search pattern " set ims=0 " [glo-lo] include pattern to be used to find an include file " set inc=^#\\s*include " [buffer] includeexpr expression used to process an include line " set inex= " [global] incsearch highlight match while typing search pattern " set nois " [buffer] indentexpr expression used to obtain the indent of a line " set inde= " [buffer] indentkeys keys that trigger indenting with 'indentexpr' " set indk=0{,0},:,0#,!^F,o,O,e " [buffer] infercase adjust case of match for keyword completion " set noinf " [global] insertmode start the edit of a file in Insert mode " set noim " [global] isfname characters included in file names and pathnames " set isf=@,48-57,/,.,-,_,+,,,$,~ " [global] isident characters included in identifiers " set isi=@,48-57,_,192-255 " [buffer] iskeyword characters included in keywords " set isk=@,48-57,_,192-255 " [global] isprint printable characters " set isp=@,161-255 " [global] joinspaces two spaces after a period with a join command " set js " [buffer] key encryption key " set key= " [buffer] keymap name of a keyboard mappping " set kmp= " [global] keymodel enable starting/stopping selection with keys " set km= " [global] keywordprg program to use for the "K" command set kp= " [global] langmap alphabetic characters for other language mode " set lmap= " [global] langmenu language to be used for the menus " set lm= " [global] laststatus tells when last window has status lines " set ls=1 " [global] lazyredraw don't redraw while executing macros " set nolz " [window] linebreak wrap long lines at a blank set lbr " [global] lines number of lines in the display " set lines=24 " [global] linespace number of pixel lines to use between characters " set lsp=0 " [buffer] lisp automatic indenting for Lisp " set nolisp " [global] lispwords words that change how lisp indenting works " set lw=defun,define,defmacro,set!,lambda,if,case,let,flet,let*,letrec,do,do*,define-syntax,let-syntax,letrec-syntax,destructuring-bind,defpackage,defparameter,defstruct,deftype,defvar,do-all-symbols,do-external-symbols,do-symbols,dolist,dotimes,ecase,etypecase,eval-when,labels,macrolet,multiple-value-bind,multiple-value-call,multiple-value-prog1,multiple-value-setq,prog1,progv,typecase,unless,unwind-protect,when,with-input-from-string,with-open-file,with-open-stream,with-output-to-string,with-package-iterator,define-condition,handler-bind,handler-case,restart-bind,restart-case,with-simple-restart,store-value,use-value,muffle-warning,abort,continue,with-slots,with-slots*,with-accessors,with-accessors*,defclass,defmethod,print-unreadable-object " [window] list show and " set nolist " [global] listchars characters for displaying in list mode " set lcs=eol:$ set lcs=tab:»·,trail:·,precedes:»,extends:« " set lcs=tab:»·,trail:·,precedes:»,extends:«,eol:¶ " I don't like the eol-sign " [global] loadplugins load plugin scripts when starting up " set lpl " [global] magic changes special characters in search patterns " set magic " [global] makeef name of the errorfile for ":make" " set mef="/tmp/vim##.err" " [glo-lo] makeprg program to use for the ":make" command " set mp="make" " [buffer] matchpairs pairs of characters that "%" can match " set mps=(:),{:},[:] " [global] matchtime tenths of a second to show matching paren " set mat=5 " [global] maxfuncdepth maximum recursive depth for user functions " set mfd=100 " [global] maxmapdepth maximum recursive depth for mapping " set mmd=1000 " [global] maxmem maximum memory (in Kbyte) used for one buffer " set mm=512 " [global] maxmemtot maximum memory (in Kbyte) used for all buffers " set mmt=2048 " [global] menuitems maximum number of items in a menu " set mis=25 " [buffer] modeline recognize modelines at start or end of file " set ml " [global] modelines number of lines checked for modelines set mls=2 " [buffer] modifiable changes to the text are not possible " set ma " [buffer] modified buffer has been modified " set nomod " [global] more pause listings when the whole screen is filled " set more " [global] mouse enable the use of mouse clicks " set mouse= " [global] mousefocus keyboard focus follows the mouse " set nomousef " [global] mousehide hide mouse pointer while typing set mh " [global] mousemodel changes meaning of mouse buttons " set mousem=extend " [global] mouseshape shape of the mouse pointer in different modes " set mouses=i:beam,r:beam,s:updown,sd:cross,m:no,v:rightup-arrow " [global] mousetime max time between mouse double-click " set mouset=500 " [buffer] nrformats number formats recognized for CTRL-A command set nf=hex " [window] number print the line number in front of each line " set nonu " [buffer] osfiletype operating system-specific filetype information " set oft= " [global] paragraphs nroff macros that separate paragraphs " set para=IPLPPPQPP\ LIpplpipbp " [global] paste allow pasting text " set nopaste " [global] pastetoggle key code that causes 'paste' to toggle set pt= " [global] patchexpr expression used to patch a file " set pex= " [global] patchmode keep the oldest version of a file " set pm= " [glo-lo] path list of directories searched with "gf" et.al. " set pa=.,/usr/include,, " [global] previewheight height of the preview window " set pvh=12 " [window] previewwindow identifies the preview window " set nopvw " set [global] printdevice name of the printer to be used for :hardcopy " set pdev= " [global] printexpr " set pexpr=system('lpr'\ .\ (&printdevice\ ==\ ''\ \?\ ''\ :\ '\ -P'\ .\ &printdevice)\ .\ '\ '\ .\ v:fname_in)\ .\ delete(v:fname_in)\ +\ v:shell_error " [global] printfont name of the font to be used for :hardcopy " set pfn=courier " [global] printheader format of the header used for :hardcopy " set pheader=%<%f%h%m%=Page\ %N " [global] printoptions controls the format of :hardcopy output " set popt= " [buffer] readonly disallow writing the buffer " set noro " [global] remap allow mappings to work recursively " set remap " [global] report threshold for reporting nr. of lines changed " set report=2 " [global] restorescreen Win32: restore screen when exiting " set rs " [global] revins inserting characters will work backwards " set nori " [window] rightleft window is right-to-left oriented " set norl " [global] ruler show cursor line and column in the status line set ru " [global] rulerformat custom format for the ruler " set ruf=%l,%c%V%=%P " [global] runtimepath list of directories used for runtime files set rtp=$HOME/etc/vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,$HOME/etc/vim/after " [window] scroll lines to scroll with CTRL-U and CTRL-D " set scr=0 " [window] scrollbind scroll in window as other windows scroll " set noscb " [global] scrolljump minimum number of lines to scroll " set sj=1 " [global] scrolloff minimum nr. of lines above and below cursor set so=1 " [global] scrollopt how 'scrollbind' should behave " set sbo=ver,jump " [global] sections nroff macros that separate sections " set sect=SHNHH\ HUnhsh " [global] secure secure mode for reading .vimrc in current dir " set nosecure " [global] selection what type of selection to use " set sel=inclusive " [global] selectmode when to use Select mode instead of Visual mode " set slm= " [global] sessionoptions options for |:mksession| " set ssop=buffers,winsize,options,help,blank " [global] shell name of shell to use for external commands " set sh=/bin/bash " [global] shellcmdflag flag to shell to execute one command " set shcf=-c " [global] shellpipe string to put output of ":make" in error file " set sp=2>&1\|\ tee " [global] shellquote quote character(s) for around shell command " set shq= " [global] shellredir string to put output of filter in a temp file " set srr=>%s\ 2>&1 " [global] shellslash use forward slash for shell file names " set nossl " [global] shelltype Amiga: influences how to use a shell " set st=0 " [global] shellxquote like 'shellquote', but include redirection " set sxq= " [global] shiftround round indent to multiple of shiftwidth set sr " [buffer] shiftwidth number of spaces to use for (auto)indent step " set sw=8 " [global] shortmess list of flags, reduce length of messages " set shm=filnxtToO set shm+=a " [buffer] shortname non-MS-DOS: Filenames assumed to be 8.3 chars " set nosn " [global] showbreak string to use at the start of wrapped lines set sbr=+ " [global] showcmd show (partial) command in status line set sc " [global] showfulltag show full tag pattern when completing tag " set nosft " [global] showmatch briefly jump to matching bracket if insert one " set nosm " [global] showmode message on status line to show current mode " set smd " [global] sidescroll minimum number of columns to scroll horizontal " set ss=0 " [global] sidescrolloff min. nr. of columns to left and right of cursor set siso=4 " [global] smartcase no ignore case when pattern has uppercase " set noscs " [buffer] smartindent smart autoindenting for C programs " set nosi " [global] smarttab use 'shiftwidth' when inserting " set nosta " [buffer] softtabstop number of spaces that uses while editing " set sts=0 " [global] splitbelow new window from split is below the current one " set nosb " [global] splitright new window is put right of the current one " set nospr " [global] startofline commands move cursor to first blank in line set nosol " [global] statusline custom format for the status line " set stl=%f%h%m%r%=%-14(%l,%c%V%)%4P " [global] suffixes suffixes that are ignored with multiple match " set su=.bak,~,.o,.h,.info,.swp,.obj " [buffer] suffixesadd suffixes added when searching for a file " set sua= " [buffer] swapfile whether to use a swapfile for a buffer " set swf " [global] swapsync how to sync the swap file " set sws=fsync " [global] switchbuf sets behavior when switching to another buffer " set swb= " [buffer] syntax syntax to be loaded for current buffer " set syn= " [buffer] tabstop number of spaces that in file uses " set ts=8 " [global] tagbsearch use binary searching in tags files " set tbs " [global] taglength number of significant characters for a tag " set tl=0 " [global] tagrelative file names in tag file are relative " set tr " [glo-lo] tags list of file names used by the tag command " set tag=./tags,tags " [global] tagstack push tags onto the tag stack " set tgst " [global] term name of the terminal " set term=$TERM " [global] termencoding character encoding used by the terminal " set tenc= " [global] terse shorten some messages " set noterse " [buffer] textwidth maximum width of text that is being inserted set tw=79 " [glo-lo] thesaurus list of thesaurus files for keyword completion " set tsr= " [global] tildeop tilde command "~" behaves like an operator " set notop " [global] timeout time out on mappings and key codes " set to " [global] timeoutlen time out time in milliseconds " set tm=1000 " [global] title let Vim set the title of the window " set title " [global] titlelen percentage of 'columns' used for window title " set titlelen=85 " [global] titleold old title, restored when exiting " set titleold=Thanks\ for\ flying\ Vim " [global] titlestring string to use for the Vim window title " set titlestring= " [global] toolbar GUI: which items to show in the toolbar " set tb=icons,tooltips " [global] ttimeout time out on mappings " set nottimeout " [global] ttimeoutlen time out time for key codes in milliseconds " set ttm=-1 " [global] ttybuiltin use built-in termcap before external termcap " set tbi " [global] ttyfast indicates a fast terminal connection " set notf " [global] ttymouse type of mouse codes generated " set ttym= " [global] ttyscroll maximum number of lines for a scroll " set tsl=999 " [global] ttytype alias for 'term' " set tty=$TERM " [global] undolevels maximum number of changes that can be undone set ul=100 " [global] updatecount after this many characters flush swap file " set uc=200 " [global] updatetime after this many milliseconds flush swap file " set ut=4000 " [global] verbose give informative messages " set vbs=0 " [global] viewdir directory where to store files with :mkview set vdir=$HOME/etc/vim/view " [global] viewoptions specifies what to save for :mkview " set vop=folds,options,cursor " [global] viminfo use .viminfo file upon startup and exiting set vi='50,\"50,h,r/cdrom,r/floppy,r/zip,r/cam,n$HOME/etc/vim/viminfo " [global] virtualedit when to use virtual editing set ve=block " [global] visualbell use visual bell instead of beeping set vb " [global] warn warn for shell command when buffer was changed " set warn " [global] weirdinvert for terminals that have weird inversion method " set nowi " [global] whichwrap allow specified keys to cross line boundaries " set ww=b,s " [global] wildchar command-line character for wildcard expansion " set wc= " [global] wildcharm like 'wildchar' but also works when mapped " set wcm=0 " [global] wildignore files matching these patterns are not completed " set wig= " [global] wildmenu use menu for command line completion set wmnu " [global] wildmode mode for 'wildchar' command-line expansion set wim=longest:full " [global] winaltkeys when the windows system handles ALT keys " set wak=menu " [global] winheight minimum number of lines for the current window set wh=3 " [global] winminheight minimum number of lines for any window " set wmh=1 " [global] winminwidth minimal number of columns for any window set wmw=4 " [global] winwidth minimal number of columns for current window " set wiw=20 " [window] wrap long lines wrap and continue on the next line " set wrap " [buffer] wrapmargin chars from the right where wrapping starts " set wm=0 " [global] wrapscan searches wrap around the end of the file set nows " [global] write writing to a file is allowed " set write " [global] writeany write to file with no need for "!" override " set nowa " [global] writebackup make a backup before overwriting a file " set wb " [global] writedelay delay this many msec for each char (for debug) " set wd=0 " ################### " ### Diff. stuff ### " ################### let mysyntaxfile="~/etc/vim/mysyntaxfile.vim" " default colors " ctermbg=0 doesn't seem to be transparent :-/ " highlight normal ctermfg=7 ctermbg=0 guifg=white guibg=black highlight normal guifg=white guibg=black " only want syntax highlighting in multi-color environment if &t_Co > 1 syntax on endif " When editing a file, always jump to the last cursor position au BufReadPost * if line("'\"") | exe "'\"" | endif " turn off hls after 'updatetime' au CursorHold * nested exe "noh" "good try, doesn't work :-/ """ Options that are still handled but shouldn't used anymore: """ ---------------------------------------------------------- " [global] textauto obsolete, use 'fileformats' " set ta " [buffer] textmode obsolete, use 'fileformat' " set notx " ################# " ### variables ### " ################# let g:po_translator="Gerfried Fuchs " let g:po_lang_team="German " let mapleader="\\" let maplocalleader="_" " ################ " ### mappings ### " ################ " Update Changed Date map ,ucd mzG?\d\{2\}\.\d\{2\}\.\d\{4\}10xi \=strftime("%d.%m.%Y")`z " Kill quote spaces (when quoting a quote) map ,kqs mz:%s/^> >/>>/`z " Kill signature (quoted ones ;) map ,ksig mzG?^> -- $d}`z " ##################### " ### abbreviations ### " ##################### " Some netiquette-links iabbrev __quote " iabbrev __flasch iabbrev __flasch iabbrev __nett iabbrev __regeln iabbrev __attrib iabbrev __smart " searching iabbrev __google iabbrev __ggsearch " some personal links :) iabbrev __abb iabbrev __lfaq " *important* software-links iabbrev __vim iabbrev __mutt iabbrev __slrn iabbrev __irssi iabbrev __w3m iabbrev __wml iabbrev __galeon " usenet specific abbs iabbrev __plonk "Anotherone bites the dust" (w) Queen *plonk* iabbrev __ton " trust this current file, but no other set secure