1
0
Files
irix-657m-src/eoe/man/man1/edit.1
2022-09-29 17:59:04 +03:00

346 lines
8.7 KiB
Groff

.nr X
.if \nX=0 .ds x} edit 1 "Editing Utilities" "\&"
.TH \*(x}
.SH NAME
edit \- text editor (variant of ex for casual users)
.SH SYNOPSIS
.nf
\f3edit\f1 [\f3\-r\f1] [\f3\-x\f1] [\f3\-C\f1] \f2name\f1 ...
.fi
.SH DESCRIPTION
.I edit
is a variant of the text editor
.I ex
recommended for new or casual users who wish to use a command-oriented editor.
It operates precisely as
.IR ex (1)
with the following options automatically set:
.TP 11
novice
ON
.PD 0
.TP
report
ON
.TP
showmode
ON
.TP
magic
OFF
.PD
.PP
These options can be turned on or off via
the
.B set
command in
.IR ex (1).
.TP
.B \-r
Recover file after an editor or system crash.
.TP
.B \-x
Encryption option; when used the file is encrypted
as it is being written and requires an
encryption key to be read.
.I edit
makes an educated guess to determine if a file is
encrypted or not.
See
.IR crypt (1).
Also, see the
.B WARNING
section at the end of this reference page.
.TP
.B \-C
Encryption option; the same as
.B \-x
except that
.I edit
assumes files are encrypted.
.PP
The following brief introduction should help you get started with
.IR edit .
If you are using a CRT terminal you may want
to learn about the display editor
.IR vi .
.PP
To edit the contents of an existing file you begin with the command
\f3edit \f2name\f1 to the shell.
.I edit
makes a copy of the file that you can edit and tells you how
many lines and characters are in the file.
To create a new file,
you also begin with the command \f3edit\f1 with a filename:
\f3edit \f2name\f1; the editor tells
you it is a
\f4[New File]\f1.
.P
The \f2edit\f1 command prompt is the colon (\f3:\f1),
which you should see after starting the editor.
If you are editing an existing file,
you have some lines in
.IR edit 's
buffer (its name for the copy of the file you are editing).
When you start editing,
.I edit
makes the last line of the file the current line.
Most commands to
.I edit
use the current line if you do not tell them which line to use.
Thus if you say
.B print
(which can be abbreviated \f3p\f1)
and type carriage return (as you should after all
.I edit
commands), the current line is printed.
If you
.B delete
(\f3d\f1) the current line,
.I edit
prints the new current line,
which is usually the next line in the file.
If you
.B delete
the last line, the new last line becomes the current one.
.PP
If you start with an empty file or wish to add some new lines, the
.B append
(\f3a\f1)
command can be used.
After you execute this command (typing a carriage return after the
word \f3append\f1),
.I edit
reads lines from your terminal until you type a line consisting
of just a dot (\f3.\f1); it places these lines after the current line.
The last line you type becomes the current line.
The command
.B insert
(\f3i\f1)
is like \f3append\f1,
but places the lines you type before, rather than after, the current line.
.PP
.I edit
numbers the lines in the buffer, with the first line having number 1.
If you execute the command \f31\f1,
.I edit
types the first line of the buffer.
If you then execute the command
\f3d\f1,
.I edit
deletes the first line, line 2 becomes line 1, and
.I edit
prints the current line (the new line 1) so you can see where you are.
In general, the current line is always the last line affected by a command.
.PP
You can make a change to some text within the current line by using the
.B substitute
(\f3s\f1)
command:
\f3s\f1/\f2old\f1/\f2new\f1/ where
.I old
is the string of characters you want to replace and
.I new
is the string of characters you want to replace \f2old\f1 with.
.PP
The command
.B file
(\f3f\f1) tells you how many lines there are in the buffer you are editing
and says \f4[Modified]\f1 if you have changed the buffer.
After modifying a file, you can save the contents of the file by executing a
.B write
(\f3w\f1)
command.
You can leave the editor by issuing a
.B quit
(\f3q\f1)
command.
If you run
.I edit
on a file, but do not change it, it is not necessary
(but does no harm)
to
.B write
the file back.
If you try to
.B quit
from
.I edit
after modifying the buffer without writing it out, you receive the message
\f4No write since last change (:quit! overrides)\f1, and
.I edit
waits for another command.
If you do not want to write the buffer out,
issue the
.B quit
command followed by an exclamation point (\f3q!\f1).
The buffer is irretrievably discarded and you return to the shell.
.PP
By using the
.B d
and
.B a
commands
and giving line numbers to see lines in the file, you can make any
changes you want.
You should learn at least a few more things, however, if you will use
.I edit
more than a few times.
.PP
The
.B change
(\f3c\f1)
command changes the current line to a sequence of lines you supply
(as in
.BR append ,
you type lines up to a line consisting of only a dot (\f3.\f1).
You can tell
.B change
to change more than one line by giving the line numbers of the
lines you want to change, that is, \f33,5c\f1.
You can print lines this way too:
\f31,23p\f1 prints the first 23 lines of the file.
.PP
The
.B undo
(\f3u\f1)
command reverses the effect of the last command you executed that changed
the buffer.
Thus if you execute a
.B substitute
command that does not do what you want, type \f3u\f1
and the old contents of the line are restored.
You can also
.B undo
an
.B undo
command.
.I edit
gives you a warning message when a command affects more than
one line of the buffer.
Note that commands such as
.B write
and
.B quit
cannot be undone.
.PP
To look at the next line in the buffer, type carriage return.
To look at a number of lines, type
.B ^D
(while holding down the control key, press
.BR d )
rather than carriage return.
This shows you a half-screen of lines on a CRT or 12 lines on a hardcopy
terminal.
You can look at nearby text by executing the \f3z\f1 command.
The current line appears in the middle of the text displayed,
and the last line displayed becomes the current line;
you can get back
to the line where you were before you executed the \f3z\f1 command by typing
\f3\'\'\f1.
The
.B z
command has other options:
.B z\-
prints
a screen of text (or 24 lines) ending where you are;
.B z+
prints the next screenful.
If you want less than a screenful of lines,
type
.B z.11
to display five lines before
and five lines after the current line.
(Typing
\f3z.\f2n\f1,
when
.I n
is an odd number,
displays a total of
.I n
lines, centered about the current line;
when
.I n
is an even number,
it displays \f2n\f1\-1 lines,
so that the lines displayed are centered around the current line.)
You can give counts after other commands;
for example,
you can delete 5 lines starting with the current line with the command
.B d5 .
.PP
To find things in the file, you can use line numbers if you happen to know
them; since the line numbers change when you insert and delete lines
this is somewhat unreliable.
You can search backwards and forwards in the file for strings by giving
commands of the form
/\f2text\f1/
to search forward for
.I text
or
?\f2text\f1?
to search backward for
.I text .
If a search reaches the end of the file without finding \f2text\f1, it
wraps around and continues to search back to the line where you are.
A useful feature here is a search of the form
/^\f2text\f1/
which searches for
.I text
at the beginning of a line.
Similarly
/\f2text\f1$/
searches for
.I text
at the end of a line.
You can leave off the trailing \f3/\f1 or \f3?\f1 in these commands.
.PP
The current line has the symbolic name dot (\f3.\f1); this is most
useful in a range of lines as in \f3.,$p\f1 which prints the
current line plus the rest of
the lines in the file.
To move to the last line in the file, you can refer to it by its symbolic
name $.
Thus the command \f3$d\f1 deletes the last line in the
file, no matter what the current line is.
Arithmetic with line references is also possible.
Thus the line \f3$\-5\f1 is the fifth before the last and
\f3\&.+20\f1 is 20 lines after the current line.
.PP
You can find out the current line by typing \f3.=\f1.
This is useful if you wish to move or copy a section of text within a file or
between files.
Find the first and last line numbers
you wish to copy or move.
To move lines 10 through 20, type
.B "10,20d a"
to delete these lines from the file and place them in a buffer named
\f3a\f1.
.I edit
has 26 such buffers named
.B a
through
\f3z\f1.
To put the contents of buffer
.B a
after the current line, type
\f3put a\f1.
If you want to move or copy these lines to another file, execute an
.B edit
(\f3e\f1)
command after copying the lines; following
the \f3e\f1 command with the name of the other
file you wish to edit, that is,
\f3edit chapter2\f1.
To copy lines without deleting them, use \f3yank\f1 (\f3y\f1)
in place of \f3d\f1.
If the text you wish to move or copy is all within one file,
it is not necessary to use named buffers.
For example, to move lines 10 through 20 to the end
of the file, type
\f310,20m $\f1.
.SH SEE ALSO
ed(1),
ex(1),
vi(1).