Many parameters of the vi editor are controlled by option settings: search modes, margins, tabs, line numbers, etc. To set these modes the way you like, you can modify the values of these options. There are two ways to set the value of an option: interactively or thru initialization. The environment variable `EXINIT' is used by vi to set the initial option values. You could have a line in your ".login" file like this: setenv EXINIT 'set magic ignorecase nowrapscan shiftwidth=8' to set the logical options magic, ignorecase, and wrapscan, and to set the numerical option shiftwidth. You can also set options while in the vi edit session. Just type colon ':' and to the prompt type: set autowrite to set the autowrite option. Note that setting options is done in "last line" state. Here is a list of useful options, numerical options are followed by a '=n'. You set their value with the `=###' construct shown above. Boolean options are reset by preceding their name with "no" (e.g. "nomagic"). autowrite - write buffer before changing files lisp - set up lisp mode ignorecase - ignore case of letters in searches magic - allow pattern-matching expression searches number - number lines redraw - simulate a smart terminal shiftwidth=n - set shift-command widths to n showmatch - show matching parentheses as they are closed wrapmargin=n - wrap lines n columns from right margin Personally, I prefer the following options combination: setenv EXINIT 'set redraw noslowopen showmatch magic optimize' For a complete list of options, get into vi and type ":set all".