Syntax
where E is any valid equation which will be rounded to an integer.
The !: command is used to review the command history ,
and possibly to replay one of the input lines contained therein.
The first form of the syntax simply displays the command history .
Each line of keyboard input is temporarily retained in this command history with
a unique address, an integer which is also displayed. Notice that
this command history will remain unaffected by issuing this command.
The second form of the syntax calls for one of the lines retained in the
command history to be recalled and replayed. There are two
possible ways of recalling input lines: by absolute and relative
addressing. For either usage, the equation E is parsed in the normal
way before the value of the equation is determined. If the actual or
relative address indicated by the value of E does not match an entry
in the current command history then no action is taken. Notice that
the replacement takes place even within an inactive if-then-else
construction, and before the command history is updated.
For absolute addressing, the !: command is issued with an
equation which will be rounded to an integer. The integer refers to
the unique address of a retained input line. For this usage of the
!: command, the input line containing the !: command
will not appear in the command history, but the input line to be replayed
will be retained anew.
For the relative addressing usage, the command is issued with a negative
value, so that the rounded value of E should be negative. These
circumstances mean that the input line indicated by going back places in the current command history is to be replayed
as the current line. As before, the input line containing the
!: command will not appear in the command history , but
the replacement will.