diff options
Diffstat (limited to 'readline/inc-history.texinfo')
-rwxr-xr-x | readline/inc-history.texinfo | 188 |
1 files changed, 0 insertions, 188 deletions
diff --git a/readline/inc-history.texinfo b/readline/inc-history.texinfo deleted file mode 100755 index 9bbb575..0000000 --- a/readline/inc-history.texinfo +++ /dev/null @@ -1,188 +0,0 @@ -@ifinfo -This file documents the GNU History library. - -Copyright (C) 1988 Free Software Foundation, Inc. -Authored by Brian Fox. - -Permission is granted to make and distribute verbatim copies of this manual -provided the copyright notice and this permission notice are preserved on -all copies. -@end ifinfo - -@ignore -Permission is granted to process this file through Tex and print the -results, provided the printed document carries copying permission notice -identical to this one except for the removal of this paragraph (this -paragraph not being relevant to the printed manual). - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that the -GNU Copyright statement is available to the distributee, and provided that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions. -@end ignore - -@node History Top,,, -@appendix Command Line History -@ifinfo -This file is meant to be an inclusion in the documentation of programs -that use the history library features. There is also a standalone -document, entitled @file{history.texinfo}. -@end ifinfo - -This Appendix describes the GNU History library, a programming tool that -provides a consistent user interface for recalling lines of previously -typed input. - -@menu -* Introduction to History:: What is the GNU History library for? -* History Interaction:: What it feels like using History as a user. -@end menu - -@node Introduction to History, History Interaction, History Top, Top -@appendixsec Introduction to History - -Many programs read input from the user a line at a time. The GNU history -library is able to keep track of those lines, associate arbitrary data with -each line, and utilize information from previous lines in making up new -ones. - -The programmer using the History library has available to him functions -for remembering lines on a history stack, associating arbitrary data -with a line, removing lines from the stack, searching through the stack -for a line containing an arbitrary text string, and referencing any line -on the stack directly. In addition, a history @dfn{expansion} function -is available which provides for a consistent user interface across many -different programs. - -When you use programs written with the History library, you have the -benefit of a consistent user interface, with a set of well-known -commands for manipulating the text of previous lines and using that text -in new commands. The basic history manipulation commands are similar to -the history substitution used by Csh. - -GNU programs often also use the Readline library, which includes history -manipulation by default, and has the added advantage of Emacs style -command line editing. - -@node History Interaction, , Introduction to History, Top -@appendixsec History Interaction -@cindex expansion - -The History library provides a history expansion feature that is similar -to the history expansion in Csh. The following text describes what -syntax features are available. - -History expansion takes place in two parts. The first is to determine -which line from the previous history should be used during substitution. -The second is to select portions of that line for inclusion into the -current one. The line selected from the previous history is called the -@dfn{event}, and the portions of that line that are acted upon are -called @dfn{words}. The line is broken into words in the same fashion -used by the Bash shell, so that several words surrounded by quotes are -treated as if they were a single word. - -@menu -* Event Designators:: How to specify which history line to use. * -Word Designators:: Specifying which words are of interest. * -Modifiers:: Modifying the results of susbstitution. -@end menu - -@node Event Designators, Word Designators, , History Interaction -@appendixsubsec Event Designators -@cindex event designators - -An event designator is a reference to a command line entry in the -history list. - -@table @asis - -@item @code{!} -Start a history subsititution, except when followed by a space, tab, or -the end of the line; or by @samp{=} or @samp{(}. - -@item @code{!!} -Refer to the previous command. This is a synonym for @code{!-1}. - -@item @code{!@var{n}} -Refer to command line @var{n}. - -@item @code{!-@var{n}} -Refer to the command line @var{n} lines back. - -@item @code{!@var{string}} -Refer to the most recent command starting with @var{string}. - -@item @code{!?@var{string}}[@code{?}] -Refer to the most recent command containing @var{string}. - -@end table - -@node Word Designators, Modifiers, Event Designators, History Interaction -@appendixsubsec Word Designators - -A @samp{:} separates the event specification from the word designator. It -can be omitted if the word designator begins with a @samp{^}, @samp{$}, -@samp{*} or @samp{%}. Words are numbered from the beginning of the line, -with the first word being denoted by a 0 (zero). - -@table @code - -@item 0 (zero) -The zero'th word. For many applications, this is the command word. - -@item n -The @var{n}'th word. - -@item ^ -The first argument. that is, word 1. - -@item $ -The last argument. - -@item % -The word matched by the most recent @code{?@var{string}?} search. - -@item @var{x}-@var{y} -A range of words; @code{-@var{y}} abbreviates @code{0-@var{y}}. - -@item * -All of the words, excepting the zero'th. This is a synonym for @samp{1-$}. -It is not an error to use @samp{*} if there is just one word in the event. -The empty string is returned in that case. - -@end table - -@node Modifiers, , Word Designators, History Interaction -@appendixsubsec Modifiers - -After the optional word designator, you can add a sequence of one or more -of the following modifiers, each preceded by a @samp{:}. - -@table @code - -@item # -The entire command line typed so far. This means the current command, -not the previous command, so it really isn't a word designator, and doesn't -belong in this section. - -@item h -Remove a trailing pathname component, leaving only the head. - -@item r -Remove a trailing suffix of the form @samp{.@var{suffix}}, leaving the basename. - -@item e -Remove all but the suffix. - -@item t -Remove all leading pathname components, leaving the tail. - -@item p -Print the new command but do not execute it. This takes effect -immediately, so it should be the last specifier on the line. - -@end table |