Annotation of embedaddon/readline/doc/readline.3, revision 1.1.1.1
1.1 misho 1: .\"
2: .\" MAN PAGE COMMENTS to
3: .\"
4: .\" Chet Ramey
5: .\" Information Network Services
6: .\" Case Western Reserve University
7: .\" chet.ramey@case.edu
8: .\"
9: .\" Last Change: Mon Jan 6 16:34:55 EST 2014
10: .\"
11: .TH READLINE 3 "2014 January 6" "GNU Readline 6.3"
12: .\"
13: .\" File Name macro. This used to be `.PN', for Path Name,
14: .\" but Sun doesn't seem to like that very much.
15: .\"
16: .de FN
17: \fI\|\\$1\|\fP
18: ..
19: .SH NAME
20: readline \- get a line from a user with editing
21: .SH SYNOPSIS
22: .LP
23: .nf
24: .ft B
25: #include <stdio.h>
26: #include <readline/readline.h>
27: #include <readline/history.h>
28: .ft
29: .fi
30: .LP
31: .nf
32: \fIchar *\fP
33: .br
34: \fBreadline\fP (\fIconst char *prompt\fP);
35: .fi
36: .SH COPYRIGHT
37: .if n Readline is Copyright (C) 1989\-2011 Free Software Foundation, Inc.
38: .if t Readline is Copyright \(co 1989\-2011 Free Software Foundation, Inc.
39: .SH DESCRIPTION
40: .LP
41: .B readline
42: will read a line from the terminal
43: and return it, using
44: .B prompt
45: as a prompt. If
46: .B prompt
47: is \fBNULL\fP or the empty string, no prompt is issued.
48: The line returned is allocated with
49: .IR malloc (3);
50: the caller must free it when finished. The line returned
51: has the final newline removed, so only the text of the line
52: remains.
53: .LP
54: .B readline
55: offers editing capabilities while the user is entering the
56: line.
57: By default, the line editing commands
58: are similar to those of emacs.
59: A vi\-style line editing interface is also available.
60: .LP
61: This manual page describes only the most basic use of \fBreadline\fP.
62: Much more functionality is available; see
63: \fIThe GNU Readline Library\fP and \fIThe GNU History Library\fP
64: for additional information.
65: .SH RETURN VALUE
66: .LP
67: .B readline
68: returns the text of the line read. A blank line
69: returns the empty string. If
70: .B EOF
71: is encountered while reading a line, and the line is empty,
72: .B NULL
73: is returned. If an
74: .B EOF
75: is read with a non\-empty line, it is
76: treated as a newline.
77: .SH NOTATION
78: .LP
79: An Emacs-style notation is used to denote
80: keystrokes. Control keys are denoted by C\-\fIkey\fR, e.g., C\-n
81: means Control\-N. Similarly,
82: .I meta
83: keys are denoted by M\-\fIkey\fR, so M\-x means Meta\-X. (On keyboards
84: without a
85: .I meta
86: key, M\-\fIx\fP means ESC \fIx\fP, i.e., press the Escape key
87: then the
88: .I x
89: key. This makes ESC the \fImeta prefix\fP.
90: The combination M\-C\-\fIx\fP means ESC\-Control\-\fIx\fP,
91: or press the Escape key
92: then hold the Control key while pressing the
93: .I x
94: key.)
95: .PP
96: Readline commands may be given numeric
97: .IR arguments ,
98: which normally act as a repeat count. Sometimes, however, it is the
99: sign of the argument that is significant. Passing a negative argument
100: to a command that acts in the forward direction (e.g., \fBkill\-line\fP)
101: causes that command to act in a backward direction. Commands whose
102: behavior with arguments deviates from this are noted.
103: .PP
104: When a command is described as \fIkilling\fP text, the text
105: deleted is saved for possible future retrieval
106: (\fIyanking\fP). The killed text is saved in a
107: \fIkill ring\fP. Consecutive kills cause the text to be
108: accumulated into one unit, which can be yanked all at once.
109: Commands which do not kill text separate the chunks of text
110: on the kill ring.
111: .SH INITIALIZATION FILE
112: .LP
113: Readline is customized by putting commands in an initialization
114: file (the \fIinputrc\fP file).
115: The name of this file is taken from the value of the
116: .B INPUTRC
117: environment variable. If that variable is unset, the default is
118: .IR ~/.inputrc .
119: If that file does not exist or cannot be read, the ultimate default is
120: .IR /etc/inputrc .
121: When a program which uses the readline library starts up, the
122: init file is read, and the key bindings and variables are set.
123: There are only a few basic constructs allowed in the
124: readline init file. Blank lines are ignored.
125: Lines beginning with a \fB#\fP are comments.
126: Lines beginning with a \fB$\fP indicate conditional constructs.
127: Other lines denote key bindings and variable settings.
128: Each program using this library may add its own commands
129: and bindings.
130: .PP
131: For example, placing
132: .RS
133: .PP
134: M\-Control\-u: universal\-argument
135: .RE
136: or
137: .RS
138: C\-Meta\-u: universal\-argument
139: .RE
140: .sp
141: into the
142: .I inputrc
143: would make M\-C\-u execute the readline command
144: .IR universal\-argument .
145: .PP
146: The following symbolic character names are recognized while
147: processing key bindings:
148: .IR DEL ,
149: .IR ESC ,
150: .IR ESCAPE ,
151: .IR LFD ,
152: .IR NEWLINE ,
153: .IR RET ,
154: .IR RETURN ,
155: .IR RUBOUT ,
156: .IR SPACE ,
157: .IR SPC ,
158: and
159: .IR TAB .
160: .PP
161: In addition to command names, readline allows keys to be bound
162: to a string that is inserted when the key is pressed (a \fImacro\fP).
163: .PP
164: .SS Key Bindings
165: .PP
166: The syntax for controlling key bindings in the
167: .I inputrc
168: file is simple. All that is required is the name of the
169: command or the text of a macro and a key sequence to which
170: it should be bound. The name may be specified in one of two ways:
171: as a symbolic key name, possibly with \fIMeta\-\fP or \fIControl\-\fP
172: prefixes, or as a key sequence.
173: The name and key sequence are separated by a colon. There can be no
174: whitespace between the name and the colon.
175: .PP
176: When using the form \fBkeyname\fP:\^\fIfunction-name\fP or \fImacro\fP,
177: .I keyname
178: is the name of a key spelled out in English. For example:
179: .sp
180: .RS
181: Control\-u: universal\-argument
182: .br
183: Meta\-Rubout: backward\-kill\-word
184: .br
185: Control\-o: "> output"
186: .RE
187: .LP
188: In the above example,
189: .I C\-u
190: is bound to the function
191: .BR universal\-argument ,
192: .I M-DEL
193: is bound to the function
194: .BR backward\-kill\-word ,
195: and
196: .I C\-o
197: is bound to run the macro
198: expressed on the right hand side (that is, to insert the text
199: .if t \f(CW> output\fP
200: .if n ``> output''
201: into the line).
202: .PP
203: In the second form, \fB"keyseq"\fP:\^\fIfunction\-name\fP or \fImacro\fP,
204: .B keyseq
205: differs from
206: .B keyname
207: above in that strings denoting
208: an entire key sequence may be specified by placing the sequence
209: within double quotes. Some GNU Emacs style key escapes can be
210: used, as in the following example, but the symbolic character names
211: are not recognized.
212: .sp
213: .RS
214: "\eC\-u": universal\-argument
215: .br
216: "\eC\-x\eC\-r": re\-read\-init\-file
217: .br
218: "\ee[11~": "Function Key 1"
219: .RE
220: .PP
221: In this example,
222: .I C-u
223: is again bound to the function
224: .BR universal\-argument .
225: .I "C-x C-r"
226: is bound to the function
227: .BR re\-read\-init\-file ,
228: and
229: .I "ESC [ 1 1 ~"
230: is bound to insert the text
231: .if t \f(CWFunction Key 1\fP.
232: .if n ``Function Key 1''.
233: .PP
234: The full set of GNU Emacs style escape sequences available when specifying
235: key sequences is
236: .RS
237: .PD 0
238: .TP
239: .B \eC\-
240: control prefix
241: .TP
242: .B \eM\-
243: meta prefix
244: .TP
245: .B \ee
246: an escape character
247: .TP
248: .B \e\e
249: backslash
250: .TP
251: .B \e"
252: literal ", a double quote
253: .TP
254: .B \e'
255: literal ', a single quote
256: .RE
257: .PD
258: .PP
259: In addition to the GNU Emacs style escape sequences, a second
260: set of backslash escapes is available:
261: .RS
262: .PD 0
263: .TP
264: .B \ea
265: alert (bell)
266: .TP
267: .B \eb
268: backspace
269: .TP
270: .B \ed
271: delete
272: .TP
273: .B \ef
274: form feed
275: .TP
276: .B \en
277: newline
278: .TP
279: .B \er
280: carriage return
281: .TP
282: .B \et
283: horizontal tab
284: .TP
285: .B \ev
286: vertical tab
287: .TP
288: .B \e\fInnn\fP
289: the eight-bit character whose value is the octal value \fInnn\fP
290: (one to three digits)
291: .TP
292: .B \ex\fIHH\fP
293: the eight-bit character whose value is the hexadecimal value \fIHH\fP
294: (one or two hex digits)
295: .RE
296: .PD
297: .PP
298: When entering the text of a macro, single or double quotes should
299: be used to indicate a macro definition. Unquoted text
300: is assumed to be a function name.
301: In the macro body, the backslash escapes described above are expanded.
302: Backslash will quote any other character in the macro text,
303: including " and '.
304: .PP
305: .B Bash
306: allows the current readline key bindings to be displayed or modified
307: with the
308: .B bind
309: builtin command. The editing mode may be switched during interactive
310: use by using the
311: .B \-o
312: option to the
313: .B set
314: builtin command. Other programs using this library provide
315: similar mechanisms. The
316: .I inputrc
317: file may be edited and re-read if a program does not provide
318: any other means to incorporate new bindings.
319: .SS Variables
320: .PP
321: Readline has variables that can be used to further customize its
322: behavior. A variable may be set in the
323: .I inputrc
324: file with a statement of the form
325: .RS
326: .PP
327: \fBset\fP \fIvariable\-name\fP \fIvalue\fP
328: .RE
329: .PP
330: Except where noted, readline variables can take the values
331: .B On
332: or
333: .B Off
334: (without regard to case).
335: Unrecognized variable names are ignored.
336: When a variable value is read, empty or null values, "on" (case-insensitive),
337: and "1" are equivalent to \fBOn\fP. All other values are equivalent to
338: \fBOff\fP.
339: The variables and their default values are:
340: .PP
341: .PD 0
342: .TP
343: .B bell\-style (audible)
344: Controls what happens when readline wants to ring the terminal bell.
345: If set to \fBnone\fP, readline never rings the bell. If set to
346: \fBvisible\fP, readline uses a visible bell if one is available.
347: If set to \fBaudible\fP, readline attempts to ring the terminal's bell.
348: .TP
349: .B bind\-tty\-special\-chars (On)
350: If set to \fBOn\fP, readline attempts to bind the control characters
351: treated specially by the kernel's terminal driver to their readline
352: equivalents.
353: .TP
354: .B colored\-stats (Off)
355: If set to \fBOn\fP, readline displays possible completions using different
356: colors to indicate their file type.
357: The color definitions are taken from the value of the \fBLS_COLORS\fP
358: environment variable.
359: .TP
360: .B comment\-begin (``#'')
361: The string that is inserted in \fBvi\fP mode when the
362: .B insert\-comment
363: command is executed.
364: This command is bound to
365: .B M\-#
366: in emacs mode and to
367: .B #
368: in vi command mode.
369: .TP
370: .B completion\-display\-width (-1)
371: The number of screen columns used to display possible matches
372: when performing completion.
373: The value is ignored if it is less than 0 or greater than the terminal
374: screen width.
375: A value of 0 will cause matches to be displayed one per line.
376: The default value is -1.
377: .TP
378: .B completion\-ignore\-case (Off)
379: If set to \fBOn\fP, readline performs filename matching and completion
380: in a case\-insensitive fashion.
381: .TP
382: .B completion\-map\-case (Off)
383: If set to \fBOn\fP, and \fBcompletion\-ignore\-case\fP is enabled, readline
384: treats hyphens (\fI\-\fP) and underscores (\fI_\fP) as equivalent when
385: performing case\-insensitive filename matching and completion.
386: .TP
387: .B completion\-prefix\-display\-length (0)
388: The length in characters of the common prefix of a list of possible
389: completions that is displayed without modification. When set to a
390: value greater than zero, common prefixes longer than this value are
391: replaced with an ellipsis when displaying possible completions.
392: .TP
393: .B completion\-query\-items (100)
394: This determines when the user is queried about viewing
395: the number of possible completions
396: generated by the \fBpossible\-completions\fP command.
397: It may be set to any integer value greater than or equal to
398: zero. If the number of possible completions is greater than
399: or equal to the value of this variable, the user is asked whether
400: or not he wishes to view them; otherwise they are simply listed
401: on the terminal. A negative value causes readline to never ask.
402: .TP
403: .B convert\-meta (On)
404: If set to \fBOn\fP, readline will convert characters with the
405: eighth bit set to an ASCII key sequence
406: by stripping the eighth bit and prefixing it with an
407: escape character (in effect, using escape as the \fImeta prefix\fP).
408: .TP
409: .B disable\-completion (Off)
410: If set to \fBOn\fP, readline will inhibit word completion. Completion
411: characters will be inserted into the line as if they had been
412: mapped to \fBself-insert\fP.
413: .TP
414: .B editing\-mode (emacs)
415: Controls whether readline begins with a set of key bindings similar
416: to \fIEmacs\fP or \fIvi\fP.
417: .B editing\-mode
418: can be set to either
419: .B emacs
420: or
421: .BR vi .
422: .TP
423: .B echo\-control\-characters (On)
424: When set to \fBOn\fP, on operating systems that indicate they support it,
425: readline echoes a character corresponding to a signal generated from the
426: keyboard.
427: .TP
428: .B enable\-keypad (Off)
429: When set to \fBOn\fP, readline will try to enable the application
430: keypad when it is called. Some systems need this to enable the
431: arrow keys.
432: .TP
433: .B enable\-meta\-key (On)
434: When set to \fBOn\fP, readline will try to enable any meta modifier
435: key the terminal claims to support when it is called. On many terminals,
436: the meta key is used to send eight-bit characters.
437: .TP
438: .B expand\-tilde (Off)
439: If set to \fBOn\fP, tilde expansion is performed when readline
440: attempts word completion.
441: .TP
442: .B history\-preserve\-point (Off)
443: If set to \fBOn\fP, the history code attempts to place point at the
444: same location on each history line retrieved with \fBprevious-history\fP
445: or \fBnext-history\fP.
446: .TP
447: .B history\-size (0)
448: Set the maximum number of history entries saved in the history list.
449: If set to zero, any existing history entries are deleted and no new entries
450: are saved.
451: If set to a value less than zero, the number of history entries is not
452: limited.
453: By default, the number of history entries is not limited.
454: .TP
455: .B horizontal\-scroll\-mode (Off)
456: When set to \fBOn\fP, makes readline use a single line for display,
457: scrolling the input horizontally on a single screen line when it
458: becomes longer than the screen width rather than wrapping to a new line.
459: .TP
460: .B input\-meta (Off)
461: If set to \fBOn\fP, readline will enable eight-bit input (that is,
462: it will not clear the eighth bit in the characters it reads),
463: regardless of what the terminal claims it can support. The name
464: .B meta\-flag
465: is a synonym for this variable.
466: .TP
467: .B isearch\-terminators (``C\-[ C\-J'')
468: The string of characters that should terminate an incremental
469: search without subsequently executing the character as a command.
470: If this variable has not been given a value, the characters
471: \fIESC\fP and \fIC\-J\fP will terminate an incremental search.
472: .TP
473: .B keymap (emacs)
474: Set the current readline keymap. The set of legal keymap names is
475: \fIemacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,
476: vi-command\fP, and
477: .IR vi-insert .
478: \fIvi\fP is equivalent to \fIvi-command\fP; \fIemacs\fP is
479: equivalent to \fIemacs-standard\fP. The default value is
480: .IR emacs .
481: The value of
482: .B editing\-mode
483: also affects the default keymap.
484: .TP
485: .B keyseq\-timeout (500)
486: Specifies the duration \fIreadline\fP will wait for a character when reading an
487: ambiguous key sequence (one that can form a complete key sequence using
488: the input read so far, or can take additional input to complete a longer
489: key sequence).
490: If no input is received within the timeout, \fIreadline\fP will use the shorter
491: but complete key sequence.
492: The value is specified in milliseconds, so a value of 1000 means that
493: \fIreadline\fP will wait one second for additional input.
494: If this variable is set to a value less than or equal to zero, or to a
495: non-numeric value, \fIreadline\fP will wait until another key is pressed to
496: decide which key sequence to complete.
497: .TP
498: .B mark\-directories (On)
499: If set to \fBOn\fP, completed directory names have a slash
500: appended.
501: .TP
502: .B mark\-modified\-lines (Off)
503: If set to \fBOn\fP, history lines that have been modified are displayed
504: with a preceding asterisk (\fB*\fP).
505: .TP
506: .B mark\-symlinked\-directories (Off)
507: If set to \fBOn\fP, completed names which are symbolic links to directories
508: have a slash appended (subject to the value of
509: \fBmark\-directories\fP).
510: .TP
511: .B match\-hidden\-files (On)
512: This variable, when set to \fBOn\fP, causes readline to match files whose
513: names begin with a `.' (hidden files) when performing filename
514: completion.
515: If set to \fBOff\fP, the leading `.' must be
516: supplied by the user in the filename to be completed.
517: .TP
518: .B menu\-complete\-display\-prefix (Off)
519: If set to \fBOn\fP, menu completion displays the common prefix of the
520: list of possible completions (which may be empty) before cycling through
521: the list.
522: .TP
523: .B output\-meta (Off)
524: If set to \fBOn\fP, readline will display characters with the
525: eighth bit set directly rather than as a meta-prefixed escape
526: sequence.
527: .TP
528: .B page\-completions (On)
529: If set to \fBOn\fP, readline uses an internal \fImore\fP-like pager
530: to display a screenful of possible completions at a time.
531: .TP
532: .B print\-completions\-horizontally (Off)
533: If set to \fBOn\fP, readline will display completions with matches
534: sorted horizontally in alphabetical order, rather than down the screen.
535: .TP
536: .B revert\-all\-at\-newline (Off)
537: If set to \fBOn\fP, readline will undo all changes to history lines
538: before returning when \fBaccept\-line\fP is executed. By default,
539: history lines may be modified and retain individual undo lists across
540: calls to \fBreadline\fP.
541: .TP
542: .B show\-all\-if\-ambiguous (Off)
543: This alters the default behavior of the completion functions. If
544: set to
545: .BR On ,
546: words which have more than one possible completion cause the
547: matches to be listed immediately instead of ringing the bell.
548: .TP
549: .B show\-all\-if\-unmodified (Off)
550: This alters the default behavior of the completion functions in
551: a fashion similar to \fBshow\-all\-if\-ambiguous\fP.
552: If set to
553: .BR On ,
554: words which have more than one possible completion without any
555: possible partial completion (the possible completions don't share
556: a common prefix) cause the matches to be listed immediately instead
557: of ringing the bell.
558: .TP
559: .B show\-mode\-in\-prompt (Off)
560: If set to \fBOn\fP, add a character to the beginning of the prompt
561: indicating the editing mode: emacs (@), vi command (:) or vi
562: insertion (+).
563: .TP
564: .B skip\-completed\-text (Off)
565: If set to \fBOn\fP, this alters the default completion behavior when
566: inserting a single match into the line. It's only active when
567: performing completion in the middle of a word. If enabled, readline
568: does not insert characters from the completion that match characters
569: after point in the word being completed, so portions of the word
570: following the cursor are not duplicated.
571: .TP
572: .B visible\-stats (Off)
573: If set to \fBOn\fP, a character denoting a file's type as reported
574: by \fIstat\fP(2) is appended to the filename when listing possible
575: completions.
576: .PD
577: .SS Conditional Constructs
578: .PP
579: Readline implements a facility similar in spirit to the conditional
580: compilation features of the C preprocessor which allows key
581: bindings and variable settings to be performed as the result
582: of tests. There are four parser directives used.
583: .IP \fB$if\fP
584: The
585: .B $if
586: construct allows bindings to be made based on the
587: editing mode, the terminal being used, or the application using
588: readline. The text of the test extends to the end of the line;
589: no characters are required to isolate it.
590: .RS
591: .IP \fBmode\fP
592: The \fBmode=\fP form of the \fB$if\fP directive is used to test
593: whether readline is in emacs or vi mode.
594: This may be used in conjunction
595: with the \fBset keymap\fP command, for instance, to set bindings in
596: the \fIemacs-standard\fP and \fIemacs-ctlx\fP keymaps only if
597: readline is starting out in emacs mode.
598: .IP \fBterm\fP
599: The \fBterm=\fP form may be used to include terminal-specific
600: key bindings, perhaps to bind the key sequences output by the
601: terminal's function keys. The word on the right side of the
602: .B =
603: is tested against the full name of the terminal and the portion
604: of the terminal name before the first \fB\-\fP. This allows
605: .I sun
606: to match both
607: .I sun
608: and
609: .IR sun\-cmd ,
610: for instance.
611: .IP \fBapplication\fP
612: The \fBapplication\fP construct is used to include
613: application-specific settings. Each program using the readline
614: library sets the \fIapplication name\fP, and an initialization
615: file can test for a particular value.
616: This could be used to bind key sequences to functions useful for
617: a specific program. For instance, the following command adds a
618: key sequence that quotes the current or previous word in \fBbash\fP:
619: .sp 1
620: .RS
621: .nf
622: \fB$if\fP Bash
623: # Quote the current or previous word
624: "\eC-xq": "\eeb\e"\eef\e""
625: \fB$endif\fP
626: .fi
627: .RE
628: .RE
629: .IP \fB$endif\fP
630: This command, as seen in the previous example, terminates an
631: \fB$if\fP command.
632: .IP \fB$else\fP
633: Commands in this branch of the \fB$if\fP directive are executed if
634: the test fails.
635: .IP \fB$include\fP
636: This directive takes a single filename as an argument and reads commands
637: and bindings from that file. For example, the following directive
638: would read \fI/etc/inputrc\fP:
639: .sp 1
640: .RS
641: .nf
642: \fB$include\fP \^ \fI/etc/inputrc\fP
643: .fi
644: .RE
645: .SH SEARCHING
646: .PP
647: Readline provides commands for searching through the command history
648: for lines containing a specified string.
649: There are two search modes:
650: .I incremental
651: and
652: .IR non-incremental .
653: .PP
654: Incremental searches begin before the user has finished typing the
655: search string.
656: As each character of the search string is typed, readline displays
657: the next entry from the history matching the string typed so far.
658: An incremental search requires only as many characters as needed to
659: find the desired history entry.
660: To search backward in the history for a particular string, type
661: \fBC\-r\fP. Typing \fBC\-s\fP searches forward through the history.
662: The characters present in the value of the \fBisearch-terminators\fP
663: variable are used to terminate an incremental search.
664: If that variable has not been assigned a value the \fIEscape\fP and
665: \fBC\-J\fP characters will terminate an incremental search.
666: \fBC\-G\fP will abort an incremental search and restore the original
667: line.
668: When the search is terminated, the history entry containing the
669: search string becomes the current line.
670: .PP
671: To find other matching entries in the history list, type \fBC\-s\fP or
672: \fBC\-r\fP as appropriate.
673: This will search backward or forward in the history for the next
674: line matching the search string typed so far.
675: Any other key sequence bound to a readline command will terminate
676: the search and execute that command.
677: For instance, a newline will terminate the search and accept
678: the line, thereby executing the command from the history list.
679: A movement command will terminate the search, make the last line found
680: the current line, and begin editing.
681: .PP
682: Non-incremental searches read the entire search string before starting
683: to search for matching history lines. The search string may be
684: typed by the user or be part of the contents of the current line.
685: .SH EDITING COMMANDS
686: .PP
687: The following is a list of the names of the commands and the default
688: key sequences to which they are bound.
689: Command names without an accompanying key sequence are unbound by default.
690: .PP
691: In the following descriptions, \fIpoint\fP refers to the current cursor
692: position, and \fImark\fP refers to a cursor position saved by the
693: \fBset\-mark\fP command.
694: The text between the point and mark is referred to as the \fIregion\fP.
695: .SS Commands for Moving
696: .PP
697: .PD 0
698: .TP
699: .B beginning\-of\-line (C\-a)
700: Move to the start of the current line.
701: .TP
702: .B end\-of\-line (C\-e)
703: Move to the end of the line.
704: .TP
705: .B forward\-char (C\-f)
706: Move forward a character.
707: .TP
708: .B backward\-char (C\-b)
709: Move back a character.
710: .TP
711: .B forward\-word (M\-f)
712: Move forward to the end of the next word. Words are composed of
713: alphanumeric characters (letters and digits).
714: .TP
715: .B backward\-word (M\-b)
716: Move back to the start of the current or previous word. Words are
717: composed of alphanumeric characters (letters and digits).
718: .TP
719: .B clear\-screen (C\-l)
720: Clear the screen leaving the current line at the top of the screen.
721: With an argument, refresh the current line without clearing the
722: screen.
723: .TP
724: .B redraw\-current\-line
725: Refresh the current line.
726: .PD
727: .SS Commands for Manipulating the History
728: .PP
729: .PD 0
730: .TP
731: .B accept\-line (Newline, Return)
732: Accept the line regardless of where the cursor is.
733: If this line is
734: non-empty, it may be added to the history list for future recall with
735: \fBadd_history()\fP.
736: If the line is a modified history line, the history line is restored to its original state.
737: .TP
738: .B previous\-history (C\-p)
739: Fetch the previous command from the history list, moving back in
740: the list.
741: .TP
742: .B next\-history (C\-n)
743: Fetch the next command from the history list, moving forward in the
744: list.
745: .TP
746: .B beginning\-of\-history (M\-<)
747: Move to the first line in the history.
748: .TP
749: .B end\-of\-history (M\->)
750: Move to the end of the input history, i.e., the line currently being
751: entered.
752: .TP
753: .B reverse\-search\-history (C\-r)
754: Search backward starting at the current line and moving `up' through
755: the history as necessary. This is an incremental search.
756: .TP
757: .B forward\-search\-history (C\-s)
758: Search forward starting at the current line and moving `down' through
759: the history as necessary. This is an incremental search.
760: .TP
761: .B non\-incremental\-reverse\-search\-history (M\-p)
762: Search backward through the history starting at the current line
763: using a non-incremental search for a string supplied by the user.
764: .TP
765: .B non\-incremental\-forward\-search\-history (M\-n)
766: Search forward through the history using a non-incremental search
767: for a string supplied by the user.
768: .TP
769: .B history\-search\-backward
770: Search backward through the history for the string of characters
771: between the start of the current line and the current cursor
772: position (the \fIpoint\fP).
773: The search string must match at the beginning of a history line.
774: This is a non-incremental search.
775: .TP
776: .B history\-search\-forward
777: Search forward through the history for the string of characters
778: between the start of the current line and the point.
779: The search string must match at the beginning of a history line.
780: This is a non-incremental search.
781: .TP
782: .B history\-substring\-search\-backward
783: Search backward through the history for the string of characters
784: between the start of the current line and the current cursor
785: position (the \fIpoint\fP).
786: The search string may match anywhere in a history line.
787: This is a non-incremental search.
788: .TP
789: .B history\-substring\-search\-forward
790: Search forward through the history for the string of characters
791: between the start of the current line and the point.
792: The search string may match anywhere in a history line.
793: This is a non-incremental search.
794: .TP
795: .B yank\-nth\-arg (M\-C\-y)
796: Insert the first argument to the previous command (usually
797: the second word on the previous line) at point.
798: With an argument
799: .IR n ,
800: insert the \fIn\fPth word from the previous command (the words
801: in the previous command begin with word 0). A negative argument
802: inserts the \fIn\fPth word from the end of the previous command.
803: Once the argument \fIn\fP is computed, the argument is extracted
804: as if the "!\fIn\fP" history expansion had been specified.
805: .TP
806: .B
807: yank\-last\-arg (M\-.\^, M\-_\^)
808: Insert the last argument to the previous command (the last word of
809: the previous history entry).
810: With a numeric argument, behave exactly like \fByank\-nth\-arg\fP.
811: Successive calls to \fByank\-last\-arg\fP move back through the history
812: list, inserting the last word (or the word specified by the argument to
813: the first call) of each line in turn.
814: Any numeric argument supplied to these successive calls determines
815: the direction to move through the history. A negative argument switches
816: the direction through the history (back or forward).
817: The history expansion facilities are used to extract the last argument,
818: as if the "!$" history expansion had been specified.
819: .PD
820: .SS Commands for Changing Text
821: .PP
822: .PD 0
823: .TP
824: .B \fIend\-of\-file\fP (usually C\-d)
825: The character indicating end-of-file as set, for example, by
826: .if t \f(CWstty\fP.
827: .if n ``stty''.
828: If this character is read when there are no characters
829: on the line, and point is at the beginning of the line, Readline
830: interprets it as the end of input and returns
831: .SM
832: .BR EOF .
833: .TP
834: .B delete\-char (C\-d)
835: Delete the character at point.
836: If this function is bound to the
837: same character as the tty \fBEOF\fP character, as \fBC\-d\fP
838: commonly is, see above for the effects.
839: .TP
840: .B backward\-delete\-char (Rubout)
841: Delete the character behind the cursor. When given a numeric argument,
842: save the deleted text on the kill ring.
843: .TP
844: .B forward\-backward\-delete\-char
845: Delete the character under the cursor, unless the cursor is at the
846: end of the line, in which case the character behind the cursor is
847: deleted.
848: .TP
849: .B quoted\-insert (C\-q, C\-v)
850: Add the next character that you type to the line verbatim. This is
851: how to insert characters like \fBC\-q\fP, for example.
852: .TP
853: .B tab\-insert (M-TAB)
854: Insert a tab character.
855: .TP
856: .B self\-insert (a,\ b,\ A,\ 1,\ !,\ ...)
857: Insert the character typed.
858: .TP
859: .B transpose\-chars (C\-t)
860: Drag the character before point forward over the character at point,
861: moving point forward as well.
862: If point is at the end of the line, then this transposes
863: the two characters before point.
864: Negative arguments have no effect.
865: .TP
866: .B transpose\-words (M\-t)
867: Drag the word before point past the word after point,
868: moving point over that word as well.
869: If point is at the end of the line, this transposes
870: the last two words on the line.
871: .TP
872: .B upcase\-word (M\-u)
873: Uppercase the current (or following) word. With a negative argument,
874: uppercase the previous word, but do not move point.
875: .TP
876: .B downcase\-word (M\-l)
877: Lowercase the current (or following) word. With a negative argument,
878: lowercase the previous word, but do not move point.
879: .TP
880: .B capitalize\-word (M\-c)
881: Capitalize the current (or following) word. With a negative argument,
882: capitalize the previous word, but do not move point.
883: .TP
884: .B overwrite\-mode
885: Toggle overwrite mode. With an explicit positive numeric argument,
886: switches to overwrite mode. With an explicit non-positive numeric
887: argument, switches to insert mode. This command affects only
888: \fBemacs\fP mode; \fBvi\fP mode does overwrite differently.
889: Each call to \fIreadline()\fP starts in insert mode.
890: In overwrite mode, characters bound to \fBself\-insert\fP replace
891: the text at point rather than pushing the text to the right.
892: Characters bound to \fBbackward\-delete\-char\fP replace the character
893: before point with a space. By default, this command is unbound.
894: .PD
895: .SS Killing and Yanking
896: .PP
897: .PD 0
898: .TP
899: .B kill\-line (C\-k)
900: Kill the text from point to the end of the line.
901: .TP
902: .B backward\-kill\-line (C\-x Rubout)
903: Kill backward to the beginning of the line.
904: .TP
905: .B unix\-line\-discard (C\-u)
906: Kill backward from point to the beginning of the line.
907: The killed text is saved on the kill-ring.
908: .\" There is no real difference between this and backward-kill-line
909: .TP
910: .B kill\-whole\-line
911: Kill all characters on the current line, no matter where point is.
912: .TP
913: .B kill\-word (M\-d)
914: Kill from point the end of the current word, or if between
915: words, to the end of the next word. Word boundaries are the same as
916: those used by \fBforward\-word\fP.
917: .TP
918: .B backward\-kill\-word (M\-Rubout)
919: Kill the word behind point.
920: Word boundaries are the same as those used by \fBbackward\-word\fP.
921: .TP
922: .B unix\-word\-rubout (C\-w)
923: Kill the word behind point, using white space as a word boundary.
924: The killed text is saved on the kill-ring.
925: .TP
926: .B unix\-filename\-rubout
927: Kill the word behind point, using white space and the slash character
928: as the word boundaries.
929: The killed text is saved on the kill-ring.
930: .TP
931: .B delete\-horizontal\-space (M\-\e)
932: Delete all spaces and tabs around point.
933: .TP
934: .B kill\-region
935: Kill the text between the point and \fImark\fP (saved cursor position).
936: This text is referred to as the \fIregion\fP.
937: .TP
938: .B copy\-region\-as\-kill
939: Copy the text in the region to the kill buffer.
940: .TP
941: .B copy\-backward\-word
942: Copy the word before point to the kill buffer.
943: The word boundaries are the same as \fBbackward\-word\fP.
944: .TP
945: .B copy\-forward\-word
946: Copy the word following point to the kill buffer.
947: The word boundaries are the same as \fBforward\-word\fP.
948: .TP
949: .B yank (C\-y)
950: Yank the top of the kill ring into the buffer at point.
951: .TP
952: .B yank\-pop (M\-y)
953: Rotate the kill ring, and yank the new top. Only works following
954: .B yank
955: or
956: .BR yank\-pop .
957: .PD
958: .SS Numeric Arguments
959: .PP
960: .PD 0
961: .TP
962: .B digit\-argument (M\-0, M\-1, ..., M\-\-)
963: Add this digit to the argument already accumulating, or start a new
964: argument. M\-\- starts a negative argument.
965: .TP
966: .B universal\-argument
967: This is another way to specify an argument.
968: If this command is followed by one or more digits, optionally with a
969: leading minus sign, those digits define the argument.
970: If the command is followed by digits, executing
971: .B universal\-argument
972: again ends the numeric argument, but is otherwise ignored.
973: As a special case, if this command is immediately followed by a
974: character that is neither a digit or minus sign, the argument count
975: for the next command is multiplied by four.
976: The argument count is initially one, so executing this function the
977: first time makes the argument count four, a second time makes the
978: argument count sixteen, and so on.
979: .PD
980: .SS Completing
981: .PP
982: .PD 0
983: .TP
984: .B complete (TAB)
985: Attempt to perform completion on the text before point.
986: The actual completion performed is application-specific.
987: .BR Bash ,
988: for instance, attempts completion treating the text as a variable
989: (if the text begins with \fB$\fP), username (if the text begins with
990: \fB~\fP), hostname (if the text begins with \fB@\fP), or
991: command (including aliases and functions) in turn. If none
992: of these produces a match, filename completion is attempted.
993: .BR Gdb ,
994: on the other hand,
995: allows completion of program functions and variables, and
996: only attempts filename completion under certain circumstances.
997: .TP
998: .B possible\-completions (M\-?)
999: List the possible completions of the text before point.
1000: When displaying completions, readline sets the number of columns used
1001: for display to the value of \fBcompletion-display-width\fP, the value of
1002: the environment variable
1003: .SM
1004: .BR COLUMNS ,
1005: or the screen width, in that order.
1006: .TP
1007: .B insert\-completions (M\-*)
1008: Insert all completions of the text before point
1009: that would have been generated by
1010: \fBpossible\-completions\fP.
1011: .TP
1012: .B menu\-complete
1013: Similar to \fBcomplete\fP, but replaces the word to be completed
1014: with a single match from the list of possible completions.
1015: Repeated execution of \fBmenu\-complete\fP steps through the list
1016: of possible completions, inserting each match in turn.
1017: At the end of the list of completions, the bell is rung
1018: (subject to the setting of \fBbell\-style\fP)
1019: and the original text is restored.
1020: An argument of \fIn\fP moves \fIn\fP positions forward in the list
1021: of matches; a negative argument may be used to move backward
1022: through the list.
1023: This command is intended to be bound to \fBTAB\fP, but is unbound
1024: by default.
1025: .TP
1026: .B menu\-complete\-backward
1027: Identical to \fBmenu\-complete\fP, but moves backward through the list
1028: of possible completions, as if \fBmenu\-complete\fP had been given a
1029: negative argument. This command is unbound by default.
1030: .TP
1031: .B delete\-char\-or\-list
1032: Deletes the character under the cursor if not at the beginning or
1033: end of the line (like \fBdelete-char\fP).
1034: If at the end of the line, behaves identically to
1035: \fBpossible-completions\fP.
1036: .PD
1037: .SS Keyboard Macros
1038: .PP
1039: .PD 0
1040: .TP
1041: .B start\-kbd\-macro (C\-x (\^)
1042: Begin saving the characters typed into the current keyboard macro.
1043: .TP
1044: .B end\-kbd\-macro (C\-x )\^)
1045: Stop saving the characters typed into the current keyboard macro
1046: and store the definition.
1047: .TP
1048: .B call\-last\-kbd\-macro (C\-x e)
1049: Re-execute the last keyboard macro defined, by making the characters
1050: in the macro appear as if typed at the keyboard.
1051: .B print\-last\-kbd\-macro ()
1052: Print the last keyboard macro defined in a format suitable for the
1053: \fIinputrc\fP file.
1054: .PD
1055: .SS Miscellaneous
1056: .PP
1057: .PD 0
1058: .TP
1059: .B re\-read\-init\-file (C\-x C\-r)
1060: Read in the contents of the \fIinputrc\fP file, and incorporate
1061: any bindings or variable assignments found there.
1062: .TP
1063: .B abort (C\-g)
1064: Abort the current editing command and
1065: ring the terminal's bell (subject to the setting of
1066: .BR bell\-style ).
1067: .TP
1068: .B do\-uppercase\-version (M\-a, M\-b, M\-\fIx\fP, ...)
1069: If the metafied character \fIx\fP is lowercase, run the command
1070: that is bound to the corresponding uppercase character.
1071: .TP
1072: .B prefix\-meta (ESC)
1073: Metafy the next character typed.
1074: .SM
1075: .B ESC
1076: .B f
1077: is equivalent to
1078: .BR Meta\-f .
1079: .TP
1080: .B undo (C\-_, C\-x C\-u)
1081: Incremental undo, separately remembered for each line.
1082: .TP
1083: .B revert\-line (M\-r)
1084: Undo all changes made to this line. This is like executing the
1085: .B undo
1086: command enough times to return the line to its initial state.
1087: .TP
1088: .B tilde\-expand (M\-&)
1089: Perform tilde expansion on the current word.
1090: .TP
1091: .B set\-mark (C\-@, M\-<space>)
1092: Set the mark to the point. If a
1093: numeric argument is supplied, the mark is set to that position.
1094: .TP
1095: .B exchange\-point\-and\-mark (C\-x C\-x)
1096: Swap the point with the mark. The current cursor position is set to
1097: the saved position, and the old cursor position is saved as the mark.
1098: .TP
1099: .B character\-search (C\-])
1100: A character is read and point is moved to the next occurrence of that
1101: character. A negative count searches for previous occurrences.
1102: .TP
1103: .B character\-search\-backward (M\-C\-])
1104: A character is read and point is moved to the previous occurrence of that
1105: character. A negative count searches for subsequent occurrences.
1106: .TP
1107: .B skip\-csi\-sequence
1108: Read enough characters to consume a multi-key sequence such as those
1109: defined for keys like Home and End. Such sequences begin with a
1110: Control Sequence Indicator (CSI), usually ESC\-[. If this sequence is
1111: bound to "\e[", keys producing such sequences will have no effect
1112: unless explicitly bound to a readline command, instead of inserting
1113: stray characters into the editing buffer. This is unbound by default,
1114: but usually bound to ESC\-[.
1115: .TP
1116: .B insert\-comment (M\-#)
1117: Without a numeric argument, the value of the readline
1118: .B comment\-begin
1119: variable is inserted at the beginning of the current line.
1120: If a numeric argument is supplied, this command acts as a toggle: if
1121: the characters at the beginning of the line do not match the value
1122: of \fBcomment\-begin\fP, the value is inserted, otherwise
1123: the characters in \fBcomment-begin\fP are deleted from the beginning of
1124: the line.
1125: In either case, the line is accepted as if a newline had been typed.
1126: The default value of
1127: .B comment\-begin
1128: makes the current line a shell comment.
1129: If a numeric argument causes the comment character to be removed, the line
1130: will be executed by the shell.
1131: .TP
1132: .B dump\-functions
1133: Print all of the functions and their key bindings to the
1134: readline output stream. If a numeric argument is supplied,
1135: the output is formatted in such a way that it can be made part
1136: of an \fIinputrc\fP file.
1137: .TP
1138: .B dump\-variables
1139: Print all of the settable variables and their values to the
1140: readline output stream. If a numeric argument is supplied,
1141: the output is formatted in such a way that it can be made part
1142: of an \fIinputrc\fP file.
1143: .TP
1144: .B dump\-macros
1145: Print all of the readline key sequences bound to macros and the
1146: strings they output. If a numeric argument is supplied,
1147: the output is formatted in such a way that it can be made part
1148: of an \fIinputrc\fP file.
1149: .TP
1150: .B emacs\-editing\-mode (C\-e)
1151: When in
1152: .B vi
1153: command mode, this causes a switch to
1154: .B emacs
1155: editing mode.
1156: .TP
1157: .B vi\-editing\-mode (M\-C\-j)
1158: When in
1159: .B emacs
1160: editing mode, this causes a switch to
1161: .B vi
1162: editing mode.
1163: .PD
1164: .SH DEFAULT KEY BINDINGS
1165: .LP
1166: The following is a list of the default emacs and vi bindings.
1167: Characters with the eighth bit set are written as M\-<character>, and
1168: are referred to as
1169: .I metafied
1170: characters.
1171: The printable ASCII characters not mentioned in the list of emacs
1172: standard bindings are bound to the
1173: .B self\-insert
1174: function, which just inserts the given character into the input line.
1175: In vi insertion mode, all characters not specifically mentioned are
1176: bound to
1177: .BR self\-insert .
1178: Characters assigned to signal generation by
1179: .IR stty (1)
1180: or the terminal driver, such as C-Z or C-C,
1181: retain that function.
1182: Upper and lower case metafied characters are bound to the same function in
1183: the emacs mode meta keymap.
1184: The remaining characters are unbound, which causes readline
1185: to ring the bell (subject to the setting of the
1186: .B bell\-style
1187: variable).
1188: .SS Emacs Mode
1189: .RS +.6i
1190: .nf
1191: .ta 2.5i
1192: .sp
1193: Emacs Standard bindings
1194: .sp
1195: "C-@" set-mark
1196: "C-A" beginning-of-line
1197: "C-B" backward-char
1198: "C-D" delete-char
1199: "C-E" end-of-line
1200: "C-F" forward-char
1201: "C-G" abort
1202: "C-H" backward-delete-char
1203: "C-I" complete
1204: "C-J" accept-line
1205: "C-K" kill-line
1206: "C-L" clear-screen
1207: "C-M" accept-line
1208: "C-N" next-history
1209: "C-P" previous-history
1210: "C-Q" quoted-insert
1211: "C-R" reverse-search-history
1212: "C-S" forward-search-history
1213: "C-T" transpose-chars
1214: "C-U" unix-line-discard
1215: "C-V" quoted-insert
1216: "C-W" unix-word-rubout
1217: "C-Y" yank
1218: "C-]" character-search
1219: "C-_" undo
1220: "\^ " to "/" self-insert
1221: "0" to "9" self-insert
1222: ":" to "~" self-insert
1223: "C-?" backward-delete-char
1224: .PP
1225: Emacs Meta bindings
1226: .sp
1227: "M-C-G" abort
1228: "M-C-H" backward-kill-word
1229: "M-C-I" tab-insert
1230: "M-C-J" vi-editing-mode
1231: "M-C-M" vi-editing-mode
1232: "M-C-R" revert-line
1233: "M-C-Y" yank-nth-arg
1234: "M-C-[" complete
1235: "M-C-]" character-search-backward
1236: "M-space" set-mark
1237: "M-#" insert-comment
1238: "M-&" tilde-expand
1239: "M-*" insert-completions
1240: "M--" digit-argument
1241: "M-." yank-last-arg
1242: "M-0" digit-argument
1243: "M-1" digit-argument
1244: "M-2" digit-argument
1245: "M-3" digit-argument
1246: "M-4" digit-argument
1247: "M-5" digit-argument
1248: "M-6" digit-argument
1249: "M-7" digit-argument
1250: "M-8" digit-argument
1251: "M-9" digit-argument
1252: "M-<" beginning-of-history
1253: "M-=" possible-completions
1254: "M->" end-of-history
1255: "M-?" possible-completions
1256: "M-B" backward-word
1257: "M-C" capitalize-word
1258: "M-D" kill-word
1259: "M-F" forward-word
1260: "M-L" downcase-word
1261: "M-N" non-incremental-forward-search-history
1262: "M-P" non-incremental-reverse-search-history
1263: "M-R" revert-line
1264: "M-T" transpose-words
1265: "M-U" upcase-word
1266: "M-Y" yank-pop
1267: "M-\e" delete-horizontal-space
1268: "M-~" tilde-expand
1269: "M-C-?" backward-kill-word
1270: "M-_" yank-last-arg
1271: .PP
1272: Emacs Control-X bindings
1273: .sp
1274: "C-XC-G" abort
1275: "C-XC-R" re-read-init-file
1276: "C-XC-U" undo
1277: "C-XC-X" exchange-point-and-mark
1278: "C-X(" start-kbd-macro
1279: "C-X)" end-kbd-macro
1280: "C-XE" call-last-kbd-macro
1281: "C-XC-?" backward-kill-line
1282: .sp
1283: .RE
1284: .SS VI Mode bindings
1285: .RS +.6i
1286: .nf
1287: .ta 2.5i
1288: .sp
1289: .PP
1290: VI Insert Mode functions
1291: .sp
1292: "C-D" vi-eof-maybe
1293: "C-H" backward-delete-char
1294: "C-I" complete
1295: "C-J" accept-line
1296: "C-M" accept-line
1297: "C-R" reverse-search-history
1298: "C-S" forward-search-history
1299: "C-T" transpose-chars
1300: "C-U" unix-line-discard
1301: "C-V" quoted-insert
1302: "C-W" unix-word-rubout
1303: "C-Y" yank
1304: "C-[" vi-movement-mode
1305: "C-_" undo
1306: "\^ " to "~" self-insert
1307: "C-?" backward-delete-char
1308: .PP
1309: VI Command Mode functions
1310: .sp
1311: "C-D" vi-eof-maybe
1312: "C-E" emacs-editing-mode
1313: "C-G" abort
1314: "C-H" backward-char
1315: "C-J" accept-line
1316: "C-K" kill-line
1317: "C-L" clear-screen
1318: "C-M" accept-line
1319: "C-N" next-history
1320: "C-P" previous-history
1321: "C-Q" quoted-insert
1322: "C-R" reverse-search-history
1323: "C-S" forward-search-history
1324: "C-T" transpose-chars
1325: "C-U" unix-line-discard
1326: "C-V" quoted-insert
1327: "C-W" unix-word-rubout
1328: "C-Y" yank
1329: "C-_" vi-undo
1330: "\^ " forward-char
1331: "#" insert-comment
1332: "$" end-of-line
1333: "%" vi-match
1334: "&" vi-tilde-expand
1335: "*" vi-complete
1336: "+" next-history
1337: "," vi-char-search
1338: "-" previous-history
1339: "." vi-redo
1340: "/" vi-search
1341: "0" beginning-of-line
1342: "1" to "9" vi-arg-digit
1343: ";" vi-char-search
1344: "=" vi-complete
1345: "?" vi-search
1346: "A" vi-append-eol
1347: "B" vi-prev-word
1348: "C" vi-change-to
1349: "D" vi-delete-to
1350: "E" vi-end-word
1351: "F" vi-char-search
1352: "G" vi-fetch-history
1353: "I" vi-insert-beg
1354: "N" vi-search-again
1355: "P" vi-put
1356: "R" vi-replace
1357: "S" vi-subst
1358: "T" vi-char-search
1359: "U" revert-line
1360: "W" vi-next-word
1361: "X" backward-delete-char
1362: "Y" vi-yank-to
1363: "\e" vi-complete
1364: "^" vi-first-print
1365: "_" vi-yank-arg
1366: "`" vi-goto-mark
1367: "a" vi-append-mode
1368: "b" vi-prev-word
1369: "c" vi-change-to
1370: "d" vi-delete-to
1371: "e" vi-end-word
1372: "f" vi-char-search
1373: "h" backward-char
1374: "i" vi-insertion-mode
1375: "j" next-history
1376: "k" prev-history
1377: "l" forward-char
1378: "m" vi-set-mark
1379: "n" vi-search-again
1380: "p" vi-put
1381: "r" vi-change-char
1382: "s" vi-subst
1383: "t" vi-char-search
1384: "u" vi-undo
1385: "w" vi-next-word
1386: "x" vi-delete
1387: "y" vi-yank-to
1388: "|" vi-column
1389: "~" vi-change-case
1390: .RE
1391: .SH "SEE ALSO"
1392: .PD 0
1393: .TP
1394: \fIThe Gnu Readline Library\fP, Brian Fox and Chet Ramey
1395: .TP
1396: \fIThe Gnu History Library\fP, Brian Fox and Chet Ramey
1397: .TP
1398: \fIbash\fP(1)
1399: .PD
1400: .SH FILES
1401: .PD 0
1402: .TP
1403: .FN ~/.inputrc
1404: Individual \fBreadline\fP initialization file
1405: .PD
1406: .SH AUTHORS
1407: Brian Fox, Free Software Foundation
1408: .br
1409: bfox@gnu.org
1410: .PP
1411: Chet Ramey, Case Western Reserve University
1412: .br
1413: chet.ramey@case.edu
1414: .SH BUG REPORTS
1415: If you find a bug in
1416: .B readline,
1417: you should report it. But first, you should
1418: make sure that it really is a bug, and that it appears in the latest
1419: version of the
1420: .B readline
1421: library that you have.
1422: .PP
1423: Once you have determined that a bug actually exists, mail a
1424: bug report to \fIbug\-readline\fP@\fIgnu.org\fP.
1425: If you have a fix, you are welcome to mail that
1426: as well! Suggestions and `philosophical' bug reports may be mailed
1427: to \fPbug-readline\fP@\fIgnu.org\fP or posted to the Usenet
1428: newsgroup
1429: .BR gnu.bash.bug .
1430: .PP
1431: Comments and bug reports concerning
1432: this manual page should be directed to
1433: .IR chet.ramey@case.edu .
1434: .SH BUGS
1435: .PP
1436: It's too big and too slow.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>