Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ex(1)

edit(1)

VI(1)                                BSD                                 VI(1)



NAME
     vi - screen oriented (visual) display editor based on ex

SYNOPSIS
     vi [ -t tag ] [ -r file ] [ +command ] [ -l ] [ -wn ] name ...

DESCRIPTION
     vi is a display-oriented text editor based on ex(1).  Since vi runs the
     same code as ex(1), you can get to the command mode of ex(1) from within
     vi and vice versa.

     When using vi, changes you make to the file are reflected in what appears
     on the terminal screen.  The position of the cursor on the screen
     indicates the position within the file.  The UNIX Text Processing manual
     provides full details on the use of vi.

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

     -r file        Recover file after an editor or system crash.  If file is
                    not specified, a list of all saved files is printed.

     -l             Indent appropriately for LISP code, and modify (), {}, [[,
                    and ]] commands to have meaning for LISP.

     -wn            Set the default window size to n.

     +command       Force the editor to begin by executing the specified
                    command. If you omit command, vi initially positions the
                    cursor at the last line of the first file.

NOTES
     In the Domain/OS BSD implementation of vi, the w (word) and ^] (tag)
     commands both recognize a $ as part of a word. The w command also
     recognizes a - as part of a word, if LISP mode is on.

BUGS
     Software tabs using CTRL/T work only immediately after the autoindent.

     Left and right shifts on intelligent terminals don't 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.  If a long word passes through the margin and onto the
     next line without a break, then the line won't be broken.

     Wrapmargins should be from left, not right, margin.

     Insert/delete within a line can be slow if tabs 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 colon (:) 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.

FILES
     /usr/lib/ex?.?strings    Error messages
     /usr/lib/ex?.?recover    Recover command
     /usr/lib/ex?.?preserve   Preserve command
     /etc/termcap             Terminal capability descriptions
     ~/.exrc                  Editor start-up file
     /tmp/Exnnnnn             Editor temporary
     /tmp/Rxnnnnn             Named buffer temporary
     /usr/preserve            Preservation directory

SEE ALSO
     ex(1), edit(1), termcap (5), environ (7),
     UNIX Text Processing.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026