NAME
     vi, view, vedit - visual display editor based on ex(1)

SYNOPSIS
     vi [ -ClLRVx ] [ -c command ] [ -r filename ] [ -t tag  ]  [
     -wnnn ] [ +command ] filename...

     view...

     vedit...

DESCRIPTION
     vi (visual) is a  display  oriented  text  editor  based  on
     ex(1).   ex and vi are, in fact, the same text editor; it is
     possible to get to the command mode of ex from within vi and
     vice-versa.

     view runs vi with the readonly flag set.  With view, you can
     browse   through  files  interactively  without  making  any
     changes.

     vedit runs vi with the report flag set to  1,  the  showmode
     and  novice flags set, and the magic flag turned off.  These
     default settings are intended to make easier  for  beginners
     to learn vi.

OPTIONS
     -C          Encryption option; the same as  the  -x  option,
                 except  that  all  input text is assumed to have
                 already been encrypted.  This guarantees decryp-
                 tion   in   the   cases   where  the  -x  option
                 incorrectly determines that the  input  file  is
                 not  already  encrypted (this is extremely rare,
                 and will only occur in conjunction with the  use
                 of files containing non-ASCII text).

     -l          Set up for editing LISP programs.

     -L          List the names of all files saved as the  result
                 of an editor or system crash.

     -R          Edit files in read only  state.   This  has  the
                 same effect as the view command.

     -V          Verbose. Any non-tty input  will  be  echoed  on
                 standard error.

     -x          Prompt for a key to be used  in  encrypting  the
                 file being edited. When used in conjunction with
                 a pre-existing file, ex will  make  an  educated
                 guess to determine whether or not the input text
                 file is already encrypted.

     -c command  Start the editing session by executing the  edi-
                 tor   command   command.   If  command  contains
                 spaces, it must be surrounded by double quotess,
                 see EXAMPLES below.

     -r filename Recover the named files after a crash.

     -t tag      Edit the file containing tag.  There must  be  a
                 tags   database   in  the  directory,  built  by
                 ctags(1), that contains a reference to tag.

     +command    Start the editing session by executing  command.
                 This is identical to the -c option.

ENVIRONMENT
     The editor recognizes the environment variable EXINIT  as  a
     command  (or  list of commands separated by | characters) to
     run when it starts up.  If this variable is  undefined,  the
     editor checks for startup commands in the file ~/.exrc file,
     which you must own.  However, if there is a .exrc  owned  by
     you  in  the current directory, the editor takes its startup
     commands from this file - overriding both the file  in  your
     home directory and the environment variable.

     The environment variables  LC_CTYPE,  LANG,  and  LC_default
     control  the  character  classification  throughout  vi.  On
     entry to vi, these environment variables are checked in  the
     following  order:  LC_CTYPE,  LANG,  and LC_default.  When a
     valid value is found, remaining  environment  variables  for
     character  classification  are  ignored.  For example, a new
     setting for LANG does not override the current valid charac-
     ter  classification  rules  of  LC_CTYPE.   When none of the
     values is valid, the shell character classification defaults
     to  the  POSIX.1  "C"  locale.  In the "C" locale, all 8-bit
     characters are escaped into an octal representation.

EXAMPLES
     The following command:

          example%  vi -c ":r test" tested

     will read in the file test at the end of the tested file.

SEE ALSO
     ctags(1), ex(1)

     Editing Text Files
     Getting Started

BUGS
     Software TAB characters using CTRL-T work  only  immediately
     after the autoindent.
     SHIFT-left and SHIFT-right on intelligent terminals  do  not
     make  use  of  insert and delete character operations in the
     terminal.

     The wrapmargin option can be fooled since it looks at output
     columns  when  blanks are typed.  When insert mode pushes an
     existing word through the margin  and  onto  the  next  line
     without a break, the line will not be broken.

     Insert/delete within a line can be slow  if  TAB  characters
     are  present  on  intelligent terminals, since the terminals
     need help in doing this correctly.

     Saving text on deletes in  the  named  buffers  is  somewhat
     inefficient.

     The source command does not work when executed as `:source';
     there  is  no  way  to  use  the  `:append',  `:change', and
     `:insert' commands, since it is not possible  to  give  more
     than  one  line of input to a `:' escape.  To use these on a
     `:global' you must Q to ex command mode, execute  them,  and
     then reenter the screen editor with vi or open.

     When using the -r option to recover a file, you  must  write
     the  recovered text before quitting or you will lose it.  vi
     does not prevent you from exiting without writing unless you
     make changes.

     vi does not adjust when the SunView window in which it  runs
     is resized.

RESTRICTIONS
     The  encryption  facilities  of  vi  are  not  available  on
     software shipped outside the U.S.