" obtained from the output of :options, then postprocessed: " d2} " :%s/^ *[[:digit:]]\+/""" " qa " ma " wi\n " /^\([^[:space:]"].*\)\?$/ " k " :'a,.s/^/" / " /^[^[:space:]"] " O " :%s,\n\n\n",\r\r" """ important " compatible " behave very Vi compatible (not advisable) " set cp nocp set nocp " cpoptions " list of flags to specify Vi compatibility " set cpo=aABceFs " insertmode " use Insert mode as the default mode " set noim im " paste " paste mode, insert typed text literally " set nopaste paste " pastetoggle " key sequence to toggle paste mode " set pt= set pt= " runtimepath " list of directories used for runtime files and plugins " set rtp=/home/madduck/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vimcurrent,/usr/share/vim/vimfiles/after,/home/madduck/.vim/after " helpfile " name of the main help file " set hf=/usr/share/vim/vimcurrent/doc/help.txt """ moving around, searching and patterns " whichwrap " list of flags specifying which commands wrap to another line " (local to window) " set ww= set ww=b,s,[,<,>,],~ " startofline " many jump commands move the cursor to the first non-blank " character of a line " set sol nosol " paragraphs " nroff macro names that separate paragraphs " set para=IPLPPPQPP\ LIpplpipbp " sections " nroff macro names that separate sections " set sect=SHNHH\ HUnhsh " path " list of directory names used for file searching " (global or local to buffer) " set pa=.,/usr/include,, " cdpath " list of directory names used for :cd " set cd=,, " wrapscan " search commands wrap around the end of the buffer " set ws nows "set ws " incsearch " show match for partly typed search command " set nois is set is " magic " change the way backslashes are used in search patterns " set magic nomagic " ignorecase " ignore case when using a search pattern " set noic ic set ic " smartcase " override 'ignorecase' when pattern has upper case characters " set noscs scs set scs " casemap " What method to use for changing case of letters " set cmp=internal,keepascii " maxmempattern " maximum amount of memory in Kbyte used for pattern matching " set mmp=1000 " define " pattern for a macro definition line " (global or local to buffer) " set def=^\\s*#\\s*define " include " pattern for an include-file line " (local to buffer) " set inc=^\\s*#\\s*include " includeexpr " expression used to transform an include line to a file name " (local to buffer) " set inex= """ tags " tagbsearch " use binary searching in tags files " set tbs notbs " taglength " number of significant characters in a tag name or zero " set tl=0 " tags " list of file names to search for tags " (global or local to buffer) " set tag=./tags,./TAGS,tags,TAGS " tagrelative " file names in a tags file are relative to the tags file " set notr tr " tagstack " a :tag command will use the tagstack " set tgst notgst " showfulltag " when completing tags in Insert mode show more info " set nosft sft " cscopeprg " command for executing cscope " set csprg=cscope " cscopetag " use cscope for tag commands " set nocst cst " cscopetagorder " 0 or 1; the order in which ":cstag" performs a search " set csto=0 " cscopeverbose " give messages when adding a cscope database " set nocsverb csverb " cscopepathcomp " how many components of the path to show " set cspc=0 " cscopequickfix " When to open a quickfix window for cscope " set csqf= """ displaying text " scroll " number of lines to scroll for CTRL-U and CTRL-D " (local to window) " set scr=8 " scrolloff " number of screen lines to show around the cursor " set so=0 set so=5 " wrap " long lines wrap " set wrap nowrap set nowrap " linebreak " wrap long lines at a character in 'breakat' " (local to window) " set nolbr lbr " does not work with autocmd set list/nolist below " breakat " which characters might cause a line break " set brk=\ \ !@*-+;:,./? " showbreak " string to put before wrapped screen lines " set sbr= " sidescroll " minimal number of columns to scroll horizontally " set ss=0 " sidescrolloff " minimal number of columns to keep left and right of the cursor " set siso=0 set siso=0 " display " include "lastline" to show the last line even if it doesn't fit " include "uhex" to show unprintable characters as a hex number " set dy= set dy=lastline,uhex " fillchars " characters to use for the status line, folds and filler lines " set fcs=vert:\|,fold:- " cmdheight " number of lines used for the command-line " set ch=1 " columns " width of the display " set co=80 " lines " number of lines in the display " set lines=25 " lazyredraw " don't redraw while executing macros " set nolz lz set lz " writedelay " delay in msec for each char written to the display " (for debugging) " set wd=0 " list " show as ^I and end-of-line as $ " (local to window) " set nolist list set list " listchars " list of strings used for list mode " set lcs=eol:$ set lcs=tab:⇝·,trail:· " number " show the line number for each line " (local to window) " set nonu nu " numberwidth " number of columns to use for the line number " (local to window) " set nuw=8 """ syntax, highlighting and spelling " background " "dark" or "light"; the background color brightness " set bg=light " filetype " type of file; triggers the FileType event when set " (local to buffer) " set ft= " syntax " name of syntax highlighting used " (local to buffer) " set syn= " synmaxcol " maximum column to look for syntax items " (local to buffer) " set smc=3000 " highlight " which highlighting to use 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,c:VertSplit,t:Title,v:Visual,V:VisualNOS,w:WarningMsg,W:WildMenu,f:Folded,F:FoldColumn,A:DiffAdd,C:DiffChange,D:DiffDelete,T:DiffText,>:SignColumn,B:SpellBad,P:SpellCap,R:SpellRare,L:SpellLocal,+:Pmenu,=:PmenuSel,x:PmenuSbar,X:PmenuThumb,*:TabLine,#:TabLineSel,_:TabLineFill,!:CursorColumn,.:CursorLine " hlsearch " highlight all matches for the last used search pattern " set nohls hls set hls " cursorcolumn " highlight the screen column of the cursor " (local to window) " set nocuc cuc " cursorline " highlight the screen line of the cursor " (local to window) " set nocul cul " spell " highlight spelling mistakes " (local to window) " set nospell spell " spelllang " list of accepted languages " (local to buffer) " set spl=en " spellfile " file that "zg" adds good words to " (local to buffer) " set spf= " spellcapcheck " pattern to locate the end of a sentence " (local to buffer) " set spc=[.?!]\\_[\\])'\"\ \ ]\\+ set spc= " spellsuggest " methods used to suggest corrections " set sps=best " mkspellmem " amount of memory used by :mkspell before compressing " set msm=460000,2000,500 """ multiple windows " laststatus " 0, 1 or 2; when to use a status line for the last window " set ls=1 " statusline " alternate format to be used for a status line " set stl= " equalalways " make all windows the same size when adding/removing windows " set ea noea " eadirection " in which direction 'equalalways' works: "ver", "hor" or "both" " set ead=both " winheight " minimal number of lines used for the current window " set wh=1 " winminheight " minimal number of lines used for any window " set wmh=1 " winfixheight " keep the height of the window " (local to window) " set nowfh wfh " winfixwidth " keep the width of the window " (local to window) " set nowfw wfw " winwidth " minimal number of columns used for the current window " set wiw=20 " winminwidth " minimal number of columns used for any window " set wmw=1 " helpheight " initial height of the help window " set hh=20 " previewheight " default height for the preview window " set pvh=12 " previewwindow " identifies the preview window " (local to window) " set nopvw pvw " hidden " don't unload a buffer when no longer shown in a window " set nohid hid " switchbuf " "useopen" and/or "split"; which window to use when jumping " to a buffer " set swb= " splitbelow " a new window is put below the current one " set nosb sb " splitright " a new window is put right of the current one " set nospr spr " scrollbind " this window scrolls together with other bound windows " (local to window) " set noscb scb " scrollopt " "ver", "hor" and/or "jump"; list of options for 'scrollbind' " set sbo=ver,jump """ multiple tab pages " showtabline " 0, 1 or 2; when to use a tab pages line " set stal=1 " tabpagemax " maximum number of tab pages to open for -p and "tab all" " set tpm=10 " tabline " custom tab pages line " set tal= """ terminal " term " name of the used terminal " set term=rxvt-unicode " ttytype " alias for 'term' " set tty=rxvt-unicode " ttybuiltin " check built-in termcaps first " set tbi notbi " ttyfast " terminal connection is fast " set tf notf " weirdinvert " terminal that requires extra redrawing " set nowiv wiv " esckeys " recognize keys that start with in Insert mode " set noek ek " scrolljump " minimal number of lines to scroll at a time " set sj=1 " ttyscroll " maximum number of lines to use scrolling instead of redrawing " set tsl=999 " title " show info in the window title " set notitle title set notitle " titlelen " percentage of 'columns' used for the window title " set titlelen=85 " titlestring " when not empty, string to be used for the window title " set titlestring= " titleold " string to restore the title to when exiting Vim " set titleold=Thanks\ for\ flying\ Vim " icon " set the text of the icon for this window " set noicon icon " iconstring " when not empty, text for the icon of this window " set iconstring= """ using the mouse " mouse " list of flags for using the mouse " set mouse= " mousemodel " "extend", "popup" or "popup_setpos"; what the right " mouse button is used for " set mousem=extend " mousetime " maximum time in msec to recognize a double-click " set mouset=500 " ttymouse " "xterm", "xterm2", "dec" or "netterm"; type of mouse " set ttym=xterm """ printing " printoptions " list of items that control the format of :hardcopy output " set popt= " printdevice " name of the printer to be used for :hardcopy " set pdev= " printexpr " expression used to print the PostScript file for :hardcopy " set pexpr=system('lpr'\ .\ (&printdevice\ ==\ ''\ ?\ ''\ :\ '\ -P'\ .\ &printdevice)\ .\ '\ '\ .\ v:fname_in)\ .\ delete(v:fname_in)\ +\ v:shell_error set pexpr=system('lp'\ .\ (&printdevice\ ==\ ''\ ?\ ''\ :\ '\ -d'\ .\ &printdevice)\ .\ '\ '\ .\ v:fname_in)\ .\ delete(v:fname_in)\ +\ v:shell_error " printfont " name of the font to be used for :hardcopy " set pfn=courier " printheader " format of the header used for :hardcopy " set pheader=%<%f%h%m%=Page\ %N " printencoding " encoding used to print the PostScript file for :hardcopy " set penc= " printmbcharset " the CJK character set to be used for CJK output from :hardcopy " set pmbcs= " printmbfont " list of font names to be used for CJK output from :hardcopy " set pmbfn= """ messages and info " terse " add 's' flag in 'shortmess' (don't show search message) " set noterse terse " shortmess " list of flags to make messages shorter " set shm= set shortmess=atTWoOI " showcmd " show (partial) command keys in the status line " set nosc sc " showmode " display the current mode in the status line " set nosmd smd " ruler " show cursor position below each window " set noru ru set ruler " rulerformat " alternate format to be used for the ruler " set ruf=%20(%=%-14(%l,%c%V%)\ %P%) " report " threshold for reporting number of changed lines " set report=2 " verbose " the higher the more messages are given " set vbs=0 " verbosefile " file to write messages in " set vfile= " more " pause listings when the screen is full " set nomore more " confirm " start a dialog when a command fails " set nocf cf " errorbells " ring the bell for error messages " set noeb eb " visualbell " use a visual bell instead of beeping " set novb vb " helplang " list of preferred languages for finding help " set hlg=en """ selecting text " selection " "old", "inclusive" or "exclusive"; how selecting text behaves " set sel=inclusive " selectmode " "mouse", "key" and/or "cmd"; when to start Select mode " instead of Visual mode " set slm= " keymodel " "startsel" and/or "stopsel"; what special keys can do " set km= """ editing text " undolevels " maximum number of changes that can be undone " set ul=1000 " modified " changes have been made and not written to a file " (local to buffer) " set nomod mod " readonly " buffer is not to be written " (local to buffer) " set noro ro " modifiable " changes to the text are not possible " (local to buffer) " set ma noma " textwidth " line length above which to break a line " (local to buffer) " set tw=0 set tw=78 " wrapmargin " margin from the right in which to break a line " (local to buffer) " set wm=0 " backspace " specifies what , CTRL-W, etc. can do in Insert mode " set bs= set bs=indent,eol,start " comments " definition of what comment lines look like " (local to buffer) " set com=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:- " formatoptions " list of flags that tell how automatic formatting works " (local to buffer) " set fo=vt set fo=tcroqn1l " formatlistpat " pattern to recognize a numbered list " (local to buffer) " set flp=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s* let &flp='^\v\s*(((#|\a|\d{,4}|[ivx]{,4})[]:.)}/])+|[-\*.·→+])\s+' " formatexpr " expression used for "gq" to format lines " (local to buffer) " set fex= " complete " specifies how Insert mode completion works for CTRL-N and CTRL-P " (local to buffer) " set cpt=.,w,b,u,t,i " completeopt " whether to use a popup menu for Insert mode completion " set cot=menu,preview " pumheight " maximum height of the popup menu " set ph=0 " completefunc " user defined function for Insert mode completion " (local to buffer) " set cfu= " omnifunc " function for filetype-specific Insert mode completion " (local to buffer) " set ofu= " dictionary " list of dictionary files for keyword completion " (global or local to buffer) " set dict= " thesaurus " list of thesaurus files for keyword completion " (global or local to buffer) " set tsr= " infercase " adjust case of a keyword completion match " (local to buffer) " set noinf inf set inf " digraph " enable entering digraps with c1 c2 " set nodg dg "set dg " tildeop " the "~" command behaves like an operator " set notop top "set tildeop " operatorfunc " function called for the"g@" operator " set opfunc= " showmatch " When inserting a bracket, briefly jump to its match " set nosm sm " matchtime " tenth of a second to show a match for 'showmatch' " set mat=5 " matchpairs " list of pairs that match for the "%" command " (local to buffer) " set mps=(:),{:},[:] " joinspaces " use two spaces after '.' when joining a line " set js nojs set nojs " nrformats " "alpha", "octal" and/or "hex"; number formats recognized for " CTRL-A and CTRL-X commands " (local to buffer) " set nf=octal,hex """ tabs and indenting " tabstop " number of spaces a in the text stands for " (local to buffer) " set ts=8 " " You could set the 'tabstop' option to 2. However, if you edit the file " another time, with 'tabstop' set to the default value of 8, it will look " wrong. In other programs and when printing the indent will also be " wrong. Therefore it is recommended to keep 'tabstop' at eight all the " time. That's the standard value everywhere. " "set ts=2 " shiftwidth " number of spaces used for each step of (auto)indent " (local to buffer) " set sw=8 set sw=2 " smarttab " a in an indent inserts 'shiftwidth' spaces " set nosta sta set sta " softtabstop " if non-zero, number of spaces to insert for a " (local to buffer) " set sts=0 set sts=2 " shiftround " round to 'shiftwidth' for "<<" and ">>" " set nosr sr set sr " expandtab " expand to spaces in Insert mode " (local to buffer) " set noet et set et " autoindent " automatically set the indent of a new line " (local to buffer) " set noai ai set ai " smartindent " do clever autoindenting " (local to buffer) " set nosi si " cindent " enable specific indenting for C code " (local to buffer) " set nocin cin " cinoptions " options for C-indenting " (local to buffer) " set cino= " cinkeys " keys that trigger C-indenting in Insert mode " (local to buffer) " set cink=0{,0},0),:,0#,!^F,o,O,e " cinwords " list of words that cause more C-indent " (local to buffer) " set cinw=if,else,while,do,for,switch " indentexpr " expression used to obtain the indent of a line " (local to buffer) " set inde= " indentkeys " keys that trigger indenting with 'indentexpr' in Insert mode " (local to buffer) " set indk=0{,0},:,0#,!^F,o,O,e " copyindent " Copy whitespace for indenting from previous line " (local to buffer) " set noci ci set ci " preserveindent " Preserve kind of whitespace when changing indent " (local to buffer) " set nopi pi """ set pi this ABORTS < 1:7.1-135+1 (see #446268) if has('patch073') set pi endif " lisp " enable lisp mode " (local to buffer) " set nolisp lisp " 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 """ folding " foldenable " set to display all folds open " (local to window) " set fen nofen " foldlevel " folds with a level higher than this number will be closed " (local to window) " set fdl=0 " foldlevelstart " value for 'foldlevel' when starting to edit a file " set fdls=-1 " foldcolumn " width of the column used to indicate folds " (local to window) " set fdc=0 " foldtext " expression used to display the text of a closed fold " (local to window) " set fdt=foldtext() " foldclose " set to "all" to close a fold when the cursor leaves it " set fcl= " foldopen " specifies for which commands a fold will be opened " set fdo=block,hor,mark,percent,quickfix,search,tag,undo " foldminlines " minimum number of screen lines for a fold to be closed " (local to window) " set fml=1 " commentstring " template for comments; used to put the marker in " set cms=/*%s*/ " foldmethod " folding type: "manual", "indent", "expr", "marker" or "syntax" " (local to window) " set fdm=manual set fdm=marker " foldexpr " expression used when 'foldmethod' is "expr" " (local to window) " set fde=0 " foldignore " used to ignore lines when 'foldmethod' is "indent" " (local to window) " set fdi=# " foldmarker " markers used when 'foldmethod' is "marker" " (local to window) " set fmr={{{,}}} " foldnestmax " maximum fold depth for when 'foldmethod is "indent" or "syntax" " (local to window) " set fdn=20 """ diff mode " diff " use diff mode for the current window " (local to window) " set nodiff diff " diffopt " options for using diff mode " set dip=filler " diffexpr " expression used to obtain a diff file " set dex= " patchexpr " expression used to patch a file " set pex= """ mapping " maxmapdepth " maximum depth of mapping " set mmd=1000 " remap " recognize mappings in mapped keys " set remap noremap " timeout " allow timing out halfway into a mapping " set to noto " ttimeout " allow timing out halfway into a key code " set nottimeout ttimeout " timeoutlen " time in msec for 'timeout' " set tm=1000 " ttimeoutlen " time in msec for 'ttimeout' " set ttm=-1 """ reading and writing files " modeline " enable using settings from modelines when reading a file " (local to buffer) " set noml ml set ml " modelines " number of lines to check for modelines " set mls=5 " binary " binary file editing " (local to buffer) " set nobin bin " endofline " last line in the file has an end-of-line " (local to buffer) " set eol noeol " bomb " Prepend a Byte Order Mark to the file " (local to buffer) " set nobomb bomb " fileformat " end-of-line format: "dos", "unix" or "mac" " (local to buffer) " set ff=unix " fileformats " list of file formats to look for when editing a file " set ffs= " textmode " obsolete, use 'fileformat' " (local to buffer) " set notx tx " textauto " obsolete, use 'fileformats' " set nota ta " write " writing files is allowed " set write nowrite " writebackup " write a backup file before overwriting a file " set wb nowb " backup " keep a backup after overwriting a file " set nobk bk " backupskip " patterns that specify for which files a backup is not made " set bsk=/tmp/* " backupcopy " whether to make the backup as a copy or rename the existing file " set bkc=yes " backupdir " list of directories to put backup files in " set bdir=.,/home/madduck/tmp,/home/madduck/ " backupext " file name extension for the backup file " set bex=~ " autowrite " automatically write a file when leaving a modified buffer " set noaw aw set aw " autowriteall " as 'autowrite', but works with more commands " set noawa awa set awa " writeany " always write without asking for confirmation " set nowa wa " autoread " automatically read a file when it was modified outside of Vim " (global or local to buffer) " set noar ar set ar " patchmode " keep oldest version of a file; specifies file name extension " set pm= " fsync " forcibly sync the file to disk after writing it " set fs nofs " shortname " use 8.3 file names " (local to buffer) " set nosn sn """ the swap file " directory " list of directories for the swap file " set dir=.,/home/madduck/tmp,/var/tmp,/tmp set dir=.,$TMPDIR//,/var/tmp//,/tmp// " swapfile " use a swap file for this buffer " (local to buffer) " set swf noswf " swapsync " "sync", "fsync" or empty; how to flush a swap file to disk " set sws=fsync set sws= " updatecount " number of characters typed to cause a swap file update " set uc=200 " updatetime " time in msec after which the swap file will be updated " set ut=4000 set ut=10000 " maxmem " maximum amount of memory in Kbyte used for one buffer " set mm=1030480 " maxmemtot " maximum amount of memory in Kbyte used for all buffers " set mmt=1030480 """ command line editing " history " how many command lines are remembered " set hi=0 set hi=100 " wildchar " key that triggers command-line expansion " set wc=5 " wildcharm " like 'wildchar' but can also be used in a mapping " set wcm=0 " wildmode " specifies how command line completion works " set wim=full set wim=list:full " suffixes " list of file name extensions that have a lower priority " set su=.bak,~,.o,.h,.info,.swp,.obj " suffixesadd " list of file name extensions added when searching for a file " (local to buffer) " set sua= " wildignore " list of patterns to ignore files for file name completion " set wig= set wig=*.o,*.pyc,*.pyo,*~,*.bk,*.bak " wildmenu " command-line completion shows a list of matches " set nowmnu wmnu " cedit " key used to open the command-line window " set cedit= " cmdwinheight " height of the command-line window " set cwh=7 """ executing external commands " shell " name of the shell program used for external commands " set sh=/bin/zsh " shellquote " character(s) to enclose a shell command in " set shq= " shellxquote " like 'shellquote' but include the redirection " set sxq= " shellcmdflag " argument for 'shell' to execute a command " set shcf=-c " shellredir " used to redirect command output to a file " set srr=>%s\ 2>&1 " shelltemp " use a temp file for shell commands instead of using a pipe " set nostmp stmp " equalprg " program used for "=" command " (global or local to buffer) " set ep= " formatprg " program used to format lines with "gq" command " set fp= " keywordprg " program used for the "K" command " set kp=man " warn " warn when using a shell command and a buffer has changes " set warn nowarn set warn """ running make and jumping to errors " errorfile " name of the file that contains error messages " set ef=errors.err " errorformat " list of formats for error messages " (global or local to buffer) " set efm=%*[^\"]\"%f\"%*\\D%l:\ %m,\"%f\"%*\\D%l:\ %m,%-G%f:%l:\ (Each\ undeclared\ identifier\ is\ reported\ only\ once,%-G%f:%l:\ for\ each\ function\ it\ appears\ in.),%f:%l:%c:%m,%f(%l):%m,%f:%l:%m,\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m,%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',%D%*\\a:\ Entering\ directory\ `%f',%X%*\\a:\ Leaving\ directory\ `%f',%DMaking\ %*\\a\ in\ %f,%f\|%l\|\ %m " makeprg " program used for the ":make" command " (global or local to buffer) " set mp=make " shellpipe " string used to put the output of ":make" in the error file " set sp=2>&1\|\ tee " makeef " name of the errorfile for the 'makeprg' command " set mef= " grepprg " program used for the ":grep" command " (global or local to buffer) " set gp=grep\ -n\ $*\ /dev/null " grepformat " list of formats for output of 'grepprg' " set gfm=%f:%l:%m,%f:%l%m,%f\ \ %l%m """ language specific " isfname " specifies the characters in a file name " set isf=@,48-57,/,.,-,_,+,,,#,$,%,~,= " isident " specifies the characters in an identifier " set isi=@,48-57,_,192-255 " iskeyword " specifies the characters in a keyword " (local to buffer) " set isk=@,48-57,_ " isprint " specifies printable characters " set isp=@,161-255 " quoteescape " specifies escape characters in a string " (local to buffer) " set qe=\\ " rightleft " display the buffer right-to-left " (local to window) " set norl rl " rightleftcmd " When to edit the command-line right-to-left " (local to window) " set rlc=search " revins " Insert characters backwards " set nori ri " allowrevins " Allow CTRL-_ in Insert and Command-line mode to toggle 'revins' " set noari ari " aleph " the ASCII code for the first letter of the Hebrew alphabet " set al=224 " hkmap " use Hebrew keyboard mapping " set nohk hk " hkmapp " use phonetic Hebrew keyboard mapping " set nohkp hkp " altkeymap " use Farsi as the second language when 'revins' is set " set noakm akm " fkmap " use Farsi keyboard mapping " set nofk fk " arabic " Prepare for editing Arabic text " (local to window) " set noarab arab " arabicshape " Perform shaping of Arabic characters " set noarshape noarshape " termbidi " Terminal will perform bidi handling " set notbidi tbidi " keymap " name of a keyboard mappping " set kmp= " langmap " translate characters for Normal mode " set lmap= " iminsert " in Insert mode: 1: use :lmap; 2: use IM; 0: neither " (local to window) " set imi=0 " imsearch " entering a search pattern: 1: use :lmap; 2: use IM; 0: neither " (local to window) " set ims=0 """ multi-byte characters " encoding " character encoding used in Vim: "latin1", "utf-8" " "euc-jp", "big5", etc. " set enc=utf-8 " fileencoding " character encoding for the current file " (local to buffer) " set fenc=utf-8 " fileencodings " automatically detected character encodings " set fencs=ucs-bom,utf-8,default,latin1 " termencoding " character encoding used by the terminal " set tenc= " charconvert expression " used for character encoding conversion " set ccv= " delcombine " Delete combining (composing) characters on their own " set nodeco deco " maxcombine " Maximum number of combining (composing) characters displayed " set mco=2 " ambiwidth " Width of ambiguous width characters " set ambw=single """ various " virtualedit " when to use virtual editing: "block", "insert" and/or "all" " set ve= " eventignore " list of autocommand events which are to be ignored " set ei= " loadplugins " load plugin scripts when starting up " set nolpl lpl set lpl " exrc " enable reading .vimrc/.exrc/.gvimrc in the current directory " set noex ex " secure " safer working with script files in the current directory " set nosecure secure set secure " gdefault " use the 'g' flag for ":substitute" " set nogd gd " edcompatible " 'g' and 'c' flags of ":substitute" toggle " set noed ed " maxfuncdepth " maximum depth of function calls " set mfd=100 " sessionoptions " list of words that specifies what to put in a session file " set ssop=blank,buffers,curdir,folds,help,options,tabpages,winsize " viewoptions " list of words that specifies what to save for :mkview " set vop=folds,options,cursor " viewdir " directory where to store files with :mkview " set vdir=/home/madduck/.vim/view set vdir=$VARDIR/vim/view " viminfo " list that specifies what to write in the viminfo file " set vi= set vi=<1000,'1000,\"1000,:100,/100,@100,f1,%,!,h,n$VARDIR/vim/viminfo " bufhidden " what happens with a buffer when it's no longer in a window " (local to buffer) " set bh= " buftype " "", "nofile", "nowrite" or "quickfix": type of buffer " (local to buffer) " set bt= " buflisted " whether the buffer shows up in the buffer list " (local to buffer) " set bl nobl " debug " set to "msg" to see all error messages " set debug= if &cp | set nocp | endif let s:cpo_save=&cpo set cpo&vim let g:netrw_home="$VARDIR/vim" filetype plugin indent on syntax on colorscheme madduck " leave the w mark whenever a file is written autocmd BufWrite * normal mw autocmd BufRead *.vcf set filetype=vcard " leave the i mark whenever we go idle (after updatetime) "augroup markidle "autocmd CursorHold * normal mi "autocmd CursorHoldI * normal mi "DISABLED while broken (shifts left) "augroup end " disable list mode when inserting stuff, otherwise keep it enabled, it's " useful (see also setting lcs) augroup listinsert autocmd InsertEnter * set nolist autocmd InsertLeave * set list augroup end " flag trailing spaces as error only when not inserting augroup tsperrorinsert autocmd InsertEnter * match none /\s\+$/ autocmd InsertLeave * match Error /\s\+$/ augroup end " this isn't windows, screw the F1->help key map imap vmap " ignore Q -- Ex mode map Q let mapleader = ';' let maplocalleader = ';' " replace fake tab chars with real ones map ft :%s,⇝·*, ,g:nohlsearch`` " replace fake spaces with real ones map fs :%s,·, ,g:nohlsearch`` function WhatHighlight() echon 'hi<' . synIDattr(synID(line('.'),col('.'),1),'name') . '> ' echon 'trans<' . synIDattr(synID(line('.'),col('.'),0),'name') . '> ' echon 'lo<' . synIDattr(synIDtrans(synID(line('.'),col('.'),1)),'name') . '>' endfunction map sy :call WhatHighlight() map / :nohlsearch iab → ➬ try execute pathogen#infect() catch "echo "Pathogen not installed" endtry let g:is_posix = 1 let g:ycm_add_preview_to_completeopt="popup" let g:ycm_autoclose_preview_window_after_completion = 1 let g:UltiSnipsExpandTrigger = "" let g:UltiSnipsJumpForwardTrigger = "" let g:UltiSnipsJumpBackwardTrigger = "" map :UltiSnipsEdit imap :UltiSnipsEdit let &cpo=s:cpo_save unlet s:cpo_save