Annotation of embedaddon/readline/doc/readline.3, revision 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>