Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ edit(1) — sys5 — Apollo Domain/OS SR10.3.5

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

ex(1)

vi(1)

EDIT(1)                              SysV                              EDIT(1)



NAME
     edit - text editor (variant of ex for casual users)

SYNOPSIS
     edit [-r] name ...

DESCRIPTION
     edit is a variant of the text editor ex recommended for new or casual
     users who wish to use a command-oriented editor.

OPTION
     -r        Recovers file after an editor or system crash.  The following
               brief introduction should help you get started with edit.  If
               you are using a CRT terminal you may want to learn about the
               display editor vi.

     To edit the contents of an existing file you begin with the command "edit
     name" to the shell.  edit makes a copy of the file which you can then
     edit, and tells you how many lines and characters are in the file.  To
     create a new file, just make up a name for the file and try to run edit
     on it; you will cause an error diagnostic, but do not worry.

     edit prompts for commands with the character `:', which you should see
     after starting the editor.  If you are editing an existing file, then you
     will have some lines in edit's buffer (its name for the copy of the file
     you are editing).  Most commands to edit use its "current line" if you do
     not tell them which line to use.  Thus if you say print (which can be
     abbreviated p) and hit carriage return (as you should after all edit
     commands) this current line will be printed.  If you delete (d) the
     current line, edit prints the new current line.  When you start editing,
     edit makes the last line of the file the current line.  If you delete
     this last line, then the new last line becomes the current one.  In
     general, after a delete, the next line in the file becomes the current
     line.  (Deleting the last line is a special case.)

     If you start with an empty file or wish to add some new lines, then the
     append (a) command can be used.  After you give this command (typing a
     carriage return after the word append) edit will read lines from your
     terminal until you give a line consisting of just a ".", placing these
     lines after the current line.  The last line you type then becomes the
     current line.  The command insert (i) is like append but places the lines
     you give before, rather than after, the current line.

     edit numbers the lines in the buffer, with the first line having number
     1.  If you give the command "1" then edit types this first line.  If you
     then give the command delete edit deletes the first line, line 2 will
     become line 1, and 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.

     You can make a change to some text within the current line by using the
     substitute (s) command.  Use s/old/new/ where old is replaced by the old
     characters you want to get rid of and new is the new characters you want
     to replace it with.

     The command file (f) tells you how many lines there are in the buffer you
     are editing and will say "[Modified]" if you have changed it.  After
     modifying a file you can put the buffer text back to replace the file by
     giving a write (w) command.  You can then leave the editor by issuing a
     quit (q) command.  If you run edit on a file, but do not change it, it is
     not necessary (but does no harm) to write the file back.  If you try to
     quit from edit after modifying the buffer without writing it out, you are
     warned that there has been "No write since last change" and edit awaits
     another command.  If you wish not to write the buffer out then you can
     issue another quit command.  The buffer is then irretrievably discarded,
     and you return to the shell.

     By using the delete and append commands, and giving line numbers to see
     lines in the file you can make any changes you desire.  You should learn
     at least a few more things, however, if you are to use edit more than a
     few times.

     The change (c) command changes the current line to a sequence of lines
     you supply (as in append you give lines up to a line consisting of only a
     ".").  You can tell change to change more than one line by giving the
     line numbers of the lines you want to change, i.e., "3,5change".  You can
     print lines this way too.  Thus "1,23p" prints the first 23 lines of the
     file.

     The undo (u) command reverses the effect of the last command you gave
     which changed the buffer.  Thus if you give a substitute command which
     does not do what you want, you can say undo and the old contents of the
     line will be restored.  You can also undo an undo command so that you can
     continue to change your mind.  edit gives you a warning message when
     commands you do affect more than one line of the buffer.  If the amount
     of change seems unreasonable, you should consider doing an undo and
     looking to see what happened.  If you decide that the change is ok, then
     you can undo again to get it back.  Note that commands such as write and
     quit cannot be undone.

     To look at the next line in the buffer you can just hit carriage return.
     To look at a number of lines hit ^D (control key and, while it is held
     down D key, then let up both) rather than carriage return.  This will
     show you a half screen of lines on a CRT or 12 lines on a hardcopy
     terminal.   You can look at the text around where you are by giving the
     command "z.".  The current line will then be the last line printed; you
     can get back to the line where you were before the "z." command by saying
     "'\*(rq'.  The z command can also be given other following characters
     "z-" prints a screen of text (or 24 lines) ending where you are; "z+"
     prints the next screenful.  If you want less than a screenful of lines,
     type in "z.12" to get 12 lines total.  This method of giving counts works
     in general; thus you can delete 5 lines starting with the current line
     with the command "delete 5".

     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 /text/ to search
     forward for text or ?text?  to search backward for text. If a search
     reaches the end of the file without finding the text it wraps, end
     around, and continues to search back to the line where you are.  A useful
     feature here is a search of the form /^text/ which searches for text at
     the beginning of a line.  Similarly /text$/ searches for text at the end
     of a line.  You can leave off the trailing / or ? in these commands.

     The current line has a symbolic name "."; this is most useful in a range
     of lines as in ".,$print" which prints the rest of the lines in the file.
     To get to the last line in the file you can refer to it by its symbolic
     name "$".  Thus the command "$ delete" or "$d" deletes the last line in
     the file, no matter which line was the current line before.  Arithmetic
     with line references is also possible.  Thus the line "$-5" is the fifth
     before the last, and ".+20" is 20 lines after the present.

     You can find out which line you are at by doing ".=".  This is useful if
     you wish to move or copy a section of text within a file or between
     files.  Find out the first and last line numbers you wish to copy or move
     (say 10 to 20).  For a move you can then say "10,20delete a" which
     deletes these lines from the file and places them in a buffer named
     a.edit and has 26 such buffers named a through z. You can later get these
     lines back by doing "put a" to put the contents of buffer a after the
     current line.  If you want to move or copy these lines between files you
     can give an edit (e) command after copying the lines, following it with
     the name of the other file you wish to edit, i.e., "edit chapter2".  By
     changing delete to yank above you can get a pattern for copying lines.
     If the text you wish to move or copy is all within one file then you can
     just say "10,20move $" for example.  It is not necessary to use named
     buffers in this case (but you can if you wish).

SEE ALSO
     ed(1), ex(1), vi(1).

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