xref: /openbsd/gnu/lib/libreadline/doc/hsuser.texinfo (revision 15b117ea)
11acd27e7Smillert@ignore
21acd27e7SmillertThis file documents the user interface to the GNU History library.
31acd27e7Smillert
4*15b117eaSkettenisCopyright (C) 1988-2002 Free Software Foundation, Inc.
51acd27e7SmillertAuthored by Brian Fox and Chet Ramey.
61acd27e7Smillert
71acd27e7SmillertPermission is granted to make and distribute verbatim copies of this manual
81acd27e7Smillertprovided the copyright notice and this permission notice are preserved on
91acd27e7Smillertall copies.
101acd27e7Smillert
111acd27e7SmillertPermission is granted to process this file through Tex and print the
121acd27e7Smillertresults, provided the printed document carries copying permission notice
131acd27e7Smillertidentical to this one except for the removal of this paragraph (this
141acd27e7Smillertparagraph not being relevant to the printed manual).
151acd27e7Smillert
161acd27e7SmillertPermission is granted to copy and distribute modified versions of this
171acd27e7Smillertmanual under the conditions for verbatim copying, provided also that the
181acd27e7SmillertGNU Copyright statement is available to the distributee, and provided that
191acd27e7Smillertthe entire resulting derived work is distributed under the terms of a
201acd27e7Smillertpermission notice identical to this one.
211acd27e7Smillert
221acd27e7SmillertPermission is granted to copy and distribute translations of this manual
231acd27e7Smillertinto another language, under the above conditions for modified versions.
241acd27e7Smillert@end ignore
251acd27e7Smillert
261acd27e7Smillert@node Using History Interactively
271acd27e7Smillert@chapter Using History Interactively
281acd27e7Smillert
291acd27e7Smillert@ifclear BashFeatures
301acd27e7Smillert@defcodeindex bt
311acd27e7Smillert@end ifclear
321acd27e7Smillert
331acd27e7Smillert@ifset BashFeatures
341acd27e7SmillertThis chapter describes how to use the @sc{gnu} History Library
351acd27e7Smillertinteractively, from a user's standpoint.
361acd27e7SmillertIt should be considered a user's guide.
371acd27e7SmillertFor information on using the @sc{gnu} History Library in other programs,
381acd27e7Smillertsee the @sc{gnu} Readline Library Manual.
391acd27e7Smillert@end ifset
401acd27e7Smillert@ifclear BashFeatures
41*15b117eaSkettenisThis chapter describes how to use the @sc{gnu} History Library interactively,
421acd27e7Smillertfrom a user's standpoint.  It should be considered a user's guide.  For
43*15b117eaSkettenisinformation on using the @sc{gnu} History Library in your own programs,
441acd27e7Smillert@pxref{Programming with GNU History}.
451acd27e7Smillert@end ifclear
461acd27e7Smillert
471acd27e7Smillert@ifset BashFeatures
481acd27e7Smillert@menu
491acd27e7Smillert* Bash History Facilities::	How Bash lets you manipulate your command
501acd27e7Smillert				history.
511acd27e7Smillert* Bash History Builtins::	The Bash builtin commands that manipulate
521acd27e7Smillert				the command history.
531acd27e7Smillert* History Interaction::		What it feels like using History as a user.
541acd27e7Smillert@end menu
551acd27e7Smillert@end ifset
561acd27e7Smillert@ifclear BashFeatures
571acd27e7Smillert@menu
581acd27e7Smillert* History Interaction::		What it feels like using History as a user.
591acd27e7Smillert@end menu
601acd27e7Smillert@end ifclear
611acd27e7Smillert
621acd27e7Smillert@ifset BashFeatures
631acd27e7Smillert@node Bash History Facilities
641acd27e7Smillert@section Bash History Facilities
651acd27e7Smillert@cindex command history
661acd27e7Smillert@cindex history list
671acd27e7Smillert
68*15b117eaSkettenisWhen the @option{-o history} option to the @code{set} builtin
691acd27e7Smillertis enabled (@pxref{The Set Builtin}),
70*15b117eaSkettenisthe shell provides access to the @dfn{command history},
711acd27e7Smillertthe list of commands previously typed.
72*15b117eaSkettenisThe value of the @env{HISTSIZE} shell variable is used as the
731acd27e7Smillertnumber of commands to save in a history list.
74*15b117eaSkettenisThe text of the last @env{$HISTSIZE}
751acd27e7Smillertcommands (default 500) is saved.
761acd27e7SmillertThe shell stores each command in the history list prior to
771acd27e7Smillertparameter and variable expansion
781acd27e7Smillertbut after history expansion is performed, subject to the
791acd27e7Smillertvalues of the shell variables
80*15b117eaSkettenis@env{HISTIGNORE} and @env{HISTCONTROL}.
811acd27e7Smillert
821acd27e7SmillertWhen the shell starts up, the history is initialized from the
83*15b117eaSkettenisfile named by the @env{HISTFILE} variable (default @file{~/.bash_history}).
84*15b117eaSkettenisThe file named by the value of @env{HISTFILE} is truncated, if
851acd27e7Smillertnecessary, to contain no more than the number of lines specified by
86*15b117eaSkettenisthe value of the @env{HISTFILESIZE} variable.
871acd27e7SmillertWhen an interactive shell exits, the last
88*15b117eaSkettenis@env{$HISTSIZE} lines are copied from the history list to the file
89*15b117eaSkettenisnamed by @env{$HISTFILE}.
901acd27e7SmillertIf the @code{histappend} shell option is set (@pxref{Bash Builtins}),
911acd27e7Smillertthe lines are appended to the history file,
921acd27e7Smillertotherwise the history file is overwritten.
93*15b117eaSkettenisIf @env{HISTFILE}
941acd27e7Smillertis unset, or if the history file is unwritable, the history is
951acd27e7Smillertnot saved.  After saving the history, the history file is truncated
96*15b117eaSkettenisto contain no more than @env{$HISTFILESIZE}
97*15b117eaSkettenislines.  If @env{HISTFILESIZE} is not set, no truncation is performed.
981acd27e7Smillert
991acd27e7SmillertThe builtin command @code{fc} may be used to list or edit and re-execute
1001acd27e7Smillerta portion of the history list.
1011acd27e7SmillertThe @code{history} builtin may be used to display or modify the history
1021acd27e7Smillertlist and manipulate the history file.
1031acd27e7SmillertWhen using command-line editing, search commands
1041acd27e7Smillertare available in each editing mode that provide access to the
1051acd27e7Smillerthistory list (@pxref{Commands For History}).
1061acd27e7Smillert
1071acd27e7SmillertThe shell allows control over which commands are saved on the history
108*15b117eaSkettenislist.  The @env{HISTCONTROL} and @env{HISTIGNORE}
1091acd27e7Smillertvariables may be set to cause the shell to save only a subset of the
1101acd27e7Smillertcommands entered.
1111acd27e7SmillertThe @code{cmdhist}
1121acd27e7Smillertshell option, if enabled, causes the shell to attempt to save each
1131acd27e7Smillertline of a multi-line command in the same history entry, adding
1141acd27e7Smillertsemicolons where necessary to preserve syntactic correctness.
1151acd27e7SmillertThe @code{lithist}
1161acd27e7Smillertshell option causes the shell to save the command with embedded newlines
1171acd27e7Smillertinstead of semicolons.
1181acd27e7SmillertThe @code{shopt} builtin is used to set these options.
1191acd27e7Smillert@xref{Bash Builtins}, for a description of @code{shopt}.
1201acd27e7Smillert
1211acd27e7Smillert@node Bash History Builtins
1221acd27e7Smillert@section Bash History Builtins
1231acd27e7Smillert@cindex history builtins
1241acd27e7Smillert
1251acd27e7SmillertBash provides two builtin commands which manipulate the
1261acd27e7Smillerthistory list and history file.
1271acd27e7Smillert
1281acd27e7Smillert@table @code
1291acd27e7Smillert
1301acd27e7Smillert@item fc
1311acd27e7Smillert@btindex fc
1321acd27e7Smillert@example
1331acd27e7Smillert@code{fc [-e @var{ename}] [-nlr] [@var{first}] [@var{last}]}
1341acd27e7Smillert@code{fc -s [@var{pat}=@var{rep}] [@var{command}]}
1351acd27e7Smillert@end example
1361acd27e7Smillert
1371acd27e7SmillertFix Command.  In the first form, a range of commands from @var{first} to
1381acd27e7Smillert@var{last} is selected from the history list.  Both @var{first} and
1391acd27e7Smillert@var{last} may be specified as a string (to locate the most recent
1401acd27e7Smillertcommand beginning with that string) or as a number (an index into the
1411acd27e7Smillerthistory list, where a negative number is used as an offset from the
1421acd27e7Smillertcurrent command number).  If @var{last} is not specified it is set to
1431acd27e7Smillert@var{first}.  If @var{first} is not specified it is set to the previous
144*15b117eaSketteniscommand for editing and @minus{}16 for listing.  If the @option{-l} flag is
145*15b117eaSkettenisgiven, the commands are listed on standard output.  The @option{-n} flag
146*15b117eaSkettenissuppresses the command numbers when listing.  The @option{-r} flag
1471acd27e7Smillertreverses the order of the listing.  Otherwise, the editor given by
1481acd27e7Smillert@var{ename} is invoked on a file containing those commands.  If
1491acd27e7Smillert@var{ename} is not given, the value of the following variable expansion
1501acd27e7Smillertis used: @code{$@{FCEDIT:-$@{EDITOR:-vi@}@}}.  This says to use the
151*15b117eaSkettenisvalue of the @env{FCEDIT} variable if set, or the value of the
152*15b117eaSkettenis@env{EDITOR} variable if that is set, or @code{vi} if neither is set.
1531acd27e7SmillertWhen editing is complete, the edited commands are echoed and executed.
1541acd27e7Smillert
1551acd27e7SmillertIn the second form, @var{command} is re-executed after each instance
1561acd27e7Smillertof @var{pat} in the selected command is replaced by @var{rep}.
1571acd27e7Smillert
1581acd27e7SmillertA useful alias to use with the @code{fc} command is @code{r='fc -s'}, so
1591acd27e7Smillertthat typing @samp{r cc} runs the last command beginning with @code{cc}
1601acd27e7Smillertand typing @samp{r} re-executes the last command (@pxref{Aliases}).
1611acd27e7Smillert
1621acd27e7Smillert@item history
1631acd27e7Smillert@btindex history
1641acd27e7Smillert@example
1651acd27e7Smillerthistory [@var{n}]
1661acd27e7Smillerthistory -c
1671acd27e7Smillerthistory -d @var{offset}
1681acd27e7Smillerthistory [-anrw] [@var{filename}]
1691acd27e7Smillerthistory -ps @var{arg}
1701acd27e7Smillert@end example
1711acd27e7Smillert
1721acd27e7SmillertWith no options, display the history list with line numbers.
173*15b117eaSkettenisLines prefixed with a @samp{*} have been modified.
1741acd27e7SmillertAn argument of @var{n} lists only the last @var{n} lines.
1751acd27e7SmillertOptions, if supplied, have the following meanings:
1761acd27e7Smillert
1771acd27e7Smillert@table @code
1781acd27e7Smillert@item -c
1791acd27e7SmillertClear the history list.  This may be combined
1801acd27e7Smillertwith the other options to replace the history list completely.
1811acd27e7Smillert
1821acd27e7Smillert@item -d @var{offset}
1831acd27e7SmillertDelete the history entry at position @var{offset}.
1841acd27e7Smillert@var{offset} should be specified as it appears when the history is
1851acd27e7Smillertdisplayed.
1861acd27e7Smillert
1871acd27e7Smillert@item -a
1881acd27e7SmillertAppend the new
1891acd27e7Smillerthistory lines (history lines entered since the beginning of the
1901acd27e7Smillertcurrent Bash session) to the history file.
1911acd27e7Smillert
1921acd27e7Smillert@item -n
1931acd27e7SmillertAppend the history lines not already read from the history file
1941acd27e7Smillertto the current history list.  These are lines appended to the history
1951acd27e7Smillertfile since the beginning of the current Bash session.
1961acd27e7Smillert
1971acd27e7Smillert@item -r
1981acd27e7SmillertRead the current history file and append its contents to
1991acd27e7Smillertthe history list.
2001acd27e7Smillert
2011acd27e7Smillert@item -w
2021acd27e7SmillertWrite out the current history to the history file.
2031acd27e7Smillert
2041acd27e7Smillert@item -p
2051acd27e7SmillertPerform history substitution on the @var{arg}s and display the result
2061acd27e7Smillerton the standard output, without storing the results in the history list.
2071acd27e7Smillert
2081acd27e7Smillert@item -s
2091acd27e7SmillertThe @var{arg}s are added to the end of
2101acd27e7Smillertthe history list as a single entry.
2111acd27e7Smillert
2121acd27e7Smillert@end table
2131acd27e7Smillert
214*15b117eaSkettenisWhen any of the @option{-w}, @option{-r}, @option{-a}, or @option{-n} options is
2151acd27e7Smillertused, if @var{filename}
2161acd27e7Smillertis given, then it is used as the history file.  If not, then
217*15b117eaSkettenisthe value of the @env{HISTFILE} variable is used.
2181acd27e7Smillert
2191acd27e7Smillert@end table
2201acd27e7Smillert@end ifset
2211acd27e7Smillert
2221acd27e7Smillert@node History Interaction
2231acd27e7Smillert@section History Expansion
2241acd27e7Smillert@cindex history expansion
2251acd27e7Smillert
2261acd27e7SmillertThe History library provides a history expansion feature that is similar
2271acd27e7Smillertto the history expansion provided by @code{csh}.  This section
2281acd27e7Smillertdescribes the syntax used to manipulate the history information.
2291acd27e7Smillert
2301acd27e7SmillertHistory expansions introduce words from the history list into
2311acd27e7Smillertthe input stream, making it easy to repeat commands, insert the
2321acd27e7Smillertarguments to a previous command into the current input line, or
2331acd27e7Smillertfix errors in previous commands quickly.
2341acd27e7Smillert
2351acd27e7SmillertHistory expansion takes place in two parts.  The first is to determine
2361acd27e7Smillertwhich line from the history list should be used during substitution.
2371acd27e7SmillertThe second is to select portions of that line for inclusion into the
2381acd27e7Smillertcurrent one.  The line selected from the history is called the
2391acd27e7Smillert@dfn{event}, and the portions of that line that are acted upon are
2401acd27e7Smillertcalled @dfn{words}.  Various @dfn{modifiers} are available to manipulate
2411acd27e7Smillertthe selected words.  The line is broken into words in the same fashion
2421acd27e7Smillertthat Bash does, so that several words
2431acd27e7Smillertsurrounded by quotes are considered one word.
2441acd27e7SmillertHistory expansions are introduced by the appearance of the
2451acd27e7Smillerthistory expansion character, which is @samp{!} by default.
2461acd27e7Smillert@ifset BashFeatures
2471acd27e7SmillertOnly @samp{\} and @samp{'} may be used to escape the history expansion
2481acd27e7Smillertcharacter.
2491acd27e7Smillert@end ifset
2501acd27e7Smillert
2511acd27e7Smillert@ifset BashFeatures
2521acd27e7SmillertSeveral shell options settable with the @code{shopt}
2531acd27e7Smillertbuiltin (@pxref{Bash Builtins}) may be used to tailor
2541acd27e7Smillertthe behavior of history expansion.  If the
2551acd27e7Smillert@code{histverify} shell option is enabled, and Readline
2561acd27e7Smillertis being used, history substitutions are not immediately passed to
2571acd27e7Smillertthe shell parser.
2581acd27e7SmillertInstead, the expanded line is reloaded into the Readline
2591acd27e7Smillertediting buffer for further modification.
2601acd27e7SmillertIf Readline is being used, and the @code{histreedit}
2611acd27e7Smillertshell option is enabled, a failed history expansion will be
2621acd27e7Smillertreloaded into the Readline editing buffer for correction.
263*15b117eaSkettenisThe @option{-p} option to the @code{history} builtin command
2641acd27e7Smillertmay be used to see what a history expansion will do before using it.
265*15b117eaSkettenisThe @option{-s} option to the @code{history} builtin may be used to
2661acd27e7Smillertadd commands to the end of the history list without actually executing
2671acd27e7Smillertthem, so that they are available for subsequent recall.
2681acd27e7SmillertThis is most useful in conjunction with Readline.
2691acd27e7Smillert
2701acd27e7SmillertThe shell allows control of the various characters used by the
2711acd27e7Smillerthistory expansion mechanism with the @code{histchars} variable.
2721acd27e7Smillert@end ifset
2731acd27e7Smillert
2741acd27e7Smillert@menu
2751acd27e7Smillert* Event Designators::	How to specify which history line to use.
2761acd27e7Smillert* Word Designators::	Specifying which words are of interest.
2771acd27e7Smillert* Modifiers::		Modifying the results of substitution.
2781acd27e7Smillert@end menu
2791acd27e7Smillert
2801acd27e7Smillert@node Event Designators
2811acd27e7Smillert@subsection Event Designators
2821acd27e7Smillert@cindex event designators
2831acd27e7Smillert
2841acd27e7SmillertAn event designator is a reference to a command line entry in the
2851acd27e7Smillerthistory list.
2861acd27e7Smillert@cindex history events
2871acd27e7Smillert
2881acd27e7Smillert@table @asis
2891acd27e7Smillert
2901acd27e7Smillert@item @code{!}
2911acd27e7SmillertStart a history substitution, except when followed by a space, tab,
2921acd27e7Smillertthe end of the line, @samp{=} or @samp{(}.
2931acd27e7Smillert
2941acd27e7Smillert@item @code{!@var{n}}
2951acd27e7SmillertRefer to command line @var{n}.
2961acd27e7Smillert
2971acd27e7Smillert@item @code{!-@var{n}}
2981acd27e7SmillertRefer to the command @var{n} lines back.
2991acd27e7Smillert
3001acd27e7Smillert@item @code{!!}
3011acd27e7SmillertRefer to the previous command.  This is a synonym for @samp{!-1}.
3021acd27e7Smillert
3031acd27e7Smillert@item @code{!@var{string}}
3041acd27e7SmillertRefer to the most recent command starting with @var{string}.
3051acd27e7Smillert
3061acd27e7Smillert@item @code{!?@var{string}[?]}
3071acd27e7SmillertRefer to the most recent command containing @var{string}.  The trailing
3081acd27e7Smillert@samp{?} may be omitted if the @var{string} is followed immediately by
3091acd27e7Smillerta newline.
3101acd27e7Smillert
3111acd27e7Smillert@item @code{^@var{string1}^@var{string2}^}
3121acd27e7SmillertQuick Substitution.  Repeat the last command, replacing @var{string1}
3131acd27e7Smillertwith @var{string2}.  Equivalent to
3141acd27e7Smillert@code{!!:s/@var{string1}/@var{string2}/}.
3151acd27e7Smillert
3161acd27e7Smillert@item @code{!#}
3171acd27e7SmillertThe entire command line typed so far.
3181acd27e7Smillert
3191acd27e7Smillert@end table
3201acd27e7Smillert
3211acd27e7Smillert@node Word Designators
3221acd27e7Smillert@subsection Word Designators
3231acd27e7Smillert
3241acd27e7SmillertWord designators are used to select desired words from the event.
3251acd27e7SmillertA @samp{:} separates the event specification from the word designator.  It
3261acd27e7Smillertmay be omitted if the word designator begins with a @samp{^}, @samp{$},
3271acd27e7Smillert@samp{*}, @samp{-}, or @samp{%}.  Words are numbered from the beginning
3281acd27e7Smillertof the line, with the first word being denoted by 0 (zero).  Words are
3291acd27e7Smillertinserted into the current line separated by single spaces.
3301acd27e7Smillert
3311acd27e7Smillert@need 0.75
3321acd27e7SmillertFor example,
3331acd27e7Smillert
3341acd27e7Smillert@table @code
3351acd27e7Smillert@item !!
3361acd27e7Smillertdesignates the preceding command.  When you type this, the preceding
3371acd27e7Smillertcommand is repeated in toto.
3381acd27e7Smillert
3391acd27e7Smillert@item !!:$
3401acd27e7Smillertdesignates the last argument of the preceding command.  This may be
3411acd27e7Smillertshortened to @code{!$}.
3421acd27e7Smillert
3431acd27e7Smillert@item !fi:2
3441acd27e7Smillertdesignates the second argument of the most recent command starting with
3451acd27e7Smillertthe letters @code{fi}.
3461acd27e7Smillert@end table
3471acd27e7Smillert
3481acd27e7Smillert@need 0.75
3491acd27e7SmillertHere are the word designators:
3501acd27e7Smillert
3511acd27e7Smillert@table @code
3521acd27e7Smillert
3531acd27e7Smillert@item 0 (zero)
3541acd27e7SmillertThe @code{0}th word.  For many applications, this is the command word.
3551acd27e7Smillert
3561acd27e7Smillert@item @var{n}
3571acd27e7SmillertThe @var{n}th word.
3581acd27e7Smillert
3591acd27e7Smillert@item ^
3601acd27e7SmillertThe first argument; that is, word 1.
3611acd27e7Smillert
3621acd27e7Smillert@item $
3631acd27e7SmillertThe last argument.
3641acd27e7Smillert
3651acd27e7Smillert@item %
3661acd27e7SmillertThe word matched by the most recent @samp{?@var{string}?} search.
3671acd27e7Smillert
3681acd27e7Smillert@item @var{x}-@var{y}
3691acd27e7SmillertA range of words; @samp{-@var{y}} abbreviates @samp{0-@var{y}}.
3701acd27e7Smillert
3711acd27e7Smillert@item *
3721acd27e7SmillertAll of the words, except the @code{0}th.  This is a synonym for @samp{1-$}.
3731acd27e7SmillertIt is not an error to use @samp{*} if there is just one word in the event;
3741acd27e7Smillertthe empty string is returned in that case.
3751acd27e7Smillert
3761acd27e7Smillert@item @var{x}*
3771acd27e7SmillertAbbreviates @samp{@var{x}-$}
3781acd27e7Smillert
3791acd27e7Smillert@item @var{x}-
3801acd27e7SmillertAbbreviates @samp{@var{x}-$} like @samp{@var{x}*}, but omits the last word.
3811acd27e7Smillert
3821acd27e7Smillert@end table
3831acd27e7Smillert
3841acd27e7SmillertIf a word designator is supplied without an event specification, the
3851acd27e7Smillertprevious command is used as the event.
3861acd27e7Smillert
3871acd27e7Smillert@node Modifiers
3881acd27e7Smillert@subsection Modifiers
3891acd27e7Smillert
3901acd27e7SmillertAfter the optional word designator, you can add a sequence of one or more
3911acd27e7Smillertof the following modifiers, each preceded by a @samp{:}.
3921acd27e7Smillert
3931acd27e7Smillert@table @code
3941acd27e7Smillert
3951acd27e7Smillert@item h
3961acd27e7SmillertRemove a trailing pathname component, leaving only the head.
3971acd27e7Smillert
3981acd27e7Smillert@item t
3991acd27e7SmillertRemove all leading  pathname  components, leaving the tail.
4001acd27e7Smillert
4011acd27e7Smillert@item r
4021acd27e7SmillertRemove a trailing suffix of the form @samp{.@var{suffix}}, leaving
4031acd27e7Smillertthe basename.
4041acd27e7Smillert
4051acd27e7Smillert@item e
4061acd27e7SmillertRemove all but the trailing suffix.
4071acd27e7Smillert
4081acd27e7Smillert@item p
4091acd27e7SmillertPrint the new command but do not execute it.
4101acd27e7Smillert
4111acd27e7Smillert@ifset BashFeatures
4121acd27e7Smillert@item q
4131acd27e7SmillertQuote the substituted words, escaping further substitutions.
4141acd27e7Smillert
4151acd27e7Smillert@item x
4161acd27e7SmillertQuote the substituted words as with @samp{q},
4171acd27e7Smillertbut break into words at spaces, tabs, and newlines.
4181acd27e7Smillert@end ifset
4191acd27e7Smillert
4201acd27e7Smillert@item s/@var{old}/@var{new}/
4211acd27e7SmillertSubstitute @var{new} for the first occurrence of @var{old} in the
4221acd27e7Smillertevent line.  Any delimiter may be used in place of @samp{/}.
4231acd27e7SmillertThe delimiter may be quoted in @var{old} and @var{new}
4241acd27e7Smillertwith a single backslash.  If @samp{&} appears in @var{new},
4251acd27e7Smillertit is replaced by @var{old}.  A single backslash will quote
4261acd27e7Smillertthe @samp{&}.  The final delimiter is optional if it is the last
4271acd27e7Smillertcharacter on the input line.
4281acd27e7Smillert
4291acd27e7Smillert@item &
4301acd27e7SmillertRepeat the previous substitution.
4311acd27e7Smillert
4321acd27e7Smillert@item g
4331acd27e7SmillertCause changes to be applied over the entire event line.  Used in
4341acd27e7Smillertconjunction with @samp{s}, as in @code{gs/@var{old}/@var{new}/},
4351acd27e7Smillertor with @samp{&}.
4361acd27e7Smillert
4371acd27e7Smillert@end table
438