Annotation of embedaddon/readline/doc/rluserman.info, revision 1.1

1.1     ! misho       1: This is rluserman.info, produced by makeinfo version 4.13 from
        !             2: /usr/homes/chet/src/bash/readline-src/doc/rluserman.texi.
        !             3: 
        !             4: This manual describes the end user interface of the GNU Readline Library
        !             5: (version 6.3, 6 January 2014), a library which aids in the consistency
        !             6: of user interface across discrete programs which provide a command line
        !             7: interface.
        !             8: 
        !             9:    Copyright (C) 1988-2014 Free Software Foundation, Inc.
        !            10: 
        !            11:      Permission is granted to copy, distribute and/or modify this
        !            12:      document under the terms of the GNU Free Documentation License,
        !            13:      Version 1.3 or any later version published by the Free Software
        !            14:      Foundation; with no Invariant Sections, no Front-Cover Texts, and
        !            15:      no Back-Cover Texts.  A copy of the license is included in the
        !            16:      section entitled "GNU Free Documentation License".
        !            17: 
        !            18: 
        !            19: INFO-DIR-SECTION Libraries
        !            20: START-INFO-DIR-ENTRY
        !            21: * RLuserman: (rluserman).       The GNU readline library User's Manual.
        !            22: END-INFO-DIR-ENTRY
        !            23: 
        !            24: 
        !            25: File: rluserman.info,  Node: Top,  Next: Command Line Editing,  Up: (dir)
        !            26: 
        !            27: GNU Readline Library
        !            28: ********************
        !            29: 
        !            30: This document describes the end user interface of the GNU Readline
        !            31: Library, a utility which aids in the consistency of user interface
        !            32: across discrete programs which provide a command line interface.  The
        !            33: Readline home page is `http://www.gnu.org/software/readline/'.
        !            34: 
        !            35: * Menu:
        !            36: 
        !            37: * Command Line Editing::          GNU Readline User's Manual.
        !            38: * GNU Free Documentation License::     License for copying this manual.
        !            39: 
        !            40: 
        !            41: File: rluserman.info,  Node: Command Line Editing,  Next: GNU Free Documentation License,  Prev: Top,  Up: Top
        !            42: 
        !            43: 1 Command Line Editing
        !            44: **********************
        !            45: 
        !            46: This chapter describes the basic features of the GNU command line
        !            47: editing interface.
        !            48: 
        !            49: * Menu:
        !            50: 
        !            51: * Introduction and Notation::  Notation used in this text.
        !            52: * Readline Interaction::       The minimum set of commands for editing a line.
        !            53: * Readline Init File::         Customizing Readline from a user's view.
        !            54: * Bindable Readline Commands:: A description of most of the Readline commands
        !            55:                                available for binding
        !            56: * Readline vi Mode::           A short description of how to make Readline
        !            57:                                behave like the vi editor.
        !            58: 
        !            59: 
        !            60: File: rluserman.info,  Node: Introduction and Notation,  Next: Readline Interaction,  Up: Command Line Editing
        !            61: 
        !            62: 1.1 Introduction to Line Editing
        !            63: ================================
        !            64: 
        !            65: The following paragraphs describe the notation used to represent
        !            66: keystrokes.
        !            67: 
        !            68:    The text `C-k' is read as `Control-K' and describes the character
        !            69: produced when the <k> key is pressed while the Control key is depressed.
        !            70: 
        !            71:    The text `M-k' is read as `Meta-K' and describes the character
        !            72: produced when the Meta key (if you have one) is depressed, and the <k>
        !            73: key is pressed.  The Meta key is labeled <ALT> on many keyboards.  On
        !            74: keyboards with two keys labeled <ALT> (usually to either side of the
        !            75: space bar), the <ALT> on the left side is generally set to work as a
        !            76: Meta key.  The <ALT> key on the right may also be configured to work as
        !            77: a Meta key or may be configured as some other modifier, such as a
        !            78: Compose key for typing accented characters.
        !            79: 
        !            80:    If you do not have a Meta or <ALT> key, or another key working as a
        !            81: Meta key, the identical keystroke can be generated by typing <ESC>
        !            82: _first_, and then typing <k>.  Either process is known as "metafying"
        !            83: the <k> key.
        !            84: 
        !            85:    The text `M-C-k' is read as `Meta-Control-k' and describes the
        !            86: character produced by "metafying" `C-k'.
        !            87: 
        !            88:    In addition, several keys have their own names.  Specifically,
        !            89: <DEL>, <ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves
        !            90: when seen in this text, or in an init file (*note Readline Init File::).
        !            91: If your keyboard lacks a <LFD> key, typing <C-j> will produce the
        !            92: desired character.  The <RET> key may be labeled <Return> or <Enter> on
        !            93: some keyboards.
        !            94: 
        !            95: 
        !            96: File: rluserman.info,  Node: Readline Interaction,  Next: Readline Init File,  Prev: Introduction and Notation,  Up: Command Line Editing
        !            97: 
        !            98: 1.2 Readline Interaction
        !            99: ========================
        !           100: 
        !           101: Often during an interactive session you type in a long line of text,
        !           102: only to notice that the first word on the line is misspelled.  The
        !           103: Readline library gives you a set of commands for manipulating the text
        !           104: as you type it in, allowing you to just fix your typo, and not forcing
        !           105: you to retype the majority of the line.  Using these editing commands,
        !           106: you move the cursor to the place that needs correction, and delete or
        !           107: insert the text of the corrections.  Then, when you are satisfied with
        !           108: the line, you simply press <RET>.  You do not have to be at the end of
        !           109: the line to press <RET>; the entire line is accepted regardless of the
        !           110: location of the cursor within the line.
        !           111: 
        !           112: * Menu:
        !           113: 
        !           114: * Readline Bare Essentials::   The least you need to know about Readline.
        !           115: * Readline Movement Commands:: Moving about the input line.
        !           116: * Readline Killing Commands::  How to delete text, and how to get it back!
        !           117: * Readline Arguments::         Giving numeric arguments to commands.
        !           118: * Searching::                  Searching through previous lines.
        !           119: 
        !           120: 
        !           121: File: rluserman.info,  Node: Readline Bare Essentials,  Next: Readline Movement Commands,  Up: Readline Interaction
        !           122: 
        !           123: 1.2.1 Readline Bare Essentials
        !           124: ------------------------------
        !           125: 
        !           126: In order to enter characters into the line, simply type them.  The typed
        !           127: character appears where the cursor was, and then the cursor moves one
        !           128: space to the right.  If you mistype a character, you can use your erase
        !           129: character to back up and delete the mistyped character.
        !           130: 
        !           131:    Sometimes you may mistype a character, and not notice the error
        !           132: until you have typed several other characters.  In that case, you can
        !           133: type `C-b' to move the cursor to the left, and then correct your
        !           134: mistake.  Afterwards, you can move the cursor to the right with `C-f'.
        !           135: 
        !           136:    When you add text in the middle of a line, you will notice that
        !           137: characters to the right of the cursor are `pushed over' to make room
        !           138: for the text that you have inserted.  Likewise, when you delete text
        !           139: behind the cursor, characters to the right of the cursor are `pulled
        !           140: back' to fill in the blank space created by the removal of the text.  A
        !           141: list of the bare essentials for editing the text of an input line
        !           142: follows.
        !           143: 
        !           144: `C-b'
        !           145:      Move back one character.
        !           146: 
        !           147: `C-f'
        !           148:      Move forward one character.
        !           149: 
        !           150: <DEL> or <Backspace>
        !           151:      Delete the character to the left of the cursor.
        !           152: 
        !           153: `C-d'
        !           154:      Delete the character underneath the cursor.
        !           155: 
        !           156: Printing characters
        !           157:      Insert the character into the line at the cursor.
        !           158: 
        !           159: `C-_' or `C-x C-u'
        !           160:      Undo the last editing command.  You can undo all the way back to an
        !           161:      empty line.
        !           162: 
        !           163: (Depending on your configuration, the <Backspace> key be set to delete
        !           164: the character to the left of the cursor and the <DEL> key set to delete
        !           165: the character underneath the cursor, like `C-d', rather than the
        !           166: character to the left of the cursor.)
        !           167: 
        !           168: 
        !           169: File: rluserman.info,  Node: Readline Movement Commands,  Next: Readline Killing Commands,  Prev: Readline Bare Essentials,  Up: Readline Interaction
        !           170: 
        !           171: 1.2.2 Readline Movement Commands
        !           172: --------------------------------
        !           173: 
        !           174: The above table describes the most basic keystrokes that you need in
        !           175: order to do editing of the input line.  For your convenience, many
        !           176: other commands have been added in addition to `C-b', `C-f', `C-d', and
        !           177: <DEL>.  Here are some commands for moving more rapidly about the line.
        !           178: 
        !           179: `C-a'
        !           180:      Move to the start of the line.
        !           181: 
        !           182: `C-e'
        !           183:      Move to the end of the line.
        !           184: 
        !           185: `M-f'
        !           186:      Move forward a word, where a word is composed of letters and
        !           187:      digits.
        !           188: 
        !           189: `M-b'
        !           190:      Move backward a word.
        !           191: 
        !           192: `C-l'
        !           193:      Clear the screen, reprinting the current line at the top.
        !           194: 
        !           195:    Notice how `C-f' moves forward a character, while `M-f' moves
        !           196: forward a word.  It is a loose convention that control keystrokes
        !           197: operate on characters while meta keystrokes operate on words.
        !           198: 
        !           199: 
        !           200: File: rluserman.info,  Node: Readline Killing Commands,  Next: Readline Arguments,  Prev: Readline Movement Commands,  Up: Readline Interaction
        !           201: 
        !           202: 1.2.3 Readline Killing Commands
        !           203: -------------------------------
        !           204: 
        !           205: "Killing" text means to delete the text from the line, but to save it
        !           206: away for later use, usually by "yanking" (re-inserting) it back into
        !           207: the line.  (`Cut' and `paste' are more recent jargon for `kill' and
        !           208: `yank'.)
        !           209: 
        !           210:    If the description for a command says that it `kills' text, then you
        !           211: can be sure that you can get the text back in a different (or the same)
        !           212: place later.
        !           213: 
        !           214:    When you use a kill command, the text is saved in a "kill-ring".
        !           215: Any number of consecutive kills save all of the killed text together, so
        !           216: that when you yank it back, you get it all.  The kill ring is not line
        !           217: specific; the text that you killed on a previously typed line is
        !           218: available to be yanked back later, when you are typing another line.  
        !           219: 
        !           220:    Here is the list of commands for killing text.
        !           221: 
        !           222: `C-k'
        !           223:      Kill the text from the current cursor position to the end of the
        !           224:      line.
        !           225: 
        !           226: `M-d'
        !           227:      Kill from the cursor to the end of the current word, or, if between
        !           228:      words, to the end of the next word.  Word boundaries are the same
        !           229:      as those used by `M-f'.
        !           230: 
        !           231: `M-<DEL>'
        !           232:      Kill from the cursor the start of the current word, or, if between
        !           233:      words, to the start of the previous word.  Word boundaries are the
        !           234:      same as those used by `M-b'.
        !           235: 
        !           236: `C-w'
        !           237:      Kill from the cursor to the previous whitespace.  This is
        !           238:      different than `M-<DEL>' because the word boundaries differ.
        !           239: 
        !           240: 
        !           241:    Here is how to "yank" the text back into the line.  Yanking means to
        !           242: copy the most-recently-killed text from the kill buffer.
        !           243: 
        !           244: `C-y'
        !           245:      Yank the most recently killed text back into the buffer at the
        !           246:      cursor.
        !           247: 
        !           248: `M-y'
        !           249:      Rotate the kill-ring, and yank the new top.  You can only do this
        !           250:      if the prior command is `C-y' or `M-y'.
        !           251: 
        !           252: 
        !           253: File: rluserman.info,  Node: Readline Arguments,  Next: Searching,  Prev: Readline Killing Commands,  Up: Readline Interaction
        !           254: 
        !           255: 1.2.4 Readline Arguments
        !           256: ------------------------
        !           257: 
        !           258: You can pass numeric arguments to Readline commands.  Sometimes the
        !           259: argument acts as a repeat count, other times it is the sign of the
        !           260: argument that is significant.  If you pass a negative argument to a
        !           261: command which normally acts in a forward direction, that command will
        !           262: act in a backward direction.  For example, to kill text back to the
        !           263: start of the line, you might type `M-- C-k'.
        !           264: 
        !           265:    The general way to pass numeric arguments to a command is to type
        !           266: meta digits before the command.  If the first `digit' typed is a minus
        !           267: sign (`-'), then the sign of the argument will be negative.  Once you
        !           268: have typed one meta digit to get the argument started, you can type the
        !           269: remainder of the digits, and then the command.  For example, to give
        !           270: the `C-d' command an argument of 10, you could type `M-1 0 C-d', which
        !           271: will delete the next ten characters on the input line.
        !           272: 
        !           273: 
        !           274: File: rluserman.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline Interaction
        !           275: 
        !           276: 1.2.5 Searching for Commands in the History
        !           277: -------------------------------------------
        !           278: 
        !           279: Readline provides commands for searching through the command history
        !           280: for lines containing a specified string.  There are two search modes:
        !           281: "incremental" and "non-incremental".
        !           282: 
        !           283:    Incremental searches begin before the user has finished typing the
        !           284: search string.  As each character of the search string is typed,
        !           285: Readline displays the next entry from the history matching the string
        !           286: typed so far.  An incremental search requires only as many characters
        !           287: as needed to find the desired history entry.  To search backward in the
        !           288: history for a particular string, type `C-r'.  Typing `C-s' searches
        !           289: forward through the history.  The characters present in the value of
        !           290: the `isearch-terminators' variable are used to terminate an incremental
        !           291: search.  If that variable has not been assigned a value, the <ESC> and
        !           292: `C-J' characters will terminate an incremental search.  `C-g' will
        !           293: abort an incremental search and restore the original line.  When the
        !           294: search is terminated, the history entry containing the search string
        !           295: becomes the current line.
        !           296: 
        !           297:    To find other matching entries in the history list, type `C-r' or
        !           298: `C-s' as appropriate.  This will search backward or forward in the
        !           299: history for the next entry matching the search string typed so far.
        !           300: Any other key sequence bound to a Readline command will terminate the
        !           301: search and execute that command.  For instance, a <RET> will terminate
        !           302: the search and accept the line, thereby executing the command from the
        !           303: history list.  A movement command will terminate the search, make the
        !           304: last line found the current line, and begin editing.
        !           305: 
        !           306:    Readline remembers the last incremental search string.  If two
        !           307: `C-r's are typed without any intervening characters defining a new
        !           308: search string, any remembered search string is used.
        !           309: 
        !           310:    Non-incremental searches read the entire search string before
        !           311: starting to search for matching history lines.  The search string may be
        !           312: typed by the user or be part of the contents of the current line.
        !           313: 
        !           314: 
        !           315: File: rluserman.info,  Node: Readline Init File,  Next: Bindable Readline Commands,  Prev: Readline Interaction,  Up: Command Line Editing
        !           316: 
        !           317: 1.3 Readline Init File
        !           318: ======================
        !           319: 
        !           320: Although the Readline library comes with a set of Emacs-like
        !           321: keybindings installed by default, it is possible to use a different set
        !           322: of keybindings.  Any user can customize programs that use Readline by
        !           323: putting commands in an "inputrc" file, conventionally in his home
        !           324: directory.  The name of this file is taken from the value of the
        !           325: environment variable `INPUTRC'.  If that variable is unset, the default
        !           326: is `~/.inputrc'.  If that file does not exist or cannot be read, the
        !           327: ultimate default is `/etc/inputrc'.
        !           328: 
        !           329:    When a program which uses the Readline library starts up, the init
        !           330: file is read, and the key bindings are set.
        !           331: 
        !           332:    In addition, the `C-x C-r' command re-reads this init file, thus
        !           333: incorporating any changes that you might have made to it.
        !           334: 
        !           335: * Menu:
        !           336: 
        !           337: * Readline Init File Syntax::  Syntax for the commands in the inputrc file.
        !           338: 
        !           339: * Conditional Init Constructs::        Conditional key bindings in the inputrc file.
        !           340: 
        !           341: * Sample Init File::           An example inputrc file.
        !           342: 
        !           343: 
        !           344: File: rluserman.info,  Node: Readline Init File Syntax,  Next: Conditional Init Constructs,  Up: Readline Init File
        !           345: 
        !           346: 1.3.1 Readline Init File Syntax
        !           347: -------------------------------
        !           348: 
        !           349: There are only a few basic constructs allowed in the Readline init
        !           350: file.  Blank lines are ignored.  Lines beginning with a `#' are
        !           351: comments.  Lines beginning with a `$' indicate conditional constructs
        !           352: (*note Conditional Init Constructs::).  Other lines denote variable
        !           353: settings and key bindings.
        !           354: 
        !           355: Variable Settings
        !           356:      You can modify the run-time behavior of Readline by altering the
        !           357:      values of variables in Readline using the `set' command within the
        !           358:      init file.  The syntax is simple:
        !           359: 
        !           360:           set VARIABLE VALUE
        !           361: 
        !           362:      Here, for example, is how to change from the default Emacs-like
        !           363:      key binding to use `vi' line editing commands:
        !           364: 
        !           365:           set editing-mode vi
        !           366: 
        !           367:      Variable names and values, where appropriate, are recognized
        !           368:      without regard to case.  Unrecognized variable names are ignored.
        !           369: 
        !           370:      Boolean variables (those that can be set to on or off) are set to
        !           371:      on if the value is null or empty, ON (case-insensitive), or 1.
        !           372:      Any other value results in the variable being set to off.
        !           373: 
        !           374:      A great deal of run-time behavior is changeable with the following
        !           375:      variables.
        !           376: 
        !           377:     `bell-style'
        !           378:           Controls what happens when Readline wants to ring the
        !           379:           terminal bell.  If set to `none', Readline never rings the
        !           380:           bell.  If set to `visible', Readline uses a visible bell if
        !           381:           one is available.  If set to `audible' (the default),
        !           382:           Readline attempts to ring the terminal's bell.
        !           383: 
        !           384:     `bind-tty-special-chars'
        !           385:           If set to `on', Readline attempts to bind the control
        !           386:           characters treated specially by the kernel's terminal driver
        !           387:           to their Readline equivalents.
        !           388: 
        !           389:     `colored-stats'
        !           390:           If set to `on', Readline displays possible completions using
        !           391:           different colors to indicate their file type.  The color
        !           392:           definitions are taken from the value of the `LS_COLORS'
        !           393:           environment variable.  The default is `off'.
        !           394: 
        !           395:     `comment-begin'
        !           396:           The string to insert at the beginning of the line when the
        !           397:           `insert-comment' command is executed.  The default value is
        !           398:           `"#"'.
        !           399: 
        !           400:     `completion-display-width'
        !           401:           The number of screen columns used to display possible matches
        !           402:           when performing completion.  The value is ignored if it is
        !           403:           less than 0 or greater than the terminal screen width.  A
        !           404:           value of 0 will cause matches to be displayed one per line.
        !           405:           The default value is -1.
        !           406: 
        !           407:     `completion-ignore-case'
        !           408:           If set to `on', Readline performs filename matching and
        !           409:           completion in a case-insensitive fashion.  The default value
        !           410:           is `off'.
        !           411: 
        !           412:     `completion-map-case'
        !           413:           If set to `on', and COMPLETION-IGNORE-CASE is enabled,
        !           414:           Readline treats hyphens (`-') and underscores (`_') as
        !           415:           equivalent when performing case-insensitive filename matching
        !           416:           and completion.
        !           417: 
        !           418:     `completion-prefix-display-length'
        !           419:           The length in characters of the common prefix of a list of
        !           420:           possible completions that is displayed without modification.
        !           421:           When set to a value greater than zero, common prefixes longer
        !           422:           than this value are replaced with an ellipsis when displaying
        !           423:           possible completions.
        !           424: 
        !           425:     `completion-query-items'
        !           426:           The number of possible completions that determines when the
        !           427:           user is asked whether the list of possibilities should be
        !           428:           displayed.  If the number of possible completions is greater
        !           429:           than this value, Readline will ask the user whether or not he
        !           430:           wishes to view them; otherwise, they are simply listed.  This
        !           431:           variable must be set to an integer value greater than or
        !           432:           equal to 0.  A negative value means Readline should never ask.
        !           433:           The default limit is `100'.
        !           434: 
        !           435:     `convert-meta'
        !           436:           If set to `on', Readline will convert characters with the
        !           437:           eighth bit set to an ASCII key sequence by stripping the
        !           438:           eighth bit and prefixing an <ESC> character, converting them
        !           439:           to a meta-prefixed key sequence.  The default value is `on'.
        !           440: 
        !           441:     `disable-completion'
        !           442:           If set to `On', Readline will inhibit word completion.
        !           443:           Completion  characters will be inserted into the line as if
        !           444:           they had been mapped to `self-insert'.  The default is `off'.
        !           445: 
        !           446:     `editing-mode'
        !           447:           The `editing-mode' variable controls which default set of key
        !           448:           bindings is used.  By default, Readline starts up in Emacs
        !           449:           editing mode, where the keystrokes are most similar to Emacs.
        !           450:           This variable can be set to either `emacs' or `vi'.
        !           451: 
        !           452:     `echo-control-characters'
        !           453:           When set to `on', on operating systems that indicate they
        !           454:           support it, readline echoes a character corresponding to a
        !           455:           signal generated from the keyboard.  The default is `on'.
        !           456: 
        !           457:     `enable-keypad'
        !           458:           When set to `on', Readline will try to enable the application
        !           459:           keypad when it is called.  Some systems need this to enable
        !           460:           the arrow keys.  The default is `off'.
        !           461: 
        !           462:     `enable-meta-key'
        !           463:           When set to `on', Readline will try to enable any meta
        !           464:           modifier key the terminal claims to support when it is
        !           465:           called.  On many terminals, the meta key is used to send
        !           466:           eight-bit characters.  The default is `on'.
        !           467: 
        !           468:     `expand-tilde'
        !           469:           If set to `on', tilde expansion is performed when Readline
        !           470:           attempts word completion.  The default is `off'.
        !           471: 
        !           472:     `history-preserve-point'
        !           473:           If set to `on', the history code attempts to place the point
        !           474:           (the current cursor position) at the same location on each
        !           475:           history line retrieved with `previous-history' or
        !           476:           `next-history'.  The default is `off'.
        !           477: 
        !           478:     `history-size'
        !           479:           Set the maximum number of history entries saved in the
        !           480:           history list.  If set to zero, any existing history entries
        !           481:           are deleted and no new entries are saved.  If set to a value
        !           482:           less than zero, the number of history entries is not limited.
        !           483:           By default, the number of history entries is not limited.
        !           484: 
        !           485:     `horizontal-scroll-mode'
        !           486:           This variable can be set to either `on' or `off'.  Setting it
        !           487:           to `on' means that the text of the lines being edited will
        !           488:           scroll horizontally on a single screen line when they are
        !           489:           longer than the width of the screen, instead of wrapping onto
        !           490:           a new screen line.  By default, this variable is set to `off'.
        !           491: 
        !           492:     `input-meta'
        !           493:           If set to `on', Readline will enable eight-bit input (it will
        !           494:           not clear the eighth bit in the characters it reads),
        !           495:           regardless of what the terminal claims it can support.  The
        !           496:           default value is `off'.  The name `meta-flag' is a synonym
        !           497:           for this variable.
        !           498: 
        !           499:     `isearch-terminators'
        !           500:           The string of characters that should terminate an incremental
        !           501:           search without subsequently executing the character as a
        !           502:           command (*note Searching::).  If this variable has not been
        !           503:           given a value, the characters <ESC> and `C-J' will terminate
        !           504:           an incremental search.
        !           505: 
        !           506:     `keymap'
        !           507:           Sets Readline's idea of the current keymap for key binding
        !           508:           commands.  Acceptable `keymap' names are `emacs',
        !           509:           `emacs-standard', `emacs-meta', `emacs-ctlx', `vi', `vi-move',
        !           510:           `vi-command', and `vi-insert'.  `vi' is equivalent to
        !           511:           `vi-command'; `emacs' is equivalent to `emacs-standard'.  The
        !           512:           default value is `emacs'.  The value of the `editing-mode'
        !           513:           variable also affects the default keymap.
        !           514: 
        !           515:     `keyseq-timeout'
        !           516:           Specifies the duration Readline will wait for a character
        !           517:           when reading an ambiguous key sequence (one that can form a
        !           518:           complete key sequence using the input read so far, or can
        !           519:           take additional input to complete a longer key sequence).  If
        !           520:           no input is received within the timeout, Readline will use
        !           521:           the shorter but complete key sequence.  Readline uses this
        !           522:           value to determine whether or not input is available on the
        !           523:           current input source (`rl_instream' by default).  The value
        !           524:           is specified in milliseconds, so a value of 1000 means that
        !           525:           Readline will wait one second for additional input.  If this
        !           526:           variable is set to a value less than or equal to zero, or to a
        !           527:           non-numeric value, Readline will wait until another key is
        !           528:           pressed to decide which key sequence to complete.  The
        !           529:           default value is `500'.
        !           530: 
        !           531:     `mark-directories'
        !           532:           If set to `on', completed directory names have a slash
        !           533:           appended.  The default is `on'.
        !           534: 
        !           535:     `mark-modified-lines'
        !           536:           This variable, when set to `on', causes Readline to display an
        !           537:           asterisk (`*') at the start of history lines which have been
        !           538:           modified.  This variable is `off' by default.
        !           539: 
        !           540:     `mark-symlinked-directories'
        !           541:           If set to `on', completed names which are symbolic links to
        !           542:           directories have a slash appended (subject to the value of
        !           543:           `mark-directories').  The default is `off'.
        !           544: 
        !           545:     `match-hidden-files'
        !           546:           This variable, when set to `on', causes Readline to match
        !           547:           files whose names begin with a `.' (hidden files) when
        !           548:           performing filename completion.  If set to `off', the leading
        !           549:           `.' must be supplied by the user in the filename to be
        !           550:           completed.  This variable is `on' by default.
        !           551: 
        !           552:     `menu-complete-display-prefix'
        !           553:           If set to `on', menu completion displays the common prefix of
        !           554:           the list of possible completions (which may be empty) before
        !           555:           cycling through the list.  The default is `off'.
        !           556: 
        !           557:     `output-meta'
        !           558:           If set to `on', Readline will display characters with the
        !           559:           eighth bit set directly rather than as a meta-prefixed escape
        !           560:           sequence.  The default is `off'.
        !           561: 
        !           562:     `page-completions'
        !           563:           If set to `on', Readline uses an internal `more'-like pager
        !           564:           to display a screenful of possible completions at a time.
        !           565:           This variable is `on' by default.
        !           566: 
        !           567:     `print-completions-horizontally'
        !           568:           If set to `on', Readline will display completions with matches
        !           569:           sorted horizontally in alphabetical order, rather than down
        !           570:           the screen.  The default is `off'.
        !           571: 
        !           572:     `revert-all-at-newline'
        !           573:           If set to `on', Readline will undo all changes to history
        !           574:           lines before returning when `accept-line' is executed.  By
        !           575:           default, history lines may be modified and retain individual
        !           576:           undo lists across calls to `readline'.  The default is `off'.
        !           577: 
        !           578:     `show-all-if-ambiguous'
        !           579:           This alters the default behavior of the completion functions.
        !           580:           If set to `on', words which have more than one possible
        !           581:           completion cause the matches to be listed immediately instead
        !           582:           of ringing the bell.  The default value is `off'.
        !           583: 
        !           584:     `show-all-if-unmodified'
        !           585:           This alters the default behavior of the completion functions
        !           586:           in a fashion similar to SHOW-ALL-IF-AMBIGUOUS.  If set to
        !           587:           `on', words which have more than one possible completion
        !           588:           without any possible partial completion (the possible
        !           589:           completions don't share a common prefix) cause the matches to
        !           590:           be listed immediately instead of ringing the bell.  The
        !           591:           default value is `off'.
        !           592: 
        !           593:     `show-mode-in-prompt'
        !           594:           If set to `on', add a character to the beginning of the prompt
        !           595:           indicating the editing mode: emacs (`@'), vi command (`:'),
        !           596:           or vi insertion (`+').  The default value is `off'.
        !           597: 
        !           598:     `skip-completed-text'
        !           599:           If set to `on', this alters the default completion behavior
        !           600:           when inserting a single match into the line.  It's only
        !           601:           active when performing completion in the middle of a word.
        !           602:           If enabled, readline does not insert characters from the
        !           603:           completion that match characters after point in the word
        !           604:           being completed, so portions of the word following the cursor
        !           605:           are not duplicated.  For instance, if this is enabled,
        !           606:           attempting completion when the cursor is after the `e' in
        !           607:           `Makefile' will result in `Makefile' rather than
        !           608:           `Makefilefile', assuming there is a single possible
        !           609:           completion.  The default value is `off'.
        !           610: 
        !           611:     `visible-stats'
        !           612:           If set to `on', a character denoting a file's type is
        !           613:           appended to the filename when listing possible completions.
        !           614:           The default is `off'.
        !           615: 
        !           616: 
        !           617: Key Bindings
        !           618:      The syntax for controlling key bindings in the init file is
        !           619:      simple.  First you need to find the name of the command that you
        !           620:      want to change.  The following sections contain tables of the
        !           621:      command name, the default keybinding, if any, and a short
        !           622:      description of what the command does.
        !           623: 
        !           624:      Once you know the name of the command, simply place on a line in
        !           625:      the init file the name of the key you wish to bind the command to,
        !           626:      a colon, and then the name of the command.  There can be no space
        !           627:      between the key name and the colon - that will be interpreted as
        !           628:      part of the key name.  The name of the key can be expressed in
        !           629:      different ways, depending on what you find most comfortable.
        !           630: 
        !           631:      In addition to command names, readline allows keys to be bound to
        !           632:      a string that is inserted when the key is pressed (a MACRO).
        !           633: 
        !           634:     KEYNAME: FUNCTION-NAME or MACRO
        !           635:           KEYNAME is the name of a key spelled out in English.  For
        !           636:           example:
        !           637:                Control-u: universal-argument
        !           638:                Meta-Rubout: backward-kill-word
        !           639:                Control-o: "> output"
        !           640: 
        !           641:           In the above example, `C-u' is bound to the function
        !           642:           `universal-argument', `M-DEL' is bound to the function
        !           643:           `backward-kill-word', and `C-o' is bound to run the macro
        !           644:           expressed on the right hand side (that is, to insert the text
        !           645:           `> output' into the line).
        !           646: 
        !           647:           A number of symbolic character names are recognized while
        !           648:           processing this key binding syntax: DEL, ESC, ESCAPE, LFD,
        !           649:           NEWLINE, RET, RETURN, RUBOUT, SPACE, SPC, and TAB.
        !           650: 
        !           651:     "KEYSEQ": FUNCTION-NAME or MACRO
        !           652:           KEYSEQ differs from KEYNAME above in that strings denoting an
        !           653:           entire key sequence can be specified, by placing the key
        !           654:           sequence in double quotes.  Some GNU Emacs style key escapes
        !           655:           can be used, as in the following example, but the special
        !           656:           character names are not recognized.
        !           657: 
        !           658:                "\C-u": universal-argument
        !           659:                "\C-x\C-r": re-read-init-file
        !           660:                "\e[11~": "Function Key 1"
        !           661: 
        !           662:           In the above example, `C-u' is again bound to the function
        !           663:           `universal-argument' (just as it was in the first example),
        !           664:           `C-x C-r' is bound to the function `re-read-init-file', and
        !           665:           `<ESC> <[> <1> <1> <~>' is bound to insert the text `Function
        !           666:           Key 1'.
        !           667: 
        !           668: 
        !           669:      The following GNU Emacs style escape sequences are available when
        !           670:      specifying key sequences:
        !           671: 
        !           672:     `\C-'
        !           673:           control prefix
        !           674: 
        !           675:     `\M-'
        !           676:           meta prefix
        !           677: 
        !           678:     `\e'
        !           679:           an escape character
        !           680: 
        !           681:     `\\'
        !           682:           backslash
        !           683: 
        !           684:     `\"'
        !           685:           <">, a double quotation mark
        !           686: 
        !           687:     `\''
        !           688:           <'>, a single quote or apostrophe
        !           689: 
        !           690:      In addition to the GNU Emacs style escape sequences, a second set
        !           691:      of backslash escapes is available:
        !           692: 
        !           693:     `\a'
        !           694:           alert (bell)
        !           695: 
        !           696:     `\b'
        !           697:           backspace
        !           698: 
        !           699:     `\d'
        !           700:           delete
        !           701: 
        !           702:     `\f'
        !           703:           form feed
        !           704: 
        !           705:     `\n'
        !           706:           newline
        !           707: 
        !           708:     `\r'
        !           709:           carriage return
        !           710: 
        !           711:     `\t'
        !           712:           horizontal tab
        !           713: 
        !           714:     `\v'
        !           715:           vertical tab
        !           716: 
        !           717:     `\NNN'
        !           718:           the eight-bit character whose value is the octal value NNN
        !           719:           (one to three digits)
        !           720: 
        !           721:     `\xHH'
        !           722:           the eight-bit character whose value is the hexadecimal value
        !           723:           HH (one or two hex digits)
        !           724: 
        !           725:      When entering the text of a macro, single or double quotes must be
        !           726:      used to indicate a macro definition.  Unquoted text is assumed to
        !           727:      be a function name.  In the macro body, the backslash escapes
        !           728:      described above are expanded.  Backslash will quote any other
        !           729:      character in the macro text, including `"' and `''.  For example,
        !           730:      the following binding will make `C-x \' insert a single `\' into
        !           731:      the line:
        !           732:           "\C-x\\": "\\"
        !           733: 
        !           734: 
        !           735: 
        !           736: File: rluserman.info,  Node: Conditional Init Constructs,  Next: Sample Init File,  Prev: Readline Init File Syntax,  Up: Readline Init File
        !           737: 
        !           738: 1.3.2 Conditional Init Constructs
        !           739: ---------------------------------
        !           740: 
        !           741: Readline implements a facility similar in spirit to the conditional
        !           742: compilation features of the C preprocessor which allows key bindings
        !           743: and variable settings to be performed as the result of tests.  There
        !           744: are four parser directives used.
        !           745: 
        !           746: `$if'
        !           747:      The `$if' construct allows bindings to be made based on the
        !           748:      editing mode, the terminal being used, or the application using
        !           749:      Readline.  The text of the test extends to the end of the line; no
        !           750:      characters are required to isolate it.
        !           751: 
        !           752:     `mode'
        !           753:           The `mode=' form of the `$if' directive is used to test
        !           754:           whether Readline is in `emacs' or `vi' mode.  This may be
        !           755:           used in conjunction with the `set keymap' command, for
        !           756:           instance, to set bindings in the `emacs-standard' and
        !           757:           `emacs-ctlx' keymaps only if Readline is starting out in
        !           758:           `emacs' mode.
        !           759: 
        !           760:     `term'
        !           761:           The `term=' form may be used to include terminal-specific key
        !           762:           bindings, perhaps to bind the key sequences output by the
        !           763:           terminal's function keys.  The word on the right side of the
        !           764:           `=' is tested against both the full name of the terminal and
        !           765:           the portion of the terminal name before the first `-'.  This
        !           766:           allows `sun' to match both `sun' and `sun-cmd', for instance.
        !           767: 
        !           768:     `application'
        !           769:           The APPLICATION construct is used to include
        !           770:           application-specific settings.  Each program using the
        !           771:           Readline library sets the APPLICATION NAME, and you can test
        !           772:           for a particular value.  This could be used to bind key
        !           773:           sequences to functions useful for a specific program.  For
        !           774:           instance, the following command adds a key sequence that
        !           775:           quotes the current or previous word in Bash:
        !           776:                $if Bash
        !           777:                # Quote the current or previous word
        !           778:                "\C-xq": "\eb\"\ef\""
        !           779:                $endif
        !           780: 
        !           781: `$endif'
        !           782:      This command, as seen in the previous example, terminates an `$if'
        !           783:      command.
        !           784: 
        !           785: `$else'
        !           786:      Commands in this branch of the `$if' directive are executed if the
        !           787:      test fails.
        !           788: 
        !           789: `$include'
        !           790:      This directive takes a single filename as an argument and reads
        !           791:      commands and bindings from that file.  For example, the following
        !           792:      directive reads from `/etc/inputrc':
        !           793:           $include /etc/inputrc
        !           794: 
        !           795: 
        !           796: File: rluserman.info,  Node: Sample Init File,  Prev: Conditional Init Constructs,  Up: Readline Init File
        !           797: 
        !           798: 1.3.3 Sample Init File
        !           799: ----------------------
        !           800: 
        !           801: Here is an example of an INPUTRC file.  This illustrates key binding,
        !           802: variable assignment, and conditional syntax.
        !           803: 
        !           804: 
        !           805:      # This file controls the behaviour of line input editing for
        !           806:      # programs that use the GNU Readline library.  Existing
        !           807:      # programs include FTP, Bash, and GDB.
        !           808:      #
        !           809:      # You can re-read the inputrc file with C-x C-r.
        !           810:      # Lines beginning with '#' are comments.
        !           811:      #
        !           812:      # First, include any system-wide bindings and variable
        !           813:      # assignments from /etc/Inputrc
        !           814:      $include /etc/Inputrc
        !           815: 
        !           816:      #
        !           817:      # Set various bindings for emacs mode.
        !           818: 
        !           819:      set editing-mode emacs
        !           820: 
        !           821:      $if mode=emacs
        !           822: 
        !           823:      Meta-Control-h:   backward-kill-word      Text after the function name is ignored
        !           824: 
        !           825:      #
        !           826:      # Arrow keys in keypad mode
        !           827:      #
        !           828:      #"\M-OD":        backward-char
        !           829:      #"\M-OC":        forward-char
        !           830:      #"\M-OA":        previous-history
        !           831:      #"\M-OB":        next-history
        !           832:      #
        !           833:      # Arrow keys in ANSI mode
        !           834:      #
        !           835:      "\M-[D":        backward-char
        !           836:      "\M-[C":        forward-char
        !           837:      "\M-[A":        previous-history
        !           838:      "\M-[B":        next-history
        !           839:      #
        !           840:      # Arrow keys in 8 bit keypad mode
        !           841:      #
        !           842:      #"\M-\C-OD":       backward-char
        !           843:      #"\M-\C-OC":       forward-char
        !           844:      #"\M-\C-OA":       previous-history
        !           845:      #"\M-\C-OB":       next-history
        !           846:      #
        !           847:      # Arrow keys in 8 bit ANSI mode
        !           848:      #
        !           849:      #"\M-\C-[D":       backward-char
        !           850:      #"\M-\C-[C":       forward-char
        !           851:      #"\M-\C-[A":       previous-history
        !           852:      #"\M-\C-[B":       next-history
        !           853: 
        !           854:      C-q: quoted-insert
        !           855: 
        !           856:      $endif
        !           857: 
        !           858:      # An old-style binding.  This happens to be the default.
        !           859:      TAB: complete
        !           860: 
        !           861:      # Macros that are convenient for shell interaction
        !           862:      $if Bash
        !           863:      # edit the path
        !           864:      "\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
        !           865:      # prepare to type a quoted word --
        !           866:      # insert open and close double quotes
        !           867:      # and move to just after the open quote
        !           868:      "\C-x\"": "\"\"\C-b"
        !           869:      # insert a backslash (testing backslash escapes
        !           870:      # in sequences and macros)
        !           871:      "\C-x\\": "\\"
        !           872:      # Quote the current or previous word
        !           873:      "\C-xq": "\eb\"\ef\""
        !           874:      # Add a binding to refresh the line, which is unbound
        !           875:      "\C-xr": redraw-current-line
        !           876:      # Edit variable on current line.
        !           877:      "\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
        !           878:      $endif
        !           879: 
        !           880:      # use a visible bell if one is available
        !           881:      set bell-style visible
        !           882: 
        !           883:      # don't strip characters to 7 bits when reading
        !           884:      set input-meta on
        !           885: 
        !           886:      # allow iso-latin1 characters to be inserted rather
        !           887:      # than converted to prefix-meta sequences
        !           888:      set convert-meta off
        !           889: 
        !           890:      # display characters with the eighth bit set directly
        !           891:      # rather than as meta-prefixed characters
        !           892:      set output-meta on
        !           893: 
        !           894:      # if there are more than 150 possible completions for
        !           895:      # a word, ask the user if he wants to see all of them
        !           896:      set completion-query-items 150
        !           897: 
        !           898:      # For FTP
        !           899:      $if Ftp
        !           900:      "\C-xg": "get \M-?"
        !           901:      "\C-xt": "put \M-?"
        !           902:      "\M-.": yank-last-arg
        !           903:      $endif
        !           904: 
        !           905: 
        !           906: File: rluserman.info,  Node: Bindable Readline Commands,  Next: Readline vi Mode,  Prev: Readline Init File,  Up: Command Line Editing
        !           907: 
        !           908: 1.4 Bindable Readline Commands
        !           909: ==============================
        !           910: 
        !           911: * Menu:
        !           912: 
        !           913: * Commands For Moving::                Moving about the line.
        !           914: * Commands For History::       Getting at previous lines.
        !           915: * Commands For Text::          Commands for changing text.
        !           916: * Commands For Killing::       Commands for killing and yanking.
        !           917: * Numeric Arguments::          Specifying numeric arguments, repeat counts.
        !           918: * Commands For Completion::    Getting Readline to do the typing for you.
        !           919: * Keyboard Macros::            Saving and re-executing typed characters
        !           920: * Miscellaneous Commands::     Other miscellaneous commands.
        !           921: 
        !           922:    This section describes Readline commands that may be bound to key
        !           923: sequences.  Command names without an accompanying key sequence are
        !           924: unbound by default.
        !           925: 
        !           926:    In the following descriptions, "point" refers to the current cursor
        !           927: position, and "mark" refers to a cursor position saved by the
        !           928: `set-mark' command.  The text between the point and mark is referred to
        !           929: as the "region".
        !           930: 
        !           931: 
        !           932: File: rluserman.info,  Node: Commands For Moving,  Next: Commands For History,  Up: Bindable Readline Commands
        !           933: 
        !           934: 1.4.1 Commands For Moving
        !           935: -------------------------
        !           936: 
        !           937: `beginning-of-line (C-a)'
        !           938:      Move to the start of the current line.
        !           939: 
        !           940: `end-of-line (C-e)'
        !           941:      Move to the end of the line.
        !           942: 
        !           943: `forward-char (C-f)'
        !           944:      Move forward a character.
        !           945: 
        !           946: `backward-char (C-b)'
        !           947:      Move back a character.
        !           948: 
        !           949: `forward-word (M-f)'
        !           950:      Move forward to the end of the next word.  Words are composed of
        !           951:      letters and digits.
        !           952: 
        !           953: `backward-word (M-b)'
        !           954:      Move back to the start of the current or previous word.  Words are
        !           955:      composed of letters and digits.
        !           956: 
        !           957: `clear-screen (C-l)'
        !           958:      Clear the screen and redraw the current line, leaving the current
        !           959:      line at the top of the screen.
        !           960: 
        !           961: `redraw-current-line ()'
        !           962:      Refresh the current line.  By default, this is unbound.
        !           963: 
        !           964: 
        !           965: 
        !           966: File: rluserman.info,  Node: Commands For History,  Next: Commands For Text,  Prev: Commands For Moving,  Up: Bindable Readline Commands
        !           967: 
        !           968: 1.4.2 Commands For Manipulating The History
        !           969: -------------------------------------------
        !           970: 
        !           971: `accept-line (Newline or Return)'
        !           972:      Accept the line regardless of where the cursor is.  If this line is
        !           973:      non-empty, it may be added to the history list for future recall
        !           974:      with `add_history()'.  If this line is a modified history line,
        !           975:      the history line is restored to its original state.
        !           976: 
        !           977: `previous-history (C-p)'
        !           978:      Move `back' through the history list, fetching the previous
        !           979:      command.
        !           980: 
        !           981: `next-history (C-n)'
        !           982:      Move `forward' through the history list, fetching the next command.
        !           983: 
        !           984: `beginning-of-history (M-<)'
        !           985:      Move to the first line in the history.
        !           986: 
        !           987: `end-of-history (M->)'
        !           988:      Move to the end of the input history, i.e., the line currently
        !           989:      being entered.
        !           990: 
        !           991: `reverse-search-history (C-r)'
        !           992:      Search backward starting at the current line and moving `up'
        !           993:      through the history as necessary.  This is an incremental search.
        !           994: 
        !           995: `forward-search-history (C-s)'
        !           996:      Search forward starting at the current line and moving `down'
        !           997:      through the the history as necessary.  This is an incremental
        !           998:      search.
        !           999: 
        !          1000: `non-incremental-reverse-search-history (M-p)'
        !          1001:      Search backward starting at the current line and moving `up'
        !          1002:      through the history as necessary using a non-incremental search
        !          1003:      for a string supplied by the user.
        !          1004: 
        !          1005: `non-incremental-forward-search-history (M-n)'
        !          1006:      Search forward starting at the current line and moving `down'
        !          1007:      through the the history as necessary using a non-incremental search
        !          1008:      for a string supplied by the user.
        !          1009: 
        !          1010: `history-search-forward ()'
        !          1011:      Search forward through the history for the string of characters
        !          1012:      between the start of the current line and the point.  The search
        !          1013:      string must match at the beginning of a history line.  This is a
        !          1014:      non-incremental search.  By default, this command is unbound.
        !          1015: 
        !          1016: `history-search-backward ()'
        !          1017:      Search backward through the history for the string of characters
        !          1018:      between the start of the current line and the point.  The search
        !          1019:      string must match at the beginning of a history line.  This is a
        !          1020:      non-incremental search.  By default, this command is unbound.
        !          1021: 
        !          1022: `history-substr-search-forward ()'
        !          1023:      Search forward through the history for the string of characters
        !          1024:      between the start of the current line and the point.  The search
        !          1025:      string may match anywhere in a history line.  This is a
        !          1026:      non-incremental search.  By default, this command is unbound.
        !          1027: 
        !          1028: `history-substr-search-backward ()'
        !          1029:      Search backward through the history for the string of characters
        !          1030:      between the start of the current line and the point.  The search
        !          1031:      string may match anywhere in a history line.  This is a
        !          1032:      non-incremental search.  By default, this command is unbound.
        !          1033: 
        !          1034: `yank-nth-arg (M-C-y)'
        !          1035:      Insert the first argument to the previous command (usually the
        !          1036:      second word on the previous line) at point.  With an argument N,
        !          1037:      insert the Nth word from the previous command (the words in the
        !          1038:      previous command begin with word 0).  A negative argument inserts
        !          1039:      the Nth word from the end of the previous command.  Once the
        !          1040:      argument N is computed, the argument is extracted as if the `!N'
        !          1041:      history expansion had been specified.
        !          1042: 
        !          1043: `yank-last-arg (M-. or M-_)'
        !          1044:      Insert last argument to the previous command (the last word of the
        !          1045:      previous history entry).  With a numeric argument, behave exactly
        !          1046:      like `yank-nth-arg'.  Successive calls to `yank-last-arg' move
        !          1047:      back through the history list, inserting the last word (or the
        !          1048:      word specified by the argument to the first call) of each line in
        !          1049:      turn.  Any numeric argument supplied to these successive calls
        !          1050:      determines the direction to move through the history.  A negative
        !          1051:      argument switches the direction through the history (back or
        !          1052:      forward).  The history expansion facilities are used to extract
        !          1053:      the last argument, as if the `!$' history expansion had been
        !          1054:      specified.
        !          1055: 
        !          1056: 
        !          1057: 
        !          1058: File: rluserman.info,  Node: Commands For Text,  Next: Commands For Killing,  Prev: Commands For History,  Up: Bindable Readline Commands
        !          1059: 
        !          1060: 1.4.3 Commands For Changing Text
        !          1061: --------------------------------
        !          1062: 
        !          1063: `end-of-file (usually C-d)'
        !          1064:      The character indicating end-of-file as set, for example, by
        !          1065:      `stty'.  If this character is read when there are no characters on
        !          1066:      the line, and point is at the beginning of the line, Readline
        !          1067:      interprets it as the end of input and returns EOF.
        !          1068: 
        !          1069: `delete-char (C-d)'
        !          1070:      Delete the character at point.  If this function is bound to the
        !          1071:      same character as the tty EOF character, as `C-d' commonly is, see
        !          1072:      above for the effects.
        !          1073: 
        !          1074: `backward-delete-char (Rubout)'
        !          1075:      Delete the character behind the cursor.  A numeric argument means
        !          1076:      to kill the characters instead of deleting them.
        !          1077: 
        !          1078: `forward-backward-delete-char ()'
        !          1079:      Delete the character under the cursor, unless the cursor is at the
        !          1080:      end of the line, in which case the character behind the cursor is
        !          1081:      deleted.  By default, this is not bound to a key.
        !          1082: 
        !          1083: `quoted-insert (C-q or C-v)'
        !          1084:      Add the next character typed to the line verbatim.  This is how to
        !          1085:      insert key sequences like `C-q', for example.
        !          1086: 
        !          1087: `tab-insert (M-<TAB>)'
        !          1088:      Insert a tab character.
        !          1089: 
        !          1090: `self-insert (a, b, A, 1, !, ...)'
        !          1091:      Insert yourself.
        !          1092: 
        !          1093: `transpose-chars (C-t)'
        !          1094:      Drag the character before the cursor forward over the character at
        !          1095:      the cursor, moving the cursor forward as well.  If the insertion
        !          1096:      point is at the end of the line, then this transposes the last two
        !          1097:      characters of the line.  Negative arguments have no effect.
        !          1098: 
        !          1099: `transpose-words (M-t)'
        !          1100:      Drag the word before point past the word after point, moving point
        !          1101:      past that word as well.  If the insertion point is at the end of
        !          1102:      the line, this transposes the last two words on the line.
        !          1103: 
        !          1104: `upcase-word (M-u)'
        !          1105:      Uppercase the current (or following) word.  With a negative
        !          1106:      argument, uppercase the previous word, but do not move the cursor.
        !          1107: 
        !          1108: `downcase-word (M-l)'
        !          1109:      Lowercase the current (or following) word.  With a negative
        !          1110:      argument, lowercase the previous word, but do not move the cursor.
        !          1111: 
        !          1112: `capitalize-word (M-c)'
        !          1113:      Capitalize the current (or following) word.  With a negative
        !          1114:      argument, capitalize the previous word, but do not move the cursor.
        !          1115: 
        !          1116: `overwrite-mode ()'
        !          1117:      Toggle overwrite mode.  With an explicit positive numeric argument,
        !          1118:      switches to overwrite mode.  With an explicit non-positive numeric
        !          1119:      argument, switches to insert mode.  This command affects only
        !          1120:      `emacs' mode; `vi' mode does overwrite differently.  Each call to
        !          1121:      `readline()' starts in insert mode.
        !          1122: 
        !          1123:      In overwrite mode, characters bound to `self-insert' replace the
        !          1124:      text at point rather than pushing the text to the right.
        !          1125:      Characters bound to `backward-delete-char' replace the character
        !          1126:      before point with a space.
        !          1127: 
        !          1128:      By default, this command is unbound.
        !          1129: 
        !          1130: 
        !          1131: 
        !          1132: File: rluserman.info,  Node: Commands For Killing,  Next: Numeric Arguments,  Prev: Commands For Text,  Up: Bindable Readline Commands
        !          1133: 
        !          1134: 1.4.4 Killing And Yanking
        !          1135: -------------------------
        !          1136: 
        !          1137: `kill-line (C-k)'
        !          1138:      Kill the text from point to the end of the line.
        !          1139: 
        !          1140: `backward-kill-line (C-x Rubout)'
        !          1141:      Kill backward to the beginning of the line.
        !          1142: 
        !          1143: `unix-line-discard (C-u)'
        !          1144:      Kill backward from the cursor to the beginning of the current line.
        !          1145: 
        !          1146: `kill-whole-line ()'
        !          1147:      Kill all characters on the current line, no matter where point is.
        !          1148:      By default, this is unbound.
        !          1149: 
        !          1150: `kill-word (M-d)'
        !          1151:      Kill from point to the end of the current word, or if between
        !          1152:      words, to the end of the next word.  Word boundaries are the same
        !          1153:      as `forward-word'.
        !          1154: 
        !          1155: `backward-kill-word (M-<DEL>)'
        !          1156:      Kill the word behind point.  Word boundaries are the same as
        !          1157:      `backward-word'.
        !          1158: 
        !          1159: `unix-word-rubout (C-w)'
        !          1160:      Kill the word behind point, using white space as a word boundary.
        !          1161:      The killed text is saved on the kill-ring.
        !          1162: 
        !          1163: `unix-filename-rubout ()'
        !          1164:      Kill the word behind point, using white space and the slash
        !          1165:      character as the word boundaries.  The killed text is saved on the
        !          1166:      kill-ring.
        !          1167: 
        !          1168: `delete-horizontal-space ()'
        !          1169:      Delete all spaces and tabs around point.  By default, this is
        !          1170:      unbound.
        !          1171: 
        !          1172: `kill-region ()'
        !          1173:      Kill the text in the current region.  By default, this command is
        !          1174:      unbound.
        !          1175: 
        !          1176: `copy-region-as-kill ()'
        !          1177:      Copy the text in the region to the kill buffer, so it can be yanked
        !          1178:      right away.  By default, this command is unbound.
        !          1179: 
        !          1180: `copy-backward-word ()'
        !          1181:      Copy the word before point to the kill buffer.  The word
        !          1182:      boundaries are the same as `backward-word'.  By default, this
        !          1183:      command is unbound.
        !          1184: 
        !          1185: `copy-forward-word ()'
        !          1186:      Copy the word following point to the kill buffer.  The word
        !          1187:      boundaries are the same as `forward-word'.  By default, this
        !          1188:      command is unbound.
        !          1189: 
        !          1190: `yank (C-y)'
        !          1191:      Yank the top of the kill ring into the buffer at point.
        !          1192: 
        !          1193: `yank-pop (M-y)'
        !          1194:      Rotate the kill-ring, and yank the new top.  You can only do this
        !          1195:      if the prior command is `yank' or `yank-pop'.
        !          1196: 
        !          1197: 
        !          1198: File: rluserman.info,  Node: Numeric Arguments,  Next: Commands For Completion,  Prev: Commands For Killing,  Up: Bindable Readline Commands
        !          1199: 
        !          1200: 1.4.5 Specifying Numeric Arguments
        !          1201: ----------------------------------
        !          1202: 
        !          1203: `digit-argument (M-0, M-1, ... M--)'
        !          1204:      Add this digit to the argument already accumulating, or start a new
        !          1205:      argument.  `M--' starts a negative argument.
        !          1206: 
        !          1207: `universal-argument ()'
        !          1208:      This is another way to specify an argument.  If this command is
        !          1209:      followed by one or more digits, optionally with a leading minus
        !          1210:      sign, those digits define the argument.  If the command is
        !          1211:      followed by digits, executing `universal-argument' again ends the
        !          1212:      numeric argument, but is otherwise ignored.  As a special case, if
        !          1213:      this command is immediately followed by a character that is
        !          1214:      neither a digit or minus sign, the argument count for the next
        !          1215:      command is multiplied by four.  The argument count is initially
        !          1216:      one, so executing this function the first time makes the argument
        !          1217:      count four, a second time makes the argument count sixteen, and so
        !          1218:      on.  By default, this is not bound to a key.
        !          1219: 
        !          1220: 
        !          1221: File: rluserman.info,  Node: Commands For Completion,  Next: Keyboard Macros,  Prev: Numeric Arguments,  Up: Bindable Readline Commands
        !          1222: 
        !          1223: 1.4.6 Letting Readline Type For You
        !          1224: -----------------------------------
        !          1225: 
        !          1226: `complete (<TAB>)'
        !          1227:      Attempt to perform completion on the text before point.  The
        !          1228:      actual completion performed is application-specific.  The default
        !          1229:      is filename completion.
        !          1230: 
        !          1231: `possible-completions (M-?)'
        !          1232:      List the possible completions of the text before point.  When
        !          1233:      displaying completions, Readline sets the number of columns used
        !          1234:      for display to the value of `completion-display-width', the value
        !          1235:      of the environment variable `COLUMNS', or the screen width, in
        !          1236:      that order.
        !          1237: 
        !          1238: `insert-completions (M-*)'
        !          1239:      Insert all completions of the text before point that would have
        !          1240:      been generated by `possible-completions'.
        !          1241: 
        !          1242: `menu-complete ()'
        !          1243:      Similar to `complete', but replaces the word to be completed with
        !          1244:      a single match from the list of possible completions.  Repeated
        !          1245:      execution of `menu-complete' steps through the list of possible
        !          1246:      completions, inserting each match in turn.  At the end of the list
        !          1247:      of completions, the bell is rung (subject to the setting of
        !          1248:      `bell-style') and the original text is restored.  An argument of N
        !          1249:      moves N positions forward in the list of matches; a negative
        !          1250:      argument may be used to move backward through the list.  This
        !          1251:      command is intended to be bound to <TAB>, but is unbound by
        !          1252:      default.
        !          1253: 
        !          1254: `menu-complete-backward ()'
        !          1255:      Identical to `menu-complete', but moves backward through the list
        !          1256:      of possible completions, as if `menu-complete' had been given a
        !          1257:      negative argument.
        !          1258: 
        !          1259: `delete-char-or-list ()'
        !          1260:      Deletes the character under the cursor if not at the beginning or
        !          1261:      end of the line (like `delete-char').  If at the end of the line,
        !          1262:      behaves identically to `possible-completions'.  This command is
        !          1263:      unbound by default.
        !          1264: 
        !          1265: 
        !          1266: 
        !          1267: File: rluserman.info,  Node: Keyboard Macros,  Next: Miscellaneous Commands,  Prev: Commands For Completion,  Up: Bindable Readline Commands
        !          1268: 
        !          1269: 1.4.7 Keyboard Macros
        !          1270: ---------------------
        !          1271: 
        !          1272: `start-kbd-macro (C-x ()'
        !          1273:      Begin saving the characters typed into the current keyboard macro.
        !          1274: 
        !          1275: `end-kbd-macro (C-x ))'
        !          1276:      Stop saving the characters typed into the current keyboard macro
        !          1277:      and save the definition.
        !          1278: 
        !          1279: `call-last-kbd-macro (C-x e)'
        !          1280:      Re-execute the last keyboard macro defined, by making the
        !          1281:      characters in the macro appear as if typed at the keyboard.
        !          1282: 
        !          1283: `print-last-kbd-macro ()'
        !          1284:      Print the last keboard macro defined in a format suitable for the
        !          1285:      INPUTRC file.
        !          1286: 
        !          1287: 
        !          1288: 
        !          1289: File: rluserman.info,  Node: Miscellaneous Commands,  Prev: Keyboard Macros,  Up: Bindable Readline Commands
        !          1290: 
        !          1291: 1.4.8 Some Miscellaneous Commands
        !          1292: ---------------------------------
        !          1293: 
        !          1294: `re-read-init-file (C-x C-r)'
        !          1295:      Read in the contents of the INPUTRC file, and incorporate any
        !          1296:      bindings or variable assignments found there.
        !          1297: 
        !          1298: `abort (C-g)'
        !          1299:      Abort the current editing command and ring the terminal's bell
        !          1300:      (subject to the setting of `bell-style').
        !          1301: 
        !          1302: `do-uppercase-version (M-a, M-b, M-X, ...)'
        !          1303:      If the metafied character X is lowercase, run the command that is
        !          1304:      bound to the corresponding uppercase character.
        !          1305: 
        !          1306: `prefix-meta (<ESC>)'
        !          1307:      Metafy the next character typed.  This is for keyboards without a
        !          1308:      meta key.  Typing `<ESC> f' is equivalent to typing `M-f'.
        !          1309: 
        !          1310: `undo (C-_ or C-x C-u)'
        !          1311:      Incremental undo, separately remembered for each line.
        !          1312: 
        !          1313: `revert-line (M-r)'
        !          1314:      Undo all changes made to this line.  This is like executing the
        !          1315:      `undo' command enough times to get back to the beginning.
        !          1316: 
        !          1317: `tilde-expand (M-~)'
        !          1318:      Perform tilde expansion on the current word.
        !          1319: 
        !          1320: `set-mark (C-@)'
        !          1321:      Set the mark to the point.  If a numeric argument is supplied, the
        !          1322:      mark is set to that position.
        !          1323: 
        !          1324: `exchange-point-and-mark (C-x C-x)'
        !          1325:      Swap the point with the mark.  The current cursor position is set
        !          1326:      to the saved position, and the old cursor position is saved as the
        !          1327:      mark.
        !          1328: 
        !          1329: `character-search (C-])'
        !          1330:      A character is read and point is moved to the next occurrence of
        !          1331:      that character.  A negative count searches for previous
        !          1332:      occurrences.
        !          1333: 
        !          1334: `character-search-backward (M-C-])'
        !          1335:      A character is read and point is moved to the previous occurrence
        !          1336:      of that character.  A negative count searches for subsequent
        !          1337:      occurrences.
        !          1338: 
        !          1339: `skip-csi-sequence ()'
        !          1340:      Read enough characters to consume a multi-key sequence such as
        !          1341:      those defined for keys like Home and End.  Such sequences begin
        !          1342:      with a Control Sequence Indicator (CSI), usually ESC-[.  If this
        !          1343:      sequence is bound to "\e[", keys producing such sequences will
        !          1344:      have no effect unless explicitly bound to a readline command,
        !          1345:      instead of inserting stray characters into the editing buffer.
        !          1346:      This is unbound by default, but usually bound to ESC-[.
        !          1347: 
        !          1348: `insert-comment (M-#)'
        !          1349:      Without a numeric argument, the value of the `comment-begin'
        !          1350:      variable is inserted at the beginning of the current line.  If a
        !          1351:      numeric argument is supplied, this command acts as a toggle:  if
        !          1352:      the characters at the beginning of the line do not match the value
        !          1353:      of `comment-begin', the value is inserted, otherwise the
        !          1354:      characters in `comment-begin' are deleted from the beginning of
        !          1355:      the line.  In either case, the line is accepted as if a newline
        !          1356:      had been typed.
        !          1357: 
        !          1358: `dump-functions ()'
        !          1359:      Print all of the functions and their key bindings to the Readline
        !          1360:      output stream.  If a numeric argument is supplied, the output is
        !          1361:      formatted in such a way that it can be made part of an INPUTRC
        !          1362:      file.  This command is unbound by default.
        !          1363: 
        !          1364: `dump-variables ()'
        !          1365:      Print all of the settable variables and their values to the
        !          1366:      Readline output stream.  If a numeric argument is supplied, the
        !          1367:      output is formatted in such a way that it can be made part of an
        !          1368:      INPUTRC file.  This command is unbound by default.
        !          1369: 
        !          1370: `dump-macros ()'
        !          1371:      Print all of the Readline key sequences bound to macros and the
        !          1372:      strings they output.  If a numeric argument is supplied, the
        !          1373:      output is formatted in such a way that it can be made part of an
        !          1374:      INPUTRC file.  This command is unbound by default.
        !          1375: 
        !          1376: `emacs-editing-mode (C-e)'
        !          1377:      When in `vi' command mode, this causes a switch to `emacs' editing
        !          1378:      mode.
        !          1379: 
        !          1380: `vi-editing-mode (M-C-j)'
        !          1381:      When in `emacs' editing mode, this causes a switch to `vi' editing
        !          1382:      mode.
        !          1383: 
        !          1384: 
        !          1385: 
        !          1386: File: rluserman.info,  Node: Readline vi Mode,  Prev: Bindable Readline Commands,  Up: Command Line Editing
        !          1387: 
        !          1388: 1.5 Readline vi Mode
        !          1389: ====================
        !          1390: 
        !          1391: While the Readline library does not have a full set of `vi' editing
        !          1392: functions, it does contain enough to allow simple editing of the line.
        !          1393: The Readline `vi' mode behaves as specified in the POSIX standard.
        !          1394: 
        !          1395:    In order to switch interactively between `emacs' and `vi' editing
        !          1396: modes, use the command `M-C-j' (bound to emacs-editing-mode when in
        !          1397: `vi' mode and to vi-editing-mode in `emacs' mode).  The Readline
        !          1398: default is `emacs' mode.
        !          1399: 
        !          1400:    When you enter a line in `vi' mode, you are already placed in
        !          1401: `insertion' mode, as if you had typed an `i'.  Pressing <ESC> switches
        !          1402: you into `command' mode, where you can edit the text of the line with
        !          1403: the standard `vi' movement keys, move to previous history lines with
        !          1404: `k' and subsequent lines with `j', and so forth.
        !          1405: 
        !          1406: 
        !          1407: File: rluserman.info,  Node: GNU Free Documentation License,  Prev: Command Line Editing,  Up: Top
        !          1408: 
        !          1409: Appendix A GNU Free Documentation License
        !          1410: *****************************************
        !          1411: 
        !          1412:                      Version 1.3, 3 November 2008
        !          1413: 
        !          1414:      Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
        !          1415:      `http://fsf.org/'
        !          1416: 
        !          1417:      Everyone is permitted to copy and distribute verbatim copies
        !          1418:      of this license document, but changing it is not allowed.
        !          1419: 
        !          1420:   0. PREAMBLE
        !          1421: 
        !          1422:      The purpose of this License is to make a manual, textbook, or other
        !          1423:      functional and useful document "free" in the sense of freedom: to
        !          1424:      assure everyone the effective freedom to copy and redistribute it,
        !          1425:      with or without modifying it, either commercially or
        !          1426:      noncommercially.  Secondarily, this License preserves for the
        !          1427:      author and publisher a way to get credit for their work, while not
        !          1428:      being considered responsible for modifications made by others.
        !          1429: 
        !          1430:      This License is a kind of "copyleft", which means that derivative
        !          1431:      works of the document must themselves be free in the same sense.
        !          1432:      It complements the GNU General Public License, which is a copyleft
        !          1433:      license designed for free software.
        !          1434: 
        !          1435:      We have designed this License in order to use it for manuals for
        !          1436:      free software, because free software needs free documentation: a
        !          1437:      free program should come with manuals providing the same freedoms
        !          1438:      that the software does.  But this License is not limited to
        !          1439:      software manuals; it can be used for any textual work, regardless
        !          1440:      of subject matter or whether it is published as a printed book.
        !          1441:      We recommend this License principally for works whose purpose is
        !          1442:      instruction or reference.
        !          1443: 
        !          1444:   1. APPLICABILITY AND DEFINITIONS
        !          1445: 
        !          1446:      This License applies to any manual or other work, in any medium,
        !          1447:      that contains a notice placed by the copyright holder saying it
        !          1448:      can be distributed under the terms of this License.  Such a notice
        !          1449:      grants a world-wide, royalty-free license, unlimited in duration,
        !          1450:      to use that work under the conditions stated herein.  The
        !          1451:      "Document", below, refers to any such manual or work.  Any member
        !          1452:      of the public is a licensee, and is addressed as "you".  You
        !          1453:      accept the license if you copy, modify or distribute the work in a
        !          1454:      way requiring permission under copyright law.
        !          1455: 
        !          1456:      A "Modified Version" of the Document means any work containing the
        !          1457:      Document or a portion of it, either copied verbatim, or with
        !          1458:      modifications and/or translated into another language.
        !          1459: 
        !          1460:      A "Secondary Section" is a named appendix or a front-matter section
        !          1461:      of the Document that deals exclusively with the relationship of the
        !          1462:      publishers or authors of the Document to the Document's overall
        !          1463:      subject (or to related matters) and contains nothing that could
        !          1464:      fall directly within that overall subject.  (Thus, if the Document
        !          1465:      is in part a textbook of mathematics, a Secondary Section may not
        !          1466:      explain any mathematics.)  The relationship could be a matter of
        !          1467:      historical connection with the subject or with related matters, or
        !          1468:      of legal, commercial, philosophical, ethical or political position
        !          1469:      regarding them.
        !          1470: 
        !          1471:      The "Invariant Sections" are certain Secondary Sections whose
        !          1472:      titles are designated, as being those of Invariant Sections, in
        !          1473:      the notice that says that the Document is released under this
        !          1474:      License.  If a section does not fit the above definition of
        !          1475:      Secondary then it is not allowed to be designated as Invariant.
        !          1476:      The Document may contain zero Invariant Sections.  If the Document
        !          1477:      does not identify any Invariant Sections then there are none.
        !          1478: 
        !          1479:      The "Cover Texts" are certain short passages of text that are
        !          1480:      listed, as Front-Cover Texts or Back-Cover Texts, in the notice
        !          1481:      that says that the Document is released under this License.  A
        !          1482:      Front-Cover Text may be at most 5 words, and a Back-Cover Text may
        !          1483:      be at most 25 words.
        !          1484: 
        !          1485:      A "Transparent" copy of the Document means a machine-readable copy,
        !          1486:      represented in a format whose specification is available to the
        !          1487:      general public, that is suitable for revising the document
        !          1488:      straightforwardly with generic text editors or (for images
        !          1489:      composed of pixels) generic paint programs or (for drawings) some
        !          1490:      widely available drawing editor, and that is suitable for input to
        !          1491:      text formatters or for automatic translation to a variety of
        !          1492:      formats suitable for input to text formatters.  A copy made in an
        !          1493:      otherwise Transparent file format whose markup, or absence of
        !          1494:      markup, has been arranged to thwart or discourage subsequent
        !          1495:      modification by readers is not Transparent.  An image format is
        !          1496:      not Transparent if used for any substantial amount of text.  A
        !          1497:      copy that is not "Transparent" is called "Opaque".
        !          1498: 
        !          1499:      Examples of suitable formats for Transparent copies include plain
        !          1500:      ASCII without markup, Texinfo input format, LaTeX input format,
        !          1501:      SGML or XML using a publicly available DTD, and
        !          1502:      standard-conforming simple HTML, PostScript or PDF designed for
        !          1503:      human modification.  Examples of transparent image formats include
        !          1504:      PNG, XCF and JPG.  Opaque formats include proprietary formats that
        !          1505:      can be read and edited only by proprietary word processors, SGML or
        !          1506:      XML for which the DTD and/or processing tools are not generally
        !          1507:      available, and the machine-generated HTML, PostScript or PDF
        !          1508:      produced by some word processors for output purposes only.
        !          1509: 
        !          1510:      The "Title Page" means, for a printed book, the title page itself,
        !          1511:      plus such following pages as are needed to hold, legibly, the
        !          1512:      material this License requires to appear in the title page.  For
        !          1513:      works in formats which do not have any title page as such, "Title
        !          1514:      Page" means the text near the most prominent appearance of the
        !          1515:      work's title, preceding the beginning of the body of the text.
        !          1516: 
        !          1517:      The "publisher" means any person or entity that distributes copies
        !          1518:      of the Document to the public.
        !          1519: 
        !          1520:      A section "Entitled XYZ" means a named subunit of the Document
        !          1521:      whose title either is precisely XYZ or contains XYZ in parentheses
        !          1522:      following text that translates XYZ in another language.  (Here XYZ
        !          1523:      stands for a specific section name mentioned below, such as
        !          1524:      "Acknowledgements", "Dedications", "Endorsements", or "History".)
        !          1525:      To "Preserve the Title" of such a section when you modify the
        !          1526:      Document means that it remains a section "Entitled XYZ" according
        !          1527:      to this definition.
        !          1528: 
        !          1529:      The Document may include Warranty Disclaimers next to the notice
        !          1530:      which states that this License applies to the Document.  These
        !          1531:      Warranty Disclaimers are considered to be included by reference in
        !          1532:      this License, but only as regards disclaiming warranties: any other
        !          1533:      implication that these Warranty Disclaimers may have is void and
        !          1534:      has no effect on the meaning of this License.
        !          1535: 
        !          1536:   2. VERBATIM COPYING
        !          1537: 
        !          1538:      You may copy and distribute the Document in any medium, either
        !          1539:      commercially or noncommercially, provided that this License, the
        !          1540:      copyright notices, and the license notice saying this License
        !          1541:      applies to the Document are reproduced in all copies, and that you
        !          1542:      add no other conditions whatsoever to those of this License.  You
        !          1543:      may not use technical measures to obstruct or control the reading
        !          1544:      or further copying of the copies you make or distribute.  However,
        !          1545:      you may accept compensation in exchange for copies.  If you
        !          1546:      distribute a large enough number of copies you must also follow
        !          1547:      the conditions in section 3.
        !          1548: 
        !          1549:      You may also lend copies, under the same conditions stated above,
        !          1550:      and you may publicly display copies.
        !          1551: 
        !          1552:   3. COPYING IN QUANTITY
        !          1553: 
        !          1554:      If you publish printed copies (or copies in media that commonly
        !          1555:      have printed covers) of the Document, numbering more than 100, and
        !          1556:      the Document's license notice requires Cover Texts, you must
        !          1557:      enclose the copies in covers that carry, clearly and legibly, all
        !          1558:      these Cover Texts: Front-Cover Texts on the front cover, and
        !          1559:      Back-Cover Texts on the back cover.  Both covers must also clearly
        !          1560:      and legibly identify you as the publisher of these copies.  The
        !          1561:      front cover must present the full title with all words of the
        !          1562:      title equally prominent and visible.  You may add other material
        !          1563:      on the covers in addition.  Copying with changes limited to the
        !          1564:      covers, as long as they preserve the title of the Document and
        !          1565:      satisfy these conditions, can be treated as verbatim copying in
        !          1566:      other respects.
        !          1567: 
        !          1568:      If the required texts for either cover are too voluminous to fit
        !          1569:      legibly, you should put the first ones listed (as many as fit
        !          1570:      reasonably) on the actual cover, and continue the rest onto
        !          1571:      adjacent pages.
        !          1572: 
        !          1573:      If you publish or distribute Opaque copies of the Document
        !          1574:      numbering more than 100, you must either include a
        !          1575:      machine-readable Transparent copy along with each Opaque copy, or
        !          1576:      state in or with each Opaque copy a computer-network location from
        !          1577:      which the general network-using public has access to download
        !          1578:      using public-standard network protocols a complete Transparent
        !          1579:      copy of the Document, free of added material.  If you use the
        !          1580:      latter option, you must take reasonably prudent steps, when you
        !          1581:      begin distribution of Opaque copies in quantity, to ensure that
        !          1582:      this Transparent copy will remain thus accessible at the stated
        !          1583:      location until at least one year after the last time you
        !          1584:      distribute an Opaque copy (directly or through your agents or
        !          1585:      retailers) of that edition to the public.
        !          1586: 
        !          1587:      It is requested, but not required, that you contact the authors of
        !          1588:      the Document well before redistributing any large number of
        !          1589:      copies, to give them a chance to provide you with an updated
        !          1590:      version of the Document.
        !          1591: 
        !          1592:   4. MODIFICATIONS
        !          1593: 
        !          1594:      You may copy and distribute a Modified Version of the Document
        !          1595:      under the conditions of sections 2 and 3 above, provided that you
        !          1596:      release the Modified Version under precisely this License, with
        !          1597:      the Modified Version filling the role of the Document, thus
        !          1598:      licensing distribution and modification of the Modified Version to
        !          1599:      whoever possesses a copy of it.  In addition, you must do these
        !          1600:      things in the Modified Version:
        !          1601: 
        !          1602:        A. Use in the Title Page (and on the covers, if any) a title
        !          1603:           distinct from that of the Document, and from those of
        !          1604:           previous versions (which should, if there were any, be listed
        !          1605:           in the History section of the Document).  You may use the
        !          1606:           same title as a previous version if the original publisher of
        !          1607:           that version gives permission.
        !          1608: 
        !          1609:        B. List on the Title Page, as authors, one or more persons or
        !          1610:           entities responsible for authorship of the modifications in
        !          1611:           the Modified Version, together with at least five of the
        !          1612:           principal authors of the Document (all of its principal
        !          1613:           authors, if it has fewer than five), unless they release you
        !          1614:           from this requirement.
        !          1615: 
        !          1616:        C. State on the Title page the name of the publisher of the
        !          1617:           Modified Version, as the publisher.
        !          1618: 
        !          1619:        D. Preserve all the copyright notices of the Document.
        !          1620: 
        !          1621:        E. Add an appropriate copyright notice for your modifications
        !          1622:           adjacent to the other copyright notices.
        !          1623: 
        !          1624:        F. Include, immediately after the copyright notices, a license
        !          1625:           notice giving the public permission to use the Modified
        !          1626:           Version under the terms of this License, in the form shown in
        !          1627:           the Addendum below.
        !          1628: 
        !          1629:        G. Preserve in that license notice the full lists of Invariant
        !          1630:           Sections and required Cover Texts given in the Document's
        !          1631:           license notice.
        !          1632: 
        !          1633:        H. Include an unaltered copy of this License.
        !          1634: 
        !          1635:        I. Preserve the section Entitled "History", Preserve its Title,
        !          1636:           and add to it an item stating at least the title, year, new
        !          1637:           authors, and publisher of the Modified Version as given on
        !          1638:           the Title Page.  If there is no section Entitled "History" in
        !          1639:           the Document, create one stating the title, year, authors,
        !          1640:           and publisher of the Document as given on its Title Page,
        !          1641:           then add an item describing the Modified Version as stated in
        !          1642:           the previous sentence.
        !          1643: 
        !          1644:        J. Preserve the network location, if any, given in the Document
        !          1645:           for public access to a Transparent copy of the Document, and
        !          1646:           likewise the network locations given in the Document for
        !          1647:           previous versions it was based on.  These may be placed in
        !          1648:           the "History" section.  You may omit a network location for a
        !          1649:           work that was published at least four years before the
        !          1650:           Document itself, or if the original publisher of the version
        !          1651:           it refers to gives permission.
        !          1652: 
        !          1653:        K. For any section Entitled "Acknowledgements" or "Dedications",
        !          1654:           Preserve the Title of the section, and preserve in the
        !          1655:           section all the substance and tone of each of the contributor
        !          1656:           acknowledgements and/or dedications given therein.
        !          1657: 
        !          1658:        L. Preserve all the Invariant Sections of the Document,
        !          1659:           unaltered in their text and in their titles.  Section numbers
        !          1660:           or the equivalent are not considered part of the section
        !          1661:           titles.
        !          1662: 
        !          1663:        M. Delete any section Entitled "Endorsements".  Such a section
        !          1664:           may not be included in the Modified Version.
        !          1665: 
        !          1666:        N. Do not retitle any existing section to be Entitled
        !          1667:           "Endorsements" or to conflict in title with any Invariant
        !          1668:           Section.
        !          1669: 
        !          1670:        O. Preserve any Warranty Disclaimers.
        !          1671: 
        !          1672:      If the Modified Version includes new front-matter sections or
        !          1673:      appendices that qualify as Secondary Sections and contain no
        !          1674:      material copied from the Document, you may at your option
        !          1675:      designate some or all of these sections as invariant.  To do this,
        !          1676:      add their titles to the list of Invariant Sections in the Modified
        !          1677:      Version's license notice.  These titles must be distinct from any
        !          1678:      other section titles.
        !          1679: 
        !          1680:      You may add a section Entitled "Endorsements", provided it contains
        !          1681:      nothing but endorsements of your Modified Version by various
        !          1682:      parties--for example, statements of peer review or that the text
        !          1683:      has been approved by an organization as the authoritative
        !          1684:      definition of a standard.
        !          1685: 
        !          1686:      You may add a passage of up to five words as a Front-Cover Text,
        !          1687:      and a passage of up to 25 words as a Back-Cover Text, to the end
        !          1688:      of the list of Cover Texts in the Modified Version.  Only one
        !          1689:      passage of Front-Cover Text and one of Back-Cover Text may be
        !          1690:      added by (or through arrangements made by) any one entity.  If the
        !          1691:      Document already includes a cover text for the same cover,
        !          1692:      previously added by you or by arrangement made by the same entity
        !          1693:      you are acting on behalf of, you may not add another; but you may
        !          1694:      replace the old one, on explicit permission from the previous
        !          1695:      publisher that added the old one.
        !          1696: 
        !          1697:      The author(s) and publisher(s) of the Document do not by this
        !          1698:      License give permission to use their names for publicity for or to
        !          1699:      assert or imply endorsement of any Modified Version.
        !          1700: 
        !          1701:   5. COMBINING DOCUMENTS
        !          1702: 
        !          1703:      You may combine the Document with other documents released under
        !          1704:      this License, under the terms defined in section 4 above for
        !          1705:      modified versions, provided that you include in the combination
        !          1706:      all of the Invariant Sections of all of the original documents,
        !          1707:      unmodified, and list them all as Invariant Sections of your
        !          1708:      combined work in its license notice, and that you preserve all
        !          1709:      their Warranty Disclaimers.
        !          1710: 
        !          1711:      The combined work need only contain one copy of this License, and
        !          1712:      multiple identical Invariant Sections may be replaced with a single
        !          1713:      copy.  If there are multiple Invariant Sections with the same name
        !          1714:      but different contents, make the title of each such section unique
        !          1715:      by adding at the end of it, in parentheses, the name of the
        !          1716:      original author or publisher of that section if known, or else a
        !          1717:      unique number.  Make the same adjustment to the section titles in
        !          1718:      the list of Invariant Sections in the license notice of the
        !          1719:      combined work.
        !          1720: 
        !          1721:      In the combination, you must combine any sections Entitled
        !          1722:      "History" in the various original documents, forming one section
        !          1723:      Entitled "History"; likewise combine any sections Entitled
        !          1724:      "Acknowledgements", and any sections Entitled "Dedications".  You
        !          1725:      must delete all sections Entitled "Endorsements."
        !          1726: 
        !          1727:   6. COLLECTIONS OF DOCUMENTS
        !          1728: 
        !          1729:      You may make a collection consisting of the Document and other
        !          1730:      documents released under this License, and replace the individual
        !          1731:      copies of this License in the various documents with a single copy
        !          1732:      that is included in the collection, provided that you follow the
        !          1733:      rules of this License for verbatim copying of each of the
        !          1734:      documents in all other respects.
        !          1735: 
        !          1736:      You may extract a single document from such a collection, and
        !          1737:      distribute it individually under this License, provided you insert
        !          1738:      a copy of this License into the extracted document, and follow
        !          1739:      this License in all other respects regarding verbatim copying of
        !          1740:      that document.
        !          1741: 
        !          1742:   7. AGGREGATION WITH INDEPENDENT WORKS
        !          1743: 
        !          1744:      A compilation of the Document or its derivatives with other
        !          1745:      separate and independent documents or works, in or on a volume of
        !          1746:      a storage or distribution medium, is called an "aggregate" if the
        !          1747:      copyright resulting from the compilation is not used to limit the
        !          1748:      legal rights of the compilation's users beyond what the individual
        !          1749:      works permit.  When the Document is included in an aggregate, this
        !          1750:      License does not apply to the other works in the aggregate which
        !          1751:      are not themselves derivative works of the Document.
        !          1752: 
        !          1753:      If the Cover Text requirement of section 3 is applicable to these
        !          1754:      copies of the Document, then if the Document is less than one half
        !          1755:      of the entire aggregate, the Document's Cover Texts may be placed
        !          1756:      on covers that bracket the Document within the aggregate, or the
        !          1757:      electronic equivalent of covers if the Document is in electronic
        !          1758:      form.  Otherwise they must appear on printed covers that bracket
        !          1759:      the whole aggregate.
        !          1760: 
        !          1761:   8. TRANSLATION
        !          1762: 
        !          1763:      Translation is considered a kind of modification, so you may
        !          1764:      distribute translations of the Document under the terms of section
        !          1765:      4.  Replacing Invariant Sections with translations requires special
        !          1766:      permission from their copyright holders, but you may include
        !          1767:      translations of some or all Invariant Sections in addition to the
        !          1768:      original versions of these Invariant Sections.  You may include a
        !          1769:      translation of this License, and all the license notices in the
        !          1770:      Document, and any Warranty Disclaimers, provided that you also
        !          1771:      include the original English version of this License and the
        !          1772:      original versions of those notices and disclaimers.  In case of a
        !          1773:      disagreement between the translation and the original version of
        !          1774:      this License or a notice or disclaimer, the original version will
        !          1775:      prevail.
        !          1776: 
        !          1777:      If a section in the Document is Entitled "Acknowledgements",
        !          1778:      "Dedications", or "History", the requirement (section 4) to
        !          1779:      Preserve its Title (section 1) will typically require changing the
        !          1780:      actual title.
        !          1781: 
        !          1782:   9. TERMINATION
        !          1783: 
        !          1784:      You may not copy, modify, sublicense, or distribute the Document
        !          1785:      except as expressly provided under this License.  Any attempt
        !          1786:      otherwise to copy, modify, sublicense, or distribute it is void,
        !          1787:      and will automatically terminate your rights under this License.
        !          1788: 
        !          1789:      However, if you cease all violation of this License, then your
        !          1790:      license from a particular copyright holder is reinstated (a)
        !          1791:      provisionally, unless and until the copyright holder explicitly
        !          1792:      and finally terminates your license, and (b) permanently, if the
        !          1793:      copyright holder fails to notify you of the violation by some
        !          1794:      reasonable means prior to 60 days after the cessation.
        !          1795: 
        !          1796:      Moreover, your license from a particular copyright holder is
        !          1797:      reinstated permanently if the copyright holder notifies you of the
        !          1798:      violation by some reasonable means, this is the first time you have
        !          1799:      received notice of violation of this License (for any work) from
        !          1800:      that copyright holder, and you cure the violation prior to 30 days
        !          1801:      after your receipt of the notice.
        !          1802: 
        !          1803:      Termination of your rights under this section does not terminate
        !          1804:      the licenses of parties who have received copies or rights from
        !          1805:      you under this License.  If your rights have been terminated and
        !          1806:      not permanently reinstated, receipt of a copy of some or all of
        !          1807:      the same material does not give you any rights to use it.
        !          1808: 
        !          1809:  10. FUTURE REVISIONS OF THIS LICENSE
        !          1810: 
        !          1811:      The Free Software Foundation may publish new, revised versions of
        !          1812:      the GNU Free Documentation License from time to time.  Such new
        !          1813:      versions will be similar in spirit to the present version, but may
        !          1814:      differ in detail to address new problems or concerns.  See
        !          1815:      `http://www.gnu.org/copyleft/'.
        !          1816: 
        !          1817:      Each version of the License is given a distinguishing version
        !          1818:      number.  If the Document specifies that a particular numbered
        !          1819:      version of this License "or any later version" applies to it, you
        !          1820:      have the option of following the terms and conditions either of
        !          1821:      that specified version or of any later version that has been
        !          1822:      published (not as a draft) by the Free Software Foundation.  If
        !          1823:      the Document does not specify a version number of this License,
        !          1824:      you may choose any version ever published (not as a draft) by the
        !          1825:      Free Software Foundation.  If the Document specifies that a proxy
        !          1826:      can decide which future versions of this License can be used, that
        !          1827:      proxy's public statement of acceptance of a version permanently
        !          1828:      authorizes you to choose that version for the Document.
        !          1829: 
        !          1830:  11. RELICENSING
        !          1831: 
        !          1832:      "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
        !          1833:      World Wide Web server that publishes copyrightable works and also
        !          1834:      provides prominent facilities for anybody to edit those works.  A
        !          1835:      public wiki that anybody can edit is an example of such a server.
        !          1836:      A "Massive Multiauthor Collaboration" (or "MMC") contained in the
        !          1837:      site means any set of copyrightable works thus published on the MMC
        !          1838:      site.
        !          1839: 
        !          1840:      "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
        !          1841:      license published by Creative Commons Corporation, a not-for-profit
        !          1842:      corporation with a principal place of business in San Francisco,
        !          1843:      California, as well as future copyleft versions of that license
        !          1844:      published by that same organization.
        !          1845: 
        !          1846:      "Incorporate" means to publish or republish a Document, in whole or
        !          1847:      in part, as part of another Document.
        !          1848: 
        !          1849:      An MMC is "eligible for relicensing" if it is licensed under this
        !          1850:      License, and if all works that were first published under this
        !          1851:      License somewhere other than this MMC, and subsequently
        !          1852:      incorporated in whole or in part into the MMC, (1) had no cover
        !          1853:      texts or invariant sections, and (2) were thus incorporated prior
        !          1854:      to November 1, 2008.
        !          1855: 
        !          1856:      The operator of an MMC Site may republish an MMC contained in the
        !          1857:      site under CC-BY-SA on the same site at any time before August 1,
        !          1858:      2009, provided the MMC is eligible for relicensing.
        !          1859: 
        !          1860: 
        !          1861: ADDENDUM: How to use this License for your documents
        !          1862: ====================================================
        !          1863: 
        !          1864: To use this License in a document you have written, include a copy of
        !          1865: the License in the document and put the following copyright and license
        !          1866: notices just after the title page:
        !          1867: 
        !          1868:        Copyright (C)  YEAR  YOUR NAME.
        !          1869:        Permission is granted to copy, distribute and/or modify this document
        !          1870:        under the terms of the GNU Free Documentation License, Version 1.3
        !          1871:        or any later version published by the Free Software Foundation;
        !          1872:        with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
        !          1873:        Texts.  A copy of the license is included in the section entitled ``GNU
        !          1874:        Free Documentation License''.
        !          1875: 
        !          1876:    If you have Invariant Sections, Front-Cover Texts and Back-Cover
        !          1877: Texts, replace the "with...Texts." line with this:
        !          1878: 
        !          1879:          with the Invariant Sections being LIST THEIR TITLES, with
        !          1880:          the Front-Cover Texts being LIST, and with the Back-Cover Texts
        !          1881:          being LIST.
        !          1882: 
        !          1883:    If you have Invariant Sections without Cover Texts, or some other
        !          1884: combination of the three, merge those two alternatives to suit the
        !          1885: situation.
        !          1886: 
        !          1887:    If your document contains nontrivial examples of program code, we
        !          1888: recommend releasing these examples in parallel under your choice of
        !          1889: free software license, such as the GNU General Public License, to
        !          1890: permit their use in free software.
        !          1891: 
        !          1892: 
        !          1893: 
        !          1894: Tag Table:
        !          1895: Node: Top950
        !          1896: Node: Command Line Editing1472
        !          1897: Node: Introduction and Notation2126
        !          1898: Node: Readline Interaction3750
        !          1899: Node: Readline Bare Essentials4943
        !          1900: Node: Readline Movement Commands6734
        !          1901: Node: Readline Killing Commands7701
        !          1902: Node: Readline Arguments9623
        !          1903: Node: Searching10669
        !          1904: Node: Readline Init File12822
        !          1905: Node: Readline Init File Syntax13977
        !          1906: Node: Conditional Init Constructs30683
        !          1907: Node: Sample Init File33218
        !          1908: Node: Bindable Readline Commands36338
        !          1909: Node: Commands For Moving37397
        !          1910: Node: Commands For History38260
        !          1911: Node: Commands For Text42416
        !          1912: Node: Commands For Killing45400
        !          1913: Node: Numeric Arguments47544
        !          1914: Node: Commands For Completion48685
        !          1915: Node: Keyboard Macros50656
        !          1916: Node: Miscellaneous Commands51346
        !          1917: Node: Readline vi Mode55204
        !          1918: Node: GNU Free Documentation License56118
        !          1919: 
        !          1920: End Tag Table

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>