vi, view, vedit - screen-oriented  (visual)  display  editor
     based on ex

     /usr/bin/vi [  -|  -s  ]  [ -l ]  [ -L ]  [ -R ]  [   -r   [
     filename ]  ]  [ -S ]  [ -t tag ]  [ -v ]  [ -V ]  [ -x ]  [
     -wn ]  [ -C ]  [ +command  | -c command ]  filename ...

     /usr/bin/view [  -|  -s  ]  [ -l ]  [ -L ]  [ -R ]  [  -r  [
     filename ]  ]  [ -S ]  [ -t tag ]  [ -v ]  [ -V ]  [ -x ]  [
     -wn ]  [ -C ]  [ +command  | -c command ]  filename ...

     /usr/bin/vedit [  -|  -s  ]  [ -l ]  [ -L ]  [ -R ]   [   -r
     [  filename ]  ]  [ -S ]  [ -t tag ]  [ -v ]  [ -V ]  [ -x ]
     [ -wn ]  [ -C ]  [ +command  | -c command ]  filename ...

     /usr/xpg4/bin/vi [  -|  -s  ]  [ -l ]  [ -L ]  [ -R ]  [  -r
     [  filename ]  ]  [ -S ]  [ -t tag ]  [ -v ]  [ -V ]  [ -x ]
     [ -wn ]  [ -C ]  [ +command  | -c command ]  filename ...

     /usr/xpg4/bin/view [  -|  -s  ]  [ -l ]  [ -L ]  [ -R  ]   [
     -r   [  filename ]  ]  [ -S ]  [ -t tag ]  [ -v ]  [ -V ]  [
     -x ]  [ -wn ]  [ -C ]  [ +command  | -c command ]   filename

     /usr/xpg4/bin/vedit [  -|  -s  ]  [ -l ]  [ -L ]  [ -R ]   [
     -r   [  filename ]  ]  [ -S ]  [ -t tag ]  [ -v ]  [ -V ]  [
     -x ]  [ -wn ]  [ -C ]  [ +command  | -c command ]   filename

     vi (visual) is a display-oriented text editor  based  on  an
     underlying line editor ex. It is possible to use the command
     mode of ex from within vi and to use the command mode of  vi
     from  within  ex.  The visual commands are described on this
     manual page; how to set options (like automatically  number-
     ing  lines and automatically starting a new output line when
     you type carriage return) and all ex  line  editor  commands
     are described on the ex(1) manual page.

     When using vi, changes you make to the file are reflected in
     what  you  see  on your terminal screen. The position of the
     cursor on the screen indicates the position within the file.

     The view invocation is  the  same  as  vi  except  that  the
     readonly flag is set.

     The vedit invocation is intended for beginners.  It  is  the
     same  as  vi  except  that  the report flag is set to 1, the
     showmode and novice flags are set, and magic is turned  off.
     These defaults make it easier to learn how to use vi.

  Invocation Options
     The following invocation options are interpreted by vi (pre-
     viously  documented  options are discussed in the NOTES sec-
     tion of this manual page):

     - | -s
           Suppress all interactive user feedback. This is useful
           when processing editor scripts.

     -C    Encryption option; same as the -x option, except  that
           vi  simulates  the  C  command of ex. The C command is
           like the X command of ex, except that all text read in
           is assumed to have been encrypted.

     -l    Set up for editing LISP programs.

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

     -r filename
           Edit filename after an editor or system crash. (Recov-
           ers  the  version  of  filename that was in the buffer
           when the crash occurred.)

     -R    Readonly mode; the readonly flag  is  set,  preventing
           accidental overwriting of the file.

     -S    This option is used in conjunction  with  the  -t  tag
           option to tell vi that the tags file may not be sorted
           and that, if the binary  search  (which  relies  on  a
           sorted  tags  file) for tag fails to find it, the much
           slower linear search should also be  done.  Since  the
           linear  search  is  slow,  users  of  large tags files
           should ensure that the tags files  are  sorted  rather
           than  use  this  flag. Creation of tags files normally
           produces sorted tags  files.  See  ctags(1)  for  more
           information on tags files.

     -t tag
           Edit the file containing the tag,  tag,  and  position
           the editor at its definition.

     -v    Start up in display editing state using  vi.  You  can
           achieve  the  same effect by simply typing the vi com-
           mand itself.

     -V    Verbose. When ex commands are read by means  of  stan-
           dard  input,  the  input  will  be  echoed to standard
           error. This may be useful when processing ex  commands
           within shell scripts.

     -wn   Set the default window size to n. This is useful  when
           using the editor over a slow speed line.

     -x    Encryption option; when used, vi simulates the X  com-
           mand of ex and prompts the user for a key. This key is
           used to encrypt and decrypt text using  the  algorithm
           of  the crypt command. The X command makes an educated
           guess to determine whether text read in  is  encrypted
           or  not.  The temporary buffer file is encrypted also,
           using a transformed version of the key  typed  in  for
           the  -x option. If an empty encryption  key is entered
           (that is, if the return key is pressed right after the
           prompt),  the  file  will  not be encrypted. This is a
           good way to decrypt a file erroneously encrypted  with
           a mistyped encryption key, such as a backspace or undo

     +command | -c  command
           Begin editing by executing the specified  editor  com-
           mand (usually a search or positioning command).

     If both the -t tag and the -c command options are given, the
     -t  tag  option  will  be processed first. That is, the file
     containing tag is selected by -t and  then  the  command  is

     The following operands are supported:

           A file to be edited.

  vi Modes
           Normal and initial mode. Other modes return to command
           mode upon completion. ESC (escape) is used to cancel a
           partial command.

     Input Entered by setting any of the following options:

           a A i I o O c C s S R

      Arbitrary text may then be entered. Input mode is  normally
     terminated  with  the ESC character, or, abnormally, with an

     Last line
           Reading input for : / ? or !. Terminate  by  typing  a
           carriage return. An interrupt cancels termination.

  Sample commands
     In the descriptions, CR stands for carriage return  and  ESC
     stands for the escape key.




           arrow keys move the cursor

     h j k l
           same as arrow keys

           insert text

           change word to new

           pluralize word (end of word;  append  s;  escape  from
           input state)

     x     delete a character

     dw    delete a word

     dd    delete a line

     3dd   delete 3 lines

     u     undo previous change

     ZZ    exit vi, saving changes

     :q!CR quit, discarding changes

           search for text

     ^U ^D scroll up or down

           any ex or ed command

  Counts before vi commands
     Numbers may be typed as a prefix to some commands. They  are
     interpreted in one of these ways:

     line/column number
           z  G  |

     scroll amount
           ^D  ^U

     repeat effect
           most of the rest

  Interrupting, canceling
     ESC   end insert or incomplete command

     DEL   (delete or rubout) interrupts

  File manipulation
     ZZ    if file modified, write and exit; otherwise, exit

     :wCR  write back changes

     :w!CR forced write, if permission originally not valid

     :qCR  quit

     :q!CR quit, discard changes

     :e nameCR
           edit file name

     :e!CR reedit, discard changes

     :e + nameCR
           edit, starting at end

     :e +nCR
           edit, starting at line n

     :e #CR
           edit alternate file

     :e! #CR
           edit alternate file, discard changes

     :w nameCR
           write file name

     :w! nameCR
           overwrite file name

     :shCR run shell, then return

           run cmd, then return

     :nCR  edit next file in arglist

     :n argsCR
           specify new arglist

     ^G    show current file and line

     :ta tagCR
           position cursor to tag

     In general, any ex or ed command (such as substitute or glo-
     bal)  may  be  typed,  preceded by a colon and followed by a
     carriage return.

  Positioning within file
     F     forward screen

     ^B    backward screen

     ^D    scroll down half screen

     ^U    scroll up half screen

     nG    go  to  the  beginning  of  the  specified  line  (end
           default), where n is a line number

     /pat  next line matching pat

     ?pat  previous line matching pat

     n     repeat last / or ? command

     N     reverse last / or ? command

           nth line after pat

           nth line before pat

     ]]    next section/function

     [[    previous section/function

     (     beginning of sentence

     )     end of sentence

     {     beginning of paragraph

     }     end of paragraph

     %     find matching ( ) or { }

  Adjusting the screen
     ^L    clear and redraw window

     ^R    clear and redraw window if ^L is -> key

     zCR   redraw screen with current line at top of window

     z-CR  redraw screen with current line at bottom of window

     z.CR  redraw screen with current line at center of window

           move pat line to bottom of window

     zn.CR use n-line window

     ^E    scroll window down one line

     ^Y    scroll window up one line

  Marking and returning
     ``    move cursor to previous context

     ''    move cursor to first non-white space in line

     mx    mark current position with the ASCII lower-case letter

     `x    move cursor to mark x

     'x    move cursor to first non-white space in line marked by

  Line positioning
     H     top line on screen

     L     last line on screen

     M     middle line on screen

     +     next line, at first non-white space character

     -     previous line, at first non-white space character

     CR    return, same as +


     or j  next line, same column


     or k  previous line, same column

  Character positioning
     ^     first non-white space character

     0     beginning of line

     $     end of line

     l or ->

     h or <-

     ^H    same as <- (backspace)

     space same as -> (space bar)

     fx    find next x

     Fx    find previous x

     tx    move to character following the next x

     Tx    move to character following the previous x

     ;     repeat last f, F, t, or T

     ,     repeat inverse of last f, F, t, or T

     n|    move to column n

     %     find matching ( ) or { }

  Words, sentences, paragraphs
     w     forward a word

     b     back a word

     e     end of word

     )     to next sentence

     }     to next paragraph

     (     back a sentence

     {     back a paragraph

     W     forward a blank-delimited word

     B     back a blank-delimited word

     E     end of a blank-delimited word

  Corrections during insert
     ^H    erase last character (backspace)

     ^W    erase last word

     erase your erase character, same as ^H (backspace)

     kill  your kill character, erase this line of input

     \     quotes your erase and kill characters

     ESC        ends insertion, back to command mode

           interrupt, suspends insert mode

     ^D    backtab one character; reset left margin of autoindent

     ^^D   caret (^)  followed  by  control-d  (^D);  backtab  to
           beginning of line; do not reset left margin of autoin-

     0^D   backtab to beginning of line;  reset  left  margin  of

     ^V    quote non-printable character

  Insert and replace
     a     append after cursor

     A     append at end of line

     i     insert before cursor

     I     insert before first non-blank

     o     open line below

     O     open line above

     rx    replace single character with x

           replace characters

     Operators are followed by a cursor  motion  and  affect  all
     text  that  would have been moved over. For example, since w
     moves over a word, dw deletes the word that would  be  moved
     over.  Double  the operator, for example dd, to affect whole

     d     delete

     c     change

     y     yank lines to buffer

     <     left shift

     >     right shift

     !     filter through command

  Miscellaneous Operations
     C     change rest of line (c$)

     D     delete rest of line (d$)

     s     substitute characters (cl)

     S     substitute lines (cc)

     J     join lines

     x     delete characters (dl)

     X     delete characters before cursor dh)

     Y     yank lines (yy)

  Yank and Put
     Put inserts the text most recently deleted or  yanked;  how-
     ever,  if  a  buffer  is  named  (using the ASCII lower-case
     letters a - z), the text in that buffer is put instead.

     3yy   yank 3 lines

     3yl   yank 3 characters

     p     put back text after cursor

     P     put back text before cursor

     "xp   put from buffer x " .nr )I xy"n

           yank to buffer x " .nr )I xd"n
           delete into buffer x

  Undo, Redo, Retrieve
     u     undo last change

     U     restore current line

     .     repeat last change " .nr )I dp"n

           retrieve d'th last delete

     See largefile(5) for the description of the behavior  of  vi
     and  view when encountering files greater than or equal to 2
     Gbyte ( 2**31 bytes).

     See environ(5) for descriptions of the following environment
     variables   that  affect  the  execution  of  vi:  LC_CTYPE,

           default  directory  where  temporary  work  files  are
           placed;  it  can be changed using the directory option
           (see the ex(1) command)

           compiled terminal description database

           subset of compiled terminal description database

     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Availability                | SUNWcsu                     |
    | CSI                         | Not enabled                 |


    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Availability                | SUNWxcu4                    |
    | CSI                         | Enabled                     |

     intro(1), ctags(1), ed(1),  edit(1),  ex(1),  attributes(5),
     environ(5), largefile(5), standards(5)

     OpenWindows Advanced User's Guide

     vi and ex were developed by The  University  of  California,
     Berkeley  California,  Computer Science Division, Department
     of Electrical Engineering and Computer Science.

     Two options, although they continue to  be  supported,  have
     been  replaced  in  the documentation by options that follow
     the Command Syntax Standard (see  intro(1)).  An  -r  option
     that  is  not  followed  with  an  option-argument  has been
     replaced by -L and +command has been replaced by -c command.

     The message file too large to recover with -r option,  which
     is  seen  when a file is loaded, indicates that the file can
     be edited and saved successfully, but if the editing session
     is lost, recovery of the file with the -r option will not be

     The editing environment defaults  to  certain  configuration
     options.  When  an editing session is initiated, vi attempts
     to read the EXINIT environment variable. If it  exists,  the
     editor  uses  the  values  defined  in EXINIT; otherwise the
     values set in $HOME/.exrc are used. If $HOME/.exrc does  not
     exist, the default values are used.

     To use a copy of .exrc  located  in  the  current  directory
     other   than  $HOME,  set  the  exrc  option  in  EXINIT  or
     $HOME/.exrc  . Options set in EXINIT can be turned off in  a
     local .exrc only if exrc is set in EXINIT or $HOME/.exrc.

     Tampering with  entries  in  /usr/share/lib/terminfo/?/*  or
     /usr/share/lib/terminfo/?/* (for example, changing or remov-
     ing an entry) can affect programs such as vi that expect the
     entry to be present and correct. In particular, removing the
     "dumb" terminal may cause unexpected problems.

     Software tabs using  ^T  work  only  immediately  after  the

     Left and right shifts on intelligent terminals do  not  make
     use  of insert and delete character operations in the termi-

     The standard Solaris version of vi will be replaced  by  the
     POSIX.2-conforming version (see standards(5)) in the future.
     Scripts which use the ex family of addressing  and  features
     should use the /usr/xpg4/bin version of these utilities.

Man(1) output converted with man2html