summaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>1995-12-30 19:02:48 +0000
committerPeter Wemm <peter@FreeBSD.org>1995-12-30 19:02:48 +0000
commita5b996a7ecea192e05c848269fbfb40c1e7c50ef (patch)
treeb43d0e66d9963acc026a6322b81fd219d273736b /usr.bin
parentdf2fbf15a2e56a16c3b54b93a3369b662b6f20e5 (diff)
Notes
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/at/at.1216
-rw-r--r--usr.bin/at/pathnames.h42
-rw-r--r--usr.bin/colldef/data/lt_LN.ISO8859-119
-rw-r--r--usr.bin/colldef/data/lt_LN.ISO_8859-119
-rw-r--r--usr.bin/colldef/data/ru_SU.CP86620
-rw-r--r--usr.bin/colldef/data/ru_SU.KOI8-R20
-rw-r--r--usr.bin/compile_et/error_message.c77
-rw-r--r--usr.bin/compile_et/error_table.h17
-rw-r--r--usr.bin/compile_et/et_name.c44
-rw-r--r--usr.bin/compile_et/init_et.c67
-rw-r--r--usr.bin/compile_et/perror.c76
-rw-r--r--usr.bin/compile_et/test/test.c43
-rw-r--r--usr.bin/compile_et/test/test1.et69
-rw-r--r--usr.bin/compile_et/test/test2.et9
-rw-r--r--usr.bin/f2c/dependencies60
-rw-r--r--usr.bin/f2c/f2c.1t336
-rw-r--r--usr.bin/f2c/f77.script114
-rw-r--r--usr.bin/f2c/gram.c1829
-rw-r--r--usr.bin/f2c/index127
-rw-r--r--usr.bin/f2c/index.html138
-rw-r--r--usr.bin/f2c/makefile90
-rw-r--r--usr.bin/f2c/notice23
-rw-r--r--usr.bin/f2c/readme145
-rw-r--r--usr.bin/f2c/xsum.c237
-rw-r--r--usr.bin/f2c/xsum0.out56
-rw-r--r--usr.bin/grep/egrep/Makefile18
-rw-r--r--usr.bin/key/README.WZV100
-rw-r--r--usr.bin/key/skey.159
-rw-r--r--usr.bin/login/login_skey.c105
-rw-r--r--usr.bin/mklocale/POSIX33
-rw-r--r--usr.bin/mklocale/data/ja_JP.EUC158
-rw-r--r--usr.bin/mklocale/data/lt_LN.ASCII28
-rw-r--r--usr.bin/mklocale/data/lt_LN.ISO8859-135
-rw-r--r--usr.bin/mklocale/data/lt_LN.ISO_8859-139
-rw-r--r--usr.bin/mklocale/data/ru_SU.CP86642
-rw-r--r--usr.bin/mklocale/data/ru_SU.KOI8-R39
-rw-r--r--usr.bin/mklocale/iso_8859_135
-rw-r--r--usr.bin/mklocale/ja_JP.EUC158
-rw-r--r--usr.bin/mklocale/ru_SU.KOI8-R39
-rw-r--r--usr.bin/passwd/yppasswd.1115
-rw-r--r--usr.bin/timedef/Makefile13
-rw-r--r--usr.bin/timedef/data/ru_SU.KOI8-R76
-rw-r--r--usr.bin/tip/pathnames.h44
-rw-r--r--usr.bin/tip/tip.c608
-rw-r--r--usr.bin/tip/tip.h280
-rw-r--r--usr.bin/tip/tipout.c166
-rw-r--r--usr.bin/tip/uucplock.c102
-rw-r--r--usr.bin/uucp/acucntrl/Makefile10
-rw-r--r--usr.bin/uucp/acucntrl/acucntrl.8164
-rw-r--r--usr.bin/uucp/uupoll/Makefile10
-rw-r--r--usr.bin/uucp/uusnap/Makefile8
-rw-r--r--usr.bin/vi/USD.doc/vi.ref/paper.ps30924
-rw-r--r--usr.bin/vi/USD.doc/vi.ref/vi.ref.txt5544
-rw-r--r--usr.bin/watch/Makefile6
-rw-r--r--usr.bin/watch/snp.449
-rw-r--r--usr.bin/watch/watch.877
-rw-r--r--usr.bin/watch/watch.c404
57 files changed, 0 insertions, 43381 deletions
diff --git a/usr.bin/at/at.1 b/usr.bin/at/at.1
deleted file mode 100644
index e33ba822b83c..000000000000
--- a/usr.bin/at/at.1
+++ /dev/null
@@ -1,216 +0,0 @@
-.\"
-.\" Copyright (c) 1993 Christopher G. Demetriou
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgement:
-.\" This product includes software developed by Christopher G. Demetriou.
-.\" 3. The name of the author may not be used to endorse or promote products
-.\" derived from this software withough specific prior written permission
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\"
-.\" $Id: at.1,v 1.1 1994/01/05 01:08:56 nate Exp $
-.\"
-.Dd December 5, 1993
-.Dt "AT" 1
-.Os FreeBSD 1.1
-.Sh NAME
-.Nm at, batch, atq, atrm
-.Nd queue, examine, or delete jobs for later execution
-.\"
-.Sh SYOPSIS
-.Nm at
-.Op Fl q Ar queue
-.Op Fl f Ar file
-.Op Fl m
-.Ar time
-.Pp
-.Nm atq
-.Op Fl q Ar queue
-.Op Fl v
-.Pp
-.Nm atrm
-.Ar job
-.Op Ar job ...
-.Pp
-.Nm batch
-.Op Fl f Ar file
-.Op Fl m
-.Ar time
-.Sh DESCRIPTION
-The
-.Nm at
-and
-.Nm batch
-utilities read commands from the standard input or a specified file
-which are to be executed at a later time, using
-.Xr sh 1 .
-.Pp
-The functions of the commands are as follows:
-.Bl -tag -width indent
-.It Nm at
-Executes commands at a specified time.
-.It Nm atq
-Lists the user's pending jobs, unless the user is
-the superuser. In that case, everybody's jobs are
-listed.
-.It Nm atrm
-Deletes jobs.
-.It Nm batch
-executes commands when system load levels permit.
-In other words, it executes the commands when the load
-average drops below a specified level.
-.El
-.Pp
-For both
-.Nm at
-and
-.Nm batch ,
-the working directory, environment (except for the variables
-.Nm TERM ,
-.Nm TERMCAP ,
-.Nm DISPLAY ,
-and
-.Nm _ )
-and the umask are retained from the time of invocation. The user
-will be mailed the standard output and standard error from
-his commands if any output is generated. If
-.Nm at
-is executed from a
-.Xr su 1
-shell, the owner of the login whell will receive the mail.
-.Sh OPTIONS
-.Bl -tag -width indent
-The available options are as follows:
-.It Fl q Ar queue
-Use the specified queue. A queue designation consists
-of a single letter; valid queue designation range from
-.Ar a
-to
-.Ar l .
-The
-.Ar a
-queue is the default, and
-.Ar b
-is the batch queue. Queues with higher letters run with
-increased niceness. If
-.Nm atq
-is given a specific queue, it will only show jobs pending
-in that queue.
-.It Fl m
-Send mail to the user when the job has completed, even if
-there was no output.
-.It Fl f Ar file
-Reads the job from
-.Ar file
-rather than the standard input.
-.It Fl v
-Shows completed but not yet deleted jobs in the queue.
-.Sh TIME SPECIFICATION
-.Nm At
-allows some moderately complex time specifications.
-It accepts times of the form
-.Ar HHMM
-or
-.Ar HH:MM
-to run a job at a specific time of day. If
-that time is already passed, the next day is assumed.
-You may also specify
-.Nm midnight ,
-.Nm noon ,
-or
-.Nm teatime
-(4PM) and you can give a time of day suffixed with
-.Nm AM
-or
-.Nm PM
-for running in the morning or the evening. You can
-also specify the date on which the job will be run
-by giving a date in the form
-.Ar month-name day
-with an optional
-.Ar year ,
-or giving a date of the form
-.Ar MMDDYY ,
-.Ar MM/DD/YY
-or
-.Ar DD.MM.YY .
-You can also give times like
-.Nm now +
-.Ar count time-units ,
-where the time units can be
-.Nm minutes, hours, days,
-or
-.Nm weeks
-You can suffix the time with
-.Nm today
-to run the job today, or
-.Nm tomorrow
-to run the job tomorrow.
-.Pp
-For example, to run a job at 4PM three days from now, you
-would specify a time of
-.Nm 4PM + 3 days .
-To run a job at 10:00AM on on July 31, you would specify
-a time of
-.Nm 10AM Jul 31 .
-Finally, to run a job at 1AM tomorrow, you would specify
-a time of
-.Nm 1AM tomorrow .
-.Sh FILES
-.Bl -tag -width /var/at/lockfile -compact
-.It Pa /var/at/jobs
-Directory containing job files
-.It Pa /var/at/spool
-Directory containing output spool files
-.It Pa /var/at/lockfile
-Job-creation lock file.
-.It Pa /var/run/utmp
-.El
-.Sh SEE ALSO
-.Xr crond 8 ,
-.Xr nice 1 ,
-.Xr sh 1 ,
-.Xr atrun 8
-.Sh AUTHOR
-.Bl -tag
-Thomas Koenig, ig25@rz.uni-karlsruhe.de
-.El
-.Sh BUGS
-Traditional access control to
-.Nm at
-and
-.Nm batch
-via the files
-.Pa /var/at/at.allow
-and
-.Pa /var/at/at.deny
-is not implemented.
-.Pp
-If the file
-.Pa /var/run/utmp
-is not available or corrupted, or if the user is not
-logged in at the time
-.Nm at
-is invoked, the mail is sent to the userid found in the
-environment variable
-.Nm LOGNAME .
-If that is undefined or empty, the current userid is assumed.
diff --git a/usr.bin/at/pathnames.h b/usr.bin/at/pathnames.h
deleted file mode 100644
index 400ecfa9023c..000000000000
--- a/usr.bin/at/pathnames.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 1993 Christopher G. Demetriou
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by Christopher G. Demetriou.
- * 4. The name of the author may not be used to endorse or promote products
- * derived from this software withough specific prior written permission
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * $Id: pathnames.h,v 1.1 1993/12/05 11:37:23 cgd Exp $
- */
-
-#ifndef _PATHNAMES_H_
-#define _PATHNAMES_H_
-
-#include <paths.h>
-
-#define _PATH_ATJOBS "/var/at/jobs/"
-#define _PATH_ATSPOOL "/var/at/spool/"
-#define _PATH_LOCKFILE "/var/at/lockfile"
-
-#endif /* !_PATHNAMES_H_ */
diff --git a/usr.bin/colldef/data/lt_LN.ISO8859-1 b/usr.bin/colldef/data/lt_LN.ISO8859-1
deleted file mode 100644
index f63cfedc8c42..000000000000
--- a/usr.bin/colldef/data/lt_LN.ISO8859-1
+++ /dev/null
@@ -1,19 +0,0 @@
-order \
-# controls
- \x01;...;\x1f;\x7f;...;\x9f;\
-# spaces
- \ ;\xa0;\
-# puncts
- .;:;\;;\,;!;?;\xa1;\xbf;\
-# digits
- 0;...;9;\
-# alphas
- a;\xe0;...;\xe5;A;\xc0;...;\xc5;b;B;c;\xe7;C;\xc7;d;D;e;\xe8;...;\xeb;\
- E;\xc8;...;\xcb;f;F;g;G;h;H;i;\xec;...;\xef;I;\xcc;...;\xcf;j;J;k;K;\
- l;L;m;M;n;\xf1;N;\xd1;o;\xf2;...;\xf6;\xf8;O;\xd2;...;\xd6;\xd8;\
- p;P;q;Q;r;R;s;S;t;T;u;\xf9;...;\xfc;U;\xd9;...;\xdc;v;V;w;W;x;X;y;\
- \xfd;Y;\xdd;z;Z;\xf0;\xd0;\xfe;\xde;\xe6;\xc6;\xdf;\xff;\
-# remains
- \";...;&;\
- \(;...;+;/;\<;...;\>;@;[;...;`;\{;...;~;\xa2;...;\xbe;\
- \xd7;\xf7
diff --git a/usr.bin/colldef/data/lt_LN.ISO_8859-1 b/usr.bin/colldef/data/lt_LN.ISO_8859-1
deleted file mode 100644
index f63cfedc8c42..000000000000
--- a/usr.bin/colldef/data/lt_LN.ISO_8859-1
+++ /dev/null
@@ -1,19 +0,0 @@
-order \
-# controls
- \x01;...;\x1f;\x7f;...;\x9f;\
-# spaces
- \ ;\xa0;\
-# puncts
- .;:;\;;\,;!;?;\xa1;\xbf;\
-# digits
- 0;...;9;\
-# alphas
- a;\xe0;...;\xe5;A;\xc0;...;\xc5;b;B;c;\xe7;C;\xc7;d;D;e;\xe8;...;\xeb;\
- E;\xc8;...;\xcb;f;F;g;G;h;H;i;\xec;...;\xef;I;\xcc;...;\xcf;j;J;k;K;\
- l;L;m;M;n;\xf1;N;\xd1;o;\xf2;...;\xf6;\xf8;O;\xd2;...;\xd6;\xd8;\
- p;P;q;Q;r;R;s;S;t;T;u;\xf9;...;\xfc;U;\xd9;...;\xdc;v;V;w;W;x;X;y;\
- \xfd;Y;\xdd;z;Z;\xf0;\xd0;\xfe;\xde;\xe6;\xc6;\xdf;\xff;\
-# remains
- \";...;&;\
- \(;...;+;/;\<;...;\>;@;[;...;`;\{;...;~;\xa2;...;\xbe;\
- \xd7;\xf7
diff --git a/usr.bin/colldef/data/ru_SU.CP866 b/usr.bin/colldef/data/ru_SU.CP866
deleted file mode 100644
index 4a6d583e2697..000000000000
--- a/usr.bin/colldef/data/ru_SU.CP866
+++ /dev/null
@@ -1,20 +0,0 @@
-# cp866
-order \
-# controls
- \x01;...;\x1f;\x7f;\
-# spaces
- \ ;\xff;\
-# puncts
- .;:;\;;\,;!;?;\
-# digits
- 0;...;9;\
-# alphas
- A;a;B;b;C;c;D;d;E;e;F;f;G;g;H;h;I;i;J;j;K;k;L;l;\
- M;m;N;n;O;o;P;p;Q;q;R;r;S;s;T;t;U;u;V;v;W;w;X;x;\
- Y;y;Z;z;\
- €; ;;¡;‚;¢;ƒ;£;„;¤;…;¥;ð;ñ;†;¦;‡;§;ˆ;¨;‰;©;Š;ª;\
- ‹;«;Œ;¬;;­;Ž;®;;¯;;à;‘;á;’;â;“;ã;”;ä;•;å;–;æ;\
- —;ç;˜;è;™;é;š;ê;›;ë;œ;ì;;í;ž;î;Ÿ;ï;\
-# remains
- \";...;&;\(;...;+;/;\<;...;\>;@;[;...;`;\{;...;~;\
- \xb0;...;\xdf;\xf2;...;\xfe
diff --git a/usr.bin/colldef/data/ru_SU.KOI8-R b/usr.bin/colldef/data/ru_SU.KOI8-R
deleted file mode 100644
index c1f154446090..000000000000
--- a/usr.bin/colldef/data/ru_SU.KOI8-R
+++ /dev/null
@@ -1,20 +0,0 @@
-# koi8-r
-order \
-# controls
- \x01;...;\x1f;\x7f;\
-# spaces
- \ ;\x9a;\
-# puncts
- .;:;\;;\,;!;?;\
-# digits
- 0;...;9;\
-# alphas
- A;a;B;b;C;c;D;d;E;e;F;f;G;g;H;h;I;i;J;j;K;k;L;l;\
- M;m;N;n;O;o;P;p;Q;q;R;r;S;s;T;t;U;u;V;v;W;w;X;x;\
- Y;y;Z;z;\
- á;Á;â;Â;÷;×;ç;Ç;ä;Ä;å;Å;³;£;ö;Ö;ú;Ú;é;É;ê;Ê;ë;Ë;\
- ì;Ì;í;Í;î;Î;ï;Ï;ð;Ð;ò;Ò;ó;Ó;ô;Ô;õ;Õ;æ;Æ;è;È;ã;Ã;\
- þ;Þ;û;Û;ý;Ý;ÿ;ß;ù;Ù;ø;Ø;ü;Ü;à;À;ñ;Ñ;\
-# remains
- \";...;&;\(;...;+;/;\<;...;\>;@;[;...;`;\{;...;~;\
- \x80;...;\x99;\x9b;...;\xa2;\xa4;...;\xb2;\xb4;...;\xbf
diff --git a/usr.bin/compile_et/error_message.c b/usr.bin/compile_et/error_message.c
deleted file mode 100644
index 92cec576e4c6..000000000000
--- a/usr.bin/compile_et/error_message.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright 1987 by the Student Information Processing Board
- * of the Massachusetts Institute of Technology
- * For copyright info, see "Copyright.SIPB".
- *
- * from: error_message.c,v 1.1 86/11/10 21:34:34 spook Exp $
- * $Id: error_message.c,v 1.3 1994/09/09 21:43:22 g89r4222 Exp $
- */
-
-#include <stdio.h>
-#include "error_table.h"
-extern int sys_nerr;
-
-static char buffer[25];
-
-char *
-error_message(code)
- int code;
-{
- register int offset;
- register error_table **et;
- register int table_num;
- register int div;
- register char *cp;
-
- offset = code & ((1<<ERRCODE_RANGE)-1);
- table_num = code - offset;
- if ((_et_list == (error_table **)NULL) && table_num)
- goto oops;
- if (!table_num) {
- if (offset < sys_nerr)
- return(sys_errlist[offset]);
- else
- goto oops;
- }
- for (et = _et_list; *et != (error_table *)NULL; et++) {
- if ((*et)->base == table_num) {
- /* This is the right table */
- if ((*et)->n_msgs <= offset)
- goto oops;
- return((*et)->msgs[offset]);
- }
- }
- oops:
- cp = buffer;
- {
- register char *cp1;
- for (cp1 = "Unknown code "; *cp1; cp1++, cp++)
- *cp = *cp1;
- if (table_num) {
- for (cp1 = error_table_name(table_num); *cp1; cp1++, cp++)
- *cp = *cp1;
- *cp++ = ' ';
- *cp = '\0';
- }
- }
- div = 1000000000;
- if (offset == 0) {
- *cp++ = '0';
- *cp = '\0';
- return(buffer);
- }
- while (div > offset)
- div /= 10;
- do {
- register int n = offset / div;
- *cp++ = '0' + n;
- offset -= n * div;
- div /= 10;
- } while (offset && div);
- while (div) {
- *cp++ = '0';
- div /= 10;
- }
- *cp = '\0';
- return(buffer);
-}
diff --git a/usr.bin/compile_et/error_table.h b/usr.bin/compile_et/error_table.h
deleted file mode 100644
index e32ec303fae0..000000000000
--- a/usr.bin/compile_et/error_table.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef _ET
-extern int errno;
-typedef struct {
- char **msgs;
- int base;
- int n_msgs;
-} error_table;
-extern error_table **_et_list;
-
-#define ERROR_CODE "int" /* type used for error codes */
-
-#define ERRCODE_RANGE 8 /* # of bits to shift table number */
-#define BITS_PER_CHAR 6 /* # bits to shift per character in name */
-
-extern char *error_table_name();
-#define _ET
-#endif
diff --git a/usr.bin/compile_et/et_name.c b/usr.bin/compile_et/et_name.c
deleted file mode 100644
index 98ccb08ecad9..000000000000
--- a/usr.bin/compile_et/et_name.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright 1987 by MIT Student Information Processing Board
- * For copyright info, see Copyright.SIPB.
- *
- * $Id: et_name.c,v 1.2 1994/07/19 19:21:27 g89r4222 Exp $
- */
-
-#include "error_table.h"
-
-static char copyright[] = "Copyright 1987 by MIT Student Information Processing Board";
-
-char *malloc();
-
-char *
-error_table_name(num)
- int num;
-{
- register int ch;
- register int i;
- register char *buf, *p;
-
- /* num = aa aaa abb bbb bcc ccc cdd ddd d?? ??? ??? */
- buf = malloc(5);
- p = buf;
- num >>= ERRCODE_RANGE;
- /* num = ?? ??? ??? aaa aaa bbb bbb ccc ccc ddd ddd */
- num &= 077777777;
- /* num = 00 000 000 aaa aaa bbb bbb ccc ccc ddd ddd */
- for (i = 0; i < 5; i++) {
- ch = (num >> 24-6*i) & 077;
- if (ch == 0)
- continue;
- else if (ch < 27)
- *p++ = ch - 1 + 'A';
- else if (ch < 53)
- *p++ = ch - 27 + 'a';
- else if (ch < 63)
- *p++ = ch - 53 + '0';
- else /* ch == 63 */
- *p++ = '_';
- }
- return(buf);
-}
-
diff --git a/usr.bin/compile_et/init_et.c b/usr.bin/compile_et/init_et.c
deleted file mode 100644
index c23facbef555..000000000000
--- a/usr.bin/compile_et/init_et.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright 1986 by MIT Information Systems and
- * MIT Student Information Processing Board
- * For copyright info, see Copyright.SIPB.
- *
- * form: init_et.c,v 1.1 86/11/10 21:42:26 spook Exp $
- * $Id: init_et.c,v 1.2 1994/07/19 19:21:28 g89r4222 Exp $
- */
-
-#include <stdio.h>
-#include "error_table.h"
-
-static char copyright[] = "Copyright 1987 by MIT Student Information Processing Board";
-
-extern char *malloc(), *realloc();
-
-/* useful */
-typedef error_table *etp;
-typedef etp *etpp;
-
-etpp _et_list = (etpp)NULL;
-static int n_allocated = 0, n_used = 0;
-
-int
-init_error_table(msgs, base, count)
- char **msgs;
- register int base;
- int count;
-{
- register int i;
- register etp new_et;
- register etpp list;
-
- if (!base || !count || !msgs)
- return;
-
- new_et = (etp)malloc(sizeof(error_table));
- new_et->msgs = msgs;
- new_et->base = base;
- new_et->n_msgs= count;
-
- list = _et_list;
- if (list == (etpp)NULL) {
- _et_list = (etpp) malloc(10*sizeof(etp));
- list = _et_list;
- if (list == (etpp)NULL)
- return; /* oops */
- list[0] = new_et;
- list[1] = (etp)NULL;
- n_allocated = 10;
- n_used = 1;
- return;
- }
- for (i = 0; i < n_used; i++)
- if (list[i]->base == base)
- return; /* avoid duplicates */
- if (n_used+2 > n_allocated) {
- n_allocated += 10; /* don't re-allocate too often */
- list = (etpp) realloc((char *)list,
- (unsigned)n_allocated * sizeof(etp));
- _et_list = list;
- if (list == (etpp)NULL)
- return; /* oops */
- }
- list[n_used++] = new_et;
- list[n_used] = (etp)NULL;
-}
diff --git a/usr.bin/compile_et/perror.c b/usr.bin/compile_et/perror.c
deleted file mode 100644
index ef50e07fb690..000000000000
--- a/usr.bin/compile_et/perror.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright 1987 by MIT Student Information Processing Board
- * For copyright info, see Copyright.SIPB
- *
- * $Id: perror.c,v 1.2 1994/07/19 19:21:30 g89r4222 Exp $
- */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/uio.h>
-#include "error_table.h"
-
-typedef int (*int_func)();
-
-#if defined(mips) && defined(ultrix)
-int errno; /* this is needed to keep the loader from complaining */
-#endif
-
-int_func com_err_hook = (int_func) NULL;
-char *error_message();
-
-void
-com_err(whoami, code, message)
- char *whoami;
- int code;
- char *message;
-{
- struct iovec strings[6];
-
- if (com_err_hook) {
- (*com_err_hook)(whoami, code, message);
- return;
- }
-
- strings[0].iov_base = whoami;
- strings[0].iov_len = strlen(whoami);
- if (whoami) {
- strings[1].iov_base = ": ";
- strings[1].iov_len = 2;
- } else
- strings[1].iov_len = 0;
- if (code) {
- register char *errmsg = error_message(code);
- strings[2].iov_base = errmsg;
- strings[2].iov_len = strlen(errmsg);
- } else
- strings[2].iov_len = 0;
- strings[3].iov_base = " ";
- strings[3].iov_len = 1;
- strings[4].iov_base = message;
- strings[4].iov_len = strlen(message);
- strings[5].iov_base = "\n";
- strings[5].iov_len = 1;
- (void) writev(2, strings, 6);
-}
-
-int_func
-set_com_err_hook(new_proc)
- int_func new_proc;
-{
- register int_func x = com_err_hook;
- com_err_hook = new_proc;
- return (x);
-}
-
-reset_com_err_hook()
-{
- com_err_hook = (int_func) NULL;
-}
-
-void
-perror(msg)
- register const char *msg;
-{
- com_err(msg, errno, (char *)NULL);
-}
diff --git a/usr.bin/compile_et/test/test.c b/usr.bin/compile_et/test/test.c
deleted file mode 100644
index df430da2047d..000000000000
--- a/usr.bin/compile_et/test/test.c
+++ /dev/null
@@ -1,43 +0,0 @@
-#include <stdio.h>
-#include <errno.h>
-#include "test1.h"
-#include "test2.h"
-char *error_message();
-extern int sys_nerr, errno;
-
-main()
-{
- printf("\nBefore initiating error table:\n\n");
- printf("Table name '%s'\n", error_table_name(KRB_MK_AP_TGTEXP));
- printf("UNIX name '%s'\n", error_table_name(EPERM));
- printf("Msg TGT-expired is '%s'\n", error_message(KRB_MK_AP_TGTEXP));
- printf("Msg EPERM is '%s'\n", error_message(EPERM));
- printf("Msg FOO_ERR is '%s'\n", error_message(FOO_ERR));
- printf("Msg {sys_nerr-1} is '%s'\n", error_message(sys_nerr-1));
- printf("Msg {sys_nerr} is '%s'\n", error_message(sys_nerr));
-
- init_error_table(0, 0, 0);
- printf("With 0: tgt-expired -> %s\n", error_message(KRB_MK_AP_TGTEXP));
-
- init_krb_err_tbl();
- printf("KRB error table initialized: base %d (%s), name %s\n",
- krb_err_base, error_message(krb_err_base),
- error_table_name(krb_err_base));
- printf("With krb: tgt-expired -> %s\n",
- error_message(KRB_MK_AP_TGTEXP));
-
- init_quux_err_tbl();
- printf("QUUX error table initialized: base %d (%s), name %s\n",
- quux_err_base, error_message(quux_err_base),
- error_table_name(quux_err_base));
-
- printf("Msg for TGT-expired is '%s'\n",
- error_message(KRB_MK_AP_TGTEXP));
- printf("Msg {sys_nerr-1} is '%s'\n", error_message(sys_nerr-1));
- printf("Msg FOO_ERR is '%s'\n", error_message(FOO_ERR));
- printf("Msg KRB_SKDC_CANT is '%s'\n",
- error_message(KRB_SKDC_CANT));
- printf("Msg 1e6 is '%s'\n", error_message(1000000));
- errno = FOO_ERR;
- perror("FOO_ERR");
-}
diff --git a/usr.bin/compile_et/test/test1.et b/usr.bin/compile_et/test/test1.et
deleted file mode 100644
index 4c7b77f0e255..000000000000
--- a/usr.bin/compile_et/test/test1.et
+++ /dev/null
@@ -1,69 +0,0 @@
- error_table krb
-
- error_code KRB_MK_AP_TKFIL,
- "Can't read ticket file"
-
- ec KRB_MK_AP_NOTKT,
- "Can't find ticket or TGT"
-
- ec KRB_MK_AP_TGTEXP,
- "TGT expired"
-
- ec KRB_RD_AP_UNDEC,
- "Can't decode authenticator"
-
- ec KRB_RD_AP_EXP,
- "Ticket expired"
-
- ec KRB_RD_AP_REPEAT,
- "Repeated request"
-
- ec KRB_RD_AP_NOT_US,
- "The ticket isn't for us"
-
- ec KRB_RD_AP_INCON,
- "Request is inconsistent"
-
- ec KRB_RD_AP_TIME,
- "Delta-T too big"
-
- ec KRB_RD_AP_BADD,
- "Incorrect net address"
-
- ec KRB_RD_AP_VERSION,
- "Protocol version mismatch"
-
- ec KRB_RD_AP_MSG_TYPE,
- "Invalid message type"
-
- ec KRB_RD_AP_MODIFIED,
- "Message stream modified"
-
- ec KRB_RD_AP_ORDER,
- "Message out of order"
-
- ec KRB_RD_AP_UNAUTHOR,
- "Unauthorized request"
-
- ec KRB_GT_PW_NULL,
- "Current password is null"
-
- ec KRB_GT_PW_BADPW,
- "Incorrect current password"
-
- ec KRB_GT_PW_PROT,
- "Protocol error"
-
- ec KRB_GT_PW_KDCERR,
- "Error returned by KDC"
-
- ec KRB_GT_PW_NULLTKT,
- "Null ticket returned by KDC"
-
- ec KRB_SKDC_RETRY,
- "Retry count exceeded"
-
- ec KRB_SKDC_CANT,
- "Can't send request"
-
- end
diff --git a/usr.bin/compile_et/test/test2.et b/usr.bin/compile_et/test/test2.et
deleted file mode 100644
index 55ad74ead071..000000000000
--- a/usr.bin/compile_et/test/test2.et
+++ /dev/null
@@ -1,9 +0,0 @@
- error_table quux
-
- ec FOO_ERR, "foo"
-
- ec BAR_ERR, "bar"
-
- ec BAZ_ERR, "meow"
-
- end
diff --git a/usr.bin/f2c/dependencies b/usr.bin/f2c/dependencies
deleted file mode 100644
index 9937e0bbb5ce..000000000000
--- a/usr.bin/f2c/dependencies
+++ /dev/null
@@ -1,60 +0,0 @@
-f2c/src*
-Notice=
-notice
-README=
-readme
-cds.c=
-data.c=
-defines.h=
-defs.h=
-equiv.c=
-error.c=
-exec.c=
-expr.c=
-f2c.1=
-f2c.1t=
-f2c.h=
-format.c=
-format.h=
-formatdata.c=
-ftypes.h=
-gram.dcl=
-gram.exec=
-gram.expr=
-gram.head=
-gram.io=
-init.c=
-intr.c=
-io.c=
-iob.h=
-lex.c=
-machdefs.h=
-main.c=
-makefile=
-malloc.c=
-mem.c=
-memset.c=
-misc.c=
-names.c=
-names.h=
-niceprintf.c=
-niceprintf.h=
-output.c=
-output.h=
-p1defs.h=
-p1output.c=
-parse.h=
-parse_args.c=
-pccdefs.h=
-pread.c=
-proc.c=
-put.c=
-putpcc.c=
-sysdep.c=
-sysdep.h=
-tokens=
-usignal.h=
-vax.c=
-version.c=
-xsum.c=
-xsum0.out=
diff --git a/usr.bin/f2c/f2c.1t b/usr.bin/f2c/f2c.1t
deleted file mode 100644
index 2a59dff8f7a5..000000000000
--- a/usr.bin/f2c/f2c.1t
+++ /dev/null
@@ -1,336 +0,0 @@
-. \" Definitions of F, L and LR for the benefit of systems
-. \" whose -man lacks them...
-.de F
-.nh
-.if n \%\&\\$1
-.if t \%\&\f(CW\\$1\fR
-.hy 14
-..
-.de L
-.nh
-.if n \%`\\$1'
-.if t \%\&\f(CW\\$1\fR
-.hy 14
-..
-.de LR
-.nh
-.if n \%`\\$1'\\$2
-.if t \%\&\f(CW\\$1\fR\\$2
-.hy 14
-..
-.TH F2C 1
-.CT 1 prog_other
-.SH NAME
-f\^2c \(mi Convert Fortran 77 to C or C++
-.SH SYNOPSIS
-.B f\^2c
-[
-.I option ...
-]
-.I file ...
-.SH DESCRIPTION
-.I F2c
-converts Fortran 77 source code in
-.I files
-with names ending in
-.L .f
-or
-.L .F
-to C (or C++) source files in the
-current directory, with
-.L .c
-substituted
-for the final
-.L .f
-or
-.LR .F .
-If no Fortran files are named,
-.I f\^2c
-reads Fortran from standard input and
-writes C on standard output.
-.I File
-names that end with
-.L .p
-or
-.L .P
-are taken to be prototype
-files, as produced by option
-.LR -P ,
-and are read first.
-.PP
-The following options have the same meaning as in
-.IR f\^77 (1).
-.TP
-.B -C
-Compile code to check that subscripts are within declared array bounds.
-.TP
-.B -I2
-Render INTEGER and LOGICAL as short,
-INTEGER\(**4 as long int. Assume the default \fIlibF77\fR
-and \fIlibI77\fR: allow only INTEGER\(**4 (and no LOGICAL)
-variables in INQUIREs. Option
-.L -I4
-confirms the default rendering of INTEGER as long int.
-.TP
-.B -onetrip
-Compile DO loops that are performed at least once if reached.
-(Fortran 77 DO loops are not performed at all if the upper limit is smaller than the lower limit.)
-.TP
-.B -U
-Honor the case of variable and external names. Fortran keywords must be in
-.I
-lower
-case.
-.TP
-.B -u
-Make the default type of a variable `undefined' rather than using the default Fortran rules.
-.TP
-.B -w
-Suppress all warning messages.
-If the option is
-.LR -w66 ,
-only Fortran 66 compatibility warnings are suppressed.
-.PP
-The following options are peculiar to
-.IR f\^2c .
-.TP
-.B -A
-Produce
-.SM ANSI
-C.
-Default is old-style C.
-.TP
-.B -a
-Make local variables automatic rather than static
-unless they appear in a
-.SM "DATA, EQUIVALENCE, NAMELIST,"
-or
-.SM SAVE
-statement.
-.TP
-.B -C++
-Output C++ code.
-.TP
-.B -c
-Include original Fortran source as comments.
-.TP
-.B -E
-Declare uninitialized
-.SM COMMON
-to be
-.B Extern
-(overridably defined in
-.F f2c.h
-as
-.B extern).
-.TP
-.B -ec
-Place uninitialized
-.SM COMMON
-blocks in separate files:
-.B COMMON /ABC/
-appears in file
-.BR abc_com.c .
-Option
-.LR -e1c
-bundles the separate files
-into the output file, with comments that give an unbundling
-.IR sed (1)
-script.
-.TP
-.B -ext
-Complain about
-.IR f\^77 (1)
-extensions.
-.TP
-.B -f
-Assume free-format input: accept text after column 72 and do not
-pad fixed-format lines shorter than 72 characters with blanks.
-.TP
-.B -72
-Treat text appearing after column 72 as an error.
-.TP
-.B -g
-Include original Fortran line numbers in \f(CW#line\fR lines.
-.TP
-.B -h
-Emulate Fortran 66's treatment of Hollerith: try to align character strings on
-word (or, if the option is
-.LR -hd ,
-on double-word) boundaries.
-.TP
-.B -i2
-Similar to
-.BR -I2 ,
-but assume a modified
-.I libF77
-and
-.I libI77
-(compiled with
-.BR -Df\^2c_i2 ),
-so
-.SM INTEGER
-and
-.SM LOGICAL
-variables may be assigned by
-.SM INQUIRE
-and array lengths are stored in short ints.
-.TP
-.B -kr
-Use temporary values to enforce Fortran expression evaluation
-where K&R (first edition) parenthesization rules allow rearrangement.
-If the option is
-.LR -krd ,
-use double precision temporaries even for single-precision operands.
-.TP
-.B -P
-Write a
-.IB file .P
-of ANSI (or C++) prototypes
-for definitions in each input
-.IB file .f
-or
-.IB file .F .
-When reading Fortran from standard input, write prototypes
-at the beginning of standard output. Option
-.B -Ps
-implies
-.B -P
-and gives exit status 4 if rerunning
-.I f\^2c
-may change prototypes or declarations.
-.TP
-.B -p
-Supply preprocessor definitions to make common-block members
-look like local variables.
-.TP
-.B -R
-Do not promote
-.SM REAL
-functions and operations to
-.SM DOUBLE PRECISION.
-Option
-.L -!R
-confirms the default, which imitates
-.IR f\^77 .
-.TP
-.B -r
-Cast values of REAL functions (including intrinsics) to REAL.
-.TP
-.B -r8
-Promote
-.SM REAL
-to
-.SM DOUBLE PRECISION, COMPLEX
-to
-.SM DOUBLE COMPLEX.
-.TP
-.B -s
-Preserve multidimensional subscripts.
-.TP
-.BI -T dir
-Put temporary files in directory
-.I dir.
-.TP
-.B -w8
-Suppress warnings when
-.SM COMMON
-or
-.SM EQUIVALENCE
-forces odd-word alignment of doubles.
-.TP
-.BI -W n
-Assume
-.I n
-characters/word (default 4)
-when initializing numeric variables with character data.
-.TP
-.B -z
-Do not implicitly recognize
-.SM DOUBLE COMPLEX.
-.TP
-.B -!bs
-Do not recognize \fIb\fRack\fIs\fRlash escapes
-(\e", \e', \e0, \e\e, \eb, \ef, \en, \er, \et, \ev) in character strings.
-.TP
-.B -!c
-Inhibit C output, but produce
-.B -P
-output.
-.TP
-.B -!I
-Reject
-.B include
-statements.
-.TP
-.B -!i8
-Disallow
-.SM INTEGER*8.
-.TP
-.B -!it
-Don't infer types of untyped
-.SM EXTERNAL
-procedures from use as parameters to previously defined or prototyped
-procedures.
-.TP
-.B -!P
-Do not attempt to infer
-.SM ANSI
-or C++
-prototypes from usage.
-.PP
-The resulting C invokes the support routines of
-.IR f\^77 ;
-object code should be loaded by
-.I f\^77
-or with
-.IR ld (1)
-or
-.IR cc (1)
-options
-.BR "-lF77 -lI77 -lm" .
-Calling conventions
-are those of
-.IR f\&77 :
-see the reference below.
-.br
-.SH FILES
-.TP
-.IB file .[fF]
-input file
-.TP
-.B *.c
-output file
-.TP
-.F /usr/include/f2c.h
-header file
-.TP
-.F /usr/lib/libF77.a
-intrinsic function library
-.TP
-.F /usr/lib/libI77.a
-Fortran I/O library
-.TP
-.F /lib/libc.a
-C library, see section 3
-.SH "SEE ALSO"
-S. I. Feldman and
-P. J. Weinberger,
-`A Portable Fortran 77 Compiler',
-\fIUNIX Time Sharing System Programmer's Manual\fR,
-Tenth Edition, Volume 2, AT&T Bell Laboratories, 1990.
-.SH DIAGNOSTICS
-The diagnostics produced by
-.I f\^2c
-are intended to be
-self-explanatory.
-.SH BUGS
-Floating-point constant expressions are simplified in
-the floating-point arithmetic of the machine running
-.IR f\^2c ,
-so they are typically accurate to at most 16 or 17 decimal places.
-.br
-Untypable
-.SM EXTERNAL
-functions are declared
-.BR int .
diff --git a/usr.bin/f2c/f77.script b/usr.bin/f2c/f77.script
deleted file mode 100644
index d98bd753a689..000000000000
--- a/usr.bin/f2c/f77.script
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/bin/sh
-# Compile Fortran code, adding -lf2c.
-# This is a slightly modified g++ script.
-
-: || exec /bin/sh -f $0 $argv:q
-
-# The compiler name might be different when doing cross-compilation
-# (this should be configured)
-gcc_name=cc
-speclang=-xnone
-
-# replace the command name by the name of the new command
-progname=`basename $0`
-case "$0" in
- */*)
- gcc=`echo $0 | sed -e "s;/[^/]*$;;"`/$gcc_name
- ;;
- *)
- gcc=$gcc_name
- ;;
-esac
-
-# $first is yes for first arg, no afterwards.
-first=yes
-# If next arg is the argument of an option, $quote is non-empty.
-# More precisely, it is the option that wants an argument.
-quote=
-# $library is made empty to disable use of libf2c.
-#library=-lF77 -lI77 -lm
-library="-lf2c -lm"
-numargs=$#
-
-# ash requires the newline before `do'.
-for arg
-do
- if [ $first = yes ]
- then
- # Need some 1st arg to `set' which does not begin with `-'.
- # We get rid of it after the loop ends.
- set gcc
- first=no
- fi
- # If you have to ask what this does, you should not edit this file. :-)
- # The ``S'' at the start is so that echo -nostdinc does not eat the
- # -nostdinc.
- arg=`echo "S$arg" | sed "s/^S//; s/'/'\\\\\\\\''/g"`
- if [ x$quote != x ]
- then
- quote=
- else
- quote=
- case $arg in
- -nostdlib)
- # Inhibit linking with -lf2c.
- library=
- ;;
- -lm | -lmath)
- # Because libf2c uses things from the math library, make sure it
- # always comes before the math library. We recognize both -lm
- # and -lmath, since on some systems (e.g. m88k SVR3), it
- # doesn't call it libm.a for some reason.
- #set "$@" $library
- #library=""
- ;;
- -[bBVDUoeTuIYmLiA] | -Tdata)
- # these switches take following word as argument,
- # so don't treat it as a file name.
- quote=$arg
- ;;
- -[cSEM] | -MM)
- # Don't specify libraries if we won't link,
- # since that would cause a warning.
- library=
- ;;
- -x*)
- speclang=$arg
- ;;
- -v)
- # catch `f77 -v'
- if [ $numargs = 1 ] ; then library="" ; fi
- ;;
- -*)
- # Pass other options through; they don't need -x and aren't inputs.
- ;;
- *)
- # If file ends in .i, put options around it.
- # But not if a specified -x option is currently active.
- case "$speclang $arg" in -xnone\ *.i)
- set "$@" -xf2c "'$arg'" -xnone
- continue
- esac
- ;;
- esac
- fi
- set "$@" "'$arg'"
-done
-
-# Get rid of that initial 1st arg
-if [ $first = no ]; then
- shift
-else
- echo "$0: No input files specified."
- exit 1
-fi
-
-if [ x$quote != x ]
-then
- echo "$0: argument to \`$quote' missing"
- exit 1
-fi
-
-eval $gcc "$@" $library
-
-
diff --git a/usr.bin/f2c/gram.c b/usr.bin/f2c/gram.c
deleted file mode 100644
index 99ac190e9d06..000000000000
--- a/usr.bin/f2c/gram.c
+++ /dev/null
@@ -1,1829 +0,0 @@
-# define SEOS 1
-# define SCOMMENT 2
-# define SLABEL 3
-# define SUNKNOWN 4
-# define SHOLLERITH 5
-# define SICON 6
-# define SRCON 7
-# define SDCON 8
-# define SBITCON 9
-# define SOCTCON 10
-# define SHEXCON 11
-# define STRUE 12
-# define SFALSE 13
-# define SNAME 14
-# define SNAMEEQ 15
-# define SFIELD 16
-# define SSCALE 17
-# define SINCLUDE 18
-# define SLET 19
-# define SASSIGN 20
-# define SAUTOMATIC 21
-# define SBACKSPACE 22
-# define SBLOCK 23
-# define SCALL 24
-# define SCHARACTER 25
-# define SCLOSE 26
-# define SCOMMON 27
-# define SCOMPLEX 28
-# define SCONTINUE 29
-# define SDATA 30
-# define SDCOMPLEX 31
-# define SDIMENSION 32
-# define SDO 33
-# define SDOUBLE 34
-# define SELSE 35
-# define SELSEIF 36
-# define SEND 37
-# define SENDFILE 38
-# define SENDIF 39
-# define SENTRY 40
-# define SEQUIV 41
-# define SEXTERNAL 42
-# define SFORMAT 43
-# define SFUNCTION 44
-# define SGOTO 45
-# define SASGOTO 46
-# define SCOMPGOTO 47
-# define SARITHIF 48
-# define SLOGIF 49
-# define SIMPLICIT 50
-# define SINQUIRE 51
-# define SINTEGER 52
-# define SINTRINSIC 53
-# define SLOGICAL 54
-# define SNAMELIST 55
-# define SOPEN 56
-# define SPARAM 57
-# define SPAUSE 58
-# define SPRINT 59
-# define SPROGRAM 60
-# define SPUNCH 61
-# define SREAD 62
-# define SREAL 63
-# define SRETURN 64
-# define SREWIND 65
-# define SSAVE 66
-# define SSTATIC 67
-# define SSTOP 68
-# define SSUBROUTINE 69
-# define STHEN 70
-# define STO 71
-# define SUNDEFINED 72
-# define SWRITE 73
-# define SLPAR 74
-# define SRPAR 75
-# define SEQUALS 76
-# define SCOLON 77
-# define SCOMMA 78
-# define SCURRENCY 79
-# define SPLUS 80
-# define SMINUS 81
-# define SSTAR 82
-# define SSLASH 83
-# define SPOWER 84
-# define SCONCAT 85
-# define SAND 86
-# define SOR 87
-# define SNEQV 88
-# define SEQV 89
-# define SNOT 90
-# define SEQ 91
-# define SLT 92
-# define SGT 93
-# define SLE 94
-# define SGE 95
-# define SNE 96
-# define SENDDO 97
-# define SWHILE 98
-# define SSLASHD 99
-
-/* # line 124 "gram.in" */
-#include "defs.h"
-#include "p1defs.h"
-
-static int nstars; /* Number of labels in an
- alternate return CALL */
-static int datagripe;
-static int ndim;
-static int vartype;
-int new_dcl;
-static ftnint varleng;
-static struct Dims dims[MAXDIM+1];
-extern struct Labelblock **labarray; /* Labels in an alternate
- return CALL */
-extern int maxlablist;
-
-/* The next two variables are used to verify that each statement might be reached
- during runtime. lastwasbranch is tested only in the defintion of the
- stat: nonterminal. */
-
-int lastwasbranch = NO;
-static int thiswasbranch = NO;
-extern ftnint yystno;
-extern flag intonly;
-static chainp datastack;
-extern long laststfcn, thisstno;
-extern int can_include; /* for netlib */
-
-ftnint convci();
-Addrp nextdata();
-expptr mklogcon(), mkaddcon(), mkrealcon(), mkstrcon(), mkbitcon();
-expptr mkcxcon();
-struct Listblock *mklist();
-struct Listblock *mklist();
-struct Impldoblock *mkiodo();
-Extsym *comblock();
-#define ESNULL (Extsym *)0
-#define NPNULL (Namep)0
-#define LBNULL (struct Listblock *)0
-extern void freetemps(), make_param();
-
- static void
-pop_datastack() {
- chainp d0 = datastack;
- if (d0->datap)
- curdtp = (chainp)d0->datap;
- datastack = d0->nextp;
- d0->nextp = 0;
- frchain(&d0);
- }
-
-
-/* # line 178 "gram.in" */
-typedef union {
- int ival;
- ftnint lval;
- char *charpval;
- chainp chval;
- tagptr tagval;
- expptr expval;
- struct Labelblock *labval;
- struct Nameblock *namval;
- struct Eqvchain *eqvval;
- Extsym *extval;
- } YYSTYPE;
-#define yyclearin yychar = -1
-#define yyerrok yyerrflag = 0
-extern int yychar;
-typedef int yytabelem;
-extern yytabelem yyerrflag;
-#ifndef YYMAXDEPTH
-#define YYMAXDEPTH 150
-#endif
-YYSTYPE yylval, yyval;
-# define YYERRCODE 256
-yytabelem yyexca[] ={
--1, 1,
- 0, -1,
- -2, 0,
--1, 20,
- 1, 38,
- -2, 228,
--1, 24,
- 1, 42,
- -2, 228,
--1, 122,
- 6, 240,
- -2, 228,
--1, 150,
- 1, 244,
- -2, 188,
--1, 174,
- 1, 265,
- 78, 265,
- -2, 188,
--1, 223,
- 77, 173,
- -2, 139,
--1, 245,
- 74, 228,
- -2, 225,
--1, 271,
- 1, 286,
- -2, 143,
--1, 275,
- 1, 295,
- 78, 295,
- -2, 145,
--1, 328,
- 77, 174,
- -2, 141,
--1, 358,
- 1, 267,
- 14, 267,
- 74, 267,
- 78, 267,
- -2, 189,
--1, 436,
- 91, 0,
- 92, 0,
- 93, 0,
- 94, 0,
- 95, 0,
- 96, 0,
- -2, 153,
--1, 453,
- 1, 289,
- 78, 289,
- -2, 143,
--1, 455,
- 1, 291,
- 78, 291,
- -2, 143,
--1, 457,
- 1, 293,
- 78, 293,
- -2, 143,
--1, 459,
- 1, 296,
- 78, 296,
- -2, 144,
--1, 504,
- 78, 289,
- -2, 143,
- };
-# define YYNPROD 301
-# define YYLAST 1346
-yytabelem yyact[]={
-
- 237, 274, 471, 317, 316, 412, 420, 297, 470, 399,
- 413, 397, 386, 357, 398, 266, 128, 356, 273, 252,
- 292, 5, 116, 295, 326, 303, 222, 99, 184, 121,
- 195, 229, 17, 203, 270, 304, 313, 199, 201, 118,
- 94, 202, 396, 104, 210, 183, 236, 101, 106, 234,
- 264, 103, 111, 336, 260, 95, 96, 97, 165, 166,
- 334, 335, 336, 395, 105, 311, 309, 190, 130, 131,
- 132, 133, 120, 135, 119, 114, 157, 129, 157, 475,
- 103, 272, 334, 335, 336, 396, 521, 103, 278, 483,
- 535, 165, 166, 334, 335, 336, 342, 341, 340, 339,
- 338, 137, 343, 345, 344, 347, 346, 348, 450, 258,
- 259, 260, 539, 165, 166, 258, 259, 260, 261, 525,
- 102, 522, 155, 409, 155, 186, 187, 103, 408, 117,
- 165, 166, 258, 259, 260, 318, 100, 527, 484, 188,
- 446, 185, 480, 230, 240, 240, 194, 193, 290, 120,
- 211, 119, 462, 481, 157, 294, 482, 257, 157, 243,
- 468, 214, 463, 469, 461, 464, 460, 239, 241, 220,
- 215, 218, 157, 219, 213, 165, 166, 334, 335, 336,
- 342, 341, 340, 157, 371, 452, 343, 345, 344, 347,
- 346, 348, 443, 428, 377, 294, 102, 102, 102, 102,
- 155, 189, 447, 149, 155, 446, 192, 103, 98, 196,
- 197, 198, 277, 376, 320, 321, 206, 288, 155, 289,
- 300, 375, 299, 324, 315, 328, 275, 275, 330, 155,
- 310, 333, 196, 216, 217, 350, 269, 207, 308, 352,
- 353, 333, 100, 177, 354, 349, 323, 112, 245, 257,
- 247, 110, 157, 417, 286, 287, 418, 362, 157, 157,
- 157, 157, 157, 257, 257, 109, 108, 268, 279, 280,
- 281, 265, 107, 355, 4, 333, 427, 465, 378, 370,
- 170, 172, 176, 257, 165, 166, 258, 259, 260, 261,
- 102, 406, 232, 293, 407, 381, 422, 390, 155, 400,
- 391, 223, 419, 422, 155, 155, 155, 155, 155, 117,
- 221, 314, 392, 319, 387, 359, 372, 196, 360, 373,
- 374, 333, 333, 536, 350, 333, 275, 250, 424, 333,
- 405, 333, 410, 532, 230, 432, 433, 434, 435, 436,
- 437, 438, 439, 440, 441, 403, 331, 156, 401, 332,
- 531, 333, 530, 333, 333, 333, 388, 526, 380, 529,
- 524, 157, 257, 333, 431, 492, 257, 257, 257, 257,
- 257, 382, 383, 235, 426, 384, 358, 494, 296, 333,
- 448, 165, 166, 258, 259, 260, 261, 451, 165, 166,
- 258, 259, 260, 261, 103, 445, 472, 400, 421, 191,
- 402, 196, 103, 150, 307, 174, 285, 155, 474, 246,
- 476, 416, 467, 466, 242, 226, 223, 200, 212, 136,
- 209, 486, 171, 488, 490, 275, 275, 275, 141, 240,
- 496, 429, 329, 333, 333, 333, 333, 333, 333, 333,
- 333, 333, 333, 403, 497, 479, 401, 403, 487, 154,
- 257, 154, 495, 493, 306, 485, 502, 454, 456, 458,
- 500, 491, 268, 499, 505, 506, 507, 103, 451, 271,
- 271, 472, 30, 333, 414, 501, 400, 508, 511, 509,
- 387, 244, 208, 510, 516, 514, 515, 333, 517, 333,
- 513, 333, 520, 293, 518, 225, 240, 333, 402, 523,
- 92, 248, 402, 528, 6, 262, 123, 249, 81, 80,
- 275, 275, 275, 79, 534, 533, 479, 78, 173, 263,
- 314, 77, 403, 76, 537, 401, 351, 154, 75, 333,
- 282, 154, 60, 49, 48, 333, 45, 33, 333, 538,
- 113, 205, 454, 456, 458, 154, 267, 165, 166, 334,
- 335, 336, 342, 540, 503, 411, 154, 204, 394, 393,
- 298, 478, 503, 503, 503, 134, 389, 312, 115, 379,
- 26, 25, 24, 23, 302, 22, 305, 402, 21, 385,
- 284, 9, 503, 8, 7, 2, 519, 301, 20, 319,
- 164, 51, 489, 291, 228, 327, 325, 415, 91, 361,
- 255, 53, 337, 19, 55, 365, 366, 367, 368, 369,
- 37, 224, 3, 1, 0, 351, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 154, 0, 0, 0, 0,
- 0, 154, 154, 154, 154, 154, 0, 0, 0, 267,
- 0, 512, 267, 267, 165, 166, 334, 335, 336, 342,
- 341, 340, 339, 338, 0, 343, 345, 344, 347, 346,
- 348, 165, 166, 334, 335, 336, 342, 341, 453, 455,
- 457, 0, 343, 345, 344, 347, 346, 348, 0, 0,
- 305, 0, 459, 0, 0, 0, 0, 165, 166, 334,
- 335, 336, 342, 341, 340, 339, 338, 351, 343, 345,
- 344, 347, 346, 348, 444, 0, 0, 0, 449, 165,
- 166, 334, 335, 336, 342, 341, 340, 339, 338, 0,
- 343, 345, 344, 347, 346, 348, 165, 166, 334, 335,
- 336, 342, 0, 0, 154, 0, 498, 343, 345, 344,
- 347, 346, 348, 0, 0, 267, 0, 0, 0, 0,
- 0, 442, 0, 504, 455, 457, 165, 166, 334, 335,
- 336, 342, 341, 340, 339, 338, 0, 343, 345, 344,
- 347, 346, 348, 0, 0, 0, 0, 0, 0, 430,
- 0, 477, 0, 305, 165, 166, 334, 335, 336, 342,
- 341, 340, 339, 338, 0, 343, 345, 344, 347, 346,
- 348, 423, 0, 0, 0, 0, 165, 166, 334, 335,
- 336, 342, 341, 340, 339, 338, 0, 343, 345, 344,
- 347, 346, 348, 0, 0, 0, 267, 0, 0, 0,
- 0, 165, 166, 334, 335, 336, 342, 341, 340, 339,
- 338, 12, 343, 345, 344, 347, 346, 348, 0, 0,
- 0, 0, 0, 0, 305, 10, 56, 46, 73, 85,
- 14, 61, 70, 90, 38, 66, 47, 42, 68, 72,
- 31, 67, 35, 34, 11, 87, 36, 18, 41, 39,
- 28, 16, 57, 58, 59, 50, 54, 43, 88, 64,
- 40, 69, 44, 89, 29, 62, 84, 13, 0, 82,
- 65, 52, 86, 27, 74, 63, 15, 0, 0, 71,
- 83, 160, 161, 162, 163, 169, 168, 167, 158, 159,
- 103, 0, 160, 161, 162, 163, 169, 168, 167, 158,
- 159, 103, 0, 0, 32, 160, 161, 162, 163, 169,
- 168, 167, 158, 159, 103, 0, 160, 161, 162, 163,
- 169, 168, 167, 158, 159, 103, 0, 160, 161, 162,
- 163, 169, 168, 167, 158, 159, 103, 0, 160, 161,
- 162, 163, 169, 168, 167, 158, 159, 103, 0, 0,
- 233, 0, 0, 0, 0, 0, 165, 166, 363, 0,
- 364, 233, 227, 0, 0, 0, 238, 165, 166, 231,
- 0, 0, 0, 0, 233, 0, 0, 238, 0, 0,
- 165, 166, 473, 0, 0, 233, 0, 0, 0, 0,
- 238, 165, 166, 231, 0, 0, 233, 0, 0, 0,
- 0, 238, 165, 166, 425, 0, 0, 233, 0, 0,
- 0, 0, 238, 165, 166, 0, 0, 0, 0, 0,
- 0, 0, 0, 238, 160, 161, 162, 163, 169, 168,
- 167, 158, 159, 103, 0, 160, 161, 162, 163, 169,
- 168, 167, 158, 159, 103, 160, 161, 162, 163, 169,
- 168, 167, 158, 159, 103, 0, 0, 0, 160, 161,
- 162, 163, 169, 168, 167, 158, 159, 103, 256, 0,
- 93, 160, 161, 162, 163, 169, 168, 167, 158, 159,
- 103, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 276, 0, 0, 0, 0, 0, 165,
- 166, 0, 122, 0, 322, 125, 126, 127, 0, 238,
- 165, 166, 0, 0, 0, 0, 0, 138, 139, 0,
- 238, 140, 0, 142, 143, 144, 0, 251, 145, 146,
- 147, 0, 148, 165, 166, 253, 0, 254, 0, 0,
- 153, 0, 0, 0, 0, 0, 165, 166, 151, 0,
- 152, 178, 179, 180, 181, 182, 160, 161, 162, 163,
- 169, 168, 167, 158, 159, 103, 160, 161, 162, 163,
- 169, 168, 167, 158, 159, 103, 160, 161, 162, 163,
- 169, 168, 167, 158, 159, 103, 160, 161, 162, 163,
- 169, 168, 167, 158, 159, 103, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 251, 0, 0, 0, 0,
- 0, 165, 166, 283, 0, 153, 0, 0, 0, 0,
- 0, 165, 166, 175, 0, 404, 0, 0, 0, 0,
- 0, 165, 166, 56, 46, 251, 85, 0, 61, 0,
- 90, 165, 166, 47, 73, 0, 0, 0, 70, 0,
- 0, 66, 87, 0, 68, 72, 0, 67, 0, 57,
- 58, 59, 50, 0, 0, 88, 0, 0, 0, 0,
- 89, 0, 62, 84, 0, 64, 82, 69, 52, 86,
- 0, 0, 63, 0, 124, 0, 65, 83, 0, 0,
- 74, 0, 0, 0, 0, 71 };
-yytabelem yypact[]={
-
--1000, 18, 503, 837,-1000,-1000,-1000,-1000,-1000,-1000,
- 495,-1000,-1000,-1000,-1000,-1000,-1000, 164, 453, -35,
- 194, 188, 187, 173, 58, 169, -8, 66,-1000,-1000,
--1000,-1000,-1000,1264,-1000,-1000,-1000, -5,-1000,-1000,
--1000,-1000,-1000,-1000,-1000, 453,-1000,-1000,-1000,-1000,
--1000, 354,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,
--1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,
--1000,-1000,-1000,-1000,-1000,1096, 348,1191, 348, 165,
--1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,
--1000,-1000,-1000,-1000, 453, 453, 453, 453,-1000, 453,
--1000, 325,-1000,-1000, 453,-1000, -11, 453, 453, 453,
- 343,-1000,-1000,-1000, 453, 159,-1000,-1000,-1000,-1000,
- 468, 346, 58,-1000,-1000, 344,-1000,-1000,-1000,-1000,
- 66, 453, 453, 343,-1000,-1000, 234, 342, 489,-1000,
- 341, 917, 963, 963, 340, 475, 453, 335, 453,-1000,
--1000,-1000,-1000,1083,-1000,-1000, 308,1211,-1000,-1000,
--1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,
--1000,1083, 193, 158,-1000,-1000,1049,1049,-1000,-1000,
--1000,-1000,1181, 332,-1000,-1000, 325, 325, 453,-1000,
--1000, 73, 304,-1000, 58,-1000, 304,-1000,-1000,-1000,
- 453,-1000, 380,-1000, 330,1273, -17, 66, -18, 453,
- 475, 37, 963,1060,-1000, 453,-1000,-1000,-1000,-1000,
--1000, 963,-1000, 963, 361,-1000, 963,-1000, 271,-1000,
- 751, 475,-1000, 963,-1000,-1000,-1000, 963, 963,-1000,
- 751,-1000, 963,-1000,-1000, 58, 475,-1000, 301, 240,
--1000,1211,-1000,-1000,-1000, 906,-1000,1211,1211,1211,
-1211,1211, -30, 204, 106, 388,-1000,-1000, 388, 388,
--1000, 143, 135, 116, 751,-1000,1049,-1000,-1000,-1000,
--1000,-1000, 308,-1000,-1000, 300,-1000,-1000, 325,-1000,
--1000, 222,-1000,-1000,-1000, -5,-1000, -36,1201, 453,
--1000, 216,-1000, 45,-1000,-1000, 380, 460,-1000, 453,
--1000,-1000, 178,-1000, 226,-1000,-1000,-1000, 324, 220,
- 726, 751, 952,-1000, 751, 299, 199, 115, 751, 453,
- 704,-1000, 941, 963, 963, 963, 963, 963, 963, 963,
- 963, 963, 963,-1000,-1000,-1000,-1000,-1000,-1000,-1000,
- 676, 114, -31, 646, 629, 321, 127,-1000,-1000,-1000,
-1083, 33, 751,-1000,-1000, 27, -30, -30, -30, 50,
--1000, 388, 106, 107, 106,1049,1049,1049, 607, 88,
- 86, 74,-1000,-1000,-1000, 87,-1000, 201,-1000, 304,
--1000, 113,-1000, 85, 930,-1000,1201,-1000,-1000, -3,
-1070,-1000,-1000,-1000, 963,-1000,-1000, 453,-1000, 380,
- 64, 78,-1000, 8,-1000, 60,-1000,-1000, 453, 963,
- 58, 963, 963, 391,-1000, 290, 303, 963, 963,-1000,
- 475,-1000, 0, -31, -31, -31, 467, 95, 95, 581,
- 646, -22,-1000, 963,-1000, 475, 475, 58,-1000, 308,
--1000,-1000, 388,-1000,-1000,-1000,-1000,-1000,-1000,-1000,
-1049,1049,1049,-1000, 466, 465, -5,-1000,-1000, 930,
--1000,-1000, 564,-1000,-1000,1201,-1000,-1000,-1000,-1000,
- 380,-1000, 460, 460, 453,-1000, 751, 37, 11, 43,
- 751,-1000,-1000,-1000, 963, 285, 751, 41, 282, 62,
--1000, 963, 284, 227, 282, 277, 275, 258,-1000,-1000,
--1000,-1000, 930,-1000,-1000, 7, 248,-1000,-1000,-1000,
--1000,-1000, 963,-1000,-1000, 475,-1000,-1000, 751,-1000,
--1000,-1000,-1000,-1000, 751,-1000,-1000, 751, 34, 475,
--1000 };
-yytabelem yypgo[]={
-
- 0, 613, 612, 13, 611, 81, 15, 32, 610, 604,
- 603, 10, 0, 602, 601, 600, 16, 598, 35, 25,
- 597, 596, 595, 3, 4, 594, 67, 593, 592, 50,
- 34, 18, 26, 101, 20, 591, 30, 373, 1, 292,
- 24, 347, 327, 2, 9, 14, 31, 49, 46, 590,
- 588, 39, 28, 45, 587, 585, 584, 583, 581,1100,
- 40, 580, 579, 12, 578, 575, 573, 572, 571, 570,
- 568, 29, 567, 27, 566, 23, 41, 7, 44, 6,
- 37, 565, 38, 561, 560, 11, 22, 36, 559, 558,
- 8, 17, 33, 557, 555, 541, 5, 540, 472, 537,
- 536, 534, 533, 532, 528, 203, 523, 521, 518, 517,
- 513, 509, 88, 508, 507, 19 };
-yytabelem yyr1[]={
-
- 0, 1, 1, 55, 55, 55, 55, 55, 55, 55,
- 2, 56, 56, 56, 56, 56, 56, 56, 60, 52,
- 33, 53, 53, 61, 61, 62, 62, 63, 63, 26,
- 26, 26, 27, 27, 34, 34, 17, 57, 57, 57,
- 57, 57, 57, 57, 57, 57, 57, 57, 57, 10,
- 10, 10, 74, 7, 8, 9, 9, 9, 9, 9,
- 9, 9, 9, 9, 9, 9, 16, 16, 16, 50,
- 50, 50, 50, 51, 51, 64, 64, 65, 65, 66,
- 66, 80, 54, 54, 67, 67, 81, 82, 76, 83,
- 84, 77, 77, 85, 85, 45, 45, 45, 70, 70,
- 86, 86, 72, 72, 87, 36, 18, 18, 19, 19,
- 75, 75, 89, 88, 88, 90, 90, 43, 43, 91,
- 91, 3, 68, 68, 92, 92, 95, 93, 94, 94,
- 96, 96, 11, 69, 69, 97, 20, 20, 71, 21,
- 21, 22, 22, 38, 38, 38, 39, 39, 39, 39,
- 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
- 12, 12, 13, 13, 13, 13, 13, 13, 37, 37,
- 37, 37, 32, 40, 40, 44, 44, 48, 48, 48,
- 48, 48, 48, 48, 47, 49, 49, 49, 41, 41,
- 42, 42, 42, 42, 42, 42, 42, 42, 58, 58,
- 58, 58, 58, 58, 58, 58, 58, 99, 23, 24,
- 24, 98, 98, 98, 98, 98, 98, 98, 98, 98,
- 98, 98, 4, 100, 101, 101, 101, 101, 73, 73,
- 35, 25, 25, 46, 46, 14, 14, 28, 28, 59,
- 78, 79, 102, 103, 103, 103, 103, 103, 103, 103,
- 103, 103, 103, 103, 103, 103, 103, 104, 111, 111,
- 111, 106, 113, 113, 113, 108, 108, 105, 105, 114,
- 114, 115, 115, 115, 115, 115, 115, 15, 107, 109,
- 110, 110, 29, 29, 6, 6, 30, 30, 30, 31,
- 31, 31, 31, 31, 31, 5, 5, 5, 5, 5,
- 112 };
-yytabelem yyr2[]={
-
- 0, 0, 3, 2, 2, 2, 3, 3, 2, 1,
- 1, 3, 4, 3, 4, 4, 5, 3, 0, 1,
- 1, 0, 1, 2, 3, 1, 3, 1, 3, 0,
- 2, 3, 1, 3, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 2, 1, 5, 7,
- 5, 5, 0, 2, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 0, 4, 6, 3,
- 4, 5, 3, 1, 3, 3, 3, 3, 3, 3,
- 3, 3, 1, 3, 3, 3, 0, 6, 0, 0,
- 0, 2, 3, 1, 3, 1, 2, 1, 1, 3,
- 1, 1, 1, 3, 3, 2, 1, 5, 1, 3,
- 0, 3, 0, 2, 3, 1, 3, 1, 1, 1,
- 3, 1, 3, 3, 4, 1, 0, 2, 1, 3,
- 1, 3, 1, 1, 2, 4, 1, 3, 0, 0,
- 1, 1, 3, 1, 3, 1, 1, 1, 3, 3,
- 3, 3, 2, 3, 3, 3, 3, 3, 2, 3,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
- 4, 5, 5, 0, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 5, 1, 1, 1, 1, 3,
- 1, 1, 3, 3, 3, 3, 2, 3, 1, 7,
- 4, 1, 2, 2, 6, 2, 2, 5, 3, 1,
- 4, 4, 5, 2, 1, 1, 10, 1, 3, 4,
- 3, 3, 1, 1, 3, 3, 7, 7, 0, 1,
- 3, 1, 3, 1, 2, 1, 1, 1, 3, 0,
- 0, 0, 1, 2, 2, 2, 2, 2, 2, 2,
- 3, 4, 4, 2, 3, 1, 3, 3, 1, 1,
- 1, 3, 1, 1, 1, 1, 1, 3, 3, 1,
- 3, 1, 1, 1, 2, 2, 2, 1, 3, 3,
- 4, 4, 1, 3, 1, 5, 1, 1, 1, 3,
- 3, 3, 3, 3, 3, 1, 3, 5, 5, 5,
- 0 };
-yytabelem yychk[]={
-
--1000, -1, -55, -2, 256, 3, 1, -56, -57, -58,
- 18, 37, 4, 60, 23, 69, 44, -7, 40, -10,
- -50, -64, -65, -66, -67, -68, -69, 66, 43, 57,
- -98, 33, 97, -99, 36, 35, 39, -8, 27, 42,
- 53, 41, 30, 50, 55,-100, 20, 29,-101,-102,
- 48, -35, 64, -14, 49, -9, 19, 45, 46, 47,
--103, 24, 58, 68, 52, 63, 28, 34, 31, 54,
- 25, 72, 32, 21, 67,-104,-106,-107,-109,-110,
--111,-113, 62, 73, 59, 22, 65, 38, 51, 56,
- 26, -17, 5, -59, -60, -60, -60, -60, 44, -73,
- 78, -52, -33, 14, 78, 99, -73, 78, 78, 78,
- 78, -73, 78, -97, 83, -70, -86, -33, -51, 85,
- 83, -71, -59, -98, 70, -59, -59, -59, -16, 82,
- -71, -71, -71, -71, -81, -71, -37, -33, -59, -59,
- -59, 74, -59, -59, -59, -59, -59, -59, -59,-105,
- -42, 82, 84, 74, -37, -48, -41, -12, 12, 13,
- 5, 6, 7, 8, -49, 80, 81, 11, 10, 9,
--105, 74,-105,-108, -42, 82,-105, 78, -59, -59,
- -59, -59, -59, -53, -52, -53, -52, -52, -60, -33,
- -26, 74, -33, -76, -51, -36, -33, -33, -33, -80,
- 74, -82, -76, -92, -93, -95, -33, 78, 14, 74,
- -78, -73, 74, -78, -36, -51, -33, -33, -80, -82,
- -92, 76, -32, 74, -4, 6, 74, 75, -25, -46,
- -38, 82, -39, 74, -47, -37, -48, -12, 90, -40,
- -38, -40, 74, -3, 6, -33, 74, -33, -41,-114,
- -42, 74,-115, 82, 84, -15, 15, -12, 82, 83,
- 84, 85, -41, -41, -29, 78, -6, -37, 74, 78,
- -30, -39, -5, -31, -38, -47, 74, -30,-112,-112,
--112,-112, -41, 82, -61, 74, -26, -26, -52, -71,
- 75, -27, -34, -33, 82, -75, 74, -77, -84, -73,
- -75, -54, -37, -19, -18, -37, 74, 74, -7, 83,
- -86, 83, -72, -87, -33, -3, -24, -23, 98, -33,
- -38, -38, 74, -36, -38, -21, -40, -22, -38, 71,
- -38, 75, 78, -12, 82, 83, 84, -13, 89, 88,
- 87, 86, 85, 91, 93, 92, 95, 94, 96, -3,
- -38, -39, -38, -38, -38, -73, -91, -3, 75, 75,
- 78, -41, -38, 82, 84, -41, -41, -41, -41, -41,
- 75, 78, -29, -29, -29, 78, 78, 78, -38, -39,
- -5, -31,-112,-112, 75, -62, -63, 14, -26, -74,
- 75, 78, -16, -88, -89, 99, 78, -85, -45, -44,
- -12, -47, -33, -48, 74, -36, 75, 78, 83, 78,
- -19, -94, -96, -11, 14, -20, -33, 75, 78, 76,
- -79, 74, 76, 75, -79, 82, 75, 77, 78, -33,
- 75, -46, -38, -38, -38, -38, -38, -38, -38, -38,
- -38, -38, 75, 78, 75, 74, 78, 75,-115, -41,
- 75, -6, 78, -39, -5, -39, -5, -39, -5, 75,
- 78, 78, 78, 75, 78, 76, -75, -34, 75, 78,
- -90, -43, -38, 82, -85, 82, -44, -37, -83, -18,
- 78, 75, 78, 81, 78, -87, -38, -73, -38, -28,
- -38, 70, 75, -32, 74, -40, -38, -3, -39, -91,
- -3, -73, -23, -33, -39, -23, -23, -23, -63, 14,
- -16, -90, 77, -45, -44, -77, -23, -96, -11, -33,
- -24, 75, 78, -79, 75, 78, 75, 75, -38, 75,
- 75, 75, 75, -43, -38, 83, 75, -38, -3, 78,
- -3 };
-yytabelem yydef[]={
-
- 1, -2, 0, 0, 9, 10, 2, 3, 4, 5,
- 0, 239, 8, 18, 18, 18, 18, 228, 0, 37,
- -2, 39, 40, 41, -2, 43, 44, 45, 47, 138,
- 198, 239, 201, 0, 239, 239, 239, 66, 138, 138,
- 138, 138, 86, 138, 133, 0, 239, 239, 214, 215,
- 239, 217, 239, 239, 239, 54, 223, 239, 239, 239,
- 242, 239, 235, 236, 55, 56, 57, 58, 59, 60,
- 61, 62, 63, 64, 65, 0, 0, 0, 0, 255,
- 239, 239, 239, 239, 239, 258, 259, 260, 262, 263,
- 264, 6, 36, 7, 21, 21, 0, 0, 18, 0,
- 229, 29, 19, 20, 0, 88, 0, 229, 0, 0,
- 0, 88, 126, 134, 0, 46, 98, 100, 101, 73,
- 0, 0, -2, 202, 203, 0, 205, 206, 53, 240,
- 0, 0, 0, 0, 88, 126, 0, 168, 0, 213,
- 0, 0, 173, 173, 0, 0, 0, 0, 0, 243,
- -2, 245, 246, 0, 190, 191, 0, 0, 177, 178,
- 179, 180, 181, 182, 183, 160, 161, 185, 186, 187,
- 247, 0, 248, 249, -2, 266, 253, 0, 300, 300,
- 300, 300, 0, 11, 22, 13, 29, 29, 0, 138,
- 17, 0, 110, 90, 228, 72, 110, 76, 78, 80,
- 0, 85, 0, 123, 125, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 69, 0, 75, 77, 79, 84,
- 122, 0, 169, -2, 0, 222, 0, 218, 0, 231,
- 233, 0, 143, 0, 145, 146, 147, 0, 0, 220,
- 174, 221, 0, 224, 121, -2, 0, 230, 271, 0,
- 188, 0, 269, 272, 273, 0, 277, 0, 0, 0,
- 0, 0, 196, 271, 250, 0, 282, 284, 0, 0,
- 254, -2, 287, 288, 0, -2, 0, 256, 257, 261,
- 278, 279, 300, 300, 12, 0, 14, 15, 29, 52,
- 30, 0, 32, 34, 35, 66, 112, 0, 0, 0,
- 105, 0, 82, 0, 108, 106, 0, 0, 127, 0,
- 99, 74, 0, 102, 0, 241, 200, 209, 0, 0,
- 0, 241, 0, 70, 211, 0, 0, 140, -2, 0,
- 0, 219, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 162, 163, 164, 165, 166, 167, 234,
- 0, 143, 152, 158, 0, 0, 0, 119, -2, 268,
- 0, 0, 274, 275, 276, 192, 193, 194, 195, 197,
- 267, 0, 252, 0, 251, 0, 0, 0, 0, 143,
- 0, 0, 280, 281, 23, 0, 25, 27, 16, 110,
- 31, 0, 50, 0, 0, 51, 0, 91, 93, 95,
- 0, 97, 175, 176, 0, 71, 81, 0, 89, 0,
- 0, 0, 128, 130, 132, 135, 136, 48, 0, 0,
- 228, 0, 0, 0, 67, 0, 170, 173, 0, 212,
- 0, 232, 148, 149, 150, 151, -2, 154, 155, 156,
- 157, 159, 144, 0, 207, 0, 0, 228, 270, 271,
- 189, 283, 0, -2, 290, -2, 292, -2, 294, -2,
- 0, 0, 0, 24, 0, 0, 66, 33, 111, 0,
- 113, 115, 118, 117, 92, 0, 96, 83, 90, 109,
- 0, 124, 0, 0, 0, 103, 104, 0, 0, 208,
- 237, 204, 241, 171, 173, 0, 142, 0, 143, 0,
- 120, 0, 0, 168, -2, 0, 0, 0, 26, 28,
- 49, 114, 0, 94, 95, 0, 0, 129, 131, 137,
- 199, 210, 0, 68, 172, 0, 184, 226, 227, 285,
- 297, 298, 299, 116, 118, 87, 107, 238, 0, 0,
- 216 };
-# ifdef YYDEBUG
-# include "y.debug"
-# endif
-
-# define YYFLAG -1000
-# define YYERROR goto yyerrlab
-# define YYACCEPT return(0)
-# define YYABORT return(1)
-
-/* parser for yacc output */
-
-#ifdef YYDEBUG
-int yydebug = 0; /* 1 for debugging */
-#endif
-YYSTYPE yyv[YYMAXDEPTH]; /* where the values are stored */
-int yychar = -1; /* current input token number */
-int yynerrs = 0; /* number of errors */
-yytabelem yyerrflag = 0; /* error recovery flag */
-
-yyparse()
-{ yytabelem yys[YYMAXDEPTH];
- int yyj, yym;
- register YYSTYPE *yypvt;
- register int yystate, yyn;
- register yytabelem *yyps;
- register YYSTYPE *yypv;
- register yytabelem *yyxi;
-
- yystate = 0;
- yychar = -1;
- yynerrs = 0;
- yyerrflag = 0;
- yyps= &yys[-1];
- yypv= &yyv[-1];
-
-yystack: /* put a state and value onto the stack */
-#ifdef YYDEBUG
- if(yydebug >= 3)
- if(yychar < 0 || yytoknames[yychar] == 0)
- printf("char %d in %s", yychar, yystates[yystate]);
- else
- printf("%s in %s", yytoknames[yychar], yystates[yystate]);
-#endif
- if( ++yyps >= &yys[YYMAXDEPTH] ) {
- yyerror( "yacc stack overflow" );
- return(1);
- }
- *yyps = yystate;
- ++yypv;
- *yypv = yyval;
-yynewstate:
- yyn = yypact[yystate];
- if(yyn <= YYFLAG) goto yydefault; /* simple state */
- if(yychar<0) {
- yychar = yylex();
-#ifdef YYDEBUG
- if(yydebug >= 2) {
- if(yychar <= 0)
- printf("lex EOF\n");
- else if(yytoknames[yychar])
- printf("lex %s\n", yytoknames[yychar]);
- else
- printf("lex (%c)\n", yychar);
- }
-#endif
- if(yychar < 0)
- yychar = 0;
- }
- if((yyn += yychar) < 0 || yyn >= YYLAST)
- goto yydefault;
- if( yychk[ yyn=yyact[ yyn ] ] == yychar ){ /* valid shift */
- yychar = -1;
- yyval = yylval;
- yystate = yyn;
- if( yyerrflag > 0 ) --yyerrflag;
- goto yystack;
- }
-yydefault:
- /* default state action */
- if( (yyn=yydef[yystate]) == -2 ) {
- if(yychar < 0) {
- yychar = yylex();
-#ifdef YYDEBUG
- if(yydebug >= 2)
- if(yychar < 0)
- printf("lex EOF\n");
- else
- printf("lex %s\n", yytoknames[yychar]);
-#endif
- if(yychar < 0)
- yychar = 0;
- }
- /* look through exception table */
- for(yyxi=yyexca; (*yyxi!= (-1)) || (yyxi[1]!=yystate);
- yyxi += 2 ) ; /* VOID */
- while( *(yyxi+=2) >= 0 ){
- if( *yyxi == yychar ) break;
- }
- if( (yyn = yyxi[1]) < 0 ) return(0); /* accept */
- }
- if( yyn == 0 ){ /* error */
- /* error ... attempt to resume parsing */
- switch( yyerrflag ){
- case 0: /* brand new error */
-#ifdef YYDEBUG
- yyerror("syntax error\n%s", yystates[yystate]);
- if(yytoknames[yychar])
- yyerror("saw %s\n", yytoknames[yychar]);
- else if(yychar >= ' ' && yychar < '\177')
- yyerror("saw `%c'\n", yychar);
- else if(yychar == 0)
- yyerror("saw EOF\n");
- else
- yyerror("saw char 0%o\n", yychar);
-#else
- yyerror( "syntax error" );
-#endif
-yyerrlab:
- ++yynerrs;
- case 1:
- case 2: /* incompletely recovered error ... try again */
- yyerrflag = 3;
- /* find a state where "error" is a legal shift action */
- while ( yyps >= yys ) {
- yyn = yypact[*yyps] + YYERRCODE;
- if( yyn>= 0 && yyn < YYLAST && yychk[yyact[yyn]] == YYERRCODE ){
- yystate = yyact[yyn]; /* simulate a shift of "error" */
- goto yystack;
- }
- yyn = yypact[*yyps];
- /* the current yyps has no shift onn "error", pop stack */
-#ifdef YYDEBUG
- if( yydebug ) printf( "error recovery pops state %d, uncovers %d\n", *yyps, yyps[-1] );
-#endif
- --yyps;
- --yypv;
- }
- /* there is no state on the stack with an error shift ... abort */
-yyabort:
- return(1);
- case 3: /* no shift yet; clobber input char */
-#ifdef YYDEBUG
- if( yydebug ) {
- printf("error recovery discards ");
- if(yytoknames[yychar])
- printf("%s\n", yytoknames[yychar]);
- else if(yychar >= ' ' && yychar < '\177')
- printf("`%c'\n", yychar);
- else if(yychar == 0)
- printf("EOF\n");
- else
- printf("char 0%o\n", yychar);
- }
-#endif
- if( yychar == 0 ) goto yyabort; /* don't discard EOF, quit */
- yychar = -1;
- goto yynewstate; /* try again in the same state */
- }
- }
- /* reduction by production yyn */
-#ifdef YYDEBUG
- if(yydebug) { char *s;
- printf("reduce %d in:\n\t", yyn);
- for(s = yystates[yystate]; *s; s++) {
- putchar(*s);
- if(*s == '\n' && *(s+1))
- putchar('\t');
- }
- }
-#endif
- yyps -= yyr2[yyn];
- yypvt = yypv;
- yypv -= yyr2[yyn];
- yyval = yypv[1];
- yym=yyn;
- /* consult goto table to find next state */
- yyn = yyr1[yyn];
- yyj = yypgo[yyn] + *yyps + 1;
- if( yyj>=YYLAST || yychk[ yystate = yyact[yyj] ] != -yyn ) yystate = yyact[yypgo[yyn]];
- switch(yym){
-
-case 3:
-/* # line 226 "gram.in" */
-{
-/* stat: is the nonterminal for Fortran statements */
-
- lastwasbranch = NO; } break;
-case 5:
-/* # line 232 "gram.in" */
-{ /* forbid further statement function definitions... */
- if (parstate == INDATA && laststfcn != thisstno)
- parstate = INEXEC;
- thisstno++;
- if(yypvt[-1].labval && (yypvt[-1].labval->labelno==dorange))
- enddo(yypvt[-1].labval->labelno);
- if(lastwasbranch && thislabel==NULL)
- warn("statement cannot be reached");
- lastwasbranch = thiswasbranch;
- thiswasbranch = NO;
- if(yypvt[-1].labval)
- {
- if(yypvt[-1].labval->labtype == LABFORMAT)
- err("label already that of a format");
- else
- yypvt[-1].labval->labtype = LABEXEC;
- }
- freetemps();
- } break;
-case 6:
-/* # line 252 "gram.in" */
-{ if (can_include)
- doinclude( yypvt[-0].charpval );
- else {
- fprintf(diagfile, "Cannot open file %s\n", yypvt[-0].charpval);
- done(1);
- }
- } break;
-case 7:
-/* # line 260 "gram.in" */
-{ if (yypvt[-2].labval)
- lastwasbranch = NO;
- endproc(); /* lastwasbranch = NO; -- set in endproc() */
- } break;
-case 8:
-/* # line 265 "gram.in" */
-{ extern void unclassifiable();
- unclassifiable();
-
-/* flline flushes the current line, ignoring the rest of the text there */
-
- flline(); } break;
-case 9:
-/* # line 272 "gram.in" */
-{ flline(); needkwd = NO; inioctl = NO;
- yyerrok; yyclearin; } break;
-case 10:
-/* # line 277 "gram.in" */
-{
- if(yystno != 0)
- {
- yyval.labval = thislabel = mklabel(yystno);
- if( ! headerdone ) {
- if (procclass == CLUNKNOWN)
- procclass = CLMAIN;
- puthead(CNULL, procclass);
- }
- if(thislabel->labdefined)
- execerr("label %s already defined",
- convic(thislabel->stateno) );
- else {
- if(thislabel->blklevel!=0 && thislabel->blklevel<blklevel
- && thislabel->labtype!=LABFORMAT)
- warn1("there is a branch to label %s from outside block",
- convic( (ftnint) (thislabel->stateno) ) );
- thislabel->blklevel = blklevel;
- thislabel->labdefined = YES;
- if(thislabel->labtype != LABFORMAT)
- p1_label((long)(thislabel - labeltab));
- }
- }
- else yyval.labval = thislabel = NULL;
- } break;
-case 11:
-/* # line 305 "gram.in" */
-{startproc(yypvt[-0].extval, CLMAIN); } break;
-case 12:
-/* # line 307 "gram.in" */
-{ warn("ignoring arguments to main program");
- /* hashclear(); */
- startproc(yypvt[-1].extval, CLMAIN); } break;
-case 13:
-/* # line 311 "gram.in" */
-{ if(yypvt[-0].extval) NO66("named BLOCKDATA");
- startproc(yypvt[-0].extval, CLBLOCK); } break;
-case 14:
-/* # line 314 "gram.in" */
-{ entrypt(CLPROC, TYSUBR, (ftnint) 0, yypvt[-1].extval, yypvt[-0].chval); } break;
-case 15:
-/* # line 316 "gram.in" */
-{ entrypt(CLPROC, TYUNKNOWN, (ftnint) 0, yypvt[-1].extval, yypvt[-0].chval); } break;
-case 16:
-/* # line 318 "gram.in" */
-{ entrypt(CLPROC, yypvt[-4].ival, varleng, yypvt[-1].extval, yypvt[-0].chval); } break;
-case 17:
-/* # line 320 "gram.in" */
-{ if(parstate==OUTSIDE || procclass==CLMAIN
- || procclass==CLBLOCK)
- execerr("misplaced entry statement", CNULL);
- entrypt(CLENTRY, 0, (ftnint) 0, yypvt[-1].extval, yypvt[-0].chval);
- } break;
-case 18:
-/* # line 328 "gram.in" */
-{ newproc(); } break;
-case 19:
-/* # line 332 "gram.in" */
-{ yyval.extval = newentry(yypvt[-0].namval, 1); } break;
-case 20:
-/* # line 336 "gram.in" */
-{ yyval.namval = mkname(token); } break;
-case 21:
-/* # line 339 "gram.in" */
-{ yyval.extval = NULL; } break;
-case 29:
-/* # line 357 "gram.in" */
-{ yyval.chval = 0; } break;
-case 30:
-/* # line 359 "gram.in" */
-{ NO66(" () argument list");
- yyval.chval = 0; } break;
-case 31:
-/* # line 362 "gram.in" */
-{yyval.chval = yypvt[-1].chval; } break;
-case 32:
-/* # line 366 "gram.in" */
-{ yyval.chval = (yypvt[-0].namval ? mkchain((char *)yypvt[-0].namval,CHNULL) : CHNULL ); } break;
-case 33:
-/* # line 368 "gram.in" */
-{ if(yypvt[-0].namval) yypvt[-2].chval = yyval.chval = mkchain((char *)yypvt[-0].namval, yypvt[-2].chval); } break;
-case 34:
-/* # line 372 "gram.in" */
-{ if(yypvt[-0].namval->vstg!=STGUNKNOWN && yypvt[-0].namval->vstg!=STGARG)
- dclerr("name declared as argument after use", yypvt[-0].namval);
- yypvt[-0].namval->vstg = STGARG;
- } break;
-case 35:
-/* # line 377 "gram.in" */
-{ NO66("altenate return argument");
-
-/* substars means that '*'ed formal parameters should be replaced.
- This is used to specify alternate return labels; in theory, only
- parameter slots which have '*' should accept the statement labels.
- This compiler chooses to ignore the '*'s in the formal declaration, and
- always return the proper value anyway.
-
- This variable is only referred to in proc.c */
-
- yyval.namval = 0; substars = YES; } break;
-case 36:
-/* # line 393 "gram.in" */
-{
- char *s;
- s = copyn(toklen+1, token);
- s[toklen] = '\0';
- yyval.charpval = s;
- } break;
-case 45:
-/* # line 409 "gram.in" */
-{ NO66("SAVE statement");
- saveall = YES; } break;
-case 46:
-/* # line 412 "gram.in" */
-{ NO66("SAVE statement"); } break;
-case 47:
-/* # line 414 "gram.in" */
-{ fmtstmt(thislabel); setfmt(thislabel); } break;
-case 48:
-/* # line 416 "gram.in" */
-{ NO66("PARAMETER statement"); } break;
-case 49:
-/* # line 420 "gram.in" */
-{ settype(yypvt[-4].namval, yypvt[-6].ival, yypvt[-0].lval);
- if(ndim>0) setbound(yypvt[-4].namval,ndim,dims);
- } break;
-case 50:
-/* # line 424 "gram.in" */
-{ settype(yypvt[-2].namval, yypvt[-4].ival, yypvt[-0].lval);
- if(ndim>0) setbound(yypvt[-2].namval,ndim,dims);
- } break;
-case 51:
-/* # line 428 "gram.in" */
-{ if (new_dcl == 2) {
- err("attempt to give DATA in type-declaration");
- new_dcl = 1;
- }
- } break;
-case 52:
-/* # line 435 "gram.in" */
-{ new_dcl = 2; } break;
-case 53:
-/* # line 438 "gram.in" */
-{ varleng = yypvt[-0].lval; } break;
-case 54:
-/* # line 442 "gram.in" */
-{ varleng = (yypvt[-0].ival<0 || ONEOF(yypvt[-0].ival,M(TYLOGICAL)|M(TYLONG))
- ? 0 : typesize[yypvt[-0].ival]);
- vartype = yypvt[-0].ival; } break;
-case 55:
-/* # line 447 "gram.in" */
-{ yyval.ival = TYLONG; } break;
-case 56:
-/* # line 448 "gram.in" */
-{ yyval.ival = tyreal; } break;
-case 57:
-/* # line 449 "gram.in" */
-{ ++complex_seen; yyval.ival = tycomplex; } break;
-case 58:
-/* # line 450 "gram.in" */
-{ yyval.ival = TYDREAL; } break;
-case 59:
-/* # line 451 "gram.in" */
-{ ++dcomplex_seen; NOEXT("DOUBLE COMPLEX statement"); yyval.ival = TYDCOMPLEX; } break;
-case 60:
-/* # line 452 "gram.in" */
-{ yyval.ival = TYLOGICAL; } break;
-case 61:
-/* # line 453 "gram.in" */
-{ NO66("CHARACTER statement"); yyval.ival = TYCHAR; } break;
-case 62:
-/* # line 454 "gram.in" */
-{ yyval.ival = TYUNKNOWN; } break;
-case 63:
-/* # line 455 "gram.in" */
-{ yyval.ival = TYUNKNOWN; } break;
-case 64:
-/* # line 456 "gram.in" */
-{ NOEXT("AUTOMATIC statement"); yyval.ival = - STGAUTO; } break;
-case 65:
-/* # line 457 "gram.in" */
-{ NOEXT("STATIC statement"); yyval.ival = - STGBSS; } break;
-case 66:
-/* # line 461 "gram.in" */
-{ yyval.lval = varleng; } break;
-case 67:
-/* # line 463 "gram.in" */
-{
- expptr p;
- p = yypvt[-1].expval;
- NO66("length specification *n");
- if( ! ISICON(p) || p->constblock.Const.ci <= 0 )
- {
- yyval.lval = 0;
- dclerr("length must be a positive integer constant",
- NPNULL);
- }
- else {
- if (vartype == TYCHAR)
- yyval.lval = p->constblock.Const.ci;
- else switch((int)p->constblock.Const.ci) {
- case 1: yyval.lval = 1; break;
- case 2: yyval.lval = typesize[TYSHORT]; break;
- case 4: yyval.lval = typesize[TYLONG]; break;
- case 8: yyval.lval = typesize[TYDREAL]; break;
- case 16: yyval.lval = typesize[TYDCOMPLEX]; break;
- default:
- dclerr("invalid length",NPNULL);
- yyval.lval = varleng;
- }
- }
- } break;
-case 68:
-/* # line 489 "gram.in" */
-{ NO66("length specification *(*)"); yyval.lval = -1; } break;
-case 69:
-/* # line 493 "gram.in" */
-{ incomm( yyval.extval = comblock("") , yypvt[-0].namval ); } break;
-case 70:
-/* # line 495 "gram.in" */
-{ yyval.extval = yypvt[-1].extval; incomm(yypvt[-1].extval, yypvt[-0].namval); } break;
-case 71:
-/* # line 497 "gram.in" */
-{ yyval.extval = yypvt[-2].extval; incomm(yypvt[-2].extval, yypvt[-0].namval); } break;
-case 72:
-/* # line 499 "gram.in" */
-{ incomm(yypvt[-2].extval, yypvt[-0].namval); } break;
-case 73:
-/* # line 503 "gram.in" */
-{ yyval.extval = comblock(""); } break;
-case 74:
-/* # line 505 "gram.in" */
-{ yyval.extval = comblock(token); } break;
-case 75:
-/* # line 509 "gram.in" */
-{ setext(yypvt[-0].namval); } break;
-case 76:
-/* # line 511 "gram.in" */
-{ setext(yypvt[-0].namval); } break;
-case 77:
-/* # line 515 "gram.in" */
-{ NO66("INTRINSIC statement"); setintr(yypvt[-0].namval); } break;
-case 78:
-/* # line 517 "gram.in" */
-{ setintr(yypvt[-0].namval); } break;
-case 81:
-/* # line 525 "gram.in" */
-{
- struct Equivblock *p;
- if(nequiv >= maxequiv)
- many("equivalences", 'q', maxequiv);
- p = & eqvclass[nequiv++];
- p->eqvinit = NO;
- p->eqvbottom = 0;
- p->eqvtop = 0;
- p->equivs = yypvt[-1].eqvval;
- } break;
-case 82:
-/* # line 538 "gram.in" */
-{ yyval.eqvval=ALLOC(Eqvchain);
- yyval.eqvval->eqvitem.eqvlhs = (struct Primblock *)yypvt[-0].expval;
- } break;
-case 83:
-/* # line 542 "gram.in" */
-{ yyval.eqvval=ALLOC(Eqvchain);
- yyval.eqvval->eqvitem.eqvlhs = (struct Primblock *) yypvt[-0].expval;
- yyval.eqvval->eqvnextp = yypvt[-2].eqvval;
- } break;
-case 86:
-/* # line 553 "gram.in" */
-{ if(parstate == OUTSIDE)
- {
- newproc();
- startproc(ESNULL, CLMAIN);
- }
- if(parstate < INDATA)
- {
- enddcl();
- parstate = INDATA;
- datagripe = 1;
- }
- } break;
-case 87:
-/* # line 568 "gram.in" */
-{ ftnint junk;
- if(nextdata(&junk) != NULL)
- err("too few initializers");
- frdata(yypvt[-4].chval);
- frrpl();
- } break;
-case 88:
-/* # line 576 "gram.in" */
-{ frchain(&datastack); curdtp = 0; } break;
-case 89:
-/* # line 578 "gram.in" */
-{ pop_datastack(); } break;
-case 90:
-/* # line 580 "gram.in" */
-{ toomanyinit = NO; } break;
-case 93:
-/* # line 585 "gram.in" */
-{ dataval(ENULL, yypvt[-0].expval); } break;
-case 94:
-/* # line 587 "gram.in" */
-{ dataval(yypvt[-2].expval, yypvt[-0].expval); } break;
-case 96:
-/* # line 592 "gram.in" */
-{ if( yypvt[-1].ival==OPMINUS && ISCONST(yypvt[-0].expval) )
- consnegop((Constp)yypvt[-0].expval);
- yyval.expval = yypvt[-0].expval;
- } break;
-case 100:
-/* # line 604 "gram.in" */
-{ int k;
- yypvt[-0].namval->vsave = YES;
- k = yypvt[-0].namval->vstg;
- if( ! ONEOF(k, M(STGUNKNOWN)|M(STGBSS)|M(STGINIT)) )
- dclerr("can only save static variables", yypvt[-0].namval);
- } break;
-case 104:
-/* # line 618 "gram.in" */
-{ if(yypvt[-2].namval->vclass == CLUNKNOWN)
- make_param((struct Paramblock *)yypvt[-2].namval, yypvt[-0].expval);
- else dclerr("cannot make into parameter", yypvt[-2].namval);
- } break;
-case 105:
-/* # line 625 "gram.in" */
-{ if(ndim>0) setbound(yypvt[-1].namval, ndim, dims); } break;
-case 106:
-/* # line 629 "gram.in" */
-{ Namep np;
- np = ( (struct Primblock *) yypvt[-0].expval) -> namep;
- vardcl(np);
- if(np->vstg == STGCOMMON)
- extsymtab[np->vardesc.varno].extinit = YES;
- else if(np->vstg==STGEQUIV)
- eqvclass[np->vardesc.varno].eqvinit = YES;
- else if(np->vstg!=STGINIT && np->vstg!=STGBSS)
- dclerr("inconsistent storage classes", np);
- yyval.chval = mkchain((char *)yypvt[-0].expval, CHNULL);
- } break;
-case 107:
-/* # line 641 "gram.in" */
-{ chainp p; struct Impldoblock *q;
- pop_datastack();
- q = ALLOC(Impldoblock);
- q->tag = TIMPLDO;
- (q->varnp = (Namep) (yypvt[-1].chval->datap))->vimpldovar = 1;
- p = yypvt[-1].chval->nextp;
- if(p) { q->implb = (expptr)(p->datap); p = p->nextp; }
- if(p) { q->impub = (expptr)(p->datap); p = p->nextp; }
- if(p) { q->impstep = (expptr)(p->datap); }
- frchain( & (yypvt[-1].chval) );
- yyval.chval = mkchain((char *)q, CHNULL);
- q->datalist = hookup(yypvt[-3].chval, yyval.chval);
- } break;
-case 108:
-/* # line 657 "gram.in" */
-{ if (!datastack)
- curdtp = 0;
- datastack = mkchain((char *)curdtp, datastack);
- curdtp = yypvt[-0].chval; curdtelt = 0;
- } break;
-case 109:
-/* # line 663 "gram.in" */
-{ yyval.chval = hookup(yypvt[-2].chval, yypvt[-0].chval); } break;
-case 110:
-/* # line 667 "gram.in" */
-{ ndim = 0; } break;
-case 112:
-/* # line 671 "gram.in" */
-{ ndim = 0; } break;
-case 115:
-/* # line 676 "gram.in" */
-{
- if(ndim == maxdim)
- err("too many dimensions");
- else if(ndim < maxdim)
- { dims[ndim].lb = 0;
- dims[ndim].ub = yypvt[-0].expval;
- }
- ++ndim;
- } break;
-case 116:
-/* # line 686 "gram.in" */
-{
- if(ndim == maxdim)
- err("too many dimensions");
- else if(ndim < maxdim)
- { dims[ndim].lb = yypvt[-2].expval;
- dims[ndim].ub = yypvt[-0].expval;
- }
- ++ndim;
- } break;
-case 117:
-/* # line 698 "gram.in" */
-{ yyval.expval = 0; } break;
-case 119:
-/* # line 703 "gram.in" */
-{ nstars = 1; labarray[0] = yypvt[-0].labval; } break;
-case 120:
-/* # line 705 "gram.in" */
-{ if(nstars < maxlablist) labarray[nstars++] = yypvt[-0].labval; } break;
-case 121:
-/* # line 709 "gram.in" */
-{ yyval.labval = execlab( convci(toklen, token) ); } break;
-case 122:
-/* # line 713 "gram.in" */
-{ NO66("IMPLICIT statement"); } break;
-case 125:
-/* # line 719 "gram.in" */
-{ if (vartype != TYUNKNOWN)
- dclerr("-- expected letter range",NPNULL);
- setimpl(vartype, varleng, 'a', 'z'); } break;
-case 126:
-/* # line 724 "gram.in" */
-{ needkwd = 1; } break;
-case 130:
-/* # line 733 "gram.in" */
-{ setimpl(vartype, varleng, yypvt[-0].ival, yypvt[-0].ival); } break;
-case 131:
-/* # line 735 "gram.in" */
-{ setimpl(vartype, varleng, yypvt[-2].ival, yypvt[-0].ival); } break;
-case 132:
-/* # line 739 "gram.in" */
-{ if(toklen!=1 || token[0]<'a' || token[0]>'z')
- {
- dclerr("implicit item must be single letter", NPNULL);
- yyval.ival = 0;
- }
- else yyval.ival = token[0];
- } break;
-case 135:
-/* # line 753 "gram.in" */
-{
- if(yypvt[-2].namval->vclass == CLUNKNOWN)
- {
- yypvt[-2].namval->vclass = CLNAMELIST;
- yypvt[-2].namval->vtype = TYINT;
- yypvt[-2].namval->vstg = STGBSS;
- yypvt[-2].namval->varxptr.namelist = yypvt[-0].chval;
- yypvt[-2].namval->vardesc.varno = ++lastvarno;
- }
- else dclerr("cannot be a namelist name", yypvt[-2].namval);
- } break;
-case 136:
-/* # line 767 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].namval, CHNULL); } break;
-case 137:
-/* # line 769 "gram.in" */
-{ yyval.chval = hookup(yypvt[-2].chval, mkchain((char *)yypvt[-0].namval, CHNULL)); } break;
-case 138:
-/* # line 773 "gram.in" */
-{ switch(parstate)
- {
- case OUTSIDE: newproc();
- startproc(ESNULL, CLMAIN);
- case INSIDE: parstate = INDCL;
- case INDCL: break;
-
- case INDATA:
- if (datagripe) {
- errstr(
- "Statement order error: declaration after DATA",
- CNULL);
- datagripe = 0;
- }
- break;
-
- default:
- dclerr("declaration among executables", NPNULL);
- }
- } break;
-case 139:
-/* # line 795 "gram.in" */
-{ yyval.chval = 0; } break;
-case 140:
-/* # line 797 "gram.in" */
-{ yyval.chval = revchain(yypvt[-0].chval); } break;
-case 141:
-/* # line 801 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, CHNULL); } break;
-case 142:
-/* # line 803 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, yypvt[-2].chval); } break;
-case 144:
-/* # line 808 "gram.in" */
-{ yyval.expval = yypvt[-1].expval; if (yyval.expval->tag == TPRIM)
- yyval.expval->primblock.parenused = 1; } break;
-case 148:
-/* # line 816 "gram.in" */
-{ yyval.expval = mkexpr(yypvt[-1].ival, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 149:
-/* # line 818 "gram.in" */
-{ yyval.expval = mkexpr(OPSTAR, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 150:
-/* # line 820 "gram.in" */
-{ yyval.expval = mkexpr(OPSLASH, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 151:
-/* # line 822 "gram.in" */
-{ yyval.expval = mkexpr(OPPOWER, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 152:
-/* # line 824 "gram.in" */
-{ if(yypvt[-1].ival == OPMINUS)
- yyval.expval = mkexpr(OPNEG, yypvt[-0].expval, ENULL);
- else yyval.expval = yypvt[-0].expval;
- } break;
-case 153:
-/* # line 829 "gram.in" */
-{ yyval.expval = mkexpr(yypvt[-1].ival, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 154:
-/* # line 831 "gram.in" */
-{ NO66(".EQV. operator");
- yyval.expval = mkexpr(OPEQV, yypvt[-2].expval,yypvt[-0].expval); } break;
-case 155:
-/* # line 834 "gram.in" */
-{ NO66(".NEQV. operator");
- yyval.expval = mkexpr(OPNEQV, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 156:
-/* # line 837 "gram.in" */
-{ yyval.expval = mkexpr(OPOR, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 157:
-/* # line 839 "gram.in" */
-{ yyval.expval = mkexpr(OPAND, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 158:
-/* # line 841 "gram.in" */
-{ yyval.expval = mkexpr(OPNOT, yypvt[-0].expval, ENULL); } break;
-case 159:
-/* # line 843 "gram.in" */
-{ NO66("concatenation operator //");
- yyval.expval = mkexpr(OPCONCAT, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 160:
-/* # line 847 "gram.in" */
-{ yyval.ival = OPPLUS; } break;
-case 161:
-/* # line 848 "gram.in" */
-{ yyval.ival = OPMINUS; } break;
-case 162:
-/* # line 851 "gram.in" */
-{ yyval.ival = OPEQ; } break;
-case 163:
-/* # line 852 "gram.in" */
-{ yyval.ival = OPGT; } break;
-case 164:
-/* # line 853 "gram.in" */
-{ yyval.ival = OPLT; } break;
-case 165:
-/* # line 854 "gram.in" */
-{ yyval.ival = OPGE; } break;
-case 166:
-/* # line 855 "gram.in" */
-{ yyval.ival = OPLE; } break;
-case 167:
-/* # line 856 "gram.in" */
-{ yyval.ival = OPNE; } break;
-case 168:
-/* # line 860 "gram.in" */
-{ yyval.expval = mkprim(yypvt[-0].namval, LBNULL, CHNULL); } break;
-case 169:
-/* # line 862 "gram.in" */
-{ NO66("substring operator :");
- yyval.expval = mkprim(yypvt[-1].namval, LBNULL, yypvt[-0].chval); } break;
-case 170:
-/* # line 865 "gram.in" */
-{ yyval.expval = mkprim(yypvt[-3].namval, mklist(yypvt[-1].chval), CHNULL); } break;
-case 171:
-/* # line 867 "gram.in" */
-{ NO66("substring operator :");
- yyval.expval = mkprim(yypvt[-4].namval, mklist(yypvt[-2].chval), yypvt[-0].chval); } break;
-case 172:
-/* # line 872 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-3].expval, mkchain((char *)yypvt[-1].expval,CHNULL)); } break;
-case 173:
-/* # line 876 "gram.in" */
-{ yyval.expval = 0; } break;
-case 175:
-/* # line 881 "gram.in" */
-{ if(yypvt[-0].namval->vclass == CLPARAM)
- yyval.expval = (expptr) cpexpr(
- ( (struct Paramblock *) (yypvt[-0].namval) ) -> paramval);
- } break;
-case 177:
-/* # line 888 "gram.in" */
-{ yyval.expval = mklogcon(1); } break;
-case 178:
-/* # line 889 "gram.in" */
-{ yyval.expval = mklogcon(0); } break;
-case 179:
-/* # line 890 "gram.in" */
-{ yyval.expval = mkstrcon(toklen, token); } break;
-case 180:
-/* # line 891 "gram.in" */
- { yyval.expval = mkintcon( convci(toklen, token) ); } break;
-case 181:
-/* # line 892 "gram.in" */
- { yyval.expval = mkrealcon(tyreal, token); } break;
-case 182:
-/* # line 893 "gram.in" */
- { yyval.expval = mkrealcon(TYDREAL, token); } break;
-case 184:
-/* # line 898 "gram.in" */
-{ yyval.expval = mkcxcon(yypvt[-3].expval,yypvt[-1].expval); } break;
-case 185:
-/* # line 902 "gram.in" */
-{ NOEXT("hex constant");
- yyval.expval = mkbitcon(4, toklen, token); } break;
-case 186:
-/* # line 905 "gram.in" */
-{ NOEXT("octal constant");
- yyval.expval = mkbitcon(3, toklen, token); } break;
-case 187:
-/* # line 908 "gram.in" */
-{ NOEXT("binary constant");
- yyval.expval = mkbitcon(1, toklen, token); } break;
-case 189:
-/* # line 914 "gram.in" */
-{ yyval.expval = yypvt[-1].expval; } break;
-case 192:
-/* # line 920 "gram.in" */
-{ yyval.expval = mkexpr(yypvt[-1].ival, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 193:
-/* # line 922 "gram.in" */
-{ yyval.expval = mkexpr(OPSTAR, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 194:
-/* # line 924 "gram.in" */
-{ yyval.expval = mkexpr(OPSLASH, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 195:
-/* # line 926 "gram.in" */
-{ yyval.expval = mkexpr(OPPOWER, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 196:
-/* # line 928 "gram.in" */
-{ if(yypvt[-1].ival == OPMINUS)
- yyval.expval = mkexpr(OPNEG, yypvt[-0].expval, ENULL);
- else yyval.expval = yypvt[-0].expval;
- } break;
-case 197:
-/* # line 933 "gram.in" */
-{ NO66("concatenation operator //");
- yyval.expval = mkexpr(OPCONCAT, yypvt[-2].expval, yypvt[-0].expval); } break;
-case 199:
-/* # line 938 "gram.in" */
-{
- if(yypvt[-3].labval->labdefined)
- execerr("no backward DO loops", CNULL);
- yypvt[-3].labval->blklevel = blklevel+1;
- exdo(yypvt[-3].labval->labelno, NPNULL, yypvt[-0].chval);
- } break;
-case 200:
-/* # line 945 "gram.in" */
-{
- exdo((int)(ctls - ctlstack - 2), NPNULL, yypvt[-0].chval);
- NOEXT("DO without label");
- } break;
-case 201:
-/* # line 950 "gram.in" */
-{ exenddo(NPNULL); } break;
-case 202:
-/* # line 952 "gram.in" */
-{ exendif(); thiswasbranch = NO; } break;
-case 204:
-/* # line 955 "gram.in" */
-{ exelif(yypvt[-2].expval); lastwasbranch = NO; } break;
-case 205:
-/* # line 957 "gram.in" */
-{ exelse(); lastwasbranch = NO; } break;
-case 206:
-/* # line 959 "gram.in" */
-{ exendif(); lastwasbranch = NO; } break;
-case 207:
-/* # line 963 "gram.in" */
-{ exif(yypvt[-1].expval); } break;
-case 208:
-/* # line 967 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-2].namval, yypvt[-0].chval); } break;
-case 210:
-/* # line 972 "gram.in" */
-{ yyval.chval = mkchain(CNULL, (chainp)yypvt[-1].expval); } break;
-case 211:
-/* # line 976 "gram.in" */
-{ exequals((struct Primblock *)yypvt[-2].expval, yypvt[-0].expval); } break;
-case 212:
-/* # line 978 "gram.in" */
-{ exassign(yypvt[-0].namval, yypvt[-2].labval); } break;
-case 215:
-/* # line 982 "gram.in" */
-{ inioctl = NO; } break;
-case 216:
-/* # line 984 "gram.in" */
-{ exarif(yypvt[-6].expval, yypvt[-4].labval, yypvt[-2].labval, yypvt[-0].labval); thiswasbranch = YES; } break;
-case 217:
-/* # line 986 "gram.in" */
-{ excall(yypvt[-0].namval, LBNULL, 0, labarray); } break;
-case 218:
-/* # line 988 "gram.in" */
-{ excall(yypvt[-2].namval, LBNULL, 0, labarray); } break;
-case 219:
-/* # line 990 "gram.in" */
-{ if(nstars < maxlablist)
- excall(yypvt[-3].namval, mklist(revchain(yypvt[-1].chval)), nstars, labarray);
- else
- many("alternate returns", 'l', maxlablist);
- } break;
-case 220:
-/* # line 996 "gram.in" */
-{ exreturn(yypvt[-0].expval); thiswasbranch = YES; } break;
-case 221:
-/* # line 998 "gram.in" */
-{ exstop(yypvt[-2].ival, yypvt[-0].expval); thiswasbranch = yypvt[-2].ival; } break;
-case 222:
-/* # line 1002 "gram.in" */
-{ yyval.labval = mklabel( convci(toklen, token) ); } break;
-case 223:
-/* # line 1006 "gram.in" */
-{ if(parstate == OUTSIDE)
- {
- newproc();
- startproc(ESNULL, CLMAIN);
- }
- } break;
-case 224:
-/* # line 1015 "gram.in" */
-{ exgoto(yypvt[-0].labval); thiswasbranch = YES; } break;
-case 225:
-/* # line 1017 "gram.in" */
-{ exasgoto(yypvt[-0].namval); thiswasbranch = YES; } break;
-case 226:
-/* # line 1019 "gram.in" */
-{ exasgoto(yypvt[-4].namval); thiswasbranch = YES; } break;
-case 227:
-/* # line 1021 "gram.in" */
-{ if(nstars < maxlablist)
- putcmgo(putx(fixtype(yypvt[-0].expval)), nstars, labarray);
- else
- many("labels in computed GOTO list", 'l', maxlablist);
- } break;
-case 230:
-/* # line 1033 "gram.in" */
-{ nstars = 0; yyval.namval = yypvt[-0].namval; } break;
-case 231:
-/* # line 1037 "gram.in" */
-{ yyval.chval = yypvt[-0].expval ? mkchain((char *)yypvt[-0].expval,CHNULL) : CHNULL; } break;
-case 232:
-/* # line 1039 "gram.in" */
-{ yyval.chval = yypvt[-0].expval ? mkchain((char *)yypvt[-0].expval, yypvt[-2].chval) : yypvt[-2].chval; } break;
-case 234:
-/* # line 1044 "gram.in" */
-{ if(nstars < maxlablist) labarray[nstars++] = yypvt[-0].labval; yyval.expval = 0; } break;
-case 235:
-/* # line 1048 "gram.in" */
-{ yyval.ival = 0; } break;
-case 236:
-/* # line 1050 "gram.in" */
-{ yyval.ival = 2; } break;
-case 237:
-/* # line 1054 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, CHNULL); } break;
-case 238:
-/* # line 1056 "gram.in" */
-{ yyval.chval = hookup(yypvt[-2].chval, mkchain((char *)yypvt[-0].expval,CHNULL) ); } break;
-case 239:
-/* # line 1060 "gram.in" */
-{ if(parstate == OUTSIDE)
- {
- newproc();
- startproc(ESNULL, CLMAIN);
- }
-
-/* This next statement depends on the ordering of the state table encoding */
-
- if(parstate < INDATA) enddcl();
- } break;
-case 240:
-/* # line 1073 "gram.in" */
-{ intonly = YES; } break;
-case 241:
-/* # line 1077 "gram.in" */
-{ intonly = NO; } break;
-case 242:
-/* # line 1082 "gram.in" */
-{ endio(); } break;
-case 244:
-/* # line 1087 "gram.in" */
-{ ioclause(IOSUNIT, yypvt[-0].expval); endioctl(); } break;
-case 245:
-/* # line 1089 "gram.in" */
-{ ioclause(IOSUNIT, ENULL); endioctl(); } break;
-case 246:
-/* # line 1091 "gram.in" */
-{ ioclause(IOSUNIT, IOSTDERR); endioctl(); } break;
-case 248:
-/* # line 1094 "gram.in" */
-{ doio(CHNULL); } break;
-case 249:
-/* # line 1096 "gram.in" */
-{ doio(CHNULL); } break;
-case 250:
-/* # line 1098 "gram.in" */
-{ doio(revchain(yypvt[-0].chval)); } break;
-case 251:
-/* # line 1100 "gram.in" */
-{ doio(revchain(yypvt[-0].chval)); } break;
-case 252:
-/* # line 1102 "gram.in" */
-{ doio(revchain(yypvt[-0].chval)); } break;
-case 253:
-/* # line 1104 "gram.in" */
-{ doio(CHNULL); } break;
-case 254:
-/* # line 1106 "gram.in" */
-{ doio(revchain(yypvt[-0].chval)); } break;
-case 255:
-/* # line 1108 "gram.in" */
-{ doio(CHNULL); } break;
-case 256:
-/* # line 1110 "gram.in" */
-{ doio(revchain(yypvt[-0].chval)); } break;
-case 258:
-/* # line 1117 "gram.in" */
-{ iostmt = IOBACKSPACE; } break;
-case 259:
-/* # line 1119 "gram.in" */
-{ iostmt = IOREWIND; } break;
-case 260:
-/* # line 1121 "gram.in" */
-{ iostmt = IOENDFILE; } break;
-case 262:
-/* # line 1128 "gram.in" */
-{ iostmt = IOINQUIRE; } break;
-case 263:
-/* # line 1130 "gram.in" */
-{ iostmt = IOOPEN; } break;
-case 264:
-/* # line 1132 "gram.in" */
-{ iostmt = IOCLOSE; } break;
-case 265:
-/* # line 1136 "gram.in" */
-{
- ioclause(IOSUNIT, ENULL);
- ioclause(IOSFMT, yypvt[-0].expval);
- endioctl();
- } break;
-case 266:
-/* # line 1142 "gram.in" */
-{
- ioclause(IOSUNIT, ENULL);
- ioclause(IOSFMT, ENULL);
- endioctl();
- } break;
-case 267:
-/* # line 1150 "gram.in" */
-{
- ioclause(IOSUNIT, yypvt[-1].expval);
- endioctl();
- } break;
-case 268:
-/* # line 1155 "gram.in" */
-{ endioctl(); } break;
-case 271:
-/* # line 1163 "gram.in" */
-{ ioclause(IOSPOSITIONAL, yypvt[-0].expval); } break;
-case 272:
-/* # line 1165 "gram.in" */
-{ ioclause(IOSPOSITIONAL, ENULL); } break;
-case 273:
-/* # line 1167 "gram.in" */
-{ ioclause(IOSPOSITIONAL, IOSTDERR); } break;
-case 274:
-/* # line 1169 "gram.in" */
-{ ioclause(yypvt[-1].ival, yypvt[-0].expval); } break;
-case 275:
-/* # line 1171 "gram.in" */
-{ ioclause(yypvt[-1].ival, ENULL); } break;
-case 276:
-/* # line 1173 "gram.in" */
-{ ioclause(yypvt[-1].ival, IOSTDERR); } break;
-case 277:
-/* # line 1177 "gram.in" */
-{ yyval.ival = iocname(); } break;
-case 278:
-/* # line 1181 "gram.in" */
-{ iostmt = IOREAD; } break;
-case 279:
-/* # line 1185 "gram.in" */
-{ iostmt = IOWRITE; } break;
-case 280:
-/* # line 1189 "gram.in" */
-{
- iostmt = IOWRITE;
- ioclause(IOSUNIT, ENULL);
- ioclause(IOSFMT, yypvt[-1].expval);
- endioctl();
- } break;
-case 281:
-/* # line 1196 "gram.in" */
-{
- iostmt = IOWRITE;
- ioclause(IOSUNIT, ENULL);
- ioclause(IOSFMT, ENULL);
- endioctl();
- } break;
-case 282:
-/* # line 1205 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].tagval, CHNULL); } break;
-case 283:
-/* # line 1207 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].tagval, yypvt[-2].chval); } break;
-case 284:
-/* # line 1211 "gram.in" */
-{ yyval.tagval = (tagptr) yypvt[-0].expval; } break;
-case 285:
-/* # line 1213 "gram.in" */
-{ yyval.tagval = (tagptr) mkiodo(yypvt[-1].chval,revchain(yypvt[-3].chval)); } break;
-case 286:
-/* # line 1217 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, CHNULL); } break;
-case 287:
-/* # line 1219 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].tagval, CHNULL); } break;
-case 289:
-/* # line 1224 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, mkchain((char *)yypvt[-2].expval, CHNULL) ); } break;
-case 290:
-/* # line 1226 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].tagval, mkchain((char *)yypvt[-2].expval, CHNULL) ); } break;
-case 291:
-/* # line 1228 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, mkchain((char *)yypvt[-2].tagval, CHNULL) ); } break;
-case 292:
-/* # line 1230 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].tagval, mkchain((char *)yypvt[-2].tagval, CHNULL) ); } break;
-case 293:
-/* # line 1232 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].expval, yypvt[-2].chval); } break;
-case 294:
-/* # line 1234 "gram.in" */
-{ yyval.chval = mkchain((char *)yypvt[-0].tagval, yypvt[-2].chval); } break;
-case 295:
-/* # line 1238 "gram.in" */
-{ yyval.tagval = (tagptr) yypvt[-0].expval; } break;
-case 296:
-/* # line 1240 "gram.in" */
-{ yyval.tagval = (tagptr) yypvt[-1].expval; } break;
-case 297:
-/* # line 1242 "gram.in" */
-{ yyval.tagval = (tagptr) mkiodo(yypvt[-1].chval, mkchain((char *)yypvt[-3].expval, CHNULL) ); } break;
-case 298:
-/* # line 1244 "gram.in" */
-{ yyval.tagval = (tagptr) mkiodo(yypvt[-1].chval, mkchain((char *)yypvt[-3].tagval, CHNULL) ); } break;
-case 299:
-/* # line 1246 "gram.in" */
-{ yyval.tagval = (tagptr) mkiodo(yypvt[-1].chval, revchain(yypvt[-3].chval)); } break;
-case 300:
-/* # line 1250 "gram.in" */
-{ startioctl(); } break;
- }
- goto yystack; /* stack new state and value */
-}
diff --git a/usr.bin/f2c/index b/usr.bin/f2c/index
deleted file mode 100644
index 5212535c923f..000000000000
--- a/usr.bin/f2c/index
+++ /dev/null
@@ -1,127 +0,0 @@
-# ====== index for f2c/src ======
-# NOTE: "all from f2c/src" is the complete f2c source (sans libraries).
-# The remaining files in this directory are the component modules
-# of "all from f2c/src", so you can request just the modules that
-# have changed since last you updated your f2c source. You can
-# tell what has changed by looking at the timestamps at the end
-# of "readme from f2c".
-file f2c/src/cds.c
-
-file f2c/src/data.c
-
-file f2c/src/defines.h
-
-file f2c/src/defs.h
-
-file f2c/src/equiv.c
-
-file f2c/src/error.c
-
-file f2c/src/exec.c
-
-file f2c/src/expr.c
-
-file f2c/src/f2c.1
-
-file f2c/src/f2c.1t
-
-file f2c/src/f2c.h
-
-file f2c/src/format.c
-
-file f2c/src/format.h
-
-file f2c/src/formatdata.c
-
-file f2c/src/ftypes.h
-
-file f2c/src/gram.c
-
-file f2c/src/gram.dcl
-
-file f2c/src/gram.exec
-
-file f2c/src/gram.expr
-
-file f2c/src/gram.head
-
-file f2c/src/gram.io
-
-file f2c/src/init.c
-
-file f2c/src/intr.c
-
-file f2c/src/io.c
-
-file f2c/src/iob.h
-
-file f2c/src/lex.c
-
-file f2c/src/machdefs.h
-
-file f2c/src/main.c
-
-file f2c/src/makefile
-
-file f2c/src/malloc.c
-
-file f2c/src/mem.c
-
-file f2c/src/memset.c
-
-file f2c/src/misc.c
-
-file f2c/src/names.c
-
-file f2c/src/names.h
-
-file f2c/src/niceprintf.c
-
-file f2c/src/niceprintf.h
-
-file f2c/src/notice
-
-file f2c/src/output.c
-
-file f2c/src/output.h
-
-file f2c/src/p1defs.h
-
-file f2c/src/p1output.c
-
-file f2c/src/parse.h
-
-file f2c/src/parse_args.c
-
-file f2c/src/pccdefs.h
-
-file f2c/src/pread.c
-
-file f2c/src/proc.c
-
-file f2c/src/put.c
-
-file f2c/src/putpcc.c
-
-file f2c/src/sysdep.c
-
-file f2c/src/sysdep.h
-
-file f2c/src/tokens
-
-file f2c/src/usignal.h
-
-file f2c/src/vax.c
-
-file f2c/src/version.c
-
-file f2c/src/xsum.c
-
-file f2c/src/xsum0.out
-
-file f2c/src/Notice
-
-file f2c/src/README
-
-file f2c/src/readme
-
diff --git a/usr.bin/f2c/index.html b/usr.bin/f2c/index.html
deleted file mode 100644
index 2265f2ab1064..000000000000
--- a/usr.bin/f2c/index.html
+++ /dev/null
@@ -1,138 +0,0 @@
-<HTML>
-<HEAD><TITLE>/netlib/f2c/src</TITLE></HEAD>
-<BODY>
-<H2>/netlib/f2c/src</H2>
-<UL>
-<PRE>
-====== index for f2c/src ======
-NOTE: "all from f2c/src" is the complete f2c source (sans libraries).
-The remaining files in this directory are the component modules
-of "all from f2c/src", so you can request just the modules that
-have changed since last you updated your f2c source. You can
-tell what has changed by looking at the timestamps at the end
-of "readme from f2c".
-</PRE>
-<LI><EM>file: </EM><A HREF="cds.c.Z">cds.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/cds.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="data.c.Z">data.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/data.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="defines.h.Z">defines.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/defines.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="defs.h.Z">defs.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/defs.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="equiv.c.Z">equiv.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/equiv.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="error.c.Z">error.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/error.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="exec.c.Z">exec.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/exec.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="expr.c.Z">expr.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/expr.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="f2c.1.Z">f2c.1</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/f2c.1.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="f2c.1t.Z">f2c.1t</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/f2c.1t.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="f2c.h.Z">f2c.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/f2c.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="format.c.Z">format.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/format.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="format.h.Z">format.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/format.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="formatdata.c.Z">formatdata.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/formatdata.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="ftypes.h.Z">ftypes.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/ftypes.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="gram.c.Z">gram.c</A><MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="gram.dcl.Z">gram.dcl</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/gram.dcl.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="gram.exec.Z">gram.exec</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/gram.exec.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="gram.expr.Z">gram.expr</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/gram.expr.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="gram.head.Z">gram.head</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/gram.head.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="gram.io.Z">gram.io</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/gram.io.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="init.c.Z">init.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/init.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="intr.c.Z">intr.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/intr.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="io.c.Z">io.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/io.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="iob.h.Z">iob.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/iob.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="lex.c.Z">lex.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/lex.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="machdefs.h.Z">machdefs.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/machdefs.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="main.c.Z">main.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/main.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="makefile.Z">makefile</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/makefile.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="malloc.c.Z">malloc.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/malloc.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="mem.c.Z">mem.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/mem.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="memset.c.Z">memset.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/memset.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="misc.c.Z">misc.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/misc.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="names.c.Z">names.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/names.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="names.h.Z">names.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/names.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="niceprintf.c.Z">niceprintf.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/niceprintf.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="niceprintf.h.Z">niceprintf.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/niceprintf.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="notice.Z">notice</A><MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="output.c.Z">output.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/output.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="output.h.Z">output.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/output.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="p1defs.h.Z">p1defs.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/p1defs.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="p1output.c.Z">p1output.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/p1output.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="parse.h.Z">parse.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/parse.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="parse_args.c.Z">parse_args.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/parse_args.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="pccdefs.h.Z">pccdefs.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/pccdefs.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="pread.c.Z">pread.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/pread.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="proc.c.Z">proc.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/proc.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="put.c.Z">put.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/put.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="putpcc.c.Z">putpcc.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/putpcc.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="sysdep.c.Z">sysdep.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/sysdep.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="sysdep.h.Z">sysdep.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/sysdep.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="tokens.Z">tokens</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/tokens.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="usignal.h.Z">usignal.h</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/usignal.h.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="vax.c.Z">vax.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/vax.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="version.c.Z">version.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/version.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="xsum.c.Z">xsum.c</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/xsum.c.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="xsum0.out.Z">xsum0.out</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/xsum0.out.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="Notice.Z">Notice</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/Notice.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="README.Z">README</A> (<A HREF="ftp://netlib.att.com/netlib.depend/f2c/src/README.tar">with dependencies</A>)<MENU>
-</MENU>
-<LI><EM>file: </EM><A HREF="readme.Z">readme</A><MENU>
-</MENU>
-<P><LI><A HREF="/netlib/bib/thesaurus.html.Z">index help</A>
-</UL>
-<P><A HREF="/netlib/bib/ericjack.html.Z">Eric and Jack</EM>
-</BODY></HTML>
diff --git a/usr.bin/f2c/makefile b/usr.bin/f2c/makefile
deleted file mode 100644
index d15fe2adcc36..000000000000
--- a/usr.bin/f2c/makefile
+++ /dev/null
@@ -1,90 +0,0 @@
-# Makefile for f2c, a Fortran 77 to C converter
-
-g = -g
-CFLAGS = $g
-SHELL = /bin/sh
-
-OBJECTSd = main.o init.o gram.o lex.o proc.o equiv.o data.o format.o \
- expr.o exec.o intr.o io.o misc.o error.o mem.o names.o \
- output.o p1output.o pread.o put.o putpcc.o vax.o formatdata.o \
- parse_args.o niceprintf.o cds.o sysdep.o version.o
-OBJECTS = $(OBJECTSd) malloc.o
-
-all: xsum.out f2c
-
-f2c: $(OBJECTS)
- $(CC) $(LDFLAGS) $(OBJECTS) -o f2c
-
-gram.c: gram.head gram.dcl gram.expr gram.exec gram.io defs.h tokdefs.h
- ( sed <tokdefs.h "s/#define/%token/" ;\
- cat gram.head gram.dcl gram.expr gram.exec gram.io ) >gram.in
- $(YACC) $(YFLAGS) gram.in
- echo "(expect 4 shift/reduce)"
- sed 's/^# line.*/\/* & *\//' y.tab.c >gram.c
- rm -f gram.in y.tab.c
-
-$(OBJECTSd): defs.h ftypes.h defines.h machdefs.h sysdep.h
-
-tokdefs.h: tokens
- grep -n . <tokens | sed "s/\([^:]*\):\(.*\)/#define \2 \1/" >tokdefs.h
-
-cds.o: sysdep.h
-exec.o: p1defs.h names.h
-expr.o: output.h niceprintf.h names.h
-format.o: p1defs.h format.h output.h niceprintf.h names.h iob.h
-formatdata.o: format.h output.h niceprintf.h names.h
-gram.o: p1defs.h
-init.o: output.h niceprintf.h iob.h
-intr.o: names.h
-io.o: names.h iob.h
-lex.o : tokdefs.h p1defs.h
-main.o: parse.h usignal.h
-mem.o: iob.h
-names.o: iob.h names.h output.h niceprintf.h
-niceprintf.o: defs.h names.h output.h niceprintf.h
-output.o: output.h niceprintf.h names.h
-p1output.o: p1defs.h output.h niceprintf.h names.h
-parse_args.o: parse.h
-proc.o: tokdefs.h names.h niceprintf.h output.h p1defs.h
-put.o: names.h pccdefs.h p1defs.h
-putpcc.o: names.h
-vax.o: defs.h output.h pccdefs.h
-output.h: niceprintf.h
-
-put.o putpcc.o: pccdefs.h
-
-f2c.t: f2c.1t
- troff -man f2c.1t >f2c.t
-
-f2c.1: f2c.1t
- nroff -man f2c.1t | col -b | uniq >f2c.1
-
-clean:
- rm -f gram.c *.o f2c tokdefs.h f2c.t
-
-b = Notice README cds.c data.c defines.h defs.h equiv.c error.c \
- exec.c expr.c f2c.1 f2c.1t f2c.h format.c format.h formatdata.c \
- ftypes.h gram.dcl gram.exec gram.expr gram.head gram.io \
- init.c intr.c io.c iob.h lex.c machdefs.h main.c makefile \
- malloc.c mem.c memset.c misc.c names.c names.h niceprintf.c \
- niceprintf.h output.c output.h p1defs.h p1output.c \
- parse.h parse_args.c pccdefs.h pread.c proc.c put.c putpcc.c \
- sysdep.c sysdep.h tokens usignal.h vax.c version.c xsum.c
-
-bundle:
- bundle $b xsum0.out >/tmp/f2c.bundle
-
-xsum: xsum.c
- $(CC) -o xsum xsum.c
-
-#Check validity of transmitted source...
-xsum.out: xsum
- ./xsum $b >xsum1.out
- cmp xsum0.out xsum1.out && mv xsum1.out xsum.out
-
-#On non-Unix systems that end lines with carriage-return/newline pairs,
-#use "make xsumr.out" rather than "make xsum.out". The -r flag ignores
-#carriage-return characters.
-xsumr.out: xsum
- ./xsum -r $b >xsum1.out
- cmp xsum0.out xsum1.out && mv xsum1.out xsumr.out
diff --git a/usr.bin/f2c/notice b/usr.bin/f2c/notice
deleted file mode 100644
index 9715a192abf4..000000000000
--- a/usr.bin/f2c/notice
+++ /dev/null
@@ -1,23 +0,0 @@
-/****************************************************************
-Copyright 1990 - 1995 by AT&T Bell Laboratories and Bellcore.
-
-Permission to use, copy, modify, and distribute this software
-and its documentation for any purpose and without fee is hereby
-granted, provided that the above copyright notice appear in all
-copies and that both that the copyright notice and this
-permission notice and warranty disclaimer appear in supporting
-documentation, and that the names of AT&T Bell Laboratories or
-Bellcore or any of their entities not be used in advertising or
-publicity pertaining to distribution of the software without
-specific, written prior permission.
-
-AT&T and Bellcore disclaim all warranties with regard to this
-software, including all implied warranties of merchantability
-and fitness. In no event shall AT&T or Bellcore be liable for
-any special, indirect or consequential damages or any damages
-whatsoever resulting from loss of use, data or profits, whether
-in an action of contract, negligence or other tortious action,
-arising out of or in connection with the use or performance of
-this software.
-****************************************************************/
-
diff --git a/usr.bin/f2c/readme b/usr.bin/f2c/readme
deleted file mode 100644
index b8e5a67d73b8..000000000000
--- a/usr.bin/f2c/readme
+++ /dev/null
@@ -1,145 +0,0 @@
-Type "make" to check the validity of the f2c source and compile f2c.
-
-On a PC, you may need to compile xsum.c with -DMSDOS (i.e., with
-MSDOS #defined).
-
-If your compiler does not understand ANSI/ISO C syntax (i.e., if
-you have a K&R C compiler), compile with -DKR_headers .
-
-On non-Unix systems where files have separate binary and text modes,
-you may need to "make xsumr.out" rather than "make xsum.out".
-
-If (in accordance with what follows) you need to modify the makefile
-or any of the source files, first issue a "make xsum.out" (or, if
-appropriate, "make xsumr.out") to check the validity of the f2c source,
-then make your changes, then type "make f2c".
-
-The file usignal.h is for the benefit of strictly ANSI include files
-on a UNIX system -- the ANSI signal.h does not define SIGHUP or SIGQUIT.
-You may need to modify usignal.h if you are not running f2c on a UNIX
-system.
-
-Should you get the message "xsum0.out xsum1.out differ", see what lines
-are different (`diff xsum0.out xsum1.out`) and ask netlib
-(e.g., netlib@research.att.com) to send you the files in question,
-plus the current xsum0.out (which may have changed) "from f2c/src".
-For example, if exec.c and expr.c have incorrect check sums, you would
-send netlib the message
- send exec.c expr.c xsum0.out from f2c/src
-You can also ftp these files from netlib.att.com; for more details, ask
-netlib@research.att.com to "send readme from f2c".
-
-On some systems, the malloc and free in malloc.c let f2c run faster
-than do the standard malloc and free. Other systems may not tolerate
-redefinition of malloc and free (though changes of 8 Nov. 1994 may
-render this less of a problem than hitherto). If yours is such a
-system, you may either modify the makefile appropriately (remove
-"malloc.o" from the "OBJECTS =" assignment), or simply execute
- cc -c -DCRAY malloc.c
-before typing "make". Still other systems have a -lmalloc that
-provides performance competitive with that from malloc.c; you may
-wish to compare the two on your system.
-
-On some BSD systems, you may need to create a file named "string.h"
-whose single line is
-#include <strings.h>
-you may need to add " -Dstrchr=index" to the "CFLAGS =" assignment
-in the makefile, and you may need to add " memset.o" to the "OBJECTS ="
-assignment in the makefile -- see the comments in memset.c .
-
-For non-UNIX systems, you may need to change some things in sysdep.c,
-such as the choice of intermediate file names.
-
-On some systems, you may need to modify parts of sysdep.h (which is
-included by defs.h). In particular, for Sun 4.1 systems and perhaps
-some others, you need to comment out the typedef of size_t. For some
-systems (e.g., IRIX 4.0.1 and AIX) it is better to add
-#define ANSI_Libraries
-to the beginning of sysdep.h (or to supply -DANSI_Libraries in the
-makefile).
-
-Alas, some systems #define __STDC__ but do not provide a true standard
-(ANSI or ISO) C environment, e.g. do not provide stdlib.h . If yours
-is such a system, then (a) you should complain loudly to your vendor
-about __STDC__ being erroneously defined, and (b) you should insert
-#undef __STDC__
-at the beginning of sysdep.h . You may need to make other adjustments.
-
-For some non-ANSI versions of stdio, you must change the values given
-to binread and binwrite in sysdep.c from "rb" and "wb" to "r" and "w".
-You may need to make this change if you run f2c and get an error
-message of the form
- Compiler error ... cannot open intermediate file ...
-
-On many systems, it is best to combine libF77 and libI77 into a single
-library, say libf2c, as suggested in "readme from f2c". If you do not
-do this, then you should adjust the definition of link_msg in sysdep.c
-appropriately (e.g., replacing "-lf2c" by "-lF77 -lI77"). On Unix
-systems, the easiest way to create libf2c.a is to make libF77/libF77.a
-and libI77/libI77.a (after reading and heeding libF77/README and
-libI77/README), and then to say
-
- cp libF77/libF77.a libf2c.a
- ar ruv libf2c.a libI77/*.o
- ranlib libf2c.a
-
-The last step, ranlib, may not be necessary on your system. On
-other systems, just compile all the .c files in libF77 and libI77,
-and put the resulting objects (except one or both of the Version
-objects) into a library, called perhaps f2c.lib .
-
-Some older C compilers object to
- typedef void (*foo)();
-or to
- typedef void zap;
- zap (*foo)();
-If yours is such a compiler, change the definition of VOID in
-f2c.h from void to int.
-
-For convenience with systems that use control-Z to denote end-of-file,
-f2c treats control-Z characters (ASCII 26, '\x1a') that appear at the
-beginning of a line as an end-of-file indicator. You can disable this
-test by compiling lex.c with NO_EOF_CHAR_CHECK #defined, or can
-change control-Z to some other character by #defining EOF_CHAR to
-be the desired value.
-
-
-If your machine has IEEE, VAX, or IBM-mainframe arithmetic, but your
-printf is inaccurate (e.g., with Symantec C++ version 6.0,
-printf("%.17g",12.) prints 12.000000000000001), you can make f2c print
-correctly rounded numbers by compiling with -DUSE_DTOA and adding
-dtoa.o g_fmt.o to the makefile's OBJECTS = line, so it becomes
-
- OBJECTS = $(OBJECTSd) malloc.o dtoa.o g_fmt.o
-
-Also add the rule
-
- dtoa.o: dtoa.c
- $(CC) -c $(CFLAGS) -DMALLOC=ckalloc -DIEEE... dtoa.c
-
-(without the initial tab) to the makefile, where IEEE... is one of
-IEEE_MC68k, IEEE_8087, VAX, or IBM, depending on your machine's
-arithmetic. See the comments near the start of dtoa.c.
-
-The relevant source files, dtoa.c and g_fmt.c, are available
-separately from netlib's fp directory. For example, you could
-send the E-mail message
-
- send dtoa.c g_fmt.c from fp
-
-to netlib@research.att.com (or use anonymous ftp from netlib.att.com
-and look in directory /netlib/fp).
-
-The makefile has a rule for creating tokdefs.h. If you cannot use the
-makefile, an alternative is to extract tokdefs.h from the beginning of
-gram.c: it's the first 100 lines.
-
-
-Please send bug reports to dmg@research.att.com . The old index file
-(now called "readme" due to unfortunate changes in netlib conventions:
-"send readme from f2c") will report recent changes in the recent-change
-log at its end; all changes will be shown in the "changes" file
-("send changes from f2c"). To keep current source, you will need to
-request xsum0.out and version.c, in addition to the changed source
-files. Changes first appear on netlib@research.att.com, and in due
-time propagate to the other netlib sites that are kept current.
diff --git a/usr.bin/f2c/xsum.c b/usr.bin/f2c/xsum.c
deleted file mode 100644
index b87ace797f12..000000000000
--- a/usr.bin/f2c/xsum.c
+++ /dev/null
@@ -1,237 +0,0 @@
-/****************************************************************
-Copyright 1990, 1993, 1994 by AT&T Bell Laboratories and Bellcore.
-
-Permission to use, copy, modify, and distribute this software
-and its documentation for any purpose and without fee is hereby
-granted, provided that the above copyright notice appear in all
-copies and that both that the copyright notice and this
-permission notice and warranty disclaimer appear in supporting
-documentation, and that the names of AT&T Bell Laboratories or
-Bellcore or any of their entities not be used in advertising or
-publicity pertaining to distribution of the software without
-specific, written prior permission.
-
-AT&T and Bellcore disclaim all warranties with regard to this
-software, including all implied warranties of merchantability
-and fitness. In no event shall AT&T or Bellcore be liable for
-any special, indirect or consequential damages or any damages
-whatsoever resulting from loss of use, data or profits, whether
-in an action of contract, negligence or other tortious action,
-arising out of or in connection with the use or performance of
-this software.
-****************************************************************/
-
-#define _POSIX_SOURCE
-#include "stdio.h"
-#ifndef KR_headers
-#include "stdlib.h"
-#include "sys/types.h"
-#include "fcntl.h" /* for declaration of open, O_RDONLY */
-#include "unistd.h" /* for read, close */
-#endif
-#ifdef MSDOS
-#include "io.h"
-#endif
-#ifndef O_RDONLY
-#define O_RDONLY 0
-#endif
-#ifndef O_BINARY
-#define O_BINARY O_RDONLY
-#endif
-
- char *progname;
- static int ignore_cr;
-
- void
-#ifdef KR_headers
-usage(rc)
-#else
-usage(int rc)
-#endif
-{
- fprintf(stderr, "usage: %s [-r] [file [file...]]\n\
- option -r ignores carriage return characters\n", progname);
- exit(rc);
- }
-
-typedef unsigned char Uchar;
-
- long
-#ifdef KR_headers
-sum32(sum, x, n)
- register long sum;
- register Uchar *x;
- int n;
-#else
-sum32(register long sum, register Uchar *x, int n)
-#endif
-{
- register Uchar *xe;
- static long crc_table[256] = {
- 0, 151466134, 302932268, 453595578,
- -9583591, -160762737, -312236747, -463170141,
- -19167182, -136529756, -321525474, -439166584,
- 28724267, 145849533, 330837255, 448732561,
- -38334364, -189783822, -273059512, -423738914,
- 47895677, 199091435, 282375505, 433292743,
- 57448534, 174827712, 291699066, 409324012,
- -67019697, -184128295, -300991133, -418902539,
- -76668728, -227995554, -379567644, -530091662,
- 67364049, 218420295, 369985021, 520795499,
- 95791354, 213031020, 398182870, 515701056,
- -86479645, -203465611, -388624945, -506380967,
- 114897068, 266207290, 349655424, 500195606,
- -105581387, -256654301, -340093543, -490887921,
- -134039394, -251295736, -368256590, -485758684,
- 124746887, 241716241, 358686123, 476458301,
- -153337456, -2395898, -455991108, -304803798,
- 162629001, 11973919, 465560741, 314102835,
- 134728098, 16841012, 436840590, 319723544,
- -144044613, -26395347, -446403433, -329032703,
- 191582708, 40657250, 426062040, 274858062,
- -200894995, -50223749, -435620671, -284179369,
- -172959290, -55056048, -406931222, -289830788,
- 182263263, 64630089, 416513267, 299125861,
- 229794136, 78991822, 532414580, 381366498,
- -220224191, -69691945, -523123603, -371788549,
- -211162774, -93398532, -513308602, -396314416,
- 201600371, 84090341, 503991391, 386759881,
- -268078788, -117292630, -502591472, -351526778,
- 258520357, 107972019, 493278217, 341959839,
- 249493774, 131713432, 483432482, 366454964,
- -239911657, -122417791, -474129349, -356881235,
- -306674912, -457198666, -4791796, -156118374,
- 315967289, 466778031, 14362133, 165418627,
- 325258002, 442776452, 23947838, 141187752,
- -334573813, -452329571, -33509849, -150495567,
- 269456196, 419996626, 33682024, 184992510,
- -278767779, -429561909, -43239823, -194312473,
- -288089226, -405591072, -52790694, -170046772,
- 297394031, 415166457, 62373443, 179343061,
- 383165416, 533828478, 81314500, 232780370,
- -373594127, -524527769, -72022307, -223201717,
- -401789990, -519431348, -100447498, -217810336,
- 392228803, 510123861, 91131631, 208256633,
- -345918580, -496598246, -110112096, -261561802,
- 336361365, 487278339, 100800185, 251995695,
- 364526526, 482151208, 129260178, 246639108,
- -354943065, -472854735, -119955829, -237064675,
- 459588272, 308539942, 157983644, 7181066,
- -469170519, -317835713, -167286907, -16754925,
- -440448382, -323454444, -139383890, -21619912,
- 450006683, 332774925, 148697015, 31186721,
- -422325548, -271261118, -186797064, -36011154,
- 431888077, 280569435, 196114401, 45565815,
- 403200742, 286222960, 168180682, 50400092,
- -412770561, -295522711, -177471533, -59977915,
- -536157576, -384970002, -234585260, -83643454,
- 526853729, 375396087, 225003341, 74348507,
- 517040714, 399923932, 215944038, 98057200,
- -507728301, -390357307, -206385281, -88735767,
- 498987548, 347783818, 263426864, 112501670,
- -489671163, -338229613, -253864151, -103192641,
- -479823314, -362722632, -244835582, -126932076,
- 470531639, 353144481, 235265819, 117632909
- };
-
- xe = x + n;
- while(x < xe)
- sum = crc_table[(sum ^ *x++) & 0xff] ^ (sum >> 8 & 0xffffff);
- return sum;
- }
-
- int
-#ifdef KR_headers
-cr_purge(buf, n)
- Uchar *buf;
- int n;
-#else
-cr_purge(Uchar *buf, int n)
-#endif
-{
- register Uchar *b, *b1, *be;
- b = buf;
- be = b + n;
- while(b < be)
- if (*b++ == '\r') {
- b1 = b - 1;
- while(b < be)
- if ((*b1 = *b++) != '\r')
- b1++;
- return b1 - buf;
- }
- return n;
- }
-
-static Uchar Buf[16*1024];
-
- void
-#ifdef KR_headers
-process(s, x)
- char *s;
- int x;
-#else
-process(char *s, int x)
-#endif
-{
- register int n;
- long fsize, sum;
-
- sum = 0;
- fsize = 0;
- while((n = read(x, (char *)Buf, sizeof(Buf))) > 0) {
- if (ignore_cr)
- n = cr_purge(Buf, n);
- fsize += n;
- sum = sum32(sum, Buf, n);
- }
- sum &= 0xffffffff;
- if (n==0)
- printf("%s\t%lx\t%ld\n", s, sum & 0xffffffff, fsize);
- else { perror(s); }
- close(x);
- }
-
-#ifdef KR_headers
-main(argc, argv)
- char **argv;
-#else
-main(int argc, char **argv)
-#endif
-{
- int x;
- char *s;
- static int rc;
-
- progname = *argv;
- argc = argc; /* turn off "not used" warning */
- s = *++argv;
- if (s && *s == '-') {
- switch(s[1]) {
- case '?':
- usage(0);
- case 'r':
- ignore_cr = 1;
- case '-':
- break;
- default:
- fprintf(stderr, "invalid option %s\n", s);
- usage(1);
- }
- s = *++argv;
- }
- if (s) do {
- x = open(s, O_RDONLY|O_BINARY);
- if (x < 0) {
- fprintf(stderr, "%s: can't open %s\n", progname, s);
- rc |= 1;
- }
- else
- process(s, x);
- }
- while(s = *++argv);
- else {
- process("/dev/stdin", fileno(stdin));
- }
- return rc;
- }
diff --git a/usr.bin/f2c/xsum0.out b/usr.bin/f2c/xsum0.out
deleted file mode 100644
index 0eecb1c8f810..000000000000
--- a/usr.bin/f2c/xsum0.out
+++ /dev/null
@@ -1,56 +0,0 @@
-Notice 1211689a 1195
-README 110fc3e8 4398
-cds.c 38ec751 4076
-data.c fa8cecd6 9370
-defines.h e500bb1a 8464
-defs.h 72515cc 24172
-equiv.c f6b65bcc 8831
-error.c 7e4ede 3648
-exec.c e279d99 17980
-expr.c 1d64bc48 60705
-f2c.1 fa354030 6042
-f2c.1t e571e717 5988
-f2c.h 1be46b90 4271
-format.c ed4c1a9 52848
-format.h e861ad39 300
-formatdata.c eb45f76a 24861
-ftypes.h 18b86a27 1377
-gram.dcl 11121871 7977
-gram.exec e190cb8e 3026
-gram.expr e3da3320 3137
-gram.head ecf8a5e0 7554
-gram.io 1b7c281c 3294
-init.c ffd3616 11452
-intr.c e9519537 19813
-io.c feb30d5a 29027
-iob.h fe479ed3 459
-lex.c ffae6a9f 31482
-machdefs.h 4950e5b 659
-main.c 54cb955 17040
-makefile f3877062 2766
-malloc.c 5c2be2a 3422
-mem.c 133c066 4839
-memset.c 17404d52 1964
-misc.c fe327633 18006
-names.c 3123927 19947
-names.h f25436a3 689
-niceprintf.c f976e7dd 9781
-niceprintf.h c31f08c 412
-output.c f0627d49 38529
-output.h edfe9e59 2113
-p1defs.h e4e11c4e 5776
-p1output.c 157a2c7e 12175
-parse.h e457df2e 855
-parse_args.c e01b1fe9 13035
-pccdefs.h 1b4fbbee 1195
-pread.c 5ac0d2 16490
-proc.c 116a13d2 34930
-put.c fe8a1281 9480
-putpcc.c 1cebcba8 40081
-sysdep.c 174741bc 10939
-sysdep.h 1021aa5e 2834
-tokens 194fccfe 727
-usignal.h 1c4ce909 124
-vax.c cf2e339 11030
-version.c 3351b7b 107
-xsum.c e2d50e0b 6437
diff --git a/usr.bin/grep/egrep/Makefile b/usr.bin/grep/egrep/Makefile
deleted file mode 100644
index 5df3e8fd0718..000000000000
--- a/usr.bin/grep/egrep/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-# @(#)Makefile 8.1 (Berkeley) 6/27/93
-
-# -DSLOWSYS invoke xread() for system time quirk on PDP, others?
-# -DNOKANJI default is for Japanese Unix. undef only for raw
-# parity-marked search capability, not standard w/grep.
-# -DCHINESE for systems using EUC Chinese2 codes
-# -Dstrrchr=rindex, -Dstrchr=index as necessary
-
-PROG= egrep
-CFLAGS+=-Dstrrchr=rindex -Dstrchr=index -DNOKANJI
-DPADD= ${LIBCOMPAT}
-LDADD= -lcompat # must search compat to get spencers early regexp package
-MAN1= grep.1
-LINKS= ${BINDIR}/egrep ${BINDIR}/grep ${BINDIR}/egrep ${BINDIR}/fgrep
-MLINKS= grep.1 egrep.1 grep.1 fgrep.1
-
-.include "../../Makefile.inc"
-.include <bsd.prog.mk>
diff --git a/usr.bin/key/README.WZV b/usr.bin/key/README.WZV
deleted file mode 100644
index a13f3b5824c6..000000000000
--- a/usr.bin/key/README.WZV
+++ /dev/null
@@ -1,100 +0,0 @@
-One of the nice things of S/Key is that it still leaves you the option
-to use regular UNIX passwords. In fact, the presence of S/Key support
-is completely invisible for a user until she has set up a password with
-the keyinit command. You can permit regular UNIX passwords for local
-logins, while at the same time insisting on S/Key passwords for logins
-from outside.
-
-ORIGIN
-
-These files are modified versions of the s/key files found on
-thumper.bellcore.com at 21 oct 1993. They have been fixed to
-run on top of SunOS 4.1.3 and Solaris 2.3.
-
-Installation is described at the end of this file.
-
-USAGE
-
-Use the keyinit command to set up a new series of s/key passwords.
-
- wzv_6% keyinit
- Updating wietse:
- Old key: wz173500
- Reminder - Only use this method if you are direct connected.
- If you are using telnet or dial-in exit with no password and use keyinit -s.
- Enter secret password:
- Again secret password:
-
- ID wietse s/key is 99 wz173501
- BLAH BLA BLAH BLAH BLAH BLA
-
-Be sure to make your secret password sufficiently long. Try using a
-full sentence instead of just one single word.
-
-You will have to do a "keyinit" on every system that you want to login
-on using one-time passwords.
-
-Whenever you log into an s/key protected system you will see
-something like:
-
- login: wietse
- s/key 98 wz173501
- Password:
-
-In this case you can either enter your regular UNIX password or
-your one-time s/key password. For example, I open a local window
-to compute the password:
-
- local% key 98 wz173501
- Reminder - Do not use key while logged in via telnet or rlogin.
- Enter secret password:
- BLAH BLA BLAH BLAH BLAH BLA
-
-The "BLAH BLA BLAH BLAH BLAH BLA" is the one-time s/key password.
-
-If you have to type the one-time password in by hand, it is convenient
-to have echo turned on so that you can correct typing errors. Just type
-a newline at the "Password:" prompt:
-
- login: wietse
- s/key 98 wz173501
- Password: (turning echo on)
- Password:BLAH BLA BLAH BLAH BLAH BLA
-
-The 98 in the challenge will be 97 the next time, and so on. You'll get
-a warning when you are about to run out of s/key passwords, so that you
-will have to run the keyinit command again.
-
-Sometimes it is more practical to carry a piece of paper with a small
-series of one-time passwords. You can generate the list with:
-
- % key -n 10 98 wz173501
- 98: BLAH BLA BLAH BLAH BLAH BLA
- 97: ...
- 96: ...
-
-Be careful when printing material like this!
-
-INSTALLATION
-
-To install, do: make sunos4 (or whatever), then: make install.
-
-The UNIX password is always permitted with non-network logins. By
-default, UNIX passwords are always permitted (the Bellcore code by
-default disallows UNIX passwords but I think that is too painful). In
-order to permit UNIX passwords only with logins from specific networks,
-create a file /etc/skey.access. For example,
-
- # First word says if UNIX passwords are to be permitted or denied.
- # remainder of the rule is a networknumber and mask. A rule matches a
- # host if any of its addresses satisfies:
- #
- # network = (address & mask)
- #
- #what network mask
- permit 131.155.210.0 255.255.255.0
- deny 0.0.0.0 0.0.0.0
-
-This particular example will permit UNIX passwords with logins from any
-host on network 131.155.210, but will insist on one-time passwords in
-all other cases.
diff --git a/usr.bin/key/skey.1 b/usr.bin/key/skey.1
deleted file mode 100644
index b4e0455aa298..000000000000
--- a/usr.bin/key/skey.1
+++ /dev/null
@@ -1,59 +0,0 @@
-.ll 6i
-.pl 10.5i
-.\" @(#)skey.1 1.1 10/28/93
-.\"
-.lt 6.0i
-.TH KEY 1 "28 October 1993"
-.AT 3
-.SH NAME
-S/key \- A procedure to use one time passwords for accessing computer systems.
-.SH DESCRIPTION
-.I S/key
-is a procedure for using one time password to authenticate access to
-computer systems. It uses 64 bits of information transformed by the
-MD4 algorithm. The user supplies the 64 bits in the form of 6 English
-words that are generated by a secure computer.
-Example use of the S/key program
-.I key
-.sp
- Usage example:
-.sp 0
- >key 99 th91334
-.sp 0
- Enter password: <your secret password is entered here>
-.sp 0
- OMEN US HORN OMIT BACK AHOY
-.sp 0
- >
-.sp
-The programs that are part of the S/Key system are keyinit, key, and
-keyinfo. Keyinit is used to get your ID set up, key is
-used to get the one time password each time,
-keyinfo is used to extract information from the S/Key database.
-.sp
-When you run "keyinit" you inform the system of your
-secret password. Running "key" then generates the
-one-time passwords, and also requires your secret
-password. If however, you misspell your password
-while running "key", you will get a list of passwords
-that will not work, and no indication about the problem.
-.sp
-Password sequence numbers count backward from 99. If you
-don't know this, the syntax for "key" will be confusing.
-.sp
-You can enter the passwords using small letters, even
-though the "key" program gives them in caps.
-.sp
-Macintosh and a general purpose PC use
-are available.
-.sp
-Under FreeBSD, you can control, with /etc/skey.access, from which
-hosts and/or networks the use of S/Key passwords is obligated.
-.LP
-.SH SEE ALSO
-.BR keyinit(1),
-.BR key(1),
-.BR keyinfo(1)
-.BR skey.access(5)
-.SH AUTHOR
-Phil Karn, Neil M. Haller, John S. Walden, Scott Chasin
diff --git a/usr.bin/login/login_skey.c b/usr.bin/login/login_skey.c
deleted file mode 100644
index b94bd28ad9cb..000000000000
--- a/usr.bin/login/login_skey.c
+++ /dev/null
@@ -1,105 +0,0 @@
- /* Portions taken from the skey distribution on Oct 21 1993 */
-#ifdef SKEY
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <string.h>
-#include <netdb.h>
-#include <arpa/inet.h>
-#include <stdio.h>
-#include <termios.h>
-#include <pwd.h>
-#include <syslog.h>
-
-#include <skey.h>
-
-/* skey_getpass - read regular or s/key password */
-
-char *skey_getpass(prompt, pwd, pwok)
-char *prompt;
-struct passwd *pwd;
-int pwok;
-{
- static char buf[128];
- struct skey skey;
- char *cp;
- void rip();
- struct termios saved_ttymode;
- struct termios noecho_ttymode;
- char *username = pwd ? pwd->pw_name : "nope";
- int sflag;
-
- /* Attempt an s/key challenge. */
-
- if ((sflag = skeychallenge(&skey, username, buf)) == 0) {
- printf("%s\n", buf);
- }
- if (!pwok) {
- printf("(s/key required)\n");
- }
- fputs(prompt, stdout);
- fflush(stdout);
-
- /* Save current input modes and turn echo off. */
-
- tcgetattr(0, &saved_ttymode);
- tcgetattr(0, &noecho_ttymode);
- noecho_ttymode.c_lflag &= ~ECHO;
- tcsetattr(0, TCSANOW, &noecho_ttymode);
-
- /* Read password. */
-
- buf[0] = 0;
- fgets(buf, sizeof(buf), stdin);
- rip(buf);
-
- /* Restore previous input modes. */
-
- tcsetattr(0, TCSANOW, &saved_ttymode);
-
- /* Give S/Key users a chance to do it with echo on. */
-
- if (sflag == 0 && feof(stdin) == 0 && buf[0] == 0) {
- fputs(" (turning echo on)\n", stdout);
- fputs(prompt, stdout);
- fflush(stdout);
- fgets(buf, sizeof(buf), stdin);
- rip(buf);
- } else {
- putchar('\n');
- }
- return (buf);
-}
-
-/* skey_crypt - return encrypted UNIX passwd if s/key or regular password ok */
-
-char *skey_crypt(pp, salt, pwd, pwok)
-char *pp;
-char *salt;
-struct passwd *pwd;
-int pwok;
-{
- struct skey skey;
- char *p;
- char *crypt();
-
- /* Try s/key authentication even when the UNIX password is permitted. */
-
- if (pwd != 0 && skeylookup(&skey, pwd->pw_name) == 0
- && skeyverify(&skey, pp) == 0) {
- /* s/key authentication succeeded */
- if (skey.n < 5)
- printf("Warning! Change s/key password soon\n");
- return (pwd->pw_passwd);
- }
-
- /* When s/key authentication does not work, always invoke crypt(). */
-
- p = crypt(pp, salt);
- if (pwok && pwd != 0 && strcmp(p, pwd->pw_passwd) == 0)
- return (pwd->pw_passwd);
-
- /* The user does not exist or entered bad input. */
-
- return (":");
-}
-#endif SKEY
diff --git a/usr.bin/mklocale/POSIX b/usr.bin/mklocale/POSIX
deleted file mode 100644
index 4f1ae60e5aea..000000000000
--- a/usr.bin/mklocale/POSIX
+++ /dev/null
@@ -1,33 +0,0 @@
-# @(#)POSIX 8.1 (Berkeley) 6/6/93
-
-/*
- * Standard LOCALE_CTYPE for the C Locale
- */
-ENCODING "NONE"
-VARIABLE A comment line or data line. Only 1 allowed. Copied verbatim.
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z'
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e
-LOWER 'a' - 'z'
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z'
-XDIGIT '0' - '9' 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/data/ja_JP.EUC b/usr.bin/mklocale/data/ja_JP.EUC
deleted file mode 100644
index 88fdc91ddcd5..000000000000
--- a/usr.bin/mklocale/data/ja_JP.EUC
+++ /dev/null
@@ -1,158 +0,0 @@
-# @(#)Japanese 8.1 (Berkeley) 6/6/93
-
-/*
- * Japanese LOCALE_CTYPE definitions using EUC of JIS character sets
- */
-
-ENCODING "EUC"
-
-/* JIS JIS JIS */
-/* X201 X208 X201 */
-/* 00-7f 84-fe */
-
-VARIABLE 1 0x0000 2 0x8080 2 0x0080 3 0x8000 0x8080
-
-/*
- * Code Set 1
- */
-ALPHA 'A' - 'Z' 'a' - 'z'
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e
-LOWER 'a' - 'z'
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z'
-XDIGIT '0' - '9' 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e
-
-MAPLOWER < 'A' - 'Z' : 'a' >
-MAPLOWER < 'a' - 'z' : 'a' >
-MAPUPPER < 'A' - 'Z' : 'A' >
-MAPUPPER < 'a' - 'z' : 'A' >
-TODIGIT < '0' - '9' : 0 >
-TODIGIT < 'A' - 'F' : 10 >
-TODIGIT < 'a' - 'f' : 10 >
-
-/*
- * Code Set 2
- */
-
-SPACE 0xa1a1
-PHONOGRAM 0xa1bc
-SPECIAL 0xa1a2 - 0xa1fe
-PUNCT 0xa1a2 - 0xa1f8 /* A few too many in here... */
-
-SPECIAL 0xa2a1 - 0xa2ae 0xa2ba - 0xa2c1 0xa2ca - 0xa2d0 0xa2dc - 0xa2ea
-SPECIAL 0xa2f2 - 0xa2f9 0xa2fe
-
-DIGIT 0xa3b0 - 0xa3b9
-UPPER 0xa3c1 - 0xa3da /* Romaji */
-LOWER 0xa3e1 - 0xa3fa /* Romaji */
-MAPLOWER < 0xa3c1 - 0xa3da : 0xa3e1 > /* English */
-MAPLOWER < 0xa3e1 - 0xa3fa : 0xa3e1 > /* English */
-MAPUPPER < 0xa3c1 - 0xa3da : 0xa3c1 >
-MAPUPPER < 0xa3e1 - 0xa3fa : 0xa3c1 >
-
-XDIGIT 0xa3c1 - 0xa3c6 0xa3e1 - 0xa3e6
-
-TODIGIT < 0xa3b0 - 0xa3b9 : 0 >
-TODIGIT < 0xa3c1 - 0xa3c6 : 10 >
-TODIGIT < 0xa3e1 - 0xa3e6 : 10 >
-
-PHONOGRAM 0xa4a1 - 0xa4f3
-PHONOGRAM 0xa5a1 - 0xa5f6
-
-UPPER 0xa6a1 - 0xa6b8 /* Greek */
-LOWER 0xa6c1 - 0xa6d8 /* Greek */
-MAPLOWER < 0xa6a1 - 0xa6b8 : 0xa6c1 >
-MAPLOWER < 0xa6c1 - 0xa6d8 : 0xa6c1 >
-MAPUPPER < 0xa6a1 - 0xa6b8 : 0xa6a1 >
-MAPUPPER < 0xa6c1 - 0xa6d8 : 0xa6a1 >
-
-UPPER 0xa7a1 - 0xa7c1 /* Cyrillic */
-LOWER 0xa7d1 - 0xa7f1 /* Cyrillic */
-MAPLOWER < 0xa7a1 - 0xa7c1 : 0xa7d1 >
-MAPLOWER < 0xa7d1 - 0xa7f1 : 0xa7d1 >
-MAPUPPER < 0xa7a1 - 0xa7c1 : 0xa7a1 >
-MAPUPPER < 0xa7d1 - 0xa7f1 : 0xa7a1 >
-
-SPECIAL 0xa8a1 - 0xa8c0
-
-IDEOGRAM 0xb0a1 - 0xb0fe
-IDEOGRAM 0xb1a1 - 0xb1fe
-IDEOGRAM 0xb2a1 - 0xb2fe
-IDEOGRAM 0xb3a1 - 0xb3fe
-IDEOGRAM 0xb4a1 - 0xb4fe
-IDEOGRAM 0xb5a1 - 0xb5fe
-IDEOGRAM 0xb6a1 - 0xb6fe
-IDEOGRAM 0xb7a1 - 0xb7fe
-IDEOGRAM 0xb8a1 - 0xb8fe
-IDEOGRAM 0xb9a1 - 0xb9fe
-IDEOGRAM 0xbaa1 - 0xbafe
-IDEOGRAM 0xbba1 - 0xbbfe
-IDEOGRAM 0xbca1 - 0xbcfe
-IDEOGRAM 0xbda1 - 0xbdfe
-IDEOGRAM 0xbea1 - 0xbefe
-IDEOGRAM 0xbfa1 - 0xbffe
-IDEOGRAM 0xc0a1 - 0xc0fe
-IDEOGRAM 0xc1a1 - 0xc1fe
-IDEOGRAM 0xc2a1 - 0xc2fe
-IDEOGRAM 0xc3a1 - 0xc3fe
-IDEOGRAM 0xc4a1 - 0xc4fe
-IDEOGRAM 0xc5a1 - 0xc5fe
-IDEOGRAM 0xc6a1 - 0xc6fe
-IDEOGRAM 0xc7a1 - 0xc7fe
-IDEOGRAM 0xc8a1 - 0xc8fe
-IDEOGRAM 0xc9a1 - 0xc9fe
-IDEOGRAM 0xcaa1 - 0xcafe
-IDEOGRAM 0xcba1 - 0xcbfe
-IDEOGRAM 0xcca1 - 0xccfe
-IDEOGRAM 0xcda1 - 0xcdfe
-IDEOGRAM 0xcea1 - 0xcefe
-IDEOGRAM 0xcfa1 - 0xcfd3
-IDEOGRAM 0xd0a1 - 0xd0fe
-IDEOGRAM 0xd1a1 - 0xd1fe
-IDEOGRAM 0xd2a1 - 0xd2fe
-IDEOGRAM 0xd3a1 - 0xd3fe
-IDEOGRAM 0xd4a1 - 0xd4fe
-IDEOGRAM 0xd5a1 - 0xd5fe
-IDEOGRAM 0xd6a1 - 0xd6fe
-IDEOGRAM 0xd7a1 - 0xd7fe
-IDEOGRAM 0xd8a1 - 0xd8fe
-IDEOGRAM 0xd9a1 - 0xd9fe
-IDEOGRAM 0xdaa1 - 0xdafe
-IDEOGRAM 0xdba1 - 0xdbfe
-IDEOGRAM 0xdca1 - 0xdcfe
-IDEOGRAM 0xdda1 - 0xddfe
-IDEOGRAM 0xdea1 - 0xdefe
-IDEOGRAM 0xdfa1 - 0xdffe
-IDEOGRAM 0xe0a1 - 0xe0fe
-IDEOGRAM 0xe1a1 - 0xe1fe
-IDEOGRAM 0xe2a1 - 0xe2fe
-IDEOGRAM 0xe3a1 - 0xe3fe
-IDEOGRAM 0xe4a1 - 0xe4fe
-IDEOGRAM 0xe5a1 - 0xe5fe
-IDEOGRAM 0xe6a1 - 0xe6fe
-IDEOGRAM 0xe7a1 - 0xe7fe
-IDEOGRAM 0xe8a1 - 0xe8fe
-IDEOGRAM 0xe9a1 - 0xe9fe
-IDEOGRAM 0xeaa1 - 0xeafe
-IDEOGRAM 0xeba1 - 0xebfe
-IDEOGRAM 0xeca1 - 0xecfe
-IDEOGRAM 0xeda1 - 0xedfe
-IDEOGRAM 0xeea1 - 0xeefe
-IDEOGRAM 0xefa1 - 0xeffe
-IDEOGRAM 0xf0a1 - 0xf0fe
-IDEOGRAM 0xf1a1 - 0xf1fe
-IDEOGRAM 0xf2a1 - 0xf2fe
-IDEOGRAM 0xf3a1 - 0xf3fe
-IDEOGRAM 0xf4a1 - 0xf4a4
-
-/*
- * This is for Code Set 3, half-width kana
- */
-SPECIAL 0xa1 - 0xdf
-PHONOGRAM 0xa1 - 0xdf
-CONTROL 0x84 - 0x97 0x9b - 0x9f 0xe0 - 0xfe
diff --git a/usr.bin/mklocale/data/lt_LN.ASCII b/usr.bin/mklocale/data/lt_LN.ASCII
deleted file mode 100644
index 95cbeeb9fe09..000000000000
--- a/usr.bin/mklocale/data/lt_LN.ASCII
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Standard LOCALE_CTYPE for the ASCII Locale
- */
-ENCODING "NONE"
-VARIABLE Strict 7bit ASCII locale
-
-ALPHA 'A' - 'Z' 'a' - 'z'
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e
-LOWER 'a' - 'z'
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z'
-XDIGIT '0' - '9' 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/data/lt_LN.ISO8859-1 b/usr.bin/mklocale/data/lt_LN.ISO8859-1
deleted file mode 100644
index 5232ae3b0925..000000000000
--- a/usr.bin/mklocale/data/lt_LN.ISO8859-1
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Standard LOCALE_CTYPE for the iso_8859_1 Locale
- */
-ENCODING "NONE"
-VARIABLE ISO 8859-1 Latin-1 character set
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z' 0xc0 - 0xff
-CONTROL 0x00 - 0x1f 0x7f - 0x9f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e 0xa0 - 0xff
-LOWER 'a' - 'z' 0xe0 - 0xff
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e 0xa1 - 0xbf
-SPACE 0x09 - 0x0d 0x20 0xa0
-UPPER 'A' - 'Z' 0xc0 - 0xde
-XDIGIT 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t' 0xa0
-PRINT 0x20 - 0x7e 0xa0 - 0xff
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPLOWER <0xc0 - 0xdd : 0xe0>
-MAPLOWER <0xe0 - 0xff : 0xe0>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-MAPUPPER <0xc0 - 0xdd : 0xc0>
-MAPUPPER <0xe0 - 0xff : 0xc0>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/data/lt_LN.ISO_8859-1 b/usr.bin/mklocale/data/lt_LN.ISO_8859-1
deleted file mode 100644
index 5c7464111c70..000000000000
--- a/usr.bin/mklocale/data/lt_LN.ISO_8859-1
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Standard LOCALE_CTYPE for the iso_8859_1 Locale
- */
-ENCODING "NONE"
-VARIABLE ISO 8859-1 Latin-1 character set
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z' 0xc0 - 0xd6 0xd8 - 0xf6 0xf8 - 0xff
-CONTROL 0x00 - 0x1f 0x7f - 0x9f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e 0xa0 - 0xff
-LOWER 'a' - 'z' 0xdf - 0xf6 0xf8 - 0xff
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e 0xa1 - 0xbf 0xd7 0xf7
-SPACE 0x09 - 0x0d ' ' 0xa0
-UPPER 'A' - 'Z' 0xc0 - 0xd6 0xd8 - 0xde
-XDIGIT '0' - '9' 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e 0xa0 - 0xff
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPLOWER <0xc0 - 0xd6 : 0xe0>
-MAPLOWER <0xd8 - 0xde : 0xf8>
-MAPLOWER <0xdf - 0xf6 : 0xdf>
-MAPLOWER <0xf8 - 0xff : 0xf8>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-MAPUPPER <0xc0 - 0xd6 : 0xc0>
-MAPUPPER <0xd8 - 0xde : 0xd8>
-MAPUPPER <0xe0 - 0xf6 : 0xc0>
-MAPUPPER <0xf8 - 0xfe : 0xd8>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/data/ru_SU.CP866 b/usr.bin/mklocale/data/ru_SU.CP866
deleted file mode 100644
index 659482bf6dba..000000000000
--- a/usr.bin/mklocale/data/ru_SU.CP866
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * LOCALE_CTYPE for Russian Alternative character set (CP866)
- */
-ENCODING "NONE"
-VARIABLE Russian Alternative charset (CP866) by ache@astral.msk.su
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z' 0x80 - 0xaf 0xe0 - 0xf1
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e 0x80 - 0xff
-LOWER 'a' - 'z' 0xa0 - 0xaf 0xe0 - 0xef 0xf1
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z' 0x80 - 0x9f 0xf0
-XDIGIT '0' - '9' 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e 0x80 - 0xff
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPLOWER <0x80 - 0x8f : 0xa0>
-MAPLOWER <0x90 - 0x9f : 0xe0>
-MAPLOWER <0xf0 0xf1>
-MAPLOWER <0xa0 - 0xaf : 0xa0>
-MAPLOWER <0xe0 - 0xef : 0xe0>
-MAPLOWER <0xf1 0xf1>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-MAPUPPER <0x80 - 0x9f : 0x80>
-MAPUPPER <0xf0 0xf0>
-MAPUPPER <0xa0 - 0xaf : 0x80>
-MAPUPPER <0xe0 - 0xef : 0x90>
-MAPUPPER <0xf1 0xf0>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/data/ru_SU.KOI8-R b/usr.bin/mklocale/data/ru_SU.KOI8-R
deleted file mode 100644
index 6d9f539e329f..000000000000
--- a/usr.bin/mklocale/data/ru_SU.KOI8-R
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * LOCALE_CTYPE for Russian koi8-r character set (RFC1489)
- */
-ENCODING "NONE"
-VARIABLE Russian koi8-r character set by ache@astral.msk.su
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z' 0xa3 0xb3 0xc0 - 0xff
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e 0x80 - 0xff
-LOWER 'a' - 'z' 0xa3 0xc0 - 0xdf
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z' 0xb3 0xe0 - 0xff
-XDIGIT '0' - '9' 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e 0x80 - 0xff
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPLOWER <0xb3 0xa3>
-MAPLOWER <0xa3 0xa3>
-MAPLOWER <0xe0 - 0xff : 0xc0>
-MAPLOWER <0xc0 - 0xdf : 0xc0>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-MAPUPPER <0xb3 0xb3>
-MAPUPPER <0xa3 0xb3>
-MAPUPPER <0xe0 - 0xff : 0xe0>
-MAPUPPER <0xc0 - 0xdf : 0xe0>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/iso_8859_1 b/usr.bin/mklocale/iso_8859_1
deleted file mode 100644
index 5232ae3b0925..000000000000
--- a/usr.bin/mklocale/iso_8859_1
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Standard LOCALE_CTYPE for the iso_8859_1 Locale
- */
-ENCODING "NONE"
-VARIABLE ISO 8859-1 Latin-1 character set
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z' 0xc0 - 0xff
-CONTROL 0x00 - 0x1f 0x7f - 0x9f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e 0xa0 - 0xff
-LOWER 'a' - 'z' 0xe0 - 0xff
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e 0xa1 - 0xbf
-SPACE 0x09 - 0x0d 0x20 0xa0
-UPPER 'A' - 'Z' 0xc0 - 0xde
-XDIGIT 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t' 0xa0
-PRINT 0x20 - 0x7e 0xa0 - 0xff
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPLOWER <0xc0 - 0xdd : 0xe0>
-MAPLOWER <0xe0 - 0xff : 0xe0>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-MAPUPPER <0xc0 - 0xdd : 0xc0>
-MAPUPPER <0xe0 - 0xff : 0xc0>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/mklocale/ja_JP.EUC b/usr.bin/mklocale/ja_JP.EUC
deleted file mode 100644
index 55eb1559660f..000000000000
--- a/usr.bin/mklocale/ja_JP.EUC
+++ /dev/null
@@ -1,158 +0,0 @@
-# @(#)Japanese 8.1 (Berkeley) 6/6/93
-
-/*
- * Japanese LOCALE_CTYPE definitions using EUC of JIS character sets
- */
-
-ENCODING "EUC"
-
-/* JIS JIS JIS */
-/* X201 X208 X201 */
-/* 00-7f 84-fe */
-
-VARIABLE 1 0x0000 2 0x8080 2 0x0080 3 0x8000 0x8080
-
-/*
- * Code Set 1
- */
-ALPHA 'A' - 'Z' 'a' - 'z'
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e
-LOWER 'a' - 'z'
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z'
-XDIGIT 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e
-
-MAPLOWER < 'A' - 'Z' : 'a' >
-MAPLOWER < 'a' - 'z' : 'a' >
-MAPUPPER < 'A' - 'Z' : 'A' >
-MAPUPPER < 'a' - 'z' : 'A' >
-TODIGIT < '0' - '9' : 0 >
-TODIGIT < 'A' - 'F' : 10 >
-TODIGIT < 'a' - 'f' : 10 >
-
-/*
- * Code Set 2
- */
-
-SPACE 0xa1a1
-PHONOGRAM 0xa1bc
-SPECIAL 0xa1a2 - 0xa1fe
-PUNCT 0xa1a2 - 0xa1f8 /* A few too many in here... */
-
-SPECIAL 0xa2a1 - 0xa2ae 0xa2ba - 0xa2c1 0xa2ca - 0xa2d0 0xa2dc - 0xa2ea
-SPECIAL 0xa2f2 - 0xa2f9 0xa2fe
-
-DIGIT 0xa3b0 - 0xa3b9
-UPPER 0xa3c1 - 0xa3da /* Romaji */
-LOWER 0xa3e1 - 0xa3fa /* Romaji */
-MAPLOWER < 0xa3c1 - 0xa3da : 0xa3e1 > /* English */
-MAPLOWER < 0xa3e1 - 0xa3fa : 0xa3e1 > /* English */
-MAPUPPER < 0xa3c1 - 0xa3da : 0xa3c1 >
-MAPUPPER < 0xa3e1 - 0xa3fa : 0xa3c1 >
-
-XDIGIT 0xa3c1 - 0xa3c6 0xa3e1 - 0xa3e6
-
-TODIGIT < 0xa3b0 - 0xa3b9 : 0 >
-TODIGIT < 0xa3c1 - 0xa3c6 : 10 >
-TODIGIT < 0xa3e1 - 0xa3e6 : 10 >
-
-PHONOGRAM 0xa4a1 - 0xa4f3
-PHONOGRAM 0xa5a1 - 0xa5f6
-
-UPPER 0xa6a1 - 0xa6b8 /* Greek */
-LOWER 0xa6c1 - 0xa6d8 /* Greek */
-MAPLOWER < 0xa6a1 - 0xa6b8 : 0xa6c1 >
-MAPLOWER < 0xa6c1 - 0xa6d8 : 0xa6c1 >
-MAPUPPER < 0xa6a1 - 0xa6b8 : 0xa6a1 >
-MAPUPPER < 0xa6c1 - 0xa6d8 : 0xa6a1 >
-
-UPPER 0xa7a1 - 0xa7c1 /* Cyrillic */
-LOWER 0xa7d1 - 0xa7f1 /* Cyrillic */
-MAPLOWER < 0xa7a1 - 0xa7c1 : 0xa7d1 >
-MAPLOWER < 0xa7d1 - 0xa7f1 : 0xa7d1 >
-MAPUPPER < 0xa7a1 - 0xa7c1 : 0xa7a1 >
-MAPUPPER < 0xa7d1 - 0xa7f1 : 0xa7a1 >
-
-SPECIAL 0xa8a1 - 0xa8c0
-
-IDEOGRAM 0xb0a1 - 0xb0fe
-IDEOGRAM 0xb1a1 - 0xb1fe
-IDEOGRAM 0xb2a1 - 0xb2fe
-IDEOGRAM 0xb3a1 - 0xb3fe
-IDEOGRAM 0xb4a1 - 0xb4fe
-IDEOGRAM 0xb5a1 - 0xb5fe
-IDEOGRAM 0xb6a1 - 0xb6fe
-IDEOGRAM 0xb7a1 - 0xb7fe
-IDEOGRAM 0xb8a1 - 0xb8fe
-IDEOGRAM 0xb9a1 - 0xb9fe
-IDEOGRAM 0xbaa1 - 0xbafe
-IDEOGRAM 0xbba1 - 0xbbfe
-IDEOGRAM 0xbca1 - 0xbcfe
-IDEOGRAM 0xbda1 - 0xbdfe
-IDEOGRAM 0xbea1 - 0xbefe
-IDEOGRAM 0xbfa1 - 0xbffe
-IDEOGRAM 0xc0a1 - 0xc0fe
-IDEOGRAM 0xc1a1 - 0xc1fe
-IDEOGRAM 0xc2a1 - 0xc2fe
-IDEOGRAM 0xc3a1 - 0xc3fe
-IDEOGRAM 0xc4a1 - 0xc4fe
-IDEOGRAM 0xc5a1 - 0xc5fe
-IDEOGRAM 0xc6a1 - 0xc6fe
-IDEOGRAM 0xc7a1 - 0xc7fe
-IDEOGRAM 0xc8a1 - 0xc8fe
-IDEOGRAM 0xc9a1 - 0xc9fe
-IDEOGRAM 0xcaa1 - 0xcafe
-IDEOGRAM 0xcba1 - 0xcbfe
-IDEOGRAM 0xcca1 - 0xccfe
-IDEOGRAM 0xcda1 - 0xcdfe
-IDEOGRAM 0xcea1 - 0xcefe
-IDEOGRAM 0xcfa1 - 0xcfd3
-IDEOGRAM 0xd0a1 - 0xd0fe
-IDEOGRAM 0xd1a1 - 0xd1fe
-IDEOGRAM 0xd2a1 - 0xd2fe
-IDEOGRAM 0xd3a1 - 0xd3fe
-IDEOGRAM 0xd4a1 - 0xd4fe
-IDEOGRAM 0xd5a1 - 0xd5fe
-IDEOGRAM 0xd6a1 - 0xd6fe
-IDEOGRAM 0xd7a1 - 0xd7fe
-IDEOGRAM 0xd8a1 - 0xd8fe
-IDEOGRAM 0xd9a1 - 0xd9fe
-IDEOGRAM 0xdaa1 - 0xdafe
-IDEOGRAM 0xdba1 - 0xdbfe
-IDEOGRAM 0xdca1 - 0xdcfe
-IDEOGRAM 0xdda1 - 0xddfe
-IDEOGRAM 0xdea1 - 0xdefe
-IDEOGRAM 0xdfa1 - 0xdffe
-IDEOGRAM 0xe0a1 - 0xe0fe
-IDEOGRAM 0xe1a1 - 0xe1fe
-IDEOGRAM 0xe2a1 - 0xe2fe
-IDEOGRAM 0xe3a1 - 0xe3fe
-IDEOGRAM 0xe4a1 - 0xe4fe
-IDEOGRAM 0xe5a1 - 0xe5fe
-IDEOGRAM 0xe6a1 - 0xe6fe
-IDEOGRAM 0xe7a1 - 0xe7fe
-IDEOGRAM 0xe8a1 - 0xe8fe
-IDEOGRAM 0xe9a1 - 0xe9fe
-IDEOGRAM 0xeaa1 - 0xeafe
-IDEOGRAM 0xeba1 - 0xebfe
-IDEOGRAM 0xeca1 - 0xecfe
-IDEOGRAM 0xeda1 - 0xedfe
-IDEOGRAM 0xeea1 - 0xeefe
-IDEOGRAM 0xefa1 - 0xeffe
-IDEOGRAM 0xf0a1 - 0xf0fe
-IDEOGRAM 0xf1a1 - 0xf1fe
-IDEOGRAM 0xf2a1 - 0xf2fe
-IDEOGRAM 0xf3a1 - 0xf3fe
-IDEOGRAM 0xf4a1 - 0xf4a4
-
-/*
- * This is for Code Set 3, half-width kana
- */
-SPECIAL 0xa1 - 0xdf
-PHONOGRAM 0xa1 - 0xdf
-CONTROL 0x84 - 0x97 0x9b - 0x9f 0xe0 - 0xfe
diff --git a/usr.bin/mklocale/ru_SU.KOI8-R b/usr.bin/mklocale/ru_SU.KOI8-R
deleted file mode 100644
index d2164c45a997..000000000000
--- a/usr.bin/mklocale/ru_SU.KOI8-R
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * LOCALE_CTYPE for Russian koi8-r character set (RFC1489)
- */
-ENCODING "NONE"
-VARIABLE Russian koi8-r character set by ache@astral.msk.su
-
-#
-# This is a comment
-#
-ALPHA 'A' - 'Z' 'a' - 'z' 0xa3 0xb3 0xc0 - 0xff
-CONTROL 0x00 - 0x1f 0x7f
-DIGIT '0' - '9'
-GRAPH 0x21 - 0x7e 0x80 - 0xff
-LOWER 'a' - 'z' 0xa3 0xc0 - 0xdf
-PUNCT 0x21 - 0x2f 0x3a - 0x40 0x5b - 0x60 0x7b - 0x7e
-SPACE 0x09 - 0x0d 0x20
-UPPER 'A' - 'Z' 0xb3 0xe0 - 0xff
-XDIGIT 'a' - 'f' 'A' - 'F'
-BLANK ' ' '\t'
-PRINT 0x20 - 0x7e 0x80 - 0xff
-# IDEOGRAM
-# SPECIAL
-# PHONEGRAM
-
-MAPLOWER <'A' - 'Z' : 'a'>
-MAPLOWER <'a' - 'z' : 'a'>
-MAPLOWER <0xb3 0xa3>
-MAPLOWER <0xa3 0xa3>
-MAPLOWER <0xe0 - 0xff : 0xc0>
-MAPLOWER <0xc0 - 0xdf : 0xc0>
-MAPUPPER <'A' - 'Z' : 'A'>
-MAPUPPER <'a' - 'z' : 'A'>
-MAPUPPER <0xb3 0xb3>
-MAPUPPER <0xa3 0xb3>
-MAPUPPER <0xe0 - 0xff : 0xe0>
-MAPUPPER <0xc0 - 0xdf : 0xe0>
-TODIGIT <'0' - '9' : 0>
-TODIGIT <'A' - 'F' : 10>
-TODIGIT <'a' - 'f' : 10>
diff --git a/usr.bin/passwd/yppasswd.1 b/usr.bin/passwd/yppasswd.1
deleted file mode 100644
index 70044906f72d..000000000000
--- a/usr.bin/passwd/yppasswd.1
+++ /dev/null
@@ -1,115 +0,0 @@
-.\"
-.\" Manpage Copyright 1994 Olaf Kirch, <okir@monad.swb.de>
-.\"
-.Dd 18 December 1994
-.Dt YPPASSWD 1
-.Os FreeBSD 2.x
-.Sh NAME
-.Nm yppasswd, ypchpass, ypchfn, ypchsh
-.Nd modify a user's NIS password data
-.Sh SYNOPSIS
-.Nm yppasswd
-.Op Fl f
-.Op Fl s
-.Op Ar user
-.Nm ypchpass
-.Op Ar user
-.Nm ypchfn
-.Op Ar user
-.Nm ypchsh
-.Op Ar user
-.Sh DESCRIPTION
-When distributing your users' passwords over NIS (a.k.a. YP), the standard
-.Nm passwd ,
-.Nm chpass ,
-.Nm chfn , and
-.Nm chsh
-utilities cannot be
-used anymore to let a user change her password, because they only modify
-the password file on the local host. They are usually replaced by their
-YP counterparts, \fByppasswd\fP, \fBypchpass\fP, \fBypchfn\fP and \fBypchsh\fP.
-.Pp
-These commands are in fact the very same program, linked to different names.
-Using the command line switches, you can choose whether to update your
-password, your login shell (\fB-s\fP), or your GECOS field
-information (\fB-f\fP), or a combination of them. \fBchfn\fP and
-\fByppasswd\fP \fB-f\fP are equivalent, as are \fBchsh\fP and
-\fByppasswd\fP \fB-s\fP.
-.Pp
-When invoked without the \fIuser\fP argument, the account information for
-the invoking user will be updated, otherwise that of \fIuser\fP will be
-updated. This option is only available to the superuser.
-.Pp
-All tools will first prompt the user for the current NIS password needed
-for authentication with the \fByppasswdd\fP daemon. Subsequently, the
-program prompts for the updated information:
-.\"
-.\"
-.Pp "\fByppasswd\fP
-Change the user's NIS password. The user is prompted for the new password.
-While typing the password, echoing is turned off, so the password does not
-appear on the screen. An empty password is rejected, as are passwords shorter
-than six characters. The user will then be requested to retype the
-password to make sure it wasn't misspelled the first time.
-.\"
-.\"
-.Pp "\fBypchsh\fP or \fB-s\fP
-Change the user's login shell. The user is prompted for a new shell,
-offering the old one as default:
-.Pp
-.in +2n
-.ft B
-.nf
-Login shell [/bin/bash]: _
-.fi
-.ft
-.in
-.Pp
-To accept the default, simply press return. To clear the shell field in
-your \fBpasswd\fP file entry (so that the system's default shell is selected),
-enter the string \fInone\fP.
-.\"
-.\"
-.Pp "\fBypchfn\fP or \fB-f\fP
-Change the user's full name and related information. Traditionally, some
-applications expect the GECOS field (field 4) of the \fBpasswd\fP file to
-contain the user's real name (as opposed to the login name) plus some
-additional information like the office phone number. This information is
-displayed by \fBfinger(1)\fP and probably some other tools, too.
-.Pp
-When setting the full name, \fBypchfn\fP displays the following prompts,
-with the defaults in brackets:
-.Pp
-.in +2n
-.ft B
-.nf
-Name [Joe Doe]:
-Location [2nd floor, bldg 34]:
-Office Phone [12345]:
-Home Phone []:
-.fi
-.ft
-.in
-.Pp
-To accept a default, simply press return. To clear a field, enter the string
-\fInone\fP.
-.Sh LICENSE
-This program is a heavily beefed-up version of Theo de Raadt's \fByppasswd\fP
-client, which is covered by the BSD license. Therefore, the BSD license
-applies to this program as well.
-
-.Sh SEE ALSO
-.Xr finger 1 ,
-.Xr passwd 5 ,
-.Xr passwd 1 ,
-.Xr yppasswdd 8 .
-.Sh AUTHOR
-Theo de Raadt <deraadt@fsa.ca> (original client)
-.br
-Olaf Kirch <okir@monad.swb.de> (heavy modifications and manpages)
-.br
-Bill Paul <wpaul@ctr.columbia.edu> (port to FreeBSD and merger with
-.Xr passwd 1
-.Sh NOTES
-All these commands are really only symbolic links to
-.Xr passwd 1
diff --git a/usr.bin/timedef/Makefile b/usr.bin/timedef/Makefile
deleted file mode 100644
index 80fe8d91c64c..000000000000
--- a/usr.bin/timedef/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-# $Id: Makefile,v 1.3 1995/06/19 22:15:35 asami Exp $
-
-LOCALES= ru_SU.KOI8-R
-LOCALEDIR= ${DESTDIR}/usr/share/locale
-
-afterinstall:
- for l in ${LOCALES}; do \
- grep -v '^#' < ${.CURDIR}/data/$$l > ${LOCALEDIR}/$$l/LC_TIME; \
- chown ${BINOWN}.${BINGRP} ${LOCALEDIR}/$$l/LC_TIME; \
- chmod 644 ${LOCALEDIR}/$$l/LC_TIME; \
- done
-
-.include <bsd.prog.mk>
diff --git a/usr.bin/timedef/data/ru_SU.KOI8-R b/usr.bin/timedef/data/ru_SU.KOI8-R
deleted file mode 100644
index e7a869f72e1b..000000000000
--- a/usr.bin/timedef/data/ru_SU.KOI8-R
+++ /dev/null
@@ -1,76 +0,0 @@
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# Short months names
-#
-ÑÎ×
-ÆÅ×
-ÍÁÒ
-ÁÐÒ
-ÍÁÑ
-ÉÀÎ
-ÉÀÌ
-Á×Ç
-ÓÅÎ
-ÏËÔ
-ÎÏÑ
-ÄÅË
-#
-# Long months names
-#
-ÑÎ×ÁÒÑ
-ÆÅ×ÒÁÌÑ
-ÍÁÒÔÁ
-ÁÐÒÅÌÑ
-ÍÁÑ
-ÉÀÎÑ
-ÉÀÌÑ
-Á×ÇÕÓÔÁ
-ÓÅÎÔÑÂÒÑ
-ÏËÔÑÂÒÑ
-ÎÏÑÂÒÑ
-ÄÅËÁÂÒÑ
-#
-# Short weekdays names
-#
-×ÏÓ
-ÐÏÎ
-×ÔÏ
-ÓÒÅ
-ÞÅÔ
-ÐÑÔ
-ÓÕÂ
-#
-# Long weekdays names
-#
-×ÏÓËÒÅÓÅÎØÅ
-ÐÏÎÅÄÅÌØÎÉË
-×ÔÏÒÎÉË
-ÓÒÅÄÁ
-ÞÅÔ×ÅÒÇ
-ÐÑÔÎÉÃÁ
-ÓÕÂÂÏÔÁ
-#
-# X_fmt
-#
-%H:%M:%S
-#
-# x_fmt
-#
-%d.%m.%y
-#
-# c_fmt
-#
-%x %X
-#
-# am
-#
-
-#
-# pm
-#
-ÐÐ
-#
-# date_fmt
-#
-%a %e %b %H:%M:%S %Z %Y
diff --git a/usr.bin/tip/pathnames.h b/usr.bin/tip/pathnames.h
deleted file mode 100644
index fae04cb7fb89..000000000000
--- a/usr.bin/tip/pathnames.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 1989, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)pathnames.h 8.1 (Berkeley) 6/6/93
- */
-
-#include <paths.h>
-
-#define _PATH_ACULOG "/var/log/aculog"
-#define _PATH_LOCKDIRNAME "/var/spool/lock/LCK..%s"
-#ifdef notdef
-#define _PATH_LOCKDIRNAME "/var/spool/uucp/LCK/LCK..%s"
-#endif
-#define _PATH_PHONES "/etc/phones"
-#define _PATH_REMOTE "/etc/remote"
diff --git a/usr.bin/tip/tip.c b/usr.bin/tip/tip.c
deleted file mode 100644
index 0d84e75ff168..000000000000
--- a/usr.bin/tip/tip.c
+++ /dev/null
@@ -1,608 +0,0 @@
-/*
- * Copyright (c) 1983, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-static char copyright[] =
-"@(#) Copyright (c) 1983, 1993\n\
- The Regents of the University of California. All rights reserved.\n";
-#endif /* not lint */
-
-#ifndef lint
-static char sccsid[] = "@(#)tip.c 8.1 (Berkeley) 6/6/93";
-#endif /* not lint */
-
-/*
- * tip - UNIX link to other systems
- * tip [-v] [-speed] system-name
- * or
- * cu phone-number [-s speed] [-l line] [-a acu]
- */
-#include "tip.h"
-#include "pathnames.h"
-
-/*
- * Baud rate mapping table
- */
-int bauds[] = {
- 0, 50, 75, 110, 134, 150, 200, 300, 600,
- 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, -1
-};
-
-int disc = OTTYDISC; /* tip normally runs this way */
-void intprompt();
-void timeout();
-void cleanup();
-void tipdone();
-char *sname();
-char PNbuf[256]; /* This limits the size of a number */
-
-main(argc, argv)
- char *argv[];
-{
- char *system = NOSTR;
- register int i;
- register char *p;
- char sbuf[12];
-
- gid = getgid();
- egid = getegid();
- uid = getuid();
- euid = geteuid();
- if (equal(sname(argv[0]), "cu")) {
- cumode = 1;
- cumain(argc, argv);
- goto cucommon;
- }
-
- if (argc > 4) {
- fprintf(stderr, "usage: tip [-v] [-speed] [system-name]\n");
- exit(1);
- }
- if (!isatty(0)) {
- fprintf(stderr, "tip: must be interactive\n");
- exit(1);
- }
-
- for (; argc > 1; argv++, argc--) {
- if (argv[1][0] != '-')
- system = argv[1];
- else switch (argv[1][1]) {
-
- case 'v':
- vflag++;
- break;
-
- case '0': case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9':
- BR = atoi(&argv[1][1]);
- break;
-
- default:
- fprintf(stderr, "tip: %s, unknown option\n", argv[1]);
- break;
- }
- }
-
- if (system == NOSTR)
- goto notnumber;
- if (isalpha(*system))
- goto notnumber;
- /*
- * System name is really a phone number...
- * Copy the number then stomp on the original (in case the number
- * is private, we don't want 'ps' or 'w' to find it).
- */
- if (strlen(system) > sizeof PNbuf - 1) {
- fprintf(stderr, "tip: phone number too long (max = %d bytes)\n",
- sizeof PNbuf - 1);
- exit(1);
- }
- strncpy( PNbuf, system, sizeof PNbuf - 1 );
- for (p = system; *p; p++)
- *p = '\0';
- PN = PNbuf;
- (void)sprintf(sbuf, "tip%d", BR);
- system = sbuf;
-
-notnumber:
- (void)signal(SIGINT, cleanup);
- (void)signal(SIGQUIT, cleanup);
- (void)signal(SIGHUP, cleanup);
- (void)signal(SIGTERM, cleanup);
- (void)signal(SIGUSR1, tipdone);
-
- if ((i = hunt(system)) == 0) {
- printf("all ports busy\n");
- exit(3);
- }
- if (i == -1) {
- printf("link down\n");
- (void)uu_unlock(uucplock);
- exit(3);
- }
- setbuf(stdout, NULL);
- loginit();
-
- /*
- * Kludge, their's no easy way to get the initialization
- * in the right order, so force it here
- */
- if ((PH = getenv("PHONES")) == NOSTR)
- PH = _PATH_PHONES;
- vinit(); /* init variables */
- setparity("even"); /* set the parity table */
- if ((i = speed(number(value(BAUDRATE)))) == NULL) {
- printf("tip: bad baud rate %d\n", number(value(BAUDRATE)));
- (void)uu_unlock(uucplock);
- exit(3);
- }
-
- /*
- * Now that we have the logfile and the ACU open
- * return to the real uid and gid. These things will
- * be closed on exit. Swap real and effective uid's
- * so we can get the original permissions back
- * for removing the uucp lock.
- */
- user_uid();
-
- /*
- * Hardwired connections require the
- * line speed set before they make any transmissions
- * (this is particularly true of things like a DF03-AC)
- */
- if (HW)
- ttysetup(i);
- if (p = connect()) {
- printf("\07%s\n[EOT]\n", p);
- daemon_uid();
- (void)uu_unlock(uucplock);
- exit(1);
- }
- if (!HW)
- ttysetup(i);
-cucommon:
- /*
- * From here down the code is shared with
- * the "cu" version of tip.
- */
-
- ioctl(0, TIOCGETP, (char *)&defarg);
- ioctl(0, TIOCGETC, (char *)&defchars);
- ioctl(0, TIOCGLTC, (char *)&deflchars);
- ioctl(0, TIOCGETD, (char *)&odisc);
- arg = defarg;
- arg.sg_flags = ANYP | CBREAK;
- tchars = defchars;
- tchars.t_intrc = tchars.t_quitc = -1;
- ltchars = deflchars;
- ltchars.t_suspc = ltchars.t_dsuspc = ltchars.t_flushc
- = ltchars.t_lnextc = -1;
- raw();
-
- pipe(fildes); pipe(repdes);
- (void)signal(SIGALRM, timeout);
-
- /*
- * Everything's set up now:
- * connection established (hardwired or dialup)
- * line conditioned (baud rate, mode, etc.)
- * internal data structures (variables)
- * so, fork one process for local side and one for remote.
- */
- printf(cumode ? "Connected\r\n" : "\07connected\r\n");
- if (pid = fork())
- tipin();
- else
- tipout();
- /*NOTREACHED*/
-}
-
-void
-cleanup()
-{
-
- daemon_uid();
- (void)uu_unlock(uucplock);
- if (odisc)
- ioctl(0, TIOCSETD, (char *)&odisc);
- exit(0);
-}
-
-void
-tipdone()
-{
- tipabort("Hangup.");
-}
-/*
- * Muck with user ID's. We are setuid to the owner of the lock
- * directory when we start. user_uid() reverses real and effective
- * ID's after startup, to run with the user's permissions.
- * daemon_uid() switches back to the privileged uid for unlocking.
- * Finally, to avoid running a shell with the wrong real uid,
- * shell_uid() sets real and effective uid's to the user's real ID.
- */
-static int uidswapped;
-
-user_uid()
-{
- if (uidswapped == 0) {
- seteuid(uid);
- uidswapped = 1;
- }
-}
-
-daemon_uid()
-{
-
- if (uidswapped) {
- seteuid(euid);
- uidswapped = 0;
- }
-}
-
-shell_uid()
-{
-
- seteuid(uid);
-}
-
-/*
- * put the controlling keyboard into raw mode
- */
-raw()
-{
-
- ioctl(0, TIOCSETP, &arg);
- ioctl(0, TIOCSETC, &tchars);
- ioctl(0, TIOCSLTC, &ltchars);
- ioctl(0, TIOCSETD, (char *)&disc);
-}
-
-
-/*
- * return keyboard to normal mode
- */
-unraw()
-{
-
- ioctl(0, TIOCSETD, (char *)&odisc);
- ioctl(0, TIOCSETP, (char *)&defarg);
- ioctl(0, TIOCSETC, (char *)&defchars);
- ioctl(0, TIOCSLTC, (char *)&deflchars);
-}
-
-static jmp_buf promptbuf;
-
-/*
- * Print string ``s'', then read a string
- * in from the terminal. Handles signals & allows use of
- * normal erase and kill characters.
- */
-prompt(s, p)
- char *s;
- register char *p;
-{
- register char *b = p;
- sig_t oint, oquit;
-
- stoprompt = 0;
- oint = signal(SIGINT, intprompt);
- oquit = signal(SIGQUIT, SIG_IGN);
- unraw();
- printf("%s", s);
- if (setjmp(promptbuf) == 0)
- while ((*p = getchar()) != EOF && *p != '\n')
- p++;
- *p = '\0';
-
- raw();
- (void)signal(SIGINT, oint);
- (void)signal(SIGQUIT, oquit);
- return (stoprompt || p == b);
-}
-
-/*
- * Interrupt service routine during prompting
- */
-void
-intprompt()
-{
-
- (void)signal(SIGINT, SIG_IGN);
- stoprompt = 1;
- printf("\r\n");
- longjmp(promptbuf, 1);
-}
-
-/*
- * ****TIPIN TIPIN****
- */
-tipin()
-{
- char gch, bol = 1;
-
- /*
- * Kinda klugey here...
- * check for scripting being turned on from the .tiprc file,
- * but be careful about just using setscript(), as we may
- * send a SIGEMT before tipout has a chance to set up catching
- * it; so wait a second, then setscript()
- */
- if (boolean(value(SCRIPT))) {
- sleep(1);
- setscript();
- }
-
- while (1) {
- gch = getchar()&0177;
- if ((gch == character(value(ESCAPE))) && bol) {
- if (!(gch = escape()))
- continue;
- } else if (!cumode && gch == character(value(RAISECHAR))) {
- boolean(value(RAISE)) = !boolean(value(RAISE));
- continue;
- } else if (gch == '\r') {
- bol = 1;
- pwrite(FD, &gch, 1);
- if (boolean(value(HALFDUPLEX)))
- printf("\r\n");
- continue;
- } else if (!cumode && gch == character(value(FORCE)))
- gch = getchar()&0177;
- bol = any(gch, value(EOL));
- if (boolean(value(RAISE)) && islower(gch))
- gch = toupper(gch);
- pwrite(FD, &gch, 1);
- if (boolean(value(HALFDUPLEX)))
- printf("%c", gch);
- }
-}
-
-extern esctable_t etable[];
-
-/*
- * Escape handler --
- * called on recognition of ``escapec'' at the beginning of a line
- */
-escape()
-{
- register char gch;
- register esctable_t *p;
- char c = character(value(ESCAPE));
-
- gch = (getchar()&0177);
- for (p = etable; p->e_char; p++)
- if (p->e_char == gch) {
- if ((p->e_flags&PRIV) && uid)
- continue;
- printf("%s", ctrl(c));
- (*p->e_func)(gch);
- return (0);
- }
- /* ESCAPE ESCAPE forces ESCAPE */
- if (c != gch)
- pwrite(FD, &c, 1);
- return (gch);
-}
-
-speed(n)
- int n;
-{
- register int *p;
-
- for (p = bauds; *p != -1; p++)
- if (*p == n)
- return (p - bauds);
- return (NULL);
-}
-
-any(c, p)
- register char c, *p;
-{
- while (p && *p)
- if (*p++ == c)
- return (1);
- return (0);
-}
-
-size(s)
- register char *s;
-{
- register int i = 0;
-
- while (s && *s++)
- i++;
- return (i);
-}
-
-char *
-interp(s)
- register char *s;
-{
- static char buf[256];
- register char *p = buf, c, *q;
-
- while (c = *s++) {
- for (q = "\nn\rr\tt\ff\033E\bb"; *q; q++)
- if (*q++ == c) {
- *p++ = '\\'; *p++ = *q;
- goto next;
- }
- if (c < 040) {
- *p++ = '^'; *p++ = c + 'A'-1;
- } else if (c == 0177) {
- *p++ = '^'; *p++ = '?';
- } else
- *p++ = c;
- next:
- ;
- }
- *p = '\0';
- return (buf);
-}
-
-char *
-ctrl(c)
- char c;
-{
- static char s[3];
-
- if (c < 040 || c == 0177) {
- s[0] = '^';
- s[1] = c == 0177 ? '?' : c+'A'-1;
- s[2] = '\0';
- } else {
- s[0] = c;
- s[1] = '\0';
- }
- return (s);
-}
-
-/*
- * Help command
- */
-help(c)
- char c;
-{
- register esctable_t *p;
-
- printf("%c\r\n", c);
- for (p = etable; p->e_char; p++) {
- if ((p->e_flags&PRIV) && uid)
- continue;
- printf("%2s", ctrl(character(value(ESCAPE))));
- printf("%-2s %c %s\r\n", ctrl(p->e_char),
- p->e_flags&EXP ? '*': ' ', p->e_help);
- }
-}
-
-/*
- * Set up the "remote" tty's state
- */
-ttysetup(speed)
- int speed;
-{
- unsigned bits = LDECCTQ;
-
- arg.sg_ispeed = arg.sg_ospeed = speed;
- arg.sg_flags = RAW;
- if (boolean(value(TAND)))
- arg.sg_flags |= TANDEM;
- ioctl(FD, TIOCSETP, (char *)&arg);
- ioctl(FD, TIOCLBIS, (char *)&bits);
-}
-
-/*
- * Return "simple" name from a file name,
- * strip leading directories.
- */
-char *
-sname(s)
- register char *s;
-{
- register char *p = s;
-
- while (*s)
- if (*s++ == '/')
- p = s;
- return (p);
-}
-
-static char partab[0200];
-static int bits8;
-
-/*
- * Do a write to the remote machine with the correct parity.
- * We are doing 8 bit wide output, so we just generate a character
- * with the right parity and output it.
- */
-pwrite(fd, buf, n)
- int fd;
- char *buf;
- register int n;
-{
- register int i;
- register char *bp;
- extern int errno;
-
- bp = buf;
- if (bits8 == 0)
- for (i = 0; i < n; i++) {
- *bp = partab[(*bp) & 0177];
- bp++;
- }
- if (write(fd, buf, n) < 0) {
- if (errno == EIO)
- tipabort("Lost carrier.");
- if (errno == ENODEV)
- tipabort("tty not available.");
- /* this is questionable */
- perror("write");
- }
-}
-
-/*
- * Build a parity table with appropriate high-order bit.
- */
-setparity(defparity)
- char *defparity;
-{
- register int i, flip, clr, set;
- char *parity;
- extern char evenpartab[];
-
- if (value(PARITY) == NOSTR)
- value(PARITY) = defparity;
- parity = value(PARITY);
- if (equal(parity, "none")) {
- bits8 = 1;
- return;
- }
- bits8 = 0;
- flip = 0;
- clr = 0377;
- set = 0;
- if (equal(parity, "odd"))
- flip = 0200; /* reverse bit 7 */
- else if (equal(parity, "zero"))
- clr = 0177; /* turn off bit 7 */
- else if (equal(parity, "one"))
- set = 0200; /* turn on bit 7 */
- else if (!equal(parity, "even")) {
- (void) fprintf(stderr, "%s: unknown parity value\r\n", parity);
- (void) fflush(stderr);
- }
- for (i = 0; i < 0200; i++)
- partab[i] = evenpartab[i] ^ flip | set & clr;
-}
diff --git a/usr.bin/tip/tip.h b/usr.bin/tip/tip.h
deleted file mode 100644
index f1b833d74203..000000000000
--- a/usr.bin/tip/tip.h
+++ /dev/null
@@ -1,280 +0,0 @@
-/*
- * Copyright (c) 1989, 1993
- * The Regents of the University of California. All rights reserved.
- *
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)tip.h 8.1 (Berkeley) 6/6/93
- */
-
-/*
- * tip - terminal interface program
- */
-
-#include <sys/types.h>
-#include <machine/endian.h>
-#include <sys/file.h>
-#include <sys/time.h>
-
-#include <sgtty.h>
-#include <signal.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <pwd.h>
-#include <ctype.h>
-#include <setjmp.h>
-#include <unistd.h>
-#include <errno.h>
-
-/*
- * Remote host attributes
- */
-char *DV; /* UNIX device(s) to open */
-char *EL; /* chars marking an EOL */
-char *CM; /* initial connection message */
-char *IE; /* EOT to expect on input */
-char *OE; /* EOT to send to complete FT */
-char *CU; /* call unit if making a phone call */
-char *AT; /* acu type */
-char *PN; /* phone number(s) */
-char *DI; /* disconnect string */
-char *PA; /* parity to be generated */
-
-char *PH; /* phone number file */
-char *RM; /* remote file name */
-char *HO; /* host name */
-
-long BR; /* line speed for conversation */
-long FS; /* frame size for transfers */
-
-char DU; /* this host is dialed up */
-char HW; /* this device is hardwired, see hunt.c */
-char *ES; /* escape character */
-char *EX; /* exceptions */
-char *FO; /* force (literal next) char*/
-char *RC; /* raise character */
-char *RE; /* script record file */
-char *PR; /* remote prompt */
-long DL; /* line delay for file transfers to remote */
-long CL; /* char delay for file transfers to remote */
-long ET; /* echocheck timeout */
-char HD; /* this host is half duplex - do local echo */
-
-/*
- * String value table
- */
-typedef
- struct {
- char *v_name; /* whose name is it */
- char v_type; /* for interpreting set's */
- char v_access; /* protection of touchy ones */
- char *v_abrev; /* possible abreviation */
- char *v_value; /* casted to a union later */
- }
- value_t;
-
-#define STRING 01 /* string valued */
-#define BOOL 02 /* true-false value */
-#define NUMBER 04 /* numeric value */
-#define CHAR 010 /* character value */
-
-#define WRITE 01 /* write access to variable */
-#define READ 02 /* read access */
-
-#define CHANGED 01 /* low bit is used to show modification */
-#define PUBLIC 1 /* public access rights */
-#define PRIVATE 03 /* private to definer */
-#define ROOT 05 /* root defined */
-
-#define TRUE 1
-#define FALSE 0
-
-#define ENVIRON 020 /* initialize out of the environment */
-#define IREMOTE 040 /* initialize out of remote structure */
-#define INIT 0100 /* static data space used for initialization */
-#define TMASK 017
-
-/*
- * Definition of ACU line description
- */
-typedef
- struct {
- char *acu_name;
- int (*acu_dialer)();
- int (*acu_disconnect)();
- int (*acu_abort)();
- }
- acu_t;
-
-#define equal(a, b) (strcmp(a,b)==0)/* A nice function to string compare */
-
-/*
- * variable manipulation stuff --
- * if we defined the value entry in value_t, then we couldn't
- * initialize it in vars.c, so we cast it as needed to keep lint
- * happy.
- */
-typedef
- union {
- int zz_number;
- short zz_boolean[2];
- char zz_character[4];
- int *zz_address;
- }
- zzhack;
-
-#define value(v) vtable[v].v_value
-
-#define number(v) ((((zzhack *)(&(v))))->zz_number)
-
-#if BYTE_ORDER == LITTLE_ENDIAN
-#define boolean(v) ((((zzhack *)(&(v))))->zz_boolean[0])
-#define character(v) ((((zzhack *)(&(v))))->zz_character[0])
-#endif
-
-#if BYTE_ORDER == BIG_ENDIAN
-#define boolean(v) ((((zzhack *)(&(v))))->zz_boolean[1])
-#define character(v) ((((zzhack *)(&(v))))->zz_character[3])
-#endif
-
-#define address(v) ((((zzhack *)(&(v))))->zz_address)
-
-/*
- * Escape command table definitions --
- * lookup in this table is performed when ``escapec'' is recognized
- * at the begining of a line (as defined by the eolmarks variable).
-*/
-
-typedef
- struct {
- char e_char; /* char to match on */
- char e_flags; /* experimental, priviledged */
- char *e_help; /* help string */
- int (*e_func)(); /* command */
- }
- esctable_t;
-
-#define NORM 00 /* normal protection, execute anyone */
-#define EXP 01 /* experimental, mark it with a `*' on help */
-#define PRIV 02 /* priviledged, root execute only */
-
-extern int vflag; /* verbose during reading of .tiprc file */
-extern value_t vtable[]; /* variable table */
-
-#ifndef ACULOG
-#define logent(a, b, c, d)
-#define loginit()
-#endif
-
-/*
- * Definition of indices into variable table so
- * value(DEFINE) turns into a static address.
- */
-
-#define BEAUTIFY 0
-#define BAUDRATE 1
-#define DIALTIMEOUT 2
-#define EOFREAD 3
-#define EOFWRITE 4
-#define EOL 5
-#define ESCAPE 6
-#define EXCEPTIONS 7
-#define FORCE 8
-#define FRAMESIZE 9
-#define HOST 10
-#define LOG 11
-#define PHONES 12
-#define PROMPT 13
-#define RAISE 14
-#define RAISECHAR 15
-#define RECORD 16
-#define REMOTE 17
-#define SCRIPT 18
-#define TABEXPAND 19
-#define VERBOSE 20
-#define SHELL 21
-#define HOME 22
-#define ECHOCHECK 23
-#define DISCONNECT 24
-#define TAND 25
-#define LDELAY 26
-#define CDELAY 27
-#define ETIMEOUT 28
-#define RAWFTP 29
-#define HALFDUPLEX 30
-#define LECHO 31
-#define PARITY 32
-
-#define NOVAL ((value_t *)NULL)
-#define NOACU ((acu_t *)NULL)
-#define NOSTR ((char *)NULL)
-#define NOFILE ((FILE *)NULL)
-#define NOPWD ((struct passwd *)0)
-
-struct sgttyb arg; /* current mode of local terminal */
-struct sgttyb defarg; /* initial mode of local terminal */
-struct tchars tchars; /* current state of terminal */
-struct tchars defchars; /* initial state of terminal */
-struct ltchars ltchars; /* current local characters of terminal */
-struct ltchars deflchars; /* initial local characters of terminal */
-
-FILE *fscript; /* FILE for scripting */
-
-int fildes[2]; /* file transfer synchronization channel */
-int repdes[2]; /* read process sychronization channel */
-int FD; /* open file descriptor to remote host */
-int AC; /* open file descriptor to dialer (v831 only) */
-int vflag; /* print .tiprc initialization sequence */
-int sfd; /* for ~< operation */
-int pid; /* pid of tipout */
-uid_t uid, euid; /* real and effective user id's */
-gid_t gid, egid; /* real and effective group id's */
-int stop; /* stop transfer session flag */
-int quit; /* same; but on other end */
-int intflag; /* recognized interrupt */
-int stoprompt; /* for interrupting a prompt session */
-int timedout; /* ~> transfer timedout */
-int cumode; /* simulating the "cu" program */
-
-char fname[80]; /* file name buffer for ~< */
-char copyname[80]; /* file name buffer for ~> */
-char ccc; /* synchronization character */
-char ch; /* for tipout */
-char *uucplock; /* name of lock file for uucp's */
-
-int odisc; /* initial tty line discipline */
-extern int disc; /* current tty discpline */
-
-extern char *ctrl();
-extern char *vinterp();
-extern char *connect();
-
-int tipabort __P((char *));
diff --git a/usr.bin/tip/tipout.c b/usr.bin/tip/tipout.c
deleted file mode 100644
index 246cfb7d67f9..000000000000
--- a/usr.bin/tip/tipout.c
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * Copyright (c) 1983, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-static char sccsid[] = "@(#)tipout.c 8.1 (Berkeley) 6/6/93";
-#endif /* not lint */
-
-#include "tip.h"
-/*
- * tip
- *
- * lower fork of tip -- handles passive side
- * reading from the remote host
- */
-
-static jmp_buf sigbuf;
-
-/*
- * TIPOUT wait state routine --
- * sent by TIPIN when it wants to posses the remote host
- */
-void
-intIOT()
-{
-
- write(repdes[1],&ccc,1);
- read(fildes[0], &ccc,1);
- longjmp(sigbuf, 1);
-}
-
-/*
- * Scripting command interpreter --
- * accepts script file name over the pipe and acts accordingly
- */
-void
-intEMT()
-{
- char c, line[256];
- register char *pline = line;
- char reply;
-
- read(fildes[0], &c, 1);
- while (c != '\n') {
- *pline++ = c;
- read(fildes[0], &c, 1);
- }
- *pline = '\0';
- if (boolean(value(SCRIPT)) && fscript != NULL)
- fclose(fscript);
- if (pline == line) {
- boolean(value(SCRIPT)) = FALSE;
- reply = 'y';
- } else {
- if ((fscript = fopen(line, "a")) == NULL)
- reply = 'n';
- else {
- reply = 'y';
- boolean(value(SCRIPT)) = TRUE;
- }
- }
- write(repdes[1], &reply, 1);
- longjmp(sigbuf, 1);
-}
-
-void
-intTERM()
-{
-
- if (boolean(value(SCRIPT)) && fscript != NULL)
- fclose(fscript);
- exit(0);
-}
-
-void
-intSYS()
-{
-
- boolean(value(BEAUTIFY)) = !boolean(value(BEAUTIFY));
- longjmp(sigbuf, 1);
-}
-
-/*
- * ****TIPOUT TIPOUT****
- */
-tipout()
-{
- char buf[BUFSIZ];
- register char *cp;
- register int cnt;
- extern int errno;
- int omask;
-
- signal(SIGINT, SIG_IGN);
- signal(SIGQUIT, SIG_IGN);
- signal(SIGEMT, intEMT); /* attention from TIPIN */
- signal(SIGTERM, intTERM); /* time to go signal */
- signal(SIGIOT, intIOT); /* scripting going on signal */
- signal(SIGHUP, intTERM); /* for dial-ups */
- signal(SIGSYS, intSYS); /* beautify toggle */
- (void) setjmp(sigbuf);
- for (omask = 0;; sigsetmask(omask)) {
- cnt = read(FD, buf, BUFSIZ);
- if (cnt <= 0) {
- /* lost carrier */
- if (cnt < 0 && errno == EIO) {
- sigblock(sigmask(SIGTERM));
- intTERM();
- /*NOTREACHED*/
- } else if (cnt == 0 && errno == ENOENT) {
- kill(getppid(),SIGUSR1);
- sigblock(sigmask(SIGTERM));
- intTERM();
- /*NOTREACHED*/
- } else {
- printf("%d %d\r",cnt,errno);
- fflush(stdout);
- }
- continue;
- }
-#define ALLSIGS sigmask(SIGEMT)|sigmask(SIGTERM)|sigmask(SIGIOT)|sigmask(SIGSYS)
- omask = sigblock(ALLSIGS);
- for (cp = buf; cp < buf + cnt; cp++)
- *cp &= 0177;
- write(1, buf, cnt);
- if (boolean(value(SCRIPT)) && fscript != NULL) {
- if (!boolean(value(BEAUTIFY))) {
- fwrite(buf, 1, cnt, fscript);
- continue;
- }
- for (cp = buf; cp < buf + cnt; cp++)
- if ((*cp >= ' ' && *cp <= '~') ||
- any(*cp, value(EXCEPTIONS)))
- putc(*cp, fscript);
- }
- }
-}
diff --git a/usr.bin/tip/uucplock.c b/usr.bin/tip/uucplock.c
deleted file mode 100644
index 917d812ecdc5..000000000000
--- a/usr.bin/tip/uucplock.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (c) 1988, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef lint
-static char sccsid[] = "@(#)uucplock.c 8.1 (Berkeley) 6/6/93";
-#endif /* not lint */
-
-#include <sys/types.h>
-#include <sys/file.h>
-#include <sys/dir.h>
-#include <errno.h>
-#include <unistd.h>
-#include <stdio.h>
-#include "pathnames.h"
-
-/*
- * uucp style locking routines
- * return: 0 - success
- * -1 - failure
- */
-
-uu_lock(ttyname)
- char *ttyname;
-{
- int fd, pid;
- char tbuf[sizeof(_PATH_LOCKDIRNAME) + MAXNAMLEN];
- FILE *ff;
-
- (void)sprintf(tbuf, _PATH_LOCKDIRNAME, ttyname);
- fd = open(tbuf, O_WRONLY|O_CREAT|O_EXCL, 0644);
- if (fd >= 0)
- ff = fdopen(fd, "w");
- if (fd < 0 || ff == NULL) {
- /*
- * file is already locked
- * check to see if the process holding the lock still exists
- */
- ff = fopen(tbuf, "r+");
- if (ff == NULL) {
- perror("lock open");
- return(-1);
- }
- if (fscanf(ff, "%10d\n", &pid) != 1) {
- perror("lock read");
- (void)fclose(ff);
- return(-1);
- }
-
- if (kill(pid, 0) == 0 || errno != ESRCH) {
- (void)fclose(ff); /* process is still running */
- return(-1);
- }
- /*
- * The process that locked the file isn't running, so
- * we'll lock it ourselves
- */
- rewind(ff);
- /* fall out and finish the locking process */
- }
- (void)fprintf(ff, "%10d\n", getpid());
- (void)fclose(ff);
- return(0);
-}
-
-uu_unlock(ttyname)
- char *ttyname;
-{
- char tbuf[sizeof(_PATH_LOCKDIRNAME) + MAXNAMLEN];
-
- (void)sprintf(tbuf, _PATH_LOCKDIRNAME, ttyname);
- return(unlink(tbuf));
-}
diff --git a/usr.bin/uucp/acucntrl/Makefile b/usr.bin/uucp/acucntrl/Makefile
deleted file mode 100644
index 8a2b44f83a16..000000000000
--- a/usr.bin/uucp/acucntrl/Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-# @(#)Makefile 8.1 (Berkeley) 6/6/93
-
-PROG= acucntrl
-CFLAGS+=-I${.CURDIR}/../includes
-BINDIR= ${LIBDIR}
-BINOWN= root
-BINMODE=6550
-MAN8= acucntrl.8
-
-.include <bsd.prog.mk>
diff --git a/usr.bin/uucp/acucntrl/acucntrl.8 b/usr.bin/uucp/acucntrl/acucntrl.8
deleted file mode 100644
index b2b7f0e31876..000000000000
--- a/usr.bin/uucp/acucntrl/acucntrl.8
+++ /dev/null
@@ -1,164 +0,0 @@
-.\" Copyright (c) 1985, 1993
-.\" The Regents of the University of California. All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgement:
-.\" This product includes software developed by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" @(#)acucntrl.8 8.2 (Berkeley) 12/11/93
-.\"
-.TH ACUCNTRL 8 "December 11, 1993"
-.UC 6
-.SH NAME
-acucntrl \- turn around tty line between dialin and dialout
-.SH SYNOPSIS
-.B /usr/lib/uucp/acucntrl
-keyword ttyline
-.SH DESCRIPTION
-.PP
-.I Acucntrl
-turns around the terminal line,
-enabling it to be used for both dialin and dialout.
-On dialin a terminal line is assumed to have modem control enabled and a getty
-process in existence waiting for logins. On dialout modem control is disabled
-and there is no getty process.
-.PP
-This program must be run setuid to root.
-.PP
-.I keyword
-is chosen from the list:
-.I disable
-or
-.IR dialout ,
-to condition a line for dialout;
-and
-.I enable
-or
-.IR dialin ,
-to condition a line for dialin.
-.PP
-When the line is conditioned for dialing out, the login name of the real uid
-of the process is placed in /etc/utmp in capitals.
-This declares that the line is in use and acts as an additional locking
-mechanism.
-.I Acucntrl
-will refuse to act if the /etc/utmp entry for the line is not null,
-is not the the user's login name (capitalized or not),
-and if the process is not running as the superuser.
-The last condition is to allow the superuser to clear the state of the line.
-.PP
-Turning modem control on or off is handled by poking into /dev/kmem.
-It is currently implemented for dz, dh, and dmf lines.
-.PP
-Under 4.2 BSD the program will also refuse to disable a line if carrier is
-sensed on it. This is to avoid the dead period where someone has just dialed
-in and made the connection but has not yet logged in.
-.PP
-.I Ttyline
-can be either of the form tty* or /dev/tty*.
-Enabling/disabling a line whose name does not begin with ttyd? is prohibited
-unless the real uid of the process is 0 or if the login name corresponding to
-the real uid is uucp. This is a security precaution.
-.PP
-Steps taken when disabling
-.RI ( i . e .
-setup for dialing out)
-.IP 1)
-check input arguments
-.IP 2)
-look in /etc/utmp to check that the line is not in use by another user
-.IP 3)
-disable modem control on line
-.IP 4)
-check for carrier on device
-.IP 5)
-change owner of device to real uid
-.IP 6)
-edit /etc/ttys, changing the first character of the appropriate line to 0
-.IP 7)
-send a hangup to process 1 to poke init to disable getty
-.IP 8)
-post uid name in capitals in /etc/utmp to let world know device has been grabbed
-.IP 9)
-make sure that DTR is on
-.PP
-Steps taken when enabling
-.RI ( i . e .
-setup for dialing in)
-.IP 1)
-check input arguments
-.IP 2)
-look in /etc/utmp to check that the line is not in use by another user
-.IP 3)
-make sure modem control on line is disabled
-.IP 4)
-turn off DTR to make sure line is hung up
-.IP 5)
-condition line: clear exclusive use and set hangup on close modes
-.IP 6)
-turn on modem control
-.IP 7)
-edit /etc/ttys, changing the first character of the appropriate line to 1
-.IP 8)
-send a hangup to process 1 to poke init to enable getty
-.IP 9)
-clear uid name for /etc/utmp
-.SH HISTORY
-.PP
-First written by Allan Wilkes (fisher!allan)
-.PP
-Modified June 8,1983 by W.Sebok (astrovax!wls) to poke the kernel rather
-than use a kernel hack to turn on/off modem control, using a subroutine
-stolen from a program written by Tsutomu Shimomura {astrovax,escher}!tsutomu
-.PP
-Worked over many times by W.Sebok
-.RI ( i . e .
-hacked to death)
-.SH FILES
-/dev/kmem, /kernel, /etc/ttys, /etc/utmp, /dev/tty*
-.SH BUGS
-.PP
-Sensing carrier requires the 4.2 BSD TIOCMGET ioctl call. Unfortunately this
-ioctl is not implemented in the vanilla 4.2 BSD dh driver even though the
-dz and dmf drivers use an emulation of the DH11's modem control bits. This
-has been fixed here.
-.PP
-Some time (currently 2 seconds) is required between disabling modem control
-and opening the device. This is probably because of a race with getty whose
-open is finally being allowed to complete. This time interval may not be
-enough on a loaded system. Because of this problem and the above problem with
-the dh driver there is deliberately no error message given when the TIOCMGET
-ioctl fails.
-.PP
-Previously there were similar synchronization problems with the init process.
-When dialins are disabled the capitalized name of the process cannot be posted
-into /etc/utmp until init has finished clearing /etc/utmp. However one does
-not know how long that will take, and, on a loaded system, it can take quite
-a while. This was solved by the strategy of 1) posting the name, 2) poking
-init, 3) going into a loop where the process repeatedly waits a second and
-checks whether the entry has been cleared from /etc/utmp, and 4) posting the
-name again.
diff --git a/usr.bin/uucp/uupoll/Makefile b/usr.bin/uucp/uupoll/Makefile
deleted file mode 100644
index 97794d5d50de..000000000000
--- a/usr.bin/uucp/uupoll/Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-# @(#)Makefile 8.1 (Berkeley) 6/6/93
-
-PROG= uupoll
-CFLAGS+=-I${.CURDIR}/../includes
-BINMODE=6555
-DPADD= ${LIBCOMPAT}
-LDADD= ${LIBUU} -lcompat
-MAN8= uupoll.8
-
-.include <bsd.prog.mk>
diff --git a/usr.bin/uucp/uusnap/Makefile b/usr.bin/uucp/uusnap/Makefile
deleted file mode 100644
index d23ab2a3ac8b..000000000000
--- a/usr.bin/uucp/uusnap/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-# @(#)Makefile 8.1 (Berkeley) 6/6/93
-
-PROG= uusnap
-CFLAGS+=-I${.CURDIR}/../includes
-BINMODE=6555
-MAN8= uusnap.8
-
-.include <bsd.prog.mk>
diff --git a/usr.bin/vi/USD.doc/vi.ref/paper.ps b/usr.bin/vi/USD.doc/vi.ref/paper.ps
deleted file mode 100644
index e429d56ba11f..000000000000
--- a/usr.bin/vi/USD.doc/vi.ref/paper.ps
+++ /dev/null
@@ -1,30924 +0,0 @@
-%!PS-Adobe-1.0
-%%Creator: python.bostic.com:root (Charlie,458E,7750)
-%%Title: stdin (ditroff)
-%%CreationDate: Mon Aug 15 14:24:12 1994
-%%EndComments
-% @(#)psdit.pro 1.6 11/6/90
-% lib/psdit.pro -- prolog for psdit (ditroff) files
-% Copyright (c) 1984, 1985 Adobe Systems Incorporated. All Rights Reserved.
-% last edit: shore Sat Nov 23 20:28:03 1985
-% RCSID: $Header: psdit.pro,v 2.1 85/11/24 12:19:43 shore Rel $
-
-% Changed by Edward Wang (edward@ucbarpa.berkeley.edu) to handle graphics,
-% 17 Feb, 87.
-
-/$DITroff 140 dict def $DITroff begin
-/fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def
-/xi{0 72 11 mul translate 72 resolution div dup neg scale 0 0 moveto
- /fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def F}def
-/PB{save /psv exch def currentpoint translate
- resolution 72 div dup neg scale 0 0 moveto}def
-/PE{psv restore}def
-/arctoobig 90 def /arctoosmall .05 def
-/m1 matrix def /m2 matrix def /m3 matrix def /oldmat matrix def
-/tan{dup sin exch cos div}def
-/point{resolution 72 div mul}def
-/dround {transform round exch round exch itransform}def
-/xT{/devname exch def}def
-/xr{/mh exch def /my exch def /resolution exch def}def
-/xp{}def
-/xs{docsave restore end}def
-/xt{}def
-/xf{/fontname exch def /slotno exch def fontnames slotno get fontname eq not
- {fonts slotno fontname findfont put fontnames slotno fontname put}if}def
-/xH{/fontheight exch def F}def
-/xS{/fontslant exch def F}def
-/s{/fontsize exch def /fontheight fontsize def F}def
-/f{/fontnum exch def F}def
-/F{fontheight 0 le{/fontheight fontsize def}if
- fonts fontnum get fontsize point 0 0 fontheight point neg 0 0 m1 astore
- fontslant 0 ne{1 0 fontslant tan 1 0 0 m2 astore m3 concatmatrix}if
- makefont setfont .04 fontsize point mul 0 dround pop setlinewidth}def
-/X{exch currentpoint exch pop moveto show}def
-/N{3 1 roll moveto show}def
-/Y{exch currentpoint pop exch moveto show}def
-/S{show}def
-/ditpush{}def/ditpop{}def
-/AX{3 -1 roll currentpoint exch pop moveto 0 exch ashow}def
-/AN{4 2 roll moveto 0 exch ashow}def
-/AY{3 -1 roll currentpoint pop exch moveto 0 exch ashow}def
-/AS{0 exch ashow}def
-/MX{currentpoint exch pop moveto}def
-/MY{currentpoint pop exch moveto}def
-/MXY{moveto}def
-/cb{pop}def % action on unknown char -- nothing for now
-/n{}def/w{}def
-/p{pop showpage xi}def
-/Dt{/Dlinewidth exch def}def 1 Dt
-/Ds{/Ddash exch def}def -1 Ds
-/i{/Dstipple exch def}def 1 i
-/Dsetlinewidth{2 Dlinewidth mul setlinewidth}def
-/Dsetdash{Ddash 4 eq{[8 12]}{Ddash 16 eq{[32 36]}
- {Ddash 20 eq{[32 12 8 12]}{[]}ifelse}ifelse}ifelse 0 setdash}def
-/Dstroke{gsave Dsetlinewidth Dsetdash 1 setlinecap stroke grestore
- currentpoint newpath moveto}def
-/Dl{rlineto Dstroke}def
-/arcellipse{/diamv exch def /diamh exch def oldmat currentmatrix pop
- currentpoint translate 1 diamv diamh div scale /rad diamh 2 div def
- currentpoint exch rad add exch rad -180 180 arc oldmat setmatrix}def
-/Dc{dup arcellipse Dstroke}def
-/De{arcellipse Dstroke}def
-/Da{/endv exch def /endh exch def /centerv exch def /centerh exch def
- /cradius centerv centerv mul centerh centerh mul add sqrt def
- /eradius endv endv mul endh endh mul add sqrt def
- /endang endv endh atan def
- /startang centerv neg centerh neg atan def
- /sweep startang endang sub dup 0 lt{360 add}if def
- sweep arctoobig gt
- {/midang startang sweep 2 div sub def /midrad cradius eradius add 2 div def
- /midh midang cos midrad mul def /midv midang sin midrad mul def
- midh neg midv neg endh endv centerh centerv midh midv Da
- Da}
- {sweep arctoosmall ge
- {/controldelt 1 sweep 2 div cos sub 3 sweep 2 div sin mul div 4 mul def
- centerv neg controldelt mul centerh controldelt mul
- endv neg controldelt mul centerh add endh add
- endh controldelt mul centerv add endv add
- centerh endh add centerv endv add rcurveto Dstroke}
- {centerh endh add centerv endv add rlineto Dstroke}
- ifelse}
- ifelse}def
-/Dpatterns[
-[%cf[widthbits]
-[8<0000000000000010>]
-[8<0411040040114000>]
-[8<0204081020408001>]
-[8<0000103810000000>]
-[8<6699996666999966>]
-[8<0000800100001008>]
-[8<81c36666c3810000>]
-[8<0f0e0c0800000000>]
-[8<0000000000000010>]
-[8<0411040040114000>]
-[8<0204081020408001>]
-[8<0000001038100000>]
-[8<6699996666999966>]
-[8<0000800100001008>]
-[8<81c36666c3810000>]
-[8<0f0e0c0800000000>]
-[8<0042660000246600>]
-[8<0000990000990000>]
-[8<0804020180402010>]
-[8<2418814242811824>]
-[8<6699996666999966>]
-[8<8000000008000000>]
-[8<00001c3e363e1c00>]
-[8<0000000000000000>]
-[32<00000040000000c00000004000000040000000e0000000000000000000000000>]
-[32<00000000000060000000900000002000000040000000f0000000000000000000>]
-[32<000000000000000000e0000000100000006000000010000000e0000000000000>]
-[32<00000000000000002000000060000000a0000000f00000002000000000000000>]
-[32<0000000e0000000000000000000000000000000f000000080000000e00000001>]
-[32<0000090000000600000000000000000000000000000007000000080000000e00>]
-[32<00010000000200000004000000040000000000000000000000000000000f0000>]
-[32<0900000006000000090000000600000000000000000000000000000006000000>]]
-[%ug
-[8<0000020000000000>]
-[8<0000020000002000>]
-[8<0004020000002000>]
-[8<0004020000402000>]
-[8<0004060000402000>]
-[8<0004060000406000>]
-[8<0006060000406000>]
-[8<0006060000606000>]
-[8<00060e0000606000>]
-[8<00060e000060e000>]
-[8<00070e000060e000>]
-[8<00070e000070e000>]
-[8<00070e020070e000>]
-[8<00070e020070e020>]
-[8<04070e020070e020>]
-[8<04070e024070e020>]
-[8<04070e064070e020>]
-[8<04070e064070e060>]
-[8<06070e064070e060>]
-[8<06070e066070e060>]
-[8<06070f066070e060>]
-[8<06070f066070f060>]
-[8<060f0f066070f060>]
-[8<060f0f0660f0f060>]
-[8<060f0f0760f0f060>]
-[8<060f0f0760f0f070>]
-[8<0e0f0f0760f0f070>]
-[8<0e0f0f07e0f0f070>]
-[8<0e0f0f0fe0f0f070>]
-[8<0e0f0f0fe0f0f0f0>]
-[8<0f0f0f0fe0f0f0f0>]
-[8<0f0f0f0ff0f0f0f0>]
-[8<1f0f0f0ff0f0f0f0>]
-[8<1f0f0f0ff1f0f0f0>]
-[8<1f0f0f8ff1f0f0f0>]
-[8<1f0f0f8ff1f0f0f8>]
-[8<9f0f0f8ff1f0f0f8>]
-[8<9f0f0f8ff9f0f0f8>]
-[8<9f0f0f9ff9f0f0f8>]
-[8<9f0f0f9ff9f0f0f9>]
-[8<9f8f0f9ff9f0f0f9>]
-[8<9f8f0f9ff9f8f0f9>]
-[8<9f8f1f9ff9f8f0f9>]
-[8<9f8f1f9ff9f8f1f9>]
-[8<bf8f1f9ff9f8f1f9>]
-[8<bf8f1f9ffbf8f1f9>]
-[8<bf8f1fdffbf8f1f9>]
-[8<bf8f1fdffbf8f1fd>]
-[8<ff8f1fdffbf8f1fd>]
-[8<ff8f1fdffff8f1fd>]
-[8<ff8f1ffffff8f1fd>]
-[8<ff8f1ffffff8f1ff>]
-[8<ff9f1ffffff8f1ff>]
-[8<ff9f1ffffff9f1ff>]
-[8<ff9f9ffffff9f1ff>]
-[8<ff9f9ffffff9f9ff>]
-[8<ffbf9ffffff9f9ff>]
-[8<ffbf9ffffffbf9ff>]
-[8<ffbfdffffffbf9ff>]
-[8<ffbfdffffffbfdff>]
-[8<ffffdffffffbfdff>]
-[8<ffffdffffffffdff>]
-[8<fffffffffffffdff>]
-[8<ffffffffffffffff>]]
-[%mg
-[8<8000000000000000>]
-[8<0822080080228000>]
-[8<0204081020408001>]
-[8<40e0400000000000>]
-[8<66999966>]
-[8<8001000010080000>]
-[8<81c36666c3810000>]
-[8<f0e0c08000000000>]
-[16<07c00f801f003e007c00f800f001e003c007800f001f003e007c00f801f003e0>]
-[16<1f000f8007c003e001f000f8007c003e001f800fc007e003f001f8007c003e00>]
-[8<c3c300000000c3c3>]
-[16<0040008001000200040008001000200040008000000100020004000800100020>]
-[16<0040002000100008000400020001800040002000100008000400020001000080>]
-[16<1fc03fe07df0f8f8f07de03fc01f800fc01fe03ff07df8f87df03fe01fc00f80>]
-[8<80>]
-[8<8040201000000000>]
-[8<84cc000048cc0000>]
-[8<9900009900000000>]
-[8<08040201804020100800020180002010>]
-[8<2418814242811824>]
-[8<66999966>]
-[8<8000000008000000>]
-[8<70f8d8f870000000>]
-[8<0814224180402010>]
-[8<aa00440a11a04400>]
-[8<018245aa45820100>]
-[8<221c224180808041>]
-[8<88000000>]
-[8<0855800080550800>]
-[8<2844004482440044>]
-[8<0810204080412214>]
-[8<00>]]]def
-/Dfill{
- save 6 1 roll
- transform /maxy exch def /maxx exch def
- transform /miny exch def /minx exch def
- minx maxx gt{/minx maxx /maxx minx def def}if
- miny maxy gt{/miny maxy /maxy miny def def}if
- Dpatterns Dstipple 1 sub get exch 1 sub get
- aload pop /stip exch def /stipw exch def /stiph 128 def
- /imatrix[stipw 0 0 stiph 0 0]def
- /tmatrix[stipw 0 0 stiph 0 0]def
- /minx minx cvi stiph idiv stiph mul def
- /miny miny cvi stipw idiv stipw mul def
- eoclip 0 setgray
- miny stiph maxy{
- tmatrix exch 5 exch put
- minx stipw maxx{
- tmatrix exch 4 exch put tmatrix setmatrix
- stipw stiph true imatrix {stip} imagemask
- }for
- }for
- restore
-}def
-/Dp{Dfill Dstroke}def
-/DP{Dfill currentpoint newpath moveto}def
-end
-
-/ditstart{$DITroff begin
- /nfonts 60 def % NFONTS makedev/ditroff dependent!
- /fonts[nfonts{0}repeat]def
- /fontnames[nfonts{()}repeat]def
-/docsave save def
-}def
-
-% character outcalls
-/oc{
- /pswid exch def /cc exch def /name exch def
- /ditwid pswid fontsize mul resolution mul 72000 div def
- /ditsiz fontsize resolution mul 72 div def
- ocprocs name known{ocprocs name get exec}{name cb}ifelse
-}def
-/fractm [.65 0 0 .6 0 0] def
-/fraction{
- /fden exch def /fnum exch def gsave /cf currentfont def
- cf fractm makefont setfont 0 .3 dm 2 copy neg rmoveto
- fnum show rmoveto currentfont cf setfont(\244)show setfont fden show
- grestore ditwid 0 rmoveto
-}def
-/oce{grestore ditwid 0 rmoveto}def
-/dm{ditsiz mul}def
-/ocprocs 50 dict def ocprocs begin
-(14){(1)(4)fraction}def
-(12){(1)(2)fraction}def
-(34){(3)(4)fraction}def
-(13){(1)(3)fraction}def
-(23){(2)(3)fraction}def
-(18){(1)(8)fraction}def
-(38){(3)(8)fraction}def
-(58){(5)(8)fraction}def
-(78){(7)(8)fraction}def
-(sr){gsave 0 .06 dm rmoveto(\326)show oce}def
-(is){gsave 0 .15 dm rmoveto(\362)show oce}def
-(->){gsave 0 .02 dm rmoveto(\256)show oce}def
-(<-){gsave 0 .02 dm rmoveto(\254)show oce}def
-(==){gsave 0 .05 dm rmoveto(\272)show oce}def
-(uc){gsave currentpoint 400 .009 dm mul add translate
- 8 -8 scale ucseal oce}def
-end
-
-% an attempt at a PostScript FONT to implement ditroff special chars
-% this will enable us to
-% cache the little buggers
-% generate faster, more compact PS out of psdit
-% confuse everyone (including myself)!
-50 dict dup begin
-/FontType 3 def
-/FontName /DIThacks def
-/FontMatrix [.001 0 0 .001 0 0] def
-/FontBBox [-260 -260 900 900] def% a lie but ...
-/Encoding 256 array def
-0 1 255{Encoding exch /.notdef put}for
-Encoding
- dup 8#040/space put %space
- dup 8#110/rc put %right ceil
- dup 8#111/lt put %left top curl
- dup 8#112/bv put %bold vert
- dup 8#113/lk put %left mid curl
- dup 8#114/lb put %left bot curl
- dup 8#115/rt put %right top curl
- dup 8#116/rk put %right mid curl
- dup 8#117/rb put %right bot curl
- dup 8#120/rf put %right floor
- dup 8#121/lf put %left floor
- dup 8#122/lc put %left ceil
- dup 8#140/sq put %square
- dup 8#141/bx put %box
- dup 8#142/ci put %circle
- dup 8#143/br put %box rule
- dup 8#144/rn put %root extender
- dup 8#145/vr put %vertical rule
- dup 8#146/ob put %outline bullet
- dup 8#147/bu put %bullet
- dup 8#150/ru put %rule
- dup 8#151/ul put %underline
- pop
-/DITfd 100 dict def
-/BuildChar{0 begin
- /cc exch def /fd exch def
- /charname fd /Encoding get cc get def
- /charwid fd /Metrics get charname get def
- /charproc fd /CharProcs get charname get def
- charwid 0 fd /FontBBox get aload pop setcachedevice
- 2 setlinejoin 40 setlinewidth
- newpath 0 0 moveto gsave charproc grestore
- end}def
-/BuildChar load 0 DITfd put
-/CharProcs 50 dict def
-CharProcs begin
-/space{}def
-/.notdef{}def
-/ru{500 0 rls}def
-/rn{0 840 moveto 500 0 rls}def
-/vr{0 800 moveto 0 -770 rls}def
-/bv{0 800 moveto 0 -1000 rls}def
-/br{0 840 moveto 0 -1000 rls}def
-/ul{0 -140 moveto 500 0 rls}def
-/ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def
-/bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def
-/sq{80 0 rmoveto currentpoint dround newpath moveto
- 640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def
-/bx{80 0 rmoveto currentpoint dround newpath moveto
- 640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def
-/ci{500 360 rmoveto currentpoint newpath 333 0 360 arc
- 50 setlinewidth stroke}def
-
-/lt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def
-/lb{0 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def
-/rt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def
-/rb{0 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def
-/lk{0 800 moveto 0 300 -300 300 s4 arcto pop pop 1000 sub
- 0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def
-/rk{0 800 moveto 0 300 s2 300 s4 arcto pop pop 1000 sub
- 0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def
-/lf{0 800 moveto 0 -1000 rlineto s4 0 rls}def
-/rf{0 800 moveto 0 -1000 rlineto s4 neg 0 rls}def
-/lc{0 -200 moveto 0 1000 rlineto s4 0 rls}def
-/rc{0 -200 moveto 0 1000 rlineto s4 neg 0 rls}def
-end
-
-/Metrics 50 dict def Metrics begin
-/.notdef 0 def
-/space 500 def
-/ru 500 def
-/br 0 def
-/lt 416 def
-/lb 416 def
-/rt 416 def
-/rb 416 def
-/lk 416 def
-/rk 416 def
-/rc 416 def
-/lc 416 def
-/rf 416 def
-/lf 416 def
-/bv 416 def
-/ob 350 def
-/bu 350 def
-/ci 750 def
-/bx 750 def
-/sq 750 def
-/rn 500 def
-/ul 500 def
-/vr 0 def
-end
-
-DITfd begin
-/s2 500 def /s4 250 def /s3 333 def
-/a4p{arcto pop pop pop pop}def
-/2cx{2 copy exch}def
-/rls{rlineto stroke}def
-/currx{currentpoint pop}def
-/dround{transform round exch round exch itransform} def
-end
-end
-/DIThacks exch definefont pop
-ditstart
-(psc)xT
-576 1 1 xr
-1(Times-Roman)xf 1 f
-2(Times-Italic)xf 2 f
-3(Times-Bold)xf 3 f
-4(Times-BoldItalic)xf 4 f
-5(Helvetica)xf 5 f
-6(Helvetica-Bold)xf 6 f
-7(Courier)xf 7 f
-8(Courier-Bold)xf 8 f
-9(Symbol)xf 9 f
-10(DIThacks)xf 10 f
-10 s
-1 f
-xi
-%%EndProlog
-
-%%Page: 1 1
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-12 s
-1796 795(Ex/Vi)N
-2055(Reference)X
-2491(Manual)X
-2 f
-10 s
-2107 975(Keith)N
-2300(Bostic)X
-1 f
-1861 1155(Computer)N
-2201(Science)X
-2471(Division)X
-1328 1245(Department)N
-1727(of)X
-1814(Electrical)X
-2142(Engineering)X
-2554(and)X
-2690(Computer)X
-3030(Science)X
-1754 1335(University)N
-2112(of)X
-2199(California,)X
-2564(Berkeley)X
-1856 1425(Berkeley,)N
-2186(California)X
-2551(94720)X
-2038 1605(August)N
-2289(15,)X
-2409(1994)X
-2 f
-2168 1965(Abstract)N
-1 f
-776 2244(This)N
-948(document)X
-1294(is)X
-1377(the)X
-1505 0.4531(reference)AX
-1836(guide)X
-2045(for)X
-2170(the)X
-2299(4.4BSD)X
-2585(implementations)X
-3149(of)X
-3 f
-3247(nex)X
-1 f
-(/)S
-3 f
-3389(nvi)X
-1 f
-3495(,)X
-3546(which)X
-3773(are)X
-576 2334(reimplementations)N
-1192(of)X
-1279(the)X
-1397(historic)X
-1657(Berkeley)X
-3 f
-1967(ex)X
-1 f
-2043(/)X
-3 f
-2065(vi)X
-1 f
-2147(editors.)X
-2 f
-1996 2778(Acknowledgements)N
-1 f
-776 3063(Bruce)N
-1005(Englar)X
-1256(encouraged)X
-1664(the)X
-1799(early)X
-1997(development)X
-2448(of)X
-2552(the)X
-2687(historic)X
-3 f
-2965(ex)X
-1 f
-3041(/)X
-3 f
-3063(vi)X
-1 f
-3163(editor.)X
-3428(Peter)X
-3631(Kessler)X
-576 3153(helped)N
-811(bring)X
-1001(sanity)X
-1213(to)X
-1296(version)X
-1553(2's)X
-1672(command)X
-2009(layout.)X
-2270(Bill)X
-2410(Joy)X
-2541(wrote)X
-2744(versions)X
-3031(1)X
-3091(and)X
-3227(2.0)X
-3347(through)X
-3616(2.7,)X
-3756(and)X
-576 3243(created)N
-842(the)X
-973(framework)X
-1359(that)X
-1512(users)X
-1710(see)X
-1846(in)X
-1941(the)X
-2072(present)X
-2337(editor.)X
-2597(Mark)X
-2804(Horton)X
-3065(added)X
-3291(macros)X
-3557(and)X
-3707(other)X
-576 3333(features)N
-851(and)X
-987(made)X
-3 f
-1181(ex)X
-1 f
-1257(/)X
-3 f
-1279(vi)X
-1 f
-1361(work)X
-1546(on)X
-1646(a)X
-1702(large)X
-1883(number)X
-2148(of)X
-2235(terminals)X
-2553(and)X
-2689(Unix)X
-2869(systems.)X
-3 f
-776 3456(Nvi)N
-1 f
-918(is)X
-993(originally)X
-1326(derived)X
-1589(from)X
-1767(software)X
-2066(contributed)X
-2454(to)X
-2539(the)X
-2660(University)X
-3021(of)X
-3111(California,)X
-3479(Berkeley)X
-3792(by)X
-576 3546(Steve)N
-774(Kirkendall,)X
-1157(the)X
-1275(author)X
-1500(of)X
-1587(the)X
-3 f
-1705(vi)X
-1 f
-1787(clone)X
-3 f
-1981(elvis)X
-1 f
-2132(.)X
-776 3669(IEEE)N
-992(Standard)X
-1319(Portable)X
-1628(Operating)X
-1991(System)X
-2268(Interface)X
-2597(for)X
-2733(Computer)X
-3095(Environments)X
-3587(\(POSIX\))X
-576 3759(1003.2)N
-816(style)X
-987(Regular)X
-1261(Expression)X
-1637(support)X
-1897(was)X
-2042(done)X
-2218(by)X
-2318(Henry)X
-2539(Spencer.)X
-776 3882(The)N
-930(curses)X
-1161(library)X
-1405(was)X
-1560(originally)X
-1901(done)X
-2087(by)X
-2197(Ken)X
-2361(Arnold.)X
-2658(Scrolling)X
-2981(and)X
-3127(reworking)X
-3487(for)X
-3 f
-3611(nvi)X
-1 f
-3747(was)X
-576 3972(done)N
-752(by)X
-852(Elan)X
-1019(Amir.)X
-776 4095(The)N
-923(Institute)X
-1207(of)X
-1296(Electrical)X
-1626(and)X
-1764(Electronics)X
-2147(Engineers)X
-2490(has)X
-2619(given)X
-2820(us)X
-2914(permission)X
-3288(to)X
-3373(reprint)X
-3610(portions)X
-576 4185(of)N
-682(their)X
-868(documentation.)X
-1423(Portions)X
-1728(of)X
-1834(this)X
-1987(document)X
-2341(are)X
-2478(reprinted)X
-2806(and)X
-2960(reproduced)X
-3360(from)X
-3554(IEEE)X
-3766(Std)X
-576 4275(1003.2-1992,)N
-1031(IEEE)X
-1233(Standard)X
-1546(Portable)X
-1841(Operating)X
-2190(System)X
-2453(Interface)X
-2768(for)X
-2890(Computer)X
-3238(Environments)X
-3716(\(PO-)X
-576 4365(SIX\),)N
-772(copyright)X
-1099(1992)X
-1279(by)X
-1379(the)X
-1497(Institute)X
-1779(of)X
-1866(Electrical)X
-2194(and)X
-2330(Electronics)X
-2711(Engineers,)X
-3072(Inc.)X
-776 4488(The)N
-921(\256nancial)X
-1217(support)X
-1477(of)X
-1564(UUNET)X
-1856(Communications)X
-2422(Services)X
-2714(is)X
-2787(gratefully)X
-3119(acknowledged.)X
-
-3 p
-%%Page: 3 2
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3698(USD:13-3)X
-576 762(1.)N
-676(Description)X
-1 f
-3 f
-776 885(Vi)N
-1 f
-876(is)X
-949(a)X
-1005(screen)X
-1231(oriented)X
-1514(text)X
-1654(editor.)X
-3 f
-1902(Ex)X
-1 f
-2016(is)X
-2090(a)X
-2147(line-oriented)X
-2578(text)X
-2719(editor.)X
-3 f
-2967(Ex)X
-1 f
-3081(and)X
-3 f
-3218(vi)X
-1 f
-3301(are)X
-3421(different)X
-3719(interfaces)X
-576 975(to)N
-674(the)X
-808(same)X
-1009(program,)X
-1336(and)X
-1487(it)X
-1566(is)X
-1654(possible)X
-1951(to)X
-2048(switch)X
-2292(back)X
-2479(and)X
-2630(forth)X
-2821(during)X
-3065(an)X
-3176(edit)X
-3331(session.)X
-3 f
-3637(View)X
-1 f
-3846(is)X
-3934(the)X
-576 1065(equivalent)N
-930(of)X
-1017(using)X
-1210(the)X
-3 f
-9 f
-1328(-)X
-1330(-)X
-3 f
-1374(R)X
-1 f
-1452(\(read-only\))X
-1834(option)X
-2058(of)X
-3 f
-2145(vi)X
-1 f
-2207(.)X
-776 1188(This)N
-957 0.4531(reference)AX
-1297(manual)X
-1572(is)X
-1664(the)X
-1801(one)X
-1956(provided)X
-2280(with)X
-2461(the)X
-3 f
-2598(nex)X
-1 f
-(/)S
-3 f
-2740(nvi)X
-1 f
-2885(versions)X
-3191(of)X
-3297(the)X
-3 f
-3434(ex)X
-1 f
-3510(/)X
-3 f
-3532(vi)X
-1 f
-3634(text)X
-3794(editors.)X
-3 f
-576 1278(Nex)N
-1 f
-710(/)X
-3 f
-732(nvi)X
-1 f
-868(are)X
-997(intended)X
-1302(as)X
-1398(bug-for-bug)X
-1815(compatible)X
-2200(replacements)X
-2653(for)X
-2776(the)X
-2903(original)X
-3181(Fourth)X
-3423(Berkeley)X
-3742(Software)X
-576 1368(Distribution)N
-987(\(4BSD\))X
-3 f
-1261(ex)X
-1 f
-1337(/)X
-3 f
-1359(vi)X
-1 f
-1446(programs.)X
-1814(This)X
-1981 0.4531(reference)AX
-2307(manual)X
-2568(is)X
-2646(accompanied)X
-3095(by)X
-3201(a)X
-3263(traditional-style)X
-3796(manual)X
-576 1458(page.)N
-798(That)X
-975(manual)X
-1241(page)X
-1423(describes)X
-1752(the)X
-1880(functionality)X
-2319(found)X
-2536(in)X
-3 f
-2627(ex)X
-1 f
-2703(/)X
-3 f
-2725(vi)X
-1 f
-2816(in)X
-2907(far)X
-3026(less)X
-3175(detail)X
-3382(than)X
-3549(the)X
-3676(description)X
-576 1548(here.)N
-781(In)X
-874(addition,)X
-1182(it)X
-1252(describes)X
-1578(the)X
-1703(system)X
-1952(interface)X
-2261(to)X
-3 f
-2350(ex)X
-1 f
-2426(/)X
-3 f
-2448(vi)X
-1 f
-2510(,)X
-2557(e.g.)X
-2700(command)X
-3043(line)X
-3190(options,)X
-3472(session)X
-3730(recovery,)X
-576 1638(signals,)N
-838(environmental)X
-1321(variables,)X
-1651(and)X
-1787(similar)X
-2029(things.)X
-776 1761(This)N
-939 0.4531(reference)AX
-1261(is)X
-1336(intended)X
-1634(for)X
-1750(users)X
-1937(already)X
-2196(familiar)X
-2472(with)X
-3 f
-2636(ex)X
-1 f
-2712(/)X
-3 f
-2734(vi)X
-1 f
-2796(.)X
-2858(Anyone)X
-3134(else)X
-3281(should)X
-3516(almost)X
-3751(certainly)X
-576 1851(read)N
-737(a)X
-795(good)X
-977(tutorial)X
-1230(on)X
-1332(the)X
-1452(editor)X
-1661(\256rst.)X
-1847(If)X
-1923(you)X
-2065(are)X
-2186(in)X
-2270(an)X
-2368(unfamiliar)X
-2723(environment,)X
-3169(and)X
-3306(you)X
-3447(absolutely)X
-3797(have)X
-3970(to)X
-576 1941(get)N
-702(work)X
-895(done)X
-1079(immediately,)X
-1527(see)X
-1658(the)X
-1784(section)X
-2039(entitled)X
-2308(``)X
-3 f
-2362(Fast)X
-2538(Startup)X
-1 f
-2800('')X
-2883(in)X
-2974(the)X
-3101(manual)X
-3366(page.)X
-3587(It)X
-3665(is)X
-3747(probably)X
-576 2031(enough)N
-832(to)X
-914(get)X
-1032(you)X
-1172(started.)X
-776 2154(There)N
-984(are)X
-1103(a)X
-1159(few)X
-1300(features)X
-1575(in)X
-3 f
-1657(nex)X
-1 f
-(/)S
-3 f
-1799(nvi)X
-1 f
-1925(that)X
-2065(are)X
-2185(not)X
-2308(found)X
-2516(in)X
-2599(historic)X
-2860(versions)X
-3148(of)X
-3 f
-3236(ex)X
-1 f
-3312(/)X
-3 f
-3334(vi)X
-1 f
-3396(.)X
-3457(Some)X
-3660(of)X
-3748(the)X
-3867(more)X
-576 2244(interesting)N
-941(of)X
-1035(those)X
-1231(features)X
-1513(are)X
-1639(brie\257y)X
-1875(described)X
-2210(in)X
-2299(the)X
-2424(section)X
-2678(entitled)X
-2945(``)X
-3 f
-2999(Additional)X
-3389(Features)X
-1 f
-3688('')X
-3769(near)X
-3934(the)X
-576 2334(end)N
-719(of)X
-813(this)X
-955(document.)X
-1338(For)X
-1476(the)X
-1601(rest)X
-1744(of)X
-1838(this)X
-1980(document,)X
-3 f
-2343(nex)X
-1 f
-(/)S
-3 f
-2485(nvi)X
-1 f
-2618(is)X
-2698(used)X
-2872(only)X
-3042(when)X
-3244(it)X
-3316(is)X
-3397(necessary)X
-3738(to)X
-3828(distin-)X
-576 2424(guish)N
-769(it)X
-833(from)X
-1009(the)X
-1127(historic)X
-1387(implementations)X
-1940(of)X
-3 f
-2027(ex)X
-1 f
-2103(/)X
-3 f
-2125(vi)X
-1 f
-2187(.)X
-776 2547(Future)N
-1012(versions)X
-1306(of)X
-1400(this)X
-1542(software)X
-1846(will)X
-1997(be)X
-2100(periodically)X
-2510(made)X
-2712(available)X
-3030(by)X
-3138(anonymous)X
-3535(ftp,)X
-3672(and)X
-3816(can)X
-3956(be)X
-576 2637(retrieved)N
-882(from)X
-7 f
-1058(ftp.cs.berkeley.edu)X
-1 f
-(,)S
-2010(in)X
-2092(the)X
-2210(directory)X
-7 f
-2520(ucb/4bsd)X
-1 f
-(.)S
-3 f
-576 2823(2.)N
-676(Startup)X
-958(Information)X
-1 f
-3 f
-776 2946(Ex)N
-1 f
-869(/)X
-3 f
-891(vi)X
-1 f
-981(interprets)X
-1312(one)X
-1456(of)X
-1551(two)X
-1699(possible)X
-1989(environmental)X
-2480(variables)X
-2798(and)X
-2942(reads)X
-3140(up)X
-3248(to)X
-3338(three)X
-3527(of)X
-3622(\256ve)X
-3770(possible)X
-576 3036(\256les)N
-737(during)X
-974(startup.)X
-1260(The)X
-1413(variables)X
-1731(and)X
-1875(\256les)X
-2036(are)X
-2163(expected)X
-2477(to)X
-2567(contain)X
-3 f
-2831(ex)X
-1 f
-2935(commands,)X
-3330(not)X
-3 f
-3460(vi)X
-1 f
-3550(commands.)X
-3965(In)X
-576 3126(addition,)N
-879(they)X
-1038(are)X
-1158(interpreted)X
-2 f
-1527(before)X
-1 f
-1753(the)X
-1872(\256le)X
-1996(to)X
-2080(be)X
-2178(edited)X
-2396(is)X
-2471(read,)X
-2652(and)X
-2790(therefore)X
-3103(many)X
-3 f
-3303(ex)X
-1 f
-3401(commands)X
-3770(may)X
-3930(not)X
-576 3216(be)N
-683(used.)X
-901(Generally,)X
-1269(any)X
-1416(command)X
-1763(that)X
-1914(requires)X
-2204(output)X
-2439(to)X
-2532(the)X
-2660(screen)X
-2896(or)X
-2993(that)X
-3143(needs)X
-3356(a)X
-3422(\256le)X
-3554(upon)X
-3744(which)X
-3970(to)X
-576 3306(operate,)N
-853(will)X
-997(cause)X
-1196(an)X
-1292(error)X
-1469(if)X
-1538(included)X
-1834(in)X
-1916(a)X
-1972(startup)X
-2210(\256le)X
-2332(or)X
-2419(environmental)X
-2902(variable.)X
-776 3429(Because)N
-1071(the)X
-3 f
-1197(ex)X
-1 f
-1301(command)X
-1645(set)X
-1762(supported)X
-2106(by)X
-3 f
-2214(nex)X
-1 f
-(/)S
-3 f
-2356(nvi)X
-1 f
-2490(is)X
-2571(a)X
-2635(superset)X
-2926(of)X
-3021(the)X
-3147(command)X
-3491(set)X
-3608(supported)X
-3952(by)X
-576 3519(most)N
-753(historical)X
-1073(implementations)X
-1628(of)X
-3 f
-1717(ex)X
-1 f
-1793(,)X
-3 f
-1835(nex)X
-1 f
-(/)S
-3 f
-1977(nvi)X
-1 f
-2105(can)X
-2238(use)X
-2366(the)X
-2485(startup)X
-2724(\256les)X
-2878(created)X
-3132(for)X
-3247(the)X
-3366(historical)X
-3685(implemen-)X
-576 3609(tations,)N
-829(but)X
-951(the)X
-1069(converse)X
-1375(may)X
-1533(not)X
-1655(be)X
-1751(true.)X
-776 3732(If)N
-852(the)X
-3 f
-9 f
-973(-)X
-975(-)X
-3 f
-1019(s)X
-1 f
-1073(\(the)X
-1221(historic)X
-9 f
-1484(-)X
-1 f
-1551(option\))X
-1805(is)X
-1881(speci\256ed,)X
-2209(or)X
-2299(if)X
-2371(standard)X
-2666(input)X
-2853(is)X
-2929(redirected)X
-3274(from)X
-3453(a)X
-3512(\256le,)X
-3657(all)X
-3760(environ-)X
-576 3822(mental)N
-814(variables)X
-1124(and)X
-1260(startup)X
-1498(\256les)X
-1651(are)X
-1770(ignored.)X
-776 3945(Otherwise,)N
-1146(startup)X
-1384(\256les)X
-1537(and)X
-1673(environmental)X
-2156(variables)X
-2466(are)X
-2585(handled)X
-2859(in)X
-2941(the)X
-3059(following)X
-3390(order:)X
-616 4068(\(1\))N
-830(The)X
-975(\256le)X
-7 f
-1097(/etc/vi.exrc)X
-1 f
-1693(is)X
-1766(read,)X
-1945(as)X
-2032(long)X
-2194(as)X
-2281(it)X
-2345(is)X
-2418(owned)X
-2652(by)X
-2752(root)X
-2901(or)X
-2988(the)X
-3106(effective)X
-3408(user)X
-3562(ID)X
-3667(of)X
-3754(the)X
-3872(user.)X
-616 4191(\(2\))N
-830(The)X
-981(environmental)X
-1471(variable)X
-7 f
-1757(NEXINIT)X
-1 f
-2120(\(or)X
-2241(the)X
-2366(variable)X
-7 f
-2652(EXINIT)X
-1 f
-(,)S
-2987(if)X
-7 f
-3063(NEXINIT)X
-1 f
-3426(is)X
-3506(not)X
-3635(set\))X
-3778(is)X
-3858(inter-)X
-830 4281(preted.)N
-616 4404(\(3\))N
-830(If)X
-918(neither)X
-7 f
-1175(NEXINIT)X
-1 f
-1545(or)X
-7 f
-1646(EXINIT)X
-1 f
-1968(was)X
-2127(set,)X
-2270(and)X
-2420(the)X
-7 f
-2552(HOME)X
-1 f
-2778(environmental)X
-3275(variable)X
-3568(is)X
-3655(set,)X
-3798(the)X
-3930(\256le)X
-7 f
-830 4494($HOME/.nexrc)N
-1 f
-1430(\(or)X
-1548(the)X
-1670(\256le)X
-7 f
-1796($HOME/.exrc)X
-1 f
-(,)S
-2368(if)X
-7 f
-2441($HOME/.nexrc)X
-1 f
-3041(does)X
-3212(not)X
-3338(exist\))X
-3540(is)X
-3617(read,)X
-3800(as)X
-3890(long)X
-830 4584(as)N
-917(the)X
-1035(effective)X
-1337(user)X
-1491(ID)X
-1596(of)X
-1683(the)X
-1801(user)X
-1955(is)X
-2028(root)X
-2177(or)X
-2264(is)X
-2337(the)X
-2455(same)X
-2640(as)X
-2727(the)X
-2845(owner)X
-3066(of)X
-3153(the)X
-3271(\256le.)X
-616 4707(\(4\))N
-830(If)X
-921(the)X
-3 f
-1056(exrc)X
-1 f
-1241(option)X
-1482(was)X
-1644(turned)X
-1886(on)X
-2003(by)X
-2120(one)X
-2273(of)X
-2377(the)X
-2512(previous)X
-2825(startup)X
-3080(information)X
-3495(sources,)X
-3794(the)X
-3930(\256le)X
-7 f
-830 4797(.nexrc)N
-1 f
-1142(\(or)X
-1260(the)X
-1382(\256le)X
-7 f
-1508(.exrc)X
-1 f
-(,)S
-1792(if)X
-7 f
-1864(.nexrc)X
-1 f
-2175(does)X
-2345(not)X
-2470(exist\))X
-2671(is)X
-2747(read,)X
-2929(as)X
-3019(long)X
-3184(as)X
-3274(the)X
-3395(effective)X
-3700(user)X
-3857(ID)X
-3965(of)X
-830 4887(the)N
-948(user)X
-1102(is)X
-1175(the)X
-1293(same)X
-1478(as)X
-1565(the)X
-1683(owner)X
-1904(of)X
-1991(the)X
-2109(\256le.)X
-776 5010(No)N
-894(startup)X
-1132(\256le)X
-1254(is)X
-1327(read)X
-1486(if)X
-1555(it)X
-1619(is)X
-1692(writable)X
-1975(by)X
-2075(anyone)X
-2327(other)X
-2512(than)X
-2670(its)X
-2765(owner.)X
-776 5133(It)N
-845(is)X
-918(not)X
-1040(an)X
-1136(error)X
-1313(for)X
-1427(any)X
-1563(of)X
-1650(the)X
-1768(startup)X
-2006(environmental)X
-2489(variables)X
-2799(or)X
-2886(\256les)X
-3039(not)X
-3161(to)X
-3243(exist.)X
-776 5256(Once)N
-978(all)X
-1090(environmental)X
-1585(variables)X
-1907(are)X
-2038(interpreted,)X
-2438(and)X
-2586(all)X
-2698(startup)X
-2948(\256les)X
-3114(are)X
-3246(read,)X
-3438(the)X
-3569(\256rst)X
-3726(\256le)X
-3861(to)X
-3956(be)X
-576 5346(edited)N
-800(is)X
-881(read)X
-1048(in)X
-1138(\(or)X
-1260(a)X
-1324(temporary)X
-1682(\256le)X
-1812(is)X
-1893(created\).)X
-2221(Then,)X
-2434(any)X
-2578(commands)X
-2953(speci\256ed)X
-3266(using)X
-3467(the)X
-3 f
-9 f
-3593(-)X
-3595(-)X
-3 f
-3639(c)X
-1 f
-3702(option)X
-3933(are)X
-576 5436(executed,)N
-902(in)X
-984(the)X
-1102(context)X
-1358(of)X
-1445(that)X
-1585(\256le.)X
-
-4 p
-%%Page: 4 3
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-4)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-576 762(3.)N
-676(Recovery)X
-1 f
-776 885(There)N
-991(is)X
-1071(no)X
-1178(recovery)X
-1487(program)X
-1786(for)X
-3 f
-1907(nex)X
-1 f
-(/)S
-3 f
-2049(nvi)X
-1 f
-2155(,)X
-2202(nor)X
-2336(does)X
-3 f
-2510(nex)X
-1 f
-(/)S
-3 f
-2652(nvi)X
-1 f
-2785(run)X
-2919(setuid.)X
-3177(Recovery)X
-3512(\256les)X
-3672(are)X
-3799(created)X
-576 975(readable)N
-887(and)X
-1041(writable)X
-1342(by)X
-1460(the)X
-1596(owner)X
-1835(only.)X
-2055(Users)X
-2276(may)X
-2452(recover)X
-2732(any)X
-2886(\256le)X
-3026(which)X
-3260(they)X
-3436(can)X
-3585(read,)X
-3781(and)X
-3934(the)X
-576 1065(superuser)N
-904(may)X
-1062(recover)X
-1324(any)X
-1460(edit)X
-1600(session.)X
-776 1188(Edit)N
-952(sessions)X
-1257(are)X
-1399(backed)X
-1670(by)X
-1793(\256les)X
-1969(in)X
-2074(the)X
-2215(directory)X
-2548(named)X
-2805(by)X
-2929(the)X
-3 f
-3071(recdir)X
-1 f
-3325(option)X
-3573(\(the)X
-3742(directory)X
-7 f
-576 1278(/var/tmp/vi.recover)N
-1 f
-1508(by)X
-1608(default\),)X
-1898(and)X
-2034(are)X
-2153(named)X
-2387(``)X
-3 f
-2441(vi.XXXXXX)X
-1 f
-2871('',)X
-2965(where)X
-3182(``)X
-3 f
-3236(XXXXXX)X
-1 f
-3584('')X
-3658(is)X
-3731(a)X
-3787(number)X
-576 1368(related)N
-816(to)X
-899(the)X
-1018(process)X
-1281(ID.)X
-1428(When)X
-1642(a)X
-1700(\256le)X
-1824(is)X
-1899(\256rst)X
-2045(modi\256ed,)X
-2371(a)X
-2429(second)X
-2674(recovery)X
-2978(\256le)X
-3102(containing)X
-3462(an)X
-3560(email)X
-3760(message)X
-576 1458(for)N
-691(the)X
-810(user)X
-965(is)X
-1039(created,)X
-1313(and)X
-1450(is)X
-1524(named)X
-1759(``)X
-3 f
-1813 0.3077(recover.XXXXXX)AX
-1 f
-2441('',)X
-2536(where,)X
-2774(again,)X
-2989(``)X
-3 f
-3043(XXXXXX)X
-1 f
-3391('')X
-3466(is)X
-3540(associated)X
-3890(with)X
-576 1548(the)N
-698(process)X
-963(ID.)X
-1112(Both)X
-1291(\256les)X
-1448(are)X
-1571(removed)X
-1876(at)X
-1958(the)X
-2080(end)X
-2220(of)X
-2311(a)X
-2371(normal)X
-2622(edit)X
-2766(session,)X
-3041(but)X
-3168(will)X
-3317(remain)X
-3565(if)X
-3639(the)X
-3762(edit)X
-3907(ses-)X
-576 1638(sion)N
-729(is)X
-802(abnormally)X
-1187(terminated)X
-1550(or)X
-1637(the)X
-1755(user)X
-1909(runs)X
-2067(the)X
-3 f
-2185(ex)X
-2281(preserve)X
-1 f
-2596(command.)X
-776 1761(The)N
-3 f
-935(recdir)X
-1 f
-1180(option)X
-1419(may)X
-1592(be)X
-1703(set)X
-1827(in)X
-1924(either)X
-2142(the)X
-2275(user's)X
-2502(or)X
-2604(system's)X
-2919(startup)X
-3172(information,)X
-3605(changing)X
-3934(the)X
-576 1851(recovery)N
-887(directory.)X
-1246(\(Note,)X
-1478(however,)X
-1804(that)X
-1953(if)X
-2031(a)X
-2096(memory)X
-2392(based)X
-2604(\256le)X
-2735(system)X
-2985(is)X
-3066(used)X
-3241(as)X
-3336(the)X
-3462(backup)X
-3722(directory,)X
-576 1941(each)N
-752(system)X
-1002(reboot)X
-1235(will)X
-1388(delete)X
-1609(all)X
-1718(of)X
-1814(the)X
-1941(recovery)X
-2252(\256les!)X
-2461(The)X
-2615(same)X
-2809(caution)X
-3074(applies)X
-3330(to)X
-3421(directories)X
-3789(such)X
-3965(as)X
-7 f
-576 2031(/tmp)N
-1 f
-792(which)X
-1012(are)X
-1135(cleared)X
-1392(of)X
-1483(their)X
-1654(contents)X
-1945(by)X
-2049(a)X
-2108(system)X
-2353(reboot,)X
-2601(or)X
-7 f
-2691(/usr/tmp)X
-1 f
-3098(which)X
-3317(is)X
-3393(periodically)X
-3799(cleared)X
-576 2121(of)N
-663(old)X
-785(\256les)X
-938(on)X
-1038(many)X
-1236(systems.\))X
-776 2244(The)N
-926(recovery)X
-1233(directory)X
-1548(should)X
-1786(be)X
-1887(owned)X
-2126(by)X
-2231(root,)X
-2405(or)X
-2497(at)X
-2580(least)X
-2752(by)X
-2857(a)X
-2918(pseudo-user.)X
-3371(In)X
-3463(addition,)X
-3770(if)X
-3844(direc-)X
-576 2334(tory)N
-727(``sticky-bit'')X
-1159(semantics)X
-1497(are)X
-1618(available,)X
-1950(the)X
-2070(directory)X
-2382(should)X
-2617(have)X
-2791(the)X
-2911(sticky-bit)X
-3234(set)X
-3344(so)X
-3436(that)X
-3577(\256les)X
-3731(may)X
-3890(only)X
-576 2424(be)N
-676(removed)X
-981(by)X
-1085(their)X
-1256(owners.)X
-1552(The)X
-1702(recovery)X
-2009(directory)X
-2324(must)X
-2504(be)X
-2605(read,)X
-2789(write,)X
-2999(and)X
-3140(executable)X
-3509(by)X
-3614(any)X
-3755(user,)X
-3934(i.e.)X
-576 2514(mode)N
-774(1777.)X
-776 2637(If)N
-850(the)X
-968(recovery)X
-1270(directory)X
-1581(does)X
-1749(not)X
-1872(exist,)X
-3 f
-2064(ex)X
-1 f
-2140(/)X
-3 f
-2162(vi)X
-1 f
-2245(will)X
-2390(attempt)X
-2651(to)X
-2734(create)X
-2948(it.)X
-3053(This)X
-3216(can)X
-3349(result)X
-3548(in)X
-3631(the)X
-3750(recovery)X
-576 2727(directory)N
-895(being)X
-1102(owned)X
-1345(by)X
-1454(a)X
-1518(normal)X
-1773(user,)X
-1955(which)X
-2179(means)X
-2412(that)X
-2560(that)X
-2708(user)X
-2870(will)X
-3022(be)X
-3126(able)X
-3288(to)X
-3378(remove)X
-3647(other)X
-3840(user's)X
-576 2817(recovery)N
-880(and)X
-1018(backup)X
-1272(\256les.)X
-1467(This)X
-1631(is)X
-1706(annoying,)X
-2046(but)X
-2170(is)X
-2245(not)X
-2369(a)X
-2427(security)X
-2703(issue)X
-2886(as)X
-2976(the)X
-3097(user)X
-3254(cannot)X
-3491(otherwise)X
-3826(access)X
-576 2907(or)N
-663(modify)X
-914(the)X
-1032(\256les.)X
-776 3030(The)N
-924(recovery)X
-1229(\256le)X
-1354(has)X
-1484(all)X
-1587(of)X
-1677(the)X
-1798(necessary)X
-2134(information)X
-2535(in)X
-2621(it)X
-2689(to)X
-2775(enable)X
-3009(the)X
-3131(user)X
-3289(to)X
-3375(recover)X
-3641(the)X
-3763(edit)X
-3907(ses-)X
-576 3120(sion.)N
-774(In)X
-866(addition,)X
-1173(it)X
-1242(has)X
-1374(all)X
-1479(of)X
-1571(the)X
-1694(necessary)X
-2032(email)X
-2235(headers)X
-2505(for)X
-2 f
-2623(sendmail)X
-1 f
-2912(\(8\).)X
-3070(When)X
-3286(the)X
-3408(system)X
-3654(is)X
-3731(rebooted,)X
-576 3210(all)N
-677(of)X
-765(the)X
-884(\256les)X
-1038(in)X
-7 f
-1121(/var/tmp/vi.recover)X
-1 f
-2054(named)X
-2289(``)X
-3 f
-2343 0.3077(recover.XXXXXX)AX
-1 f
-2971('')X
-3046(should)X
-3280(be)X
-3377(sent)X
-3527(to)X
-3611(their)X
-3780(owners,)X
-576 3300(by)N
-684(email,)X
-910(using)X
-1111(the)X
-3 f
-9 f
-1237(-)X
-1239(-)X
-3 f
-1283(t)X
-1 f
-1338(option)X
-1570(of)X
-3 f
-1665(sendmail)X
-1 f
-1999(\(or)X
-2121(a)X
-2185(similar)X
-2434(mechanism)X
-2826(in)X
-2915(other)X
-3107(mailers\).)X
-3437(If)X
-3 f
-3518(ex)X
-1 f
-3594(/)X
-3 f
-3616(vi)X
-1 f
-3705(receives)X
-3996(a)X
-576 3390(hangup)N
-839(\(SIGHUP\))X
-1209(signal,)X
-1447(or)X
-1541(the)X
-1666(user)X
-1828(executes)X
-2133(the)X
-3 f
-2259(ex)X
-2363(preserve)X
-1 f
-2686(command,)X
-3 f
-3050(ex)X
-1 f
-3126(/)X
-3 f
-3148(vi)X
-1 f
-3238(will)X
-3390(automatically)X
-3854(email)X
-576 3480(the)N
-694(recovery)X
-996(information)X
-1394(to)X
-1476(the)X
-1594(user.)X
-776 3603(If)N
-853(your)X
-1023(system)X
-1268(does)X
-1438(not)X
-1564(have)X
-1740(the)X
-3 f
-1862(sendmail)X
-1 f
-2192(utility)X
-2406(\(or)X
-2524(a)X
-2584(mailer)X
-2813(program)X
-3109(which)X
-3329(supports)X
-3624(its)X
-3723(interface\))X
-576 3693(the)N
-700(source)X
-936(\256le)X
-7 f
-1063(nvi/common/recover.c)X
-1 f
-2048(will)X
-2197(have)X
-2374(to)X
-2461(be)X
-2562(modi\256ed)X
-2871(to)X
-2958(use)X
-3090(your)X
-3262(local)X
-3443(mail)X
-3610(delivery)X
-3898(pro-)X
-576 3783(grams.)N
-833(Note,)X
-1030(if)X
-3 f
-1100(nex)X
-1 f
-(/)S
-3 f
-1242(nvi)X
-1 f
-1369(is)X
-1443(changed)X
-1732(to)X
-1815(use)X
-1944(another)X
-2207(mailer,)X
-2454(it)X
-2520(is)X
-2595(important)X
-2928(to)X
-3012(remember)X
-3360(that)X
-3502(the)X
-3622(owner)X
-3845(of)X
-3934(the)X
-576 3873(\256le)N
-708(given)X
-916(to)X
-1008(the)X
-1136(mailer)X
-1371(is)X
-1454(the)X
-3 f
-1582(nex)X
-1 f
-(/)S
-3 f
-1724(nvi)X
-1 f
-1860(user,)X
-2044(so)X
-2145(nothing)X
-2419(in)X
-2511(the)X
-2638(\256le)X
-2769(should)X
-3011(be)X
-3116(trusted)X
-3363(as)X
-3459(it)X
-3532(may)X
-3699(have)X
-3880(been)X
-576 3963(modi\256ed)N
-880(in)X
-962(an)X
-1058(effort)X
-1257(to)X
-1339(compromise)X
-1755(the)X
-1873(system.)X
-776 4086(Finally,)N
-1046(the)X
-1168(owner)X
-1393(execute)X
-1663(bit)X
-1771(is)X
-1848(set)X
-1961(on)X
-2065(backup)X
-2321(\256les)X
-2478(when)X
-2676(they)X
-2838(are)X
-2961(created,)X
-3238(and)X
-3378(unset)X
-3571(when)X
-3770(they)X
-3933(are)X
-576 4176(\256rst)N
-724(modi\256ed,)X
-1052(e.g.)X
-1192(backup)X
-1448(\256les)X
-1605(that)X
-1749(have)X
-1925(no)X
-2029(associated)X
-2383(email)X
-2585(recovery)X
-2891(\256le)X
-3017(will)X
-3165(have)X
-3341(this)X
-3480(bit)X
-3588(set.)X
-3741(\(There)X
-3979(is)X
-576 4266(also)N
-735(a)X
-801(small)X
-1004(window)X
-1292(where)X
-1519(empty)X
-1749(\256les)X
-1912(can)X
-2054(be)X
-2160(created)X
-2424(and)X
-2571(not)X
-2704(yet)X
-2833(have)X
-3016(this)X
-3162(bit)X
-3277(set.)X
-3437(This)X
-3610(is)X
-3694(due)X
-3841(to)X
-3934(the)X
-576 4356(method)N
-836(in)X
-918(which)X
-1134(the)X
-1252(\256les)X
-1405(are)X
-1524(created.\))X
-1844(Such)X
-2024(\256les)X
-2177(should)X
-2410(be)X
-2506(deleted)X
-2758(when)X
-2952(the)X
-3070(system)X
-3312(reboots.)X
-776 4479(A)N
-884(simple)X
-1147(way)X
-1331(to)X
-1443(do)X
-1573(this)X
-1738(cleanup)X
-2038(is)X
-2141(to)X
-2253(insert)X
-2481(the)X
-2630(following)X
-2992(Bourne)X
-3279(shell)X
-3481(script)X
-3710(into)X
-3885(your)X
-7 f
-576 4569(/etc/rc.local)N
-1 f
-1224(\(or)X
-1342(other)X
-1531(startup\))X
-1800(\256le.)X
-1966(The)X
-2115(script)X
-2316(should)X
-2552(work)X
-2740(with)X
-2905(the)X
-3026(historic)X
-3289(Bourne)X
-3548(shell,)X
-3742(a)X
-3801(POSIX)X
-576 4659(1003.2)N
-818(shell)X
-991(or)X
-1080(the)X
-1201(Korn)X
-1389(shell.)X
-1603(\(A)X
-1711(copy)X
-1890(of)X
-1980(this)X
-2118(script)X
-2319(is)X
-2395(included)X
-2694(as)X
-7 f
-2784(nvi/install/recover.script)X
-1 f
-576 4749(in)N
-658(the)X
-3 f
-776(nex)X
-1 f
-(/)S
-3 f
-918(nvi)X
-1 f
-1044(distribution.\))X
-
-5 p
-%%Page: 5 4
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3698(USD:13-5)X
-7 f
-896 762(#)N
-1184(@\(#\)recover.script)X
-2336(8.4)X
-2528(\(Berkeley\))X
-3056(8/13/94)X
-896 852(#)N
-896 942(#)N
-992(Recover)X
-1376(nvi)X
-1568(editor)X
-1904(files:)X
-896 1032(RECDIR=/var/tmp/vi.recover)N
-896 1122(SENDMAIL=/usr/lib/sendmail)N
-896 1212(echo)N
-1136('Recovering)X
-1712(nvi)X
-1904(editor)X
-2240(sessions.')X
-896 1392(#)N
-992(Unmodified)X
-1520(nvi)X
-1712(editor)X
-2048(backup)X
-2384(files)X
-2672(are)X
-2864(either)X
-3200(zero)X
-3440(length)X
-3776(or)X
-896 1482(#)N
-992(have)X
-1232(the)X
-1424(execute)X
-1808(bit)X
-2000(set.)X
-2288(Delete)X
-2624(both)X
-2864(cases.)X
-896 1572(vibackup=`echo)N
-1616($RECDIR/vi.*`)X
-896 1662(if)N
-1040([)X
-1136("$vibackup")X
-1712(!=)X
-1856("$RECDIR/vi.*")X
-2576(];)X
-2720(then)X
-1184 1752(for)N
-1376(i)X
-1472(in)X
-1616($vibackup;)X
-2144(do)X
-1472 1842(if)N
-1616(test)X
-1856(-x)X
-2000($i)X
-2144(-o)X
-2288(!)X
-2384(-s)X
-2528($i;)X
-2720(then)X
-1760 1932(rm)N
-1904($i)X
-1472 2022(fi)N
-1184 2112(done)N
-896 2202(fi)N
-896 2382(#)N
-992(It)X
-1136(is)X
-1280(possible)X
-1712(to)X
-1856(get)X
-2048(incomplete)X
-2576(recovery)X
-3008(files,)X
-3344(if)X
-3488(the)X
-3680(editor)X
-896 2472(#)N
-992(crashes)X
-1376(at)X
-1520(the)X
-1712(right)X
-2000(time.)X
-2336(Delete)X
-2672(any)X
-2864(recovery)X
-3296(files)X
-3584(without)X
-896 2562(#)N
-992(corresponding)X
-1664(backup)X
-2000(files,)X
-2336(otherwise)X
-2816(send)X
-3056(mail)X
-3296(to)X
-3440(the)X
-3632(user.)X
-896 2652(virecovery=`echo)N
-1712($RECDIR/recover.*`)X
-896 2742(if)N
-1040([)X
-1136("$virecovery")X
-1808(!=)X
-1952("$RECDIR/recover.*")X
-2912(];)X
-3056(then)X
-1184 2832(for)N
-1376(i)X
-1472(in)X
-1616($virecovery;)X
-2240(do)X
-1472 2922(recfile=`awk)N
-2096('/\303X-vi-recover-path:/{print)X
-3488($2}')X
-3728(<)X
-3824($i`)X
-1472 3012(if)N
-1616(test)X
-1856(!)X
-1952(-n)X
-2096($recfile)X
-2528(-a)X
-2672(-s)X
-2816($recfile;)X
-3296(then)X
-1760 3102($SENDMAIL)N
-2240(-t)X
-2384(<)X
-2480($i)X
-1472 3192(else)N
-1760 3282(rm)N
-1904($i)X
-1472 3372(fi)N
-1184 3462(done)N
-896 3552(fi)N
-1 f
-776 3798(If)N
-859(you)X
-1008(are)X
-1136(not)X
-1267(using)X
-1469(the)X
-1596(default)X
-1848(value)X
-2051(for)X
-2174(the)X
-3 f
-2301(recdir)X
-1 f
-2540(option,)X
-2793(be)X
-2898(sure)X
-3062(to)X
-3154(substitute)X
-3490(the)X
-3618(value)X
-3822(you're)X
-576 3888(using)N
-769(for)X
-883(the)X
-7 f
-1001(RECDIR)X
-1 f
-1309(value)X
-1503(in)X
-1585(the)X
-1703(recovery)X
-2005(script.)X
-776 4011(If)N
-882(the)X
-1032(path)X
-1222(of)X
-1341(your)X
-1540(system's)X
-3 f
-1872(sendmail)X
-1 f
-2230(program)X
-2555(\(or)X
-2702(whatever)X
-3050(mailer)X
-3308(you're)X
-3571(using\))X
-3824(is)X
-3930(not)X
-7 f
-576 4101(/usr/lib/sendmail)N
-1 f
-(,)S
-1451(be)X
-1566(sure)X
-1739(to)X
-1840(substitute)X
-2184(the)X
-2320(correct)X
-2582(pathname)X
-2932(for)X
-3064(the)X
-7 f
-3200(SENDMAIL)X
-1 f
-3622(value)X
-3834(in)X
-3934(the)X
-576 4191(recovery)N
-878(script.)X
-1116(Consult)X
-1384(the)X
-1502(manual)X
-1758(page)X
-1930(for)X
-2044(details)X
-2273(on)X
-2373(recovering)X
-2737(preserved)X
-3070(or)X
-3157(aborted)X
-3418(editing)X
-3660(sessions.)X
-3 f
-576 4377(4.)N
-676(Sizing)X
-904(the)X
-1031(Screen)X
-1 f
-776 4500(The)N
-926(size)X
-1076(of)X
-1168(the)X
-1291(screen)X
-1522(can)X
-1659(be)X
-1760(set)X
-1874(in)X
-1961(a)X
-2022(number)X
-2292(of)X
-2384(ways.)X
-3 f
-2614(Ex)X
-1 f
-2707(/)X
-3 f
-2729(vi)X
-1 f
-2817(takes)X
-3008(the)X
-3132(following)X
-3469(steps)X
-3655(until)X
-3827(values)X
-576 4590(are)N
-695(obtained)X
-991(for)X
-1105(both)X
-1267(the)X
-1385(number)X
-1650(of)X
-1737(rows)X
-1913(and)X
-2049(number)X
-2314(of)X
-2401(columns)X
-2692(in)X
-2774(the)X
-2892(screen.)X
-616 4713(\(1\))N
-830(If)X
-904(the)X
-1022(environmental)X
-1505(variable)X
-7 f
-1784(LINES)X
-1 f
-2044(exists,)X
-2266(it)X
-2330(is)X
-2403(used)X
-2570(to)X
-2652(specify)X
-2904(the)X
-3022(number)X
-3287(of)X
-3374(rows)X
-3550(in)X
-3632(the)X
-3750(screen.)X
-616 4836(\(2\))N
-830(If)X
-909(the)X
-1032(environmental)X
-1520(variable)X
-7 f
-1804(COLUMNS)X
-1 f
-2165(exists,)X
-2393(it)X
-2463(is)X
-2542(used)X
-2715(to)X
-2803(specify)X
-3061(the)X
-3185(number)X
-3456(of)X
-3549(columns)X
-3846(in)X
-3934(the)X
-830 4926(screen.)N
-616 5049(\(3\))N
-830(The)X
-975(TIOCGWINSZ)X
-2 f
-1494(ioctl)X
-1 f
-1636(\(2\))X
-1750(is)X
-1823(attempted)X
-2159(on)X
-2259(the)X
-2377(standard)X
-2669(error)X
-2846(\256le)X
-2968(descriptor.)X
-616 5172(\(4\))N
-830(The)X
-978(termcap)X
-1260(entry)X
-1448(\(or)X
-1565(terminfo)X
-1864(entry)X
-2053(on)X
-2157(System)X
-2416(V)X
-2498(machines\))X
-2852(is)X
-2929(checked)X
-3217(for)X
-3335(the)X
-3457(``li'')X
-3633(entry)X
-3822(\(rows\))X
-830 5262(and)N
-966(the)X
-1084(``co'')X
-1288(entry)X
-1473(\(columns\).)X
-616 5385(\(5\))N
-830(The)X
-975(number)X
-1240(of)X
-1327(rows)X
-1503(is)X
-1576(set)X
-1685(to)X
-1767(24,)X
-1887(and)X
-2023(the)X
-2141(number)X
-2406(of)X
-2493(columns)X
-2784(is)X
-2857(set)X
-2966(to)X
-3048(80.)X
-776 5508(If)N
-851(a)X
-908(window)X
-1187(change)X
-1436(size)X
-1582(signal)X
-1794(\(SIGWINCH\))X
-2270(is)X
-2344(received,)X
-2658(the)X
-2777(new)X
-2932(window)X
-3211(size)X
-3357(is)X
-3431(retrieved)X
-3739(using)X
-3934(the)X
-576 5598(TIOCGWINSZ)N
-2 f
-1095(ioctl)X
-1 f
-1237(\(2\))X
-1351(call,)X
-1507(and)X
-1643(all)X
-1743(other)X
-1928(information)X
-2326(is)X
-2399(ignored.)X
-
-6 p
-%%Page: 6 5
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-6)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-576 762(5.)N
-676(Character)X
-1049(Display)X
-1 f
-776 885(In)N
-865(both)X
-3 f
-1030(ex)X
-1 f
-1129(and)X
-3 f
-1268(vi)X
-1 f
-1353(printable)X
-1661(characters)X
-2011(as)X
-2101(de\256ned)X
-2360(by)X
-2 f
-2463(isprint)X
-1 f
-2671(\(3\))X
-2788(are)X
-2910(displayed)X
-3240(using)X
-3436(the)X
-3557(local)X
-3736(character)X
-576 975(set.)N
-776 1098(Non-printable)N
-1255(characters,)X
-1631(for)X
-1754(which)X
-2 f
-1980(iscntrl)X
-1 f
-2184(\(3\))X
-2308(returns)X
-2561(true,)X
-2736(and)X
-2882(which)X
-3108(are)X
-3237(less)X
-3387(than)X
-3555(octal)X
-3741(\\076,)X
-3933(are)X
-576 1188(displayed)N
-915(as)X
-1014(the)X
-1144(string)X
-1357(``)X
-7 f
-1411(\303<character>)X
-1 f
-('',)S
-2092(where)X
-7 f
-2320(<character>)X
-1 f
-2879(is)X
-2963(the)X
-3092(character)X
-3419(that)X
-3570(is)X
-3654(the)X
-3783(original)X
-576 1278 0.3250(character's)AN
-961(value)X
-1166(offset)X
-1380(from)X
-1568(the)X
-1698(``)X
-7 f
-1752(@)X
-1 f
-('')S
-1886(character.)X
-2254(For)X
-2397(example,)X
-2721(the)X
-2851(octal)X
-3039(character)X
-3367(\\001)X
-3541(is)X
-3626(displayed)X
-3965(as)X
-576 1368(``)N
-7 f
-630(\303A)X
-1 f
-(''.)S
-845(If)X
-2 f
-924(iscntrl)X
-1 f
-1128(\(3\))X
-1247(returns)X
-1495(true)X
-1645(for)X
-1764(the)X
-1887(octal)X
-2068(character)X
-2389(\\177,)X
-2576(it)X
-2645(is)X
-2723(displayed)X
-3054(as)X
-3145(the)X
-3267(string)X
-3473(``)X
-7 f
-3527(\303?)X
-1 f
-(''.)S
-3741(All)X
-3867(other)X
-576 1458(characters)N
-947(are)X
-1090(displayed)X
-1441(as)X
-1552(either)X
-1779(hexadecimal)X
-2229(values,)X
-2498(in)X
-2604(the)X
-2746(form)X
-2946(``)X
-7 f
-3000(0x<high-halfbyte>)X
-3888(...)X
-576 1548(0x<low-halfbyte>)N
-1 f
-('',)S
-1469(or)X
-1587(as)X
-1705(octal)X
-1911(values,)X
-2186(in)X
-2298(the)X
-2446(form)X
-2652(``)X
-7 f
-2706(\\<high-one-or-two-bits>)X
-3888(...)X
-576 1638(\\<low-three-bits>)N
-1 f
-(''.)S
-1506(The)X
-1651(display)X
-1902(of)X
-1989(unknown)X
-2307(characters)X
-2654(is)X
-2727(based)X
-2930(on)X
-3030(the)X
-3148(value)X
-3342(of)X
-3429(the)X
-3 f
-3547(octal)X
-1 f
-3732(option.)X
-776 1761(In)N
-3 f
-864(vi)X
-1 f
-947(command)X
-1285(mode,)X
-1505(the)X
-1625(cursor)X
-1848(is)X
-1923(always)X
-2168(positioned)X
-2523(on)X
-2625(the)X
-2745(last)X
-2878(column)X
-3140(of)X
-3229(characters)X
-3578(which)X
-3796(take)X
-3952(up)X
-576 1851(more)N
-765(than)X
-927(one)X
-1067(column)X
-1331(on)X
-1435(the)X
-1557(screen.)X
-1827(In)X
-3 f
-1918(vi)X
-1 f
-2003(text)X
-2146(input)X
-2333(mode,)X
-2554(the)X
-2675(cursor)X
-2899(is)X
-2975(positioned)X
-3331(on)X
-3434(the)X
-3555(\256rst)X
-3702(column)X
-3965(of)X
-576 1941(characters)N
-923(which)X
-1139(take)X
-1293(up)X
-1393(more)X
-1578(than)X
-1736(one)X
-1872(column)X
-2132(on)X
-2232(the)X
-2350(screen.)X
-3 f
-576 2127(6.)N
-676(Multiple)X
-989(Screens)X
-1 f
-3 f
-776 2250(Nvi)N
-1 f
-916(supports)X
-1207(multiple)X
-1493(screens)X
-1750(by)X
-1851(dividing)X
-2138(the)X
-2257(window)X
-2536(into)X
-2681(regions.)X
-2978(It)X
-3048(also)X
-3198(supports)X
-3490(stacks)X
-3707(of)X
-3795(screens)X
-576 2340(by)N
-676(permitting)X
-1029(the)X
-1147(user)X
-1301(to)X
-1383(change)X
-1631(the)X
-1749(set)X
-1858(of)X
-1945(screens)X
-2202(that)X
-2342(are)X
-2461(currently)X
-2771(displayed.)X
-776 2463(The)N
-924(command)X
-3 f
-1263(split)X
-1 f
-1432(divides)X
-1686(the)X
-1807(current)X
-2058(screen)X
-2287(into)X
-2434(two)X
-2577(regions)X
-2836(of)X
-2926(approximately)X
-3412(equal)X
-3609(size.)X
-3797(If)X
-3875(a)X
-3935(list)X
-576 2553(of)N
-668(\256les)X
-826(are)X
-950(speci\256ed)X
-1260(as)X
-1352(arguments)X
-1711(to)X
-1798(the)X
-3 f
-1921(split)X
-1 f
-2092(command,)X
-2452(the)X
-2574(list)X
-2695(of)X
-2786(\256les)X
-2943(to)X
-3029(be)X
-3129(edited)X
-3349(is)X
-3426(initialized)X
-3770(as)X
-3861(if)X
-3934(the)X
-3 f
-576 2643(next)N
-1 f
-747(command)X
-1087(had)X
-1227(been)X
-1403(used.)X
-1614(If)X
-1692(no)X
-1796(\256les)X
-1953(are)X
-2076(speci\256ed,)X
-2405(the)X
-2527(new)X
-2685(screen)X
-2915(will)X
-3063(begin)X
-3265(by)X
-3370(editing)X
-3617(the)X
-3740(same)X
-3930(\256le)X
-576 2733(as)N
-663(the)X
-781(previous)X
-1077(screen.)X
-776 2856(When)N
-992(more)X
-1181(than)X
-1343(one)X
-1483(screen)X
-1713(is)X
-1790(editing)X
-2036(a)X
-2097(\256le,)X
-2244(changes)X
-2528(in)X
-2615(any)X
-2756(screen)X
-2987(are)X
-3111(re\257ected)X
-3413(in)X
-3500(all)X
-3605(other)X
-3795(screens)X
-576 2946(editing)N
-820(the)X
-940(same)X
-1127(\256le.)X
-1291(Exiting)X
-1548(any)X
-1686(screen)X
-1914(without)X
-2180(saving)X
-2410(any)X
-2547(changes)X
-2827(\(or)X
-2942(explicitly)X
-3265(discarding)X
-3620(them\))X
-3828(is)X
-3902(per-)X
-576 3036(mitted)N
-800(until)X
-966(the)X
-1084(last)X
-1215(screen)X
-1441(editing)X
-1683(the)X
-1801(\256le)X
-1923(is)X
-1996(exited.)X
-776 3159(The)N
-3 f
-923(resize)X
-1 f
-1142(command)X
-1480(permits)X
-1742(resizing)X
-2018(of)X
-2107(individual)X
-2453(screens.)X
-2752(Screens)X
-3024(may)X
-3184(be)X
-3282(grown,)X
-3529(shrunk)X
-3769(or)X
-3858(set)X
-3970(to)X
-576 3249(an)N
-672(absolute)X
-959(number)X
-1224(of)X
-1311(rows.)X
-776 3372(The)N
-3 f
-921(\303W)X
-1 f
-1048(command)X
-1384(is)X
-1457(used)X
-1624(to)X
-1706(switch)X
-1935(between)X
-2223(screens.)X
-2520(Each)X
-3 f
-2701(\303W)X
-1 f
-2829(moves)X
-3059(to)X
-3142(the)X
-3261(next)X
-3420(lower)X
-3624(screen)X
-3851(in)X
-3934(the)X
-576 3462(window,)N
-874(or)X
-961(to)X
-1043(the)X
-1161(\256rst)X
-1305(screen)X
-1531(in)X
-1613(the)X
-1731(window)X
-2009(if)X
-2078(there)X
-2259(are)X
-2378(no)X
-2478(lower)X
-2681(screens.)X
-776 3585(The)N
-3 f
-925(bg)X
-1 f
-1033(command)X
-1374(``backgrounds'')X
-1917(the)X
-2040(current)X
-2293(screen.)X
-2564(The)X
-2714(screen)X
-2945(disappears)X
-3309(from)X
-3490(the)X
-3613(window,)X
-3916(and)X
-576 3675(the)N
-702(rows)X
-886(it)X
-958(occupied)X
-1276(are)X
-1403(taken)X
-1605(over)X
-1776(by)X
-1884(a)X
-1948(neighboring)X
-2363(screen.)X
-2637(It)X
-2714(is)X
-2795(an)X
-2899(error)X
-3083(to)X
-3172(attempt)X
-3439(to)X
-3528(background)X
-3934(the)X
-576 3765(only)N
-738(screen)X
-964(in)X
-1046(the)X
-1164(window.)X
-776 3888(The)N
-3 f
-935(display)X
-1212(screens)X
-1 f
-1496(command)X
-1846(displays)X
-2142(the)X
-2274(names)X
-2513(of)X
-2614(the)X
-2747(\256les)X
-2915(associated)X
-3280(with)X
-3457(the)X
-3590(current)X
-3853(back-)X
-576 3978(grounded)N
-899(screens)X
-1156(in)X
-1238(the)X
-1356(window.)X
-776 4101(The)N
-3 f
-932(fg)X
-1031([\256le])X
-1 f
-1219(command)X
-1567(``foregrounds'')X
-2095(the)X
-2225(\256rst)X
-2381(screen)X
-2619(in)X
-2713(the)X
-2843(list)X
-2972(of)X
-3071(backgrounded)X
-3558(screens)X
-3827(that)X
-3979(is)X
-576 4191(associated)N
-934(with)X
-1103(its)X
-1205(argument.)X
-1575(If)X
-1656(no)X
-1763(\256le)X
-1892(argument)X
-2222(is)X
-2302(speci\256ed,)X
-2634(the)X
-2759(\256rst)X
-2910(screen)X
-3143(on)X
-3250(the)X
-3375(list)X
-3499(is)X
-3579(foregrounded.)X
-576 4281(Foregrounding)N
-1072(consists)X
-1345(of)X
-1432(backgrounding)X
-1933(the)X
-2051(current)X
-2299(screen,)X
-2545(and)X
-2681(replacing)X
-3000(its)X
-3095(space)X
-3294(in)X
-3376(the)X
-3494(window)X
-3772(with)X
-3934(the)X
-576 4371(foregrounded)N
-1029(screen.)X
-776 4494(If)N
-852(the)X
-972(last)X
-1105(screen)X
-1333(in)X
-1417(the)X
-1537(window)X
-1817(is)X
-1892(exited,)X
-2131(and)X
-2270(there)X
-2454(are)X
-2576(backgrounded)X
-3054(screens,)X
-3334(the)X
-3455(\256rst)X
-3602(screen)X
-3831(on)X
-3934(the)X
-576 4584(list)N
-693(of)X
-780(backgrounded)X
-1255(screens)X
-1512(takes)X
-1697(over)X
-1860(the)X
-1978(window.)X
-3 f
-576 4770(7.)N
-676(Regular)X
-972(Expressions)X
-1400(and)X
-1548(Replacement)X
-2014(Strings)X
-1 f
-776 4893(Regular)N
-1050(expressions)X
-1444(are)X
-1563(used)X
-1730(in)X
-1812(line)X
-1952(addresses,)X
-2301(as)X
-2389(the)X
-2508(\256rst)X
-2653(part)X
-2799(of)X
-2887(the)X
-3 f
-3006(ex)X
-3103(substitute)X
-1 f
-3436(,)X
-3 f
-3477(global)X
-1 f
-3685(,)X
-3726(and)X
-3 f
-3863(vglo-)X
-576 4983(bal)N
-1 f
-702(commands,)X
-1089(and)X
-1225(in)X
-1307(search)X
-1533(patterns.)X
-776 5106(The)N
-927(regular)X
-1181(expressions)X
-1581(supported)X
-1923(by)X
-3 f
-2030(ex)X
-1 f
-2106(/)X
-3 f
-2128(vi)X
-1 f
-2217(are,)X
-2363(by)X
-2470(default,)X
-2740(the)X
-2865(Basic)X
-3070(Regular)X
-3351(Expressions)X
-3765(\(BRE's\))X
-576 5196(described)N
-909(in)X
-996(the)X
-1119(IEEE)X
-1318(POSIX)X
-1574(Standard)X
-1884(1003.2.)X
-2169(The)X
-3 f
-2319(extended)X
-1 f
-2651(option)X
-2880(causes)X
-3115(all)X
-3220(regular)X
-3472(expressions)X
-3870(to)X
-3956(be)X
-576 5286(interpreted)N
-976(as)X
-1095(the)X
-1245(Extended)X
-1600(Regular)X
-1906(Expressions)X
-2345(\(ERE's\))X
-2661(described)X
-3022(by)X
-3155(the)X
-3306(same)X
-3524(standard.)X
-3889(\(See)X
-2 f
-576 5376(re_format)N
-1 f
-(\(7\))S
-1025(for)X
-1154(more)X
-1354(information.\))X
-1834(Generally)X
-2186(speaking,)X
-2526(BRE's)X
-2774(are)X
-2908(the)X
-3040(Regular)X
-3328(Expressions)X
-3749(found)X
-3970(in)X
-2 f
-576 5466(ed)N
-1 f
-652(\(1\))X
-766(and)X
-2 f
-902(grep)X
-1 f
-1049(\(1\),)X
-1183(and)X
-1319(ERE's)X
-1548(are)X
-1667(the)X
-1785(Regular)X
-2059(Expressions)X
-2466(found)X
-2673(in)X
-2 f
-2755(egrep)X
-1 f
-2938(\(1\).)X
-776 5589(The)N
-922(following)X
-1254(is)X
-1328(not)X
-1451(intended)X
-1748(to)X
-1831(provide)X
-2097(a)X
-2154(description)X
-2532(of)X
-2621(Regular)X
-2897(Expressions.)X
-3346(The)X
-3493(information)X
-3893(here)X
-576 5679(only)N
-742(describes)X
-1065(strings)X
-1302(and)X
-1442(characters)X
-1793(which)X
-2013(have)X
-2189(special)X
-2436(meanings)X
-2766(in)X
-2851(the)X
-3 f
-2972(ex)X
-1 f
-3048(/)X
-3 f
-3070(vi)X
-1 f
-3155(version)X
-3414(of)X
-3504(RE's,)X
-3707(or)X
-3797(options)X
-576 5769(which)N
-792(change)X
-1040(the)X
-1158(meanings)X
-1485(of)X
-1572(characters)X
-1919(that)X
-2059(normally)X
-2368(have)X
-2540(special)X
-2783(meanings)X
-3110(in)X
-3192(RE's.)X
-
-7 p
-%%Page: 7 6
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3698(USD:13-7)X
-1 f
-616 762(\(1\))N
-830(An)X
-948(empty)X
-1168(RE)X
-1290(\(e.g.)X
-1473(``)X
-7 f
-1527(//)X
-1 f
-('')S
-1697(or)X
-1784(``)X
-7 f
-1838(??)X
-1 f
-('')S
-2028(is)X
-2101(equivalent)X
-2455(to)X
-2537(the)X
-2655(last)X
-2786(RE)X
-2908(used.)X
-616 885(\(2\))N
-830(The)X
-975(construct)X
-1289(``)X
-7 f
-1343(\\<)X
-1 f
-('')S
-1513(matches)X
-1796(the)X
-1914(beginning)X
-2254(of)X
-2341(a)X
-2397(word.)X
-616 1008(\(3\))N
-830(The)X
-975(construct)X
-1289(``)X
-7 f
-1343(\\>)X
-1 f
-('')S
-1513(matches)X
-1796(the)X
-1914(end)X
-2050(of)X
-2137(a)X
-2193(word.)X
-616 1131(\(4\))N
-830(The)X
-975(character)X
-1291(``)X
-7 f
-1345(\304)X
-1 f
-('')S
-1467(matches)X
-1750(the)X
-1868(replacement)X
-2281(part)X
-2426(of)X
-2513(the)X
-2631(last)X
-3 f
-2762(substitute)X
-1 f
-3115(command.)X
-776 1254(When)N
-992(the)X
-3 f
-1114(magic)X
-1 f
-1343(option)X
-1571(is)X
-2 f
-1648(not)X
-1 f
-1774(set,)X
-1907(the)X
-2029(only)X
-2195(characters)X
-2546(with)X
-2712(special)X
-2959(meanings)X
-3290(are)X
-3413(a)X
-3473(``)X
-7 f
-3527(\303)X
-1 f
-('')S
-3653(character)X
-3974(at)X
-576 1344(the)N
-698(beginning)X
-1042(of)X
-1133(an)X
-1233(RE,)X
-1379(a)X
-1439(``)X
-7 f
-1493($)X
-1 f
-('')S
-1619(character)X
-1939(at)X
-2021(the)X
-2143(end)X
-2282(of)X
-2372(an)X
-2471(RE,)X
-2616(and)X
-2755(the)X
-2876(escaping)X
-3180(character)X
-3499(``)X
-7 f
-3553(\\)X
-1 f
-(''.)S
-3718(The)X
-3866(char-)X
-576 1434(acters)N
-788(``)X
-7 f
-842(.)X
-1 f
-('',)S
-988(``)X
-7 f
-1042(*)X
-1 f
-('',)S
-1188(``)X
-7 f
-1242([)X
-1 f
-('')S
-1368(and)X
-1508(``)X
-7 f
-1562(\304)X
-1 f
-('')S
-1688(are)X
-1811(treated)X
-2054(as)X
-2145(ordinary)X
-2441(characters)X
-2793(unless)X
-3018(preceded)X
-3334(by)X
-3439(a)X
-3500(``)X
-7 f
-3554(\\)X
-1 f
-('';)S
-3703(when)X
-3902(pre-)X
-576 1524(ceded)N
-784(by)X
-884(a)X
-940(``)X
-7 f
-994(\\)X
-1 f
-('')S
-1116(they)X
-1274(regain)X
-1495(their)X
-1662(special)X
-1905(meaning.)X
-776 1647(Replacement)N
-1215(strings)X
-1448(are)X
-1567(the)X
-1685(second)X
-1928(part)X
-2073(of)X
-2160(a)X
-3 f
-2216(substitute)X
-1 f
-2569(command.)X
-776 1770(The)N
-924(character)X
-1243(``)X
-7 f
-1297(&)X
-1 f
-('')S
-1422(\(or)X
-1539(``)X
-7 f
-1593(\\&)X
-1 f
-('')S
-1766(if)X
-1839(the)X
-3 f
-1961(magic)X
-1 f
-2190(option)X
-2418(is)X
-2 f
-2495(not)X
-1 f
-2621(set\))X
-2761(in)X
-2847(the)X
-2969(replacement)X
-3386(string)X
-3592(stands)X
-3816(for)X
-3934(the)X
-576 1860(text)N
-717(matched)X
-1010(by)X
-1111(the)X
-1230(RE)X
-1353(that)X
-1494(is)X
-1568(being)X
-1767(replaced.)X
-2101(The)X
-2247(character)X
-2564(``)X
-7 f
-2618(\304)X
-1 f
-('')S
-2741(\(or)X
-2856(``)X
-7 f
-2910(\\\304)X
-1 f
-('')S
-3081(if)X
-3151(the)X
-3 f
-3270(magic)X
-1 f
-3496(option)X
-3721(is)X
-2 f
-3794(not)X
-1 f
-3916(set\))X
-576 1950(stands)N
-806(for)X
-931(the)X
-1060(replacement)X
-1484(part)X
-1640(of)X
-1738(the)X
-1867(previous)X
-3 f
-2174(substitute)X
-1 f
-2538(command.)X
-2925(It)X
-3005(is)X
-3089(only)X
-3262(valid)X
-3453(after)X
-3632(a)X
-3 f
-3699(substitute)X
-1 f
-576 2040(command)N
-912(has)X
-1039(been)X
-1211(performed.)X
-776 2163(The)N
-922(string)X
-1125(``)X
-7 f
-1179(\\#)X
-1 f
-('',)S
-1370(where)X
-1588(``)X
-7 f
-1642(#)X
-1 f
-('')S
-1765(is)X
-1839(an)X
-1936(integer)X
-2180(value)X
-2376(from)X
-2554(1)X
-2616(to)X
-2700(9,)X
-2782(stands)X
-3004(for)X
-3120(the)X
-3240(text)X
-3382(matched)X
-3676(by)X
-3778(the)X
-3898(por-)X
-576 2253(tion)N
-728(of)X
-823(the)X
-949(RE)X
-1079(enclosed)X
-1388(in)X
-1478(the)X
-1604(``)X
-7 f
-1658(#)X
-1 f
-('''th)S
-1877(set)X
-1994(of)X
-2089(escaped)X
-2372(parentheses,)X
-2794(e.g.)X
-2957(``)X
-7 f
-3011(\\\()X
-1 f
-('')S
-3188(and)X
-3331(``)X
-7 f
-3385(\\\))X
-1 f
-(''.)S
-3602(For)X
-3740(example,)X
-576 2343(``)N
-7 f
-630(s/abc\\\(.*\\\)def/\\1/)X
-1 f
-('')S
-1568(deletes)X
-1811(the)X
-1929(strings)X
-2162(``)X
-7 f
-2216(abc)X
-1 f
-('')S
-2434(and)X
-2570(``)X
-7 f
-2624(def)X
-1 f
-('')S
-2842(from)X
-3018(the)X
-3136(matched)X
-3428(pattern.)X
-776 2466(The)N
-934(strings)X
-1180(``)X
-7 f
-1234(\\l)X
-1 f
-('',)S
-1437(``)X
-7 f
-1491(\\u)X
-1 f
-('',)S
-1694(``)X
-7 f
-1748(\\L)X
-1 f
-('')S
-1931(and)X
-2080(``)X
-7 f
-2134(\\U)X
-1 f
-('')S
-2317(can)X
-2462(be)X
-2571(used)X
-2752(to)X
-2848(modify)X
-3113(the)X
-3245(case)X
-3418(of)X
-3519(elements)X
-3838(in)X
-3934(the)X
-576 2556(replacement)N
-999(string.)X
-1251(The)X
-1406(string)X
-1618(``)X
-7 f
-1672(\\l)X
-1 f
-('')S
-1852(causes)X
-2092(the)X
-2220(next)X
-2388(character)X
-2714(to)X
-2806(be)X
-2912(converted)X
-3259(to)X
-3350(lowercase;)X
-3723(the)X
-3850(string)X
-576 2646(``)N
-7 f
-630(\\u)X
-1 f
-('')S
-815(behaves)X
-1109(similarly,)X
-1448(but)X
-1585(converts)X
-1892(to)X
-1989(uppercase)X
-2346(\(e.g.)X
-7 f
-2544(s/abc/\\U&/)X
-1 f
-3059(replaces)X
-3358(the)X
-3492(string)X
-7 f
-3710(abc)X
-1 f
-3890(with)X
-7 f
-576 2736(ABC)N
-1 f
-(\).)S
-810(The)X
-958(strings)X
-1194(``)X
-7 f
-1248(\\L)X
-1 f
-('')S
-1421(causes)X
-1654(characters)X
-2004(up)X
-2107(to)X
-2192(the)X
-2313(end)X
-2452(of)X
-2541(the)X
-2661(string)X
-2865(or)X
-2954(the)X
-3074(next)X
-3234 0.3611(occurrence)AX
-3610(of)X
-3699(the)X
-3819(strings)X
-576 2826(``)N
-7 f
-630(\\e)X
-1 f
-('')S
-806(or)X
-899(``)X
-7 f
-953(\\E)X
-1 f
-('')S
-1129(to)X
-1217(be)X
-1319(converted)X
-1663(to)X
-1752(lowercase;)X
-2123(the)X
-2248(string)X
-2457(``)X
-7 f
-2511(\\U)X
-1 f
-('')S
-2688(behaves)X
-2974(similarly,)X
-3305(but)X
-3434(converts)X
-3733(to)X
-3822(upper-)X
-576 2916(case.)N
-776 3039(If)N
-850(the)X
-968(entire)X
-1171(replacement)X
-1584(pattern)X
-1827(is)X
-1900(``)X
-7 f
-1954(%)X
-1 f
-('',)S
-2096(then)X
-2254(the)X
-2372(last)X
-2503(replacement)X
-2916(pattern)X
-3159(is)X
-3232(used)X
-3399(again.)X
-776 3162(In)N
-3 f
-867(vi)X
-1 f
-929(,)X
-973(inserting)X
-1278(a)X
-7 f
-1339(<control-M>)X
-1 f
-1892(into)X
-2041(the)X
-2164(replacement)X
-2582(string)X
-2789(will)X
-2938(cause)X
-3142(the)X
-3265(matched)X
-3562(line)X
-3707(to)X
-3794(be)X
-3895(split)X
-576 3252(into)N
-720(two)X
-860(lines)X
-1031(at)X
-1109(that)X
-1249(point.)X
-1473(\(The)X
-7 f
-1645(<control-M>)X
-1 f
-2193(will)X
-2337(be)X
-2433(discarded.\))X
-3 f
-576 3438(8.)N
-676(General)X
-972(Editor)X
-1214(Description)X
-1 f
-776 3561(When)N
-3 f
-989(ex)X
-1 f
-1086(or)X
-3 f
-1174(vi)X
-1 f
-1257(are)X
-1377(executed,)X
-1704(the)X
-1823(text)X
-1964(of)X
-2052(a)X
-2109(\256le)X
-2232(is)X
-2306(read)X
-2466(\(or)X
-2581(a)X
-2638(temporary)X
-2989(\256le)X
-3112(is)X
-3186(created\),)X
-3487(and)X
-3624(then)X
-3783(all)X
-3885(edit-)X
-576 3651(ing)N
-700(changes)X
-981(happen)X
-1235(within)X
-1461(the)X
-1581(context)X
-1838(of)X
-1926(the)X
-2045(copy)X
-2222(of)X
-2310(the)X
-2429(\256le.)X
-2 f
-2592(No)X
-2706(changes)X
-2990(affect)X
-3189(the)X
-3308(actual)X
-3529(\256le)X
-3648(until)X
-3815(the)X
-3934(\256le)X
-576 3741(is)N
-662(written)X
-921(out)X
-1 f
-1023(,)X
-1076(either)X
-1293(using)X
-1500(a)X
-1570(write)X
-1769(command)X
-2119(or)X
-2220(another)X
-2495(command)X
-2845(which)X
-3075(is)X
-3162(affected)X
-3456(by)X
-3570(the)X
-3 f
-3702(autowrite)X
-1 f
-576 3831(option.)N
-776 3954(All)N
-898(\256les)X
-1052(are)X
-1172(locked)X
-1407(\(using)X
-1628(the)X
-2 f
-1747(\257ock)X
-1 f
-1899(\(2\))X
-2014(or)X
-2 f
-2102(fcntl)X
-1 f
-2244(\(2\))X
-2359(interfaces\))X
-2720(during)X
-2950(the)X
-3069(edit)X
-3210(session,)X
-3482(to)X
-3565(avoid)X
-3764(inadver-)X
-576 4044(tently)N
-781(making)X
-1044(modi\256cations)X
-1502(to)X
-1587(multiple)X
-1876(copies)X
-2104(of)X
-2194(the)X
-2315(\256le.)X
-2480(If)X
-2557(a)X
-2616(lock)X
-2777(cannot)X
-3014(be)X
-3113(obtained)X
-3412(for)X
-3529(a)X
-3587(\256le)X
-3711(because)X
-3988(it)X
-576 4134(is)N
-657(locked)X
-899(by)X
-1007(another)X
-1276(process,)X
-1565(the)X
-1691(edit)X
-1840(session)X
-2100(is)X
-2182(read-only)X
-2519(\(as)X
-2642(if)X
-2720(the)X
-3 f
-2847(readonly)X
-1 f
-3178(option)X
-3411(or)X
-3507(the)X
-3 f
-9 f
-3634(-)X
-3636(-)X
-3 f
-3680(R)X
-1 f
-3767(\257ag)X
-3916(had)X
-576 4224(been)N
-754(speci\256ed\).)X
-1132(If)X
-1212(a)X
-1274(lock)X
-1438(cannot)X
-1678(be)X
-1780(obtained)X
-2082(for)X
-2202(other)X
-2393(reasons,)X
-2680(the)X
-2804(edit)X
-2950(session)X
-3207(will)X
-3357(continue,)X
-3679(but)X
-3807(the)X
-3930(\256le)X
-576 4314(status)N
-778(information)X
-1176(\(see)X
-1326(the)X
-3 f
-1444(<control-G>)X
-1 f
-1890(command\))X
-2253(will)X
-2397(re\257ect)X
-2618(this)X
-2753(fact.)X
-776 4437(Both)N
-3 f
-955(ex)X
-1 f
-1055(and)X
-3 f
-1195(vi)X
-1 f
-1281(are)X
-1405(modeful)X
-1697(editors,)X
-1960(i.e.)X
-2083(they)X
-2246(have)X
-2423(two)X
-2568(modes,)X
-2822(``command'')X
-3271(mode)X
-3474(and)X
-3615(``text)X
-3814(input'')X
-576 4527(mode.)N
-817(The)X
-965(former)X
-1207(is)X
-1283(intended)X
-1582(to)X
-1667(permit)X
-1898(you)X
-2040(to)X
-2124(enter)X
-2307(commands)X
-2676(which)X
-2894(modi\256es)X
-3191(already)X
-3450(existing)X
-3725(text.)X
-3907(The)X
-576 4617(latter)N
-762(is)X
-836(intended)X
-1133(to)X
-1216(permit)X
-1446(you)X
-1588(to)X
-1672(enter)X
-1855(new)X
-2011(text.)X
-2193(When)X
-3 f
-2407(ex)X
-1 f
-2505(\256rst)X
-2651(starts)X
-2842(running,)X
-3133(it)X
-3199(is)X
-3274(in)X
-3358(command)X
-3696(mode,)X
-3916(and)X
-576 4707(usually)N
-838(displays)X
-1131(a)X
-1198(prompt)X
-1460(\(see)X
-1621(the)X
-3 f
-1750(prompt)X
-1 f
-2039(option)X
-2274(for)X
-2398(more)X
-2593(information\).)X
-3068(The)X
-3223(prompt)X
-3484(is)X
-3567(a)X
-3633(single)X
-3854(colon)X
-576 4797(\(``)N
-7 f
-657(:)X
-1 f
-(''\))S
-817(character.)X
-1184(There)X
-1403(are)X
-1533(three)X
-1725(commands)X
-2103(that)X
-2255(switch)X
-3 f
-2496(ex)X
-1 f
-2604(into)X
-2760(text)X
-2912(input)X
-3108(mode:)X
-3 f
-3340(append)X
-1 f
-3592(,)X
-3 f
-3644(change)X
-1 f
-3916(and)X
-3 f
-576 4887(insert)N
-1 f
-772(.)X
-840(Once)X
-1038(in)X
-1128(input)X
-1320(mode,)X
-1546(entering)X
-1837(a)X
-1901(line)X
-2049(containing)X
-2415(only)X
-2585(a)X
-2649(single)X
-2868(period)X
-3101(\(``)X
-7 f
-3182(.)X
-1 f
-(''\))S
-3359(terminates)X
-3721(text)X
-3868(input)X
-576 4977(mode)N
-774(and)X
-910(returns)X
-1153(to)X
-1235(command)X
-1571(mode,)X
-1789(where)X
-2006(the)X
-2124(prompt)X
-2375(is)X
-2448(redisplayed.)X
-776 5100(When)N
-3 f
-989(vi)X
-1 f
-1072(\256rst)X
-1217(starts)X
-1407(running,)X
-1697(it)X
-1763(is)X
-1838(in)X
-1922(command)X
-2260(mode)X
-2460(as)X
-2549(well.)X
-2749(There)X
-2959(are)X
-3080(eleven)X
-3312(commands)X
-3681(that)X
-3823(switch)X
-3 f
-576 5190(vi)N
-1 f
-659(into)X
-804(text)X
-945(input)X
-1130(mode:)X
-3 f
-1351(A)X
-1 f
-1409(,)X
-3 f
-1450(a)X
-1 f
-(,)S
-3 f
-1531(C)X
-1 f
-1589(,)X
-3 f
-1629(c)X
-1 f
-1665(,)X
-3 f
-1705(I)X
-1 f
-1736(,)X
-3 f
-1776(i)X
-1 f
-1798(,)X
-3 f
-1838(O)X
-1 f
-1900(,)X
-3 f
-1940(o)X
-1 f
-(,)S
-3 f
-2020(R)X
-1 f
-2078(,)X
-3 f
-2118(S)X
-1 f
-2182(and)X
-3 f
-2318(s)X
-1 f
-2349(.)X
-2409(Once)X
-2599(in)X
-2681(input)X
-2865(mode,)X
-3083(entering)X
-3366(an)X
-7 f
-3462(<escape>)X
-1 f
-3866(char-)X
-576 5280(acter)N
-753(terminates)X
-1107(text)X
-1247(input)X
-1431(mode)X
-1629(and)X
-1765(returns)X
-2008(to)X
-2090(command)X
-2426(mode.)X
-776 5403(The)N
-921(following)X
-1252(words)X
-1468(have)X
-1640(special)X
-1883(meanings)X
-2210(in)X
-2292(both)X
-2454(the)X
-3 f
-2572(ex)X
-1 f
-2668(and)X
-3 f
-2804(vi)X
-1 f
-2886(command)X
-3222(descriptions:)X
-3 f
-576 5583(<interrupt>)N
-1 f
-776 5673(The)N
-927(interrupt)X
-1229(character)X
-1551(is)X
-1630(used)X
-1803(to)X
-1891(interrupt)X
-2193(the)X
-2317(current)X
-2571(operation.)X
-2940(Normally)X
-7 f
-3274(<control-C>)X
-1 f
-(,)S
-3849(what-)X
-776 5763(ever)N
-935(character)X
-1251(is)X
-1324(set)X
-1433(for)X
-1547(the)X
-1665(current)X
-1913(terminal)X
-2200(is)X
-2273(used.)X
-
-8 p
-%%Page: 8 7
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-8)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-576 762(<literal)N
-847(next>)X
-1 f
-776 852(The)N
-923(literal)X
-1132(next)X
-1292(character)X
-1610(is)X
-1685(used)X
-1854(to)X
-1938(escape)X
-2175(the)X
-2295(subsequent)X
-2673(character)X
-2991(from)X
-3169(any)X
-3307(special)X
-3552(meaning.)X
-3890(This)X
-776 942(character)N
-1102(is)X
-1185(always)X
-7 f
-1438(<control-V>)X
-1 f
-(.)S
-2036(If)X
-2120(the)X
-2248(terminal)X
-2545(is)X
-2627(not)X
-2758(set)X
-2876(up)X
-2985(to)X
-3076(do)X
-3185(XON/XOFF)X
-3614(\257ow)X
-3785(control,)X
-776 1032(then)N
-7 f
-934(<control-Q>)X
-1 f
-1482(is)X
-1555(used)X
-1722(to)X
-1804(mean)X
-1998(literal)X
-2205(next)X
-2363(as)X
-2450(well.)X
-3 f
-576 1212(current)N
-855(pathname)X
-1 f
-776 1302(The)N
-923(pathname)X
-1257(of)X
-1346(the)X
-1467(\256le)X
-1592(currently)X
-1905(being)X
-2106(edited)X
-2325(by)X
-2428(vi.)X
-2553(When)X
-2768(the)X
-2889(percent)X
-3149(character)X
-3468(\(``)X
-7 f
-3549(%)X
-1 f
-(''\))S
-3701(appears)X
-3970(in)X
-776 1392(a)N
-833(\256le)X
-956(name)X
-1151(entered)X
-1409(as)X
-1497(part)X
-1643(of)X
-1731(an)X
-3 f
-1828(ex)X
-1 f
-1925(command)X
-2262(argument,)X
-2606(it)X
-2671(is)X
-2745(replaced)X
-3039(by)X
-3140(the)X
-3259(current)X
-3508(pathname.)X
-3880(\(The)X
-776 1482(``)N
-7 f
-830(%)X
-1 f
-('')S
-952(character)X
-1268(can)X
-1400(be)X
-1496(escaped)X
-1771(by)X
-1871(preceding)X
-2208(it)X
-2272(with)X
-2434(a)X
-2490(backslash.\))X
-3 f
-576 1662(alternate)N
-904(pathname)X
-1 f
-776 1752(The)N
-921(name)X
-1115(of)X
-1202(the)X
-1320(last)X
-1451(\256le)X
-1573(name)X
-1767(mentioned)X
-2125(in)X
-2207(an)X
-3 f
-2304(ex)X
-1 f
-2401(command,)X
-2758(or,)X
-2866(the)X
-2985(previous)X
-3282(current)X
-3531(pathname)X
-3864(if)X
-3934(the)X
-776 1842(last)N
-913(\256le)X
-1041(mentioned)X
-1404(becomes)X
-1710(the)X
-1833(current)X
-2086(\256le.)X
-2253(When)X
-2470(the)X
-2593(hash)X
-2765(mark)X
-2955(character)X
-3276(\(``)X
-7 f
-3357(#)X
-1 f
-(''\))S
-3511(appears)X
-3782(in)X
-3869(a)X
-3930(\256le)X
-776 1932(name)N
-979(entered)X
-1245(as)X
-1341(part)X
-1495(of)X
-1591(an)X
-3 f
-1696(ex)X
-1 f
-1801(command)X
-2146(argument,)X
-2498(it)X
-2571(is)X
-2653(replaced)X
-2955(by)X
-3064(the)X
-3191(alternate)X
-3498(pathname.)X
-3880(\(The)X
-776 2022(``)N
-7 f
-830(#)X
-1 f
-('')S
-952(character)X
-1268(can)X
-1400(be)X
-1496(escaped)X
-1771(by)X
-1871(preceding)X
-2208(it)X
-2272(with)X
-2434(a)X
-2490(backslash.\))X
-3 f
-576 2202(buffer)N
-1 f
-776 2292(One)N
-931(of)X
-1019(a)X
-1076(number)X
-1342(of)X
-1430(named)X
-1665(areas)X
-1852(for)X
-1968(saving)X
-2199(copies)X
-2426(of)X
-2515(text.)X
-2697(Commands)X
-3083(that)X
-3225(change)X
-3475(or)X
-3564(delete)X
-3778(text)X
-3920(can)X
-776 2382(save)N
-941(the)X
-1061(changed)X
-1351(or)X
-1440(deleted)X
-1693(text)X
-1834(into)X
-1979(a)X
-2036(speci\256c)X
-2302(buffer,)X
-2540(for)X
-2655(later)X
-2819(use,)X
-2967(if)X
-3037(the)X
-3156(command)X
-3493(allows)X
-3723(it)X
-3788(\(i.e.)X
-3934(the)X
-3 f
-776 2472(ex)N
-872(change)X
-1 f
-1132(command)X
-1468(cannot)X
-1702(save)X
-1866(the)X
-1985(changed)X
-2274(text)X
-2415(in)X
-2498(a)X
-2555(named)X
-2790(buffer\).)X
-3075(Buffers)X
-3337(are)X
-3457(named)X
-3692(with)X
-3855(a)X
-3912(sin-)X
-776 2562(gle)N
-895(character,)X
-1232(preceded)X
-1544(by)X
-1645(a)X
-1702(double)X
-1941(quote,)X
-2160(e.g.)X
-7 f
-2317("<character>)X
-1 f
-(.)S
-2954(Historic)X
-3232(implementations)X
-3785(of)X
-3 f
-3872(ex)X
-1 f
-3948(/)X
-3 f
-3970(vi)X
-1 f
-776 2652(limited)N
-7 f
-1022(<character>)X
-1 f
-1570(to)X
-1652(the)X
-1770(alphanumeric)X
-2227(characters;)X
-3 f
-2596(nex)X
-1 f
-(/)S
-3 f
-2738(nvi)X
-1 f
-2864(permits)X
-3124(the)X
-3242(use)X
-3369(of)X
-3456(any)X
-3592(character.)X
-776 2832(Buffers)N
-1041(named)X
-1279(by)X
-1383(uppercase)X
-1729(characters)X
-2080(are)X
-2203(the)X
-2325(same)X
-2514(as)X
-2605(buffers)X
-2857(named)X
-3095(by)X
-3199(lowercase)X
-3545(characters,)X
-3916(e.g.)X
-776 2922(the)N
-904(buffer)X
-1131(named)X
-1375(by)X
-1485(the)X
-1613(English)X
-1887(character)X
-2213(``)X
-7 f
-2267(A)X
-1 f
-('')S
-2399(is)X
-2482(the)X
-2610(same)X
-2805(as)X
-2902(the)X
-3030(buffer)X
-3257(named)X
-3500(by)X
-3609(the)X
-3736(character)X
-776 3012(``)N
-7 f
-830(a)X
-1 f
-('',)S
-977(with)X
-1144(the)X
-1267(exception)X
-1604(that,)X
-1769(if)X
-1843(the)X
-1966(buffer)X
-2188(contents)X
-2480(are)X
-2604(being)X
-2807(changed)X
-3100(\(as)X
-3219(with)X
-3386(a)X
-3447(text)X
-3593(deletion)X
-3877(or)X
-3 f
-3970(vi)X
-776 3102(change)N
-1 f
-1036(command\),)X
-1419(the)X
-1537(text)X
-1677(is)X
-2 f
-1750(appended)X
-1 f
-2082(to)X
-2164(the)X
-2282(buffer,)X
-2519(instead)X
-2766(of)X
-2853(replacing)X
-3172(the)X
-3290(current)X
-3538(contents.)X
-776 3282(The)N
-925(buffers)X
-1177(named)X
-1415(by)X
-1519(the)X
-1641(numeric)X
-1928(characters)X
-2279(\(in)X
-2392(English,)X
-2680(``)X
-7 f
-2734(1)X
-1 f
-('')S
-2860(through)X
-3133(``)X
-7 f
-3187(9)X
-1 f
-(''\),)S
-3360(are)X
-3483(special,)X
-3751(in)X
-3838(that)X
-3983(if)X
-776 3372(at)N
-864(least)X
-1041(one)X
-1187(line)X
-1337(is)X
-1420(changed)X
-1718(or)X
-1814(deleted)X
-2075(in)X
-2166(the)X
-2293(\256le,)X
-2444(\(or)X
-2567(a)X
-2632(command)X
-2977(changes)X
-3265(or)X
-3361(deletes)X
-3613(a)X
-3678(region)X
-3912(that)X
-776 3462(crosses)N
-1032(a)X
-1093(line)X
-1238(boundary\))X
-1593(a)X
-1654(copy)X
-1835(of)X
-1927(the)X
-2050(text)X
-2195(is)X
-2273(placed)X
-2508(into)X
-2657(the)X
-2780(numeric)X
-3068(buffer)X
-3290(``)X
-7 f
-3344(1)X
-1 f
-('',)S
-3491(regardless)X
-3842(of)X
-3934(the)X
-776 3552(user)N
-933(specifying)X
-1290(another)X
-1553(buffer)X
-1772(in)X
-1856(which)X
-2074(to)X
-2158(save)X
-2323(it.)X
-2429(Before)X
-2670(this)X
-2807(copy)X
-2985(is)X
-3060(done,)X
-3258(the)X
-3378(previous)X
-3676(contents)X
-3965(of)X
-776 3642(buffer)N
-1000(``)X
-7 f
-1054(1)X
-1 f
-('')S
-1183(are)X
-1309(moved)X
-1555(into)X
-1707(buffer)X
-1932(``)X
-7 f
-1986(2)X
-1 f
-('',)S
-2136(``)X
-7 f
-2190(2)X
-1 f
-('')S
-2320(into)X
-2472(buffer)X
-2697(``)X
-7 f
-2751(3)X
-1 f
-('',)S
-2901(and)X
-3045(so)X
-3144(on.)X
-3292(The)X
-3445(contents)X
-3740(of)X
-3835(buffer)X
-776 3732(``)N
-7 f
-830(9)X
-1 f
-('')S
-961(are)X
-1089(discarded.)X
-1466(In)X
-3 f
-1562(vi)X
-1 f
-1624(,)X
-1672(text)X
-1820(may)X
-1986(be)X
-2090(explicitly)X
-2420(stored)X
-2644(into)X
-2796(the)X
-2922(numeric)X
-3213(buffers.)X
-3509(In)X
-3604(this)X
-3747(case,)X
-3934(the)X
-776 3822(buffer)N
-995(rotation)X
-1266(described)X
-1596(above)X
-1810(occurs)X
-2042(before)X
-2270(the)X
-2390(replacement)X
-2805(of)X
-2894(the)X
-3014(buffer's)X
-3291(contents.)X
-3621(\(Text)X
-3818(cannot)X
-776 3912(be)N
-874(explicitly)X
-1198(stored)X
-1416(into)X
-1562(the)X
-1682(numeric)X
-1966(buffers)X
-2215(in)X
-3 f
-2298(ex)X
-1 f
-2395(because)X
-2671(of)X
-2759(ambiguities)X
-3153(that)X
-3294(this)X
-3430(would)X
-3651(cause)X
-3851(in)X
-3934(the)X
-3 f
-776 4002(ex)N
-1 f
-872(command)X
-1208(syntax.\))X
-776 4182(When)N
-991(a)X
-3 f
-1051(vi)X
-1 f
-1137(command)X
-1477(synopsis)X
-1776(shows)X
-2000(both)X
-2166(a)X
-7 f
-2226([buffer])X
-1 f
-2634(and)X
-2774(a)X
-7 f
-2834([count])X
-1 f
-(,)S
-3214(they)X
-3376(may)X
-3538(be)X
-3638(presented)X
-3970(in)X
-776 4272(any)N
-912(order.)X
-776 4452(Finally,)N
-1052(all)X
-1162(buffers)X
-1420(are)X
-1549(either)X
-1762(``line'')X
-2020(or)X
-2117 0.3750(``character'')AX
-2551(oriented.)X
-2884(All)X
-3 f
-3016(ex)X
-1 f
-3122(commands)X
-3499(which)X
-3725(store)X
-3912(text)X
-776 4542(into)N
-922(buffers)X
-1172(are)X
-1293(line)X
-1435(oriented.)X
-1760(Some)X
-3 f
-1964(vi)X
-1 f
-2048(commands)X
-2417(which)X
-2635(store)X
-2813(text)X
-2955(into)X
-3101(buffers)X
-3351(are)X
-3471(line)X
-3612(oriented,)X
-3916(and)X
-776 4632(some)N
-980(are)X
-1114(character)X
-1445(oriented;)X
-1765(the)X
-1898(description)X
-2289(for)X
-2418(each)X
-2601(applicable)X
-3 f
-2966(vi)X
-1 f
-3063(command)X
-3414(notes)X
-3618(whether)X
-3912(text)X
-776 4722(copied)N
-1020(into)X
-1174(buffers)X
-1432(using)X
-1635(the)X
-1762(command)X
-2107(is)X
-2189(line)X
-2338(or)X
-2434(character)X
-2759(oriented.)X
-3091(In)X
-3187(addition,)X
-3498(the)X
-3 f
-3625(vi)X
-1 f
-3716(command)X
-3 f
-776 4812(display)N
-1053(buffers)X
-1 f
-1332(displays)X
-1628(the)X
-1760(current)X
-2023(orientation)X
-2405(for)X
-2534(each)X
-2717(buffer.)X
-2989(Generally,)X
-3361(the)X
-3494(only)X
-3671(importance)X
-776 4902(attached)N
-1074(to)X
-1166(this)X
-1311(orientation)X
-1688(is)X
-1771(that)X
-1921(if)X
-2000(the)X
-2128(buffer)X
-2355(is)X
-2438(subsequently)X
-2886(inserted)X
-3170(into)X
-3324(the)X
-3451(text,)X
-3620(line)X
-3769(oriented)X
-776 4992(buffers)N
-1027(create)X
-1243(new)X
-1400(lines)X
-1574(for)X
-1691(each)X
-1862(of)X
-1952(the)X
-2073(lines)X
-2247(they)X
-2408(contain,)X
-2687(and)X
-2826(character)X
-3145(oriented)X
-3431(buffers)X
-3682(create)X
-3898(new)X
-776 5082(lines)N
-951(for)X
-1069(any)X
-1209(lines)X
-2 f
-1384(other)X
-1 f
-1577(than)X
-1739(the)X
-1860(\256rst)X
-2007(and)X
-2146(last)X
-2280(lines)X
-2454(they)X
-2615(contain.)X
-2914(The)X
-3062(\256rst)X
-3209(and)X
-3348(last)X
-3482(lines)X
-3656(are)X
-3778(inserted)X
-776 5172(into)N
-927(the)X
-1052(text)X
-1199(at)X
-1284(the)X
-1409(current)X
-1664(cursor)X
-1892(position,)X
-2196(becoming)X
-2539(part)X
-2691(of)X
-2785(the)X
-2910(current)X
-3165(line.)X
-3352(If)X
-3433(there)X
-3621(is)X
-3701(more)X
-3894(than)X
-776 5262(one)N
-912(line)X
-1052(in)X
-1134(the)X
-1252(buffer,)X
-1489(however,)X
-1806(the)X
-1924(current)X
-2172(line)X
-2312(itself)X
-2492(will)X
-2636(be)X
-2732(split.)X
-3 f
-576 5442(unnamed)N
-915(buffer)X
-1 f
-776 5532(The)N
-924(unnamed)X
-1241(buffer)X
-1461(is)X
-1537(a)X
-1596(text)X
-1739(storage)X
-1994(area)X
-2152(which)X
-2371(is)X
-2447(used)X
-2617(by)X
-2720(commands)X
-3090(that)X
-3233(take)X
-3390(a)X
-3450(buffer)X
-3671(as)X
-3762(an)X
-3862(argu-)X
-776 5622(ment,)N
-976(when)X
-1170(no)X
-1270(buffer)X
-1487(is)X
-1560(speci\256ed)X
-1865(by)X
-1965(the)X
-2083(user.)X
-2277(There)X
-2485(is)X
-2558(no)X
-2658(way)X
-2812(to)X
-2894(explicitly)X
-3216 0.4531(reference)AX
-3537(this)X
-3672(buffer.)X
-
-9 p
-%%Page: 9 8
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3698(USD:13-9)X
-576 762(9.)N
-676(Vi)X
-776(Description)X
-1 f
-3 f
-776 885(Vi)N
-1 f
-879(takes)X
-1067(up)X
-1170(the)X
-1291(entire)X
-1497(screen)X
-1727(to)X
-1813(display)X
-2068(the)X
-2190(edited)X
-2410(\256le,)X
-2556(except)X
-2790(for)X
-2908(the)X
-3030(bottom)X
-3280(line)X
-3424(of)X
-3515(the)X
-3637(screen.)X
-3907(The)X
-576 975(bottom)N
-824(line)X
-966(of)X
-1055(the)X
-1175(screen)X
-1403(is)X
-1478(used)X
-1647(to)X
-1731(enter)X
-3 f
-1914(ex)X
-1 f
-2012(commands,)X
-2401(and)X
-2539(for)X
-3 f
-2655(vi)X
-1 f
-2739(error)X
-2918(and)X
-3056(informational)X
-3513(messages.)X
-3877(If)X
-3952(no)X
-576 1065(other)N
-777(information)X
-1191(is)X
-1281(being)X
-1496(displayed,)X
-1860(the)X
-1995(default)X
-2255(display)X
-2523(can)X
-2672(show)X
-2878(the)X
-3013(current)X
-3278(cursor)X
-3516(row)X
-3678(and)X
-3831(cursor)X
-576 1155(column,)N
-863(an)X
-966(indication)X
-1313(of)X
-1407(whether)X
-1693(the)X
-1818(\256le)X
-1947(has)X
-2081(been)X
-2260(modi\256ed,)X
-2591(and)X
-2734(the)X
-2859(current)X
-3114(mode)X
-3319(of)X
-3413(the)X
-3538(editor.)X
-3792(See)X
-3934(the)X
-3 f
-576 1245(ruler)N
-1 f
-750(,)X
-3 f
-790(showdirty)X
-1 f
-1152(and)X
-3 f
-1288(showmode)X
-1 f
-1668(options)X
-1923(for)X
-2037(more)X
-2222(information.)X
-776 1368(Empty)N
-1012(lines)X
-1186(do)X
-1289(not)X
-1414(have)X
-1589(any)X
-1729(special)X
-1976(representation)X
-2455(on)X
-2559(the)X
-2681(screen,)X
-2931(but)X
-3057(lines)X
-3232(on)X
-3336(the)X
-3458(screen)X
-3688(that)X
-3832(would)X
-576 1458(logically)N
-886(come)X
-1090(after)X
-1268(the)X
-1396(end)X
-1542(of)X
-1639(the)X
-1767(\256le)X
-1899(are)X
-2028(displayed)X
-2365(as)X
-2461(a)X
-2526(single)X
-2746(tilde)X
-2917(\(``)X
-7 f
-2998(\304)X
-1 f
-(''\))S
-3156(character.)X
-3521(To)X
-3639(differentiate)X
-576 1548(between)N
-871(empty)X
-1098(lines)X
-1276(and)X
-1419(lines)X
-1597(consisting)X
-1948(of)X
-2042(only)X
-2211(whitespace)X
-2596(characters,)X
-2971(use)X
-3106(the)X
-3 f
-3232(list)X
-1 f
-3362(option.)X
-3634(Historically,)X
-576 1638(implementations)N
-1130(of)X
-3 f
-1218(vi)X
-1 f
-1301(have)X
-1474(also)X
-1624(displayed)X
-1952(some)X
-2141(lines)X
-2312(as)X
-2399(single)X
-2610(asterisk)X
-2875(\(``)X
-7 f
-2956(@)X
-1 f
-(''\))S
-3105(characters.)X
-3492(These)X
-3704(were)X
-3881(lines)X
-576 1728(that)N
-717(were)X
-895(not)X
-1018(correctly)X
-1326(displayed,)X
-1675(i.e.)X
-1795(lines)X
-1968(on)X
-2070(the)X
-2190(screen)X
-2418(that)X
-2560(did)X
-2684(not)X
-2808(correspond)X
-3187(to)X
-3271(lines)X
-3444(in)X
-3528(the)X
-3648(\256le,)X
-3792(or)X
-3881(lines)X
-576 1818(that)N
-716(did)X
-838(not)X
-960(\256t)X
-1046(on)X
-1146(the)X
-1264(current)X
-1512(screen.)X
-3 f
-1778(Nvi)X
-1 f
-1918(never)X
-2117(displays)X
-2399(lines)X
-2570(in)X
-2652(this)X
-2787(fashion.)X
-3 f
-776 1941(Vi)N
-1 f
-881(is)X
-959(a)X
-1020(modeful)X
-1312(editor,)X
-1544(i.e.)X
-1667(it)X
-1736(has)X
-1868(two)X
-2013(modes,)X
-2268(``command'')X
-2718(mode)X
-2922(and)X
-3064(``text)X
-3264(input'')X
-3508(mode.)X
-3752(When)X
-3 f
-3970(vi)X
-1 f
-576 2031(\256rst)N
-724(starts,)X
-937(it)X
-1005(is)X
-1082(in)X
-1168(command)X
-1508(mode.)X
-1750(There)X
-1962(are)X
-2085(several)X
-2337(commands)X
-2708(that)X
-2852(change)X
-3 f
-3104(vi)X
-1 f
-3189(into)X
-3336(text)X
-3479(input)X
-3666(mode.)X
-3907(The)X
-7 f
-576 2121(<escape>)N
-1 f
-980(character)X
-1296(is)X
-1369(used)X
-1536(to)X
-1618(resolve)X
-1870(the)X
-1988(text)X
-2128(input)X
-2312(into)X
-2456(the)X
-2574(\256le,)X
-2716(and)X
-2852(exit)X
-2992(back)X
-3164(into)X
-3308(command)X
-3644(mode.)X
-3882(In)X
-3 f
-3970(vi)X
-1 f
-576 2211(command)N
-916(mode,)X
-1138(the)X
-1260(cursor)X
-1485(is)X
-1562(always)X
-1809(positioned)X
-2166(on)X
-2269(the)X
-2390(last)X
-2524(column)X
-2787(of)X
-2877(characters)X
-3227(which)X
-3446(take)X
-3603(up)X
-3706(more)X
-3894(than)X
-576 2301(one)N
-714(column)X
-976(on)X
-1078(the)X
-1198(screen.)X
-1466(In)X
-3 f
-1555(vi)X
-1 f
-1639(text)X
-1782(insert)X
-1983(mode,)X
-2204(the)X
-2325(cursor)X
-2549(is)X
-2625(positioned)X
-2981(on)X
-3084(the)X
-3205(\256rst)X
-3352(column)X
-3615(of)X
-3705(characters)X
-576 2391(which)N
-792(take)X
-946(up)X
-1046(more)X
-1231(than)X
-1389(one)X
-1525(column)X
-1785(on)X
-1885(the)X
-2003(screen.)X
-776 2514(Generally,)N
-1138(if)X
-1212(the)X
-1335(cursor)X
-1561(line)X
-1707(and)X
-1849(cursor)X
-2076(column)X
-2342(are)X
-2467(not)X
-2595(on)X
-2701(the)X
-2825(screen,)X
-3077(then)X
-3241(the)X
-3365(screen)X
-3597(is)X
-3676(scrolled)X
-3956(\(if)X
-576 2604(the)N
-695(target)X
-899(cursor)X
-1121(is)X
-1195(close\))X
-1407(or)X
-1494(repainted)X
-1813(\(if)X
-1909(the)X
-2027(target)X
-2230(cursor)X
-2451(is)X
-2524(far)X
-2634(away\))X
-2851(so)X
-2942(that)X
-3082(the)X
-3200(cursor)X
-3421(is)X
-3494(on)X
-3594(the)X
-3712(screen.)X
-3978(If)X
-576 2694(the)N
-699(screen)X
-930(is)X
-1009(scrolled,)X
-1309(it)X
-1379(is)X
-1458(moved)X
-1702(a)X
-1764(minimal)X
-2056(amount,)X
-2342(and)X
-2484(the)X
-2608(cursor)X
-2835(line)X
-2981(will)X
-3131(usually)X
-3388(appear)X
-3629(at)X
-3713(the)X
-3837(top)X
-3965(or)X
-576 2784(bottom)N
-832(of)X
-929(the)X
-1057(screen.)X
-1333(In)X
-1430(the)X
-1558(screen)X
-1794(is)X
-1877(repainted,)X
-2226(the)X
-2354(cursor)X
-2585(line)X
-2735(will)X
-2889(appear)X
-3134(in)X
-3226(the)X
-3354(center)X
-3581(of)X
-3678(the)X
-3806(screen,)X
-576 2874(unless)N
-799(the)X
-920(cursor)X
-1144(is)X
-1220(suf\256ciently)X
-1603(close)X
-1791(to)X
-1876(the)X
-1997(beginning)X
-2340(or)X
-2430(end)X
-2569(of)X
-2660(the)X
-2782(\256le)X
-2908(that)X
-3052(this)X
-3191(is)X
-3268(not)X
-3394(possible.)X
-3720(If)X
-3798(the)X
-3 f
-3920(lef-)X
-576 2964(tright)N
-1 f
-794(option)X
-1020(is)X
-1095(set,)X
-1226(the)X
-1346(screen)X
-1574(may)X
-1734(be)X
-1832(scrolled)X
-2108(or)X
-2197(repainted)X
-2518(in)X
-2602(a)X
-2660(horizontal)X
-3007(direction)X
-3314(as)X
-3403(well)X
-3563(as)X
-3651(in)X
-3734(a)X
-3791(vertical)X
-576 3054(one.)N
-776 3177(A)N
-869(major)X
-1091(difference)X
-1453(between)X
-1756(the)X
-1889(historical)X
-3 f
-2222(vi)X
-1 f
-2319(presentation)X
-2746(and)X
-3 f
-2897(nvi)X
-1 f
-3038(is)X
-3126(in)X
-3224(the)X
-3358(scrolling)X
-3674(and)X
-3826(screen)X
-576 3267(oriented)N
-893(position)X
-1204(commands,)X
-3 f
-1625(<control-B>)X
-1 f
-2042(,)X
-3 f
-2116(<control-D>)X
-1 f
-2538(,)X
-3 f
-2612(<control-E>)X
-1 f
-3029(,)X
-3 f
-3103(<control-F>)X
-1 f
-3516(,)X
-3 f
-3590(<control-U>)X
-1 f
-4012(,)X
-3 f
-576 3357(<control-Y>)N
-1 f
-998(,)X
-3 f
-1049(H)X
-1 f
-1111(,)X
-3 f
-1162(L)X
-1 f
-1246(and)X
-3 f
-1394(M)X
-1 f
-1470(.)X
-1542(In)X
-1641(historical)X
-1971(implementations)X
-2536(of)X
-3 f
-2635(vi)X
-1 f
-2697(,)X
-2749(these)X
-2946(commands)X
-3325(acted)X
-3527(on)X
-3639(physical)X
-3938(\(as)X
-576 3447(opposed)N
-877(to)X
-973(logical,)X
-1245(or)X
-1346(screen\))X
-1613(lines.)X
-1838(For)X
-1982(lines)X
-2166(that)X
-2319(were)X
-2509(suf\256ciently)X
-2902(long)X
-3077(in)X
-3172(relation)X
-3450(to)X
-3545(the)X
-3676(size)X
-3834(of)X
-3934(the)X
-576 3537(screen,)N
-822(this)X
-957(meant)X
-1174(that)X
-1315(single)X
-1527(line)X
-1668(scroll)X
-1867(commands)X
-2235(might)X
-2442(repaint)X
-2686(the)X
-2805(entire)X
-3009(screen,)X
-3256(scrolling)X
-3557(or)X
-3645(screen)X
-3872(posi-)X
-576 3627(tioning)N
-823(command)X
-1160(might)X
-1367(not)X
-1489(change)X
-1737(the)X
-1855(screen)X
-2081(or)X
-2168(move)X
-2366(the)X
-2484(cursor)X
-2705(at)X
-2783(all,)X
-2903(and)X
-3039(some)X
-3228(lines)X
-3399(simply)X
-3636(could)X
-3834(not)X
-3956(be)X
-576 3717(displayed,)N
-927(even)X
-1104(though)X
-3 f
-1351(vi)X
-1 f
-1438(would)X
-1663(edit)X
-1808(the)X
-1931(\256le)X
-2058(that)X
-2203(contained)X
-2540(them.)X
-2765(In)X
-3 f
-2857(nvi)X
-1 f
-2963(,)X
-3008(these)X
-3198(commands)X
-3570(act)X
-3689(on)X
-3794(logical,)X
-576 3807(i.e.)N
-718(screen)X
-968(lines.)X
-1203(You)X
-1385(are)X
-1528(unlikely)X
-1834(to)X
-1939(notice)X
-2178(any)X
-2337(difference)X
-2707(unless)X
-2950(you)X
-3113(are)X
-3255(editing)X
-3520(\256les)X
-3696(with)X
-3881(lines)X
-576 3897(signi\256cantly)N
-991(longer)X
-1216(than)X
-1374(a)X
-1430(screen)X
-1656(width.)X
-3 f
-776 4020(Vi)N
-1 f
-883(keeps)X
-1094(track)X
-1283(of)X
-1378(the)X
-1504(currently)X
-1822(``most)X
-2059(attractive'')X
-2440(cursor)X
-2669(position.)X
-2994(Each)X
-3183(command)X
-3527(description)X
-3911(\(for)X
-576 4110(commands)N
-945(that)X
-1087(can)X
-1221(change)X
-1471(the)X
-1591(current)X
-1841(cursor)X
-2064(position\),)X
-2390(speci\256es)X
-2688(if)X
-2759(the)X
-2879(cursor)X
-3101(is)X
-3175(set)X
-3285(to)X
-3368(a)X
-3425(speci\256c)X
-3691(location)X
-3970(in)X
-576 4200(the)N
-705(line,)X
-876(or)X
-974(if)X
-1054(it)X
-1129(is)X
-1213(moved)X
-1462(to)X
-1555(the)X
-1685(``most)X
-1926(attractive)X
-2257(cursor)X
-2490(position''.)X
-2873(The)X
-3030(latter)X
-3227(means)X
-3464(that)X
-3616(the)X
-3746(cursor)X
-3979(is)X
-576 4290(moved)N
-825(to)X
-918(the)X
-1047(cursor)X
-1279(position)X
-1567(that)X
-1717(is)X
-1800(vertically)X
-2133(as)X
-2230(close)X
-2425(as)X
-2522(possible)X
-2814(to)X
-2906(the)X
-3034(current)X
-3292(cursor)X
-3523(position.)X
-3850(If)X
-3934(the)X
-576 4380(current)N
-826(line)X
-968(is)X
-1043(shorter)X
-1288(than)X
-1448(the)X
-1568(cursor)X
-1791(position)X
-3 f
-2070(vi)X
-1 f
-2154(would)X
-2376(select,)X
-2601(the)X
-2722(cursor)X
-2946(is)X
-3022(positioned)X
-3378(on)X
-3481(the)X
-3602(last)X
-3736(character)X
-576 4470(in)N
-666(the)X
-792(line.)X
-980(\(If)X
-1089(the)X
-1215(line)X
-1363(is)X
-1444(empty,)X
-1692(the)X
-1818(cursor)X
-2047(is)X
-2128(positioned)X
-2489(on)X
-2596(the)X
-2721(\256rst)X
-2872(column)X
-3139(of)X
-3233(the)X
-3358(line.\))X
-3572(If)X
-3653(a)X
-3716(command)X
-576 4560(moves)N
-810(the)X
-933(cursor)X
-1159(to)X
-1246(the)X
-1369(most)X
-1549(attractive)X
-1873(position,)X
-2175(it)X
-2245(does)X
-2418(not)X
-2546(alter)X
-2715(the)X
-2839(current)X
-3093(cursor)X
-3320(position,)X
-3623(and)X
-3765(a)X
-3827(subse-)X
-576 4650(quent)N
-775(movement)X
-1134(will)X
-1279(again)X
-1474(attempt)X
-1735(to)X
-1818(move)X
-2017(the)X
-2136(cursor)X
-2358(to)X
-2441(that)X
-2581(position.)X
-2898(Therefore,)X
-3256(although)X
-3556(a)X
-3612(movement)X
-3970(to)X
-576 4740(a)N
-640(line)X
-788(shorter)X
-1039(than)X
-1205(the)X
-1331(currently)X
-1649(most)X
-1832(attractive)X
-2159(position)X
-2444(will)X
-2596(cause)X
-2803(the)X
-2929(cursor)X
-3158(to)X
-3248(move)X
-3454(to)X
-3544(the)X
-3671(end)X
-3816(of)X
-3912(that)X
-576 4830(line,)N
-737(a)X
-794(subsequent)X
-1171(movement)X
-1530(to)X
-1613(a)X
-1670(longer)X
-1896(line)X
-2037(will)X
-2182(cause)X
-2382(the)X
-2501(cursor)X
-2723(to)X
-2806(move)X
-3005(back)X
-3178(to)X
-3260(the)X
-3378(most)X
-3553(attractive)X
-3872(posi-)X
-576 4920(tion.)N
-776 5043(In)N
-864(addition,)X
-1167(the)X
-3 f
-1286($)X
-1 f
-1347(command)X
-1684(makes)X
-1910(the)X
-2029(end)X
-2166(of)X
-2254(each)X
-2423(line)X
-2564(the)X
-2684(most)X
-2861(attractive)X
-3182(cursor)X
-3405(position)X
-3684(rather)X
-3894(than)X
-576 5133(a)N
-632(speci\256c)X
-897(column.)X
-776 5256(Each)N
-3 f
-958(vi)X
-1 f
-1042(command)X
-1380(described)X
-1710(below)X
-1928(notes)X
-2119(where)X
-2338(the)X
-2458(cursor)X
-2681(ends)X
-2850(up)X
-2952(after)X
-3122(it)X
-3188(is)X
-3263(executed.)X
-3611(This)X
-3775(position)X
-576 5346(is)N
-653(described)X
-985(in)X
-1071(terms)X
-1273(of)X
-1364(characters)X
-1715(on)X
-1819(the)X
-1940(line,)X
-2103(i.e.)X
-2244(``the)X
-2419(previous)X
-2718 0.3409(character'',)AX
-3111(or,)X
-3221(``the)X
-3396(last)X
-3530(character)X
-3849(in)X
-3934(the)X
-576 5436(line''.)N
-810(This)X
-972(is)X
-1045(to)X
-1127(avoid)X
-1325(needing)X
-1599(to)X
-1681(continually)X
-2061(refer)X
-2234(to)X
-2316(on)X
-2416(what)X
-2592(part)X
-2737(of)X
-2824(the)X
-2942(character)X
-3258(the)X
-3376(cursor)X
-3597(rests.)X
-776 5559(The)N
-921(following)X
-1252(words)X
-1468(have)X
-1640(special)X
-1883(meaning)X
-2179(for)X
-3 f
-2293(vi)X
-1 f
-2375(commands.)X
-
-10 p
-%%Page: 10 9
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-10)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-576 762(previous)N
-889(context)X
-1 f
-776 852(The)N
-927(position)X
-1210(of)X
-1303(the)X
-1427(cursor)X
-1654(before)X
-1886(the)X
-2010(command)X
-2352(which)X
-2574(caused)X
-2819(the)X
-2944(last)X
-3082(absolute)X
-3376(movement)X
-3741(was)X
-3893(exe-)X
-776 942(cuted.)N
-1012(Each)X
-3 f
-1195(vi)X
-1 f
-1279(command)X
-1617(described)X
-1947(in)X
-2031(the)X
-2151(next)X
-2311(section)X
-2559(that)X
-2700(is)X
-2774(considered)X
-3143(an)X
-3240(absolute)X
-3528(movement)X
-3887(is)X
-3961(so)X
-776 1032(noted.)N
-1014(In)X
-1101(addition,)X
-1403(specifying)X
-2 f
-1757(any)X
-1 f
-1893(address)X
-2154(to)X
-2236(an)X
-3 f
-2332(ex)X
-1 f
-2428(command)X
-2764(is)X
-2837(considered)X
-3205(an)X
-3301(absolute)X
-3588(movement.)X
-3 f
-576 1212(motion)N
-1 f
-776 1302(A)N
-863(second)X
-3 f
-1115(vi)X
-1 f
-1206(command)X
-1551(can)X
-1693(be)X
-1799(used)X
-1976(as)X
-2073(an)X
-2179(optional)X
-2471(trailing)X
-2732(argument)X
-3065(to)X
-3157(the)X
-3 f
-3285(vi)X
-3377(!)X
-1 f
-3404(,)X
-3 f
-3454(<)X
-1 f
-3500(,)X
-3 f
-3550(>)X
-1 f
-3596(,)X
-3 f
-3646(c)X
-1 f
-3682(,)X
-3 f
-3732(d)X
-1 f
-3776(,)X
-3 f
-3826(y)X
-1 f
-(,)S
-3916(and)X
-776 1392(\(depending)N
-1158(on)X
-1259(the)X
-3 f
-1378(tildeop)X
-1 f
-1633(option\))X
-3 f
-1884(\304)X
-1 f
-1931(commands.)X
-2338(This)X
-2500(command)X
-2836(indicates)X
-3141(the)X
-3259(end)X
-3395(of)X
-3482(the)X
-3600(region)X
-3825(of)X
-3912(text)X
-776 1482(that's)N
-993(affected)X
-1292(by)X
-1411(the)X
-1548(command.)X
-1943(The)X
-2107(motion)X
-2372(command)X
-2727(may)X
-2904(be)X
-3019(either)X
-3242(the)X
-3380(command)X
-3736(character)X
-776 1572(repeated)N
-1070(\(in)X
-1180(which)X
-1397(case)X
-1557(it)X
-1622(means)X
-1848(the)X
-1967(current)X
-2216(line\))X
-2384(or)X
-2472(a)X
-2528(cursor)X
-2749(movement)X
-3107(command.)X
-3483(In)X
-3570(the)X
-3688(latter)X
-3873(case,)X
-776 1662(the)N
-894(region)X
-1119(affected)X
-1399(by)X
-1499(the)X
-1617(command)X
-1953(is)X
-2026(from)X
-2202(the)X
-2320(starting)X
-2581(or)X
-2669(stopping)X
-2965(cursor)X
-3187(position)X
-3465(which)X
-3682(comes)X
-3908(\256rst)X
-776 1752(in)N
-859(the)X
-978(\256le,)X
-1120(to)X
-1202(immediately)X
-1622(before)X
-1848(the)X
-1966(starting)X
-2226(or)X
-2313(stopping)X
-2608(cursor)X
-2829(position)X
-3106(which)X
-3322(comes)X
-3547(later)X
-3710(in)X
-3792(the)X
-3910(\256le.)X
-776 1842(Commands)N
-1166(that)X
-1313(operate)X
-1577(on)X
-1684(lines)X
-1862(instead)X
-2116(of)X
-2210(using)X
-2410(beginning)X
-2757(and)X
-2900(ending)X
-3145(cursor)X
-3373(positions)X
-3688(operate)X
-3952(on)X
-776 1932(all)N
-880(of)X
-971(the)X
-1093(lines)X
-1268(that)X
-1412(are)X
-1535(wholly)X
-1781(or)X
-1872(partially)X
-2163(in)X
-2248(the)X
-2369(region.)X
-2637(In)X
-2727(addition,)X
-3032(some)X
-3224(other)X
-3412(commands)X
-3782(become)X
-776 2022(line)N
-922(oriented)X
-1211(depending)X
-1571(on)X
-1677(where)X
-1900(in)X
-1988(the)X
-2112(text)X
-2258(they)X
-2422(are)X
-2548(used.)X
-2762(The)X
-2914(command)X
-3257(descriptions)X
-3671(below)X
-3894(note)X
-776 2112(these)N
-961(special)X
-1204(cases.)X
-776 2292(The)N
-921(following)X
-1252(commands)X
-1619(may)X
-1777(all)X
-1877(be)X
-1973(used)X
-2140(as)X
-2227(motion)X
-2473(components)X
-2880(for)X
-3 f
-2994(vi)X
-1 f
-3076(commands:)X
-7 f
-776 2505(<control-A>)N
-1472(<control-H>)X
-2120(<control-J>)X
-2768(<control-M>)X
-776 2595(<control-N>)N
-1472(<control-P>)X
-2312(<space>)X
-3248($)X
-1256 2685(%)N
-1424('<character>)X
-2600(\()X
-3248(\))X
-1256 2775(+)N
-1952(,)X
-2600(-)X
-3248(/)X
-1256 2865(0)N
-1952(;)X
-2600(?)X
-3248(B)X
-1256 2955(E)N
-1952(F)X
-2600(G)X
-3248(H)X
-1256 3045(L)N
-1952(M)X
-2600(N)X
-3248(T)X
-1256 3135(W)N
-1904([[)X
-2552(]])X
-3248(\303)X
-1256 3225(_)N
-1424(`<character>)X
-2600(b)X
-3248(e)X
-1256 3315(f)N
-1952(h)X
-2600(j)X
-3248(k)X
-1256 3405(l)N
-1952(n)X
-2600(t)X
-3248(w)X
-1256 3495({)N
-1952(|)X
-2600(})X
-1 f
-776 3708(The)N
-923(optional)X
-1207(count)X
-1407(pre\256x)X
-1617(available)X
-1930(for)X
-2047(some)X
-2239(of)X
-2329(the)X
-3 f
-2450(vi)X
-1 f
-2535(commands)X
-2905(that)X
-3048(take)X
-3205(motion)X
-3454(commands,)X
-3844(or)X
-3934(the)X
-776 3798(count)N
-975(pre\256x)X
-1183(available)X
-1494(for)X
-1609(the)X
-3 f
-1728(vi)X
-1 f
-1811(commands)X
-2179(that)X
-2320(are)X
-2439(used)X
-2606(as)X
-2693(motion)X
-2939(components,)X
-3366(may)X
-3524(be)X
-3620(included)X
-3916(and)X
-776 3888(is)N
-2 f
-850(always)X
-1 f
-1093(considered)X
-1463(part)X
-1610(of)X
-1699(the)X
-1819(motion)X
-2067(argument.)X
-2432(For)X
-2565(example,)X
-2879(the)X
-2999(commands)X
-3368(``)X
-7 f
-3422(c2w)X
-1 f
-('')S
-3642(and)X
-3780(``)X
-7 f
-3834(2cw)X
-1 f
-('')S
-776 3978(are)N
-903(equivalent,)X
-1285(and)X
-1429(the)X
-1555(region)X
-1788(affected)X
-2076(by)X
-2184(the)X
-3 f
-2310(c)X
-1 f
-2374(command)X
-2718(is)X
-2799(two)X
-2947(words)X
-3171(of)X
-3266(text.)X
-3454(In)X
-3549(addition,)X
-3858(if)X
-3934(the)X
-776 4068(optional)N
-1066(count)X
-1272(pre\256x)X
-1487(is)X
-1568(speci\256ed)X
-1881(for)X
-2003(both)X
-2173(the)X
-3 f
-2299(vi)X
-1 f
-2389(command)X
-2733(and)X
-2877(its)X
-2980(motion)X
-3234(component,)X
-3639(the)X
-3766(effect)X
-3979(is)X
-776 4158(multiplicative)N
-1246(and)X
-1388(is)X
-1467(considered)X
-1841(part)X
-1992(of)X
-2085(the)X
-2209(motion)X
-2461(argument.)X
-2830(For)X
-2967(example,)X
-3285(the)X
-3408(commands)X
-3780(``)X
-7 f
-3834(4cw)X
-1 f
-('')S
-776 4248(and)N
-912(``)X
-7 f
-966(2c2w)X
-1 f
-('')S
-1232(are)X
-1351(equivalent,)X
-1725(and)X
-1861(the)X
-1979(region)X
-2204(affected)X
-2484(by)X
-2584(the)X
-3 f
-2702(c)X
-1 f
-2758(command)X
-3094(is)X
-3167(four)X
-3321(words)X
-3537(of)X
-3624(text.)X
-3 f
-576 4428(count)N
-1 f
-776 4518(A)N
-859(positive)X
-1137(number)X
-1407(used)X
-1579(as)X
-1671(an)X
-1772(optional)X
-2059(argument)X
-2387(to)X
-2474(most)X
-2654(commands,)X
-3046(either)X
-3254(to)X
-3341(give)X
-3504(a)X
-3566(size)X
-3717(or)X
-3810(a)X
-3872(posi-)X
-776 4608(tion)N
-930(\(for)X
-1081(display)X
-1342(or)X
-1439(movement)X
-1807(commands\),)X
-2231(or)X
-2328(as)X
-2425(a)X
-2491(repeat)X
-2718(count)X
-2926(\(for)X
-3077(commands)X
-3454(that)X
-3604(modify)X
-3865(text\).)X
-776 4698(The)N
-932(count)X
-1141(argument)X
-1475(is)X
-1559(always)X
-1813(optional)X
-2106(and)X
-2254(defaults)X
-2540(to)X
-2634(1)X
-2706(unless)X
-2938(otherwise)X
-3282(noted)X
-3492(in)X
-3586(the)X
-3716(command)X
-776 4788(description.)N
-776 4968(When)N
-995(a)X
-3 f
-1059(vi)X
-1 f
-1149(command)X
-1493(synopsis)X
-1796(shows)X
-2024(both)X
-2194(a)X
-7 f
-2258([buffer])X
-1 f
-2670(and)X
-7 f
-2814([count])X
-1 f
-(,)S
-3198(they)X
-3364(may)X
-3530(be)X
-3634(presented)X
-3970(in)X
-776 5058(any)N
-912(order.)X
-3 f
-576 5238(bigword)N
-1 f
-776 5328(A)N
-854(set)X
-963(of)X
-1050(non-whitespace)X
-1575(characters)X
-1923(preceded)X
-2235(and)X
-2372(followed)X
-2678(by)X
-2779(whitespace)X
-3157(characters)X
-3505(or)X
-3593(the)X
-3712(beginning)X
-776 5418(or)N
-863(end)X
-999(of)X
-1086(the)X
-1204(\256le)X
-1326(or)X
-1413(line.)X
-776 5598(Groups)N
-1040(of)X
-1135(empty)X
-1363(lines)X
-1542(\(or)X
-1664(lines)X
-1843(containing)X
-2209(only)X
-2379(whitespace)X
-2764 0.3250(characters\))AX
-3146(are)X
-3274(treated)X
-3522(as)X
-3618(a)X
-3683(single)X
-3903(big-)X
-776 5688(word.)N
-
-11 p
-%%Page: 11 10
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-11)X
-576 762(word)N
-1 f
-776 852(Generally,)N
-1133(in)X
-1215(languages)X
-1556(where)X
-1773(it)X
-1837(is)X
-1910(applicable,)X
-3 f
-2280(vi)X
-1 f
-2362(recognizes)X
-2726(two)X
-2866(kinds)X
-3060(of)X
-3148(words.)X
-3405(First,)X
-3592(a)X
-3649(sequence)X
-3965(of)X
-776 942(letters,)N
-1027(digits)X
-1239(and)X
-1390(underscores,)X
-1829(delimited)X
-2166(at)X
-2259(both)X
-2435(ends)X
-2616(by:)X
-2752(characters)X
-3113(other)X
-3312(than)X
-3484(letters,)X
-3734(digits,)X
-3965(or)X
-776 1032(underscores;)N
-1206(the)X
-1328(beginning)X
-1672(or)X
-1763(end)X
-1903(of)X
-1994(a)X
-2054(line;)X
-2220(the)X
-2343(beginning)X
-2688(or)X
-2780(end)X
-2921(of)X
-3013(the)X
-3136(\256le.)X
-3303(Second,)X
-3584(a)X
-3645(sequence)X
-3965(of)X
-776 1122(characters)N
-1126(other)X
-1313(than)X
-1473(letters,)X
-1711(digits,)X
-1930(underscores,)X
-2356(or)X
-2445(whitespace)X
-2824(characters,)X
-3193(delimited)X
-3517(at)X
-3597(both)X
-3761(ends)X
-3930(by:)X
-776 1212(a)N
-838(letter,)X
-1049(digit,)X
-1241(underscore,)X
-1640(or)X
-1733(whitespace)X
-2116(character;)X
-2460(the)X
-2584(beginning)X
-2930(or)X
-3024(end)X
-3167(of)X
-3261(a)X
-3324(line;)X
-3493(the)X
-3618(beginning)X
-3965(or)X
-776 1302(end)N
-912(of)X
-999(the)X
-1117(\256le.)X
-776 1482(Groups)N
-1032(of)X
-1119(empty)X
-1339(lines)X
-1510(\(or)X
-1624(lines)X
-1795(containing)X
-2153(only)X
-2315(whitespace)X
-2692 0.3250(characters\))AX
-3066(are)X
-3185(treated)X
-3424(as)X
-3511(a)X
-3567(single)X
-3778(word.)X
-3 f
-576 1662(paragraph)N
-1 f
-776 1752(An)N
-898(area)X
-1057(of)X
-1148(text)X
-1292(that)X
-1436(begins)X
-1670(with)X
-1837(either)X
-2045(the)X
-2168(beginning)X
-2513(of)X
-2605(a)X
-2666(\256le,)X
-2813(an)X
-2914(empty)X
-3139(line,)X
-3304(or)X
-3396(a)X
-3457(section)X
-3709(boundary,)X
-776 1842(and)N
-912(continues)X
-1239(until)X
-1405(either)X
-1608(an)X
-1704(empty)X
-1924(line,)X
-2084(section)X
-2331(boundary,)X
-2674(or)X
-2761(the)X
-2879(end)X
-3015(of)X
-3102(the)X
-3220(\256le.)X
-776 2022(Groups)N
-1037(of)X
-1129(empty)X
-1355(lines)X
-1532(\(or)X
-1652(lines)X
-1829(containing)X
-2193(only)X
-2361(whitespace)X
-2744 0.3250(characters\))AX
-3124(are)X
-3249(treated)X
-3494(as)X
-3587(a)X
-3649(single)X
-3866(para-)X
-776 2112(graph.)N
-776 2292(Additional)N
-1138(paragraph)X
-1480(boundaries)X
-1852(can)X
-1984(be)X
-2080(de\256ned)X
-2336(using)X
-2529(the)X
-3 f
-2647(paragraph)X
-1 f
-3031(option.)X
-3 f
-576 2472(section)N
-1 f
-776 2562(An)N
-903(area)X
-1067(of)X
-1163(text)X
-1312(that)X
-1461(starts)X
-1659(with)X
-1830(the)X
-1957(beginning)X
-2306(of)X
-2402(the)X
-2529(\256le)X
-2660(or)X
-2756(a)X
-2822(line)X
-2972(whose)X
-3207(\256rst)X
-3361(character)X
-3687(is)X
-3770(an)X
-3876(open)X
-776 2652(brace)N
-971(\(``)X
-7 f
-1052({)X
-1 f
-(''\))S
-1201(and)X
-1337(continues)X
-1664(until)X
-1830(the)X
-1948(next)X
-2106(section)X
-2353(or)X
-2440(the)X
-2558(end)X
-2694(of)X
-2781(the)X
-2899(\256le.)X
-776 2832(Additional)N
-1138(section)X
-1385(boundaries)X
-1757(can)X
-1889(be)X
-1985(de\256ned)X
-2241(using)X
-2434(the)X
-3 f
-2552(sections)X
-1 f
-2839(option.)X
-3 f
-576 3012(sentence)N
-1 f
-776 3102(An)N
-895(area)X
-1051(of)X
-1139(text)X
-1280(that)X
-1421(begins)X
-1651(with)X
-1814(either)X
-2018(the)X
-2137(beginning)X
-2478(of)X
-2566(the)X
-2685(\256le)X
-2808(or)X
-2896(the)X
-3015(\256rst)X
-3160(nonblank)X
-3479(character)X
-3796(follow-)X
-776 3192(ing)N
-901(the)X
-1022(previous)X
-1321(sentence,)X
-1641(paragraph,)X
-2006(or)X
-2096(section)X
-2346(boundary)X
-2672(and)X
-2811(continues)X
-3141(until)X
-3310(the)X
-3431(end)X
-3570(of)X
-3660(the)X
-3781(\256le)X
-3906(or)X
-3996(a)X
-776 3282(or)N
-866(a)X
-926(period)X
-1155(\(``)X
-7 f
-1236(.)X
-1 f
-(''\))S
-1409(exclamation)X
-1825(point)X
-2013(\(``)X
-7 f
-2094(!)X
-1 f
-(''\))S
-2267(or)X
-2358(question)X
-2653(mark)X
-2842(\(``)X
-7 f
-2923(?)X
-1 f
-(''\))S
-3096(character,)X
-3436(followed)X
-3745(by)X
-3849(either)X
-776 3372(an)N
-882(end-of-line)X
-1269(or)X
-1366(two)X
-1516(whitespace)X
-1903(characters.)X
-2300(Any)X
-2468(number)X
-2743(of)X
-2840(closing)X
-3101(parentheses)X
-3505(\(``)X
-7 f
-3586(\))X
-1 f
-(''\),)S
-3764(brackets)X
-776 3462(\(``)N
-7 f
-857(])X
-1 f
-(''\))S
-1007(or)X
-1095(double-quote)X
-1540(\(``)X
-7 f
-1621(")X
-1 f
-(''\))S
-1772(characters)X
-2121(can)X
-2255(appear)X
-2492(between)X
-2782(the)X
-2902(period,)X
-3149(exclamation)X
-3563(point,)X
-3769(or)X
-3858(ques-)X
-776 3552(tion)N
-920(mark)X
-1105(and)X
-1241(the)X
-1359(whitespace)X
-1736(characters)X
-2083(or)X
-2170(end-of-line.)X
-776 3732(Groups)N
-1040(of)X
-1135(empty)X
-1363(lines)X
-1542(\(or)X
-1664(lines)X
-1843(containing)X
-2209(only)X
-2379(whitespace)X
-2764 0.3250(characters\))AX
-3146(are)X
-3273(treated)X
-3520(as)X
-3615(a)X
-3679(single)X
-3898(sen-)X
-776 3822(tence.)N
-3 f
-576 4008(10.)N
-716(Vi)X
-816(Commands)X
-1 f
-776 4131(The)N
-926(following)X
-1262(section)X
-1514(describes)X
-1838(the)X
-1961(commands)X
-2333(available)X
-2649(in)X
-2737(the)X
-2861(command)X
-3203(mode)X
-3407(of)X
-3500(the)X
-3 f
-3624(vi)X
-1 f
-3712(editor.)X
-3965(In)X
-576 4221(each)N
-745(entry)X
-931(below,)X
-1168(the)X
-1287(tag)X
-1406(line)X
-1547(is)X
-1621(a)X
-1678(usage)X
-1882(synopsis)X
-2178(for)X
-2293(the)X
-2412(command)X
-2749(character.)X
-3106(In)X
-3194(addition,)X
-3496(the)X
-3614(\256nal)X
-3776(line)X
-3916(and)X
-576 4311(column)N
-836(the)X
-954(cursor)X
-1175(rests)X
-1342(upon,)X
-1542(and)X
-1678(any)X
-1814(options)X
-2069(which)X
-2285(affect)X
-2489(the)X
-2607(command)X
-2943(are)X
-3062(noted.)X
-3 f
-576 4491([count])N
-841(<control-A>)X
-1 f
-776 4581(Search)N
-1034(forward)X
-7 f
-1328(count)X
-1 f
-1607(times)X
-1819(for)X
-1952(the)X
-2089(current)X
-2356(word.)X
-2600(The)X
-2764(current)X
-3031(word)X
-3236(begins)X
-3485(at)X
-3583(the)X
-3721(\256rst)X
-3885(non-)X
-776 4671(whitespace)N
-1164(character)X
-1491(on)X
-1602(or)X
-1699(after)X
-1877(the)X
-2005(current)X
-2263(cursor)X
-2494(position,)X
-2801(and)X
-2947(extends)X
-3222(up)X
-3332(to)X
-3424(the)X
-3552(next)X
-3720(non-word)X
-776 4761(character)N
-1095(or)X
-1185(the)X
-1306(end)X
-1445(of)X
-1535(the)X
-1656(line.)X
-1839(The)X
-1987(search)X
-2216(is)X
-2292(literal,)X
-2522(i.e.)X
-2643(no)X
-2746(characters)X
-3096(in)X
-3182(the)X
-3304(word)X
-3493(have)X
-3669(any)X
-3809(special)X
-776 4851(meaning)N
-1076(in)X
-1162(terms)X
-1364(of)X
-1455(Regular)X
-1733(Expressions.)X
-2184(It)X
-2257(is)X
-2334(an)X
-2434(error)X
-2615(if)X
-2687(no)X
-2790(matching)X
-3111(pattern)X
-3357(is)X
-3433(found)X
-3643(between)X
-3934(the)X
-776 4941(starting)N
-1036(position)X
-1313(and)X
-1449(the)X
-1567(end)X
-1703(of)X
-1790(the)X
-1908(\256le.)X
-776 5121(The)N
-3 f
-926(<control-A>)X
-1 f
-1373(command)X
-1714(is)X
-1792(an)X
-1893(absolute)X
-2185(movement.)X
-2588(The)X
-3 f
-2738(<control-A>)X
-1 f
-3185(command)X
-3526(may)X
-3690(be)X
-3792(used)X
-3965(as)X
-776 5211(the)N
-896(motion)X
-1144(component)X
-1522(of)X
-1611(other)X
-3 f
-1798(vi)X
-1 f
-1881(commands,)X
-2269(in)X
-2352(which)X
-2569(case)X
-2729(any)X
-2866(text)X
-3007(copied)X
-3242(into)X
-3387(a)X
-3444(buffer)X
-3662(is)X
-3736(character)X
-776 5301(oriented.)N
-776 5481(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(where)X
-1815(the)X
-1933(word)X
-2118(is)X
-2191(found.)X
-776 5571(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(of)X
-2005(the)X
-2123(word.)X
-776 5661(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(extended)X
-1 f
-1963(,)X
-3 f
-2003(ignorecase)X
-1 f
-2384(and)X
-3 f
-2520(wrapscan)X
-1 f
-2869(options.)X
-
-12 p
-%%Page: 12 11
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-12)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-576 762([count])N
-841(<control-B>)X
-1 f
-776 852(Page)N
-965(backward)X
-7 f
-1311(count)X
-1 f
-1585(screens.)X
-1896(Two)X
-2077(lines)X
-2262(of)X
-2363(overlap)X
-2638(are)X
-2771(maintained)X
-3161(by)X
-3275(displaying)X
-3642(the)X
-3774(window)X
-776 942(starting)N
-1042(at)X
-1126(line)X
-7 f
-1272(\(top_line)X
-1758(-)X
-1860(count)X
-2154(*)X
-2256(window_size\))X
-2886(+)X
-2988(2)X
-1 f
-(,)S
-3081(where)X
-7 f
-3303(window_size)X
-1 f
-3856(is)X
-3934(the)X
-776 1032(value)N
-973(of)X
-1063(the)X
-3 f
-1184(window)X
-1 f
-1473(option.)X
-1741(\(In)X
-1859(the)X
-1981(case)X
-2144(of)X
-2235(split)X
-2396(screens,)X
-2677(this)X
-2816(size)X
-2965(is)X
-3042(corrected)X
-3366(to)X
-3452(the)X
-3574(current)X
-3826(screen)X
-776 1122(size.\))N
-988(This)X
-1150(is)X
-1223(an)X
-1319(error)X
-1496(if)X
-1565(the)X
-1683(movement)X
-2041(is)X
-2114(past)X
-2263(the)X
-2381(beginning)X
-2721(of)X
-2808(the)X
-2926(\256le.)X
-776 1302(The)N
-3 f
-921(<control-B>)X
-1 f
-1358(command)X
-1694(is)X
-1767(an)X
-1863(absolute)X
-2150(movement.)X
-776 1482(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(of)X
-1816(text)X
-1956(displayed)X
-2283(on)X
-2383(the)X
-2501(screen.)X
-776 1572(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2441(line.)X
-776 1662(Options:)N
-1136(None.)X
-3 f
-576 1842([count])N
-841(<control-D>)X
-1 f
-776 1932(Scroll)N
-990(forward)X
-7 f
-1268(count)X
-1 f
-1531(lines.)X
-1745(If)X
-7 f
-1822(count)X
-1 f
-2085(is)X
-2161(not)X
-2286(speci\256ed,)X
-2614(scroll)X
-2815(forward)X
-3093(the)X
-3214(number)X
-3482(of)X
-3572(lines)X
-3747(speci\256ed)X
-776 2022(by)N
-881(the)X
-1004(last)X
-3 f
-1140(<control-D>)X
-1 f
-1587(or)X
-3 f
-1679(<control-U>)X
-1 f
-2126(command.)X
-2507(If)X
-2586(this)X
-2726(is)X
-2803(the)X
-2925(\256rst)X
-3 f
-3073(<control-D>)X
-1 f
-3519(or)X
-3 f
-3610(<control-U>)X
-1 f
-776 2112(command,)N
-1141(scroll)X
-1348(forward)X
-1632(half)X
-1786(the)X
-1913(number)X
-2188(of)X
-2285(lines)X
-2466(in)X
-2558(the)X
-2686(screen.)X
-2962(\(In)X
-3086(the)X
-3214(case)X
-3383(of)X
-3480(split)X
-3647(screens,)X
-3934(the)X
-776 2202(default)N
-1026(scrolling)X
-1333(distance)X
-1623(is)X
-1703(corrected)X
-2029(to)X
-2117(half)X
-2268(the)X
-2392(current)X
-2646(screen)X
-2878(size.\))X
-3096(This)X
-3264(is)X
-3343(an)X
-3445(error)X
-3628(if)X
-3703(the)X
-3827(move-)X
-776 2292(ment)N
-956(is)X
-1029(past)X
-1178(the)X
-1296(end)X
-1432(of)X
-1519(the)X
-1637(\256le.)X
-776 2472(The)N
-3 f
-921(<control-D>)X
-1 f
-1363(command)X
-1699(is)X
-1772(an)X
-1868(absolute)X
-2155(movement.)X
-776 2652(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(plus)X
-1999(the)X
-2117(number)X
-2382(of)X
-2469(lines)X
-2640(scrolled.)X
-776 2742(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2441(line.)X
-776 2832(Options:)N
-1136(None.)X
-3 f
-576 3012([count])N
-841(<control-E>)X
-1 f
-776 3102(Scroll)N
-987(forward)X
-7 f
-1262(count)X
-1 f
-1522(lines,)X
-1713(leaving)X
-1969(the)X
-2087(cursor)X
-2308(on)X
-2408(the)X
-2526(current)X
-2774(line)X
-2914(and)X
-3050(column,)X
-3330(if)X
-3399(possible.)X
-3721(This)X
-3883(is)X
-3956(an)X
-776 3192(error)N
-953(if)X
-1022(the)X
-1140(movement)X
-1498(is)X
-1571(past)X
-1720(the)X
-1838(end)X
-1974(of)X
-2061(the)X
-2179(\256le.)X
-776 3372(Line:)N
-1136(Unchanged)X
-1524(unless)X
-1747(the)X
-1868(current)X
-2119(line)X
-2262(scrolls)X
-2494(off)X
-2611(the)X
-2732(screen,)X
-2981(in)X
-3066(which)X
-3285(case)X
-3447(it)X
-3514(is)X
-3590(set)X
-3702(to)X
-3787(the)X
-3908(\256rst)X
-1136 3462(line)N
-1276(on)X
-1376(the)X
-1494(screen.)X
-776 3552(Column:)N
-1136(Unchanged)X
-1523(unless)X
-1744(the)X
-1863(current)X
-2112(line)X
-2253(scrolls)X
-2483(off)X
-2598(the)X
-2717(screen,)X
-2964(in)X
-3047(which)X
-3264(case)X
-3424(it)X
-3489(is)X
-3563(set)X
-3673(to)X
-3757(the)X
-3877(most)X
-1136 3642(attractive)N
-1455(cursor)X
-1676(position.)X
-776 3732(Options:)N
-1136(None.)X
-3 f
-576 3912([count])N
-841(<control-F>)X
-1 f
-776 4002(Page)N
-955(forward)X
-7 f
-1233(count)X
-1 f
-1496(screens.)X
-1797(Two)X
-1968(lines)X
-2143(of)X
-2234(overlap)X
-2499(are)X
-2622(maintained)X
-3002(by)X
-3106(displaying)X
-3463(the)X
-3585(window)X
-3867(start-)X
-776 4092(ing)N
-900(at)X
-980(line)X
-7 f
-1122(top_line)X
-1556(+)X
-1654(count)X
-1944(*)X
-2042(window_size)X
-2620(-)X
-2718(2)X
-1 f
-(,)S
-2808(where)X
-7 f
-3027(window_size)X
-1 f
-3577(is)X
-3651(the)X
-3770(value)X
-3965(of)X
-776 4182(the)N
-3 f
-903(window)X
-1 f
-1198(option.)X
-1471(\(In)X
-1594(the)X
-1721(case)X
-1889(of)X
-1985(split)X
-2151(screens,)X
-2437(this)X
-2581(size)X
-2735(is)X
-2817(corrected)X
-3146(to)X
-3238(the)X
-3366(current)X
-3624(screen)X
-3860(size.\))X
-776 4272(This)N
-938(is)X
-1011(an)X
-1107(error)X
-1284(if)X
-1353(the)X
-1471(movement)X
-1829(is)X
-1902(past)X
-2051(the)X
-2169(end)X
-2305(of)X
-2392(the)X
-2510(\256le.)X
-776 4452(The)N
-3 f
-921(<control-F>)X
-1 f
-1354(command)X
-1690(is)X
-1763(an)X
-1859(absolute)X
-2146(movement.)X
-776 4632(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(line)X
-1742(on)X
-1842(the)X
-1960(screen.)X
-776 4722(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2441(current)X
-2689(line.)X
-776 4812(Options:)N
-1136(None.)X
-3 f
-576 4992(<control-G>)N
-1 f
-776 5082(Display)N
-1055(the)X
-1183(\256le)X
-1315(information.)X
-1763(The)X
-1918(information)X
-2326(includes)X
-2624(the)X
-2753(current)X
-3012(pathname,)X
-3375(the)X
-3504(current)X
-3763(line,)X
-3934(the)X
-776 5172(number)N
-1043(of)X
-1132(total)X
-1296(lines)X
-1469(in)X
-1553(the)X
-1673(\256le,)X
-1817(the)X
-1937(current)X
-2187(line)X
-2329(as)X
-2418(a)X
-2476(percentage)X
-2847(of)X
-2936(the)X
-3056(total)X
-3220(lines)X
-3393(in)X
-3477(the)X
-3597(\256le,)X
-3741(if)X
-3811(the)X
-3930(\256le)X
-776 5262(has)N
-905(been)X
-1079(modi\256ed,)X
-1405(was)X
-1552(able)X
-1708(to)X
-1792(be)X
-1890(locked,)X
-2146(if)X
-2217(the)X
-2337(\256le's)X
-2519(name)X
-2715(has)X
-2844(been)X
-3018(changed,)X
-3328(and)X
-3466(if)X
-3537(the)X
-3658(edit)X
-3801(session)X
-776 5352(is)N
-849(read-only.)X
-776 5532(Line:)N
-1136(Unchanged.)X
-776 5622(Column:)N
-1136(Unchanged.)X
-776 5712(Options:)N
-1136(None.)X
-
-13 p
-%%Page: 13 12
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-13)X
-576 762(<control-H>)N
-576 852([count])N
-841(h)X
-1 f
-776 942(Move)N
-989(the)X
-1113(cursor)X
-1340(back)X
-7 f
-1518(count)X
-1 f
-1784(characters)X
-2137(in)X
-2225(the)X
-2349(current)X
-2603(line.)X
-2789(This)X
-2957(is)X
-3036(an)X
-3138(error)X
-3321(if)X
-3396(the)X
-3520(cursor)X
-3747(is)X
-3827(on)X
-3934(the)X
-776 1032(\256rst)N
-920(character)X
-1236(in)X
-1318(the)X
-1436(line.)X
-776 1212(The)N
-3 f
-923(<control-H>)X
-1 f
-1372(and)X
-3 f
-1511(h)X
-1 f
-1578(commands)X
-1948(may)X
-2109(be)X
-2208(used)X
-2378(as)X
-2468(the)X
-2589(motion)X
-2838(component)X
-3217(of)X
-3307(other)X
-3 f
-3495(vi)X
-1 f
-3580(commands,)X
-3970(in)X
-776 1302(which)N
-992(case)X
-1151(any)X
-1287(text)X
-1427(copied)X
-1661(into)X
-1805(a)X
-1861(buffer)X
-2078(is)X
-2151(character)X
-2467(oriented.)X
-776 1482(Line:)N
-1136(Unchanged.)X
-776 1572(Column:)N
-1136(Set)X
-1263(to)X
-1350(the)X
-7 f
-1473(current)X
-1862(-)X
-1963(count)X
-1 f
-2229(character,)X
-2571(or,)X
-2684(the)X
-2808(\256rst)X
-2958(character)X
-3280(in)X
-3368(the)X
-3492(line)X
-3638(if)X
-7 f
-3713(count)X
-1 f
-3979(is)X
-1136 1662(greater)N
-1380(than)X
-1538(or)X
-1625(equal)X
-1819(to)X
-1901(the)X
-2019(number)X
-2284(of)X
-2371(characters)X
-2718(in)X
-2800(the)X
-2918(line)X
-3058(before)X
-3284(the)X
-3402(cursor.)X
-776 1752(Options:)N
-1136(None.)X
-3 f
-576 1932([count])N
-841(<control-J>)X
-576 2022([count])N
-841(<control-N>)X
-576 2112([count])N
-841(j)X
-1 f
-776 2202(Move)N
-993(the)X
-1121(cursor)X
-1352(down)X
-7 f
-1560(count)X
-1 f
-1830(lines)X
-2011(without)X
-2285(changing)X
-2609(the)X
-2737(current)X
-2995(column.)X
-3305(This)X
-3477(is)X
-3560(an)X
-3666(error)X
-3854(if)X
-3934(the)X
-776 2292(movement)N
-1134(is)X
-1207(past)X
-1356(the)X
-1474(end)X
-1610(of)X
-1697(the)X
-1815(\256le.)X
-776 2472(The)N
-3 f
-927(<control-J>)X
-1 f
-1331(,)X
-3 f
-1377(<control-N>)X
-1 f
-1825(and)X
-3 f
-1967(j)X
-1 f
-2020(commands)X
-2393(may)X
-2557(be)X
-2659(used)X
-2832(as)X
-2925(the)X
-3049(motion)X
-3301(component)X
-3684(of)X
-3778(other)X
-3 f
-3970(vi)X
-1 f
-776 2562(commands,)N
-1163(in)X
-1245(which)X
-1461(case)X
-1620(any)X
-1756(text)X
-1896(copied)X
-2130(into)X
-2274(a)X
-2330(buffer)X
-2547(is)X
-2620(line)X
-2760(oriented.)X
-776 2742(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(plus)X
-7 f
-1999(count)X
-1 f
-(.)S
-776 2832(Column:)N
-1136(The)X
-1281(most)X
-1456(attractive)X
-1775(cursor)X
-1996(position.)X
-776 2922(Options:)N
-1136(None.)X
-3 f
-576 3102(<control-L>)N
-576 3192(<control-R>)N
-1 f
-776 3282(Repaint)N
-1045(the)X
-1163(screen.)X
-776 3462(Line:)N
-1136(Unchanged.)X
-776 3552(Column:)N
-1136(Unchanged.)X
-776 3642(Options:)N
-1136(None.)X
-3 f
-576 3822([count])N
-841(<control-M>)X
-576 3912([count])N
-841(+)X
-1 f
-776 4002(Move)N
-984(the)X
-1103(cursor)X
-1325(down)X
-7 f
-1524(count)X
-1 f
-1785(lines)X
-1957(to)X
-2040(the)X
-2159(\256rst)X
-2304(nonblank)X
-2623(character)X
-2940(of)X
-3028(that)X
-3169(line.)X
-3350(This)X
-3513(is)X
-3587(an)X
-3684(error)X
-3863(if)X
-3934(the)X
-776 4092(movement)N
-1134(is)X
-1207(past)X
-1356(the)X
-1474(end)X
-1610(of)X
-1697(the)X
-1815(\256le.)X
-776 4272(The)N
-3 f
-922(<control-M>)X
-1 f
-1384(and)X
-3 f
-1522(+)X
-1 f
-1590(commands)X
-1959(may)X
-2119(be)X
-2217(used)X
-2386(as)X
-2475(the)X
-2595(motion)X
-2843(component)X
-3221(of)X
-3310(other)X
-3 f
-3497(vi)X
-1 f
-3581(commands,)X
-3970(in)X
-776 4362(which)N
-992(case)X
-1151(any)X
-1287(text)X
-1427(copied)X
-1661(into)X
-1805(a)X
-1861(buffer)X
-2078(is)X
-2151(line)X
-2291(oriented.)X
-776 4542(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(plus)X
-7 f
-1999(count)X
-1 f
-(.)S
-776 4632(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 4722(Options:)N
-1136(None.)X
-3 f
-576 4902([count])N
-841(<control-P>)X
-576 4992([count])N
-841(k)X
-1 f
-776 5082(Move)N
-983(the)X
-1101(cursor)X
-1323(up)X
-7 f
-1424(count)X
-1 f
-1685(lines,)X
-1877(without)X
-2142(changing)X
-2457(the)X
-2576(current)X
-2825(column.)X
-3126(This)X
-3289(is)X
-3363(an)X
-3460(error)X
-3638(if)X
-3708(the)X
-3827(move-)X
-776 5172(ment)N
-956(is)X
-1029(past)X
-1178(the)X
-1296(beginning)X
-1636(of)X
-1723(the)X
-1841(\256le.)X
-776 5352(The)N
-3 f
-924(<control-P>)X
-1 f
-1360(and)X
-3 f
-1499(k)X
-1 f
-1566(commands)X
-1937(may)X
-2099(be)X
-2199(used)X
-2370(as)X
-2461(the)X
-2583(motion)X
-2833(component)X
-3213(of)X
-3304(other)X
-3 f
-3493(vi)X
-1 f
-3579(commands,)X
-3970(in)X
-776 5442(which)N
-992(case)X
-1151(any)X
-1287(text)X
-1427(copied)X
-1661(into)X
-1805(a)X
-1861(buffer)X
-2078(is)X
-2151(line)X
-2291(oriented.)X
-776 5622(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(minus)X
-2061(count.)X
-776 5712(Column:)N
-1136(The)X
-1281(most)X
-1456(attractive)X
-1775(cursor)X
-1996(position.)X
-
-14 p
-%%Page: 14 13
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-14)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(Options:)N
-1136(None.)X
-3 f
-576 942(<control-T>)N
-1 f
-776 1032(Return)N
-1014(to)X
-1096(the)X
-1214(most)X
-1389(recent)X
-1606(tag)X
-1724(context.)X
-2020(The)X
-3 f
-2165(<control-T>)X
-1 f
-2602(command)X
-2938(is)X
-3011(an)X
-3107(absolute)X
-3394(movement.)X
-776 1212(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(context)X
-1714(of)X
-1801(the)X
-1919(previous)X
-2215(tag)X
-2333(command.)X
-776 1302(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(context)X
-1714(of)X
-1801(the)X
-1919(previous)X
-2215(tag)X
-2333(command.)X
-776 1392(Options:)N
-1136(None.)X
-3 f
-576 1572(<control-U>)N
-1 f
-776 1662(Scroll)N
-1003(backward)X
-7 f
-1352(count)X
-1 f
-1628(lines.)X
-1856(If)X
-7 f
-1947(count)X
-1 f
-2224(is)X
-2314(not)X
-2453(speci\256ed,)X
-2795(scroll)X
-3010(backward)X
-3360(the)X
-3495(number)X
-3777(of)X
-3881(lines)X
-776 1752(speci\256ed)N
-1096(by)X
-1211(the)X
-1344(last)X
-3 f
-1490(<control-D>)X
-1 f
-1947(or)X
-3 f
-2049(<control-U>)X
-1 f
-2505(command.)X
-2895(If)X
-2983(this)X
-3132(is)X
-3219(the)X
-3351(\256rst)X
-3 f
-3509(<control-D>)X
-1 f
-3965(or)X
-3 f
-776 1842(<control-U>)N
-1 f
-1221(command,)X
-1580(scroll)X
-1781(backward)X
-2117(half)X
-2266(the)X
-2388(number)X
-2657(of)X
-2748(lines)X
-2923(in)X
-3009(the)X
-3131(screen.)X
-3401(\(In)X
-3519(the)X
-3641(case)X
-3804(of)X
-3895(split)X
-776 1932(screens,)N
-1057(the)X
-1179(default)X
-1426(scrolling)X
-1729(distance)X
-2015(is)X
-2091(corrected)X
-2414(to)X
-2499(half)X
-2647(the)X
-2768(current)X
-3019(screen)X
-3248(size.\))X
-3463(This)X
-3628(is)X
-3704(an)X
-3803(error)X
-3983(if)X
-776 2022(the)N
-894(movement)X
-1252(is)X
-1325(past)X
-1474(the)X
-1592(beginning)X
-1932(of)X
-2019(the)X
-2137(\256le.)X
-776 2202(The)N
-3 f
-921(<control-U>)X
-1 f
-1363(command)X
-1699(is)X
-1772(an)X
-1868(absolute)X
-2155(movement.)X
-776 2382(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(minus)X
-2061(the)X
-2179(amount)X
-2439(scrolled.)X
-776 2472(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 2562(Options:)N
-1136(None.)X
-3 f
-576 2742(<control-W>)N
-1 f
-776 2832(Switch)N
-1021(to)X
-1106(the)X
-1227(next)X
-1388(lower)X
-1594(screen)X
-1823(in)X
-1908(the)X
-2029(window,)X
-2330(or,)X
-2440(to)X
-2525(the)X
-2646(\256rst)X
-2793(screen)X
-3022(if)X
-3094(there)X
-3278(are)X
-3400(no)X
-3503(lower)X
-3709(screens)X
-3970(in)X
-776 2922(the)N
-894(window.)X
-776 3102(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(previous)X
-1754(cursor)X
-1975(position)X
-2252(in)X
-2334(the)X
-2452(window.)X
-776 3192(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(previous)X
-1754(cursor)X
-1975(position)X
-2252(in)X
-2334(the)X
-2452(window.)X
-776 3282(Options:)N
-1136(None.)X
-3 f
-576 3462(<control-Y>)N
-1 f
-776 3552(Scroll)N
-989(backward)X
-7 f
-1324(count)X
-1 f
-1586(lines,)X
-1779(leaving)X
-2037(the)X
-2157(current)X
-2407(line)X
-2550(and)X
-2689(column)X
-2952(as)X
-3042(is,)X
-3138(if)X
-3210(possible.)X
-3535(This)X
-3700(is)X
-3776(an)X
-3875(error)X
-776 3642(if)N
-845(the)X
-963(movement)X
-1321(is)X
-1394(past)X
-1543(the)X
-1661(beginning)X
-2001(of)X
-2088(the)X
-2206(\256le.)X
-776 3822(Line:)N
-1136(Unchanged)X
-1525(unless)X
-1748(the)X
-1869(current)X
-2120(line)X
-2263(scrolls)X
-2496(off)X
-2614(the)X
-2736(screen,)X
-2986(in)X
-3072(which)X
-3292(case)X
-3455(it)X
-3523(is)X
-3600(set)X
-3713(to)X
-3799(the)X
-3921(last)X
-1136 3912(line)N
-1276(of)X
-1363(text)X
-1503(displayed)X
-1830(on)X
-1930(the)X
-2048(screen.)X
-776 4002(Column:)N
-1136(Unchanged)X
-1536(unless)X
-1770(the)X
-1902(current)X
-2164(line)X
-2318(scrolls)X
-2561(off)X
-2689(the)X
-2821(screen,)X
-3081(in)X
-3177(which)X
-3407(case)X
-3580(it)X
-3658(is)X
-3745(the)X
-3877(most)X
-1136 4092(attractive)N
-1455(cursor)X
-1676(position.)X
-776 4182(Options:)N
-1136(None.)X
-3 f
-576 4362(<control-Z>)N
-1 f
-776 4452(Suspend)N
-1069(the)X
-1189(current)X
-1439(editor)X
-1648(session.)X
-1941(If)X
-2017(the)X
-2137(\256le)X
-2261(has)X
-2390(been)X
-2564(modi\256ed)X
-2870(since)X
-3057(it)X
-3124(was)X
-3272(last)X
-3406(completely)X
-3785(written,)X
-776 4542(and)N
-914(the)X
-3 f
-1034(autowrite)X
-1 f
-1386(option)X
-1612(is)X
-1687(set,)X
-1817(the)X
-1936(\256le)X
-2059(is)X
-2133(written)X
-2381(before)X
-2608(the)X
-2727(editor)X
-2935(session)X
-3187(is)X
-3261(suspended.)X
-3656(If)X
-3731(this)X
-3867(write)X
-776 4632(fails,)N
-954(the)X
-1072(editor)X
-1279(session)X
-1530(is)X
-1603(not)X
-1725(suspended.)X
-776 4812(Line:)N
-1136(Unchanged.)X
-776 4902(Column:)N
-1136(Unchanged.)X
-776 4992(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(autowrite)X
-1 f
-2006(option.)X
-3 f
-576 5172(<escape>)N
-1 f
-776 5262(Execute)N
-3 f
-1055(ex)X
-1 f
-1151(commands)X
-1518(or)X
-1605(cancel)X
-1831(partial)X
-2056(commands.)X
-2463(If)X
-2537(an)X
-3 f
-2633(ex)X
-1 f
-2729(command)X
-3065(is)X
-3138(being)X
-3336(entered)X
-3593(\(e.g.)X
-3 f
-3776(/)X
-1 f
-3798(,)X
-3 f
-3838(?)X
-1 f
-(,)S
-3 f
-3918(:)X
-1 f
-3965(or)X
-3 f
-776 5352(!)N
-1 f
-803(\),)X
-877(the)X
-1002(command)X
-1345(is)X
-1425(executed.)X
-1778(If)X
-1859(a)X
-1922(partial)X
-2154(command)X
-2497(has)X
-2631(been)X
-2810(entered,)X
-3093(e.g.)X
-3255(or)X
-3348(the)X
-3472(command)X
-3814(is)X
-3893(can-)X
-776 5442(celled.)N
-1028(Otherwise,)X
-1398(it)X
-1462(is)X
-1535(an)X
-1631(error.)X
-776 5622(Line:)N
-1136(When)X
-1350(an)X
-3 f
-1448(ex)X
-1 f
-1546(command)X
-1884(is)X
-1959(being)X
-2159(executed,)X
-2487(the)X
-2607(current)X
-2857(line)X
-2999(is)X
-3074(set)X
-3186(as)X
-3276(described)X
-3607(for)X
-3724(that)X
-3867(com-)X
-1136 5712(mand.)N
-1374(Otherwise,)X
-1744(unchanged.)X
-
-15 p
-%%Page: 15 14
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-15)X
-1 f
-776 762(Column:)N
-1136(When)X
-1354(an)X
-3 f
-1456(ex)X
-1 f
-1558(command)X
-1901(is)X
-1981(being)X
-2186(executed,)X
-2519(the)X
-2644(current)X
-2899(column)X
-3166(is)X
-3246(set)X
-3362(as)X
-3456(described)X
-3791(for)X
-3912(that)X
-1136 852(command.)N
-1512(Otherwise,)X
-1882(unchanged.)X
-776 942(Options:)N
-1136(None.)X
-3 f
-576 1122(<control-]>)N
-1 f
-776 1212(Push)N
-953(a)X
-1011(tag)X
-1131 0.4531(reference)AX
-1454(onto)X
-1618(the)X
-1738(tag)X
-1858(stack.)X
-2085(The)X
-2232(tags)X
-2383(\256les)X
-2538(\(see)X
-2691(the)X
-3 f
-2812(tags)X
-1 f
-2973(option)X
-3200(for)X
-3317(more)X
-3505(information\))X
-3933(are)X
-776 1302(searched)N
-1086(for)X
-1207(a)X
-1270(tag)X
-1395(matching)X
-1720(the)X
-1845(current)X
-2100(word.)X
-2332(The)X
-2484(current)X
-2739(word)X
-2931(begins)X
-3167(at)X
-3252(the)X
-3377(\256rst)X
-3528(non-whitespace)X
-776 1392(character)N
-1092(on)X
-1192(or)X
-1279(after)X
-1447(the)X
-1565(current)X
-1813(cursor)X
-2034(position,)X
-2331(and)X
-2468(extends)X
-2734(up)X
-2835(to)X
-2918(the)X
-3037(next)X
-3196(non-word)X
-3529(character)X
-3846(or)X
-3934(the)X
-776 1482(end)N
-914(of)X
-1003(the)X
-1123(line.)X
-1305(If)X
-1381(a)X
-1439(matching)X
-1759(tag)X
-1879(is)X
-1954(found,)X
-2183(the)X
-2302(current)X
-2551(\256le)X
-2674(is)X
-2748(discarded)X
-3077(and)X
-3214(the)X
-3333(\256le)X
-3456(containing)X
-3815(the)X
-3934(tag)X
-776 1572 0.4531(reference)AN
-1097(is)X
-1170(edited.)X
-776 1752(If)N
-851(the)X
-971(current)X
-1221(\256le)X
-1345(has)X
-1474(been)X
-1648(modi\256ed)X
-1954(since)X
-2141(it)X
-2207(was)X
-2354(last)X
-2487(completely)X
-2865(written,)X
-3134(the)X
-3254(command)X
-3592(will)X
-3738(fail.)X
-3907(The)X
-3 f
-776 1842(<control-]>)N
-1 f
-1187(command)X
-1523(is)X
-1596(an)X
-1692(absolute)X
-1979(movement.)X
-776 2022(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(matching)X
-2392(tag)X
-2510(string.)X
-776 2112(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(start)X
-1616(of)X
-1703(the)X
-1821(matching)X
-2139(tag)X
-2257(string.)X
-776 2202(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(tags)X
-1 f
-1814(and)X
-3 f
-1950(taglength)X
-1 f
-2290(options.)X
-3 f
-576 2382(<control-\303>)N
-1 f
-776 2472(Switch)N
-1018(to)X
-1100(the)X
-1218(most)X
-1393(recently)X
-1672(edited)X
-1888(\256le.)X
-776 2652(If)N
-852(the)X
-972(\256le)X
-1096(has)X
-1225(been)X
-1399(modi\256ed)X
-1705(since)X
-1892(it)X
-1958(was)X
-2105(last)X
-2238(completely)X
-2616(written,)X
-2886(and)X
-3025(the)X
-3 f
-3146(autowrite)X
-1 f
-3499(option)X
-3726(is)X
-3802(set,)X
-3934(the)X
-776 2742(\256le)N
-905(is)X
-984(written)X
-1237(out.)X
-1405(If)X
-1485(this)X
-1626(write)X
-1817(fails,)X
-2001(the)X
-2125(command)X
-2467(will)X
-2617(fail.)X
-2790(Otherwise,)X
-3166(if)X
-3241(the)X
-3365(current)X
-3619(\256le)X
-3747(has)X
-3880(been)X
-776 2832(modi\256ed)N
-1080(since)X
-1265(it)X
-1329(was)X
-1474(last)X
-1605(completely)X
-1981(written,)X
-2248(the)X
-2366(command)X
-2702(will)X
-2846(fail.)X
-776 3012(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(the)X
-1716(cursor)X
-1937(was)X
-2082(on)X
-2182(when)X
-2376(the)X
-2494(\256le)X
-2616(was)X
-2761(last)X
-2892(edited.)X
-776 3102(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(column)X
-1718(the)X
-1836(cursor)X
-2057(was)X
-2202(on)X
-2302(when)X
-2496(the)X
-2614(\256le)X
-2736(was)X
-2881(last)X
-3012(edited.)X
-776 3192(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(autowrite)X
-1 f
-2006(option.)X
-3 f
-576 3372([count])N
-841(<space>)X
-576 3462([count])N
-841(l)X
-1 f
-776 3552(Move)N
-984(the)X
-1103(cursor)X
-1325(forward)X
-7 f
-1602(count)X
-1 f
-1864(characters)X
-2213(without)X
-2479(changing)X
-2795(the)X
-2915(current)X
-3165(line.)X
-3347(This)X
-3511(is)X
-3586(an)X
-3684(error)X
-3863(if)X
-3934(the)X
-776 3642(cursor)N
-997(is)X
-1070(on)X
-1170(the)X
-1288(last)X
-1419(character)X
-1735(in)X
-1817(the)X
-1935(line.)X
-776 3822(The)N
-3 f
-921(<space>)X
-1 f
-1220(and)X
-3 f
-1356(l)X
-1 f
-1398(commands)X
-1765(may)X
-1923(be)X
-2019(used)X
-2186(as)X
-2273(the)X
-2391(motion)X
-2637(component)X
-3013(of)X
-3100(other)X
-3 f
-3285(vi)X
-1 f
-3367(commands,)X
-3754(in)X
-3836(which)X
-776 3912(case)N
-937(any)X
-1075(text)X
-1217(copied)X
-1453(into)X
-1599(a)X
-1657(buffer)X
-1876(is)X
-1951(character)X
-2269(oriented.)X
-2594(In)X
-2683(addition,)X
-2987(these)X
-3173(commands)X
-3541(may)X
-3700(be)X
-3797(used)X
-3965(as)X
-776 4002(the)N
-908(motion)X
-1168(components)X
-1589(of)X
-1690(other)X
-1889(commands)X
-2271(when)X
-2480(the)X
-2613(cursor)X
-2849(is)X
-2937(on)X
-3052(the)X
-3185(last)X
-3331(character)X
-3662(in)X
-3759(the)X
-3892(line,)X
-776 4092(without)N
-1040(error.)X
-776 4272(Line:)N
-1136(Unchanged.)X
-776 4362(Column:)N
-1136(Set)X
-1259(to)X
-1342(the)X
-1461(current)X
-1710(character)X
-2027(plus)X
-2181(the)X
-2300(next)X
-7 f
-2459(count)X
-1 f
-2720(characters,)X
-3088(or)X
-3177(to)X
-3261(the)X
-3381(last)X
-3514(character)X
-3832(on)X
-3934(the)X
-1136 4452(line)N
-1278(if)X
-7 f
-1349(count)X
-1 f
-1611(is)X
-1686(greater)X
-1932(than)X
-2092(the)X
-2212(number)X
-2478(of)X
-2566(characters)X
-2914(in)X
-2997(the)X
-3116(line)X
-3257(after)X
-3426(the)X
-3545(current)X
-3794(charac-)X
-1136 4542(ter.)N
-776 4632(Options:)N
-1136(None.)X
-3 f
-576 4812([count])N
-841(!)X
-888(motion)X
-1148(shell-argument\(s\))X
-1 f
-776 4902(Replace)N
-1055(text)X
-1195(with)X
-1357(results)X
-1586(from)X
-1762(a)X
-1818(shell)X
-1989(command.)X
-2366(Pass)X
-2529(the)X
-2648(lines)X
-2820(speci\256ed)X
-3126(by)X
-3227(the)X
-7 f
-3346(count)X
-1 f
-3607(and)X
-7 f
-3744(motion)X
-1 f
-776 4992(arguments)N
-1136(as)X
-1229(standard)X
-1527(input)X
-1717(to)X
-1805(the)X
-1928(program)X
-2225(named)X
-2464(by)X
-2569(the)X
-3 f
-2692(shell)X
-1 f
-2872(option,)X
-3121(and)X
-3262(replace)X
-3520(those)X
-3714(lines)X
-3890(with)X
-776 5082(the)N
-894(output)X
-1118(\(both)X
-1307(standard)X
-1599(error)X
-1776(and)X
-1912(standard)X
-2204(output\))X
-2455(of)X
-2542(that)X
-2682(command.)X
-776 5262(After)N
-966(the)X
-1084(motion)X
-1330(is)X
-1403(entered,)X
-3 f
-1680(vi)X
-1 f
-1762(prompts)X
-2044(for)X
-2158(arguments)X
-2512(to)X
-2594(the)X
-2712(shell)X
-2883(command.)X
-776 5442(Within)N
-1026(those)X
-1223(arguments,)X
-1605(``)X
-7 f
-1659(%)X
-1 f
-('')S
-1790(and)X
-1935(``)X
-7 f
-1989(#)X
-1 f
-('')S
-2120(characters)X
-2476(are)X
-2604(expanded)X
-2941(to)X
-3032(the)X
-3159(current)X
-3416(and)X
-3561(alternate)X
-3867(path-)X
-776 5532(names,)N
-1024(respectively.)X
-1475(The)X
-1623(``)X
-7 f
-1677(!)X
-1 f
-('')S
-1822(character)X
-2141(is)X
-2217(expanded)X
-2548(with)X
-2713(the)X
-2833(command)X
-3171(text)X
-3313(of)X
-3402(the)X
-3522(previous)X
-3 f
-3820(!)X
-1 f
-3889(or)X
-3 f
-3978(:!)X
-1 f
-776 5622(commands.)N
-1183 0.3125(\(Therefore,)AX
-1568(the)X
-1686(command)X
-3 f
-2022(!!)X
-1 f
-2116(repeats)X
-2364(the)X
-2482(previous)X
-3 f
-2778(!)X
-1 f
-2845(command.\))X
-3248(The)X
-3393(special)X
-3637(meanings)X
-3965(of)X
-776 5712(``)N
-7 f
-830(%)X
-1 f
-('',)S
-975(``)X
-7 f
-1029(#)X
-1 f
-('')S
-1154(and)X
-1293(``)X
-7 f
-1347(!)X
-1 f
-('')S
-1492(can)X
-1627(be)X
-1726(overridden)X
-2097(by)X
-2200(escaping)X
-2504(them)X
-2687(with)X
-2852(a)X
-2910(backslash.)X
-3284(If)X
-3360(no)X
-3 f
-3462(!)X
-1 f
-3531(or)X
-3 f
-3620(:!)X
-1 f
-3716(command)X
-776 5802(has)N
-907(yet)X
-1029(been)X
-1205(executed,)X
-1535(it)X
-1603(is)X
-1680(an)X
-1780(error)X
-1961(to)X
-2047(use)X
-2178(an)X
-2278(unescaped)X
-2637(``)X
-7 f
-2691(!)X
-1 f
-('')S
-2837(character.)X
-3197(The)X
-3 f
-3346(!)X
-1 f
-3417(command)X
-3758(does)X
-2 f
-3930(not)X
-
-16 p
-%%Page: 16 15
-10 s 10 xH 0 xS 2 f 1 i
-3 f
-576 474(USD:13-16)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(do)N
-880(shell)X
-1055(expansion)X
-1404(on)X
-1508(the)X
-1630(strings)X
-1867(provided)X
-2175(as)X
-2265(arguments.)X
-2662(If)X
-2739(any)X
-2878(of)X
-2968(the)X
-3089(above)X
-3304(expansions)X
-3683(change)X
-3934(the)X
-776 852(arguments)N
-1130(the)X
-1248(user)X
-1402(entered,)X
-1679(the)X
-1797(command)X
-2133(is)X
-2206(redisplayed)X
-2596(at)X
-2674(the)X
-2792(bottom)X
-3038(of)X
-3125(the)X
-3243(screen.)X
-3 f
-776 1032(Vi)N
-1 f
-882(then)X
-1046(executes)X
-1349(the)X
-1473(program)X
-1771(named)X
-2011(by)X
-2117(the)X
-3 f
-2241(shell)X
-1 f
-2422(option,)X
-2672(with)X
-2840(a)X
-3 f
-9 f
-2902(-)X
-2904(-)X
-3 f
-2948(c)X
-1 f
-3010(\257ag)X
-3156(followed)X
-3467(by)X
-3573(the)X
-3698(arguments)X
-776 1122(\(which)N
-1019(are)X
-1138(bundled)X
-1416(into)X
-1560(a)X
-1616(single)X
-1827(argument\).)X
-776 1302(The)N
-3 f
-921(!)X
-1 f
-988(command)X
-1324(is)X
-1397(permitted)X
-1724(in)X
-1806(an)X
-1902(empty)X
-2122(\256le.)X
-776 1482(If)N
-850(the)X
-968(\256le)X
-1090(has)X
-1217(been)X
-1389(modi\256ed)X
-1693(since)X
-1878(it)X
-1942(was)X
-2087(last)X
-2218(completely)X
-2594(written,)X
-2861(the)X
-3 f
-2979(!)X
-1 f
-3046(command)X
-3382(will)X
-3526(warn)X
-3707(you.)X
-776 1662(Line:)N
-1136(The)X
-1281(\256rst)X
-1425(line)X
-1565(of)X
-1652(the)X
-1770(replaced)X
-2063(text.)X
-776 1752(Column:)N
-1136(The)X
-1281(\256rst)X
-1425(column)X
-1685(of)X
-1772(the)X
-1890(replaced)X
-2183(text.)X
-776 1842(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(shell)X
-1 f
-1831(option.)X
-3 f
-576 2022([count])N
-841(#)X
-901(+|-|#)X
-1 f
-776 2112(Increment)N
-1135(or)X
-1235(decrement)X
-1603(the)X
-1734(current)X
-1996(number.)X
-2315(The)X
-2474(current)X
-2736(number)X
-3015(begins)X
-3258(at)X
-3350(the)X
-3482(\256rst)X
-3640(non-number)X
-776 2202(character)N
-1095(on)X
-1198(or)X
-1288(before)X
-1517(the)X
-1638(current)X
-1889(cursor)X
-2113(position,)X
-2413(or)X
-2503(the)X
-2624(beginning)X
-2967(of)X
-3057(the)X
-3178(line,)X
-3341(and)X
-3480(extends)X
-3748(up)X
-3850(to)X
-3934(the)X
-776 2292(\256rst)N
-920(non-number)X
-1332(character)X
-1649(on)X
-1750(or)X
-1838(after)X
-2007(the)X
-2126(current)X
-2375(cursor)X
-2597(position)X
-2875(or)X
-2963(the)X
-3082(end)X
-3219(of)X
-3307(the)X
-3426(line.)X
-3607(If)X
-3682(the)X
-3801(trailing)X
-776 2382(character)N
-1094(is)X
-1169(a)X
-7 f
-1227(+)X
-1 f
-(,)S
-1317(the)X
-1437(number)X
-1704(is)X
-1779(incremented)X
-2198(by)X
-7 f
-2300(count)X
-1 f
-(.)S
-2602(If)X
-2678(the)X
-2798(trailing)X
-3051(character)X
-3369(is)X
-3444(a)X
-7 f
-3502(-)X
-1 f
-(,)S
-3592(the)X
-3712(number)X
-3979(is)X
-776 2472(decremented)N
-1220(by)X
-7 f
-1333(count)X
-1 f
-(.)S
-1646(If)X
-1733(the)X
-1864(trailing)X
-2128(character)X
-2457(is)X
-2543(a)X
-7 f
-2612(#)X
-1 f
-(,)S
-2713(the)X
-2844(previous)X
-3154(increment)X
-3509(or)X
-3610(decrement)X
-3979(is)X
-776 2562(repeated.)N
-776 2742(The)N
-927(format)X
-1167(of)X
-1260(the)X
-1384(number)X
-1656(\(decimal,)X
-1984(hexadecimal,)X
-2437(and)X
-2580(octal,)X
-2783(and)X
-2926(leading)X
-3189(0's\))X
-3341(is)X
-3421(retained)X
-3707(unless)X
-3934(the)X
-776 2832(new)N
-930(value)X
-1124(cannot)X
-1358(be)X
-1454(represented)X
-1845(in)X
-1927(the)X
-2045(previous)X
-2341(format.)X
-776 3012(Line:)N
-1136(Unchanged.)X
-776 3102(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(in)X
-2000(the)X
-2118(cursor)X
-2339(word.)X
-776 3192(Options:)N
-1136(None.)X
-3 f
-576 3372([count])N
-841($)X
-1 f
-776 3462(Move)N
-989(the)X
-1113(cursor)X
-1340(to)X
-1428(the)X
-1552(end)X
-1694(of)X
-1787(a)X
-1849(line.)X
-2035(If)X
-7 f
-2115(count)X
-1 f
-2381(is)X
-2460(speci\256ed,)X
-2792(the)X
-2917(cursor)X
-3145(moves)X
-3381(down)X
-7 f
-3586(count)X
-3881(-)X
-3984(1)X
-1 f
-776 3552(lines.)N
-776 3732(It)N
-845(is)X
-918(not)X
-1040(an)X
-1136(error)X
-1313(to)X
-1395(use)X
-1522(the)X
-3 f
-1640($)X
-1 f
-1700(command)X
-2036(when)X
-2230(the)X
-2348(cursor)X
-2569(is)X
-2642(on)X
-2742(the)X
-2860(last)X
-2991(character)X
-3308(in)X
-3391(the)X
-3510(line)X
-3651(or)X
-3739(when)X
-3934(the)X
-776 3822(line)N
-916(is)X
-989(empty.)X
-776 4002(The)N
-3 f
-921($)X
-1 f
-981(command)X
-1317(may)X
-1475(be)X
-1571(used)X
-1739(as)X
-1827(the)X
-1946(motion)X
-2193(component)X
-2570(of)X
-2658(other)X
-3 f
-2844(vi)X
-1 f
-2927(commands,)X
-3315(in)X
-3398(which)X
-3615(case)X
-3775(any)X
-3912(text)X
-776 4092(copied)N
-1014(into)X
-1161(a)X
-1220(buffer)X
-1440(is)X
-1516(character)X
-1835(oriented,)X
-2141(unless)X
-2364(the)X
-2485(cursor)X
-2709(is)X
-2785(at,)X
-2886(or)X
-2976(before)X
-3205(the)X
-3326(\256rst)X
-3473(nonblank)X
-3794(charac-)X
-776 4182(ter)N
-885(in)X
-971(the)X
-1093(line,)X
-1257(in)X
-1343(which)X
-1563(case)X
-1726(it)X
-1794(is)X
-1871(line)X
-2015(oriented.)X
-2343(It)X
-2417(is)X
-2495(not)X
-2622(an)X
-2723(error)X
-2905(to)X
-2992(use)X
-3124(the)X
-3 f
-3247($)X
-1 f
-3312(command)X
-3653(as)X
-3745(a)X
-3806(motion)X
-776 4272(component)N
-1154(when)X
-1350(the)X
-1470(cursor)X
-1693(is)X
-1768(on)X
-1870(the)X
-1990(last)X
-2123(character)X
-2441(in)X
-2525(the)X
-2645(line,)X
-2807(although)X
-3109(it)X
-3175(is)X
-3249(an)X
-3346(error)X
-3524(when)X
-3719(the)X
-3838(line)X
-3979(is)X
-776 4362(empty.)N
-776 4542(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(plus)X
-7 f
-1999(count)X
-1 f
-2259(minus)X
-2474(1.)X
-776 4632(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(in)X
-1987(the)X
-2105(line.)X
-776 4722(Options:)N
-1136(None.)X
-3 f
-576 4902(%)N
-1 f
-776 4992(Move)N
-986(to)X
-1071(the)X
-1192(matching)X
-1513(character.)X
-1872(The)X
-2020(cursor)X
-2244(moves)X
-2477(to)X
-2563(the)X
-2685(parenthesis)X
-3070(or)X
-3161(curly)X
-3350(brace)X
-3549(which)X
-2 f
-3769(matches)X
-1 f
-776 5082(the)N
-900(parenthesis)X
-1287(or)X
-1380(curly)X
-1570(brace)X
-1770(found)X
-1982(at)X
-2065(the)X
-2188(current)X
-2441(cursor)X
-2667(position)X
-2949(or)X
-3041(which)X
-3262(is)X
-3340(the)X
-3463(closest)X
-3706(one)X
-3847(to)X
-3934(the)X
-776 5172(right)N
-964(of)X
-1068(the)X
-1203(cursor)X
-1441(on)X
-1558(the)X
-1693(line.)X
-1890(It)X
-1976(is)X
-2066(an)X
-2179(error)X
-2373(to)X
-2472(execute)X
-2756(the)X
-3 f
-2892(%)X
-1 f
-3010(command)X
-3364(on)X
-3482(a)X
-3556(line)X
-3714(without)X
-3996(a)X
-776 5262(parenthesis)N
-1157(or)X
-1244(curly)X
-1429(brace.)X
-1664(Historically,)X
-2082(any)X
-7 f
-2218(count)X
-1 f
-2478(speci\256ed)X
-2783(to)X
-2865(the)X
-3 f
-2983(%)X
-1 f
-3083(command)X
-3419(was)X
-3564(ignored.)X
-776 5442(The)N
-3 f
-921(%)X
-1 f
-1021(command)X
-1357(is)X
-1430(an)X
-1527(absolute)X
-1815(movement.)X
-2214(The)X
-3 f
-2360(%)X
-1 f
-2461(command)X
-2798(may)X
-2957(be)X
-3054(used)X
-3222(as)X
-3310(the)X
-3429(motion)X
-3676(component)X
-776 5532(of)N
-871(other)X
-3 f
-1064(vi)X
-1 f
-1153(commands,)X
-1547(in)X
-1636(which)X
-1859(case)X
-2025(any)X
-2168(text)X
-2315(copied)X
-2556(into)X
-2707(a)X
-2770(buffer)X
-2994(is)X
-3074(character)X
-3397(oriented,)X
-3707(unless)X
-3934(the)X
-776 5622(starting)N
-1036(point)X
-1220(of)X
-1307(the)X
-1425(region)X
-1650(is)X
-1723(at)X
-1801(or)X
-1888(before)X
-2115(the)X
-2234(\256rst)X
-2379(nonblank)X
-2698(character)X
-3015(on)X
-3116(its)X
-3212(line,)X
-3373(and)X
-3510(the)X
-3629(ending)X
-3868(point)X
-776 5712(is)N
-849(at)X
-927(or)X
-1014(after)X
-1182(the)X
-1300(last)X
-1431(nonblank)X
-1749(character)X
-2065(on)X
-2165(its)X
-2260(line,)X
-2420(in)X
-2502(which)X
-2718(case)X
-2877(it)X
-2941(is)X
-3014(line)X
-3154(oriented.)X
-
-17 p
-%%Page: 17 16
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-17)X
-1 f
-776 762(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(matching)X
-2392(character.)X
-776 852(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(matching)X
-1776(character.)X
-776 942(Options:)N
-1136(None.)X
-3 f
-576 1122(&)N
-1 f
-776 1212(Repeat)N
-1019(the)X
-1137(previous)X
-1433(substitution)X
-1825(command)X
-2161(on)X
-2261(the)X
-2379(current)X
-2627(line.)X
-776 1392(Historically,)N
-1194(any)X
-7 f
-1330(count)X
-1 f
-1590(speci\256ed)X
-1895(to)X
-1977(the)X
-3 f
-2095(&)X
-1 f
-2182(command)X
-2518(was)X
-2663(ignored.)X
-776 1572(Line:)N
-1136(Unchanged.)X
-776 1662(Column:)N
-1136(Unchanged)X
-1531(if)X
-1609(the)X
-1736(cursor)X
-1966(was)X
-2120(on)X
-2229(the)X
-2356(last)X
-2496(character)X
-2821(in)X
-2912(the)X
-3039(line,)X
-3208(otherwise,)X
-3569(set)X
-3688(to)X
-3780(the)X
-3908(\256rst)X
-1136 1752(nonblank)N
-1454(character)X
-1770(in)X
-1852(the)X
-1970(line.)X
-776 1842(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(edcompatible)X
-1 f
-2114(,)X
-3 f
-2154(extended)X
-1 f
-2461(,)X
-3 f
-2501(ignorecase)X
-1 f
-2882(and)X
-3 f
-3018(magic)X
-1 f
-3243(options.)X
-3 f
-576 2022 0.3182(\302<character>)AN
-576 2112 0.3182(`<character>)AN
-1 f
-776 2202(Return)N
-1014(to)X
-1096(a)X
-1152(context)X
-1408(marked)X
-1669(by)X
-1769(the)X
-1888(character)X
-7 f
-2205(<character>)X
-1 f
-(.)S
-2794(If)X
-7 f
-2869(<character>)X
-1 f
-3418(is)X
-3492(the)X
-3611(``)X
-7 f
-3665(')X
-1 f
-('')S
-3788(or)X
-3876(``)X
-7 f
-3930(`)X
-1 f
-('')S
-776 2292(character,)N
-1113(return)X
-1326(to)X
-1409(the)X
-1528(previous)X
-1825(context.)X
-2122(If)X
-7 f
-2197(<character>)X
-1 f
-2746(is)X
-2820(any)X
-2956(other)X
-3141(character,)X
-3477(return)X
-3689(to)X
-3771(the)X
-3889(con-)X
-776 2382(text)N
-921(marked)X
-1187(by)X
-1292(that)X
-1437(character)X
-1759(\(see)X
-1915(the)X
-3 f
-2039(m)X
-1 f
-2132(command)X
-2474(for)X
-2594(more)X
-2785(information\).)X
-3256(If)X
-3336(the)X
-3460(command)X
-3802(is)X
-3881(the)X
-3 f
-4005(\302)X
-1 f
-776 2472(command,)N
-1137(only)X
-1304(the)X
-1427(line)X
-1572(value)X
-1771(is)X
-1848(restored,)X
-2151(and)X
-2291(the)X
-2413(cursor)X
-2638(is)X
-2715(placed)X
-2949(on)X
-3053(the)X
-3175(\256rst)X
-3323(nonblank)X
-3645(character)X
-3965(of)X
-776 2562(that)N
-916(line.)X
-1096(If)X
-1170(the)X
-1288(command)X
-1624(is)X
-1697(the)X
-3 f
-1815(`)X
-1 f
-1862(command,)X
-2218(both)X
-2380(the)X
-2498(line)X
-2638(and)X
-2774(column)X
-3034(values)X
-3259(are)X
-3378(restored.)X
-776 2742(It)N
-849(is)X
-926(an)X
-1026(error)X
-1207(if)X
-1280(the)X
-1402(context)X
-1662(no)X
-1766(longer)X
-1995(exists)X
-2202(because)X
-2482(of)X
-2574(line)X
-2719(deletion.)X
-3042(\(Contexts)X
-3378(follow)X
-3612(lines)X
-3788(that)X
-3933(are)X
-776 2832(moved,)N
-1034(or)X
-1121(which)X
-1337(are)X
-1456(deleted)X
-1708(and)X
-1844(then)X
-2002(restored.\))X
-776 3012(The)N
-3 f
-924(\302)X
-1 f
-974(and)X
-3 f
-1113(`)X
-1 f
-1163(commands)X
-1533(are)X
-1655(both)X
-1820(absolute)X
-2110(movements.)X
-2542(They)X
-2730(may)X
-2891(be)X
-2990(used)X
-3160(as)X
-3250(a)X
-3309(motion)X
-3558(component)X
-3938(for)X
-776 3102(other)N
-3 f
-962(vi)X
-1 f
-1045(commands.)X
-1453(For)X
-1585(the)X
-3 f
-1704(\302)X
-1 f
-1752(command,)X
-2108(any)X
-2244(text)X
-2384(copied)X
-2618(into)X
-2762(a)X
-2818(buffer)X
-3035(is)X
-3108(line)X
-3248(oriented.)X
-3571(For)X
-3702(the)X
-3 f
-3820(`)X
-1 f
-3867(com-)X
-776 3192(mand,)N
-1002(any)X
-1146(text)X
-1294(copied)X
-1536(into)X
-1688(a)X
-1752(buffer)X
-1977(is)X
-2058(character)X
-2382(oriented,)X
-2693(unless)X
-2921(it)X
-2993(both)X
-3163(starts)X
-3360(and)X
-3504(stops)X
-3696(at)X
-3782(the)X
-3908(\256rst)X
-776 3282(character)N
-1099(in)X
-1188(the)X
-1313(line,)X
-1480(in)X
-1569(which)X
-1792(case)X
-1958(it)X
-2029(is)X
-2109(line)X
-2255(oriented.)X
-2584(In)X
-2677(addition,)X
-2985(when)X
-3185(using)X
-3384(the)X
-3 f
-3508(`)X
-1 f
-3561(command)X
-3903(as)X
-3996(a)X
-776 3372(motion)N
-1025(component,)X
-1424(commands)X
-1794(which)X
-2013(move)X
-2214(backward)X
-2550(and)X
-2689(started)X
-2926(at)X
-3007(the)X
-3128(\256rst)X
-3275(character)X
-3594(in)X
-3679(the)X
-3801(line,)X
-3965(or)X
-776 3462(move)N
-983(forward)X
-1267(and)X
-1412(ended)X
-1633(at)X
-1719(the)X
-1845(\256rst)X
-1997(character)X
-2321(in)X
-2411(the)X
-2537(line,)X
-2705(are)X
-2832(corrected)X
-3160(to)X
-3250(the)X
-3376(last)X
-3515(character)X
-3839(of)X
-3934(the)X
-776 3552(starting)N
-1036(and)X
-1172(ending)X
-1410(lines,)X
-1601(respectively.)X
-776 3732(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(from)X
-1774(the)X
-1892(context.)X
-776 3822(Column:)N
-1136(Set)X
-1261(to)X
-1346(the)X
-1467(\256rst)X
-1614(nonblank)X
-1935(character)X
-2254(in)X
-2340(the)X
-2462(line,)X
-2626(for)X
-2744(the)X
-3 f
-2866(\302)X
-1 f
-2917(command,)X
-3277(and)X
-3417(set)X
-3530(to)X
-3616(the)X
-3738(context's)X
-1136 3912(column)N
-1396(for)X
-1510(the)X
-3 f
-1628(`)X
-1 f
-1675(command.)X
-776 4002(Options:)N
-1136(None.)X
-3 f
-576 4182([count])N
-841(\()X
-1 f
-776 4272(Back)N
-961(up)X
-7 f
-1061(count)X
-1 f
-1321(sentences.)X
-776 4452(The)N
-3 f
-922(\()X
-1 f
-970(command)X
-1307(is)X
-1382(an)X
-1480(absolute)X
-1769(movement.)X
-2169(The)X
-3 f
-2316(\()X
-1 f
-2365(command)X
-2703(may)X
-2863(be)X
-2961(used)X
-3130(as)X
-3219(the)X
-3339(motion)X
-3587(component)X
-3965(of)X
-776 4542(other)N
-3 f
-963(vi)X
-1 f
-1047(commands,)X
-1436(in)X
-1520(which)X
-1738(case)X
-1899(any)X
-2036(text)X
-2177(copied)X
-2412(into)X
-2557(a)X
-2614(buffer)X
-2832(is)X
-2906(character)X
-3223(oriented,)X
-3527(unless)X
-3748(the)X
-3867(start-)X
-776 4632(ing)N
-913(and)X
-1064(stopping)X
-1374(points)X
-1604(of)X
-1706(the)X
-1839(region)X
-2079(are)X
-2213(the)X
-2346(\256rst)X
-2505(character)X
-2836(in)X
-2933(the)X
-3066(line,)X
-3241(in)X
-3338(which)X
-3569(case)X
-3743(it)X
-3823(is)X
-3912(line)X
-776 4722(oriented.)N
-1111(In)X
-1210(the)X
-1340(latter)X
-1537(case,)X
-1728(the)X
-1858(stopping)X
-2165(point)X
-2361(of)X
-2460(the)X
-2590(region)X
-2827(is)X
-2911(adjusted)X
-3209(to)X
-3302(be)X
-3409(the)X
-3538(end)X
-3685(of)X
-3783(the)X
-3912(line)X
-776 4812(immediately)N
-1196(before)X
-1422(it,)X
-1506(and)X
-1642(not)X
-1764(the)X
-1882(original)X
-2151(cursor)X
-2372(position.)X
-776 4992(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(beginning)X
-2414(of)X
-2501(the)X
-2619(sentence.)X
-776 5082(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2441(sentence.)X
-776 5172(Options:)N
-1136(None.)X
-3 f
-576 5352([count])N
-841(\))X
-1 f
-776 5442(Move)N
-983(forward)X
-7 f
-1258(count)X
-1 f
-1518(sentences.)X
-776 5622(The)N
-3 f
-922(\))X
-1 f
-970(command)X
-1307(is)X
-1382(an)X
-1480(absolute)X
-1769(movement.)X
-2169(The)X
-3 f
-2316(\))X
-1 f
-2365(command)X
-2703(may)X
-2863(be)X
-2961(used)X
-3130(as)X
-3219(the)X
-3339(motion)X
-3587(component)X
-3965(of)X
-776 5712(other)N
-3 f
-963(vi)X
-1 f
-1047(commands,)X
-1436(in)X
-1520(which)X
-1738(case)X
-1899(any)X
-2036(text)X
-2177(copied)X
-2412(into)X
-2557(a)X
-2614(buffer)X
-2832(is)X
-2906(character)X
-3223(oriented,)X
-3527(unless)X
-3748(the)X
-3867(start-)X
-776 5802(ing)N
-901(point)X
-1088(of)X
-1179(the)X
-1301(region)X
-1530(is)X
-1607(the)X
-1729(\256rst)X
-1877(character)X
-2197(in)X
-2283(the)X
-2405(line,)X
-2569(in)X
-2655(which)X
-2875(case)X
-3038(it)X
-3106(is)X
-3183(line)X
-3327(oriented.)X
-3654(In)X
-3745(the)X
-3867(latter)X
-
-18 p
-%%Page: 18 17
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-18)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(case,)N
-961(if)X
-1036(the)X
-1160(stopping)X
-1461(point)X
-1651(of)X
-1744(the)X
-1868(region)X
-2099(is)X
-2178(also)X
-2333(the)X
-2457(\256rst)X
-2607(character)X
-2929(in)X
-3017(the)X
-3141(line,)X
-3307(it)X
-3376(is)X
-3454(adjusted)X
-3746(to)X
-3833(be)X
-3934(the)X
-776 852(end)N
-912(of)X
-999(the)X
-1117(line)X
-1257(immediately)X
-1677(before)X
-1903(it.)X
-776 1032(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(beginning)X
-2414(of)X
-2501(the)X
-2619(sentence.)X
-776 1122(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2441(sentence.)X
-776 1212(Options:)N
-1136(None.)X
-3 f
-576 1392([count])N
-841(,)X
-1 f
-776 1482(Reverse)N
-1055(\256nd)X
-1199(character)X
-7 f
-1515(count)X
-1 f
-1775(times.)X
-2008(Reverse)X
-2288(the)X
-2407(last)X
-3 f
-2539(F)X
-1 f
-2588(,)X
-3 f
-2629(f)X
-1 f
-2656(,)X
-3 f
-2697(T)X
-1 f
-2771(or)X
-3 f
-2859(t)X
-1 f
-2907(command,)X
-3264(searching)X
-3593(the)X
-3712(other)X
-3898(way)X
-776 1572(in)N
-858(the)X
-976(line,)X
-7 f
-1136(count)X
-1 f
-1396(times.)X
-776 1752(The)N
-3 f
-922(,)X
-1 f
-963(command)X
-1300(may)X
-1460(be)X
-1558(used)X
-1727(as)X
-1816(the)X
-1936(motion)X
-2184(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 1842(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 2022(Line:)N
-1136(Unchanged.)X
-776 2112(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458 0.3068(searched-for)AX
-1881(character.)X
-776 2202(Options:)N
-1136(None.)X
-3 f
-576 2382([count])N
-9 f
-841(-)X
-843(-)X
-1 f
-776 2472(Move)N
-983(to)X
-1065(\256rst)X
-1209(nonblank)X
-1527(of)X
-1614(the)X
-1732(previous)X
-2028(line,)X
-7 f
-2188(count)X
-1 f
-2448(times.)X
-776 2652(This)N
-938(is)X
-1011(an)X
-1107(error)X
-1284(if)X
-1353(the)X
-1471(movement)X
-1829(is)X
-1902(past)X
-2051(the)X
-2169(beginning)X
-2509(of)X
-2596(the)X
-2714(\256le.)X
-776 2832(The)N
-3 f
-922(-)X
-1 f
-970(command)X
-1307(may)X
-1466(be)X
-1563(used)X
-1731(as)X
-1819(the)X
-1938(motion)X
-2185(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 2922(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(line)X
-1640(oriented.)X
-776 3102(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(line)X
-1846(minus)X
-7 f
-2061(count)X
-1 f
-(.)S
-776 3192(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 3282(Options:)N
-1136(None.)X
-3 f
-576 3462([count])N
-841(.)X
-1 f
-776 3552(Repeat)N
-1031(the)X
-1161(last)X
-3 f
-1304(vi)X
-1 f
-1398(command)X
-1746(that)X
-1898(modi\256ed)X
-2214(text.)X
-2406(The)X
-2563(repeated)X
-2869(command)X
-3218(may)X
-3389(be)X
-3498(a)X
-3567(command)X
-3916(and)X
-776 3642(motion)N
-1030(component)X
-1413(combination.)X
-1880(If)X
-7 f
-1961(count)X
-1 f
-2228(is)X
-2308(speci\256ed,)X
-2640(it)X
-2711(replaces)X
-2 f
-3002(both)X
-1 f
-3171(the)X
-3296(count)X
-3501(speci\256ed)X
-3813(for)X
-3934(the)X
-776 3732(repeated)N
-1093(command,)X
-1473(and,)X
-1653(if)X
-1746(applicable,)X
-2140(for)X
-2278(the)X
-2420(repeated)X
-2737(motion)X
-3007(component.)X
-3448(If)X
-7 f
-3547(count)X
-1 f
-3832(is)X
-3930(not)X
-776 3822(speci\256ed,)N
-1101(the)X
-1219(counts)X
-1448(originally)X
-1779(speci\256ed)X
-2084(to)X
-2166(the)X
-2284(command)X
-2620(being)X
-2818(repeated)X
-3111(are)X
-3230(used)X
-3397(again.)X
-776 4002(As)N
-887(a)X
-945(special)X
-1190(case,)X
-1371(if)X
-1442(the)X
-3 f
-1562(.)X
-1 f
-1624(command)X
-1962(is)X
-2037(executed)X
-2345(immediately)X
-2767(after)X
-2937(the)X
-3 f
-3057(u)X
-1 f
-3123(command,)X
-3482(the)X
-3603(change)X
-3854(log)X
-3979(is)X
-776 4092(rolled)N
-983(forward)X
-1258(or)X
-1345(backward,)X
-1698(depending)X
-2052(on)X
-2152(the)X
-2270(action)X
-2486(of)X
-2573(the)X
-3 f
-2691(u)X
-1 f
-2755(command.)X
-776 4272(Line:)N
-1136(Set)X
-1258(as)X
-1345(described)X
-1673(for)X
-1787(the)X
-1905(repeated)X
-2198(command.)X
-776 4362(Column:)N
-1136(Set)X
-1258(as)X
-1345(described)X
-1673(for)X
-1787(the)X
-1905(repeated)X
-2198(command.)X
-776 4452(Options:)N
-1136(None.)X
-3 f
-576 4632 0.1776(/RE<carriage-return>)AN
-576 4722(/RE/)N
-751 0.2500([offset]<carriage-return>)AX
-576 4812 0.1908(?RE<carriage-return>)AN
-576 4902(?RE?)N
-787 0.2500([offset]<carriage-return>)AX
-576 4992(N)N
-576 5082(n)N
-1 f
-776 5172(Search)N
-1017(forward)X
-1295(or)X
-1385(backward)X
-1721(for)X
-1838(a)X
-1897(regular)X
-2148(expression.)X
-2554(The)X
-2702(commands)X
-3072(beginning)X
-3415(with)X
-3580(a)X
-3639(slash)X
-3822(\(``)X
-7 f
-3903(/)X
-1 f
-(''\))S
-776 5262(character)N
-1095(are)X
-1217(forward)X
-1495(searches,)X
-1811(the)X
-1932(commands)X
-2302(beginning)X
-2644(with)X
-2808(a)X
-2866(question)X
-3159(mark)X
-3346(\(``)X
-7 f
-3427(?)X
-1 f
-(''\))S
-3598(are)X
-3719(backward)X
-776 5352(searches.)N
-3 f
-1117(Vi)X
-1 f
-1225(prompts)X
-1515(with)X
-1685(the)X
-1811(leading)X
-2075(character)X
-2399(on)X
-2507(the)X
-2633(last)X
-2772(line)X
-2920(of)X
-3015(the)X
-3142(screen)X
-3377(for)X
-3500(a)X
-3565(string.)X
-3816(It)X
-3894(then)X
-776 5442(searches)N
-1071(forward)X
-1348(or)X
-1437(backward)X
-1772(in)X
-1856(the)X
-1976(\256le)X
-2100(for)X
-2216(the)X
-2336(next)X
-2496 0.3611(occurrence)AX
-2872(of)X
-2961(the)X
-3081(string,)X
-3305(which)X
-3522(is)X
-3596(interpreted)X
-3965(as)X
-776 5532(a)N
-832(Basic)X
-1030(Regular)X
-1304(Expression.)X
-776 5712(The)N
-3 f
-928(/)X
-1 f
-977(and)X
-3 f
-1120(?)X
-1 f
-1207(commands)X
-1581(are)X
-1707(absolute)X
-2001(movements.)X
-2437(They)X
-2630(may)X
-2796(be)X
-2900(used)X
-3075(as)X
-3170(the)X
-3296(motion)X
-3550(components)X
-3965(of)X
-776 5802(other)N
-3 f
-974(vi)X
-1 f
-1069(commands,)X
-1469(in)X
-1564(which)X
-1793(case)X
-1965(any)X
-2114(text)X
-2267(copied)X
-2514(into)X
-2671(a)X
-2740(buffer)X
-2970(is)X
-3056(character)X
-3385(oriented,)X
-3701(unless)X
-3934(the)X
-
-19 p
-%%Page: 19 18
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-19)X
-1 f
-776 762(search)N
-1007(started)X
-1246(and)X
-1387(ended)X
-1604(on)X
-1709(the)X
-1832(\256rst)X
-1981(column)X
-2246(of)X
-2338(a)X
-2399(line,)X
-2564(in)X
-2651(which)X
-2872(case)X
-3036(it)X
-3105(is)X
-3183(line)X
-3328(oriented.)X
-3657(In)X
-3750(addition,)X
-776 852(forward)N
-1056(searches)X
-1354(ending)X
-1597(at)X
-1680(the)X
-1803(\256rst)X
-1951(character)X
-2271(of)X
-2362(a)X
-2422(line,)X
-2586(and)X
-2726(backward)X
-3063(searches)X
-3360(beginning)X
-3704(at)X
-3786(the)X
-3908(\256rst)X
-776 942(character)N
-1098(in)X
-1186(the)X
-1310(line,)X
-1476(are)X
-1601(corrected)X
-1927(to)X
-2015(begin)X
-2219(or)X
-2312(end)X
-2454(at)X
-2538(the)X
-2662(last)X
-2799(character)X
-3121(of)X
-3214(the)X
-3339(previous)X
-3642(line.)X
-3829(\(Note,)X
-776 1032(forward)N
-1061(and)X
-1207(backward)X
-1550(searches)X
-1853(can)X
-1995(occur)X
-2204(for)X
-2328(both)X
-3 f
-2500(/)X
-1 f
-2552(and)X
-3 f
-2698(?)X
-1 f
-2787(commands,)X
-3183(if)X
-3261(the)X
-3 f
-3388(wrapscan)X
-1 f
-3746(option)X
-3979(is)X
-776 1122(set.\))N
-776 1302(If)N
-852(an)X
-950(offset)X
-1155(from)X
-1333(the)X
-1453(matched)X
-1747(line)X
-1889(is)X
-1964(speci\256ed)X
-2271(\(i.e.)X
-2418(a)X
-2476(trailing)X
-2729(``)X
-7 f
-2783(/)X
-1 f
-('')S
-2907(or)X
-2996(``)X
-7 f
-3050(?)X
-1 f
-('')S
-3194(character)X
-3512(is)X
-3587(followed)X
-3894(by)X
-3996(a)X
-776 1392(signed)N
-1009(offset\),)X
-1263(the)X
-1385(buffer)X
-1606(will)X
-1754(always)X
-2001(be)X
-2100(line)X
-2243(oriented)X
-2529(\(e.g.)X
-2715(``)X
-7 f
-2769(/string/+0)X
-1 f
-('')S
-3326(will)X
-3473(always)X
-3719(guarantee)X
-776 1482(a)N
-832(line)X
-972(orientation\).)X
-776 1662(The)N
-3 f
-921(n)X
-1 f
-985(command)X
-1321(repeats)X
-1569(the)X
-1687(previous)X
-1983(search.)X
-776 1842(The)N
-3 f
-921(N)X
-1 f
-999(command)X
-1335(repeats)X
-1583(the)X
-1701(previous)X
-1997(search,)X
-2243(but)X
-2365(in)X
-2447(the)X
-2565(reverse)X
-2818(direction.)X
-776 2022(Missing)N
-1194(RE's)X
-1515(\(e.g.)X
-1839(``)X
-7 f
-1893(//<carriage-return>)X
-1 f
-('',)S
-3040(``)X
-7 f
-3094(/<carriage-return>)X
-1 f
-('',)S
-776 2112(``)N
-7 f
-830(??<carriage-return>)X
-1 f
-('',)S
-1847(or)X
-1945(``)X
-7 f
-1999(?<carriage-return>)X
-1 f
-('')S
-2948(search)X
-3185(for)X
-3310(the)X
-3439(last)X
-3581(search)X
-3818(RE,)X
-3970(in)X
-776 2202(the)N
-894(indicated)X
-1208(direction.)X
-776 2382(Searches)N
-1082(may)X
-1240(be)X
-1336(interrupted)X
-1708(using)X
-1901(the)X
-7 f
-2019(<interrupt>)X
-1 f
-2567(character.)X
-776 2562(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(in)X
-1680(which)X
-1896(the)X
-2014(match)X
-2230(occurred.)X
-776 2652(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(of)X
-2005(the)X
-2123(matched)X
-2415(string.)X
-776 2742(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(edcompatible)X
-1 f
-2114(,)X
-3 f
-2154(extended)X
-1 f
-2461(,)X
-3 f
-2501(ignorecase)X
-1 f
-2862(,)X
-3 f
-2902(magic)X
-1 f
-3107(,)X
-3147(and)X
-3 f
-3283(wrapscan)X
-1 f
-3632(options.)X
-3 f
-576 2922(0)N
-1 f
-776 3012(Move)N
-985(to)X
-1069(the)X
-1189(\256rst)X
-1335(character)X
-1654(in)X
-1739(the)X
-1860(current)X
-2111(line.)X
-2294(It)X
-2366(is)X
-2442(not)X
-2567(an)X
-2666(error)X
-2846(to)X
-2931(use)X
-3061(the)X
-3 f
-3182(0)X
-1 f
-3245(command)X
-3584(when)X
-3781(the)X
-3902(cur-)X
-776 3102(sor)N
-894(is)X
-967(on)X
-1067(the)X
-1185(\256rst)X
-1329(character)X
-1645(in)X
-1727(the)X
-1845(line,)X
-776 3282(The)N
-3 f
-923(0)X
-1 f
-986(command)X
-1325(may)X
-1486(be)X
-1585(used)X
-1755(as)X
-1845(the)X
-1966(motion)X
-2215(component)X
-2594(of)X
-2684(other)X
-3 f
-2872(vi)X
-1 f
-2957(commands,)X
-3347(in)X
-3432(which)X
-3651(case)X
-3813(it)X
-3880(is)X
-3956(an)X
-776 3372(error)N
-953(if)X
-1022(the)X
-1140(cursor)X
-1361(is)X
-1434(on)X
-1534(the)X
-1652(\256rst)X
-1796(character)X
-2112(in)X
-2194(the)X
-2312(line.)X
-776 3552(Line:)N
-1136(Unchanged.)X
-776 3642(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(in)X
-2000(the)X
-2118(line.)X
-776 3732(Options:)N
-1136(None.)X
-3 f
-576 3912(:)N
-1 f
-776 4002(Execute)N
-1055(an)X
-1152(ex)X
-1249(command.)X
-3 f
-1626(Vi)X
-1 f
-1727(prompts)X
-2010(for)X
-2125(an)X
-3 f
-2222(ex)X
-1 f
-2319(command)X
-2656(on)X
-2757(the)X
-2876(last)X
-3008(line)X
-3149(of)X
-3237(the)X
-3356(screen,)X
-3603(using)X
-3797(a)X
-3854(colon)X
-776 4092(\(``)N
-7 f
-857(:)X
-1 f
-(''\))S
-1029(character.)X
-1408(The)X
-1575(command)X
-1933(is)X
-2028(terminated)X
-2413(by)X
-2535(a)X
-7 f
-2613(<carriage-return>)X
-1 f
-(,)S
-7 f
-3491(<newline>)X
-1 f
-3965(or)X
-7 f
-776 4182(<escape>)N
-1 f
-1184(character;)X
-1526(all)X
-1630(of)X
-1721(these)X
-1910(characters)X
-2261(may)X
-2423(be)X
-2523(escaped)X
-2802(by)X
-2906(using)X
-3103(a)X
-7 f
-3164(<literal)X
-3601(next>)X
-1 f
-3866(char-)X
-776 4272(acter.)N
-993(The)X
-1138(command)X
-1474(is)X
-1547(then)X
-1705(executed.)X
-776 4452(If)N
-850(the)X
-3 f
-968(ex)X
-1 f
-1064(command)X
-1400(writes)X
-1616(to)X
-1698(the)X
-1816(screen,)X
-3 f
-2063(vi)X
-1 f
-2146(will)X
-2291(prompt)X
-2543(the)X
-2662(user)X
-2817(for)X
-2932(a)X
-7 f
-2989(<carriage-return>)X
-1 f
-3826(before)X
-776 4542(continuing)N
-1144(when)X
-1344(the)X
-3 f
-1468(ex)X
-1 f
-1570(command)X
-1912(\256nishes.)X
-2222(Large)X
-2436(amounts)X
-2733(of)X
-2826(output)X
-3056(from)X
-3238(the)X
-3 f
-3362(ex)X
-1 f
-3464(command)X
-3806(will)X
-3956(be)X
-776 4632(paged)N
-994(for)X
-1114(the)X
-1238(user,)X
-1418(and)X
-1560(the)X
-1684(user)X
-1844(prompted)X
-2177(for)X
-2297(a)X
-7 f
-2359(<carriage-return>)X
-1 f
-3201(or)X
-7 f
-3294(<space>)X
-1 f
-3657(key)X
-3800(to)X
-3889(con-)X
-776 4722(tinue.)N
-999(In)X
-1089(some)X
-1281(cases,)X
-1494(a)X
-1553(quit)X
-1700(\(normally)X
-2039(a)X
-2098(``q'')X
-2269 0.3750(character\))AX
-2615(or)X
-7 f
-2705(<interrupt>)X
-1 f
-3256(may)X
-3417(be)X
-3515(entered)X
-3774(to)X
-3858(inter-)X
-776 4812(rupt)N
-925(the)X
-3 f
-1043(ex)X
-1 f
-1139(command.)X
-776 4992(When)N
-988(the)X
-3 f
-1106(ex)X
-1 f
-1202(command)X
-1538(\256nishes,)X
-1822(and)X
-1958(the)X
-2076(user)X
-2230(is)X
-2303(prompted)X
-2631(to)X
-2714(resume)X
-2967(visual)X
-3179(mode,)X
-3398(it)X
-3463(is)X
-3537(also)X
-3687(possible)X
-3970(to)X
-776 5082(enter)N
-957(another)X
-1218(``)X
-7 f
-1272(:)X
-1 f
-('')S
-1394(character)X
-1710(followed)X
-2015(by)X
-2115(another)X
-3 f
-2376(ex)X
-1 f
-2472(command.)X
-776 5262(Line:)N
-1136(The)X
-1281(current)X
-1529(line)X
-1669(is)X
-1742(set)X
-1851(as)X
-1938(described)X
-2266(for)X
-2380(the)X
-3 f
-2498(ex)X
-1 f
-2594(command.)X
-776 5352(Column:)N
-1136(The)X
-1281(current)X
-1529(column)X
-1789(is)X
-1862(set)X
-1971(as)X
-2058(described)X
-2386(for)X
-2500(the)X
-3 f
-2618(ex)X
-1 f
-2714(command.)X
-776 5442(Options:)N
-1136(None.)X
-3 f
-576 5622([count])N
-841(;)X
-1 f
-776 5712(Repeat)N
-1025(the)X
-1149(last)X
-1286(character)X
-1608(\256nd)X
-7 f
-1758(count)X
-1 f
-2024(times.)X
-2263(The)X
-2415(last)X
-2553(character)X
-2876(\256nd)X
-3027(is)X
-3107(one)X
-3250(of)X
-3344(the)X
-3 f
-3469(F)X
-1 f
-3518(,)X
-3 f
-3565(f)X
-1 f
-3592(,)X
-3 f
-3639(T)X
-1 f
-3719(or)X
-3 f
-3813(t)X
-1 f
-3867(com-)X
-776 5802(mands.)N
-
-20 p
-%%Page: 20 19
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-20)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(The)N
-3 f
-922(;)X
-1 f
-970(command)X
-1307(may)X
-1466(be)X
-1563(used)X
-1731(as)X
-1819(the)X
-1938(motion)X
-2185(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 852(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 1032(Line:)N
-1136(Unchanged.)X
-776 1122(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458 0.3068(searched-for)AX
-1881(character.)X
-776 1212(Options:)N
-1136(None.)X
-3 f
-576 1392([count])N
-841(<)X
-907(motion)X
-576 1482([count])N
-841(>)X
-907(motion)X
-1 f
-776 1572(Shift)N
-956(lines)X
-1132(left)X
-1264(or)X
-1357(right.)X
-1574(Shift)X
-1755(the)X
-1879(number)X
-2150(of)X
-2243(lines)X
-2420(in)X
-2508(the)X
-2632(region)X
-2863(speci\256ed)X
-3174(by)X
-3280(the)X
-3404(motion)X
-3656(component,)X
-776 1662(times)N
-7 f
-980(count)X
-1 f
-(,)S
-1271(left)X
-1409(\(for)X
-1561(the)X
-3 f
-1690(<)X
-1 f
-1767(command\))X
-2141(or)X
-2239(right)X
-2421(\(for)X
-2573(the)X
-3 f
-2702(>)X
-1 f
-2778(command\))X
-3151(by)X
-3261(the)X
-3389(number)X
-3664(of)X
-3761(columns)X
-776 1752(speci\256ed)N
-1086(by)X
-1191(the)X
-3 f
-1314(shiftwidth)X
-1 f
-1685(option.)X
-1954(Only)X
-2139(whitespace)X
-2521(characters)X
-2873(are)X
-2997(deleted)X
-3255(when)X
-3455(shifting)X
-3725(left;)X
-3880(once)X
-776 1842(the)N
-901(\256rst)X
-1052(character)X
-1375(in)X
-1464(the)X
-1589(line)X
-1736(contains)X
-2030(a)X
-2092(nonblank)X
-2416(character,)X
-2758(the)X
-3 f
-2882(shift)X
-1 f
-3059(will)X
-3209(succeed,)X
-3510(but)X
-3638(the)X
-3762(line)X
-3908(will)X
-776 1932(not)N
-898(be)X
-994(modi\256ed.)X
-776 2112(Line:)N
-1136(Unchanged.)X
-776 2202(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 2292(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(shiftwidth)X
-1 f
-2022(option.)X
-3 f
-576 2472(@)N
-670(buffer)X
-1 f
-776 2562(Execute)N
-1065(a)X
-1131(named)X
-1375(buffer.)X
-1642(Execute)X
-1931(the)X
-2059(named)X
-2303(buffer)X
-2530(as)X
-3 f
-2627(vi)X
-1 f
-2719(commands.)X
-3136(The)X
-3292(buffer)X
-3520(may)X
-3689(include)X
-3 f
-3956(ex)X
-1 f
-776 2652(commands,)N
-1170(too,)X
-1319(but)X
-1448(they)X
-1613(must)X
-1795(be)X
-1898(expressed)X
-2241(as)X
-2334(a)X
-3 f
-2396(:)X
-1 f
-2449(command.)X
-2831(If)X
-2911(the)X
-3035(buffer)X
-3258(is)X
-3337(line)X
-3483(oriented,)X
-7 f
-3792(<new-)X
-776 2742(line>)N
-1 f
-1054(characters)X
-1419(are)X
-1556(logically)X
-1874(appended)X
-2220(to)X
-2320(each)X
-2506(line)X
-2664(of)X
-2769(the)X
-2905(buffer.)X
-3180(If)X
-3272(the)X
-3408(buffer)X
-3644(is)X
-3736(character)X
-776 2832(oriented,)N
-7 f
-1079(<newline>)X
-1 f
-1531(characters)X
-1878(are)X
-1997(logically)X
-2297(appended)X
-2625(to)X
-2707(all)X
-2807(but)X
-2929(the)X
-3047(last)X
-3178(line)X
-3318(in)X
-3400(the)X
-3518(buffer.)X
-776 3012(If)N
-861(the)X
-990(buffer)X
-1218(name)X
-1423(is)X
-1507(``)X
-7 f
-1561(@)X
-1 f
-('',)S
-1714(or)X
-1812(``)X
-7 f
-1866(*)X
-1 f
-('',)S
-2019(then)X
-2188(the)X
-2317(last)X
-2459(buffer)X
-2687(executed)X
-3004(shall)X
-3186(be)X
-3293(used.)X
-3511(It)X
-3591(is)X
-3675(an)X
-3782(error)X
-3970(to)X
-776 3102(specify)N
-1033(``)X
-7 f
-1087(@@)X
-1 f
-('')S
-1262(or)X
-1354(``)X
-7 f
-1408(**)X
-1 f
-('')S
-1583(if)X
-1657(there)X
-1843(were)X
-2025(no)X
-2130(buffer)X
-2351(previous)X
-2651(executions.)X
-3058(The)X
-3207(text)X
-3351(of)X
-3442(a)X
-3502(macro)X
-3727(may)X
-3889(con-)X
-776 3192(tain)N
-919(an)X
-3 f
-1019(@)X
-1 f
-1117(command,)X
-1477(and)X
-1617(it)X
-1685(is)X
-1762(possible)X
-2048(to)X
-2134(create)X
-2351(in\256nite)X
-2601(loops)X
-2798(in)X
-2884(this)X
-3023(manner.)X
-3328(\(The)X
-7 f
-3504(<interrupt>)X
-1 f
-776 3282(character)N
-1092(may)X
-1250(be)X
-1346(used)X
-1513(to)X
-1595(interrupt)X
-1891(the)X
-2009(loop.\))X
-776 3462(Line:)N
-1136(The)X
-1281(current)X
-1529(line)X
-1669(is)X
-1742(set)X
-1851(as)X
-1938(described)X
-2266(for)X
-2380(the)X
-2498(command\(s\).)X
-776 3552(Column:)N
-1136(The)X
-1281(current)X
-1529(column)X
-1789(is)X
-1862(set)X
-1971(as)X
-2058(described)X
-2386(for)X
-2500(the)X
-2618(command\(s\).)X
-776 3642(Options:)N
-1136(None.)X
-3 f
-576 3822([count])N
-841(A)X
-1 f
-776 3912(Enter)N
-981(input)X
-1176(mode,)X
-1405(appending)X
-1770(the)X
-1899(text)X
-2050(after)X
-2229(the)X
-2358(end)X
-2505(of)X
-2603(the)X
-2732(line.)X
-2923(If)X
-7 f
-3008(count)X
-1 f
-3279(is)X
-3363(speci\256ed,)X
-3699(the)X
-3828(text)X
-3979(is)X
-776 4002(repeatedly)N
-1131(input)X
-7 f
-1315(count)X
-1603(-)X
-1699(1)X
-1 f
-1767(more)X
-1952(times)X
-2145(after)X
-2313(input)X
-2497(mode)X
-2695(is)X
-2768(exited.)X
-776 4182(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 4272(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 4362(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 4452(gin)N
-1 f
-1262(options.)X
-3 f
-576 4632([count])N
-841(B)X
-1 f
-776 4722(Move)N
-995(backward)X
-7 f
-1340(count)X
-1 f
-1612(bigwords.)X
-1982(Move)X
-2201(the)X
-2331(cursor)X
-2564(backward)X
-2909(to)X
-3003(the)X
-3133(beginning)X
-3485(of)X
-3584(a)X
-3652(bigword)X
-3952(by)X
-776 4812(repeating)N
-1096(the)X
-1215(following)X
-1547(algorithm:)X
-1901(if)X
-1971(the)X
-2090(current)X
-2339(position)X
-2617(is)X
-2691(at)X
-2770(the)X
-2889(beginning)X
-3230(of)X
-3318(a)X
-3374(bigword)X
-3661(or)X
-3748(the)X
-3866(char-)X
-776 4902(acter)N
-955(at)X
-1036(the)X
-1157(current)X
-1408(position)X
-1688(cannot)X
-1925(be)X
-2024(part)X
-2172(of)X
-2262(a)X
-2321(bigword,)X
-2631(move)X
-2832(to)X
-2917(the)X
-3038(\256rst)X
-3185(character)X
-3504(of)X
-3594(the)X
-3715(preceding)X
-776 4992(bigword.)N
-1105(Otherwise,)X
-1477(move)X
-1677(to)X
-1761(the)X
-1881(\256rst)X
-2027(character)X
-2345(of)X
-2434(the)X
-2554(bigword)X
-2843(at)X
-2923(the)X
-3043(current)X
-3293(position.)X
-3612(If)X
-3688(no)X
-3790(preced-)X
-776 5082(ing)N
-908(bigword)X
-1205(exists)X
-1418(on)X
-1529(the)X
-1658(current)X
-1917(line,)X
-2088(move)X
-2297(to)X
-2390(the)X
-2519(\256rst)X
-2674(character)X
-3001(of)X
-3099(the)X
-3228(last)X
-3370(bigword)X
-3668(on)X
-3779(the)X
-3908(\256rst)X
-776 5172(preceding)N
-1113(line)X
-1253(that)X
-1393(contains)X
-1680(a)X
-1736(bigword.)X
-776 5352(The)N
-3 f
-921(B)X
-1 f
-994(command)X
-1330(may)X
-1488(be)X
-1584(used)X
-1751(as)X
-1838(the)X
-1956(motion)X
-2202(component)X
-2578(of)X
-2665(other)X
-3 f
-2850(vi)X
-1 f
-2932(commands,)X
-3319(in)X
-3401(which)X
-3617(case)X
-3776(any)X
-3912(text)X
-776 5442(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 5622(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(word)X
-2259(selected.)X
-776 5712(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(of)X
-2005(the)X
-2123(word)X
-2308(selected.)X
-
-21 p
-%%Page: 21 20
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-21)X
-1 f
-776 762(Options:)N
-1136(None.)X
-3 f
-576 942([buffer])N
-864([count])X
-1129(C)X
-1 f
-776 1032(Change)N
-1058(text)X
-1215(from)X
-1408(the)X
-1543(current)X
-1808(position)X
-2102(to)X
-2201(the)X
-2336(end-of-line.)X
-2770(If)X
-7 f
-2862(count)X
-1 f
-3140(is)X
-3231(speci\256ed,)X
-3574(the)X
-3710(input)X
-3912(text)X
-776 1122(replaces)N
-1060(from)X
-1236(the)X
-1354(current)X
-1602(position)X
-1879(to)X
-1961(the)X
-2079(end-of-line,)X
-2476(plus)X
-7 f
-2629(count)X
-2917(-)X
-3013(1)X
-1 f
-3081(subsequent)X
-3457(lines.)X
-776 1302(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 1392(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 1482(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 1572(gin)N
-1 f
-1262(options.)X
-3 f
-576 1752([buffer])N
-864(D)X
-1 f
-776 1842(Delete)N
-1006(text)X
-1146(from)X
-1322(the)X
-1440(current)X
-1688(position)X
-1965(to)X
-2047(the)X
-2165(end-of-line.)X
-776 2022(It)N
-845(is)X
-918(not)X
-1040(an)X
-1136(error)X
-1313(to)X
-1395(execute)X
-1661(the)X
-3 f
-1779(D)X
-1 f
-1857(command)X
-2193(on)X
-2293(an)X
-2389(empty)X
-2609(line.)X
-776 2202(Line:)N
-1136(Unchanged.)X
-776 2292(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(character)X
-1774(before)X
-2000(the)X
-2118(current)X
-2367(character,)X
-2704(or,)X
-2812(column)X
-3073(1)X
-3134(if)X
-3204(the)X
-3323(cursor)X
-3545(was)X
-3691(on)X
-3792(column)X
-1136 2382(1.)N
-776 2472(Options:)N
-1136(None.)X
-3 f
-576 2652([count])N
-841(E)X
-1 f
-776 2742(Move)N
-983(forward)X
-7 f
-1258(count)X
-1 f
-1518(end-of-bigwords.)X
-2113(Move)X
-2320(the)X
-2438(cursor)X
-2659(forward)X
-2935(to)X
-3018(the)X
-3137(end)X
-3274(of)X
-3362(a)X
-3419(bigword)X
-3707(by)X
-3808(repeat-)X
-776 2832(ing)N
-906(the)X
-1032(following)X
-1371(algorithm:)X
-1732(if)X
-1809(the)X
-1935(current)X
-2191(position)X
-2476(is)X
-2557(the)X
-2683(end)X
-2827(of)X
-2922(a)X
-2986(bigword)X
-3281(or)X
-3376(the)X
-3502(character)X
-3826(at)X
-3912(that)X
-776 2922(position)N
-1061(cannot)X
-1303(be)X
-1407(part)X
-1560(of)X
-1655(a)X
-1719(bigword,)X
-2034(move)X
-2240(to)X
-2331(the)X
-2458(last)X
-2598(character)X
-2923(of)X
-3019(the)X
-3146(following)X
-3486(bigword.)X
-3822(Other-)X
-776 3012(wise,)N
-973(move)X
-1181(to)X
-1273(the)X
-1401(last)X
-1542(character)X
-1868(of)X
-1965(the)X
-2093(bigword)X
-2390(at)X
-2477(the)X
-2604(current)X
-2861(position.)X
-3187(If)X
-3270(no)X
-3379(succeeding)X
-3765(bigword)X
-776 3102(exists)N
-984(on)X
-1090(the)X
-1214(current)X
-1468(line,)X
-1634(move)X
-1838(to)X
-1927(the)X
-2052(last)X
-2190(character)X
-2513(of)X
-2607(the)X
-2732(\256rst)X
-2883(bigword)X
-3177(on)X
-3284(the)X
-3409(next)X
-3574(following)X
-3912(line)X
-776 3192(that)N
-916(contains)X
-1203(a)X
-1259(bigword.)X
-776 3372(The)N
-3 f
-921(E)X
-1 f
-994(command)X
-1330(may)X
-1488(be)X
-1584(used)X
-1751(as)X
-1838(the)X
-1956(motion)X
-2202(component)X
-2578(of)X
-2665(other)X
-3 f
-2850(vi)X
-1 f
-2932(commands,)X
-3319(in)X
-3401(which)X
-3617(case)X
-3776(any)X
-3912(text)X
-776 3462(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 3642(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(word)X
-2259(selected.)X
-776 3732(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(of)X
-1992(the)X
-2110(word)X
-2295(selected.)X
-776 3822(Options:)N
-1136(None.)X
-3 f
-576 4002([count])N
-841(F)X
-910 0.3125(<character>)AX
-1 f
-776 4092(Search)N
-7 f
-1015(count)X
-1 f
-1275(times)X
-1468(backward)X
-1801(through)X
-2070(the)X
-2188(current)X
-2436(line)X
-2576(for)X
-7 f
-2690(<character>)X
-1 f
-(.)S
-776 4272(The)N
-3 f
-921(F)X
-1 f
-990(command)X
-1326(may)X
-1484(be)X
-1580(used)X
-1747(as)X
-1834(the)X
-1952(motion)X
-2198(component)X
-2574(of)X
-2661(other)X
-3 f
-2846(vi)X
-1 f
-2928(commands,)X
-3315(in)X
-3398(which)X
-3615(case)X
-3775(any)X
-3912(text)X
-776 4362(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 4542(Line:)N
-1136(Unchanged.)X
-776 4632(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458 0.3068(searched-for)AX
-1881(character.)X
-776 4722(Options:)N
-1136(None.)X
-3 f
-576 4902([count])N
-841(G)X
-1 f
-776 4992(Move)N
-983(to)X
-1065(line)X
-7 f
-1205(count)X
-1 f
-(,)S
-1485(or)X
-1572(the)X
-1690(last)X
-1821(line)X
-1961(of)X
-2048(the)X
-2166(\256le)X
-2288(if)X
-7 f
-2357(count)X
-1 f
-2617(not)X
-2739(speci\256ed.)X
-776 5172(The)N
-3 f
-924(G)X
-1 f
-1009(command)X
-1348(is)X
-1424(an)X
-1523(absolute)X
-1813(movement.)X
-2214(The)X
-3 f
-2362(G)X
-1 f
-2447(command)X
-2786(may)X
-2947(be)X
-3046(used)X
-3216(as)X
-3306(the)X
-3427(motion)X
-3676(component)X
-776 5262(of)N
-863(other)X
-3 f
-1048(vi)X
-1 f
-1130(commands,)X
-1517(in)X
-1599(which)X
-1815(case)X
-1974(any)X
-2110(text)X
-2250(copied)X
-2484(into)X
-2628(a)X
-2684(buffer)X
-2901(is)X
-2974(line)X
-3114(oriented.)X
-776 5442(Line:)N
-1136(Set)X
-1258(to)X
-7 f
-1340(count)X
-1 f
-(,)S
-1620(if)X
-1689(speci\256ed,)X
-2014(otherwise,)X
-2366(the)X
-2484(last)X
-2615(line.)X
-776 5532(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 5622(Options:)N
-1136(None.)X
-
-22 p
-%%Page: 22 21
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-22)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-576 762([count])N
-841(H)X
-1 f
-776 852(Move)N
-983(to)X
-1065(the)X
-1183(screen)X
-1409(line)X
-7 f
-1549(count)X
-1837(-)X
-1933(1)X
-1 f
-2001(lines)X
-2172(below)X
-2388(the)X
-2506(top)X
-2628(of)X
-2715(the)X
-2833(screen.)X
-776 1032(The)N
-3 f
-924(H)X
-1 f
-1009(command)X
-1348(is)X
-1424(an)X
-1523(absolute)X
-1813(movement.)X
-2214(The)X
-3 f
-2362(H)X
-1 f
-2447(command)X
-2786(may)X
-2947(be)X
-3046(used)X
-3216(as)X
-3306(the)X
-3427(motion)X
-3676(component)X
-776 1122(of)N
-863(other)X
-3 f
-1048(vi)X
-1 f
-1130(commands,)X
-1517(in)X
-1599(which)X
-1815(case)X
-1974(any)X
-2110(text)X
-2250(copied)X
-2484(into)X
-2628(a)X
-2684(buffer)X
-2901(is)X
-2974(line)X
-3114(oriented.)X
-776 1302(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-7 f
-1598(count)X
-1886(-)X
-1982(1)X
-1 f
-2050(lines)X
-2221(below)X
-2437(the)X
-2555(top)X
-2677(of)X
-2764(the)X
-2882(screen.)X
-776 1392(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2 f
-2441(screen)X
-1 f
-2671(line.)X
-776 1482(Options:)N
-1136(None.)X
-3 f
-576 1662([count])N
-841(I)X
-1 f
-776 1752(Enter)N
-971(input)X
-1156(mode,)X
-1375(inserting)X
-1676(the)X
-1795(text)X
-1936(at)X
-2015(the)X
-2134(beginning)X
-2475(of)X
-2564(the)X
-2684(line.)X
-2866(If)X
-7 f
-2942(count)X
-1 f
-3204(is)X
-3279(speci\256ed,)X
-3606(the)X
-3726(text)X
-3868(input)X
-776 1842(is)N
-849(repeatedly)X
-1204(input)X
-7 f
-1388(count)X
-1676(-)X
-1772(1)X
-1 f
-1840(more)X
-2025(times.)X
-776 2022(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 2112(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 2202(Options:)N
-1136(None.)X
-3 f
-576 2382([count])N
-841(J)X
-1 f
-776 2472(Join)N
-929(lines.)X
-1140(If)X
-7 f
-1214(count)X
-1 f
-1474(is)X
-1547(speci\256ed,)X
-7 f
-1872(count)X
-1 f
-2132(lines)X
-2303(are)X
-2422(joined;)X
-2664(a)X
-2720(minimum)X
-3050(of)X
-3137(two)X
-3277(lines)X
-3448(are)X
-3568(always)X
-3812(joined,)X
-776 2562(regardless)N
-1122(of)X
-1209(the)X
-1327(value)X
-1521(of)X
-7 f
-1608(count)X
-1 f
-(.)S
-776 2742(If)N
-859(the)X
-986(current)X
-1244(line)X
-1394(ends)X
-1571(with)X
-1743(a)X
-1809(whitespace)X
-2196(character,)X
-2542(all)X
-2652(whitespace)X
-3039(is)X
-3122(stripped)X
-3410(from)X
-3596(the)X
-3724(next)X
-3892(line.)X
-776 2832(Otherwise,)N
-1148(if)X
-1219(the)X
-1338(next)X
-1497(line)X
-1638(starts)X
-1828(with)X
-1991(a)X
-2048(open)X
-2225(parenthesis)X
-2607(\(``)X
-7 f
-2688(\()X
-1 f
-(''\))S
-2838(do)X
-2939(nothing.)X
-3244(Otherwise,)X
-3615(if)X
-3685(the)X
-3804(current)X
-776 2922(line)N
-917(ends)X
-1086(with)X
-1250(a)X
-1308(question)X
-1601(mark)X
-1788(\(``)X
-7 f
-1869(?)X
-1 f
-(''\),)S
-2040(period)X
-2267(\(``)X
-7 f
-2348(.)X
-1 f
-(''\))S
-2519(or)X
-2608(exclamation)X
-3022(point)X
-3208(\(``)X
-7 f
-3289(!)X
-1 f
-(''\),)S
-3460(insert)X
-3660(two)X
-3802(spaces.)X
-776 3012(Otherwise,)N
-1146(insert)X
-1344(a)X
-1400(single)X
-1611(space.)X
-776 3192(It)N
-845(is)X
-918(not)X
-1040(an)X
-1136(error)X
-1313(to)X
-1395(join)X
-1539(lines)X
-1710(past)X
-1859(the)X
-1977(end)X
-2113(of)X
-2200(the)X
-2318(\256le,)X
-2460(i.e.)X
-2578(lines)X
-2749(that)X
-2889(do)X
-2989(not)X
-3111(exist.)X
-776 3372(Line:)N
-1136(Unchanged.)X
-776 3462(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(character)X
-1774(after)X
-1942(the)X
-2060(last)X
-2191(character)X
-2507(of)X
-2594(the)X
-2712(next-to-last)X
-3097(joined)X
-3317(line.)X
-776 3552(Options:)N
-1136(None.)X
-3 f
-576 3732([count])N
-841(L)X
-1 f
-776 3822(Move)N
-983(to)X
-1065(the)X
-1183(screen)X
-1409(line)X
-7 f
-1549(count)X
-1837(-)X
-1933(1)X
-1 f
-2001(lines)X
-2172(above)X
-2384(the)X
-2502(bottom)X
-2748(of)X
-2835(the)X
-2953(screen.)X
-776 4002(The)N
-3 f
-925(L)X
-1 f
-1002(command)X
-1342(is)X
-1419(an)X
-1519(absolute)X
-1810(movement.)X
-2212(The)X
-3 f
-2361(L)X
-1 f
-2438(command)X
-2778(may)X
-2940(be)X
-3040(used)X
-3211(as)X
-3302(the)X
-3425(motion)X
-3676(component)X
-776 4092(of)N
-863(other)X
-3 f
-1048(vi)X
-1 f
-1130(commands,)X
-1517(in)X
-1599(which)X
-1815(case)X
-1974(any)X
-2110(text)X
-2250(copied)X
-2484(into)X
-2628(a)X
-2684(buffer)X
-2901(is)X
-2974(line)X
-3114(oriented.)X
-776 4272(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-7 f
-1598(count)X
-1886(-)X
-1982(1)X
-1 f
-2050(lines)X
-2221(above)X
-2433(the)X
-2551(bottom)X
-2797(of)X
-2884(the)X
-3002(screen.)X
-776 4362(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2 f
-2441(screen)X
-1 f
-2671(line.)X
-776 4452(Options:)N
-1136(None.)X
-3 f
-596 4632(M)N
-1 f
-776 4722(Move)N
-983(to)X
-1065(the)X
-1183(screen)X
-1409(line)X
-1549(in)X
-1631(the)X
-1749(middle)X
-1991(of)X
-2078(the)X
-2196(screen.)X
-776 4902(The)N
-3 f
-922(M)X
-1 f
-1019(command)X
-1356(is)X
-1430(an)X
-1527(absolute)X
-1815(movement.)X
-2214(The)X
-3 f
-2360(M)X
-1 f
-2457(command)X
-2794(may)X
-2953(be)X
-3050(used)X
-3219(as)X
-3308(the)X
-3428(motion)X
-3676(component)X
-776 4992(of)N
-863(other)X
-3 f
-1048(vi)X
-1 f
-1130(commands,)X
-1517(in)X
-1599(which)X
-1815(case)X
-1974(any)X
-2110(text)X
-2250(copied)X
-2484(into)X
-2628(a)X
-2684(buffer)X
-2901(is)X
-2974(line)X
-3114(oriented.)X
-776 5172(Historically,)N
-1194(any)X
-7 f
-1330(count)X
-1 f
-1590(speci\256ed)X
-1895(to)X
-1977(the)X
-3 f
-2095(M)X
-1 f
-2191(command)X
-2527(was)X
-2672(ignored.)X
-776 5352(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(in)X
-1680(the)X
-1798(middle)X
-2040(of)X
-2127(the)X
-2245(screen.)X
-776 5442(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2 f
-2441(screen)X
-1 f
-2671(line.)X
-776 5532(Options:)N
-1136(None.)X
-3 f
-576 5712([count])N
-841(O)X
-1 f
-776 5802(Enter)N
-970(input)X
-1154(mode,)X
-1372(appending)X
-1726(text)X
-1866(in)X
-1948(a)X
-2004(new)X
-2158(line)X
-2298(above)X
-2510(the)X
-2628(current)X
-2876(line.)X
-3057(If)X
-7 f
-3132(count)X
-1 f
-3393(is)X
-3467(speci\256ed,)X
-3793(the)X
-3912(text)X
-
-23 p
-%%Page: 23 22
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-23)X
-1 f
-776 762(input)N
-960(is)X
-1033(repeatedly)X
-1388(input)X
-7 f
-1572(count)X
-1860(-)X
-1956(1)X
-1 f
-2024(more)X
-2209(times.)X
-776 942(Historically,)N
-1194(any)X
-7 f
-1330(count)X
-1 f
-1590(speci\256ed)X
-1895(to)X
-1977(the)X
-3 f
-2095(O)X
-1 f
-2177(command)X
-2513(was)X
-2658(ignored.)X
-776 1122(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 1212(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 1302(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 1392(gin)N
-1 f
-1262(options.)X
-3 f
-576 1572([buffer])N
-864(P)X
-1 f
-776 1662(Insert)N
-980(text)X
-1121(from)X
-1298(a)X
-1355(buffer.)X
-1613(Text)X
-1782(from)X
-1960(the)X
-2080(buffer)X
-2299(\(the)X
-2446(unnamed)X
-2762(buffer)X
-2981(by)X
-3083(default\))X
-3355(is)X
-3430(inserted)X
-3706(before)X
-3934(the)X
-776 1752(current)N
-1024(column)X
-1284(or,)X
-1391(if)X
-1460(the)X
-1578(buffer)X
-1795(is)X
-1868(line)X
-2008(oriented,)X
-2311(before)X
-2537(the)X
-2655(current)X
-2903(line.)X
-776 1932(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(lowest)X
-1687(numbered)X
-2028(line)X
-2168(insert,)X
-2386(if)X
-2455(the)X
-2573(buffer)X
-2790(is)X
-2863(line)X
-3003(oriented,)X
-3306(otherwise)X
-3638(unchanged.)X
-776 2022(Column:)N
-1136(Set)X
-1261(to)X
-1346(the)X
-1467(\256rst)X
-1614(nonblank)X
-1935(character)X
-2254(of)X
-2344(the)X
-2465(appended)X
-2796(text,)X
-2959(if)X
-3032(the)X
-3154(buffer)X
-3375(is)X
-3452(line)X
-3596(oriented,)X
-3903(oth-)X
-1136 2112(erwise,)N
-1386(the)X
-1504(last)X
-1635(character)X
-1951(of)X
-2038(the)X
-2156(appended)X
-2484(text.)X
-776 2202(Options:)N
-1136(None.)X
-3 f
-576 2382(Q)N
-1 f
-776 2472(Exit)N
-3 f
-929(vi)X
-1 f
-1011(\(or)X
-1125(visual\))X
-1363(mode)X
-1561(and)X
-1697(switch)X
-1926(to)X
-3 f
-2008(ex)X
-1 f
-2104(mode.)X
-776 2652(Line:)N
-1136(Unchanged.)X
-776 2742(Column:)N
-1136(No)X
-1254(longer)X
-1479(relevant.)X
-776 2832(Options:)N
-1136(None.)X
-3 f
-576 3012([count])N
-841(R)X
-1 f
-776 3102(Enter)N
-971(input)X
-1156(mode,)X
-1375(replacing)X
-1695(the)X
-1814(characters)X
-2162(in)X
-2245(the)X
-2364(current)X
-2613(line.)X
-2794(If)X
-7 f
-2869(count)X
-1 f
-3130(is)X
-3204(speci\256ed,)X
-3531(the)X
-3651(text)X
-3793(input)X
-3979(is)X
-776 3192(repeatedly)N
-1131(input)X
-7 f
-1315(count)X
-1603(-)X
-1699(1)X
-1 f
-1767(more)X
-1952(times.)X
-776 3372(If)N
-855(the)X
-978(end)X
-1119(of)X
-1211(the)X
-1334(current)X
-1587(line)X
-1732(is)X
-1810(reached,)X
-2106(no)X
-2211(more)X
-2401(characters)X
-2753(are)X
-2877(replaced)X
-3176(and)X
-3318(any)X
-3460(further)X
-3705(characters)X
-776 3462(input)N
-960(are)X
-1079(appended)X
-1407(to)X
-1489(the)X
-1607(line.)X
-776 3642(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 3732(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 3822(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 3912(gin)N
-1 f
-1262(options.)X
-3 f
-576 4092([buffer])N
-864([count])X
-1129(S)X
-1 f
-776 4182(Substitute)N
-7 f
-1115(count)X
-1 f
-1375(lines.)X
-776 4362(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 4452(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 4542(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 4632(gin)N
-1 f
-1262(options.)X
-3 f
-576 4812([count])N
-841(T)X
-914 0.3125(<character>)AX
-1 f
-776 4902(Search)N
-1014(backward,)X
-7 f
-1366(count)X
-1 f
-1625(times,)X
-1837(through)X
-2105(the)X
-2222(current)X
-2469(line)X
-2608(for)X
-2721(the)X
-2838(character)X
-2 f
-3153(after)X
-1 f
-3323(the)X
-3440(speci\256ed)X
-7 f
-3744(<char-)X
-776 4992(acter>)N
-1 f
-(.)S
-776 5172(The)N
-3 f
-921(T)X
-1 f
-994(command)X
-1330(may)X
-1488(be)X
-1584(used)X
-1751(as)X
-1838(the)X
-1956(motion)X
-2202(component)X
-2578(of)X
-2665(other)X
-3 f
-2850(vi)X
-1 f
-2932(commands,)X
-3319(in)X
-3401(which)X
-3617(case)X
-3776(any)X
-3912(text)X
-776 5262(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 5442(Line:)N
-1136(Unchanged.)X
-776 5532(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(character)X
-2 f
-1774(after)X
-1 f
-1945(the)X
-2063 0.3068(searched-for)AX
-2486(character.)X
-776 5622(Options:)N
-1136(None.)X
-
-24 p
-%%Page: 24 23
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-24)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-576 762(U)N
-1 f
-776 852(Restore)N
-1041(the)X
-1159(current)X
-1407(line)X
-1547(to)X
-1629(its)X
-1724(state)X
-1891(before)X
-2117(the)X
-2235(cursor)X
-2456(last)X
-2587(moved)X
-2825(to)X
-2907(it.)X
-776 1032(Line:)N
-1136(Unchanged.)X
-776 1122(Column:)N
-1136(The)X
-1281(\256rst)X
-1425(character)X
-1741(in)X
-1823(the)X
-1941(line.)X
-776 1212(Options:)N
-1136(None.)X
-3 f
-576 1392([count])N
-841(W)X
-1 f
-776 1482(Move)N
-985(forward)X
-7 f
-1262(count)X
-1 f
-1524(bigwords.)X
-1884(Move)X
-2094(the)X
-2215(cursor)X
-2439(forward)X
-2717(to)X
-2802(the)X
-2923(beginning)X
-3266(of)X
-3356(a)X
-3415(bigword)X
-3705(by)X
-3808(repeat-)X
-776 1572(ing)N
-903(the)X
-1026(following)X
-1362(algorithm:)X
-1720(if)X
-1794(the)X
-1917(current)X
-2170(position)X
-2452(is)X
-2530(within)X
-2759(a)X
-2820(bigword)X
-3112(or)X
-3204(the)X
-3326(character)X
-3646(at)X
-3728(that)X
-3872(posi-)X
-776 1662(tion)N
-926(cannot)X
-1166(be)X
-1268(part)X
-1419(of)X
-1512(a)X
-1574(bigword,)X
-1887(move)X
-2091(to)X
-2179(the)X
-2303(\256rst)X
-2453(character)X
-2775(of)X
-2868(the)X
-2992(next)X
-3156(bigword.)X
-3489(If)X
-3569(no)X
-3676(subsequent)X
-776 1752(bigword)N
-1066(exists)X
-1271(on)X
-1374(the)X
-1495(current)X
-1746(line,)X
-1909(move)X
-2110(to)X
-2195(the)X
-2316(\256rst)X
-2463(character)X
-2782(of)X
-2872(the)X
-2993(\256rst)X
-3139(bigword)X
-3428(on)X
-3530(the)X
-3650(\256rst)X
-3796(follow-)X
-776 1842(ing)N
-898(line)X
-1038(that)X
-1178(contains)X
-1465(a)X
-1521(bigword.)X
-776 2022(The)N
-3 f
-927(W)X
-1 f
-1033(command)X
-1375(may)X
-1539(be)X
-1641(used)X
-1814(as)X
-1908(the)X
-2033(motion)X
-2286(component)X
-2669(of)X
-2763(other)X
-3 f
-2955(vi)X
-1 f
-3044(commands,)X
-3438(in)X
-3527(which)X
-3750(case)X
-3916(any)X
-776 2112(text)N
-916(copied)X
-1150(into)X
-1294(a)X
-1350(buffer)X
-1567(is)X
-1640(character)X
-1956(oriented.)X
-776 2292(Line:)N
-1136(The)X
-1281(line)X
-1421(containing)X
-1779(the)X
-1897(word)X
-2082(selected.)X
-776 2382(Column:)N
-1136(The)X
-1281(\256rst)X
-1425(character)X
-1741(of)X
-1828(the)X
-1946(word)X
-2131(selected.)X
-776 2472(Options:)N
-1136(None.)X
-3 f
-576 2652([buffer])N
-864([count])X
-1129(X)X
-1 f
-776 2742(Delete)N
-7 f
-1008(count)X
-1 f
-1270(characters)X
-1619(before)X
-1847(the)X
-1967(cursor.)X
-2230(If)X
-2306(the)X
-2426(number)X
-2693(of)X
-2782(characters)X
-3132(to)X
-3217(be)X
-3316(deleted)X
-3571(is)X
-3647(greater)X
-3894(than)X
-776 2832(or)N
-874(equal)X
-1079(to)X
-1172(the)X
-1301(number)X
-1577(of)X
-1675(characters)X
-2033(to)X
-2126(the)X
-2255(beginning)X
-2606(of)X
-2704(the)X
-2833(line,)X
-3004(all)X
-3115(of)X
-3213(the)X
-3341(characters)X
-3698(before)X
-3934(the)X
-776 2922(current)N
-1024(cursor)X
-1245(position,)X
-1542(to)X
-1624(the)X
-1742(beginning)X
-2082(of)X
-2169(the)X
-2287(line,)X
-2447(are)X
-2566(deleted.)X
-776 3102(Line:)N
-1136(Unchanged.)X
-776 3192(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(current)X
-1706(character)X
-2022(minus)X
-7 f
-2237(count)X
-1 f
-(,)S
-2518(or)X
-2606(the)X
-2725(\256rst)X
-2870(character)X
-3187(if)X
-3257(count)X
-3456(is)X
-3530(greater)X
-3775(than)X
-3934(the)X
-1136 3282(number)N
-1401(of)X
-1488(characters)X
-1835(in)X
-1917(the)X
-2035(line)X
-2175(before)X
-2401(the)X
-2519(cursor.)X
-776 3372(Options:)N
-1136(None.)X
-3 f
-576 3552([buffer])N
-864([count])X
-1129(Y)X
-1 f
-776 3642(Copy)N
-969(\(or)X
-1083(``yank''\))X
-7 f
-1394(count)X
-1 f
-1654(lines)X
-1825(into)X
-1969(the)X
-2087(speci\256ed)X
-2392(buffer.)X
-776 3822(Line:)N
-1136(Unchanged.)X
-776 3912(Column:)N
-1136(Unchanged.)X
-776 4002(Options:)N
-1136(None.)X
-3 f
-576 4182(ZZ)N
-1 f
-776 4272(Write)N
-979(the)X
-1097(\256le)X
-1219(and)X
-1356(exit)X
-3 f
-1497(vi)X
-1 f
-1559(.)X
-1620(The)X
-1766(\256le)X
-1889(is)X
-1963(only)X
-2126(written)X
-2374(if)X
-2444(it)X
-2509(has)X
-2637(been)X
-2810(modi\256ed)X
-3115(since)X
-3301(the)X
-3420(last)X
-3552(complete)X
-3867(write)X
-776 4362(of)N
-863(the)X
-981(\256le)X
-1103(to)X
-1185(any)X
-1321(\256le.)X
-776 4542(The)N
-3 f
-922(ZZ)X
-1 f
-1050(command)X
-1388(will)X
-1534(exit)X
-1676(the)X
-1796(editor)X
-2005(after)X
-2175(writing)X
-2428(the)X
-2548(\256le,)X
-2692(if)X
-2763(there)X
-2946(are)X
-3067(no)X
-3169(further)X
-3410(\256les)X
-3565(to)X
-3649(edit.)X
-3831(Enter-)X
-776 4632(ing)N
-901(two)X
-1044(``quit'')X
-1299(commands)X
-1669(\(i.e.)X
-3 f
-1837(wq)X
-1 f
-1939(,)X
-3 f
-1981(quit)X
-1 f
-2118(,)X
-3 f
-2160(xit)X
-1 f
-2271(or)X
-3 f
-2360(ZZ)X
-1 f
-2466(\))X
-2515(in)X
-2599(a)X
-2657(row)X
-2804(will)X
-2950(override)X
-3240(this)X
-3377(check)X
-3587(and)X
-3725(the)X
-3845(editor)X
-776 4722(will)N
-920(exit,)X
-1080(ignoring)X
-1371(any)X
-1507(\256les)X
-1660(that)X
-1800(have)X
-1972(not)X
-2094(yet)X
-2212(been)X
-2384(edited.)X
-776 4902(Line:)N
-1136(Unchanged.)X
-776 4992(Column:)N
-1136(Unchanged.)X
-776 5082(Options:)N
-1136(None.)X
-3 f
-576 5262([count])N
-841([[)X
-1 f
-776 5352(Back)N
-961(up)X
-7 f
-1061(count)X
-1 f
-1321(section)X
-1568(boundaries.)X
-776 5532(The)N
-3 f
-925([[)X
-1 f
-1003(command)X
-1343(is)X
-1420(an)X
-1520(absolute)X
-1811(movement.)X
-2213(The)X
-3 f
-2362([[)X
-1 f
-2440(command)X
-2780(may)X
-2942(be)X
-3042(used)X
-3213(as)X
-3304(the)X
-3426(motion)X
-3676(component)X
-776 5622(of)N
-871(other)X
-3 f
-1064(vi)X
-1 f
-1153(commands,)X
-1547(in)X
-1636(which)X
-1859(case)X
-2025(any)X
-2168(text)X
-2315(copied)X
-2556(into)X
-2707(a)X
-2770(buffer)X
-2994(is)X
-3074(character)X
-3397(oriented,)X
-3707(unless)X
-3934(the)X
-776 5712(starting)N
-1036(position)X
-1313(is)X
-1386(column)X
-1646(0,)X
-1726(in)X
-1808(which)X
-2024(case)X
-2183(it)X
-2247(is)X
-2320(line)X
-2460(oriented.)X
-
-25 p
-%%Page: 25 24
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-25)X
-1 f
-776 762(This)N
-938(is)X
-1011(an)X
-1107(error)X
-1284(if)X
-1353(the)X
-1471(movement)X
-1829(is)X
-1902(past)X
-2051(the)X
-2169(beginning)X
-2509(of)X
-2596(the)X
-2714(\256le.)X
-776 942(Line:)N
-1136(Set)X
-1261(to)X
-1346(the)X
-1467(previous)X
-1766(line)X
-1909(that)X
-2052(is)X
-7 f
-2128(count)X
-1 f
-2391(section)X
-2641(boundaries)X
-3016(back,)X
-3212(or)X
-3303(the)X
-3425(\256rst)X
-3573(line)X
-3717(of)X
-3808(the)X
-3930(\256le)X
-1136 1032(if)N
-1205(no)X
-1305(more)X
-1490(section)X
-1737(boundaries)X
-2109(exist)X
-2280(preceding)X
-2617(the)X
-2735(current)X
-2983(line.)X
-776 1122(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 1212(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(sections)X
-1 f
-1943(option.)X
-3 f
-576 1392([count])N
-841(]])X
-1 f
-776 1482(Move)N
-983(forward)X
-7 f
-1258(count)X
-1 f
-1518(section)X
-1765(boundaries.)X
-776 1662(The)N
-3 f
-925(]])X
-1 f
-1003(command)X
-1343(is)X
-1420(an)X
-1520(absolute)X
-1811(movement.)X
-2213(The)X
-3 f
-2362(]])X
-1 f
-2440(command)X
-2780(may)X
-2942(be)X
-3042(used)X
-3213(as)X
-3304(the)X
-3426(motion)X
-3676(component)X
-776 1752(of)N
-871(other)X
-3 f
-1064(vi)X
-1 f
-1153(commands,)X
-1547(in)X
-1636(which)X
-1859(case)X
-2025(any)X
-2168(text)X
-2315(copied)X
-2556(into)X
-2707(a)X
-2770(buffer)X
-2994(is)X
-3074(character)X
-3397(oriented,)X
-3707(unless)X
-3934(the)X
-776 1842(starting)N
-1036(position)X
-1313(is)X
-1386(column)X
-1646(0,)X
-1726(in)X
-1808(which)X
-2024(case)X
-2183(it)X
-2247(is)X
-2320(line)X
-2460(oriented.)X
-776 2022(This)N
-938(is)X
-1011(an)X
-1107(error)X
-1284(if)X
-1353(the)X
-1471(movement)X
-1829(is)X
-1902(past)X
-2051(the)X
-2169(end)X
-2305(of)X
-2392(the)X
-2510(\256le.)X
-776 2202(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(that)X
-1738(is)X
-7 f
-1811(count)X
-1 f
-2072(section)X
-2320(boundaries)X
-2693(forward,)X
-2989(or)X
-3077(to)X
-3160(the)X
-3279(last)X
-3411(line)X
-3552(of)X
-3640(the)X
-3759(\256le)X
-3882(if)X
-3952(no)X
-1136 2292(more)N
-1321(section)X
-1568(boundaries)X
-1940(exist)X
-2111(following)X
-2442(the)X
-2560(current)X
-2808(line.)X
-776 2382(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 2472(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(sections)X
-1 f
-1943(option.)X
-3 f
-576 2652(\303)N
-1 f
-776 2742(Move)N
-983(to)X
-1065(\256rst)X
-1209(nonblank)X
-1527(character)X
-1843(on)X
-1943(the)X
-2061(current)X
-2309(line.)X
-776 2922(The)N
-3 f
-922(\303)X
-1 f
-970(command)X
-1307(may)X
-1466(be)X
-1563(used)X
-1731(as)X
-1819(the)X
-1938(motion)X
-2185(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 3012(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 3192(Line:)N
-1136(Unchanged.)X
-776 3282(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(of)X
-2323(the)X
-2441(current)X
-2689(line.)X
-776 3372(Options:)N
-1136(None.)X
-3 f
-576 3552([count])N
-841(_)X
-1 f
-776 3642(Move)N
-985(down)X
-7 f
-1185(count)X
-1475(-)X
-1573(1)X
-1 f
-1643(lines,)X
-1836(to)X
-1920(the)X
-2040(\256rst)X
-2186(nonblank)X
-2506(character.)X
-2864(The)X
-3 f
-3012(_)X
-1 f
-3075(command)X
-3414(may)X
-3575(be)X
-3674(used)X
-3844(as)X
-3934(the)X
-776 3732(motion)N
-1022(component)X
-1398(of)X
-1485(other)X
-3 f
-1670(vi)X
-1 f
-1752(commands,)X
-2139(in)X
-2221(which)X
-2437(case)X
-2596(any)X
-2732(text)X
-2872(copied)X
-3106(into)X
-3250(a)X
-3306(buffer)X
-3523(is)X
-3596(line)X
-3736(oriented.)X
-776 3912(It)N
-845(is)X
-918(not)X
-1040(an)X
-1136(error)X
-1313(to)X
-1395(execute)X
-1661(the)X
-3 f
-1779(_)X
-1 f
-1839(command)X
-2175(when)X
-2369(the)X
-2487(cursor)X
-2708(is)X
-2781(on)X
-2881(the)X
-2999(\256rst)X
-3143(character)X
-3459(in)X
-3541(the)X
-3659(line.)X
-776 4092(Line:)N
-1136(The)X
-1281(current)X
-1529(line)X
-1669(plus)X
-7 f
-1822(count)X
-2110(-)X
-2206(1)X
-1 f
-(.)S
-776 4182(Column:)N
-1136(The)X
-1281(\256rst)X
-1425(nonblank)X
-1743(character)X
-2059(in)X
-2141(the)X
-2259(line.)X
-776 4272(Options:)N
-1136(None.)X
-3 f
-576 4452([count])N
-841(a)X
-1 f
-776 4542(Enter)N
-971(input)X
-1156(mode,)X
-1375(appending)X
-1730(the)X
-1850(text)X
-1992(after)X
-2162(the)X
-2282(cursor.)X
-2545(If)X
-7 f
-2621(count)X
-1 f
-2883(is)X
-2958(speci\256ed,)X
-3285(the)X
-3405(text)X
-3547(input)X
-3733(is)X
-3808(repeat-)X
-776 4632(edly)N
-934(input)X
-7 f
-1118(count)X
-1406(-)X
-1502(1)X
-1 f
-1570(more)X
-1755(times.)X
-776 4812(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 4902(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 4992(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 5082(gin)N
-1 f
-1262(options.)X
-3 f
-576 5262([count])N
-841(b)X
-1 f
-776 5352(Move)N
-986(backward)X
-7 f
-1322(count)X
-1 f
-1585(words.)X
-1844(Move)X
-2054(the)X
-2175(cursor)X
-2400(backward)X
-2737(to)X
-2823(the)X
-2945(beginning)X
-3289(of)X
-3380(a)X
-3440(word)X
-3629(by)X
-3733(repeating)X
-776 5442(the)N
-895(following)X
-1227(algorithm:)X
-1581(if)X
-1651(the)X
-1770(current)X
-2018(position)X
-2295(is)X
-2368(at)X
-2446(the)X
-2564(beginning)X
-2904(of)X
-2991(a)X
-3047(word,)X
-3252(move)X
-3450(to)X
-3532(the)X
-3650(\256rst)X
-3794(charac-)X
-776 5532(ter)N
-883(of)X
-972(the)X
-1092(preceding)X
-1431(word.)X
-1658(Otherwise,)X
-2030(the)X
-2150(current)X
-2400(position)X
-2679(moves)X
-2910(to)X
-2994(the)X
-3114(\256rst)X
-3260(character)X
-3578(of)X
-3667(the)X
-3787(word)X
-3974(at)X
-776 5622(the)N
-895(current)X
-1144(position.)X
-1462(If)X
-1537(no)X
-1638(preceding)X
-1976(word)X
-2161(exists)X
-2363(on)X
-2463(the)X
-2581(current)X
-2829(line,)X
-2989(move)X
-3187(to)X
-3269(the)X
-3387(\256rst)X
-3531(character)X
-3847(of)X
-3934(the)X
-776 5712(last)N
-907(word)X
-1092(on)X
-1192(the)X
-1310(\256rst)X
-1454(preceding)X
-1791(line)X
-1931(that)X
-2071(contains)X
-2358(a)X
-2414(word.)X
-
-26 p
-%%Page: 26 25
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-26)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(The)N
-3 f
-921(b)X
-1 f
-985(command)X
-1321(may)X
-1479(be)X
-1575(used)X
-1742(as)X
-1829(the)X
-1947(motion)X
-2193(component)X
-2570(of)X
-2658(other)X
-3 f
-2844(vi)X
-1 f
-2927(commands,)X
-3315(in)X
-3398(which)X
-3615(case)X
-3775(any)X
-3912(text)X
-776 852(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 1032(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(word)X
-2259(selected.)X
-776 1122(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(of)X
-2005(the)X
-2123(word)X
-2308(selected.)X
-776 1212(Options:)N
-1136(None.)X
-3 f
-576 1392([buffer])N
-864([count])X
-1129(c)X
-1185(motion)X
-1 f
-776 1482(Change)N
-1041(a)X
-1097(region)X
-1322(of)X
-1409(text.)X
-1589(If)X
-1663(only)X
-1825(part)X
-1970(of)X
-2057(a)X
-2113(single)X
-2324(line)X
-2464(is)X
-2537(affected,)X
-2838(then)X
-2997(the)X
-3116(last)X
-3248(character)X
-3565(being)X
-3764(changed)X
-776 1572(is)N
-849(marked)X
-1110(with)X
-1272(a)X
-1328(``)X
-7 f
-1382($)X
-1 f
-(''.)S
-1544(Otherwise,)X
-1914(the)X
-2032(region)X
-2257(of)X
-2344(text)X
-2484(is)X
-2557(deleted,)X
-2829(and)X
-2965(input)X
-3149(mode)X
-3347(is)X
-3420(entered.)X
-776 1752(If)N
-7 f
-850(count)X
-1 f
-1110(is)X
-1183(speci\256ed,)X
-1508(it)X
-1572(is)X
-1645(applied)X
-1901(to)X
-1983(the)X
-7 f
-2101(motion)X
-1 f
-(.)S
-776 1932(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 2022(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 2112(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 2202(gin)N
-1 f
-1262(options.)X
-3 f
-576 2382([buffer])N
-864([count])X
-1129(d)X
-1193(motion)X
-1 f
-776 2472(Delete)N
-1006(a)X
-1062(region)X
-1287(of)X
-1374(text.)X
-1554(If)X
-7 f
-1628(count)X
-1 f
-1888(is)X
-1961(speci\256ed,)X
-2286(it)X
-2350(is)X
-2423(applied)X
-2679(to)X
-2761(the)X
-7 f
-2879(motion)X
-1 f
-(.)S
-776 2652(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(where)X
-1815(the)X
-1933(region)X
-2158(starts.)X
-776 2742(Column:)N
-1136(Set)X
-1261(to)X
-1346(the)X
-1467(\256rst)X
-1615(character)X
-1935(in)X
-2021(the)X
-2143(line)X
-2287(after)X
-2459(the)X
-2581(last)X
-2716(character)X
-3036(in)X
-3122(the)X
-3244(region.)X
-3513(If)X
-3591(no)X
-3695(such)X
-3866(char-)X
-1136 2832(acter)N
-1313(exists,)X
-1535(set)X
-1644(to)X
-1726(the)X
-1844(last)X
-1975(character)X
-2291(before)X
-2517(the)X
-2635(region.)X
-776 2922(Options:)N
-1136(None.)X
-3 f
-576 3102([count])N
-841(e)X
-1 f
-776 3192(Move)N
-984(forward)X
-7 f
-1260(count)X
-1 f
-1521(end-of-words.)X
-2015(Move)X
-2223(the)X
-2342(cursor)X
-2564(forward)X
-2840(to)X
-2923(the)X
-3042(end)X
-3179(of)X
-3267(a)X
-3324(word)X
-3511(by)X
-3613(repeating)X
-3934(the)X
-776 3282(following)N
-1108(algorithm:)X
-1462(if)X
-1532(the)X
-1651(current)X
-1900(position)X
-2178(is)X
-2252(the)X
-2371(end)X
-2508(of)X
-2596(a)X
-2653(word,)X
-2859(move)X
-3058(to)X
-3141(the)X
-3260(last)X
-3392(character)X
-3709(of)X
-3797(the)X
-3916(fol-)X
-776 3372(lowing)N
-1034(word.)X
-1275(Otherwise,)X
-1661(move)X
-1876(to)X
-1975(the)X
-2110(last)X
-2258(character)X
-2591(of)X
-2695(the)X
-2830(word)X
-3032(at)X
-3127(the)X
-3262(current)X
-3527(position.)X
-3861(If)X
-3952(no)X
-776 3462(succeeding)N
-1161(word)X
-1354(exists)X
-1564(on)X
-1672(the)X
-1798(current)X
-2053(line,)X
-2220(move)X
-2425(to)X
-2514(the)X
-2639(last)X
-2777(character)X
-3100(of)X
-3194(the)X
-3319(\256rst)X
-3470(word)X
-3662(on)X
-3769(the)X
-3894(next)X
-776 3552(following)N
-1107(line)X
-1247(that)X
-1387(contains)X
-1674(a)X
-1730(word.)X
-776 3732(The)N
-3 f
-921(e)X
-1 f
-978(command)X
-1315(may)X
-1474(be)X
-1571(used)X
-1739(as)X
-1827(the)X
-1946(motion)X
-2193(component)X
-2570(of)X
-2658(other)X
-3 f
-2844(vi)X
-1 f
-2927(commands,)X
-3315(in)X
-3398(which)X
-3615(case)X
-3775(any)X
-3912(text)X
-776 3822(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 4002(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(word)X
-2259(selected.)X
-776 4092(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(of)X
-1992(the)X
-2110(word)X
-2295(selected.)X
-776 4182(Options:)N
-1136(None.)X
-3 f
-576 4362([count])N
-841(f)X
-888 0.3125(<character>)AX
-1 f
-776 4452(Search)N
-1015(forward,)X
-7 f
-1310(count)X
-1 f
-1570(times,)X
-1783(through)X
-2052(the)X
-2170(rest)X
-2306(of)X
-2393(the)X
-2511(current)X
-2759(line)X
-2899(for)X
-7 f
-3013(<character>)X
-1 f
-(.)S
-776 4632(The)N
-3 f
-922(f)X
-1 f
-970(command)X
-1307(may)X
-1466(be)X
-1563(used)X
-1731(as)X
-1819(the)X
-1938(motion)X
-2185(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 4722(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 4902(Line:)N
-1136(Unchanged.)X
-776 4992(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458 0.3068(searched-for)AX
-1881(character.)X
-776 5082(Options:)N
-1136(None.)X
-3 f
-576 5262([count])N
-841(i)X
-1 f
-776 5352(Enter)N
-971(input)X
-1156(mode,)X
-1375(inserting)X
-1676(the)X
-1795(text)X
-1936(before)X
-2163(the)X
-2282(cursor.)X
-2545(If)X
-7 f
-2621(count)X
-1 f
-2883(is)X
-2958(speci\256ed,)X
-3285(the)X
-3405(text)X
-3547(input)X
-3733(is)X
-3808(repeat-)X
-776 5442(edly)N
-934(input)X
-7 f
-1118(count)X
-1406(-)X
-1502(1)X
-1 f
-1570(more)X
-1755(times.)X
-776 5622(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 5712(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-
-27 p
-%%Page: 27 26
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-27)X
-1 f
-776 762(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 852(gin)N
-1 f
-1262(options.)X
-3 f
-576 1032(m)N
-663 0.3125(<character>)AX
-1 f
-776 1122(Save)N
-956(the)X
-1078(current)X
-1330(context)X
-1590(\(line)X
-1761(and)X
-1902(column\))X
-2194(as)X
-7 f
-2286(<character>)X
-1 f
-(.)S
-2879(The)X
-3029(exact)X
-3224(position)X
-3506(is)X
-3584(referred)X
-3865(to)X
-3952(by)X
-776 1212(``)N
-7 f
-830(`<character>)X
-1 f
-(''.)S
-1520(The)X
-1665(line)X
-1805(is)X
-1878(referred)X
-2154(to)X
-2236(by)X
-2336(``)X
-7 f
-2390('<character>)X
-1 f
-(''.)S
-776 1392(Historically,)N
-7 f
-1205(<character>)X
-1 f
-1764(was)X
-1920(restricted)X
-2250(to)X
-2343(lower-case)X
-2723(letters)X
-2950(only,)X
-3 f
-3143(nvi)X
-1 f
-3280(permits)X
-3551(the)X
-3680(use)X
-3818(of)X
-3916(any)X
-776 1482(character.)N
-776 1662(Line:)N
-1136(Unchanged.)X
-776 1752(Column:)N
-1136(Unchanged.)X
-776 1842(Options:)N
-1136(None.)X
-3 f
-576 2022([count])N
-841(o)X
-1 f
-776 2112(Enter)N
-970(input)X
-1154(mode,)X
-1372(appending)X
-1727(text)X
-1868(in)X
-1951(a)X
-2008(new)X
-2163(line)X
-2304(under)X
-2508(the)X
-2627(current)X
-2876(line.)X
-3057(If)X
-7 f
-3132(count)X
-1 f
-3393(is)X
-3467(speci\256ed,)X
-3793(the)X
-3912(text)X
-776 2202(input)N
-960(is)X
-1033(repeatedly)X
-1388(input)X
-7 f
-1572(count)X
-1860(-)X
-1956(1)X
-1 f
-2024(more)X
-2209(times.)X
-776 2382(Historically,)N
-1194(any)X
-7 f
-1330(count)X
-1 f
-1590(speci\256ed)X
-1895(to)X
-1977(the)X
-3 f
-2095(o)X
-1 f
-2155(command)X
-2491(was)X
-2636(ignored.)X
-776 2562(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 2652(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 2742(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 2832(gin)N
-1 f
-1262(options.)X
-3 f
-576 3012([buffer])N
-864(p)X
-1 f
-776 3102(Append)N
-1055(text)X
-1200(from)X
-1381(a)X
-1442(buffer.)X
-1704(Text)X
-1876(from)X
-2057(the)X
-2180(buffer)X
-2402(\(the)X
-2552(unnamed)X
-2871(buffer)X
-3093(by)X
-3198(default\))X
-3473(is)X
-3551(appended)X
-3884(after)X
-776 3192(the)N
-894(current)X
-1142(column)X
-1402(or,)X
-1509(if)X
-1578(the)X
-1696(buffer)X
-1913(is)X
-1986(line)X
-2126(oriented,)X
-2429(after)X
-2597(the)X
-2715(current)X
-2963(line.)X
-776 3372(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(line)X
-1742(appended,)X
-2090(if)X
-2159(the)X
-2277(buffer)X
-2494(is)X
-2567(line)X
-2707(oriented,)X
-3010(otherwise)X
-3342(unchanged.)X
-776 3462(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2237(of)X
-2325(the)X
-2444(appended)X
-2773(text)X
-2914(if)X
-2984(the)X
-3103(buffer)X
-3321(is)X
-3395(line)X
-3536(oriented,)X
-3840(other-)X
-1136 3552(wise,)N
-1323(the)X
-1441(last)X
-1572(character)X
-1888(of)X
-1975(the)X
-2093(appended)X
-2421(text.)X
-776 3642(Options:)N
-1136(None.)X
-3 f
-576 3822([count])N
-841(r)X
-897 0.3125(<character>)AX
-1 f
-776 3912(Replace)N
-1073(characters.)X
-1478(The)X
-1641(next)X
-7 f
-1817(count)X
-1 f
-2095(characters)X
-2460(in)X
-2560(the)X
-2696(line)X
-2854(are)X
-2991(replaced)X
-3303(with)X
-7 f
-3484(<character>)X
-1 f
-(.)S
-776 4002(Replacing)N
-1121(characters)X
-1468(with)X
-7 f
-1630(<newline>)X
-1 f
-2082(characters)X
-2429(results)X
-2658(in)X
-2740(creating)X
-3019(new,)X
-3193(empty)X
-3413(lines)X
-3584(into)X
-3728(the)X
-3846(\256le.)X
-776 4182(If)N
-7 f
-850(<character>)X
-1 f
-1398(is)X
-7 f
-1471(<escape>)X
-1 f
-(,)S
-1895(the)X
-2013(command)X
-2349(is)X
-2422(cancelled.)X
-776 4362(Line:)N
-1136(Unchanged)X
-1527(unless)X
-1752(the)X
-1875(replacement)X
-2293(character)X
-2614(is)X
-2692(a)X
-7 f
-2753(<newline>)X
-1 f
-(,)S
-3231(in)X
-3319(which)X
-3541(case)X
-3706(it)X
-3776(is)X
-3855(set)X
-3970(to)X
-1136 4452(the)N
-1254(current)X
-1502(line)X
-1642(plus)X
-7 f
-1795(count)X
-2083(-)X
-2179(1)X
-1 f
-(.)S
-776 4542(Column:)N
-1136(Set)X
-1264(to)X
-1352(the)X
-1476(last)X
-1613(character)X
-1935(replaced,)X
-2254(unless)X
-2480(the)X
-2605(replacement)X
-3025(character)X
-3348(is)X
-3428(a)X
-7 f
-3491(<newline>)X
-1 f
-(,)S
-3970(in)X
-1136 4632(which)N
-1352(case)X
-1511(the)X
-1629(cursor)X
-1850(is)X
-1923(in)X
-2005(column)X
-2265(1)X
-2325(of)X
-2412(the)X
-2530(last)X
-2661(line)X
-2801(inserted.)X
-776 4722(Options:)N
-1136(None.)X
-3 f
-576 4902([buffer])N
-864([count])X
-1129(s)X
-1 f
-776 4992(Substitute)N
-7 f
-1115(count)X
-1 f
-1375(characters)X
-1722(in)X
-1804(the)X
-1922(current)X
-2170(line)X
-2310(starting)X
-2570(with)X
-2732(the)X
-2850(current)X
-3098(character.)X
-776 5172(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(line)X
-1729(upon)X
-1909(which)X
-2125(characters)X
-2472(were)X
-2649(entered.)X
-776 5262(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(last)X
-1589(character)X
-1905(entered.)X
-776 5352(Options:)N
-1136(Affected)X
-1440(by)X
-1542(the)X
-3 f
-1662(altwerase)X
-1 f
-1988(,)X
-3 f
-2030(autoindent)X
-1 f
-2398(,)X
-3 f
-2440(beautify)X
-1 f
-(,)S
-3 f
-2762(showmatch)X
-1 f
-3149(,)X
-3 f
-3191(ttywerase)X
-1 f
-3545(and)X
-3 f
-3684(wrapmar-)X
-1136 5442(gin)N
-1 f
-1262(options.)X
-3 f
-576 5622([count])N
-841(t)X
-888 0.3125(<character>)AX
-1 f
-776 5712(Search)N
-1014(forward,)X
-7 f
-1308(count)X
-1 f
-1567(times,)X
-1779(through)X
-2047(the)X
-2164(current)X
-2411(line)X
-2551(for)X
-2665(the)X
-2783(character)X
-3099(immediately)X
-2 f
-3519(before)X
-7 f
-3744(<char-)X
-776 5802(acter>)N
-1 f
-(.)S
-
-28 p
-%%Page: 28 27
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-28)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(The)N
-3 f
-922(t)X
-1 f
-970(command)X
-1307(may)X
-1466(be)X
-1563(used)X
-1731(as)X
-1819(the)X
-1938(motion)X
-2185(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 852(copied)N
-1010(into)X
-1154(a)X
-1210(buffer)X
-1427(is)X
-1500(character)X
-1816(oriented.)X
-776 1032(Line:)N
-1136(Unchanged.)X
-776 1122(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(character)X
-2 f
-1774(before)X
-1 f
-1999(the)X
-2117 0.3068(searched-for)AX
-2540(character.)X
-776 1212(Options:)N
-1136(None.)X
-3 f
-576 1392(u)N
-1 f
-776 1482(Undo)N
-985(the)X
-1114(last)X
-1256(change)X
-1515(made)X
-1720(to)X
-1813(the)X
-1942(\256le.)X
-2115(If)X
-2200(repeated,)X
-2524(the)X
-3 f
-2653(u)X
-1 f
-2728(command)X
-3075(alternates)X
-3415(between)X
-3715(these)X
-3912(two)X
-776 1572(states,)N
-997(and)X
-1136(is)X
-1212(its)X
-1310(own)X
-1471(inverse.)X
-1766(When)X
-1981(used)X
-2151(after)X
-2322(an)X
-2421(insert)X
-2622(that)X
-2765(inserted)X
-3042(text)X
-3185(on)X
-3287(more)X
-3474(than)X
-3634(one)X
-3772(line,)X
-3934(the)X
-776 1662(lines)N
-947(are)X
-1066(saved)X
-1269(in)X
-1351(the)X
-1469(numeric)X
-1752(buffers.)X
-776 1842(The)N
-3 f
-928(.)X
-1 f
-995(command,)X
-1358(when)X
-1560(used)X
-1735(immediately)X
-2163(after)X
-2339(the)X
-3 f
-2465(u)X
-1 f
-2537(command,)X
-2901(causes)X
-3139(the)X
-3265(change)X
-3521(log)X
-3651(to)X
-3741(be)X
-3845(rolled)X
-776 1932(forward)N
-1051(or)X
-1138(backward,)X
-1491(depending)X
-1845(on)X
-1945(the)X
-2063(action)X
-2279(of)X
-2366(the)X
-3 f
-2484(u)X
-1 f
-2548(command.)X
-776 2112(Line:)N
-1136(Set)X
-1276(to)X
-1376(the)X
-1512(position)X
-1807(of)X
-1912(the)X
-2048(\256rst)X
-2211(line)X
-2370(changed,)X
-2697(if)X
-2785(the)X
-2922(reversal)X
-3216(affects)X
-3470(only)X
-3651(one)X
-3806(line)X
-3965(or)X
-1136 2202(represents)N
-1482(an)X
-1578(addition)X
-1860(or)X
-1947(change;)X
-2217(otherwise,)X
-2569(the)X
-2687(line)X
-2827(preceding)X
-3164(the)X
-3282(deleted)X
-3534(text.)X
-776 2292(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(cursor)X
-1679(position)X
-1956(before)X
-2182(the)X
-2300(change)X
-2548(was)X
-2693(made.)X
-776 2382(Options:)N
-1136(None.)X
-3 f
-576 2562([count])N
-841(w)X
-1 f
-776 2652(Move)N
-986(forward)X
-7 f
-1264(count)X
-1 f
-1527(words.)X
-1786(Move)X
-1996(the)X
-2117(cursor)X
-2341(forward)X
-2619(to)X
-2704(the)X
-2825(beginning)X
-3168(of)X
-3258(a)X
-3318(word)X
-3507(by)X
-3611(repeating)X
-3934(the)X
-776 2742(following)N
-1111(algorithm:)X
-1468(if)X
-1541(the)X
-1663(current)X
-1915(position)X
-2196(is)X
-2273(at)X
-2355(the)X
-2477(beginning)X
-2821(of)X
-2912(a)X
-2972(word,)X
-3181(move)X
-3383(to)X
-3468(the)X
-3589(\256rst)X
-3736(character)X
-776 2832(of)N
-866(the)X
-987(next)X
-1148(word.)X
-1376(If)X
-1453(no)X
-1556(subsequent)X
-1935(word)X
-2123(exists)X
-2328(on)X
-2431(the)X
-2552(current)X
-2803(line,)X
-2966(move)X
-3167(to)X
-3253(the)X
-3375(\256rst)X
-3523(character)X
-3843(of)X
-3934(the)X
-776 2922(\256rst)N
-920(word)X
-1105(on)X
-1205(the)X
-1323(\256rst)X
-1467(following)X
-1798(line)X
-1938(that)X
-2078(contains)X
-2365(a)X
-2421(word.)X
-776 3102(The)N
-3 f
-928(w)X
-1 f
-1014(command)X
-1358(may)X
-1524(be)X
-1628(used)X
-1803(as)X
-1898(the)X
-2024(motion)X
-2278(component)X
-2662(of)X
-2757(other)X
-3 f
-2950(vi)X
-1 f
-3040(commands,)X
-3435(in)X
-3525(which)X
-3749(case)X
-3916(any)X
-776 3192(text)N
-916(copied)X
-1150(into)X
-1294(a)X
-1350(buffer)X
-1567(is)X
-1640(character)X
-1956(oriented.)X
-776 3372(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(word)X
-2259(selected.)X
-776 3462(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(character)X
-1918(of)X
-2005(the)X
-2123(word)X
-2308(selected.)X
-776 3552(Options:)N
-1136(None.)X
-3 f
-576 3732([buffer])N
-864([count])X
-1129(x)X
-1 f
-776 3822(Delete)N
-7 f
-1007(count)X
-1 f
-1268(characters.)X
-1656(The)X
-1802(deletion)X
-2081(is)X
-2155(at)X
-2235(the)X
-2355(current)X
-2605(character)X
-2923(position.)X
-3242(If)X
-3318(the)X
-3438(number)X
-3705(of)X
-3794(charac-)X
-776 3912(ters)N
-915(to)X
-1000(be)X
-1099(deleted)X
-1354(is)X
-1430(greater)X
-1676(than)X
-1836(or)X
-1925(equal)X
-2121(to)X
-2205(the)X
-2325(number)X
-2592(of)X
-2681(characters)X
-3030(to)X
-3114(the)X
-3234(end)X
-3372(of)X
-3461(the)X
-3581(line,)X
-3743(all)X
-3845(of)X
-3934(the)X
-776 4002(characters)N
-1123(from)X
-1299(the)X
-1417(current)X
-1665(cursor)X
-1886(position)X
-2163(to)X
-2245(the)X
-2363(end)X
-2499(of)X
-2586(the)X
-2704(line)X
-2844(are)X
-2963(deleted.)X
-776 4182(Line:)N
-1136(Unchanged.)X
-776 4272(Column:)N
-1136(Unchanged)X
-1525(unless)X
-1748(the)X
-1869(last)X
-2003(character)X
-2322(in)X
-2407(the)X
-2528(line)X
-2671(is)X
-2747(deleted)X
-3002(and)X
-3141(the)X
-3263(cursor)X
-3488(is)X
-3565(not)X
-3691(already)X
-3952(on)X
-1136 4362(the)N
-1254(\256rst)X
-1398(character)X
-1714(in)X
-1796(the)X
-1914(line,)X
-2074(in)X
-2156(which)X
-2372(case)X
-2531(it)X
-2595(is)X
-2668(set)X
-2777(to)X
-2859(the)X
-2977(previous)X
-3273(character.)X
-776 4452(Options:)N
-1136(None.)X
-3 f
-576 4632([buffer])N
-864([count])X
-1129(y)X
-1189(motion)X
-1 f
-776 4722(Copy)N
-981(\(or)X
-1107(``yank''\))X
-1430(a)X
-1498(text)X
-1650(region)X
-1887(speci\256ed)X
-2204(by)X
-2316(the)X
-7 f
-2446(count)X
-1 f
-2718(and)X
-2866(motion)X
-3124(into)X
-3280(a)X
-3349(buffer.)X
-3619(If)X
-7 f
-3706(count)X
-1 f
-3979(is)X
-776 4812(speci\256ed,)N
-1101(it)X
-1165(is)X
-1238(applied)X
-1494(to)X
-1576(the)X
-7 f
-1694(motion)X
-1 f
-(.)S
-776 4992(Line:)N
-1136(Unchanged,)X
-1544(unless)X
-1766(the)X
-1886(region)X
-2113(covers)X
-2345(more)X
-2532(than)X
-2692(a)X
-2751(single)X
-2965(line,)X
-3128(in)X
-3213(which)X
-3432(case)X
-3594(it)X
-3661(is)X
-3737(set)X
-3849(to)X
-3934(the)X
-1136 5082(line)N
-1276(where)X
-1493(the)X
-1611(region)X
-1836(starts.)X
-776 5172(Column:)N
-1136(Unchanged,)X
-1544(unless)X
-1766(the)X
-1886(region)X
-2113(covers)X
-2345(more)X
-2532(than)X
-2692(a)X
-2751(single)X
-2965(line,)X
-3128(in)X
-3213(which)X
-3432(case)X
-3594(it)X
-3661(is)X
-3737(set)X
-3849(to)X
-3934(the)X
-1136 5262(character)N
-1452(were)X
-1629(the)X
-1747(region)X
-1972(starts.)X
-776 5352(Options:)N
-1136(None.)X
-3 f
-576 5532([count1])N
-881(z)X
-937([count2])X
-1242(type)X
-1 f
-776 5622(Redraw)N
-1049(the)X
-1170(screen)X
-1399(with)X
-1564(a)X
-1623(window)X
-7 f
-1904(count2)X
-1 f
-2215(lines)X
-2389(long,)X
-2574(with)X
-2740(line)X
-7 f
-2884(count1)X
-1 f
-3196(placed)X
-3430(as)X
-3521(speci\256ed)X
-3830(by)X
-3934(the)X
-7 f
-776 5712(type)N
-1 f
-1005(character.)X
-1378(If)X
-7 f
-1469(count1)X
-1 f
-1794(is)X
-1884(not)X
-2023(speci\256ed,)X
-2365(it)X
-2445(defaults)X
-2735(to)X
-2833(the)X
-2967(current)X
-3231(line.)X
-3427(If)X
-7 f
-3517(count2)X
-1 f
-3841(is)X
-3930(not)X
-776 5802(speci\256ed,)N
-1101(it)X
-1165(defaults)X
-1439(to)X
-1521(the)X
-1639(current)X
-1887(window)X
-2165(size.)X
-
-29 p
-%%Page: 29 28
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-29)X
-1 f
-776 762(The)N
-921(following)X
-7 f
-1252(type)X
-1 f
-1464(characters)X
-1811(may)X
-1969(be)X
-2065(used:)X
-776 942(+)N
-1136(If)X
-7 f
-1225(count1)X
-1 f
-1548(is)X
-1636(speci\256ed,)X
-1977(place)X
-2183(the)X
-2317(line)X
-7 f
-2473(count1)X
-1 f
-2797(at)X
-2891(the)X
-3025(top)X
-3163(of)X
-3266(the)X
-3400(screen.)X
-3682(Otherwise,)X
-1136 1032(display)N
-1387(the)X
-1505(screen)X
-1731(after)X
-1899(the)X
-2017(current)X
-2265(screen,)X
-2511(similarly)X
-2815(to)X
-2897(the)X
-3 f
-3015(<control-F>)X
-1 f
-3448(command.)X
-776 1122 0.2266(<carriage-return>)AN
-1136 1212(Place)N
-1330(the)X
-1448(line)X
-7 f
-1588(count1)X
-1 f
-1896(at)X
-1974(the)X
-2092(top)X
-2214(of)X
-2301(the)X
-2419(screen.)X
-776 1302(.)N
-1136(Place)X
-1330(the)X
-1448(line)X
-7 f
-1588(count1)X
-1 f
-1896(in)X
-1978(the)X
-2096(center)X
-2313(of)X
-2400(the)X
-2518(screen.)X
-9 f
-776 1392(-)N
-1 f
-1136(Place)X
-1330(the)X
-1448(line)X
-7 f
-1588(count1)X
-1 f
-1896(at)X
-1974(the)X
-2092(bottom)X
-2338(of)X
-2425(the)X
-2543(screen.)X
-776 1482(\303)N
-1136(If)X
-7 f
-1214(count1)X
-1 f
-1526(is)X
-1603(speci\256ed,)X
-1932(place)X
-2126(the)X
-2248(line)X
-2392(that)X
-2536(is)X
-2613(at)X
-2695(the)X
-2817(top)X
-2943(of)X
-3034(the)X
-3156(screen)X
-3386(when)X
-7 f
-3584(count1)X
-1 f
-3896(is)X
-3974(at)X
-1136 1572(the)N
-1264(bottom)X
-1520(of)X
-1617(the)X
-1745(screen,)X
-2001(at)X
-2089(the)X
-2217(bottom)X
-2472(of)X
-2568(the)X
-2695(screen,)X
-2950(i.e.)X
-3077(display)X
-3337(the)X
-3464(screen)X
-3699(before)X
-3934(the)X
-1136 1662(screen)N
-1362(before)X
-7 f
-1588(count1)X
-1 f
-(.)S
-1937(Otherwise,)X
-2308(display)X
-2560(the)X
-2679(screen)X
-2906(before)X
-3133(the)X
-3252(current)X
-3501(screen,)X
-3748(similarly)X
-1136 1752(to)N
-1218(the)X
-3 f
-1336(<control-B>)X
-1 f
-1773(command.)X
-776 1932(Line:)N
-1136(Set)X
-1263(to)X
-7 f
-1350(count1)X
-1 f
-1663(unless)X
-7 f
-1888(count1)X
-1 f
-2201(is)X
-2279(not)X
-2406(speci\256ed)X
-2716(and)X
-2857(the)X
-7 f
-2980(type)X
-1 f
-3197(character)X
-3518(was)X
-3668(either)X
-3876(``)X
-7 f
-3930(\303)X
-1 f
-('')S
-1136 2022(or)N
-1224(``)X
-7 f
-1278(+)X
-1 f
-('',)S
-1421(in)X
-1504(which)X
-1721(case)X
-1881(it)X
-1946(is)X
-2020(set)X
-2130(to)X
-2213(the)X
-2332(line)X
-2473(before)X
-2700(the)X
-2819(\256rst)X
-2964(line)X
-3105(on)X
-3206(the)X
-3325(previous)X
-3621(screen)X
-3847(or)X
-3934(the)X
-1136 2112(line)N
-1276(after)X
-1444(the)X
-1562(last)X
-1693(line)X
-1833(on)X
-1933(the)X
-2051(previous)X
-2347(screen,)X
-2593(respectively.)X
-776 2202(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 2292(Options:)N
-1136(None.)X
-3 f
-576 2472([count])N
-841({)X
-1 f
-776 2562(Move)N
-983(backward)X
-7 f
-1316(count)X
-1 f
-1576(paragraphs.)X
-776 2742(The)N
-3 f
-922({)X
-1 f
-975(command)X
-1312(is)X
-1386(an)X
-1483(absolute)X
-1771(movement.)X
-2170(The)X
-3 f
-2316({)X
-1 f
-2369(command)X
-2706(may)X
-2865(be)X
-2962(used)X
-3130(as)X
-3219(the)X
-3339(motion)X
-3587(component)X
-3965(of)X
-776 2832(other)N
-3 f
-963(vi)X
-1 f
-1047(commands,)X
-1436(in)X
-1520(which)X
-1738(case)X
-1899(any)X
-2036(text)X
-2177(copied)X
-2412(into)X
-2557(a)X
-2614(buffer)X
-2832(is)X
-2906(character)X
-3223(oriented,)X
-3527(unless)X
-3748(the)X
-3867(start-)X
-776 2922(ing)N
-898(character)X
-1214(is)X
-1287(the)X
-1405(\256rst)X
-1549(character)X
-1865(on)X
-1965(its)X
-2060(line,)X
-2220(in)X
-2302(which)X
-2518(case)X
-2677(it)X
-2741(is)X
-2814(line)X
-2954(oriented.)X
-776 3102(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(beginning)X
-2414(of)X
-2501(the)X
-2619(previous)X
-2915(paragraph.)X
-776 3192(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 3282(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(paragraph)X
-1 f
-2040(option.)X
-3 f
-576 3462([count])N
-841(|)X
-1 f
-776 3552(Move)N
-983(to)X
-1065(a)X
-1121(speci\256c)X
-2 f
-1386(column)X
-1 f
-1642(position)X
-1919(on)X
-2019(the)X
-2137(current)X
-2385(line.)X
-776 3732(The)N
-3 f
-922(|)X
-1 f
-962(command)X
-1300(may)X
-1460(be)X
-1558(used)X
-1727(as)X
-1816(the)X
-1936(motion)X
-2184(component)X
-2562(of)X
-2651(other)X
-3 f
-2838(vi)X
-1 f
-2922(commands,)X
-3311(in)X
-3395(which)X
-3613(case)X
-3774(any)X
-3912(text)X
-776 3822(copied)N
-1012(into)X
-1158(a)X
-1216(buffer)X
-1435(is)X
-1510(character)X
-1828(oriented.)X
-2153(It)X
-2224(is)X
-2299(an)X
-2397(error)X
-2576(to)X
-2660(use)X
-2789(the)X
-3 f
-2908(|)X
-1 f
-2947(command)X
-3284(as)X
-3372(a)X
-3429(motion)X
-3676(component)X
-776 3912(and)N
-912(for)X
-1026(the)X
-1144(cursor)X
-1365(not)X
-1487(to)X
-1569(move.)X
-776 4092(Line:)N
-1136(Unchanged.)X
-776 4182(Column:)N
-1136(Set)X
-1265(to)X
-1355(the)X
-1481(character)X
-1805(occupying)X
-2167(the)X
-2293(column)X
-2561(position)X
-2846(identi\256ed)X
-3176(by)X
-7 f
-3284(count)X
-1 f
-(,)S
-3572(if)X
-3649(the)X
-3775(position)X
-1136 4272(exists)N
-1339(in)X
-1422(the)X
-1541(line.)X
-1722(If)X
-1797(the)X
-1916(column)X
-2176(length)X
-2396(of)X
-2483(the)X
-2601(current)X
-2849(line)X
-2989(is)X
-3062(less)X
-3202(than)X
-7 f
-3360(count)X
-1 f
-(,)S
-3640(the)X
-3758(cursor)X
-3979(is)X
-1136 4362(moved)N
-1374(to)X
-1456(the)X
-1574(last)X
-1705(character)X
-2021(in)X
-2103(the)X
-2221(line.)X
-776 4452(Options:)N
-1136(None.)X
-3 f
-576 4632([count])N
-841(})X
-1 f
-776 4722(Move)N
-983(forward)X
-7 f
-1258(count)X
-1 f
-1518(paragraphs.)X
-776 4902(The)N
-3 f
-922(})X
-1 f
-975(command)X
-1312(is)X
-1386(an)X
-1483(absolute)X
-1771(movement.)X
-2170(The)X
-3 f
-2316(})X
-1 f
-2369(command)X
-2706(may)X
-2865(be)X
-2962(used)X
-3130(as)X
-3219(the)X
-3339(motion)X
-3587(component)X
-3965(of)X
-776 4992(other)N
-3 f
-963(vi)X
-1 f
-1047(commands,)X
-1436(in)X
-1520(which)X
-1738(case)X
-1899(any)X
-2036(text)X
-2177(copied)X
-2412(into)X
-2557(a)X
-2614(buffer)X
-2832(is)X
-2906(character)X
-3223(oriented,)X
-3527(unless)X
-3748(the)X
-3867(start-)X
-776 5082(ing)N
-898(character)X
-1214(is)X
-1287(at)X
-1365(or)X
-1452(before)X
-1678(any)X
-1814(nonblank)X
-2132(characters)X
-2479(in)X
-2561(its)X
-2656(line,)X
-2816(in)X
-2898(which)X
-3114(case)X
-3273(it)X
-3337(is)X
-3410(line)X
-3550(oriented.)X
-776 5262(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(containing)X
-1956(the)X
-2074(beginning)X
-2414(of)X
-2501(the)X
-2619(next)X
-2777(paragraph.)X
-776 5352(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(\256rst)X
-1602(nonblank)X
-1920(character)X
-2236(in)X
-2318(the)X
-2436(line.)X
-776 5442(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(paragraph)X
-1 f
-2040(option.)X
-3 f
-576 5622([count])N
-841(\304)X
-1 f
-776 5712(Reverse)N
-1062(the)X
-1187(case)X
-1353(of)X
-1447(the)X
-1572(next)X
-7 f
-1738(count)X
-1 f
-2006 0.3021(character\(s\).)AX
-2455(This)X
-2625(is)X
-2706(the)X
-2832(historic)X
-3100(semantic)X
-3413(for)X
-3535(the)X
-3 f
-3661(\304)X
-1 f
-3716(command)X
-776 5802(and)N
-912(it)X
-976(is)X
-1049(only)X
-1211(in)X
-1293(effect)X
-1497(if)X
-1566(the)X
-3 f
-1684(tildeop)X
-1 f
-1939(option)X
-2163(is)X
-2236(not)X
-2358(set.)X
-
-30 p
-%%Page: 30 29
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-30)N
-2826(Nvi/Nex)X
-3122 0.3906(Reference)AX
-3487(\(Vi)X
-3614(Commands\))X
-1 f
-776 762(Lowercase)N
-1148(alphabetic)X
-1501(characters)X
-1851(are)X
-1974(changed)X
-2266(to)X
-2352(uppercase,)X
-2718(and)X
-2858(uppercase)X
-3204(characters)X
-3555(are)X
-3678(changed)X
-3970(to)X
-776 852(lowercase.)N
-1158(No)X
-1276(other)X
-1461(characters)X
-1808(are)X
-1927(affected.)X
-776 1032(Historically,)N
-1203(the)X
-3 f
-1330(\304)X
-1 f
-1386(command)X
-1731(did)X
-1863(not)X
-1995(take)X
-2159(an)X
-2265(associated)X
-2625(count,)X
-2853(nor)X
-2990(did)X
-3122(it)X
-3196(move)X
-3404(past)X
-3563(the)X
-3691(end)X
-3837(of)X
-3934(the)X
-776 1122(current)N
-1025(line.)X
-1206(As)X
-1316(it)X
-1381(had)X
-1518(no)X
-1619(associated)X
-1970(motion)X
-2217(it)X
-2282(was)X
-2428(dif\256cult)X
-2701(to)X
-2783(change)X
-3031(the)X
-3149(case)X
-3308(of)X
-3395(large)X
-3576(blocks)X
-3805(of)X
-3892(text.)X
-776 1212(In)N
-3 f
-868(nvi)X
-1 f
-974(,)X
-1019(if)X
-1093(the)X
-1216(cursor)X
-1442(is)X
-1520(on)X
-1625(the)X
-1748(last)X
-1884(character)X
-2205(of)X
-2297(a)X
-2359(line,)X
-2525(and)X
-2667(there)X
-2854(are)X
-2979(more)X
-3170(lines)X
-3347(in)X
-3435(the)X
-3559(\256le,)X
-3707(the)X
-3831(cursor)X
-776 1302(moves)N
-1005(to)X
-1087(the)X
-1205(next)X
-1363(line.)X
-776 1482(It)N
-849(is)X
-926(not)X
-1052(an)X
-1152(error)X
-1333(to)X
-1419(specify)X
-1675(a)X
-1735(count)X
-1938(larger)X
-2151(than)X
-2314(the)X
-2437(number)X
-2707(of)X
-2799(characters)X
-3151(between)X
-3444(the)X
-3567(cursor)X
-3793(and)X
-3934(the)X
-776 1572(end)N
-912(of)X
-999(the)X
-1117(\256le.)X
-776 1752(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(of)X
-1685(the)X
-1803(character)X
-2119(after)X
-7 f
-2287(count)X
-1 f
-2547(characters,)X
-2914(or,)X
-3021(end)X
-3157(of)X
-3244(\256le.)X
-776 1842(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(character)X
-1774(after)X
-7 f
-1942(count)X
-1 f
-2202(characters,)X
-2569(or,)X
-2676(end-of-\256le.)X
-776 1932(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(tildeop)X
-1 f
-1911(option.)X
-3 f
-576 2112([count])N
-841(\304)X
-888(motion)X
-1 f
-776 2202(Reverse)N
-1063(the)X
-1189(case)X
-1356(of)X
-1451(the)X
-1577(characters)X
-1932(in)X
-2022(a)X
-2086(text)X
-2234(region)X
-2467(speci\256ed)X
-2780(by)X
-2888(the)X
-7 f
-3014(count)X
-1 f
-3282(and)X
-7 f
-3426(motion)X
-1 f
-(.)S
-3782(Only)X
-3970(in)X
-776 2292(effect)N
-980(if)X
-1049(the)X
-3 f
-1167(tildeop)X
-1 f
-1422(option)X
-1646(is)X
-1719(set.)X
-776 2472(Lowercase)N
-1147(characters)X
-1496(are)X
-1617(changed)X
-1908(to)X
-1993(uppercase,)X
-2358(and)X
-2497(uppercase)X
-2842(characters)X
-3192(are)X
-3314(changed)X
-3605(to)X
-3690(lowercase.)X
-776 2562(No)N
-894(other)X
-1079(characters)X
-1426(are)X
-1545(affected.)X
-776 2742(Line:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(line)X
-1598(of)X
-1685(the)X
-1803(character)X
-2119(after)X
-2287(the)X
-2405(last)X
-2536(character)X
-2852(in)X
-2934(the)X
-3052(region.)X
-776 2832(Column:)N
-1136(Set)X
-1258(to)X
-1340(the)X
-1458(character)X
-1774(after)X
-1942(the)X
-2060(last)X
-2191(character)X
-2507(in)X
-2589(the)X
-2707(region.)X
-776 2922(Options:)N
-1136(Affected)X
-1438(by)X
-1538(the)X
-3 f
-1656(tildeop)X
-1 f
-1911(option.)X
-3 f
-576 3102(<interrupt>)N
-1 f
-776 3192(Interrupt)N
-1087(the)X
-1215(current)X
-1473(operation.)X
-1846(Many)X
-2063(of)X
-2160(the)X
-2289(potentially)X
-2662(long-running)X
-3 f
-3111(vi)X
-1 f
-3204(commands)X
-3582(may)X
-3751(be)X
-3858(inter-)X
-776 3282(rupted)N
-1014(using)X
-1220(the)X
-1351(terminal)X
-1650(interrupt)X
-1958(character.)X
-2326(These)X
-2550(operations)X
-2916(include)X
-3184(searches,)X
-3509(\256le)X
-3643(reading)X
-3916(and)X
-776 3372(writing,)N
-1059(\256lter)X
-1242(operations)X
-1608(and)X
-1756(map)X
-1927(character)X
-2256(expansion.)X
-2654(Interrupts)X
-2999(are)X
-3131(also)X
-3293(enabled)X
-3576(when)X
-3783(running)X
-776 3462(commands)N
-1143(outside)X
-1394(of)X
-3 f
-1481(vi)X
-1 f
-1543(.)X
-776 3642(If)N
-853(the)X
-7 f
-974(<interrupt>)X
-1 f
-1525(character)X
-1844(is)X
-1920(used)X
-2090(to)X
-2175(interrupt)X
-2474(while)X
-2675(entering)X
-2961(an)X
-3 f
-3060(ex)X
-1 f
-3159(command,)X
-3518(the)X
-3639(command)X
-3979(is)X
-776 3732(aborted,)N
-1057(the)X
-1175(cursor)X
-1396(returns)X
-1639(to)X
-1721(its)X
-1816(previous)X
-2112(position,)X
-2409(and)X
-3 f
-2545(vi)X
-1 f
-2627(remains)X
-2901(in)X
-2983(command)X
-3319(mode.)X
-776 3912(Generally,)N
-1145(if)X
-1226(the)X
-7 f
-1356(<interrupt>)X
-1 f
-1916(character)X
-2244(is)X
-2329(used)X
-2508(to)X
-2603(interrupt)X
-2912(any)X
-3061(operation,)X
-3417(any)X
-3566(changes)X
-3858(made)X
-776 4002(before)N
-1002(the)X
-1120(interrupt)X
-1416(are)X
-1535(left)X
-1662(in)X
-1744(place.)X
-776 4182(Line:)N
-1136(Dependent)X
-1504(on)X
-1604(the)X
-1722(operation)X
-2045(being)X
-2243(interrupted.)X
-776 4272(Column:)N
-1136(Dependent)X
-1504(on)X
-1604(the)X
-1722(operation)X
-2045(being)X
-2243(interrupted.)X
-776 4362(Options:)N
-1136(None.)X
-3 f
-776 4548(11.)N
-916(Vi)X
-1016(Text)X
-1192(Input)X
-1402(Commands)X
-1 f
-976 4671(The)N
-1121(following)X
-1452(section)X
-1699(describes)X
-2018(the)X
-2136(commands)X
-2503(available)X
-2813(in)X
-2895(the)X
-3013(text)X
-3153(input)X
-3337(mode)X
-3535(of)X
-3622(the)X
-3 f
-3740(vi)X
-1 f
-3822(editor.)X
-976 4794(Historically,)N
-3 f
-1394(vi)X
-1 f
-1476(implementations)X
-2030(only)X
-2193(permitted)X
-2521(the)X
-2640(characters)X
-2988(inserted)X
-3263(on)X
-3364(the)X
-3483(current)X
-3732(line)X
-3873(to)X
-3956(be)X
-776 4884(erased.)N
-1060(In)X
-1165(addition,)X
-1485(only)X
-1665(the)X
-7 f
-1801(<control-D>)X
-1 f
-2367(erase)X
-2571(character)X
-2905(and)X
-3059(the)X
-3195(``)X
-7 f
-3249(0<control-D>)X
-1 f
-('')S
-3916(and)X
-776 4974(``)N
-7 f
-830(\303<control-D>)X
-1 f
-('')S
-1488(erase)X
-1683(strings)X
-1925(could)X
-2132(erase)X
-2327(autoindent)X
-2694(characters.)X
-3090(This)X
-3261(implementation)X
-3792(permits)X
-776 5064(erasure)N
-1038(to)X
-1129(continue)X
-1434(past)X
-1592(the)X
-1719(beginning)X
-2068(of)X
-2164(the)X
-2291(current)X
-2548(line,)X
-2717(and)X
-2862(back)X
-3043(to)X
-3134(where)X
-3360(text)X
-3509(input)X
-3701(mode)X
-3907(was)X
-776 5154(entered.)N
-1080(In)X
-1174(addition,)X
-1483(autoindent)X
-1848(characters)X
-2202(may)X
-2367(be)X
-2471(erased)X
-2705(using)X
-2906(the)X
-3032(standard)X
-3332(erase)X
-3526(characters.)X
-3921(For)X
-776 5244(the)N
-908(line)X
-1061(and)X
-1210(word)X
-1408(erase)X
-1607(characters,)X
-1987(reaching)X
-2297(the)X
-2428(autoindent)X
-2799(characters)X
-3159(forms)X
-3379(a)X
-3448(``soft'')X
-3709(boundary,)X
-776 5334(denoting)N
-1081(the)X
-1204(end)X
-1345(of)X
-1437(the)X
-1561(current)X
-1815(word)X
-2006(or)X
-2099(line)X
-2245(erase.)X
-2477(Repeating)X
-2828(the)X
-2952(word)X
-3143(or)X
-3236(line)X
-3382(erase)X
-3574(key)X
-3716(will)X
-3866(erase)X
-776 5424(the)N
-894(autoindent)X
-1252(characters.)X
-976 5547(Historically,)N
-3 f
-1396(vi)X
-1 f
-1480(always)X
-1725(used)X
-7 f
-1894(<control-H>)X
-1 f
-2444(and)X
-7 f
-2582(<control-W>)X
-1 f
-3132(as)X
-3221(character)X
-3539(and)X
-3678(word)X
-3866(erase)X
-776 5637(characters,)N
-1148(respectively,)X
-1581(regardless)X
-1932(of)X
-2024(the)X
-2146(current)X
-2398(terminal)X
-2689(settings.)X
-2997(This)X
-3163(implementation)X
-3689(accepts,)X
-3970(in)X
-776 5727(addition)N
-1058(to)X
-1140(these)X
-1325(two)X
-1465(characters,)X
-1832(the)X
-1950(current)X
-2198(terminal)X
-2485(characters)X
-2832(for)X
-2946(those)X
-3135(operations.)X
-
-31 p
-%%Page: 31 30
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Vi)X
-1364(Commands\))X
-3658(USD:13-31)X
-776 762(<nul>)N
-1 f
-976 852(If)N
-1050(the)X
-1168(\256rst)X
-1312(character)X
-1628(of)X
-1715(the)X
-1833(input)X
-2017(is)X
-2090(a)X
-7 f
-2146(<nul>)X
-1 f
-(,)S
-2426(the)X
-2544(previous)X
-2840(input)X
-3024(is)X
-3097(replayed,)X
-3414(as)X
-3501(if)X
-3570(just)X
-3705(entered.)X
-3 f
-776 1032(<control-D>)N
-1 f
-976 1122(If)N
-1058(the)X
-1184(previous)X
-1488(character)X
-1813(on)X
-1922(the)X
-2049(line)X
-2198(was)X
-2352(an)X
-2457(autoindent)X
-2824(character,)X
-3169(erase)X
-3364(it.)X
-3477(Otherwise,)X
-3856(if)X
-3934(the)X
-976 1212(user)N
-1135(is)X
-1213(entering)X
-1501(the)X
-1624(\256rst)X
-1773(character)X
-2094(in)X
-2181(the)X
-2304(line,)X
-7 f
-2469(<control-D>)X
-1 f
-3022(is)X
-3100(ignored.)X
-3410(Otherwise,)X
-3785(a)X
-3845(literal)X
-7 f
-976 1302(<control-D>)N
-1 f
-1524(character)X
-1840(is)X
-1913(entered.)X
-3 f
-776 1482(\303<control-D>)N
-1 f
-976 1572(If)N
-1058(the)X
-1184(previous)X
-1488(character)X
-1812(on)X
-1920(the)X
-2047(line)X
-2196(was)X
-2350(an)X
-2455(autoindent)X
-2822(character,)X
-3167(erase)X
-3362(all)X
-3471(of)X
-3567(the)X
-3694(autoindent)X
-976 1662(characters)N
-1323(on)X
-1423(the)X
-1541(line.)X
-1721(In)X
-1808(addition,)X
-2110(the)X
-2228(autoindent)X
-2586(level)X
-2762(is)X
-2835(reset)X
-3007(to)X
-3089(0.)X
-3 f
-776 1842(0<control-D>)N
-1 f
-976 1932(If)N
-1058(the)X
-1184(previous)X
-1488(character)X
-1812(on)X
-1920(the)X
-2047(line)X
-2196(was)X
-2350(an)X
-2455(autoindent)X
-2822(character,)X
-3167(erase)X
-3362(all)X
-3471(of)X
-3567(the)X
-3694(autoindent)X
-976 2022(characters)N
-1323(on)X
-1423(the)X
-1541(line.)X
-3 f
-776 2202(<control-T>)N
-1 f
-976 2292(Insert)N
-1191(suf\256cient)X
-7 f
-1521(<tab>)X
-1 f
-1793(and)X
-7 f
-1941(<space>)X
-1 f
-2309(characters)X
-2669(to)X
-2764(move)X
-2975(the)X
-3106(cursor)X
-3340(forward)X
-3628(to)X
-3723(a)X
-3792(column)X
-976 2382(immediately)N
-1396(after)X
-1564(the)X
-1682(next)X
-1840(column)X
-2100(which)X
-2316(is)X
-2389(an)X
-2485(even)X
-2657(multiple)X
-2943(of)X
-3030(the)X
-3 f
-3148(shiftwidth)X
-1 f
-3514(option.)X
-976 2562(Historically,)N
-3 f
-1397(vi)X
-1 f
-1482(did)X
-1607(not)X
-1732(permit)X
-1965(the)X
-7 f
-2087(<control-T>)X
-1 f
-2639(command)X
-2979(to)X
-3065(be)X
-3165(used)X
-3336(unless)X
-3560(the)X
-3682(cursor)X
-3907(was)X
-976 2652(at)N
-1056(the)X
-1176(\256rst)X
-1322(column)X
-1584(of)X
-1673(a)X
-1731(new)X
-1887(line)X
-2029(or)X
-2117(it)X
-2182(was)X
-2328(preceded)X
-2640(only)X
-2803(by)X
-2904(autoindent)X
-3263(characters.)X
-3 f
-3651(Nvi)X
-1 f
-3792(permits)X
-976 2742(it)N
-1040(to)X
-1122(be)X
-1218(used)X
-1385(at)X
-1463(any)X
-1599(time)X
-1761(during)X
-1990(insert)X
-2188(mode.)X
-3 f
-776 2922(<erase>)N
-776 3012(<control-H>)N
-1 f
-976 3102(Erase)N
-1175(the)X
-1293(last)X
-1424(character.)X
-3 f
-776 3282(<literal)N
-1047(next>)X
-1 f
-976 3372(Quote)N
-1197(the)X
-1320(next)X
-1483(character.)X
-1844(The)X
-1994(next)X
-2157(character)X
-2479(will)X
-2629(not)X
-2757(be)X
-2859(mapped)X
-3139(\(see)X
-3295(the)X
-3 f
-3419(map)X
-1 f
-3596(command)X
-3938(for)X
-976 3462(more)N
-1162(information\))X
-1588(or)X
-1676(interpreted)X
-2045(specially.)X
-2391(A)X
-2470(carat)X
-2648(\(``)X
-7 f
-2729(\303)X
-1 f
-(''\))S
-2878(character)X
-3194(will)X
-3338(be)X
-3434(displayed)X
-3761(immedi-)X
-976 3552(ately)N
-1152(as)X
-1239(a)X
-1295(placeholder,)X
-1710(but)X
-1832(will)X
-1976(be)X
-2072(replaced)X
-2365(by)X
-2465(the)X
-2583(next)X
-2741(character.)X
-3 f
-776 3732(<escape>)N
-1 f
-976 3822(Resolve)N
-1254(all)X
-1354(text)X
-1494(input)X
-1678(into)X
-1822(the)X
-1940(\256le,)X
-2082(and)X
-2218(return)X
-2430(to)X
-2512(command)X
-2848(mode.)X
-3 f
-776 4002(<line)N
-966(erase>)X
-1 f
-976 4092(Erase)N
-1175(the)X
-1293(current)X
-1541(line.)X
-3 f
-776 4272(<control-W>)N
-776 4362(<word)N
-1020(erase>)X
-1 f
-976 4452(Erase)N
-1188(the)X
-1319(last)X
-1463(word.)X
-1701(The)X
-1859(de\256nition)X
-2198(of)X
-2298(word)X
-2496(is)X
-2582(dependent)X
-2945(on)X
-3059(the)X
-3 f
-3191(altwerase)X
-1 f
-3551(and)X
-3 f
-3701(ttywerase)X
-1 f
-976 4542(options.)N
-3 f
-776 4722 0.2102(<control-X>[0-9A-Fa-f]*)AN
-1 f
-976 4812(Insert)N
-1179(a)X
-1235(character)X
-1551(with)X
-1713(the)X
-1831(speci\256ed)X
-2136(hexadecimal)X
-2562(value)X
-2756(into)X
-2900(the)X
-3018(text.)X
-3 f
-776 4992(<interrupt>)N
-1 f
-976 5082(Interrupt)N
-1288(text)X
-1439(input)X
-1634(mode,)X
-1863(returning)X
-2188(to)X
-2281(command)X
-2628(mode.)X
-2877(If)X
-2962(the)X
-7 f
-3091(<interrupt>)X
-1 f
-3651(character)X
-3979(is)X
-976 5172(used)N
-1151(to)X
-1241(interrupt)X
-1545(inserting)X
-1852(text)X
-1999(into)X
-2150(the)X
-2275(\256le,)X
-2424(it)X
-2495(is)X
-2575(as)X
-2669(if)X
-2745(the)X
-7 f
-2870(<escape>)X
-1 f
-3281(character)X
-3604(was)X
-3756(used;)X
-3952(all)X
-976 5262(text)N
-1116(input)X
-1300(up)X
-1400(to)X
-1482(the)X
-1600(interruption)X
-1998(is)X
-2071(resolved)X
-2363(into)X
-2507(the)X
-2625(\256le.)X
-3 f
-776 5448(12.)N
-916(Ex)X
-1029(Addressing)X
-1 f
-976 5571(Addressing)N
-1363(in)X
-3 f
-1447(ex)X
-1 f
-1545(\(and)X
-1710(when)X
-3 f
-1906(ex)X
-1 f
-2004(commands)X
-2373(are)X
-2494(executed)X
-2802(from)X
-3 f
-2980(vi)X
-1 f
-3042(\))X
-3092(relates)X
-3325(to)X
-3410(the)X
-3531(current)X
-3782(line.)X
-3965(In)X
-776 5661(general,)N
-1054(the)X
-1172(current)X
-1420(line)X
-1560(is)X
-1633(the)X
-1751(last)X
-1882(line)X
-2022(affected)X
-2302(by)X
-2402(a)X
-2458(command.)X
-2834(The)X
-2979(exact)X
-3169(effect)X
-3373(on)X
-3473(the)X
-3591(current)X
-3839(line)X
-3979(is)X
-776 5751(discussed)N
-1103(under)X
-1306(the)X
-1424(description)X
-1800(of)X
-1888(each)X
-2057(command.)X
-2434(When)X
-2647(the)X
-2766(\256le)X
-2889(contains)X
-3177(no)X
-3278(lines,)X
-3470(the)X
-3589(current)X
-3838(line)X
-3979(is)X
-
-32 p
-%%Page: 32 31
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-32)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-1 f
-776 762(zero.)N
-976 885(Addresses)N
-1326(are)X
-1445(constructed)X
-1835(by)X
-1935(one)X
-2071(or)X
-2158(more)X
-2343(of)X
-2430(the)X
-2548(following)X
-2879(methods:)X
-816 1008(\(1\))N
-1030(The)X
-1175(address)X
-1436(``)X
-7 f
-1490(.)X
-1 f
-('')S
-1632(refers)X
-1836(to)X
-1918(the)X
-2036(current)X
-2284(line.)X
-816 1131(\(2\))N
-1030(The)X
-1175(address)X
-1436(``)X
-7 f
-1490($)X
-1 f
-('')S
-1612(refers)X
-1816(to)X
-1898(the)X
-2016(last)X
-2147(line)X
-2287(of)X
-2374(the)X
-2492(\256le.)X
-816 1254(\(3\))N
-1030(The)X
-1175(address)X
-1436(``)X
-7 f
-1490(N)X
-1 f
-('',)S
-1632(where)X
-7 f
-1849(N)X
-1 f
-1917(is)X
-1990(a)X
-2046(positive)X
-2319(number,)X
-2604(refers)X
-2808(to)X
-2890(the)X
-3008(N-th)X
-3175(line)X
-3315(of)X
-3402(the)X
-3520(\256le.)X
-816 1377(\(4\))N
-1030(The)X
-1178(address)X
-1442(``)X
-7 f
-1496('<character>)X
-1 f
-('')S
-2149(or)X
-2239(``)X
-7 f
-2293(`<character>)X
-1 f
-('')S
-2946(refers)X
-3153(to)X
-3238(the)X
-3359(line)X
-3503(marked)X
-3768(with)X
-3934(the)X
-1030 1467(name)N
-7 f
-1234(<character>)X
-1 f
-(.)S
-1832(\(See)X
-2005(the)X
-3 f
-2133(k)X
-1 f
-2207(or)X
-3 f
-2304(m)X
-1 f
-2400(commands)X
-2776(for)X
-2899(more)X
-3093(information)X
-3500(on)X
-3609(how)X
-3776(to)X
-3867(mark)X
-1030 1557(lines.\))N
-816 1680(\(5\))N
-1030(A)X
-1113(regular)X
-1366(expression)X
-1734(\(RE\))X
-1915(enclosed)X
-2221(by)X
-2326(slashes)X
-2578(\(``)X
-7 f
-2659(/)X
-1 f
-(''\))S
-2813(is)X
-2891(an)X
-2992(address,)X
-3278(and)X
-3419(it)X
-3488(refers)X
-3697(to)X
-3784(the)X
-3908(\256rst)X
-1030 1770(line)N
-1171(found)X
-1379(by)X
-1480(searching)X
-1809(forward)X
-2085(from)X
-2262(the)X
-2381(line)X
-2 f
-2522(after)X
-1 f
-2694(the)X
-2813(current)X
-3062(line)X
-3203(toward)X
-3447(the)X
-3566(end)X
-3703(of)X
-3791(the)X
-3910(\256le,)X
-1030 1860(and)N
-1170(stopping)X
-1469(at)X
-1551(the)X
-1673(\256rst)X
-1821(line)X
-1965(containing)X
-2327(a)X
-2387(string)X
-2593(matching)X
-2915(the)X
-3037(RE.)X
-3203(\(The)X
-3379(trailing)X
-3634(slash)X
-3819(can)X
-3956(be)X
-1030 1950(omitted)N
-1294(at)X
-1372(the)X
-1490(end)X
-1626(of)X
-1713(the)X
-1831(command)X
-2167(line.\))X
-1030 2130(If)N
-1104(no)X
-1204(RE)X
-1326(is)X
-1399(speci\256ed,)X
-1724(i.e.)X
-1842(the)X
-1960(pattern)X
-2203(is)X
-2276(``)X
-7 f
-2330(//)X
-1 f
-('',)S
-2520(the)X
-2638(last)X
-2769(RE)X
-2891(used)X
-3058(in)X
-3140(any)X
-3276(command)X
-3612(is)X
-3685(used)X
-3852(in)X
-3934(the)X
-1030 2220(search.)N
-1030 2400(If)N
-1111(the)X
-3 f
-1236(extended)X
-1 f
-1570(option)X
-1801(is)X
-1881(set,)X
-2017(the)X
-2142(RE)X
-2271(is)X
-2351(handled)X
-2632(as)X
-2726(an)X
-2829(extended)X
-3146(RE,)X
-3295(not)X
-3425(a)X
-3489(basic)X
-3682(RE.)X
-3852(If)X
-3934(the)X
-3 f
-1030 2490(wrapscan)N
-1 f
-1381(option)X
-1607(is)X
-1681(set,)X
-1811(the)X
-1930(search)X
-2157(wraps)X
-2370(around)X
-2614(to)X
-2697(the)X
-2816(beginning)X
-3157(of)X
-3245(the)X
-3364(\256le)X
-3487(and)X
-3624(continues)X
-3952(up)X
-1030 2580(to)N
-1112(and)X
-1248(including)X
-1570(the)X
-1688(current)X
-1936(line,)X
-2096(so)X
-2187(that)X
-2327(the)X
-2445(entire)X
-2648(\256le)X
-2770(is)X
-2843(searched.)X
-1030 2760(The)N
-1175(form)X
-1351(``)X
-7 f
-1405(\\/)X
-1 f
-('')S
-1575(is)X
-1648(accepted)X
-1950(for)X
-2064(historic)X
-2324(reasons,)X
-2605(and)X
-2741(is)X
-2814(identical)X
-3110(to)X
-3192(``)X
-7 f
-3246(//)X
-1 f
-(''.)S
-816 2883(\(6\))N
-1030(An)X
-1153(RE)X
-1280(enclosed)X
-1586(in)X
-1673(question)X
-1969(marks)X
-2190(\(``)X
-7 f
-2271(?)X
-1 f
-(''\))S
-2446(addresses)X
-2780(the)X
-2904(\256rst)X
-3054(line)X
-3200(found)X
-3413(by)X
-3519(searching)X
-3853(back-)X
-1030 2973(ward)N
-1212(from)X
-1389(the)X
-1508(line)X
-2 f
-1648(preceding)X
-1 f
-1989(the)X
-2107(current)X
-2355(line,)X
-2515(toward)X
-2758(the)X
-2876(beginning)X
-3216(of)X
-3303(the)X
-3421(\256le)X
-3543(and)X
-3679(stopping)X
-3974(at)X
-1030 3063(the)N
-1149(\256rst)X
-1294(line)X
-1435(containing)X
-1794(a)X
-1851(string)X
-2054(matching)X
-2373(the)X
-2492(RE.)X
-2655(\(The)X
-2828(trailing)X
-3080(question)X
-3372(mark)X
-3558(can)X
-3691(be)X
-3788(omitted)X
-1030 3153(at)N
-1108(the)X
-1226(end)X
-1362(of)X
-1449(a)X
-1505(command)X
-1841(line.\))X
-1030 3333(If)N
-1104(no)X
-1204(RE)X
-1326(is)X
-1399(speci\256ed,)X
-1724(i.e.)X
-1842(the)X
-1960(pattern)X
-2203(is)X
-2276(``)X
-7 f
-2330(??)X
-1 f
-('',)S
-2520(the)X
-2638(last)X
-2769(RE)X
-2891(used)X
-3058(in)X
-3140(any)X
-3276(command)X
-3612(is)X
-3685(used)X
-3852(in)X
-3934(the)X
-1030 3423(search.)N
-1030 3603(If)N
-1111(the)X
-3 f
-1236(extended)X
-1 f
-1570(option)X
-1801(is)X
-1881(set,)X
-2017(the)X
-2142(RE)X
-2271(is)X
-2351(handled)X
-2632(as)X
-2726(an)X
-2829(extended)X
-3146(RE,)X
-3295(not)X
-3425(a)X
-3489(basic)X
-3682(RE.)X
-3852(If)X
-3934(the)X
-3 f
-1030 3693(wrapscan)N
-1 f
-1382(option)X
-1609(is)X
-1685(set,)X
-1817(the)X
-1938(search)X
-2187(wraps)X
-2402(around)X
-2648(from)X
-2827(the)X
-2948(beginning)X
-3290(of)X
-3379(the)X
-3499(\256le)X
-3623(to)X
-3707(the)X
-3827(end)X
-3965(of)X
-1030 3783(the)N
-1148(\256le)X
-1270(and)X
-1406(continues)X
-1733(up)X
-1833(to)X
-1915(and)X
-2051(including)X
-2373(the)X
-2491(current)X
-2739(line,)X
-2899(so)X
-2990(that)X
-3130(the)X
-3248(entire)X
-3451(\256le)X
-3573(is)X
-3646(searched.)X
-1030 3963(The)N
-1175(form)X
-1351(``)X
-7 f
-1405(\\?)X
-1 f
-('')S
-1595(is)X
-1668(accepted)X
-1970(for)X
-2084(historic)X
-2344(reasons,)X
-2625(and)X
-2761(is)X
-2834(identical)X
-3130(to)X
-3212(``)X
-7 f
-3266(??)X
-1 f
-(''.)S
-816 4086(\(7\))N
-1030(An)X
-1148(address)X
-1409(followed)X
-1714(by)X
-1814(a)X
-1870(plus)X
-2023(sign)X
-2176(\(``)X
-7 f
-2257(+)X
-1 f
-(''\))S
-2406(or)X
-2494(a)X
-2551(minus)X
-2767(sign)X
-2921(\(``)X
-7 f
-3002(-)X
-1 f
-(''\))S
-3152(followed)X
-3458(by)X
-3559(a)X
-3616(number)X
-3882(is)X
-3956(an)X
-1030 4176(offset)N
-1237(address)X
-1502(and)X
-1642(refers)X
-1850(to)X
-1936(the)X
-2058(address)X
-2323(plus)X
-2480(\(or)X
-2598(minus\))X
-2844(the)X
-2966(indicated)X
-3284(number)X
-3553(of)X
-3643(lines.)X
-3857(If)X
-3934(the)X
-1030 4266(address)N
-1291(is)X
-1364(omitted,)X
-1648(the)X
-1766(addition)X
-2048(or)X
-2135(subtraction)X
-2511(is)X
-2584(done)X
-2760(with)X
-2922(respect)X
-3170(to)X
-3252(the)X
-3370(current)X
-3618(line.)X
-816 4389(\(8\))N
-1030(An)X
-1158(address)X
-1429(of)X
-1526(``)X
-7 f
-1580(+)X
-1 f
-('')S
-1712(or)X
-1809(``)X
-7 f
-9 f
-1863(-)X
-1 f
-1907('')X
-1991(followed)X
-2306(by)X
-2416(a)X
-2482(number)X
-2757(is)X
-2840(an)X
-2946(offset)X
-3159(from)X
-3345(the)X
-3473(current)X
-3731(line.)X
-3921(For)X
-1030 4479(example,)N
-1342(``)X
-7 f
-9 f
-1396(-)X
-7 f
-1440(5)X
-1 f
-('')S
-1562(is)X
-1635(the)X
-1753(same)X
-1938(as)X
-2025(``)X
-7 f
-2079(.)X
-9 f
-(-)S
-7 f
-2171(5)X
-1 f
-(''.)S
-816 4602(\(9\))N
-1030(An)X
-1151(address)X
-1415(ending)X
-1656(with)X
-1821(``)X
-7 f
-1875(+)X
-1 f
-('')S
-2000(or)X
-2090(``)X
-7 f
-2144(-)X
-1 f
-('')S
-2270(has)X
-2401(1)X
-2465(added)X
-2681(to)X
-2767(or)X
-2858(subtracted)X
-3212(from)X
-3392(the)X
-3514(address,)X
-3799(respec-)X
-1030 4692(tively.)N
-1276(As)X
-1389(a)X
-1449(consequence)X
-1884(of)X
-1975(this)X
-2114(rule)X
-2263(and)X
-2403(of)X
-2494(the)X
-2615(previous)X
-2914(rule,)X
-3082(the)X
-3203(address)X
-3467(``)X
-7 f
-9 f
-3521(-)X
-1 f
-3565('')X
-3642(refers)X
-3849(to)X
-3934(the)X
-1030 4782(line)N
-1173(preceding)X
-1513(the)X
-1634(current)X
-1886(line.)X
-2070(Moreover,)X
-2431(trailing)X
-2686(``)X
-7 f
-2740(+)X
-1 f
-('')S
-2866(and)X
-3006(``)X
-7 f
-9 f
-3060(-)X
-1 f
-3104('')X
-3182(characters)X
-3533(have)X
-3709(a)X
-3769(cumula-)X
-1030 4872(tive)N
-1170(effect.)X
-1414(For)X
-1545(example,)X
-1857(``)X
-7 f
-1911(++)X
-9 f
-(-)S
-7 f
-2051(++)X
-1 f
-('')S
-2221(refers)X
-2425(to)X
-2507(the)X
-2625(current)X
-2873(line)X
-3013(plus)X
-3166(3.)X
-816 4995(\(10\))N
-1030(A)X
-1108(percent)X
-1365(sign)X
-1518(\(``)X
-7 f
-1599(%)X
-1 f
-(''\))S
-1748(is)X
-1821(equivalent)X
-2175(to)X
-2257(the)X
-2375(address)X
-2636(range)X
-2835(``)X
-7 f
-2889(1,$)X
-1 f
-(''.)S
-3 f
-976 5118(Ex)N
-1 f
-1099(commands)X
-1476(require)X
-1734(zero,)X
-1923(one,)X
-2089(or)X
-2186(two)X
-2336(addresses.)X
-2714(It)X
-2793(is)X
-2876(an)X
-2982(error)X
-3169(to)X
-3261(specify)X
-3524(an)X
-3631(address)X
-3903(to)X
-3996(a)X
-776 5208(command)N
-1112(which)X
-1328(requires)X
-1607(zero)X
-1766(addresses.)X
-976 5331(If)N
-1053(the)X
-1174(user)X
-1331(provides)X
-1630(more)X
-1818(than)X
-1979(the)X
-2100(expected)X
-2409(number)X
-2677(of)X
-2768(addresses)X
-3100(to)X
-3186(any)X
-3 f
-3326(ex)X
-1 f
-3426(command,)X
-3786(the)X
-3908(\256rst)X
-776 5421(addresses)N
-1108(speci\256ed)X
-1417(are)X
-1540(discarded.)X
-1912(For)X
-2047(example,)X
-2362(``)X
-7 f
-2416(1,2,3,5)X
-1 f
-(''print)S
-2980(prints)X
-3185(lines)X
-3359(3)X
-3422(through)X
-3694(5,)X
-3777(because)X
-776 5511(the)N
-3 f
-894(print)X
-1 f
-1087(command)X
-1423(only)X
-1585(takes)X
-1770(two)X
-1910(addresses.)X
-976 5634(The)N
-1131(addresses)X
-1469(in)X
-1561(a)X
-1627(range)X
-1836(are)X
-1965(separated)X
-2299(from)X
-2485(each)X
-2663(other)X
-2858(by)X
-2968(a)X
-3034(comma)X
-3300(\(``)X
-7 f
-3381(,)X
-1 f
-(''\))S
-3540(or)X
-3637(a)X
-3703(semicolon)X
-776 5724(\(``)N
-7 f
-857(;)X
-1 f
-(''\).)S
-1058(In)X
-1157(the)X
-1287(latter)X
-1484(case,)X
-1675(the)X
-1805(current)X
-2065(line)X
-2217(\(``)X
-7 f
-2298(.)X
-1 f
-(''\))S
-2479(is)X
-2564(set)X
-2685(to)X
-2779(the)X
-2909(\256rst)X
-3065(address,)X
-3358(and)X
-3506(only)X
-3680(then)X
-3850(is)X
-3934(the)X
-
-33 p
-%%Page: 33 32
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3658(USD:13-33)X
-1 f
-776 762(second)N
-1026(address)X
-1295(calculated.)X
-1689(This)X
-1859(feature)X
-2111(can)X
-2251(be)X
-2355(used)X
-2530(to)X
-2620(determine)X
-2969(the)X
-3095(starting)X
-3363(line)X
-3511(for)X
-3633(forward)X
-3916(and)X
-776 852(backward)N
-1116(searches)X
-1416(\(see)X
-1572(rules)X
-1754(\(5\))X
-1874(and)X
-2016(\(6\))X
-2136(above\).)X
-2421(The)X
-2572(second)X
-2821(address)X
-3088(of)X
-3181(any)X
-3323(two-address)X
-3737(sequence)X
-776 942(corresponds)N
-1193(to)X
-1284(a)X
-1349(line)X
-1498(that)X
-1647(follows,)X
-1936(in)X
-2027(the)X
-2154(\256le,)X
-2305(the)X
-2432(line)X
-2581(corresponding)X
-3069(to)X
-3160(the)X
-3288(\256rst)X
-3442(address.)X
-3753(The)X
-3908(\256rst)X
-776 1032(address)N
-1044(must)X
-1226(be)X
-1329(less)X
-1475(than)X
-1639(or)X
-1732(equal)X
-1932(to)X
-2020(the)X
-2144(second)X
-2393(address.)X
-2700(The)X
-2851(\256rst)X
-3001(address)X
-3268(must)X
-3449(be)X
-3551(greater)X
-3801(than)X
-3965(or)X
-776 1122(equal)N
-973(to)X
-1058(the)X
-1179(\256rst)X
-1326(line)X
-1469(of)X
-1559(the)X
-1680(\256le,)X
-1825(and)X
-1964(the)X
-2085(last)X
-2219(address)X
-2483(must)X
-2661(be)X
-2761(less)X
-2905(than)X
-3067(or)X
-3158(equal)X
-3356(to)X
-3442(the)X
-3564(last)X
-3699(line)X
-3843(of)X
-3934(the)X
-776 1212(\256le.)N
-3 f
-776 1398(13.)N
-916(Ex)X
-1029(Description)X
-1 f
-976 1521(The)N
-1121(following)X
-1452(words)X
-1668(have)X
-1840(special)X
-2083(meanings)X
-2410(for)X
-3 f
-2524(ex)X
-1 f
-2620(commands.)X
-3 f
-776 1701(<eof>)N
-1 f
-976 1791(The)N
-1130(end-of-\256le)X
-1498(character)X
-1823(is)X
-1905(used)X
-2081(to)X
-2172(scroll)X
-2379(the)X
-2506(screen)X
-2741(in)X
-2832(the)X
-3 f
-2959(ex)X
-1 f
-3064(editor.)X
-3320(This)X
-3491(character)X
-3816(is)X
-3898(nor-)X
-976 1881(mally)N
-7 f
-1178(<control-D>)X
-1 f
-(,)S
-1746(however,)X
-2063(whatever)X
-2378(character)X
-2694(is)X
-2767(set)X
-2876(for)X
-2990(the)X
-3108(current)X
-3356(terminal)X
-3643(is)X
-3716(used.)X
-3 f
-776 2061(line)N
-1 f
-976 2151(A)N
-1054(single-line)X
-1412(address,)X
-1693(given)X
-1891(in)X
-1973(any)X
-2109(of)X
-2196(the)X
-2314(forms)X
-2521(described)X
-2849(in)X
-2931(the)X
-3049(section)X
-3296(entitled)X
-3557(``)X
-3 f
-3611(Ex)X
-3725(Address-)X
-976 2241(ing)N
-1 f
-1082(''.)X
-1196(The)X
-1341(default)X
-1584(for)X
-7 f
-1698(line)X
-1 f
-1910(is)X
-1983(the)X
-2101(current)X
-2349(line.)X
-3 f
-776 2421(range)N
-1 f
-976 2511(A)N
-1058(line,)X
-1222(or)X
-1313(a)X
-1373(pair)X
-1522(of)X
-1613(line)X
-1757(addresses,)X
-2109(separated)X
-2437(by)X
-2541(a)X
-2601(comma)X
-2861(or)X
-2952(semicolon.)X
-3345(\(See)X
-3512(the)X
-3634(section)X
-3885(enti-)X
-976 2601(tled)N
-1123(``)X
-3 f
-1177(Ex)X
-1297(Addressing)X
-1 f
-1683('')X
-1764(for)X
-1884(more)X
-2075(information.\))X
-2546(The)X
-2697(default)X
-2946(for)X
-3066(range)X
-3271(is)X
-3350(the)X
-3474(current)X
-3728(line)X
-2 f
-3874(only)X
-1 f
-4012(,)X
-976 2691(i.e.)N
-1114(``)X
-7 f
-1168(.,.)X
-1 f
-(''.)S
-1426(A)X
-1504(percent)X
-1761(sign)X
-1914(\(``)X
-7 f
-1995(%)X
-1 f
-(''\))S
-2144(stands)X
-2364(for)X
-2479(the)X
-2598(range)X
-2798(``)X
-7 f
-2852(1,$)X
-1 f
-(''.)S
-3111(The)X
-3257(starting)X
-3518(address)X
-3780(must)X
-3956(be)X
-976 2781(less)N
-1116(than,)X
-1294(or)X
-1381(equal)X
-1575(to,)X
-1677(the)X
-1795(ending)X
-2033(address.)X
-3 f
-776 2961(count)N
-1 f
-976 3051(A)N
-1058(positive)X
-1335(integer,)X
-1602(specifying)X
-1961(the)X
-2084(number)X
-2354(of)X
-2446(lines)X
-2622(to)X
-2709(be)X
-2810(affected)X
-3095(by)X
-3200(the)X
-3323(command;)X
-3686(the)X
-3809(default)X
-976 3141(is)N
-1055(1.)X
-1161(Generally,)X
-1524(a)X
-1586(count)X
-1790(past)X
-1945(the)X
-2068(end-of-\256le)X
-2432(may)X
-2595(be)X
-2696(speci\256ed,)X
-3026(e.g.)X
-3167(the)X
-3290(command)X
-3631(``)X
-7 f
-3685(p)X
-3786(3000)X
-1 f
-('')S
-976 3231(in)N
-1064(a)X
-1127(10)X
-1234(line)X
-1381(\256le)X
-1510(is)X
-1590(acceptable,)X
-1977(and)X
-2120(will)X
-2271(print)X
-2449(from)X
-2632(the)X
-2757(current)X
-3012(line)X
-3159(through)X
-3435(the)X
-3560(last)X
-3698(line)X
-3845(in)X
-3934(the)X
-976 3321(\256le.)N
-3 f
-776 3501(\257ags)N
-1 f
-976 3591(One)N
-1132(or)X
-1221(more)X
-1408(of)X
-1497(the)X
-1617(characters)X
-1966(``#'',)X
-2156(``p'',)X
-2346(and)X
-2484(``l''.)X
-2677(When)X
-2892(a)X
-2951(command)X
-3290(that)X
-3433(accepts)X
-3693(these)X
-3881(\257ags)X
-976 3681(completes,)N
-1343(the)X
-1463(addressed)X
-1802(line\(s\))X
-2029(are)X
-2150(written)X
-2399(out)X
-2523(as)X
-2612(if)X
-2683(by)X
-2785(the)X
-2905(corresponding)X
-3 f
-3386(#)X
-1 f
-(,)S
-3 f
-3468(l)X
-1 f
-3512(or)X
-3 f
-3600(p)X
-1 f
-3665(commands.)X
-976 3771(In)N
-1064(addition,)X
-1367(any)X
-1504(number)X
-1770(of)X
-1858(``)X
-7 f
-1912(+)X
-1 f
-('')S
-2035(or)X
-2123(``)X
-7 f
-9 f
-2177(-)X
-1 f
-2221('')X
-2296(characters)X
-2644(can)X
-2777(be)X
-2874(speci\256ed)X
-3180(before,)X
-3427(after,)X
-3616(or)X
-3704(during)X
-3934(the)X
-976 3861(\257ags,)N
-1175(in)X
-1265(which)X
-1489(case)X
-1656(the)X
-1782(line)X
-1930(written)X
-2185(is)X
-2266(not)X
-2396(necessarily)X
-2780(the)X
-2905(one)X
-3048(affected)X
-3335(by)X
-3442(the)X
-3567(command,)X
-3930(but)X
-976 3951(rather)N
-1184(the)X
-1302(line)X
-1442(addressed)X
-1779(by)X
-1879(the)X
-1997(offset)X
-2200(address)X
-2461(speci\256ed.)X
-2806(The)X
-2951(default)X
-3194(for)X
-7 f
-3308(flags)X
-1 f
-3568(is)X
-3641(none.)X
-3 f
-776 4131(\256le)N
-1 f
-976 4221(A)N
-1055(pattern)X
-1299(used)X
-1467(to)X
-1550(derive)X
-1772(a)X
-1829(pathname;)X
-2184(the)X
-2303(default)X
-2547(is)X
-2621(the)X
-2740(current)X
-2989(\256le.)X
-3152(File)X
-3297(names)X
-3524(are)X
-3645(subjected)X
-3970(to)X
-976 4311(normal)N
-2 f
-1223(sh)X
-1 f
-1294(\(1\))X
-1408(word)X
-1593(expansions.)X
-976 4434(Anywhere)N
-1336(a)X
-1397(\256le)X
-1524(name)X
-1723(is)X
-1801(speci\256ed,)X
-2131(it)X
-2200(is)X
-2279(also)X
-2434(possible)X
-2722(to)X
-2810(use)X
-2943(the)X
-3067(special)X
-3316(string)X
-3524(``)X
-7 f
-3578(/tmp)X
-1 f
-(''.)S
-3890(This)X
-776 4524(will)N
-936(be)X
-1048(replaced)X
-1357(with)X
-1535(a)X
-1607(temporary)X
-1973(\256le)X
-2111(name)X
-2321(which)X
-2553(can)X
-2701(be)X
-2813(used)X
-2996(for)X
-3126(temporary)X
-3491(work,)X
-3711(e.g.)X
-3882(``)X
-7 f
-3936(:e)X
-776 4614(/tmp)N
-1 f
-('')S
-1042(creates)X
-1286(and)X
-1422(edits)X
-1593(a)X
-1649(new)X
-1803(\256le.)X
-976 4737(If)N
-1052(both)X
-1216(a)X
-1274(count)X
-1474(and)X
-1613(a)X
-1672(range)X
-1874(are)X
-1996(speci\256ed)X
-2304(for)X
-2421(commands)X
-2791(that)X
-2934(use)X
-3064(either,)X
-3290(the)X
-3411(starting)X
-3674(line)X
-3817(for)X
-3934(the)X
-776 4827(command)N
-1120(is)X
-1200(the)X
-2 f
-1325(last)X
-1 f
-1467(line)X
-1614(addressed)X
-1958(by)X
-2065(the)X
-2190(range,)X
-2416(and)X
-7 f
-2559(count)X
-1 f
-(-)S
-2853(subsequent)X
-3236(lines)X
-3414(are)X
-3540(affected)X
-3827(by)X
-3934(the)X
-776 4917(command,)N
-1132(e.g.)X
-1268(the)X
-1386(command)X
-1722(``)X
-7 f
-1776(2,3p4)X
-1 f
-('')S
-2090(prints)X
-2292(out)X
-2414(lines)X
-2585(3,)X
-2665(4,)X
-2745(5)X
-2805(and)X
-2941(6.)X
-976 5040(When)N
-1188(only)X
-1350(a)X
-1406(line)X
-1546(or)X
-1633(range)X
-1833(is)X
-1907(speci\256ed,)X
-2233(with)X
-2396(no)X
-2497(command,)X
-2854(the)X
-2973(implied)X
-3238(command)X
-3575(is)X
-3649(either)X
-3853(a)X
-3 f
-3910(list)X
-1 f
-4012(,)X
-3 f
-776 5130(number)N
-1 f
-1073(or)X
-3 f
-1166(print)X
-1 f
-1365(command.)X
-1747(The)X
-1898(command)X
-2240(used)X
-2413(is)X
-2492(the)X
-2616(most)X
-2797(recent)X
-3020(of)X
-3112(the)X
-3235(three)X
-3421(commands)X
-3793(to)X
-3880(have)X
-776 5220(been)N
-949(used)X
-1117(\(including)X
-1467(any)X
-1604(use)X
-1732(as)X
-1820(a)X
-1877(\257ag\).)X
-2085(If)X
-2160(none)X
-2337(of)X
-2425(these)X
-2611(commands)X
-2979(have)X
-3152(been)X
-3325(used)X
-3493(before,)X
-3740(the)X
-3 f
-3859(print)X
-1 f
-776 5310(command)N
-1117(is)X
-1195(the)X
-1318(implied)X
-1587(command.)X
-1968(When)X
-2185(no)X
-2290(range)X
-2494(or)X
-2585(count)X
-2787(is)X
-2864(speci\256ed)X
-3173(and)X
-3313(the)X
-3435(command)X
-3775(line)X
-3919(is)X
-3996(a)X
-776 5400(blank)N
-974(line,)X
-1134(the)X
-1252(current)X
-1500(line)X
-1640(is)X
-1713(incremented)X
-2130(by)X
-2230(1)X
-2290(and)X
-2426(then)X
-2584(the)X
-2702(current)X
-2950(line)X
-3090(is)X
-3163(displayed.)X
-976 5523(Zero)N
-1149(or)X
-1237(more)X
-1423(whitespace)X
-1801(characters)X
-2149(may)X
-2308(precede)X
-2580(or)X
-2668(follow)X
-2898(the)X
-3017(addresses,)X
-3366(count,)X
-3585(\257ags,)X
-3778(or)X
-3867(com-)X
-776 5613(mand)N
-980(name.)X
-1220(Any)X
-1384(object)X
-1606(following)X
-1943(a)X
-2004(command)X
-2345(name)X
-2544(\(such)X
-2743(as)X
-2835(buffer,)X
-3077(\256le,)X
-3224(etc.\),)X
-3410(that)X
-3555(begins)X
-3789(with)X
-3956(an)X
-776 5703(alphabetic)N
-1130(character,)X
-1471(should)X
-1709(be)X
-1810(separated)X
-2139(from)X
-2320(the)X
-2443(command)X
-2784(name)X
-2983(by)X
-3088(at)X
-3171(least)X
-3343(one)X
-3484(whitespace)X
-3866(char-)X
-776 5793(acter.)N
-
-34 p
-%%Page: 34 33
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-34)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-1 f
-976 762(Any)N
-1148(character,)X
-1498(including)X
-7 f
-1834(<carriage-return>)X
-1 f
-(,)S
-2704(``)X
-7 f
-2758(%)X
-1 f
-('')S
-2894(and)X
-3045(``)X
-7 f
-3099(#)X
-1 f
-('')S
-3236(retain)X
-3454(their)X
-3636(literal)X
-3858(value)X
-776 852(when)N
-970(preceded)X
-1281(by)X
-1381(a)X
-1437(backslash.)X
-3 f
-776 1038(14.)N
-916(Ex)X
-1029(Commands)X
-1 f
-976 1161(The)N
-1122(following)X
-1454(section)X
-1702(describes)X
-2022(the)X
-2141(commands)X
-2509(available)X
-2820(in)X
-2903(the)X
-3 f
-3023(ex)X
-1 f
-3121(editor.)X
-3370(In)X
-3459(each)X
-3629(entry)X
-3816(below,)X
-776 1251(the)N
-894(tag)X
-1012(line)X
-1152(is)X
-1225(a)X
-1281(usage)X
-1484(synopsis)X
-1779(for)X
-1893(the)X
-2011(command.)X
-976 1374(Each)N
-1161(command)X
-1501(can)X
-1637(be)X
-1737(entered)X
-1998(as)X
-2089(the)X
-2211(abbreviation)X
-2636(\(those)X
-2856(characters)X
-3207(in)X
-3293(the)X
-3416(synopsis)X
-3716(command)X
-776 1464(word)N
-966(preceding)X
-1307(the)X
-1429(``['')X
-1588 0.3375(character\),)AX
-1955(the)X
-2077(full)X
-2212(command)X
-2552(\(all)X
-2683(characters)X
-3034(shown)X
-3267(for)X
-3385(the)X
-3507(command)X
-3847(word,)X
-776 1554(omitting)N
-1067(the)X
-1187(``['')X
-1344(and)X
-1482(``]'')X
-1639 0.2955(characters\),)AX
-2035(or)X
-2124(any)X
-2262(leading)X
-2520(subset)X
-2742(of)X
-2831(the)X
-2951(full)X
-3084(command)X
-3422(down)X
-3622(to)X
-3706(the)X
-3826(abbre-)X
-776 1644(viation.)N
-1064(For)X
-1201(example,)X
-1519(the)X
-1643(args)X
-1803(command)X
-2145(\(shown)X
-2407(as)X
-2500(``)X
-7 f
-2554(ar[gs])X
-1 f
-('')S
-2922(in)X
-3010(the)X
-3134(synopsis\))X
-3462(can)X
-3600(be)X
-3702(entered)X
-3965(as)X
-776 1734(``)N
-7 f
-830(ar)X
-1 f
-('',)S
-1020(``)X
-7 f
-1074(arg)X
-1 f
-('')S
-1292(or)X
-1379(``)X
-7 f
-1433(args)X
-1 f
-(''.)S
-976 1857(Each)N
-3 f
-1163(ex)X
-1 f
-1265(command)X
-1607(described)X
-1941(below)X
-2163(notes)X
-2359(the)X
-2484(new)X
-2645(current)X
-2900(line)X
-3047(after)X
-3222(it)X
-3293(is)X
-3373(executed,)X
-3706(as)X
-3800(well)X
-3965(as)X
-776 1947(any)N
-912(options)X
-1167(that)X
-1307(affect)X
-1511(the)X
-1629(command.)X
-976 2127(A)N
-1063(comment.)X
-1430(Command)X
-1792(lines)X
-1972(beginning)X
-2321(with)X
-2492(the)X
-2619(double-quote)X
-3072(character)X
-3398(\(``)X
-7 f
-3479(")X
-1 f
-(''\))S
-3638(are)X
-3767(ignored.)X
-976 2217(This)N
-1138(permits)X
-1398(comments)X
-1747(in)X
-1829(editor)X
-2036(scripts)X
-2265(and)X
-2401(startup)X
-2639(\256les.)X
-3 f
-776 2397(<end-of-\256le>)N
-1 f
-976 2487(Scroll)N
-1189(the)X
-1309(screen.)X
-1577(Write)X
-1782(the)X
-1902(next)X
-2062(N)X
-2142(lines,)X
-2336(where)X
-2556(N)X
-2637(is)X
-2713(the)X
-2834(value)X
-3031(of)X
-3121(the)X
-3 f
-3242(scroll)X
-1 f
-3452(option.)X
-3719(The)X
-3867(com-)X
-976 2577(mand)N
-1191(is)X
-1281(the)X
-1416(end-of-\256le)X
-1792(terminal)X
-2096(character,)X
-2449(which)X
-2682(may)X
-2857(be)X
-2970(different)X
-3284(on)X
-3401(different)X
-3714(terminals.)X
-976 2667(Traditionally,)N
-1434(it)X
-1498(is)X
-1571(the)X
-7 f
-1689(<control-D>)X
-1 f
-2237(key.)X
-976 2847(Historically,)N
-1397(the)X
-3 f
-1518(eof)X
-1 f
-1644(command)X
-1984(ignored)X
-2253(any)X
-2393(preceding)X
-2734(count,)X
-2956(and)X
-3096(the)X
-7 f
-3218(<end-of-file>)X
-1 f
-3866(char-)X
-976 2937(acter)N
-1155(was)X
-1302(ignored)X
-1569(unless)X
-1791(it)X
-1857(was)X
-2004(entered)X
-2263(as)X
-2352(the)X
-2472(\256rst)X
-2618(character)X
-2936(of)X
-3025(the)X
-3145(command.)X
-3522(This)X
-3685(implemen-)X
-976 3027(tation)N
-1178(treats)X
-1372(it)X
-1436(as)X
-1523(a)X
-1579(command)X
-2 f
-1915(only)X
-1 f
-2073(if)X
-2142(entered)X
-2399(as)X
-2486(the)X
-2604(\256rst)X
-2748(character)X
-3064(of)X
-3151(the)X
-3269(command)X
-3605(line,)X
-3766(and)X
-3903(oth-)X
-976 3117(erwise)N
-1206(treats)X
-1400(it)X
-1464(as)X
-1551(any)X
-1687(other)X
-1872(character.)X
-976 3297(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(written.)X
-976 3387(Options:)N
-1336(None.)X
-3 f
-776 3567(!)N
-823(argument\(s\))X
-776 3657([range]!)N
-1073(argument\(s\))X
-1 f
-976 3747(Execute)N
-1263(a)X
-1327(shell)X
-1506(command,)X
-1870(or)X
-1966(\256lter)X
-2146(lines)X
-2326(through)X
-2604(a)X
-2669(shell)X
-2849(command.)X
-3234(In)X
-3330(the)X
-3457(\256rst)X
-3610(synopsis,)X
-3934(the)X
-976 3837(remainder)N
-1333(of)X
-1430(the)X
-1558(line)X
-1708(after)X
-1886(the)X
-2014(``)X
-7 f
-2068(!)X
-1 f
-('')S
-2220(character)X
-2546(is)X
-2629(passed)X
-2873(to)X
-2965(the)X
-3093(program)X
-3395(named)X
-3639(by)X
-3749(the)X
-3 f
-3877(shell)X
-1 f
-976 3927(option,)N
-1220(as)X
-1307(a)X
-1363(single)X
-1574(argument.)X
-976 4107(Within)N
-1227(the)X
-1354(rest)X
-1499(of)X
-1595(the)X
-1722(line,)X
-1891(``)X
-7 f
-1945(%)X
-1 f
-('')S
-2076(and)X
-2221(``)X
-7 f
-2275(#)X
-1 f
-('')S
-2407(are)X
-2536(expanded)X
-2874(into)X
-3028(the)X
-3156(current)X
-3414(and)X
-3560(alternate)X
-3867(path-)X
-976 4197(names,)N
-1223(respectively.)X
-1673(The)X
-1820(character)X
-2138(``)X
-7 f
-2192(!)X
-1 f
-('')S
-2336(is)X
-2411(expanded)X
-2741(with)X
-2904(the)X
-3023(command)X
-3360(text)X
-3501(of)X
-3589(the)X
-3708(previous)X
-3 f
-4005(!)X
-1 f
-976 4287(command.)N
-1354 0.3125(\(Therefore,)AX
-1741(the)X
-1861(command)X
-3 f
-2199(!!)X
-1 f
-2295(repeats)X
-2545(the)X
-2665(previous)X
-3 f
-2963(!)X
-1 f
-3032(command.\))X
-3437(The)X
-3585(special)X
-3831(mean-)X
-976 4377(ings)N
-1130(of)X
-1218(``)X
-7 f
-1272(%)X
-1 f
-('',)S
-1415(``)X
-7 f
-1469(#)X
-1 f
-('',)S
-1612(and)X
-1749(``)X
-7 f
-1803(!)X
-1 f
-('')S
-1946(can)X
-2079(be)X
-2176(overridden)X
-2545(by)X
-2646(escaping)X
-2948(them)X
-3129(with)X
-3292(a)X
-3349(backslash.)X
-3722(If)X
-3797(no)X
-3 f
-3898(!)X
-1 f
-3965(or)X
-3 f
-976 4467(:!)N
-1 f
-1075(command)X
-1416(has)X
-1548(yet)X
-1671(been)X
-1848(executed,)X
-2179(it)X
-2248(is)X
-2326(an)X
-2427(error)X
-2609(to)X
-2696(use)X
-2828(an)X
-2929(unescaped)X
-3290(``)X
-7 f
-3344(!)X
-1 f
-('')S
-3492(character.)X
-3854(The)X
-3 f
-4005(!)X
-1 f
-976 4557(command)N
-1325(does)X
-2 f
-1505(not)X
-1 f
-1640(do)X
-1752(shell)X
-1935(expansion)X
-2292(on)X
-2404(the)X
-2534(strings)X
-2779(provided)X
-3096(as)X
-3195(arguments.)X
-3601(If)X
-3687(any)X
-3835(of)X
-3934(the)X
-976 4647(above)N
-1197(expansions)X
-1582(change)X
-1839(the)X
-1966(command)X
-2311(the)X
-2438(user)X
-2602(entered,)X
-2889(the)X
-3017(command)X
-3363(is)X
-3446(redisplayed)X
-3846(at)X
-3934(the)X
-976 4737(bottom)N
-1222(of)X
-1309(the)X
-1427(screen.)X
-3 f
-976 4917(Ex)N
-1 f
-1092(then)X
-1253(executes)X
-1553(the)X
-1674(program)X
-1969(named)X
-2206(by)X
-2309(the)X
-3 f
-2430(shell)X
-1 f
-2608(option,)X
-2855(with)X
-3020(a)X
-3 f
-9 f
-3079(-)X
-3081(-)X
-3 f
-3125(c)X
-1 f
-3184(\257ag)X
-3327(followed)X
-3636(by)X
-3740(the)X
-3862(argu-)X
-976 5007(ments)N
-1187(\(which)X
-1430(are)X
-1549(bundled)X
-1827(into)X
-1971(a)X
-2027(single)X
-2238(argument\).)X
-976 5187(The)N
-3 f
-1121(!)X
-1 f
-1188(command)X
-1524(is)X
-1597(permitted)X
-1924(in)X
-2006(an)X
-2102(empty)X
-2322(\256le.)X
-976 5367(If)N
-1050(the)X
-1168(\256le)X
-1290(has)X
-1417(been)X
-1589(modi\256ed)X
-1893(since)X
-2078(it)X
-2142(was)X
-2287(last)X
-2418(completely)X
-2794(written,)X
-3061(the)X
-3179(command)X
-3515(will)X
-3659(warn)X
-3840(you.)X
-976 5547(A)N
-1054(single)X
-1265(``)X
-7 f
-1319(!)X
-1 f
-('')S
-1461(character)X
-1777(is)X
-1850(displayed)X
-2177(when)X
-2371(the)X
-2489(command)X
-2825(completes.)X
-976 5727(In)N
-1064(the)X
-1183(second)X
-1427(form)X
-1604(of)X
-1692(the)X
-3 f
-1811(!)X
-1 f
-1879(command,)X
-2236(the)X
-2355(remainder)X
-2702(of)X
-2790(the)X
-2909(line)X
-3051(after)X
-3221(the)X
-3341(``)X
-7 f
-3395(!)X
-1 f
-('')S
-3539(is)X
-3614(passed)X
-3850(to)X
-3934(the)X
-
-35 p
-%%Page: 35 34
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Ex)X
-1377(Commands\))X
-3658(USD:13-35)X
-1 f
-976 762(program)N
-1273(named)X
-1512(by)X
-1617(the)X
-3 f
-1740(shell)X
-1 f
-1920(option,)X
-2169(as)X
-2261(described)X
-2594(above.)X
-2851(The)X
-3001(speci\256ed)X
-3311(lines)X
-3487(are)X
-3610(passed)X
-3848(to)X
-3934(the)X
-976 852(program)N
-1273(as)X
-1365(standard)X
-1662(input,)X
-1871(and)X
-2012(the)X
-2135(standard)X
-2432(and)X
-2573(standard)X
-2871(error)X
-3054(output)X
-3284(of)X
-3377(the)X
-3501(program)X
-3799(replace)X
-976 942(the)N
-1094(original)X
-1363(lines.)X
-976 1122(Line:)N
-1336(Unchanged)X
-1722(if)X
-1791(no)X
-1891(range)X
-2090(was)X
-2235(speci\256ed,)X
-2560(otherwise)X
-2892(set)X
-3001(to)X
-3083(the)X
-3201(\256rst)X
-3345(line)X
-3485(of)X
-3572(the)X
-3690(range.)X
-976 1212(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2206(and)X
-3 f
-2342(writeany)X
-1 f
-2665(options.)X
-3 f
-776 1392([range])N
-1046(nu[mber])X
-1391([count])X
-1656([\257ags])X
-776 1482([range])N
-1046(#)X
-1106([count])X
-1371([\257ags])X
-1 f
-976 1572(Display)N
-1245(the)X
-1363(selected)X
-1642(lines,)X
-1833(each)X
-2001(preceded)X
-2312(with)X
-2474(its)X
-2569(line)X
-2709(number.)X
-976 1752(The)N
-1121(line)X
-1261(number)X
-1526(format)X
-1760(is)X
-1833(``%6d'',)X
-2128(followed)X
-2433(by)X
-2533(two)X
-2673(spaces.)X
-976 1932(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(displayed.)X
-976 2022(Options:)N
-1336(None.)X
-3 f
-776 2202(@)N
-870(buffer)X
-776 2292(*)N
-836(buffer)X
-1 f
-976 2382(Execute)N
-1255(a)X
-1311(buffer.)X
-1568(Each)X
-1749(line)X
-1890(in)X
-1973(the)X
-2092(named)X
-2327(buffer)X
-2545(is)X
-2619(executed)X
-2926(as)X
-3014(an)X
-3 f
-3111(ex)X
-1 f
-3208(command.)X
-3585(If)X
-3660(no)X
-3761(buffer)X
-3979(is)X
-976 2472(speci\256ed,)N
-1301(or)X
-1388(if)X
-1457(the)X
-1575(speci\256ed)X
-1880(buffer)X
-2097(is)X
-2170(``)X
-7 f
-2224(@)X
-1 f
-('')S
-2346(or)X
-2433(``)X
-7 f
-2487(*)X
-1 f
-('',)S
-2629(the)X
-2747(last)X
-2878(buffer)X
-3095(executed)X
-3401(is)X
-3474(used.)X
-3 f
-776 2652([range])N
-1046(<[<)X
-1185(...])X
-1292([count])X
-1557([\257ags])X
-1 f
-976 2742(Shift)N
-1154(lines)X
-1328(left)X
-1458(or)X
-1548(right.)X
-1762(The)X
-1910(speci\256ed)X
-2218(lines)X
-2392(are)X
-2514(shifted)X
-2755(to)X
-2840(the)X
-2961(left)X
-3091(\(for)X
-3235(the)X
-3 f
-3356(<)X
-1 f
-3425(command\))X
-3791(or)X
-3881(right)X
-976 2832(\(for)N
-1130(the)X
-3 f
-1261(>)X
-1 f
-1340(command\),)X
-1736(by)X
-1849(the)X
-1980(number)X
-2257(of)X
-2356(columns)X
-2659(speci\256ed)X
-2976(by)X
-3088(the)X
-3 f
-3218(shiftwidth)X
-1 f
-3596(option.)X
-3872(Only)X
-976 2922(leading)N
-1237(whitespace)X
-1619(characters)X
-1971(are)X
-2095(deleted)X
-2352(when)X
-2552(shifting)X
-2822(left;)X
-2977(once)X
-3155(the)X
-3279(\256rst)X
-3429(column)X
-3695(of)X
-3788(the)X
-3912(line)X
-976 3012(contains)N
-1283(a)X
-1359(nonblank)X
-1697(character,)X
-2053(the)X
-3 f
-2191(shift)X
-1 f
-2382(command)X
-2738(will)X
-2901(succeed,)X
-3215(but)X
-3356(the)X
-3493(line)X
-3652(will)X
-3815(not)X
-3956(be)X
-976 3102(modi\256ed.)N
-976 3282(If)N
-1050(the)X
-1168(command)X
-1504(character)X
-3 f
-1820(<)X
-1 f
-1886(or)X
-3 f
-1973(>)X
-1 f
-2039(is)X
-2112(repeated)X
-2405(more)X
-2590(than)X
-2748(once,)X
-2941(the)X
-3060(command)X
-3397(is)X
-3471(repeated)X
-3765(once)X
-3938(for)X
-976 3372(each)N
-1144(additional)X
-1484(command)X
-1820(character.)X
-976 3552(Line:)N
-1336(If)X
-1416(the)X
-1540(current)X
-1794(line)X
-1940(is)X
-2019(set)X
-2134(to)X
-2222(one)X
-2364(of)X
-2457(the)X
-2581(lines)X
-2758(that)X
-2904(are)X
-3029(affected)X
-3315(by)X
-3421(the)X
-3545(command,)X
-3908(it)X
-3979(is)X
-1336 3642(unchanged.)N
-1751(Otherwise,)X
-2128(it)X
-2199(is)X
-2279(set)X
-2395(to)X
-2484(the)X
-2609(\256rst)X
-2760(nonblank)X
-3085(character)X
-3408(of)X
-3502(the)X
-3627(lowest)X
-3863(num-)X
-1336 3732(bered)N
-1535(line)X
-1675(shifted.)X
-976 3822(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(shiftwidth)X
-1 f
-2222(option.)X
-3 f
-776 4002([line])N
-974(=)X
-1040([\257ags])X
-1 f
-976 4092(Display)N
-1250(the)X
-1373(line)X
-1518(number.)X
-1828(Display)X
-2102(the)X
-2225(line)X
-2370(number)X
-2640(of)X
-7 f
-2732(line)X
-1 f
-2949(\(which)X
-3197(defaults)X
-3476(to)X
-3563(the)X
-3687(last)X
-3824(line)X
-3970(in)X
-976 4182(the)N
-1094(\256le\).)X
-976 4362(Line:)N
-1336(Unchanged.)X
-976 4452(Options:)N
-1336(None.)X
-3 f
-776 4632([range])N
-1046(>[>)X
-1185(...])X
-1292([count])X
-1557([\257ags])X
-1 f
-976 4722(Shift)N
-1155(right.)X
-1370(The)X
-1519(speci\256ed)X
-1828(lines)X
-2003(are)X
-2127(shifted)X
-2370(to)X
-2457(the)X
-2580(right)X
-2756(by)X
-2861(the)X
-2984(number)X
-3254(of)X
-3346(columns)X
-3642(speci\256ed)X
-3952(by)X
-976 4812(the)N
-3 f
-1094(shiftwidth)X
-1 f
-1460(option,)X
-1704(by)X
-1804(inserting)X
-2104(tab)X
-2222(and)X
-2358(space)X
-2557(characters.)X
-2944(Empty)X
-3177(lines)X
-3348(are)X
-3467(not)X
-3589(changed.)X
-976 4992(If)N
-1053(the)X
-1174(command)X
-1513(character)X
-1832(``)X
-7 f
-1886(>)X
-1 f
-('')S
-2011(is)X
-2087(repeated)X
-2383(more)X
-2571(than)X
-2732(once,)X
-2927(the)X
-3048(command)X
-3388(is)X
-3465(repeated)X
-3762(once)X
-3938(for)X
-976 5082(each)N
-1144(additional)X
-1484(command)X
-1820(character.)X
-976 5262(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(modi\256ed)X
-2233(by)X
-2333(the)X
-2451(command.)X
-976 5352(Options:)N
-1336(None.)X
-3 f
-776 5532(ab[brev])N
-1090(lhs)X
-1207(rhs)X
-1 f
-976 5622(Add)N
-1135(an)X
-1232(abbreviation)X
-1654(to)X
-1737(the)X
-1856(current)X
-2105(abbreviation)X
-2527(list.)X
-2686(In)X
-3 f
-2775(vi)X
-1 f
-2837(,)X
-2879(if)X
-7 f
-2950(lhs)X
-1 f
-3116(is)X
-3191(entered)X
-3450(such)X
-3619(that)X
-3761(it)X
-3827(is)X
-3902(pre-)X
-976 5712(ceded)N
-1194(and)X
-1340(followed)X
-1655(by)X
-1765(characters)X
-2122(that)X
-2272(cannot)X
-2516(be)X
-2622(part)X
-2777(of)X
-2874(a)X
-2940(word,)X
-3155(it)X
-3229(is)X
-3312(replaced)X
-3614(by)X
-3723(the)X
-3850(string)X
-7 f
-976 5802(rhs)N
-1 f
-(.)S
-
-36 p
-%%Page: 36 35
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-36)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-1 f
-976 762(Line:)N
-1336(Unchanged.)X
-976 852(Options:)N
-1336(None.)X
-3 f
-776 1032([line])N
-974(a[ppend][!])X
-1 f
-976 1122(The)N
-1123(input)X
-1309(text)X
-1451(is)X
-1526(appended)X
-1856(to)X
-1940(the)X
-2060(speci\256ed)X
-2367(line.)X
-2549(If)X
-2626(line)X
-2769(0)X
-2832(is)X
-2908(speci\256ed,)X
-3236(the)X
-3357(text)X
-3500(is)X
-3576(inserted)X
-3853(at)X
-3934(the)X
-976 1212(beginning)N
-1317(of)X
-1405(the)X
-1524(\256le.)X
-1687(Set)X
-1810(to)X
-1893(the)X
-2012(last)X
-2144(line)X
-2285(input.)X
-2510(If)X
-2585(no)X
-2686(lines)X
-2858(are)X
-2978(input,)X
-3183(then)X
-3342(set)X
-3451(to)X
-7 f
-3533(line)X
-1 f
-(,)S
-3765(or)X
-3852(to)X
-3934(the)X
-976 1302(\256rst)N
-1125(line)X
-1270(of)X
-1362(the)X
-1485(\256le)X
-1612(if)X
-1686(a)X
-7 f
-1747(line)X
-1 f
-1965(of)X
-2058(0)X
-2124(was)X
-2275(speci\256ed.)X
-2626(Following)X
-2980(the)X
-3104(command)X
-3446(name)X
-3646(with)X
-3814(a)X
-3876(``)X
-7 f
-3930(!)X
-1 f
-('')S
-976 1392(character)N
-1292(causes)X
-1522(the)X
-3 f
-1640(autoindent)X
-1 f
-2028(option)X
-2252(to)X
-2334(be)X
-2430(toggled)X
-2690(for)X
-2804(the)X
-2922(duration)X
-3209(of)X
-3296(the)X
-3414(command.)X
-976 1572(Line:)N
-1336(Unchanged.)X
-976 1662(Options:)N
-1336(Affected)X
-1661(by)X
-1784(the)X
-3 f
-1925(altwerase)X
-1 f
-2251(,)X
-3 f
-2314(autoindent)X
-1 f
-2682(,)X
-3 f
-2746(beautify)X
-1 f
-(,)S
-3 f
-3090(showmatch)X
-1 f
-3477(,)X
-3 f
-3541(ttywerase)X
-1 f
-3916(and)X
-3 f
-1336 1752(wrapmargin)N
-1 f
-1783(options.)X
-3 f
-776 1932(ar[gs])N
-1 f
-976 2022(Display)N
-1248(the)X
-1369(argument)X
-1695(list.)X
-1855(The)X
-2003(current)X
-2254(argument)X
-2580(is)X
-2657(displayed)X
-2988(inside)X
-3203(of)X
-3294(``)X
-7 f
-3348([)X
-1 f
-('')S
-3474(and)X
-3614(``)X
-7 f
-3668(])X
-1 f
-('')S
-3794(charac-)X
-976 2112(ters.)N
-1154(The)X
-1300(argument)X
-1624(list)X
-1742(is)X
-1816(the)X
-1935(list)X
-2053(of)X
-2141(operands)X
-2452(speci\256ed)X
-2758(on)X
-2859(startup,)X
-3118(which)X
-3335(can)X
-3468(be)X
-3565(replaced)X
-3859(using)X
-976 2202(the)N
-3 f
-1094(next)X
-1 f
-1261(command.)X
-976 2382(Line:)N
-1336(Unchanged.)X
-976 2472(Options:)N
-1336(None.)X
-3 f
-776 2652(bg)N
-976 2742(Vi)N
-1 f
-1076(mode)X
-1274(only.)X
-1476(Background)X
-1888(the)X
-2006(current)X
-2254(screen.)X
-976 2922(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(current)X
-1906(line)X
-2046(when)X
-2240(the)X
-2358(screen)X
-2584(was)X
-2729(last)X
-2860(edited.)X
-976 3012(Options:)N
-1336(None.)X
-3 f
-776 3192([range])N
-1046(c[hange][!])X
-1441([count])X
-1 f
-976 3282(Replace)N
-1256(the)X
-1375(lines)X
-1548(with)X
-1712(input)X
-1898(text.)X
-2080(Following)X
-2430(the)X
-2550(command)X
-2888(name)X
-3084(with)X
-3248(a)X
-3306(``)X
-7 f
-3360(!)X
-1 f
-('')S
-3504(character)X
-3822(causes)X
-976 3372(the)N
-3 f
-1094(autoindent)X
-1 f
-1482(option)X
-1706(to)X
-1788(be)X
-1884(toggled)X
-2144(for)X
-2258(the)X
-2376(duration)X
-2663(of)X
-2750(the)X
-2868(command.)X
-976 3552(Line:)N
-1336(Set)X
-1463(to)X
-1550(the)X
-1673(last)X
-1809(line)X
-1954(input,)X
-2163(or,)X
-2275(if)X
-2349(no)X
-2454(lines)X
-2630(were)X
-2812(input,)X
-3021(set)X
-3135(to)X
-3223(the)X
-3347(line)X
-3493(before)X
-3725(the)X
-3849(target)X
-1336 3642(line,)N
-1496(or)X
-1583(to)X
-1665(the)X
-1783(\256rst)X
-1927(line)X
-2067(of)X
-2154(the)X
-2272(\256le)X
-2394(if)X
-2463(there)X
-2644(are)X
-2763(no)X
-2863(lines)X
-3034(preceding)X
-3371(the)X
-3489(target)X
-3692(line.)X
-976 3732(Options:)N
-1336(Affected)X
-1661(by)X
-1784(the)X
-3 f
-1925(altwerase)X
-1 f
-2251(,)X
-3 f
-2314(autoindent)X
-1 f
-2682(,)X
-3 f
-2746(beautify)X
-1 f
-(,)S
-3 f
-3090(showmatch)X
-1 f
-3477(,)X
-3 f
-3541(ttywerase)X
-1 f
-3916(and)X
-3 f
-1336 3822(wrapmargin)N
-1 f
-1783(options.)X
-3 f
-776 4002(chd[ir][!])N
-1113([directory])X
-776 4092(cd[!])N
-957([directory])X
-1 f
-976 4182(Change)N
-1244(the)X
-1365(current)X
-1616(working)X
-1906(directory.)X
-2259(The)X
-7 f
-2407(directory)X
-1 f
-2862(argument)X
-3188(is)X
-3265(subjected)X
-3592(to)X
-2 f
-3678(sh)X
-1 f
-3749(\(1\))X
-3867(word)X
-976 4272(expansions.)N
-1395(When)X
-1610(invoked)X
-1891(with)X
-2056(no)X
-2159(directory)X
-2472(argument)X
-2798(and)X
-2937(the)X
-7 f
-3057(HOME)X
-1 f
-3271(environment)X
-3698(variable)X
-3979(is)X
-976 4362(set,)N
-1105(the)X
-1223(directory)X
-1533(named)X
-1767(by)X
-1867(the)X
-7 f
-1985(HOME)X
-1 f
-2197(environment)X
-2622(variable)X
-2901(becomes)X
-3202(the)X
-3320(new)X
-3474(current)X
-3722(directory.)X
-976 4452(Otherwise,)N
-1353(the)X
-1478(new)X
-1639(current)X
-1894(directory)X
-2211(becomes)X
-2519(the)X
-2644(directory)X
-2961(returned)X
-3256(by)X
-3363(the)X
-2 f
-3488(getpwent)X
-1 f
-3777(\(3\))X
-3898(rou-)X
-976 4542(tine.)N
-976 4722(The)N
-3 f
-1125(chdir)X
-1 f
-1331(command)X
-1671(will)X
-1819(fail)X
-1950(if)X
-2023(the)X
-2145(\256le)X
-2271(has)X
-2402(been)X
-2578(modi\256ed)X
-2886(since)X
-3075(the)X
-3197(last)X
-3333(complete)X
-3652(write)X
-3842(of)X
-3934(the)X
-976 4812(\256le.)N
-1138(You)X
-1296(can)X
-1428(override)X
-1716(this)X
-1851(check)X
-2059(by)X
-2159(appending)X
-2513(a)X
-2569(``)X
-7 f
-2623(!)X
-1 f
-('')S
-2765(character)X
-3081(to)X
-3163(the)X
-3281(command.)X
-976 4992(Line:)N
-1336(Unchanged.)X
-976 5082(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(cdpath)X
-1 f
-2111(option.)X
-3 f
-776 5262([range])N
-1046(co[py])X
-1280(line)X
-1424([\257ags])X
-776 5352([range])N
-1046(t)X
-1093(line)X
-1237([\257ags])X
-1 f
-976 5442(Copy)N
-1169(the)X
-1288(speci\256ed)X
-1594(lines)X
-1766(\(range\))X
-2020(after)X
-2189(the)X
-2308(destination)X
-2680(line.)X
-2861(Line)X
-3029(0)X
-3090(may)X
-3249(be)X
-3346(speci\256ed)X
-3652(to)X
-3735(insert)X
-3934(the)X
-976 5532(lines)N
-1147(at)X
-1225(the)X
-1343(beginning)X
-1683(of)X
-1770(the)X
-1888(\256le.)X
-976 5712(Line:)N
-1336(Unchanged.)X
-
-37 p
-%%Page: 37 36
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Ex)X
-1377(Commands\))X
-3658(USD:13-37)X
-1 f
-976 762(Options:)N
-1336(None.)X
-3 f
-776 942([range])N
-1046(d[elete])X
-1321([buffer])X
-1609([count])X
-1874([\257ags])X
-1 f
-976 1032(Delete)N
-1208(the)X
-1329(lines)X
-1503(from)X
-1682(the)X
-1803(\256le.)X
-1968(The)X
-2116(deleted)X
-2371(text)X
-2514(is)X
-2590(saved)X
-2796(in)X
-2881(the)X
-3002(speci\256ed)X
-3310(buffer,)X
-3550(or,)X
-3660(if)X
-3732(no)X
-3835(buffer)X
-976 1122(is)N
-1051(speci\256ed,)X
-1378(in)X
-1462(the)X
-1582(unnamed)X
-1898(buffer.)X
-2157(If)X
-2233(the)X
-2353(command)X
-2691(name)X
-2887(is)X
-2962(followed)X
-3269(by)X
-3371(a)X
-3429(letter)X
-3616(that)X
-3757(could)X
-3956(be)X
-976 1212(interpreted)N
-1346(as)X
-1435(either)X
-1640(a)X
-1698(buffer)X
-1917(name)X
-2113(or)X
-2202(a)X
-2261(\257ag)X
-2404(value)X
-2601(\(because)X
-2906(neither)X
-3152(a)X
-7 f
-3211(count)X
-1 f
-3474(or)X
-7 f
-3564(flags)X
-1 f
-3827(values)X
-976 1302(were)N
-1160(given\),)X
-3 f
-1412(ex)X
-1 f
-1515(treats)X
-1716(the)X
-1841(letter)X
-2033(as)X
-2127(a)X
-7 f
-2190(flags)X
-1 f
-2457(value)X
-2658(if)X
-2734(the)X
-2859(letter)X
-3051(immediately)X
-3477(follows)X
-3743(the)X
-3867(com-)X
-976 1392(mand)N
-1174(name,)X
-1388(without)X
-1652(any)X
-1788(whitespace)X
-2165(separation.)X
-2555(If)X
-2629(the)X
-2747(letter)X
-2932(is)X
-3005(preceded)X
-3316(by)X
-3416(whitespace)X
-3794(charac-)X
-976 1482(ters,)N
-1132(it)X
-1196(treats)X
-1390(it)X
-1454(as)X
-1541(a)X
-1597(buffer)X
-1814(name.)X
-976 1662(Line:)N
-1336(Set)X
-1459(to)X
-1542(the)X
-1661(line)X
-1802(following)X
-2134(the)X
-2253(deleted)X
-2506(lines,)X
-2698(or)X
-2786(to)X
-2869(the)X
-2988(last)X
-3120(line)X
-3261(if)X
-3331(the)X
-3450(deleted)X
-3703(lines)X
-3875(were)X
-1336 1752(at)N
-1414(the)X
-1532(end.)X
-976 1842(Options:)N
-1336(None.)X
-3 f
-776 2022(di[splay])N
-1093(b[uffers])X
-1412(|)X
-1450(s[creens])X
-1774(|)X
-1812(t[ags])X
-1 f
-976 2112(Display)N
-1256(buffers,)X
-1535(screens)X
-1803(or)X
-1901(tags.)X
-2101(The)X
-3 f
-2257(display)X
-1 f
-2531(command)X
-2878(takes)X
-3074(one)X
-3221(of)X
-3319(three)X
-3511(additional)X
-3862(argu-)X
-976 2202(ments,)N
-1207(which)X
-1423(are)X
-1542(as)X
-1629(follows:)X
-976 2382(b[uffers])N
-1336(Display)X
-1605(all)X
-1705(buffers)X
-1953(\(including)X
-2302(named,)X
-2556(unnamed,)X
-2890(and)X
-3026(numeric\))X
-3336(that)X
-3476(contain)X
-3732(text.)X
-976 2472(s[creens])N
-1336(Display)X
-1605(the)X
-1723(\256le)X
-1845(names)X
-2070(of)X
-2157(all)X
-2257(background)X
-2656(screens.)X
-976 2562(t[ags])N
-1336(Display)X
-1605(the)X
-1723(tags)X
-1872(stack.)X
-976 2742(Line:)N
-1336(Unchanged.)X
-976 2832(Options:)N
-1336(None.)X
-3 f
-776 3012(e[dit][!])N
-1060([+cmd])X
-1327([\256le])X
-776 3102(ex[!])N
-953([+cmd])X
-1220([\256le])X
-1 f
-976 3192(Edit)N
-1133(a)X
-1193(different)X
-1494(\256le.)X
-1661(If)X
-1740(the)X
-1863(current)X
-2116(buffer)X
-2338(has)X
-2470(been)X
-2647(modi\256ed)X
-2956(since)X
-3146(the)X
-3269(last)X
-3405(complete)X
-3724(write,)X
-3934(the)X
-976 3282(command)N
-1324(will)X
-1480(fail.)X
-1659(You)X
-1829(can)X
-1972(override)X
-2271(this)X
-2417(by)X
-2528(appending)X
-2893(a)X
-2960(``)X
-7 f
-3014(!)X
-1 f
-('')S
-3167(character)X
-3494(to)X
-3587(the)X
-3716(command)X
-976 3372(name.)N
-976 3552(If)N
-1053(the)X
-1174(``)X
-7 f
-1228(+cmd)X
-1 f
-('')S
-1497(option)X
-1724(is)X
-1800(speci\256ed,)X
-2128(that)X
-3 f
-2271(ex)X
-1 f
-2370(command)X
-2709(will)X
-2856(be)X
-2955(executed)X
-3264(in)X
-3349(the)X
-3470(new)X
-3628(\256le.)X
-3794(Any)X
-3 f
-3956(ex)X
-1 f
-976 3642(command)N
-1326(may)X
-1498(be)X
-1607(used,)X
-1807(although)X
-2120(the)X
-2251(most)X
-2439(common)X
-2752(use)X
-2892(of)X
-2992(this)X
-3140(feature)X
-3397(is)X
-3483(to)X
-3578(specify)X
-3843(a)X
-3912(line)X
-976 3732(number)N
-1241(or)X
-1328(search)X
-1554(pattern)X
-1797(to)X
-1879(set)X
-1988(the)X
-2106(initial)X
-2312(location)X
-2590(in)X
-2672(the)X
-2790(new)X
-2944(\256le.)X
-976 3912(Line:)N
-1336(If)X
-1415(you)X
-1560(have)X
-1737(previously)X
-2100(edited)X
-2321(the)X
-2444(\256le,)X
-2591(the)X
-2714(current)X
-2967(line)X
-3112(will)X
-3261(be)X
-3362(set)X
-3476(to)X
-3563(your)X
-3735(last)X
-3872(posi-)X
-1336 4002(tion)N
-1482(in)X
-1566(the)X
-1686(\256le.)X
-1850(If)X
-1926(that)X
-2068(position)X
-2347(does)X
-2516(not)X
-2640(exist,)X
-2833(or)X
-2921(you)X
-3062(have)X
-3235(not)X
-3358(previously)X
-3717(edited)X
-3934(the)X
-1336 4092(\256le,)N
-1481(the)X
-1602(current)X
-1853(line)X
-1996(will)X
-2143(be)X
-2242(set)X
-2354(to)X
-2439(the)X
-2560(\256rst)X
-2707(line)X
-2850(of)X
-2940(the)X
-3061(\256le)X
-3186(if)X
-3258(you)X
-3401(are)X
-3523(in)X
-3 f
-3608(vi)X
-1 f
-3694(mode,)X
-3916(and)X
-1336 4182(the)N
-1454(last)X
-1585(line)X
-1725(of)X
-1812(the)X
-1930(\256le)X
-2052(if)X
-2121(you)X
-2261(are)X
-2380(in)X
-3 f
-2462(ex)X
-1 f
-2538(.)X
-976 4272(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2206(and)X
-3 f
-2342(writeany)X
-1 f
-2665(options.)X
-3 f
-776 4452(exu[sage])N
-1117([command])X
-1 f
-976 4542(Display)N
-1249(usage)X
-1456(for)X
-1574(an)X
-3 f
-1674(ex)X
-1 f
-1774(command.)X
-2154(If)X
-7 f
-2233(command)X
-1 f
-2594(is)X
-2672(speci\256ed,)X
-3002(a)X
-3063(usage)X
-3271(statement)X
-3603(for)X
-3722(that)X
-3867(com-)X
-976 4632(mand)N
-1174(is)X
-1247(displayed.)X
-1614(Otherwise,)X
-1984(usage)X
-2187(statements)X
-2545(for)X
-2659(all)X
-3 f
-2759(ex)X
-1 f
-2855(commands)X
-3222(are)X
-3341(displayed.)X
-976 4812(Line:)N
-1336(Unchanged.)X
-976 4902(Options:)N
-1336(None.)X
-3 f
-776 5082(f[ile])N
-957([\256le])X
-1 f
-976 5172(Display)N
-1249(and)X
-1389(optionally)X
-1737(change)X
-1989(the)X
-2111(\256le)X
-2237(name.)X
-2475(If)X
-2553(a)X
-2613(\256le)X
-2739(name)X
-2937(is)X
-3014(speci\256ed,)X
-3344(the)X
-3467(current)X
-3720(pathname)X
-976 5262(is)N
-1054(changed)X
-1347(to)X
-1434(the)X
-1557(speci\256ed)X
-1867(name.)X
-2106(The)X
-2256(current)X
-2509(pathname,)X
-2865(the)X
-2987(number)X
-3256(of)X
-3347(lines,)X
-3542(and)X
-3682(the)X
-3804(current)X
-976 5352(position)N
-1253(in)X
-1335(the)X
-1453(\256le)X
-1575(are)X
-1694(displayed.)X
-976 5532(Line:)N
-1336(Unchanged.)X
-976 5622(Options:)N
-1336(None.)X
-
-38 p
-%%Page: 38 37
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-38)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-776 762(fg)N
-863([name])X
-976 852(Vi)N
-1 f
-1085(mode)X
-1292(only.)X
-1503(Foreground)X
-1906(the)X
-2033(speci\256ed)X
-2347(screen.)X
-2622(Swap)X
-2829(the)X
-2956(current)X
-3213(screen)X
-3448(with)X
-3619(the)X
-3747(speci\256ed)X
-976 942(backgrounded)N
-1451(screen.)X
-1717(If)X
-1791(no)X
-1891(screen)X
-2117(is)X
-2190(speci\256ed,)X
-2515(the)X
-2633(\256rst)X
-2777(background)X
-3176(screen)X
-3402(is)X
-3475(foregrounded.)X
-976 1122(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(current)X
-1906(line)X
-2046(when)X
-2240(the)X
-2358(screen)X
-2584(was)X
-2729(last)X
-2860(edited.)X
-976 1212(Options:)N
-1336(None.)X
-3 f
-776 1392([range])N
-1046(g[lobal])X
-1328(/pattern/)X
-1646([commands])X
-776 1482([range])N
-1046(v)X
-1106(/pattern/)X
-1424([commands])X
-1 f
-976 1572(Apply)N
-1206(commands)X
-1583(to)X
-1675(lines)X
-1856(matching)X
-2184(\(or)X
-2308(not)X
-2440(matching\))X
-2795(a)X
-2861(pattern.)X
-3154(The)X
-3309(lines)X
-3490(within)X
-3725(the)X
-3854(given)X
-976 1662(range)N
-1191(that)X
-1347(match)X
-1579(\(``)X
-7 f
-1660(g[lobal])X
-1 f
-(''\),)S
-2181(or)X
-2284(do)X
-2400(not)X
-2538(match)X
-2770(\(``)X
-7 f
-2851(v)X
-1 f
-(''\))S
-3015(the)X
-3148(given)X
-3361(pattern)X
-3619(are)X
-3753(selected.)X
-976 1752(Then,)N
-1197(the)X
-1331(speci\256ed)X
-3 f
-1652(ex)X
-1 f
-1764(command\(s\))X
-2201(are)X
-2336(executed)X
-2658(with)X
-2836(the)X
-2970(current)X
-3235(line)X
-3392(\(``)X
-7 f
-3473(.)X
-1 f
-(''\))S
-3659(set)X
-3785(to)X
-3884(each)X
-976 1842(selected)N
-1257(line.)X
-1439(If)X
-1515(no)X
-1617(range)X
-1818(is)X
-1893(speci\256ed,)X
-2220(the)X
-2340(entire)X
-2545(\256le)X
-2669(is)X
-2744(searched)X
-3048(for)X
-3164(matching,)X
-3503(or)X
-3591(not)X
-3714(matching,)X
-976 1932(lines.)N
-976 2112(Multiple)N
-1279(commands)X
-1654(can)X
-1794(be)X
-1899(speci\256ed,)X
-2233(one)X
-2378(per)X
-2510(line,)X
-2679(by)X
-2788(escaping)X
-3098(each)X
-7 f
-3275(<newline>)X
-1 f
-3736(character)X
-976 2202(with)N
-1152(a)X
-1222(backslash,)X
-1588(or)X
-1689(by)X
-1803(separating)X
-2167(commands)X
-2548(with)X
-2724(a)X
-2794(``)X
-7 f
-2848(|)X
-1 f
-('')S
-2984(character.)X
-3353(If)X
-3440(no)X
-3553(commands)X
-3933(are)X
-976 2292(speci\256ed,)N
-1301(the)X
-1419(command)X
-1755(defaults)X
-2029(to)X
-2111(the)X
-3 f
-2229(print)X
-1 f
-2422(command.)X
-976 2472(For)N
-1111(the)X
-3 f
-1233(append)X
-1 f
-1485(,)X
-3 f
-1529(change)X
-1 f
-1793(and)X
-3 f
-1933(insert)X
-1 f
-2153(commands,)X
-2544(the)X
-2666(input)X
-2854(text)X
-2998(must)X
-3177(be)X
-3277(part)X
-3427(of)X
-3519(the)X
-3642(global)X
-3867(com-)X
-976 2562(mand)N
-1174(line.)X
-1354(In)X
-1441(this)X
-1576(case,)X
-1755(the)X
-1873(terminating)X
-2262(period)X
-2487(can)X
-2619(be)X
-2715(omitted)X
-2979(if)X
-3048(it)X
-3112(ends)X
-3279(the)X
-3397(commands.)X
-976 2742(The)N
-3 f
-1123(visual)X
-1 f
-1344(command)X
-1682(may)X
-1842(also)X
-1993(be)X
-2091(speci\256ed)X
-2398(as)X
-2487(one)X
-2625(of)X
-2714(the)X
-3 f
-2834(ex)X
-1 f
-2933(commands.)X
-3343(In)X
-3433(this)X
-3571(mode,)X
-3792(input)X
-3979(is)X
-976 2832(taken)N
-1173(from)X
-1352(the)X
-1473(terminal.)X
-1803(Entering)X
-2102(a)X
-3 f
-2161(Q)X
-1 f
-2246(command)X
-2585(in)X
-3 f
-2670(vi)X
-1 f
-2755(mode)X
-2956(causes)X
-3189(the)X
-3310(next)X
-3471(line)X
-3614(matching)X
-3934(the)X
-976 2922(pattern)N
-1219(to)X
-1301(be)X
-1397(selected)X
-1676(and)X
-3 f
-1812(vi)X
-1 f
-1894(to)X
-1976(be)X
-2072(reentered,)X
-2412(until)X
-2578(the)X
-2696(list)X
-2813(is)X
-2886(exhausted.)X
-976 3102(The)N
-3 f
-1121(global)X
-1 f
-1329(,)X
-3 f
-1369(v)X
-1 f
-1429(and)X
-3 f
-1565(undo)X
-1 f
-1757(commands)X
-2124(cannot)X
-2358(be)X
-2454(used)X
-2621(as)X
-2708(part)X
-2853(of)X
-2940(these)X
-3125(commands.)X
-976 3282(The)N
-1131(editor)X
-1348(options)X
-3 f
-1613(autoprint)X
-1 f
-1937(,)X
-3 f
-1987(autoindent)X
-1 f
-2355(,)X
-2405(and)X
-3 f
-2551(report)X
-1 f
-2800(are)X
-2929(turned)X
-3164(off)X
-3288(for)X
-3412(the)X
-3540(duration)X
-3837(of)X
-3934(the)X
-3 f
-976 3372(global)N
-1 f
-1204(and)X
-3 f
-1340(v)X
-1 f
-1400(commands.)X
-976 3552(Line:)N
-1336(The)X
-1481(last)X
-1612(line)X
-1752(modi\256ed.)X
-976 3642(Options:)N
-1336(None.)X
-3 f
-776 3822(he[lp])N
-1 f
-3912(Display)Y
-1245(a)X
-1301(help)X
-1459(message.)X
-976 4092(Line:)N
-1336(Unchanged.)X
-976 4182(Options:)N
-1336(None.)X
-3 f
-776 4362([line])N
-974(i[nsert][!])X
-1 f
-976 4452(The)N
-1123(input)X
-1309(text)X
-1451(is)X
-1526(inserted)X
-1803(before)X
-2032(the)X
-2153(speci\256ed)X
-2461(line.)X
-2644(Following)X
-2995(the)X
-3116(command)X
-3455(name)X
-3652(with)X
-3817(a)X
-3876(``)X
-7 f
-3930(!)X
-1 f
-('')S
-976 4542(character)N
-1292(causes)X
-1522(the)X
-3 f
-1640(autoindent)X
-1 f
-2028(option)X
-2252(setting)X
-2485(to)X
-2567(be)X
-2663(toggled)X
-2923(for)X
-3037(the)X
-3155(duration)X
-3442(of)X
-3529(this)X
-3664(command.)X
-976 4722(Line:)N
-1336(Set)X
-1460(to)X
-1544(the)X
-1664(last)X
-1797(line)X
-1939(input;)X
-2147(if)X
-2218(no)X
-2320(lines)X
-2493(were)X
-2672(input,)X
-2878(set)X
-2989(to)X
-3073(the)X
-3193(line)X
-3336(before)X
-3565(the)X
-3686(target)X
-3892(line,)X
-1336 4812(or)N
-1423(to)X
-1505(the)X
-1623(\256rst)X
-1767(line)X
-1907(of)X
-1994(the)X
-2112(\256le)X
-2234(if)X
-2303(there)X
-2484(are)X
-2603(no)X
-2703(lines)X
-2874(preceding)X
-3211(the)X
-3329(target)X
-3532(line.)X
-976 4902(Options:)N
-1336(Affected)X
-1661(by)X
-1784(the)X
-3 f
-1925(altwerase)X
-1 f
-2251(,)X
-3 f
-2314(autoindent)X
-1 f
-2682(,)X
-3 f
-2746(beautify)X
-1 f
-(,)S
-3 f
-3090(showmatch)X
-1 f
-3477(,)X
-3 f
-3541(ttywerase)X
-1 f
-3916(and)X
-3 f
-1336 4992(wrapmargin)N
-1 f
-1783(options.)X
-3 f
-776 5172([range])N
-1046(j[oin][!])X
-1334([count])X
-1599([\257ags])X
-1 f
-976 5262(Join)N
-1129(lines)X
-1300(of)X
-1387(text)X
-1527(together.)X
-976 5442(A)N
-7 f
-1056(count)X
-1 f
-1318(speci\256ed)X
-1625(to)X
-1709(the)X
-1829(command)X
-2167(speci\256es)X
-2465(that)X
-2607(the)X
-2727(last)X
-2860(line)X
-3002(of)X
-3091(the)X
-7 f
-3212(range)X
-1 f
-3475(plus)X
-7 f
-3631(count)X
-1 f
-3894(sub-)X
-976 5532(sequent)N
-1258(lines)X
-1445(will)X
-1605(be)X
-1717(joined.)X
-1993(\(Note,)X
-2232(this)X
-2383(differs)X
-2629(by)X
-2745(one)X
-2897(from)X
-3089(the)X
-3223(general)X
-3496(rule)X
-3657(where)X
-3890(only)X
-7 f
-976 5622(count)N
-1 f
-(-)S
-1263(subsequent)X
-1639(lines)X
-1810(are)X
-1929(affected.\))X
-976 5802(If)N
-1057(the)X
-1182(current)X
-1438(line)X
-1586(ends)X
-1761(with)X
-1931(a)X
-1995(whitespace)X
-2380(character,)X
-2724(all)X
-2832(whitespace)X
-3217(is)X
-3298(stripped)X
-3584(from)X
-3768(the)X
-3894(next)X
-
-39 p
-%%Page: 39 38
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Ex)X
-1377(Commands\))X
-3658(USD:13-39)X
-1 f
-976 762(line.)N
-1160(Otherwise,)X
-1534(if)X
-1607(the)X
-1729(next)X
-1891(line)X
-2035(starts)X
-2228(with)X
-2394(a)X
-2454(open)X
-2634(parenthesis)X
-3019(\(``)X
-7 f
-3100(\()X
-1 f
-(''\),)S
-3272(do)X
-3375(nothing.)X
-3682(Otherwise,)X
-976 852(if)N
-1061(the)X
-1195(current)X
-1459(line)X
-1615(ends)X
-1798(with)X
-1976(a)X
-2049(question)X
-2357(mark)X
-2559(\(``)X
-7 f
-2640(?)X
-1 f
-(''\),)S
-2826(period)X
-3068(\(``)X
-7 f
-3149(.)X
-1 f
-(''\))S
-3335(or)X
-3439(exclamation)X
-3868(point)X
-976 942(\(``)N
-7 f
-1057(!)X
-1 f
-(''\),)S
-1226(insert)X
-1424(two)X
-1564(spaces.)X
-1834(Otherwise,)X
-2204(insert)X
-2402(a)X
-2458(single)X
-2669(space.)X
-976 1122(Appending)N
-1355(a)X
-1414(``)X
-7 f
-1468(!)X
-1 f
-('')S
-1613(character)X
-1932(to)X
-2017(the)X
-2138(command)X
-2477(name)X
-2674(causes)X
-2907(a)X
-2966(simpler)X
-3230(join)X
-3378(with)X
-3544(no)X
-3648(white-space)X
-976 1212(processing.)N
-976 1392(Line:)N
-1336(Unchanged.)X
-976 1482(Options:)N
-1336(None.)X
-3 f
-776 1662([range])N
-1046(l[ist])X
-1222([count])X
-1487([\257ags])X
-1 f
-976 1752(Display)N
-1258(the)X
-1389(lines)X
-1573(unambiguously.)X
-2139(Tabs)X
-2328(are)X
-2460(displayed)X
-2801(as)X
-2902(``)X
-7 f
-2956(\303I)X
-1 f
-('',)S
-3160(and)X
-3310(the)X
-3442(end)X
-3592(of)X
-3693(the)X
-3825(line)X
-3979(is)X
-976 1842(marked)N
-1237(with)X
-1399(a)X
-1455(``)X
-7 f
-1509($)X
-1 f
-('')S
-1631(character.)X
-976 2022(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(displayed.)X
-976 2112(Options:)N
-1336(None.)X
-3 f
-776 2292(map[!])N
-1028([lhs)X
-1172(rhs])X
-1 f
-976 2382(De\256ne)N
-1210(or)X
-1297(display)X
-1548(maps)X
-1737(\(for)X
-3 f
-1878(vi)X
-1 f
-1960(only\).)X
-976 2562(If)N
-1050(``)X
-7 f
-1104(lhs)X
-1 f
-('')S
-1322(and)X
-1458(``)X
-7 f
-1512(rhs)X
-1 f
-('')S
-1730(are)X
-1849(not)X
-1971(speci\256ed,)X
-2296(the)X
-2414(current)X
-2662(set)X
-2771(of)X
-2859(command)X
-3196(mode)X
-3395(maps)X
-3585(are)X
-3705(displayed.)X
-976 2652(If)N
-1050(a)X
-1106(``)X
-7 f
-1160(!)X
-1 f
-('')S
-1302(character)X
-1618(is)X
-1691(appended)X
-2019(to)X
-2101(to)X
-2183(the)X
-2301(command,)X
-2657(the)X
-2775(text)X
-2915(input)X
-3099(mode)X
-3297(maps)X
-3486(are)X
-3605(displayed.)X
-976 2832(Otherwise,)N
-1365(when)X
-1578(the)X
-1715(``)X
-7 f
-1769(lhs)X
-1 f
-('')S
-2006(character)X
-2342(sequence)X
-2677(is)X
-2770(entered)X
-3047(in)X
-3 f
-3149(vi)X
-1 f
-3211(,)X
-3271(the)X
-3409(action)X
-3645(is)X
-3738(as)X
-3845(if)X
-3934(the)X
-976 2922(corresponding)N
-1466(``)X
-7 f
-1520(rhs)X
-1 f
-('')S
-1749(had)X
-1896(been)X
-2079(entered.)X
-2387(If)X
-2472(a)X
-2539(``)X
-7 f
-2593(!)X
-1 f
-('')S
-2746(character)X
-3073(is)X
-3157(appended)X
-3496(to)X
-3588(the)X
-3716(command)X
-976 3012(name,)N
-1196(the)X
-1320(mapping)X
-1626(is)X
-1705(effective)X
-2013(during)X
-2249(text)X
-2396(input)X
-2587(mode,)X
-2812(otherwise,)X
-3171(it)X
-3242(is)X
-3322(effective)X
-3631(during)X
-3867(com-)X
-976 3102(mand)N
-1175(mode.)X
-1414(This)X
-1577(allows)X
-1807(``)X
-7 f
-1861(lhs)X
-1 f
-('')S
-2080(to)X
-2163(have)X
-2336(two)X
-2476(different)X
-2773(macro)X
-2994(de\256nitions)X
-3351(at)X
-3429(the)X
-3547(same)X
-3732(time:)X
-3916(one)X
-976 3192(for)N
-1090(command)X
-1426(mode)X
-1624(and)X
-1760(one)X
-1896(for)X
-2010(input)X
-2194(mode.)X
-976 3372(Whitespace)N
-1373(characters)X
-1722(require)X
-1972(escaping)X
-2275(with)X
-2439(a)X
-7 f
-2497(<literal)X
-1 f
-(next>)S
-3086(character)X
-3405(to)X
-3490(be)X
-3589(entered)X
-3849(in)X
-3934(the)X
-7 f
-976 3462(lhs)N
-1 f
-1140(string)X
-1342(in)X
-1424(visual)X
-1635(mode.)X
-976 3642(Normally,)N
-1330(keys)X
-1504(in)X
-1593(the)X
-7 f
-1718(rhs)X
-1 f
-1889(string)X
-2098(are)X
-2224(remapped)X
-2569(\(see)X
-2727(the)X
-3 f
-2853(remap)X
-1 f
-3104(option\),)X
-3383(and)X
-3527(it)X
-3599(is)X
-3680(possible)X
-3970(to)X
-976 3732(create)N
-1207(in\256nite)X
-1471(loops.)X
-1722(However,)X
-2075(keys)X
-2260(which)X
-2494(map)X
-2670(to)X
-2770(themselves)X
-3164(are)X
-3300(not)X
-3439(further)X
-3695(remapped,)X
-976 3822(regardless)N
-1327(of)X
-1419(the)X
-1542(setting)X
-1780(of)X
-1872(the)X
-3 f
-1995(remap)X
-1 f
-2243(option.)X
-2512(For)X
-2648(example,)X
-2966(the)X
-3090(command)X
-3432(``)X
-7 f
-3486(:map)X
-3732(n)X
-3834(nz.)X
-1 f
-('')S
-976 3912(maps)N
-1165(the)X
-1283(``)X
-7 f
-1337(n)X
-1 f
-('')S
-1459(key)X
-1595(to)X
-1677(the)X
-3 f
-1795(n)X
-1 f
-1859(and)X
-3 f
-1995(z)X
-1 f
-2051(commands.)X
-976 4092(To)N
-1085(exit)X
-1225(an)X
-1321(in\256nitely)X
-1629(looping)X
-1893(map,)X
-2071(use)X
-2198(the)X
-2316(terminal)X
-7 f
-2603(<interrupt>)X
-1 f
-3151(character.)X
-976 4272(Line:)N
-1336(Unchanged.)X
-976 4362(Options:)N
-1336(None.)X
-3 f
-776 4542([line])N
-974(ma[rk])X
-1235 0.3125(<character>)AX
-776 4632([line])N
-974(k)X
-1038 0.3125(<character>)AX
-1 f
-976 4722(Mark)N
-1189(the)X
-1326(line)X
-1485(with)X
-1666(the)X
-1803(mark)X
-7 f
-2007(<character>)X
-1 f
-(.)S
-2614(The)X
-2778(expressions)X
-3192(``)X
-7 f
-3246('<character>)X
-1 f
-('')S
-3916(and)X
-976 4812(``)N
-7 f
-1030(`<character>)X
-1 f
-('')S
-1680(can)X
-1812(then)X
-1970(be)X
-2066(used)X
-2233(as)X
-2320(an)X
-2416(address)X
-2677(in)X
-2759(any)X
-2895(command)X
-3231(that)X
-3371(uses)X
-3529(one.)X
-976 4992(Line:)N
-1336(Unchanged.)X
-976 5082(Options:)N
-1336(None.)X
-3 f
-776 5262([range])N
-1046(m[ove])X
-1303(line)X
-1 f
-976 5352(Move)N
-1188(the)X
-1312(speci\256ed)X
-1623(lines)X
-1800(after)X
-1974(the)X
-2098(target)X
-2307(line.)X
-2493(A)X
-2577(target)X
-2786(line)X
-2932(of)X
-3025(0)X
-3091(places)X
-3318(the)X
-3442(lines)X
-3619(at)X
-3703(the)X
-3827(begin-)X
-976 5442(ning)N
-1138(of)X
-1225(the)X
-1343(\256le.)X
-976 5622(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(\256rst)X
-1802(of)X
-1889(the)X
-2007(moved)X
-2245(lines.)X
-976 5712(Options:)N
-1336(None.)X
-
-40 p
-%%Page: 40 39
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-40)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-776 762 0.3250(mk[exrc][!])AN
-1190(\256le)X
-1 f
-976 852(Write)N
-1180(the)X
-1299(abbreviations,)X
-1772(editor)X
-1980(options)X
-2237(and)X
-2375(maps)X
-2566(to)X
-2650(the)X
-2770(speci\256ed)X
-3077(\256le.)X
-3241(Information)X
-3646(is)X
-3721(written)X
-3970(in)X
-976 942(a)N
-1034(form)X
-1212(which)X
-1430(can)X
-1564(later)X
-1729(be)X
-1827(read)X
-1988(back)X
-2162(in)X
-2246(using)X
-2441(the)X
-3 f
-2561(ex)X
-2659(source)X
-1 f
-2904(command.)X
-3282(If)X
-7 f
-3358(file)X
-1 f
-3572(already)X
-3830(exists,)X
-976 1032(the)N
-3 f
-1097(mkexrc)X
-1 f
-1379(command)X
-1718(will)X
-1865(fail.)X
-2035(This)X
-2200(check)X
-2411(can)X
-2546(be)X
-2645(overridden)X
-3016(by)X
-3119(appending)X
-3476(a)X
-3536(``)X
-7 f
-3590(!)X
-1 f
-('')S
-3736(character)X
-976 1122(to)N
-1058(the)X
-1176(command.)X
-976 1302(Line:)N
-1336(Unchanged.)X
-976 1392(Options:)N
-1336(None.)X
-3 f
-776 1572(n[ext][!])N
-1078([\256le)X
-1227(...])X
-1 f
-976 1662(Edit)N
-1142(the)X
-1273(next)X
-1444(\256le)X
-1579(from)X
-1768(the)X
-1899(argument)X
-2235(list.)X
-2405(The)X
-3 f
-2563(next)X
-1 f
-2743(command)X
-3092(will)X
-3249(fail)X
-3389(if)X
-3471(the)X
-3603(\256le)X
-3739(has)X
-3880(been)X
-976 1752(modi\256ed)N
-1287(since)X
-1478(the)X
-1602(last)X
-1739(complete)X
-2059(write.)X
-2290(This)X
-2458(check)X
-2672(can)X
-2810(be)X
-2912(overridden)X
-3286(by)X
-3392(appending)X
-3752(the)X
-3876(``)X
-7 f
-3930(!)X
-1 f
-('')S
-976 1842(character)N
-1294(to)X
-1378(the)X
-1498(command)X
-1836(name.)X
-2072(The)X
-2219(argument)X
-2544(list)X
-2663(can)X
-2797(optionally)X
-3143(be)X
-3241(replaced)X
-3536(by)X
-3639(specifying)X
-3996(a)X
-976 1932(new)N
-1131(one)X
-1268(as)X
-1355(arguments)X
-1709(to)X
-1791(this)X
-1926(command.)X
-2302(In)X
-2389(this)X
-2524(case,)X
-2703(editing)X
-2945(starts)X
-3134(with)X
-3296(the)X
-3414(\256rst)X
-3558(\256le)X
-3680(on)X
-3780(the)X
-3898(new)X
-976 2022(list.)N
-976 2202(Line:)N
-1336(Set)X
-1458(as)X
-1545(described)X
-1873(for)X
-1987(the)X
-3 f
-2105(edit)X
-1 f
-2254(command.)X
-976 2292(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-1856(options)X
-3 f
-2111(autowrite)X
-1 f
-2461(and)X
-3 f
-2597(writeany)X
-1 f
-2900(.)X
-3 f
-776 2472([line])N
-974(o[pen])X
-1212(/pattern/)X
-1530([\257ags])X
-1 f
-976 2562(Enter)N
-1172(open)X
-1350(mode.)X
-1590(Open)X
-1786(mode)X
-1987(is)X
-2063(the)X
-2184(same)X
-2372(as)X
-2462(being)X
-2663(in)X
-3 f
-2748(vi)X
-1 f
-2810(,)X
-2853(but)X
-2978(with)X
-3143(a)X
-3202(one-line)X
-3488(window.)X
-3809(All)X
-3934(the)X
-976 2652(standard)N
-3 f
-1278(vi)X
-1 f
-1370(commands)X
-1747(are)X
-1876(available.)X
-2236(If)X
-2320(a)X
-2386(match)X
-2612(is)X
-2694(found)X
-2910(for)X
-3033(the)X
-3160(optional)X
-3451(RE)X
-3582(argument,)X
-3934(the)X
-976 2742(cursor)N
-1197(is)X
-1270(set)X
-1379(to)X
-1461(the)X
-1579(start)X
-1737(of)X
-1824(the)X
-1942(matching)X
-2260(pattern.)X
-2 f
-976 2922(This)N
-1133(command)X
-1465(is)X
-1538(not)X
-1660(yet)X
-1774(implemented.)X
-1 f
-976 3102(Line:)N
-1336(Unchanged,)X
-1750(unless)X
-1978(the)X
-2104(optional)X
-2394(RE)X
-2524(is)X
-2605(speci\256ed,)X
-2938(in)X
-3028(which)X
-3253(case)X
-3421(it)X
-3494(is)X
-3576(set)X
-3694(to)X
-3785(the)X
-3912(line)X
-1336 3192(where)N
-1553(the)X
-1671(matching)X
-1989(pattern)X
-2232(is)X
-2305(found.)X
-976 3282(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(open)X
-1 f
-2040(option.)X
-3 f
-776 3462(pre[serve])N
-1 f
-976 3552(Save)N
-1161(the)X
-1288(\256le)X
-1419(in)X
-1510(a)X
-1575(form)X
-1760(that)X
-1909(can)X
-2050(later)X
-2222(be)X
-2327(recovered)X
-2674(using)X
-2877(the)X
-3 f
-3005(ex)X
-9 f
-3111(-)X
-3113(-)X
-3 f
-3157(r)X
-1 f
-3223(option.)X
-3497(When)X
-3719(the)X
-3847(\256le)X
-3979(is)X
-976 3642(preserved,)N
-1329(an)X
-1425(email)X
-1623(message)X
-1915(is)X
-1988(sent)X
-2137(to)X
-2219(the)X
-2337(user.)X
-976 3822(Line:)N
-1336(Unchanged.)X
-976 3912(Options:)N
-1336(None.)X
-3 f
-776 4092(prev[ious][!])N
-1 f
-976 4182(Edit)N
-1136(the)X
-1261(previous)X
-1564(\256le)X
-1693(from)X
-1876(the)X
-2001(argument)X
-2331(list.)X
-2495(The)X
-3 f
-2647(previous)X
-1 f
-2967(command)X
-3310(will)X
-3461(fail)X
-3595(if)X
-3671(the)X
-3796(\256le)X
-3925(has)X
-976 4272(been)N
-1155(modi\256ed)X
-1466(since)X
-1658(the)X
-1783(last)X
-1921(complete)X
-2241(write.)X
-2472(This)X
-2640(check)X
-2854(can)X
-2992(be)X
-3094(overridden)X
-3468(by)X
-3574(appending)X
-3934(the)X
-976 4362(``)N
-7 f
-1030(!)X
-1 f
-('')S
-1172(character)X
-1488(to)X
-1570(the)X
-1688(command)X
-2024(name.)X
-976 4542(Line:)N
-1336(Set)X
-1458(as)X
-1545(described)X
-1873(for)X
-1987(the)X
-3 f
-2105(edit)X
-1 f
-2254(command.)X
-976 4632(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-1856(options)X
-3 f
-2111(autowrite)X
-1 f
-2461(and)X
-3 f
-2597(writeany)X
-1 f
-2900(.)X
-2960(None.)X
-3 f
-776 4812([range])N
-1046(p[rint])X
-1293([count])X
-1558([\257ags])X
-1 f
-976 4902(Display)N
-1245(the)X
-1363(speci\256ed)X
-1668(lines.)X
-976 5082(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(displayed.)X
-976 5172(Options:)N
-1336(None.)X
-3 f
-776 5352([line])N
-974(pu[t])X
-1163([buffer])X
-1 f
-976 5442(Append)N
-1250(buffer)X
-1467(contents)X
-1755(to)X
-1838(the)X
-1957(current)X
-2206(line.)X
-2387(If)X
-2462(a)X
-2519(buffer)X
-2737(is)X
-2811(speci\256ed,)X
-3137(its)X
-3233(contents)X
-3521(are)X
-3641(appended)X
-3970(to)X
-976 5532(the)N
-1094(line,)X
-1254(otherwise,)X
-1606(the)X
-1724(contents)X
-2011(of)X
-2098(the)X
-2216(unnamed)X
-2530(buffer)X
-2747(are)X
-2866(used.)X
-976 5712(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(line)X
-1798(after)X
-1966(the)X
-2084(current)X
-2332(line.)X
-
-41 p
-%%Page: 41 40
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Ex)X
-1377(Commands\))X
-3658(USD:13-41)X
-1 f
-976 762(Options:)N
-1336(None.)X
-3 f
-776 942(q[uit][!])N
-1 f
-976 1032(End)N
-1133(the)X
-1259(editing)X
-1509(session.)X
-1808(If)X
-1890(the)X
-2016(\256le)X
-2146(has)X
-2281(been)X
-2461(modi\256ed)X
-2773(since)X
-2966(the)X
-3092(last)X
-3231(complete)X
-3554(write,)X
-3768(the)X
-3 f
-3895(quit)X
-1 f
-976 1122(command)N
-1314(will)X
-1460(fail.)X
-1629(This)X
-1793(check)X
-2003(may)X
-2163(be)X
-2261(overridden)X
-2631(by)X
-2733(appending)X
-3089(a)X
-3147(``)X
-7 f
-3201(!)X
-1 f
-('')S
-3345(character)X
-3663(to)X
-3747(the)X
-3867(com-)X
-976 1212(mand.)N
-976 1392(If)N
-1053(there)X
-1237(are)X
-1359(more)X
-1547(\256les)X
-1703(to)X
-1788(edit,)X
-1951(the)X
-3 f
-2072(quit)X
-1 f
-2232(command)X
-2571(will)X
-2718(fail.)X
-2888(Appending)X
-3268(a)X
-3328(``)X
-7 f
-3382(!)X
-1 f
-('')S
-3528(character)X
-3848(to)X
-3934(the)X
-976 1482(command)N
-1315(name)X
-1511(or)X
-1600(entering)X
-1885(two)X
-3 f
-2027(quit)X
-1 f
-2186(commands)X
-2555(\(i.e.)X
-3 f
-2722(wq)X
-1 f
-2824(,)X
-3 f
-2866(quit)X
-1 f
-3003(,)X
-3 f
-3045(xit)X
-1 f
-3156(or)X
-3 f
-3245(ZZ)X
-1 f
-3351(\))X
-3400(in)X
-3484(a)X
-3542(row\))X
-3716(will)X
-3862(over-)X
-976 1572(ride)N
-1121(this)X
-1256(check)X
-1464(and)X
-1600(the)X
-1718(editor)X
-1925(will)X
-2069(exit.)X
-976 1752(Line:)N
-1336(Unchanged.)X
-976 1842(Options:)N
-1336(None.)X
-3 f
-776 2022([line])N
-974(r[ead][!])X
-1285([\256le])X
-1 f
-976 2112(Read)N
-1171(a)X
-1237(\256le.)X
-1409(A)X
-1497(copy)X
-1683(of)X
-1780(the)X
-1908(speci\256ed)X
-2223(\256le)X
-2355(is)X
-2438(appended)X
-2776(to)X
-2868(the)X
-2996(line.)X
-3186(If)X
-7 f
-3270(line)X
-1 f
-3492(is)X
-3575(0,)X
-3665(the)X
-3793(copy)X
-3979(is)X
-976 2202(inserted)N
-1252(at)X
-1332(the)X
-1452(beginning)X
-1794(of)X
-1883(the)X
-2003(\256le.)X
-2167(If)X
-2243(no)X
-2345(\256le)X
-2469(is)X
-2544(speci\256ed,)X
-2871(the)X
-2991(current)X
-3241(\256le)X
-3365(is)X
-3440(read;)X
-3623(if)X
-3694(there)X
-3877(is)X
-3952(no)X
-976 2292(current)N
-1233(\256le,)X
-1384(then)X
-7 f
-1552(file)X
-1 f
-1774(becomes)X
-2085(the)X
-2213(current)X
-2471(\256le.)X
-2643(If)X
-2727(there)X
-2918(is)X
-3001(no)X
-3111(current)X
-3369(\256le)X
-3501(and)X
-3647(no)X
-7 f
-3757(file)X
-1 f
-3979(is)X
-976 2382(speci\256ed,)N
-1301(then)X
-1459(the)X
-3 f
-1577(read)X
-1 f
-1753(command)X
-2089(will)X
-2233(fail.)X
-976 2562(If)N
-7 f
-1054(file)X
-1 f
-1270(is)X
-1347(preceded)X
-1662(by)X
-1766(a)X
-1826(``)X
-7 f
-1880(!)X
-1 f
-('')S
-2026(character,)X
-7 f
-2366(file)X
-1 f
-2582(is)X
-2659(treated)X
-2902(as)X
-2993(if)X
-3067(it)X
-3136(were)X
-3318(a)X
-3379(shell)X
-3555(command,)X
-3916(and)X
-976 2652(passed)N
-1213(to)X
-1298(the)X
-1419(program)X
-1713(named)X
-1949(by)X
-2051(the)X
-7 f
-2171(SHELL)X
-1 f
-2433(environment)X
-2860(variable.)X
-3181(The)X
-3328(standard)X
-3622(and)X
-3760(standard)X
-976 2742(error)N
-1155(outputs)X
-1412(of)X
-1501(that)X
-1643(command)X
-1981(are)X
-2102(read)X
-2263(into)X
-2409(the)X
-2529(\256le)X
-2654(after)X
-2825(the)X
-2946(speci\256ed)X
-3254(line.)X
-3437(The)X
-3585(special)X
-3831(mean-)X
-976 2832(ing)N
-1098(of)X
-1185(the)X
-1303(``)X
-7 f
-1357(!)X
-1 f
-('')S
-1499(character)X
-1815(can)X
-1947(be)X
-2043(overridden)X
-2411(by)X
-2511(escaping)X
-2812(it)X
-2876(with)X
-3038(a)X
-3094(backslash)X
-3426(\(``)X
-7 f
-3507(\\)X
-1 f
-(''\))S
-3656(character.)X
-976 3012(Line:)N
-1336(When)X
-1550(executed)X
-1858(from)X
-3 f
-2036(ex)X
-1 f
-2112(,)X
-2154(the)X
-2274(current)X
-2524(line)X
-2666(is)X
-2741(set)X
-2852(to)X
-2936(the)X
-3056(last)X
-3189(line)X
-3331(read.)X
-3532(When)X
-3746(executed)X
-1336 3102(from)N
-3 f
-1512(vi)X
-1 f
-1574(,)X
-1614(the)X
-1732(current)X
-1980(line)X
-2120(is)X
-2193(set)X
-2302(to)X
-2384(the)X
-2502(\256rst)X
-2646(line)X
-2786(read.)X
-976 3192(Options:)N
-1336(None.)X
-3 f
-776 3372 0.4063(rec[over])AN
-1110(\256le)X
-1 f
-976 3462(Recover)N
-7 f
-1273(file)X
-1 f
-1494(if)X
-1572(it)X
-1645(was)X
-1799(previously)X
-2166(saved.)X
-2418(If)X
-2501(no)X
-2610(saved)X
-2822(\256le)X
-2953(by)X
-3062(that)X
-3211(name)X
-3414(exists,)X
-3645(the)X
-3 f
-3772(recover)X
-1 f
-976 3552(command)N
-1312(behaves)X
-1591(similarly)X
-1895(to)X
-1977(the)X
-3 f
-2095(edit)X
-1 f
-2244(command.)X
-976 3732(Line:)N
-1336(Set)X
-1458(as)X
-1545(described)X
-1873(for)X
-1987(the)X
-3 f
-2105(edit)X
-1 f
-2254(command.)X
-976 3822(Options:)N
-1336(None.)X
-3 f
-776 4002(res[ize])N
-1047([+|-]size)X
-976 4092(Vi)N
-1 f
-1081(mode)X
-1284(only.)X
-1492(Grow)X
-1701(or)X
-1794(shrink)X
-2020(the)X
-2144(current)X
-2398(screen.)X
-2670(If)X
-7 f
-2750(size)X
-1 f
-2968(is)X
-3047(a)X
-3109(positive,)X
-3408(signed)X
-3643(number,)X
-3934(the)X
-976 4182(current)N
-1227(screen)X
-1456(is)X
-1532(grown)X
-1760(by)X
-1863(that)X
-2006(many)X
-2207(lines.)X
-2421(If)X
-7 f
-2498(size)X
-1 f
-2713(is)X
-2789(a)X
-2848(negative,)X
-3163(signed)X
-3395(number,)X
-3683(the)X
-3804(current)X
-976 4272(screen)N
-1212(is)X
-1295(shrunk)X
-1543(by)X
-1653(that)X
-1803(many)X
-2011(lines.)X
-2232(If)X
-7 f
-2316(size)X
-1 f
-2538(is)X
-2621(not)X
-2753(signed,)X
-3012(the)X
-3141(current)X
-3400(screen)X
-3637(is)X
-3721(set)X
-3841(to)X
-3934(the)X
-976 4362(speci\256ed)N
-7 f
-1281(size)X
-1 f
-(.)S
-1533(Applicable)X
-1905(only)X
-2067(to)X
-2149(split)X
-2306(screens.)X
-976 4542(Line:)N
-1336(Unchanged.)X
-976 4632(Options:)N
-1336(None.)X
-3 f
-776 4812(rew[ind][!])N
-1 f
-976 4902(Rewind)N
-1251(the)X
-1375(argument)X
-1704(list.)X
-1867(If)X
-1947(the)X
-2071(current)X
-2325(\256le)X
-2453(has)X
-2586(been)X
-2764(modi\256ed)X
-3074(since)X
-3265(the)X
-3389(last)X
-3526(complete)X
-3847(write,)X
-976 4992(the)N
-3 f
-1097(rewind)X
-1 f
-1360(command)X
-1699(will)X
-1846(fail.)X
-2016(This)X
-2180(check)X
-2390(may)X
-2550(be)X
-2648(overridden)X
-3018(by)X
-3120(appending)X
-3476(the)X
-3596(``)X
-7 f
-3650(!)X
-1 f
-('')S
-3794(charac-)X
-976 5082(ter)N
-1081(to)X
-1163(the)X
-1281(command.)X
-976 5262(Otherwise,)N
-1346(the)X
-1464(current)X
-1712(\256le)X
-1834(is)X
-1907(set)X
-2016(to)X
-2098(the)X
-2216(\256rst)X
-2360(\256le)X
-2482(in)X
-2564(the)X
-2682(argument)X
-3005(list.)X
-976 5442(Line:)N
-1336(Set)X
-1458(as)X
-1545(described)X
-1873(for)X
-1987(the)X
-3 f
-2105(edit)X
-1 f
-2254(command.)X
-976 5532(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2206(and)X
-3 f
-2342(writeany)X
-1 f
-2665(options.)X
-3 f
-776 5712(se[t])N
-944([option[=[value]])X
-1544(...])X
-1651([nooption)X
-1999(...])X
-2106([option?)X
-2410(...])X
-2517([all])X
-1 f
-976 5802(Display)N
-1252(or)X
-1346(set)X
-1462(editor)X
-1676(options.)X
-1979(When)X
-2199(no)X
-2307(arguments)X
-2669(are)X
-2796(speci\256ed,)X
-3129(the)X
-3255(editor)X
-3470(option)X
-3 f
-3702(term)X
-1 f
-3868(,)X
-3916(and)X
-
-42 p
-%%Page: 42 41
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-42)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-1 f
-976 762(any)N
-1115(editor)X
-1325(options)X
-1583(whose)X
-1811(values)X
-2039(have)X
-2214(been)X
-2389(changed)X
-2679(from)X
-2857(the)X
-2977(default)X
-3222(settings)X
-3488(are)X
-3609(displayed.)X
-3978(If)X
-976 852(the)N
-1094(argument)X
-7 f
-1417(all)X
-1 f
-1581(is)X
-1654(speci\256ed,)X
-1979(the)X
-2097(values)X
-2322(of)X
-2409(all)X
-2509(of)X
-2596(editor)X
-2803(options)X
-3058(are)X
-3177(displayed.)X
-976 1032(Specifying)N
-1353(an)X
-1459(option)X
-1693(name)X
-1897(followed)X
-2212(by)X
-2322(the)X
-2450(character)X
-2776(``)X
-7 f
-2830(?)X
-1 f
-('')S
-2982(causes)X
-3222(the)X
-3350(current)X
-3609(value)X
-3814(of)X
-3912(that)X
-976 1122(option)N
-1203(to)X
-1288(be)X
-1387(displayed.)X
-1757(The)X
-1905(``)X
-7 f
-1959(?)X
-1 f
-('')S
-2104(can)X
-2239(be)X
-2338(separated)X
-2665(from)X
-2843(the)X
-2963(option)X
-3189(name)X
-3385(by)X
-3487(whitespace)X
-3866(char-)X
-976 1212(acters.)N
-1225(The)X
-1371(``)X
-7 f
-1425(?)X
-1 f
-('')S
-1568(is)X
-1642(necessary)X
-1976(only)X
-2139(for)X
-2254(Boolean)X
-2543(valued)X
-2779(options.)X
-3076(Boolean)X
-3365(options)X
-3622(can)X
-3756(be)X
-3854(given)X
-976 1302(values)N
-1209(by)X
-1317(the)X
-1443(form)X
-1627(``)X
-7 f
-1681(set)X
-1881(option)X
-1 f
-('')S
-2251(to)X
-2341(turn)X
-2498(them)X
-2686(on,)X
-2814(or)X
-2909(``)X
-7 f
-2963(set)X
-3162(nooption)X
-1 f
-('')S
-3627(to)X
-3716(turn)X
-3872(them)X
-976 1392(off.)N
-1131(String)X
-1347(and)X
-1484(numeric)X
-1768(options)X
-2024(can)X
-2158(be)X
-2256(assigned)X
-2554(by)X
-2656(the)X
-2776(form)X
-2954(``)X
-7 f
-3008(set)X
-3202(option=value)X
-1 f
-(''.)S
-3894(Any)X
-976 1482(whitespace)N
-1359(characters)X
-1712(in)X
-1800(strings)X
-2039(can)X
-2176(be)X
-2277(included)X
-2578(literally)X
-2852(by)X
-2957(preceding)X
-3299(each)X
-3472(with)X
-3639(a)X
-3700(backslash.)X
-976 1572(More)N
-1180(than)X
-1349(one)X
-1496(option)X
-1731(can)X
-1874(be)X
-1981(set)X
-2101(or)X
-2199(listed)X
-2403(by)X
-2514(a)X
-2581(single)X
-2803(set)X
-2923(command,)X
-3290(by)X
-3401(specifying)X
-3766(multiple)X
-976 1662(arguments,)N
-1350(each)X
-1518(separated)X
-1842(from)X
-2018(the)X
-2136(next)X
-2294(by)X
-2394(whitespace)X
-2771(characters.)X
-976 1842(Line:)N
-1336(Unchanged.)X
-976 1932(Options:)N
-1336(None.)X
-3 f
-776 2112(sh[ell])N
-1 f
-976 2202(Run)N
-1131(a)X
-1189(shell)X
-1362(program.)X
-1696(The)X
-1843(program)X
-2137(named)X
-2373(by)X
-2475(the)X
-3 f
-2596(shell)X
-1 f
-2774(option)X
-3001(is)X
-3077(run)X
-3207(with)X
-3372(a)X
-3 f
-9 f
-3431(-)X
-3433(-)X
-3 f
-3477(i)X
-1 f
-3522(\(for)X
-3666(interactive\))X
-976 2292(\257ag.)N
-1156(Editing)X
-1411(is)X
-1484(resumed)X
-1776(when)X
-1970(that)X
-2110(program)X
-2402(exits.)X
-976 2472(Line:)N
-1336(Unchanged.)X
-976 2562(Options:)N
-1336(None.)X
-3 f
-776 2742(so[urce])N
-1073(\256le)X
-1 f
-976 2832(Read)N
-1161(and)X
-1297(execute)X
-3 f
-1563(ex)X
-1 f
-1659(commands)X
-2026(from)X
-2202(a)X
-2258(\256le.)X
-3 f
-2420(Source)X
-1 f
-2676(commands)X
-3043(may)X
-3201(be)X
-3297(nested.)X
-976 3012(Line:)N
-1336(Unchanged.)X
-976 3102(Options:)N
-1336(None.)X
-3 f
-776 3282(sp[lit])N
-996([\256le)X
-1145(...])X
-976 3372(Vi)N
-1 f
-1078(mode)X
-1278(only.)X
-1482(Split)X
-1655(the)X
-1776(screen.)X
-2045(The)X
-2193(current)X
-2444(screen)X
-2673(is)X
-2749(split)X
-2909(into)X
-3056(two)X
-3199(screens,)X
-3479(of)X
-3569(approximately)X
-976 3462(equal)N
-1173(size.)X
-1361(If)X
-1438(the)X
-1559(cursor)X
-1783(is)X
-1859(in)X
-1944(the)X
-2065(lower)X
-2271(half)X
-2419(of)X
-2509(the)X
-2630(screen,)X
-2879(the)X
-3000(screen)X
-3229(will)X
-3376(split)X
-3536(up,)X
-3658(i.e.)X
-3778(the)X
-3898(new)X
-976 3552(screen)N
-1213(will)X
-1368(be)X
-1475(above)X
-1699(the)X
-1829(old)X
-1963(one.)X
-2151(If)X
-2237(the)X
-2367(cursor)X
-2600(is)X
-2685(in)X
-2779(the)X
-2909(upper)X
-3124(half)X
-3281(of)X
-3380(the)X
-3510(screen,)X
-3768(the)X
-3898(new)X
-976 3642(screen)N
-1202(will)X
-1346(be)X
-1442(below)X
-1658(the)X
-1776(old)X
-1898(one.)X
-976 3822(If)N
-7 f
-1052(file)X
-1 f
-1267(is)X
-1343(speci\256ed,)X
-1671(the)X
-1792(new)X
-1949(screen)X
-2178(is)X
-2254(editing)X
-2499(that)X
-2642(\256le,)X
-2787(otherwise,)X
-3142(both)X
-3307(screens)X
-3567(are)X
-3689(editing)X
-3934(the)X
-976 3912(same)N
-1165(\256le,)X
-1310(and)X
-1449(changes)X
-1731(in)X
-1816(each)X
-1987(will)X
-2134(be)X
-2233(be)X
-2332(re\257ected)X
-2632(in)X
-2717(the)X
-2838(other.)X
-3066(The)X
-3214(argument)X
-3540(list)X
-3660(for)X
-3777(the)X
-3898(new)X
-976 4002(screen)N
-1204(consists)X
-1479(of)X
-1568(the)X
-1688(list)X
-1807(of)X
-1896(\256les)X
-2051(speci\256ed)X
-2358(as)X
-2447(arguments)X
-2803(to)X
-2888(this)X
-3026(command,)X
-3385(or,)X
-3495(the)X
-3616(current)X
-3867(path-)X
-976 4092(name)N
-1170(if)X
-1239(no)X
-1339(\256les)X
-1492(are)X
-1611(speci\256ed.)X
-976 4272(Line:)N
-1336(If)X
-7 f
-1410(file)X
-1 f
-1622(is)X
-1695(speci\256ed,)X
-2020(set)X
-2129(as)X
-2216(for)X
-2330(the)X
-3 f
-2448(edit)X
-1 f
-2597(command,)X
-2953(otherwise)X
-3285(unchanged.)X
-976 4362(Options:)N
-1336(None.)X
-3 f
-776 4542([range])N
-1046(s[ubstitute])X
-1453([/pattern/replace/])X
-2097([options])X
-2419([count])X
-2684([\257ags])X
-776 4632([range])N
-1046(&)X
-1133([options])X
-1455([count])X
-1720([\257ags])X
-776 4722([range])N
-1046(\304)X
-1093([options])X
-1415([count])X
-1680([\257ags])X
-1 f
-976 4812(Make)N
-1185(substitutions.)X
-1654(Replace)X
-1939(the)X
-2063(\256rst)X
-2214(instance)X
-2504(of)X
-7 f
-2598(pattern)X
-1 f
-2961(with)X
-3130(the)X
-3255(string)X
-7 f
-3464(replace)X
-1 f
-3827(on)X
-3934(the)X
-976 4902(speci\256ed)N
-1343(line\(s\).)X
-1670(If)X
-1806(the)X
-1986(``)X
-7 f
-2040(/pattern/repl/)X
-1 f
-('')S
-2847(argument)X
-3231(is)X
-3365(not)X
-3548(speci\256ed,)X
-3934(the)X
-976 4992(``)N
-7 f
-1030(/pattern/repl/)X
-1 f
-('')S
-1776(from)X
-1952(the)X
-2070(previous)X
-3 f
-2366(substitute)X
-1 f
-2719(command)X
-3055(is)X
-3128(used.)X
-976 5172(If)N
-7 f
-1054(options)X
-1 f
-1414(includes)X
-1705(the)X
-1827(letter)X
-2017(``)X
-7 f
-2071(c)X
-1 f
-('')S
-2198(\(con\256rm\),)X
-2546(you)X
-2691(will)X
-2840(be)X
-2941(prompted)X
-3273(for)X
-3392(con\256rmation)X
-3826(before)X
-976 5262(each)N
-1152(replacement)X
-1573(is)X
-1654(done.)X
-1878(An)X
-2004(af\256rmative)X
-2384(response)X
-2693(\(in)X
-2810(English,)X
-3101(a)X
-3164(``)X
-7 f
-3218(y)X
-1 f
-('')S
-3347 0.3750(character\))AX
-3697(causes)X
-3934(the)X
-976 5352(replacement)N
-1393(to)X
-1479(be)X
-1579(made.)X
-1817(A)X
-1899(quit)X
-2047(response)X
-2352(\(in)X
-2465(English,)X
-2753(a)X
-2813(``)X
-7 f
-2867(q)X
-1 f
-('')S
-2993 0.3750(character\))AX
-3341(causes)X
-3576(the)X
-3 f
-3699(substitute)X
-1 f
-976 5442(command)N
-1320(to)X
-1410(be)X
-1514(terminated.)X
-1925(Any)X
-2091(other)X
-2284(response)X
-2592(causes)X
-2829(the)X
-2954(replacement)X
-3374(not)X
-3503(to)X
-3592(be)X
-3695(made,)X
-3916(and)X
-976 5532(the)N
-3 f
-1094(substitute)X
-1 f
-1447(command)X
-1783(continues.)X
-2150(If)X
-7 f
-2224(options)X
-1 f
-2580(includes)X
-2867(the)X
-2985(letter)X
-3170(``)X
-7 f
-3224(g)X
-1 f
-('')S
-3346(\(global\),)X
-3641(all)X
-3742(nonover-)X
-976 5622(lapping)N
-1236(instances)X
-1550(of)X
-7 f
-1637(pattern)X
-1 f
-1993(in)X
-2075(the)X
-2193(line)X
-2333(are)X
-2452(replaced.)X
-976 5802(The)N
-3 f
-1122(&)X
-1 f
-1210(version)X
-1467(of)X
-1555(the)X
-1674(command)X
-2011(is)X
-2085(the)X
-2204(same)X
-2390(as)X
-2479(not)X
-2603(specifying)X
-2959(a)X
-3017(pattern)X
-3262(or)X
-3351(replacement)X
-3766(string)X
-3970(to)X
-
-43 p
-%%Page: 43 42
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Ex)X
-1377(Commands\))X
-3658(USD:13-43)X
-1 f
-976 762(the)N
-3 f
-1098(substitute)X
-1 f
-1455(command,)X
-1815(and)X
-1955(the)X
-2077(``)X
-7 f
-2131(&)X
-1 f
-('')S
-2257(is)X
-2333(replaced)X
-2629(by)X
-2732(the)X
-2853(pattern)X
-3099(and)X
-3238(replacement)X
-3654(information)X
-976 852(from)N
-1152(the)X
-1270(previous)X
-1566(substitute)X
-1892(command.)X
-976 1032(The)N
-3 f
-1121(\304)X
-1 f
-1168(version)X
-1424(of)X
-1511(the)X
-1629(command)X
-1966(is)X
-2040(the)X
-2159(same)X
-2345(as)X
-3 f
-2433(&)X
-1 f
-2521(and)X
-3 f
-2658(s)X
-1 f
-2689(,)X
-2730(except)X
-2961(that)X
-3102(the)X
-3221(search)X
-3448(pattern)X
-3692(used)X
-3860(is)X
-3934(the)X
-976 1122(last)N
-1107(RE)X
-1229(used)X
-1396(in)X
-2 f
-1478(any)X
-1 f
-1614(command,)X
-1970(not)X
-2092(necessarily)X
-2469(the)X
-2587(one)X
-2723(used)X
-2890(in)X
-2972(the)X
-3090(last)X
-3 f
-3221(substitute)X
-1 f
-3574(command.)X
-976 1302(For)N
-1107(example,)X
-1419(in)X
-1501(the)X
-1619(sequence)X
-7 f
-1296 1425(s/red/blue/)N
-1296 1515(/green)N
-1296 1605(\304)N
-1 f
-976 1728(the)N
-1094(``)X
-7 f
-1148(\304)X
-1 f
-('')S
-1270(is)X
-1343(equivalent)X
-1697(to)X
-1779(``)X
-7 f
-1833(s/green/blue/)X
-1 f
-(''.)S
-976 1908(The)N
-3 f
-1126(substitute)X
-1 f
-1484(command)X
-1825(may)X
-1988(be)X
-2089(interrupted,)X
-2486(using)X
-2685(the)X
-2809(terminal)X
-3102(interrupt)X
-3404(character.)X
-3766(All)X
-3894(sub-)X
-976 1998(stitutions)N
-1288(completed)X
-1642(before)X
-1868(the)X
-1986(interrupt)X
-2282(are)X
-2401(retained.)X
-976 2178(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(upon)X
-2109(which)X
-2325(a)X
-2381(substitution)X
-2773(was)X
-2918(made.)X
-976 2268(Options:)N
-1336(None.)X
-3 f
-776 2448(su[spend][!])N
-776 2538(st[op][!])N
-776 2628(<control-Z>)N
-1 f
-976 2718(Suspend)N
-1285(the)X
-1422(edit)X
-1581(session.)X
-1891(Appending)X
-2286(a)X
-2361(``)X
-7 f
-2415(!)X
-1 f
-('')S
-2576(character)X
-2911(to)X
-3012(these)X
-3216(commands)X
-3602(turns)X
-3801(off)X
-3934(the)X
-3 f
-976 2808(autowrite)N
-1 f
-1326(option)X
-1550(for)X
-1664(the)X
-1782(command.)X
-976 2988(Line:)N
-1336(Unchanged.)X
-976 3078(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2206(option.)X
-3 f
-776 3258(ta[g][!])N
-1038(tagstring)X
-1 f
-976 3348(Edit)N
-1133(the)X
-1255(\256le)X
-1381(containing)X
-1743(the)X
-1865(speci\256ed)X
-2174(tag.)X
-2337(Search)X
-2581(for)X
-2700(the)X
-2823(tagstring,)X
-3148(which)X
-3369(can)X
-3506(be)X
-3607(in)X
-3694(a)X
-3755(different)X
-976 3438(\256le.)N
-1149(If)X
-1234(the)X
-1363(tag)X
-1492(is)X
-1576(in)X
-1669(a)X
-1736(different)X
-2044(\256le,)X
-2197(then)X
-2366(the)X
-2495(new)X
-2660(\256le)X
-2792(is)X
-2875(edited.)X
-3141(If)X
-3225(the)X
-3353(current)X
-3611(\256le)X
-3743(has)X
-3880(been)X
-976 3528(modi\256ed)N
-1283(since)X
-1471(the)X
-1592(last)X
-1726(complete)X
-2043(write,)X
-2251(the)X
-3 f
-2372(tag)X
-1 f
-2502(command)X
-2841(will)X
-2988(fail.)X
-3159(This)X
-3325(check)X
-3537(can)X
-3673(be)X
-3773(overrid-)X
-976 3618(den)N
-1112(by)X
-1212(appending)X
-1566(the)X
-1684(``)X
-7 f
-1738(!)X
-1 f
-('')S
-1880(character)X
-2196(to)X
-2278(the)X
-2396(command)X
-2732(name.)X
-976 3798(The)N
-3 f
-1128(tag)X
-1 f
-1262(command)X
-1605(searches)X
-1905(for)X
-7 f
-2026(tagstring)X
-1 f
-2485(in)X
-2574(the)X
-2699(tags)X
-2855(\256le\(s\))X
-3070(speci\256ed)X
-3383(by)X
-3491(the)X
-3617(option.)X
-3889(\(See)X
-2 f
-976 3888(ctags)N
-1 f
-1145(\(1\))X
-1259(for)X
-1373(more)X
-1558(information)X
-1956(on)X
-2056(tags)X
-2205(\256les.\))X
-976 4068(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(line)X
-1798(indicated)X
-2112(by)X
-2212(the)X
-2330(tag.)X
-976 4158(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2186(,)X
-3 f
-2226(taglength)X
-1 f
-(,)S
-3 f
-2586(tags)X
-1 f
-2744(and)X
-3 f
-2880(writeany)X
-1 f
-3203(options.)X
-3 f
-776 4338(tagp[op][!])N
-1166([\256le)X
-1315(|)X
-1353(number])X
-1 f
-976 4428(Pop)N
-1122(to)X
-1206(the)X
-1326(speci\256ed)X
-1633(tag)X
-1753(in)X
-1837(the)X
-1957(tags)X
-2108(stack.)X
-2335(If)X
-2411(neither)X
-7 f
-2656(file)X
-1 f
-2871(or)X
-7 f
-2961(number)X
-1 f
-3272(is)X
-3348(speci\256ed,)X
-3676(the)X
-3 f
-3797(tagpop)X
-1 f
-976 4518(command)N
-1313(pops)X
-1485(to)X
-1568(the)X
-1686(most)X
-1861(recent)X
-2078(entry)X
-2263(on)X
-2363(the)X
-2481(tags)X
-2630(stack.)X
-2855(If)X
-7 f
-2929(file)X
-1 f
-3141(or)X
-7 f
-3228(number)X
-1 f
-3536(is)X
-3609(speci\256ed,)X
-3934(the)X
-3 f
-976 4608(tagpop)N
-1 f
-1242(command)X
-1589(pops)X
-1771(to)X
-1864(the)X
-1993(most)X
-2179(recent)X
-2407(entry)X
-2603(in)X
-2696(the)X
-2825(tags)X
-2985(stack)X
-3181(for)X
-3306(that)X
-3458(\256le,)X
-3612(or)X
-3711(numbered)X
-976 4698(entry)N
-1165(in)X
-1251(the)X
-1373(tags)X
-1526(stack,)X
-1735(respectively.)X
-2186(\(See)X
-2352(the)X
-3 f
-2473(display)X
-1 f
-2739(command)X
-3078(for)X
-3195(information)X
-3596(on)X
-3699(displaying)X
-976 4788(the)N
-1094(tags)X
-1243(stack.\))X
-976 4968(If)N
-1051(the)X
-1170(\256le)X
-1293(has)X
-1421(been)X
-1594(modi\256ed)X
-1899(since)X
-2085(the)X
-2204(last)X
-2337(complete)X
-2653(write,)X
-2860(the)X
-3 f
-2980(tagpop)X
-1 f
-3237(command)X
-3575(will)X
-3721(fail.)X
-3890(This)X
-976 5058(check)N
-1184(may)X
-1342(be)X
-1438(overridden)X
-1806(by)X
-1906(appending)X
-2260(a)X
-2316(``)X
-7 f
-2370(!)X
-1 f
-('')S
-2512(character)X
-2828(to)X
-2910(the)X
-3028(command)X
-3364(name.)X
-976 5238(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(line)X
-1798(indicated)X
-2112(by)X
-2212(the)X
-2330(tag.)X
-976 5328(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2186(,)X
-2226(and)X
-3 f
-2362(writeany)X
-1 f
-2685(options.)X
-3 f
-776 5508(tagt[op][!])N
-1 f
-976 5598(Pop)N
-1120(to)X
-1202(the)X
-1320(least)X
-1487(recent)X
-1704(tag)X
-1822(on)X
-1922(the)X
-2040(tags)X
-2189(stack,)X
-2394(clearing)X
-2673(the)X
-2791(tags)X
-2940(stack.)X
-976 5778(If)N
-1051(the)X
-1170(\256le)X
-1293(has)X
-1421(been)X
-1594(modi\256ed)X
-1899(since)X
-2085(the)X
-2204(last)X
-2337(complete)X
-2653(write,)X
-2860(the)X
-3 f
-2980(tagpop)X
-1 f
-3237(command)X
-3575(will)X
-3721(fail.)X
-3890(This)X
-
-44 p
-%%Page: 44 43
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-44)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-1 f
-976 762(check)N
-1184(may)X
-1342(be)X
-1438(overridden)X
-1806(by)X
-1906(appending)X
-2260(a)X
-2316(``)X
-7 f
-2370(!)X
-1 f
-('')S
-2512(character)X
-2828(to)X
-2910(the)X
-3028(command)X
-3364(name.)X
-976 942(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(line)X
-1798(indicated)X
-2112(by)X
-2212(the)X
-2330(tag.)X
-976 1032(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(autowrite)X
-1 f
-2186(,)X
-2226(and)X
-3 f
-2362(writeany)X
-1 f
-2685(options.)X
-3 f
-776 1212(una[bbrev])N
-1178(lhs)X
-1 f
-976 1302(Delete)N
-1206(an)X
-1302(abbreviation.)X
-1763(Delete)X
-7 f
-1993(lhs)X
-1 f
-2157(from)X
-2333(the)X
-2451(current)X
-2699(list)X
-2816(of)X
-2903(abbreviations.)X
-976 1482(Line:)N
-1336(Unchanged.)X
-976 1572(Options:)N
-1336(None.)X
-3 f
-776 1752(u[ndo])N
-1 f
-976 1842(Undo)N
-1177(the)X
-1298(last)X
-1432(change)X
-1683(made)X
-1880(to)X
-1965(the)X
-2086(\256le.)X
-2251(Changes)X
-2550(made)X
-2747(by)X
-3 f
-2850(global)X
-1 f
-3058(,)X
-3 f
-3101(v)X
-1 f
-(,)S
-3 f
-3184(visual)X
-1 f
-3406(and)X
-3545(map)X
-3706(sequences)X
-976 1932(are)N
-1103(considered)X
-1479(a)X
-1543(single)X
-1762(command.)X
-2146(If)X
-2228(repeated,)X
-2549(the)X
-3 f
-2675(u)X
-1 f
-2747(command)X
-3090(alternates)X
-3425(between)X
-3720(these)X
-3912(two)X
-976 2022(states,)N
-1194(and)X
-1330(is)X
-1403(its)X
-1498(own)X
-1656(inverse.)X
-976 2202(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(modi\256ed)X
-2233(by)X
-2333(the)X
-2451(command.)X
-976 2292(Options:)N
-1336(None.)X
-3 f
-776 2472(unm[ap][!])N
-1170(lhs)X
-1 f
-976 2562(Unmap)N
-1235(a)X
-1294(mapped)X
-1571(string.)X
-1816(Delete)X
-2049(the)X
-2170(command)X
-2509(mode)X
-2710(map)X
-2872(de\256nition)X
-3202(for)X
-7 f
-3320(lhs)X
-1 f
-(.)S
-3528(If)X
-3606(a)X
-3666(``)X
-7 f
-3720(!)X
-1 f
-('')S
-3866(char-)X
-976 2652(acter)N
-1153(is)X
-1226(appended)X
-1554(to)X
-1636(the)X
-1754(command)X
-2090(name,)X
-2304(delete)X
-2516(the)X
-2634(text)X
-2774(input)X
-2958(mode)X
-3156(map)X
-3314(de\256nition)X
-3640(instead.)X
-976 2832(Line:)N
-1336(Unchanged.)X
-976 2922(Options:)N
-1336(None.)X
-3 f
-776 3102(ve[rsion])N
-1 f
-976 3192(Display)N
-1245(the)X
-1363(version)X
-1619(of)X
-1706(the)X
-3 f
-1824(ex/vi)X
-1 f
-2004(editor.)X
-3 f
-776 3372([line])N
-974(vi[sual])X
-1247([type])X
-1468([count])X
-1733([\257ags])X
-976 3462(Ex)N
-1 f
-1092(mode)X
-1293(only.)X
-1498(Enter)X
-3 f
-1695(vi)X
-1 f
-1757(.)X
-1820(The)X
-7 f
-1968(type)X
-1 f
-2183(is)X
-2259(optional,)X
-2564(and)X
-2703(can)X
-2838(be)X
-2937(``)X
-7 f
-9 f
-2991(-)X
-1 f
-3035('',)X
-3132(``)X
-7 f
-3186(+)X
-1 f
-('')S
-3311(or)X
-3401(``)X
-7 f
-3455(\303)X
-1 f
-('',)S
-3600(as)X
-3690(in)X
-3775(the)X
-3 f
-3896(ex)X
-3996(z)X
-1 f
-976 3552(command,)N
-1337(to)X
-1424(specify)X
-1681(the)X
-1804(the)X
-1926(position)X
-2207(of)X
-2298(the)X
-2420(speci\256ed)X
-2729(line)X
-2873(in)X
-2959(the)X
-3081(screen)X
-3311(window.)X
-3633(\(The)X
-3809(default)X
-976 3642(is)N
-1054(to)X
-1141(place)X
-1336(the)X
-1459(line)X
-1605(at)X
-1689(the)X
-1813(top)X
-1941(of)X
-2034(the)X
-2158(screen)X
-2390(window.\))X
-2741(A)X
-7 f
-2825(count)X
-1 f
-3091(speci\256es)X
-3393(the)X
-3517(number)X
-3788(of)X
-3881(lines)X
-976 3732(that)N
-1116(will)X
-1260(initially)X
-1528(be)X
-1624(displayed.)X
-1991(\(The)X
-2163(default)X
-2406(is)X
-2479(the)X
-2597(value)X
-2791(of)X
-2878(the)X
-3 f
-2996(window)X
-1 f
-3282(editor)X
-3489(option.\))X
-976 3912(Line:)N
-1336(Unchanged)X
-1722(unless)X
-7 f
-1942(line)X
-1 f
-2154(is)X
-2227(speci\256ed,)X
-2552(in)X
-2634(which)X
-2850(case)X
-3009(it)X
-3073(is)X
-3146(set)X
-3255(to)X
-3337(that)X
-3477(line.)X
-976 4002(Options:)N
-1336(None.)X
-3 f
-776 4182(vi[sual][!])N
-1130([+cmd])X
-1397([\256le])X
-976 4272(Vi)N
-1 f
-1076(mode)X
-1274(only.)X
-1476(Edit)X
-1629(a)X
-1685(new)X
-1839(\256le.)X
-2001(Identical)X
-2302(to)X
-2384(the)X
-2502(``)X
-7 f
-2556(edit[!])X
-2940([+cmd])X
-3276([file])X
-1 f
-('')S
-3638(command.)X
-3 f
-776 4452(viu[sage])N
-1103([command])X
-1 f
-976 4542(Display)N
-1253(usage)X
-1464(for)X
-1586(a)X
-3 f
-1650(vi)X
-1 f
-1740(command.)X
-2124(If)X
-7 f
-2206(command)X
-1 f
-2570(is)X
-2651(speci\256ed,)X
-2984(a)X
-3048(usage)X
-3259(statement)X
-3595(for)X
-3718(that)X
-3867(com-)X
-976 4632(mand)N
-1174(is)X
-1247(displayed.)X
-1614(Otherwise,)X
-1984(usage)X
-2187(statements)X
-2545(for)X
-2659(all)X
-3 f
-2759(vi)X
-1 f
-2841(commands)X
-3208(are)X
-3327(displayed.)X
-976 4812(Line:)N
-1336(Unchanged.)X
-976 4902(Options:)N
-1336(None.)X
-3 f
-776 5082([range])N
-1046 0.3611(w[rite][!])AX
-1380([>>])X
-1546([\256le])X
-776 5172([range])N
-1046(w[rite])X
-1299([!])X
-1400([\256le])X
-776 5262([range])N
-1046(wn[!])X
-1249([>>])X
-1415([\256le])X
-776 5352([range])N
-1046(wq[!])X
-1249([>>])X
-1415([\256le])X
-1 f
-976 5442(Write)N
-1183(the)X
-1305(\256le.)X
-1472(The)X
-1622(speci\256ed)X
-1932(lines)X
-2108(\(the)X
-2258(entire)X
-2466(\256le,)X
-2613(if)X
-2687(no)X
-2792(range)X
-2996(is)X
-3074(given\))X
-3304(is)X
-3382(written)X
-3634(to)X
-7 f
-3721(file)X
-1 f
-(.)S
-3978(If)X
-7 f
-976 5532(file)N
-1 f
-1195(is)X
-1275(not)X
-1403(speci\256ed,)X
-1734(the)X
-1858(current)X
-2112(pathname)X
-2450(is)X
-2529(used.)X
-2742(If)X
-7 f
-2822(file)X
-1 f
-3040(is)X
-3119(speci\256ed,)X
-3450(and)X
-3592(it)X
-3662(exists,)X
-3890(or)X
-3983(if)X
-976 5622(the)N
-1101(current)X
-1356(pathname)X
-1695(was)X
-1847(set)X
-1963(using)X
-2163(the)X
-3 f
-2288(\256le)X
-1 f
-2417(command,)X
-2780(and)X
-2923(the)X
-3049(\256le)X
-3179(already)X
-3444(exists,)X
-3674(these)X
-3867(com-)X
-976 5712(mands)N
-1212(will)X
-1363(fail.)X
-1537(Appending)X
-1919(a)X
-1981(``)X
-7 f
-2035(!)X
-1 f
-('')S
-2183(character)X
-2505(to)X
-2593(the)X
-2717(command)X
-3059(name)X
-3259(will)X
-3409(override)X
-3703(this)X
-3844(check)X
-976 5802(and)N
-1112(the)X
-1230(write)X
-1415(will)X
-1559(be)X
-1655(attempted,)X
-2011(regardless.)X
-
-45 p
-%%Page: 45 44
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-1237(\(Ex)X
-1377(Commands\))X
-3658(USD:13-45)X
-1 f
-976 762(Specifying)N
-1348(the)X
-1471(optional)X
-1758(``)X
-7 f
-1812(>>)X
-1 f
-('')S
-1987(string)X
-2194(will)X
-2344(cause)X
-2549(the)X
-2673(write)X
-2864(to)X
-2952(be)X
-3054(appended)X
-3388(to)X
-3476(the)X
-3600(\256le,)X
-3748(in)X
-3836(which)X
-976 852(case)N
-1135(no)X
-1235(tests)X
-1397(are)X
-1516(made)X
-1710(for)X
-1824(the)X
-1942(\256le)X
-2064(already)X
-2321(existing.)X
-976 1032(If)N
-1060(the)X
-1188(\256le)X
-1320(is)X
-1403(preceded)X
-1724(by)X
-1834(a)X
-1900(``)X
-7 f
-1954(!)X
-1 f
-('')S
-2106(character,)X
-2452(the)X
-2580(program)X
-2882(named)X
-3126(in)X
-3218(the)X
-3347(SHELL)X
-3627(environment)X
-976 1122(variable)N
-1258(is)X
-1334(invoked)X
-1615(with)X
-1780(\256le)X
-1905(as)X
-1995(its)X
-2093(second)X
-2339(argument,)X
-2685(and)X
-2824(the)X
-2945(speci\256ed)X
-3253(lines)X
-3427(are)X
-3549(passed)X
-3786(as)X
-3876(stan-)X
-976 1212(dard)N
-1143(input)X
-1331(to)X
-1417(that)X
-1561(command.)X
-1941(The)X
-2090(``)X
-7 f
-2144(!)X
-1 f
-('')S
-2291(in)X
-2378(this)X
-2518(usage)X
-2726(must)X
-2906(be)X
-3007(separated)X
-3336(from)X
-3517(command)X
-3858(name)X
-976 1302(by)N
-1080(at)X
-1162(least)X
-1333(one)X
-1473(whitespace)X
-1854(character.)X
-2214(The)X
-2363(special)X
-2610(meaning)X
-2910(of)X
-3001(the)X
-3122(``)X
-7 f
-3176(!)X
-1 f
-('')S
-3321(may)X
-3482(be)X
-3581(overridden)X
-3952(by)X
-976 1392(escaping)N
-1277(it)X
-1341(with)X
-1503(a)X
-1559(backslash)X
-1891(\(``)X
-7 f
-1972(\\)X
-1 f
-(''\))S
-2121(character.)X
-976 1572(The)N
-3 f
-1124(wq)X
-1 f
-1249(version)X
-1509(of)X
-1600(the)X
-1722(write)X
-1911(command)X
-2251(will)X
-2399(exit)X
-2543(the)X
-2665(editor)X
-2876(after)X
-3048(writing)X
-3303(the)X
-3425(\256le,)X
-3571(if)X
-3644(there)X
-3829(are)X
-3952(no)X
-976 1662(further)N
-1232(\256les)X
-1402(to)X
-1501(edit.)X
-1698(Appending)X
-2091(a)X
-2164(``)X
-7 f
-2218(!)X
-1 f
-('')S
-2377(character)X
-2710(to)X
-2809(the)X
-2944(command)X
-3297(name)X
-3508(or)X
-3612(entering)X
-3912(two)X
-976 1752(``quit'')N
-1232(commands)X
-1603(\(i.e.)X
-3 f
-1772(wq)X
-1 f
-1874(,)X
-3 f
-1918(quit)X
-1 f
-2055(,)X
-3 f
-2099(xit)X
-1 f
-2212(or)X
-3 f
-2303(ZZ)X
-1 f
-2409(\))X
-2461(in)X
-2548(a)X
-2609(row\))X
-2786(will)X
-2935(override)X
-3228(this)X
-3368(check)X
-3581(and)X
-3722(the)X
-3845(editor)X
-976 1842(will)N
-1120(exit,)X
-1280(ignoring)X
-1571(any)X
-1707(\256les)X
-1860(that)X
-2000(have)X
-2172(not)X
-2294(yet)X
-2412(been)X
-2584(edited.)X
-976 2022(The)N
-3 f
-1127(wn)X
-1 f
-1255(version)X
-1517(of)X
-1610(the)X
-1734(write)X
-1925(command)X
-2267(will)X
-2417(move)X
-2621(to)X
-2709(the)X
-2833(next)X
-2997(\256le)X
-3125(after)X
-3300(writing)X
-3558(the)X
-3683(\256le,)X
-3832(unless)X
-976 2112(the)N
-1094(write)X
-1279(fails.)X
-976 2292(Line:)N
-1336(Unchanged.)X
-976 2382(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(readonly)X
-1 f
-2178(and)X
-3 f
-2314(writeany)X
-1 f
-2637(options.)X
-3 f
-776 2562([range])N
-1046(x[it][!])X
-1290([\256le])X
-1 f
-976 2652(Write)N
-1185(the)X
-1309(\256le)X
-1437(if)X
-1512(it)X
-1582(has)X
-1715(been)X
-1894(modi\256ed.)X
-2245(The)X
-2397(speci\256ed)X
-2709(lines)X
-2887(are)X
-3013(written)X
-3267(to)X
-7 f
-3356(file)X
-1 f
-(,)S
-3595(if)X
-3671(the)X
-3796(\256le)X
-3925(has)X
-976 2742(been)N
-1149(modi\256ed)X
-1454(since)X
-1640(the)X
-1759(last)X
-1891(complete)X
-2206(write)X
-2392(to)X
-2475(any)X
-2612(\256le.)X
-2775(If)X
-2850(no)X
-7 f
-2951(range)X
-1 f
-3211(is)X
-3284(speci\256ed,)X
-3609(the)X
-3727(entire)X
-3930(\256le)X
-976 2832(is)N
-1049(written.)X
-976 3012(The)N
-3 f
-1126(xit)X
-1 f
-1240(command)X
-1581(will)X
-1730(exit)X
-1875(the)X
-1998(editor)X
-2210(after)X
-2383(writing)X
-2639(the)X
-2762(\256le,)X
-2909(if)X
-2983(there)X
-3169(are)X
-3294(no)X
-3400(further)X
-3645(\256les)X
-3804(to)X
-3892(edit.)X
-976 3102(Appending)N
-1362(a)X
-1428(``)X
-7 f
-1482(!)X
-1 f
-('')S
-1634(character)X
-1960(to)X
-2052(the)X
-2180(command)X
-2526(name)X
-2730(or)X
-2827(entering)X
-3120(two)X
-3270(``quit'')X
-3531(commands)X
-3907(\(i.e.)X
-3 f
-976 3192(wq)N
-1 f
-1078(,)X
-3 f
-1125(quit)X
-1 f
-1262(,)X
-3 f
-1309(xit)X
-1 f
-1425(or)X
-3 f
-1519(ZZ)X
-1 f
-1625(\))X
-1679(in)X
-1768(a)X
-1831(row\))X
-2010(will)X
-2161(override)X
-2456(this)X
-2598(check)X
-2813(and)X
-2956(the)X
-3082(editor)X
-3297(will)X
-3449(exit,)X
-3617(ignoring)X
-3916(any)X
-976 3282(\256les)N
-1129(that)X
-1269(have)X
-1441(not)X
-1563(yet)X
-1681(been)X
-1853(edited.)X
-976 3462(Line:)N
-1336(Unchanged.)X
-976 3552(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-3 f
-1856(readonly)X
-1 f
-2178(and)X
-3 f
-2314(writeany)X
-1 f
-2637(options.)X
-3 f
-776 3732([range])N
-1046(ya[nk])X
-1288([buffer])X
-1576([count])X
-1 f
-976 3822(Copy)N
-1169(the)X
-1287(speci\256ed)X
-1592(lines)X
-1763(to)X
-1845(a)X
-1901(buffer.)X
-2158(If)X
-2232(no)X
-2332(buffer)X
-2549(is)X
-2622(speci\256ed,)X
-2947(the)X
-3065(unnamed)X
-3379(buffer)X
-3596(is)X
-3669(used.)X
-976 4002(Line:)N
-1336(Unchanged.)X
-976 4092(Options:)N
-1336(None.)X
-3 f
-776 4272([line])N
-974(z)X
-1030([type])X
-1251([count])X
-1516([\257ags])X
-1 f
-976 4362(Adjust)N
-1210(the)X
-1329(window.)X
-1648(If)X
-1723(no)X
-7 f
-1824(type)X
-1 f
-2037(is)X
-2111(speci\256ed,)X
-2437(then)X
-7 f
-2596(count)X
-1 f
-2858(lines)X
-3031(following)X
-3364(the)X
-3484(speci\256ed)X
-3791(line)X
-3933(are)X
-976 4452(displayed.)N
-1362(The)X
-1526(default)X
-7 f
-1788(count)X
-1 f
-2067(is)X
-2159(the)X
-2296(value)X
-2509(of)X
-2614(the)X
-3 f
-2750(window)X
-1 f
-3054(option.)X
-3336(The)X
-7 f
-3499(type)X
-1 f
-3729(argument)X
-976 4542(changes)N
-1266(the)X
-1395(position)X
-1683(at)X
-1772(which)X
-7 f
-1999(line)X
-1 f
-2222(is)X
-2306(displayed)X
-2644(on)X
-2755(the)X
-2884(screen)X
-3121(by)X
-3232(changing)X
-3558(the)X
-3688(number)X
-3965(of)X
-976 4632(lines)N
-1147(displayed)X
-1474(before)X
-1700(and)X
-1836(after)X
-7 f
-2004(line)X
-1 f
-(.)S
-2256(The)X
-2401(following)X
-7 f
-2732(type)X
-1 f
-2944(characters)X
-3291(may)X
-3449(be)X
-3545(used:)X
-9 f
-976 4812(-)N
-1 f
-1336(Place)X
-1530(the)X
-1648(line)X
-1788(at)X
-1866(the)X
-1984(bottom)X
-2230(of)X
-2317(the)X
-2435(screen.)X
-976 4902(+)N
-1336(Place)X
-1530(the)X
-1648(line)X
-1788(at)X
-1866(the)X
-1984(top)X
-2106(of)X
-2193(the)X
-2311(screen.)X
-976 4992(.)N
-1336(Place)X
-1530(the)X
-1648(line)X
-1788(in)X
-1870(the)X
-1988(middle)X
-2230(of)X
-2317(the)X
-2435(screen.)X
-976 5082(\303)N
-1336(Write)X
-1540(out)X
-1663(count)X
-1862(lines)X
-2034(starting)X
-7 f
-2295(count)X
-2584(*)X
-2681(2)X
-1 f
-2750(lines)X
-2922(before)X
-7 f
-3149(line)X
-1 f
-(;)S
-3384(the)X
-3503(net)X
-3622(effect)X
-3828(of)X
-3917(this)X
-1336 5172(is)N
-1409(that)X
-1549(a)X
-1605(``)X
-7 f
-1659(z\303)X
-1 f
-('')S
-1829(command)X
-2165(following)X
-2496(a)X
-3 f
-2552(z)X
-1 f
-2608(command)X
-2944(writes)X
-3160(the)X
-3278(previous)X
-3574(page.)X
-976 5262(=)N
-1336(Center)X
-7 f
-1580(line)X
-1 f
-1802(on)X
-1912(the)X
-2040(screen)X
-2276(with)X
-2448(a)X
-2514(line)X
-2664(of)X
-2761(hyphens)X
-3058(displayed)X
-3395(immediately)X
-3826(before)X
-1336 5352(and)N
-1485(after)X
-1666(it.)X
-1783(The)X
-1941(number)X
-2219(of)X
-2319(preceding)X
-2669(and)X
-2817(following)X
-3160(lines)X
-3343(of)X
-3442(text)X
-3594(displayed)X
-3933(are)X
-1336 5442(reduced)N
-1611(to)X
-1693(account)X
-1963(for)X
-2077(those)X
-2266(lines.)X
-976 5622(Line:)N
-1336(Set)X
-1458(to)X
-1540(the)X
-1658(last)X
-1789(line)X
-1929(displayed,)X
-2276(with)X
-2438(the)X
-2556(exception)X
-2888(of)X
-2975(the)X
-7 f
-3093(type)X
-1 f
-(,)S
-3326(where)X
-3544(the)X
-3663(current)X
-3912(line)X
-1336 5712(is)N
-1409(set)X
-1518(to)X
-1600(the)X
-1718(line)X
-1858(speci\256ed)X
-2163(by)X
-2263(the)X
-2381(command.)X
-
-46 p
-%%Page: 46 45
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-46)N
-2813(Nvi/Nex)X
-3109 0.3906(Reference)AX
-3474(\(Ex)X
-3614(Commands\))X
-1 f
-976 762(Options:)N
-1336(Affected)X
-1638(by)X
-1738(the)X
-1856(option.)X
-3 f
-776 948(15.)N
-916(Set)X
-1043(Options)X
-1 f
-976 1071(There)N
-1186(are)X
-1307(a)X
-1365(large)X
-1548(number)X
-1815(of)X
-1904(options)X
-2161(that)X
-2303(may)X
-2463(be)X
-2561(set)X
-2672(\(or)X
-2788(unset\))X
-3006(to)X
-3091(change)X
-3342(the)X
-3463(editor's)X
-3731(behavior.)X
-776 1161(This)N
-938(section)X
-1185(describes)X
-1504(the)X
-1622(options,)X
-1897(their)X
-2064(abbreviations)X
-2516(and)X
-2652(their)X
-2819(default)X
-3062(values.)X
-976 1284(In)N
-1064(each)X
-1233(entry)X
-1419(below,)X
-1656(the)X
-1775(\256rst)X
-1920(part)X
-2066(of)X
-2154(the)X
-2273(tag)X
-2392(line)X
-2533(is)X
-2607(the)X
-2726(full)X
-2858(name)X
-3053(of)X
-3141(the)X
-3261(option,)X
-3507(followed)X
-3814(by)X
-3916(any)X
-776 1374(equivalent)N
-1135(abbreviations.)X
-1632(\(Regardless)X
-2036(of)X
-2128(the)X
-2251(abbreviations,)X
-2728(it)X
-2797(is)X
-2875(only)X
-3042(necessary)X
-3380(to)X
-3467(use)X
-3599(the)X
-3722(minimum)X
-776 1464(number)N
-1047(of)X
-1140(characters)X
-1493(necessary)X
-1832(to)X
-1920(distinguish)X
-2296(an)X
-2398(abbreviation)X
-2825(from)X
-3007(all)X
-3113(other)X
-3304(commands)X
-3677(for)X
-3797(it)X
-3867(to)X
-3956(be)X
-776 1554(accepted,)N
-1099(in)X
-3 f
-1182(nex)X
-1 f
-(/)S
-3 f
-1324(nvi)X
-1 f
-1430(.)X
-1491(Historically,)X
-1910(only)X
-2073(the)X
-2192(full)X
-2324(name)X
-2519(and)X
-2656(the)X
-2774(of\256cial)X
-3021(abbreviations)X
-3473(were)X
-3650(accepted)X
-3952(by)X
-3 f
-776 1644(ex)N
-1 f
-852(/)X
-3 f
-874(vi)X
-1 f
-936(.)X
-1002(Using)X
-1220(full)X
-1358(names)X
-1590(in)X
-1679(your)X
-1853(startup)X
-2098(\256les)X
-2258(and)X
-2401(environmental)X
-2891(variables)X
-3208(will)X
-3359(probably)X
-3671(make)X
-3872(them)X
-776 1734(more)N
-968(portable.\))X
-1325(The)X
-1477(part)X
-1629(in)X
-1718(square)X
-1955(brackets)X
-2250(is)X
-2330(the)X
-2454(default)X
-2703(value)X
-2903(of)X
-2996(the)X
-3120(option.)X
-3390(Most)X
-3580(of)X
-3673(the)X
-3797(options)X
-776 1824(are)N
-895(boolean,)X
-1189(i.e.)X
-1307(they)X
-1465(are)X
-1584(either)X
-1787(on)X
-1887(or)X
-1974(off,)X
-2108(and)X
-2244(do)X
-2344(not)X
-2466(have)X
-2638(an)X
-2734(associated)X
-3084(value.)X
-976 1947(Options)N
-1249(apply)X
-1447(to)X
-1529(both)X
-3 f
-1691(ex)X
-1 f
-1787(and)X
-3 f
-1923(vi)X
-1 f
-2005(modes,)X
-2254(unless)X
-2474(otherwise)X
-2806(speci\256ed.)X
-976 2070(For)N
-1107(information)X
-1505(on)X
-1605(modifying)X
-1958(the)X
-2076(options)X
-2331(or)X
-2419(to)X
-2502(display)X
-2754(the)X
-2873(options)X
-3129(and)X
-3266(their)X
-3434(current)X
-3683(values,)X
-3929(see)X
-776 2160(the)N
-894(``set'')X
-1111(command)X
-1447(in)X
-1529(the)X
-1647(section)X
-1894(entitled)X
-2154(``)X
-3 f
-2208(Ex)X
-2321(Commands)X
-1 f
-2712(''.)X
-3 f
-776 2340(altwerase)N
-1122([off])X
-976 2430(Vi)N
-1 f
-1084(only.)X
-1295(Change)X
-1569(how)X
-3 f
-1736(vi)X
-1 f
-1827(does)X
-2003(word)X
-2197(erase)X
-2392(during)X
-2630(text)X
-2779(input.)X
-3012(When)X
-3233(this)X
-3377(option)X
-3610(is)X
-3692(set,)X
-3830(text)X
-3979(is)X
-976 2520(broken)N
-1230(up)X
-1340(into)X
-1494(three)X
-1685(classes:)X
-1960(alphabetic,)X
-2340(numeric)X
-2633(and)X
-2779(underscore)X
-3162(characters,)X
-3539(other)X
-3734(nonblank)X
-976 2610(characters,)N
-1343(and)X
-1479(blank)X
-1677(characters.)X
-2064(Changing)X
-2395(from)X
-2571(one)X
-2707(class)X
-2884(to)X
-2967(another)X
-3229(marks)X
-3446(the)X
-3565(end)X
-3702(of)X
-3790(a)X
-3847(word.)X
-976 2700(In)N
-1070(addition,)X
-1379(the)X
-1504(class)X
-1687(of)X
-1781(the)X
-1906(\256rst)X
-2057(character)X
-2380(erased)X
-2612(is)X
-2691(ignored)X
-2962(\(which)X
-3211(is)X
-3290(exactly)X
-3548(what)X
-3730(you)X
-3876(want)X
-976 2790(when)N
-1170(erasing)X
-1422(pathname)X
-1754(components\).)X
-3 f
-776 2970(autoindent,)N
-1184(ai)X
-1266([off])X
-1 f
-976 3060(If)N
-1052(this)X
-1189(option)X
-1415(is)X
-1490(set,)X
-1621(whenever)X
-1956(you)X
-2098(create)X
-2313(a)X
-2371(new)X
-2527(line)X
-2669(\(using)X
-2891(the)X
-3 f
-3012(vi)X
-3097(A)X
-1 f
-3155(,)X
-3 f
-3198(a)X
-1 f
-(,)S
-3 f
-3281(C)X
-1 f
-3339(,)X
-3 f
-3382(c)X
-1 f
-3418(,)X
-3 f
-3461(I)X
-1 f
-3492(,)X
-3 f
-3535(i)X
-1 f
-3557(,)X
-3 f
-3600(O)X
-1 f
-3662(,)X
-3 f
-3705(o)X
-1 f
-(,)S
-3 f
-3788(R)X
-1 f
-3846(,)X
-3 f
-3889(r)X
-1 f
-3925(,)X
-3 f
-3968(S)X
-1 f
-4012(,)X
-976 3150(and)N
-3 f
-1117(s)X
-1 f
-1173(commands,)X
-1565(or)X
-1657(the)X
-3 f
-1780(ex)X
-1881(append)X
-1 f
-2133(,)X
-3 f
-2178(change)X
-1 f
-(,)S
-2463(and)X
-3 f
-2604(insert)X
-1 f
-2825(commands\))X
-3224(the)X
-3346(new)X
-3504(line)X
-3648(is)X
-3725(automati-)X
-976 3240(cally)N
-1156(indented)X
-1456(to)X
-1542(align)X
-1726(the)X
-1848(cursor)X
-2073(with)X
-2239(the)X
-2361(\256rst)X
-2509(nonblank)X
-2831(character)X
-3151(of)X
-3242(the)X
-3365(line)X
-3510(from)X
-3691(which)X
-3912(you)X
-976 3330(created)N
-1231(it.)X
-1337(Lines)X
-1537(are)X
-1658(indented)X
-1956(using)X
-2150(tab)X
-2269(characters)X
-2617(to)X
-2700(the)X
-2819(extent)X
-3036(possible)X
-3319(\(based)X
-3550(on)X
-3651(the)X
-3770(value)X
-3965(of)X
-976 3420(the)N
-3 f
-1094(tabstop)X
-1 f
-1367(option\))X
-1618(and)X
-1754(then)X
-1912(using)X
-2105(space)X
-2304(characters)X
-2651(as)X
-2738(necessary.)X
-3111(For)X
-3243(commands)X
-3611(inserting)X
-3912(text)X
-976 3510(into)N
-1124(the)X
-1246(middle)X
-1492(of)X
-1583(a)X
-1643(line,)X
-1807(any)X
-1947(blank)X
-2149(characters)X
-2500(to)X
-2586(the)X
-2708(right)X
-2883(of)X
-2974(the)X
-3096(cursor)X
-3321(are)X
-3444(discarded,)X
-3795(and)X
-3934(the)X
-976 3600(\256rst)N
-1120(nonblank)X
-1438(character)X
-1754(to)X
-1836(the)X
-1954(right)X
-2125(of)X
-2212(the)X
-2330(cursor)X
-2551(is)X
-2624(aligned)X
-2880(as)X
-2967(described)X
-3295(above.)X
-976 3780(The)N
-1128(indent)X
-1355(characters)X
-1709(are)X
-1835(themselves)X
-2218(somewhat)X
-2570(special.)X
-2860(If)X
-2941(you)X
-3088(do)X
-3195(not)X
-3324(enter)X
-3512(more)X
-3705(characters)X
-976 3870(on)N
-1085(the)X
-1212(new)X
-1375(line)X
-1524(before)X
-1759(moving)X
-2032(to)X
-2123(another)X
-2393(line,)X
-2562(or)X
-2658(entering)X
-7 f
-2950(<escape>)X
-1 f
-(,)S
-3382(the)X
-3508(indent)X
-3736(character)X
-976 3960(will)N
-1121(be)X
-1218(deleted)X
-1471(and)X
-1608(the)X
-1727(line)X
-1868(will)X
-2013(be)X
-2111(empty.)X
-2373(For)X
-2506(example,)X
-2820(if)X
-2891(you)X
-3033(enter)X
-7 f
-3216(<carriage-return>)X
-1 f
-976 4050(twice)N
-1181(in)X
-1274(succession,)X
-1668(the)X
-1797(line)X
-1947(created)X
-2210(by)X
-2320(the)X
-2448(\256rst)X
-7 f
-2602(<carriage-return>)X
-1 f
-3448(will)X
-3602(not)X
-3734(have)X
-3916(any)X
-976 4140(characters)N
-1323(in)X
-1405(it,)X
-1489(regardless)X
-1835(of)X
-1922(the)X
-2040(indentation)X
-2420(of)X
-2507(the)X
-2625(previous)X
-2921(or)X
-3008(subsequent)X
-3384(line.)X
-976 4320(Indent)N
-1210(characters)X
-1566(also)X
-1725(require)X
-1983(that)X
-2133(you)X
-2283(enter)X
-2474(additional)X
-2824(erase)X
-3020(characters)X
-3377(to)X
-3469(delete)X
-3691(them.)X
-3921(For)X
-976 4410(example,)N
-1290(if)X
-1361(you)X
-1503(have)X
-1677(an)X
-1775(indented)X
-2072(line,)X
-2233(containing)X
-2592(only)X
-2755(blanks,)X
-3005(the)X
-3124(\256rst)X
-7 f
-3269(<word-erase>)X
-1 f
-3866(char-)X
-976 4500(acter)N
-1156(you)X
-1299(enter)X
-1483(will)X
-1630(erase)X
-1819(up)X
-1922(to)X
-2007(end)X
-2146(of)X
-2236(the)X
-2357(indent)X
-2580(characters,)X
-2950(and)X
-3089(the)X
-3210(second)X
-3456(will)X
-3604(erase)X
-3794(back)X
-3970(to)X
-976 4590(the)N
-1094(beginning)X
-1434(of)X
-1521(the)X
-1639(line.)X
-1819(\(Historically,)X
-2264(only)X
-2426(the)X
-3 f
-2544(<control-D>)X
-1 f
-2986(key)X
-3122(would)X
-3342(erase)X
-3528(the)X
-3646(indent)X
-3866(char-)X
-976 4680(acters.)N
-1231(Both)X
-1413(the)X
-3 f
-1538(<control-D>)X
-1 f
-1988(key)X
-2132(and)X
-2276(the)X
-2402(usual)X
-2599(erase)X
-2793(keys)X
-2968(work)X
-3161(in)X
-3 f
-3251(nvi)X
-1 f
-3357(.\))X
-3452(In)X
-3547(addition,)X
-3857(if)X
-3934(the)X
-976 4770(cursor)N
-1211(is)X
-1298(positioned)X
-1665(at)X
-1756(the)X
-1887(end)X
-2036(of)X
-2136(the)X
-2267(indent)X
-2500(characters,)X
-2880(the)X
-3011(keys)X
-3191(``)X
-7 f
-3245(0<control-D>)X
-1 f
-('')S
-3908(will)X
-976 4860(erase)N
-1163(all)X
-1264(of)X
-1352(the)X
-1472(indent)X
-1694(characters)X
-2043(for)X
-2159(the)X
-2279(current)X
-2529(line,)X
-2691(resetting)X
-2989(the)X
-3109(indentation)X
-3491(level)X
-3669(to)X
-3753(0.)X
-3855(Simi-)X
-976 4950(larly,)N
-1168(the)X
-1291(keys)X
-1462(``)X
-7 f
-1516(\303<control-D>)X
-1 f
-('')S
-2170(will)X
-2318(erase)X
-2508(all)X
-2612(of)X
-2703(the)X
-2825(indent)X
-3049(characters)X
-3400(for)X
-3518(the)X
-3640(current)X
-3892(line,)X
-976 5040(leaving)N
-1232(the)X
-1350(indentation)X
-1730(level)X
-1906(for)X
-2020(future)X
-2232(created)X
-2485(lines)X
-2656(unaffected.)X
-976 5220(Finally,)N
-1243(if)X
-1313(the)X
-3 f
-1432(autoindent)X
-1 f
-1821(option)X
-2047(is)X
-2122(set,)X
-2253(the)X
-3 f
-2373(S)X
-1 f
-2439(and)X
-3 f
-2577(cc)X
-1 f
-2671(commands)X
-3040(change)X
-3290(from)X
-3468(the)X
-3588(\256rst)X
-3734(nonblank)X
-976 5310(of)N
-1063(the)X
-1181(line)X
-1321(to)X
-1403(the)X
-1521(end)X
-1657(of)X
-1744(the)X
-1862(line,)X
-2022(instead)X
-2269(of)X
-2356(from)X
-2532(the)X
-2650(beginning)X
-2990(of)X
-3077(the)X
-3195(line)X
-3335(to)X
-3417(the)X
-3535(end)X
-3671(of)X
-3758(the)X
-3876(line.)X
-3 f
-776 5490(autoprint,)N
-1140(ap)X
-1244([off])X
-976 5580(Ex)N
-1 f
-1099(only.)X
-1311(Cause)X
-1537(the)X
-1665(current)X
-1923(line)X
-2073(to)X
-2165(be)X
-2271(automatically)X
-2738(displayed)X
-3076(after)X
-3255(the)X
-3 f
-3384(ex)X
-1 f
-3491(commands)X
-3 f
-3869(<)X
-1 f
-3915(,)X
-3 f
-3966(>)X
-1 f
-4012(,)X
-3 f
-976 5670(copy)N
-1 f
-(,)S
-3 f
-1176(delete)X
-1 f
-1377(,)X
-3 f
-1417(join)X
-1 f
-1550(,)X
-3 f
-1590(move)X
-1 f
-1773(,)X
-3 f
-1813(put)X
-1 f
-1928(,)X
-3 f
-1968(t)X
-1 f
-1995(,)X
-3 f
-2035(Undo)X
-1 f
-2221(,)X
-2261(and)X
-3 f
-2397(undo)X
-1 f
-2569(.)X
-2629(This)X
-2791(automatic)X
-3127(display)X
-3378(is)X
-3451(suppressed)X
-3823(during)X
-3 f
-976 5760(global)N
-1 f
-1226(and)X
-3 f
-1384(vglobal)X
-1 f
-1675(commands,)X
-2085(and)X
-2244(for)X
-2381(any)X
-2540(command)X
-2899(where)X
-3139(optional)X
-3444(\257ags)X
-3638(are)X
-3780(used)X
-3970(to)X
-
-47 p
-%%Page: 47 46
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3658(USD:13-47)X
-1 f
-976 762(explicitly)N
-1298(display)X
-1549(the)X
-1667(line.)X
-3 f
-776 942(autowrite,)N
-1146(aw)X
-1264([off])X
-1 f
-976 1032(If)N
-1053(this)X
-1191(option)X
-1418(is)X
-1494(set,)X
-1626(the)X
-3 f
-1747(vi)X
-1832(!)X
-1 f
-1859(,)X
-3 f
-1902(\303\303)X
-1 f
-1956(,)X
-3 f
-1999(\303])X
-1 f
-2076(and)X
-3 f
-2215(<control-Z>)X
-1 f
-2655(commands,)X
-3046(and)X
-3186(the)X
-3 f
-3308(ex)X
-3408(edit)X
-1 f
-3537(,)X
-3 f
-3581(next)X
-1 f
-3728(,)X
-3 f
-3772(rewind)X
-1 f
-(,)S
-3 f
-976 1122(stop)N
-1 f
-1118(,)X
-3 f
-1161(suspend)X
-1 f
-1435(,)X
-3 f
-1478(tag)X
-1 f
-1585(,)X
-3 f
-1628(tagpop)X
-1 f
-1863(,)X
-1906(and)X
-3 f
-2045(tagtop)X
-1 f
-2286(commands)X
-2656(automatically)X
-3115(write)X
-3302(the)X
-3422(current)X
-3672(\256le)X
-3796(back)X
-3970(to)X
-976 1212(the)N
-1103(current)X
-1360(\256le)X
-1491(name)X
-1694(if)X
-1772(it)X
-1845(has)X
-1981(been)X
-2163(modi\256ed)X
-2477(since)X
-2672(it)X
-2746(was)X
-2901(last)X
-3042(written.)X
-3339(If)X
-3423(the)X
-3551(write)X
-3746(fails,)X
-3934(the)X
-976 1302(command)N
-1312(fails)X
-1470(and)X
-1606(goes)X
-1773(no)X
-1873(further.)X
-976 1482(Appending)N
-1363(the)X
-1492(optional)X
-1785(force)X
-1982(\257ag)X
-2133(character)X
-2460(``)X
-7 f
-2514(!)X
-1 f
-('')S
-2668(to)X
-2762(the)X
-3 f
-2892(ex)X
-1 f
-3000(commands)X
-3 f
-3379(next)X
-1 f
-3526(,)X
-3 f
-3578(rewind)X
-1 f
-(,)S
-3 f
-3870(stop)X
-1 f
-4012(,)X
-3 f
-976 1572(suspend)N
-1 f
-1250(,)X
-3 f
-1290(tag)X
-1 f
-1397(,)X
-3 f
-1437(tagpop)X
-1 f
-1672(,)X
-1712(and)X
-3 f
-1848(tagtop)X
-1 f
-2086(stops)X
-2270(the)X
-2388(automatic)X
-2724(write)X
-2909(from)X
-3085(being)X
-3283(attempted.)X
-976 1752(\(Historically,)N
-1421(the)X
-3 f
-1539(next)X
-1 f
-1706(command)X
-2042(ignored)X
-2307(the)X
-2425(optional)X
-2707(force)X
-2894(\257ag.\))X
-3102(Note,)X
-3299(the)X
-3 f
-3418(ex)X
-1 f
-3515(commands)X
-3 f
-3883(edit)X
-1 f
-4012(,)X
-3 f
-976 1842(quit)N
-1 f
-1113(,)X
-3 f
-1153(shell)X
-1 f
-1308(,)X
-1348(and)X
-3 f
-1484(xit)X
-1 f
-1593(are)X
-2 f
-1712(not)X
-1 f
-1834(affected)X
-2114(by)X
-2214(the)X
-3 f
-2332(autowrite)X
-1 f
-2682(option.)X
-3 f
-776 2022(beautify,)N
-1096(bf)X
-1187([off])X
-1 f
-976 2112(If)N
-1061(this)X
-1207(option)X
-1442(is)X
-1527(set,)X
-1668(all)X
-1780(control)X
-2039(characters)X
-2398(that)X
-2550(are)X
-2681(not)X
-2815(currently)X
-3137(being)X
-3347(specially)X
-3664(interpreted,)X
-976 2202(other)N
-1166(than)X
-7 f
-1329(<tab>)X
-1 f
-(,)S
-7 f
-1613(<newline>)X
-1 f
-(,)S
-2089(and)X
-7 f
-2229(<form-feed>)X
-1 f
-(,)S
-2801(are)X
-2924(discarded)X
-3256(from)X
-3436(commands)X
-3807(read)X
-3970(in)X
-976 2292(by)N
-3 f
-1078(ex)X
-1 f
-1176(from)X
-1354(command)X
-1692(\256les,)X
-1867(and)X
-2005(from)X
-2183(input)X
-2369(text)X
-2511(entered)X
-2770(to)X
-3 f
-2854(vi)X
-1 f
-2938(\(either)X
-3170(into)X
-3316(the)X
-3436(\256le)X
-3560(or)X
-3649(to)X
-3733(the)X
-3854(colon)X
-976 2382(command)N
-1312(line\).)X
-1519(Text)X
-1686(\256les)X
-1839(read)X
-1998(by)X
-3 f
-2098(ex)X
-1 f
-2174(/)X
-3 f
-2196(vi)X
-1 f
-2278(are)X
-2 f
-2397(not)X
-1 f
-2519(affected)X
-2799(by)X
-2899(the)X
-3 f
-3017(beautify)X
-1 f
-3317(option.)X
-3 f
-776 2562(cdpath)N
-1031([environment)X
-1514(variable)X
-1814(CDPATH,)X
-2192(or)X
-2288(current)X
-2567(directory])X
-1 f
-976 2652(This)N
-1152(option)X
-1390(is)X
-1477(used)X
-1658(to)X
-1754(specify)X
-2020(a)X
-2090(colon)X
-2302(separated)X
-2640(list)X
-2771(of)X
-2872(directories)X
-3245(which)X
-3476(are)X
-3610(used)X
-3792(as)X
-3894(path)X
-976 2742(pre\256xes)N
-1252(for)X
-1368(any)X
-1506(relative)X
-1769(path)X
-1929(names)X
-2156(used)X
-2325(as)X
-2414(arguments)X
-2770(for)X
-2886(the)X
-3 f
-3006(cd)X
-1 f
-3108(command.)X
-3486(The)X
-3633(value)X
-3829(of)X
-3917(this)X
-976 2832(option)N
-1202(defaults)X
-1478(to)X
-1562(the)X
-1682(value)X
-1878(of)X
-1967(the)X
-2088(environmental)X
-2574(variable)X
-7 f
-2856(CDPATH)X
-1 f
-3167(if)X
-3239(it)X
-3306(is)X
-3382(set,)X
-3514(otherwise)X
-3849(to)X
-3934(the)X
-976 2922(current)N
-1232(directory.)X
-1590(For)X
-1729(compatibility)X
-2183(with)X
-2353(the)X
-2478(POSIX)X
-2736(1003.2)X
-2983(shell,)X
-3181(the)X
-3 f
-3306(cd)X
-1 f
-3413(command)X
-3756(does)X
-2 f
-3930(not)X
-1 f
-976 3012(check)N
-1200(the)X
-1334(current)X
-1598(directory)X
-1924(as)X
-2027(a)X
-2099(path)X
-2273(pre\256x)X
-2496(for)X
-2627(relative)X
-2905(path)X
-3080(names)X
-3322(unless)X
-3559(it)X
-3640(is)X
-3730(explicitly)X
-976 3102(speci\256ed.)N
-1334(It)X
-1416(may)X
-1586(be)X
-1694(so)X
-1797(speci\256ed)X
-2114(by)X
-2226(entering)X
-2521(an)X
-2629(empty)X
-2861(string)X
-3075(or)X
-3174(a)X
-3242(``)X
-7 f
-3296(.)X
-1 f
-('')S
-3450(character)X
-3778(into)X
-3934(the)X
-7 f
-976 3192(CDPATH)N
-1 f
-1284(variable)X
-1563(or)X
-1650(the)X
-1768(option)X
-1992(value.)X
-3 f
-776 3372(columns,)N
-1100(co)X
-1196([80])X
-1 f
-976 3462(The)N
-1132(number)X
-1408(of)X
-1506(columns)X
-1808(in)X
-1901(the)X
-2030(screen.)X
-2307(Setting)X
-2565(this)X
-2712(option)X
-2948(causes)X
-3 f
-3190(ex)X
-1 f
-3266(/)X
-3 f
-3288(vi)X
-1 f
-3382(to)X
-3476(set)X
-3597(\(or)X
-3723(reset\))X
-3934(the)X
-976 3552(environmental)N
-1464(variable)X
-7 f
-1748(COLUMNS)X
-1 f
-(.)S
-2149(See)X
-2290(the)X
-2413(section)X
-2665(entitled)X
-2930(``)X
-3 f
-2984(Sizing)X
-3217(the)X
-3349(Screen)X
-1 f
-3581('')X
-3660(more)X
-3849(infor-)X
-976 3642(mation.)N
-3 f
-776 3822(comment)N
-1113([off])X
-976 3912(Vi)N
-1 f
-1079(only.)X
-1284(If)X
-1361(the)X
-1482(\256rst)X
-1629(non-empty)X
-1999(line)X
-2142(of)X
-2232(the)X
-2354(\256le)X
-2480(begins)X
-2713(with)X
-2879(the)X
-3001(string)X
-3207(``)X
-7 f
-3261(/*)X
-1 f
-('',)S
-3455(this)X
-3594(option)X
-3822(causes)X
-3 f
-976 4002(vi)N
-1 f
-1072(to)X
-1167(skip)X
-1333(to)X
-1428(the)X
-1559(end)X
-1708(of)X
-1808(that)X
-1961(C-language)X
-2364(comment)X
-2695(\(probably)X
-3040(a)X
-3109(terribly)X
-3378(boring)X
-3620(legal)X
-3809(notice\))X
-976 4092(before)N
-1202(displaying)X
-1555(the)X
-1673(\256le.)X
-3 f
-776 4272(directory,)N
-1133(dir)X
-1255([environment)X
-1738(variable)X
-2038(TMPDIR,)X
-2403(or)X
-2499(/tmp])X
-1 f
-976 4362(The)N
-1123(directory)X
-1435(where)X
-1655(temporary)X
-2008(\256les)X
-2164(are)X
-2286(created.)X
-2582(The)X
-2730(environmental)X
-3216(variable)X
-7 f
-3498(TMPDIR)X
-1 f
-3809(is)X
-3885(used)X
-976 4452(as)N
-1063(the)X
-1181(default)X
-1424(value)X
-1618(if)X
-1687(it)X
-1751(exists,)X
-1973(otherwise)X
-7 f
-2305(/tmp)X
-1 f
-2517(is)X
-2590(used.)X
-3 f
-776 4632(edcompatible,)N
-1274(ed)X
-1374([off])X
-1 f
-976 4722(Remember)N
-1349(the)X
-1468(values)X
-1694(of)X
-1782(the)X
-1901(``c'')X
-2066(and)X
-2203(``g'')X
-2372(suf\256ces)X
-2638(to)X
-2721(the)X
-3 f
-2840(substitute)X
-1 f
-3194(commands,)X
-3583(instead)X
-3832(of)X
-3921(ini-)X
-976 4812(tializing)N
-1262(them)X
-1446(as)X
-1537(unset)X
-1730(for)X
-1848(each)X
-2020(new)X
-2178(command.)X
-2558(Specifying)X
-2929(pattern)X
-3176(and)X
-3316(replacement)X
-3733(strings)X
-3970(to)X
-976 4902(the)N
-3 f
-1094(substitute)X
-1 f
-1447(command)X
-1783(unsets)X
-2003(the)X
-2121(``c'')X
-2285(and)X
-2421(``g'')X
-2589(suf\256ces)X
-2854(as)X
-2941(well.)X
-3 f
-776 5082(errorbells,)N
-1155(eb)X
-1255([off])X
-976 5172(Ex)N
-1 f
-1089(only.)X
-3 f
-1292(Ex)X
-1 f
-1406(error)X
-1584(messages)X
-1908(are)X
-2028(normally)X
-2338(presented)X
-2667(in)X
-2750(inverse)X
-3003(video.)X
-3242(If)X
-3317(that)X
-3458(is)X
-3532(not)X
-3655(possible)X
-3938(for)X
-976 5262(the)N
-1096(terminal,)X
-1405(setting)X
-1640(this)X
-1777(option)X
-2003(causes)X
-2235(error)X
-2414(messages)X
-2739(to)X
-2823(be)X
-2921(announced)X
-3291(by)X
-3393(ringing)X
-3646(the)X
-3765(terminal)X
-976 5352(bell.)N
-3 f
-776 5532(exrc,)N
-964(ex)X
-1060([off])X
-1 f
-976 5622(If)N
-1061(this)X
-1207(option)X
-1442(is)X
-1526(turned)X
-1762(off)X
-1887(in)X
-1980(the)X
-2109(system)X
-2362(or)X
-2460($HOME)X
-2767(startup)X
-3016(\256les,)X
-3200(the)X
-3330(local)X
-3518(startup)X
-3768(\256les)X
-3933(are)X
-976 5712(never)N
-1177(read)X
-1338(\(unless)X
-1587(they)X
-1747(are)X
-1868(the)X
-1988(same)X
-2175(as)X
-2264(the)X
-2384(system)X
-2628(or)X
-2717($HOME)X
-3015(startup)X
-3255(\256les\).)X
-3477(Turning)X
-3757(it)X
-3823(on)X
-3925(has)X
-976 5802(no)N
-1091(effect,)X
-1330(i.e.)X
-1463(the)X
-1596(normal)X
-1858(checks)X
-2112(for)X
-2241(local)X
-2432(startup)X
-2685(\256les)X
-2854(are)X
-2989(performed,)X
-3380(regardless.)X
-3782(See)X
-3934(the)X
-
-48 p
-%%Page: 48 47
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-48)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-1 f
-976 762(section)N
-1223(entitled)X
-1483(``)X
-3 f
-1537(Startup)X
-1819(Information)X
-1 f
-2237('')X
-2311(for)X
-2425(more)X
-2610(information.)X
-3 f
-776 942(extended)N
-1103([off])X
-1 f
-976 1032(This)N
-1147(option)X
-1380(causes)X
-1619(all)X
-1728(regular)X
-1986(expressions)X
-2390(to)X
-2482(be)X
-2588(treated)X
-2837(as)X
-2934(POSIX)X
-3195(1003.2)X
-3445(Extended)X
-3778(Regular)X
-976 1122(Expressions)N
-1383(\(which)X
-1626(are)X
-1745(similar)X
-1987(to)X
-2069(historic)X
-2 f
-2329(egrep)X
-1 f
-2512(\(1\))X
-2626(style)X
-2797(expressions\).)X
-3 f
-776 1302(\257ash)N
-955([on])X
-1 f
-976 1392(This)N
-1139(option)X
-1364(causes)X
-1595(the)X
-1714(screen)X
-1941(to)X
-2025(\257ash)X
-2198(instead)X
-2447(of)X
-2536(beeping)X
-2812(the)X
-2932(keyboard,)X
-3273(on)X
-3375(error,)X
-3574(if)X
-3645(the)X
-3765(terminal)X
-976 1482(has)N
-1103(the)X
-1221(capability.)X
-3 f
-776 1662(hardtabs,)N
-1122(ht)X
-1213([8])X
-1 f
-976 1752(This)N
-1141(option)X
-1369(de\256nes)X
-1620(the)X
-1742(spacing)X
-2011(between)X
-2303(hardware)X
-2627(tab)X
-2749(settings,)X
-3037(i.e.)X
-3179(the)X
-3301(tab)X
-3423(expansion)X
-3772(done)X
-3952(by)X
-976 1842(the)N
-1099(operating)X
-1427(system)X
-1674(and/or)X
-1904(the)X
-2027(terminal)X
-2319(itself.)X
-2544(As)X
-3 f
-2658(nex)X
-1 f
-(/)S
-3 f
-2800(nvi)X
-1 f
-2931(never)X
-3135(writes)X
-7 f
-3355(<tab>)X
-1 f
-3619(characters)X
-3970(to)X
-976 1932(the)N
-1094(terminal,)X
-1401(unlike)X
-1621(historic)X
-1881(versions)X
-2168(of)X
-3 f
-2255(ex)X
-1 f
-2331(/)X
-3 f
-2353(vi)X
-1 f
-2415(,)X
-2455(this)X
-2590(option)X
-2814(does)X
-2981(not)X
-3103(currently)X
-3413(have)X
-3585(any)X
-3721(affect.)X
-3 f
-776 2112(ignorecase,)N
-1177(ic)X
-1255([off])X
-1 f
-976 2202(This)N
-1141(option)X
-1368(causes)X
-1602(regular)X
-1854(expressions,)X
-2272(both)X
-2438(in)X
-3 f
-2524(ex)X
-1 f
-2624(commands)X
-2995(and)X
-3135(in)X
-3221(searches,)X
-3538(to)X
-3624(be)X
-3724(evaluated)X
-976 2292(in)N
-1058(a)X
-1114(case-insensitive)X
-1642(manner.)X
-3 f
-776 2472(keytime)N
-1068([6])X
-1 f
-976 2562(The)N
-1121(10th's)X
-1341(of)X
-1428(a)X
-1484(second)X
-3 f
-1727(ex)X
-1 f
-1803(/)X
-3 f
-1825(vi)X
-1 f
-1907(waits)X
-2096(for)X
-2210(a)X
-2266(subsequent)X
-2642(key)X
-2778(to)X
-2860(complete)X
-3174(a)X
-3230(key)X
-3366(mapping.)X
-3 f
-776 2742(leftright)N
-1077([off])X
-976 2832(Vi)N
-1 f
-1083(only.)X
-1293(This)X
-1463(option)X
-1695(causes)X
-1933(the)X
-2059(screen)X
-2293(to)X
-2383(be)X
-2487(scrolled)X
-2769(left-right)X
-3082(to)X
-3172(view)X
-3356(lines)X
-3535(longer)X
-3768(than)X
-3934(the)X
-976 2922(screen,)N
-1232(instead)X
-1489(of)X
-1586(the)X
-1714(traditional)X
-3 f
-2073(vi)X
-1 f
-2165(screen)X
-2401(interface)X
-2713(which)X
-2939(folds)X
-3129(long)X
-3301(lines)X
-3482(at)X
-3570(the)X
-3698(right-hand)X
-976 3012(margin)N
-1223(of)X
-1310(the)X
-1428(terminal.)X
-3 f
-776 3192(lines,)N
-971(li)X
-1035([24])X
-976 3282(Vi)N
-1 f
-1076(only.)X
-1278(The)X
-1423(number)X
-1688(of)X
-1775(lines)X
-1946(in)X
-2028(the)X
-2146(screen.)X
-2412(Setting)X
-2658(this)X
-2793(option)X
-3017(causes)X
-3 f
-3247(ex)X
-1 f
-3323(/)X
-3 f
-3345(vi)X
-1 f
-3427(to)X
-3509(set)X
-3619(\(or)X
-3734(reset\))X
-3934(the)X
-976 3372(environmental)N
-1462(variable)X
-7 f
-1744(LINES)X
-1 f
-(.)S
-2047(See)X
-2186(the)X
-2307(section)X
-2557(entitled)X
-2820(``)X
-3 f
-2874(Sizing)X
-3105(the)X
-3235(Screen)X
-1 f
-3467('')X
-3544(for)X
-3661(more)X
-3849(infor-)X
-976 3462(mation.)N
-3 f
-776 3642(lisp)N
-915([off])X
-976 3732(Vi)N
-1 f
-1078(only.)X
-1282(This)X
-1447(option)X
-1674(changes)X
-1956(the)X
-2077(behavior)X
-2381(of)X
-2471(the)X
-3 f
-2592(vi)X
-2677(\()X
-1 f
-2704(,)X
-3 f
-2747(\))X
-1 f
-2774(,)X
-3 f
-2817({)X
-1 f
-2849(,)X
-3 f
-2892(})X
-1 f
-2924(,)X
-3 f
-2967([[)X
-1 f
-3044(and)X
-3 f
-3183(]])X
-1 f
-3260(commands)X
-3630(to)X
-3715(match)X
-3934(the)X
-976 3822(Lisp)N
-1138(language.)X
-1488(Also,)X
-1679(the)X
-3 f
-1797(autoindent)X
-1 f
-2185(option's)X
-2467(behavior)X
-2768(is)X
-2841(changed)X
-3129(to)X
-3211(be)X
-3307(appropriate)X
-3693(for)X
-3807(Lisp.)X
-2 f
-976 4002(This)N
-1133(option)X
-1357(is)X
-1430(not)X
-1552(yet)X
-1666(implemented.)X
-3 f
-776 4182(list)N
-898([off])X
-1 f
-976 4272(This)N
-1151(option)X
-1388(causes)X
-1631(lines)X
-1815(to)X
-1910(be)X
-2019(displayed)X
-2359(in)X
-2454(an)X
-2563(unambiguous)X
-3028(fashion.)X
-3338(Speci\256cally,)X
-3770(tabs)X
-3933(are)X
-976 4362(displayed)N
-1305(as)X
-1394(control)X
-1643(characters,)X
-2012(i.e.)X
-2152(``)X
-7 f
-2206(\303I)X
-1 f
-('',)S
-2398(and)X
-2536(the)X
-2656(ends)X
-2825(of)X
-2914(lines)X
-3087(are)X
-3207(marked)X
-3469(with)X
-3632(a)X
-3689(``)X
-7 f
-3743($)X
-1 f
-('')S
-3866(char-)X
-976 4452(acter.)N
-3 f
-776 4632(magic)N
-1001([on])X
-1 f
-976 4722(This)N
-1141(option)X
-1368(is)X
-1444(on)X
-1547(by)X
-1650(default.)X
-1936(Turning)X
-2217(the)X
-3 f
-2338(magic)X
-1 f
-2566(option)X
-2793(off)X
-2910(causes)X
-3143(all)X
-3247(regular)X
-3499(expression)X
-3866(char-)X
-976 4812(acters)N
-1189(except)X
-1423(for)X
-1541(``)X
-7 f
-1595(\303)X
-1 f
-('')S
-1721(and)X
-1861(``)X
-7 f
-1915($)X
-1 f
-('',)S
-2061(to)X
-2147(be)X
-2247(treated)X
-2490(as)X
-2581(ordinary)X
-2877(characters.)X
-3268(To)X
-3381(re-enable)X
-3705(characters)X
-976 4902(individually,)N
-1402(when)X
-1597(the)X
-3 f
-1716(magic)X
-1 f
-1942(option)X
-2167(is)X
-2241(off,)X
-2376(precede)X
-2648(them)X
-2829(with)X
-2992(a)X
-3049(backslash)X
-3382(``)X
-7 f
-3436(\\)X
-1 f
-('')S
-3559(character.)X
-3916(See)X
-976 4992(the)N
-1094(section)X
-1341(entitled)X
-1601(``)X
-3 f
-1655(Regular)X
-1951(Expressions)X
-2379(and)X
-2527(Replacement)X
-2993(Strings)X
-1 f
-3237('')X
-3311(for)X
-3425(more)X
-3610(information.)X
-3 f
-776 5172(matchtime)N
-1162([7])X
-976 5262(Vi)N
-1 f
-1078(only.)X
-1282(The)X
-1429(10th's)X
-1651(of)X
-1740(a)X
-1798(second)X
-3 f
-2043(ex)X
-1 f
-2119(/)X
-3 f
-2141(vi)X
-1 f
-2226(pauses)X
-2463(on)X
-2566(the)X
-2687(matching)X
-3008(character)X
-3327(when)X
-3524(the)X
-3 f
-3645(showmatch)X
-1 f
-976 5352(option)N
-1200(is)X
-1273(set.)X
-3 f
-776 5532(mesg)N
-970([on])X
-1 f
-976 5622(This)N
-1140(option)X
-1366(allows)X
-1597(other)X
-1784(users)X
-1972(to)X
-2057(contact)X
-2312(you)X
-2455(using)X
-2651(the)X
-2 f
-2772(talk)X
-1 f
-(\(1\))S
-3009(and)X
-2 f
-3148(write)X
-1 f
-3312(\(1\))X
-3429(utilities,)X
-3711(while)X
-3912(you)X
-976 5712(are)N
-1101(editing.)X
-3 f
-1389(Ex)X
-1 f
-1482(/)X
-3 f
-1504(vi)X
-1 f
-1592(does)X
-1764(not)X
-1891(turn)X
-2045(message)X
-2342(on,)X
-2467(i.e.)X
-2590(if)X
-2664(messages)X
-2992(were)X
-3174(turned)X
-3404(off)X
-3523(when)X
-3722(the)X
-3845(editor)X
-976 5802(was)N
-1124(invoked,)X
-1425(they)X
-1586(will)X
-1733(stay)X
-1885(turned)X
-2113(off.)X
-2270(This)X
-2435(option)X
-2662(only)X
-2827(permits)X
-3090(you)X
-3233(to)X
-3318(disallow)X
-3612(messages)X
-3938(for)X
-
-49 p
-%%Page: 49 48
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3658(USD:13-49)X
-1 f
-976 762(the)N
-1094(edit)X
-1234(session.)X
-1525(See)X
-1661(the)X
-2 f
-1779(mesg)X
-1 f
-1944(\(1\))X
-2058(utility)X
-2268(for)X
-2382(more)X
-2567(information.)X
-3 f
-776 942(modelines,)N
-1158(modeline)X
-1489([off])X
-1 f
-976 1032(If)N
-1052(the)X
-3 f
-1172(modelines)X
-1 f
-1536(option)X
-1762(is)X
-1837(set,)X
-3 f
-1968(ex)X
-1 f
-2044(/)X
-3 f
-2066(vi)X
-1 f
-2150(has)X
-2279(historically)X
-2661(scanned)X
-2942(the)X
-3062(\256rst)X
-3208(and)X
-3346(last)X
-3479(\256ve)X
-3621(lines)X
-3794(of)X
-3884(each)X
-976 1122(\256le)N
-1101(as)X
-1191(it)X
-1258(is)X
-1334(read)X
-1496(for)X
-1613(editing,)X
-1877(looking)X
-2143(for)X
-2259(any)X
-3 f
-2397(ex)X
-1 f
-2495(commands)X
-2864(that)X
-3006(have)X
-3180(been)X
-3354(placed)X
-3586(in)X
-3670(those)X
-3861(lines.)X
-976 1212(After)N
-1167(the)X
-1286(startup)X
-1525(information)X
-1924(has)X
-2052(been)X
-2225(processed,)X
-2583(and)X
-2720(before)X
-2947(the)X
-3066(user)X
-3221(starts)X
-3411(editing)X
-3654(the)X
-3773(\256le,)X
-3916(any)X
-976 1302(commands)N
-1343(embedded)X
-1693(in)X
-1775(the)X
-1893(\256le)X
-2015(are)X
-2134(executed.)X
-976 1482(Commands)N
-1362(were)X
-1541(recognized)X
-1916(by)X
-2018(the)X
-2138(letters)X
-2356(``e'')X
-2522(or)X
-2611(``v'')X
-2781(followed)X
-3088(by)X
-3191(``x'')X
-3362(or)X
-3452(``i'',)X
-3625(at)X
-3706(the)X
-3827(begin-)X
-976 1572(ning)N
-1144(of)X
-1237(a)X
-1299(line)X
-1445(or)X
-1538(following)X
-1875(a)X
-1937(tab)X
-2061(or)X
-2154(space)X
-2359(character,)X
-2701(and)X
-2843(followed)X
-3153(by)X
-3258(a)X
-3319(``:'',)X
-3494(an)X
-3 f
-3595(ex)X
-1 f
-3696(command,)X
-976 1662(and)N
-1112(another)X
-1373(``:''.)X
-976 1842(This)N
-1144(option)X
-1374(is)X
-1453(a)X
-1516(security)X
-1797(problem)X
-2091(of)X
-2185(immense)X
-2501(proportions,)X
-2917(and)X
-3060(should)X
-3300(not)X
-3429(be)X
-3532(used)X
-3706(under)X
-3916(any)X
-976 1932(circumstances.)N
-2 f
-976 2112(This)N
-1133(option)X
-1357(will)X
-1496(never)X
-1695(be)X
-1791(implemented.)X
-3 f
-776 2292(number,)N
-1087(nu)X
-1195([off])X
-1 f
-976 2382(Precede)N
-1251(each)X
-1419(line)X
-1559(displayed)X
-1886(with)X
-2048(its)X
-2143(current)X
-2391(line)X
-2531(number.)X
-3 f
-776 2562(octal)N
-961([off])X
-1 f
-976 2652(Display)N
-1245(unknown)X
-1563(characters)X
-1910(as)X
-1997(octal)X
-2173(numbers,)X
-2489(instead)X
-2736(of)X
-2823(the)X
-2941(default)X
-3184(hexadecimal.)X
-3 f
-776 2832(open)N
-960([on])X
-976 2922(Ex)N
-1 f
-1089(only.)X
-1291(If)X
-1365(this)X
-1500(option)X
-1724(is)X
-1797(not)X
-1919(set,)X
-2048(the)X
-3 f
-2166(open)X
-1 f
-2350(and)X
-3 f
-2486(visual)X
-1 f
-2705(commands)X
-3072(are)X
-3191(disallowed.)X
-3 f
-776 3102(optimize,)N
-1110(opt)X
-1241([on])X
-976 3192(Vi)N
-1 f
-1081(only.)X
-1288(Throughput)X
-1691(of)X
-1783(text)X
-1929(is)X
-2008(expedited)X
-2346(by)X
-2452(setting)X
-2691(the)X
-2815(terminal)X
-3108(not)X
-3236(to)X
-3324(do)X
-3430(automatic)X
-3772(carriage)X
-976 3282(returns)N
-1222(when)X
-1419(printing)X
-1695(more)X
-1883(than)X
-2044(one)X
-2183(\(logical\))X
-2478(line)X
-2621(of)X
-2710(output,)X
-2956(greatly)X
-3201(speeding)X
-3508(output)X
-3734(on)X
-3836(termi-)X
-976 3372(nals)N
-1125(without)X
-1389(addressable)X
-1784(cursors)X
-2036(when)X
-2230(text)X
-2370(with)X
-2532(leading)X
-2788(white)X
-2986(space)X
-3185(is)X
-3258(printed.)X
-2 f
-976 3552(This)N
-1133(option)X
-1357(is)X
-1430(not)X
-1552(yet)X
-1666(implemented.)X
-3 f
-776 3732(paragraphs,)N
-1211(para)X
-1391([IPLPPPQPP)X
-1878 -0.3625(LIpplpipbp])AX
-976 3822(Vi)N
-1 f
-1079(only.)X
-1284(De\256ne)X
-1521(additional)X
-1864(paragraph)X
-2209(boundaries)X
-2584(for)X
-2701(the)X
-3 f
-2822({)X
-1 f
-2877(and)X
-3 f
-3016(})X
-1 f
-3071(commands.)X
-3481(The)X
-3629(value)X
-3826(of)X
-3917(this)X
-976 3912(option)N
-1200(must)X
-1375(be)X
-1471(a)X
-1527(character)X
-1843(string)X
-2045(consisting)X
-2389(of)X
-2476(zero)X
-2635(or)X
-2722(more)X
-2907(character)X
-3223(pairs.)X
-976 4092(In)N
-1070(the)X
-1195(text)X
-1342(to)X
-1431(be)X
-1534(edited,)X
-1777(the)X
-1902(character)X
-2226(string)X
-7 f
-2436(<newline>.<char-pair>)X
-1 f
-(,)S
-3492(\(where)X
-7 f
-3744(<char-)X
-976 4182(pair>)N
-1 f
-1241(is)X
-1319(one)X
-1460(of)X
-1552(the)X
-1675(character)X
-1996(pairs)X
-2177(in)X
-2264(the)X
-2386(option's)X
-2672(value\))X
-2897(de\256nes)X
-3148(a)X
-3208(paragraph)X
-3554(boundary.)X
-3921(For)X
-976 4272(example,)N
-1291(if)X
-1363(the)X
-1484(option)X
-1711(were)X
-1891(set)X
-2003(to)X
-7 f
-2088(LaA<space>##)X
-1 f
-(,)S
-2708(then)X
-2870(all)X
-2974(of)X
-3065(the)X
-3187(following)X
-3522(additional)X
-3866(para-)X
-976 4362(graph)N
-1179(boundaries)X
-1551(would)X
-1771(be)X
-1867(recognized:)X
-1296 4575(<newline>.La)N
-1296 4665(<newline>.A<space>)N
-1296 4755(<newline>.##)N
-3 f
-776 4968(prompt)N
-1054([on])X
-976 5058(Ex)N
-1 f
-1090(only.)X
-1293(This)X
-1456(option)X
-1681(causes)X
-3 f
-1912(ex)X
-1 f
-2009(to)X
-2092(prompt)X
-2344(for)X
-2459(command)X
-2796(input)X
-2981(with)X
-3144(a)X
-3201(``)X
-7 f
-3255(:)X
-1 f
-('')S
-3378(character;)X
-3717(when)X
-3913(it)X
-3979(is)X
-976 5148(not)N
-1098(set,)X
-1227(no)X
-1327(prompt)X
-1578(is)X
-1651(displayed.)X
-3 f
-776 5328(readonly,)N
-1118(ro)X
-1214([off])X
-1 f
-976 5418(This)N
-1138(option)X
-1362(causes)X
-1592(a)X
-1648(force)X
-1834(\257ag)X
-1974(to)X
-2056(be)X
-2152(required)X
-2440(to)X
-2522(attempt)X
-2782(to)X
-2864(write)X
-3049(the)X
-3167(\256le)X
-3289(back)X
-3461(to)X
-3543(the)X
-3661(original)X
-3930(\256le)X
-976 5508(name.)N
-1215(Setting)X
-1466(this)X
-1605(option)X
-1833(is)X
-1910(equivalent)X
-2268(to)X
-2354(using)X
-2551(the)X
-3 f
-9 f
-2673(-)X
-2675(-)X
-3 f
-2719(R)X
-1 f
-2801(command)X
-3141(line)X
-3285(option,)X
-3533(or)X
-3624(editing)X
-3870(a)X
-3930(\256le)X
-976 5598(which)N
-1192(lacks)X
-1377(write)X
-1562(permission.)X
-
-50 p
-%%Page: 50 49
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-50)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-776 762(recdir)N
-1006([/var/tmp/vi.recover])X
-1 f
-976 852(The)N
-1121(directory)X
-1431(where)X
-1648(recovery)X
-1950(\256les)X
-2103(are)X
-2222(stored.)X
-976 1032(If)N
-1051(you)X
-1192(change)X
-1441(the)X
-1561(value)X
-1757(of)X
-3 f
-1846(recdir)X
-1 f
-2056(,)X
-2098(be)X
-2196(careful)X
-2442(to)X
-2526(choose)X
-2771(a)X
-2829(directory)X
-3141(whose)X
-3368(contents)X
-3657(are)X
-3778(not)X
-3902(reg-)X
-976 1122(ularly)N
-1197(deleted.)X
-1503(Bad)X
-1666(choices)X
-1941(include)X
-2211(directories)X
-2584(in)X
-2680(memory)X
-2981(based)X
-3198(\256lesystems,)X
-3607(or)X
-7 f
-3707(/tmp)X
-1 f
-(,)S
-3952(on)X
-976 1212(most)N
-1151(systems,)X
-1444(as)X
-1531(their)X
-1698(contents)X
-1985(are)X
-2104(removed)X
-2405(when)X
-2599(the)X
-2717(machine)X
-3009(is)X
-3082(rebooted.)X
-976 1392(Public)N
-1219(directories)X
-1597(like)X
-7 f
-1757(/usr/tmp)X
-1 f
-2181(and)X
-7 f
-2337(/var/tmp)X
-1 f
-2761(are)X
-2900(usually)X
-3171(safe,)X
-3361(although)X
-3681(some)X
-3890(sites)X
-976 1482(periodically)N
-1387(prune)X
-1598(old)X
-1728(\256les)X
-1889(from)X
-2073(them.)X
-2301(There)X
-2517(is)X
-2598(no)X
-2706(requirement)X
-3122(that)X
-3270(you)X
-3418(use)X
-3553(a)X
-3617(public)X
-3844(direc-)X
-976 1572(tory,)N
-1145(e.g.)X
-1281(a)X
-1337(sub-directory)X
-1785(of)X
-1872(your)X
-2039(home)X
-2237(directory)X
-2547(will)X
-2691(work)X
-2876(\256ne.)X
-976 1752(Finally,)N
-1248(if)X
-1323(you)X
-1469(change)X
-1723(the)X
-1847(value)X
-2047(of)X
-3 f
-2140(recdir)X
-1 f
-2350(,)X
-2396(you)X
-2542(must)X
-2723(modify)X
-2980(the)X
-3104(recovery)X
-3412(script)X
-3617(to)X
-3706(operate)X
-3970(in)X
-976 1842(your)N
-1143(chosen)X
-1386(recovery)X
-1688(area.)X
-976 2022(See)N
-1112(the)X
-1230(section)X
-1477(entitled)X
-1737(``)X
-3 f
-1791(Recovery)X
-1 f
-2113('')X
-2187(for)X
-2301(further)X
-2540(information.)X
-3 f
-776 2202(redraw,)N
-1066(re)X
-1158([off])X
-976 2292(Vi)N
-1 f
-1087(only.)X
-1301(The)X
-1458(editor)X
-1677(simulates)X
-2011(\(using)X
-2243(great)X
-2436(amounts)X
-2739(of)X
-2838(output\),)X
-3121(an)X
-3229(intelligent)X
-3585(terminal)X
-3884(on)X
-3996(a)X
-976 2382(dumb)N
-1200(terminal)X
-1509(\(e.g.)X
-1694(during)X
-1945(insertions)X
-2297(in)X
-3 f
-2400(vi)X
-1 f
-2503(the)X
-2642(characters)X
-3010(to)X
-3113(the)X
-3252(right)X
-3444(of)X
-3552(the)X
-3691(cursor)X
-3933(are)X
-976 2472(refreshed)N
-1296(as)X
-1383(each)X
-1551(input)X
-1735(character)X
-2051(is)X
-2124(typed\).)X
-2 f
-976 2652(This)N
-1133(option)X
-1357(is)X
-1430(not)X
-1552(yet)X
-1666(implemented.)X
-3 f
-776 2832(remap)N
-1019([on])X
-1 f
-976 2922(If)N
-1055(this)X
-1195(option)X
-1424(is)X
-1502(set,)X
-1636(it)X
-1705(is)X
-1783(possible)X
-2070(to)X
-2157(de\256ne)X
-2378(macros)X
-2635(in)X
-2722(terms)X
-2926(of)X
-3019(other)X
-3210(macros.)X
-3508(Otherwise,)X
-3884(each)X
-976 3012(key)N
-1121(is)X
-1203(only)X
-1374(remapped)X
-1720(up)X
-1829(to)X
-1920(one)X
-2064(time.)X
-2274(For)X
-2413(example,)X
-2733(if)X
-2810(``)X
-7 f
-2864(A)X
-1 f
-('')S
-2994(is)X
-3075(mapped)X
-3357(to)X
-3447(``)X
-7 f
-3501(B)X
-1 f
-('',)S
-3651(and)X
-3795(``)X
-7 f
-3849(B)X
-1 f
-('')S
-3979(is)X
-976 3102(mapped)N
-1251(to)X
-1334(``)X
-7 f
-1388(C)X
-1 f
-('',)S
-1531(The)X
-1677(keystroke)X
-2010(``)X
-7 f
-2064(A)X
-1 f
-('')S
-2187(will)X
-2332(be)X
-2429(mapped)X
-2704(to)X
-2787(``)X
-7 f
-2841(C)X
-1 f
-('')S
-2964(if)X
-3035(the)X
-3 f
-3155(remap)X
-1 f
-3400(option)X
-3626(is)X
-3701(set,)X
-3832(and)X
-3970(to)X
-976 3192(``)N
-7 f
-1030(B)X
-1 f
-('')S
-1152(if)X
-1221(it)X
-1285(is)X
-1358(not)X
-1480(set.)X
-3 f
-776 3372(report)N
-1015([5])X
-1 f
-976 3462(Set)N
-1103(the)X
-1226(threshold)X
-1549(of)X
-1642(the)X
-1766(number)X
-2037(of)X
-2130(lines)X
-2307(that)X
-2453(need)X
-2631(to)X
-2719(be)X
-2821(changed)X
-3115(or)X
-3208(yanked)X
-3466(before)X
-3698(a)X
-3760(message)X
-976 3552(will)N
-1127(be)X
-1230(displayed)X
-1564(to)X
-1653(the)X
-1778(user.)X
-1979(For)X
-2117(everything)X
-2487(but)X
-2616(the)X
-2741(yank)X
-2924(command,)X
-3287(the)X
-3412(value)X
-3613(is)X
-3693(the)X
-3818(largest)X
-976 3642(value)N
-1172(about)X
-1372(which)X
-1590(the)X
-1711(editor)X
-1921(is)X
-1997(silent,)X
-2213(i.e.)X
-2334(by)X
-2437(default,)X
-2703(6)X
-2766(lines)X
-2940(must)X
-3118(be)X
-3217(deleted)X
-3472(before)X
-3701(the)X
-3822(user)X
-3979(is)X
-976 3732(noti\256ed.)N
-1283(However,)X
-1621(if)X
-1693(the)X
-1814(number)X
-2082(of)X
-2172(lines)X
-2346(yanked)X
-2601(is)X
-2677(greater)X
-2924(than)X
-2 f
-3085(or)X
-3179(equal)X
-3380(to)X
-1 f
-3465(the)X
-3586(set)X
-3697(value,)X
-3913(it)X
-3979(is)X
-976 3822(reported)N
-1264(to)X
-1346(the)X
-1464(user.)X
-3 f
-776 4002(ruler)N
-970([off])X
-976 4092(Vi)N
-1 f
-1076(only.)X
-1278(Display)X
-1547(a)X
-1603(row/column)X
-2010(ruler)X
-2182(on)X
-2282(the)X
-2400(colon)X
-2598(command)X
-2934(line.)X
-3 f
-776 4272(scroll,)N
-1003(scr)X
-1126([window)X
-1439(/)X
-1481(2])X
-1 f
-976 4362(Set)N
-1098(the)X
-1216(number)X
-1481(of)X
-1568(lines)X
-1739(scrolled)X
-2013(by)X
-2113(the)X
-3 f
-2231(vi)X
-2313(<control-D>)X
-1 f
-2755(and)X
-3 f
-2891(<control-U>)X
-1 f
-3333(commands.)X
-976 4542(Historically,)N
-1395(the)X
-3 f
-1514(ex)X
-1611(z)X
-1 f
-1668(command,)X
-2025(when)X
-2221(speci\256ed)X
-2528(without)X
-2794(a)X
-2852(count,)X
-3072(used)X
-3241(two)X
-3383(times)X
-3578(the)X
-3698(size)X
-3845(of)X
-3934(the)X
-976 4632(scroll)N
-1174(value;)X
-1390(the)X
-1508(POSIX)X
-1759(1003.2)X
-1999(standard)X
-2291(speci\256ed)X
-2596(the)X
-2714(window)X
-2992(size,)X
-3157(which)X
-3373(is)X
-3446(a)X
-3502(better)X
-3705(choice.)X
-3 f
-776 4812(sections,)N
-1083(sect)X
-1233([NHSHH)X
-1568(HUnhsh])X
-976 4902(Vi)N
-1 f
-1076(only.)X
-1278(De\256ne)X
-1512(additional)X
-1852(section)X
-2099(boundaries)X
-2471(for)X
-2585(the)X
-3 f
-2703([[)X
-1 f
-2777(and)X
-3 f
-2913(]])X
-1 f
-2987(commands.)X
-3394(The)X
-3 f
-3540(sections)X
-1 f
-3828(option)X
-976 4992(should)N
-1213(be)X
-1313(set)X
-1426(to)X
-1512(a)X
-1572(character)X
-1892(string)X
-2098(consisting)X
-2446(of)X
-2537(zero)X
-2700(or)X
-2791(more)X
-2979(character)X
-3298(pairs.)X
-3517(In)X
-3607(the)X
-3728(text)X
-3871(to)X
-3956(be)X
-976 5082(edited,)N
-1219(the)X
-1344(character)X
-1667(string)X
-7 f
-1876(<newline>.<char-pair>)X
-1 f
-(,)S
-2932(\(where)X
-7 f
-3184(<char-pair>)X
-1 f
-3740(is)X
-3821(one)X
-3965(of)X
-976 5172(the)N
-1100(character)X
-1422(pairs)X
-1604(in)X
-1692(the)X
-1816(option's)X
-2104(value\),)X
-2351(de\256nes)X
-2604(a)X
-2666(section)X
-2918(boundary)X
-3246(in)X
-3333(the)X
-3456(same)X
-3646(manner)X
-3912(that)X
-3 f
-976 5262(paragraph)N
-1 f
-1360(option)X
-1584(boundaries)X
-1956(are)X
-2075(de\256ned.)X
-3 f
-776 5442(shell,)N
-971(sh)X
-1066([environment)X
-1549(variable)X
-1849(SHELL,)X
-2154(or)X
-2250(/bin/sh])X
-1 f
-976 5532(Select)N
-1195(the)X
-1316(shell)X
-1490(used)X
-1660(by)X
-1763(the)X
-1884(editor.)X
-2134(The)X
-2282(speci\256ed)X
-2590(path)X
-2751(is)X
-2827(the)X
-2948(pathname)X
-3283(of)X
-3373(the)X
-3495(shell)X
-3670(invoked)X
-3952(by)X
-976 5622(the)N
-3 f
-1103(vi)X
-1194(!)X
-1 f
-1270(shell)X
-1450(escape)X
-1694(command)X
-2038(and)X
-2182(by)X
-2290(the)X
-3 f
-2416(ex)X
-2520(shell)X
-1 f
-2703(command.)X
-3087(This)X
-3257(program)X
-3557(is)X
-3638(also)X
-3795(used)X
-3970(to)X
-976 5712(resolve)N
-1228(any)X
-1364(shell)X
-1535 0.2679(meta-characters)AX
-2065(in)X
-3 f
-2147(ex)X
-1 f
-2243(commands.)X
-
-51 p
-%%Page: 51 50
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3658(USD:13-51)X
-776 762(shiftwidth,)N
-1162(sw)X
-1271([8])X
-1 f
-976 852(Set)N
-1098(the)X
-1216(autoindent)X
-1575(and)X
-1712(shift)X
-1875(command)X
-2212(indentation)X
-2593(width.)X
-2836(This)X
-2999(width)X
-3202(is)X
-3276(used)X
-3444(by)X
-3545(the)X
-3 f
-3664(autoindent)X
-1 f
-976 942(option)N
-1200(and)X
-1336(by)X
-1436(the)X
-3 f
-1554(<)X
-1 f
-1600(,)X
-3 f
-1640(>)X
-1 f
-1686(,)X
-1726(and)X
-3 f
-1862(shift)X
-1 f
-2033(commands.)X
-3 f
-776 1122(showdirty)N
-1138([off])X
-976 1212(Vi)N
-1 f
-1076(only.)X
-1278(Display)X
-1547(an)X
-1643(asterisk)X
-1908(on)X
-2008(the)X
-2126(colon)X
-2324(command)X
-2660(line)X
-2800(if)X
-2869(the)X
-2987(\256le)X
-3109(has)X
-3236(been)X
-3408(modi\256ed.)X
-3 f
-776 1392(showmatch,)N
-1203(sm)X
-1321([off])X
-976 1482(Vi)N
-1 f
-1078(only.)X
-1282(This)X
-1446(option)X
-1673(causes)X
-3 f
-1906(vi)X
-1 f
-1968(,)X
-2011(when)X
-2208(a)X
-2267(``)X
-7 f
-2321(})X
-1 f
-('')S
-2446(or)X
-2536(``)X
-7 f
-2590(\))X
-1 f
-('')S
-2715(is)X
-2791(entered,)X
-3071(to)X
-3156(brie\257y)X
-3388(move)X
-3589(the)X
-3710(cursor)X
-3934(the)X
-976 1572(matching)N
-1294(``)X
-7 f
-1348({)X
-1 f
-('')S
-1470(or)X
-1557(``)X
-7 f
-1611(\()X
-1 f
-(''.)S
-1773(See)X
-1909(the)X
-3 f
-2027(matchtime)X
-1 f
-2413(option)X
-2637(for)X
-2751(more)X
-2936(information.)X
-3 f
-776 1752(showmode)N
-1156([off])X
-976 1842(Vi)N
-1 f
-1083(only.)X
-1292(This)X
-1461(option)X
-1693(causes)X
-3 f
-1931(vi)X
-1 f
-2021(to)X
-2111(display)X
-2370(a)X
-2434(string)X
-2644(identifying)X
-3023(the)X
-3149(current)X
-3405(editor)X
-3620(mode)X
-3826(on)X
-3934(the)X
-976 1932(colon)N
-1174(command)X
-1510(line.)X
-3 f
-776 2112(sidescroll)N
-1116([16])X
-976 2202(Vi)N
-1 f
-1078(only.)X
-1282(Sets)X
-1437(the)X
-1557(number)X
-1825(of)X
-1915(columns)X
-2209(that)X
-2352(are)X
-2474(shifted)X
-2715(to)X
-2800(the)X
-2921(left)X
-3051(or)X
-3141(right,)X
-3335(when)X
-3 f
-3532(vi)X
-1 f
-3617(is)X
-3693(doing)X
-3898(left-)X
-976 2292(right)N
-1151(scrolling)X
-1455(and)X
-1595(the)X
-1717(left)X
-1848(or)X
-1939(right)X
-2114(margin)X
-2365(is)X
-2442(crossed.)X
-2747(See)X
-2887(the)X
-3 f
-3009(leftright)X
-1 f
-3314(option)X
-3542(for)X
-3660(more)X
-3849(infor-)X
-976 2382(mation.)N
-3 f
-776 2562(slowopen,)N
-1131(slow)X
-1302([off])X
-1 f
-976 2652(This)N
-1141(option)X
-1368(affects)X
-1606(the)X
-1727(display)X
-1981(algorithm)X
-2315(used)X
-2485(by)X
-3 f
-2588(vi)X
-1 f
-2650(,)X
-2693(holding)X
-2960(off)X
-3077(display)X
-3331(updating)X
-3635(during)X
-3868(input)X
-976 2742(of)N
-1063(new)X
-1217(text)X
-1357(to)X
-1439(improve)X
-1726(throughput)X
-2097(when)X
-2291(the)X
-2409(terminal)X
-2696(in)X
-2778(use)X
-2905(is)X
-2978(slow)X
-3149(and)X
-3285(unintelligent.)X
-2 f
-976 2922(This)N
-1133(option)X
-1357(is)X
-1430(not)X
-1552(yet)X
-1666(implemented.)X
-3 f
-776 3102(sourceany)N
-1143([off])X
-1 f
-976 3192(If)N
-1054(this)X
-1193(option)X
-1421(is)X
-1498(turned)X
-1727(on,)X
-3 f
-1851(vi)X
-1 f
-1937(historically)X
-2321(read)X
-2485(startup)X
-2728(\256les)X
-2886(that)X
-3031(were)X
-3213(owned)X
-3452(by)X
-3557(someone)X
-3867(other)X
-976 3282(than)N
-1142(the)X
-1268(editor)X
-1483(user.)X
-1685(See)X
-1829(the)X
-1955(section)X
-2210(entitled)X
-2478(``)X
-3 f
-2532(Startup)X
-2822(Information)X
-1 f
-3240('')X
-3321(for)X
-3442(more)X
-3634(information.)X
-976 3372(This)N
-1144(option)X
-1374(is)X
-1453(a)X
-1516(security)X
-1797(problem)X
-2091(of)X
-2185(immense)X
-2501(proportions,)X
-2917(and)X
-3060(should)X
-3300(not)X
-3429(be)X
-3532(used)X
-3706(under)X
-3916(any)X
-976 3462(circumstances.)N
-2 f
-976 3642(This)N
-1133(option)X
-1357(will)X
-1496(never)X
-1695(be)X
-1791(implemented.)X
-3 f
-776 3822(tabstop,)N
-1069(ts)X
-1147([8])X
-1 f
-976 3912(This)N
-1138(option)X
-1362(sets)X
-1502(tab)X
-1620(widths)X
-1853(for)X
-1967(the)X
-2085(editor)X
-2292(display.)X
-3 f
-776 4092(taglength,)N
-1136(tl)X
-1205([0])X
-1 f
-976 4182(This)N
-1148(option)X
-1383(sets)X
-1534(the)X
-1663(maximum)X
-2018(number)X
-2294(of)X
-2392(characters)X
-2750(that)X
-2901(are)X
-3031(considered)X
-3410(signi\256cant)X
-3774(in)X
-3867(a)X
-3934(tag)X
-976 4272(name.)N
-1210(Setting)X
-1456(the)X
-1574(value)X
-1768(to)X
-1850(0)X
-1910(makes)X
-2135(all)X
-2235(of)X
-2322(the)X
-2440(characters)X
-2787(in)X
-2869(the)X
-2987(tag)X
-3105(name)X
-3299(signi\256cant.)X
-3 f
-776 4452(tags,)N
-954(tag)X
-1081([tags)X
-1266(/var/db/libc.tags)X
-1838(/sys/kern/tags])X
-1 f
-976 4542(Sets)N
-1129(the)X
-1247(list)X
-1364(of)X
-1451(tags)X
-1600(\256les,)X
-1773(in)X
-1855(search)X
-2081(order,)X
-2291(which)X
-2507(are)X
-2626(used)X
-2793(when)X
-2987(the)X
-3105(editor)X
-3312(searches)X
-3605(for)X
-3719(a)X
-3775(tag.)X
-3 f
-776 4722(term,)N
-982(ttytype,)X
-1263(tty)X
-1377([environment)X
-1860(variable)X
-2160(TERM])X
-1 f
-976 4812(Set)N
-1101(the)X
-1223(terminal)X
-1514(type.)X
-1716(Setting)X
-1966(this)X
-2105(option)X
-2333(causes)X
-3 f
-2567(ex)X
-1 f
-2643(/)X
-3 f
-2665(vi)X
-1 f
-2751(to)X
-2837(set)X
-2950(\(or)X
-3068(reset\))X
-3271(the)X
-3393(environmental)X
-3880(vari-)X
-976 4902(able)N
-7 f
-1130(TERM)X
-1 f
-(.)S
-3 f
-776 5082(terse)N
-962([off])X
-1 f
-976 5172(This)N
-1142(option)X
-1370(has)X
-1501(historically)X
-1885(made)X
-2083(editor)X
-2294(messages)X
-2621(less)X
-2765(verbose.)X
-3079(It)X
-3152(has)X
-3283(no)X
-3387(effect)X
-3596(in)X
-3683(this)X
-3823(imple-)X
-976 5262(mentation.)N
-1356(See)X
-1492(the)X
-3 f
-1610(verbose)X
-1 f
-1893(option)X
-2117(for)X
-2231(more)X
-2416(information.)X
-3 f
-776 5442(tildeop)N
-1 f
-976 5532(Modify)N
-1236(the)X
-3 f
-1354(\304)X
-1 f
-1401(command)X
-1737(to)X
-1819(take)X
-1973(an)X
-2069(associated)X
-2419(motion.)X
-3 f
-776 5712(timeout,)N
-1079(to)X
-1166([on])X
-1 f
-976 5802(If)N
-1057(this)X
-1199(option)X
-1431(is)X
-1512(set,)X
-3 f
-1649(ex)X
-1 f
-1725(/)X
-3 f
-1747(vi)X
-1 f
-1837(waits)X
-2034(for)X
-2156(a)X
-2220(speci\256c)X
-2493(period)X
-2726(for)X
-2848(a)X
-2912(subsequent)X
-3296(key)X
-3440(to)X
-3530(complete)X
-3852(a)X
-3916(key)X
-
-52 p
-%%Page: 52 51
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-52)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-1 f
-976 762(mapping)N
-1282(\(see)X
-1438(the)X
-3 f
-1561(keytime)X
-1 f
-1858(option\).)X
-2154(If)X
-2233(the)X
-2356(option)X
-2585(is)X
-2663(not)X
-2790(set,)X
-2924(the)X
-3047(editor)X
-3259(waits)X
-3453(until)X
-3624(enough)X
-3885(keys)X
-976 852(are)N
-1095(entered)X
-1352(to)X
-1434(resolve)X
-1686(the)X
-1804(ambiguity,)X
-2168(regardless)X
-2514(of)X
-2601(how)X
-2759(long)X
-2921(it)X
-2985(takes.)X
-3 f
-776 1032(ttywerase)N
-1127([off])X
-976 1122(Vi)N
-1 f
-1082(only.)X
-1290(This)X
-1458(option)X
-1688(changes)X
-1973(how)X
-3 f
-2137(vi)X
-1 f
-2225(does)X
-2398(word)X
-2589(erase)X
-2781(during)X
-3016(text)X
-3162(input.)X
-3392(If)X
-3472(this)X
-3613(option)X
-3843(is)X
-3923(set,)X
-976 1212(text)N
-1123(is)X
-1203(broken)X
-1452(up)X
-1558(into)X
-1708(two)X
-1854(classes,)X
-2123(blank)X
-2327(characters)X
-2680(and)X
-2822(nonblank)X
-3146(characters.)X
-3539(Changing)X
-3876(from)X
-976 1302(one)N
-1112(class)X
-1288(to)X
-1370(another)X
-1631(marks)X
-1847(the)X
-1965(end)X
-2101(of)X
-2188(a)X
-2244(word.)X
-3 f
-776 1482(verbose)N
-1059([off])X
-976 1572(Vi)N
-1 f
-1078(only.)X
-3 f
-1282(Vi)X
-1 f
-1384(historically)X
-1766(bells)X
-1939(the)X
-2059(terminal)X
-2348(for)X
-2464(many)X
-2665(obvious)X
-2941(mistakes,)X
-3264(e.g.)X
-3403(trying)X
-3617(to)X
-3702(move)X
-3903(past)X
-976 1662(the)N
-1108(left-hand)X
-1432(margin,)X
-1713(or)X
-1814(past)X
-1977(the)X
-2109(end)X
-2259(of)X
-2360(the)X
-2492(\256le.)X
-2668(If)X
-2756(this)X
-2905(option)X
-3143(is)X
-3230(set,)X
-3373(an)X
-3483(error)X
-3674(message)X
-3979(is)X
-976 1752(displayed)N
-1303(for)X
-1417(all)X
-1517(errors.)X
-3 f
-776 1932(w300)N
-974([no)X
-1105(default])X
-976 2022(Vi)N
-1 f
-1080(only.)X
-1286(Set)X
-1412(the)X
-1534(window)X
-1816(size)X
-1965(if)X
-2038(the)X
-2160(baud)X
-2340(rate)X
-2485(is)X
-2562(less)X
-2706(than)X
-2868(1200)X
-3052(baud.)X
-3273(See)X
-3414(the)X
-3 f
-3537(window)X
-1 f
-3828(option)X
-976 2112(for)N
-1090(more)X
-1275(information.)X
-3 f
-776 2292(w1200)N
-1014([no)X
-1145(default])X
-976 2382(Vi)N
-1 f
-1081(only.)X
-1288(Set)X
-1415(the)X
-1538(window)X
-1821(size)X
-1971(if)X
-2045(the)X
-2168(baud)X
-2349(rate)X
-2495(is)X
-2574(equal)X
-2774(to)X
-2862(1200)X
-3048(baud.)X
-3270(See)X
-3412(the)X
-3 f
-3536(window)X
-1 f
-3828(option)X
-976 2472(for)N
-1090(more)X
-1275(information.)X
-3 f
-776 2652(w9600)N
-1014([no)X
-1145(default])X
-976 2742(Vi)N
-1 f
-1087(only.)X
-1300(Set)X
-1433(the)X
-1562(window)X
-1851(size)X
-2007(if)X
-2087(the)X
-2216(baud)X
-2404(rate)X
-2557(is)X
-2642(greater)X
-2898(than)X
-3068(1200)X
-3260(baud.)X
-3488(See)X
-3636(the)X
-3 f
-3766(window)X
-1 f
-976 2832(option)N
-1200(for)X
-1314(more)X
-1499(information.)X
-3 f
-776 3012(warn)N
-974([on])X
-976 3102(Ex)N
-1 f
-1094(only.)X
-1302(This)X
-1470(option)X
-1700(causes)X
-1936(a)X
-1998(warning)X
-2287(message)X
-2585(to)X
-2673(the)X
-2797(terminal)X
-3090(if)X
-3165(the)X
-3289(\256le)X
-3417(has)X
-3550(been)X
-3728(modi\256ed,)X
-976 3192(since)N
-1161(it)X
-1225(was)X
-1370(last)X
-1501(written,)X
-1768(before)X
-1994(a)X
-3 f
-2050(!)X
-1 f
-2117(command.)X
-3 f
-776 3372(window,)N
-1082(w,)X
-1180(wi)X
-1280([environment)X
-1763(variable)X
-2063(LINES])X
-1 f
-976 3462(This)N
-1148(option)X
-1382(determines)X
-1764(the)X
-1892(default)X
-2145(number)X
-2420(of)X
-2517(lines)X
-2698(in)X
-2791(a)X
-2858(screenful,)X
-3204(as)X
-3302(written)X
-3560(by)X
-3671(the)X
-3 f
-3800(z)X
-1 f
-3867(com-)X
-976 3552(mand.)N
-1221(It)X
-1297(also)X
-1453(determines)X
-1832(the)X
-1957(number)X
-2229(of)X
-2323(lines)X
-2501(scrolled)X
-2782(by)X
-2889(the)X
-3 f
-3014(vi)X
-1 f
-3103(commands)X
-3 f
-3477(<control-F>)X
-1 f
-3916(and)X
-3 f
-976 3642(<control-B>)N
-1 f
-1393(.)X
-1457(The)X
-1606(value)X
-1804(of)X
-1895(window)X
-2177(can)X
-2313(be)X
-2413(unrelated)X
-2736(to)X
-2822(the)X
-2944(real)X
-3089(screen)X
-3319(size,)X
-3489(although)X
-3794(it)X
-3863(starts)X
-976 3732(out)N
-1110(as)X
-1209(the)X
-1338(number)X
-1614(of)X
-1712(lines)X
-1894(on)X
-2005(the)X
-2134(screen)X
-2371(\(see)X
-2532(the)X
-2661(section)X
-2919(entitled)X
-3190(``)X
-3 f
-3244(Sizing)X
-3483(the)X
-3621(Screen)X
-1 f
-3853('')X
-3938(for)X
-976 3822(more)N
-1165(information\).)X
-1634(Setting)X
-1884(the)X
-2006(value)X
-2204(of)X
-2295(the)X
-3 f
-2417(window)X
-1 f
-2707(option)X
-2935(is)X
-3012(the)X
-3135(same)X
-3325(as)X
-3417(using)X
-3615(the)X
-3 f
-9 f
-3738(-)X
-3740(-)X
-3 f
-3784(w)X
-1 f
-3867(com-)X
-976 3912(mand)N
-1174(line)X
-1314(option.)X
-976 4092(If)N
-1055(the)X
-1178(value)X
-1377(of)X
-1469(the)X
-3 f
-1592(window)X
-1 f
-1883(option)X
-2112(\(as)X
-2231(set)X
-2345(by)X
-2450(the)X
-3 f
-2574(window)X
-1 f
-2840(,)X
-3 f
-2886(w300)X
-1 f
-3064(,)X
-3 f
-3110(w1200)X
-1 f
-3354(or)X
-3 f
-3447(w9600)X
-1 f
-3691(options\))X
-3979(is)X
-976 4182(smaller)N
-1233(than)X
-1391(the)X
-1509(actual)X
-1721(size)X
-1866(of)X
-1953(the)X
-2071(screen,)X
-2317(large)X
-2498(screen)X
-2724(movements)X
-3113(will)X
-3257(result)X
-3455(in)X
-3537(displaying)X
-3890(only)X
-976 4272(that)N
-1116(smaller)X
-1373(number)X
-1639(of)X
-1727(lines)X
-1899(on)X
-2000(the)X
-2119(screen.)X
-2386(\(Further)X
-2670(movements)X
-3060(in)X
-3143(that)X
-3284(same)X
-3470(area)X
-3626(will)X
-3771(result)X
-3970(in)X
-976 4362(the)N
-1097(screen)X
-1325(being)X
-1525(\256lled.\))X
-1778(This)X
-1942(can)X
-2076(provide)X
-2343(a)X
-2401(performance)X
-2830(improvement)X
-3279(when)X
-3475(viewing)X
-3755(different)X
-976 4452(places)N
-1197(in)X
-1279(one)X
-1415(or)X
-1502(more)X
-1687(\256les)X
-1840(over)X
-2003(a)X
-2059(slow)X
-2230(link.)X
-3 f
-776 4632(wrapmargin,)N
-1243(wm)X
-1388([0])X
-976 4722(Vi)N
-1 f
-1077(only.)X
-1280(If)X
-1356(the)X
-1476(value)X
-1672(of)X
-1761(the)X
-3 f
-1881(wrapmargin)X
-1 f
-2330(option)X
-2556(is)X
-2631(non-zero,)X
-3 f
-2959(vi)X
-1 f
-3043(will)X
-3189(split)X
-3348(lines)X
-3521(so)X
-3614(that)X
-3756(they)X
-3916(end)X
-976 4812(at)N
-1057(least)X
-1227(that)X
-1370(number)X
-1638(of)X
-1728(characters)X
-2078(before)X
-2307(the)X
-2428(right-hand)X
-2785(margin)X
-3035(of)X
-3125(the)X
-3245(screen.)X
-3513(\(Note,)X
-3738(the)X
-3858(value)X
-976 4902(of)N
-3 f
-1063(wrapmargin)X
-1 f
-1510(is)X
-2 f
-1583(not)X
-1 f
-1705(a)X
-1761(text)X
-1901(length.)X
-2161(In)X
-2248(a)X
-2304(screen)X
-2530(that)X
-2670(is)X
-2743(80)X
-2843(columns)X
-3134(wide,)X
-3330(the)X
-3449(command)X
-3786(``)X
-7 f
-3840(:set)X
-976 4992(wrapmargin=8)N
-1 f
-('')S
-1626(attempts)X
-1917(to)X
-1999(keep)X
-2171(the)X
-2289(lines)X
-2460(less)X
-2600(than)X
-2758(or)X
-2845(equal)X
-3039(to)X
-3121(72)X
-3221(columns)X
-3512(wide.\))X
-976 5172(Lines)N
-1181(are)X
-1307(split)X
-1471(at)X
-1556(the)X
-1681(previous)X
-1984(whitespace)X
-2368(character)X
-2691(closest)X
-2936(to)X
-3025(the)X
-3150(number.)X
-3462(Any)X
-3627(trailing)X
-3885(whi-)X
-976 5262(tespace)N
-1239(characters)X
-1592(before)X
-1824(that)X
-1970(character)X
-2292(are)X
-2417(deleted.)X
-2715(If)X
-2795(the)X
-2919(line)X
-3065(is)X
-3143(split)X
-3305(because)X
-3585(of)X
-3677(an)X
-3778(inserted)X
-7 f
-976 5352(<space>)N
-1 f
-1346(or)X
-7 f
-1447(<tab>)X
-1 f
-1721(character,)X
-2072(and)X
-2223(you)X
-2378(then)X
-2551(enter)X
-2747(another)X
-7 f
-3023(<space>)X
-1 f
-3394(character,)X
-3745(it)X
-3824(is)X
-3912(dis-)X
-976 5442(carded.)N
-976 5622(If)N
-1052(wrapmargin)X
-1462(is)X
-1537(set)X
-1648(to)X
-1732(0,)X
-1815(or)X
-1905(if)X
-1977(there)X
-2161(is)X
-2237(no)X
-2340(blank)X
-2541(character)X
-2860(upon)X
-3043(which)X
-3262(to)X
-3347(split)X
-3507(the)X
-3628(line,)X
-3791(the)X
-3912(line)X
-976 5712(is)N
-1049(not)X
-1171(broken.)X
-
-53 p
-%%Page: 53 52
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3658(USD:13-53)X
-776 762(wrapscan,)N
-1145(ws)X
-1254([on])X
-1 f
-976 852(This)N
-1138(option)X
-1362(causes)X
-1592(searches)X
-1885(to)X
-1967(wrap)X
-2148(around)X
-2391(the)X
-2509(end)X
-2645(or)X
-2732(the)X
-2850(beginning)X
-3191(of)X
-3279(the)X
-3398(\256le,)X
-3541(and)X
-3678(back)X
-3851(to)X
-3934(the)X
-976 942(starting)N
-1236(point.)X
-1460(Otherwise,)X
-1830(the)X
-1948(end)X
-2084(or)X
-2171(beginning)X
-2511(of)X
-2598(the)X
-2716(\256le)X
-2838(terminates)X
-3192(the)X
-3310(search.)X
-3 f
-776 1122(writeany,)N
-1119(wa)X
-1237([off])X
-1 f
-976 1212(If)N
-1056(this)X
-1197(option)X
-1427(is)X
-1506(set,)X
-1641(\256le-overwriting)X
-2170(checks)X
-2416(that)X
-2563(would)X
-2790(usually)X
-3048(be)X
-3151(made)X
-3352(before)X
-3585(the)X
-3 f
-3710(write)X
-1 f
-3916(and)X
-3 f
-976 1302(xit)N
-1 f
-1094(commands,)X
-1490(or)X
-1586(before)X
-1821(an)X
-1926(automatic)X
-2271(write)X
-2465(\(see)X
-2624(the)X
-3 f
-2751(autowrite)X
-1 f
-3110(option\),)X
-3390(are)X
-3518(not)X
-3648(made.)X
-3890(This)X
-976 1392(allows)N
-1205(a)X
-1261(write)X
-1446(to)X
-1528(any)X
-1664(\256le,)X
-1806(provided)X
-2111(the)X
-2229(\256le)X
-2351(permissions)X
-2753(allow)X
-2951(it.)X
-3 f
-776 1578(16.)N
-916(Additional)X
-1299(Features)X
-1618(in)X
-1704(Nex/Nvi)X
-1 f
-976 1701(There)N
-1190(are)X
-1315(a)X
-1377(few)X
-1524(features)X
-1805(in)X
-3 f
-1894(nex)X
-1 f
-(/)S
-3 f
-2036(nvi)X
-1 f
-2169(that)X
-2316(are)X
-2442(not)X
-2571(found)X
-2785(in)X
-2874(historic)X
-3141(versions)X
-3435(of)X
-3 f
-3529(ex)X
-1 f
-3605(/)X
-3 f
-3627(vi)X
-1 f
-3689(.)X
-3756(Some)X
-3965(of)X
-776 1791(the)N
-894(more)X
-1079(interesting)X
-1437(of)X
-1524(those)X
-1713(features)X
-1988(are)X
-2107(as)X
-2194(follows:)X
-3 f
-776 1971(8-bit)N
-956(clean)X
-1154(data,)X
-1345(large)X
-1539(lines,)X
-1734(\256les)X
-976 2061(Nex)N
-1 f
-1110(/)X
-3 f
-1132(nvi)X
-1 f
-1260(will)X
-1407(edit)X
-1550(any)X
-1689(format)X
-1926(\256le.)X
-2091(Line)X
-2261(lengths)X
-2515(are)X
-2637(limited)X
-2886(by)X
-2989(available)X
-3302(memory,)X
-3612(and)X
-3751(\256le)X
-3876(sizes)X
-976 2151(are)N
-1099(limited)X
-1349(by)X
-1453(available)X
-1767(disk)X
-1924(space.)X
-2167(The)X
-3 f
-2316(vi)X
-1 f
-2402(text)X
-2546(input)X
-2734(mode)X
-2935(command)X
-3 f
-3274(<control-X>)X
-1 f
-3719(can)X
-3854(insert)X
-976 2241(any)N
-1112(possible)X
-1394(character)X
-1710(value)X
-1904(into)X
-2048(the)X
-2166(text.)X
-3 f
-776 2421(Split)N
-955(screens)X
-1 f
-976 2511(The)N
-3 f
-1127(split)X
-1 f
-1299(command)X
-1641(divides)X
-1898(the)X
-2022(screen)X
-2254(into)X
-2404(multiple)X
-2696(editing)X
-2944(regions.)X
-3246(The)X
-3 f
-3397(<control-W>)X
-1 f
-3867(com-)X
-976 2601(mand)N
-1183(rotates)X
-1426(between)X
-1723(the)X
-1850(foreground)X
-2236(screens.)X
-2541(The)X
-3 f
-2694(resize)X
-1 f
-2919(command)X
-3263(can)X
-3403(be)X
-3507(used)X
-3682(to)X
-3772(grow)X
-3965(or)X
-976 2691(shrink)N
-1196(a)X
-1252(particular)X
-1580(screen.)X
-3 f
-776 2871(Background)N
-1217(and)X
-1365(foreground)X
-1772(screens)X
-1 f
-976 2961(The)N
-3 f
-1134(bg)X
-1 f
-1251(command)X
-1600(backgrounds)X
-2044(the)X
-2176(current)X
-2438(screen,)X
-2698(and)X
-2848(the)X
-3 f
-2980(fg)X
-1 f
-3081(command)X
-3431(foregrounds)X
-3853(back-)X
-976 3051(grounded)N
-1299(screens.)X
-1596(The)X
-3 f
-1741(display)X
-1 f
-2004(command)X
-2340(can)X
-2472(be)X
-2568(used)X
-2735(to)X
-2817(list)X
-2934(the)X
-3052(background)X
-3451(screens.)X
-3 f
-776 3231(Tag)N
-929(stacks)X
-1 f
-976 3321(Tags)N
-1159(are)X
-1285(now)X
-1450(maintained)X
-1834(in)X
-1924(a)X
-1988(stack.)X
-2221(The)X
-3 f
-2374(<control-T>)X
-1 f
-2819(command)X
-3163(returns)X
-3414(to)X
-3504(the)X
-3630(previous)X
-3934(tag)X
-976 3411(location.)N
-1299(The)X
-3 f
-1449(tagpop)X
-1 f
-1709(command)X
-2050(returns)X
-2298(to)X
-2385(the)X
-2508(most)X
-2688(recent)X
-2910(tag)X
-3033(location)X
-3316(by)X
-3421(default,)X
-3689(or,)X
-3801(option-)X
-976 3501(ally)N
-1119(to)X
-1204(a)X
-1263(speci\256c)X
-1531(tag)X
-1652(number)X
-1920(in)X
-2005(the)X
-2126(tag)X
-2248(stack,)X
-2457(or)X
-2548(the)X
-2670(most)X
-2849(recent)X
-3070(tag)X
-3192(from)X
-3372(a)X
-3432(speci\256ed)X
-3741(\256le.)X
-3907(The)X
-3 f
-976 3591(display)N
-1 f
-1241(command)X
-1579(can)X
-1713(be)X
-1810(used)X
-1978(to)X
-2061(list)X
-2179(the)X
-2298(tags)X
-2448(stack.)X
-2674(The)X
-3 f
-2820(tagtop)X
-1 f
-3059(command)X
-3396(returns)X
-3640(to)X
-3723(the)X
-3842(top)X
-3965(of)X
-976 3681(the)N
-1094(tag)X
-1212(stack.)X
-3 f
-776 3861(New)N
-948(displays)X
-1 f
-976 3951(The)N
-3 f
-1128(display)X
-1 f
-1398(command)X
-1741(can)X
-1880(be)X
-1984(used)X
-2159(to)X
-2249(display)X
-2508(the)X
-2634(current)X
-2890(buffers,)X
-3166(the)X
-3292(backgrounded)X
-3775(screens,)X
-976 4041(and)N
-1112(the)X
-1230(tags)X
-1379(stack.)X
-3 f
-776 4221(In\256nite)N
-1044(undo)X
-1 f
-976 4311(Changes)N
-1282(made)X
-1486(during)X
-1725(an)X
-1832(edit)X
-1983(session)X
-2245(may)X
-2414(be)X
-2521(rolled)X
-2739(backward)X
-3083(and)X
-3230(forward.)X
-3556(A)X
-3 f
-3645(.)X
-1 f
-3716(command)X
-976 4401(immediately)N
-1403(after)X
-1578(a)X
-3 f
-1640(u)X
-1 f
-1710(command)X
-2052(continues)X
-2385(either)X
-2594(forward)X
-2875(or)X
-2968(backward)X
-3307(depending)X
-3667(on)X
-3773(whether)X
-976 4491(the)N
-3 f
-1094(u)X
-1 f
-1158(command)X
-1494(was)X
-1639(an)X
-1735(undo)X
-1915(or)X
-2002(a)X
-2058(redo.)X
-3 f
-776 4671(Usage)N
-1001(information)X
-1 f
-976 4761(The)N
-3 f
-1126(exusage)X
-1 f
-1418(and)X
-3 f
-1559(viusage)X
-1 f
-1837(commands)X
-2209(provide)X
-2479(usage)X
-2688(information)X
-3092(for)X
-3212(all)X
-3318(of)X
-3411(the)X
-3 f
-3535(ex)X
-1 f
-3637(and)X
-3 f
-3779(vi)X
-1 f
-3867(com-)X
-976 4851(mands)N
-1205(by)X
-1305(default,)X
-1568(or,)X
-1675(optionally,)X
-2039(for)X
-2153(a)X
-2209(speci\256c)X
-2474(command)X
-2810(or)X
-2897(key.)X
-3 f
-776 5031(Extended)N
-1120(Regular)X
-1416(Expressions)X
-1 f
-976 5121(The)N
-3 f
-1133(extended)X
-1 f
-1472(option)X
-1708(causes)X
-1950(Regular)X
-2237(Expressions)X
-2657(to)X
-2752(be)X
-2861(interpreted)X
-3242(as)X
-3342(as)X
-3442(Extended)X
-3778(Regular)X
-976 5211(Expressions,)N
-1403(\(i.e.)X
-2 f
-1548(egrep)X
-1 f
-1731(\(1\))X
-1845(style)X
-2016(Regular)X
-2290(Expressions\).)X
-3 f
-776 5391(Word)N
-996(search)X
-1 f
-976 5481(The)N
-3 f
-1121(<control-A>)X
-1 f
-1563(command)X
-1899(searches)X
-2192(for)X
-2306(the)X
-2424(word)X
-2609 0.4028(referenced)AX
-2970(by)X
-3070(the)X
-3188(cursor.)X
-3 f
-776 5661(Number)N
-1081(increment)X
-1 f
-976 5751(The)N
-3 f
-1121(#)X
-1 f
-1181(command)X
-1517(increments)X
-1889(or)X
-1976(decrements)X
-2362(the)X
-2480(number)X
-2745 0.4028(referenced)AX
-3106(by)X
-3206(the)X
-3324(cursor.)X
-
-54 p
-%%Page: 54 53
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-54)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-776 762(Previous)N
-1094(\256le)X
-1 f
-976 852(The)N
-3 f
-1121(previous)X
-1 f
-1434(command)X
-1770(edits)X
-1941(the)X
-2059(previous)X
-2355(\256le)X
-2477(from)X
-2653(the)X
-2771(argument)X
-3094(list.)X
-3 f
-776 1032(Left-right)N
-1135(scrolling)X
-1 f
-976 1122(The)N
-3 f
-1130(leftright)X
-1 f
-1440(option)X
-1673(causes)X
-3 f
-1912(nvi)X
-1 f
-2047(to)X
-2138(do)X
-2248(left-right)X
-2563(screen)X
-2799(scrolling,)X
-3129(instead)X
-3386(of)X
-3483(the)X
-3611(traditional)X
-3 f
-3970(vi)X
-1 f
-976 1212(line)N
-1116(wrapping.)X
-
-55 p
-%%Page: 55 54
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(Nvi/Nex)N
-872 0.3906(Reference)AX
-3658(USD:13-55)X
-776 762(17.)N
-916(Index)X
-1 f
-776 885(.)N
-1549(18)X
-776 975(!)N
-1429(15,)X
-1549(34)X
-776 1065("")N
-1549(34)X
-776 1155(#)N
-1429(16,)X
-1549(35)X
-776 1245($)N
-1549(16)X
-776 1335(%)N
-1549(16)X
-776 1425(&)N
-1429(17,)X
-1549(42)X
-776 1515(\()N
-1549(17)X
-776 1605(\))N
-1549(17)X
-776 1695(*)N
-1549(35)X
-776 1785(+)N
-1549(13)X
-776 1875(,)N
-1549(18)X
-776 1965(/RE/)N
-1549(18)X
-776 2055(0)N
-1549(19)X
-776 2145(0<control-D>)N
-1549(31)X
-776 2235(:)N
-1549(19)X
-776 2325(;)N
-1549(19)X
-776 2415(<)N
-1429(20,)X
-1549(35)X
-776 2505(<control-A>)N
-1549(11)X
-776 2595(<control-B>)N
-1549(11)X
-776 2685(<control-D>)N
-1429(12,)X
-1549(31)X
-776 2775(<control-E>)N
-1549(12)X
-776 2865(<control-F>)N
-1549(12)X
-776 2955(<control-G>)N
-1549(12)X
-776 3045(<control-H>)N
-1429(12,)X
-1549(31)X
-776 3135(<control-J>)N
-1549(13)X
-776 3225(<control-L>)N
-1549(13)X
-776 3315(<control-M>)N
-1549(13)X
-776 3405(<control-N>)N
-1549(13)X
-776 3495(<control-P>)N
-1549(13)X
-776 3585(<control-R>)N
-1549(13)X
-776 3675(<control-T>)N
-1429(14,)X
-1549(31)X
-776 3765(<control-U>)N
-1549(14)X
-776 3855(<control-W>)N
-1429(14,)X
-1549(31)X
-776 3945(<control-X>)N
-1549(31)X
-776 4035(<control-Y>)N
-1549(14)X
-776 4125(<control-Z>)N
-1429(14,)X
-1549(43)X
-776 4215(<control-]>)N
-1549(15)X
-776 4305(<control-\303>)N
-1549(15)X
-776 4395(<end-of-\256le>)N
-1549(34)X
-776 4485(<eof>)N
-1549(33)X
-776 4575(<erase>)N
-1549(31)X
-776 4665(<escape>)N
-1429(14,)X
-1549(31)X
-776 4755(<interrupt>)N
-1349(7,)X
-1429(30,)X
-1549(31)X
-776 4845(<line)N
-961(erase>)X
-1549(31)X
-776 4935(<literal)N
-1028(next>)X
-1469(7,)X
-1549(31)X
-776 5025(<nul>)N
-1549(30)X
-776 5115(<space>)N
-1549(15)X
-776 5205(<word)N
-1006(erase>)X
-1549(31)X
-776 5295(=)N
-1549(35)X
-776 5385(>)N
-1429(20,)X
-1549(35)X
-776 5475(?RE?)N
-1549(18)X
-776 5565(@)N
-1429(20,)X
-1549(35)X
-776 5655(A)N
-1549(20)X
-776 5745(B)N
-1549(20)X
-2077 885(C)N
-2850(21)X
-2077 975(D)N
-2850(21)X
-2077 1065(E)N
-2850(21)X
-2077 1155(F)N
-2850(21)X
-2077 1245(G)N
-2850(21)X
-2077 1335(H)N
-2850(21)X
-2077 1425(I)N
-2850(22)X
-2077 1515(J)N
-2850(22)X
-2077 1605(L)N
-2850(22)X
-2077 1695(M)N
-2850(22)X
-2077 1785(N)N
-2850(18)X
-2077 1875(O)N
-2850(22)X
-2077 1965(P)N
-2850(23)X
-2077 2055(Q)N
-2850(23)X
-2077 2145(R)N
-2850(23)X
-2077 2235(S)N
-2850(23)X
-2077 2325(T)N
-2850(23)X
-2077 2415(U)N
-2850(23)X
-2077 2505(W)N
-2850(24)X
-2077 2595(X)N
-2850(24)X
-2077 2685(Y)N
-2850(24)X
-2077 2775(ZZ)N
-2850(24)X
-2077 2865([[)N
-2850(24)X
-9 f
-2077 2955(-)N
-1 f
-2850(18)X
-2077 3045(]])N
-2850(25)X
-2077 3135(\303)N
-2850(25)X
-2077 3225(\303<control-D>)N
-2850(31)X
-2077 3315(_)N
-2850(25)X
-2077 3405 0.2841(`<character>)AN
-2850(17)X
-2077 3495(a)N
-2850(25)X
-2077 3585(abbrev)N
-2850(35)X
-2077 3675(alternate)N
-2374(pathname)X
-2890(8)X
-2077 3765(altwerase)N
-2850(46)X
-2077 3855(append)N
-2850(36)X
-2077 3945(args)N
-2850(36)X
-2077 4035(autoindent)N
-2850(46)X
-2077 4125(autoprint)N
-2850(46)X
-2077 4215(autowrite)N
-2850(47)X
-2077 4305(b)N
-2850(25)X
-2077 4395(beautify)N
-2850(47)X
-2077 4485(bg)N
-2850(36)X
-2077 4575(bigword)N
-2850(10)X
-2077 4665(buffer)N
-2890(8)X
-2077 4755(c)N
-2850(26)X
-2077 4845(cd)N
-2850(36)X
-2077 4935(cdpath)N
-2850(47)X
-2077 5025(change)N
-2850(36)X
-2077 5115(chdir)N
-2850(36)X
-2077 5205(columns)N
-2850(47)X
-2077 5295(comment)N
-2850(47)X
-2077 5385(copy)N
-2850(36)X
-2077 5475(count)N
-2730(10,)X
-2850(33)X
-2077 5565(current)N
-2325(pathname)X
-2890(8)X
-2077 5655(d)N
-2850(26)X
-2077 5745(delete)N
-2850(37)X
-3378 885(directory)N
-4151(47)X
-3378 975(display)N
-4151(37)X
-3378 1065(e)N
-4151(26)X
-3378 1155(edcompatible)N
-4151(47)X
-3378 1245(edit)N
-4151(37)X
-3378 1335(errorbells)N
-4151(47)X
-3378 1425(exrc)N
-4151(47)X
-3378 1515(extended)N
-4151(48)X
-3378 1605(exusage)N
-4151(37)X
-3378 1695(f)N
-4151(26)X
-3378 1785(fg)N
-4151(37)X
-3378 1875(\256le)N
-4031(33,)X
-4151(37)X
-3378 1965(\257ags)N
-4151(33)X
-3378 2055(\257ash)N
-4151(48)X
-3378 2145(global)N
-4151(38)X
-3378 2235(hardtabs)N
-4151(48)X
-3378 2325(help)N
-4151(38)X
-3378 2415(i)N
-4151(26)X
-3378 2505(ignorecase)N
-4151(48)X
-3378 2595(insert)N
-4151(38)X
-3378 2685(j)N
-4151(13)X
-3378 2775(join)N
-4151(38)X
-3378 2865(k)N
-4031(13,)X
-4151(39)X
-3378 2955(keytime)N
-4151(48)X
-3378 3045(l)N
-4151(15)X
-3378 3135(leftright)N
-4151(48)X
-3378 3225(line)N
-4151(33)X
-3378 3315(lines)N
-4151(48)X
-3378 3405(lisp)N
-4151(48)X
-3378 3495(list)N
-4031(39,)X
-4151(48)X
-3378 3585(m)N
-4151(27)X
-3378 3675(magic)N
-4151(48)X
-3378 3765(map)N
-4151(39)X
-3378 3855(mark)N
-4151(39)X
-3378 3945(matchtime)N
-4151(48)X
-3378 4035(mesg)N
-4151(48)X
-3378 4125(mkexrc)N
-4151(39)X
-3378 4215(modelines)N
-4151(49)X
-3378 4305(motion)N
-4151(10)X
-3378 4395(move)N
-4151(39)X
-3378 4485(n)N
-4151(18)X
-3378 4575(next)N
-4151(40)X
-3378 4665(number)N
-4031(35,)X
-4151(49)X
-3378 4755(o)N
-4151(27)X
-3378 4845(octal)N
-4151(49)X
-3378 4935(open)N
-4031(40,)X
-4151(49)X
-3378 5025(optimize)N
-4151(49)X
-3378 5115(p)N
-4151(27)X
-3378 5205(paragraph)N
-4151(11)X
-3378 5295(paragraphs)N
-4151(49)X
-3378 5385(preserve)N
-4151(40)X
-3378 5475(previous)N
-4151(40)X
-3378 5565(previous)N
-3674(context)X
-4191(9)X
-3378 5655(print)N
-4151(40)X
-3378 5745(prompt)N
-4151(49)X
-
-56 p
-%%Page: 56 55
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-56)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-1 f
-776 762(put)N
-1549(40)X
-776 852(quit)N
-1549(41)X
-776 942(r)N
-1549(27)X
-776 1032(range)N
-1549(33)X
-776 1122(read)N
-1549(41)X
-776 1212(readonly)N
-1549(49)X
-776 1302(recdir)N
-1549(49)X
-776 1392(recover)N
-1549(41)X
-776 1482(redraw)N
-1549(50)X
-776 1572(remap)N
-1549(50)X
-776 1662(report)N
-1549(50)X
-776 1752(resize)N
-1549(41)X
-776 1842(rewind)N
-1549(41)X
-776 1932(ruler)N
-1549(50)X
-776 2022(s)N
-1549(27)X
-776 2112(scroll)N
-1549(50)X
-776 2202(section)N
-1549(11)X
-776 2292(sections)N
-1549(50)X
-776 2382(sentence)N
-1549(11)X
-776 2472(set)N
-1549(41)X
-776 2562(shell)N
-1429(42,)X
-1549(50)X
-776 2652(shiftwidth)N
-1549(50)X
-776 2742(showdirty)N
-1549(51)X
-776 2832(showmatch)N
-1549(51)X
-776 2922(showmode)N
-1549(51)X
-776 3012(sidescroll)N
-1549(51)X
-776 3102(slowopen)N
-1549(51)X
-776 3192(source)N
-1549(42)X
-776 3282(sourceany)N
-1549(51)X
-776 3372(split)N
-1549(42)X
-776 3462(stop)N
-1549(43)X
-776 3552(substitute)N
-1549(42)X
-776 3642(suspend)N
-1549(43)X
-776 3732(t)N
-1429(27,)X
-1549(36)X
-776 3822(tabstop)N
-1549(51)X
-776 3912(tag)N
-1549(43)X
-776 4002(taglength)N
-1549(51)X
-776 4092(tagpop)N
-1549(43)X
-776 4182(tags)N
-1549(51)X
-776 4272(tagtop)N
-1549(43)X
-776 4362(term)N
-1549(51)X
-776 4452(terse)N
-1549(51)X
-776 4542(tildeop)N
-1549(51)X
-776 4632(timeout)N
-1549(51)X
-776 4722(ttywerase)N
-1549(52)X
-776 4812(u)N
-1549(28)X
-776 4902(unabbrev)N
-1549(44)X
-776 4992(undo)N
-1549(44)X
-776 5082(unmap)N
-1549(44)X
-776 5172(unnamed)N
-1090(buffer)X
-1589(8)X
-776 5262(v)N
-1549(38)X
-776 5352(verbose)N
-1549(52)X
-776 5442(version)N
-1549(44)X
-776 5532(visual)N
-1549(44)X
-776 5622(viusage)N
-1549(44)X
-776 5712(w)N
-1549(28)X
-776 5802(w1200)N
-1549(52)X
-2077 762(w300)N
-2850(52)X
-2077 852(w9600)N
-2850(52)X
-2077 942(warn)N
-2850(52)X
-2077 1032(window)N
-2850(52)X
-2077 1122(wn)N
-2850(44)X
-2077 1212(word)N
-2850(10)X
-2077 1302(wq)N
-2850(44)X
-2077 1392(wrapmargin)N
-2850(52)X
-2077 1482(wrapscan)N
-2850(52)X
-2077 1572(write)N
-2850(44)X
-2077 1662(writeany)N
-2850(53)X
-2077 1752(x)N
-2850(28)X
-2077 1842(xit)N
-2850(45)X
-2077 1932(y)N
-2850(28)X
-2077 2022(yank)N
-2850(45)X
-2077 2112(z)N
-2730(28,)X
-2850(45)X
-2077 2202({)N
-2850(29)X
-2077 2292(|)N
-2850(29)X
-2077 2382(})N
-2850(29)X
-2077 2472(\304)N
-2610(29,)X
-2730(30,)X
-2850(42)X
-
-2 p
-%%Page: 2 56
-10 s 10 xH 0 xS 1 f 1 i
-3 f
-576 474(USD:13-2)N
-3391(Nvi/Nex)X
-3687 0.3906(Reference)AX
-12 s
-2039 762(Table)N
-2298(of)X
-2402(Contents)X
-1 f
-10 s
-776 961(Description)N
-1184(................................................................................................................................)X
-3992(3)X
-776 1070(Startup)N
-1027(Information)X
-1444(...................................................................................................................)X
-3992(3)X
-776 1179(Recovery)N
-1104(....................................................................................................................................)X
-3992(3)X
-776 1288(Sizing)N
-1000(the)X
-1118(Screen)X
-1364(.......................................................................................................................)X
-3992(5)X
-776 1397(Character)N
-1109(Display)X
-1384(......................................................................................................................)X
-3992(5)X
-776 1506(Multiple)N
-1071(Screens)X
-1344(........................................................................................................................)X
-3992(6)X
-776 1615(Regular)N
-1050(Expressions)X
-1457(and)X
-1593(Replacement)X
-2032(Strings)X
-2284(.........................................................................)X
-3992(6)X
-776 1724(General)N
-1051(Editor)X
-1271(Description)X
-1684(.......................................................................................................)X
-3992(7)X
-776 1833(Vi)N
-876(Description)X
-1284(...........................................................................................................................)X
-3992(8)X
-776 1942(Vi)N
-876(Commands)X
-1264(............................................................................................................................)X
-3952(11)X
-776 2051(Vi)N
-876(Text)X
-1043(Input)X
-1232(Commands)X
-1624(..........................................................................................................)X
-3952(30)X
-776 2160(Ex)N
-885(Addressing)X
-1284(...........................................................................................................................)X
-3952(31)X
-776 2269(Ex)N
-885(Description)X
-1284(...........................................................................................................................)X
-3952(33)X
-776 2378(Ex)N
-885(Commands)X
-1284(...........................................................................................................................)X
-3952(34)X
-776 2487(Set)N
-898(Options)X
-1184(................................................................................................................................)X
-3952(46)X
-776 2596(Additional)N
-1138(Features)X
-1430(in)X
-1512(Nex/Nvi)X
-1824(................................................................................................)X
-3952(53)X
-776 2705(Index)N
-984(..........................................................................................................................................)X
-3952(55)X
-
-56 p
-%%Trailer
-xt
-
-xs
diff --git a/usr.bin/vi/USD.doc/vi.ref/vi.ref.txt b/usr.bin/vi/USD.doc/vi.ref/vi.ref.txt
deleted file mode 100644
index 88a98c772989..000000000000
--- a/usr.bin/vi/USD.doc/vi.ref/vi.ref.txt
+++ /dev/null
@@ -1,5544 +0,0 @@
-
-
-
-
-
-
-
-
- EExx//VVii RReeffeerreennccee MMaannuuaall
-
- _K_e_i_t_h _B_o_s_t_i_c
-
- Computer Science Division
- Department of Electrical Engineering and Computer Science
- University of California, Berkeley
- Berkeley, California 94720
-
- August 15, 1994
-
-
-
- _A_b_s_t_r_a_c_t
-
-
-
-
- This document is the reference guide for the 4.4BSD
-implementations of nneexx/nnvvii, which are reimplementations
-of the historic Berkeley eexx/vvii editors.
-
-
-
-
-
- _A_c_k_n_o_w_l_e_d_g_e_m_e_n_t_s
-
-
-
-
- Bruce Englar encouraged the early development of
-the historic eexx/vvii 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 eexx/vvii work on a
-large number of terminals and Unix systems.
-
- NNvvii is originally derived from software contributed
-to the University of California, Berkeley by Steve Kirk-
-endall, the author of the vvii clone eellvviiss.
-
- 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 nnvvii 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.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--33
-
-
-11.. DDeessccrriippttiioonn
-
- VVii is a screen oriented text editor. EExx is a line-
-oriented text editor. EExx and vvii are different interfaces to
-the same program, and it is possible to switch back and
-forth during an edit session. VViieeww is the equivalent of
-using the --RR (read-only) option of vvii.
-
- This reference manual is the one provided with the
-nneexx/nnvvii versions of the eexx/vvii text editors. NNeexx/nnvvii are
-intended as bug-for-bug compatible replacements for the
-original Fourth Berkeley Software Distribution (4BSD) eexx/vvii
-programs. This reference manual is accompanied by a tradi-
-tional-style manual page. That manual page describes the
-functionality found in eexx/vvii in far less detail than the
-description here. In addition, it describes the system
-interface to eexx/vvii, e.g. command line options, session
-recovery, signals, environmental variables, and similar
-things.
-
- This reference is intended for users already familiar
-with eexx/vvii. 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 "FFaasstt SSttaarrttuupp" in the man-
-ual page. It is probably enough to get you started.
-
- There are a few features in nneexx/nnvvii that are not found
-in historic versions of eexx/vvii. Some of the more interesting
-of those features are briefly described in the section enti-
-tled "AAddddiittiioonnaall FFeeaattuurreess" near the end of this document.
-For the rest of this document, nneexx/nnvvii is used only when it
-is necessary to distinguish it from the historic implementa-
-tions of eexx/vvii.
-
- Future versions of this software will be periodically
-made available by anonymous ftp, and can be retrieved from
-ffttpp..ccss..bbeerrkkeelleeyy..eedduu, in the directory uuccbb//44bbssdd.
-
-22.. SSttaarrttuupp IInnffoorrmmaattiioonn
-
- EExx/vvii 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 eexx commands, not vvii commands. In addition, they are
-interpreted _b_e_f_o_r_e the file to be edited is read, and there-
-fore many eexx 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 eexx command set supported by nneexx/nnvvii is a
-superset of the command set supported by most historical
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--44 NNvvii//NNeexx RReeffeerreennccee
-
-
-implementations of eexx, nneexx/nnvvii can use the startup files
-created for the historical implementations, but the converse
-may not be true.
-
- If the --ss (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 //eettcc//vvii..eexxrrcc is read, as long as it is owned
- by root or the effective user ID of the user.
-
- (2) The environmental variable NNEEXXIINNIITT (or the variable
- EEXXIINNIITT, if NNEEXXIINNIITT is not set) is interpreted.
-
- (3) If neither NNEEXXIINNIITT or EEXXIINNIITT was set, and the HHOOMMEE
- environmental variable is set, the file $$HHOOMMEE//..nneexxrrcc
- (or the file $$HHOOMMEE//..eexxrrcc, if $$HHOOMMEE//..nneexxrrcc 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 eexxrrcc option was turned on by one of the previ-
- ous startup information sources, the file ..nneexxrrcc (or
- the file ..eexxrrcc, if ..nneexxrrcc 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 --cc option are executed, in the
-context of that file.
-
-33.. RReeccoovveerryy
-
- There is no recovery program for nneexx/nnvvii, nor does
-nneexx/nnvvii 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 rreeccddiirr option (the directory
-//vvaarr//ttmmpp//vvii..rreeccoovveerr by default), and are named "vvii..XXXXXXXXXXXX",
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--55
-
-
-where "XXXXXXXXXXXX" 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
-"rreeccoovveerr..XXXXXXXXXXXX", where, again, "XXXXXXXXXXXX" 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 eexx pprreesseerrvvee com-
-mand.
-
- The rreeccddiirr 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 //ttmmpp which are cleared of their contents
-by a system reboot, or //uussrr//ttmmpp 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, eexx/vvii 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
-_s_e_n_d_m_a_i_l(8). When the system is rebooted, all of the files
-in //vvaarr//ttmmpp//vvii..rreeccoovveerr named "rreeccoovveerr..XXXXXXXXXXXX" should be sent
-to their owners, by email, using the --tt option of sseennddmmaaiill
-(or a similar mechanism in other mailers). If eexx/vvii
-receives a hangup (SIGHUP) signal, or the user executes the
-eexx pprreesseerrvvee command, eexx/vvii will automatically email the
-recovery information to the user.
-
- If your system does not have the sseennddmmaaiill utility (or a
-mailer program which supports its interface) the source file
-nnvvii//ccoommmmoonn//rreeccoovveerr..cc will have to be modified to use your
-local mail delivery programs. Note, if nneexx/nnvvii is changed
-to use another mailer, it is important to remember that the
-owner of the file given to the mailer is the nneexx/nnvvii user,
-so nothing in the file should be trusted as it may have been
-modified in an effort to compromise the system.
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--66 NNvvii//NNeexx RReeffeerreennccee
-
-
- 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 //eettcc//rrcc..llooccaall (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
-nnvvii//iinnssttaallll//rreeccoovveerr..ssccrriipptt in the nneexx/nnvvii distribution.)
-
-
- ## @@((##))rreeccoovveerr..ssccrriipptt 88..44 ((BBeerrkkeelleeyy)) 88//1133//9944
- ##
- ## RReeccoovveerr nnvvii eeddiittoorr ffiilleess::
- RREECCDDIIRR==//vvaarr//ttmmpp//vvii..rreeccoovveerr
- SSEENNDDMMAAIILL==//uussrr//lliibb//sseennddmmaaiill
- eecchhoo ''RReeccoovveerriinngg nnvvii eeddiittoorr sseessssiioonnss..''
-
- ## UUnnmmooddiiffiieedd nnvvii eeddiittoorr bbaacckkuupp ffiilleess aarree eeiitthheerr zzeerroo lleennggtthh oorr
- ## hhaavvee tthhee eexxeeccuuttee bbiitt sseett.. DDeelleettee bbootthh ccaasseess..
- vviibbaacckkuupp==``eecchhoo $$RREECCDDIIRR//vvii..**``
- iiff [[ ""$$vviibbaacckkuupp"" !!== ""$$RREECCDDIIRR//vvii..**"" ]];; tthheenn
- ffoorr ii iinn $$vviibbaacckkuupp;; ddoo
- iiff tteesstt --xx $$ii --oo !! --ss $$ii;; tthheenn
- rrmm $$ii
- ffii
- ddoonnee
- ffii
-
- ## IItt iiss ppoossssiibbllee ttoo ggeett iinnccoommpplleettee rreeccoovveerryy ffiilleess,, iiff tthhee eeddiittoorr
- ## ccrraasshheess aatt tthhee rriigghhtt ttiimmee.. DDeelleettee aannyy rreeccoovveerryy ffiilleess wwiitthhoouutt
- ## ccoorrrreessppoonnddiinngg bbaacckkuupp ffiilleess,, ootthheerrwwiissee sseenndd mmaaiill ttoo tthhee uusseerr..
- vviirreeccoovveerryy==``eecchhoo $$RREECCDDIIRR//rreeccoovveerr..**``
- iiff [[ ""$$vviirreeccoovveerryy"" !!== ""$$RREECCDDIIRR//rreeccoovveerr..**"" ]];; tthheenn
- ffoorr ii iinn $$vviirreeccoovveerryy;; ddoo
- rreeccffiillee==``aawwkk ''//^^XX--vvii--rreeccoovveerr--ppaatthh:://{{pprriinntt $$22}}'' << $$ii``
- iiff tteesstt !! --nn $$rreeccffiillee --aa --ss $$rreeccffiillee;; tthheenn
- $$SSEENNDDMMAAIILL --tt << $$ii
- eellssee
- rrmm $$ii
- ffii
- ddoonnee
- ffii
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--77
-
-
- If you are not using the default value for the rreeccddiirr
-option, be sure to substitute the value you're using for the
-RREECCDDIIRR value in the recovery script.
-
- If the path of your system's sseennddmmaaiill program (or what-
-ever mailer you're using) is not //uussrr//lliibb//sseennddmmaaiill, be sure
-to substitute the correct pathname for the SSEENNDDMMAAIILL value in
-the recovery script. Consult the manual page for details on
-recovering preserved or aborted editing sessions.
-
-44.. SSiizziinngg tthhee SSccrreeeenn
-
- The size of the screen can be set in a number of ways.
-EExx/vvii 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 LLIINNEESS exists, it is
- used to specify the number of rows in the screen.
-
- (2) If the environmental variable CCOOLLUUMMNNSS exists, it is
- used to specify the number of columns in the screen.
-
- (3) The TIOCGWINSZ _i_o_c_t_l(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
-_i_o_c_t_l(2) call, and all other information is ignored.
-
-55.. CChhaarraacctteerr DDiissppllaayy
-
- In both eexx and vvii printable characters as defined by
-_i_s_p_r_i_n_t(3) are displayed using the local character set.
-
- Non-printable characters, for which _i_s_c_n_t_r_l(3) returns
-true, and which are less than octal \076, are displayed as
-the string "^^<<cchhaarraacctteerr>>", where <<cchhaarraacctteerr>> is the charac-
-ter that is the original character's value offset from the
-"@@" character. For example, the octal character \001 is
-displayed as "^^AA". If _i_s_c_n_t_r_l(3) returns true for the octal
-character \177, it is displayed as the string "^^??". All
-other characters are displayed as either hexadecimal values,
-in the form "00xx<<hhiigghh--hhaallffbbyyttee>> ...... 00xx<<llooww--hhaallffbbyyttee>>", or as
-octal values, in the form "\\<<hhiigghh--oonnee--oorr--ttwwoo--bbiittss>> ......
-\\<<llooww--tthhrreeee--bbiittss>>". The display of unknown characters is
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--88 NNvvii//NNeexx RReeffeerreennccee
-
-
-based on the value of the ooccttaall option.
-
- In vvii command mode, the cursor is always positioned on
-the last column of characters which take up more than one
-column on the screen. In vvii text input mode, the cursor is
-positioned on the first column of characters which take up
-more than one column on the screen.
-
-66.. MMuullttiippllee SSccrreeeennss
-
- NNvvii 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 sspplliitt divides the current screen into two
-regions of approximately equal size. If a list of files are
-specified as arguments to the sspplliitt command, the list of
-files to be edited is initialized as if the nneexxtt 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 any screen without saving any changes
-(or explicitly discarding them) is permitted until the last
-screen editing the file is exited.
-
- The rreessiizzee command permits resizing of individual
-screens. Screens may be grown, shrunk or set to an absolute
-number of rows.
-
- The ^^WW command is used to switch between screens. Each
-^^WW moves to the next lower screen in the window, or to the
-first screen in the window if there are no lower screens.
-
- The bbgg 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 ddiissppllaayy ssccrreeeennss command displays the names of the
-files associated with the current backgrounded screens in
-the window.
-
- The ffgg [[ffiillee]] 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.
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--99
-
-
- 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.
-
-77.. RReegguullaarr EExxpprreessssiioonnss aanndd RReeppllaacceemmeenntt SSttrriinnggss
-
- Regular expressions are used in line addresses, as the
-first part of the eexx ssuubbssttiittuuttee, gglloobbaall, and vvgglloobbaall com-
-mands, and in search patterns.
-
- The regular expressions supported by eexx/vvii are, by
-default, the Basic Regular Expressions (BRE's) described in
-the IEEE POSIX Standard 1003.2. The eexxtteennddeedd option causes
-all regular expressions to be interpreted as the Extended
-Regular Expressions (ERE's) described by the same standard.
-(See _r_e___f_o_r_m_a_t(7) for more information.) Generally speak-
-ing, BRE's are the Regular Expressions found in _e_d(1) and
-_g_r_e_p(1), and ERE's are the Regular Expressions found in
-_e_g_r_e_p(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
-eexx/vvii 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. "////" or "????" is equivalent to the
- last RE used.
-
- (2) The construct "\\<<" matches the beginning of a word.
-
- (3) The construct "\\>>" matches the end of a word.
-
- (4) The character "~~" matches the replacement part of the
- last ssuubbssttiittuuttee command.
-
- When the mmaaggiicc option is _n_o_t set, the only characters
-with special meanings are a "^^" character at the beginning
-of an RE, a "$$" character at the end of an RE, and the
-escaping character "\\". The characters "..", "**", "[[" and
-"~~" are treated as ordinary characters unless preceded by a
-"\\"; when preceded by a "\\" they regain their special mean-
-ing.
-
- Replacement strings are the second part of a ssuubbssttiittuuttee
-command.
-
- The character "&&" (or "\\&&" if the mmaaggiicc option is _n_o_t
-set) in the replacement string stands for the text matched
-by the RE that is being replaced. The character "~~" (or
-"\\~~" if the mmaaggiicc option is _n_o_t set) stands for the replace-
-ment part of the previous ssuubbssttiittuuttee command. It is only
-valid after a ssuubbssttiittuuttee command has been performed.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--1100 NNvvii//NNeexx RReeffeerreennccee
-
-
- The string "\\##", where "##" is an integer value from 1
-to 9, stands for the text matched by the portion of the RE
-enclosed in the "##"'th set of escaped parentheses, e.g.
-"\\((" and "\\))". For example, "ss//aabbcc\\((..**\\))ddeeff//\\11//" deletes
-the strings "aabbcc" and "ddeeff" from the matched pattern.
-
- The strings "\\ll", "\\uu", "\\LL" and "\\UU" can be used to
-modify the case of elements in the replacement string. The
-string "\\ll" causes the next character to be converted to
-lowercase; the string "\\uu" behaves similarly, but converts
-to uppercase (e.g. ss//aabbcc//\\UU&&// replaces the string aabbcc with
-AABBCC). The strings "\\LL" causes characters up to the end of
-the string or the next occurrence of the strings "\\ee" or
-"\\EE" to be converted to lowercase; the string "\\UU" behaves
-similarly, but converts to uppercase.
-
- If the entire replacement pattern is "%%", then the last
-replacement pattern is used again.
-
- In vvii, inserting a <<ccoonnttrrooll--MM>> into the replacement
-string will cause the matched line to be split into two
-lines at that point. (The <<ccoonnttrrooll--MM>> will be discarded.)
-
-88.. GGeenneerraall EEddiittoorr DDeessccrriippttiioonn
-
- When eexx or vvii 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.
-_N_o _c_h_a_n_g_e_s _a_f_f_e_c_t _t_h_e _a_c_t_u_a_l _f_i_l_e _u_n_t_i_l _t_h_e _f_i_l_e _i_s _w_r_i_t_t_e_n
-_o_u_t, either using a write command or another command which
-is affected by the aauuttoowwrriittee option.
-
- All files are locked (using the _f_l_o_c_k(2) or _f_c_n_t_l(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
-rreeaaddoonnllyy option or the --RR 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
-<<ccoonnttrrooll--GG>> command) will reflect this fact.
-
- Both eexx and vvii 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 eexx first starts running, it is in
-command mode, and usually displays a prompt (see the pprroommpptt
-option for more information). The prompt is a single colon
-("::") character. There are three commands that switch eexx
-into text input mode: aappppeenndd, cchhaannggee and iinnsseerrtt. Once in
-input mode, entering a line containing only a single period
-("..") terminates text input mode and returns to command
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--1111
-
-
-mode, where the prompt is redisplayed.
-
- When vvii first starts running, it is in command mode as
-well. There are eleven commands that switch vvii into text
-input mode: AA, aa, CC, cc, II, ii, OO, oo, RR, SS and ss. Once in
-input mode, entering an <<eessccaappee>> character terminates text
-input mode and returns to command mode.
-
- The following words have special meanings in both the
-eexx and vvii command descriptions:
-
-<<iinntteerrrruupptt>>
- The interrupt character is used to interrupt the cur-
- rent operation. Normally <<ccoonnttrrooll--CC>>, whatever charac-
- ter is set for the current terminal is used.
-
-<<lliitteerraall nneexxtt>>
- The literal next character is used to escape the subse-
- quent character from any special meaning. This charac-
- ter is always <<ccoonnttrrooll--VV>>. If the terminal is not set
- up to do XON/XOFF flow control, then <<ccoonnttrrooll--QQ>> is
- used to mean literal next as well.
-
-ccuurrrreenntt ppaatthhnnaammee
- The pathname of the file currently being edited by vi.
- When the percent character ("%%") appears in a file name
- entered as part of an eexx command argument, it is
- replaced by the current pathname. (The "%%" character
- can be escaped by preceding it with a backslash.)
-
-aalltteerrnnaattee ppaatthhnnaammee
- The name of the last file name mentioned in an eexx com-
- mand, or, the previous current pathname if the last
- file mentioned becomes the current file. When the hash
- mark character ("##") appears in a file name entered as
- part of an eexx command argument, it is replaced by the
- alternate pathname. (The "##" character can be escaped
- by preceding it with a backslash.)
-
-bbuuffffeerr
- 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 eexx cchhaannggee
- command cannot save the changed text in a named
- buffer). Buffers are named with a single character,
- preceded by a double quote, e.g. ""<<cchhaarraacctteerr>>. His-
- toric implementations of eexx/vvii limited <<cchhaarraacctteerr>> to
- the alphanumeric characters; nneexx/nnvvii permits the use of
- any character.
-
- Buffers named by uppercase characters are the same as
- buffers named by lowercase characters, e.g. the buffer
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--1122 NNvvii//NNeexx RReeffeerreennccee
-
-
- named by the English character "AA" is the same as the
- buffer named by the character "aa", with the exception
- that, if the buffer contents are being changed (as with
- a text deletion or vvii cchhaannggee command), the text is
- _a_p_p_e_n_d_e_d to the buffer, instead of replacing the cur-
- rent contents.
-
- The buffers named by the numeric characters (in
- English, "11" through "99"), are special, in that if at
- least one line is changed or deleted in the file, (or a
- command changes or deletes a region that crosses a line
- boundary) a copy of the text is placed into the numeric
- buffer "11", regardless of the user specifying another
- buffer in which to save it. Before this copy is done,
- the previous contents of buffer "11" are moved into
- buffer "22", "22" into buffer "33", and so on. The con-
- tents of buffer "99" are discarded. In vvii, 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. (Text cannot
- be explicitly stored into the numeric buffers in eexx
- because of ambiguities that this would cause in the eexx
- command syntax.)
-
- When a vvii command synopsis shows both a [[bbuuffffeerr]] and a
- [[ccoouunntt]], they may be presented in any order.
-
- Finally, all buffers are either "line" or "character"
- oriented. All eexx commands which store text into
- buffers are line oriented. Some vvii commands which
- store text into buffers are line oriented, and some are
- character oriented; the description for each applicable
- vvii command notes whether text copied into buffers using
- the command is line or character oriented. In addi-
- tion, the vvii command ddiissppllaayy bbuuffffeerrss 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 _o_t_h_e_r 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.
-
-uunnnnaammeedd bbuuffffeerr
- The unnamed buffer is a text storage area which is used
- by commands that take a buffer as an argument, when no
- buffer is specified by the user. There is no way to
- explicitly reference this buffer.
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--1133
-
-
-99.. VVii DDeessccrriippttiioonn
-
- VVii 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 eexx commands, and for vvii
-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 rruulleerr, sshhoowwddiirrttyy and sshhoowwmmooddee 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 ("~~") character. To differentiate between empty lines
-and lines consisting of only whitespace characters, use the
-lliisstt option. Historically, implementations of vvii have also
-displayed some lines as single asterisk ("@@") 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. NNvvii
-never displays lines in this fashion.
-
- VVii is a modeful editor, i.e. it has two modes, "com-
-mand" mode and "text input" mode. When vvii first starts, it
-is in command mode. There are several commands that change
-vvii into text input mode. The <<eessccaappee>> character is used to
-resolve the text input into the file, and exit back into
-command mode. In vvii command mode, the cursor is always
-positioned on the last column of characters which take up
-more than one column on the screen. In vvii text insert mode,
-the cursor is positioned on the first column of characters
-which take up more than one column on the screen.
-
- Generally, if the cursor line and cursor column are not
-on the screen, then the screen is scrolled (if the target
-cursor is close) or repainted (if the target cursor is far
-away) so that the cursor is on the screen. If the screen is
-scrolled, it is moved a minimal amount, and the cursor line
-will usually appear at the top or bottom of the screen. In
-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 is not
-possible. If the lleeffttrriigghhtt 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 vvii presenta-
-tion and nnvvii is in the scrolling and screen oriented posi-
-tion commands, <<ccoonnttrrooll--BB>>, <<ccoonnttrrooll--DD>>, <<ccoonnttrrooll--EE>>, <<ccoonn--
-ttrrooll--FF>>, <<ccoonnttrrooll--UU>>, <<ccoonnttrrooll--YY>>, HH, LL and MM. In histori-
-cal implementations of vvii, these commands acted on physical
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--1144 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
-(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
-command might not change the screen or move the cursor at
-all, and some lines simply could not be displayed, even
-though vvii would edit the file that contained them. In nnvvii,
-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.
-
- VVii keeps track of the currently "most attractive" cur-
-sor position. Each command description (for commands that
-can change 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 lat-
-ter means that the cursor is moved to the cursor position
-that is vertically as close as possible to the current cur-
-sor position. If the current line is shorter than the cur-
-sor position vvii 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 $$ command makes the end of each line
-the most attractive cursor position rather than a specific
-column.
-
- Each vvii 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 vvii com-
-mands.
-
-pprreevviioouuss ccoonntteexxtt
- The position of the cursor before the command which
- caused the last absolute movement was executed. Each
- vvii command described in the next section that is con-
- sidered an absolute movement is so noted. In addition,
- specifying _a_n_y address to an eexx command is considered
- an absolute movement.
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--1155
-
-
-mmoottiioonn
- A second vvii command can be used as an optional trailing
- argument to the vvii !!, <<, >>, cc, dd, yy, and (depending on
- the ttiillddeeoopp option) ~~ 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 vvii commands:
-
-
- <<ccoonnttrrooll--AA>> <<ccoonnttrrooll--HH>> <<ccoonnttrrooll--JJ>> <<ccoonnttrrooll--MM>>
- <<ccoonnttrrooll--NN>> <<ccoonnttrrooll--PP>> <<ssppaaccee>> $$
- %% ''<<cchhaarraacctteerr>> (( ))
- ++ ,, -- //
- 00 ;; ?? BB
- EE FF GG HH
- LL MM NN TT
- WW [[[[ ]]]] ^^
- __ ``<<cchhaarraacctteerr>> bb ee
- ff hh jj kk
- ll nn tt ww
- {{ || }}
-
-
- The optional count prefix available for some of the vvii
- commands that take motion commands, or the count prefix
- available for the vvii commands that are used as motion
- components, may be included and is _a_l_w_a_y_s considered
- part of the motion argument. For example, the commands
- "cc22ww" and "22ccww" are equivalent, and the region affected
- by the cc command is two words of text. In addition, if
- the optional count prefix is specified for both the vvii
- command and its motion component, the effect is multi-
- plicative and is considered part of the motion argu-
- ment. For example, the commands "44ccww" and "22cc22ww" are
- equivalent, and the region affected by the cc command is
- four words of text.
-
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--1166 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
-ccoouunntt
- 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 vvii command synopsis shows both a [[bbuuffffeerr]] and
- [[ccoouunntt]], they may be presented in any order.
-
-bbiiggwwoorrdd
- A set of non-whitespace characters preceded and fol-
- lowed by whitespace characters or the beginning or end
- of the file or line.
-
- Groups of empty lines (or lines containing only whites-
- pace characters) are treated as a single bigword.
-
-wwoorrdd
- Generally, in languages where it is applicable, vvii 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; the beginning
- or end of the file. Second, a sequence of characters
- 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; the beginning or end of the file.
-
- Groups of empty lines (or lines containing only whites-
- pace characters) are treated as a single word.
-
-ppaarraaggrraapphh
- 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 ppaarraaggrraapphh option.
-
-sseeccttiioonn
- An area of text that starts with the beginning of the
- file or a line whose first character is an open brace
- ("{{") and continues until the next section or the end
- of the file.
-
- Additional section boundaries can be defined using the
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--1177
-
-
- sseeccttiioonnss option.
-
-sseenntteennccee
- 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 or a
- period ("..") exclamation point ("!!") or question mark
- ("??") character, followed by either an end-of-line or
- two whitespace characters. Any number of closing
- parentheses ("))"), brackets ("]]") or double-quote ("""")
- 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.
-
-1100.. VVii CCoommmmaannddss
-
- The following section describes the commands available
-in the command mode of the vvii 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.
-
-[[ccoouunntt]] <<ccoonnttrrooll--AA>>
- Search forward ccoouunntt 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 <<ccoonnttrrooll--AA>> command is an absolute movement. The
- <<ccoonnttrrooll--AA>> command may be used as the motion component
- of other vvii 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 eexxtteennddeedd, iiggnnoorreeccaassee and wwrraapp--
- ssccaann options.
-
-[[ccoouunntt]] <<ccoonnttrrooll--BB>>
- Page backward ccoouunntt screens. Two lines of overlap are
- maintained by displaying the window starting at line
- ((ttoopp__lliinnee -- ccoouunntt ** wwiinnddooww__ssiizzee)) ++ 22, where wwiinnddooww__ssiizzee
- is the value of the wwiinnddooww option. (In the case of
- split screens, this size is corrected to the current
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--1188 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- screen size.) This is an error if the movement is past
- the beginning of the file.
-
- The <<ccoonnttrrooll--BB>> command is an absolute movement.
-
- Line: Set to the last line of text displayed on the
- screen.
- Column: Set to the first nonblank character of the
- line.
- Options: None.
-
-[[ccoouunntt]] <<ccoonnttrrooll--DD>>
- Scroll forward ccoouunntt lines. If ccoouunntt is not specified,
- scroll forward the number of lines specified by the
- last <<ccoonnttrrooll--DD>> or <<ccoonnttrrooll--UU>> command. If this is
- the first <<ccoonnttrrooll--DD>> or <<ccoonnttrrooll--UU>> 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.)
- This is an error if the movement is past the end of the
- file.
-
- The <<ccoonnttrrooll--DD>> command is an absolute movement.
-
- Line: Set to the current line plus the number of
- lines scrolled.
- Column: Set to the first nonblank character of the
- line.
- Options: None.
-
-[[ccoouunntt]] <<ccoonnttrrooll--EE>>
- Scroll forward ccoouunntt lines, leaving the cursor on the
- current line and column, if possible. This 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.
-
-[[ccoouunntt]] <<ccoonnttrrooll--FF>>
- Page forward ccoouunntt screens. Two lines of overlap are
- maintained by displaying the window starting at line
- ttoopp__lliinnee ++ ccoouunntt ** wwiinnddooww__ssiizzee -- 22, where wwiinnddooww__ssiizzee
- is the value of the wwiinnddooww option. (In the case of
- split screens, this size is corrected to the current
- screen size.) This is an error if the movement is past
- the end of the file.
-
- The <<ccoonnttrrooll--FF>> command is an absolute movement.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--1199
-
-
- Line: Set to the first line on the screen.
- Column: Set to the first nonblank character of the
- current line.
- Options: None.
-
-<<ccoonnttrrooll--GG>>
- 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.
-
-<<ccoonnttrrooll--HH>>
-[[ccoouunntt]] hh
- Move the cursor back ccoouunntt characters in the current
- line. This is an error if the cursor is on the first
- character in the line.
-
- The <<ccoonnttrrooll--HH>> and hh commands may be used as the
- motion component of other vvii commands, in which case
- any text copied into a buffer is character oriented.
-
- Line: Unchanged.
- Column: Set to the ccuurrrreenntt -- ccoouunntt character, or, the
- first character in the line if ccoouunntt is
- greater than or equal to the number of charac-
- ters in the line before the cursor.
- Options: None.
-
-[[ccoouunntt]] <<ccoonnttrrooll--JJ>>
-[[ccoouunntt]] <<ccoonnttrrooll--NN>>
-[[ccoouunntt]] jj
- Move the cursor down ccoouunntt lines without changing the
- current column. This is an error if the movement is
- past the end of the file.
-
- The <<ccoonnttrrooll--JJ>>, <<ccoonnttrrooll--NN>> and jj commands may be used
- as the motion component of other vvii commands, in which
- case any text copied into a buffer is line oriented.
-
- Line: Set to the current line plus ccoouunntt.
- Column: The most attractive cursor position.
- Options: None.
-
-<<ccoonnttrrooll--LL>>
-<<ccoonnttrrooll--RR>>
- Repaint the screen.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--2200 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Line: Unchanged.
- Column: Unchanged.
- Options: None.
-
-[[ccoouunntt]] <<ccoonnttrrooll--MM>>
-[[ccoouunntt]] ++
- Move the cursor down ccoouunntt lines to the first nonblank
- character of that line. This is an error if the move-
- ment is past the end of the file.
-
- The <<ccoonnttrrooll--MM>> and ++ commands may be used as the
- motion component of other vvii commands, in which case
- any text copied into a buffer is line oriented.
-
- Line: Set to the current line plus ccoouunntt.
- Column: Set to the first nonblank character in the
- line.
- Options: None.
-
-[[ccoouunntt]] <<ccoonnttrrooll--PP>>
-[[ccoouunntt]] kk
- Move the cursor up ccoouunntt lines, without changing the
- current column. This is an error if the movement is
- past the beginning of the file.
-
- The <<ccoonnttrrooll--PP>> and kk commands may be used as the
- motion component of other vvii commands, in which case
- any text copied into a buffer is line oriented.
-
- Line: Set to the current line minus count.
- Column: The most attractive cursor position.
- Options: None.
-
-<<ccoonnttrrooll--TT>>
- Return to the most recent tag context. The <<ccoonnttrrooll--TT>>
- 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.
-
-<<ccoonnttrrooll--UU>>
- Scroll backward ccoouunntt lines. If ccoouunntt is not speci-
- fied, scroll backward the number of lines specified by
- the last <<ccoonnttrrooll--DD>> or <<ccoonnttrrooll--UU>> command. If this
- is the first <<ccoonnttrrooll--DD>> or <<ccoonnttrrooll--UU>> 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.)
- This is an error if the movement is past the beginning
- of the file.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--2211
-
-
- The <<ccoonnttrrooll--UU>> command is an absolute movement.
-
- Line: Set to the current line minus the amount
- scrolled.
- Column: Set to the first nonblank character in the
- line.
- Options: None.
-
-<<ccoonnttrrooll--WW>>
- 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.
-
-<<ccoonnttrrooll--YY>>
- Scroll backward ccoouunntt lines, leaving the current line
- and column as is, if possible. This 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.
-
-<<ccoonnttrrooll--ZZ>>
- Suspend the current editor session. If the file has
- been modified since it was last completely written, and
- the aauuttoowwrriittee 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 aauuttoowwrriittee option.
-
-<<eessccaappee>>
- Execute eexx commands or cancel partial commands. If an
- eexx command is being entered (e.g. //, ??, :: or !!), the
- command is executed. If a partial command has been
- entered, e.g. or the command is cancelled. Otherwise,
- it is an error.
-
- Line: When an eexx command is being executed, the cur-
- rent line is set as described for that com-
- mand. Otherwise, unchanged.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--2222 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Column: When an eexx command is being executed, the cur-
- rent column is set as described for that com-
- mand. Otherwise, unchanged.
- Options: None.
-
-<<ccoonnttrrooll--]]>>
- Push a tag reference onto the tag stack. The tags
- files (see the ttaaggss 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 <<ccoonn--
- ttrrooll--]]>> 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 ttaaggss and ttaagglleennggtthh options.
-
-<<ccoonnttrrooll--^^>>
- Switch to the most recently edited file.
-
- If the file has been modified since it was last com-
- pletely written, and the aauuttoowwrriittee 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 aauuttoowwrriittee option.
-
-[[ccoouunntt]] <<ssppaaccee>>
-[[ccoouunntt]] ll
- Move the cursor forward ccoouunntt characters without chang-
- ing the current line. This is an error if the cursor
- is on the last character in the line.
-
- The <<ssppaaccee>> and ll commands may be used as the motion
- component of other vvii 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.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--2233
-
-
- Line: Unchanged.
- Column: Set to the current character plus the next
- ccoouunntt characters, or to the last character on
- the line if ccoouunntt is greater than the number
- of characters in the line after the current
- character.
- Options: None.
-
-[[ccoouunntt]] !! mmoottiioonn sshheellll--aarrgguummeenntt((ss))
- Replace text with results from a shell command. Pass
- the lines specified by the ccoouunntt and mmoottiioonn arguments
- as standard input to the program named by the sshheellll
- option, and replace those lines with the output (both
- standard error and standard output) of that command.
-
- After the motion is entered, vvii prompts for arguments
- to the shell command.
-
- Within those arguments, "%%" and "##" characters are
- expanded to the current and alternate pathnames,
- respectively. The "!!" character is expanded with the
- command text of the previous !! or ::!! commands.
- (Therefore, the command !!!! repeats the previous !!
- command.) The special meanings of "%%", "##" and "!!"
- can be overridden by escaping them with a backslash.
- If no !! or ::!! command has yet been executed, it is an
- error to use an unescaped "!!" character. The !! com-
- mand does _n_o_t do shell expansion on the strings pro-
- vided as arguments. If any of the above expansions
- change the arguments the user entered, the command is
- redisplayed at the bottom of the screen.
-
- VVii then executes the program named by the sshheellll option,
- with a --cc flag followed by the arguments (which are
- bundled into a single argument).
-
- The !! command is permitted in an empty file.
-
- If the file has been modified since it was last com-
- pletely written, the !! command will warn you.
-
- Line: The first line of the replaced text.
- Column: The first column of the replaced text.
- Options: Affected by the sshheellll option.
-
-[[ccoouunntt]] ## ++||--||##
- Increment or decrement the current number. The current
- number begins at the first non-number character on or
- before the current cursor position, or the beginning of
- the line, and extends up to the first non-number char-
- acter on or after the current cursor position or the
- end of the line. If the trailing character is a ++, the
- number is incremented by ccoouunntt. If the trailing
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--2244 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- character is a --, the number is decremented by ccoouunntt.
- If the trailing character is a ##, the previous incre-
- ment or decrement is repeated.
-
- The format of the number (decimal, hexadecimal, and
- octal, and leading 0's) is retained unless the new
- value cannot be represented in the previous format.
-
- Line: Unchanged.
- Column: Set to the first character in the cursor word.
- Options: None.
-
-[[ccoouunntt]] $$
- Move the cursor to the end of a line. If ccoouunntt is
- specified, the cursor moves down ccoouunntt -- 11 lines.
-
- It is not an error to use the $$ command when the cursor
- is on the last character in the line or when the line
- is empty.
-
- The $$ command may be used as the motion component of
- other vvii 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 $$ 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 ccoouunntt minus 1.
- Column: Set to the last character in the line.
- Options: None.
-
-%%
- Move to the matching character. The cursor moves to
- the parenthesis or curly brace which _m_a_t_c_h_e_s 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 %%
- command on a line without a parenthesis or curly brace.
- Historically, any ccoouunntt specified to the %% command was
- ignored.
-
- The %% command is an absolute movement. The %% command
- may be used as the motion component of other vvii 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.
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--2255
-
-
- Line: Set to the line containing the matching char-
- acter.
- Column: Set to the matching character.
- Options: None.
-
-&&
- Repeat the previous substitution command on the current
- line.
-
- Historically, any ccoouunntt specified to the && 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 eeddccoommppaattiibbllee, eexxtteennddeedd,
- iiggnnoorreeccaassee and mmaaggiicc options.
-
-''<<cchhaarraacctteerr>>
-``<<cchhaarraacctteerr>>
- Return to a context marked by the character <<cchhaarraacc--
- tteerr>>. If <<cchhaarraacctteerr>> is the "''" or "``" character,
- return to the previous context. If <<cchhaarraacctteerr>> is any
- other character, return to the context marked by that
- character (see the mm command for more information). If
- the command is the '' 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 ``
- 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 '' and `` commands are both absolute movements. They
- may be used as a motion component for other vvii com-
- mands. For the '' command, any text copied into a
- buffer is line oriented. For the `` command, any text
- copied into a buffer is character oriented, unless it
- both starts and stops at the first character in the
- line, in which case it is line oriented. In addition,
- when using the `` 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 starting and ending lines, respec-
- tively.
-
- Line: Set to the line from the context.
- Column: Set to the first nonblank character in the
- line, for the '' command, and set to the con-
- text's column for the `` command.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--2266 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Options: None.
-
-[[ccoouunntt]] ((
- Back up ccoouunntt sentences.
-
- The (( command is an absolute movement. The (( command
- may be used as the motion component of other vvii 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. In the latter
- case, the stopping point of the region is adjusted to
- be the end of the line immediately before it, and not
- the original cursor position.
-
- Line: Set to the line containing the beginning of
- the sentence.
- Column: Set to the first nonblank character of the
- sentence.
- Options: None.
-
-[[ccoouunntt]] ))
- Move forward ccoouunntt sentences.
-
- The )) command is an absolute movement. The )) command
- may be used as the motion component of other vvii 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: None.
-
-[[ccoouunntt]] ,,
- Reverse find character ccoouunntt times. Reverse the last
- FF, ff, TT or tt command, searching the other way in the
- line, ccoouunntt times.
-
- The ,, command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented.
-
- Line: Unchanged.
- Column: Set to the searched-for character.
- Options: None.
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--2277
-
-
-[[ccoouunntt]] --
- Move to first nonblank of the previous line, ccoouunntt
- times.
-
- This is an error if the movement is past the beginning
- of the file.
-
- The -- command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is line oriented.
-
- Line: Set to the current line minus ccoouunntt.
- Column: Set to the first nonblank character in the
- line.
- Options: None.
-
-[[ccoouunntt]] ..
- Repeat the last vvii command that modified text. The
- repeated command may be a command and motion component
- combination. If ccoouunntt is specified, it replaces _b_o_t_h
- the count specified for the repeated command, and, if
- applicable, for the repeated motion component. If
- ccoouunntt is not specified, the counts originally specified
- to the command being repeated are used again.
-
- As a special case, if the .. command is executed imme-
- diately after the uu command, the change log is rolled
- forward or backward, depending on the action of the uu
- command.
-
- Line: Set as described for the repeated command.
- Column: Set as described for the repeated command.
- Options: None.
-
-//RREE<<ccaarrrriiaaggee--rreettuurrnn>>
-//RREE// [[ooffffsseett]]<<ccaarrrriiaaggee--rreettuurrnn>>
-??RREE<<ccaarrrriiaaggee--rreettuurrnn>>
-??RREE?? [[ooffffsseett]]<<ccaarrrriiaaggee--rreettuurrnn>>
-NN
-nn
- Search forward or backward for a regular expression.
- The commands beginning with a slash ("//") character are
- forward searches, the commands beginning with a ques-
- tion mark ("??") are backward searches. VVii 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 // and ?? commands are absolute movements. They may
- be used as the motion components of other vvii commands,
- in which case any text copied into a buffer is charac-
- ter oriented, unless the search started and ended on
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--2288 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- 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 // and ?? commands, if the wwrraappssccaann option is
- set.)
-
- If an offset from the matched line is specified (i.e. a
- trailing "//" or "??" character is followed by a signed
- offset), the buffer will always be line oriented (e.g.
- "//ssttrriinngg//++00" will always guarantee a line orientation).
-
- The nn command repeats the previous search.
-
- The NN command repeats the previous search, but in the
- reverse direction.
-
- Missing RE's (e.g. "////<<ccaarrrriiaaggee--rreettuurrnn>>", "//<<ccaarrrriiaaggee--
- rreettuurrnn>>", "????<<ccaarrrriiaaggee--rreettuurrnn>>", or "??<<ccaarrrriiaaggee--
- rreettuurrnn>>" search for the last search RE, in the indi-
- cated direction.
-
- Searches may be interrupted using the <<iinntteerrrruupptt>> char-
- acter.
-
- Line: Set to the line in which the match occurred.
- Column: Set to the first character of the matched
- string.
- Options: Affected by the eeddccoommppaattiibbllee, eexxtteennddeedd,
- iiggnnoorreeccaassee, mmaaggiicc, and wwrraappssccaann options.
-
-00
- Move to the first character in the current line. It is
- not an error to use the 00 command when the cursor is on
- the first character in the line,
-
- The 00 command may be used as the motion component of
- other vvii commands, in which case it is an error if the
- cursor is on the first character in the line.
-
- Line: Unchanged.
- Column: Set to the first character in the line.
- Options: None.
-
-::
- Execute an ex command. VVii prompts for an eexx command on
- the last line of the screen, using a colon ("::") char-
- acter. The command is terminated by a <<ccaarrrriiaaggee--
- rreettuurrnn>>, <<nneewwlliinnee>> or <<eessccaappee>> character; all of these
- characters may be escaped by using a <<lliitteerraall nneexxtt>>
- character. The command is then executed.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--2299
-
-
- If the eexx command writes to the screen, vvii will prompt
- the user for a <<ccaarrrriiaaggee--rreettuurrnn>> before continuing when
- the eexx command finishes. Large amounts of output from
- the eexx command will be paged for the user, and the user
- prompted for a <<ccaarrrriiaaggee--rreettuurrnn>> or <<ssppaaccee>> key to con-
- tinue. In some cases, a quit (normally a "q" charac-
- ter) or <<iinntteerrrruupptt>> may be entered to interrupt the eexx
- command.
-
- When the eexx command finishes, and the user is prompted
- to resume visual mode, it is also possible to enter
- another "::" character followed by another eexx command.
-
- Line: The current line is set as described for the
- eexx command.
- Column: The current column is set as described for the
- eexx command.
- Options: None.
-
-[[ccoouunntt]] ;;
- Repeat the last character find ccoouunntt times. The last
- character find is one of the FF, ff, TT or tt commands.
-
- The ;; command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented.
-
- Line: Unchanged.
- Column: Set to the searched-for character.
- Options: None.
-
-[[ccoouunntt]] << mmoottiioonn
-[[ccoouunntt]] >> mmoottiioonn
- Shift lines left or right. Shift the number of lines
- in the region specified by the motion component, times
- ccoouunntt, left (for the << command) or right (for the >>
- command) by the number of columns specified by the
- sshhiiffttwwiiddtthh option. Only whitespace characters are
- deleted when shifting left; once the first character in
- the line contains a nonblank character, the sshhiifftt will
- succeed, but the line will not be modified.
-
- Line: Unchanged.
- Column: Set to the first nonblank character in the
- line.
- Options: Affected by the sshhiiffttwwiiddtthh option.
-
-@@ bbuuffffeerr
- Execute a named buffer. Execute the named buffer as vvii
- commands. The buffer may include eexx commands, too, but
- they must be expressed as a :: command. If the buffer
- is line oriented, <<nneewwlliinnee>> characters are logically
- appended to each line of the buffer. If the buffer is
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--3300 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- character oriented, <<nneewwlliinnee>> characters are logically
- appended to all but the last line in the buffer.
-
- If the buffer name is "@@", or "**", then the last buffer
- executed shall be used. It is an error to specify "@@@@"
- or "****" if there were no buffer previous executions.
- The text of a macro may contain an @@ command, and it is
- possible to create infinite loops in this manner. (The
- <<iinntteerrrruupptt>> character may be used to interrupt the
- loop.)
-
- 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.
-
-[[ccoouunntt]] AA
- Enter input mode, appending the text after the end of
- the line. If ccoouunntt is specified, the text is repeat-
- edly input ccoouunntt -- 11 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 aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[ccoouunntt]] BB
- Move backward ccoouunntt 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 BB command may be used as the motion component of
- other vvii 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.
-
-[[bbuuffffeerr]] [[ccoouunntt]] CC
- Change text from the current position to the end-of-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--3311
-
-
- line. If ccoouunntt is specified, the input text replaces
- from the current position to the end-of-line, plus
- ccoouunntt -- 11 subsequent lines.
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[bbuuffffeerr]] DD
- Delete text from the current position to the end-of-
- line.
-
- It is not an error to execute the DD 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.
-
-[[ccoouunntt]] EE
- Move forward ccoouunntt 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 EE command may be used as the motion component of
- other vvii 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.
-
-[[ccoouunntt]] FF <<cchhaarraacctteerr>>
- Search ccoouunntt times backward through the current line
- for <<cchhaarraacctteerr>>.
-
- The FF command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented.
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--3322 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Line: Unchanged.
- Column: Set to the searched-for character.
- Options: None.
-
-[[ccoouunntt]] GG
- Move to line ccoouunntt, or the last line of the file if
- ccoouunntt not specified.
-
- The GG command is an absolute movement. The GG command
- may be used as the motion component of other vvii com-
- mands, in which case any text copied into a buffer is
- line oriented.
-
- Line: Set to ccoouunntt, if specified, otherwise, the
- last line.
- Column: Set to the first nonblank character in the
- line.
- Options: None.
-
-[[ccoouunntt]] HH
- Move to the screen line ccoouunntt -- 11 lines below the top
- of the screen.
-
- The HH command is an absolute movement. The HH command
- may be used as the motion component of other vvii com-
- mands, in which case any text copied into a buffer is
- line oriented.
-
- Line: Set to the line ccoouunntt -- 11 lines below the top
- of the screen.
- Column: Set to the first nonblank character of the
- _s_c_r_e_e_n line.
- Options: None.
-
-[[ccoouunntt]] II
- Enter input mode, inserting the text at the beginning
- of the line. If ccoouunntt is specified, the text input is
- repeatedly input ccoouunntt -- 11 more times.
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: None.
-
-[[ccoouunntt]] JJ
- Join lines. If ccoouunntt is specified, ccoouunntt lines are
- joined; a minimum of two lines are always joined,
- regardless of the value of ccoouunntt.
-
- 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
- ("((") do nothing. Otherwise, if the current line ends
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--3333
-
-
- with a question mark ("??"), period ("..") or exclama-
- tion point ("!!"), 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.
- Options: None.
-
-[[ccoouunntt]] LL
- Move to the screen line ccoouunntt -- 11 lines above the bot-
- tom of the screen.
-
- The LL command is an absolute movement. The LL command
- may be used as the motion component of other vvii com-
- mands, in which case any text copied into a buffer is
- line oriented.
-
- Line: Set to the line ccoouunntt -- 11 lines above the bot-
- tom of the screen.
- Column: Set to the first nonblank character of the
- _s_c_r_e_e_n line.
- Options: None.
-
- MM
- Move to the screen line in the middle of the screen.
-
- The MM command is an absolute movement. The MM command
- may be used as the motion component of other vvii com-
- mands, in which case any text copied into a buffer is
- line oriented.
-
- Historically, any ccoouunntt specified to the MM command was
- ignored.
-
- Line: Set to the line in the middle of the screen.
- Column: Set to the first nonblank character of the
- _s_c_r_e_e_n line.
- Options: None.
-
-[[ccoouunntt]] OO
- Enter input mode, appending text in a new line above
- the current line. If ccoouunntt is specified, the text
- input is repeatedly input ccoouunntt -- 11 more times.
-
- Historically, any ccoouunntt specified to the OO command was
- ignored.
-
- Line: Set to the last line upon which characters
- were entered.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--3344 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[bbuuffffeerr]] PP
- 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.
-
- 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.
-
-QQ
- Exit vvii (or visual) mode and switch to eexx mode.
-
- Line: Unchanged.
- Column: No longer relevant.
- Options: None.
-
-[[ccoouunntt]] RR
- Enter input mode, replacing the characters in the cur-
- rent line. If ccoouunntt is specified, the text input is
- repeatedly input ccoouunntt -- 11 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 aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[bbuuffffeerr]] [[ccoouunntt]] SS
- Substitute ccoouunntt lines.
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--3355
-
-
-[[ccoouunntt]] TT <<cchhaarraacctteerr>>
- Search backward, ccoouunntt times, through the current line
- for the character _a_f_t_e_r the specified <<cchhaarraacctteerr>>.
-
- The TT command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented.
-
- Line: Unchanged.
- Column: Set to the character _a_f_t_e_r the searched-for
- character.
- Options: None.
-
-UU
- 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.
-
-[[ccoouunntt]] WW
- Move forward ccoouunntt 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 WW command may be used as the motion component of
- other vvii 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.
-
-[[bbuuffffeerr]] [[ccoouunntt]] XX
- Delete ccoouunntt 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 ccoouunntt, or
- the first character if count is greater than
- the number of characters in the line before
- the cursor.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--3366 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Options: None.
-
-[[bbuuffffeerr]] [[ccoouunntt]] YY
- Copy (or "yank") ccoouunntt lines into the specified buffer.
-
- Line: Unchanged.
- Column: Unchanged.
- Options: None.
-
-ZZZZ
- Write the file and exit vvii. The file is only written
- if it has been modified since the last complete write
- of the file to any file.
-
- The ZZZZ command will exit the editor after writing the
- file, if there are no further files to edit. Entering
- two "quit" commands (i.e. wwqq, qquuiitt, xxiitt or ZZZZ) 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.
-
-[[ccoouunntt]] [[[[
- Back up ccoouunntt section boundaries.
-
- The [[[[ command is an absolute movement. The [[[[ command
- may be used as the motion component of other vvii 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.
-
- This is an error if the movement is past the beginning
- of the file.
-
- Line: Set to the previous line that is ccoouunntt 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 sseeccttiioonnss option.
-
-[[ccoouunntt]] ]]]]
- Move forward ccoouunntt section boundaries.
-
- The ]]]] command is an absolute movement. The ]]]] command
- may be used as the motion component of other vvii 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.
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--3377
-
-
- This is an error if the movement is past the end of the
- file.
-
- Line: Set to the line that is ccoouunntt 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 sseeccttiioonnss option.
-
-^^
- Move to first nonblank character on the current line.
-
- The ^^ command may be used as the motion component of
- other vvii 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.
-
-[[ccoouunntt]] __
- Move down ccoouunntt -- 11 lines, to the first nonblank char-
- acter. The __ command may be used as the motion compo-
- nent of other vvii commands, in which case any text
- copied into a buffer is line oriented.
-
- It is not an error to execute the __ command when the
- cursor is on the first character in the line.
-
- Line: The current line plus ccoouunntt -- 11.
- Column: The first nonblank character in the line.
- Options: None.
-
-[[ccoouunntt]] aa
- Enter input mode, appending the text after the cursor.
- If ccoouunntt is specified, the text input is repeatedly
- input ccoouunntt -- 11 more times.
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[ccoouunntt]] bb
- Move backward ccoouunntt 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
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--3388 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- 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 bb command may be used as the motion component of
- other vvii 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.
-
-[[bbuuffffeerr]] [[ccoouunntt]] cc mmoottiioonn
- Change a region of text. If only part of a single line
- is affected, then the last character being changed is
- marked with a "$$". Otherwise, the region of text is
- deleted, and input mode is entered.
-
- If ccoouunntt is specified, it is applied to the mmoottiioonn.
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[bbuuffffeerr]] [[ccoouunntt]] dd mmoottiioonn
- Delete a region of text. If ccoouunntt is specified, it is
- applied to the mmoottiioonn.
-
- 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.
-
-[[ccoouunntt]] ee
- Move forward ccoouunntt 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 ee command may be used as the motion component of
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--3399
-
-
- other vvii 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.
-
-[[ccoouunntt]] ff <<cchhaarraacctteerr>>
- Search forward, ccoouunntt times, through the rest of the
- current line for <<cchhaarraacctteerr>>.
-
- The ff command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented.
-
- Line: Unchanged.
- Column: Set to the searched-for character.
- Options: None.
-
-[[ccoouunntt]] ii
- Enter input mode, inserting the text before the cursor.
- If ccoouunntt is specified, the text input is repeatedly
- input ccoouunntt -- 11 more times.
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-mm <<cchhaarraacctteerr>>
- Save the current context (line and column) as <<cchhaarraacc--
- tteerr>>. The exact position is referred to by "``<<cchhaarraacc--
- tteerr>>". The line is referred to by "''<<cchhaarraacctteerr>>".
-
- Historically, <<cchhaarraacctteerr>> was restricted to lower-case
- letters only, nnvvii permits the use of any character.
-
- Line: Unchanged.
- Column: Unchanged.
- Options: None.
-
-[[ccoouunntt]] oo
- Enter input mode, appending text in a new line under
- the current line. If ccoouunntt is specified, the text
- input is repeatedly input ccoouunntt -- 11 more times.
-
- Historically, any ccoouunntt specified to the oo command was
- ignored.
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--4400 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Line: Set to the last line upon which characters
- were entered.
- Column: Set to the last character entered.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[bbuuffffeerr]] pp
- 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.
-
- 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.
-
-[[ccoouunntt]] rr <<cchhaarraacctteerr>>
- Replace characters. The next ccoouunntt characters in the
- line are replaced with <<cchhaarraacctteerr>>. Replacing charac-
- ters with <<nneewwlliinnee>> characters results in creating new,
- empty lines into the file.
-
- If <<cchhaarraacctteerr>> is <<eessccaappee>>, the command is cancelled.
-
- Line: Unchanged unless the replacement character is
- a <<nneewwlliinnee>>, in which case it is set to the
- current line plus ccoouunntt -- 11.
- Column: Set to the last character replaced, unless the
- replacement character is a <<nneewwlliinnee>>, in which
- case the cursor is in column 1 of the last
- line inserted.
- Options: None.
-
-[[bbuuffffeerr]] [[ccoouunntt]] ss
- Substitute ccoouunntt 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 aallttwweerraassee, aauuttooiinnddeenntt, bbeeaauu--
- ttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraappmmaarrggiinn
- options.
-
-[[ccoouunntt]] tt <<cchhaarraacctteerr>>
- Search forward, ccoouunntt times, through the current line
- for the character immediately _b_e_f_o_r_e <<cchhaarraacctteerr>>.
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--4411
-
-
- The tt command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented.
-
- Line: Unchanged.
- Column: Set to the character _b_e_f_o_r_e the searched-for
- character.
- Options: None.
-
-uu
- Undo the last change made to the file. If repeated,
- the uu command alternates between these two states, and
- is its own inverse. When used after an insert that
- inserted text on more than one line, the lines are
- saved in the numeric buffers.
-
- The .. command, when used immediately after the uu com-
- mand, causes the change log to be rolled forward or
- backward, depending on the action of the uu 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.
-
-[[ccoouunntt]] ww
- Move forward ccoouunntt 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 ww command may be used as the motion component of
- other vvii 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.
-
-[[bbuuffffeerr]] [[ccoouunntt]] xx
- Delete ccoouunntt 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.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--4422 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- 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.
-
-[[bbuuffffeerr]] [[ccoouunntt]] yy mmoottiioonn
- Copy (or "yank") a text region specified by the ccoouunntt
- and motion into a buffer. If ccoouunntt is specified, it is
- applied to the mmoottiioonn.
-
- 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.
-
-[[ccoouunntt11]] zz [[ccoouunntt22]] ttyyppee
- Redraw the screen with a window ccoouunntt22 lines long, with
- line ccoouunntt11 placed as specified by the ttyyppee character.
- If ccoouunntt11 is not specified, it defaults to the current
- line. If ccoouunntt22 is not specified, it defaults to the
- current window size.
-
- The following ttyyppee characters may be used:
-
- + If ccoouunntt11 is specified, place the line ccoouunntt11
- at the top of the screen. Otherwise, display
- the screen after the current screen, similarly
- to the <<ccoonnttrrooll--FF>> command.
- <carriage-return>
- Place the line ccoouunntt11 at the top of the
- screen.
- . Place the line ccoouunntt11 in the center of the
- screen.
- - Place the line ccoouunntt11 at the bottom of the
- screen.
- ^ If ccoouunntt11 is specified, place the line that is
- at the top of the screen when ccoouunntt11 is at the
- bottom of the screen, at the bottom of the
- screen, i.e. display the screen before the
- screen before ccoouunntt11. Otherwise, display the
- screen before the current screen, similarly to
- the <<ccoonnttrrooll--BB>> command.
-
- Line: Set to ccoouunntt11 unless ccoouunntt11 is not specified
- and the ttyyppee character was either "^^" or "++",
- 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,
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--4433
-
-
- respectively.
- Column: Set to the first nonblank character in the
- line.
- Options: None.
-
-[[ccoouunntt]] {{
- Move backward ccoouunntt paragraphs.
-
- The {{ command is an absolute movement. The {{ command
- may be used as the motion component of other vvii com-
- mands, in which case any text copied into a buffer is
- character oriented, unless the starting character is
- 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 ppaarraaggrraapphh option.
-
-[[ccoouunntt]] ||
- Move to a specific _c_o_l_u_m_n position on the current line.
-
- The || command may be used as the motion component of
- other vvii commands, in which case any text copied into a
- buffer is character oriented. It is an error to use
- the || 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 ccoouunntt, if the position
- exists in the line. If the column length of
- the current line is less than ccoouunntt, the cur-
- sor is moved to the last character in the
- line.
- Options: None.
-
-[[ccoouunntt]] }}
- Move forward ccoouunntt paragraphs.
-
- The }} command is an absolute movement. The }} command
- may be used as the motion component of other vvii 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.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--4444 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- Options: Affected by the ppaarraaggrraapphh option.
-
-[[ccoouunntt]] ~~
- Reverse the case of the next ccoouunntt character(s). This
- is the historic semantic for the ~~ command and it is
- only in effect if the ttiillddeeoopp 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 ~~ command did not take an associated
- 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 nnvvii, 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 ccoouunntt
- characters, or, end of file.
- Column: Set to the character after ccoouunntt characters,
- or, end-of-file.
- Options: Affected by the ttiillddeeoopp option.
-
-[[ccoouunntt]] ~~ mmoottiioonn
- Reverse the case of the characters in a text region
- specified by the ccoouunntt and mmoottiioonn. Only in effect if
- the ttiillddeeoopp 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 ttiillddeeoopp option.
-
-<<iinntteerrrruupptt>>
- Interrupt the current operation. Many of the poten-
- tially long-running vvii 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 vvii.
-
- If the <<iinntteerrrruupptt>> character is used to interrupt while
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--4455
-
-
- entering an eexx command, the command is aborted, the
- cursor returns to its previous position, and vvii remains
- in command mode.
-
- Generally, if the <<iinntteerrrruupptt>> 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.
-
- 1111.. VVii TTeexxtt IInnppuutt CCoommmmaannddss
-
- The following section describes the commands
- available in the text input mode of the vvii editor.
-
- Historically, vvii implementations only permitted
- the characters inserted on the current line to be
- erased. In addition, only the <<ccoonnttrrooll--DD>> erase char-
- acter and the "00<<ccoonnttrrooll--DD>>" and "^^<<ccoonnttrrooll--DD>>" 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, vvii always used <<ccoonnttrrooll--HH>> and <<ccoonn--
- ttrrooll--WW>> 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.
-
- <<nnuull>>
- If the first character of the input is a <<nnuull>>,
- the previous input is replayed, as if just
- entered.
-
- <<ccoonnttrrooll--DD>>
- 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,
- <<ccoonnttrrooll--DD>> is ignored. Otherwise, a literal
- <<ccoonnttrrooll--DD>> character is entered.
-
- ^^<<ccoonnttrrooll--DD>>
- If the previous character on the line was an
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--4466 NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss))
-
-
- autoindent character, erase all of the autoindent
- characters on the line. In addition, the autoin-
- dent level is reset to 0.
-
- 00<<ccoonnttrrooll--DD>>
- If the previous character on the line was an
- autoindent character, erase all of the autoindent
- characters on the line.
-
- <<ccoonnttrrooll--TT>>
- Insert sufficient <<ttaabb>> and <<ssppaaccee>> characters to
- move the cursor forward to a column immediately
- after the next column which is an even multiple of
- the sshhiiffttwwiiddtthh option.
-
- Historically, vvii did not permit the <<ccoonnttrrooll--TT>>
- command to be used unless the cursor was at the
- first column of a new line or it was preceded only
- by autoindent characters. NNvvii permits it to be
- used at any time during insert mode.
-
- <<eerraassee>>
- <<ccoonnttrrooll--HH>>
- Erase the last character.
-
- <<lliitteerraall nneexxtt>>
- Quote the next character. The next character will
- not be mapped (see the mmaapp command for more infor-
- mation) or interpreted specially. A carat ("^^")
- character will be displayed immediately as a
- placeholder, but will be replaced by the next
- character.
-
- <<eessccaappee>>
- Resolve all text input into the file, and return
- to command mode.
-
- <<lliinnee eerraassee>>
- Erase the current line.
-
- <<ccoonnttrrooll--WW>>
- <<wwoorrdd eerraassee>>
- Erase the last word. The definition of word is
- dependent on the aallttwweerraassee and ttttyywweerraassee options.
-
- <<ccoonnttrrooll--XX>>[[00--99AA--FFaa--ff]]**
- Insert a character with the specified hexadecimal
- value into the text.
-
- <<iinntteerrrruupptt>>
- Interrupt text input mode, returning to command
- mode. If the <<iinntteerrrruupptt>> character is used to
- interrupt inserting text into the file, it is as
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((VVii CCoommmmaannddss)) UUSSDD::1133--4477
-
-
- if the <<eessccaappee>> character was used; all text input
- up to the interruption is resolved into the file.
-
- 1122.. EExx AAddddrreessssiinngg
-
- Addressing in eexx (and when eexx commands are exe-
- cuted from vvii) 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.
-
- Addresses are constructed by one or more of the
- following methods:
-
- (1) The address ".." refers to the current line.
-
- (2) The address "$$" refers to the last line of the
- file.
-
- (3) The address "NN", where NN is a positive number,
- refers to the N-th line of the file.
-
- (4) The address "''<<cchhaarraacctteerr>>" or "``<<cchhaarraacctteerr>>"
- refers to the line marked with the name <<cchhaarraacc--
- tteerr>>. (See the kk or mm commands for more infor-
- mation on how to mark lines.)
-
- (5) A regular expression (RE) enclosed by slashes
- ("//") is an address, and it refers to the first
- line found by searching forward from the line
- _a_f_t_e_r 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 "////",
- the last RE used in any command is used in the
- search.
-
- If the eexxtteennddeedd option is set, the RE is handled
- as an extended RE, not a basic RE. If the wwrraapp--
- ssccaann 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 "\\//" is accepted for historic reasons,
- and is identical to "////".
-
- (6) An RE enclosed in question marks ("??")
- addresses the first line found by searching
- backward from the line _p_r_e_c_e_d_i_n_g the current
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--4488 NNvvii//NNeexx RReeffeerreennccee
-
-
- 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 "????",
- the last RE used in any command is used in the
- search.
-
- If the eexxtteennddeedd option is set, the RE is handled
- as an extended RE, not a basic RE. If the wwrraapp--
- ssccaann option is set, the search wraps around
- 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 "\\??" is accepted for historic reasons,
- and is identical to "????".
-
- (7) An address followed by a plus sign ("++") or a
- minus sign ("--") 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 "++" or "--" followed by a number is
- an offset from the current line. For example,
- "--55" is the same as "..--55".
-
- (9) An address ending with "++" or "--" has 1 added to
- or subtracted from the address, respectively.
- As a consequence of this rule and of the previ-
- ous rule, the address "--" refers to the line
- preceding the current line. Moreover, trailing
- "++" and "--" characters have a cumulative effect.
- For example, "++++--++++" refers to the current line
- plus 3.
-
- (10) A percent sign ("%%") is equivalent to the
- address range "11,,$$".
-
- EExx 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 eexx command, the first addresses
- specified are discarded. For example, "11,,22,,33,,55"print
- prints lines 3 through 5, because the pprriinntt command
- only takes two addresses.
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--4499
-
-
- The addresses in a range are separated from each
- other by a comma (",,") or a semicolon (";;"). In the
- latter case, the current line ("..") 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
- last line of the file.
-
- 1133.. EExx DDeessccrriippttiioonn
-
- The following words have special meanings for eexx
- commands.
-
- <<eeooff>>
- The end-of-file character is used to scroll the
- screen in the eexx editor. This character is nor-
- mally <<ccoonnttrrooll--DD>>, however, whatever character is
- set for the current terminal is used.
-
- lliinnee
- A single-line address, given in any of the forms
- described in the section entitled "EExx AAddddrreessssiinngg".
- The default for lliinnee is the current line.
-
- rraannggee
- A line, or a pair of line addresses, separated by
- a comma or semicolon. (See the section entitled
- "EExx AAddddrreessssiinngg" for more information.) The
- default for range is the current line _o_n_l_y, i.e.
- "..,,..". A percent sign ("%%") stands for the range
- "11,,$$". The starting address must be less than, or
- equal to, the ending address.
-
- ccoouunntt
- 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 "pp 33000000" in a 10 line
- file is acceptable, and will print from the cur-
- rent line through the last line in the file.
-
- ffllaaggss
- 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 ##, ll or pp commands. In addition,
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--5500 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- any number of "++" or "--" 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 ffllaaggss is none.
-
- ffiillee
- A pattern used to derive a pathname; the default
- is the current file. File names are subjected to
- normal _s_h(1) word expansions.
-
- Anywhere a file name is specified, it is also pos-
- sible to use the special string "//ttmmpp". This will be
- replaced with a temporary file name which can be used
- for temporary work, e.g. "::ee //ttmmpp" 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 _l_a_s_t line addressed by the range, and
- ccoouunntt- subsequent lines are affected by the command,
- e.g. the command "22,,33pp44" 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 lliisstt, nnuummbbeerr
- or pprriinntt 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 pprriinntt 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 <<ccaarrrriiaaggee--rreettuurrnn>>, "%%"
- and "##" retain their literal value when preceded by a
- backslash.
-
- 1144.. EExx CCoommmmaannddss
-
- The following section describes the commands
- available in the eexx editor. In each entry below, the
- tag line is a usage synopsis for the command.
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--5511
-
-
- 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 "aarr[[ggss]]" in the synopsis) can be
- entered as "aarr", "aarrgg" or "aarrggss".
-
- Each eexx command described below notes the new cur-
- rent line after it is executed, as well as any options
- that affect the command.
-
- ""
- A comment. Command lines beginning with the dou-
- ble-quote character ("""") are ignored. This per-
- mits comments in editor scripts and startup files.
-
- <<eenndd--ooff--ffiillee>>
- Scroll the screen. Write the next N lines, where
- N is the value of the ssccrroollll option. The command
- is the end-of-file terminal character, which may
- be different on different terminals. Tradition-
- ally, it is the <<ccoonnttrrooll--DD>> key.
-
- Historically, the eeooff command ignored any preced-
- ing count, and the <<eenndd--ooff--ffiillee>> character was
- ignored unless it was entered as the first charac-
- ter of the command. This implementation treats it
- as a command _o_n_l_y 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: None.
-
- !! aarrgguummeenntt((ss))
- [[rraannggee]]!! aarrgguummeenntt((ss))
- Execute a shell command, or filter lines through a
- shell command. In the first synopsis, the remain-
- der of the line after the "!!" character is passed
- to the program named by the sshheellll option, as a
- single argument.
-
- Within the rest of the line, "%%" and "##" are
- expanded into the current and alternate pathnames,
- respectively. The character "!!" is expanded with
- the command text of the previous !! command.
- (Therefore, the command !!!! repeats the previous !!
- command.) The special meanings of "%%", "##", and
- "!!" can be overridden by escaping them with a
- backslash. If no !! or ::!! command has yet been
- executed, it is an error to use an unescaped "!!"
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--5522 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- character. The !! command does _n_o_t 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.
-
- EExx then executes the program named by the sshheellll
- option, with a --cc flag followed by the arguments
- (which are bundled into a single argument).
-
- The !! command is permitted in an empty file.
-
- If the file has been modified since it was last
- completely written, the command will warn you.
-
- A single "!!" character is displayed when the com-
- mand completes.
-
- In the second form of the !! command, the remain-
- der of the line after the "!!" is passed to the
- program named by the sshheellll 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 aauuttoowwrriittee and wwrriitteeaannyy
- options.
-
- [[rraannggee]] nnuu[[mmbbeerr]] [[ccoouunntt]] [[ffllaaggss]]
- [[rraannggee]] ## [[ccoouunntt]] [[ffllaaggss]]
- 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: None.
-
- @@ bbuuffffeerr
- ** bbuuffffeerr
- Execute a buffer. Each line in the named buffer
- is executed as an eexx command. If no buffer is
- specified, or if the specified buffer is "@@" or
- "**", the last buffer executed is used.
-
- [[rraannggee]] <<[[<< ......]] [[ccoouunntt]] [[ffllaaggss]]
- Shift lines left or right. The specified lines
- are shifted to the left (for the << command) or
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--5533
-
-
- right (for the >> command), by the number of
- columns specified by the sshhiiffttwwiiddtthh option. Only
- leading whitespace characters are deleted when
- shifting left; once the first column of the line
- contains a nonblank character, the sshhiifftt command
- will succeed, but the line will not be modified.
-
- If the command character << or >> 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,
- it is unchanged. Otherwise, it is set to
- the first nonblank character of the low-
- est numbered line shifted.
- Options: Affected by the sshhiiffttwwiiddtthh option.
-
- [[lliinnee]] == [[ffllaaggss]]
- Display the line number. Display the line number
- of lliinnee (which defaults to the last line in the
- file).
-
- Line: Unchanged.
- Options: None.
-
- [[rraannggee]] >>[[>> ......]] [[ccoouunntt]] [[ffllaaggss]]
- Shift right. The specified lines are shifted to
- the right by the number of columns specified by
- the sshhiiffttwwiiddtthh option, by inserting tab and space
- characters. Empty lines are not changed.
-
- If the command character ">>" 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: None.
-
- aabb[[bbrreevv]] llhhss rrhhss
- Add an abbreviation to the current abbreviation
- list. In vvii, if llhhss is entered such that it is
- preceded and followed by characters that cannot be
- part of a word, it is replaced by the string rrhhss.
-
- Line: Unchanged.
- Options: None.
-
- [[lliinnee]] aa[[ppppeenndd]][[!!]]
- 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
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--5544 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- input. If no lines are input, then set to lliinnee,
- or to the first line of the file if a lliinnee of 0
- was specified. Following the command name with a
- "!!" character causes the aauuttooiinnddeenntt option to be
- toggled for the duration of the command.
-
- Line: Unchanged.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt,
- bbeeaauuttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraapp--
- mmaarrggiinn options.
-
- aarr[[ggss]]
- Display the argument list. The current argument
- is displayed inside of "[[" and "]]" characters.
- The argument list is the list of operands speci-
- fied on startup, which can be replaced using the
- nneexxtt command.
-
- Line: Unchanged.
- Options: None.
-
- bbgg
- VVii mode only. Background the current screen.
-
- Line: Set to the current line when the screen
- was last edited.
- Options: None.
-
- [[rraannggee]] cc[[hhaannggee]][[!!]] [[ccoouunntt]]
- Replace the lines with input text. Following the
- command name with a "!!" character causes the
- aauuttooiinnddeenntt 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 aallttwweerraassee, aauuttooiinnddeenntt,
- bbeeaauuttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraapp--
- mmaarrggiinn options.
-
- cchhdd[[iirr]][[!!]] [[ddiirreeccttoorryy]]
- ccdd[[!!]] [[ddiirreeccttoorryy]]
- Change the current working directory. The ddiirreecc--
- ttoorryy argument is subjected to _s_h(1) word expan-
- sions. When invoked with no directory argument
- and the HHOOMMEE environment variable is set, the
- directory named by the HHOOMMEE environment variable
- becomes the new current directory. Otherwise, the
- new current directory becomes the directory
- returned by the _g_e_t_p_w_e_n_t(3) routine.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--5555
-
-
- The cchhddiirr 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
- "!!" character to the command.
-
- Line: Unchanged.
- Options: Affected by the ccddppaatthh option.
-
- [[rraannggee]] ccoo[[ppyy]] lliinnee [[ffllaaggss]]
- [[rraannggee]] tt lliinnee [[ffllaaggss]]
- 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.
-
- [[rraannggee]] dd[[eelleettee]] [[bbuuffffeerr]] [[ccoouunntt]] [[ffllaaggss]]
- 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 ccoouunntt or ffllaaggss values
- were given), eexx treats the letter as a ffllaaggss 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.
-
- ddii[[ssppllaayy]] bb[[uuffffeerrss]] || ss[[ccrreeeennss]] || tt[[aaggss]]
- Display buffers, screens or tags. The ddiissppllaayy
- 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.
-
- ee[[ddiitt]][[!!]] [[++ccmmdd]] [[ffiillee]]
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--5566 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- eexx[[!!]] [[++ccmmdd]] [[ffiillee]]
- 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 "!!" character to the command name.
-
- If the "++ccmmdd" option is specified, that eexx command
- will be executed in the new file. Any eexx 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 vvii mode, and the last line
- of the file if you are in eexx.
- Options: Affected by the aauuttoowwrriittee and wwrriitteeaannyy
- options.
-
- eexxuu[[ssaaggee]] [[ccoommmmaanndd]]
- Display usage for an eexx command. If ccoommmmaanndd is
- specified, a usage statement for that command is
- displayed. Otherwise, usage statements for all eexx
- commands are displayed.
-
- Line: Unchanged.
- Options: None.
-
- ff[[iillee]] [[ffiillee]]
- 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.
-
- ffgg [[nnaammee]]
- VVii 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.
-
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--5577
-
-
- [[rraannggee]] gg[[lloobbaall]] //ppaatttteerrnn// [[ccoommmmaannddss]]
- [[rraannggee]] vv //ppaatttteerrnn// [[ccoommmmaannddss]]
- Apply commands to lines matching (or not matching)
- a pattern. The lines within the given range that
- match ("gg[[lloobbaall]]"), or do not match ("vv") the
- given pattern are selected. Then, the specified
- eexx command(s) are executed with the current line
- ("..") 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 <<nneewwlliinnee>> character with a back-
- slash, or by separating commands with a "||" char-
- acter. If no commands are specified, the command
- defaults to the pprriinntt command.
-
- For the aappppeenndd, cchhaannggee and iinnsseerrtt 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 vviissuuaall command may also be specified as one of
- the eexx commands. In this mode, input is taken
- from the terminal. Entering a QQ command in vvii
- mode causes the next line matching the pattern to
- be selected and vvii to be reentered, until the list
- is exhausted.
-
- The gglloobbaall, vv and uunnddoo commands cannot be used as
- part of these commands.
-
- The editor options aauuttoopprriinntt, aauuttooiinnddeenntt, and
- rreeppoorrtt are turned off for the duration of the
- gglloobbaall and vv commands.
-
- Line: The last line modified.
- Options: None.
-
- hhee[[llpp]]
- Display a help message.
-
- Line: Unchanged.
- Options: None.
-
- [[lliinnee]] ii[[nnsseerrtt]][[!!]]
- The input text is inserted before the specified
- line. Following the command name with a "!!"
- character causes the aauuttooiinnddeenntt 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
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--5588 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- target line, or to the first line of the
- file if there are no lines preceding the
- target line.
- Options: Affected by the aallttwweerraassee, aauuttooiinnddeenntt,
- bbeeaauuttiiffyy, sshhoowwmmaattcchh, ttttyywweerraassee and wwrraapp--
- mmaarrggiinn options.
-
- [[rraannggee]] jj[[ooiinn]][[!!]] [[ccoouunntt]] [[ffllaaggss]]
- Join lines of text together.
-
- A ccoouunntt specified to the command specifies that
- the last line of the rraannggee plus ccoouunntt subsequent
- lines will be joined. (Note, this differs by one
- from the general rule where only ccoouunntt- 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 ("(("), do nothing. Otherwise, if
- the current line ends with a question mark ("??"),
- period ("..") or exclamation point ("!!"), insert
- two spaces. Otherwise, insert a single space.
-
- Appending a "!!" character to the command name
- causes a simpler join with no white-space process-
- ing.
-
- Line: Unchanged.
- Options: None.
-
- [[rraannggee]] ll[[iisstt]] [[ccoouunntt]] [[ffllaaggss]]
- Display the lines unambiguously. Tabs are dis-
- played as "^^II", and the end of the line is marked
- with a "$$" character.
-
- Line: Set to the last line displayed.
- Options: None.
-
- mmaapp[[!!]] [[llhhss rrhhss]]
- Define or display maps (for vvii only).
-
- If "llhhss" and "rrhhss" are not specified, the current
- set of command mode maps are displayed. If a "!!"
- character is appended to to the command, the text
- input mode maps are displayed.
-
- Otherwise, when the "llhhss" character sequence is
- entered in vvii, the action is as if the correspond-
- ing "rrhhss" had been entered. If a "!!" character
- is appended to the command name, the mapping is
- effective during text input mode, otherwise, it is
- effective during command mode. This allows "llhhss"
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--5599
-
-
- 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
- <<lliitteerraallnext> character to be entered in the llhhss
- string in visual mode.
-
- Normally, keys in the rrhhss string are remapped (see
- the rreemmaapp 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 rreemmaapp option. For example, the
- command "::mmaapp nn nnzz.." maps the "nn" key to the nn
- and zz commands.
-
- To exit an infinitely looping map, use the termi-
- nal <<iinntteerrrruupptt>> character.
-
- Line: Unchanged.
- Options: None.
-
- [[lliinnee]] mmaa[[rrkk]] <<cchhaarraacctteerr>>
- [[lliinnee]] kk <<cchhaarraacctteerr>>
- Mark the line with the mark <<cchhaarraacctteerr>>. The
- expressions "''<<cchhaarraacctteerr>>" and "``<<cchhaarraacctteerr>>" can
- then be used as an address in any command that
- uses one.
-
- Line: Unchanged.
- Options: None.
-
- [[rraannggee]] mm[[oovvee]] lliinnee
- 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.
-
- mmkk[[eexxrrcc]][[!!]] ffiillee
- 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
- eexx ssoouurrccee command. If ffiillee already exists, the
- mmkkeexxrrcc command will fail. This check can be over-
- ridden by appending a "!!" character to the com-
- mand.
-
- Line: Unchanged.
- Options: None.
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--6600 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- nn[[eexxtt]][[!!]] [[ffiillee ......]]
- Edit the next file from the argument list. The
- nneexxtt command will fail if the file has been modi-
- fied since the last complete write. This check
- can be overridden by appending the "!!" 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 eeddiitt command.
- Options: Affected by the options aauuttoowwrriittee and
- wwrriitteeaannyy.
-
- [[lliinnee]] oo[[ppeenn]] //ppaatttteerrnn// [[ffllaaggss]]
- Enter open mode. Open mode is the same as being
- in vvii, but with a one-line window. All the stan-
- dard vvii commands are available. If a match is
- found for the optional RE argument, the cursor is
- set to the start of the matching pattern.
-
- _T_h_i_s _c_o_m_m_a_n_d _i_s _n_o_t _y_e_t _i_m_p_l_e_m_e_n_t_e_d_.
-
- 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 ooppeenn option.
-
- pprree[[sseerrvvee]]
- Save the file in a form that can later be recov-
- ered using the eexx --rr option. When the file is
- preserved, an email message is sent to the user.
-
- Line: Unchanged.
- Options: None.
-
- pprreevv[[iioouuss]][[!!]]
- Edit the previous file from the argument list.
- The pprreevviioouuss command will fail if the file has
- been modified since the last complete write. This
- check can be overridden by appending the "!!"
- character to the command name.
-
- Line: Set as described for the eeddiitt command.
- Options: Affected by the options aauuttoowwrriittee and
- wwrriitteeaannyy. None.
-
- [[rraannggee]] pp[[rriinntt]] [[ccoouunntt]] [[ffllaaggss]]
- Display the specified lines.
-
- Line: Set to the last line displayed.
- Options: None.
-
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--6611
-
-
- [[lliinnee]] ppuu[[tt]] [[bbuuffffeerr]]
- 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.
-
- qq[[uuiitt]][[!!]]
- End the editing session. If the file has been
- modified since the last complete write, the qquuiitt
- command will fail. This check may be overridden
- by appending a "!!" character to the command.
-
- If there are more files to edit, the qquuiitt command
- will fail. Appending a "!!" character to the com-
- mand name or entering two qquuiitt commands (i.e. wwqq,
- qquuiitt, xxiitt or ZZZZ) in a row) will override this
- check and the editor will exit.
-
- Line: Unchanged.
- Options: None.
-
- [[lliinnee]] rr[[eeaadd]][[!!]] [[ffiillee]]
- Read a file. A copy of the specified file is
- appended to the line. If lliinnee is 0, the copy is
- inserted at the beginning of the file. If no file
- is specified, the current file is read; if there
- is no current file, then ffiillee becomes the current
- file. If there is no current file and no ffiillee is
- specified, then the rreeaadd command will fail.
-
- If ffiillee is preceded by a "!!" character, ffiillee is
- treated as if it were a shell command, and passed
- to the program named by the SSHHEELLLL environment
- variable. The standard and standard error outputs
- of that command are read into the file after the
- specified line. The special meaning of the "!!"
- character can be overridden by escaping it with a
- backslash ("\\") character.
-
- Line: When executed from eexx, the current line
- is set to the last line read. When exe-
- cuted from vvii, the current line is set to
- the first line read.
- Options: None.
-
- rreecc[[oovveerr]] ffiillee
- Recover ffiillee if it was previously saved. If no
- saved file by that name exists, the rreeccoovveerr com-
- mand behaves similarly to the eeddiitt command.
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--6622 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- Line: Set as described for the eeddiitt command.
- Options: None.
-
- rreess[[iizzee]] [[++||--]]ssiizzee
- VVii mode only. Grow or shrink the current screen.
- If ssiizzee is a positive, signed number, the current
- screen is grown by that many lines. If ssiizzee is a
- negative, signed number, the current screen is
- shrunk by that many lines. If ssiizzee is not signed,
- the current screen is set to the specified ssiizzee.
- Applicable only to split screens.
-
- Line: Unchanged.
- Options: None.
-
- rreeww[[iinndd]][[!!]]
- Rewind the argument list. If the current file has
- been modified since the last complete write, the
- rreewwiinndd command will fail. This check may be over-
- ridden by appending the "!!" 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 eeddiitt command.
- Options: Affected by the aauuttoowwrriittee and wwrriitteeaannyy
- options.
-
- ssee[[tt]] [[ooppttiioonn[[==[[vvaalluuee]]]] ......]] [[nnooooppttiioonn ......]] [[ooppttiioonn??
- ......]] [[aallll]]
- Display or set editor options. When no arguments
- are specified, the editor option tteerrmm, and any
- editor options whose values have been changed from
- the default settings are displayed. If the argu-
- ment aallll is specified, the values of all of editor
- options are displayed.
-
- Specifying an option name followed by the charac-
- ter "??" causes the current value of that option
- to be displayed. The "??" can be separated from
- the option name by whitespace characters. The "??"
- is necessary only for Boolean valued options.
- Boolean options can be given values by the form
- "sseett ooppttiioonn" to turn them on, or "sseett nnooooppttiioonn" to
- turn them off. String and numeric options can be
- assigned by the form "sseett ooppttiioonn==vvaalluuee". 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.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--6633
-
-
- Line: Unchanged.
- Options: None.
-
- sshh[[eellll]]
- Run a shell program. The program named by the
- sshheellll option is run with a --ii (for interactive)
- flag. Editing is resumed when that program exits.
-
- Line: Unchanged.
- Options: None.
-
- ssoo[[uurrccee]] ffiillee
- Read and execute eexx commands from a file. SSoouurrccee
- commands may be nested.
-
- Line: Unchanged.
- Options: None.
-
- sspp[[lliitt]] [[ffiillee ......]]
- VVii 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 ffiillee is specified, the new screen is editing
- 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 ffiillee is specified, set as for the eeddiitt
- command, otherwise unchanged.
- Options: None.
-
- [[rraannggee]] ss[[uubbssttiittuuttee]] [[//ppaatttteerrnn//rreeppllaaccee//]] [[ooppttiioonnss]]
- [[ccoouunntt]] [[ffllaaggss]]
- [[rraannggee]] && [[ooppttiioonnss]] [[ccoouunntt]] [[ffllaaggss]]
- [[rraannggee]] ~~ [[ooppttiioonnss]] [[ccoouunntt]] [[ffllaaggss]]
- Make substitutions. Replace the first instance of
- ppaatttteerrnn with the string rreeppllaaccee on the specified
- line(s). If the "//ppaatttteerrnn//rreeppll//" argument is not
- specified, the "//ppaatttteerrnn//rreeppll//" from the previous
- ssuubbssttiittuuttee command is used.
-
- If ooppttiioonnss includes the letter "cc" (confirm), you
- will be prompted for confirmation before each
- replacement is done. An affirmative response (in
- English, a "yy" character) causes the replacement
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--6644 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- to be made. A quit response (in English, a "qq"
- character) causes the ssuubbssttiittuuttee command to be
- terminated. Any other response causes the
- replacement not to be made, and the ssuubbssttiittuuttee
- command continues. If ooppttiioonnss includes the letter
- "gg" (global), all nonoverlapping instances of ppaatt--
- tteerrnn in the line are replaced.
-
- The && version of the command is the same as not
- specifying a pattern or replacement string to the
- ssuubbssttiittuuttee command, and the "&&" is replaced by the
- pattern and replacement information from the pre-
- vious substitute command.
-
- The ~~ version of the command is the same as && and
- ss, except that the search pattern used is the last
- RE used in _a_n_y command, not necessarily the one
- used in the last ssuubbssttiittuuttee command.
-
- For example, in the sequence
-
- ss//rreedd//bblluuee//
- //ggrreeeenn
- ~~
-
- the "~~" is equivalent to "ss//ggrreeeenn//bblluuee//".
-
- The ssuubbssttiittuuttee command may be interrupted, using
- 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: None.
-
- ssuu[[ssppeenndd]][[!!]]
- sstt[[oopp]][[!!]]
- <<ccoonnttrrooll--ZZ>>
- Suspend the edit session. Appending a "!!" char-
- acter to these commands turns off the aauuttoowwrriittee
- option for the command.
-
- Line: Unchanged.
- Options: Affected by the aauuttoowwrriittee option.
-
- ttaa[[gg]][[!!]] ttaaggssttrriinngg
- 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 ttaagg command will fail. This check can be
- overridden by appending the "!!" character to the
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--6655
-
-
- command name.
-
- The ttaagg command searches for ttaaggssttrriinngg in the tags
- file(s) specified by the option. (See _c_t_a_g_s(1)
- for more information on tags files.)
-
- Line: Set to the line indicated by the tag.
- Options: Affected by the aauuttoowwrriittee, ttaagglleennggtthh,
- ttaaggss and wwrriitteeaannyy options.
-
- ttaaggpp[[oopp]][[!!]] [[ffiillee || nnuummbbeerr]]
- Pop to the specified tag in the tags stack. If
- neither ffiillee or nnuummbbeerr is specified, the ttaaggppoopp
- command pops to the most recent entry on the tags
- stack. If ffiillee or nnuummbbeerr is specified, the ttaaggppoopp
- command pops to the most recent entry in the tags
- stack for that file, or numbered entry in the tags
- stack, respectively. (See the ddiissppllaayy command for
- information on displaying the tags stack.)
-
- If the file has been modified since the last com-
- plete write, the ttaaggppoopp command will fail. This
- check may be overridden by appending a "!!" char-
- acter to the command name.
-
- Line: Set to the line indicated by the tag.
- Options: Affected by the aauuttoowwrriittee, and wwrriitteeaannyy
- options.
-
- ttaaggtt[[oopp]][[!!]]
- 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 ttaaggppoopp command will fail. This
- check may be overridden by appending a "!!" char-
- acter to the command name.
-
- Line: Set to the line indicated by the tag.
- Options: Affected by the aauuttoowwrriittee, and wwrriitteeaannyy
- options.
-
- uunnaa[[bbbbrreevv]] llhhss
- Delete an abbreviation. Delete llhhss from the cur-
- rent list of abbreviations.
-
- Line: Unchanged.
- Options: None.
-
- uu[[nnddoo]]
- Undo the last change made to the file. Changes
- made by gglloobbaall, vv, vviissuuaall and map sequences are
- considered a single command. If repeated, the uu
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--6666 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- command alternates between these two states, and
- is its own inverse.
-
- Line: Set to the last line modified by the com-
- mand.
- Options: None.
-
- uunnmm[[aapp]][[!!]] llhhss
- Unmap a mapped string. Delete the command mode
- map definition for llhhss. If a "!!" character is
- appended to the command name, delete the text
- input mode map definition instead.
-
- Line: Unchanged.
- Options: None.
-
- vvee[[rrssiioonn]]
- Display the version of the eexx//vvii editor.
-
- [[lliinnee]] vvii[[ssuuaall]] [[ttyyppee]] [[ccoouunntt]] [[ffllaaggss]]
- EExx mode only. Enter vvii. The ttyyppee is optional,
- and can be "--", "++" or "^^", as in the eexx zz com-
- mand, to specify the the position of the specified
- line in the screen window. (The default is to
- place the line at the top of the screen window.)
- A ccoouunntt specifies the number of lines that will
- initially be displayed. (The default is the value
- of the wwiinnddooww editor option.)
-
- Line: Unchanged unless lliinnee is specified, in
- which case it is set to that line.
- Options: None.
-
- vvii[[ssuuaall]][[!!]] [[++ccmmdd]] [[ffiillee]]
- VVii mode only. Edit a new file. Identical to the
- "eeddiitt[[!!]] [[++ccmmdd]] [[ffiillee]]" command.
-
- vviiuu[[ssaaggee]] [[ccoommmmaanndd]]
- Display usage for a vvii command. If ccoommmmaanndd is
- specified, a usage statement for that command is
- displayed. Otherwise, usage statements for all vvii
- commands are displayed.
-
- Line: Unchanged.
- Options: None.
-
- [[rraannggee]] ww[[rriittee]][[!!]] [[>>>>]] [[ffiillee]]
- [[rraannggee]] ww[[rriittee]] [[!!]] [[ffiillee]]
- [[rraannggee]] wwnn[[!!]] [[>>>>]] [[ffiillee]]
- [[rraannggee]] wwqq[[!!]] [[>>>>]] [[ffiillee]]
- Write the file. The specified lines (the entire
- file, if no range is given) is written to ffiillee.
- If ffiillee is not specified, the current pathname is
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss)) UUSSDD::1133--6677
-
-
- used. If ffiillee is specified, and it exists, or if
- the current pathname was set using the ffiillee com-
- mand, and the file already exists, these commands
- will fail. Appending a "!!" character to the com-
- mand name will override this check and the write
- will be attempted, regardless.
-
- Specifying the optional ">>>>" 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 "!!" character, the
- program named in the SHELL environment variable is
- invoked with file as its second argument, and the
- specified lines are passed as standard input to
- that command. The "!!" in this usage must be sep-
- arated from command name by at least one whites-
- pace character. The special meaning of the "!!"
- may be overridden by escaping it with a backslash
- ("\\") character.
-
- The wwqq version of the write command will exit the
- editor after writing the file, if there are no
- further files to edit. Appending a "!!" character
- to the command name or entering two "quit" com-
- mands (i.e. wwqq, qquuiitt, xxiitt or ZZZZ) in a row) will
- override this check and the editor will exit,
- ignoring any files that have not yet been edited.
-
- The wwnn 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 rreeaaddoonnllyy and wwrriitteeaannyy
- options.
-
- [[rraannggee]] xx[[iitt]][[!!]] [[ffiillee]]
- Write the file if it has been modified. The spec-
- ified lines are written to ffiillee, if the file has
- been modified since the last complete write to any
- file. If no rraannggee is specified, the entire file
- is written.
-
- The xxiitt command will exit the editor after writing
- the file, if there are no further files to edit.
- Appending a "!!" character to the command name or
- entering two "quit" commands (i.e. wwqq, qquuiitt, xxiitt
- or ZZZZ) in a row) will override this check and the
- editor will exit, ignoring any files that have not
- yet been edited.
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--6688 NNvvii//NNeexx RReeffeerreennccee ((EExx CCoommmmaannddss))
-
-
- Line: Unchanged.
- Options: Affected by the rreeaaddoonnllyy and wwrriitteeaannyy
- options.
-
- [[rraannggee]] yyaa[[nnkk]] [[bbuuffffeerr]] [[ccoouunntt]]
- Copy the specified lines to a buffer. If no
- buffer is specified, the unnamed buffer is used.
-
- Line: Unchanged.
- Options: None.
-
- [[lliinnee]] zz [[ttyyppee]] [[ccoouunntt]] [[ffllaaggss]]
- Adjust the window. If no ttyyppee is specified, then
- ccoouunntt lines following the specified line are dis-
- played. The default ccoouunntt is the value of the
- wwiinnddooww option. The ttyyppee argument changes the
- position at which lliinnee is displayed on the screen
- by changing the number of lines displayed before
- and after lliinnee. The following ttyyppee 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.
- ^ Write out count lines starting ccoouunntt ** 22
- lines before lliinnee; the net effect of this
- is that a "zz^^" command following a zz com-
- mand writes the previous page.
- = Center lliinnee 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 ttyyppee, where the current
- line is set to the line specified by the
- command.
- Options: Affected by the option.
-
- 1155.. SSeett OOppttiioonnss
-
- 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
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--6699
-
-
- of characters necessary to distinguish an abbreviation
- from all other commands for it to be accepted, in
- nneexx/nnvvii. Historically, only the full name and the
- official abbreviations were accepted by eexx/vvii. 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 eexx and vvii 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 "EExx CCoommmmaannddss".
-
- aallttwweerraassee [[ooffff]]
- VVii only. Change how vvii 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 path-
- name components).
-
- aauuttooiinnddeenntt,, aaii [[ooffff]]
- If this option is set, whenever you create a new
- line (using the vvii AA, aa, CC, cc, II, ii, OO, oo, RR, rr,
- SS, and ss commands, or the eexx aappppeenndd, cchhaannggee, and
- iinnsseerrtt 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
- ttaabbssttoopp 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 <<eessccaappee>>, the indent character will be deleted
- and the line will be empty. For example, if you
- enter <<ccaarrrriiaaggee--rreettuurrnn>> twice in succession, the
- line created by the first <<ccaarrrriiaaggee--rreettuurrnn>> will
- not have any characters in it, regardless of the
- indentation of the previous or subsequent line.
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--7700 NNvvii//NNeexx RReeffeerreennccee
-
-
- 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 <<wwoorrdd--eerraassee>> 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 <<ccoonn--
- ttrrooll--DD>> key would erase the indent characters.
- Both the <<ccoonnttrrooll--DD>> key and the usual erase keys
- work in nnvvii.) In addition, if the cursor is posi-
- tioned at the end of the indent characters, the
- keys "00<<ccoonnttrrooll--DD>>" will erase all of the indent
- characters for the current line, resetting the
- indentation level to 0. Similarly, the keys
- "^^<<ccoonnttrrooll--DD>>" 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 aauuttooiinnddeenntt option is set, the SS
- and cccc 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.
-
- aauuttoopprriinntt,, aapp [[ooffff]]
- EExx only. Cause the current line to be automati-
- cally displayed after the eexx commands <<, >>, ccooppyy,
- ddeelleettee, jjooiinn, mmoovvee, ppuutt, tt, UUnnddoo, and uunnddoo. This
- automatic display is suppressed during gglloobbaall and
- vvgglloobbaall commands, and for any command where
- optional flags are used to explicitly display the
- line.
-
- aauuttoowwrriittee,, aaww [[ooffff]]
- If this option is set, the vvii !!, ^^^^, ^^]] and <<ccoonn--
- ttrrooll--ZZ>> commands, and the eexx eeddiitt, nneexxtt, rreewwiinndd,
- ssttoopp, ssuussppeenndd, ttaagg, ttaaggppoopp, and ttaaggttoopp 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 "!!"
- to the eexx commands nneexxtt, rreewwiinndd, ssttoopp, ssuussppeenndd,
- ttaagg, ttaaggppoopp, and ttaaggttoopp stops the automatic write
- from being attempted.
-
- (Historically, the nneexxtt command ignored the
- optional force flag.) Note, the eexx commands eeddiitt,
- qquuiitt, sshheellll, and xxiitt are _n_o_t affected by the
- aauuttoowwrriittee option.
-
- bbeeaauuttiiffyy,, bbff [[ooffff]]
- If this option is set, all control characters that
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--7711
-
-
- are not currently being specially interpreted,
- other than <<ttaabb>>, <<nneewwlliinnee>>, and <<ffoorrmm--ffeeeedd>>, are
- discarded from commands read in by eexx from command
- files, and from input text entered to vvii (either
- into the file or to the colon command line). Text
- files read by eexx/vvii are _n_o_t affected by the bbeeaauu--
- ttiiffyy option.
-
- ccddppaatthh [[eennvviirroonnmmeenntt vvaarriiaabbllee CCDDPPAATTHH,, oorr ccuurrrreenntt ddiirreecc--
- ttoorryy]]
- 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 ccdd command. The value of this
- option defaults to the value of the environmental
- variable CCDDPPAATTHH if it is set, otherwise to the
- current directory. For compatibility with the
- POSIX 1003.2 shell, the ccdd command does _n_o_t 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 ".." character into the CCDDPPAATTHH variable or
- the option value.
-
- ccoolluummnnss,, ccoo [[8800]]
- The number of columns in the screen. Setting this
- option causes eexx/vvii to set (or reset) the environ-
- mental variable CCOOLLUUMMNNSS. See the section entitled
- "SSiizziinngg tthhee SSccrreeeenn" more information.
-
- ccoommmmeenntt [[ooffff]]
- VVii only. If the first non-empty line of the file
- begins with the string "//**", this option causes vvii
- to skip to the end of that C-language comment
- (probably a terribly boring legal notice) before
- displaying the file.
-
- ddiirreeccttoorryy,, ddiirr [[eennvviirroonnmmeenntt vvaarriiaabbllee TTMMPPDDIIRR,, oorr //ttmmpp]]
- The directory where temporary files are created.
- The environmental variable TTMMPPDDIIRR is used as the
- default value if it exists, otherwise //ttmmpp is
- used.
-
- eeddccoommppaattiibbllee,, eedd [[ooffff]]
- Remember the values of the "c" and "g" suffices to
- the ssuubbssttiittuuttee commands, instead of initializing
- them as unset for each new command. Specifying
- pattern and replacement strings to the ssuubbssttiittuuttee
- command unsets the "c" and "g" suffices as well.
-
- eerrrroorrbbeellllss,, eebb [[ooffff]]
- EExx only. EExx error messages are normally presented
- in inverse video. If that is not possible for the
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--7722 NNvvii//NNeexx RReeffeerreennccee
-
-
- terminal, setting this option causes error mes-
- sages to be announced by ringing the terminal
- bell.
-
- eexxrrcc,, eexx [[ooffff]]
- 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 "SSttaarrttuupp IInnffoorrmmaattiioonn" for more informa-
- tion.
-
- eexxtteennddeedd [[ooffff]]
- This option causes all regular expressions to be
- treated as POSIX 1003.2 Extended Regular Expres-
- sions (which are similar to historic _e_g_r_e_p(1)
- style expressions).
-
- ffllaasshh [[oonn]]
- This option causes the screen to flash instead of
- beeping the keyboard, on error, if the terminal
- has the capability.
-
- hhaarrddttaabbss,, hhtt [[88]]
- 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
- nneexx/nnvvii never writes <<ttaabb>> characters to the ter-
- minal, unlike historic versions of eexx/vvii, this
- option does not currently have any affect.
-
- iiggnnoorreeccaassee,, iicc [[ooffff]]
- This option causes regular expressions, both in eexx
- commands and in searches, to be evaluated in a
- case-insensitive manner.
-
- kkeeyyttiimmee [[66]]
- The 10th's of a second eexx/vvii waits for a subse-
- quent key to complete a key mapping.
-
- lleeffttrriigghhtt [[ooffff]]
- VVii only. This option causes the screen to be
- scrolled left-right to view lines longer than the
- screen, instead of the traditional vvii screen
- interface which folds long lines at the right-hand
- margin of the terminal.
-
- lliinneess,, llii [[2244]]
- VVii only. The number of lines in the screen. Set-
- ting this option causes eexx/vvii to set (or reset)
- the environmental variable LLIINNEESS. See the section
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--7733
-
-
- entitled "SSiizziinngg tthhee SSccrreeeenn" for more information.
-
- lliisspp [[ooffff]]
- VVii only. This option changes the behavior of the
- vvii ((, )), {{, }}, [[[[ and ]]]] commands to match the
- Lisp language. Also, the aauuttooiinnddeenntt option's
- behavior is changed to be appropriate for Lisp.
-
- _T_h_i_s _o_p_t_i_o_n _i_s _n_o_t _y_e_t _i_m_p_l_e_m_e_n_t_e_d_.
-
- lliisstt [[ooffff]]
- This option causes lines to be displayed in an
- unambiguous fashion. Specifically, tabs are dis-
- played as control characters, i.e. "^^II", and the
- ends of lines are marked with a "$$" character.
-
- mmaaggiicc [[oonn]]
- This option is on by default. Turning the mmaaggiicc
- option off causes all regular expression charac-
- ters except for "^^" and "$$", to be treated as
- ordinary characters. To re-enable characters
- individually, when the mmaaggiicc option is off, pre-
- cede them with a backslash "\\" character. See the
- section entitled "RReegguullaarr EExxpprreessssiioonnss aanndd RReeppllaaccee--
- mmeenntt SSttrriinnggss" for more information.
-
- mmaattcchhttiimmee [[77]]
- VVii only. The 10th's of a second eexx/vvii pauses on
- the matching character when the sshhoowwmmaattcchh option
- is set.
-
- mmeessgg [[oonn]]
- This option allows other users to contact you
- using the _t_a_l_k(1) and _w_r_i_t_e(1) utilities, while
- you are editing. EExx/vvii 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 _m_e_s_g(1) utility for
- more information.
-
- mmooddeelliinneess,, mmooddeelliinnee [[ooffff]]
- If the mmooddeelliinneess option is set, eexx/vvii has histori-
- cally scanned the first and last five lines of
- each file as it is read for editing, looking for
- any eexx 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
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--7744 NNvvii//NNeexx RReeffeerreennccee
-
-
- or following a tab or space character, and fol-
- lowed by a ":", an eexx command, and another ":".
-
- This option is a security problem of immense pro-
- portions, and should not be used under any circum-
- stances.
-
- _T_h_i_s _o_p_t_i_o_n _w_i_l_l _n_e_v_e_r _b_e _i_m_p_l_e_m_e_n_t_e_d_.
-
- nnuummbbeerr,, nnuu [[ooffff]]
- Precede each line displayed with its current line
- number.
-
- ooccttaall [[ooffff]]
- Display unknown characters as octal numbers,
- instead of the default hexadecimal.
-
- ooppeenn [[oonn]]
- EExx only. If this option is not set, the ooppeenn and
- vviissuuaall commands are disallowed.
-
- ooppttiimmiizzee,, oopptt [[oonn]]
- VVii 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
- white space is printed.
-
- _T_h_i_s _o_p_t_i_o_n _i_s _n_o_t _y_e_t _i_m_p_l_e_m_e_n_t_e_d_.
-
- ppaarraaggrraapphhss,, ppaarraa [[IIPPLLPPPPPPQQPPPP LLIIppppllppiippbbpp]]
- VVii only. Define additional paragraph boundaries
- for the {{ and }} 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
- <<nneewwlliinnee>>..<<cchhaarr--ppaaiirr>>, (where <<cchhaarr--ppaaiirr>> is one
- of the character pairs in the option's value)
- defines a paragraph boundary. For example, if the
- option were set to LLaaAA<<ssppaaccee>>####, then all of the
- following additional paragraph boundaries would be
- recognized:
-
-
- <newline>.La
- <newline>.A<space>
- <newline>.##
-
-
- pprroommpptt [[oonn]]
- EExx only. This option causes eexx to prompt for
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--7755
-
-
- command input with a "::" character; when it is not
- set, no prompt is displayed.
-
- rreeaaddoonnllyy,, rroo [[ooffff]]
- 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 --RR command line option, or editing a
- file which lacks write permission.
-
- rreeccddiirr [[//vvaarr//ttmmpp//vvii..rreeccoovveerr]]
- The directory where recovery files are stored.
-
- If you change the value of rreeccddiirr, be careful to
- choose a directory whose contents are not regu-
- larly deleted. Bad choices include directories in
- memory based filesystems, or //ttmmpp, on most sys-
- tems, as their contents are removed when the
- machine is rebooted.
-
- Public directories like //uussrr//ttmmpp and //vvaarr//ttmmpp 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 rreeccddiirr, you
- must modify the recovery script to operate in your
- chosen recovery area.
-
- See the section entitled "RReeccoovveerryy" for further
- information.
-
- rreeddrraaww,, rree [[ooffff]]
- VVii only. The editor simulates (using great
- amounts of output), an intelligent terminal on a
- dumb terminal (e.g. during insertions in vvii the
- characters to the right of the cursor are
- refreshed as each input character is typed).
-
- _T_h_i_s _o_p_t_i_o_n _i_s _n_o_t _y_e_t _i_m_p_l_e_m_e_n_t_e_d_.
-
- rreemmaapp [[oonn]]
- 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 "AA" is mapped to "BB", and "BB" is mapped to "CC",
- The keystroke "AA" will be mapped to "CC" if the
- rreemmaapp option is set, and to "BB" if it is not set.
-
- rreeppoorrtt [[55]]
- Set the threshold of the number of lines that need
- to be changed or yanked before a message will be
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--7766 NNvvii//NNeexx RReeffeerreennccee
-
-
- 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 _o_r _e_q_u_a_l _t_o the set value, it is reported to
- the user.
-
- rruulleerr [[ooffff]]
- VVii only. Display a row/column ruler on the colon
- command line.
-
- ssccrroollll,, ssccrr [[wwiinnddooww // 22]]
- Set the number of lines scrolled by the vvii <<ccoonn--
- ttrrooll--DD>> and <<ccoonnttrrooll--UU>> commands.
-
- Historically, the eexx zz 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.
-
- sseeccttiioonnss,, sseecctt [[NNHHSSHHHH HHUUnnhhsshh]]
- VVii only. Define additional section boundaries for
- the [[[[ and ]]]] commands. The sseeccttiioonnss option
- should be set to a character string consisting of
- zero or more character pairs. In the text to be
- edited, the character string <<nneewwlliinnee>>..<<cchhaarr--
- ppaaiirr>>, (where <<cchhaarr--ppaaiirr>> is one of the character
- pairs in the option's value), defines a section
- boundary in the same manner that ppaarraaggrraapphh option
- boundaries are defined.
-
- sshheellll,, sshh [[eennvviirroonnmmeenntt vvaarriiaabbllee SSHHEELLLL,, oorr //bbiinn//sshh]]
- Select the shell used by the editor. The speci-
- fied path is the pathname of the shell invoked by
- the vvii !! shell escape command and by the eexx sshheellll
- command. This program is also used to resolve any
- shell meta-characters in eexx commands.
-
- sshhiiffttwwiiddtthh,, ssww [[88]]
- Set the autoindent and shift command indentation
- width. This width is used by the aauuttooiinnddeenntt
- option and by the <<, >>, and sshhiifftt commands.
-
- sshhoowwddiirrttyy [[ooffff]]
- VVii only. Display an asterisk on the colon command
- line if the file has been modified.
-
- sshhoowwmmaattcchh,, ssmm [[ooffff]]
- VVii only. This option causes vvii, when a "}}" or "))"
- is entered, to briefly move the cursor the match-
- ing "{{" or "((". See the mmaattcchhttiimmee option for more
- information.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--7777
-
-
- sshhoowwmmooddee [[ooffff]]
- VVii only. This option causes vvii to display a
- string identifying the current editor mode on the
- colon command line.
-
- ssiiddeessccrroollll [[1166]]
- VVii only. Sets the number of columns that are
- shifted to the left or right, when vvii is doing
- left-right scrolling and the left or right margin
- is crossed. See the lleeffttrriigghhtt option for more
- information.
-
- sslloowwooppeenn,, ssllooww [[ooffff]]
- This option affects the display algorithm used by
- vvii, holding off display updating during input of
- new text to improve throughput when the terminal
- in use is slow and unintelligent.
-
- _T_h_i_s _o_p_t_i_o_n _i_s _n_o_t _y_e_t _i_m_p_l_e_m_e_n_t_e_d_.
-
- ssoouurrcceeaannyy [[ooffff]]
- If this option is turned on, vvii historically read
- startup files that were owned by someone other
- than the editor user. See the section entitled
- "SSttaarrttuupp IInnffoorrmmaattiioonn" for more information. This
- option is a security problem of immense propor-
- tions, and should not be used under any circum-
- stances.
-
- _T_h_i_s _o_p_t_i_o_n _w_i_l_l _n_e_v_e_r _b_e _i_m_p_l_e_m_e_n_t_e_d_.
-
- ttaabbssttoopp,, ttss [[88]]
- This option sets tab widths for the editor dis-
- play.
-
- ttaagglleennggtthh,, ttll [[00]]
- 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.
-
- ttaaggss,, ttaagg [[ttaaggss //vvaarr//ddbb//lliibbcc..ttaaggss //ssyyss//kkeerrnn//ttaaggss]]
- Sets the list of tags files, in search order,
- which are used when the editor searches for a tag.
-
- tteerrmm,, ttttyyttyyppee,, ttttyy [[eennvviirroonnmmeenntt vvaarriiaabbllee TTEERRMM]]
- Set the terminal type. Setting this option causes
- eexx/vvii to set (or reset) the environmental variable
- TTEERRMM.
-
- tteerrssee [[ooffff]]
- This option has historically made editor messages
- less verbose. It has no effect in this
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--7788 NNvvii//NNeexx RReeffeerreennccee
-
-
- implementation. See the vveerrbboossee option for more
- information.
-
- ttiillddeeoopp
- Modify the ~~ command to take an associated motion.
-
- ttiimmeeoouutt,, ttoo [[oonn]]
- If this option is set, eexx/vvii waits for a specific
- period for a subsequent key to complete a key map-
- ping (see the kkeeyyttiimmee 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.
-
- ttttyywweerraassee [[ooffff]]
- VVii only. This option changes how vvii does word
- erase during text input. If this option is set,
- text is broken up into two classes, blank charac-
- ters and nonblank characters. Changing from one
- class to another marks the end of a word.
-
- vveerrbboossee [[ooffff]]
- VVii only. VVii 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.
-
- ww330000 [[nnoo ddeeffaauulltt]]
- VVii only. Set the window size if the baud rate is
- less than 1200 baud. See the wwiinnddooww option for
- more information.
-
- ww11220000 [[nnoo ddeeffaauulltt]]
- VVii only. Set the window size if the baud rate is
- equal to 1200 baud. See the wwiinnddooww option for
- more information.
-
- ww99660000 [[nnoo ddeeffaauulltt]]
- VVii only. Set the window size if the baud rate is
- greater than 1200 baud. See the wwiinnddooww option for
- more information.
-
- wwaarrnn [[oonn]]
- EExx only. This option causes a warning message to
- the terminal if the file has been modified, since
- it was last written, before a !! command.
-
- wwiinnddooww,, ww,, wwii [[eennvviirroonnmmeenntt vvaarriiaabbllee LLIINNEESS]]
- This option determines the default number of lines
- in a screenful, as written by the zz command. It
- also determines the number of lines scrolled by
- the vvii commands <<ccoonnttrrooll--FF>> and <<ccoonnttrrooll--BB>>. The
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--7799
-
-
- 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
- "SSiizziinngg tthhee SSccrreeeenn" for more information). Set-
- ting the value of the wwiinnddooww option is the same as
- using the --ww command line option.
-
- If the value of the wwiinnddooww option (as set by the
- wwiinnddooww, ww330000, ww11220000 or ww99660000 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.
-
- wwrraappmmaarrggiinn,, wwmm [[00]]
- VVii only. If the value of the wwrraappmmaarrggiinn option is
- non-zero, vvii will split lines so that they end at
- least that number of characters before the right-
- hand margin of the screen. (Note, the value of
- wwrraappmmaarrggiinn is _n_o_t a text length. In a screen that
- is 80 columns wide, the command "::sseett wwrraappmmaarr--
- ggiinn==88" 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
- <<ssppaaccee>> or <<ttaabb>> character, and you then enter
- another <<ssppaaccee>> 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.
-
- wwrraappssccaann,, wwss [[oonn]]
- 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.
-
- wwrriitteeaannyy,, wwaa [[ooffff]]
- If this option is set, file-overwriting checks
- that would usually be made before the wwrriittee and
- xxiitt commands, or before an automatic write (see
- the aauuttoowwrriittee option), are not made. This allows
- a write to any file, provided the file permissions
- allow it.
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--8800 NNvvii//NNeexx RReeffeerreennccee
-
-
- 1166.. AAddddiittiioonnaall FFeeaattuurreess iinn NNeexx//NNvvii
-
- There are a few features in nneexx/nnvvii that are not
- found in historic versions of eexx/vvii. Some of the more
- interesting of those features are as follows:
-
- 88--bbiitt cclleeaann ddaattaa,, llaarrggee lliinneess,, ffiilleess
- NNeexx/nnvvii will edit any format file. Line lengths
- are limited by available memory, and file sizes
- are limited by available disk space. The vvii text
- input mode command <<ccoonnttrrooll--XX>> can insert any pos-
- sible character value into the text.
-
- SSpplliitt ssccrreeeennss
- The sspplliitt command divides the screen into multiple
- editing regions. The <<ccoonnttrrooll--WW>> command rotates
- between the foreground screens. The rreessiizzee com-
- mand can be used to grow or shrink a particular
- screen.
-
- BBaacckkggrroouunndd aanndd ffoorreeggrroouunndd ssccrreeeennss
- The bbgg command backgrounds the current screen, and
- the ffgg command foregrounds backgrounded screens.
- The ddiissppllaayy command can be used to list the back-
- ground screens.
-
- TTaagg ssttaacckkss
- Tags are now maintained in a stack. The <<ccoonnttrrooll--
- TT>> command returns to the previous tag location.
- The ttaaggppoopp 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 ddiissppllaayy command
- can be used to list the tags stack. The ttaaggttoopp
- command returns to the top of the tag stack.
-
- NNeeww ddiissppllaayyss
- The ddiissppllaayy command can be used to display the
- current buffers, the backgrounded screens, and the
- tags stack.
-
- IInnffiinniittee uunnddoo
- Changes made during an edit session may be rolled
- backward and forward. A .. command immediately
- after a uu command continues either forward or
- backward depending on whether the uu command was an
- undo or a redo.
-
- UUssaaggee iinnffoorrmmaattiioonn
- The eexxuussaaggee and vviiuussaaggee commands provide usage
- information for all of the eexx and vvii commands by
- default, or, optionally, for a specific command or
- key.
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--8811
-
-
- EExxtteennddeedd RReegguullaarr EExxpprreessssiioonnss
- The eexxtteennddeedd option causes Regular Expressions to
- be interpreted as as Extended Regular Expressions,
- (i.e. _e_g_r_e_p(1) style Regular Expressions).
-
- WWoorrdd sseeaarrcchh
- The <<ccoonnttrrooll--AA>> command searches for the word ref-
- erenced by the cursor.
-
- NNuummbbeerr iinnccrreemmeenntt
- The ## command increments or decrements the number
- referenced by the cursor.
-
- PPrreevviioouuss ffiillee
- The pprreevviioouuss command edits the previous file from
- the argument list.
-
- LLeefftt--rriigghhtt ssccrroolllliinngg
- The lleeffttrriigghhtt option causes nnvvii to do left-right
- screen scrolling, instead of the traditional vvii
- line wrapping.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--8822 NNvvii//NNeexx RReeffeerreennccee
-
-
- 1177.. IInnddeexx
-
- ! 15, 34 @ 20, 35 columns 47
- "" 34 A 20 comment 47
- # 16, 35 B 20 copy 36
- $ 16 C 21 count 10, 33
- % 16 D 21 current pathname 8
- & 17, 42 E 21 d 26
- ( 17 F 21 delete 37
- ) 17 G 21 directory 47
- * 35 H 21 display 37
- + 13 I 22 e 26
- , 18 J 22 edcompatible47
- /RE/ 18 L 22 edit 37
- 0 19 M 22 errorbells 47
- 0<control-D>31 N 18 exrc 47
- : 19 O 22 extended 48
- ; 19 P 23 exusage 37
- < 20, 35 Q 23 f 26
- <control-A> 11 R 23 fg 37
- <control-B> 11 S 23 file 33, 37
- <control-1D2>, 31 T 23 flags 33
- <control-E> 12 U 23 flash 48
- <control-F> 12 W 24 global 38
- <control-G> 12 X 24 hardtabs 48
- <control-1H2>, 31 Y 24 help 38
- <control-J> 13 ZZ 24 i 26
- <control-L> 13 [[ 24 ignorecase 48
- <control-M> 13 - 18 insert 38
- <control-N> 13 ]] 25 j 13
- <control-P> 13 ^ 25 join 38
- <control-R> 13 ^<control-D>31 k 13, 39
- <control-1T4>, 31 _ 25 keytime 48
- <control-U> 14 `<character>17 l 15
- <control-1W4>, 31 a 25 leftright 48
- <control-X> 31 abbrev 35 line 33
- <control-Y> 14 alternate pathname 8 lines 48
- <control-1Z4>, 43 altwerase 46 lisp 48
- <control-]> 15 append 36 list 39, 48
- <control-^> 15 args 36 m 27
- <end-of-file> 34 autoindent 46 magic 48
- <eof> 33 autoprint 46 map 39
- <erase> 31 autowrite 47 mark 39
- <escape>14, 31 b 25 matchtime 48
- <inter7r,up3t0>, 31 beautify 47 mesg 48
- <line erase>31 bg 36 mkexrc 39
- <literal next> 7, 31 bigword 10 modelines 49
- <nul> 30 buffer 8 motion 10
- <space> 15 c 26 move 39
- <word erase>31 cd 36 n 18
- = 35 cdpath 47 next 40
- > 20, 35 change 36 number 35, 49
- ?RE? 18 chdir 36 o 27
-
-
-
-
-
-
-
-
-
-
-NNvvii//NNeexx RReeffeerreennccee UUSSDD::1133--8833
-
-
- octal 49 tildeop 51
- open 40, 49 timeout 51
- optimize 49 ttywerase 52
- p 27 u 28
- paragraph 11 unabbrev 44
- paragraphs 49 undo 44
- preserve 40 unmap 44
- previous 40 unnamed buffer 8
- previous context 9 v 38
- print 40 verbose 52
- prompt 49 version 44
- put 40 visual 44
- quit 41 viusage 44
- r 27 w 28
- range 33 w1200 52
- read 41 w300 52
- readonly 49 w9600 52
- recdir 49 warn 52
- recover 41 window 52
- redraw 50 wn 44
- remap 50 word 10
- report 50 wq 44
- resize 41 wrapmargin 52
- rewind 41 wrapscan 52
- ruler 50 write 44
- s 27 writeany 53
- scroll 50 x 28
- section 11 xit 45
- sections 50 y 28
- sentence 11 yank 45
- set 41 z 28, 45
- shell 42, 50 { 29
- shiftwidth 50 | 29
- showdirty 51 } 29
- showmatch 51 ~ 29, 30, 42
- showmode 51
- sidescroll 51
- slowopen 51
- source 42
- sourceany 51
- split 42
- stop 43
- substitute 42
- suspend 43
- t 27, 36
- tabstop 51
- tag 43
- taglength 51
- tagpop 43
- tags 51
- tagtop 43
- term 51
- terse 51
-
-
-
-
-
-
-
-
-
-
-UUSSDD::1133--22 NNvvii//NNeexx RReeffeerreennccee
-
-
- TTaabbllee ooff CCoonntteennttss
-
- Description ...................................... 3
- Startup Information .............................. 3
- Recovery ......................................... 4
- Sizing the Screen ................................ 7
- Character Display ................................ 7
- Multiple Screens ................................. 8
- Regular Expressions and Replacement Strings ...... 9
- General Editor Description ....................... 10
- Vi Description ................................... 12
- Vi Commands ...................................... 17
- Vi Text Input Commands ........................... 45
- Ex Addressing .................................... 47
- Ex Description ................................... 49
- Ex Commands ...................................... 50
- Set Options ...................................... 68
- Additional Features in Nex/Nvi ................... 79
- Index ............................................ 82
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/usr.bin/watch/Makefile b/usr.bin/watch/Makefile
deleted file mode 100644
index 7a9f602d97b0..000000000000
--- a/usr.bin/watch/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-PROG= watch
-MAN8= watch.8
-BINMODE=500
-LDADD= -ltermcap
-
-.include <bsd.prog.mk>
diff --git a/usr.bin/watch/snp.4 b/usr.bin/watch/snp.4
deleted file mode 100644
index 47b97d8ae896..000000000000
--- a/usr.bin/watch/snp.4
+++ /dev/null
@@ -1,49 +0,0 @@
-.Dd Februar 17, 1995
-.Dt SNP(4)
-.Os
-.Sh NAME
-
- snp - tty snoop interface.
-
-.Sh SYNOPSIS
-#include <sys/snoop.h>
-
-.Sh DESCRIPTION
- /dev/snp? are snoop devices which allow user to attach to any tty
-and watch activities on it. Device can be used by root only.
- To connect device to tty use special iocontrol SNPSTTY.Argument to
-it is a structure 'snptty'.
- struct snptty {
- int st_type;
- int st_unit;
- }
-
-st_type - type of tty to attach. Currently supported are :
- ST_PTY - pseudo-tty devices.
- ST_VTY - virtual ttys (syscons).
- ST_SIO - serial ttys.
-
-st_unit - number of tty unit.
-By specifying ever st_type or st_unit -1 user can detach snp
-device from tty.
-
- SNPGTTY - iocontrol returns current tty attached.
- FIONREAD - iocontrol returns ever positive value equal to number of
- characters in read buffer. Also special values defined:
- SNP_OFLOW - device overflow occured,device automatically
- detached.
- SNP_TTYCLOSE - tty still has not been attached.
- SNP_DETACH - snp device has been detached by user or
- tty device has been closed and detached
- automatically.
-
-.Sh SEE ALSO
-
-watch(8), pty(4), sio(4)
-.Sh BUGS
-
-While in line mode,user input can't be seen.
-Has no ability to write to attached tty device.
-
-.Sh HISTORY
-FreeBSD 2.1 by Ugen J.S.Antsilevich <ugen@NetVision.net.il>
diff --git a/usr.bin/watch/watch.8 b/usr.bin/watch/watch.8
deleted file mode 100644
index a57a70c2840e..000000000000
--- a/usr.bin/watch/watch.8
+++ /dev/null
@@ -1,77 +0,0 @@
-.\"
-.\" @(#)watch.8 1.1 (FreeBSD) 2/17/95
-.\"
-.Dd February 17, 1995
-.Dt WATCH 8
-.Os
-.Sh NAME
-.Nm watch
-.Nd snoop on another tty line
-.Sh SYNOPSYS
-.Nm watch
-.Op Fl ciot
-.Ar tty
-.\" watch [-ciot] [<tty name>]
-.Sh DESCRIPTION
-.Nm Watch
-allows the superuser to examine all data coming through a specified tty.
-.Nm Watch
-writes to standard output.
-.Pp
-The options are as follows:
-.Bl -tag -width "-l nul "
-.It Fl c
-Reconnect on close. If the tty observed by
-.Nm watch
-is closed, automatically reattach to the same tty.
-If this option is not specified,
-.Nm watch
-will request a new tty if running in interactive mode or exit if running
-without a controlling tty.
-.It Fl i
-Force interactive mode.
-Interactive mode is a default if
-.Nm watch
-is started from a tty.
-If output is redirected to a file, interactive mode can still be requested
-by specifying this option.
-.It Fl o
-Reconnect on overflow.
-The behaviour of
-.Nm watch
-if the observed tty overflows is similar to the behavior if the observed tty
-is closed.
-For more info see
-.Xr snp 4 .
-.It Fl t
-Print the date and time when observation of a given tty is started.
-.It Ar tty
-Tty may be specified as a remote pseudo tty device, a virtual console, or
-a serial line.
-Names may be preceded by "/dev/".
-.Sh OPERATION
-While running in interactive mode, all user input is discarded except for:
-.Pp
-.Bl -tag -width "XXXX" -compact
-.It Sy "<control-C>"
-Exit
-.Nm watch .
-.It Sy "<control-W>"
-Clear screen.
-.It Sy "<control-X>"
-Change attached tty.
-.Sh RESTRICTIONS
-Only the superuser can run
-.Nm watch .
-.Sh SEE ALSO
-.Xr snpl4 ,
-.Xr pty 4 ,
-.Xr sio 4 .
-.Sh BUGS
-No terminal emulation is performed.
-All user output is reproduced as-is.
-.Sh AUTHOR
-Ugen J.S. Antsilevich <ugen@NetVision.net.il>
-.Sh HISTORY
-.Nm Watch
-first appeared in FreeBSD 2.1
diff --git a/usr.bin/watch/watch.c b/usr.bin/watch/watch.c
deleted file mode 100644
index f5e4007c2a41..000000000000
--- a/usr.bin/watch/watch.c
+++ /dev/null
@@ -1,404 +0,0 @@
-/*
- * Copyright (c) 1995 Ugen J.S.Antsilevich
- *
- * Redistribution and use in source forms, with and without modification,
- * are permitted provided that this entire comment appears intact.
- *
- * Redistribution in binary form may occur without any restrictions.
- * Obviously, it would be nice if you gave credit where credit is due
- * but requiring it would be too onerous.
- *
- * This software is provided ``AS IS'' without any warranties of any kind.
- *
- * Snoop stuff.
- */
-
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <signal.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/select.h>
-#include <sys/fcntl.h>
-#include <sys/ioctl.h>
-#include <sys/ioctl_compat.h>
-#include <sys/snoop.h>
-
-
-#define MSG_INIT "Snoop started."
-#define MSG_OFLOW "Snoop stopped due to overflow.Reconnecting."
-#define MSG_CLOSED "Snoop stopped due to tty close.Reconnecting."
-#define MSG_CHANGE "Snoop device change by user request."
-
-
-#define DEV_NAME_LEN 12 /* for /dev/ttyXX++ */
-#define MIN_SIZE 256
-
-#define CHR_SWITCH 24 /* Ctrl+X */
-#define CHR_CLEAR 23 /* Ctrl+V */
-
-
-int opt_reconn_close = 0;
-int opt_reconn_oflow = 0;
-int opt_interactive = 1;
-int opt_timestamp = 0;
-
-char dev_name[DEV_NAME_LEN];
-int snp_io;
-struct snptty snp_tty;
-int std_in = 0, std_out = 1;
-
-
-int clear_ok = 0;
-struct sgttyb sgo;
-char tbuf[1024], buf[1024];
-
-
-void
-clear()
-{
- if (clear_ok)
- tputs(buf, 1, putchar);
- fflush(stdout);
-}
-
-void
-timestamp(buf)
- char *buf;
-{
- time_t t;
- char btmp[1024];
- clear();
- printf("\n---------------------------------------------\n");
- t = time(NULL);
- strftime(btmp, 1024, "Time: %d %b %H:%M", localtime(&t));
- printf("%s\n", btmp);
- printf("%s\n", buf);
- printf("---------------------------------------------\n");
- fflush(stdout);
-}
-
-void
-set_tty()
-{
- struct sgttyb sgn;
- ioctl(std_in, TIOCGETP, &sgo);
- /* bcopy(&sgn, &sgo, sizeof(struct sgttyb)); */
- sgn = sgo;
- sgn.sg_flags |= CBREAK;
- sgn.sg_flags &= ~ECHO;
- ioctl(std_in, TIOCSETP, &sgn);
-}
-
-void
-unset_tty()
-{
- ioctl(std_in, TIOCSETP, &sgo);
-}
-
-
-void
-fatal(buf)
- char *buf;
-{
- unset_tty();
- if (buf)
- fprintf(stderr, "Fatal: %s\n", buf);
- exit(1);
-}
-
-int
-open_snp()
-{
- char snp[DEV_NAME_LEN] = "/dev/snpX";
- char c;
- int f;
- for (c = '0'; c <= '9'; c++) {
- snp[8] = c;
- if ((f = open(snp, O_RDONLY)) < 0)
- continue;
- return f;
- }
- fatal("Cannot open snoop device.");
-}
-
-
-void
-cleanup()
-{
- if (opt_timestamp)
- timestamp("Logging Exited.");
- close(snp_io);
- unset_tty();
- exit(0);
-}
-
-
-void
-show_usage()
-{
- printf("watch -[ciot] [tty name]\n");
- exit(1);
-}
-
-void
-setup_scr()
-{
- char *cbuf = buf, *term;
- if (!opt_interactive)
- return;
- if ((term = getenv("TERM")))
- if (tgetent(tbuf, term) == 1)
- if (tgetstr("cl", &cbuf))
- clear_ok = 1;
- clear();
- set_tty();
-}
-
-
-int
-ctoh(c)
- char c;
-{
- if (c >= '0' && c <= '9')
- return (int) (c - '0');
-
- if (c >= 'a' && c <= 'f')
- return (int) (c - 'a' + 10);
-
- fatal("Bad tty number.");
-}
-
-
-void
-detach_snp()
-{
- struct snptty st;
- st.st_type = -1;
- st.st_unit = -1;
- ioctl(snp_io, SNPSTTY, &st);
-}
-
-void
-attach_snp()
-{
- if (ioctl(snp_io, SNPSTTY, &snp_tty) != 0)
- fatal("Cannot attach to tty.");
- if (opt_timestamp)
- timestamp("Logging Started.");
-}
-
-
-void
-set_dev(name)
- char *name;
-{
- char buf[DEV_NAME_LEN], num[DEV_NAME_LEN];
- int unitbase = 0;
-
- if (strlen(name) > 5 && !strncmp(name, "/dev/", 5))
- strcpy(buf, &(name[5]));
- else
- strcpy(buf, name);
-
- if (strlen(buf) < 4)
- fatal("Bad tty name.");
-
- if (!strncmp(buf, "tty", 3))
- switch (buf[3]) {
- case 'v':
- snp_tty.st_unit = ctoh(buf[4]);
- snp_tty.st_type = ST_VTY;
- goto got_num;
- case 'r':
- unitbase += 16;
- case 'q':
- unitbase += 16;
- case 'p':
- snp_tty.st_unit = ctoh(buf[4]) + unitbase;
- snp_tty.st_type = ST_PTY;
- goto got_num;
- case '0':
- case 'd':
- snp_tty.st_unit = ctoh(buf[4]);
- snp_tty.st_type = ST_SIO;
- goto got_num;
- default:
- fatal("Bad tty name.");
-
- }
-
-
- if (!strncmp(buf, "vty", 3)) {
- strcpy(num, &(buf[3]));
- snp_tty.st_unit = atoi(num);
- snp_tty.st_type = ST_VTY;
- goto got_num;
- }
- if (!strncmp(buf, "pty", 3)) {
- strcpy(num, &(buf[3]));
- snp_tty.st_unit = atoi(num);
- snp_tty.st_type = ST_PTY;
- goto got_num;
- }
- if (!strncmp(buf, "sio", 3) || !strncmp(buf, "cua", 3)) {
- strcpy(num, &(buf[3]));
- snp_tty.st_unit = atoi(num);
- snp_tty.st_type = ST_SIO;
- goto got_num;
- }
- fatal("Bad tty name.");
-got_num:
- attach_snp();
-}
-
-void
-ask_dev(dev_name, msg)
- char *dev_name, *msg;
-{
- char buf[DEV_NAME_LEN];
- int len;
-
- clear();
- unset_tty();
-
- if (msg)
- printf("%s\n", msg);
- if (dev_name)
- printf("Enter device name [%s]:", dev_name);
- else
- printf("Enter device name:");
-
- if (fgets(buf, DEV_NAME_LEN - 1, stdin)) {
- len = strlen(buf);
- if (buf[len - 1] == '\n')
- buf[len - 1] = '\0';
- if (buf[0] != '\0' && buf[0] != ' ')
- strcpy(dev_name, buf);
- }
- set_tty();
-}
-
-
-void
-main(ac, av)
- int ac;
- char **av;
-{
- int res, nread, b_size = MIN_SIZE;
- extern int optind;
- char ch, *buf;
- fd_set fd_s;
-
- if (getuid() != 0)
- fatal(NULL);
-
- if (isatty(std_out))
- opt_interactive = 1;
- else
- opt_interactive = 0;
-
-
- while ((ch = getopt(ac, av, "ciot")) != EOF)
- switch (ch) {
- case 'c':
- opt_reconn_close = 1;
- break;
- case 'i':
- opt_interactive = 1;
- break;
- case 'o':
- opt_reconn_oflow = 1;
- break;
- case 't':
- opt_timestamp = 1;
- break;
- case '?':
- default:
- show_usage();
- exit(1);
- }
-
- signal(SIGINT, cleanup);
-
- setup_scr();
- snp_io = open_snp();
-
- if (*(av += optind) == NULL) {
- if (opt_interactive)
- ask_dev(dev_name, MSG_INIT);
- else
- fatal("No device name given.");
- } else
- strncpy(dev_name, *av, DEV_NAME_LEN);
-
- set_dev(dev_name);
-
- if (!(buf = (char *) malloc(b_size)))
- fatal("Cannot malloc().");
-
- FD_ZERO(&fd_s);
-
- while (1) {
- if (opt_interactive)
- FD_SET(std_in, &fd_s);
- FD_SET(snp_io, &fd_s);
- res = select(snp_io + 1, &fd_s, NULL, NULL, NULL);
- if (opt_interactive && FD_ISSET(std_in, &fd_s)) {
- switch (ch = getchar()) {
- case CHR_CLEAR:
- clear();
- break;
- case CHR_SWITCH:
- /* detach_snp(); */
- ask_dev(dev_name, MSG_CHANGE);
- set_dev(dev_name);
- break;
- default:
- }
- }
- if (!FD_ISSET(snp_io, &fd_s))
- continue;
-
- if ((res = ioctl(snp_io, FIONREAD, &nread)) != 0)
- fatal("ioctl() failed.");
-
- switch (nread) {
- case SNP_OFLOW:
- if (opt_reconn_oflow)
- attach_snp();
- else if (opt_interactive) {
- ask_dev(dev_name, MSG_OFLOW);
- set_dev(dev_name);
- } else
- cleanup();
- case SNP_DETACH:
- case SNP_TTYCLOSE:
- if (opt_reconn_close)
- attach_snp();
- else if (opt_interactive) {
- ask_dev(dev_name, MSG_CLOSED);
- set_dev(dev_name);
- } else
- cleanup();
- default:
- if (nread < (b_size / 2) && (b_size / 2) > MIN_SIZE) {
- free(buf);
- if (!(buf = (char *) malloc(b_size / 2)))
- fatal("Cannot malloc()");
- b_size = b_size / 2;
- }
- if (nread > b_size) {
- b_size = (nread % 2) ? (nread + 1) : (nread);
- free(buf);
- if (!(buf = (char *) malloc(b_size)))
- fatal("Cannot malloc()");
- }
- if (read(snp_io, buf, nread) < nread)
- fatal("read failed.");
- if (write(std_out, buf, nread) < nread)
- fatal("write failed.");
- }
- } /* While */
-}