--- /dev/null
+
+
+
+
+
+
+
+
+ E\bEx\bx/\b/V\bVi\bi R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be M\bMa\ban\bnu\bua\bal\bl
+
+ _\bK_\be_\bi_\bt_\bh _\bB_\bo_\bs_\bt_\bi_\bc
+
+ Computer Science Division
+ Department of Electrical Engineering and Computer Science
+ University of California, Berkeley
+ Berkeley, California 94720
+
+ December 2, 1994
+
+
+
+ _\bA_\bb_\bs_\bt_\br_\ba_\bc_\bt
+
+
+
+
+ This document is the reference guide for the 4.4BSD
+implementations of n\bne\bex\bx/n\bnv\bvi\bi, which are reimplementations
+of the historic Berkeley e\bex\bx/v\bvi\bi editors.
+
+
+
+
+
+ _\bA_\bc_\bk_\bn_\bo_\bw_\bl_\be_\bd_\bg_\be_\bm_\be_\bn_\bt_\bs
+
+
+
+
+ Bruce Englar encouraged the early development of
+the historic e\bex\bx/v\bvi\bi editor. Peter Kessler helped bring
+sanity to version 2's command layout. Bill Joy wrote
+versions 1 and 2.0 through 2.7, and created the frame-
+work that users see in the present editor. Mark Horton
+added macros and other features and made e\bex\bx/v\bvi\bi work on a
+large number of terminals and Unix systems.
+
+ N\bNv\bvi\bi is originally derived from software contributed
+to the University of California, Berkeley by Steve Kirk-
+endall, the author of the v\bvi\bi clone e\bel\blv\bvi\bis\bs.
+
+ IEEE Standard Portable Operating System Interface
+for Computer Environments (POSIX) 1003.2 style Regular
+Expression support was done by Henry Spencer.
+
+ The curses library was originally done by Ken
+Arnold. Scrolling and reworking for n\bnv\bvi\bi was done by
+Elan Amir.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The Institute of Electrical and Electronics Engi-
+neers has given us permission to reprint portions of
+their documentation. Portions of this document are
+reprinted and reproduced from IEEE Std 1003.2-1992, IEEE
+Standard Portable Operating System Interface for Comput-
+er Environments (POSIX), copyright 1992 by the Institute
+of Electrical and Electronics Engineers, Inc.
+
+ The financial support of UUNET Communications Ser-
+vices is gratefully acknowledged.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b3
+
+
+1\b1.\b. D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn
+
+ V\bVi\bi is a screen oriented text editor. E\bEx\bx is a line-
+oriented text editor. E\bEx\bx and v\bvi\bi are different interfaces to
+the same program, and it is possible to switch back and
+forth during an edit session. V\bVi\bie\bew\bw is the equivalent of
+using the -\b-R\bR (read-only) option of v\bvi\bi.
+
+ This reference manual is the one provided with the
+n\bne\bex\bx/n\bnv\bvi\bi versions of the e\bex\bx/v\bvi\bi text editors. N\bNe\bex\bx/n\bnv\bvi\bi are
+intended as bug-for-bug compatible replacements for the
+original Fourth Berkeley Software Distribution (4BSD) e\bex\bx/v\bvi\bi
+programs. This reference manual is accompanied by a tradi-
+tional-style manual page. That manual page describes the
+functionality found in e\bex\bx/v\bvi\bi in far less detail than the
+description here. In addition, it describes the system
+interface to e\bex\bx/v\bvi\bi, e.g. command line options, session
+recovery, signals, environmental variables, and similar
+things.
+
+ This reference is intended for users already familiar
+with e\bex\bx/v\bvi\bi. Anyone else should almost certainly read a good
+tutorial on the editor first. If you are in an unfamiliar
+environment, and you absolutely have to get work done imme-
+diately, see the section entitled "F\bFa\bas\bst\bt S\bSt\bta\bar\brt\btu\bup\bp" in the man-
+ual page. It is probably enough to get you started.
+
+ There are a few features in n\bne\bex\bx/n\bnv\bvi\bi that are not found
+in historic versions of e\bex\bx/v\bvi\bi. Some of the more interesting
+of those features are briefly described in the section enti-
+tled "A\bAd\bdd\bdi\bit\bti\bio\bon\bna\bal\bl F\bFe\bea\bat\btu\bur\bre\bes\bs" near the end of this document.
+For the rest of this document, n\bne\bex\bx/n\bnv\bvi\bi is used only when it
+is necessary to distinguish it from the historic implementa-
+tions of e\bex\bx/v\bvi\bi.
+
+ Future versions of this software will be periodically
+made available by anonymous ftp, and can be retrieved from
+f\bft\btp\bp.\b.c\bcs\bs.\b.b\bbe\ber\brk\bke\bel\ble\bey\by.\b.e\bed\bdu\bu, in the directory u\buc\bcb\bb/\b/4\b4b\bbs\bsd\bd.
+
+2\b2.\b. S\bSt\bta\bar\brt\btu\bup\bp I\bIn\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn
+
+ E\bEx\bx/v\bvi\bi interprets one of two possible environmental
+variables and reads up to three of five possible files dur-
+ing startup. The variables and files are expected to con-
+tain e\bex\bx commands, not v\bvi\bi commands. In addition, they are
+interpreted _\bb_\be_\bf_\bo_\br_\be the file to be edited is read, and there-
+fore many e\bex\bx commands may not be used. Generally, any com-
+mand that requires output to the screen or that needs a file
+upon which to operate, will cause an error if included in a
+startup file or environmental variable.
+
+ Because the e\bex\bx command set supported by n\bne\bex\bx/n\bnv\bvi\bi is a
+superset of the command set supported by most historical
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+implementations of e\bex\bx, n\bne\bex\bx/n\bnv\bvi\bi can use the startup files
+created for the historical implementations, but the converse
+may not be true.
+
+ If the -\b-s\bs (the historic - option) is specified, or if
+standard input is redirected from a file, all environmental
+variables and startup files are ignored.
+
+ Otherwise, startup files and environmental variables
+are handled in the following order:
+
+ (1) The file /\b/e\bet\btc\bc/\b/v\bvi\bi.\b.e\bex\bxr\brc\bc is read, as long as it is owned
+ by root or the effective user ID of the user.
+
+ (2) The environmental variable N\bNE\bEX\bXI\bIN\bNI\bIT\bT (or the variable
+ E\bEX\bXI\bIN\bNI\bIT\bT, if N\bNE\bEX\bXI\bIN\bNI\bIT\bT is not set) is interpreted.
+
+ (3) If neither N\bNE\bEX\bXI\bIN\bNI\bIT\bT or E\bEX\bXI\bIN\bNI\bIT\bT was set, and the H\bHO\bOM\bME\bE
+ environmental variable is set, the file $\b$H\bHO\bOM\bME\bE/\b/.\b.n\bne\bex\bxr\brc\bc
+ (or the file $\b$H\bHO\bOM\bME\bE/\b/.\b.e\bex\bxr\brc\bc, if $\b$H\bHO\bOM\bME\bE/\b/.\b.n\bne\bex\bxr\brc\bc does not
+ exist) is read, as long as the effective user ID of
+ the user is root or is the same as the owner of the
+ file.
+
+ (4) If the e\bex\bxr\brc\bc option was turned on by one of the previ-
+ ous startup information sources, the file .\b.n\bne\bex\bxr\brc\bc (or
+ the file .\b.e\bex\bxr\brc\bc, if .\b.n\bne\bex\bxr\brc\bc does not exist) is read, as
+ long as the effective user ID of the user is the same
+ as the owner of the file.
+
+ No startup file is read if it is writable by anyone
+other than its owner.
+
+ It is not an error for any of the startup environmental
+variables or files not to exist.
+
+ Once all environmental variables are interpreted, and
+all startup files are read, the first file to be edited is
+read in (or a temporary file is created). Then, any com-
+mands specified using the -\b-c\bc option are executed, in the
+context of that file.
+
+3\b3.\b. R\bRe\bec\bco\bov\bve\ber\bry\by
+
+ There is no recovery program for n\bne\bex\bx/n\bnv\bvi\bi, nor does
+n\bne\bex\bx/n\bnv\bvi\bi run setuid. Recovery files are created readable and
+writable by the owner only. Users may recover any file
+which they can read, and the superuser may recover any edit
+session.
+
+ Edit sessions are backed by files in the directory
+named by the r\bre\bec\bcd\bdi\bir\br option (the directory
+/\b/v\bva\bar\br/\b/t\btm\bmp\bp/\b/v\bvi\bi.\b.r\bre\bec\bco\bov\bve\ber\br by default), and are named "v\bvi\bi.\b.X\bXX\bXX\bXX\bXX\bXX\bX",
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b5
+
+
+where "X\bXX\bXX\bXX\bXX\bXX\bX" is a number related to the process ID. When
+a file is first modified, a second recovery file containing
+an email message for the user is created, and is named
+"r\bre\bec\bco\bov\bve\ber\br.\b.X\bXX\bXX\bXX\bXX\bXX\bX", where, again, "X\bXX\bXX\bXX\bXX\bXX\bX" is associated with
+the process ID. Both files are removed at the end of a nor-
+mal edit session, but will remain if the edit session is
+abnormally terminated or the user runs the e\bex\bx p\bpr\bre\bes\bse\ber\brv\bve\be com-
+mand.
+
+ The r\bre\bec\bcd\bdi\bir\br option may be set in either the user's or
+system's startup information, changing the recovery direc-
+tory. (Note, however, that if a memory based file system is
+used as the backup directory, each system reboot will delete
+all of the recovery files! The same caution applies to
+directories such as /\b/t\btm\bmp\bp which are cleared of their contents
+by a system reboot, or /\b/u\bus\bsr\br/\b/t\btm\bmp\bp which is periodically
+cleared of old files on many systems.)
+
+ The recovery directory should be owned by root, or at
+least by a pseudo-user. In addition, if directory "sticky-
+bit" semantics are available, the directory should have the
+sticky-bit set so that files may only be removed by their
+owners. The recovery directory must be read, write, and
+executable by any user, i.e. mode 1777.
+
+ If the recovery directory does not exist, e\bex\bx/v\bvi\bi will
+attempt to create it. This can result in the recovery
+directory being owned by a normal user, which means that
+that user will be able to remove other user's recovery and
+backup files. This is annoying, but is not a security issue
+as the user cannot otherwise access or modify the files.
+
+ The recovery file has all of the necessary information
+in it to enable the user to recover the edit session. In
+addition, it has all of the necessary email headers for
+_\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl(8). When the system is rebooted, all of the files
+in /\b/v\bva\bar\br/\b/t\btm\bmp\bp/\b/v\bvi\bi.\b.r\bre\bec\bco\bov\bve\ber\br named "r\bre\bec\bco\bov\bve\ber\br.\b.X\bXX\bXX\bXX\bXX\bXX\bX" should be sent
+to their owners, by email, using the -\b-t\bt option of s\bse\ben\bnd\bdm\bma\bai\bil\bl
+(or a similar mechanism in other mailers). If e\bex\bx/v\bvi\bi
+receives a hangup (SIGHUP) signal, or the user executes the
+e\bex\bx p\bpr\bre\bes\bse\ber\brv\bve\be command, e\bex\bx/v\bvi\bi will automatically email the
+recovery information to the user.
+
+ If your system does not have the s\bse\ben\bnd\bdm\bma\bai\bil\bl utility (or a
+mailer program which supports its interface) the source file
+n\bnv\bvi\bi/\b/c\bco\bom\bmm\bmo\bon\bn/\b/r\bre\bec\bco\bov\bve\ber\br.\b.c\bc will have to be modified to use your
+local mail delivery programs. Note, if n\bne\bex\bx/n\bnv\bvi\bi is changed
+to use another mailer, it is important to remember that the
+owner of the file given to the mailer is the n\bne\bex\bx/n\bnv\bvi\bi user,
+so nothing in the file should be trusted as it may have been
+modified in an effort to compromise the system.
+
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ Finally, the owner execute bit is set on backup files
+when they are created, and unset when they are first modi-
+fied, e.g. backup files that have no associated email recov-
+ery file will have this bit set. (There is also a small
+window where empty files can be created and not yet have
+this bit set. This is due to the method in which the files
+are created.) Such files should be deleted when the system
+reboots.
+
+ A simple way to do this cleanup is to insert the fol-
+lowing Bourne shell script into your /\b/e\bet\btc\bc/\b/r\brc\bc.\b.l\blo\boc\bca\bal\bl (or other
+startup) file. The script should work with the historic
+Bourne shell, a POSIX 1003.2 shell or the Korn shell. (A
+copy of this script is included as
+n\bnv\bvi\bi/\b/i\bin\bns\bst\bta\bal\bll\bl/\b/r\bre\bec\bco\bov\bve\ber\br.\b.s\bsc\bcr\bri\bip\bpt\bt in the n\bne\bex\bx/n\bnv\bvi\bi distribution.)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b7
+
+
+ #\b# @\b@(\b(#\b#)\b)r\bre\bec\bco\bov\bve\ber\br.\b.s\bsc\bcr\bri\bip\bpt\bt 8\b8.\b.7\b7 (\b(B\bBe\ber\brk\bke\bel\ble\bey\by)\b) 8\b8/\b/1\b16\b6/\b/9\b94\b4
+ #\b#
+ #\b# S\bSc\bcr\bri\bip\bpt\bt t\bto\bo r\bre\bec\bco\bov\bve\ber\br n\bnv\bvi\bi e\bed\bdi\bit\bt s\bse\bes\bss\bsi\bio\bon\bns\bs.\b.
+ #\b#
+ R\bRE\bEC\bCD\bDI\bIR\bR=\b=/\b/v\bva\bar\br/\b/t\btm\bmp\bp/\b/v\bvi\bi.\b.r\bre\bec\bco\bov\bve\ber\br
+ S\bSE\bEN\bND\bDM\bMA\bAI\bIL\bL=\b=/\b/u\bus\bsr\br/\b/l\bli\bib\bb/\b/s\bse\ben\bnd\bdm\bma\bai\bil\bl
+ e\bec\bch\bho\bo '\b'R\bRe\bec\bco\bov\bve\ber\bri\bin\bng\bg n\bnv\bvi\bi e\bed\bdi\bit\bto\bor\br s\bse\bes\bss\bsi\bio\bon\bns\bs.\b.'\b'
+
+ #\b# C\bCh\bhe\bec\bck\bk e\bed\bdi\bit\bto\bor\br b\bba\bac\bck\bku\bup\bp f\bfi\bil\ble\bes\bs.\b.
+ v\bvi\bib\bba\bac\bck\bku\bup\bp=\b=`\b`e\bec\bch\bho\bo $\b$R\bRE\bEC\bCD\bDI\bIR\bR/\b/v\bvi\bi.\b.*\b*`\b`
+ i\bif\bf [\b[ "\b"$\b$v\bvi\bib\bba\bac\bck\bku\bup\bp"\b" !\b!=\b= "\b"$\b$R\bRE\bEC\bCD\bDI\bIR\bR/\b/v\bvi\bi.\b.*\b*"\b" ]\b];\b; t\bth\bhe\ben\bn
+ f\bfo\bor\br i\bi i\bin\bn $\b$v\bvi\bib\bba\bac\bck\bku\bup\bp;\b; d\bdo\bo
+ #\b# O\bOn\bnl\bly\by t\bte\bes\bst\bt f\bfi\bil\ble\bes\bs t\bth\bha\bat\bt a\bar\bre\be r\bre\bea\bad\bda\bab\bbl\ble\be.\b.
+ i\bif\bf t\bte\bes\bst\bt !\b! -\b-r\br $\b$i\bi;\b; t\bth\bhe\ben\bn
+ c\bco\bon\bnt\bti\bin\bnu\bue\be
+ f\bfi\bi
+
+ #\b# U\bUn\bnm\bmo\bod\bdi\bif\bfi\bie\bed\bd n\bnv\bvi\bi e\bed\bdi\bit\bto\bor\br b\bba\bac\bck\bku\bup\bp f\bfi\bil\ble\bes\bs e\bei\bit\bth\bhe\ber\br h\bha\bav\bve\be t\bth\bhe\be
+ #\b# e\bex\bxe\bec\bcu\but\bte\be b\bbi\bit\bt s\bse\bet\bt o\bor\br a\bar\bre\be z\bze\ber\bro\bo l\ble\ben\bng\bgt\bth\bh.\b. D\bDe\bel\ble\bet\bte\be t\bth\bhe\bem\bm.\b.
+ i\bif\bf t\bte\bes\bst\bt -\b-x\bx $\b$i\bi -\b-o\bo !\b! -\b-s\bs $\b$i\bi;\b; t\bth\bhe\ben\bn
+ r\brm\bm $\b$i\bi
+ f\bfi\bi
+ d\bdo\bon\bne\be
+ f\bfi\bi
+
+ #\b# I\bIt\bt i\bis\bs p\bpo\bos\bss\bsi\bib\bbl\ble\be t\bto\bo g\bge\bet\bt i\bin\bnc\bco\bom\bmp\bpl\ble\bet\bte\be r\bre\bec\bco\bov\bve\ber\bry\by f\bfi\bil\ble\bes\bs,\b, i\bif\bf t\bth\bhe\be e\bed\bdi\bit\bto\bor\br c\bcr\bra\bas\bsh\bhe\bes\bs
+ #\b# a\bat\bt t\bth\bhe\be r\bri\big\bgh\bht\bt t\bti\bim\bme\be.\b.
+ v\bvi\bir\bre\bec\bco\bov\bve\ber\bry\by=\b=`\b`e\bec\bch\bho\bo $\b$R\bRE\bEC\bCD\bDI\bIR\bR/\b/r\bre\bec\bco\bov\bve\ber\br.\b.*\b*`\b`
+ i\bif\bf [\b[ "\b"$\b$v\bvi\bir\bre\bec\bco\bov\bve\ber\bry\by"\b" !\b!=\b= "\b"$\b$R\bRE\bEC\bCD\bDI\bIR\bR/\b/r\bre\bec\bco\bov\bve\ber\br.\b.*\b*"\b" ]\b];\b; t\bth\bhe\ben\bn
+ f\bfo\bor\br i\bi i\bin\bn $\b$v\bvi\bir\bre\bec\bco\bov\bve\ber\bry\by;\b; d\bdo\bo
+ #\b# O\bOn\bnl\bly\by t\bte\bes\bst\bt f\bfi\bil\ble\bes\bs t\bth\bha\bat\bt a\bar\bre\be r\bre\bea\bad\bda\bab\bbl\ble\be.\b.
+ i\bif\bf t\bte\bes\bst\bt !\b! -\b-r\br $\b$i\bi;\b; t\bth\bhe\ben\bn
+ c\bco\bon\bnt\bti\bin\bnu\bue\be
+ f\bfi\bi
+
+ #\b# D\bDe\bel\ble\bet\bte\be a\ban\bny\by r\bre\bec\bco\bov\bve\ber\bry\by f\bfi\bil\ble\bes\bs t\bth\bha\bat\bt a\bar\bre\be z\bze\ber\bro\bo l\ble\ben\bng\bgt\bth\bh,\b, c\bco\bor\brr\bru\bup\bpt\bte\bed\bd,\b,
+ #\b# o\bor\br t\bth\bha\bat\bt h\bha\bav\bve\be n\bno\bo c\bco\bor\brr\bre\bes\bsp\bpo\bon\bnd\bdi\bin\bng\bg b\bba\bac\bck\bku\bup\bp f\bfi\bil\ble\be.\b. E\bEl\bls\bse\be s\bse\ben\bnd\bd m\bma\bai\bil\bl
+ #\b# t\bto\bo t\bth\bhe\be u\bus\bse\ber\br.\b.
+ r\bre\bec\bcf\bfi\bil\ble\be=\b=`\b`a\baw\bwk\bk '\b'/\b/^\b^X\bX-\b-v\bvi\bi-\b-r\bre\bec\bco\bov\bve\ber\br-\b-p\bpa\bat\bth\bh:\b:/\b/{\b{p\bpr\bri\bin\bnt\bt $\b$2\b2}\b}'\b' <\b< $\b$i\bi`\b`
+ i\bif\bf t\bte\bes\bst\bt -\b-n\bn "\b"$\b$r\bre\bec\bcf\bfi\bil\ble\be"\b" -\b-a\ba -\b-s\bs "\b"$\b$r\bre\bec\bcf\bfi\bil\ble\be"\b";\b; t\bth\bhe\ben\bn
+ $\b$S\bSE\bEN\bND\bDM\bMA\bAI\bIL\bL -\b-t\bt <\b< $\b$i\bi
+ e\bel\bls\bse\be
+ r\brm\bm $\b$i\bi
+ f\bfi\bi
+ d\bdo\bon\bne\be
+ f\bfi\bi
+
+
+
+ If you are not using the default value for the r\bre\bec\bcd\bdi\bir\br
+option, be sure to substitute the value you're using for the
+R\bRE\bEC\bCD\bDI\bIR\bR value in the recovery script.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ If the path of your system's s\bse\ben\bnd\bdm\bma\bai\bil\bl program (or what-
+ever mailer you're using) is not /\b/u\bus\bsr\br/\b/l\bli\bib\bb/\b/s\bse\ben\bnd\bdm\bma\bai\bil\bl, be sure
+to substitute the correct pathname for the S\bSE\bEN\bND\bDM\bMA\bAI\bIL\bL value in
+the recovery script. Consult the manual page for details on
+recovering preserved or aborted editing sessions.
+
+4\b4.\b. S\bSi\biz\bzi\bin\bng\bg t\bth\bhe\be S\bSc\bcr\bre\bee\ben\bn
+
+ The size of the screen can be set in a number of ways.
+E\bEx\bx/v\bvi\bi takes the following steps until values are obtained
+for both the number of rows and number of columns in the
+screen.
+
+ (1) If the environmental variable L\bLI\bIN\bNE\bES\bS exists, it is
+ used to specify the number of rows in the screen.
+
+ (2) If the environmental variable C\bCO\bOL\bLU\bUM\bMN\bNS\bS exists, it is
+ used to specify the number of columns in the screen.
+
+ (3) The TIOCGWINSZ _\bi_\bo_\bc_\bt_\bl(2) is attempted on the standard
+ error file descriptor.
+
+ (4) The termcap entry (or terminfo entry on System V
+ machines) is checked for the "li" entry (rows) and
+ the "co" entry (columns).
+
+ (5) The number of rows is set to 24, and the number of
+ columns is set to 80.
+
+ If a window change size signal (SIGWINCH) is received,
+the new window size is retrieved using the TIOCGWINSZ
+_\bi_\bo_\bc_\bt_\bl(2) call, and all other information is ignored.
+
+5\b5.\b. C\bCh\bha\bar\bra\bac\bct\bte\ber\br D\bDi\bis\bsp\bpl\bla\bay\by
+
+ In both e\bex\bx and v\bvi\bi printable characters as defined by
+_\bi_\bs_\bp_\br_\bi_\bn_\bt(3) are displayed using the local character set.
+
+ Non-printable characters, for which _\bi_\bs_\bc_\bn_\bt_\br_\bl(3) returns
+true, and which are less than octal \076, are displayed as
+the string "^\b^<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>", where <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> is the charac-
+ter that is the original character's value offset from the
+"@\b@" character. For example, the octal character \001 is
+displayed as "^\b^A\bA". If _\bi_\bs_\bc_\bn_\bt_\br_\bl(3) returns true for the octal
+character \177, it is displayed as the string "^\b^?\b?". All
+other characters are displayed as either hexadecimal values,
+in the form "0\b0x\bx<\b<h\bhi\big\bgh\bh-\b-h\bha\bal\blf\bfb\bby\byt\bte\be>\b> .\b..\b..\b. 0\b0x\bx<\b<l\blo\bow\bw-\b-h\bha\bal\blf\bfb\bby\byt\bte\be>\b>", or as
+octal values, in the form "\\b\<\b<h\bhi\big\bgh\bh-\b-o\bon\bne\be-\b-o\bor\br-\b-t\btw\bwo\bo-\b-b\bbi\bit\bts\bs>\b> .\b..\b..\b.
+\\b\<\b<l\blo\bow\bw-\b-t\bth\bhr\bre\bee\be-\b-b\bbi\bit\bts\bs>\b>". The display of unknown characters is
+based on the value of the o\boc\bct\bta\bal\bl option.
+
+ In v\bvi\bi command mode, the cursor is always positioned on
+the last column of characters which take up more than one
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-9\b9
+
+
+column on the screen. In v\bvi\bi text input mode, the cursor is
+positioned on the first column of characters which take up
+more than one column on the screen.
+
+6\b6.\b. M\bMu\bul\blt\bti\bip\bpl\ble\be S\bSc\bcr\bre\bee\ben\bns\bs
+
+ N\bNv\bvi\bi supports multiple screens by dividing the window
+into regions. It also supports stacks of screens by permit-
+ting the user to change the set of screens that are cur-
+rently displayed.
+
+ The command s\bsp\bpl\bli\bit\bt divides the current screen into two
+regions of approximately equal size. If a list of files are
+specified as arguments to the s\bsp\bpl\bli\bit\bt command, the list of
+files to be edited is initialized as if the n\bne\bex\bxt\bt command had
+been used. If no files are specified, the new screen will
+begin by editing the same file as the previous screen.
+
+ When more than one screen is editing a file, changes in
+any screen are reflected in all other screens editing the
+same file. Exiting a screen without saving any changes (or
+explicitly discarding them) is permitted until the last
+screen editing the file is exited, at which time the changes
+must be saved or discarded.
+
+ The r\bre\bes\bsi\biz\bze\be command permits resizing of individual
+screens. Screens may be grown, shrunk or set to an absolute
+number of rows.
+
+ The ^\b^W\bW command is used to switch between screens. Each
+^\b^W\bW moves to the next lower screen in the window, or to the
+first screen in the window if there are no lower screens.
+
+ The b\bbg\bg command "backgrounds" the current screen. The
+screen disappears from the window, and the rows it occupied
+are taken over by a neighboring screen. It is an error to
+attempt to background the only screen in the window.
+
+ The d\bdi\bis\bsp\bpl\bla\bay\by s\bsc\bcr\bre\bee\ben\bns\bs command displays the names of the
+files associated with the current backgrounded screens in
+the window.
+
+ The f\bfg\bg [\b[f\bfi\bil\ble\be]\b] command "foregrounds" the first screen in
+the list of backgrounded screens that is associated with its
+argument. If no file argument is specified, the first
+screen on the list is foregrounded. Foregrounding consists
+of backgrounding the current screen, and replacing its space
+in the window with the foregrounded screen.
+
+ If the last screen in the window is exited, and there
+are backgrounded screens, the first screen on the list of
+backgrounded screens takes over the window.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b10\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+7\b7.\b. R\bRe\beg\bgu\bul\bla\bar\br E\bEx\bxp\bpr\bre\bes\bss\bsi\bio\bon\bns\bs a\ban\bnd\bd R\bRe\bep\bpl\bla\bac\bce\bem\bme\ben\bnt\bt S\bSt\btr\bri\bin\bng\bgs\bs
+
+ Regular expressions are used in line addresses, as the
+first part of the e\bex\bx s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be, g\bgl\blo\bob\bba\bal\bl, and v\bv commands, and
+in search patterns.
+
+ The regular expressions supported by e\bex\bx/v\bvi\bi are, by
+default, the Basic Regular Expressions (BRE's) described in
+the IEEE POSIX Standard 1003.2. The e\bex\bxt\bte\ben\bnd\bde\bed\bd option causes
+all regular expressions to be interpreted as the Extended
+Regular Expressions (ERE's) described by the same standard.
+(See _\br_\be_\b__\bf_\bo_\br_\bm_\ba_\bt(7) for more information.) Generally speak-
+ing, BRE's are the Regular Expressions found in _\be_\bd(1) and
+_\bg_\br_\be_\bp(1), and ERE's are the Regular Expressions found in
+_\be_\bg_\br_\be_\bp(1).
+
+ The following is not intended to provide a description
+of Regular Expressions. The information here only describes
+strings and characters which have special meanings in the
+e\bex\bx/v\bvi\bi version of RE's, or options which change the meanings
+of characters that normally have special meanings in RE's.
+
+ (1) An empty RE (e.g. "/\b//\b/" or "?\b??\b?" is equivalent to the
+ last RE used.
+
+ (2) The construct "\\b\<\b<" matches the beginning of a word.
+
+ (3) The construct "\\b\>\b>" matches the end of a word.
+
+ (4) The character "~\b~" matches the replacement part of the
+ last s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command.
+
+ When the m\bma\bag\bgi\bic\bc option is _\bn_\bo_\bt set, the only characters
+with special meanings are a "^\b^" character at the beginning
+of an RE, a "$\b$" character at the end of an RE, and the
+escaping character "\\b\". The characters ".\b.", "*\b*", "[\b[" and
+"~\b~" are treated as ordinary characters unless preceded by a
+"\\b\"; when preceded by a "\\b\" they regain their special mean-
+ing.
+
+ Replacement strings are the second part of a s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be
+command.
+
+ The character "&\b&" (or "\\b\&\b&" if the m\bma\bag\bgi\bic\bc option is _\bn_\bo_\bt
+set) in the replacement string stands for the text matched
+by the RE that is being replaced. The character "~\b~" (or
+"\\b\~\b~" if the m\bma\bag\bgi\bic\bc option is _\bn_\bo_\bt set) stands for the replace-
+ment part of the previous s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command. It is only
+valid after a s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command has been performed.
+
+ The string "\\b\#\b#", where "#\b#" is an integer value from 1
+to 9, stands for the text matched by the portion of the RE
+enclosed in the "#\b#"'th set of escaped parentheses, e.g.
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b11\b1
+
+
+"\\b\(\b(" and "\\b\)\b)". For example, "s\bs/\b/a\bab\bbc\bc\\b\(\b(.\b.*\b*\\b\)\b)d\bde\bef\bf/\b/\\b\1\b1/\b/" deletes
+the strings "a\bab\bbc\bc" and "d\bde\bef\bf" from the matched pattern.
+
+ The strings "\\b\l\bl", "\\b\u\bu", "\\b\L\bL" and "\\b\U\bU" can be used to
+modify the case of elements in the replacement string. The
+string "\\b\l\bl" causes the next character to be converted to
+lowercase; the string "\\b\u\bu" behaves similarly, but converts
+to uppercase (e.g. s\bs/\b/a\bab\bbc\bc/\b/\\b\U\bU&\b&/\b/ replaces the string a\bab\bbc\bc with
+A\bAB\bBC\bC). The strings "\\b\L\bL" causes characters up to the end of
+the string or the next occurrence of the strings "\\b\e\be" or
+"\\b\E\bE" to be converted to lowercase; the string "\\b\U\bU" behaves
+similarly, but converts to uppercase.
+
+ If the entire replacement pattern is "%\b%", then the last
+replacement pattern is used again.
+
+ In v\bvi\bi, inserting a <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b> into the replacement
+string will cause the matched line to be split into two
+lines at that point. (The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b> will be discarded.)
+
+8\b8.\b. G\bGe\ben\bne\ber\bra\bal\bl E\bEd\bdi\bit\bto\bor\br D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn
+
+ When e\bex\bx or v\bvi\bi are executed, the text of a file is read
+(or a temporary file is created), and then all editing
+changes happen within the context of the copy of the file.
+_\bN_\bo _\bc_\bh_\ba_\bn_\bg_\be_\bs _\ba_\bf_\bf_\be_\bc_\bt _\bt_\bh_\be _\ba_\bc_\bt_\bu_\ba_\bl _\bf_\bi_\bl_\be _\bu_\bn_\bt_\bi_\bl _\bt_\bh_\be _\bf_\bi_\bl_\be _\bi_\bs _\bw_\br_\bi_\bt_\bt_\be_\bn
+_\bo_\bu_\bt, either using a write command or another command which
+is affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be option.
+
+ All files are locked (using the _\bf_\bl_\bo_\bc_\bk(2) or _\bf_\bc_\bn_\bt_\bl(2)
+interfaces) during the edit session, to avoid inadvertently
+making modifications to multiple copies of the file. If a
+lock cannot be obtained for a file because it is locked by
+another process, the edit session is read-only (as if the
+r\bre\bea\bad\bdo\bon\bnl\bly\by option or the -\b-R\bR flag had been specified). If a
+lock cannot be obtained for other reasons, the edit session
+will continue, but the file status information (see the
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-G\bG>\b> command) will reflect this fact.
+
+ Both e\bex\bx and v\bvi\bi are modeful editors, i.e. they have two
+modes, "command" mode and "text input" mode. The former is
+intended to permit you to enter commands which modifies
+already existing text. The latter is intended to permit you
+to enter new text. When e\bex\bx first starts running, it is in
+command mode, and usually displays a prompt (see the p\bpr\bro\bom\bmp\bpt\bt
+option for more information). The prompt is a single colon
+(":\b:") character. There are three commands that switch e\bex\bx
+into text input mode: a\bap\bpp\bpe\ben\bnd\bd, c\bch\bha\ban\bng\bge\be and i\bin\bns\bse\ber\brt\bt. Once in
+input mode, entering a line containing only a single period
+(".\b.") ends text input mode and returns to command mode,
+where the prompt is redisplayed.
+
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b12\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ When v\bvi\bi first starts running, it is in command mode as
+well. There are eleven commands that switch v\bvi\bi into text
+input mode: A\bA, a\ba, C\bC, c\bc, I\bI, i\bi, O\bO, o\bo, R\bR, S\bS and s\bs. Once in
+input mode, entering an <\b<e\bes\bsc\bca\bap\bpe\be>\b> character ends text input
+mode and returns to command mode.
+
+ E\bEx\bx/v\bvi\bi present three different interfaces to editing a
+file. E\bEx\bx presents a line oriented interface. V\bVi\bi presents a
+full screen display oriented interface, also known as
+"visual mode". In addition, there is a third mode, "open
+mode", which is line oriented, but supports cursor movement
+and editing within the displayed line, similarly to visual
+mode. Open mode is not yet implemented in n\bnv\bvi\bi.
+
+ The following words have special meanings in both the
+e\bex\bx and v\bvi\bi command descriptions:
+
+<\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b>
+ The interrupt character is used to interrupt the cur-
+ rent operation. Normally <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-C\bC>\b>, whatever charac-
+ ter is set for the current terminal is used.
+
+<\b<l\bli\bit\bte\ber\bra\bal\bl-\b-n\bne\bex\bxt\bt>\b>
+ The literal next character is used to escape the subse-
+ quent character from any special meaning. This charac-
+ ter is always <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-V\bV>\b>. If the terminal is not set
+ up to do XON/XOFF flow control, then <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-Q\bQ>\b> is
+ used to mean literal next as well.
+
+c\bcu\bur\brr\bre\ben\bnt\bt p\bpa\bat\bth\bhn\bna\bam\bme\be
+ The pathname of the file currently being edited by vi.
+ When the percent character ("%\b%") appears in a file name
+ entered as part of an e\bex\bx command argument, it is
+ replaced by the current pathname. (The "%\b%" character
+ can be escaped by preceding it with a backslash.)
+
+a\bal\blt\bte\ber\brn\bna\bat\bte\be p\bpa\bat\bth\bhn\bna\bam\bme\be
+ The name of the last file name mentioned in an e\bex\bx com-
+ mand, or, the previous current pathname if the last
+ file mentioned becomes the current file. When the hash
+ mark character ("#\b#") appears in a file name entered as
+ part of an e\bex\bx command argument, it is replaced by the
+ alternate pathname. (The "#\b#" character can be escaped
+ by preceding it with a backslash.)
+
+b\bbu\buf\bff\bfe\ber\br
+ One of a number of named areas for saving copies of
+ text. Commands that change or delete text can save the
+ changed or deleted text into a specific buffer, for
+ later use, if the command allows it (i.e. the e\bex\bx c\bch\bha\ban\bng\bge\be
+ command cannot save the changed text in a named
+ buffer). Buffers are named with a single character,
+ preceded by a double quote, e.g. "\b"<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> in v\bvi\bi
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b13\b3
+
+
+ and without the double quote, e.g. <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>, in e\bex\bx.
+ (The double quote isn't necessary for e\bex\bx because
+ buffers names are denoted by their position in the com-
+ mand line.) Historic implementations of e\bex\bx/v\bvi\bi limited
+ <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> to the alphanumeric characters; n\bne\bex\bx/n\bnv\bvi\bi
+ permits the use of any character without another mean-
+ ing in the position where a buffer name is expected.
+
+ Buffers named by uppercase characters are the same as
+ buffers named by lowercase characters, e.g. the buffer
+ named by the English character "A\bA" is the same as the
+ buffer named by the character "a\ba", with the exception
+ that, if the buffer contents are being changed (as with
+ a text deletion or v\bvi\bi c\bch\bha\ban\bng\bge\be command), the text is
+ _\ba_\bp_\bp_\be_\bn_\bd_\be_\bd to the buffer, instead of replacing the cur-
+ rent contents.
+
+ The buffers named by the numeric characters (in
+ English, "1\b1" through "9\b9"), are special. If a region of
+ text including characters from more than one line, or a
+ single line of text specified by using a line-oriented
+ motion, is changed or deleted in the file using the v\bvi\bi
+ c\bch\bha\ban\bng\bge\be or d\bde\bel\ble\bet\bte\be commands, a copy of the text is placed
+ into the numeric buffer "1\b1", regardless of the user
+ specifying another buffer in which to save it. In
+ addition, there are a few commands which, when used as
+ a m\bmo\bot\bti\bio\bon\bn with the v\bvi\bi c\bch\bha\ban\bng\bge\be and d\bde\bel\ble\bet\bte\be commands, _\ba_\bl_\bw_\ba_\by_\bs
+ copy the specified region of text into the numeric
+ buffers regardless of the region including characters
+ from more than one line. These commands are:
+
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-A\bA>\b> %\b% (\b( )\b)
+ `\b`<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> /\b/ ?\b? N\bN
+ n\bn {\b{ }\b}
+
+
+ Before this copy is done, the previous contents of
+ buffer "1\b1" are moved into buffer "2\b2", "2\b2" into buffer
+ "3\b3", and so on. The contents of buffer "9\b9" are dis-
+ carded. In v\bvi\bi, text may be explicitly stored into the
+ numeric buffers. In this case, the buffer rotation
+ described above occurs before the replacement of the
+ buffer's contents. The numeric buffers are only avail-
+ able in v\bvi\bis\bsu\bua\bal\bl and o\bop\bpe\ben\bn modes, and are not accessible
+ by e\bex\bx in any way, although changed and deleted text is
+ still stored there while in e\bex\bx mode.
+
+ When a v\bvi\bi command synopsis shows both a [\b[b\bbu\buf\bff\bfe\ber\br]\b] and a
+ [\b[c\bco\bou\bun\bnt\bt]\b], they may be presented in any order.
+
+ Finally, all buffers are either "line" or "character"
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b14\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ oriented. All e\bex\bx commands which store text into
+ buffers are line oriented. Some v\bvi\bi commands which
+ store text into buffers are line oriented, and some are
+ character oriented; the description for each applicable
+ v\bvi\bi command notes whether text copied into buffers using
+ the command is line or character oriented. In addi-
+ tion, the v\bvi\bi command d\bdi\bis\bsp\bpl\bla\bay\by b\bbu\buf\bff\bfe\ber\brs\bs displays the cur-
+ rent orientation for each buffer. Generally, the only
+ importance attached to this orientation is that if the
+ buffer is subsequently inserted into the text, line
+ oriented buffers create new lines for each of the lines
+ they contain, and character oriented buffers create new
+ lines for any lines _\bo_\bt_\bh_\be_\br than the first and last lines
+ they contain. The first and last lines are inserted
+ into the text at the current cursor position, becoming
+ part of the current line. If there is more than one
+ line in the buffer, however, the current line itself
+ will be split.
+
+u\bun\bnn\bna\bam\bme\bed\bd b\bbu\buf\bff\bfe\ber\br
+ The unnamed buffer is a text storage area which is used
+ by commands that use or operate on a buffer when no
+ buffer is specified by the user. If the command stores
+ text into a buffer, the text is stored into the unnamed
+ buffer even if a buffer is also specified by the user,
+ It is not possible to append text to the unnamed
+ buffer. If text is appended to a named buffer, the
+ named buffer contains both the old and new text, while
+ the unnamed buffer contains only the new text. There
+ is no way to explicitly reference the unnamed buffer.
+
+ Historically, the contents of the unnamed buffer were
+ discarded by many different commands, even ones that
+ didn't store text into it. N\bNe\bex\bx/n\bnv\bvi\bi never discards the
+ contents of the unnamed buffer until new text replaces
+ them.
+
+w\bwh\bhi\bit\bte\bes\bsp\bpa\bac\bce\be
+ The characters <tab> and <space>.
+
+<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>
+ The character represented by an ASCII <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b>.
+ This character is almost always treated identically to
+ a <\b<n\bne\bew\bwl\bli\bin\bne\be>\b> character, but differs in that it can be
+ escaped into the file text or into a command.
+
+<\b<n\bne\bew\bwl\bli\bin\bne\be>\b>
+ The character represented by an ASCII <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-J\bJ>\b>.
+ This character is almost always treated identically to
+ a <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b> character, but differs in that it cannot
+ be escaped into the file text or into a command.
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b15\b5
+
+
+9\b9.\b. V\bVi\bi D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn
+
+ V\bVi\bi takes up the entire screen to display the edited
+file, except for the bottom line of the screen. The bottom
+line of the screen is used to enter e\bex\bx commands, and for v\bvi\bi
+error and informational messages. If no other information
+is being displayed, the default display can show the current
+cursor row and cursor column, an indication of whether the
+file has been modified, and the current mode of the editor.
+See the r\bru\bul\ble\ber\br and s\bsh\bho\bow\bwm\bmo\bod\bde\be options for more information.
+
+ Empty lines do not have any special representation on
+the screen, but lines on the screen that would logically
+come after the end of the file are displayed as a single
+tilde ("~\b~") character. To differentiate between empty lines
+and lines consisting of only whitespace characters, use the
+l\bli\bis\bst\bt option. Historically, implementations of v\bvi\bi have also
+displayed some lines as single asterisk ("@\b@") characters.
+These were lines that were not correctly displayed, i.e.
+lines on the screen that did not correspond to lines in the
+file, or lines that did not fit on the current screen. N\bNv\bvi\bi
+never displays lines in this fashion.
+
+ V\bVi\bi is a modeful editor, i.e. it has two modes, "com-
+mand" mode and "text input" mode. When v\bvi\bi first starts, it
+is in command mode. There are several commands that change
+v\bvi\bi into text input mode. The <\b<e\bes\bsc\bca\bap\bpe\be>\b> character is used to
+resolve the text input into the file, and exit back into
+command mode. In v\bvi\bi command mode, the cursor is always
+positioned on the last column of characters which take up
+more than one column on the screen. In v\bvi\bi text insert mode,
+the cursor is positioned on the first column of characters
+which take up more than one column on the screen.
+
+ When positioning the cursor to a new line and column,
+the type of movement is defined by the distance to the new
+cursor position. If the new position is close, the screen
+is scrolled to the new location. If the new position is far
+away, the screen is repainted so that the new position is on
+the screen. If the screen is scrolled, it is moved a mini-
+mal amount, and the cursor line will usually appear at the
+top or bottom of the screen. If the screen is repainted,
+the cursor line will appear in the center of the screen,
+unless the cursor is sufficiently close to the beginning or
+end of the file that this isn't possible. If the l\ble\bef\bft\btr\bri\big\bgh\bht\bt
+option is set, the screen may be scrolled or repainted in a
+horizontal direction as well as in a vertical one.
+
+ A major difference between the historical v\bvi\bi presenta-
+tion and n\bnv\bvi\bi is in the scrolling and screen oriented posi-
+tion commands, <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-B\bB>\b>, <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>, <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-E\bE>\b>, <\b<c\bco\bon\bn-\b-
+t\btr\bro\bol\bl-\b-F\bF>\b>, <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b>, <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-Y\bY>\b>, H\bH, L\bL and M\bM. In histori-
+cal implementations of v\bvi\bi, these commands acted on physical
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b16\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+(as opposed to logical, or screen) lines. For lines that
+were sufficiently long in relation to the size of the
+screen, this meant that single line scroll commands might
+repaint the entire screen, scrolling or screen positioning
+commands might not change the screen or move the cursor at
+all, and some lines simply could not be displayed, even
+though v\bvi\bi would edit the file that contained them. In n\bnv\bvi\bi,
+these commands act on logical, i.e. screen lines. You are
+unlikely to notice any difference unless you are editing
+files with lines significantly longer than a screen width.
+
+ V\bVi\bi keeps track of the currently "most attractive" cur-
+sor position. Each command description (for commands that
+alter the current cursor position), specifies if the cursor
+is set to a specific location in the line, or if it is moved
+to the "most attractive cursor position". The latter means
+that the cursor is moved to the cursor position that is hor-
+izontally as close as possible to the current cursor posi-
+tion. If the current line is shorter than the cursor posi-
+tion v\bvi\bi would select, the cursor is positioned on the last
+character in the line. (If the line is empty, the cursor is
+positioned on the first column of the line.) If a command
+moves the cursor to the most attractive position, it does
+not alter the current cursor position, and a subsequent
+movement will again attempt to move the cursor to that posi-
+tion. Therefore, although a movement to a line shorter than
+the currently most attractive position will cause the cursor
+to move to the end of that line, a subsequent movement to a
+longer line will cause the cursor to move back to the most
+attractive position.
+
+ In addition, the $\b$ command makes the end of each line
+the most attractive cursor position rather than a specific
+column.
+
+ Each v\bvi\bi command described below notes where the cursor
+ends up after it is executed. This position is described in
+terms of characters on the line, i.e. "the previous charac-
+ter", or, "the last character in the line". This is to
+avoid needing to continually refer to on what part of the
+character the cursor rests.
+
+ The following words have special meaning for v\bvi\bi com-
+mands.
+
+p\bpr\bre\bev\bvi\bio\bou\bus\bs c\bco\bon\bnt\bte\bex\bxt\bt
+ The position of the cursor before the command which
+ caused the last absolute movement was executed. Each
+ v\bvi\bi command described in the next section that is con-
+ sidered an absolute movement is so noted. In addition,
+ specifying _\ba_\bn_\by address to an e\bex\bx command is considered
+ an absolute movement.
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b17\b7
+
+
+m\bmo\bot\bti\bio\bon\bn
+ A second v\bvi\bi command can be used as an optional trailing
+ argument to the v\bvi\bi <\b<, >\b>, !\b!, c\bc, d\bd, y\by, and (depending on
+ the t\bti\bil\bld\bde\beo\bop\bp option) ~\b~ commands. This command indicates
+ the end of the region of text that's affected by the
+ command. The motion command may be either the command
+ character repeated (in which case it means the current
+ line) or a cursor movement command. In the latter
+ case, the region affected by the command is from the
+ starting or stopping cursor position which comes first
+ in the file, to immediately before the starting or
+ stopping cursor position which comes later in the file.
+ Commands that operate on lines instead of using begin-
+ ning and ending cursor positions operate on all of the
+ lines that are wholly or partially in the region. In
+ addition, some other commands become line oriented
+ depending on where in the text they are used. The com-
+ mand descriptions below note these special cases.
+
+ The following commands may all be used as motion compo-
+ nents for v\bvi\bi commands:
+
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-A\bA>\b> <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-H\bH>\b> <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-J\bJ>\b> <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b>
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-N\bN>\b> <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-P\bP>\b> <\b<s\bsp\bpa\bac\bce\be>\b> $\b$
+ %\b% '\b'<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> (\b( )\b)
+ +\b+ ,\b, -\b- /\b/
+ 0\b0 ;\b; ?\b? B\bB
+ E\bE F\bF G\bG H\bH
+ L\bL M\bM N\bN T\bT
+ W\bW [\b[[\b[ ]\b]]\b] ^\b^
+ _\b_ `\b`<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> b\bb e\be
+ f\bf h\bh j\bj k\bk
+ l\bl n\bn t\bt w\bw
+ {\b{ |\b| }\b}
+
+
+ The optional count prefix available for some of the v\bvi\bi
+ commands that take motion commands, or the count prefix
+ available for the v\bvi\bi commands that are used as motion
+ components, may be included and is _\ba_\bl_\bw_\ba_\by_\bs considered
+ part of the motion argument. For example, the commands
+ "c\bc2\b2w\bw" and "2\b2c\bcw\bw" are equivalent, and the region affected
+ by the c\bc command is two words of text. In addition, if
+ the optional count prefix is specified for both the v\bvi\bi
+ command and its motion component, the effect is multi-
+ plicative and is considered part of the motion argu-
+ ment. For example, the commands "4\b4c\bcw\bw" and "2\b2c\bc2\b2w\bw" are
+ equivalent, and the region affected by the c\bc command is
+ four words of text.
+
+
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b18\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+c\bco\bou\bun\bnt\bt
+ A positive number used as an optional argument to most
+ commands, either to give a size or a position (for dis-
+ play or movement commands), or as a repeat count (for
+ commands that modify text). The count argument is
+ always optional and defaults to 1 unless otherwise
+ noted in the command description.
+
+ When a v\bvi\bi command synopsis shows both a [\b[b\bbu\buf\bff\bfe\ber\br]\b] and
+ [\b[c\bco\bou\bun\bnt\bt]\b], they may be presented in any order.
+
+w\bwo\bor\brd\bd
+ Generally, in languages where it is applicable, v\bvi\bi rec-
+ ognizes two kinds of words. First, a sequence of let-
+ ters, digits and underscores, delimited at both ends
+ by: characters other than letters, digits, or under-
+ scores, the beginning or end of a line, and the begin-
+ ning or end of the file. Second, a sequence of charac-
+ ters other than letters, digits, underscores, or
+ whitespace characters, delimited at both ends by: a
+ letter, digit, underscore, or whitespace character, the
+ beginning or end of a line, and the beginning or end of
+ the file. For example, the characters " !\b!@\b@#\b#a\bab\bbc\bc$\b$%\b%^\b^ "
+ contain three words: "!\b!@\b@#\b#", "a\bab\bbc\bc" and "$\b$%\b%^\b^".
+
+ Groups of empty lines (or lines containing only whites-
+ pace characters) are treated as a single word.
+
+b\bbi\big\bgw\bwo\bor\brd\bd
+ A set of non-whitespace characters preceded and fol-
+ lowed by whitespace characters or the beginning or end
+ of the file or line. For example, the characters "
+ !\b!@\b@#\b#a\bab\bbc\bc$\b$%\b%^\b^ " contain one bigword: "!\b!@\b@#\b#a\bab\bbc\bc$\b$%\b%^\b^".
+
+ Groups of empty lines (or lines containing only whites-
+ pace characters) are treated as a single bigword.
+
+p\bpa\bar\bra\bag\bgr\bra\bap\bph\bh
+ An area of text that begins with either the beginning
+ of a file, an empty line, or a section boundary, and
+ continues until either an empty line, section boundary,
+ or the end of the file.
+
+ Groups of empty lines (or lines containing only whites-
+ pace characters) are treated as a single paragraph.
+
+ Additional paragraph boundaries can be defined using
+ the p\bpa\bar\bra\bag\bgr\bra\bap\bph\bhs\bs option.
+
+s\bse\bec\bct\bti\bio\bon\bn
+ An area of text that starts with the beginning of the
+ file or a line whose first character is an open brace
+ ("{\b{") and continues until the next section or the end
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-1\b19\b9
+
+
+ of the file.
+
+ Additional section boundaries can be defined using the
+ s\bse\bec\bct\bti\bio\bon\bns\bs option.
+
+s\bse\ben\bnt\bte\ben\bnc\bce\be
+ An area of text that begins with either the beginning
+ of the file or the first nonblank character following
+ the previous sentence, paragraph, or section boundary
+ and continues until the end of the file or a period
+ (".\b.") exclamation point ("!\b!") or question mark ("?\b?")
+ character, followed by either an end-of-line or two
+ whitespace characters. Any number of closing parenthe-
+ ses (")\b)"), brackets ("]\b]"), double-quote (""\b"") or single
+ quote ("'\b'") characters can appear between the period,
+ exclamation point, or question mark and the whitespace
+ characters or end-of-line.
+
+ Groups of empty lines (or lines containing only whites-
+ pace characters) are treated as a single sentence.
+
+1\b10\b0.\b. V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs
+
+ The following section describes the commands available
+in the command mode of the v\bvi\bi editor. In each entry below,
+the tag line is a usage synopsis for the command character.
+In addition, the final line and column the cursor rests
+upon, and any options which affect the command are noted.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-A\bA>\b>
+ Search forward c\bco\bou\bun\bnt\bt times for the current word. The
+ current word begins at the first non-whitespace charac-
+ ter on or after the current cursor position, and
+ extends up to the next non-word character or the end of
+ the line. The search is literal, i.e. no characters in
+ the word have any special meaning in terms of Regular
+ Expressions. It is an error if no matching pattern is
+ found between the starting position and the end of the
+ file.
+
+ The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-A\bA>\b> command is an absolute movement. The
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-A\bA>\b> command may be used as the motion component
+ of other v\bvi\bi commands, in which case any text copied
+ into a buffer is character oriented.
+
+ Line: Set to the line where the word is found.
+ Column: Set to the first character of the word.
+ Options: Affected by the i\big\bgn\bno\bor\bre\bec\bca\bas\bse\be and w\bwr\bra\bap\bps\bsc\bca\ban\bn
+ options.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-B\bB>\b>
+ Page backward c\bco\bou\bun\bnt\bt screens. Two lines of overlap are
+ maintained, if possible, by displaying the window
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b20\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ starting at line (\b(t\bto\bop\bp_\b_l\bli\bin\bne\be -\b- c\bco\bou\bun\bnt\bt *\b* w\bwi\bin\bnd\bdo\bow\bw_\b_s\bsi\biz\bze\be)\b) +\b+ 2\b2,
+ where w\bwi\bin\bnd\bdo\bow\bw_\b_s\bsi\biz\bze\be is the value of the w\bwi\bin\bnd\bdo\bow\bw option.
+ (In the case of split screens, this size is corrected
+ to the current screen size.) It is an error if the
+ movement is past the beginning of the file.
+
+ Line: Set to the last line of text displayed on the
+ screen.
+ Column: Set to the first nonblank character of the
+ line.
+ Options: Affected by the w\bwi\bin\bnd\bdo\bow\bw option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>
+ Scroll forward c\bco\bou\bun\bnt\bt lines. If c\bco\bou\bun\bnt\bt is not specified,
+ scroll forward the number of lines specified by the
+ last <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> or <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b> command. If this is
+ the first <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> or <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b> command, scroll
+ forward half the number of lines in the screen. (In
+ the case of split screens, the default scrolling dis-
+ tance is corrected to half the current screen size.)
+ It is an error if the movement is past the end of the
+ file.
+
+ Line: Set to the current line plus the number of
+ lines scrolled.
+ Column: Set to the first nonblank character of the
+ line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-E\bE>\b>
+ Scroll forward c\bco\bou\bun\bnt\bt lines, leaving the cursor on the
+ current line and column, if possible. It is an error
+ if the movement is past the end of the file.
+
+ Line: Unchanged unless the current line scrolls off
+ the screen, in which case it is set to the
+ first line on the screen.
+ Column: Unchanged unless the current line scrolls off
+ the screen, in which case it is set to the
+ most attractive cursor position.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-F\bF>\b>
+ Page forward c\bco\bou\bun\bnt\bt screens. Two lines of overlap are
+ maintained, if possible, by displaying the window
+ starting at line t\bto\bop\bp_\b_l\bli\bin\bne\be +\b+ c\bco\bou\bun\bnt\bt *\b* w\bwi\bin\bnd\bdo\bow\bw_\b_s\bsi\biz\bze\be -\b- 2\b2,
+ where w\bwi\bin\bnd\bdo\bow\bw_\b_s\bsi\biz\bze\be is the value of the w\bwi\bin\bnd\bdo\bow\bw option.
+ (In the case of split screens, this size is corrected
+ to the current screen size.) It is an error if the
+ movement is past the end of the file.
+
+ Line: Set to the first line on the screen.
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b21\b1
+
+
+ Column: Set to the first nonblank character of the
+ current line.
+ Options: Affected by the w\bwi\bin\bnd\bdo\bow\bw option.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-G\bG>\b>
+ Display the file information. The information includes
+ the current pathname, the current line, the number of
+ total lines in the file, the current line as a percent-
+ age of the total lines in the file, if the file has
+ been modified, was able to be locked, if the file's
+ name has been changed, and if the edit session is read-
+ only.
+
+ Line: Unchanged.
+ Column: Unchanged.
+ Options: None.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-H\bH>\b>
+[\b[c\bco\bou\bun\bnt\bt]\b] h\bh
+ Move the cursor back c\bco\bou\bun\bnt\bt characters in the current
+ line. It is an error if the cursor is on the first
+ character in the line.
+
+ The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-H\bH>\b> and h\bh commands may be used as the
+ motion component of other v\bvi\bi commands, in which case
+ any text copied into a buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the c\bcu\bur\brr\bre\ben\bnt\bt -\b- c\bco\bou\bun\bnt\bt character, or, the
+ first character in the line if c\bco\bou\bun\bnt\bt is
+ greater than or equal to the number of charac-
+ ters in the line before the cursor.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-J\bJ>\b>
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-N\bN>\b>
+[\b[c\bco\bou\bun\bnt\bt]\b] j\bj
+ Move the cursor down c\bco\bou\bun\bnt\bt lines without changing the
+ current column. It is an error if the movement is past
+ the end of the file.
+
+ The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-J\bJ>\b>, <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-N\bN>\b> and j\bj commands may be used
+ as the motion component of other v\bvi\bi commands, in which
+ case any text copied into a buffer is line oriented.
+
+ Line: Set to the current line plus c\bco\bou\bun\bnt\bt.
+ Column: The most attractive cursor position.
+ Options: None.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-L\bL>\b>
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-R\bR>\b>
+ Repaint the screen.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b22\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ Line: Unchanged.
+ Column: Unchanged.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b>
+[\b[c\bco\bou\bun\bnt\bt]\b] +\b+
+ Move the cursor down c\bco\bou\bun\bnt\bt lines to the first nonblank
+ character of that line. It is an error if the movement
+ is past the end of the file.
+
+ The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-M\bM>\b> and +\b+ commands may be used as the
+ motion component of other v\bvi\bi commands, in which case
+ any text copied into a buffer is line oriented.
+
+ Line: Set to the current line plus c\bco\bou\bun\bnt\bt.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-P\bP>\b>
+[\b[c\bco\bou\bun\bnt\bt]\b] k\bk
+ Move the cursor up c\bco\bou\bun\bnt\bt lines, without changing the
+ current column. It is an error if the movement is past
+ the beginning of the file.
+
+ The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-P\bP>\b> and k\bk commands may be used as the
+ motion component of other v\bvi\bi commands, in which case
+ any text copied into a buffer is line oriented.
+
+ Line: Set to the current line minus c\bco\bou\bun\bnt\bt.
+ Column: The most attractive cursor position.
+ Options: None.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-T\bT>\b>
+ Return to the most recent tag context. The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-T\bT>\b>
+ command is an absolute movement.
+
+ Line: Set to the context of the previous tag com-
+ mand.
+ Column: Set to the context of the previous tag com-
+ mand.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b>
+ Scroll backward c\bco\bou\bun\bnt\bt lines. If c\bco\bou\bun\bnt\bt is not speci-
+ fied, scroll backward the number of lines specified by
+ the last <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> or <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b> command. If this
+ is the first <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> or <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b> command, scroll
+ backward half the number of lines in the screen. (In
+ the case of split screens, the default scrolling dis-
+ tance is corrected to half the current screen size.)
+ It is an error if the movement is past the beginning of
+ the file.
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b23\b3
+
+
+ Line: Set to the current line minus the amount
+ scrolled.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: None.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-W\bW>\b>
+ Switch to the next lower screen in the window, or, to
+ the first screen if there are no lower screens in the
+ window.
+
+ Line: Set to the previous cursor position in the
+ window.
+ Column: Set to the previous cursor position in the
+ window.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-Y\bY>\b>
+ Scroll backward c\bco\bou\bun\bnt\bt lines, leaving the current line
+ and column as is, if possible. It is an error if the
+ movement is past the beginning of the file.
+
+ Line: Unchanged unless the current line scrolls off
+ the screen, in which case it is set to the
+ last line of text displayed on the screen.
+ Column: Unchanged unless the current line scrolls off
+ the screen, in which case it is the most
+ attractive cursor position.
+ Options: None.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-Z\bZ>\b>
+ Suspend the current editor session. If the file has
+ been modified since it was last completely written, and
+ the a\bau\but\bto\bow\bwr\bri\bit\bte\be option is set, the file is written before
+ the editor session is suspended. If this write fails,
+ the editor session is not suspended.
+
+ Line: Unchanged.
+ Column: Unchanged.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be option.
+
+<\b<e\bes\bsc\bca\bap\bpe\be>\b>
+ Execute e\bex\bx commands or cancel partial commands. If an
+ e\bex\bx command is being entered (e.g. /\b/, ?\b?, :\b: or !\b!), the
+ command is executed. If a partial command has been
+ entered, e.g. "[\b[0\b0-\b-9\b9]\b]*\b*", or "[\b[0\b0-\b-9\b9]\b]*\b*[\b[!\b!<\b<>\b>c\bcd\bdy\by]\b]", the com-
+ mand is cancelled. Otherwise, it is an error.
+
+ Line: When an e\bex\bx command is being executed, the cur-
+ rent line is set as described for that com-
+ mand. Otherwise, unchanged.
+ Column: When an e\bex\bx command is being executed, the cur-
+ rent column is set as described for that
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b24\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ command. Otherwise, unchanged.
+ Options: None.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-]\b]>\b>
+ Push a tag reference onto the tag stack. The tags
+ files (see the t\bta\bag\bgs\bs option for more information) are
+ searched for a tag matching the current word. The cur-
+ rent word begins at the first non-whitespace character
+ on or after the current cursor position, and extends up
+ to the next non-word character or the end of the line.
+ If a matching tag is found, the current file is dis-
+ carded and the file containing the tag reference is
+ edited.
+
+ If the current file has been modified since it was last
+ completely written, the command will fail. The <\b<c\bco\bon\bn-\b-
+ t\btr\bro\bol\bl-\b-]\b]>\b> command is an absolute movement.
+
+ Line: Set to the line containing the matching tag
+ string.
+ Column: Set to the start of the matching tag string.
+ Options: Affected by the t\bta\bag\bgs\bs and t\bta\bag\bgl\ble\ben\bng\bgt\bth\bh options.
+
+<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-^\b^>\b>
+ Switch to the most recently edited file.
+
+ If the file has been modified since it was last com-
+ pletely written, and the a\bau\but\bto\bow\bwr\bri\bit\bte\be option is set, the
+ file is written out. If this write fails, the command
+ will fail. Otherwise, if the current file has been
+ modified since it was last completely written, the com-
+ mand will fail.
+
+ Line: Set to the line the cursor was on when the
+ file was last edited.
+ Column: Set to the column the cursor was on when the
+ file was last edited.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b<s\bsp\bpa\bac\bce\be>\b>
+[\b[c\bco\bou\bun\bnt\bt]\b] l\bl
+ Move the cursor forward c\bco\bou\bun\bnt\bt characters without chang-
+ ing the current line. It is an error if the cursor is
+ on the last character in the line.
+
+ The <\b<s\bsp\bpa\bac\bce\be>\b> and l\bl commands may be used as the motion
+ component of other v\bvi\bi commands, in which case any text
+ copied into a buffer is character oriented. In addi-
+ tion, these commands may be used as the motion compo-
+ nents of other commands when the cursor is on the last
+ character in the line, without error.
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b25\b5
+
+
+ Line: Unchanged.
+ Column: Set to the current character plus the next
+ c\bco\bou\bun\bnt\bt characters, or to the last character on
+ the line if c\bco\bou\bun\bnt\bt is greater than the number
+ of characters in the line after the current
+ character.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] !\b! m\bmo\bot\bti\bio\bon\bn s\bsh\bhe\bel\bll\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt(\b(s\bs)\b)<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>
+ Replace text with results from a shell command. Pass
+ the lines specified by the c\bco\bou\bun\bnt\bt and m\bmo\bot\bti\bio\bon\bn arguments
+ as standard input to the program named by the s\bsh\bhe\bel\bll\bl
+ option, and replace those lines with the output (both
+ standard error and standard output) of that command.
+
+ After the motion is entered, v\bvi\bi prompts for arguments
+ to the shell command.
+
+ Within those arguments, "%\b%" and "#\b#" characters are
+ expanded to the current and alternate pathnames,
+ respectively. The "!\b!" character is expanded with the
+ command text of the previous !\b! or :\b:!\b! commands.
+ (Therefore, the command !\b!<\b<m\bmo\bot\bti\bio\bon\bn>\b>!\b! repeats the previ-
+ ous !\b! command.) The special meanings of "%\b%", "#\b#" and
+ "!\b!" can be overridden by escaping them with a back-
+ slash. If no !\b! or :\b:!\b! command has yet been executed,
+ it is an error to use an unescaped "!\b!" character as a
+ shell argument. The !\b! command does _\bn_\bo_\bt do shell
+ expansion on the strings provided as arguments. If any
+ of the above expansions change the arguments the user
+ entered, the command is redisplayed at the bottom of
+ the screen.
+
+ V\bVi\bi then executes the program named by the s\bsh\bhe\bel\bll\bl option,
+ with a -\b-c\bc flag followed by the arguments (which are
+ bundled into a single argument).
+
+ The !\b! command is permitted in an empty file.
+
+ If the file has been modified since it was last com-
+ pletely written, the !\b! command will warn you.
+
+ Line: The first line of the replaced text.
+ Column: The first column of the replaced text.
+ Options: Affected by the s\bsh\bhe\bel\bll\bl option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] #\b# +\b+|\b|-\b-
+ Increment or decrement the number referenced by the
+ cursor. If the trailing character is a +\b+, the number
+ is incremented by c\bco\bou\bun\bnt\bt. If the trailing character is
+ a -\b-, the number is decremented by c\bco\bou\bun\bnt\bt.
+
+ A leading "0\b0X\bX" or "0\b0x\bx" causes the number to be
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b26\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ interpreted as a hexadecimal number. Otherwise, a
+ leading "0\b0" causes the number to be interpreted as an
+ octal number, unless a non-octal digit is found as part
+ of the number. Otherwise, the number is interpreted as
+ a decimal number, and may have a leading +\b+ or -\b- sign.
+ The current number begins at the first non-blank char-
+ acter at or after the current cursor position, and
+ extends up to the end of the line or the first charac-
+ ter that isn't a possible character for the numeric
+ type. The format of the number (e.g. leading 0's,
+ signs) is retained unless the new value cannot be rep-
+ resented in the previous format.
+
+ Octal and hexadecimal numbers, and the result of the
+ operation, must fit into an "u\bun\bns\bsi\big\bgn\bne\bed\bd l\blo\bon\bng\bg". Simi-
+ larly, decimal numbers and their result must fit into a
+ "s\bsi\big\bgn\bne\bed\bd l\blo\bon\bng\bg". It is an error to use this command when
+ the cursor is not positioned at a number.
+
+
+ Line: Unchanged.
+ Column: Set to the first character in the cursor num-
+ ber.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] $\b$
+ Move the cursor to the end of a line. If c\bco\bou\bun\bnt\bt is
+ specified, the cursor moves down c\bco\bou\bun\bnt\bt -\b- 1\b1 lines.
+
+ It is not an error to use the $\b$ command when the cursor
+ is on the last character in the line or when the line
+ is empty.
+
+ The $\b$ command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented, unless the cursor is at,
+ or before the first nonblank character in the line, in
+ which case it is line oriented. It is not an error to
+ use the $\b$ command as a motion component when the cursor
+ is on the last character in the line, although it is an
+ error when the line is empty.
+
+ Line: Set to the current line plus c\bco\bou\bun\bnt\bt minus 1.
+ Column: Set to the last character in the line.
+ Options: None.
+
+%\b%
+ Move to the matching character. The cursor moves to
+ the parenthesis or curly brace which _\bm_\ba_\bt_\bc_\bh_\be_\bs the paren-
+ thesis or curly brace found at the current cursor posi-
+ tion or which is the closest one to the right of the
+ cursor on the line. It is an error to execute the %\b%
+ command on a line without a parenthesis or curly brace.
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b27\b7
+
+
+ Historically, any c\bco\bou\bun\bnt\bt specified to the %\b% command was
+ ignored.
+
+ The %\b% command is an absolute movement. The %\b% command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting point of the
+ region is at or before the first nonblank character on
+ its line, and the ending point is at or after the last
+ nonblank character on its line, in which case it is
+ line oriented.
+
+ Line: Set to the line containing the matching char-
+ acter.
+ Column: Set to the matching character.
+ Options: None.
+
+&\b&
+ Repeat the previous substitution command on the current
+ line.
+
+ Historically, any c\bco\bou\bun\bnt\bt specified to the &\b& command was
+ ignored.
+
+ Line: Unchanged.
+ Column: Unchanged if the cursor was on the last char-
+ acter in the line, otherwise, set to the first
+ nonblank character in the line.
+ Options: Affected by the e\bed\bdc\bco\bom\bmp\bpa\bat\bti\bib\bbl\ble\be, e\bex\bxt\bte\ben\bnd\bde\bed\bd,
+ i\big\bgn\bno\bor\bre\bec\bca\bas\bse\be and m\bma\bag\bgi\bic\bc options.
+
+'\b'<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+`\b`<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Return to a context marked by the character <\b<c\bch\bha\bar\bra\bac\bc-\b-
+ t\bte\ber\br>\b>. If <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> is the "'\b'" or "`\b`" character,
+ return to the previous context. If <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> is any
+ other character, return to the context marked by that
+ character (see the m\bm command for more information). If
+ the command is the '\b' command, only the line value is
+ restored, and the cursor is placed on the first non-
+ blank character of that line. If the command is the `\b`
+ command, both the line and column values are restored.
+
+ It is an error if the context no longer exists because
+ of line deletion. (Contexts follow lines that are
+ moved, or which are deleted and then restored.)
+
+ The '\b' and `\b` commands are both absolute movements. They
+ may be used as a motion component for other v\bvi\bi com-
+ mands. For the '\b' command, any text copied into a
+ buffer is line oriented. For the `\b` command, any text
+ copied into a buffer is character oriented, unless it
+ both starts and stops at the first character in the
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b28\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ line, in which case it is line oriented. In addition,
+ when using the `\b` command as a motion component, com-
+ mands which move backward and started at the first
+ character in the line, or move forward and ended at the
+ first character in the line, are corrected to the last
+ character of the line preceding the starting and ending
+ lines, respectively.
+
+ Line: Set to the line from the context.
+ Column: Set to the first nonblank character in the
+ line, for the '\b' command, and set to the con-
+ text's column for the `\b` command.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] (\b(
+ Back up c\bco\bou\bun\bnt\bt sentences.
+
+ The (\b( command is an absolute movement. The (\b( command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting and stopping
+ points of the region are the first character in the
+ line, in which case it is line oriented. If it is line
+ oriented, the starting point of the region is adjusted
+ to be the end of the line immediately before the start-
+ ing cursor position.
+
+ Line: Set to the line containing the beginning of
+ the sentence.
+ Column: Set to the first nonblank character of the
+ sentence.
+ Options: Affected by the l\bli\bis\bsp\bp option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] )\b)
+ Move forward c\bco\bou\bun\bnt\bt sentences.
+
+ The )\b) command is an absolute movement. The )\b) command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting point of the
+ region is the first character in the line, in which
+ case it is line oriented. In the latter case, if the
+ stopping point of the region is also the first charac-
+ ter in the line, it is adjusted to be the end of the
+ line immediately before it.
+
+ Line: Set to the line containing the beginning of
+ the sentence.
+ Column: Set to the first nonblank character of the
+ sentence.
+ Options: Affected by the l\bli\bis\bsp\bp option.
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b29\b9
+
+
+[\b[c\bco\bou\bun\bnt\bt]\b] ,\b,
+ Reverse find character c\bco\bou\bun\bnt\bt times. Reverse the last
+ F\bF, f\bf, T\bT or t\bt command, searching the other way in the
+ line, c\bco\bou\bun\bnt\bt times. It is an error if a F\bF, f\bf, T\bT or t\bt
+ command has not been performed yet.
+
+ The ,\b, command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the searched-for character for the F\bF
+ and f\bf commands, before the character for the t\bt
+ command and after the character for the T\bT com-
+ mand.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] -\b-
+ Move to the first nonblank of the previous line, c\bco\bou\bun\bnt\bt
+ times.
+
+ It is an error if the movement is past the beginning of
+ the file.
+
+ The -\b- command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is line oriented.
+
+ Line: Set to the current line minus c\bco\bou\bun\bnt\bt.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] .\b.
+ Repeat the last v\bvi\bi command that modified text. The
+ repeated command may be a command and motion component
+ combination. If c\bco\bou\bun\bnt\bt is specified, it replaces _\bb_\bo_\bt_\bh
+ the count specified for the repeated command, and, if
+ applicable, for the repeated motion component. If
+ c\bco\bou\bun\bnt\bt is not specified, the counts originally specified
+ to the command being repeated are used again.
+
+ As a special case, if the .\b. command is executed imme-
+ diately after the u\bu command, the change log is rolled
+ forward or backward, depending on the action of the u\bu
+ command.
+
+ Line: Set as described for the repeated command.
+ Column: Set as described for the repeated command.
+ Options: None.
+
+/\b/R\bRE\bE<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b30\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+/\b/R\bRE\bE/\b/ [\b[o\bof\bff\bfs\bse\bet\bt]\b]<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>
+?\b?R\bRE\bE<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>
+?\b?R\bRE\bE?\b? [\b[o\bof\bff\bfs\bse\bet\bt]\b]<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>
+N\bN
+n\bn
+ Search forward or backward for a regular expression.
+ The commands beginning with a slash ("/\b/") character are
+ forward searches, the commands beginning with a ques-
+ tion mark ("?\b?") are backward searches. V\bVi\bi prompts
+ with the leading character on the last line of the
+ screen for a string. It then searches forward or back-
+ ward in the file for the next occurrence of the string,
+ which is interpreted as a Basic Regular Expression.
+
+ The /\b/ and ?\b? commands are absolute movements. They may
+ be used as the motion components of other v\bvi\bi commands,
+ in which case any text copied into a buffer is charac-
+ ter oriented, unless the search started and ended on
+ the first column of a line, in which case it is line
+ oriented. In addition, forward searches ending at the
+ first character of a line, and backward searches begin-
+ ning at the first character in the line, are corrected
+ to begin or end at the last character of the previous
+ line. (Note, forward and backward searches can occur
+ for both /\b/ and ?\b? commands, if the w\bwr\bra\bap\bps\bsc\bca\ban\bn option is
+ set.)
+
+ If an offset from the matched line is specified (i.e. a
+ trailing "/\b/" or "?\b?" character is followed by a signed
+ offset), the buffer will always be line oriented (e.g.
+ "/\b/s\bst\btr\bri\bin\bng\bg/\b/+\b+0\b0" will always guarantee a line orientation).
+
+ The N\bN command repeats the previous search, but in the
+ reverse direction. The n\bn command repeats the previous
+ search. If either the N\bN or n\bn commands are used as
+ motion components for the !\b! command, you will not be
+ prompted for the text of the bang command, instead the
+ previous bang command will be executed.
+
+ Missing RE's (e.g. "/\b//\b/<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>", "/\b/<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-
+ r\bre\bet\btu\bur\brn\bn>\b>", "?\b??\b?<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>", or "?\b?<\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-
+ r\bre\bet\btu\bur\brn\bn>\b>" search for the last search RE, in the indi-
+ cated direction.
+
+ Searches may be interrupted using the <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> char-
+ acter.
+
+ Multiple search patterns may be grouped together by
+ delimiting them with semicolons and zero or more
+ whitespace characters, e.g. /\b/f\bfo\boo\bo/\b/ ;\b; ?\b?b\bba\bar\br?\b? searches
+ forward for f\bfo\boo\bo and then, from that location, backwards
+ for b\bba\bar\br. When search patterns are grouped together in
+ this manner, the search patterns are evaluated left to
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b31\b1
+
+
+ right with the final cursor position determined by the
+ last search pattern.
+
+ It is also permissible to append a z\bz command to the
+ search strings, e.g. /\b/f\bfo\boo\bo/\b/ z\bz.\b. searches forward for
+ the next occurrence of f\bfo\boo\bo, and then positions that
+ line in the middle of screen.
+
+ Line: Set to the line in which the match occurred.
+ Column: Set to the first character of the matched
+ string.
+ Options: Affected by the e\bed\bdc\bco\bom\bmp\bpa\bat\bti\bib\bbl\ble\be, e\bex\bxt\bte\ben\bnd\bde\bed\bd,
+ i\big\bgn\bno\bor\bre\bec\bca\bas\bse\be, m\bma\bag\bgi\bic\bc, and w\bwr\bra\bap\bps\bsc\bca\ban\bn options.
+
+0\b0
+ Move to the first character in the current line. It is
+ not an error to use the 0\b0 command when the cursor is on
+ the first character in the line,
+
+ The 0\b0 command may be used as the motion component of
+ other v\bvi\bi commands, in which case it is an error if the
+ cursor is on the first character in the line, and any
+ text copied into a buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the first character in the line.
+ Options: None.
+
+:\b:
+ Execute an e\bex\bx command. V\bVi\bi prompts for an e\bex\bx command on
+ the last line of the screen, using a colon (":\b:") char-
+ acter. The command is terminated by a <\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-
+ r\bre\bet\btu\bur\brn\bn>\b>, <\b<n\bne\bew\bwl\bli\bin\bne\be>\b> or <\b<e\bes\bsc\bca\bap\bpe\be>\b> character; all of these
+ characters may be escaped by using a <\b<l\bli\bit\bte\ber\bra\bal\bl-\b-n\bne\bex\bxt\bt>\b>
+ character. The command is then executed.
+
+ If the e\bex\bx command writes to the screen, v\bvi\bi will prompt
+ the user for a <\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b> before continuing when
+ the e\bex\bx command finishes. Large amounts of output from
+ the e\bex\bx command will be paged for the user, and the user
+ prompted for a <\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b> or <\b<s\bsp\bpa\bac\bce\be>\b> key to con-
+ tinue. In some cases, a quit (normally a "q" charac-
+ ter) or <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> may be entered to interrupt the e\bex\bx
+ command.
+
+ When the e\bex\bx command finishes, and the user is prompted
+ to resume visual mode, it is also possible to enter
+ another ":\b:" character followed by another e\bex\bx command.
+
+ Line: The current line is set as described for the
+ e\bex\bx command.
+ Column: The current column is set as described for the
+ e\bex\bx command.
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b32\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ Options: Affected as described for the e\bex\bx command.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] ;\b;
+ Repeat the last character find c\bco\bou\bun\bnt\bt times. The last
+ character find is one of the F\bF, f\bf, T\bT or t\bt commands. It
+ is an error if a F\bF, f\bf, T\bT or t\bt command has not been per-
+ formed yet.
+
+ The ;\b; command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the searched-for character for the F\bF
+ and f\bf commands, before the character for the t\bt
+ command and after the character for the T\bT com-
+ mand.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] <\b< m\bmo\bot\bti\bio\bon\bn
+[\b[c\bco\bou\bun\bnt\bt]\b] >\b> m\bmo\bot\bti\bio\bon\bn
+ Shift lines left or right. Shift the number of lines
+ in the region specified by the c\bco\bou\bun\bnt\bt and m\bmo\bot\bti\bio\bon\bn left
+ (for the <\b< command) or right (for the >\b> command) by the
+ number of columns specified by the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option.
+ Only whitespace characters are deleted when shifting
+ left. Once the first character in the line no longer
+ contains a whitespace character, the command will suc-
+ ceed, but the line will not be modified.
+
+ Line: Unchanged.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: Affected by the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option.
+
+@\b@ b\bbu\buf\bff\bfe\ber\br
+ Execute a named buffer. Execute the named buffer as v\bvi\bi
+ commands. The buffer may include e\bex\bx commands, too, but
+ they must be expressed as a :\b: command. If the buffer
+ is line oriented, <\b<n\bne\bew\bwl\bli\bin\bne\be>\b> characters are logically
+ appended to each line of the buffer. If the buffer is
+ character oriented, <\b<n\bne\bew\bwl\bli\bin\bne\be>\b> characters are logically
+ appended to all but the last line in the buffer.
+
+ If the buffer name is "@\b@", or "*\b*", then the last buffer
+ executed shall be used. It is an error to specify "@\b@@\b@"
+ or "*\b**\b*" if there were no previous buffer executions.
+ The text of a buffer may contain an @\b@ or *\b* command, and
+ it is possible to create infinite loops in this manner.
+ (The <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> character may be used to interrupt the
+ loop.)
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b33\b3
+
+
+ Line: The current line is set as described for the
+ command(s).
+ Column: The current column is set as described for the
+ command(s).
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] A\bA
+ Enter input mode, appending the text after the end of
+ the line. If c\bco\bou\bun\bnt\bt is specified, the text is repeat-
+ edly input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times after input mode is
+ exited.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] B\bB
+ Move backward c\bco\bou\bun\bnt\bt bigwords. Move the cursor backward
+ to the beginning of a bigword by repeating the follow-
+ ing algorithm: if the current position is at the begin-
+ ning of a bigword or the character at the current posi-
+ tion cannot be part of a bigword, move to the first
+ character of the preceding bigword. Otherwise, move to
+ the first character of the bigword at the current posi-
+ tion. If no preceding bigword exists on the current
+ line, move to the first character of the last bigword
+ on the first preceding line that contains a bigword.
+
+ The B\bB command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Set to the line containing the word selected.
+ Column: Set to the first character of the word
+ selected.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] C\bC
+ Change text from the current position to the end-of-
+ line. If c\bco\bou\bun\bnt\bt is specified, the input text replaces
+ from the current position to the end-of-line, plus
+ c\bco\bou\bun\bnt\bt -\b- 1\b1 subsequent lines.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b34\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] D\bD
+ Delete text from the current position to the end-of-
+ line.
+
+ It is not an error to execute the D\bD command on an empty
+ line.
+
+ Line: Unchanged.
+ Column: Set to the character before the current char-
+ acter, or, column 1 if the cursor was on col-
+ umn 1.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] E\bE
+ Move forward c\bco\bou\bun\bnt\bt end-of-bigwords. Move the cursor
+ forward to the end of a bigword by repeating the fol-
+ lowing algorithm: if the current position is the end of
+ a bigword or the character at that position cannot be
+ part of a bigword, move to the last character of the
+ following bigword. Otherwise, move to the last charac-
+ ter of the bigword at the current position. If no suc-
+ ceeding bigword exists on the current line, move to the
+ last character of the first bigword on the next follow-
+ ing line that contains a bigword.
+
+ The E\bE command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Set to the line containing the word selected.
+ Column: Set to the last character of the word
+ selected.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] F\bF <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Search c\bco\bou\bun\bnt\bt times backward through the current line
+ for <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>.
+
+ The F\bF command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the searched-for character.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] G\bG
+ Move to line c\bco\bou\bun\bnt\bt, or the last line of the file if
+ c\bco\bou\bun\bnt\bt not specified.
+
+ The G\bG command is an absolute movement. The G\bG command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b35\b5
+
+
+ line oriented.
+
+ Line: Set to c\bco\bou\bun\bnt\bt, if specified, otherwise, the
+ last line.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] H\bH
+ Move to the screen line c\bco\bou\bun\bnt\bt -\b- 1\b1 lines below the top
+ of the screen.
+
+ The H\bH command is an absolute movement. The H\bH command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ line oriented.
+
+ Line: Set to the line c\bco\bou\bun\bnt\bt -\b- 1\b1 lines below the top
+ of the screen.
+ Column: Set to the first nonblank character of the
+ _\bs_\bc_\br_\be_\be_\bn line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] I\bI
+ Enter input mode, inserting the text at the beginning
+ of the line. If c\bco\bou\bun\bnt\bt is specified, the text input is
+ repeatedly input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] J\bJ
+ Join lines. If c\bco\bou\bun\bnt\bt is specified, c\bco\bou\bun\bnt\bt lines are
+ joined; a minimum of two lines are always joined,
+ regardless of the value of c\bco\bou\bun\bnt\bt.
+
+ If the current line ends with a whitespace character,
+ all whitespace is stripped from the next line. Other-
+ wise, if the next line starts with a open parenthesis
+ ("(\b(") do nothing. Otherwise, if the current line ends
+ with a question mark ("?\b?"), period (".\b.") or exclama-
+ tion point ("!\b!"), insert two spaces. Otherwise, insert
+ a single space.
+
+ It is not an error to join lines past the end of the
+ file, i.e. lines that do not exist.
+
+ Line: Unchanged.
+ Column: Set to the character after the last character
+ of the next-to-last joined line.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b36\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] L\bL
+ Move to the screen line c\bco\bou\bun\bnt\bt -\b- 1\b1 lines above the bot-
+ tom of the screen.
+
+ The L\bL command is an absolute movement. The L\bL command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ line oriented.
+
+ Line: Set to the line c\bco\bou\bun\bnt\bt -\b- 1\b1 lines above the bot-
+ tom of the screen.
+ Column: Set to the first nonblank character of the
+ _\bs_\bc_\br_\be_\be_\bn line.
+ Options: None.
+
+ M\bM
+ Move to the screen line in the middle of the screen.
+
+ The M\bM command is an absolute movement. The M\bM command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ line oriented.
+
+ Historically, any c\bco\bou\bun\bnt\bt specified to the M\bM command was
+ ignored.
+
+ Line: Set to the line in the middle of the screen.
+ Column: Set to the first nonblank character of the
+ _\bs_\bc_\br_\be_\be_\bn line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] O\bO
+ Enter input mode, appending text in a new line above
+ the current line. If c\bco\bou\bun\bnt\bt is specified, the text
+ input is repeatedly input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times.
+
+ Historically, any c\bco\bou\bun\bnt\bt specified to the O\bO command was
+ ignored.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] P\bP
+ Insert text from a buffer. Text from the buffer (the
+ unnamed buffer by default) is inserted before the cur-
+ rent column or, if the buffer is line oriented, before
+ the current line.
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b37\b7
+
+
+ Line: Set to the lowest numbered line insert, if the
+ buffer is line oriented, otherwise unchanged.
+ Column: Set to the first nonblank character of the
+ appended text, if the buffer is line oriented,
+ otherwise, the last character of the appended
+ text.
+ Options: None.
+
+Q\bQ
+ Exit v\bvi\bi (or visual) mode and switch to e\bex\bx mode.
+
+ Line: Unchanged.
+ Column: No longer relevant.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] R\bR
+ Enter input mode, replacing the characters in the cur-
+ rent line. If c\bco\bou\bun\bnt\bt is specified, the text input is
+ repeatedly input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times.
+
+ If the end of the current line is reached, no more
+ characters are replaced and any further characters
+ input are appended to the line.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] S\bS
+ Substitute c\bco\bou\bun\bnt\bt lines.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] T\bT <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Search backward, c\bco\bou\bun\bnt\bt times, through the current line
+ for the character _\ba_\bf_\bt_\be_\br the specified <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>.
+
+ The T\bT command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the character _\ba_\bf_\bt_\be_\br the searched-for
+ character.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b38\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ Options: None.
+
+U\bU
+ Restore the current line to its state before the cursor
+ last moved to it.
+
+ Line: Unchanged.
+ Column: The first character in the line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] W\bW
+ Move forward c\bco\bou\bun\bnt\bt bigwords. Move the cursor forward
+ to the beginning of a bigword by repeating the follow-
+ ing algorithm: if the current position is within a big-
+ word or the character at that position cannot be part
+ of a bigword, move to the first character of the next
+ bigword. If no subsequent bigword exists on the cur-
+ rent line, move to the first character of the first
+ bigword on the first following line that contains a
+ bigword.
+
+ The W\bW command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: The line containing the word selected.
+ Column: The first character of the word selected.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] X\bX
+ Delete c\bco\bou\bun\bnt\bt characters before the cursor. If the num-
+ ber of characters to be deleted is greater than or
+ equal to the number of characters to the beginning of
+ the line, all of the characters before the current cur-
+ sor position, to the beginning of the line, are
+ deleted.
+
+ Line: Unchanged.
+ Column: Set to the current character minus c\bco\bou\bun\bnt\bt, or
+ the first character if count is greater than
+ the number of characters in the line before
+ the cursor.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] Y\bY
+ Copy (or "yank") c\bco\bou\bun\bnt\bt lines into the specified buffer.
+
+ Line: Unchanged.
+ Column: Unchanged.
+ Options: None.
+
+Z\bZZ\bZ
+ Write the file and exit v\bvi\bi. The file is only written
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-3\b39\b9
+
+
+ if it has been modified since the last complete write
+ of the file to any file.
+
+ The Z\bZZ\bZ command will exit the editor after writing the
+ file, if there are no further files to edit. Entering
+ two "quit" commands (i.e. w\bwq\bq, q\bqu\bui\bit\bt, x\bxi\bit\bt or Z\bZZ\bZ) in a
+ row will override this check and the editor will exit,
+ ignoring any files that have not yet been edited.
+
+ Line: Unchanged.
+ Column: Unchanged.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] [\b[[\b[
+ Back up c\bco\bou\bun\bnt\bt section boundaries.
+
+ The [\b[[\b[ command is an absolute movement. The [\b[[\b[ command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting position is
+ column 0, in which case it is line oriented.
+
+ It is an error if the movement is past the beginning of
+ the file.
+
+ Line: Set to the previous line that is c\bco\bou\bun\bnt\bt section
+ boundaries back, or the first line of the file
+ if no more section boundaries exist preceding
+ the current line.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: Affected by the s\bse\bec\bct\bti\bio\bon\bns\bs option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] ]\b]]\b]
+ Move forward c\bco\bou\bun\bnt\bt section boundaries.
+
+ The ]\b]]\b] command is an absolute movement. The ]\b]]\b] command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting position is
+ column 0, in which case it is line oriented.
+
+ It is an error if the movement is past the end of the
+ file.
+
+ Line: Set to the line that is c\bco\bou\bun\bnt\bt section bound-
+ aries forward, or to the last line of the file
+ if no more section boundaries exist following
+ the current line.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: Affected by the s\bse\bec\bct\bti\bio\bon\bns\bs option.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b40\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+^\b^
+ Move to first nonblank character on the current line.
+
+ The ^\b^ command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the first nonblank character of the
+ current line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] _\b_
+ Move down c\bco\bou\bun\bnt\bt -\b- 1\b1 lines, to the first nonblank char-
+ acter. The _\b_ command may be used as the motion compo-
+ nent of other v\bvi\bi commands, in which case any text
+ copied into a buffer is line oriented.
+
+ It is not an error to execute the _\b_ command when the
+ cursor is on the first character in the line.
+
+ Line: The current line plus c\bco\bou\bun\bnt\bt -\b- 1\b1.
+ Column: The first nonblank character in the line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] a\ba
+ Enter input mode, appending the text after the cursor.
+ If c\bco\bou\bun\bnt\bt is specified, the text input is repeatedly
+ input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] b\bb
+ Move backward c\bco\bou\bun\bnt\bt words. Move the cursor backward to
+ the beginning of a word by repeating the following
+ algorithm: if the current position is at the beginning
+ of a word, move to the first character of the preceding
+ word. Otherwise, the current position moves to the
+ first character of the word at the current position.
+ If no preceding word exists on the current line, move
+ to the first character of the last word on the first
+ preceding line that contains a word.
+
+ The b\bb command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b41\b1
+
+
+ Line: Set to the line containing the word selected.
+ Column: Set to the first character of the word
+ selected.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] c\bc m\bmo\bot\bti\bio\bon\bn
+ Change the region of text specified by the c\bco\bou\bun\bnt\bt and
+ m\bmo\bot\bti\bio\bon\bn. If only part of a single line is affected,
+ then the last character being changed is marked with a
+ "$\b$". Otherwise, the region of text is deleted, and
+ input mode is entered.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] d\bd m\bmo\bot\bti\bio\bon\bn
+ Delete the region of text specified by the c\bco\bou\bun\bnt\bt and
+ m\bmo\bot\bti\bio\bon\bn.
+
+ Line: Set to the line where the region starts.
+ Column: Set to the first character in the line after
+ the last character in the region. If no such
+ character exists, set to the last character
+ before the region.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] e\be
+ Move forward c\bco\bou\bun\bnt\bt end-of-words. Move the cursor for-
+ ward to the end of a word by repeating the following
+ algorithm: if the current position is the end of a
+ word, move to the last character of the following word.
+ Otherwise, move to the last character of the word at
+ the current position. If no succeeding word exists on
+ the current line, move to the last character of the
+ first word on the next following line that contains a
+ word.
+
+ The e\be command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Set to the line containing the word selected.
+ Column: Set to the last character of the word
+ selected.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] f\bf <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Search forward, c\bco\bou\bun\bnt\bt times, through the rest of the
+ current line for <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>.
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b42\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ The f\bf command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the searched-for character.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] i\bi
+ Enter input mode, inserting the text before the cursor.
+ If c\bco\bou\bun\bnt\bt is specified, the text input is repeatedly
+ input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+m\bm <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Save the current context (line and column) as <\b<c\bch\bha\bar\bra\bac\bc-\b-
+ t\bte\ber\br>\b>. The exact position is referred to by "`\b`<\b<c\bch\bha\bar\bra\bac\bc-\b-
+ t\bte\ber\br>\b>". The line is referred to by "'\b'<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>".
+
+ Historically, <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> was restricted to lower-case
+ letters only, n\bnv\bvi\bi permits the use of any character.
+
+ Line: Unchanged.
+ Column: Unchanged.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] o\bo
+ Enter input mode, appending text in a new line under
+ the current line. If c\bco\bou\bun\bnt\bt is specified, the text
+ input is repeatedly input c\bco\bou\bun\bnt\bt -\b- 1\b1 more times.
+
+ Historically, any c\bco\bou\bun\bnt\bt specified to the o\bo command was
+ ignored.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] p\bp
+ Append text from a buffer. Text from the buffer (the
+ unnamed buffer by default) is appended after the cur-
+ rent column or, if the buffer is line oriented, after
+ the current line.
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b43\b3
+
+
+ Line: Set to the first line appended, if the buffer
+ is line oriented, otherwise unchanged.
+ Column: Set to the first nonblank character of the
+ appended text if the buffer is line oriented,
+ otherwise, the last character of the appended
+ text.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] r\br <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Replace characters. The next c\bco\bou\bun\bnt\bt characters in the
+ line are replaced with <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>. Replacing charac-
+ ters with <\b<n\bne\bew\bwl\bli\bin\bne\be>\b> characters results in creating new,
+ empty lines into the file.
+
+ If <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b> is <\b<e\bes\bsc\bca\bap\bpe\be>\b>, the command is cancelled.
+
+ Line: Unchanged unless the replacement character is
+ a <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>, in which case it is set to the
+ current line plus c\bco\bou\bun\bnt\bt -\b- 1\b1.
+ Column: Set to the last character replaced, unless the
+ replacement character is a <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>, in which
+ case the cursor is in column 1 of the last
+ line inserted.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] s\bs
+ Substitute c\bco\bou\bun\bnt\bt characters in the current line start-
+ ing with the current character.
+
+ Line: Set to the last line upon which characters
+ were entered.
+ Column: Set to the last character entered.
+ Options: Affected by the a\bal\blt\btw\bwe\ber\bra\bas\bse\be, a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by, s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh, t\btt\bty\byw\bwe\ber\bra\bas\bse\be and w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+ options.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] t\bt <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Search forward, c\bco\bou\bun\bnt\bt times, through the current line
+ for the character immediately _\bb_\be_\bf_\bo_\br_\be <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>.
+
+ The t\bt command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Unchanged.
+ Column: Set to the character _\bb_\be_\bf_\bo_\br_\be the searched-for
+ character.
+ Options: None.
+
+u\bu
+ Undo the last change made to the file. If repeated,
+ the u\bu command alternates between these two states, and
+ is its own inverse. When used after an insert that
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b44\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ inserted text on more than one line, the lines are
+ saved in the numeric buffers.
+
+ The .\b. command, when used immediately after the u\bu com-
+ mand, causes the change log to be rolled forward or
+ backward, depending on the action of the u\bu command.
+
+ Line: Set to the position of the first line changed,
+ if the reversal affects only one line or rep-
+ resents an addition or change; otherwise, the
+ line preceding the deleted text.
+ Column: Set to the cursor position before the change
+ was made.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] w\bw
+ Move forward c\bco\bou\bun\bnt\bt words. Move the cursor forward to
+ the beginning of a word by repeating the following
+ algorithm: if the current position is at the beginning
+ of a word, move to the first character of the next
+ word. If no subsequent word exists on the current
+ line, move to the first character of the first word on
+ the first following line that contains a word.
+
+ The w\bw command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented.
+
+ Line: Set to the line containing the word selected.
+ Column: Set to the first character of the word
+ selected.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] x\bx
+ Delete c\bco\bou\bun\bnt\bt characters. The deletion is at the cur-
+ rent character position. If the number of characters
+ to be deleted is greater than or equal to the number of
+ characters to the end of the line, all of the charac-
+ ters from the current cursor position to the end of the
+ line are deleted.
+
+ Line: Unchanged.
+ Column: Unchanged unless the last character in the
+ line is deleted and the cursor is not already
+ on the first character in the line, in which
+ case it is set to the previous character.
+ Options: None.
+
+[\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] y\by m\bmo\bot\bti\bio\bon\bn
+ Copy (or "yank") the text region specified by the c\bco\bou\bun\bnt\bt
+ and m\bmo\bot\bti\bio\bon\bn, into a buffer.
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b45\b5
+
+
+ Line: Unchanged, unless the region covers more than
+ a single line, in which case it is set to the
+ line where the region starts.
+ Column: Unchanged, unless the region covers more than
+ a single line, in which case it is set to the
+ character were the region starts.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt1\b1]\b] z\bz [\b[c\bco\bou\bun\bnt\bt2\b2]\b] t\bty\byp\bpe\be
+ Redraw the screen with a window c\bco\bou\bun\bnt\bt2\b2 lines long, with
+ line c\bco\bou\bun\bnt\bt1\b1 placed as specified by the t\bty\byp\bpe\be character.
+ If c\bco\bou\bun\bnt\bt1\b1 is not specified, it defaults to the current
+ line. If c\bco\bou\bun\bnt\bt2\b2 is not specified, it defaults to the
+ current window size.
+
+ The following t\bty\byp\bpe\be characters may be used:
+
+ + If c\bco\bou\bun\bnt\bt1\b1 is specified, place the line c\bco\bou\bun\bnt\bt1\b1
+ at the top of the screen. Otherwise, display
+ the screen after the current screen, similarly
+ to the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-F\bF>\b> command.
+ <carriage-return>
+ Place the line c\bco\bou\bun\bnt\bt1\b1 at the top of the
+ screen.
+ . Place the line c\bco\bou\bun\bnt\bt1\b1 in the center of the
+ screen.
+ - Place the line c\bco\bou\bun\bnt\bt1\b1 at the bottom of the
+ screen.
+ ^ If c\bco\bou\bun\bnt\bt1\b1 is specified, place the line that is
+ at the top of the screen when c\bco\bou\bun\bnt\bt1\b1 is at the
+ bottom of the screen, at the bottom of the
+ screen, i.e. display the screen before the
+ screen before c\bco\bou\bun\bnt\bt1\b1. Otherwise, display the
+ screen before the current screen, similarly to
+ the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-B\bB>\b> command.
+
+ Line: Set to c\bco\bou\bun\bnt\bt1\b1 unless c\bco\bou\bun\bnt\bt1\b1 is not specified
+ and the t\bty\byp\bpe\be character was either "^\b^" or "+\b+",
+ in which case it is set to the line before the
+ first line on the previous screen or the line
+ after the last line on the previous screen,
+ respectively.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] {\b{
+ Move backward c\bco\bou\bun\bnt\bt paragraphs.
+
+ The {\b{ command is an absolute movement. The {\b{ command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting character is
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b46\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ the first character on its line, in which case it is
+ line oriented.
+
+ Line: Set to the line containing the beginning of
+ the previous paragraph.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: Affected by the p\bpa\bar\bra\bag\bgr\bra\bap\bph\bh option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] |\b|
+ Move to a specific _\bc_\bo_\bl_\bu_\bm_\bn position on the current line.
+
+ The |\b| command may be used as the motion component of
+ other v\bvi\bi commands, in which case any text copied into a
+ buffer is character oriented. It is an error to use
+ the |\b| command as a motion component and for the cursor
+ not to move.
+
+ Line: Unchanged.
+ Column: Set to the character occupying the column
+ position identified by c\bco\bou\bun\bnt\bt, if the position
+ exists in the line. If the column length of
+ the current line is less than c\bco\bou\bun\bnt\bt, the cur-
+ sor is moved to the last character in the
+ line.
+ Options: None.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] }\b}
+ Move forward c\bco\bou\bun\bnt\bt paragraphs.
+
+ The }\b} command is an absolute movement. The }\b} command
+ may be used as the motion component of other v\bvi\bi com-
+ mands, in which case any text copied into a buffer is
+ character oriented, unless the starting character is at
+ or before any nonblank characters in its line, in which
+ case it is line oriented.
+
+ Line: Set to the line containing the beginning of
+ the next paragraph.
+ Column: Set to the first nonblank character in the
+ line.
+ Options: Affected by the p\bpa\bar\bra\bag\bgr\bra\bap\bph\bh option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] ~\b~
+ Reverse the case of the next c\bco\bou\bun\bnt\bt character(s). This
+ is the historic semantic for the ~\b~ command and it is
+ only in effect if the t\bti\bil\bld\bde\beo\bop\bp option is not set.
+
+ Lowercase alphabetic characters are changed to upper-
+ case, and uppercase characters are changed to lower-
+ case. No other characters are affected.
+
+ Historically, the ~\b~ command did not take an associated
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b47\b7
+
+
+ count, nor did it move past the end of the current
+ line. As it had no associated motion it was difficult
+ to change the case of large blocks of text. In n\bnv\bvi\bi, if
+ the cursor is on the last character of a line, and
+ there are more lines in the file, the cursor moves to
+ the next line.
+
+ It is not an error to specify a count larger than the
+ number of characters between the cursor and the end of
+ the file.
+
+ Line: Set to the line of the character after c\bco\bou\bun\bnt\bt
+ characters, or, end of file.
+ Column: Set to the character after c\bco\bou\bun\bnt\bt characters,
+ or, end-of-file.
+ Options: Affected by the t\bti\bil\bld\bde\beo\bop\bp option.
+
+[\b[c\bco\bou\bun\bnt\bt]\b] ~\b~ m\bmo\bot\bti\bio\bon\bn
+ Reverse the case of the characters in a text region
+ specified by the c\bco\bou\bun\bnt\bt and m\bmo\bot\bti\bio\bon\bn. Only in effect if
+ the t\bti\bil\bld\bde\beo\bop\bp option is set.
+
+ Lowercase characters are changed to uppercase, and
+ uppercase characters are changed to lowercase. No
+ other characters are affected.
+
+ Line: Set to the line of the character after the
+ last character in the region.
+ Column: Set to the character after the last character
+ in the region.
+ Options: Affected by the t\bti\bil\bld\bde\beo\bop\bp option.
+
+<\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b>
+ Interrupt the current operation. Many of the poten-
+ tially long-running v\bvi\bi commands may be interrupted
+ using the terminal interrupt character. These opera-
+ tions include searches, file reading and writing, fil-
+ ter operations and map character expansion. Interrupts
+ are also enabled when running commands outside of v\bvi\bi.
+
+ If the <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> character is used to interrupt while
+ entering an e\bex\bx command, the command is aborted, the
+ cursor returns to its previous position, and v\bvi\bi remains
+ in command mode.
+
+ Generally, if the <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> character is used to
+ interrupt any operation, any changes made before the
+ interrupt are left in place.
+
+ Line: Dependent on the operation being interrupted.
+ Column: Dependent on the operation being interrupted.
+ Options: None.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b48\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ 1\b11\b1.\b. V\bVi\bi T\bTe\bex\bxt\bt I\bIn\bnp\bpu\but\bt C\bCo\bom\bmm\bma\ban\bnd\bds\bs
+
+ The following section describes the commands
+ available in the text input mode of the v\bvi\bi editor.
+
+ Historically, v\bvi\bi implementations only permitted
+ the characters inserted on the current line to be
+ erased. In addition, only the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> erase char-
+ acter and the "0\b0<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>" and "^\b^<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>" erase
+ strings could erase autoindent characters. This imple-
+ mentation permits erasure to continue past the begin-
+ ning of the current line, and back to where text input
+ mode was entered. In addition, autoindent characters
+ may be erased using the standard erase characters. For
+ the line and word erase characters, reaching the
+ autoindent characters forms a "soft" boundary, denoting
+ the end of the current word or line erase. Repeating
+ the word or line erase key will erase the autoindent
+ characters.
+
+ Historically, v\bvi\bi always used <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-H\bH>\b> and <\b<c\bco\bon\bn-\b-
+ t\btr\bro\bol\bl-\b-W\bW>\b> as character and word erase characters, respec-
+ tively, regardless of the current terminal settings.
+ This implementation accepts, in addition to these two
+ characters, the current terminal characters for those
+ operations.
+
+ <\b<n\bnu\bul\bl>\b>
+ If the first character of the input is a <\b<n\bnu\bul\bl>\b>,
+ the previous input is replayed, as if just
+ entered.
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>
+ If the previous character on the line was an
+ autoindent character, erase it. Otherwise, if the
+ user is entering the first character in the line,
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> is ignored. Otherwise, a literal
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> character is entered.
+
+ ^\b^<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>
+ If the previous character on the line was an
+ autoindent character, erase all of the autoindent
+ characters on the line. In addition, the autoin-
+ dent level is reset to 0.
+
+ 0\b0<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>
+ If the previous character on the line was an
+ autoindent character, erase all of the autoindent
+ characters on the line.
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-T\bT>\b>
+ Insert sufficient <\b<t\bta\bab\bb>\b> and <\b<s\bsp\bpa\bac\bce\be>\b> characters to
+ move the cursor forward to a column immediately
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(V\bVi\bi C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-4\b49\b9
+
+
+ after the next column which is an even multiple of
+ the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option.
+
+ Historically, v\bvi\bi did not permit the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-T\bT>\b>
+ command to be used unless the cursor was at the
+ first column of a new line or it was preceded only
+ by autoindent characters. N\bNv\bvi\bi permits it to be
+ used at any time during insert mode.
+
+ <\b<e\ber\bra\bas\bse\be>\b>
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-H\bH>\b>
+ Erase the last character.
+
+ <\b<l\bli\bit\bte\ber\bra\bal\bl-\b-n\bne\bex\bxt\bt>\b>
+ Quote the next character. The next character will
+ not be mapped (see the m\bma\bap\bp command for more infor-
+ mation) or interpreted specially. A carat ("^\b^")
+ character will be displayed immediately as a
+ placeholder, but will be replaced by the next
+ character.
+
+ <\b<e\bes\bsc\bca\bap\bpe\be>\b>
+ Resolve all text input into the file, and return
+ to command mode.
+
+ <\b<l\bli\bin\bne\be e\ber\bra\bas\bse\be>\b>
+ Erase the current line.
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-W\bW>\b>
+ <\b<w\bwo\bor\brd\bd e\ber\bra\bas\bse\be>\b>
+ Erase the last word. The definition of word is
+ dependent on the a\bal\blt\btw\bwe\ber\bra\bas\bse\be and t\btt\bty\byw\bwe\ber\bra\bas\bse\be options.
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-X\bX>\b>[\b[0\b0-\b-9\b9A\bA-\b-F\bFa\ba-\b-f\bf]\b]*\b*
+ Insert a character with the specified hexadecimal
+ value into the text.
+
+ <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b>
+ Interrupt text input mode, returning to command
+ mode. If the <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> character is used to
+ interrupt inserting text into the file, it is as
+ if the <\b<e\bes\bsc\bca\bap\bpe\be>\b> character was used; all text input
+ up to the interruption is resolved into the file.
+
+ 1\b12\b2.\b. E\bEx\bx A\bAd\bdd\bdr\bre\bes\bss\bsi\bin\bng\bg
+
+ Addressing in e\bex\bx (and when e\bex\bx commands are exe-
+ cuted from v\bvi\bi) relates to the current line. In gen-
+ eral, the current line is the last line affected by a
+ command. The exact effect on the current line is dis-
+ cussed under the description of each command. When the
+ file contains no lines, the current line is zero.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b50\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ Addresses are constructed by one or more of the
+ following methods:
+
+ (1) The address ".\b." refers to the current line.
+
+ (2) The address "$\b$" refers to the last line of the
+ file.
+
+ (3) The address "N\bN", where N\bN is a positive number,
+ refers to the N-th line of the file.
+
+ (4) The address "'\b'<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>" or "`\b`<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>"
+ refers to the line marked with the name <\b<c\bch\bha\bar\bra\bac\bc-\b-
+ t\bte\ber\br>\b>. (See the k\bk or m\bm commands for more infor-
+ mation on how to mark lines.)
+
+ (5) A regular expression (RE) enclosed by slashes
+ ("/\b/") is an address, and it refers to the first
+ line found by searching forward from the line
+ _\ba_\bf_\bt_\be_\br the current line toward the end of the
+ file, and stopping at the first line containing
+ a string matching the RE. (The trailing slash
+ can be omitted at the end of the command line.)
+
+ If no RE is specified, i.e. the pattern is "/\b//\b/",
+ the last RE used in any command is used in the
+ search.
+
+ If the e\bex\bxt\bte\ben\bnd\bde\bed\bd option is set, the RE is handled
+ as an extended RE, not a basic RE. If the w\bwr\bra\bap\bp-\b-
+ s\bsc\bca\ban\bn option is set, the search wraps around to
+ the beginning of the file and continues up to
+ and including the current line, so that the
+ entire file is searched.
+
+ The form "\\b\/\b/" is accepted for historic reasons,
+ and is identical to "/\b//\b/".
+
+ (6) An RE enclosed in question marks ("?\b?")
+ addresses the first line found by searching
+ backward from the line _\bp_\br_\be_\bc_\be_\bd_\bi_\bn_\bg the current
+ line, toward the beginning of the file and stop-
+ ping at the first line containing a string
+ matching the RE. (The trailing question mark
+ can be omitted at the end of a command line.)
+
+ If no RE is specified, i.e. the pattern is "?\b??\b?",
+ the last RE used in any command is used in the
+ search.
+
+ If the e\bex\bxt\bte\ben\bnd\bde\bed\bd option is set, the RE is handled
+ as an extended RE, not a basic RE. If the w\bwr\bra\bap\bp-\b-
+ s\bsc\bca\ban\bn option is set, the search wraps around
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b51\b1
+
+
+ from the beginning of the file to the end of the
+ file and continues up to and including the cur-
+ rent line, so that the entire file is searched.
+
+ The form "\\b\?\b?" is accepted for historic reasons,
+ and is identical to "?\b??\b?".
+
+ (7) An address followed by a plus sign ("+\b+") or a
+ minus sign ("-\b-") followed by a number is an off-
+ set address and refers to the address plus (or
+ minus) the indicated number of lines. If the
+ address is omitted, the addition or subtraction
+ is done with respect to the current line.
+
+ (8) An address of "+\b+" or "-\b-" followed by a number is
+ an offset from the current line. For example,
+ "-\b-5\b5" is the same as ".\b.-\b-5\b5".
+
+ (9) An address ending with "+\b+" or "-\b-" has 1 added to
+ or subtracted from the address, respectively.
+ As a consequence of this rule and of the previ-
+ ous rule, the address "-\b-" refers to the line
+ preceding the current line. Moreover, trailing
+ "+\b+" and "-\b-" characters have a cumulative effect.
+ For example, "+\b++\b+-\b-+\b++\b+" refers to the current line
+ plus 3.
+
+ (10) A percent sign ("%\b%") is equivalent to the
+ address range "1\b1,\b,$\b$".
+
+ E\bEx\bx commands require zero, one, or two addresses.
+ It is an error to specify an address to a command which
+ requires zero addresses.
+
+ If the user provides more than the expected number
+ of addresses to any e\bex\bx command, the first addresses
+ specified are discarded. For example, "1\b1,\b,2\b2,\b,3\b3,\b,5\b5"print
+ prints lines 3 through 5, because the p\bpr\bri\bin\bnt\bt command
+ only takes two addresses.
+
+ The addresses in a range are separated from each
+ other by a comma (",\b,") or a semicolon (";\b;"). In the
+ latter case, the current line (".\b.") is set to the
+ first address, and only then is the second address cal-
+ culated. This feature can be used to determine the
+ starting line for forward and backward searches (see
+ rules (5) and (6) above). The second address of any
+ two-address sequence corresponds to a line that fol-
+ lows, in the file, the line corresponding to the first
+ address. The first address must be less than or equal
+ to the second address. The first address must be
+ greater than or equal to the first line of the file,
+ and the last address must be less than or equal to the
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b52\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ last line of the file.
+
+ 1\b13\b3.\b. E\bEx\bx D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn
+
+ The following words have special meanings for e\bex\bx
+ commands.
+
+ <\b<e\ben\bnd\bd-\b-o\bof\bf-\b-f\bfi\bil\ble\be>\b>
+ The end-of-file character is used to scroll the
+ screen in the e\bex\bx editor. This character is nor-
+ mally <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>, however, whatever character is
+ set for the current terminal is used as well as
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>.
+
+ l\bli\bin\bne\be
+ A single-line address, given in any of the forms
+ described in the section entitled "E\bEx\bx A\bAd\bdd\bdr\bre\bes\bss\bsi\bin\bng\bg".
+ The default for l\bli\bin\bne\be is the current line.
+
+ r\bra\ban\bng\bge\be
+ A line, or a pair of line addresses, separated by
+ a comma or semicolon. (See the section entitled
+ "E\bEx\bx A\bAd\bdd\bdr\bre\bes\bss\bsi\bin\bng\bg" for more information.) The
+ default for range is the current line _\bo_\bn_\bl_\by, i.e.
+ ".\b.,\b,.\b.". A percent sign ("%\b%") stands for the range
+ "1\b1,\b,$\b$". The starting address must be less than, or
+ equal to, the ending address.
+
+ c\bco\bou\bun\bnt\bt
+ A positive integer, specifying the number of lines
+ to be affected by the command; the default is 1.
+ Generally, a count past the end-of-file may be
+ specified, e.g. the command "p\bp 3\b30\b00\b00\b0" in a 10 line
+ file is acceptable, and will print from the cur-
+ rent line through the last line in the file.
+
+ f\bfl\bla\bag\bgs\bs
+ One or more of the characters "#", "p", and "l".
+ When a command that accepts these flags completes,
+ the addressed line(s) are written out as if by the
+ corresponding #\b#, l\bl or p\bp commands. In addition,
+ any number of "+\b+" or "-\b-" characters can be speci-
+ fied before, after, or during the flags, in which
+ case the line written is not necessarily the one
+ affected by the command, but rather the line
+ addressed by the offset address specified. The
+ default for f\bfl\bla\bag\bgs\bs is none.
+
+ f\bfi\bil\ble\be
+ A pattern used to derive a pathname; the default
+ is the current file. File names are subjected to
+ normal _\bs_\bh(1) word expansions.
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b53\b3
+
+
+ Anywhere a file name is specified, it is also pos-
+ sible to use the special string "/\b/t\btm\bmp\bp". This will be
+ replaced with a temporary file name which can be used
+ for temporary work, e.g. ":\b:e\be /\b/t\btm\bmp\bp" creates and edits a
+ new file.
+
+ If both a count and a range are specified for com-
+ mands that use either, the starting line for the com-
+ mand is the _\bl_\ba_\bs_\bt line addressed by the range, and
+ c\bco\bou\bun\bnt\bt- subsequent lines are affected by the command,
+ e.g. the command "2\b2,\b,3\b3p\bp4\b4" prints out lines 3, 4, 5 and
+ 6.
+
+ When only a line or range is specified, with no
+ command, the implied command is either a l\bli\bis\bst\bt, n\bnu\bum\bmb\bbe\ber\br
+ or p\bpr\bri\bin\bnt\bt command. The command used is the most recent
+ of the three commands to have been used (including any
+ use as a flag). If none of these commands have been
+ used before, the p\bpr\bri\bin\bnt\bt command is the implied command.
+ When no range or count is specified and the command
+ line is a blank line, the current line is incremented
+ by 1 and then the current line is displayed.
+
+ Zero or more whitespace characters may precede or
+ follow the addresses, count, flags, or command name.
+ Any object following a command name (such as buffer,
+ file, etc.), that begins with an alphabetic character,
+ should be separated from the command name by at least
+ one whitespace character.
+
+ Any character, including <\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b>, "%\b%"
+ and "#\b#" retain their literal value when preceded by a
+ backslash.
+
+ 1\b14\b4.\b. E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs
+
+ The following section describes the commands
+ available in the e\bex\bx editor. In each entry below, the
+ tag line is a usage synopsis for the command.
+
+ Each command can be entered as the abbreviation
+ (those characters in the synopsis command word preced-
+ ing the "[" character), the full command (all charac-
+ ters shown for the command word, omitting the "[" and
+ "]" characters), or any leading subset of the full com-
+ mand down to the abbreviation. For example, the args
+ command (shown as "a\bar\br[\b[g\bgs\bs]\b]" in the synopsis) can be
+ entered as "a\bar\br", "a\bar\brg\bg" or "a\bar\brg\bgs\bs".
+
+ Each e\bex\bx command described below notes the new cur-
+ rent line after it is executed, as well as any options
+ that affect the command.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b54\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ "\b"
+ A comment. Command lines beginning with the dou-
+ ble-quote character (""\b"") are ignored. This per-
+ mits comments in editor scripts and startup files.
+
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>
+
+ <\b<e\ben\bnd\bd-\b-o\bof\bf-\b-f\bfi\bil\ble\be>\b>
+ Scroll the screen. Write the next N lines, where
+ N is the value of the s\bsc\bcr\bro\bol\bll\bl option. The command
+ is the end-of-file terminal character, which may
+ be different on different terminals. Tradition-
+ ally, it is the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> key.
+
+ Historically, the e\beo\bof\bf command ignored any preced-
+ ing count, and the <\b<e\ben\bnd\bd-\b-o\bof\bf-\b-f\bfi\bil\ble\be>\b> character was
+ ignored unless it was entered as the first charac-
+ ter of the command. This implementation treats it
+ as a command _\bo_\bn_\bl_\by if entered as the first charac-
+ ter of the command line, and otherwise treats it
+ as any other character.
+
+ Line: Set to the last line written.
+ Options: Affected by the s\bsc\bcr\bro\bol\bll\bl option.
+
+ !\b! a\bar\brg\bgu\bum\bme\ben\bnt\bt(\b(s\bs)\b)
+ [\b[r\bra\ban\bng\bge\be]\b]!\b! a\bar\brg\bgu\bum\bme\ben\bnt\bt(\b(s\bs)\b)
+ Execute a shell command, or filter lines through a
+ shell command. In the first synopsis, the remain-
+ der of the line after the "!\b!" character is passed
+ to the program named by the s\bsh\bhe\bel\bll\bl option, as a
+ single argument.
+
+ Within the rest of the line, "%\b%" and "#\b#" are
+ expanded into the current and alternate pathnames,
+ respectively. The character "!\b!" is expanded with
+ the command text of the previous !\b! command.
+ (Therefore, the command !\b!!\b! repeats the previous !\b!
+ command.) The special meanings of "%\b%", "#\b#", and
+ "!\b!" can be overridden by escaping them with a
+ backslash. If no !\b! or :\b:!\b! command has yet been
+ executed, it is an error to use an unescaped "!\b!"
+ character. The !\b! command does _\bn_\bo_\bt do shell
+ expansion on the strings provided as arguments.
+ If any of the above expansions change the command
+ the user entered, the command is redisplayed at
+ the bottom of the screen.
+
+ E\bEx\bx then executes the program named by the s\bsh\bhe\bel\bll\bl
+ option, with a -\b-c\bc flag followed by the arguments
+ (which are bundled into a single argument).
+
+ The !\b! command is permitted in an empty file.
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b55\b5
+
+
+ If the file has been modified since it was last
+ completely written, the command will warn you.
+
+ A single "!\b!" character is displayed when the com-
+ mand completes.
+
+ In the second form of the !\b! command, the remain-
+ der of the line after the "!\b!" is passed to the
+ program named by the s\bsh\bhe\bel\bll\bl option, as described
+ above. The specified lines are passed to the pro-
+ gram as standard input, and the standard and stan-
+ dard error output of the program replace the orig-
+ inal lines.
+
+ Line: Unchanged if no range was specified, oth-
+ erwise set to the first line of the
+ range.
+ Options: Affected by the s\bsh\bhe\bel\bll\bl and w\bwa\bar\brn\bn options.
+
+ [\b[r\bra\ban\bng\bge\be]\b] #\b# [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] n\bnu\bu[\b[m\bmb\bbe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Display the selected lines, each preceded with its
+ line number.
+
+ The line number format is "%6d", followed by two
+ spaces.
+
+ Line: Set to the last line displayed.
+ Options: Affected by the l\bli\bis\bst\bt option.
+
+ @\b@ b\bbu\buf\bff\bfe\ber\br
+ *\b* b\bbu\buf\bff\bfe\ber\br
+ Execute a buffer. Each line in the named buffer
+ is executed as an e\bex\bx command. If no buffer is
+ specified, or if the specified buffer is "@\b@" or
+ "*\b*", the last buffer executed is used.
+
+ [\b[r\bra\ban\bng\bge\be]\b] <\b<[\b[<\b< .\b..\b..\b.]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Shift lines left or right. The specified lines
+ are shifted to the left (for the <\b< command) or
+ right (for the >\b> command), by the number of
+ columns specified by the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option. Only
+ leading whitespace characters are deleted when
+ shifting left; once the first column of the line
+ contains a nonblank character, the s\bsh\bhi\bif\bft\bt command
+ will succeed, but the line will not be modified.
+
+ If the command character <\b< or >\b> is repeated more
+ than once, the command is repeated once for each
+ additional command character.
+
+ Line: If the current line is set to one of the
+ lines that are affected by the command,
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b56\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ it is unchanged. Otherwise, it is set to
+ the first nonblank character of the low-
+ est numbered line shifted.
+ Options: Affected by the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option.
+
+ [\b[l\bli\bin\bne\be]\b] =\b= [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Display the line number of l\bli\bin\bne\be (which defaults to
+ the last line in the file).
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] >\b>[\b[>\b> .\b..\b..\b.]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Shift right. The specified lines are shifted to
+ the right by the number of columns specified by
+ the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option, by inserting tab and space
+ characters. Empty lines are not changed.
+
+ If the command character ">\b>" is repeated more than
+ once, the command is repeated once for each addi-
+ tional command character.
+
+ Line: Set to the last line modified by the com-
+ mand.
+ Options: Affected by the s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh option.
+
+ a\bab\bb[\b[b\bbr\bre\bev\bv]\b] l\blh\bhs\bs r\brh\bhs\bs
+ Add an abbreviation to the current abbreviation
+ list. When inserting text in v\bvi\bi, each time a non-
+ word character is entered after a word character,
+ a set of characters ending at the word character
+ are checked for a match with l\blh\bhs\bs. If a match is
+ found, they are replaced with r\brh\bhs\bs. The set of
+ characters that are checked for a match are
+ defined as follows, for inexplicable historical
+ reasons. If only one or two characters were
+ entered before the non-word character that trig-
+ gered the check, and after the beginning of the
+ insertion, or the beginning of the line or the
+ file, or the last <\b<b\bbl\bla\ban\bnk\bk>\b> character that was
+ entered, then the one or the both characters are
+ checked for a match. Otherwise, the set includes
+ both characters, as well as the characters that
+ precede them that are the same word class (i.e.
+ word or non-word) as the s\bse\bec\bco\bon\bnd\bd to last character
+ entered before the non-word character that trig-
+ gered the check, back to the first
+ <\b<b\bbl\bla\ban\bnk\bk>\b>character, the beginning of the insertion,
+ or the beginning of the line or the file.
+
+ For example, the abbreviations:
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b57\b7
+
+
+ :\b:a\bab\bbb\bbr\bre\bev\bvi\bia\bat\bte\be a\bab\bbc\bc A\bAB\bBC\bC
+ :\b:a\bab\bbb\bbr\bre\bev\bvi\bia\bat\bte\be #\b#i\bi #\b#i\bin\bnc\bcl\blu\bud\bde\be
+ :\b:a\bab\bbb\bbr\bre\bev\bvi\bia\bat\bte\be /\b/*\b*#\b#i\bi /\b/*\b*#\b#i\bin\bnc\bcl\blu\bud\bde\be
+
+ will all work, while the abbreviations:
+
+
+ :\b:a\bab\bbb\bbr\bre\bev\bvi\bia\bat\bte\be a\ba#\b#i\bi A\bA#\b#i\bin\bnc\bcl\blu\bud\bde\be
+ :\b:a\bab\bbb\bbr\bre\bev\bvi\bia\bat\bte\be /\b/*\b* /\b/*\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b**\b*
+
+ will not work, and are not permitted by n\bnv\bvi\bi.
+
+ To keep the abbreviation expansion from happening,
+ the character immediately following the l\blh\bhs\bs char-
+ acters should be quoted with a <\b<l\bli\bit\bte\ber\bra\bal\bl-\b-n\bne\bex\bxt\bt>\b>
+ character.
+
+ The replacement r\brh\bhs\bs is itself subject to both fur-
+ ther abbreviation expansion and further map expan-
+ sion.
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[l\bli\bin\bne\be]\b] a\ba[\b[p\bpp\bpe\ben\bnd\bd]\b][\b[!\b!]\b]
+ The input text is appended to the specified line.
+ If line 0 is specified, the text is inserted at
+ the beginning of the file. Set to the last line
+ input. If no lines are input, then set to l\bli\bin\bne\be,
+ or to the first line of the file if a l\bli\bin\bne\be of 0
+ was specified. Following the command name with a
+ "!\b!" character causes the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt option to be
+ toggled for the duration of the command.
+
+ Line: Unchanged.
+ Options: Affected by the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt and n\bnu\bum\bmb\bbe\ber\br
+ options.
+
+ a\bar\br[\b[g\bgs\bs]\b]
+ Display the argument list. The current argument
+ is displayed inside of "[\b[" and "]\b]" characters.
+ The argument list is the list of operands speci-
+ fied on startup, which can be replaced using the
+ n\bne\bex\bxt\bt command.
+
+ Line: Unchanged.
+ Options: None.
+
+ b\bbg\bg
+ V\bVi\bi mode only. Background the current screen.
+
+
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b58\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ Line: Set to the current line when the screen
+ was last edited.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] c\bc[\b[h\bha\ban\bng\bge\be]\b][\b[!\b!]\b] [\b[c\bco\bou\bun\bnt\bt]\b]
+ Replace the lines with input text. Following the
+ command name with a "!\b!" character causes the
+ a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt option to be toggled for the duration
+ of the command.
+
+ Line: Set to the last line input, or, if no
+ lines were input, set to the line before
+ the target line, or to the first line of
+ the file if there are no lines preceding
+ the target line.
+ Options: Affected by the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt and n\bnu\bum\bmb\bbe\ber\br
+ options.
+
+ c\bch\bhd\bd[\b[i\bir\br]\b][\b[!\b!]\b] [\b[d\bdi\bir\bre\bec\bct\bto\bor\bry\by]\b]
+ c\bcd\bd[\b[!\b!]\b] [\b[d\bdi\bir\bre\bec\bct\bto\bor\bry\by]\b]
+ Change the current working directory. The d\bdi\bir\bre\bec\bc-\b-
+ t\bto\bor\bry\by argument is subjected to _\bs_\bh(1) word expan-
+ sions. When invoked with no directory argument
+ and the H\bHO\bOM\bME\bE environment variable is set, the
+ directory named by the H\bHO\bOM\bME\bE environment variable
+ becomes the new current directory. Otherwise, the
+ new current directory becomes the directory
+ returned by the _\bg_\be_\bt_\bp_\bw_\be_\bn_\bt(3) routine.
+
+ The c\bch\bhd\bdi\bir\br command will fail if the file has been
+ modified since the last complete write of the
+ file. You can override this check by appending a
+ "!\b!" character to the command.
+
+ Line: Unchanged.
+ Options: Affected by the c\bcd\bdp\bpa\bat\bth\bh option.
+
+ [\b[r\bra\ban\bng\bge\be]\b] c\bco\bo[\b[p\bpy\by]\b] l\bli\bin\bne\be [\b[f\bfl\bla\bag\bgs\bs]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] t\bt l\bli\bin\bne\be [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Copy the specified lines (range) after the desti-
+ nation line. Line 0 may be specified to insert
+ the lines at the beginning of the file.
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] d\bd[\b[e\bel\ble\bet\bte\be]\b] [\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Delete the lines from the file. The deleted text
+ is saved in the specified buffer, or, if no buffer
+ is specified, in the unnamed buffer. If the com-
+ mand name is followed by a letter that could be
+ interpreted as either a buffer name or a flag
+ value (because neither a c\bco\bou\bun\bnt\bt or f\bfl\bla\bag\bgs\bs values
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-5\b59\b9
+
+
+ were given), e\bex\bx treats the letter as a f\bfl\bla\bag\bgs\bs value
+ if the letter immediately follows the command
+ name, without any whitespace separation. If the
+ letter is preceded by whitespace characters, it
+ treats it as a buffer name.
+
+ Line: Set to the line following the deleted
+ lines, or to the last line if the deleted
+ lines were at the end.
+ Options: None.
+
+ d\bdi\bi[\b[s\bsp\bpl\bla\bay\by]\b] b\bb[\b[u\buf\bff\bfe\ber\brs\bs]\b] |\b| s\bs[\b[c\bcr\bre\bee\ben\bns\bs]\b] |\b| t\bt[\b[a\bag\bgs\bs]\b]
+ Display buffers, screens or tags. The d\bdi\bis\bsp\bpl\bla\bay\by
+ command takes one of three additional arguments,
+ which are as follows:
+
+ b[uffers]
+ Display all buffers (including named,
+ unnamed, and numeric) that contain text.
+ s[creens]
+ Display the file names of all background
+ screens.
+ t[ags] Display the tags stack.
+
+ Line: Unchanged.
+ Options: None.
+
+ e\be[\b[d\bdi\bit\bt]\b][\b[!\b!]\b] [\b[+\b+c\bcm\bmd\bd]\b] [\b[f\bfi\bil\ble\be]\b]
+ e\bex\bx[\b[!\b!]\b] [\b[+\b+c\bcm\bmd\bd]\b] [\b[f\bfi\bil\ble\be]\b]
+ Edit a different file. If the current buffer has
+ been modified since the last complete write, the
+ command will fail. You can override this by
+ appending a "!\b!" character to the command name.
+
+ If the "+\b+c\bcm\bmd\bd" option is specified, that e\bex\bx command
+ will be executed in the new file. Any e\bex\bx command
+ may be used, although the most common use of this
+ feature is to specify a line number or search pat-
+ tern to set the initial location in the new file.
+
+ Line: If you have previously edited the file,
+ the current line will be set to your last
+ position in the file. If that position
+ does not exist, or you have not previ-
+ ously edited the file, the current line
+ will be set to the first line of the file
+ if you are in v\bvi\bi mode, and the last line
+ of the file if you are in e\bex\bx.
+ Options: None.
+
+ e\bex\bxu\bu[\b[s\bsa\bag\bge\be]\b] [\b[c\bco\bom\bmm\bma\ban\bnd\bd]\b]
+ Display usage for an e\bex\bx command. If c\bco\bom\bmm\bma\ban\bnd\bd is
+ specified, a usage statement for that command is
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b60\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ displayed. Otherwise, usage statements for all e\bex\bx
+ commands are displayed.
+
+ Line: Unchanged.
+ Options: None.
+
+ f\bf[\b[i\bil\ble\be]\b] [\b[f\bfi\bil\ble\be]\b]
+ Display and optionally change the file name. If a
+ file name is specified, the current pathname is
+ changed to the specified name. The current path-
+ name, the number of lines, and the current posi-
+ tion in the file are displayed.
+
+ Line: Unchanged.
+ Options: None.
+
+ f\bfg\bg [\b[n\bna\bam\bme\be]\b]
+ V\bVi\bi mode only. Foreground the specified screen.
+ Swap the current screen with the specified back-
+ grounded screen. If no screen is specified, the
+ first background screen is foregrounded.
+
+ Line: Set to the current line when the screen
+ was last edited.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] g\bg[\b[l\blo\bob\bba\bal\bl]\b] /\b/p\bpa\bat\btt\bte\ber\brn\bn/\b/ [\b[c\bco\bom\bmm\bma\ban\bnd\bds\bs]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] v\bv /\b/p\bpa\bat\btt\bte\ber\brn\bn/\b/ [\b[c\bco\bom\bmm\bma\ban\bnd\bds\bs]\b]
+ Apply commands to lines matching (or not matching)
+ a pattern. The lines within the given range that
+ match ("g\bg[\b[l\blo\bob\bba\bal\bl]\b]"), or do not match ("v\bv") the
+ given pattern are selected. Then, the specified
+ e\bex\bx command(s) are executed with the current line
+ (".\b.") set to each selected line. If no range is
+ specified, the entire file is searched for match-
+ ing, or not matching, lines.
+
+ Multiple commands can be specified, one per line,
+ by escaping each <\b<n\bne\bew\bwl\bli\bin\bne\be>\b> character with a back-
+ slash, or by separating commands with a "|\b|" char-
+ acter. If no commands are specified, the command
+ defaults to the p\bpr\bri\bin\bnt\bt command.
+
+ For the a\bap\bpp\bpe\ben\bnd\bd, c\bch\bha\ban\bng\bge\be and i\bin\bns\bse\ber\brt\bt commands, the
+ input text must be part of the global command
+ line. In this case, the terminating period can be
+ omitted if it ends the commands.
+
+ The v\bvi\bis\bsu\bua\bal\bl command may also be specified as one of
+ the e\bex\bx commands. In this mode, input is taken
+ from the terminal. Entering a Q\bQ command in v\bvi\bi
+ mode causes the next line matching the pattern to
+ be selected and v\bvi\bi to be reentered, until the list
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b61\b1
+
+
+ is exhausted.
+
+ The g\bgl\blo\bob\bba\bal\bl, v\bv and u\bun\bnd\bdo\bo commands cannot be used as
+ part of these commands.
+
+ The editor options a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, a\bau\but\bto\bop\bpr\bri\bin\bnt\bt and
+ r\bre\bep\bpo\bor\brt\bt are turned off for the duration of the
+ g\bgl\blo\bob\bba\bal\bl and v\bv commands.
+
+ Line: The last line modified.
+ Options: Affected by the i\big\bgn\bno\bor\bre\bec\bca\bas\bse\be and m\bma\bag\bgi\bic\bc
+ options. Turns off the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt, a\bau\but\bto\bo-\b-
+ p\bpr\bri\bin\bnt\bt and r\bre\bep\bpo\bor\brt\bt options.
+
+ h\bhe\be[\b[l\blp\bp]\b]
+ Display a help message.
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[l\bli\bin\bne\be]\b] i\bi[\b[n\bns\bse\ber\brt\bt]\b][\b[!\b!]\b]
+ The input text is inserted before the specified
+ line. Following the command name with a "!\b!"
+ character causes the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt option setting to
+ be toggled for the duration of this command.
+
+ Line: Set to the last line input; if no lines
+ were input, set to the line before the
+ target line, or to the first line of the
+ file if there are no lines preceding the
+ target line. Affected by the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt
+ and n\bnu\bum\bmb\bbe\ber\br options.
+
+ [\b[r\bra\ban\bng\bge\be]\b] j\bj[\b[o\boi\bin\bn]\b][\b[!\b!]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Join lines of text together.
+
+ A c\bco\bou\bun\bnt\bt specified to the command specifies that
+ the last line of the r\bra\ban\bng\bge\be plus c\bco\bou\bun\bnt\bt subsequent
+ lines will be joined. (Note, this differs by one
+ from the general rule where only c\bco\bou\bun\bnt\bt- subsequent
+ lines are affected.)
+
+ If the current line ends with a whitespace charac-
+ ter, all whitespace is stripped from the next
+ line. Otherwise, if the next line starts with a
+ open parenthesis ("(\b("), do nothing. Otherwise, if
+ the current line ends with a question mark ("?\b?"),
+ period (".\b.") or exclamation point ("!\b!"), insert
+ two spaces. Otherwise, insert a single space.
+
+ Appending a "!\b!" character to the command name
+ causes a simpler join with no white-space process-
+ ing.
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b62\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] l\bl[\b[i\bis\bst\bt]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Display the lines unambiguously. Tabs are dis-
+ played as "^\b^I\bI", and the end of the line is marked
+ with a "$\b$" character.
+
+ Line: Set to the last line displayed.
+ Options: Affected by the n\bnu\bum\bmb\bbe\ber\br option.
+
+ m\bma\bap\bp[\b[!\b!]\b] [\b[l\blh\bhs\bs r\brh\bhs\bs]\b]
+ Define or display maps (for v\bvi\bi only).
+
+ If "l\blh\bhs\bs" and "r\brh\bhs\bs" are not specified, the current
+ set of command mode maps are displayed. If a "!\b!"
+ character is appended to to the command, the text
+ input mode maps are displayed.
+
+ Otherwise, when the "l\blh\bhs\bs" character sequence is
+ entered in v\bvi\bi, the action is as if the correspond-
+ ing "r\brh\bhs\bs" had been entered. If a "!\b!" character
+ is appended to the command name, the mapping is
+ effective during text input mode, otherwise, it is
+ effective during command mode. This allows "l\blh\bhs\bs"
+ to have two different macro definitions at the
+ same time: one for command mode and one for input
+ mode.
+
+ Whitespace characters require escaping with a
+ <\b<l\bli\bit\bte\ber\bra\bal\bl-\b-n\bne\bex\bxt\bt>\b> character to be entered in the l\blh\bhs\bs
+ string in visual mode.
+
+ Normally, keys in the r\brh\bhs\bs string are remapped (see
+ the r\bre\bem\bma\bap\bp option), and it is possible to create
+ infinite loops. However, keys which map to them-
+ selves are not further remapped, regardless of the
+ setting of the r\bre\bem\bma\bap\bp option. For example, the
+ command ":\b:m\bma\bap\bp n\bn n\bnz\bz.\b." maps the "n\bn" key to the n\bn
+ and z\bz commands.
+
+ To exit an infinitely looping map, use the termi-
+ nal <\b<i\bin\bnt\bte\ber\brr\bru\bup\bpt\bt>\b> character.
+
+ Line: Unchanged.
+ Options: Affected by the r\bre\bem\bma\bap\bp option.
+
+ [\b[l\bli\bin\bne\be]\b] m\bma\ba[\b[r\brk\bk]\b] <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ [\b[l\bli\bin\bne\be]\b] k\bk <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>
+ Mark the line with the mark <\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>. The
+ expressions "'\b'<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>" and "`\b`<\b<c\bch\bha\bar\bra\bac\bct\bte\ber\br>\b>" can
+ then be used as an address in any command that
+ uses one.
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b63\b3
+
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] m\bm[\b[o\bov\bve\be]\b] l\bli\bin\bne\be
+ Move the specified lines after the target line. A
+ target line of 0 places the lines at the beginning
+ of the file.
+
+ Line: Set to the first of the moved lines.
+ Options: None.
+
+ m\bmk\bk[\b[e\bex\bxr\brc\bc]\b][\b[!\b!]\b] f\bfi\bil\ble\be
+ Write the abbreviations, editor options and maps
+ to the specified file. Information is written in
+ a form which can later be read back in using the
+ e\bex\bx s\bso\bou\bur\brc\bce\be command. If f\bfi\bil\ble\be already exists, the
+ m\bmk\bke\bex\bxr\brc\bc command will fail. This check can be over-
+ ridden by appending a "!\b!" character to the com-
+ mand.
+
+ Line: Unchanged.
+ Options: None.
+
+ n\bn[\b[e\bex\bxt\bt]\b][\b[!\b!]\b] [\b[f\bfi\bil\ble\be .\b..\b..\b.]\b]
+ Edit the next file from the argument list. The
+ n\bne\bex\bxt\bt command will fail if the file has been modi-
+ fied since the last complete write. This check
+ can be overridden by appending the "!\b!" character
+ to the command name. The argument list can
+ optionally be replaced by specifying a new one as
+ arguments to this command. In this case, editing
+ starts with the first file on the new list.
+
+ Line: Set as described for the e\bed\bdi\bit\bt command.
+ Options: Affected by the options a\bau\but\bto\bow\bwr\bri\bit\bte\be and
+ w\bwr\bri\bit\bte\bea\ban\bny\by.
+
+ [\b[l\bli\bin\bne\be]\b] o\bo[\b[p\bpe\ben\bn]\b] /\b/p\bpa\bat\btt\bte\ber\brn\bn/\b/ [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Enter open mode. Open mode is the same as being
+ in v\bvi\bi, but with a one-line window. All the stan-
+ dard v\bvi\bi commands are available. If a match is
+ found for the optional RE argument, the cursor is
+ set to the start of the matching pattern.
+
+ _\bT_\bh_\bi_\bs _\bc_\bo_\bm_\bm_\ba_\bn_\bd _\bi_\bs _\bn_\bo_\bt _\by_\be_\bt _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ Line: Unchanged, unless the optional RE is
+ specified, in which case it is set to the
+ line where the matching pattern is found.
+ Options: Affected by the o\bop\bpe\ben\bn option.
+
+ p\bpr\bre\be[\b[s\bse\ber\brv\bve\be]\b]
+ Save the file in a form that can later be
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b64\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ recovered using the e\bex\bx -\b-r\br option. When the file
+ is preserved, an email message is sent to the
+ user.
+
+ Line: Unchanged.
+ Options: None.
+
+ p\bpr\bre\bev\bv[\b[i\bio\bou\bus\bs]\b][\b[!\b!]\b]
+ Edit the previous file from the argument list.
+ The p\bpr\bre\bev\bvi\bio\bou\bus\bs command will fail if the file has
+ been modified since the last complete write. This
+ check can be overridden by appending the "!\b!"
+ character to the command name.
+
+ Line: Set as described for the e\bed\bdi\bit\bt command.
+ Options: Affected by the options a\bau\but\bto\bow\bwr\bri\bit\bte\be and
+ w\bwr\bri\bit\bte\bea\ban\bny\by. None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] p\bp[\b[r\bri\bin\bnt\bt]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Display the specified lines.
+
+ Line: Set to the last line displayed.
+ Options: Affected by the l\bli\bis\bst\bt and n\bnu\bum\bmb\bbe\ber\br option.
+
+ [\b[l\bli\bin\bne\be]\b] p\bpu\bu[\b[t\bt]\b] [\b[b\bbu\buf\bff\bfe\ber\br]\b]
+ Append buffer contents to the current line. If a
+ buffer is specified, its contents are appended to
+ the line, otherwise, the contents of the unnamed
+ buffer are used.
+
+ Line: Set to the line after the current line.
+ Options: None.
+
+ q\bq[\b[u\bui\bit\bt]\b][\b[!\b!]\b]
+ End the editing session. If the file has been
+ modified since the last complete write, the q\bqu\bui\bit\bt
+ command will fail. This check may be overridden
+ by appending a "!\b!" character to the command.
+
+ If there are more files to edit, the q\bqu\bui\bit\bt command
+ will fail. Appending a "!\b!" character to the com-
+ mand name or entering two q\bqu\bui\bit\bt commands (i.e. w\bwq\bq,
+ q\bqu\bui\bit\bt, x\bxi\bit\bt or Z\bZZ\bZ) in a row) will override this
+ check and the editor will exit.
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[l\bli\bin\bne\be]\b] r\br[\b[e\bea\bad\bd]\b][\b[!\b!]\b] [\b[f\bfi\bil\ble\be]\b]
+ Read a file. A copy of the specified file is
+ appended to the line. If l\bli\bin\bne\be is 0, the copy is
+ inserted at the beginning of the file. If no file
+ is specified, the current file is read; if there
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b65\b5
+
+
+ is no current file, then f\bfi\bil\ble\be becomes the current
+ file. If there is no current file and no f\bfi\bil\ble\be is
+ specified, then the r\bre\bea\bad\bd command will fail.
+
+ If f\bfi\bil\ble\be is preceded by a "!\b!" character, f\bfi\bil\ble\be is
+ treated as if it were a shell command, and passed
+ to the program named by the s\bsh\bhe\bel\bll\bl edit option.
+ The standard and standard error outputs of that
+ command are read into the file after the specified
+ line. The special meaning of the "!\b!" character
+ can be overridden by escaping it with a backslash
+ ("\\b\") character.
+
+ Line: When executed from e\bex\bx, the current line
+ is set to the last line read. When exe-
+ cuted from v\bvi\bi, the current line is set to
+ the first line read.
+ Options: None.
+
+ r\bre\bec\bc[\b[o\bov\bve\ber\br]\b] f\bfi\bil\ble\be
+ Recover f\bfi\bil\ble\be if it was previously saved. If no
+ saved file by that name exists, the r\bre\bec\bco\bov\bve\ber\br com-
+ mand behaves equivalently to the e\bed\bdi\bit\bt command.
+
+ Line: Set as described for the e\bed\bdi\bit\bt command.
+ Options: None.
+
+ r\bre\bes\bs[\b[i\biz\bze\be]\b] [\b[+\b+|\b|-\b-]\b]s\bsi\biz\bze\be
+ V\bVi\bi mode only. Grow or shrink the current screen.
+ If s\bsi\biz\bze\be is a positive, signed number, the current
+ screen is grown by that many lines. If s\bsi\biz\bze\be is a
+ negative, signed number, the current screen is
+ shrunk by that many lines. If s\bsi\biz\bze\be is not signed,
+ the current screen is set to the specified s\bsi\biz\bze\be.
+ Applicable only to split screens.
+
+ Line: Unchanged.
+ Options: None.
+
+ r\bre\bew\bw[\b[i\bin\bnd\bd]\b][\b[!\b!]\b]
+ Rewind the argument list. If the current file has
+ been modified since the last complete write, the
+ r\bre\bew\bwi\bin\bnd\bd command will fail. This check may be over-
+ ridden by appending the "!\b!" character to the com-
+ mand.
+
+ Otherwise, the current file is set to the first
+ file in the argument list.
+
+ Line: Set as described for the e\bed\bdi\bit\bt command.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be and w\bwr\bri\bit\bte\bea\ban\bny\by
+ options.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b66\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ s\bse\be[\b[t\bt]\b] [\b[o\bop\bpt\bti\bio\bon\bn[\b[=\b=[\b[v\bva\bal\blu\bue\be]\b]]\b] .\b..\b..\b.]\b] [\b[n\bno\boo\bop\bpt\bti\bio\bon\bn .\b..\b..\b.]\b] [\b[o\bop\bpt\bti\bio\bon\bn?\b?
+ .\b..\b..\b.]\b] [\b[a\bal\bll\bl]\b]
+ Display or set editor options. When no arguments
+ are specified, the editor option t\bte\ber\brm\bm, and any
+ editor options whose values have been changed from
+ the default settings are displayed. If the argu-
+ ment a\bal\bll\bl is specified, the values of all of editor
+ options are displayed.
+
+ Specifying an option name followed by the charac-
+ ter "?\b?" causes the current value of that option
+ to be displayed. The "?\b?" can be separated from
+ the option name by whitespace characters. The "?\b?"
+ is necessary only for Boolean valued options.
+ Boolean options can be given values by the form
+ "s\bse\bet\bt o\bop\bpt\bti\bio\bon\bn" to turn them on, or "s\bse\bet\bt n\bno\boo\bop\bpt\bti\bio\bon\bn" to
+ turn them off. String and numeric options can be
+ assigned by the form "s\bse\bet\bt o\bop\bpt\bti\bio\bon\bn=\b=v\bva\bal\blu\bue\be". Any
+ whitespace characters in strings can be included
+ literally by preceding each with a backslash.
+ More than one option can be set or listed by a
+ single set command, by specifying multiple argu-
+ ments, each separated from the next by whitespace
+ characters.
+
+ Line: Unchanged.
+ Options: None.
+
+ s\bsh\bh[\b[e\bel\bll\bl]\b]
+ Run the shell program. The program named by the
+ s\bsh\bhe\bel\bll\bl option is run with a -\b-i\bi (for interactive)
+ flag. Editing is resumed when that program exits.
+
+ Line: Unchanged.
+ Options: Affected by the s\bsh\bhe\bel\bll\bl option.
+
+ s\bso\bo[\b[u\bur\brc\bce\be]\b] f\bfi\bil\ble\be
+ Read and execute e\bex\bx commands from a file. S\bSo\bou\bur\brc\bce\be
+ commands may be nested.
+
+ Line: Unchanged.
+ Options: None.
+
+ s\bsp\bp[\b[l\bli\bit\bt]\b] [\b[f\bfi\bil\ble\be .\b..\b..\b.]\b]
+ V\bVi\bi mode only. Split the screen. The current
+ screen is split into two screens, of approximately
+ equal size. If the cursor is in the lower half of
+ the screen, the screen will split up, i.e. the new
+ screen will be above the old one. If the cursor
+ is in the upper half of the screen, the new screen
+ will be below the old one.
+
+ If f\bfi\bil\ble\be is specified, the new screen is editing
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b67\b7
+
+
+ that file, otherwise, both screens are editing the
+ same file, and changes in each will be be
+ reflected in the other. The argument list for the
+ new screen consists of the list of files specified
+ as arguments to this command, or, the current
+ pathname if no files are specified.
+
+ Line: If f\bfi\bil\ble\be is specified, set as for the e\bed\bdi\bit\bt
+ command, otherwise unchanged.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] s\bs[\b[u\bub\bbs\bst\bti\bit\btu\but\bte\be]\b] [\b[/\b/p\bpa\bat\btt\bte\ber\brn\bn/\b/r\bre\bep\bpl\bla\bac\bce\be/\b/]\b] [\b[o\bop\bpt\bti\bio\bon\bns\bs]\b]
+ [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] &\b& [\b[o\bop\bpt\bti\bio\bon\bns\bs]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] ~\b~ [\b[o\bop\bpt\bti\bio\bon\bns\bs]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Make substitutions. Replace the first instance of
+ p\bpa\bat\btt\bte\ber\brn\bn with the string r\bre\bep\bpl\bla\bac\bce\be on the specified
+ line(s). If the "/\b/p\bpa\bat\btt\bte\ber\brn\bn/\b/r\bre\bep\bpl\bl/\b/" argument is not
+ specified, the "/\b/p\bpa\bat\btt\bte\ber\brn\bn/\b/r\bre\bep\bpl\bl/\b/" from the previous
+ s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command is used.
+
+ If o\bop\bpt\bti\bio\bon\bns\bs includes the letter "c\bc" (confirm), you
+ will be prompted for confirmation before each
+ replacement is done. An affirmative response (in
+ English, a "y\by" character) causes the replacement
+ to be made. A quit response (in English, a "q\bq"
+ character) causes the s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command to be
+ terminated. Any other response causes the
+ replacement not to be made, and the s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be
+ command continues. If o\bop\bpt\bti\bio\bon\bns\bs includes the letter
+ "g\bg" (global), all nonoverlapping instances of p\bpa\bat\bt-\b-
+ t\bte\ber\brn\bn in the line are replaced.
+
+ The &\b& version of the command is the same as not
+ specifying a pattern or replacement string to the
+ s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command, and the "&\b&" is replaced by the
+ pattern and replacement information from the pre-
+ vious substitute command.
+
+ The ~\b~ version of the command is the same as &\b& and
+ s\bs, except that the search pattern used is the last
+ RE used in _\ba_\bn_\by command, not necessarily the one
+ used in the last s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command.
+
+ For example, in the sequence
+
+ s\bs/\b/r\bre\bed\bd/\b/b\bbl\blu\bue\be/\b/
+ /\b/g\bgr\bre\bee\ben\bn
+ ~\b~
+
+ the "~\b~" is equivalent to "s\bs/\b/g\bgr\bre\bee\ben\bn/\b/b\bbl\blu\bue\be/\b/".
+
+ The s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be command may be interrupted, using
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b68\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ the terminal interrupt character. All substitu-
+ tions completed before the interrupt are retained.
+
+ Line: Set to the last line upon which a substi-
+ tution was made.
+ Options: Affected by the i\big\bgn\bno\bor\bre\bec\bca\bas\bse\be and m\bma\bag\bgi\bic\bc
+ option.
+
+ s\bsu\bu[\b[s\bsp\bpe\ben\bnd\bd]\b][\b[!\b!]\b]
+ s\bst\bt[\b[o\bop\bp]\b][\b[!\b!]\b]
+ <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-Z\bZ>\b>
+ Suspend the edit session. Appending a "!\b!" char-
+ acter to these commands turns off the a\bau\but\bto\bow\bwr\bri\bit\bte\be
+ option for the command.
+
+ Line: Unchanged.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be and w\bwr\bri\bit\bte\bea\ban\bny\by
+ options.
+
+ t\bta\ba[\b[g\bg]\b][\b[!\b!]\b] t\bta\bag\bgs\bst\btr\bri\bin\bng\bg
+ Edit the file containing the specified tag.
+ Search for the tagstring, which can be in a dif-
+ ferent file. If the tag is in a different file,
+ then the new file is edited. If the current file
+ has been modified since the last complete write,
+ the t\bta\bag\bg command will fail. This check can be
+ overridden by appending the "!\b!" character to the
+ command name.
+
+ The t\bta\bag\bg command searches for t\bta\bag\bgs\bst\btr\bri\bin\bng\bg in the tags
+ file(s) specified by the option. (See _\bc_\bt_\ba_\bg_\bs(1)
+ for more information on tags files.)
+
+ Line: Set to the line indicated by the tag.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be, t\bta\bag\bgl\ble\ben\bng\bgt\bth\bh,
+ t\bta\bag\bgs\bs and w\bwr\bri\bit\bte\bea\ban\bny\by options.
+
+ t\bta\bag\bgp\bp[\b[o\bop\bp]\b][\b[!\b!]\b] [\b[f\bfi\bil\ble\be |\b| n\bnu\bum\bmb\bbe\ber\br]\b]
+ Pop to the specified tag in the tags stack. If
+ neither f\bfi\bil\ble\be or n\bnu\bum\bmb\bbe\ber\br is specified, the t\bta\bag\bgp\bpo\bop\bp
+ command pops to the most recent entry on the tags
+ stack. If f\bfi\bil\ble\be or n\bnu\bum\bmb\bbe\ber\br is specified, the t\bta\bag\bgp\bpo\bop\bp
+ command pops to the most recent entry in the tags
+ stack for that file, or numbered entry in the tags
+ stack, respectively. (See the d\bdi\bis\bsp\bpl\bla\bay\by command for
+ information on displaying the tags stack.)
+
+ If the file has been modified since the last com-
+ plete write, the t\bta\bag\bgp\bpo\bop\bp command will fail. This
+ check may be overridden by appending a "!\b!" char-
+ acter to the command name.
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-6\b69\b9
+
+
+ Line: Set to the line indicated by the tag.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be and w\bwr\bri\bit\bte\bea\ban\bny\by
+ options.
+
+ t\bta\bag\bgt\bt[\b[o\bop\bp]\b][\b[!\b!]\b]
+ Pop to the least recent tag on the tags stack,
+ clearing the tags stack.
+
+ If the file has been modified since the last com-
+ plete write, the t\bta\bag\bgt\bto\bop\bp command will fail. This
+ check may be overridden by appending a "!\b!" char-
+ acter to the command name.
+
+ Line: Set to the line indicated by the tag.
+ Options: Affected by the a\bau\but\bto\bow\bwr\bri\bit\bte\be and w\bwr\bri\bit\bte\bea\ban\bny\by
+ options.
+
+ u\bun\bna\ba[\b[b\bbb\bbr\bre\bev\bv]\b] l\blh\bhs\bs
+ Delete an abbreviation. Delete l\blh\bhs\bs from the cur-
+ rent list of abbreviations.
+
+ Line: Unchanged.
+ Options: None.
+
+ u\bu[\b[n\bnd\bdo\bo]\b]
+ Undo the last change made to the file. Changes
+ made by g\bgl\blo\bob\bba\bal\bl, v\bv, v\bvi\bis\bsu\bua\bal\bl and map sequences are
+ considered a single command. If repeated, the u\bu
+ command alternates between these two states, and
+ is its own inverse.
+
+ Line: Set to the last line modified by the com-
+ mand.
+ Options: None.
+
+ u\bun\bnm\bm[\b[a\bap\bp]\b][\b[!\b!]\b] l\blh\bhs\bs
+ Unmap a mapped string. Delete the command mode
+ map definition for l\blh\bhs\bs. If a "!\b!" character is
+ appended to the command name, delete the text
+ input mode map definition instead.
+
+ Line: Unchanged.
+ Options: None.
+
+ v\bve\be[\b[r\brs\bsi\bio\bon\bn]\b]
+ Display the version of the e\bex\bx/\b/v\bvi\bi editor.
+
+ [\b[l\bli\bin\bne\be]\b] v\bvi\bi[\b[s\bsu\bua\bal\bl]\b] [\b[t\bty\byp\bpe\be]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ E\bEx\bx mode only. Enter v\bvi\bi. The t\bty\byp\bpe\be is optional,
+ and can be "-\b-", "+\b+" or "^\b^", as in the e\bex\bx z\bz com-
+ mand, to specify the position of the specified
+ line in the screen window. (The default is to
+ place the line at the top of the screen window.)
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b70\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ A c\bco\bou\bun\bnt\bt specifies the number of lines that will
+ initially be displayed. (The default is the value
+ of the w\bwi\bin\bnd\bdo\bow\bw editor option.)
+
+ Line: Unchanged unless l\bli\bin\bne\be is specified, in
+ which case it is set to that line.
+ Options: None.
+
+ v\bvi\bi[\b[s\bsu\bua\bal\bl]\b][\b[!\b!]\b] [\b[+\b+c\bcm\bmd\bd]\b] [\b[f\bfi\bil\ble\be]\b]
+ V\bVi\bi mode only. Edit a new file. Identical to the
+ "e\bed\bdi\bit\bt[\b[!\b!]\b] [\b[+\b+c\bcm\bmd\bd]\b] [\b[f\bfi\bil\ble\be]\b]" command.
+
+ v\bvi\biu\bu[\b[s\bsa\bag\bge\be]\b] [\b[c\bco\bom\bmm\bma\ban\bnd\bd]\b]
+ Display usage for a v\bvi\bi command. If c\bco\bom\bmm\bma\ban\bnd\bd is
+ specified, a usage statement for that command is
+ displayed. Otherwise, usage statements for all v\bvi\bi
+ commands are displayed.
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[r\bra\ban\bng\bge\be]\b] w\bw[\b[r\bri\bit\bte\be]\b][\b[!\b!]\b] [\b[>\b>>\b>]\b] [\b[f\bfi\bil\ble\be]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] w\bw[\b[r\bri\bit\bte\be]\b] [\b[!\b!]\b] [\b[f\bfi\bil\ble\be]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] w\bwn\bn[\b[!\b!]\b] [\b[>\b>>\b>]\b] [\b[f\bfi\bil\ble\be]\b]
+ [\b[r\bra\ban\bng\bge\be]\b] w\bwq\bq[\b[!\b!]\b] [\b[>\b>>\b>]\b] [\b[f\bfi\bil\ble\be]\b]
+ Write the file. The specified lines (the entire
+ file, if no range is given) is written to f\bfi\bil\ble\be.
+ If f\bfi\bil\ble\be is not specified, the current pathname is
+ used. If f\bfi\bil\ble\be is specified, and it exists, or if
+ the current pathname was set using the f\bfi\bil\ble\be com-
+ mand, and the file already exists, these commands
+ will fail. Appending a "!\b!" character to the com-
+ mand name will override this check and the write
+ will be attempted, regardless.
+
+ Specifying the optional ">\b>>\b>" string will cause the
+ write to be appended to the file, in which case no
+ tests are made for the file already existing.
+
+ If the file is preceded by a "!\b!" character, the
+ program named by the shell edit option is invoked
+ with file as its second argument, and the speci-
+ fied lines are passed as standard input to that
+ command. The "!\b!" in this usage must be separated
+ from command name by at least one whitespace char-
+ acter. The special meaning of the "!\b!" may be
+ overridden by escaping it with a backslash ("\\b\")
+ character.
+
+ The w\bwq\bq version of the write command will exit the
+ editor after writing the file, if there are no
+ further files to edit. Appending a "!\b!" character
+ to the command name or entering two "quit"
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b71\b1
+
+
+ commands (i.e. w\bwq\bq, q\bqu\bui\bit\bt, x\bxi\bit\bt or Z\bZZ\bZ) in a row)
+ will override this check and the editor will exit,
+ ignoring any files that have not yet been edited.
+
+ The w\bwn\bn version of the write command will move to
+ the next file after writing the file, unless the
+ write fails.
+
+ Line: Unchanged.
+ Options: Affected by the r\bre\bea\bad\bdo\bon\bnl\bly\by and w\bwr\bri\bit\bte\bea\ban\bny\by
+ options.
+
+ [\b[r\bra\ban\bng\bge\be]\b] x\bx[\b[i\bit\bt]\b][\b[!\b!]\b] [\b[f\bfi\bil\ble\be]\b]
+ Write the file if it has been modified. The spec-
+ ified lines are written to f\bfi\bil\ble\be, if the file has
+ been modified since the last complete write to any
+ file. If no r\bra\ban\bng\bge\be is specified, the entire file
+ is written.
+
+ The x\bxi\bit\bt command will exit the editor after writing
+ the file, if there are no further files to edit.
+ Appending a "!\b!" character to the command name or
+ entering two "quit" commands (i.e. w\bwq\bq, q\bqu\bui\bit\bt, x\bxi\bit\bt
+ or Z\bZZ\bZ) in a row) will override this check and the
+ editor will exit, ignoring any files that have not
+ yet been edited.
+
+ Line: Unchanged.
+ Options: Affected by the r\bre\bea\bad\bdo\bon\bnl\bly\by and w\bwr\bri\bit\bte\bea\ban\bny\by
+ options.
+
+ [\b[r\bra\ban\bng\bge\be]\b] y\bya\ba[\b[n\bnk\bk]\b] [\b[b\bbu\buf\bff\bfe\ber\br]\b] [\b[c\bco\bou\bun\bnt\bt]\b]
+ Copy the specified lines to a buffer. If no
+ buffer is specified, the unnamed buffer is used.
+
+ Line: Unchanged.
+ Options: None.
+
+ [\b[l\bli\bin\bne\be]\b] z\bz [\b[t\bty\byp\bpe\be]\b] [\b[c\bco\bou\bun\bnt\bt]\b] [\b[f\bfl\bla\bag\bgs\bs]\b]
+ Adjust the window. If no t\bty\byp\bpe\be is specified, then
+ c\bco\bou\bun\bnt\bt lines following the specified line are dis-
+ played. The default c\bco\bou\bun\bnt\bt is the value of the
+ w\bwi\bin\bnd\bdo\bow\bw option. The t\bty\byp\bpe\be argument changes the
+ position at which l\bli\bin\bne\be is displayed on the screen
+ by changing the number of lines displayed before
+ and after l\bli\bin\bne\be. The following t\bty\byp\bpe\be characters may
+ be used:
+
+ - Place the line at the bottom of the
+ screen.
+ + Place the line at the top of the screen.
+ . Place the line in the middle of the
+ screen.
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b72\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs)\b)
+
+
+ ^ Write out count lines starting c\bco\bou\bun\bnt\bt *\b* 2\b2
+ lines before l\bli\bin\bne\be; the net effect of this
+ is that a "z\bz^\b^" command following a z\bz com-
+ mand writes the previous page.
+ = Center l\bli\bin\bne\be on the screen with a line of
+ hyphens displayed immediately before and
+ after it. The number of preceding and
+ following lines of text displayed are
+ reduced to account for those lines.
+
+ Line: Set to the last line displayed, with the
+ exception of the t\bty\byp\bpe\be, where the current
+ line is set to the line specified by the
+ command.
+ Options: Affected by the s\bsc\bcr\bro\bol\bll\bl option.
+
+ 1\b15\b5.\b. S\bSe\bet\bt O\bOp\bpt\bti\bio\bon\bns\bs
+
+ There are a large number of options that may be
+ set (or unset) to change the editor's behavior. This
+ section describes the options, their abbreviations and
+ their default values.
+
+ In each entry below, the first part of the tag
+ line is the full name of the option, followed by any
+ equivalent abbreviations. (Regardless of the abbrevia-
+ tions, it is only necessary to use the minimum number
+ of characters necessary to distinguish an abbreviation
+ from all other commands for it to be accepted, in
+ n\bne\bex\bx/n\bnv\bvi\bi. Historically, only the full name and the
+ official abbreviations were accepted by e\bex\bx/v\bvi\bi. Using
+ full names in your startup files and environmental
+ variables will probably make them more portable.) The
+ part in square brackets is the default value of the
+ option. Most of the options are boolean, i.e. they are
+ either on or off, and do not have an associated value.
+
+ Options apply to both e\bex\bx and v\bvi\bi modes, unless oth-
+ erwise specified.
+
+ For information on modifying the options or to
+ display the options and their current values, see the
+ "set" command in the section entitled "E\bEx\bx C\bCo\bom\bmm\bma\ban\bnd\bds\bs".
+
+ a\bal\blt\btw\bwe\ber\bra\bas\bse\be [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. Change how v\bvi\bi does word erase during
+ text input. When this option is set, text is bro-
+ ken up into three classes: alphabetic, numeric and
+ underscore characters, other nonblank characters,
+ and blank characters. Changing from one class to
+ another marks the end of a word. In addition, the
+ class of the first character erased is ignored
+ (which is exactly what you want when erasing
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b73\b3
+
+
+ pathname components).
+
+ a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt,\b, a\bai\bi [\b[o\bof\bff\bf]\b]
+ If this option is set, whenever you create a new
+ line (using the v\bvi\bi A\bA, a\ba, C\bC, c\bc, I\bI, i\bi, O\bO, o\bo, R\bR, r\br,
+ S\bS, and s\bs commands, or the e\bex\bx a\bap\bpp\bpe\ben\bnd\bd, c\bch\bha\ban\bng\bge\be, and
+ i\bin\bns\bse\ber\brt\bt commands) the new line is automatically
+ indented to align the cursor with the first non-
+ blank character of the line from which you created
+ it. Lines are indented using tab characters to
+ the extent possible (based on the value of the
+ t\bta\bab\bbs\bst\bto\bop\bp option) and then using space characters as
+ necessary. For commands inserting text into the
+ middle of a line, any blank characters to the
+ right of the cursor are discarded, and the first
+ nonblank character to the right of the cursor is
+ aligned as described above.
+
+ The indent characters are themselves somewhat spe-
+ cial. If you do not enter more characters on the
+ new line before moving to another line, or enter-
+ ing <\b<e\bes\bsc\bca\bap\bpe\be>\b>, the indent character will be deleted
+ and the line will be empty. For example, if you
+ enter <\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b> twice in succession, the
+ line created by the first <\b<c\bca\bar\brr\bri\bia\bag\bge\be-\b-r\bre\bet\btu\bur\brn\bn>\b> will
+ not have any characters in it, regardless of the
+ indentation of the previous or subsequent line.
+
+ Indent characters also require that you enter
+ additional erase characters to delete them. For
+ example, if you have an indented line, containing
+ only blanks, the first <\b<w\bwo\bor\brd\bd-\b-e\ber\bra\bas\bse\be>\b> character you
+ enter will erase up to end of the indent charac-
+ ters, and the second will erase back to the begin-
+ ning of the line. (Historically, only the <\b<c\bco\bon\bn-\b-
+ t\btr\bro\bol\bl-\b-D\bD>\b> key would erase the indent characters.
+ Both the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> key and the usual erase keys
+ work in n\bnv\bvi\bi.) In addition, if the cursor is posi-
+ tioned at the end of the indent characters, the
+ keys "0\b0<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>" will erase all of the indent
+ characters for the current line, resetting the
+ indentation level to 0. Similarly, the keys
+ "^\b^<\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b>" will erase all of the indent char-
+ acters for the current line, leaving the indenta-
+ tion level for future created lines unaffected.
+
+ Finally, if the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt option is set, the S\bS
+ and c\bcc\bc commands change from the first nonblank of
+ the line to the end of the line, instead of from
+ the beginning of the line to the end of the line.
+
+ a\bau\but\bto\bop\bpr\bri\bin\bnt\bt,\b, a\bap\bp [\b[o\bof\bff\bf]\b]
+ E\bEx\bx only. Cause the current line to be
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b74\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b)
+
+
+ automatically displayed after the e\bex\bx commands <\b<,
+ >\b>, c\bco\bop\bpy\by, d\bde\bel\ble\bet\bte\be, j\bjo\boi\bin\bn, m\bmo\bov\bve\be, p\bpu\but\bt, t\bt, U\bUn\bnd\bdo\bo, and
+ u\bun\bnd\bdo\bo. This automatic display is suppressed during
+ g\bgl\blo\bob\bba\bal\bl and v\bv commands, and for any command where
+ optional flags are used to explicitly display the
+ line.
+
+ a\bau\but\bto\bow\bwr\bri\bit\bte\be,\b, a\baw\bw [\b[o\bof\bff\bf]\b]
+ If this option is set, the v\bvi\bi !\b!, ^\b^^\b^, ^\b^]\b] and <\b<c\bco\bon\bn-\b-
+ t\btr\bro\bol\bl-\b-Z\bZ>\b> commands, and the e\bex\bx e\bed\bdi\bit\bt, n\bne\bex\bxt\bt, r\bre\bew\bwi\bin\bnd\bd,
+ s\bst\bto\bop\bp, s\bsu\bus\bsp\bpe\ben\bnd\bd, t\bta\bag\bg, t\bta\bag\bgp\bpo\bop\bp, and t\bta\bag\bgt\bto\bop\bp commands
+ automatically write the current file back to the
+ current file name if it has been modified since it
+ was last written. If the write fails, the command
+ fails and goes no further.
+
+ Appending the optional force flag character "!\b!"
+ to the e\bex\bx commands n\bne\bex\bxt\bt, r\bre\bew\bwi\bin\bnd\bd, s\bst\bto\bop\bp, s\bsu\bus\bsp\bpe\ben\bnd\bd,
+ t\bta\bag\bg, t\bta\bag\bgp\bpo\bop\bp, and t\bta\bag\bgt\bto\bop\bp stops the automatic write
+ from being attempted.
+
+ (Historically, the n\bne\bex\bxt\bt command ignored the
+ optional force flag.) Note, the e\bex\bx commands e\bed\bdi\bit\bt,
+ q\bqu\bui\bit\bt, s\bsh\bhe\bel\bll\bl, and x\bxi\bit\bt are _\bn_\bo_\bt affected by the
+ a\bau\but\bto\bow\bwr\bri\bit\bte\be option.
+
+ The a\bau\but\bto\bow\bwr\bri\bit\bte\be option is ignored if the file is
+ considered read-only for any reason.
+
+ b\bba\bac\bck\bku\bup\bp [\b["\b""\b"]\b]
+ If this option is set, it specifies a pathname
+ used as a backup file, and, whenever a file is
+ written, the file's current contents are copied to
+ it. The pathname is "#\b#", "%\b%" and "!\b!" expanded.
+
+ If the first character of the pathname is "N\bN", a
+ version number is appended to the pathname (and
+ the "N\bN" character is then discarded). Version
+ numbers are always incremented, and each backup
+ file will have a version number one greater than
+ the highest version number currently found in the
+ directory.
+
+ Backup files must be regular files, owned by the
+ real user ID of the user running the editor, and
+ not accessible by any other user.
+
+ b\bbe\bea\bau\but\bti\bif\bfy\by,\b, b\bbf\bf [\b[o\bof\bff\bf]\b]
+ If this option is set, all control characters that
+ are not currently being specially interpreted,
+ other than <\b<t\bta\bab\bb>\b>, <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>, and <\b<f\bfo\bor\brm\bm-\b-f\bfe\bee\bed\bd>\b>, are
+ discarded from commands read in by e\bex\bx from command
+ files, and from input text entered to v\bvi\bi (either
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b75\b5
+
+
+ into the file or to the colon command line). Text
+ files read by e\bex\bx/v\bvi\bi are _\bn_\bo_\bt affected by the b\bbe\bea\bau\bu-\b-
+ t\bti\bif\bfy\by option.
+
+ c\bcd\bdp\bpa\bat\bth\bh [\b[e\ben\bnv\bvi\bir\bro\bon\bnm\bme\ben\bnt\bt v\bva\bar\bri\bia\bab\bbl\ble\be C\bCD\bDP\bPA\bAT\bTH\bH,\b, o\bor\br c\bcu\bur\brr\bre\ben\bnt\bt d\bdi\bir\bre\bec\bc-\b-
+ t\bto\bor\bry\by]\b]
+ This option is used to specify a colon separated
+ list of directories which are used as path pre-
+ fixes for any relative path names used as argu-
+ ments for the c\bcd\bd command. The value of this
+ option defaults to the value of the environmental
+ variable C\bCD\bDP\bPA\bAT\bTH\bH if it is set, otherwise to the
+ current directory. For compatibility with the
+ POSIX 1003.2 shell, the c\bcd\bd command does _\bn_\bo_\bt check
+ the current directory as a path prefix for rela-
+ tive path names unless it is explicitly specified.
+ It may be so specified by entering an empty string
+ or a ".\b." character into the C\bCD\bDP\bPA\bAT\bTH\bH variable or
+ the option value.
+
+ c\bco\bol\blu\bum\bmn\bns\bs,\b, c\bco\bo [\b[8\b80\b0]\b]
+ The number of columns in the screen. Setting this
+ option causes e\bex\bx/v\bvi\bi to set (or reset) the environ-
+ mental variable C\bCO\bOL\bLU\bUM\bMN\bNS\bS. See the section entitled
+ "S\bSi\biz\bzi\bin\bng\bg t\bth\bhe\be S\bSc\bcr\bre\bee\ben\bn" more information.
+
+ c\bco\bom\bmm\bme\ben\bnt\bt [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. If the first non-empty line of the file
+ begins with the string "/\b/*\b*", this option causes v\bvi\bi
+ to skip to the end of that C-language comment
+ (probably a terribly boring legal notice) before
+ displaying the file.
+
+ d\bdi\bir\bre\bec\bct\bto\bor\bry\by,\b, d\bdi\bir\br [\b[e\ben\bnv\bvi\bir\bro\bon\bnm\bme\ben\bnt\bt v\bva\bar\bri\bia\bab\bbl\ble\be T\bTM\bMP\bPD\bDI\bIR\bR,\b, o\bor\br /\b/t\btm\bmp\bp]\b]
+ The directory where temporary files are created.
+ The environmental variable T\bTM\bMP\bPD\bDI\bIR\bR is used as the
+ default value if it exists, otherwise /\b/t\btm\bmp\bp is
+ used.
+
+ e\bed\bdc\bco\bom\bmp\bpa\bat\bti\bib\bbl\ble\be,\b, e\bed\bd [\b[o\bof\bff\bf]\b]
+ Remember the values of the "c" and "g" suffices to
+ the s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be commands, instead of initializing
+ them as unset for each new command. Specifying
+ pattern and replacement strings to the s\bsu\bub\bbs\bst\bti\bit\btu\but\bte\be
+ command unsets the "c" and "g" suffices as well.
+
+ e\ber\brr\bro\bor\brb\bbe\bel\bll\bls\bs,\b, e\beb\bb [\b[o\bof\bff\bf]\b]
+ E\bEx\bx only. E\bEx\bx error messages are normally presented
+ in inverse video. If that is not possible for the
+ terminal, setting this option causes error mes-
+ sages to be announced by ringing the terminal
+ bell.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b76\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b)
+
+
+ e\bex\bxr\brc\bc,\b, e\bex\bx [\b[o\bof\bff\bf]\b]
+ If this option is turned off in the system or
+ $HOME startup files, the local startup files are
+ never read (unless they are the same as the system
+ or $HOME startup files). Turning it on has no
+ effect, i.e. the normal checks for local startup
+ files are performed, regardless. See the section
+ entitled "S\bSt\bta\bar\brt\btu\bup\bp I\bIn\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn" for more informa-
+ tion.
+
+ e\bex\bxt\bte\ben\bnd\bde\bed\bd [\b[o\bof\bff\bf]\b]
+ This option causes all regular expressions to be
+ treated as POSIX 1003.2 Extended Regular Expres-
+ sions (which are similar to historic _\be_\bg_\br_\be_\bp(1)
+ style expressions).
+
+ f\bfl\bla\bas\bsh\bh [\b[o\bon\bn]\b]
+ This option causes the screen to flash instead of
+ beeping the keyboard, on error, if the terminal
+ has the capability.
+
+ h\bha\bar\brd\bdt\bta\bab\bbs\bs,\b, h\bht\bt [\b[8\b8]\b]
+ This option defines the spacing between hardware
+ tab settings, i.e. the tab expansion done by the
+ operating system and/or the terminal itself. As
+ n\bne\bex\bx/n\bnv\bvi\bi never writes <\b<t\bta\bab\bb>\b> characters to the ter-
+ minal, unlike historic versions of e\bex\bx/v\bvi\bi, this
+ option does not currently have any affect.
+
+ i\big\bgn\bno\bor\bre\bec\bca\bas\bse\be,\b, i\bic\bc [\b[o\bof\bff\bf]\b]
+ This option causes regular expressions, both in e\bex\bx
+ commands and in searches, to be evaluated in a
+ case-insensitive manner.
+
+ k\bke\bey\byt\bti\bim\bme\be [\b[6\b6]\b]
+ The 10th's of a second e\bex\bx/v\bvi\bi waits for a subse-
+ quent key to complete a key mapping.
+
+ l\ble\bef\bft\btr\bri\big\bgh\bht\bt [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. This option causes the screen to be
+ scrolled left-right to view lines longer than the
+ screen, instead of the traditional v\bvi\bi screen
+ interface which folds long lines at the right-hand
+ margin of the terminal.
+
+ l\bli\bin\bne\bes\bs,\b, l\bli\bi [\b[2\b24\b4]\b]
+ V\bVi\bi only. The number of lines in the screen. Set-
+ ting this option causes e\bex\bx/v\bvi\bi to set (or reset)
+ the environmental variable L\bLI\bIN\bNE\bES\bS. See the section
+ entitled "S\bSi\biz\bzi\bin\bng\bg t\bth\bhe\be S\bSc\bcr\bre\bee\ben\bn" for more information.
+
+ l\bli\bis\bsp\bp [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. This option changes the behavior of the
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b77\b7
+
+
+ v\bvi\bi (\b(, )\b), {\b{, }\b}, [\b[[\b[ and ]\b]]\b] commands to match the
+ Lisp language. Also, the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt option's
+ behavior is changed to be appropriate for Lisp.
+
+ _\bT_\bh_\bi_\bs _\bo_\bp_\bt_\bi_\bo_\bn _\bi_\bs _\bn_\bo_\bt _\by_\be_\bt _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ l\bli\bis\bst\bt [\b[o\bof\bff\bf]\b]
+ This option causes lines to be displayed in an
+ unambiguous fashion. Specifically, tabs are dis-
+ played as control characters, i.e. "^\b^I\bI", and the
+ ends of lines are marked with a "$\b$" character.
+
+ l\blo\boc\bck\bk [\b[o\bon\bn]\b]
+ This option causes the editor to attempt to get an
+ exclusive lock on any file being edited, read or
+ written. Reading or writing a file that cannot be
+ locked produces a warning message, but no other
+ effect. Editing a file that cannot be locked
+ results in a read only edit session, as if the
+ r\bre\bea\bad\bdo\bon\bnl\bly\by edit option were set.
+
+ m\bma\bag\bgi\bic\bc [\b[o\bon\bn]\b]
+ This option is on by default. Turning the m\bma\bag\bgi\bic\bc
+ option off causes all regular expression charac-
+ ters except for "^\b^" and "$\b$", to be treated as
+ ordinary characters. To re-enable characters
+ individually, when the m\bma\bag\bgi\bic\bc option is off, pre-
+ cede them with a backslash "\\b\" character. See the
+ section entitled "R\bRe\beg\bgu\bul\bla\bar\br E\bEx\bxp\bpr\bre\bes\bss\bsi\bio\bon\bns\bs a\ban\bnd\bd R\bRe\bep\bpl\bla\bac\bce\be-\b-
+ m\bme\ben\bnt\bt S\bSt\btr\bri\bin\bng\bgs\bs" for more information.
+
+ m\bma\bat\btc\bch\bht\bti\bim\bme\be [\b[7\b7]\b]
+ V\bVi\bi only. The 10th's of a second v\bvi\bi pauses on the
+ matching character when the s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh option is
+ set.
+
+ m\bme\bes\bsg\bg [\b[o\bon\bn]\b]
+ This option allows other users to contact you
+ using the _\bt_\ba_\bl_\bk(1) and _\bw_\br_\bi_\bt_\be(1) utilities, while
+ you are editing. E\bEx\bx/v\bvi\bi does not turn message on,
+ i.e. if messages were turned off when the editor
+ was invoked, they will stay turned off. This
+ option only permits you to disallow messages for
+ the edit session. See the _\bm_\be_\bs_\bg(1) utility for
+ more information.
+
+ m\bms\bsg\bgc\bca\bat\bt [\b[.\b./\b/]\b]
+ This option selects a message catalog to be used
+ to display error and informational messages in a
+ specified language. If the value of this option
+ ends with a '/', it is treated as the name of a
+ directory that contains a message catalog
+ "v\bvi\bi_\b_X\bXX\bXX\bXX\bX", where "X\bXX\bXX\bXX\bX" is the value of the L\bLA\bAN\bNG\bG
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b78\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b)
+
+
+ environmental variable, if it's set, or the value
+ of the L\bLC\bC_\b_M\bME\bES\bSS\bSA\bAG\bGE\bES\bS environmental variable if it's
+ not. If neither of those environmental variables
+ are set, or if the option doesn't end in a '/',
+ the option is treated as the full path name of the
+ message catalog to use.
+
+ If any messages are missing from the catalog, the
+ backup text (English) is used instead.
+
+ See the distribution file c\bca\bat\bta\bal\blo\bog\bg/\b/R\bRE\bEA\bAD\bDM\bME\bE for addi-
+ tional information on building and installing mes-
+ sage catalogs.
+
+ m\bmo\bod\bde\bel\bli\bin\bne\bes\bs,\b, m\bmo\bod\bde\bel\bli\bin\bne\be [\b[o\bof\bff\bf]\b]
+ If the m\bmo\bod\bde\bel\bli\bin\bne\bes\bs option is set, e\bex\bx/v\bvi\bi has histori-
+ cally scanned the first and last five lines of
+ each file as it is read for editing, looking for
+ any e\bex\bx commands that have been placed in those
+ lines. After the startup information has been
+ processed, and before the user starts editing the
+ file, any commands embedded in the file are exe-
+ cuted.
+
+ Commands were recognized by the letters "e" or "v"
+ followed by "x" or "i", at the beginning of a line
+ or following a tab or space character, and fol-
+ lowed by a ":", an e\bex\bx command, and another ":".
+
+ This option is a security problem of immense pro-
+ portions, and should not be used under any circum-
+ stances.
+
+ _\bT_\bh_\bi_\bs _\bo_\bp_\bt_\bi_\bo_\bn _\bw_\bi_\bl_\bl _\bn_\be_\bv_\be_\br _\bb_\be _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ n\bnu\bum\bmb\bbe\ber\br,\b, n\bnu\bu [\b[o\bof\bff\bf]\b]
+ Precede each line displayed with its current line
+ number.
+
+ o\boc\bct\bta\bal\bl [\b[o\bof\bff\bf]\b]
+ Display unknown characters as octal numbers,
+ instead of the default hexadecimal.
+
+ o\bop\bpe\ben\bn [\b[o\bon\bn]\b]
+ E\bEx\bx only. If this option is not set, the o\bop\bpe\ben\bn and
+ v\bvi\bis\bsu\bua\bal\bl commands are disallowed.
+
+ o\bop\bpt\bti\bim\bmi\biz\bze\be,\b, o\bop\bpt\bt [\b[o\bon\bn]\b]
+ V\bVi\bi only. Throughput of text is expedited by set-
+ ting the terminal not to do automatic carriage
+ returns when printing more than one (logical) line
+ of output, greatly speeding output on terminals
+ without addressable cursors when text with leading
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-7\b79\b9
+
+
+ white space is printed.
+
+ _\bT_\bh_\bi_\bs _\bo_\bp_\bt_\bi_\bo_\bn _\bi_\bs _\bn_\bo_\bt _\by_\be_\bt _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ p\bpa\bar\bra\bag\bgr\bra\bap\bph\bhs\bs,\b, p\bpa\bar\bra\ba [\b[I\bIP\bPL\bLP\bPP\bPP\bPQ\bQP\bPP\bP L\bLI\bIp\bpp\bpl\blp\bpi\bip\bpb\bbp\bp]\b]
+ V\bVi\bi only. Define additional paragraph boundaries
+ for the {\b{ and }\b} commands. The value of this
+ option must be a character string consisting of
+ zero or more character pairs.
+
+ In the text to be edited, the character string
+ <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>.\b.<\b<c\bch\bha\bar\br-\b-p\bpa\bai\bir\br>\b>, (where <\b<c\bch\bha\bar\br-\b-p\bpa\bai\bir\br>\b> is one
+ of the character pairs in the option's value)
+ defines a paragraph boundary. For example, if the
+ option were set to L\bLa\baA\bA<\b<s\bsp\bpa\bac\bce\be>\b>#\b##\b#, then all of the
+ following additional paragraph boundaries would be
+ recognized:
+
+
+ <newline>.La
+ <newline>.A<space>
+ <newline>.##
+
+
+ p\bpr\bro\bom\bmp\bpt\bt [\b[o\bon\bn]\b]
+ E\bEx\bx only. This option causes e\bex\bx to prompt for com-
+ mand input with a ":\b:" character; when it is not
+ set, no prompt is displayed.
+
+ r\bre\bea\bad\bdo\bon\bnl\bly\by,\b, r\bro\bo [\b[o\bof\bff\bf]\b]
+ This option causes a force flag to be required to
+ attempt to write the file back to the original
+ file name. Setting this option is equivalent to
+ using the -\b-R\bR command line option, or editing a
+ file which lacks write permission.
+
+ r\bre\bec\bcd\bdi\bir\br [\b[/\b/v\bva\bar\br/\b/t\btm\bmp\bp/\b/v\bvi\bi.\b.r\bre\bec\bco\bov\bve\ber\br]\b]
+ The directory where recovery files are stored.
+
+ If you change the value of r\bre\bec\bcd\bdi\bir\br, be careful to
+ choose a directory whose contents are not regu-
+ larly deleted. Bad choices include directories in
+ memory based filesystems, or /\b/t\btm\bmp\bp, on most sys-
+ tems, as their contents are removed when the
+ machine is rebooted.
+
+ Public directories like /\b/u\bus\bsr\br/\b/t\btm\bmp\bp and /\b/v\bva\bar\br/\b/t\btm\bmp\bp are
+ usually safe, although some sites periodically
+ prune old files from them. There is no require-
+ ment that you use a public directory, e.g. a sub-
+ directory of your home directory will work fine.
+
+ Finally, if you change the value of r\bre\bec\bcd\bdi\bir\br, you
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b80\b0 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b)
+
+
+ must modify the recovery script to operate in your
+ chosen recovery area.
+
+ See the section entitled "R\bRe\bec\bco\bov\bve\ber\bry\by" for further
+ information.
+
+ r\bre\bed\bdr\bra\baw\bw,\b, r\bre\be [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. The editor simulates (using great
+ amounts of output), an intelligent terminal on a
+ dumb terminal (e.g. during insertions in v\bvi\bi the
+ characters to the right of the cursor are
+ refreshed as each input character is typed).
+
+ _\bT_\bh_\bi_\bs _\bo_\bp_\bt_\bi_\bo_\bn _\bi_\bs _\bn_\bo_\bt _\by_\be_\bt _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ r\bre\bem\bma\bap\bp [\b[o\bon\bn]\b]
+ If this option is set, it is possible to define
+ macros in terms of other macros. Otherwise, each
+ key is only remapped up to one time. For example,
+ if "A\bA" is mapped to "B\bB", and "B\bB" is mapped to "C\bC",
+ The keystroke "A\bA" will be mapped to "C\bC" if the
+ r\bre\bem\bma\bap\bp option is set, and to "B\bB" if it is not set.
+
+ r\bre\bep\bpo\bor\brt\bt [\b[5\b5]\b]
+ Set the threshold of the number of lines that need
+ to be changed or yanked before a message will be
+ displayed to the user. For everything but the
+ yank command, the value is the largest value about
+ which the editor is silent, i.e. by default, 6
+ lines must be deleted before the user is notified.
+ However, if the number of lines yanked is greater
+ than _\bo_\br _\be_\bq_\bu_\ba_\bl _\bt_\bo the set value, it is reported to
+ the user.
+
+ r\bru\bul\ble\ber\br [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. Display a row/column ruler on the colon
+ command line.
+
+ s\bsc\bcr\bro\bol\bll\bl,\b, s\bsc\bcr\br [\b[(\b(e\ben\bnv\bvi\bir\bro\bon\bnm\bme\ben\bnt\bt v\bva\bar\bri\bia\bab\bbl\ble\be L\bLI\bIN\bNE\bES\bS -\b- 1\b1)\b) /\b/ 2\b2]\b]
+ Set the number of lines scrolled by the e\bex\bx <\b<c\bco\bon\bn-\b-
+ t\btr\bro\bol\bl-\b-D\bD>\b> and <\b<e\ben\bnd\bd-\b-o\bof\bf-\b-f\bfi\bil\ble\be>\b> commands.
+
+ Historically, the e\bex\bx z\bz command, when specified
+ without a count, used two times the size of the
+ scroll value; the POSIX 1003.2 standard specified
+ the window size, which is a better choice.
+
+ s\bse\bec\bct\bti\bio\bon\bns\bs,\b, s\bse\bec\bct\bt [\b[N\bNH\bHS\bSH\bHH\bH H\bHU\bUn\bnh\bhs\bsh\bh]\b]
+ V\bVi\bi only. Define additional section boundaries for
+ the [\b[[\b[ and ]\b]]\b] commands. The s\bse\bec\bct\bti\bio\bon\bns\bs option
+ should be set to a character string consisting of
+ zero or more character pairs. In the text to be
+ edited, the character string <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>.\b.<\b<c\bch\bha\bar\br-\b-
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b81\b1
+
+
+ p\bpa\bai\bir\br>\b>, (where <\b<c\bch\bha\bar\br-\b-p\bpa\bai\bir\br>\b> is one of the character
+ pairs in the option's value), defines a section
+ boundary in the same manner that p\bpa\bar\bra\bag\bgr\bra\bap\bph\bh option
+ boundaries are defined.
+
+ s\bsh\bhe\bel\bll\bl,\b, s\bsh\bh [\b[e\ben\bnv\bvi\bir\bro\bon\bnm\bme\ben\bnt\bt v\bva\bar\bri\bia\bab\bbl\ble\be S\bSH\bHE\bEL\bLL\bL,\b, o\bor\br /\b/b\bbi\bin\bn/\b/s\bsh\bh]\b]
+ Select the shell used by the editor. The speci-
+ fied path is the pathname of the shell invoked by
+ the v\bvi\bi !\b! shell escape command and by the e\bex\bx s\bsh\bhe\bel\bll\bl
+ command. This program is also used to resolve any
+ shell meta-characters in e\bex\bx commands.
+
+ s\bsh\bhe\bel\bll\blm\bme\bet\bta\ba [\b[~\b~{\b{[\b[*\b*?\b?$\b$`\b`'\b'"\b"\\b\]\b]
+ The set of characters that e\bex\bx checks for when
+ doing file name expansion. If any of the speci-
+ fied characters are found in the file name argu-
+ ments to the e\bex\bx commands, the arguments are
+ expanded using the program defined by the s\bsh\bhe\bel\bll\bl
+ option. The default set of characters is a union
+ of meta characters from the Version 7 and the
+ Berkeley C shell.
+
+ s\bsh\bhi\bif\bft\btw\bwi\bid\bdt\bth\bh,\b, s\bsw\bw [\b[8\b8]\b]
+ Set the autoindent and shift command indentation
+ width. This width is used by the a\bau\but\bto\boi\bin\bnd\bde\ben\bnt\bt
+ option and by the <\b<, >\b>, and s\bsh\bhi\bif\bft\bt commands.
+
+ s\bsh\bho\bow\bwm\bma\bat\btc\bch\bh,\b, s\bsm\bm [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. This option causes v\bvi\bi, when a "}\b}" or ")\b)"
+ is entered, to briefly move the cursor the match-
+ ing "{\b{" or "(\b(". See the m\bma\bat\btc\bch\bht\bti\bim\bme\be option for more
+ information.
+
+ s\bsh\bho\bow\bwm\bmo\bod\bde\be [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. This option causes v\bvi\bi to display a
+ string identifying the current editor mode on the
+ colon command line. The string is preceded by an
+ asterisk (``*'') if the file has been modified
+ since it was last completely written,
+
+ s\bsi\bid\bde\bes\bsc\bcr\bro\bol\bll\bl [\b[1\b16\b6]\b]
+ V\bVi\bi only. Sets the number of columns that are
+ shifted to the left or right, when v\bvi\bi is doing
+ left-right scrolling and the left or right margin
+ is crossed. See the l\ble\bef\bft\btr\bri\big\bgh\bht\bt option for more
+ information.
+
+ s\bsl\blo\bow\bwo\bop\bpe\ben\bn,\b, s\bsl\blo\bow\bw [\b[o\bof\bff\bf]\b]
+ This option affects the display algorithm used by
+ v\bvi\bi, holding off display updating during input of
+ new text to improve throughput when the terminal
+ in use is slow and unintelligent.
+
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b82\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b)
+
+
+ _\bT_\bh_\bi_\bs _\bo_\bp_\bt_\bi_\bo_\bn _\bi_\bs _\bn_\bo_\bt _\by_\be_\bt _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ s\bso\bou\bur\brc\bce\bea\ban\bny\by [\b[o\bof\bff\bf]\b]
+ If this option is turned on, v\bvi\bi historically read
+ startup files that were owned by someone other
+ than the editor user. See the section entitled
+ "S\bSt\bta\bar\brt\btu\bup\bp I\bIn\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn" for more information. This
+ option is a security problem of immense propor-
+ tions, and should not be used under any circum-
+ stances.
+
+ _\bT_\bh_\bi_\bs _\bo_\bp_\bt_\bi_\bo_\bn _\bw_\bi_\bl_\bl _\bn_\be_\bv_\be_\br _\bb_\be _\bi_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd_\b.
+
+ t\bta\bab\bbs\bst\bto\bop\bp,\b, t\bts\bs [\b[8\b8]\b]
+ This option sets tab widths for the editor dis-
+ play.
+
+ t\bta\bag\bgl\ble\ben\bng\bgt\bth\bh,\b, t\btl\bl [\b[0\b0]\b]
+ This option sets the maximum number of characters
+ that are considered significant in a tag name.
+ Setting the value to 0 makes all of the characters
+ in the tag name significant.
+
+ t\bta\bag\bgs\bs,\b, t\bta\bag\bg [\b[t\bta\bag\bgs\bs /\b/v\bva\bar\br/\b/d\bdb\bb/\b/l\bli\bib\bbc\bc.\b.t\bta\bag\bgs\bs /\b/s\bsy\bys\bs/\b/k\bke\ber\brn\bn/\b/t\bta\bag\bgs\bs]\b]
+ Sets the list of tags files, in search order,
+ which are used when the editor searches for a tag.
+
+ t\bte\ber\brm\bm,\b, t\btt\bty\byt\bty\byp\bpe\be,\b, t\btt\bty\by [\b[e\ben\bnv\bvi\bir\bro\bon\bnm\bme\ben\bnt\bt v\bva\bar\bri\bia\bab\bbl\ble\be T\bTE\bER\bRM\bM]\b]
+ Set the terminal type. Setting this option causes
+ e\bex\bx/v\bvi\bi to set (or reset) the environmental variable
+ T\bTE\bER\bRM\bM.
+
+ t\bte\ber\brs\bse\be [\b[o\bof\bff\bf]\b]
+ This option has historically made editor messages
+ less verbose. It has no effect in this implemen-
+ tation. See the v\bve\ber\brb\bbo\bos\bse\be option for more informa-
+ tion.
+
+ t\bti\bil\bld\bde\beo\bop\bp
+ Modify the ~\b~ command to take an associated motion.
+
+ t\bti\bim\bme\beo\bou\but\bt,\b, t\bto\bo [\b[o\bon\bn]\b]
+ If this option is set, e\bex\bx/v\bvi\bi waits for a specific
+ period for a subsequent key to complete a key map-
+ ping (see the k\bke\bey\byt\bti\bim\bme\be option). If the option is
+ not set, the editor waits until enough keys are
+ entered to resolve the ambiguity, regardless of
+ how long it takes.
+
+ t\btt\bty\byw\bwe\ber\bra\bas\bse\be [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. This option changes how v\bvi\bi does word
+ erase during text input. If this option is set,
+ text is broken up into two classes, blank
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b) U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b83\b3
+
+
+ characters and nonblank characters. Changing from
+ one class to another marks the end of a word.
+
+ v\bve\ber\brb\bbo\bos\bse\be [\b[o\bof\bff\bf]\b]
+ V\bVi\bi only. V\bVi\bi historically bells the terminal for
+ many obvious mistakes, e.g. trying to move past
+ the left-hand margin, or past the end of the file.
+ If this option is set, an error message is dis-
+ played for all errors.
+
+ w\bw3\b30\b00\b0 [\b[n\bno\bo d\bde\bef\bfa\bau\bul\blt\bt]\b]
+ V\bVi\bi only. Set the window size if the baud rate is
+ less than 1200 baud. See the w\bwi\bin\bnd\bdo\bow\bw option for
+ more information.
+
+ w\bw1\b12\b20\b00\b0 [\b[n\bno\bo d\bde\bef\bfa\bau\bul\blt\bt]\b]
+ V\bVi\bi only. Set the window size if the baud rate is
+ equal to 1200 baud. See the w\bwi\bin\bnd\bdo\bow\bw option for
+ more information.
+
+ w\bw9\b96\b60\b00\b0 [\b[n\bno\bo d\bde\bef\bfa\bau\bul\blt\bt]\b]
+ V\bVi\bi only. Set the window size if the baud rate is
+ greater than 1200 baud. See the w\bwi\bin\bnd\bdo\bow\bw option for
+ more information.
+
+ w\bwa\bar\brn\bn [\b[o\bon\bn]\b]
+ E\bEx\bx only. This option causes a warning message to
+ the terminal if the file has been modified, since
+ it was last written, before a !\b! command.
+
+ w\bwi\bin\bnd\bdo\bow\bw,\b, w\bw,\b, w\bwi\bi [\b[e\ben\bnv\bvi\bir\bro\bon\bnm\bme\ben\bnt\bt v\bva\bar\bri\bia\bab\bbl\ble\be L\bLI\bIN\bNE\bES\bS -\b- 1\b1]\b]
+ This option determines the default number of lines
+ in a screenful, as displayed by the z\bz command. It
+ also determines the number of lines scrolled by
+ the v\bvi\bi commands <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-B\bB>\b> and <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-F\bF>\b>, and
+ the default number of lines scrolled by the v\bvi\bi
+ commands <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-D\bD>\b> and <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b>. The value
+ of window can be unrelated to the real screen
+ size, although it starts out as the number of
+ lines on the screen. See the section entitled
+ "S\bSi\biz\bzi\bin\bng\bg t\bth\bhe\be S\bSc\bcr\bre\bee\ben\bn" for more information. Setting
+ the value of the w\bwi\bin\bnd\bdo\bow\bw option is the same as
+ using the -\b-w\bw command line option.
+
+ If the value of the w\bwi\bin\bnd\bdo\bow\bw option (as set by the
+ w\bwi\bin\bnd\bdo\bow\bw, w\bw3\b30\b00\b0, w\bw1\b12\b20\b00\b0 or w\bw9\b96\b60\b00\b0 options) is smaller
+ than the actual size of the screen, large screen
+ movements will result in displaying only that
+ smaller number of lines on the screen. (Further
+ movements in that same area will result in the
+ screen being filled.) This can provide a perfor-
+ mance improvement when viewing different places in
+ one or more files over a slow link.
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b84\b4 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be (\b(O\bOp\bpt\bti\bio\bon\bns\bs)\b)
+
+
+ Resetting the window size does not reset the
+ default number of lines scrolled by the <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-
+ D\bD>\b> and <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-U\bU>\b> commands.
+
+ w\bwr\bra\bap\bpl\ble\ben\bn,\b, w\bwl\bl [\b[0\b0]\b]
+ This option is identical to the w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn option,
+ with the exception that it specifies the number of
+ columns from the _\bl_\be_\bf_\bt margin before the line
+ splits, not the right margin. If both w\bwr\bra\bap\bpl\ble\ben\bn and
+ w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn are set, the w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn value is used.
+
+ w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn,\b, w\bwm\bm [\b[0\b0]\b]
+ V\bVi\bi only. If the value of the w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn option is
+ non-zero, v\bvi\bi will split lines so that they end at
+ least that number of columns before the right-hand
+ margin of the screen. (Note, the value of w\bwr\bra\bap\bp-\b-
+ m\bma\bar\brg\bgi\bin\bn is _\bn_\bo_\bt a text length. In a screen that is
+ 80 columns wide, the command ":\b:s\bse\bet\bt w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn=\b=8\b8"
+ attempts to keep the lines less than or equal to
+ 72 columns wide.)
+
+ Lines are split at the previous whitespace charac-
+ ter closest to the number. Any trailing whites-
+ pace characters before that character are deleted.
+ If the line is split because of an inserted
+ <\b<s\bsp\bpa\bac\bce\be>\b> or <\b<t\bta\bab\bb>\b> character, and you then enter
+ another <\b<s\bsp\bpa\bac\bce\be>\b> character, it is discarded.
+
+ If wrapmargin is set to 0, or if there is no blank
+ character upon which to split the line, the line
+ is not broken.
+
+ w\bwr\bra\bap\bps\bsc\bca\ban\bn,\b, w\bws\bs [\b[o\bon\bn]\b]
+ This option causes searches to wrap around the end
+ or the beginning of the file, and back to the
+ starting point. Otherwise, the end or beginning
+ of the file terminates the search.
+
+ w\bwr\bri\bit\bte\bea\ban\bny\by,\b, w\bwa\ba [\b[o\bof\bff\bf]\b]
+ If this option is set, file-overwriting checks
+ that would usually be made before the w\bwr\bri\bit\bte\be and
+ x\bxi\bit\bt commands, or before an automatic write (see
+ the a\bau\but\bto\bow\bwr\bri\bit\bte\be option), are not made. This allows
+ a write to any file, provided the file permissions
+ allow it.
+
+ 1\b16\b6.\b. A\bAd\bdd\bdi\bit\bti\bio\bon\bna\bal\bl F\bFe\bea\bat\btu\bur\bre\bes\bs i\bin\bn N\bNe\bex\bx/\b/N\bNv\bvi\bi
+
+ There are a few features in n\bne\bex\bx/n\bnv\bvi\bi that are not
+ found in historic versions of e\bex\bx/v\bvi\bi. Some of the more
+ interesting of these are as follows:
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b85\b5
+
+
+ 8\b8-\b-b\bbi\bit\bt c\bcl\ble\bea\ban\bn d\bda\bat\bta\ba,\b, l\bla\bar\brg\bge\be l\bli\bin\bne\bes\bs,\b, f\bfi\bil\ble\bes\bs
+ N\bNe\bex\bx/n\bnv\bvi\bi will edit any format file. Line lengths
+ are limited by available memory, and file sizes
+ are limited by available disk space. The v\bvi\bi text
+ input mode command <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-X\bX>\b> can insert any pos-
+ sible character value into the text.
+
+ S\bSp\bpl\bli\bit\bt s\bsc\bcr\bre\bee\ben\bns\bs
+ The s\bsp\bpl\bli\bit\bt command divides the screen into multiple
+ editing regions. The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-W\bW>\b> command rotates
+ between the foreground screens. The r\bre\bes\bsi\biz\bze\be com-
+ mand can be used to grow or shrink a particular
+ screen.
+
+ B\bBa\bac\bck\bkg\bgr\bro\bou\bun\bnd\bd a\ban\bnd\bd f\bfo\bor\bre\beg\bgr\bro\bou\bun\bnd\bd s\bsc\bcr\bre\bee\ben\bns\bs
+ The b\bbg\bg command backgrounds the current screen, and
+ the f\bfg\bg command foregrounds backgrounded screens.
+ The d\bdi\bis\bsp\bpl\bla\bay\by command can be used to list the back-
+ ground screens.
+
+ T\bTa\bag\bg s\bst\bta\bac\bck\bks\bs
+ Tags are now maintained in a stack. The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-
+ T\bT>\b> command returns to the previous tag location.
+ The t\bta\bag\bgp\bpo\bop\bp command returns to the most recent tag
+ location by default, or, optionally to a specific
+ tag number in the tag stack, or the most recent
+ tag from a specified file. The d\bdi\bis\bsp\bpl\bla\bay\by command
+ can be used to list the tags stack. The t\bta\bag\bgt\bto\bop\bp
+ command returns to the top of the tag stack.
+
+ N\bNe\bew\bw d\bdi\bis\bsp\bpl\bla\bay\bys\bs
+ The d\bdi\bis\bsp\bpl\bla\bay\by command can be used to display the
+ current buffers, the backgrounded screens, and the
+ tags stack.
+
+ I\bIn\bnf\bfi\bin\bni\bit\bte\be u\bun\bnd\bdo\bo
+ Changes made during an edit session may be rolled
+ backward and forward. A .\b. command immediately
+ after a u\bu command continues either forward or
+ backward depending on whether the u\bu command was an
+ undo or a redo.
+
+ U\bUs\bsa\bag\bge\be i\bin\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn
+ The e\bex\bxu\bus\bsa\bag\bge\be and v\bvi\biu\bus\bsa\bag\bge\be commands provide usage
+ information for all of the e\bex\bx and v\bvi\bi commands by
+ default, or, optionally, for a specific command or
+ key.
+
+ M\bMe\bes\bss\bsa\bag\bge\be C\bCa\bat\bta\bal\blo\bog\bgs\bs
+ It is possible to display informational and error
+ messages in different languages by providing a
+ catalog of messages. See the m\bms\bsg\bgc\bca\bat\bt option and
+ the file c\bca\bat\bta\bal\blo\bog\bg/\b/R\bRE\bEA\bAD\bDM\bME\bE for more information.
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b86\b6 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ E\bEx\bxt\bte\ben\bnd\bde\bed\bd R\bRe\beg\bgu\bul\bla\bar\br E\bEx\bxp\bpr\bre\bes\bss\bsi\bio\bon\bns\bs
+ The e\bex\bxt\bte\ben\bnd\bde\bed\bd option causes Regular Expressions to
+ be interpreted as as Extended Regular Expressions,
+ (i.e. _\be_\bg_\br_\be_\bp(1) style Regular Expressions).
+
+ W\bWo\bor\brd\bd s\bse\bea\bar\brc\bch\bh
+ The <\b<c\bco\bon\bnt\btr\bro\bol\bl-\b-A\bA>\b> command searches for the word ref-
+ erenced by the cursor.
+
+ N\bNu\bum\bmb\bbe\ber\br i\bin\bnc\bcr\bre\bem\bme\ben\bnt\bt
+ The #\b# command increments or decrements the number
+ referenced by the cursor.
+
+ P\bPr\bre\bev\bvi\bio\bou\bus\bs f\bfi\bil\ble\be
+ The p\bpr\bre\bev\bvi\bio\bou\bus\bs command edits the previous file from
+ the argument list.
+
+ L\bLe\bef\bft\bt-\b-r\bri\big\bgh\bht\bt s\bsc\bcr\bro\bol\bll\bli\bin\bng\bg
+ The l\ble\bef\bft\btr\bri\big\bgh\bht\bt option causes n\bnv\bvi\bi to do left-right
+ screen scrolling, instead of the traditional v\bvi\bi
+ line wrapping.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b87\b7
+
+
+ 1\b17\b7.\b. I\bIn\bnd\bde\bex\bx
+
+ ! 16, 35 ?RE? 19 change 38
+ "" 35 @ 21, 36 chdir 38
+ # 17, 36 A 21 columns 49
+ $ 17 B 21 comment 49
+ % 17 C 22 copy 38
+ & 18, 44 D 22 count 11, 34
+ ( 18 E 22 current pathname 8
+ ) 18 F 22 d 27
+ * 36 G 22 delete 38
+ + 14 H 23 directory 49
+ , 19 I 23 display 39
+ /RE/ 19 J 23 e 27
+ 0 20 L 23 edcompatible49
+ 0<control-D>32 M 23 edit 39
+ : 20 N 19 errorbells 49
+ ; 21 O 24 exrc 49
+ < 21, 36 P 24 extended 50
+ <carriage-return> 9 Q 24 exusage 39
+ <control-A> 12 R 24 f 27
+ <control-B> 13 S 24 fg 39
+ <cont\b1r\b3o\b,l-\b3D\b2>\b, 35 T 24 file 34, 39
+ <control-E> 13 U 25 flags 34
+ <control-F> 13 W 25 flash 50
+ <control-G> 13 X 25 global 39
+ <control-\b1H\b3>\b, 32 Y 25 hardtabs 50
+ <control-J> 14 ZZ 25 help 40
+ <control-L> 14 [[ 26 i 28
+ <control-M> 14 - 19 ignorecase 50
+ <control-N> 14 ]] 26 insert 40
+ <control-P> 14 ^ 26 j 14
+ <control-R> 14 ^<control-D>32 join 40
+ <control-\b1T\b4>\b, 32 _ 26 k 14, 41
+ <control-U> 15 `<character>18 keytime 50
+ <control-\b1W\b5>\b, 32 a 26 l 16
+ <control-X> 33 abbrev 37 leftright 50
+ <control-Y> 15 alternate pathname 8 line 34
+ <control-\b1Z\b5>\b, 45 altwerase 48 lines 50
+ <control-]> 15 append 37 lisp 50
+ <control-^> 16 args 38 list 40, 50
+ <end-of-file> 34, 35 autoindent 48 lock 50
+ <erase> 32 autoprint 48 m 28
+ <escape>15, 32 autowrite 48 magic 50
+ <inter\b8r\b,up\b3t\b1>\b, 33 b 27 map 41
+ <line erase>32 backup 49 mark 41
+ <literal-next> 8, 32 beautify 49 matchtime 50
+ <newline> 9 bg 38 mesg 51
+ <nul> 32 bigword 12 mkexrc 41
+ <space> 16 buffer 8 modelines 51
+ <word erase>32 c 27 motion 11
+ = 36 cd 38 move 41
+ > 21, 37 cdpath 49 msgcat 51
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-8\b88\b8 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ n 19 tags 54
+ next 41 tagtop 45
+ number 36, 51 term 54
+ o 28 terse 54
+ octal 51 tildeop 54
+ open 42, 51 timeout 54
+ optimize 51 ttywerase 54
+ p 28 u 29
+ paragraph 12 unabbrev 45
+ paragraphs 51 undo 45
+ preserve 42 unmap 46
+ previous 42 unnamed buffer 9
+ previous context 10 v 39
+ print 42 verbose 54
+ prompt 52 version 46
+ put 42 visual 46
+ quit 42 viusage 46
+ r 28 w 29
+ range 34 w1200 54
+ read 42 w300 54
+ readonly 52 w9600 54
+ recdir 52 warn 54
+ recover 43 whitespace 9
+ redraw 52 window 54
+ remap 52 wn 46
+ report 52 word 11
+ resize 43 wq 46
+ rewind 43 wraplen 55
+ ruler 52 wrapmargin 55
+ s 28 wrapscan 55
+ scroll 52 write 46
+ section 12 writeany 55
+ sections 53 x 29
+ sentence 12 xit 47
+ set 43 y 29
+ shell 44, 53 yank 47
+ shellmeta 53 z 30, 47
+ shiftwidth 53 { 30
+ showmatch 53 | 30
+ showmode 53 } 30
+ sidescroll 53 ~ 31, 44
+ slowopen 53
+ source 44
+ sourceany 53
+ split 44
+ stop 45
+ substitute 44
+ suspend 45
+ t 29, 38
+ tabstop 53
+ tag 45
+ taglength 54
+ tagpop 45
+
+
+
+
+
+
+
+
+
+
+U\bUS\bSD\bD:\b:1\b13\b3-\b-2\b2 N\bNv\bvi\bi/\b/N\bNe\bex\bx R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+
+
+ T\bTa\bab\bbl\ble\be o\bof\bf C\bCo\bon\bnt\bte\ben\bnt\bts\bs
+
+ Description ...................................... 3
+ Startup Information .............................. 3
+ Recovery ......................................... 4
+ Sizing the Screen ................................ 8
+ Character Display ................................ 8
+ Multiple Screens ................................. 9
+ Regular Expressions and Replacement Strings ...... 9
+ General Editor Description ....................... 11
+ Vi Description ................................... 14
+ Vi Commands ...................................... 19
+ Vi Text Input Commands ........................... 47
+ Ex Addressing .................................... 49
+ Ex Description ................................... 52
+ Ex Commands ...................................... 53
+ Set Options ...................................... 72
+ Additional Features in Nex/Nvi ................... 84
+ Index ............................................ 87
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+