]> git.ipfire.org Git - thirdparty/readline.git/commitdiff
readline-7.0-alpha distribution readline-7.0-alpha
authorChet Ramey <chet.ramey@case.edu>
Thu, 9 Jul 2015 20:28:21 +0000 (16:28 -0400)
committerChet Ramey <chet.ramey@case.edu>
Thu, 9 Jul 2015 20:28:21 +0000 (16:28 -0400)
77 files changed:
CHANGELOG
CHANGES
INSTALL
MANIFEST
Makefile.in
NEWS
README
aclocal.m4
bind.c
callback.c
chardefs.h
colors.c
colors.h
complete.c
config.h.in
configure
configure.ac
display.c
doc/Makefile.in
doc/history.0
doc/history.3
doc/history.dvi
doc/history.html
doc/history.info
doc/history.pdf
doc/history.ps
doc/history_3.ps
doc/hstech.texi
doc/hsuser.texi
doc/readline.0
doc/readline.3
doc/readline.dvi
doc/readline.html
doc/readline.info
doc/readline.pdf
doc/readline.ps
doc/readline_3.ps
doc/rltech.texi
doc/rluser.texi
doc/rluserman.dvi
doc/rluserman.html
doc/rluserman.info
doc/rluserman.pdf
doc/rluserman.ps
doc/texi2dvi
doc/version.texi
examples/Makefile.in
examples/rl-callbacktest.c
examples/rlbasic.c [new file with mode: 0644]
funmap.c
histexpand.c
histfile.c
history.c
history.h
input.c
isearch.c
kill.c
macro.c
parens.c
patchlevel
posixjmp.h
readline.c
readline.h
readline.pc.in [new file with mode: 0644]
rlconf.h
rlmbutil.h
rlprivate.h
rltty.c
search.c
shlib/Makefile.in
signals.c
tcap.h
terminal.c
text.c
tilde.c
util.c
vi_mode.c

index c7c3077b9089f85d4b3f2544ed4e0a1b3188aced..9d03dca114bcf25d45a0b231d4fc27ef37fd5f2a 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1222,3 +1222,80 @@ support/shobj-conf
          minor one. The idea is that the minor versions should all be API/ABI
          compatible, and it is better to link automatically with the latest
          one.  Idea from Max Horn <max@quendi.de>
+
+                                2/26/2014
+                                ---------
+[readline-6.3 released]
+
+                                  3/14
+                                  ----
+shlib/Makefile.in
+       - fix typo in dependency list for vi_mode.so: it should not depend on
+         just $(topdir). Report and fix from Natanael Copa
+         <ncopa@alpinelinux.org>
+
+                                  4/15
+                                  ----
+{.,shlib,examples}/Makefile.in
+       - make sure $(INCLUDES) appears before $(CPPFLAGS) in the various
+         CFLAGS assignments so readline looks in its own source and build
+         directories (INCLUDES) before some directories specified by the
+         user or builder (CPPFLAGS).  Report and fix from Max Horn
+         <max@quendi.de>
+
+                                   6/2
+                                   ---
+config.h.in
+       - use correct symbols: HAVE_STRUCT_DIRENT_D_INO, HAVE_STRUCT_DIRENT_D_FILENO
+         HAVE_STRUCT_DIRENT_D_NAMLEN.  They don't really matter, but they are
+         what posixdir.h looks for.  Report from Ross Burton <ross.burton@intel.com>
+
+                                  6/11
+                                  ----
+readline.pc.in
+       - new file, config file for pkgconfig. Patch to add from Jirka Klimes
+         <jklimes@redhat.com>
+
+{MANIFEST,configure.ac,Makefile.in}
+       - readline.pc: changes to create file for pkgconfig
+
+                                  10/13
+                                  -----
+doc/Makefile.in
+       - readline.pdf, history.pdf, rluserman.pdf: use texi2dvi --pdf to generate
+         these.  Suggestion from Siep Kroonenberg <siepo@cybercomm.nl>
+
+                                  11/29
+                                  -----
+config.h.in
+        - HAVE_PSELECT: define if pselect(2) available
+
+configure.ac
+        - check for pselect(2), define HAVE_PSELECT if found
+
+                                  12/29
+                                  -----
+configure.ac
+       - bump version number up to 6.4
+
+                                1/6/2015
+                                --------
+configure.ac,config.h.in
+       - look for ncurses/termcap.h, define HAVE_NCURSES_TERMCAP_H
+
+                                  4/20
+                                  ----
+configure.ac
+       - add template definitions set by AC_USE_SYSTEM_EXTENSIONS from a report
+         from Andreas Schwab <schwab@linux-m68k.org>
+
+                                  4/24
+                                  ----
+configure.ac,config.h.in
+       - add check for sys/ioctl.h to AC_CHECK_HEADERS, define HAVE_SYS_IOCTL_H
+         if found
+
+                                  5/29
+                                  ----
+configure.ac
+       - bump library version to 7.0 because of addition of rl_callback_sigcleanup
diff --git a/CHANGES b/CHANGES
index 337275dfae3b92bf910010f5a3d786a40a2993af..8436701615bbd56a0e8565216b9af32bc0eeb8ff 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,95 @@
+This document details the changes between this version, readline-7.0, and the
+previous version, readline-6.3.
+
+1.  Changes to Readline
+
+a.  A bug that caused vi-mode `.' to be unable to redo `c', `d', and `y'
+    commands with modifiers was fixed.
+
+b.  Fixed a bug that caused callback mode to dump core when reading a
+    multiple-key sequence (e.g., arrow keys).
+
+c.  Fixed a bug that caused the redisplay code to erase some of the line when
+    using horizontal scrolling with incremental search.
+
+d.  Readline's input handler now performs signal processing if read(2) is
+    interrupted by SIGALRM or SIGVTALRM.
+
+e.  Fixed a problem with revert-all-at-newline freeing freed memory.
+
+f.  Clarified the documentation for the history_quotes_inhibit_expansion
+    variable to note that it inhibits scanning for the history comment
+    character and that it only affects double-quoted strings.
+
+g.  Fixed an off-by-one error in the prompt printed when performing searches.
+
+h.  Use pselect(2), if available, to wait for input before calling read(2), so
+    a SIGWINCH can interrupt it, since it doesn't interrupt read(2).
+
+i.  Some memory leaks caused by signals interrupting filename completion have
+    been fixed.
+
+j.  Reading EOF twice on a non-empty line causes EOF to be returned, rather
+    than the partial line.  This can cause partial lines to be executed on
+    SIGHUP, for example.
+
+k.  Fixed a bug concerning deleting multibyte characters from the search
+    string while performing an incremental search.
+
+l.  Fixed a bug with tilde expanding directory names in filename completion.
+
+m.  Fixed a bug that did not allow binding sequences beginning with a `\'.
+
+n.  Fixed a redisplay bug involving incorrect line wrapping when the prompt
+    contains a multibyte character in the last screen column.
+
+o.  Fixed a bug that caused history expansion to disregard characters that are
+    documented to delimit a history event specifier without requiring `:'.
+
+p.  Fixed a bug that could cause reading past the end of a string when reading
+    the value when binding the set of isearch terminators.
+
+q.  Fixed a bug that caused readline commands that depend on knowing which  
+    key invoked them to misbehave when dispatching key sequences that are
+    prefixes of other key bindings. 
+
+r.  Paren matching now works in vi insert mode.
+
+2.  New Features in Readline
+
+a.  The history truncation code now uses the same error recovery mechansim as
+    the history writing code, and restores the old version of the history file
+    on error.  The error recovery mechanism handles symlinked history files.
+
+b.  There is a new bindable variable, `enable-bracketed-paste', which enables
+    support for a terminal's bracketed paste mode.
+
+c.  The editing mode indicators can now be strings and are user-settable
+    (new `emacs-mode-string', `vi-cmd-mode-string' and `vi-ins-mode-string'
+    variables).  Mode strings can contain invisible character sequences.
+    Setting mode strings to null strings restores the defaults.
+
+d.  Prompt expansion adds the mode string to the last line of a multi-line
+    prompt (one with embedded newlines).
+
+e.  There is a new bindable variable, `colored-completion-prefix', which, if
+    set, causes the common prefix of a set of possible completions to be
+    displayed in color.
+
+f.  There is a new bindable command `vi-yank-pop', a vi-mode version of emacs-
+    mode yank-pop.
+
+g.  The redisplay code underwent several efficiency improvements for multibyte
+    locales.
+
+h.  The insert-char function attempts to batch-insert all pending typeahead
+    that maps to self-insert, as long as it is coming from the terminal.
+
+i.  rl_callback_sigcleanup: a new application function that can clean up and
+    unset any state set by readline's callback mode.  Intended to be used
+    after a signal.
+
+-------------------------------------------------------------------------------
 This document details the changes between this version, readline-6.3, and the
 previous version, readline-6.2.
 
diff --git a/INSTALL b/INSTALL
index 7e67623d710d5aa30381ae1d597c9340fbf26734..e1a92d32667f83215e34edb02e239d27e1803ee8 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
 Basic Installation
 ==================
 
-These are installation instructions for Readline-6.3.
+These are installation instructions for Readline-7.0.
 
 The simplest way to compile readline is:
 
index ec98f19ac4f95ec3dce35e9c006921e44a07250f..bfd05470644a62a0857411975777a62ef1f319d8 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -20,6 +20,7 @@ config.h.in   f
 configure      f
 configure.ac   f
 Makefile.in    f
+readline.pc.in f
 ansi_stdlib.h  f
 chardefs.h     f
 colors.h       f
@@ -114,6 +115,7 @@ examples/fileman.c  f
 examples/manexamp.c    f
 examples/readlinebuf.h f
 examples/rl-fgets.c    f
+examples/rlbasic.c     f
 examples/rlcat.c       f
 examples/rlevent.c     f
 examples/rltest.c      f
index c0a0f1cdfbc75d5880718c80f6794c43e297ab8b..ecaf06dcec3c04658cc108fba468dac2e6562321 100644 (file)
@@ -87,7 +87,7 @@ TERMCAP_LIB = @TERMCAP_LIB@
 # For libraries which include headers from other libraries.
 INCLUDES = -I. -I$(srcdir)
 
-XCCFLAGS = $(DEFS) $(LOCAL_DEFS) $(CPPFLAGS) $(INCLUDES)
+XCCFLAGS = $(DEFS) $(LOCAL_DEFS) $(INCLUDES) $(CPPFLAGS)
 CCFLAGS = $(XCCFLAGS) $(LOCAL_CFLAGS) $(CFLAGS)
 
 # could add -Werror here
@@ -145,7 +145,7 @@ DOCUMENTATION = $(DOCSOURCE) $(DOCOBJECT) $(DOCSUPPORT)
 
 CREATED_MAKEFILES = Makefile doc/Makefile examples/Makefile shlib/Makefile
 CREATED_CONFIGURE = config.status config.h config.cache config.log \
-                   stamp-config stamp-h
+                   stamp-config stamp-h readline.pc
 CREATED_TAGS = TAGS tags
 
 INSTALLED_HEADERS = readline.h chardefs.h keymaps.h history.h tilde.h \
@@ -304,6 +304,9 @@ distclean maintainer-clean: clean
        $(RM) $(CREATED_CONFIGURE)
        $(RM) $(CREATED_TAGS)
 
+readline.pc:   config.status $(srcdir)/readline.pc.in
+       $(SHELL) config.status
+
 info dvi html pdf ps:
        -( cd doc && $(MAKE) $(MFLAGS) $@ )
 
@@ -334,7 +337,8 @@ bind.o: history.h
 callback.o: rlconf.h
 callback.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
 callback.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h rlstdc.h
-compat.o: rlstdc.h
+compat.o: ${BUILD_DIR}/config.h
+compat.o: rlstdc.h rltypedefs.h
 complete.o: ansi_stdlib.h posixdir.h posixstat.h
 complete.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
 complete.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h rlstdc.h
@@ -395,6 +399,7 @@ readline.o: posixstat.h ansi_stdlib.h posixjmp.h
 rltty.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
 rltty.o: rltty.h
 rltty.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h rlstdc.h
+savestring.o: ${BUILD_DIR}/config.h
 search.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
 search.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h
 search.o: ansi_stdlib.h history.h rlstdc.h
diff --git a/NEWS b/NEWS
index ba5b581ed3da8de4274a9593c960bea63ada3e4a..11ac0e3a3e65a0e086497d63ec4595974ae13ad9 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,41 @@
+This is a terse description of the new features added to readline-7.0 since
+the release of readline-6.3.
+
+New Features in Readline
+
+a.  The history truncation code now uses the same error recovery mechansim as
+    the history writing code, and restores the old version of the history file
+    on error.  The error recovery mechanism handles symlinked history files.
+
+b.  There is a new bindable variable, `enable-bracketed-paste', which enables
+    support for a terminal's bracketed paste mode.
+
+c.  The editing mode indicators can now be strings and are user-settable
+    (new `emacs-mode-string', `vi-cmd-mode-string' and `vi-ins-mode-string'
+    variables).  Mode strings can contain invisible character sequences.
+    Setting mode strings to null strings restores the defaults.
+
+d.  Prompt expansion adds the mode string to the last line of a multi-line
+    prompt (one with embedded newlines).
+
+e.  There is a new bindable variable, `colored-completion-prefix', which, if
+    set, causes the common prefix of a set of possible completions to be
+    displayed in color.
+
+f.  There is a new bindable command `vi-yank-pop', a vi-mode version of emacs-
+    mode yank-pop.
+
+g.  The redisplay code underwent several efficiency improvements for multibyte
+    locales.
+
+h.  The insert-char function attempts to batch-insert all pending typeahead
+    that maps to self-insert, as long as it is coming from the terminal.
+
+i.  rl_callback_sigcleanup: a new application function that can clean up and
+    unset any state set by readline's callback mode.  Intended to be used
+    after a signal.
+
+-------------------------------------------------------------------------------
 This is a terse description of the new features added to readline-6.3 since
 the release of readline-6.2.
 
@@ -55,3 +93,190 @@ m.  If the user-settable variable `history-size' is set to a value less than
 n.  New application-settable variable: rl_signal_event_hook; function that is
     called when readline is reading terminal input and read(2) is interrupted
     by a signal.  Currently not called for SIGHUP or SIGTERM.
+
+-------------------------------------------------------------------------------
+This is a terse description of the new features added to readline-6.1 since
+the release of readline-6.0.
+
+New Features in Readline
+
+a.  New bindable function: menu-complete-backward.
+
+b.  In the vi insertion keymap, C-n is now bound to menu-complete by default,
+    and C-p to menu-complete-backward.
+
+c.  When in vi command mode, repeatedly hitting ESC now does nothing, even
+    when ESC introduces a bound key sequence.  This is closer to how
+    historical vi behaves.
+
+d.  New bindable function: skip-csi-sequence.  Can be used as a default to
+    consume key sequences generated by keys like Home and End without having
+    to bind all keys.
+
+e.  New application-settable function: rl_filename_rewrite_hook.  Can be used
+    to rewite or modify filenames read from the file system before they are
+    compared to the word to be completed.
+
+f.  New bindable variable: skip-completed-text, active when completing in the
+    middle of a word.  If enabled, it means that characters in the completion
+    that match characters in the remainder of the word are "skipped" rather
+    than inserted into the line.
+
+g.  The pre-readline-6.0 version of menu completion is available as
+    "old-menu-complete" for users who do not like the readline-6.0 version.
+
+h.  New bindable variable: echo-control-characters.  If enabled, and the
+    tty ECHOCTL bit is set, controls the echoing of characters corresponding
+    to keyboard-generated signals.
+
+i.  New bindable variable: enable-meta-key.  Controls whether or not readline
+    sends the smm/rmm sequences if the terminal indicates it has a meta key
+    that enables eight-bit characters.
+
+-------------------------------------------------------------------------------
+This is a terse description of the new features added to readline-6.0 since
+the release of readline-5.2.
+
+New Features in Readline
+
+a.  A new variable, rl_sort_completion_matches; allows applications to inhibit
+    match list sorting (but beware: some things don't work right if
+    applications do this).
+
+b.  A new variable, rl_completion_invoking_key; allows applications to discover
+    the key that invoked rl_complete or rl_menu_complete.
+
+c.  The functions rl_block_sigint and rl_release_sigint are now public and
+    available to calling applications who want to protect critical sections
+    (like redisplay).
+
+d.  The functions rl_save_state and rl_restore_state are now public and
+    available to calling applications; documented rest of readline's state
+    flag values.
+
+e.  A new user-settable variable, `history-size', allows setting the maximum
+    number of entries in the history list.
+
+f.  There is a new implementation of menu completion, with several improvements
+    over the old; the most notable improvement is a better `completions
+    browsing' mode.
+
+g.  The menu completion code now uses the rl_menu_completion_entry_function
+    variable, allowing applications to provide their own menu completion
+    generators.
+
+h.  There is support for replacing a prefix  of a pathname with a `...' when
+    displaying possible completions.  This is controllable by setting the
+    `completion-prefix-display-length' variable.  Matches with a common prefix
+    longer than this value have the common prefix replaced with `...'.
+
+i.  There is a new `revert-all-at-newline' variable.  If enabled, readline will
+    undo all outstanding changes to all history lines when `accept-line' is
+    executed.
+
+-------------------------------------------------------------------------------
+This is a terse description of the new features added to readline-5.2 since
+the release of readline-5.1.
+
+New Features in Readline
+
+a.  Calling applications can now set the keyboard timeout to 0, allowing
+    poll-like behavior.
+
+b.  The value of SYS_INPUTRC (configurable at compilation time) is now used as
+    the default last-ditch startup file.
+
+c.  The history file reading functions now allow windows-like \r\n line
+    terminators.
+
+-------------------------------------------------------------------------------
+This is a terse description of the new features added to readline-5.1 since
+the release of readline-5.0.
+
+New Features in Readline
+
+a.  The key sequence sent by the keypad `delete' key is now automatically   
+    bound to delete-char.
+
+b.  A negative argument to menu-complete now cycles backward through the
+    completion list.
+
+c.  A new bindable readline variable:  bind-tty-special-chars.  If non-zero,
+    readline will bind the terminal special characters to their readline
+    equivalents when it's called (on by default).
+
+d.  New bindable command: vi-rubout.  Saves deleted text for possible  
+    reinsertion, as with any vi-mode `text modification' command; `X' is bound
+    to this in vi command mode.
+
+e.  If the rl_completion_query_items is set to a value < 0, readline never
+    asks the user whether or not to view the possible completions.
+
+f.  New application-callable auxiliary function, rl_variable_value, returns
+    a string corresponding to a readline variable's value.
+
+g.  When parsing inputrc files and variable binding commands, the parser
+    strips trailing whitespace from values assigned to boolean variables
+    before checking them.
+
+h.  A new external application-controllable variable that allows the LINES
+    and COLUMNS environment variables to set the window size regardless of
+    what the kernel returns.
+
+
+-------------------------------------------------------------------------------
+This is a terse description of the new features added to readline-5.0 since
+the release of readline-4.3.
+
+New Features in Readline
+
+a.  History expansion has a new `a' modifier equivalent to the `g' modifier
+    for compatibility with the BSD csh.
+
+b.  History expansion has a new `G' modifier equivalent to the BSD csh `g'
+    modifier, which performs a substitution once per word.
+
+c.  All non-incremental search operations may now undo the operation of
+    replacing the current line with the history line.
+
+d.  The text inserted by an `a' command in vi mode can be reinserted with
+    `.'.
+
+e.  New bindable variable, `show-all-if-unmodified'.  If set, the readline
+    completer will list possible completions immediately if there is more
+    than one completion and partial completion cannot be performed.
+
+f.  There is a new application-callable `free_history_entry()' function.
+
+g.  History list entries now contain timestamp information; the history file
+    functions know how to read and write timestamp information associated
+    with each entry.
+
+h.  Four new key binding functions have been added:
+
+       rl_bind_key_if_unbound()
+       rl_bind_key_if_unbound_in_map()
+       rl_bind_keyseq_if_unbound()
+       rl_bind_keyseq_if_unbound_in_map()
+
+i.  New application variable, rl_completion_quote_character, set to any
+    quote character readline finds before it calls the application completion
+    function.
+
+j.  New application variable, rl_completion_suppress_quote, settable by an   
+    application completion function.  If set to non-zero, readline does not
+    attempt to append a closing quote to a completed word.
+    
+k.  New application variable, rl_completion_found_quote, set to a non-zero
+    value if readline determines that the word to be completed is quoted.
+    Set before readline calls any application completion function.
+
+l.  New function hook, rl_completion_word_break_hook, called when readline
+    needs to break a line into words when completion is attempted.  Allows
+    the word break characters to vary based on position in the line.
+
+m.  New bindable command: unix-filename-rubout.  Does the same thing as
+    unix-word-rubout, but adds `/' to the set of word delimiters.
+
+n.  When listing completions, directories have a `/' appended if the
+    `mark-directories' option has been enabled.
diff --git a/README b/README
index 8395c344b87cb11f3f4e63ebcf583954cf6fae0a..6a9c2b9097dccdfee28d1309bc4dc4c6a25b6f6b 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
 Introduction
 ============
 
-This is the Gnu Readline library, version 6.3.
+This is the Gnu Readline library, version 7.0.
 
 The Readline library provides a set of functions for use by applications
 that allow users to edit command lines as they are typed in.  Both
index a947272e2ce4df70e500f40565de46a1d4c0ee4c..7730d2d9c11da72ec9a65796267a56d4dfe321ac 100644 (file)
@@ -1692,6 +1692,8 @@ AC_CHECK_HEADERS(wctype.h)
 AC_CHECK_HEADERS(wchar.h)
 AC_CHECK_HEADERS(langinfo.h)
 
+AC_CHECK_HEADERS(mbstr.h)
+
 AC_CHECK_FUNC(mbrlen, AC_DEFINE(HAVE_MBRLEN))
 AC_CHECK_FUNC(mbscasecmp, AC_DEFINE(HAVE_MBSCMP))
 AC_CHECK_FUNC(mbscmp, AC_DEFINE(HAVE_MBSCMP))
@@ -1784,14 +1786,14 @@ char    **v;
         exit (w == 0);  /* exit 0 if wcwidth broken */
 }
 ],
-bash_cv_wcwidth_broken=yes, bash_cv_wcwdith_broken=no, bash_cv_wcwidth_broken=no)])
+bash_cv_wcwidth_broken=yes, bash_cv_wcwidth_broken=no, bash_cv_wcwidth_broken=no)])
 if test "$bash_cv_wcwidth_broken" = yes; then
         AC_DEFINE(WCWIDTH_BROKEN, 1, [wcwidth is usually not broken])
 fi
 
 if test "$am_cv_func_iconv" = yes; then
        OLDLIBS="$LIBS"
-       LIBS="$LIBS $LIBICONV"
+       LIBS="$LIBS $LIBINTL $LIBICONV"
        AC_CHECK_FUNCS(locale_charset)
        LIBS="$OLDLIBS"
 fi
diff --git a/bind.c b/bind.c
index 8acf4ac4ca0468e1ed2e53d8e7287e84f22730e1..f88e5aad55c10cecceacd94d5b6f5589760bff0a 100644 (file)
--- a/bind.c
+++ b/bind.c
@@ -117,6 +117,9 @@ rl_bind_key (key, function)
      int key;
      rl_command_func_t *function;
 {
+  char keyseq[3];
+  int l;
+
   if (key < 0)
     return (key);
 
@@ -135,8 +138,24 @@ rl_bind_key (key, function)
       return (key);
     }
 
-  _rl_keymap[key].type = ISFUNC;
-  _rl_keymap[key].function = function;
+  /* If it's bound to a function or macro, just overwrite.  Otherwise we have
+     to treat it as a key sequence so rl_generic_bind handles shadow keymaps
+     for us.  If we are binding '\' make sure to escape it so it makes it
+     through the call to rl_translate_keyseq. */
+  if (_rl_keymap[key].type != ISKMAP)
+    {
+      _rl_keymap[key].type = ISFUNC;
+      _rl_keymap[key].function = function;
+    }
+  else
+    {
+      l = 0;
+      if (key == '\\')
+       keyseq[l++] = '\\';
+      keyseq[l++] = key;
+      keyseq[l] = '\0';
+      rl_bind_keyseq (keyseq, function);
+    }
   rl_binding_keymap = _rl_keymap;
   return (0);
 }
@@ -542,7 +561,7 @@ rl_translate_keyseq (seq, array, len)
            case '0': case '1': case '2': case '3':
            case '4': case '5': case '6': case '7':
              i++;
-             for (temp = 2, c -= '0'; ISOCTAL (seq[i]) && temp--; i++)
+             for (temp = 2, c -= '0'; ISOCTAL ((unsigned char)seq[i]) && temp--; i++)
                c = (c * 8) + OCTVALUE (seq[i]);
              i--;      /* auto-increment in for loop */
              array[l++] = c & largest_char;
@@ -1479,6 +1498,7 @@ static const struct {
   { "blink-matching-paren",    &rl_blink_matching_paren,       V_SPECIAL },
   { "byte-oriented",           &rl_byte_oriented,              0 },
 #if defined (COLOR_SUPPORT)
+  { "colored-completion-prefix",&_rl_colored_completion_prefix,        0 },
   { "colored-stats",           &_rl_colored_stats,             0 },
 #endif
   { "completion-ignore-case",  &_rl_completion_case_fold,      0 },
@@ -1486,6 +1506,7 @@ static const struct {
   { "convert-meta",            &_rl_convert_meta_chars_to_ascii, 0 },
   { "disable-completion",      &rl_inhibit_completion,         0 },
   { "echo-control-characters", &_rl_echo_control_chars,        0 },
+  { "enable-bracketed-paste",  &_rl_enable_bracketed_paste,    0 },
   { "enable-keypad",           &_rl_enable_keypad,             0 },
   { "enable-meta-key",         &_rl_enable_meta,               0 },
   { "expand-tilde",            &rl_complete_with_tilde_expansion, 0 },
@@ -1569,10 +1590,13 @@ static int sv_dispprefix PARAMS((const char *));
 static int sv_compquery PARAMS((const char *));
 static int sv_compwidth PARAMS((const char *));
 static int sv_editmode PARAMS((const char *));
+static int sv_emacs_modestr PARAMS((const char *));
 static int sv_histsize PARAMS((const char *));
 static int sv_isrchterm PARAMS((const char *));
 static int sv_keymap PARAMS((const char *));
 static int sv_seqtimeout PARAMS((const char *));
+static int sv_viins_modestr PARAMS((const char *));
+static int sv_vicmd_modestr PARAMS((const char *));
 
 static const struct {
   const char * const name;
@@ -1585,10 +1609,13 @@ static const struct {
   { "completion-prefix-display-length", V_INT, sv_dispprefix },
   { "completion-query-items", V_INT,   sv_compquery },
   { "editing-mode",    V_STRING,       sv_editmode },
+  { "emacs-mode-string", V_STRING,     sv_emacs_modestr },  
   { "history-size",    V_INT,          sv_histsize },
   { "isearch-terminators", V_STRING,   sv_isrchterm },
   { "keymap",          V_STRING,       sv_keymap },
   { "keyseq-timeout",  V_INT,          sv_seqtimeout },
+  { "vi-cmd-mode-string", V_STRING,    sv_vicmd_modestr }, 
+  { "vi-ins-mode-string", V_STRING,    sv_viins_modestr }, 
   { (char *)NULL,      0, (_rl_sv_func_t *)0 }
 };
 
@@ -1605,7 +1632,7 @@ find_string_var (name)
 }
 
 /* A boolean value that can appear in a `set variable' command is true if
-   the value is null or empty, `on' (case-insenstive), or "1".  Any other
+   the value is null or empty, `on' (case-insensitive), or "1".  Any other
    values result in 0 (false). */
 static int
 bool_to_int (value)
@@ -1832,7 +1859,7 @@ sv_isrchterm (value)
     }
   else
     {
-      for (beg = end = 0; whitespace (v[end]) == 0; end++)
+      for (beg = end = 0; v[end] && whitespace (v[end]) == 0; end++)
        ;
     }
 
@@ -1846,7 +1873,96 @@ sv_isrchterm (value)
   xfree (v);
   return 0;
 }
-      
+
+extern char *_rl_emacs_mode_str;
+
+static int
+sv_emacs_modestr (value)
+     const char *value;
+{
+  if (value && *value)
+    {
+      FREE (_rl_emacs_mode_str);
+      _rl_emacs_mode_str = (char *)xmalloc (2 * strlen (value) + 1);
+      rl_translate_keyseq (value, _rl_emacs_mode_str, &_rl_emacs_modestr_len);
+      _rl_emacs_mode_str[_rl_emacs_modestr_len] = '\0';
+      return 0;
+    }
+  else if (value)
+    {
+      FREE (_rl_emacs_mode_str);
+      _rl_emacs_mode_str = (char *)xmalloc (1);
+      _rl_emacs_mode_str[_rl_emacs_modestr_len = 0] = '\0';
+      return 0;
+    }
+  else if (value == 0)
+    {
+      FREE (_rl_emacs_mode_str);
+      _rl_emacs_mode_str = 0;  /* prompt_modestr does the right thing */
+      _rl_emacs_modestr_len = 0;
+      return 0;
+    }
+  return 1;
+}
+
+static int
+sv_viins_modestr (value)
+     const char *value;
+{
+  if (value && *value)
+    {
+      FREE (_rl_vi_ins_mode_str);
+      _rl_vi_ins_mode_str = (char *)xmalloc (2 * strlen (value) + 1);
+      rl_translate_keyseq (value, _rl_vi_ins_mode_str, &_rl_vi_ins_modestr_len);
+      _rl_vi_ins_mode_str[_rl_vi_ins_modestr_len] = '\0';
+      return 0;
+    }
+  else if (value)
+    {
+      FREE (_rl_vi_ins_mode_str);
+      _rl_vi_ins_mode_str = (char *)xmalloc (1);
+      _rl_vi_ins_mode_str[_rl_vi_ins_modestr_len = 0] = '\0';
+      return 0;
+    }
+  else if (value == 0)
+    {
+      FREE (_rl_vi_ins_mode_str);
+      _rl_vi_ins_mode_str = 0; /* prompt_modestr does the right thing */
+      _rl_vi_ins_modestr_len = 0;
+      return 0;
+    }
+  return 1;
+}
+
+static int
+sv_vicmd_modestr (value)
+     const char *value;
+{
+  if (value && *value)
+    {
+      FREE (_rl_vi_cmd_mode_str);
+      _rl_vi_cmd_mode_str = (char *)xmalloc (2 * strlen (value) + 1);
+      rl_translate_keyseq (value, _rl_vi_cmd_mode_str, &_rl_vi_cmd_modestr_len);
+      _rl_vi_cmd_mode_str[_rl_vi_cmd_modestr_len] = '\0';
+      return 0;
+    }
+  else if (value)
+    {
+      FREE (_rl_vi_cmd_mode_str);
+      _rl_vi_cmd_mode_str = (char *)xmalloc (1);
+      _rl_vi_cmd_mode_str[_rl_vi_cmd_modestr_len = 0] = '\0';
+      return 0;
+    }
+  else if (value == 0)
+    {
+      FREE (_rl_vi_cmd_mode_str);
+      _rl_vi_cmd_mode_str = 0; /* prompt_modestr does the right thing */
+      _rl_vi_cmd_modestr_len = 0;
+      return 0;
+    }
+  return 1;
+}
+
 /* Return the character which matches NAME.
    For example, `Space' returns ' '. */
 
@@ -2420,6 +2536,12 @@ _rl_get_string_variable_value (name)
       sprintf (numbuf, "%d", _rl_keyseq_timeout);    
       return (numbuf);
     }
+  else if (_rl_stricmp (name, "emacs-mode-string") == 0)
+    return (_rl_emacs_mode_str ? _rl_emacs_mode_str : RL_EMACS_MODESTR_DEFAULT);
+  else if (_rl_stricmp (name, "vi-cmd-mode-string") == 0)
+    return (_rl_emacs_mode_str ? _rl_emacs_mode_str : RL_VI_CMD_MODESTR_DEFAULT);
+  else if (_rl_stricmp (name, "vi-ins-mode-string") == 0)
+    return (_rl_emacs_mode_str ? _rl_emacs_mode_str : RL_VI_INS_MODESTR_DEFAULT);
   else
     return (0);
 }
index 6bb2c3e0dc3182e559215ea303a393627bd5a6cb..0fc3f90bcd5f7ca2c65bb72b32bf54e12181e3b7 100644 (file)
@@ -284,10 +284,34 @@ _rl_callback_data_alloc (count)
   return arg;
 }
 
-void _rl_callback_data_dispose (arg)
+void
+_rl_callback_data_dispose (arg)
      _rl_callback_generic_arg *arg;
 {
   xfree (arg);
 }
 
+/* Make sure that this agrees with cases in rl_callback_read_char */
+void
+rl_callback_sigcleanup ()
+{
+  if (RL_ISSTATE (RL_STATE_CALLBACK) == 0)
+    return;
+
+  if (RL_ISSTATE (RL_STATE_ISEARCH))
+    _rl_isearch_cleanup (_rl_iscxt, 0);
+  else if (RL_ISSTATE (RL_STATE_NSEARCH))
+    _rl_nsearch_cleanup (_rl_nscxt, 0);
+  else if (RL_ISSTATE (RL_STATE_VIMOTION))
+    RL_UNSETSTATE (RL_STATE_VIMOTION);
+  else if (RL_ISSTATE (RL_STATE_NUMERICARG))
+    {
+      _rl_argcxt = 0;
+      RL_UNSETSTATE (RL_STATE_NUMERICARG);
+    }
+  else if (RL_ISSTATE (RL_STATE_MULTIKEY))
+    RL_UNSETSTATE (RL_STATE_MULTIKEY);
+
+  _rl_callback_func = 0;
+}
 #endif
index 1fa1b089d0164c6794f3b3ff14bc0afb101c0d84..43aab7a69e89f3156af2010fdfe829056ae5c504 100644 (file)
@@ -73,7 +73,7 @@
 #endif
 
 #if !defined (isxdigit) && !defined (HAVE_ISXDIGIT) && !defined (__cplusplus)
-#  define isxdigit(c)   (isdigit((c)) || ((c) >= 'a' && (c) <= 'f') || ((c) >= 'A' && (c) <= 'F'))
+#  define isxdigit(c)   (isdigit((unsigned char)(c)) || ((c) >= 'a' && (c) <= 'f') || ((c) >= 'A' && (c) <= 'F'))
 #endif
 
 #if defined (CTYPE_NON_ASCII)
 
 /* Beware:  these only work with single-byte ASCII characters. */
 
-#define ISALNUM(c)     (IN_CTYPE_DOMAIN (c) && isalnum (c))
-#define ISALPHA(c)     (IN_CTYPE_DOMAIN (c) && isalpha (c))
-#define ISDIGIT(c)     (IN_CTYPE_DOMAIN (c) && isdigit (c))
-#define ISLOWER(c)     (IN_CTYPE_DOMAIN (c) && islower (c))
-#define ISPRINT(c)     (IN_CTYPE_DOMAIN (c) && isprint (c))
-#define ISUPPER(c)     (IN_CTYPE_DOMAIN (c) && isupper (c))
-#define ISXDIGIT(c)    (IN_CTYPE_DOMAIN (c) && isxdigit (c))
+#define ISALNUM(c)     (IN_CTYPE_DOMAIN (c) && isalnum ((unsigned char)c))
+#define ISALPHA(c)     (IN_CTYPE_DOMAIN (c) && isalpha ((unsigned char)c))
+#define ISDIGIT(c)     (IN_CTYPE_DOMAIN (c) && isdigit ((unsigned char)c))
+#define ISLOWER(c)     (IN_CTYPE_DOMAIN (c) && islower ((unsigned char)c))
+#define ISPRINT(c)     (IN_CTYPE_DOMAIN (c) && isprint ((unsigned char)c))
+#define ISUPPER(c)     (IN_CTYPE_DOMAIN (c) && isupper ((unsigned char)c))
+#define ISXDIGIT(c)    (IN_CTYPE_DOMAIN (c) && isxdigit ((unsigned char)c))
 
 #define _rl_lowercase_p(c)     (NON_NEGATIVE(c) && ISLOWER(c))
 #define _rl_uppercase_p(c)     (NON_NEGATIVE(c) && ISUPPER(c))
index 89d9035f236ff90b6dcfe45334f0a43508ed919e..963dc12e65dc117fd13176289dd57524e28245a0 100644 (file)
--- a/colors.c
+++ b/colors.c
@@ -98,6 +98,26 @@ _rl_set_normal_color (void)
     }
 }
 
+bool
+_rl_print_prefix_color (void)
+{
+  struct bin_str *s;
+
+  /* What do we want to use for the prefix? Let's try cyan first, see colors.h */
+  s = &_rl_color_indicator[C_PREFIX];
+  if (s->string != NULL)
+    {
+      if (is_colored (C_NORM))
+       restore_default_color ();
+      _rl_put_indicator (&_rl_color_indicator[C_LEFT]);
+      _rl_put_indicator (s);
+      _rl_put_indicator (&_rl_color_indicator[C_RIGHT]);
+      return 0;
+    }
+  else
+    return 1;
+}
+  
 /* Returns whether any color sequence was printed. */
 bool
 _rl_print_color_indicator (char *f)
@@ -108,10 +128,9 @@ _rl_print_color_indicator (char *f)
 
   const char* name;
   char *filename;
-  struct stat astat;
+  struct stat astat, linkstat;
   mode_t mode;
-  int linkok;
-
+  int linkok;  /* 1 == ok, 0 == dangling symlink, -1 == missing */
   int stat_ok;
 
   name = f;
@@ -130,10 +149,20 @@ _rl_print_color_indicator (char *f)
 #else
   stat_ok = stat(name, &astat);
 #endif
-  if( stat_ok == 0 ) {
-    mode = astat.st_mode;
-    linkok = 1; //f->linkok;
-  }
+  if (stat_ok == 0)
+    {
+      mode = astat.st_mode;
+#if defined (HAVE_LSTAT)
+      if (S_ISLNK (mode))
+       {
+         linkok = stat (name, &linkstat) == 0;
+         if (linkok && strncmp (_rl_color_indicator[C_LINK].string, "target", 6) == 0)
+           mode = linkstat.st_mode;
+       }
+      else
+#endif
+       linkok = 1;
+    }
   else
     linkok = -1;
 
@@ -141,6 +170,8 @@ _rl_print_color_indicator (char *f)
 
   if (linkok == -1 && _rl_color_indicator[C_MISSING].string != NULL)
     colored_filetype = C_MISSING;
+  else if (linkok == 0 && S_ISLNK(mode) && _rl_color_indicator[C_ORPHAN].string != NULL)
+    colored_filetype = C_ORPHAN;       /* dangling symlink */
   else if(stat_ok != 0)
     {
       static enum indicator_no filetype_indicator[] = FILETYPE_INDICATORS;
@@ -181,10 +212,7 @@ _rl_print_color_indicator (char *f)
 #endif
         }
       else if (S_ISLNK (mode))
-        colored_filetype = ((linkok == 0
-                 && (!strncmp (_rl_color_indicator[C_LINK].string, "target", 6)
-                     || _rl_color_indicator[C_ORPHAN].string))
-                ? C_ORPHAN : C_LINK);
+        colored_filetype = C_LINK;
       else if (S_ISFIFO (mode))
         colored_filetype = C_FIFO;
       else if (S_ISSOCK (mode))
index fc926e539bf39e5b3a5c70a6dbe7c56e810b5d93..8627bd48842b017f053d16648b5006e33fb1509b 100644 (file)
--- a/colors.h
+++ b/colors.h
@@ -114,8 +114,12 @@ enum filetype
     arg_directory
   };
 
+/* Prefix color, currently same as directory */
+#define C_PREFIX       C_DIR
+
 extern void _rl_put_indicator (const struct bin_str *ind);
 extern void _rl_set_normal_color (void);
+extern bool _rl_print_prefix_color (void);
 extern bool _rl_print_color_indicator (char *f);
 extern void _rl_prep_non_filename_text (void);
 
index cd9aebe8b7f8bc21026ad836053d6c69d252d477..302ea1ddb803ec7608ffa8189ce25f8edbf2b8f3 100644 (file)
@@ -1,6 +1,6 @@
 /* complete.c -- filename completion for readline. */
 
-/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2015 Free Software Foundation, Inc.
 
    This file is part of the GNU Readline Library (Readline), a library
    for reading lines of text with interactive input and history editing.
@@ -113,6 +113,8 @@ static int stat_char PARAMS((char *));
 #if defined (COLOR_SUPPORT)
 static int colored_stat_start PARAMS((char *));
 static void colored_stat_end PARAMS((void));
+static int colored_prefix_start PARAMS((void));
+static void colored_prefix_end PARAMS((void));
 #endif
 
 static int path_isdir PARAMS((const char *));
@@ -172,7 +174,7 @@ int _rl_complete_mark_symlink_dirs = 0;
 int _rl_print_completions_horizontally;
 
 /* Non-zero means that case is not significant in filename completion. */
-#if defined (__MSDOS__) && !defined (__DJGPP__)
+#if (defined (__MSDOS__) && !defined (__DJGPP__)) || (defined (_WIN32) && !defined (__CYGWIN__))
 int _rl_completion_case_fold = 1;
 #else
 int _rl_completion_case_fold = 0;
@@ -209,6 +211,8 @@ int rl_visible_stats = 0;
 /* Non-zero means to use colors to indicate file type when listing possible
    completions.  The colors used are taken from $LS_COLORS, if set. */
 int _rl_colored_stats = 0;
+
+int _rl_colored_completion_prefix = 1;
 #endif
 
 /* If non-zero, when completing in the middle of a word, don't insert
@@ -404,6 +408,8 @@ static int completion_changed_buffer;
 /* The result of the query to the user about displaying completion matches */
 static int completion_y_or_n;
 
+static int _rl_complete_display_matches_interrupt = 0;
+
 /*************************************/
 /*                                  */
 /*    Bindable completion functions  */
@@ -487,7 +493,10 @@ _rl_complete_sigcleanup (sig, ptr)
      void *ptr;
 {
   if (sig == SIGINT)   /* XXX - for now */
-    _rl_free_match_list ((char **)ptr);
+    {
+      _rl_free_match_list ((char **)ptr);
+      _rl_complete_display_matches_interrupt = 1;
+    }
 }
 
 /* Set default values for readline word completion.  These are the variables
@@ -505,6 +514,9 @@ set_completion_defaults (what_to_do)
 
   /* The completion entry function may optionally change this. */
   rl_completion_mark_symlink_dirs = _rl_complete_mark_symlink_dirs;
+
+  /* Reset private state. */
+  _rl_complete_display_matches_interrupt = 0;
 }
 
 /* The user must press "y" or "n". Non-zero return means "y" pressed. */
@@ -638,11 +650,23 @@ stat_char (filename)
 #endif
   else if (S_ISREG (finfo.st_mode))
     {
+#if defined (_WIN32) && !defined (__CYGWIN__)
+      char *ext;
+
+      /* Windows doesn't do access and X_OK; check file extension instead */
+      ext = strrchr (fn, '.');
+      if (ext && (_rl_stricmp (ext, ".exe") == 0 ||
+                 _rl_stricmp (ext, ".cmd") == 0 ||
+                 _rl_stricmp (ext, ".bat") == 0 ||
+                 _rl_stricmp (ext, ".com") == 0))
+       character = '*';
+#else
       if (access (filename, X_OK) == 0)
        character = '*';
+#endif
     }
 
-  free (f);
+  xfree (f);
   return (character);
 }
 #endif /* VISIBLE_STATS */
@@ -662,6 +686,19 @@ colored_stat_end ()
   _rl_prep_non_filename_text ();
   _rl_put_indicator (&_rl_color_indicator[C_CLR_TO_EOL]);
 }
+
+static int
+colored_prefix_start ()
+{
+  _rl_set_normal_color ();
+  return (_rl_print_prefix_color ());
+}
+
+static void
+colored_prefix_end ()
+{
+  colored_stat_end ();         /* for now */
+}
 #endif
 
 /* Return the portion of PATHNAME that should be output when listing
@@ -682,7 +719,7 @@ printable_part (pathname)
     return (pathname);
 
   temp = strrchr (pathname, '/');
-#if defined (__MSDOS__)
+#if defined (__MSDOS__) || defined (_WIN32)
   if (temp == 0 && ISALPHA ((unsigned char)pathname[0]) && pathname[1] == ':')
     temp = pathname + 1;
 #endif
@@ -765,6 +802,7 @@ fnprint (to_print, prefix_bytes)
 {
   int printed_len, w;
   const char *s;
+  int common_prefix_len;
 #if defined (HANDLE_MULTIBYTE)
   mbstate_t ps;
   const char *end;
@@ -776,14 +814,14 @@ fnprint (to_print, prefix_bytes)
   memset (&ps, 0, sizeof (mbstate_t));
 #endif
 
-  printed_len = 0;
+  printed_len = common_prefix_len = 0;
 
   /* Don't print only the ellipsis if the common prefix is one of the
      possible completions */
   if (to_print[prefix_bytes] == '\0')
     prefix_bytes = 0;
 
-  if (prefix_bytes)
+  if (prefix_bytes && _rl_completion_prefix_display_length > 0)
     {
       char ellipsis;
 
@@ -792,6 +830,15 @@ fnprint (to_print, prefix_bytes)
        putc (ellipsis, rl_outstream);
       printed_len = ELLIPSIS_LEN;
     }
+#if defined (COLOR_SUPPORT)
+  else if (prefix_bytes && _rl_colored_completion_prefix > 0)
+    {
+      common_prefix_len = prefix_bytes;
+      prefix_bytes = 0;
+      /* XXX - print color indicator start here */
+      colored_prefix_start ();
+    }
+#endif
 
   s = to_print + prefix_bytes;
   while (*s)
@@ -842,6 +889,13 @@ fnprint (to_print, prefix_bytes)
          printed_len++;
 #endif
        }
+      if (common_prefix_len > 0 && (s - to_print) >= common_prefix_len)
+       {
+         /* printed bytes = s - to_print */
+         /* printed bytes should never be > but check for paranoia's sake */
+         colored_prefix_end ();
+         common_prefix_len = 0;
+       }
     }
 
   return printed_len;
@@ -926,7 +980,7 @@ print_filename (to_print, full_pathname, prefix_bytes)
                {
                  dn = savestring (new_full_pathname);
                  (*rl_filename_stat_hook) (&dn);
-                 free (new_full_pathname);
+                 xfree (new_full_pathname);
                  new_full_pathname = dn;
                }
              if (path_isdir (new_full_pathname))
@@ -1502,7 +1556,7 @@ rl_display_match_list (matches, len, max)
   if (_rl_completion_prefix_display_length > 0)
     {
       t = printable_part (matches[0]);
-      temp = strrchr (t, '/');
+      temp = strrchr (t, '/');         /* check again in case of /usr/src/ */
       common_length = temp ? fnwidth (temp) : fnwidth (t);
       sind = temp ? strlen (temp) : strlen (t);
 
@@ -1511,6 +1565,15 @@ rl_display_match_list (matches, len, max)
       else
        common_length = sind = 0;
     }
+#if defined (COLOR_SUPPORT)
+  else if (_rl_colored_completion_prefix > 0)
+    {
+      t = printable_part (matches[0]);
+      temp = strrchr (t, '/');
+      common_length = temp ? fnwidth (temp) : fnwidth (t);
+      sind = temp ? RL_STRLEN (temp+1) : RL_STRLEN (t);                /* want portion after final slash */
+    }
+#endif
 
   /* How many items of MAX length can we fit in the screen window? */
   cols = complete_get_screenwidth ();
@@ -1563,6 +1626,12 @@ rl_display_match_list (matches, len, max)
              l += count;
            }
          rl_crlf ();
+#if defined (SIGWINCH)
+         if (RL_SIG_RECEIVED () && RL_SIGWINCH_RECEIVED() == 0)
+#else
+         if (RL_SIG_RECEIVED ())
+#endif
+           return;
          lines++;
          if (_rl_page_completions && lines >= (_rl_screenheight - 1) && i < count)
            {
@@ -1580,6 +1649,12 @@ rl_display_match_list (matches, len, max)
          temp = printable_part (matches[i]);
          printed_len = print_filename (temp, matches[i], sind);
          /* Have we reached the end of this line? */
+#if defined (SIGWINCH)
+         if (RL_SIG_RECEIVED () && RL_SIGWINCH_RECEIVED() == 0)
+#else
+         if (RL_SIG_RECEIVED ())
+#endif
+           return;
          if (matches[i+1])
            {
              if (limit == 1 || (i && (limit > 1) && (i % limit) == 0))
@@ -2044,8 +2119,16 @@ rl_complete_internal (what_to_do)
        {
          _rl_sigcleanup = _rl_complete_sigcleanup;
          _rl_sigcleanarg = matches;
+         _rl_complete_display_matches_interrupt = 0;
        }
       display_matches (matches);
+      if (_rl_complete_display_matches_interrupt)
+        {
+          matches = 0;         /* already freed by rl_complete_sigcleanup */
+          _rl_complete_display_matches_interrupt = 0;
+         if (rl_signal_event_hook)
+           (*rl_signal_event_hook) ();         /* XXX */
+        }
       _rl_sigcleanup = 0;
       _rl_sigcleanarg = 0;
       break;
@@ -2071,6 +2154,8 @@ rl_complete_internal (what_to_do)
 
   RL_UNSETSTATE(RL_STATE_COMPLETING);
   _rl_reset_completion_state ();
+
+  RL_CHECK_SIGNALS ();
   return 0;
 }
 
@@ -2370,6 +2455,7 @@ rl_filename_completion_function (text, state)
   static int filename_len;
   char *temp, *dentry, *convfn;
   int dirlen, dentlen, convlen;
+  int tilde_dirname;
   struct dirent *entry;
 
   /* If we don't have any state, then do some initialization. */
@@ -2393,7 +2479,7 @@ rl_filename_completion_function (text, state)
 
       temp = strrchr (dirname, '/');
 
-#if defined (__MSDOS__)
+#if defined (__MSDOS__) || defined (_WIN32)
       /* special hack for //X/... */
       if (dirname[0] == '/' && dirname[1] == '/' && ISALPHA ((unsigned char)dirname[2]) && dirname[3] == '/')
         temp = strrchr (dirname + 3, '/');
@@ -2404,7 +2490,7 @@ rl_filename_completion_function (text, state)
          strcpy (filename, ++temp);
          *temp = '\0';
        }
-#if defined (__MSDOS__)
+#if defined (__MSDOS__) || (defined (_WIN32) && !defined (__CYGWIN__))
       /* searches from current directory on the drive */
       else if (ISALPHA ((unsigned char)dirname[0]) && dirname[1] == ':')
         {
@@ -2427,11 +2513,13 @@ rl_filename_completion_function (text, state)
       else
        users_dirname = savestring (dirname);
 
+      tilde_dirname = 0;
       if (*dirname == '~')
        {
          temp = tilde_expand (dirname);
          xfree (dirname);
          dirname = temp;
+         tilde_dirname = 1;
        }
 
       /* We have saved the possibly-dequoted version of the directory name
@@ -2450,7 +2538,7 @@ rl_filename_completion_function (text, state)
          xfree (users_dirname);
          users_dirname = savestring (dirname);
        }
-      else if (rl_completion_found_quote && rl_filename_dequoting_function)
+      else if (tilde_dirname == 0 && rl_completion_found_quote && rl_filename_dequoting_function)
        {
          /* delete single and double quotes */
          xfree (dirname);
index a67e43e15262dfcf4237908ac1ab2181b356c59f..e5658c218e8a40d896ede134e5dadb8944000c13 100644 (file)
@@ -1,14 +1,21 @@
 /* config.h.in.  Maintained by hand. */
 
+/* Template definitions for autoconf */
+#undef __EXTENSIONS__
+#undef _ALL_SOURCE
+#undef _GNU_SOURCE
+#undef _POSIX_SOURCE
+#undef _POSIX_1_SOURCE
+#undef _POSIX_PTHREAD_SEMANTICS
+#undef _TANDEM_SOURCE
+#undef _MINIX
+
 /* Define NO_MULTIBYTE_SUPPORT to not compile in support for multibyte
    characters, even if the OS supports them. */
 #undef NO_MULTIBYTE_SUPPORT
 
 #undef _FILE_OFFSET_BITS
 
-/* Define if on MINIX.  */
-#undef _MINIX
-
 /* Define as the return type of signal handlers (int or void).  */
 #undef RETSIGTYPE
 
 #undef volatile
 
 #undef PROTOTYPES
+#undef __PROTOTYPES
 
 #undef __CHAR_UNSIGNED__
 
 /* Define if the `S_IS*' macros in <sys/stat.h> do not work properly.  */
 #undef STAT_MACROS_BROKEN
 
+/* Define if you have the chown function. */
+#undef HAVE_CHOWN
+
 /* Define if you have the fcntl function. */
 #undef HAVE_FCNTL
 
 /* Define if you have the memmove function. */
 #undef HAVE_MEMMOVE
 
+/* Define if you have the pselect function.  */
+#undef HAVE_PSELECT
+
 /* Define if you have the putenv function.  */
 #undef HAVE_PUTENV
 
+/* Define if you have the readlink function.  */
+#undef HAVE_READLINK
+
 /* Define if you have the select function.  */
 #undef HAVE_SELECT
 
 /* Define if you have the <ndir.h> header file.  */
 #undef HAVE_NDIR_H
 
+/* Define if you have the <ncurses/termcap.h> header file.  */
+#undef HAVE_NCURSES_TERMCAP_H
+
 /* Define if you have the <pwd.h> header file.  */
 #undef HAVE_PWD_H
 
 /* Define if you have the <sys/file.h> header file.  */
 #undef HAVE_SYS_FILE_H
 
+/* Define if you have the <sys/ioctl.h> header file.  */
+#undef HAVE_SYS_IOCTL_H
+
 /* Define if you have the <sys/ndir.h> header file.  */
 #undef HAVE_SYS_NDIR_H
 
 
 #undef HAVE_GETPW_DECLS
 
-#undef STRUCT_DIRENT_HAS_D_INO
+#undef HAVE_STRUCT_DIRENT_D_INO
+
+#undef HAVE_STRUCT_DIRENT_D_FILENO
 
-#undef STRUCT_DIRENT_HAS_D_FILENO
+#undef HAVE_STRUCT_DIRENT_D_NAMLEN
 
 #undef HAVE_BSD_SIGNALS
 
index f11ee25b131ae1e6a5b942a159a812a58968d984..1d80b940e9d168cd393b55d7007b08f17abd858a 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,14 +1,12 @@
 #! /bin/sh
-# From configure.ac for Readline 6.3, version 2.73.
+# From configure.ac for Readline 7.0, version 2.80.
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for readline 6.3.
+# Generated by GNU Autoconf 2.69 for readline 7.0.
 #
 # Report bugs to <bug-readline@gnu.org>.
 #
 #
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -137,6 +135,31 @@ export LANGUAGE
 # CDPATH.
 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Use a proper internal environment variable to ensure we don't fall
+  # into an infinite loop, continuously re-executing ourselves.
+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+    _as_can_reexec=no; export _as_can_reexec;
+    # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+  fi
+  # We don't want this to propagate to other subprocesses.
+          { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
   as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
@@ -170,7 +193,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
 else
   exitcode=1; echo positional parameters were not saved.
 fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -215,21 +239,25 @@ IFS=$as_save_IFS
 
 
       if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-       # neutralization value for shells without unset; and this also
-       # works around shells that cannot unset nonexistent variables.
-       # Preserve -v and -x to the replacement shell.
-       BASH_ENV=/dev/null
-       ENV=/dev/null
-       (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-       export CONFIG_SHELL
-       case $- in # ((((
-         *v*x* | *x*v* ) as_opts=-vx ;;
-         *v* ) as_opts=-v ;;
-         *x* ) as_opts=-x ;;
-         * ) as_opts= ;;
-       esac
-       exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
+  export CONFIG_SHELL
+             # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
 fi
 
     if test x$as_have_required = xno; then :
@@ -332,6 +360,14 @@ $as_echo X"$as_dir" |
 
 
 } # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -453,6 +489,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   chmod +x "$as_me.lineno" ||
     { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+  # already done that, so ensure we don't try to do so again and fall
+  # in an infinite loop.  This has already happened in practice.
+  _as_can_reexec=no; export _as_can_reexec
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
   # original and so on.  Autoconf is especially sensitive to this).
@@ -487,16 +527,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -508,28 +548,8 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in #(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -561,8 +581,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='readline'
 PACKAGE_TARNAME='readline'
-PACKAGE_VERSION='6.3'
-PACKAGE_STRING='readline 6.3'
+PACKAGE_VERSION='7.0'
+PACKAGE_STRING='readline 7.0'
 PACKAGE_BUGREPORT='bug-readline@gnu.org'
 PACKAGE_URL=''
 
@@ -1172,8 +1192,6 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1259,7 +1277,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures readline 6.3 to adapt to many kinds of systems.
+\`configure' configures readline 7.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1324,7 +1342,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of readline 6.3:";;
+     short | recursive ) echo "Configuration of readline 7.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1420,10 +1438,10 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-readline configure 6.3
-generated by GNU Autoconf 2.68
+readline configure 7.0
+generated by GNU Autoconf 2.69
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1754,7 +1772,7 @@ $as_echo "$ac_try_echo"; } >&5
         test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
         test "$cross_compiling" = yes ||
-        $as_test_x conftest$ac_exeext
+        test -x conftest$ac_exeext
        }; then :
   ac_retval=0
 else
@@ -1889,8 +1907,8 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by readline $as_me 6.3, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+It was created by readline $as_me 7.0, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
 
@@ -2273,7 +2291,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 ac_config_headers="$ac_config_headers config.h"
 
 
-LIBVERSION=6.3
+LIBVERSION=7.0
 
 # Make sure we can run config.sub.
 $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
@@ -2485,7 +2503,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2525,7 +2543,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2578,7 +2596,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2619,7 +2637,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
@@ -2677,7 +2695,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2721,7 +2739,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3167,8 +3185,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
 struct buf { int x; };
 FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -3408,7 +3425,7 @@ do
     for ac_prog in grep ggrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+      as_fn_executable_p "$ac_path_GREP" || continue
 # Check for GNU ac_path_GREP and select it if it is found.
   # Check for GNU $ac_path_GREP
 case `"$ac_path_GREP" --version 2>&1` in
@@ -3474,7 +3491,7 @@ do
     for ac_prog in egrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+      as_fn_executable_p "$ac_path_EGREP" || continue
 # Check for GNU ac_path_EGREP and select it if it is found.
   # Check for GNU $ac_path_EGREP
 case `"$ac_path_EGREP" --version 2>&1` in
@@ -3681,8 +3698,8 @@ else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-#        define __EXTENSIONS__ 1
-         $ac_includes_default
+#         define __EXTENSIONS__ 1
+          $ac_includes_default
 int
 main ()
 {
@@ -3796,7 +3813,7 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+       if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
          if test $ac_prog = install &&
            grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
            # AIX install.  It has an incompatible calling convention.
@@ -3869,7 +3886,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_AR="${ac_tool_prefix}ar"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3909,7 +3926,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_AR="ar"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3962,7 +3979,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -4002,7 +4019,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_RANLIB="ranlib"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -4052,11 +4069,11 @@ else
 int
 main ()
 {
-/* FIXME: Include the comments suggested by Paul. */
+
 #ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
+  /* Ultrix mips cc rejects this sort of thing.  */
   typedef int charset[2];
-  const charset cs;
+  const charset cs = { 0, 0 };
   /* SunOS 4.1.1 cc rejects this.  */
   char const *const *pcpcc;
   char **ppc;
@@ -4073,8 +4090,9 @@ main ()
   ++pcpcc;
   ppc = (char**) pcpcc;
   pcpcc = (char const *const *) ppc;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
+  { /* SCO 3.2v4 cc rejects this sort of thing.  */
+    char tx;
+    char *t = &tx;
     char const *s = 0 ? (char *) 0 : (char const *) 0;
 
     *t++ = 0;
@@ -4090,10 +4108,10 @@ main ()
     iptr p = 0;
     ++p;
   }
-  { /* AIX XL C 1.02.0.0 rejects this saying
+  { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
        "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
+    struct s { int j; const int *ap[3]; } bx;
+    struct s *b = &bx; b->j = 5;
   }
   { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
     const int foo = 10;
@@ -4149,7 +4167,8 @@ int
 main ()
 {
 static int test_array [1 - 2 * !(((char) -1) < 0)];
-test_array [0] = 0
+test_array [0] = 0;
+return test_array [0];
 
   ;
   return 0;
@@ -4575,7 +4594,7 @@ fi
 fi
 
 
-for ac_func in fcntl kill lstat
+for ac_func in fcntl kill lstat readlink
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -4587,7 +4606,7 @@ _ACEOF
 fi
 done
 
-for ac_func in memmove putenv select setenv setlocale \
+for ac_func in memmove pselect putenv select setenv setlocale \
                strcasecmp strpbrk tcgetattr vsnprintf
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
@@ -4625,6 +4644,101 @@ fi
 done
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
+$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
+if ${ac_cv_type_uid_t+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sys/types.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "uid_t" >/dev/null 2>&1; then :
+  ac_cv_type_uid_t=yes
+else
+  ac_cv_type_uid_t=no
+fi
+rm -f conftest*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
+$as_echo "$ac_cv_type_uid_t" >&6; }
+if test $ac_cv_type_uid_t = no; then
+
+$as_echo "#define uid_t int" >>confdefs.h
+
+
+$as_echo "#define gid_t int" >>confdefs.h
+
+fi
+
+for ac_header in unistd.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$ac_includes_default"
+if test "x$ac_cv_header_unistd_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_UNISTD_H 1
+_ACEOF
+
+fi
+
+done
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working chown" >&5
+$as_echo_n "checking for working chown... " >&6; }
+if ${ac_cv_func_chown_works+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "$cross_compiling" = yes; then :
+  ac_cv_func_chown_works=no
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_includes_default
+#include <fcntl.h>
+
+int
+main ()
+{
+  char *f = "conftest.chown";
+  struct stat before, after;
+
+  if (creat (f, 0600) < 0)
+    return 1;
+  if (stat (f, &before) < 0)
+    return 1;
+  if (chown (f, (uid_t) -1, (gid_t) -1) == -1)
+    return 1;
+  if (stat (f, &after) < 0)
+    return 1;
+  return ! (before.st_uid == after.st_uid && before.st_gid == after.st_gid);
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  ac_cv_func_chown_works=yes
+else
+  ac_cv_func_chown_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+rm -f conftest.chown
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_chown_works" >&5
+$as_echo "$ac_cv_func_chown_works" >&6; }
+if test $ac_cv_func_chown_works = yes; then
+
+$as_echo "#define HAVE_CHOWN 1" >>confdefs.h
+
+fi
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strcoll" >&5
 $as_echo_n "checking for working strcoll... " >&6; }
 if ${ac_cv_func_strcoll_works+:} false; then :
@@ -4680,7 +4794,7 @@ fi
 
 done
 
-for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h
+for ac_header in sys/ioctl.h sys/pte.h sys/stream.h sys/select.h sys/file.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -4908,6 +5022,8 @@ _ACEOF
 esac
 rm -rf conftest*
   fi
+
+
 fi
 
 
@@ -5996,6 +6112,21 @@ if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
                TERMCAP_LIB=-ltermcap   #default
        fi
 fi
+# Windows ncurses installation
+if test "$TERMCAP_LIB" = "-lncurses"; then
+       for ac_header in ncurses/termcap.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "ncurses/termcap.h" "ac_cv_header_ncurses_termcap_h" "$ac_includes_default"
+if test "x$ac_cv_header_ncurses_termcap_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_NCURSES_TERMCAP_H 1
+_ACEOF
+
+fi
+
+done
+
+fi
 
 
 for ac_header in wctype.h
@@ -6035,6 +6166,19 @@ fi
 done
 
 
+for ac_header in mbstr.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "mbstr.h" "ac_cv_header_mbstr_h" "$ac_includes_default"
+if test "x$ac_cv_header_mbstr_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_MBSTR_H 1
+_ACEOF
+
+fi
+
+done
+
+
 ac_fn_c_check_func "$LINENO" "mbrlen" "ac_cv_func_mbrlen"
 if test "x$ac_cv_func_mbrlen" = xyes; then :
   $as_echo "#define HAVE_MBRLEN 1" >>confdefs.h
@@ -6322,10 +6466,7 @@ if ${bash_cv_wcwidth_broken+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
+  bash_cv_wcwidth_broken=no
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6352,7 +6493,7 @@ _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
   bash_cv_wcwidth_broken=yes
 else
-  bash_cv_wcwdith_broken=no
+  bash_cv_wcwidth_broken=no
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
@@ -6369,7 +6510,7 @@ fi
 
 if test "$am_cv_func_iconv" = yes; then
        OLDLIBS="$LIBS"
-       LIBS="$LIBS $LIBICONV"
+       LIBS="$LIBS $LIBINTL $LIBICONV"
        for ac_func in locale_charset
 do :
   ac_fn_c_check_func "$LINENO" "locale_charset" "ac_cv_func_locale_charset"
@@ -6484,7 +6625,7 @@ esac
 
 
 
-ac_config_files="$ac_config_files Makefile doc/Makefile examples/Makefile shlib/Makefile"
+ac_config_files="$ac_config_files Makefile doc/Makefile examples/Makefile shlib/Makefile readline.pc"
 
 ac_config_commands="$ac_config_commands default"
 
@@ -6895,16 +7036,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -6964,28 +7105,16 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in #(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -7006,8 +7135,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by readline $as_me 6.3, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+This file was extended by readline $as_me 7.0, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -7072,11 +7201,11 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-readline config.status 6.3
-configured by $0, generated by GNU Autoconf 2.68,
+readline config.status 7.0
+configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -7165,7 +7294,7 @@ fi
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
   \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
@@ -7199,6 +7328,7 @@ do
     "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
     "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
     "shlib/Makefile") CONFIG_FILES="$CONFIG_FILES shlib/Makefile" ;;
+    "readline.pc") CONFIG_FILES="$CONFIG_FILES readline.pc" ;;
     "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
 
   *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
index cea8f91ef9f05d0b74c3b7a5d6875a142d83149e..42e21fa475e9af89875a45342ef8d6a205a3263d 100644 (file)
@@ -5,7 +5,7 @@ dnl report bugs to chet@po.cwru.edu
 dnl
 dnl Process this file with autoconf to produce a configure script.
 
-# Copyright (C) 1987-2014 Free Software Foundation, Inc.
+# Copyright (C) 1987-2015 Free Software Foundation, Inc.
 
 #   This program is free software: you can redistribute it and/or modify
 #   it under the terms of the GNU General Public License as published by
@@ -20,9 +20,9 @@ dnl Process this file with autoconf to produce a configure script.
 #   You should have received a copy of the GNU General Public License
 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-AC_REVISION([for Readline 6.3, version 2.73])
+AC_REVISION([for Readline 7.0, version 2.80])
 
-AC_INIT(readline, 6.3, bug-readline@gnu.org)
+AC_INIT(readline, 7.0, bug-readline@gnu.org)
 
 dnl make sure we are using a recent autoconf version
 AC_PREREQ(2.50)
@@ -32,7 +32,7 @@ AC_CONFIG_AUX_DIR(./support)
 AC_CONFIG_HEADERS(config.h)
 
 dnl update the value of RL_READLINE_VERSION in readline.h when this changes
-LIBVERSION=6.3
+LIBVERSION=7.0
 
 AC_CANONICAL_HOST
 AC_CANONICAL_BUILD
@@ -139,18 +139,19 @@ AC_HEADER_STDC
 AC_HEADER_STAT
 AC_HEADER_DIRENT
 
-AC_CHECK_FUNCS(fcntl kill lstat)
-AC_CHECK_FUNCS(memmove putenv select setenv setlocale \
+AC_CHECK_FUNCS(fcntl kill lstat readlink)
+AC_CHECK_FUNCS(memmove pselect putenv select setenv setlocale \
                strcasecmp strpbrk tcgetattr vsnprintf)
 AC_CHECK_FUNCS(isascii isxdigit)
 AC_CHECK_FUNCS(getpwent getpwnam getpwuid)
 
+AC_FUNC_CHOWN
 AC_FUNC_STRCOLL
 
 AC_CHECK_HEADERS(fcntl.h unistd.h stdlib.h varargs.h stdarg.h stdbool.h \
                string.h strings.h \
                limits.h locale.h pwd.h memory.h termcap.h termios.h termio.h)
-AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h)
+AC_CHECK_HEADERS(sys/ioctl.h sys/pte.h sys/stream.h sys/select.h sys/file.h)
 
 AC_CHECK_HEADERS(sys/ptem.h,,,
 [[
@@ -197,6 +198,10 @@ if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
                TERMCAP_LIB=-ltermcap   #default
        fi
 fi
+# Windows ncurses installation
+if test "$TERMCAP_LIB" = "-lncurses"; then
+       AC_CHECK_HEADERS(ncurses/termcap.h)
+fi
 
 BASH_CHECK_MULTIBYTE
 
@@ -296,7 +301,7 @@ AC_SUBST(LIBVERSION)
 
 AC_SUBST(TERMCAP_LIB)
 
-AC_OUTPUT([Makefile doc/Makefile examples/Makefile shlib/Makefile],
+AC_OUTPUT([Makefile doc/Makefile examples/Makefile shlib/Makefile readline.pc],
 [
 # Makefile uses this timestamp file to record whether config.h is up to date.
 echo > stamp-h
index 4df1f734bec73d6405d60a9b49690ab0da4bb3f5..c6b14fb56051301787044ab4cf51245281285d67 100644 (file)
--- a/display.c
+++ b/display.c
@@ -69,6 +69,12 @@ static void delete_chars PARAMS((int));
 static void insert_some_chars PARAMS((char *, int, int));
 static void open_some_spaces PARAMS((int));
 static void cr PARAMS((void));
+static void redraw_prompt PARAMS((char *));
+
+/* Values for FLAGS */
+#define PMT_MULTILINE  0x01
+
+static char *expand_prompt PARAMS((char *, int, int *, int *, int *, int *));
 
 /* State of visible and invisible lines. */
 struct line_state
@@ -158,6 +164,16 @@ int _rl_want_redisplay = 0;
    This is usually pointing to rl_prompt. */
 char *rl_display_prompt = (char *)NULL;
 
+/* Variables used to include the editing mode in the prompt. */
+char *_rl_emacs_mode_str;
+int _rl_emacs_modestr_len;
+
+char *_rl_vi_ins_mode_str;
+int _rl_vi_ins_modestr_len;
+
+char *_rl_vi_cmd_mode_str;
+int _rl_vi_cmd_modestr_len;
+
 /* Pseudo-global variables declared here. */
 
 /* The visible cursor position.  If you print some text, adjust this. */
@@ -239,16 +255,30 @@ static int saved_local_length;
 static int saved_invis_chars_first_line;
 static int saved_physical_chars;
 
-/* Return a character indicating the editing mode, for use in the prompt. */
-static int
-prompt_modechar ()
+/* Return a string indicating the editing mode, for use in the prompt. */
+
+static char *
+prompt_modestr (lenp)
+     int *lenp;
 {
   if (rl_editing_mode == emacs_mode)
-    return '@';
+    {
+      if (lenp)
+       *lenp = _rl_emacs_mode_str ? _rl_emacs_modestr_len : RL_EMACS_MODESTR_DEFLEN;
+      return _rl_emacs_mode_str ? _rl_emacs_mode_str : RL_EMACS_MODESTR_DEFAULT;
+    }
   else if (_rl_keymap == vi_insertion_keymap)
-    return '+';                /* vi insert mode */
+    {
+      if (lenp)
+       *lenp = _rl_vi_ins_mode_str ? _rl_vi_ins_modestr_len : RL_VI_INS_MODESTR_DEFLEN;
+      return _rl_vi_ins_mode_str ? _rl_vi_ins_mode_str : RL_VI_INS_MODESTR_DEFAULT;            /* vi insert mode */
+    }
   else
-    return ':';                /* vi command mode */
+    {
+      if (lenp)
+       *lenp = _rl_vi_cmd_mode_str ? _rl_vi_cmd_modestr_len : RL_VI_CMD_MODESTR_DEFLEN;
+      return _rl_vi_cmd_mode_str ? _rl_vi_cmd_mode_str : RL_VI_CMD_MODESTR_DEFAULT;            /* vi command mode */
+    }
 }
 
 /* Expand the prompt string S and return the number of visible
@@ -266,26 +296,37 @@ prompt_modechar ()
    the returned string; all characters except those between \001 and
    \002 are assumed to be `visible'. */        
 
+/* Possible values for FLAGS:
+       PMT_MULTILINE   caller indicates that this is part of a multiline prompt
+*/
+
 static char *
-expand_prompt (pmt, lp, lip, niflp, vlp)
+expand_prompt (pmt, flags, lp, lip, niflp, vlp)
      char *pmt;
+     int flags;
      int *lp, *lip, *niflp, *vlp;
 {
-  char *r, *ret, *p, *igstart;
+  char *r, *ret, *p, *igstart, *nprompt, *ms;
   int l, rl, last, ignoring, ninvis, invfl, invflset, ind, pind, physchars;
+  int mlen;
+
+  /* We only expand the mode string for the last line of a multiline prompt
+     (a prompt with embedded newlines). */
+  ms = (((pmt == rl_prompt) ^ (flags & PMT_MULTILINE)) && _rl_show_mode_in_prompt) ? prompt_modestr (&mlen) : 0;
+  if (ms)
+    {
+      l = strlen (pmt);
+      nprompt = (char *)xmalloc (l + mlen + 1);
+      memcpy (nprompt, ms, mlen);
+      strcpy (nprompt + mlen, pmt);
+    }
+  else
+    nprompt = pmt;
 
   /* Short-circuit if we can. */
-  if ((MB_CUR_MAX <= 1 || rl_byte_oriented) && strchr (pmt, RL_PROMPT_START_IGNORE) == 0)
-    {
-      if (pmt == rl_prompt && _rl_show_mode_in_prompt)
-        {
-          l = strlen (pmt);
-          r = (char *)xmalloc (l + 2);
-          r[0] = prompt_modechar ();
-          strcpy (r + 1, pmt);
-        }
-      else
-       r = savestring (pmt);
+  if ((MB_CUR_MAX <= 1 || rl_byte_oriented) && strchr (nprompt, RL_PROMPT_START_IGNORE) == 0)
+    {
+      r = (nprompt == pmt) ? savestring (pmt) : nprompt;
 
       if (lp)
        *lp = strlen (r);
@@ -298,21 +339,15 @@ expand_prompt (pmt, lp, lip, niflp, vlp)
       return r;
     }
 
-  l = strlen (pmt);
-  r = ret = (char *)xmalloc (l + 2);
-
-  rl = physchars = 0;  /* move up here so mode show can set them */
-  if (pmt == rl_prompt && _rl_show_mode_in_prompt)
-    {
-      *r++ = prompt_modechar ();
-      rl = physchars = 1;
-    }
+  l = strlen (nprompt);                        /* XXX */
+  r = ret = (char *)xmalloc (l + 1);
 
+  rl = physchars = 0;  /* mode string now part of nprompt */
   invfl = 0;   /* invisible chars in first line of prompt */
   invflset = 0;        /* we only want to set invfl once */
-
   igstart = 0;
-  for (ignoring = last = ninvis = 0, p = pmt; p && *p; p++)
+
+  for (ignoring = last = ninvis = 0, p = nprompt; p && *p; p++)
     {
       /* This code strips the invisible character string markers
         RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE */
@@ -334,8 +369,8 @@ expand_prompt (pmt, lp, lip, niflp, vlp)
 #if defined (HANDLE_MULTIBYTE)
          if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
            {
-             pind = p - pmt;
-             ind = _rl_find_next_mbchar (pmt, pind, 1, MB_FIND_NONZERO);
+             pind = p - nprompt;
+             ind = _rl_find_next_mbchar (nprompt, pind, 1, MB_FIND_NONZERO);
              l = ind - pind;
              while (l--)
                *r++ = *p++;
@@ -347,7 +382,7 @@ expand_prompt (pmt, lp, lip, niflp, vlp)
                     not be the same as the number of physical characters
                     on the screen in the presence of multibyte characters */
                  rl += ind - pind;
-                 physchars += _rl_col_width (pmt, pind, ind, 0);
+                 physchars += _rl_col_width (nprompt, pind, ind, 0);
                }
              else
                ninvis += ind - pind;
@@ -386,6 +421,10 @@ expand_prompt (pmt, lp, lip, niflp, vlp)
     *niflp = invfl;
   if  (vlp)
     *vlp = physchars;
+
+  if (nprompt != pmt)
+    free (nprompt);
+
   return ret;
 }
 
@@ -397,7 +436,7 @@ _rl_strip_prompt (pmt)
 {
   char *ret;
 
-  ret = expand_prompt (pmt, (int *)NULL, (int *)NULL, (int *)NULL, (int *)NULL);
+  ret = expand_prompt (pmt, 0, (int *)NULL, (int *)NULL, (int *)NULL, (int *)NULL);
   return ret;
 }
 
@@ -444,13 +483,13 @@ rl_expand_prompt (prompt)
     return (0);
 
   p = strrchr (prompt, '\n');
-  if (!p)
+  if (p == 0)
     {
       /* The prompt is only one logical line, though it might wrap. */
-      local_prompt = expand_prompt (prompt, &prompt_visible_length,
-                                           &prompt_last_invisible,
-                                           &prompt_invis_chars_first_line,
-                                           &prompt_physical_chars);
+      local_prompt = expand_prompt (prompt, 0, &prompt_visible_length,
+                                              &prompt_last_invisible,
+                                              &prompt_invis_chars_first_line,
+                                              &prompt_physical_chars);
       local_prompt_prefix = (char *)0;
       local_prompt_len = local_prompt ? strlen (local_prompt) : 0;
       return (prompt_visible_length);
@@ -459,14 +498,16 @@ rl_expand_prompt (prompt)
     {
       /* The prompt spans multiple lines. */
       t = ++p;
-      local_prompt = expand_prompt (p, &prompt_visible_length,
+      local_prompt = expand_prompt (p, PMT_MULTILINE,
+                                      &prompt_visible_length,
                                       &prompt_last_invisible,
                                       &prompt_invis_chars_first_line,
                                       &prompt_physical_chars);
       c = *t; *t = '\0';
       /* The portion of the prompt string up to and including the
         final newline is now null-terminated. */
-      local_prompt_prefix = expand_prompt (prompt, &prompt_prefix_length,
+      local_prompt_prefix = expand_prompt (prompt, PMT_MULTILINE,
+                                                  &prompt_prefix_length,
                                                   (int *)NULL,
                                                   (int *)NULL,
                                                   (int *)NULL);
@@ -545,6 +586,7 @@ rl_redisplay ()
   int wc_width;
   mbstate_t ps;
   int _rl_wrapped_multicolumn = 0;
+  int mb_cur_max = MB_CUR_MAX;
 #endif
 
   if (_rl_echoing_p == 0)
@@ -714,7 +756,7 @@ rl_redisplay ()
      contents of the command line? */
   while (lpos >= _rl_screenwidth)
     {
-      int z;
+      int z, p;
       /* fix from Darin Johnson <darin@acuson.com> for prompt string with
          invisible characters that is longer than the screen width.  The
          prompt_invis_chars_first_line variable could be made into an array
@@ -723,7 +765,7 @@ rl_redisplay ()
          prompts that exceed two physical lines?
          Additional logic fix from Edward Catmur <ed@catmur.co.uk> */
 #if defined (HANDLE_MULTIBYTE)
-      if (MB_CUR_MAX > 1 && rl_byte_oriented == 0 && prompt_multibyte_chars > 0)
+      if (mb_cur_max > 1 && rl_byte_oriented == 0 && prompt_multibyte_chars > 0)
        {
          n0 = num;
           temp = local_prompt_len;
@@ -736,7 +778,15 @@ rl_redisplay ()
                  break;
                }
              else if (z == _rl_screenwidth)
-               break;
+               {
+                 /* If we are in the middle or at the end of a multibyte
+                    character, we want to move to the start, then find out
+                    where it ends so we know where to insert the newline.
+                    If this isn't a multibyte character, its the same as num++ */
+                 p = _rl_find_prev_mbchar (local_prompt, num, MB_FIND_ANY);
+                 num = _rl_find_next_mbchar (local_prompt, p, 1, MB_FIND_ANY);
+                 break;
+               }
              num++;
            }
           temp = num;
@@ -753,7 +803,7 @@ rl_redisplay ()
 
       inv_lbreaks[++newlines] = temp;
 #if defined (HANDLE_MULTIBYTE)
-      if (MB_CUR_MAX > 1 && rl_byte_oriented == 0 && prompt_multibyte_chars > 0)
+      if (mb_cur_max > 1 && rl_byte_oriented == 0 && prompt_multibyte_chars > 0)
        lpos -= _rl_col_width (local_prompt, n0, num, 1);
       else
 #endif
@@ -770,7 +820,7 @@ rl_redisplay ()
   lb_linenum = 0;
 #if defined (HANDLE_MULTIBYTE)
   in = 0;
-  if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+  if (mb_cur_max > 1 && rl_byte_oriented == 0)
     {
       memset (&ps, 0, sizeof (mbstate_t));
       /* XXX - what if wc_bytes ends up <= 0? check for MB_INVALIDCH */
@@ -786,7 +836,7 @@ rl_redisplay ()
       c = (unsigned char)rl_line_buffer[in];
 
 #if defined (HANDLE_MULTIBYTE)
-      if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+      if (mb_cur_max > 1 && rl_byte_oriented == 0)
        {
          if (MB_INVALIDCH (wc_bytes))
            {
@@ -895,7 +945,7 @@ rl_redisplay ()
       else
        {
 #if defined (HANDLE_MULTIBYTE)
-         if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+         if (mb_cur_max > 1 && rl_byte_oriented == 0)
            {
              register int i;
 
@@ -931,7 +981,7 @@ rl_redisplay ()
        }
 
 #if defined (HANDLE_MULTIBYTE)
-      if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+      if (mb_cur_max > 1 && rl_byte_oriented == 0)
        {
          in += wc_bytes;
          /* XXX - what if wc_bytes ends up <= 0? check for MB_INVALIDCH */
@@ -979,7 +1029,7 @@ rl_redisplay ()
             not the first.  */
          if (out >= _rl_screenchars)
            {
-             if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+             if (mb_cur_max > 1 && rl_byte_oriented == 0)
                out = _rl_find_prev_mbchar (line, _rl_screenchars, MB_FIND_ANY);
              else
                out = _rl_screenchars - 1;
@@ -1027,15 +1077,15 @@ rl_redisplay ()
                 time update_line is called, then we can assume in our
                 calculations that o_cpos does not need to be adjusted by
                 wrap_offset. */
-             if (linenum == 0 && (MB_CUR_MAX > 1 && rl_byte_oriented == 0) && OLD_CPOS_IN_PROMPT())
+             if (linenum == 0 && (mb_cur_max > 1 && rl_byte_oriented == 0) && OLD_CPOS_IN_PROMPT())
                _rl_last_c_pos -= prompt_invis_chars_first_line;        /* XXX - was wrap_offset */
              else if (linenum == prompt_last_screen_line && prompt_physical_chars > _rl_screenwidth &&
-                       (MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
+                       (mb_cur_max > 1 && rl_byte_oriented == 0) &&
                        cpos_adjusted == 0 &&
                        _rl_last_c_pos != o_cpos &&
                        _rl_last_c_pos > (prompt_last_invisible - _rl_screenwidth - prompt_invis_chars_first_line))
                _rl_last_c_pos -= (wrap_offset-prompt_invis_chars_first_line);
-                 
+
              /* If this is the line with the prompt, we might need to
                 compensate for invisible characters in the new line. Do
                 this only if there is not more than one new line (which
@@ -1047,7 +1097,7 @@ rl_redisplay ()
                  (wrap_offset > visible_wrap_offset) &&
                  (_rl_last_c_pos < visible_first_line_len))
                {
-                 if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+                 if (mb_cur_max > 1 && rl_byte_oriented == 0)
                    nleft = _rl_screenwidth - _rl_last_c_pos;
                  else
                    nleft = _rl_screenwidth + wrap_offset - _rl_last_c_pos;
@@ -1099,7 +1149,7 @@ rl_redisplay ()
                 the physical cursor position on the screen stays the same,
                 but the buffer position needs to be adjusted to account
                 for invisible characters. */
-             if ((MB_CUR_MAX == 1 || rl_byte_oriented) && cursor_linenum == 0 && wrap_offset)
+             if ((mb_cur_max == 1 || rl_byte_oriented) && cursor_linenum == 0 && wrap_offset)
                _rl_last_c_pos += wrap_offset;
            }
 
@@ -1126,7 +1176,7 @@ rl_redisplay ()
                _rl_output_some_chars ("*", 1);
 
              _rl_output_some_chars (local_prompt, nleft);
-             if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+             if (mb_cur_max > 1 && rl_byte_oriented == 0)
                _rl_last_c_pos = _rl_col_width (local_prompt, 0, nleft, 1) - wrap_offset + modmark;
              else
                _rl_last_c_pos = nleft + modmark;
@@ -1150,7 +1200,7 @@ rl_redisplay ()
          if (wrap_offset && cursor_linenum == 0 && nleft < _rl_last_c_pos)
            {
              /* TX == new physical cursor position in multibyte locale. */
-             if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+             if (mb_cur_max > 1 && rl_byte_oriented == 0)
                tx = _rl_col_width (&visible_line[pos], 0, nleft, 1) - visible_wrap_offset;
              else
                tx = nleft;
@@ -1165,7 +1215,7 @@ rl_redisplay ()
             _rl_last_c_pos as an absolute cursor position, but moving to a
             point specified by a buffer position (NLEFT) that doesn't take
             invisible characters into account. */
-         if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+         if (mb_cur_max > 1 && rl_byte_oriented == 0)
            _rl_move_cursor_relative (nleft, &invisible_line[pos]);
          else if (nleft != _rl_last_c_pos)
            _rl_move_cursor_relative (nleft, &invisible_line[pos]);
@@ -1246,7 +1296,7 @@ rl_redisplay ()
                       _rl_screenwidth + (lmargin ? 0 : wrap_offset),
                       0);
 
-         if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
+         if ((mb_cur_max > 1 && rl_byte_oriented == 0) &&
                displaying_prompt_first_line && OLD_CPOS_IN_PROMPT())
            _rl_last_c_pos -= prompt_invis_chars_first_line;    /* XXX - was wrap_offset */
 
@@ -1972,6 +2022,19 @@ rl_forced_update_display ()
   return 0;
 }
 
+/* Redraw only the last line of a multi-line prompt. */
+void
+rl_redraw_prompt_last_line ()
+{
+  char *t;
+
+  t = strrchr (rl_display_prompt, '\n');
+  if (t)
+    redraw_prompt (++t);
+  else
+    rl_forced_update_display ();
+}
+
 /* Move the cursor from _rl_last_c_pos to NEW, which are buffer indices.
    (Well, when we don't have multibyte characters, _rl_last_c_pos is a
    buffer index.)
@@ -2246,7 +2309,7 @@ rl_message (va_alist)
     msg_buf = xmalloc (msg_bufsiz = 128);
 
 #if defined (HAVE_VSNPRINTF)
-  bneed = vsnprintf (msg_buf, msg_bufsiz - 1, format, args);
+  bneed = vsnprintf (msg_buf, msg_bufsiz, format, args);
   if (bneed >= msg_bufsiz - 1)
     {
       msg_bufsiz = bneed + 1;
@@ -2279,10 +2342,10 @@ rl_message (va_alist)
       local_prompt = (char *)NULL;
     }
   rl_display_prompt = msg_buf;
-  local_prompt = expand_prompt (msg_buf, &prompt_visible_length,
-                                        &prompt_last_invisible,
-                                        &prompt_invis_chars_first_line,
-                                        &prompt_physical_chars);
+  local_prompt = expand_prompt (msg_buf, 0, &prompt_visible_length,
+                                           &prompt_last_invisible,
+                                           &prompt_invis_chars_first_line,
+                                           &prompt_physical_chars);
   local_prompt_prefix = (char *)NULL;
   local_prompt_len = local_prompt ? strlen (local_prompt) : 0;
   (*rl_redisplay_function) ();
@@ -2312,10 +2375,10 @@ rl_message (format, arg1, arg2)
       FREE (local_prompt_prefix);
       local_prompt = (char *)NULL;
     }
-  local_prompt = expand_prompt (msg_buf, &prompt_visible_length,
-                                        &prompt_last_invisible,
-                                        &prompt_invis_chars_first_line,
-                                        &prompt_physical_chars);
+  local_prompt = expand_prompt (msg_buf, 0, &prompt_visible_length,
+                                           &prompt_last_invisible,
+                                           &prompt_invis_chars_first_line,
+                                           &prompt_physical_chars);
   local_prompt_prefix = (char *)NULL;
   local_prompt_len = local_prompt ? strlen (local_prompt) : 0;
   (*rl_redisplay_function) ();
@@ -2502,7 +2565,7 @@ static void
 open_some_spaces (col)
      int col;
 {
-#if !defined (__MSDOS__) && !defined (__MINGW32__)
+#if !defined (__MSDOS__) && (!defined (__MINGW32__) || defined (NCURSES_VERSION))
   char *buffer;
   register int i;
 
@@ -2531,7 +2594,7 @@ open_some_spaces (col)
       for (i = col; i--; )
        tputs (_rl_term_ic, 1, _rl_output_character_function);
     }
-#endif /* !__MSDOS__ && !__MINGW32__ */
+#endif /* !__MSDOS__ && (!__MINGW32__ || NCURSES_VERSION)*/
 }
 
 /* Delete COUNT characters from the display line. */
@@ -2542,7 +2605,7 @@ delete_chars (count)
   if (count > _rl_screenwidth) /* XXX */
     return;
 
-#if !defined (__MSDOS__) && !defined (__MINGW32__)
+#if !defined (__MSDOS__) && (!defined (__MINGW32__) || defined (NCURSES_VERSION))
   if (_rl_term_DC && *_rl_term_DC)
     {
       char *buffer;
@@ -2555,7 +2618,7 @@ delete_chars (count)
        while (count--)
          tputs (_rl_term_dc, 1, _rl_output_character_function);
     }
-#endif /* !__MSDOS__ && !__MINGW32__ */
+#endif /* !__MSDOS__ && (!__MINGW32__ || NCURSES_VERSION)*/
 }
 
 void
@@ -2618,7 +2681,8 @@ redraw_prompt (t)
   rl_save_prompt ();
 
   rl_display_prompt = t;
-  local_prompt = expand_prompt (t, &prompt_visible_length,
+  local_prompt = expand_prompt (t, PMT_MULTILINE,
+                                  &prompt_visible_length,
                                   &prompt_last_invisible,
                                   &prompt_invis_chars_first_line,
                                   &prompt_physical_chars);
@@ -2699,6 +2763,12 @@ _rl_erase_entire_line ()
   fflush (rl_outstream);
 }
 
+void
+_rl_ttyflush ()
+{
+  fflush (rl_outstream);
+}
+
 /* return the `current display line' of the cursor -- the number of lines to
    move up to get to the first screen line of the current readline line. */
 int
index 72b79857f6f4477626f6e3c1b834d6231f618aaf..a38bc9eb4a876c181fd6f134e5f4211f77ad7177 100644 (file)
@@ -59,6 +59,8 @@ QUIETPS     = #set this to -q to shut up dvips
 PAPERSIZE   = letter
 PSDPI       = 600
 DVIPS       = dvips -D ${PSDPI} $(QUIETPS) -t ${PAPERSIZE} -o $@     # tricky
+# experimental; uses external texi2dvi for now; this needs pdftex to be present
+TEXI2PDF    = texi2dvi --pdf
 
 # These tools might not be available; they're not required
 DVIPDF      = dvipdfm -o $@ -p ${PAPERSIZE}
@@ -101,6 +103,10 @@ DIST_DOCS = $(DVIOBJ) $(PSOBJ) $(HTMLOBJ) $(INFOOBJ) $(TEXTOBJ) $(PDFOBJ)
        $(RM) $@
        -${DVIPDF} $<
 
+#.texi.pdf:
+#      $(RM) $@
+#      -${TEXI2PDF} $<
+
 all: info dvi html ps text pdf
 nodvi: info html text
 
@@ -170,9 +176,15 @@ history_3.ps: $(srcdir)/history.3
        ${RM} $@
        ${GROFF} -man < $(srcdir)/history.3 > $@ 
 
-readline.pdf:  readline.dvi
-history.pdf:   history.dvi
-rluserman.pdf: rluserman.dvi
+readline.pdf:  $(RLSRC)
+       TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/rlman.texi
+       mv rlman.pdf $@
+
+history.pdf:   $(HISTSRC)
+       TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/history.texi
+
+rluserman.pdf: $(RLSRC)
+       TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/rluserman.texi
 
 clean:
        $(RM) *.aux *.bak *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps \
index 22c4f47f72a9da8a43ed8c1a420390dfb81c8b38..e3cba11f117737f370ffa08ae3d55a7262b76976 100644 (file)
@@ -1,24 +1,23 @@
-HISTORY(3)                                                          HISTORY(3)
+HISTORY(3)                 Library Functions Manual                 HISTORY(3)
 
 
 
-N\bNA\bAM\bME\bE
+\e[1mNAME\e[0m
        history - GNU History Library
 
-C\bCO\bOP\bPY\bYR\bRI\bIG\bGH\bHT\bT
-       The GNU History Library is Copyright (C) 1989-2011 by the Free Software
+\e[1mCOPYRIGHT\e[0m
+       The GNU History Library is Copyright (C) 1989-2014 by the Free Software
        Foundation, Inc.
 
-D\bDE\bES\bSC\bCR\bRI\bIP\bPT\bTI\bIO\bON\bN
+\e[1mDESCRIPTION\e[0m
        Many programs read input from the user a line at a time.  The GNU  His-
        tory  library is able to keep track of those lines, associate arbitrary
        data with each line, and utilize information  from  previous  lines  in
        composing new ones.
 
-
-H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN
+\e[1mHISTORY EXPANSION\e[0m
        The  history library supports a history expansion feature that is iden-
-       tical to the history expansion in b\bba\bas\bsh\bh.\b.  This  section  describes  what
+       tical to the history expansion in \e[1mbash.  \e[22mThis  section  describes  what
        syntax features are available.
 
        History expansions introduce words from the history list into the input
@@ -30,104 +29,104 @@ H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN
        line  is read.  It takes place in two parts.  The first is to determine
        which line from the history list to use during substitution.  The  sec-
        ond  is  to select portions of that line for inclusion into the current
-       one.  The line selected from the history is the _\be_\bv_\be_\bn_\bt, and the portions
-       of  that  line  that  are  acted upon are _\bw_\bo_\br_\bd_\bs.  Various _\bm_\bo_\bd_\bi_\bf_\bi_\be_\br_\bs are
+       one.  The line selected from the history is the \e[4mevent\e[24m, and the portions
+       of  that  line  that  are  acted upon are \e[4mwords\e[24m.  Various \e[4mmodifiers\e[24m are
        available to manipulate the selected words.  The line  is  broken  into
-       words in the same fashion as b\bba\bas\bsh\bdoes when reading input, so that sev-
+       words in the same fashion as \e[1mbash \e[22mdoes when reading input, so that sev-
        eral words that would otherwise be separated are  considered  one  word
-       when  surrounded  by  quotes (see the description of h\bhi\bis\bst\bto\bor\bry\by_\b_t\bto\bok\bke\ben\bni\biz\bze\be(\b()\b)
+       when  surrounded  by  quotes (see the description of \e[1mhistory_tokenize()\e[0m
        below).  History expansions are introduced by  the  appearance  of  the
-       history expansion character, which is !\b! by default.  Only backslash (\\b\)
+       history expansion character, which is \e[1m! \e[22mby default.  Only backslash (\e[1m\\e[22m)
        and single quotes can quote the history expansion character.
 
-   E\bEv\bve\ben\bnt\bt D\bDe\bes\bsi\big\bgn\bna\bat\bto\bor\brs\bs
+   \e[1mEvent Designators\e[0m
        An event designator is a reference to a command line entry in the  his-
        tory  list.   Unless  the reference is absolute, events are relative to
        the current position in the history list.
 
-       !\b!      Start a history substitution, except when followed by  a  b\bbl\bla\ban\bnk\bk,
+       \e[1m!      \e[22mStart a history substitution, except when followed by  a  \e[1mblank\e[22m,
               newline, = or (.
-       !\b!_\bn     Refer to command line _\bn.
-       !\b!-\b-_\bn    Refer to the current command minus _\bn.
-       !\b!!\b!     Refer to the previous command.  This is a synonym for `!-1'.
-       !\b!_\bs_\bt_\br_\bi_\bn_\bg
+       \e[1m!\e[4m\e[22mn\e[24m     Refer to command line \e[4mn\e[24m.
+       \e[1m!-\e[4m\e[22mn\e[24m    Refer to the current command minus \e[4mn\e[24m.
+       \e[1m!!     \e[22mRefer to the previous command.  This is a synonym for `!-1'.
+       \e[1m!\e[4m\e[22mstring\e[0m
               Refer  to the most recent command preceding the current position
-              in the history list starting with _\bs_\bt_\br_\bi_\bn_\bg.
-       !\b!?\b?_\bs_\bt_\br_\bi_\bn_\bg[\b[?\b?]\b]
+              in the history list starting with \e[4mstring\e[24m.
+       \e[1m!?\e[4m\e[22mstring\e[24m\e[1m[?]\e[0m
               Refer to the most recent command preceding the current  position
-              in  the  history  list containing _\bs_\bt_\br_\bi_\bn_\bg.  The trailing ?\bmay be
-              omitted if _\bs_\bt_\br_\bi_\bn_\bg is followed immediately by a newline.
-       ^\b^_\bs_\bt_\br_\bi_\bn_\bg_\b1^\b^_\bs_\bt_\br_\bi_\bn_\bg_\b2^\b^
-              Quick substitution.  Repeat the last command, replacing  _\bs_\bt_\br_\bi_\bn_\bg_\b1
-              with _\bs_\bt_\br_\bi_\bn_\bg_\b2.  Equivalent to ``!!:s/_\bs_\bt_\br_\bi_\bn_\bg_\b1/_\bs_\bt_\br_\bi_\bn_\bg_\b2/'' (see M\bMo\bod\bd-\b-
-              i\bif\bfi\bie\ber\brs\bbelow).
-       !\b!#\b#     The entire command line typed so far.
-
-   W\bWo\bor\brd\bd D\bDe\bes\bsi\big\bgn\bna\bat\bto\bor\brs\bs
-       Word designators are used to select desired words from the event.  A  :\b:
+              in  the  history  list containing \e[4mstring\e[24m.  The trailing \e[1m? \e[22mmay be
+              omitted if \e[4mstring\e[24m is followed immediately by a newline.
+       \e[1m^\e[4m\e[22mstring1\e[24m\e[1m^\e[4m\e[22mstring2\e[24m\e[1m^\e[0m
+              Quick substitution.  Repeat the last command, replacing  \e[4mstring1\e[0m
+              with \e[4mstring2\e[24m.  Equivalent to ``!!:s/\e[4mstring1\e[24m/\e[4mstring2\e[24m/'' (see \e[1mMod-\e[0m
+              \e[1mifiers \e[22mbelow).
+       \e[1m!#     \e[22mThe entire command line typed so far.
+
+   \e[1mWord Designators\e[0m
+       Word designators are used to select desired words from the event.  A  \e[1m:\e[0m
        separates  the event specification from the word designator.  It may be
-       omitted if the word designator begins with a ^\b^, $\b$, *\b*, -\b-, or  %\b%.   Words
+       omitted if the word designator begins with a \e[1m^\e[22m, \e[1m$\e[22m, \e[1m*\e[22m, \e[1m-\e[22m, or  \e[1m%\e[22m.   Words
        are  numbered from the beginning of the line, with the first word being
        denoted by 0 (zero).  Words are inserted into the  current  line  sepa-
        rated by single spaces.
 
-       0\b0 (\b(z\bze\ber\bro\bo)\b)
+       \e[1m0 (zero)\e[0m
               The zeroth word.  For the shell, this is the command word.
-       _\bn      The _\bnth word.
-       ^\b^      The first argument.  That is, word 1.
-       $\b$      The  last  word.   This  is  usually the last argument, but will
+       \e[4mn\e[24m      The \e[4mn\e[24mth word.
+       \e[1m^      \e[22mThe first argument.  That is, word 1.
+       \e[1m$      \e[22mThe  last  word.   This  is  usually the last argument, but will
               expand to the zeroth word if there is only one word in the line.
-       %\b%      The word matched by the most recent `?_\bs_\bt_\br_\bi_\bn_\bg?' search.
-       _\bx-\b-_\by    A range of words; `-_\by' abbreviates `0-_\by'.
-       *\b*      All  of  the words but the zeroth.  This is a synonym for `_\b1_\b-_\b$'.
-              It is not an error to use *\b* if there is just  one  word  in  the
+       \e[1m%      \e[22mThe word matched by the most recent `?\e[4mstring\e[24m?' search.
+       \e[4mx\e[24m\e[1m-\e[4m\e[22my\e[24m    A range of words; `-\e[4my\e[24m' abbreviates `0-\e[4my\e[24m'.
+       \e[1m*      \e[22mAll of the words but the zeroth.  This is a synonym  for  `\e[4m1-$\e[24m'.
+              It  is  not  an  error to use \e[1m* \e[22mif there is just one word in the
               event; the empty string is returned in that case.
-       x\bx*\b*     Abbreviates _\bx_\b-_\b$.
-       x\bx-\b-     Abbreviates _\bx_\b-_\b$ like x\bx*\b*, but omits the last word.
+       \e[1mx*     \e[22mAbbreviates \e[4mx-$\e[24m.
+       \e[1mx-     \e[22mAbbreviates \e[4mx-$\e[24m like \e[1mx*\e[22m, but omits the last word.
 
-       If  a  word  designator is supplied without an event specification, the
+       If a word designator is supplied without an  event  specification,  the
        previous command is used as the event.
 
-   M\bMo\bod\bdi\bif\bfi\bie\ber\brs\bs
-       After the optional word designator, there may appear a sequence of  one
+   \e[1mModifiers\e[0m
+       After  the optional word designator, there may appear a sequence of one
        or more of the following modifiers, each preceded by a `:'.
 
-       h\bh      Remove a trailing file name component, leaving only the head.
-       t\bt      Remove all leading file name components, leaving the tail.
-       r\br      Remove a trailing suffix of the form _\b._\bx_\bx_\bx, leaving the basename.
-       e\be      Remove all but the trailing suffix.
-       p\bp      Print the new command but do not execute it.
-       q\bq      Quote the substituted words, escaping further substitutions.
-       x\bx      Quote the substituted words as with q\bq, but break into  words  at
-              b\bbl\bla\ban\bnk\bks\band newlines.
-       s\bs/\b/_\bo_\bl_\bd/\b/_\bn_\be_\bw/\b/
-              Substitute  _\bn_\be_\bw  for  the  first  occurrence of _\bo_\bl_\bd in the event
+       \e[1mh      \e[22mRemove a trailing file name component, leaving only the head.
+       \e[1mt      \e[22mRemove all leading file name components, leaving the tail.
+       \e[1mr      \e[22mRemove a trailing suffix of the form \e[4m.xxx\e[24m, leaving the basename.
+       \e[1me      \e[22mRemove all but the trailing suffix.
+       \e[1mp      \e[22mPrint the new command but do not execute it.
+       \e[1mq      \e[22mQuote the substituted words, escaping further substitutions.
+       \e[1mx      \e[22mQuote the substituted words as with \e[1mq\e[22m, but break into  words  at
+              \e[1mblanks \e[22mand newlines.
+       \e[1ms/\e[4m\e[22mold\e[24m\e[1m/\e[4m\e[22mnew\e[24m\e[1m/\e[0m
+              Substitute  \e[4mnew\e[24m  for  the  first  occurrence of \e[4mold\e[24m in the event
               line.  Any delimiter can be used  in  place  of  /.   The  final
               delimiter  is  optional if it is the last character of the event
-              line.  The delimiter may be quoted in _\bo_\bl_\bd and _\bn_\be_\bw with a  single
-              backslash.   If & appears in _\bn_\be_\bw, it is replaced by _\bo_\bl_\bd.  A sin-
-              gle backslash will quote the &.  If _\bo_\bl_\bd is null, it  is  set  to
-              the  last  _\bo_\bl_\bd substituted, or, if no previous history substitu-
-              tions took place, the last _\bs_\bt_\br_\bi_\bn_\bg in a !\b!?\b?_\bs_\bt_\br_\bi_\bn_\bg[\b[?\b?]\b]  search.
-       &\b&      Repeat the previous substitution.
-       g\bg      Cause changes to be applied over the entire event line.  This is
-              used  in  conjunction  with `:\b:s\bs' (e.g., `:\b:g\bgs\bs/\b/_\bo_\bl_\bd/\b/_\bn_\be_\bw/\b/') or `:\b:&\b&'.
-              If used with `:\b:s\bs', any delimiter can be used in place of /,  and
+              line.  The delimiter may be quoted in \e[4mold\e[24m and \e[4mnew\e[24m with a  single
+              backslash.   If & appears in \e[4mnew\e[24m, it is replaced by \e[4mold\e[24m.  A sin-
+              gle backslash will quote the &.  If \e[4mold\e[24m is null, it  is  set  to
+              the  last  \e[4mold\e[24m substituted, or, if no previous history substitu-
+              tions took place, the last \e[4mstring\e[24m in a \e[1m!?\e[4m\e[22mstring\e[24m\e[1m[?]  \e[22msearch.
+       \e[1m&      \e[22mRepeat the previous substitution.
+       \e[1mg      \e[22mCause changes to be applied over the entire event line.  This is
+              used  in  conjunction  with `\e[1m:s\e[22m' (e.g., `\e[1m:gs/\e[4m\e[22mold\e[24m\e[1m/\e[4m\e[22mnew\e[24m\e[1m/\e[22m') or `\e[1m:&\e[22m'.
+              If used with `\e[1m:s\e[22m', any delimiter can be used in place of /,  and
               the  final  delimiter is optional if it is the last character of
-              the event line.  An a\ba may be used as a synonym for g\bg.
-       G\bG      Apply the following `s\bs' modifier once to each word in the  event
+              the event line.  An \e[1ma \e[22mmay be used as a synonym for \e[1mg\e[22m.
+       \e[1mG      \e[22mApply the following `\e[1ms\e[22m' modifier once to each word in the  event
               line.
 
-P\bPR\bRO\bOG\bGR\bRA\bAM\bMM\bMI\bIN\bNG\bG W\bWI\bIT\bTH\bH H\bHI\bIS\bST\bTO\bOR\bRY\bY F\bFU\bUN\bNC\bCT\bTI\bIO\bON\bNS\bS
+\e[1mPROGRAMMING WITH HISTORY FUNCTIONS\e[0m
        This  section  describes  how  to use the History library in other pro-
        grams.
 
-   I\bIn\bnt\btr\bro\bod\bdu\buc\bct\bti\bio\bon\bn t\bto\bo H\bHi\bis\bst\bto\bor\bry\by
+   \e[1mIntroduction to History\e[0m
        The programmer using the History library has  available  functions  for
        remembering  lines on a history list, associating arbitrary data with a
        line, removing lines from the list, searching through the  list  for  a
        line  containing  an arbitrary text string, and referencing any line in
-       the list directly.  In addition, a history _\be_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn function is avail-
+       the list directly.  In addition, a history \e[4mexpansion\e[24m function is avail-
        able  which  provides  for a consistent user interface across different
        programs.
 
@@ -135,7 +134,7 @@ P\bPR\bRO\bOG\bGR\bRA\bAM\bMM\bMI\bIN\bNG\bG W\bWI\bIT\bTH\bH H\bHI\bIS\bST\bTO\bOR\bRY\bY F\bFU\bUN\bNC\b
        fit  of  a  consistent user interface with a set of well-known commands
        for manipulating the text of previous lines and using that text in  new
        commands.  The basic history manipulation commands are identical to the
-       history substitution provided by b\bba\bas\bsh\bh.
+       history substitution provided by \e[1mbash\e[22m.
 
        If the programmer desires, he  can  use  the  Readline  library,  which
        includes some history manipulation by default, and has the added advan-
@@ -143,17 +142,17 @@ P\bPR\bRO\bOG\bGR\bRA\bAM\bMM\bMI\bIN\bNG\bG W\bWI\bIT\bTH\bH H\bHI\bIS\bST\bTO\bOR\bRY\bY F\bFU\bUN\bNC\b
 
        Before declaring any functions  using  any  functionality  the  History
        library  provides  in  other code, an application writer should include
-       the file  _\b<_\br_\be_\ba_\bd_\bl_\bi_\bn_\be_\b/_\bh_\bi_\bs_\bt_\bo_\br_\by_\b._\bh_\b>  in  any  file  that  uses  the  History
+       the file  \e[4m<readline/history.h>\e[24m  in  any  file  that  uses  the  History
        library's  features.   It  supplies  extern declarations for all of the
        library's public functions and variables, and declares all of the  pub-
        lic data structures.
 
 
-   H\bHi\bis\bst\bto\bor\bry\by S\bSt\bto\bor\bra\bag\bge\be
+   \e[1mHistory Storage\e[0m
        The  history  list  is an array of history entries.  A history entry is
        declared as follows:
 
-       _\bt_\by_\bp_\be_\bd_\be_\bf _\bv_\bo_\bi_\bd _\b* h\bhi\bis\bst\btd\bda\bat\bta\ba_\b_t\bt;\b;
+       \e[4mtypedef\e[24m \e[4mvoid\e[24m \e[4m*\e[24m \e[1mhistdata_t;\e[0m
 
        typedef struct _hist_entry {
          char *line;
@@ -163,7 +162,7 @@ P\bPR\bRO\bOG\bGR\bRA\bAM\bMM\bMI\bIN\bNG\bG W\bWI\bIT\bTH\bH H\bHI\bIS\bST\bTO\bOR\bRY\bY F\bFU\bUN\bNC\b
 
        The history list itself might therefore be declared as
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b*_\b* t\bth\bhe\be_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_l\bli\bis\bst\bt;\b;
+       \e[4mHIST_ENTRY\e[24m \e[4m**\e[24m \e[1mthe_history_list;\e[0m
 
        The state of the History library is encapsulated into a  single  struc-
        ture:
@@ -179,192 +178,193 @@ P\bPR\bRO\bOG\bGR\bRA\bAM\bMM\bMI\bIN\bNG\bG W\bWI\bIT\bTH\bH H\bHI\bIS\bST\bTO\bOR\bRY\bY F\bFU\bUN\bNC\b
          int flags;
        } HISTORY_STATE;
 
-       If  the flags member includes H\bHS\bS_\b_S\bST\bTI\bIF\bFL\bLE\bED\bD, the history has been stifled.
+       If the flags member includes \e[1mHS_STIFLED\e[22m, the history has been stifled.
 
-H\bHi\bis\bst\bto\bor\bry\by F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs
-       This section describes the calling sequence for the  various  functions
+\e[1mHistory Functions\e[0m
+       This  section  describes the calling sequence for the various functions
        exported by the GNU History library.
 
-   I\bIn\bni\bit\bti\bia\bal\bli\biz\bzi\bin\bng\bg H\bHi\bis\bst\bto\bor\bry\by a\ban\bnd\bd S\bSt\bta\bat\bte\be M\bMa\ban\bna\bag\bge\bem\bme\ben\bnt\bt
-       This  section  describes  functions  used  to initialize and manage the
+   \e[1mInitializing History and State Management\e[0m
+       This section describes functions used  to  initialize  and  manage  the
        state of the History library when you want to use the history functions
        in your program.
 
-       _\bv_\bo_\bi_\bd u\bus\bsi\bin\bng\bg_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
-       Begin  a  session  in  which the history functions might be used.  This
+       \e[4mvoid\e[24m \e[1musing_history \e[22m(\e[4mvoid\e[24m)
+       Begin a session in which the history functions  might  be  used.   This
        initializes the interactive variables.
 
-       _\bH_\bI_\bS_\bT_\bO_\bR_\bY_\b__\bS_\bT_\bA_\bT_\bE _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_g\bge\bet\bt_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_s\bst\bta\bat\bte\be (_\bv_\bo_\bi_\bd)
+       \e[4mHISTORY_STATE\e[24m \e[4m*\e[24m \e[1mhistory_get_history_state \e[22m(\e[4mvoid\e[24m)
        Return a structure describing the current state of the input history.
 
-       _\bv_\bo_\bi_\bd h\bhi\bis\bst\bto\bor\bry\by_\b_s\bse\bet\bt_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_s\bst\bta\bat\bte\be (_\bH_\bI_\bS_\bT_\bO_\bR_\bY_\b__\bS_\bT_\bA_\bT_\bE _\b*_\bs_\bt_\ba_\bt_\be)
-       Set the state of the history list according to _\bs_\bt_\ba_\bt_\be.
+       \e[4mvoid\e[24m \e[1mhistory_set_history_state \e[22m(\e[4mHISTORY_STATE\e[24m \e[4m*state\e[24m)
+       Set the state of the history list according to \e[4mstate\e[24m.
 
 
-   H\bHi\bis\bst\bto\bor\bry\by L\bLi\bis\bst\bt M\bMa\ban\bna\bag\bge\bem\bme\ben\bnt\bt
-       These functions manage individual entries on the history list,  or  set
+   \e[1mHistory List Management\e[0m
+       These  functions  manage individual entries on the history list, or set
        parameters managing the list itself.
 
-       _\bv_\bo_\bi_\bd a\bad\bdd\bd_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg)
-       Place _\bs_\bt_\br_\bi_\bn_\bg at the end of the history list.  The associated data field
-       (if any) is set to N\bNU\bUL\bLL\bL.
+       \e[4mvoid\e[24m \e[1madd_history \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string\e[24m)
+       Place \e[4mstring\e[24m at the end of the history list.  The associated data field
+       (if any) is set to \e[1mNULL\e[22m.
 
-       _\bv_\bo_\bi_\bd a\bad\bdd\bd_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_t\bti\bim\bme\be (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg)
-       Change the time stamp associated with the most recent history entry  to
-       _\bs_\bt_\br_\bi_\bn_\bg.
+       \e[4mvoid\e[24m \e[1madd_history_time \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string\e[24m)
+       Change  the time stamp associated with the most recent history entry to
+       \e[4mstring\e[24m.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b* r\bre\bem\bmo\bov\bve\be_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bi_\bn_\bt _\bw_\bh_\bi_\bc_\bh)
-       Remove  history  entry  at  offset _\bw_\bh_\bi_\bc_\bh from the history.  The removed
-       element is returned so you can free  the  line,  data,  and  containing
+       \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m \e[1mremove_history \e[22m(\e[4mint\e[24m \e[4mwhich\e[24m)
+       Remove history entry at offset \e[4mwhich\e[24m from  the  history.   The  removed
+       element  is  returned  so  you  can free the line, data, and containing
        structure.
 
-       _\bh_\bi_\bs_\bt_\bd_\ba_\bt_\ba_\b__\bt f\bfr\bre\bee\be_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_e\ben\bnt\btr\bry\by (_\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b*_\bh_\bi_\bs_\bt_\be_\bn_\bt)
-       Free  the  history  entry  _\bh_\bi_\bs_\bt_\be_\bn_\bt and any history library private data
-       associated with it.   Returns  the  application-specific  data  so  the
-       caller can dispose of it.
+       \e[4mhistdata_t\e[24m \e[1mfree_history_entry \e[22m(\e[4mHIST_ENTRY\e[24m \e[4m*histent\e[24m)
+       Free the history entry \e[4mhistent\e[24m and any  history  library  private  data
+       associated with it.  Returns the application-specific data so the call-
+       er can dispose of it.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY  _\b* r\bre\bep\bpl\bla\bac\bce\be_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_e\ben\bnt\btr\bry\by (_\bi_\bn_\bt _\bw_\bh_\bi_\bc_\bh_\b, _\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bl_\bi_\bn_\be_\b, _\bh_\bi_\bs_\bt_\b-
-       _\bd_\ba_\bt_\ba_\b__\bt _\bd_\ba_\bt_\ba)
-       Make the history entry at  offset  _\bw_\bh_\bi_\bc_\bh  have  _\bl_\bi_\bn_\be  and  _\bd_\ba_\bt_\ba.   This
+       \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m \e[1mreplace_history_entry \e[22m(\e[4mint\e[24m \e[4mwhich,\e[24m \e[4mconst\e[24m \e[4mchar\e[24m \e[4m*line,\e[24m  \e[4mhist-\e[0m
+       \e[4mdata_t\e[24m \e[4mdata\e[24m)
+       Make  the  history  entry  at  offset  \e[4mwhich\e[24m  have \e[4mline\e[24m and \e[4mdata\e[24m.  This
        returns the old entry so the caller can dispose of any application-spe-
-       cific data.  In the case  of  an  invalid  _\bw_\bh_\bi_\bc_\bh,  a  N\bNU\bUL\bLL\bL  pointer  is
+       cific  data.   In  the  case  of  an  invalid  \e[4mwhich\e[24m, a \e[1mNULL \e[22mpointer is
        returned.
 
-       _\bv_\bo_\bi_\bd c\bcl\ble\bea\bar\br_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
+       \e[4mvoid\e[24m \e[1mclear_history \e[22m(\e[4mvoid\e[24m)
        Clear the history list by deleting all the entries.
 
-       _\bv_\bo_\bi_\bd s\bst\bti\bif\bfl\ble\be_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bi_\bn_\bt _\bm_\ba_\bx)
-       Stifle the history list, remembering only the last _\bm_\ba_\bx entries.
+       \e[4mvoid\e[24m \e[1mstifle_history \e[22m(\e[4mint\e[24m \e[4mmax\e[24m)
+       Stifle the history list, remembering only the last \e[4mmax\e[24m entries.
 
-       _\bi_\bn_\bt u\bun\bns\bst\bti\bif\bfl\ble\be_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
-       Stop  stifling  the  history.   This returns the previously-set maximum
-       number of history entries (as set by  s\bst\bti\bif\bfl\ble\be_\b_h\bhi\bis\bst\bto\bor\bry\by(\b()\b)).   history  was
+       \e[4mint\e[24m \e[1munstifle_history \e[22m(\e[4mvoid\e[24m)
+       Stop stifling the history.  This  returns  the  previously-set  maximum
+       number  of  history  entries (as set by \e[1mstifle_history()\e[22m).  history was
        stifled.  The value is positive if the history was stifled, negative if
        it wasn't.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_i\bis\bs_\b_s\bst\bti\bif\bfl\ble\bed\bd (_\bv_\bo_\bi_\bd)
+       \e[4mint\e[24m \e[1mhistory_is_stifled \e[22m(\e[4mvoid\e[24m)
        Returns non-zero if the history is stifled, zero if it is not.
 
 
-   I\bIn\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn A\bAb\bbo\bou\but\bt t\bth\bhe\be H\bHi\bis\bst\bto\bor\bry\by L\bLi\bis\bst\bt
-       These functions return information about the  entire  history  list  or
+   \e[1mInformation About the History List\e[0m
+       These  functions  return  information  about the entire history list or
        individual list entries.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b*_\b* h\bhi\bis\bst\bto\bor\bry\by_\b_l\bli\bis\bst\bt (_\bv_\bo_\bi_\bd)
-       Return  a  N\bNU\bUL\bLL\bL  terminated  array of _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b* which is the current
-       input history.  Element 0 of this list is the beginning  of  time.   If
-       there is no history, return N\bNU\bUL\bLL\bL.
+       \e[4mHIST_ENTRY\e[24m \e[4m**\e[24m \e[1mhistory_list \e[22m(\e[4mvoid\e[24m)
+       Return \e[1mNULL \e[22mterminated array of \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m  which  is  the  current
+       input  history.   Element  0 of this list is the beginning of time.  If
+       there is no history, return \e[1mNULL\e[22m.
 
-       _\bi_\bn_\bt w\bwh\bhe\ber\bre\be_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
+       \e[4mint\e[24m \e[1mwhere_history \e[22m(\e[4mvoid\e[24m)
        Returns the offset of the current history element.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b* c\bcu\bur\brr\bre\ben\bnt\bt_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
-       Return  the  history  entry  at  the current position, as determined by
-       w\bwh\bhe\ber\bre\be_\b_h\bhi\bis\bst\bto\bor\bry\by(\b()\b).  If there is no entry there, return a N\bNU\bUL\bLL\bpointer.
+       \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m \e[1mcurrent_history \e[22m(\e[4mvoid\e[24m)
+       Return the history entry at the  current  position,  as  determined  by
+       \e[1mwhere_history()\e[22m.  If there is no entry there, return a \e[1mNULL \e[22mpointer.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_g\bge\bet\bt (_\bi_\bn_\bt _\bo_\bf_\bf_\bs_\be_\bt)
-       Return the  history  entry  at  position  _\bo_\bf_\bf_\bs_\be_\bt,  starting  from  h\bhi\bis\bs-\b-
-       t\bto\bor\bry\by_\b_b\bba\bas\bse\be.   If  there  is no entry there, or if _\bo_\bf_\bf_\bs_\be_\bt is greater than
-       the history length, return a N\bNU\bUL\bLL\bpointer.
+       \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m \e[1mhistory_get \e[22m(\e[4mint\e[24m \e[4moffset\e[24m)
+       Return  the  history  entry  at  position  \e[4moffset\e[24m,  starting  from \e[1mhis-\e[0m
+       \e[1mtory_base\e[22m.  If there is no entry there, or if \e[4moffset\e[24m  is  greater  than
+       the history length, return a \e[1mNULL \e[22mpointer.
 
-       _\bt_\bi_\bm_\be_\b__\bt h\bhi\bis\bst\bto\bor\bry\by_\b_g\bge\bet\bt_\b_t\bti\bim\bme\be (_\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b*)
-       Return the time stamp associated with the history entry passed  as  the
+       \e[4mtime_t\e[24m \e[1mhistory_get_time \e[22m(\e[4mHIST_ENTRY\e[24m \e[4m*\e[24m)
+       Return  the  time stamp associated with the history entry passed as the
        argument.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_t\bto\bot\bta\bal\bl_\b_b\bby\byt\bte\bes\bs (_\bv_\bo_\bi_\bd)
-       Return  the number of bytes that the primary history entries are using.
-       This function returns the sum of the lengths of all the  lines  in  the
+       \e[4mint\e[24m \e[1mhistory_total_bytes \e[22m(\e[4mvoid\e[24m)
+       Return the number of bytes that the primary history entries are  using.
+       This  function  returns  the sum of the lengths of all the lines in the
        history.
 
 
-   M\bMo\bov\bvi\bin\bng\bg A\bAr\bro\bou\bun\bnd\bd t\bth\bhe\be H\bHi\bis\bst\bto\bor\bry\by L\bLi\bis\bst\bt
+   \e[1mMoving Around the History List\e[0m
        These functions allow the current index into the history list to be set
        or changed.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_s\bse\bet\bt_\b_p\bpo\bos\bs (_\bi_\bn_\bt _\bp_\bo_\bs)
-       Set the current history offset to _\bp_\bo_\bs, an absolute index into the list.
-       Returns  1  on  success, 0 if _\bp_\bo_\bs is less than zero or greater than the
+       \e[4mint\e[24m \e[1mhistory_set_pos \e[22m(\e[4mint\e[24m \e[4mpos\e[24m)
+       Set the current history offset to \e[4mpos\e[24m, an absolute index into the list.
+       Returns 1 on success, 0 if \e[4mpos\e[24m is less than zero or  greater  than  the
        number of history entries.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b* p\bpr\bre\bev\bvi\bio\bou\bus\bs_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
-       Back up the current history offset to the previous history  entry,  and
-       return  a pointer to that entry.  If there is no previous entry, return
-       a N\bNU\bUL\bLL\bpointer.
+       \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m \e[1mprevious_history \e[22m(\e[4mvoid\e[24m)
+       Back  up  the current history offset to the previous history entry, and
+       return a pointer to that entry.  If there is no previous entry,  return
+       a \e[1mNULL \e[22mpointer.
 
-       _\bH_\bI_\bS_\bT_\b__\bE_\bN_\bT_\bR_\bY _\b* n\bne\bex\bxt\bt_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bv_\bo_\bi_\bd)
-       Move the current history offset forward to the next history entry,  and
-       return  the a pointer to that entry.  If there is no next entry, return
-       a N\bNU\bUL\bLL\bL pointer.
+       \e[4mHIST_ENTRY\e[24m \e[4m*\e[24m \e[1mnext_history \e[22m(\e[4mvoid\e[24m)
+       If  the  current history offset refers to a valid history entry, incre-
+       ment the current history offset.  If the  possibly-incremented  history
+       offset refers to a valid history entry, return a pointer to that entry;
+       otherwise, return a \e[1mNULL \e[22mpointer.
 
 
-   S\bSe\bea\bar\brc\bch\bhi\bin\bng\bg t\bth\bhe\be H\bHi\bis\bst\bto\bor\bry\by L\bLi\bis\bst\bt
+   \e[1mSearching the History List\e[0m
        These functions allow searching of the history list  for  entries  con-
        taining a specific string.  Searching may be performed both forward and
        backward  from  the  current  history  position.   The  search  may  be
-       _\ba_\bn_\bc_\bh_\bo_\br_\be_\bd,  meaning  that  the string must match at the beginning of the
+       \e[4manchored\e[24m,  meaning  that  the string must match at the beginning of the
        history entry.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_s\bse\bea\bar\brc\bch\bh (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg_\b, _\bi_\bn_\bt _\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn)
-       Search the history for _\bs_\bt_\br_\bi_\bn_\bg, starting at the current history  offset.
-       If  _\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn  is  less  than  0,  then  the search is through previous
-       entries, otherwise through subsequent entries.   If  _\bs_\bt_\br_\bi_\bn_\bg  is  found,
+       \e[4mint\e[24m \e[1mhistory_search \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string,\e[24m \e[4mint\e[24m \e[4mdirection\e[24m)
+       Search the history for \e[4mstring\e[24m, starting at the current history  offset.
+       If  \e[4mdirection\e[24m  is  less  than  0,  then  the search is through previous
+       entries, otherwise through subsequent entries.   If  \e[4mstring\e[24m  is  found,
        then  the  current  history index is set to that history entry, and the
-       value returned is the offset in the line of the entry where _\bs_\bt_\br_\bi_\bn_\bg  was
+       value returned is the offset in the line of the entry where \e[4mstring\e[24m  was
        found.  Otherwise, nothing is changed, and a -1 is returned.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_s\bse\bea\bar\brc\bch\bh_\b_p\bpr\bre\bef\bfi\bix\bx (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg_\b, _\bi_\bn_\bt _\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn)
-       Search  the history for _\bs_\bt_\br_\bi_\bn_\bg, starting at the current history offset.
-       The search is anchored: matching lines  must  begin  with  _\bs_\bt_\br_\bi_\bn_\bg.   If
-       _\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn  is less than 0, then the search is through previous entries,
-       otherwise through subsequent entries.  If _\bs_\bt_\br_\bi_\bn_\bg  is  found,  then  the
+       \e[4mint\e[24m \e[1mhistory_search_prefix \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string,\e[24m \e[4mint\e[24m \e[4mdirection\e[24m)
+       Search  the history for \e[4mstring\e[24m, starting at the current history offset.
+       The search is anchored: matching lines  must  begin  with  \e[4mstring\e[24m.   If
+       \e[4mdirection\e[24m  is less than 0, then the search is through previous entries,
+       otherwise through subsequent entries.  If \e[4mstring\e[24m  is  found,  then  the
        current  history index is set to that entry, and the return value is 0.
        Otherwise, nothing is changed, and a -1 is returned.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_s\bse\bea\bar\brc\bch\bh_\b_p\bpo\bos\bs (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg_\b, _\bi_\bn_\bt _\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn_\b, _\bi_\bn_\bt _\bp_\bo_\bs)
-       Search for _\bs_\bt_\br_\bi_\bn_\bg in the history list, starting  at  _\bp_\bo_\bs,  an  absolute
-       index  into  the  list.   If _\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn is negative, the search proceeds
-       backward from _\bp_\bo_\bs, otherwise forward.  Returns the  absolute  index  of
-       the history element where _\bs_\bt_\br_\bi_\bn_\bg was found, or -1 otherwise.
+       \e[4mint\e[24m \e[1mhistory_search_pos \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string,\e[24m \e[4mint\e[24m \e[4mdirection,\e[24m \e[4mint\e[24m \e[4mpos\e[24m)
+       Search for \e[4mstring\e[24m in the history list, starting  at  \e[4mpos\e[24m,  an  absolute
+       index  into  the  list.   If \e[4mdirection\e[24m is negative, the search proceeds
+       backward from \e[4mpos\e[24m, otherwise forward.  Returns the  absolute  index  of
+       the history element where \e[4mstring\e[24m was found, or -1 otherwise.
 
 
-   M\bMa\ban\bna\bag\bgi\bin\bng\bg t\bth\bhe\be H\bHi\bis\bst\bto\bor\bry\by F\bFi\bil\ble\be
+   \e[1mManaging the History File\e[0m
        The  History  library can read the history from and write it to a file.
        This section documents the functions for managing a history file.
 
-       _\bi_\bn_\bt r\bre\bea\bad\bd_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be)
-       Add the contents of _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be to the history list, a line at a time.  If
-       _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be  is N\bNU\bUL\bLL\bL, then read from _\b~_\b/_\b._\bh_\bi_\bs_\bt_\bo_\br_\by.  Returns 0 if successful,
-       or e\ber\brr\brn\bno\bif not.
+       \e[4mint\e[24m \e[1mread_history \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*filename\e[24m)
+       Add the contents of \e[4mfilename\e[24m to the history list, a line at a time.  If
+       \e[4mfilename\e[24m  is \e[1mNULL\e[22m, then read from \e[4m~/.history\e[24m.  Returns 0 if successful,
+       or \e[1merrno \e[22mif not.
 
-       _\bi_\bn_\bt r\bre\bea\bad\bd_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_r\bra\ban\bng\bge\be (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be_\b, _\bi_\bn_\bt _\bf_\br_\bo_\bm_\b, _\bi_\bn_\bt _\bt_\bo)
-       Read a range of lines from _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be, adding them to the  history  list.
-       Start  reading  at  line _\bf_\br_\bo_\bm and end at _\bt_\bo.  If _\bf_\br_\bo_\bm is zero, start at
-       the beginning.  If _\bt_\bo is less than _\bf_\br_\bo_\bm, then read until the end of the
-       file.   If  _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be  is N\bNU\bUL\bLL\bL, then read from _\b~_\b/_\b._\bh_\bi_\bs_\bt_\bo_\br_\by.  Returns 0 if
-       successful, or e\ber\brr\brn\bno\bif not.
+       \e[4mint\e[24m \e[1mread_history_range \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*filename,\e[24m \e[4mint\e[24m \e[4mfrom,\e[24m \e[4mint\e[24m \e[4mto\e[24m)
+       Read a range of lines from \e[4mfilename\e[24m, adding them to the  history  list.
+       Start  reading  at  line \e[4mfrom\e[24m and end at \e[4mto\e[24m.  If \e[4mfrom\e[24m is zero, start at
+       the beginning.  If \e[4mto\e[24m is less than \e[4mfrom\e[24m, then read until the end of the
+       file.   If  \e[4mfilename\e[24m  is \e[1mNULL\e[22m, then read from \e[4m~/.history\e[24m.  Returns 0 if
+       successful, or \e[1merrno \e[22mif not.
 
-       _\bi_\bn_\bt w\bwr\bri\bit\bte\be_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be)
-       Write the current history to _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be, overwriting _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be  if  neces-
-       sary.   If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is N\bNU\bUL\bLL\bL, then write the history list to _\b~_\b/_\b._\bh_\bi_\bs_\bt_\bo_\br_\by.
-       Returns 0 on success, or e\ber\brr\brn\bno\bon a read or write error.
+       \e[4mint\e[24m \e[1mwrite_history \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*filename\e[24m)
+       Write the current history to \e[4mfilename\e[24m, overwriting \e[4mfilename\e[24m  if  neces-
+       sary.   If \e[4mfilename\e[24m is \e[1mNULL\e[22m, then write the history list to \e[4m~/.history\e[24m.
+       Returns 0 on success, or \e[1merrno \e[22mon a read or write error.
 
 
-       _\bi_\bn_\bt a\bap\bpp\bpe\ben\bnd\bd_\b_h\bhi\bis\bst\bto\bor\bry\by (_\bi_\bn_\bt _\bn_\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b, _\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be)
-       Append the last _\bn_\be_\bl_\be_\bm_\be_\bn_\bt_\bs of the history list to _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be.  If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
-       is  N\bNU\bUL\bLL\bL, then append to _\b~_\b/_\b._\bh_\bi_\bs_\bt_\bo_\br_\by.  Returns 0 on success, or e\ber\brr\brn\bno\bon
+       \e[4mint\e[24m \e[1mappend_history \e[22m(\e[4mint\e[24m \e[4mnelements,\e[24m \e[4mconst\e[24m \e[4mchar\e[24m \e[4m*filename\e[24m)
+       Append the last \e[4mnelements\e[24m of the history list to \e[4mfilename\e[24m.  If \e[4mfilename\e[0m
+       is  \e[1mNULL\e[22m, then append to \e[4m~/.history\e[24m.  Returns 0 on success, or \e[1merrno \e[22mon
        a read or write error.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_t\btr\bru\bun\bnc\bca\bat\bte\be_\b_f\bfi\bil\ble\be (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be_\b, _\bi_\bn_\bt _\bn_\bl_\bi_\bn_\be_\bs)
-       Truncate the history file _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be, leaving only the last _\bn_\bl_\bi_\bn_\be_\bs lines.
-       If  _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be  is N\bNU\bUL\bLL\bL, then _\b~_\b/_\b._\bh_\bi_\bs_\bt_\bo_\br_\by is truncated.  Returns 0 on suc-
-       cess, or e\ber\brr\brn\bno\bon failure.
+       \e[4mint\e[24m \e[1mhistory_truncate_file \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*filename,\e[24m \e[4mint\e[24m \e[4mnlines\e[24m)
+       Truncate the history file \e[4mfilename\e[24m, leaving only the last \e[4mnlines\e[24m lines.
+       If  \e[4mfilename\e[24m  is \e[1mNULL\e[22m, then \e[4m~/.history\e[24m is truncated.  Returns 0 on suc-
+       cess, or \e[1merrno \e[22mon failure.
 
 
-   H\bHi\bis\bst\bto\bor\bry\by E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
+   \e[1mHistory Expansion\e[0m
        These functions implement history expansion.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_e\bex\bxp\bpa\ban\bnd\bd (_\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg_\b, _\bc_\bh_\ba_\br _\b*_\b*_\bo_\bu_\bt_\bp_\bu_\bt)
-       Expand _\bs_\bt_\br_\bi_\bn_\bg, placing the result into _\bo_\bu_\bt_\bp_\bu_\bt, a pointer to  a  string.
+       \e[4mint\e[24m \e[1mhistory_expand \e[22m(\e[4mchar\e[24m \e[4m*string,\e[24m \e[4mchar\e[24m \e[4m**output\e[24m)
+       Expand \e[4mstring\e[24m, placing the result into \e[4moutput\e[24m, a pointer to  a  string.
        Returns:
               0      If  no  expansions  took place (or, if the only change in
                      the text was the removal of escape  characters  preceding
@@ -372,123 +372,124 @@ H\bHi\bis\bst\bto\bor\bry\by F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs
               1      if expansions did take place;
               -1     if there was an error in expansion;
               2      if  the  returned  line should be displayed, but not exe-
-                     cuted, as with the :\b:p\bmodifier.
-       If an error ocurred in expansion, then _\bo_\bu_\bt_\bp_\bu_\bt  contains  a  descriptive
+                     cuted, as with the \e[1m:p \e[22mmodifier.
+       If an error ocurred in expansion, then \e[4moutput\e[24m  contains  a  descriptive
        error message.
 
-       _\bc_\bh_\ba_\br _\b* g\bge\bet\bt_\b_h\bhi\bis\bst\bto\bor\bry\by_\b_e\bev\bve\ben\bnt\bt (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg_\b, _\bi_\bn_\bt _\b*_\bc_\bi_\bn_\bd_\be_\bx_\b, _\bi_\bn_\bt _\bq_\bc_\bh_\ba_\br)
-       Returns  the  text  of the history event beginning at _\bs_\bt_\br_\bi_\bn_\bg + _\b*_\bc_\bi_\bn_\bd_\be_\bx.
-       _\b*_\bc_\bi_\bn_\bd_\be_\bx is modified to point to after the event specifier.  At function
-       entry,  _\bc_\bi_\bn_\bd_\be_\bx  points to the index into _\bs_\bt_\br_\bi_\bn_\bg where the history event
-       specification begins.  _\bq_\bc_\bh_\ba_\br is a character that is allowed to end  the
+       \e[4mchar\e[24m \e[4m*\e[24m \e[1mget_history_event \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string,\e[24m \e[4mint\e[24m \e[4m*cindex,\e[24m \e[4mint\e[24m \e[4mqchar\e[24m)
+       Returns  the  text  of the history event beginning at \e[4mstring\e[24m + \e[4m*cindex\e[24m.
+       \e[4m*cindex\e[24m is modified to point to after the event specifier.  At function
+       entry,  \e[4mcindex\e[24m  points to the index into \e[4mstring\e[24m where the history event
+       specification begins.  \e[4mqchar\e[24m is a character that is allowed to end  the
        event  specification  in addition to the ``normal'' terminating charac-
        ters.
 
-       _\bc_\bh_\ba_\br _\b*_\b* h\bhi\bis\bst\bto\bor\bry\by_\b_t\bto\bok\bke\ben\bni\biz\bze\be (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg)
-       Return an array of tokens parsed out  of  _\bs_\bt_\br_\bi_\bn_\bg,  much  as  the  shell
-       might.    The   tokens   are  split  on  the  characters  in  the  h\bhi\bis\bs-\b-
-       t\bto\bor\bry\by_\b_w\bwo\bor\brd\bd_\b_d\bde\bel\bli\bim\bmi\bit\bte\ber\brs\bs  variable,  and  shell  quoting  conventions   are
+       \e[4mchar\e[24m \e[4m**\e[24m \e[1mhistory_tokenize \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string\e[24m)
+       Return an array of tokens parsed out  of  \e[4mstring\e[24m,  much  as  the  shell
+       might.    The   tokens   are  split  on  the  characters  in  the  \e[1mhis-\e[0m
+       \e[1mtory_word_delimiters  \e[22mvariable,  and  shell  quoting  conventions   are
        obeyed.
 
-       _\bc_\bh_\ba_\br _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_a\bar\brg\bg_\b_e\bex\bxt\btr\bra\bac\bct\bt (_\bi_\bn_\bt _\bf_\bi_\br_\bs_\bt_\b, _\bi_\bn_\bt _\bl_\ba_\bs_\bt_\b, _\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bs_\bt_\br_\bi_\bn_\bg)
-       Extract a string segment consisting of the _\bf_\bi_\br_\bs_\bt through _\bl_\ba_\bs_\bt arguments
-       present in _\bs_\bt_\br_\bi_\bn_\bg.  Arguments are split using h\bhi\bis\bst\bto\bor\bry\by_\b_t\bto\bok\bke\ben\bni\biz\bze\be(\b()\b).
+       \e[4mchar\e[24m \e[4m*\e[24m \e[1mhistory_arg_extract \e[22m(\e[4mint\e[24m \e[4mfirst,\e[24m \e[4mint\e[24m \e[4mlast,\e[24m \e[4mconst\e[24m \e[4mchar\e[24m \e[4m*string\e[24m)
+       Extract a string segment consisting of the \e[4mfirst\e[24m through \e[4mlast\e[24m arguments
+       present in \e[4mstring\e[24m.  Arguments are split using \e[1mhistory_tokenize()\e[22m.
 
 
-   H\bHi\bis\bst\bto\bor\bry\by V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs
+   \e[1mHistory Variables\e[0m
        This section describes the externally-visible variables exported by the
        GNU History Library.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_b\bba\bas\bse\be
+       \e[4mint\e[24m \e[1mhistory_base\e[0m
        The logical offset of the first entry in the history list.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_l\ble\ben\bng\bgt\bth\bh
+       \e[4mint\e[24m \e[1mhistory_length\e[0m
        The number of entries currently stored in the history list.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_m\bma\bax\bx_\b_e\ben\bnt\btr\bri\bie\bes\bs
-       The maximum number of history entries.  This must be changed using s\bst\bti\bi-\b-
-       f\bfl\ble\be_\b_h\bhi\bis\bst\bto\bor\bry\by(\b()\b).
+       \e[4mint\e[24m \e[1mhistory_max_entries\e[0m
+       The maximum number of history entries.  This must be changed using \e[1msti-\e[0m
+       \e[1mfle_history()\e[22m.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_w\bwi\bit\bte\be_\b_t\bti\bim\bme\bes\bst\bta\bam\bmp\bps\bs
+       \e[4mint\e[24m \e[1mhistory_wite_timestamps\e[0m
        If non-zero, timestamps are written to the history file, so they can be
        preserved between sessions.  The default value is 0, meaning that time-
        stamps are not saved.  The current timestamp format uses the  value  of
-       _\bh_\bi_\bs_\bt_\bo_\br_\by_\b__\bc_\bo_\bm_\bm_\be_\bn_\bt_\b__\bc_\bh_\ba_\br  to delimit timestamp entries in the history file.
+       \e[4mhistory_comment_char\e[24m  to delimit timestamp entries in the history file.
        If that variable does not have a value (the default),  timestamps  will
        not be written.
 
-       _\bc_\bh_\ba_\br h\bhi\bis\bst\bto\bor\bry\by_\b_e\bex\bxp\bpa\ban\bns\bsi\bio\bon\bn_\b_c\bch\bha\bar\br
-       The character that introduces a history event.  The default is !\b!.  Set-
+       \e[4mchar\e[24m \e[1mhistory_expansion_char\e[0m
+       The character that introduces a history event.  The default is \e[1m!\e[22m.  Set-
        ting this to 0 inhibits history expansion.
 
-       _\bc_\bh_\ba_\br h\bhi\bis\bst\bto\bor\bry\by_\b_s\bsu\bub\bbs\bst\bt_\b_c\bch\bha\bar\br
+       \e[4mchar\e[24m \e[1mhistory_subst_char\e[0m
        The character that invokes word substitution if found at the start of a
-       line.  The default is ^\b^.
+       line.  The default is \e[1m^\e[22m.
 
-       _\bc_\bh_\ba_\br h\bhi\bis\bst\bto\bor\bry\by_\b_c\bco\bom\bmm\bme\ben\bnt\bt_\b_c\bch\bha\bar\br
+       \e[4mchar\e[24m \e[1mhistory_comment_char\e[0m
        During  tokenization,  if this character is seen as the first character
        of a word, then it and all subsequent characters up to  a  newline  are
        ignored,  suppressing  history expansion for the remainder of the line.
        This is disabled by default.
 
-       _\bc_\bh_\ba_\br _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_w\bwo\bor\brd\bd_\b_d\bde\bel\bli\bim\bmi\bit\bte\ber\brs\bs
-       The  characters  that  separate  tokens  for  h\bhi\bis\bst\bto\bor\bry\by_\b_t\bto\bok\bke\ben\bni\biz\bze\be(\b()\b).   The
-       default value is "\b" \\b\t\bt\\b\n\bn(\b()\b)<\b<>\b>;\b;&\b&|\b|"\b".
+       \e[4mchar\e[24m \e[4m*\e[24m \e[1mhistory_word_delimiters\e[0m
+       The  characters  that  separate  tokens  for  \e[1mhistory_tokenize()\e[22m.   The
+       default value is \e[1m" \t\n()<>;&|"\e[22m.
 
-       _\bc_\bh_\ba_\br _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_n\bno\bo_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_c\bch\bha\bar\brs\bs
+       \e[4mchar\e[24m \e[4m*\e[24m \e[1mhistory_no_expand_chars\e[0m
        The list of characters which inhibit history expansion if found immedi-
-       ately following h\bhi\bis\bst\bto\bor\bry\by_\b_e\bex\bxp\bpa\ban\bns\bsi\bio\bon\bn_\b_c\bch\bha\bar\br.  The  default  is  space,  tab,
-       newline, \\b\r\br, and =\b=.
+       ately following \e[1mhistory_expansion_char\e[22m.  The  default  is  space,  tab,
+       newline, \e[1m\r\e[22m, and \e[1m=\e[22m.
 
-       _\bc_\bh_\ba_\br _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_s\bse\bea\bar\brc\bch\bh_\b_d\bde\bel\bli\bim\bmi\bit\bte\ber\br_\b_c\bch\bha\bar\brs\bs
+       \e[4mchar\e[24m \e[4m*\e[24m \e[1mhistory_search_delimiter_chars\e[0m
        The  list  of  additional characters which can delimit a history search
-       string, in addition to space, tab, _\b: and _\b? in the case of  a  substring
+       string, in addition to space, tab, \e[4m:\e[24m and \e[4m?\e[24m in the case of  a  substring
        search.  The default is empty.
 
-       _\bi_\bn_\bt h\bhi\bis\bst\bto\bor\bry\by_\b_q\bqu\buo\bot\bte\bes\bs_\b_i\bin\bnh\bhi\bib\bbi\bit\bt_\b_e\bex\bxp\bpa\ban\bns\bsi\bio\bon\bn
-       If non-zero, single-quoted words are not scanned for the history expan-
-       sion character.  The default value is 0.
-
-       _\br_\bl_\b__\bl_\bi_\bn_\be_\bb_\bu_\bf_\b__\bf_\bu_\bn_\bc_\b__\bt _\b* h\bhi\bis\bst\bto\bor\bry\by_\b_i\bin\bnh\bhi\bib\bbi\bit\bt_\b_e\bex\bxp\bpa\ban\bns\bsi\bio\bon\bn_\b_f\bfu\bun\bnc\bct\bti\bio\bon\bn
-       This should be set to the address of a function that  takes  two  argu-
-       ments:  a  c\bch\bha\bar\br  *\b*  (_\bs_\bt_\br_\bi_\bn_\bg) and an i\bin\bnt\bt index into that string (_\bi).  It
-       should return a non-zero value if the  history  expansion  starting  at
-       _\bs_\bt_\br_\bi_\bn_\bg_\b[_\bi_\b]  should  not  be  performed;  zero if the expansion should be
-       done.  It is intended for use by applications like b\bba\bas\bsh\bh  that  use  the
-       history  expansion character for additional purposes.  By default, this
-       variable is set to N\bNU\bUL\bLL\bL.
-
-F\bFI\bIL\bLE\bES\bS
-       _\b~_\b/_\b._\bh_\bi_\bs_\bt_\bo_\br_\by
+       \e[4mint\e[24m \e[1mhistory_quotes_inhibit_expansion\e[0m
+       If non-zero, double-quoted words are not scanned for the history expan-
+       sion character or the history comment character.  The default value  is
+       0.
+
+       \e[4mrl_linebuf_func_t\e[24m \e[4m*\e[24m \e[1mhistory_inhibit_expansion_function\e[0m
+       This  should  be  set to the address of a function that takes two argu-
+       ments: a \e[1mchar * \e[22m(\e[4mstring\e[24m) and an \e[1mint \e[22mindex into  that  string  (\e[4mi\e[24m).   It
+       should  return  a  non-zero  value if the history expansion starting at
+       \e[4mstring[i]\e[24m should not be performed; zero  if  the  expansion  should  be
+       done.   It  is  intended for use by applications like \e[1mbash \e[22mthat use the
+       history expansion character for additional purposes.  By default,  this
+       variable is set to \e[1mNULL\e[22m.
+
+\e[1mFILES\e[0m
+       \e[4m~/.history\e[0m
               Default filename for reading and writing saved history
 
-S\bSE\bEE\bE A\bAL\bLS\bSO\bO
-       _\bT_\bh_\be _\bG_\bn_\bu _\bR_\be_\ba_\bd_\bl_\bi_\bn_\be _\bL_\bi_\bb_\br_\ba_\br_\by, Brian Fox and Chet Ramey
-       _\bT_\bh_\be _\bG_\bn_\bu _\bH_\bi_\bs_\bt_\bo_\br_\by _\bL_\bi_\bb_\br_\ba_\br_\by, Brian Fox and Chet Ramey
-       _\bb_\ba_\bs_\bh(1)
-       _\br_\be_\ba_\bd_\bl_\bi_\bn_\be(3)
+\e[1mSEE ALSO\e[0m
+       \e[4mThe\e[24m \e[4mGnu\e[24m \e[4mReadline\e[24m \e[4mLibrary\e[24m, Brian Fox and Chet Ramey
+       \e[4mThe\e[24m \e[4mGnu\e[24m \e[4mHistory\e[24m \e[4mLibrary\e[24m, Brian Fox and Chet Ramey
+       \e[4mbash\e[24m(1)
+       \e[4mreadline\e[24m(3)
 
-A\bAU\bUT\bTH\bHO\bOR\bRS\bS
+\e[1mAUTHORS\e[0m
        Brian Fox, Free Software Foundation
        bfox@gnu.org
 
        Chet Ramey, Case Western Reserve University
        chet.ramey@case.edu
 
-B\bBU\bUG\bG R\bRE\bEP\bPO\bOR\bRT\bTS\bS
-       If you find a bug in the h\bhi\bis\bst\bto\bor\bry\by library, you should  report  it.   But
-       first,  you  should  make  sure  that  it  really is a bug, and that it
-       appears in the latest version of the h\bhi\bis\bst\bto\bor\bry\blibrary that you have.
+\e[1mBUG REPORTS\e[0m
+       If  you  find  a bug in the \e[1mhistory \e[22mlibrary, you should report it.  But
+       first, you should make sure that it  really  is  a  bug,  and  that  it
+       appears in the latest version of the \e[1mhistory \e[22mlibrary that you have.
 
-       Once you have determined that a bug actually exists, mail a bug  report
-       to  _\bb_\bu_\bg_\b-_\br_\be_\ba_\bd_\bl_\bi_\bn_\be@_\bg_\bn_\bu_\b._\bo_\br_\bg.   If  you have a fix, you are welcome to mail
-       that as well!  Suggestions  and  `philosophical'  bug  reports  may  be
-       mailed  to  _\bb_\bu_\bg_\b-_\br_\be_\ba_\bd_\bl_\bi_\bn_\be@_\bg_\bn_\bu_\b._\bo_\br_\bg  or  posted  to  the  Usenet newsgroup
-       g\bgn\bnu\bu.\b.b\bba\bas\bsh\bh.\b.b\bbu\bug\bg.
+       Once  you have determined that a bug actually exists, mail a bug report
+       to \e[4mbug-readline\e[24m@\e[4mgnu.org\e[24m.  If you have a fix, you are  welcome  to  mail
+       that  as  well!   Suggestions  and  `philosophical'  bug reports may be
+       mailed to  \e[4mbug-readline\e[24m@\e[4mgnu.org\e[24m  or  posted  to  the  Usenet  newsgroup
+       \e[1mgnu.bash.bug\e[22m.
 
        Comments and bug reports concerning this manual page should be directed
-       to _\bc_\bh_\be_\bt_\b._\br_\ba_\bm_\be_\by_\b@_\bc_\ba_\bs_\be_\b._\be_\bd_\bu.
+       to \e[4mchet.ramey@case.edu\e[24m.
 
 
 
-GNU History 6.3                  2013 June 27                       HISTORY(3)
+GNU History 6.3                   2015 May 24                       HISTORY(3)
index ada9a38ec44b29dbf84125cd8fe24e86d469b015..7ddc26ae353d33956b936d8f470f39303aff2de6 100644 (file)
@@ -6,9 +6,9 @@
 .\"    Case Western Reserve University
 .\"    chet.ramey@case.edu
 .\"
-.\"    Last Change: Thu Thu Jun 27 10:34:44 EDT 2013
+.\"    Last Change: Sun May 24 18:01:17 EDT 2015
 .\"
-.TH HISTORY 3 "2013 June 27" "GNU History 6.3"
+.TH HISTORY 3 "2015 May 24" "GNU History 6.3"
 .\"
 .\" File Name macro.  This used to be `.PN', for Path Name,
 .\" but Sun doesn't seem to like that very much.
@@ -40,8 +40,8 @@
 .SH NAME
 history \- GNU History Library
 .SH COPYRIGHT
-.if t The GNU History Library is Copyright \(co 1989-2011 by the Free Software Foundation, Inc.
-.if n The GNU History Library is Copyright (C) 1989-2011 by the Free Software Foundation, Inc.
+.if t The GNU History Library is Copyright \(co 1989-2014 by the Free Software Foundation, Inc.
+.if n The GNU History Library is Copyright (C) 1989-2014 by the Free Software Foundation, Inc.
 .SH DESCRIPTION
 Many programs read input from the user a line at a time.  The GNU
 History library is able to keep track of those lines, associate arbitrary
@@ -134,7 +134,7 @@ The entire command line typed so far.
 .SS Word Designators
 .PP
 Word designators are used to select desired words from the event.
-A 
+A
 .B :
 separates the event specification from the word designator.
 It may be omitted if the word designator begins with a
@@ -441,9 +441,11 @@ return a pointer to that entry.  If there is no previous entry, return
 a \fBNULL\fP pointer.
 
 .Fn1 "HIST_ENTRY *" next_history "void"
-Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a \fBNULL\fP pointer.
+If the current history offset refers to a valid history entry,
+increment the current history offset.
+If the possibly-incremented history offset refers to a valid history
+entry, return a pointer to that entry;
+otherwise, return a \fBNULL\fP pointer.
 
 .SS Searching the History List
 
@@ -613,8 +615,8 @@ string, in addition to space, tab, \fI:\fP and \fI?\fP in the case of
 a substring search.  The default is empty.
 
 .Vb int history_quotes_inhibit_expansion
-If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
+If non-zero, double-quoted words are not scanned for the history expansion
+character or the history comment character.  The default value is 0.
 
 .Vb "rl_linebuf_func_t *" history_inhibit_expansion_function
 This should be set to the address of a function that takes two arguments:
index 2316eae77699b6ee52c063304055a9f42ab95c8f..2b51dc777496d2eabb5941a216570ed8e9bef2c6 100644 (file)
Binary files a/doc/history.dvi and b/doc/history.dvi differ
index 07535048e0e1aade21d4110f87f3530475403428..ce350046debd7b34e9409ddbedb839cee4288f54 100644 (file)
@@ -1,6 +1,6 @@
 <HTML>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 11  2014 by texi2html 1.64 -->
+<!-- Created on July, 1  2015 by texi2html 1.64 -->
 <!-- 
 Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
             Karl Berry  <karl@freefriends.org>
@@ -807,9 +807,11 @@ a <CODE>NULL</CODE> pointer.
 <A NAME="IDX22"></A>
 <DL>
 <DT><U>Function:</U> HIST_ENTRY * <B>next_history</B> <I>(void)</I>
-<DD>Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a <CODE>NULL</CODE> pointer.
+<DD>If the current history offset refers to a valid history entry,
+increment the current history offset.
+If the possibly-incremented history offset refers to a valid history
+entry, return a pointer to that entry;
+otherwise, return a <CODE>BNULL</CODE> pointer.
 </DL>
 </P><P>
 
@@ -1138,8 +1140,8 @@ carriage return, and <SAMP>`='</SAMP>.
 <A NAME="IDX46"></A>
 <DL>
 <DT><U>Variable:</U> int <B>history_quotes_inhibit_expansion</B>
-<DD>If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
+<DD>If non-zero, double-quoted words are not scanned for the history expansion
+character or the history comment character.  The default value is 0.
 </DL>
 </P><P>
 
@@ -2127,7 +2129,7 @@ to permit their use in free software.
 <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
 </TR></TABLE>
 <H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 11  2014</I>
+This document was generated by <I>Chet Ramey</I> on <I>July, 1  2015</I>
 using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
 "><I>texi2html</I></A>
 <P></P>  
@@ -2289,7 +2291,7 @@ the following structure:
 <BR>  
 <FONT SIZE="-1">
 This document was generated
-by <I>Chet Ramey</I> on <I>February, 11  2014</I>
+by <I>Chet Ramey</I> on <I>July, 1  2015</I>
 using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
 "><I>texi2html</I></A>
 
index 2d4c785230092b6cba46723e059a89c699461905..0ddd616a0e53678238ebab2ae8a99962021c29bb 100644 (file)
@@ -1,8 +1,8 @@
-This is history.info, produced by makeinfo version 4.13 from
-/usr/homes/chet/src/bash/readline-src/doc/history.texi.
+This is history.info, produced by makeinfo version 5.2 from
+history.texi.
 
-This document describes the GNU History library (version 6.3, 6 January
-2014), a programming tool that provides a consistent user interface for
+This document describes the GNU History library (version 6.4, 28 May
+2015), a programming tool that provides a consistent user interface for
 recalling lines of previously typed input.
 
    Copyright (C) 1988-2014 Free Software Foundation, Inc.
@@ -14,7 +14,6 @@ recalling lines of previously typed input.
      no Back-Cover Texts.  A copy of the license is included in the
      section entitled "GNU Free Documentation License".
 
-
 INFO-DIR-SECTION Libraries
 START-INFO-DIR-ENTRY
 * History: (history).       The GNU history library API.
@@ -47,8 +46,8 @@ File: history.info,  Node: Using History Interactively,  Next: Programming with
 
 This chapter describes how to use the GNU History Library interactively,
 from a user's standpoint.  It should be considered a user's guide.  For
-information on using the GNU History Library in your own programs,
-*note Programming with GNU History::.
+information on using the GNU History Library in your own programs, *note
+Programming with GNU History::.
 
 * Menu:
 
@@ -61,12 +60,12 @@ File: history.info,  Node: History Interaction,  Up: Using History Interactively
 =====================
 
 The History library provides a history expansion feature that is similar
-to the history expansion provided by `csh'.  This section describes the
+to the history expansion provided by 'csh'.  This section describes the
 syntax used to manipulate the history information.
 
    History expansions introduce words from the history list into the
-input stream, making it easy to repeat commands, insert the arguments
-to a previous command into the current input line, or fix errors in
+input stream, making it easy to repeat commands, insert the arguments to
+a previous command into the current input line, or fix errors in
 previous commands quickly.
 
    History expansion takes place in two parts.  The first is to
@@ -74,11 +73,11 @@ determine which line from the history list should be used during
 substitution.  The second is to select portions of that line for
 inclusion into the current one.  The line selected from the history is
 called the "event", and the portions of that line that are acted upon
-are called "words".  Various "modifiers" are available to manipulate
-the selected words.  The line is broken into words in the same fashion
-that Bash does, so that several words surrounded by quotes are
-considered one word.  History expansions are introduced by the
-appearance of the history expansion character, which is `!' by default.
+are called "words".  Various "modifiers" are available to manipulate the
+selected words.  The line is broken into words in the same fashion that
+Bash does, so that several words surrounded by quotes are considered one
+word.  History expansions are introduced by the appearance of the
+history expansion character, which is '!' by default.
 
 * Menu:
 
@@ -94,96 +93,94 @@ File: history.info,  Node: Event Designators,  Next: Word Designators,  Up: Hist
 
 An event designator is a reference to a command line entry in the
 history list.  Unless the reference is absolute, events are relative to
-the current position in the history list.  
+the current position in the history list.
 
-`!'
+'!'
      Start a history substitution, except when followed by a space, tab,
-     the end of the line, or `='.
+     the end of the line, or '='.
 
-`!N'
+'!N'
      Refer to command line N.
 
-`!-N'
+'!-N'
      Refer to the command N lines back.
 
-`!!'
-     Refer to the previous command.  This is a synonym for `!-1'.
+'!!'
+     Refer to the previous command.  This is a synonym for '!-1'.
 
-`!STRING'
+'!STRING'
      Refer to the most recent command preceding the current position in
      the history list starting with STRING.
 
-`!?STRING[?]'
+'!?STRING[?]'
      Refer to the most recent command preceding the current position in
-     the history list containing STRING.  The trailing `?' may be
+     the history list containing STRING.  The trailing '?' may be
      omitted if the STRING is followed immediately by a newline.
 
-`^STRING1^STRING2^'
+'^STRING1^STRING2^'
      Quick Substitution.  Repeat the last command, replacing STRING1
-     with STRING2.  Equivalent to `!!:s/STRING1/STRING2/'.
+     with STRING2.  Equivalent to '!!:s/STRING1/STRING2/'.
 
-`!#'
+'!#'
      The entire command line typed so far.
 
-
 \1f
 File: history.info,  Node: Word Designators,  Next: Modifiers,  Prev: Event Designators,  Up: History Interaction
 
 1.1.2 Word Designators
 ----------------------
 
-Word designators are used to select desired words from the event.  A
-`:' separates the event specification from the word designator.  It may
-be omitted if the word designator begins with a `^', `$', `*', `-', or
-`%'.  Words are numbered from the beginning of the line, with the first
-word being denoted by 0 (zero).  Words are inserted into the current
-line separated by single spaces.
+Word designators are used to select desired words from the event.  A ':'
+separates the event specification from the word designator.  It may be
+omitted if the word designator begins with a '^', '$', '*', '-', or '%'.
+Words are numbered from the beginning of the line, with the first word
+being denoted by 0 (zero).  Words are inserted into the current line
+separated by single spaces.
 
    For example,
 
-`!!'
+'!!'
      designates the preceding command.  When you type this, the
      preceding command is repeated in toto.
 
-`!!:$'
+'!!:$'
      designates the last argument of the preceding command.  This may be
-     shortened to `!$'.
+     shortened to '!$'.
 
-`!fi:2'
+'!fi:2'
      designates the second argument of the most recent command starting
-     with the letters `fi'.
+     with the letters 'fi'.
 
    Here are the word designators:
 
-`0 (zero)'
-     The `0'th word.  For many applications, this is the command word.
+'0 (zero)'
+     The '0'th word.  For many applications, this is the command word.
 
-`N'
+'N'
      The Nth word.
 
-`^'
+'^'
      The first argument; that is, word 1.
 
-`$'
+'$'
      The last argument.
 
-`%'
-     The word matched by the most recent `?STRING?' search.
+'%'
+     The word matched by the most recent '?STRING?' search.
 
-`X-Y'
-     A range of words; `-Y' abbreviates `0-Y'.
+'X-Y'
+     A range of words; '-Y' abbreviates '0-Y'.
 
-`*'
-     All of the words, except the `0'th.  This is a synonym for `1-$'.
-     It is not an error to use `*' if there is just one word in the
+'*'
+     All of the words, except the '0'th.  This is a synonym for '1-$'.
+     It is not an error to use '*' if there is just one word in the
      event; the empty string is returned in that case.
 
-`X*'
-     Abbreviates `X-$'
-
-`X-'
-     Abbreviates `X-$' like `X*', but omits the last word.
+'X*'
+     Abbreviates 'X-$'
 
+'X-'
+     Abbreviates 'X-$' like 'X*', but omits the last word.
 
    If a word designator is supplied without an event specification, the
 previous command is used as the event.
@@ -195,43 +192,42 @@ File: history.info,  Node: Modifiers,  Prev: Word Designators,  Up: History Inte
 ---------------
 
 After the optional word designator, you can add a sequence of one or
-more of the following modifiers, each preceded by a `:'.
+more of the following modifiers, each preceded by a ':'.
 
-`h'
+'h'
      Remove a trailing pathname component, leaving only the head.
 
-`t'
+'t'
      Remove all leading pathname components, leaving the tail.
 
-`r'
-     Remove a trailing suffix of the form `.SUFFIX', leaving the
+'r'
+     Remove a trailing suffix of the form '.SUFFIX', leaving the
      basename.
 
-`e'
+'e'
      Remove all but the trailing suffix.
 
-`p'
+'p'
      Print the new command but do not execute it.
 
-`s/OLD/NEW/'
+'s/OLD/NEW/'
      Substitute NEW for the first occurrence of OLD in the event line.
-     Any delimiter may be used in place of `/'.  The delimiter may be
-     quoted in OLD and NEW with a single backslash.  If `&' appears in
-     NEW, it is replaced by OLD.  A single backslash will quote the
-     `&'.  The final delimiter is optional if it is the last character
-     on the input line.
+     Any delimiter may be used in place of '/'.  The delimiter may be
+     quoted in OLD and NEW with a single backslash.  If '&' appears in
+     NEW, it is replaced by OLD.  A single backslash will quote the '&'.
+     The final delimiter is optional if it is the last character on the
+     input line.
 
-`&'
+'&'
      Repeat the previous substitution.
 
-`g'
-`a'
+'g'
+'a'
      Cause changes to be applied over the entire event line.  Used in
-     conjunction with `s', as in `gs/OLD/NEW/', or with `&'.
-
-`G'
-     Apply the following `s' modifier once to each word in the event.
+     conjunction with 's', as in 'gs/OLD/NEW/', or with '&'.
 
+'G'
+     Apply the following 's' modifier once to each word in the event.
 
 \1f
 File: history.info,  Node: Programming with GNU History,  Next: GNU Free Documentation License,  Prev: Using History Interactively,  Up: Top
@@ -239,10 +235,10 @@ File: history.info,  Node: Programming with GNU History,  Next: GNU Free Documen
 2 Programming with GNU History
 ******************************
 
-This chapter describes how to interface programs that you write with
-the GNU History Library.  It should be considered a technical guide.
-For information on the interactive use of GNU History, *note Using
-History Interactively::.
+This chapter describes how to interface programs that you write with the
+GNU History Library.  It should be considered a technical guide.  For
+information on the interactive use of GNU History, *note Using History
+Interactively::.
 
 * Menu:
 
@@ -272,21 +268,21 @@ available which provides for a consistent user interface across
 different programs.
 
    The user using programs written with the History library has the
-benefit of a consistent user interface with a set of well-known
-commands for manipulating the text of previous lines and using that text
-in new commands.  The basic history manipulation commands are similar to
-the history substitution provided by `csh'.
+benefit of a consistent user interface with a set of well-known commands
+for manipulating the text of previous lines and using that text in new
+commands.  The basic history manipulation commands are similar to the
+history substitution provided by 'csh'.
 
    If the programmer desires, he can use the Readline library, which
 includes some history manipulation by default, and has the added
 advantage of command line editing.
 
    Before declaring any functions using any functionality the History
-library provides in other code, an application writer should include
-the file `<readline/history.h>' in any file that uses the History
-library's features.  It supplies extern declarations for all of the
-library's public functions and variables, and declares all of the
-public data structures.
+library provides in other code, an application writer should include the
+file '<readline/history.h>' in any file that uses the History library's
+features.  It supplies extern declarations for all of the library's
+public functions and variables, and declares all of the public data
+structures.
 
 \1f
 File: history.info,  Node: History Storage,  Next: History Functions,  Prev: Introduction to History,  Up: Programming with GNU History
@@ -323,7 +319,7 @@ structure:
        int flags;
      } HISTORY_STATE;
 
-   If the flags member includes `HS_STIFLED', the history has been
+   If the flags member includes 'HS_STIFLED', the history has been
 stifled.
 
 \1f
@@ -359,9 +355,9 @@ File: history.info,  Node: Initializing History and State Management,  Next: His
 2.3.1 Initializing History and State Management
 -----------------------------------------------
 
-This section describes functions used to initialize and manage the
-state of the History library when you want to use the history functions
-in your program.
+This section describes functions used to initialize and manage the state
+of the History library when you want to use the history functions in
+your program.
 
  -- Function: void using_history (void)
      Begin a session in which the history functions might be used.  This
@@ -385,28 +381,28 @@ parameters managing the list itself.
 
  -- Function: void add_history (const char *string)
      Place STRING at the end of the history list.  The associated data
-     field (if any) is set to `NULL'.
+     field (if any) is set to 'NULL'.
 
  -- Function: void add_history_time (const char *string)
-     Change the time stamp associated with the most recent history
-     entry to STRING.
+     Change the time stamp associated with the most recent history entry
+     to STRING.
 
  -- Function: HIST_ENTRY * remove_history (int which)
-     Remove history entry at offset WHICH from the history.  The
-     removed element is returned so you can free the line, data, and
-     containing structure.
+     Remove history entry at offset WHICH from the history.  The removed
+     element is returned so you can free the line, data, and containing
+     structure.
 
  -- Function: histdata_t free_history_entry (HIST_ENTRY *histent)
-     Free the history entry HISTENT and any history library private
-     data associated with it.  Returns the application-specific data so
-     the caller can dispose of it.
+     Free the history entry HISTENT and any history library private data
+     associated with it.  Returns the application-specific data so the
+     caller can dispose of it.
 
  -- Function: HIST_ENTRY * replace_history_entry (int which, const char
           *line, histdata_t data)
      Make the history entry at offset WHICH have LINE and DATA.  This
      returns the old entry so the caller can dispose of any
      application-specific data.  In the case of an invalid WHICH, a
-     `NULL' pointer is returned.
+     'NULL' pointer is returned.
 
  -- Function: void clear_history (void)
      Clear the history list by deleting all the entries.
@@ -415,9 +411,9 @@ parameters managing the list itself.
      Stifle the history list, remembering only the last MAX entries.
 
  -- Function: int unstifle_history (void)
-     Stop stifling the history.  This returns the previously-set
-     maximum number of history entries (as set by `stifle_history()').
-     The value is positive if the history was stifled, negative if it
+     Stop stifling the history.  This returns the previously-set maximum
+     number of history entries (as set by 'stifle_history()').  The
+     value is positive if the history was stifled, negative if it
      wasn't.
 
  -- Function: int history_is_stifled (void)
@@ -433,23 +429,23 @@ These functions return information about the entire history list or
 individual list entries.
 
  -- Function: HIST_ENTRY ** history_list (void)
-     Return a `NULL' terminated array of `HIST_ENTRY *' which is the
+     Return a 'NULL' terminated array of 'HIST_ENTRY *' which is the
      current input history.  Element 0 of this list is the beginning of
-     time.  If there is no history, return `NULL'.
+     time.  If there is no history, return 'NULL'.
 
  -- Function: int where_history (void)
      Returns the offset of the current history element.
 
  -- Function: HIST_ENTRY * current_history (void)
      Return the history entry at the current position, as determined by
-     `where_history()'.  If there is no entry there, return a `NULL'
+     'where_history()'.  If there is no entry there, return a 'NULL'
      pointer.
 
  -- Function: HIST_ENTRY * history_get (int offset)
      Return the history entry at position OFFSET, starting from
-     `history_base' (*note History Variables::).  If there is no entry
+     'history_base' (*note History Variables::).  If there is no entry
      there, or if OFFSET is greater than the history length, return a
-     `NULL' pointer.
+     'NULL' pointer.
 
  -- Function: time_t history_get_time (HIST_ENTRY *entry)
      Return the time stamp associated with the history entry ENTRY.
@@ -475,13 +471,14 @@ or changed.
 
  -- Function: HIST_ENTRY * previous_history (void)
      Back up the current history offset to the previous history entry,
-     and return a pointer to that entry.  If there is no previous
-     entry, return a `NULL' pointer.
+     and return a pointer to that entry.  If there is no previous entry,
+     return a 'NULL' pointer.
 
  -- Function: HIST_ENTRY * next_history (void)
-     Move the current history offset forward to the next history entry,
-     and return the a pointer to that entry.  If there is no next
-     entry, return a `NULL' pointer.
+     If the current history offset refers to a valid history entry,
+     increment the current history offset.  If the possibly-incremented
+     history offset refers to a valid history entry, return a pointer to
+     that entry; otherwise, return a 'BNULL' pointer.
 
 \1f
 File: history.info,  Node: Searching the History List,  Next: Managing the History File,  Prev: Moving Around the History List,  Up: History Functions
@@ -493,7 +490,7 @@ These functions allow searching of the history list for entries
 containing a specific string.  Searching may be performed both forward
 and backward from the current history position.  The search may be
 "anchored", meaning that the string must match at the beginning of the
-history entry.  
+history entry.
 
  -- Function: int history_search (const char *string, int direction)
      Search the history for STRING, starting at the current history
@@ -501,8 +498,8 @@ history entry.
      previous entries, otherwise through subsequent entries.  If STRING
      is found, then the current history index is set to that history
      entry, and the value returned is the offset in the line of the
-     entry where STRING was found.  Otherwise, nothing is changed, and
-     -1 is returned.
+     entry where STRING was found.  Otherwise, nothing is changed, and a
+     -1 is returned.
 
  -- Function: int history_search_prefix (const char *string, int
           direction)
@@ -514,13 +511,12 @@ history entry.
      the return value is 0.  Otherwise, nothing is changed, and a -1 is
      returned.
 
- -- Function: int history_search_pos (const char *string, int
-          direction, int pos)
-     Search for STRING in the history list, starting at POS, an
-     absolute index into the list.  If DIRECTION is negative, the search
-     proceeds backward from POS, otherwise forward.  Returns the
-     absolute index of the history element where STRING was found, or
-     -1 otherwise.
+ -- Function: int history_search_pos (const char *string, int direction,
+          int pos)
+     Search for STRING in the history list, starting at POS, an absolute
+     index into the list.  If DIRECTION is negative, the search proceeds
+     backward from POS, otherwise forward.  Returns the absolute index
+     of the history element where STRING was found, or -1 otherwise.
 
 \1f
 File: history.info,  Node: Managing the History File,  Next: History Expansion,  Prev: Searching the History List,  Up: History Functions
@@ -533,33 +529,33 @@ This section documents the functions for managing a history file.
 
  -- Function: int read_history (const char *filename)
      Add the contents of FILENAME to the history list, a line at a time.
-     If FILENAME is `NULL', then read from `~/.history'.  Returns 0 if
-     successful, or `errno' if not.
+     If FILENAME is 'NULL', then read from '~/.history'.  Returns 0 if
+     successful, or 'errno' if not.
 
  -- Function: int read_history_range (const char *filename, int from,
           int to)
      Read a range of lines from FILENAME, adding them to the history
      list.  Start reading at line FROM and end at TO.  If FROM is zero,
      start at the beginning.  If TO is less than FROM, then read until
-     the end of the file.  If FILENAME is `NULL', then read from
-     `~/.history'.  Returns 0 if successful, or `errno' if not.
+     the end of the file.  If FILENAME is 'NULL', then read from
+     '~/.history'.  Returns 0 if successful, or 'errno' if not.
 
  -- Function: int write_history (const char *filename)
      Write the current history to FILENAME, overwriting FILENAME if
-     necessary.  If FILENAME is `NULL', then write the history list to
-     `~/.history'.  Returns 0 on success, or `errno' on a read or write
+     necessary.  If FILENAME is 'NULL', then write the history list to
+     '~/.history'.  Returns 0 on success, or 'errno' on a read or write
      error.
 
  -- Function: int append_history (int nelements, const char *filename)
      Append the last NELEMENTS of the history list to FILENAME.  If
-     FILENAME is `NULL', then append to `~/.history'.  Returns 0 on
-     success, or `errno' on a read or write error.
+     FILENAME is 'NULL', then append to '~/.history'.  Returns 0 on
+     success, or 'errno' on a read or write error.
 
  -- Function: int history_truncate_file (const char *filename, int
           nlines)
      Truncate the history file FILENAME, leaving only the last NLINES
-     lines.  If FILENAME is `NULL', then `~/.history' is truncated.
-     Returns 0 on success, or `errno' on failure.
+     lines.  If FILENAME is 'NULL', then '~/.history' is truncated.
+     Returns 0 on success, or 'errno' on failure.
 
 \1f
 File: history.info,  Node: History Expansion,  Prev: Managing the History File,  Up: History Functions
@@ -572,26 +568,23 @@ These functions implement history expansion.
  -- Function: int history_expand (char *string, char **output)
      Expand STRING, placing the result into OUTPUT, a pointer to a
      string (*note History Interaction::).  Returns:
-    `0'
+     '0'
           If no expansions took place (or, if the only change in the
           text was the removal of escape characters preceding the
           history expansion character);
-
-    `1'
+     '1'
           if expansions did take place;
-
-    `-1'
+     '-1'
           if there was an error in expansion;
-
-    `2'
-          if the returned line should be displayed, but not executed,
-          as with the `:p' modifier (*note Modifiers::).
+     '2'
+          if the returned line should be displayed, but not executed, as
+          with the ':p' modifier (*note Modifiers::).
 
      If an error occurred in expansion, then OUTPUT contains a
      descriptive error message.
 
- -- Function: char * get_history_event (const char *string, int
-          *cindex, int qchar)
+ -- Function: char * get_history_event (const char *string, int *cindex,
+          int qchar)
      Returns the text of the history event beginning at STRING +
      *CINDEX.  *CINDEX is modified to point to after the event
      specifier.  At function entry, CINDEX points to the index into
@@ -602,14 +595,14 @@ These functions implement history expansion.
  -- Function: char ** history_tokenize (const char *string)
      Return an array of tokens parsed out of STRING, much as the shell
      might.  The tokens are split on the characters in the
-     HISTORY_WORD_DELIMITERS variable, and shell quoting conventions
-     are obeyed.
+     HISTORY_WORD_DELIMITERS variable, and shell quoting conventions are
+     obeyed.
 
  -- Function: char * history_arg_extract (int first, int last, const
           char *string)
      Extract a string segment consisting of the FIRST through LAST
      arguments present in STRING.  Arguments are split using
-     `history_tokenize'.
+     'history_tokenize'.
 
 \1f
 File: history.info,  Node: History Variables,  Next: History Programming Example,  Prev: History Functions,  Up: Programming with GNU History
@@ -628,25 +621,25 @@ GNU History Library.
 
  -- Variable: int history_max_entries
      The maximum number of history entries.  This must be changed using
-     `stifle_history()'.
+     'stifle_history()'.
 
  -- Variable: int history_write_timestamps
      If non-zero, timestamps are written to the history file, so they
-     can be preserved between sessions.  The default value is 0,
-     meaning that timestamps are not saved.
+     can be preserved between sessions.  The default value is 0, meaning
+     that timestamps are not saved.
 
      The current timestamp format uses the value of HISTORY_COMMENT_CHAR
-     to delimit timestamp entries in the history file.  If that
-     variable does not have a value (the default), timestamps will not
-     be written.
+     to delimit timestamp entries in the history file.  If that variable
+     does not have a value (the default), timestamps will not be
+     written.
 
  -- Variable: char history_expansion_char
-     The character that introduces a history event.  The default is `!'.
+     The character that introduces a history event.  The default is '!'.
      Setting this to 0 inhibits history expansion.
 
  -- Variable: char history_subst_char
      The character that invokes word substitution if found at the start
-     of a line.  The default is `^'.
+     of a line.  The default is '^'.
 
  -- Variable: char history_comment_char
      During tokenization, if this character is seen as the first
@@ -655,31 +648,32 @@ GNU History Library.
      remainder of the line.  This is disabled by default.
 
  -- Variable: char * history_word_delimiters
-     The characters that separate tokens for `history_tokenize()'.  The
-     default value is `" \t\n()<>;&|"'.
+     The characters that separate tokens for 'history_tokenize()'.  The
+     default value is '" \t\n()<>;&|"'.
 
  -- Variable: char * history_search_delimiter_chars
      The list of additional characters which can delimit a history
-     search string, in addition to space, TAB, `:' and `?' in the case
+     search string, in addition to space, TAB, ':' and '?' in the case
      of a substring search.  The default is empty.
 
  -- Variable: char * history_no_expand_chars
      The list of characters which inhibit history expansion if found
      immediately following HISTORY_EXPANSION_CHAR.  The default is
-     space, tab, newline, carriage return, and `='.
+     space, tab, newline, carriage return, and '='.
 
  -- Variable: int history_quotes_inhibit_expansion
-     If non-zero, single-quoted words are not scanned for the history
-     expansion character.  The default value is 0.
+     If non-zero, double-quoted words are not scanned for the history
+     expansion character or the history comment character.  The default
+     value is 0.
 
  -- Variable: rl_linebuf_func_t * history_inhibit_expansion_function
      This should be set to the address of a function that takes two
-     arguments: a `char *' (STRING) and an `int' index into that string
+     arguments: a 'char *' (STRING) and an 'int' index into that string
      (I).  It should return a non-zero value if the history expansion
      starting at STRING[I] should not be performed; zero if the
      expansion should be done.  It is intended for use by applications
      like Bash that use the history expansion character for additional
-     purposes.  By default, this variable is set to `NULL'.
+     purposes.  By default, this variable is set to 'NULL'.
 
 \1f
 File: history.info,  Node: History Programming Example,  Prev: History Variables,  Up: Programming with GNU History
@@ -785,7 +779,7 @@ Appendix A GNU Free Documentation License
                      Version 1.3, 3 November 2008
 
      Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-     `http://fsf.org/'
+     <http://fsf.org/>
 
      Everyone is permitted to copy and distribute verbatim copies
      of this license document, but changing it is not allowed.
@@ -810,21 +804,21 @@ Appendix A GNU Free Documentation License
      free program should come with manuals providing the same freedoms
      that the software does.  But this License is not limited to
      software manuals; it can be used for any textual work, regardless
-     of subject matter or whether it is published as a printed book.
-     We recommend this License principally for works whose purpose is
+     of subject matter or whether it is published as a printed book.  We
+     recommend this License principally for works whose purpose is
      instruction or reference.
 
   1. APPLICABILITY AND DEFINITIONS
 
      This License applies to any manual or other work, in any medium,
-     that contains a notice placed by the copyright holder saying it
-     can be distributed under the terms of this License.  Such a notice
+     that contains a notice placed by the copyright holder saying it can
+     be distributed under the terms of this License.  Such a notice
      grants a world-wide, royalty-free license, unlimited in duration,
      to use that work under the conditions stated herein.  The
      "Document", below, refers to any such manual or work.  Any member
-     of the public is a licensee, and is addressed as "you".  You
-     accept the license if you copy, modify or distribute the work in a
-     way requiring permission under copyright law.
+     of the public is a licensee, and is addressed as "you".  You accept
+     the license if you copy, modify or distribute the work in a way
+     requiring permission under copyright law.
 
      A "Modified Version" of the Document means any work containing the
      Document or a portion of it, either copied verbatim, or with
@@ -842,12 +836,12 @@ Appendix A GNU Free Documentation License
      regarding them.
 
      The "Invariant Sections" are certain Secondary Sections whose
-     titles are designated, as being those of Invariant Sections, in
-     the notice that says that the Document is released under this
-     License.  If a section does not fit the above definition of
-     Secondary then it is not allowed to be designated as Invariant.
-     The Document may contain zero Invariant Sections.  If the Document
-     does not identify any Invariant Sections then there are none.
+     titles are designated, as being those of Invariant Sections, in the
+     notice that says that the Document is released under this License.
+     If a section does not fit the above definition of Secondary then it
+     is not allowed to be designated as Invariant.  The Document may
+     contain zero Invariant Sections.  If the Document does not identify
+     any Invariant Sections then there are none.
 
      The "Cover Texts" are certain short passages of text that are
      listed, as Front-Cover Texts or Back-Cover Texts, in the notice
@@ -858,27 +852,27 @@ Appendix A GNU Free Documentation License
      A "Transparent" copy of the Document means a machine-readable copy,
      represented in a format whose specification is available to the
      general public, that is suitable for revising the document
-     straightforwardly with generic text editors or (for images
-     composed of pixels) generic paint programs or (for drawings) some
-     widely available drawing editor, and that is suitable for input to
-     text formatters or for automatic translation to a variety of
-     formats suitable for input to text formatters.  A copy made in an
-     otherwise Transparent file format whose markup, or absence of
-     markup, has been arranged to thwart or discourage subsequent
-     modification by readers is not Transparent.  An image format is
-     not Transparent if used for any substantial amount of text.  A
-     copy that is not "Transparent" is called "Opaque".
+     straightforwardly with generic text editors or (for images composed
+     of pixels) generic paint programs or (for drawings) some widely
+     available drawing editor, and that is suitable for input to text
+     formatters or for automatic translation to a variety of formats
+     suitable for input to text formatters.  A copy made in an otherwise
+     Transparent file format whose markup, or absence of markup, has
+     been arranged to thwart or discourage subsequent modification by
+     readers is not Transparent.  An image format is not Transparent if
+     used for any substantial amount of text.  A copy that is not
+     "Transparent" is called "Opaque".
 
      Examples of suitable formats for Transparent copies include plain
      ASCII without markup, Texinfo input format, LaTeX input format,
-     SGML or XML using a publicly available DTD, and
-     standard-conforming simple HTML, PostScript or PDF designed for
-     human modification.  Examples of transparent image formats include
-     PNG, XCF and JPG.  Opaque formats include proprietary formats that
-     can be read and edited only by proprietary word processors, SGML or
-     XML for which the DTD and/or processing tools are not generally
-     available, and the machine-generated HTML, PostScript or PDF
-     produced by some word processors for output purposes only.
+     SGML or XML using a publicly available DTD, and standard-conforming
+     simple HTML, PostScript or PDF designed for human modification.
+     Examples of transparent image formats include PNG, XCF and JPG.
+     Opaque formats include proprietary formats that can be read and
+     edited only by proprietary word processors, SGML or XML for which
+     the DTD and/or processing tools are not generally available, and
+     the machine-generated HTML, PostScript or PDF produced by some word
+     processors for output purposes only.
 
      The "Title Page" means, for a printed book, the title page itself,
      plus such following pages as are needed to hold, legibly, the
@@ -916,8 +910,8 @@ Appendix A GNU Free Documentation License
      may not use technical measures to obstruct or control the reading
      or further copying of the copies you make or distribute.  However,
      you may accept compensation in exchange for copies.  If you
-     distribute a large enough number of copies you must also follow
-     the conditions in section 3.
+     distribute a large enough number of copies you must also follow the
+     conditions in section 3.
 
      You may also lend copies, under the same conditions stated above,
      and you may publicly display copies.
@@ -931,12 +925,11 @@ Appendix A GNU Free Documentation License
      these Cover Texts: Front-Cover Texts on the front cover, and
      Back-Cover Texts on the back cover.  Both covers must also clearly
      and legibly identify you as the publisher of these copies.  The
-     front cover must present the full title with all words of the
-     title equally prominent and visible.  You may add other material
-     on the covers in addition.  Copying with changes limited to the
-     covers, as long as they preserve the title of the Document and
-     satisfy these conditions, can be treated as verbatim copying in
-     other respects.
+     front cover must present the full title with all words of the title
+     equally prominent and visible.  You may add other material on the
+     covers in addition.  Copying with changes limited to the covers, as
+     long as they preserve the title of the Document and satisfy these
+     conditions, can be treated as verbatim copying in other respects.
 
      If the required texts for either cover are too voluminous to fit
      legibly, you should put the first ones listed (as many as fit
@@ -944,40 +937,39 @@ Appendix A GNU Free Documentation License
      adjacent pages.
 
      If you publish or distribute Opaque copies of the Document
-     numbering more than 100, you must either include a
-     machine-readable Transparent copy along with each Opaque copy, or
-     state in or with each Opaque copy a computer-network location from
-     which the general network-using public has access to download
-     using public-standard network protocols a complete Transparent
-     copy of the Document, free of added material.  If you use the
-     latter option, you must take reasonably prudent steps, when you
-     begin distribution of Opaque copies in quantity, to ensure that
-     this Transparent copy will remain thus accessible at the stated
-     location until at least one year after the last time you
-     distribute an Opaque copy (directly or through your agents or
-     retailers) of that edition to the public.
+     numbering more than 100, you must either include a machine-readable
+     Transparent copy along with each Opaque copy, or state in or with
+     each Opaque copy a computer-network location from which the general
+     network-using public has access to download using public-standard
+     network protocols a complete Transparent copy of the Document, free
+     of added material.  If you use the latter option, you must take
+     reasonably prudent steps, when you begin distribution of Opaque
+     copies in quantity, to ensure that this Transparent copy will
+     remain thus accessible at the stated location until at least one
+     year after the last time you distribute an Opaque copy (directly or
+     through your agents or retailers) of that edition to the public.
 
      It is requested, but not required, that you contact the authors of
-     the Document well before redistributing any large number of
-     copies, to give them a chance to provide you with an updated
-     version of the Document.
+     the Document well before redistributing any large number of copies,
+     to give them a chance to provide you with an updated version of the
+     Document.
 
   4. MODIFICATIONS
 
      You may copy and distribute a Modified Version of the Document
      under the conditions of sections 2 and 3 above, provided that you
-     release the Modified Version under precisely this License, with
-     the Modified Version filling the role of the Document, thus
-     licensing distribution and modification of the Modified Version to
-     whoever possesses a copy of it.  In addition, you must do these
-     things in the Modified Version:
+     release the Modified Version under precisely this License, with the
+     Modified Version filling the role of the Document, thus licensing
+     distribution and modification of the Modified Version to whoever
+     possesses a copy of it.  In addition, you must do these things in
+     the Modified Version:
 
        A. Use in the Title Page (and on the covers, if any) a title
-          distinct from that of the Document, and from those of
-          previous versions (which should, if there were any, be listed
-          in the History section of the Document).  You may use the
-          same title as a previous version if the original publisher of
-          that version gives permission.
+          distinct from that of the Document, and from those of previous
+          versions (which should, if there were any, be listed in the
+          History section of the Document).  You may use the same title
+          as a previous version if the original publisher of that
+          version gives permission.
 
        B. List on the Title Page, as authors, one or more persons or
           entities responsible for authorship of the modifications in
@@ -1007,31 +999,30 @@ Appendix A GNU Free Documentation License
 
        I. Preserve the section Entitled "History", Preserve its Title,
           and add to it an item stating at least the title, year, new
-          authors, and publisher of the Modified Version as given on
-          the Title Page.  If there is no section Entitled "History" in
-          the Document, create one stating the title, year, authors,
-          and publisher of the Document as given on its Title Page,
-          then add an item describing the Modified Version as stated in
-          the previous sentence.
+          authors, and publisher of the Modified Version as given on the
+          Title Page.  If there is no section Entitled "History" in the
+          Document, create one stating the title, year, authors, and
+          publisher of the Document as given on its Title Page, then add
+          an item describing the Modified Version as stated in the
+          previous sentence.
 
        J. Preserve the network location, if any, given in the Document
           for public access to a Transparent copy of the Document, and
           likewise the network locations given in the Document for
-          previous versions it was based on.  These may be placed in
-          the "History" section.  You may omit a network location for a
-          work that was published at least four years before the
-          Document itself, or if the original publisher of the version
-          it refers to gives permission.
+          previous versions it was based on.  These may be placed in the
+          "History" section.  You may omit a network location for a work
+          that was published at least four years before the Document
+          itself, or if the original publisher of the version it refers
+          to gives permission.
 
        K. For any section Entitled "Acknowledgements" or "Dedications",
-          Preserve the Title of the section, and preserve in the
-          section all the substance and tone of each of the contributor
+          Preserve the Title of the section, and preserve in the section
+          all the substance and tone of each of the contributor
           acknowledgements and/or dedications given therein.
 
-       L. Preserve all the Invariant Sections of the Document,
-          unaltered in their text and in their titles.  Section numbers
-          or the equivalent are not considered part of the section
-          titles.
+       L. Preserve all the Invariant Sections of the Document, unaltered
+          in their text and in their titles.  Section numbers or the
+          equivalent are not considered part of the section titles.
 
        M. Delete any section Entitled "Endorsements".  Such a section
           may not be included in the Modified Version.
@@ -1044,11 +1035,11 @@ Appendix A GNU Free Documentation License
 
      If the Modified Version includes new front-matter sections or
      appendices that qualify as Secondary Sections and contain no
-     material copied from the Document, you may at your option
-     designate some or all of these sections as invariant.  To do this,
-     add their titles to the list of Invariant Sections in the Modified
-     Version's license notice.  These titles must be distinct from any
-     other section titles.
+     material copied from the Document, you may at your option designate
+     some or all of these sections as invariant.  To do this, add their
+     titles to the list of Invariant Sections in the Modified Version's
+     license notice.  These titles must be distinct from any other
+     section titles.
 
      You may add a section Entitled "Endorsements", provided it contains
      nothing but endorsements of your Modified Version by various
@@ -1057,15 +1048,15 @@ Appendix A GNU Free Documentation License
      definition of a standard.
 
      You may add a passage of up to five words as a Front-Cover Text,
-     and a passage of up to 25 words as a Back-Cover Text, to the end
-     of the list of Cover Texts in the Modified Version.  Only one
-     passage of Front-Cover Text and one of Back-Cover Text may be
-     added by (or through arrangements made by) any one entity.  If the
-     Document already includes a cover text for the same cover,
-     previously added by you or by arrangement made by the same entity
-     you are acting on behalf of, you may not add another; but you may
-     replace the old one, on explicit permission from the previous
-     publisher that added the old one.
+     and a passage of up to 25 words as a Back-Cover Text, to the end of
+     the list of Cover Texts in the Modified Version.  Only one passage
+     of Front-Cover Text and one of Back-Cover Text may be added by (or
+     through arrangements made by) any one entity.  If the Document
+     already includes a cover text for the same cover, previously added
+     by you or by arrangement made by the same entity you are acting on
+     behalf of, you may not add another; but you may replace the old
+     one, on explicit permission from the previous publisher that added
+     the old one.
 
      The author(s) and publisher(s) of the Document do not by this
      License give permission to use their names for publicity for or to
@@ -1075,8 +1066,8 @@ Appendix A GNU Free Documentation License
 
      You may combine the Document with other documents released under
      this License, under the terms defined in section 4 above for
-     modified versions, provided that you include in the combination
-     all of the Invariant Sections of all of the original documents,
+     modified versions, provided that you include in the combination all
+     of the Invariant Sections of all of the original documents,
      unmodified, and list them all as Invariant Sections of your
      combined work in its license notice, and that you preserve all
      their Warranty Disclaimers.
@@ -1103,20 +1094,20 @@ Appendix A GNU Free Documentation License
      documents released under this License, and replace the individual
      copies of this License in the various documents with a single copy
      that is included in the collection, provided that you follow the
-     rules of this License for verbatim copying of each of the
-     documents in all other respects.
+     rules of this License for verbatim copying of each of the documents
+     in all other respects.
 
      You may extract a single document from such a collection, and
      distribute it individually under this License, provided you insert
-     a copy of this License into the extracted document, and follow
-     this License in all other respects regarding verbatim copying of
-     that document.
+     a copy of this License into the extracted document, and follow this
+     License in all other respects regarding verbatim copying of that
+     document.
 
   7. AGGREGATION WITH INDEPENDENT WORKS
 
      A compilation of the Document or its derivatives with other
-     separate and independent documents or works, in or on a volume of
-     storage or distribution medium, is called an "aggregate" if the
+     separate and independent documents or works, in or on a volume of a
+     storage or distribution medium, is called an "aggregate" if the
      copyright resulting from the compilation is not used to limit the
      legal rights of the compilation's users beyond what the individual
      works permit.  When the Document is included in an aggregate, this
@@ -1161,8 +1152,8 @@ Appendix A GNU Free Documentation License
 
      However, if you cease all violation of this License, then your
      license from a particular copyright holder is reinstated (a)
-     provisionally, unless and until the copyright holder explicitly
-     and finally terminates your license, and (b) permanently, if the
+     provisionally, unless and until the copyright holder explicitly and
+     finally terminates your license, and (b) permanently, if the
      copyright holder fails to notify you of the violation by some
      reasonable means prior to 60 days after the cessation.
 
@@ -1174,33 +1165,33 @@ Appendix A GNU Free Documentation License
      after your receipt of the notice.
 
      Termination of your rights under this section does not terminate
-     the licenses of parties who have received copies or rights from
-     you under this License.  If your rights have been terminated and
-     not permanently reinstated, receipt of a copy of some or all of
-     the same material does not give you any rights to use it.
+     the licenses of parties who have received copies or rights from you
+     under this License.  If your rights have been terminated and not
+     permanently reinstated, receipt of a copy of some or all of the
+     same material does not give you any rights to use it.
 
- 10. FUTURE REVISIONS OF THIS LICENSE
 10. FUTURE REVISIONS OF THIS LICENSE
 
      The Free Software Foundation may publish new, revised versions of
      the GNU Free Documentation License from time to time.  Such new
      versions will be similar in spirit to the present version, but may
      differ in detail to address new problems or concerns.  See
-     `http://www.gnu.org/copyleft/'.
+     <http://www.gnu.org/copyleft/>.
 
      Each version of the License is given a distinguishing version
      number.  If the Document specifies that a particular numbered
      version of this License "or any later version" applies to it, you
      have the option of following the terms and conditions either of
      that specified version or of any later version that has been
-     published (not as a draft) by the Free Software Foundation.  If
-     the Document does not specify a version number of this License,
-     you may choose any version ever published (not as a draft) by the
-     Free Software Foundation.  If the Document specifies that a proxy
-     can decide which future versions of this License can be used, that
+     published (not as a draft) by the Free Software Foundation.  If the
+     Document does not specify a version number of this License, you may
+     choose any version ever published (not as a draft) by the Free
+     Software Foundation.  If the Document specifies that a proxy can
+     decide which future versions of this License can be used, that
      proxy's public statement of acceptance of a version permanently
      authorizes you to choose that version for the Document.
 
- 11. RELICENSING
 11. RELICENSING
 
      "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
      World Wide Web server that publishes copyrightable works and also
@@ -1230,7 +1221,6 @@ Appendix A GNU Free Documentation License
      site under CC-BY-SA on the same site at any time before August 1,
      2009, provided the MMC is eligible for relicensing.
 
-
 ADDENDUM: How to use this License for your documents
 ====================================================
 
@@ -1247,7 +1237,7 @@ notices just after the title page:
        Free Documentation License''.
 
    If you have Invariant Sections, Front-Cover Texts and Back-Cover
-Texts, replace the "with...Texts." line with this:
+Texts, replace the "with...Texts."  line with this:
 
          with the Invariant Sections being LIST THEIR TITLES, with
          the Front-Cover Texts being LIST, and with the Back-Cover Texts
@@ -1258,9 +1248,9 @@ combination of the three, merge those two alternatives to suit the
 situation.
 
    If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
+recommend releasing these examples in parallel under your choice of free
+software license, such as the GNU General Public License, to permit
+their use in free software.
 
 \1f
 File: history.info,  Node: Concept Index,  Next: Function and Variable Index,  Prev: GNU Free Documentation License,  Up: Top
@@ -1289,104 +1279,104 @@ Appendix C Function and Variable Index
 * Menu:
 
 * add_history:                           History List Management.
-                                                               (line 10)
+                                                               (line  9)
 * add_history_time:                      History List Management.
-                                                               (line 14)
+                                                               (line 13)
 * append_history:                        Managing the History File.
-                                                               (line 29)
+                                                               (line 28)
 * clear_history:                         History List Management.
-                                                               (line 35)
+                                                               (line 34)
 * current_history:                       Information About the History List.
-                                                               (line 18)
+                                                               (line 17)
 * free_history_entry:                    History List Management.
-                                                               (line 23)
-* get_history_event:                     History Expansion.    (line 31)
-* history_arg_extract:                   History Expansion.    (line 46)
-* history_base:                          History Variables.    (line 10)
-* history_comment_char:                  History Variables.    (line 38)
-* history_expand:                        History Expansion.    (line  9)
-* history_expansion_char:                History Variables.    (line 30)
+                                                               (line 22)
+* get_history_event:                     History Expansion.    (line 26)
+* history_arg_extract:                   History Expansion.    (line 41)
+* history_base:                          History Variables.    (line  9)
+* history_comment_char:                  History Variables.    (line 37)
+* history_expand:                        History Expansion.    (line  8)
+* history_expansion_char:                History Variables.    (line 29)
 * history_get:                           Information About the History List.
-                                                               (line 23)
+                                                               (line 22)
 * history_get_history_state:             Initializing History and State Management.
-                                                               (line 15)
+                                                               (line 14)
 * history_get_time:                      Information About the History List.
-                                                               (line 29)
+                                                               (line 28)
 * history_inhibit_expansion_function:    History Variables.    (line 62)
 * history_is_stifled:                    History List Management.
-                                                               (line 47)
-* history_length:                        History Variables.    (line 13)
+                                                               (line 46)
+* history_length:                        History Variables.    (line 12)
 * history_list:                          Information About the History List.
-                                                               (line 10)
-* history_max_entries:                   History Variables.    (line 16)
-* history_no_expand_chars:               History Variables.    (line 53)
-* history_quotes_inhibit_expansion:      History Variables.    (line 58)
+                                                               (line  9)
+* history_max_entries:                   History Variables.    (line 15)
+* history_no_expand_chars:               History Variables.    (line 52)
+* history_quotes_inhibit_expansion:      History Variables.    (line 57)
 * history_search:                        Searching the History List.
-                                                               (line 13)
-* history_search_delimiter_chars:        History Variables.    (line 48)
+                                                               (line 12)
+* history_search_delimiter_chars:        History Variables.    (line 47)
 * history_search_pos:                    Searching the History List.
-                                                               (line 33)
+                                                               (line 31)
 * history_search_prefix:                 Searching the History List.
-                                                               (line 23)
+                                                               (line 21)
 * history_set_history_state:             Initializing History and State Management.
-                                                               (line 19)
+                                                               (line 18)
 * history_set_pos:                       Moving Around the History List.
-                                                               (line 10)
-* history_subst_char:                    History Variables.    (line 34)
-* history_tokenize:                      History Expansion.    (line 39)
+                                                               (line  9)
+* history_subst_char:                    History Variables.    (line 33)
+* history_tokenize:                      History Expansion.    (line 35)
 * history_total_bytes:                   Information About the History List.
-                                                               (line 32)
+                                                               (line 31)
 * history_truncate_file:                 Managing the History File.
-                                                               (line 35)
-* history_word_delimiters:               History Variables.    (line 44)
-* history_write_timestamps:              History Variables.    (line 20)
+                                                               (line 33)
+* history_word_delimiters:               History Variables.    (line 43)
+* history_write_timestamps:              History Variables.    (line 19)
 * next_history:                          Moving Around the History List.
-                                                               (line 20)
+                                                               (line 19)
 * previous_history:                      Moving Around the History List.
-                                                               (line 15)
+                                                               (line 14)
 * read_history:                          Managing the History File.
-                                                               (line 10)
+                                                               (line  9)
 * read_history_range:                    Managing the History File.
-                                                               (line 16)
+                                                               (line 14)
 * remove_history:                        History List Management.
-                                                               (line 18)
+                                                               (line 17)
 * replace_history_entry:                 History List Management.
-                                                               (line 29)
+                                                               (line 27)
 * stifle_history:                        History List Management.
-                                                               (line 38)
+                                                               (line 37)
 * unstifle_history:                      History List Management.
-                                                               (line 41)
+                                                               (line 40)
 * using_history:                         Initializing History and State Management.
-                                                               (line 11)
+                                                               (line 10)
 * where_history:                         Information About the History List.
-                                                               (line 15)
+                                                               (line 14)
 * write_history:                         Managing the History File.
-                                                               (line 23)
+                                                               (line 22)
 
 
 \1f
 Tag Table:
-Node: Top\7f891
-Node: Using History Interactively\7f1536
-Node: History Interaction\7f2044
-Node: Event Designators\7f3468
-Node: Word Designators\7f4610
-Node: Modifiers\7f6249
-Node: Programming with GNU History\7f7474
-Node: Introduction to History\7f8217
-Node: History Storage\7f9907
-Node: History Functions\7f11042
-Node: Initializing History and State Management\7f12031
-Node: History List Management\7f12843
-Node: Information About the History List\7f14875
-Node: Moving Around the History List\7f16372
-Node: Searching the History List\7f17373
-Node: Managing the History File\7f19305
-Node: History Expansion\7f21125
-Node: History Variables\7f23034
-Node: History Programming Example\7f26066
-Node: GNU Free Documentation License\7f28743
-Node: Concept Index\7f53934
-Node: Function and Variable Index\7f54639
+Node: Top\7f844
+Node: Using History Interactively\7f1489
+Node: History Interaction\7f1997
+Node: Event Designators\7f3421
+Node: Word Designators\7f4560
+Node: Modifiers\7f6197
+Node: Programming with GNU History\7f7420
+Node: Introduction to History\7f8164
+Node: History Storage\7f9854
+Node: History Functions\7f10989
+Node: Initializing History and State Management\7f11978
+Node: History List Management\7f12790
+Node: Information About the History List\7f14823
+Node: Moving Around the History List\7f16320
+Node: Searching the History List\7f17413
+Node: Managing the History File\7f19338
+Node: History Expansion\7f21158
+Node: History Variables\7f23068
+Node: History Programming Example\7f26138
+Node: GNU Free Documentation License\7f28815
+Node: Concept Index\7f53987
+Node: Function and Variable Index\7f54692
 \1f
 End Tag Table
index 4007bef97ca212f2ce69e80c3f2e77266b8f0b01..6e262f1cb90c5582e1edff9da476bba5843b4e4b 100644 (file)
Binary files a/doc/history.pdf and b/doc/history.pdf differ
index 81336251344ea6e2ca955333fed89502d15fce3d..17add70e7119c3f5f267f8bb9fa85790d98ffff1 100644 (file)
@@ -1,7 +1,7 @@
 %!PS-Adobe-2.0
-%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
+%%Creator: dvips(k) 5.994 Copyright 2014 Radical Eye Software
 %%Title: history.dvi
-%%CreationDate: Tue Feb 11 16:57:26 2014
+%%CreationDate: Wed Jul  1 10:32:46 2015
 %%Pages: 24
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 612 792
@@ -12,7 +12,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -D 600 -t letter -o history.ps history.dvi
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2014.02.11:1657
+%DVIPSSource:  TeX output 2015.07.01:1032
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -98,7 +98,6 @@ FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI9 def
 /FontBBox {-29 -250 1075 750 }readonly def
-/UniqueID 5087384 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -334,7 +333,6 @@ FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMR9 def
 /FontBBox {-39 -250 1036 750 }readonly def
-/UniqueID 5000792 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -764,7 +762,6 @@ FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSLTT10 def
 /FontBBox {-20 -233 617 696 }readonly def
-/UniqueID 5000800 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -1124,7 +1121,6 @@ FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMR10 def
 /FontBBox {-40 -250 1009 750 }readonly def
-/UniqueID 5000793 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -1984,7 +1980,6 @@ FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTT9 def
 /FontBBox {-6 -233 542 698 }readonly def
-/UniqueID 5000831 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -2629,7 +2624,6 @@ FontDirectory/CMSS10 known{/CMSS10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSS10 def
 /FontBBox {-61 -250 999 759 }readonly def
-/UniqueID 5000803 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -2871,7 +2865,6 @@ FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTT10 def
 /FontBBox {-4 -233 537 696 }readonly def
-/UniqueID 5000832 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -2909,6 +2902,7 @@ dup 61 /equal put
 dup 62 /greater put
 dup 63 /question put
 dup 65 /A put
+dup 66 /B put
 dup 68 /D put
 dup 69 /E put
 dup 70 /F put
@@ -3163,357 +3157,362 @@ D74B5E4EF480988AA30EAC8CD07D10E5195B7199058C8B8EFBA9F66BBECEA137
 6D3A59FCCE098512A2B17ACB186BBCB369B984A363525211D9B83BA91C2B1EA4
 3133C3CB489173988833DF780EBFFB461090B51E5C6454E4ACEFD98F22E80F8A
 23ECAE2A7803B9200043E29AE21F7EDB5D73EC2BC7EFEC3468C239A1E1C5A2F3
-B6A3D13C41A83DEBED0BAB636582D103823BEAC6FE0A2813A3537BA69283ED3F
-0C0341FEDDAA7255D53B115D445AE19E95D61E5F1946460795E0B5A94924ADA7
-7EBD05D099BBA699CADC3B92D7A33916E7DA8A03DEDE4BA2E2353BA2E00C2846
-4EC20BB3F5FF353BA66C3FC64D1CB02A75801D725C68FBB83A3ABE8B6705CF4B
-7FDC6D666CD1F6050A1331B67D29ECD0A841759F877B05413C8CF054B8F7EA6D
-A6CA92792B6306666422E24544F41569DAEB20C9780998392E7CC944A387138A
-1BAF65D7929BE4A78FCB9B17DD352F102CA273C3777B1DE7FFF9453F98FF18D1
-469FEBE75A8F761380506431C98690BD9A8263ED21C33B62E4392600C67408DE
-17270857F718726F499E15088B9DFB573C2544D85B24A7DADAA627B67F74CA60
-6671CE34FB84E0E5054D332ECD422011A3968D9FCAC28875B34AB841C9465B68
-94E0C3580377428346B9A6E413A2FE50268147B5372D57AD11EAF6846BF8CBCC
-06AA85312B32DEF5E050E7F5707B70D7A941C0C5128D1CB937EF1B8922BE637F
-B99B74C08A63016F79C7D0E3BB00B59E4DFC3BEC0A5752A55C30BB96EF977EF1
-3D74F26B49F38B008AA278CE7A17C1064CB861B8DDF46D3F976E9A138108F567
-73611D99EA92C45C2AF926328E572CC81BF847A9649BB287AC03A02FC39172D9
-A3B4D22C3552E70D0778DF32050E21EA7C1024164E8BCF21453F5740BC8CE2D9
-5FA1D83DFF03AA11A3F41A52AD8A869A943E10D3B88AE27872DC1A111A2CC5D0
-D22DDE2211A1768768D62E30EA2A6F04A885E1179E5D7D631553464D8E7F1244
-B20AB73C8E70D8028B8EFB5DA46757D6B2CC8B9DC7A715CF4D65DB212C75CF11
-9B035A561C37646509147A62C56CA67AFD7379E9A64C0A173BA6ECB5262A3DA6
-2F773F744861352351811FFA1C2C67672B1D07496159EDB2A507BF576787E3C9
-19E2D2EA67D014FBEA508DB893617833CB27ACEE2C68FF726EB83685DD343ABE
-7F1DD74D8FB8B3BBEBC6AF7B9E7376FF7C80634400F3019797803D15F7C2717D
-782B4A8F898E5CBDE7B1BE081D84FF3E1C152FD1DD1AED48BBF2B65F5D053BC0
-D4E4F6BDDE8C69ED7F226EBF7B015035ACDF873345295B95C0C2692DFE5FEB74
-75E396C85116AEDC3450CD36F6027A26FF421B7C76846FEA3F150920EDE891E3
-64C4018C941D00F3908FEC9886FE82D95D666A1DB9213C2142AE6A0DD538EE95
-B00ACDFB8AE654BA77DF6B4B1ED161ECA048A22AAF0790A3A4335C6936A302FF
-29D70D2DF8C4540D8F2931F7C9DDEAC00BC5F1703A6A87A538EEB1A68DE6E3D2
-647E7B96753F04AA9CC6B5DD5E845AE299DC558E640A87AD74EF10629CF54972
-B337D52BA0C29171B40EDB5D83BADDE664E20C3EFE02F98191F59BC909790849
-4C50597F58D1AB3B9AA6F64D2E64AB21C48283E4F6ABA118427C2B1B922A8755
-FF7C343D1FF764ED045DE992420B6E41E04B3165928EC4FE4412B62D0B208379
-F9A590E9A6F018794E1E12FE6F8C7D46453D48CE166A0E4EE6272EC17DCE6378
-8A7F2D6F4C8A91A4B090ACD28CDE453EF7A4E09DF6BF945907D0DB5F68F2D8B5
-AE507293CC89CF93CE7DFCE01084364EB7B77185936FC36C4B81E9A422773DE7
-5726823F4E8813BBE9220E47A90CF0AB516D27B71056D018CA5CDFEF040E4E7C
-9AC97CCD001D3278CEDB46CE3B822A3A31B497EACE560837EF3B38F974D988A3
-297D145E05A846700E91F93CE58D2958FC25DFF5A41D1A27253CC8C46BCFF335
-C364E2694522E7DC91D4F8B7800A0522414A4B87236FE7C631F88A6AF329A924
-C24FEA8A983EBFF4DAFD090B5DF8F39618E4F5728198D28B61407DC8BC95BCDC
-6E60808A0DDD1A32AF2875AEA46513E5374748D1F6460310429B46221987A70C
-B1E2F46212BC84A663DBE4E3FE7203C192530F70366086C933F2B0E30FD08BBF
-113B2ECCC7E8DC1671007D16FE6CDCE1CB0E8D031B7CE9B48C79779A8D3A589C
-1D7597C8DAC7BE2803411D65A70EAA178D11BE7F34711A204432DA217576D987
-1BBFF285951D7C999B88588E3B5BC7D230724D020383312F0BBFBF534E0FAB6B
-3BF6A55CC895EE51D20A0B4E1A01D812B578C4992EA47CC711D8E3EA8D9DEA3C
-0DBCF7C3AE7C980298636BF4DC2C542897FB1A6CC655E017F4F84E7F2A384055
-FD37C57572642B097C7E0EDBD2BA7C8586E9F9FD8153E82AB6763FDDF2AD9E3B
-36834ECAE17B59D7826E1531AAC0EDEBCF4AE7800A377ACC1BFB05E63EAF8CE3
-2BAFD896869475E53AC2AB7524E61DD2942AD43C860C2E7ADE428E0F49509EC2
-0731E2045B788212A7A9B35C18321E48945878C65790FF090C3356FC56235751
-61086B3E6093C28D1C4A05C67C67443E183694A297E8871E3D2D2317427C3B3D
-BA222A6844CE57354F98EEA5105C5B9E8138A8207EBC396DAAB6B82565BCCDFD
-0AB8D0EC87B7E48F2AAC5410506F65F0B339C8039D734E331645C3CD95832187
-0F411DD65626C26D1DD0760142E421422A6AA0D1B3427F5CAF18F94F8B675A26
-DE2FD9DA5DA035B2D10A9A4FAD6ED283525245231B713BA8E7380A2E1640E7EC
-B71D5B5834FDB10EAF87B09A7AF097E459942104838C99D694C577F0E09A4377
-3BE3DE7A29FD7532F91A9C62497077AB3F324B25C81A36715087158259D02F0C
-8D585658938CC0F8B571B1E1995E42181F975546F35E4AAC66919B353D8057E3
-524C971B275173C6290D3195584997D65503C782FE89EB0BAAA455AAA18ED251
-FA5C69588262BB9E2455F1CB84E3CF354A675FC804077E8877617E4AF3ED8CCC
-18D370DC068C202728AE1221D729EBF16A3BCADDEF7C42C2C238301818A70AAD
-83533334D81BCB61F40FE6EDB0342D81AC5FAB607DD62BC6662EE893FB21DE13
-063B0B40B5A024A9312952A5714BCA85FE11E8B6D09441415DECAA00DE3FB459
-406F5D9A8092E19E741CA2424948EA7BA566C947DAB9D28B98AA77D94AEB0D7F
-7E559E5D14B957AB6CD3FD83C2A4AE51F3DED2E513B55DFBF200B3B3670BDE96
-AD79AEC65ABC45CACCC6702EE62E2102F731059CC6166D463D2520A8FE6F2AF5
-B8435F3183478991DD7B6070D4AA2B33E0E72E94703A101ED59219678FB9957C
-3815AD69C3773FCA071963523513DFEEAB6FADF7A20C240385A988D023C97DE7
-09DB24A38B449780E6043E654B4B4832908D618E8CB4E36CB918A84AB2BF7ECB
-9AE457FDD2A5D781FA1815A34FF56AE74AFBF4CB7B2601A2108B8F1EC81A58D2
-EBDF651CE36FFFC300A584272A885A57D0845304511A9667218DBC8A006B6F09
-C26FF3F067A35A3E4D6104C38505F2F5E5B0103A0248FAA450090BD92805FDF4
-956D00B6C65A1F6F8EF6CBF055DE9B8C3DA401309E9D1A5F8D5B9C42E381A9F2
-28DD10EDD1FF09BA1D93E77B72C4FEF856C8FC9B3D92DDA6F2D8ECABE36EAFA5
-B8A1E8A4E4089EACC7AE8F9047C5FFAC46B0CF34B6EEC9B722C2A8C620F9C763
-70DD8470CF5E59897BAF1B7CDB58D466939A23D7A7D526FE1F651134A759F66B
-F1976E1AA94CC23F591C35DAD1318AC66ABC583FAF26296173DC7C6A224CB9F4
-24C14A8A6E8D9F089A71E2521328AB021845DACE36C28E1AA24FAFE37D97B3CE
-7C8AE13BDDBB8B1FE58872D3DF56EDD7BE1EDDA7DB79C3028BB2F198BB21862E
-DCDABBC23CD2E06E6D9AF543CE46DB6AA68109B74D99684BD18F865B2C9AF712
-7DE56C139D84970D597581E20D48CB129A9967903DA8926B8366801B78120C53
-2A841722C41D413BC0BB84E7BBC73B21BBA3B43CE9C7CB147A073EE1EC78FF1E
-BDBC3B94302421D3C8D9F089DE08A37FC7B12A57D02E45B86631AA21BFCDC7F5
-6138D4C8AEB7ECDC02797AE47E051D86ADCF3ABC86C9A6F2F0618C34FF81971F
-5BDAAAC37F365F08D95B51D6CD33C7DEF81E249A1CD8BF3315BBB79E8283707E
-139A775794EBBF6BB125CFFC5D6A18502A4F13F66CA144D3F656D3709D1BFDE2
-A1FC44B07134247E80BF210457173EFE017E4A14C915ECA8A4FD6C0DEBD7C06D
-5F972EEA32C544A00237F6F3DF78FADE7F7D2840D0A61265DBBE995202A4ED16
-1ECA174F5816C5D4B4B783C95AF5738783BF26F5D4B9378B7E6D447B7E98070E
-8CDFE7361DBAD5CAFAF58CBA1560AADE44FFDCBDE273152AA2613C814F503335
-3839E6CA04DDAF325D9C77F07CECDFB57D7FAEE159725480EAB33F1BCD394FD0
-0F15F0305A3E18EEBD47148FDB94CDB1B7D7DB8E025A980F601874DC6D71D184
-6F90DC32C602B958FB9BE1D3F4B1CB4B305A6E7269C9BFD855E633B7B94471E5
-56FEE2A16E20FF8FE9E2AE3240A144FEE1C0F114E78AFF93F84F716AAF1B8A4F
-9F11521AB3F53C5863EBED83030D195ECC09C4390FEB02DDDA3EF0BD7C0C4438
-A253C0C699303ECAF1C7382D337A5B9687F9E6011DC78E196FE2B18A3B38EADC
-468E33C629D3D405DE7D41FBB12CFF132CC6D9802D70C04F54B628A8E9D41210
-3CE8C6862843A8E083EE10D7CF9A120FBC4B69AE6C8380EB4DFB5507663ED3A6
-9C2EE8750CB9A9AD22A1BF9186B8220D8B00B019B63C2B7C92E164AA60EC4DA1
-02B3DE588DC27099DC81743D9805326F6B42CA06B677E7D4AED20EB63AEE3B89
-BDAF1E8372CE1884FBA89E7C83A21808545270C76ED1649F89A610D9C3189A7A
-F2AEE8664D6AD2292F0672B3C89C06150762B0A4A93543DFF3FA2DB1962FE0AB
-48586F6AD09E6A04C04CF8879A65088C734F4837A7DDE145660A6BF36CB51162
-C8BC7BB28D64C64E64F862A44A12AF7E385B67CC99A445F7C000107DC9A56E9E
-D49369C558C02E96A3379922221AC791E09C06F19FD7DC64046726E70CF9B505
-365BB9BA797CDEFA19A71E23EEE381884D257DD7D8027F5EC90069EB8ED1BB95
-B7255BAFDFC93CEC8E6929F7C0EF9672008D9714BEDD9FF1FDFBF0E080F39ACC
-3F80ADEDD55F3B6886206228C2D8E2F35064F743BD93BCA569C747225DB89170
-8B5EA309F0926C8B32814734F7B7C2DEF626D71AE7A754E49795D8B75F9CB234
-CF70DDAD4AF5822533E1EB542CA6BB99DD66F0775350E1F31131A31852F51282
-040761383E23C17C964585749E9B2EF0EF5EA748DE4934730AE43447E0710955
-51275B6F9C1A612C6604D0B1D09B26A9FD62C9E9520B704D434B2B16DE427127
-3CF39110004626B8E65C44A7119633E1C94DF3C6BF0BA540D46D66C9C8CA72C0
-294122048FDB3E7D50F908F5AC104D7EED52E81090122BDCAC47894634F2A92A
-338EEB3504228A6683D44B68FCEA9DCEF44421D9B8E1933B64C065D728823DFB
-5DF70DE1D62376BC15C4B6231A021D48D84AB753809BDAD72E532EF43246D1F2
-88EAA7B4A577894983E2747B0DD70A427D6A2EF4B42E3A977B6A7D20CEAE6AFB
-21FFF39F1F2A2B2816714AA333DCA04FBAD1DF20503F4EB6E30CEAD47A346E3A
-69D74D4BD0C51B54B5C76F605744C65942B1488E56C7182774DD7B873C091DA8
-907DDC326CC361D6735C5C0256FC2581381DC4EBC4AEBD8A340735E0C7D3F2C4
-59956D4D1BB973F1DB6D590BA9B942A7AA5D6310397A58F79507103371198F7C
-F0ADDD6B002669EF881F2BBE64931622054448851FB5B5A0E20357B73343BFF2
-200944A9EB6AFA5A9198FD434D039CDEE4BE3A5F90C3B3C9C61BB9D7559B3DA1
-FAB002498CCEEDAC579EF01AF9F3A58504C9866DD6FE78F3C745B28C3EE58781
-B59626ED00F0C64B051D830D54CA9B206614ED68AECCF02E259FA03FBE3ACD54
-17ABA540FC8C16D20FE9B4282440B61E60BA0FB686DC3E307C59E4616A2E9B4C
-62CAE7530030837DB88807406851D67B374C09EE1F90AAF3A78D6D4A4492FA91
-C03B19304629F180A3D7E8EA917D5EB749331ECE83A0D6679955D12D46C9DB1D
-E0E4EF9C3FF4E1B6AE4A22F7C759A8A16B3080FF201120F1B09244D9C61620DD
-645DA04D43142261E58D3A4E684B0D3AAEB46A0FB28C17455CCB6FE9ECCB18E4
-457A388BA0E9C9466DAB3F62DF10A36A7C95FD2F0D8E84DC97D4CBAD7F8FE89B
-88263B87A9C04523E02B97D7C3FCD336345A87BF9A147E4FA218F5F18D0F3960
-D957FB484159D578CDCF9E21F257DF6DB79D6FCDD3D00F6314F3BF77D449A278
-AAFE344806DCAED6B9F512920977BE229E81F8FE22B64F8EFAED62766B8406CC
-EE84C8AE16894C9EA54E66D32259F956C74A25AAFF389346BE698E6A75A698C5
-7558B5F25F8D98492AEE1EAEDFEC5E053483FCC43B40694D0B259663C5531E95
-7F82B715E9B12F112576B30FDB8B57155DA438B145FE2671307D0592B303E523
-43A4D6725C26086D10AF33E002134B0DE92FA5C6DEE4982D3DAC7091CAF54265
-6AE560EE3384DC844913162E0D81185C1BD361883B1C337AB58DF4FAFB3C6306
-9BCB8027578E528D56A6FBE9F300BB6488DA83AEE916EC945D7CD774142580A6
-41C27A736CAC86BEBD5219BD2B40B410A9714C0C91B1881269B76AEC48D5741B
-A9DF610416EAF037FE96CA7B93776C88A5D93CC9B55E7079F2430D89AFA44C1B
-E71A7854FE3B7DCF1D7BE6D54BD8262055FB34817B67CB91B5961C260C49AE68
-27775133A08D6B341D7B75B64A0D260C351F7343B7FBE0EB0122FC9D3AE73FD1
-C1C5756428C11CDBF394DC0FCFA3B72BA473F12E574C98A9C8144417A1CBA749
-2C0154C5AF36AF937E6EB3E471D9712DFC5314836B9F9B4C4A4400490290E06C
-D0AE99CB7C6184FDBA152E3270124E37EDBA3F4CE0479AE06A07D6D1027F3257
-6CC288D34AE33576F354A66710A4CBC322E84F2FFABFFFDE0060278930BFE762
-ADA6491F26CD942CC271A40E951A115A4A7D8388AFDD7784C6FCBE80D247F43D
-DF6337F61FFE758B82718300E425E31F46CBB6215696D82B1221FA9DD0248B67
-611A86380C0A94B886E4DB890A43CEDF5D6A64C527F895BFAD8BB63A5A558B2E
-85512CDC3BD8B9DB521B98E698A3E1FFA444CF16EB6039C42E949B78B813586F
-207536B44DB02F130F16BDE54971521A3283068574B0ADE05569DA0EBF4CC461
-A26FECBD8AD5CEEAB3B2B8287150B29F7A4EA4B928D2F1C9BD5BAA085732DA96
-AE1AB11D5FDA1BAE8A983BBBC07B9F76A76685BEDC0665E48556F058235DC523
-CCD37A78508A116822E9C8A2A7502D4E62198E188018FF1D85151C1967C4374E
-F86AA8B4FFFA3BAD27ECF9354C651233AF6093EA2D694A81FF985BBFC01F0A47
-679796500067E65955ACD37EF34175696139AE4A7509BD62DC3493E8BF497A57
-0E7239F7AD462E888CFAFB967F6C562CC971B0166E6653CC1387F94FFAD25F4B
-2EFC280CEB1BD4ECFE160A581777226F51E7767A10F4C686C51299D6B8C6FC4B
-BBEBA44534FFC12BE42AC28F203656A25696D1B58C3A73CCE75BA3C5DA2A9F0A
-336189612F25D0B9F8E838CF810CCC1DEF50B050DFFA0BA45220D5FFB6B49943
-3CB0FF60137E1F3D12673789EBBE48D72DA84F1254847CB5233B91708CF001EF
-C4EB320B4DF2E0834DBAA6440E04AB68B7B21E4B974E0C2CCB03CFB954147330
-F38A532869452FE640874B33E1A72049F253B874E475C9EEBB68A81E61F41AAC
-83F58B0066FEA92F31F246EC0CE2C5F1B0B251478B56CE35E812EDB26DD3F813
-7BE1CF2475F98620CD35239226E358E33461464B9DBCB2F3527638BC61BE2ED3
-109E5E4B0A624B69DC91AF1D00F77127285F72C28C349EC6759B0D6F18629B2F
-1ED6D58D9D0B2BB2A90288CFE30B93CCE8DCC297FC7C13A1C7C11F20E4658793
-243BD703CCB29BB09393911017A123EE58686994600BE9C927F944E584D4D771
-0356AF0E564686957D974ED8A3C86432473C775592B0FC05878824AE290576E6
-F0BDFE8A8F16DCE952D2B291168CD986856699267AD6FCECDC074413CB047015
-AF21BA8DBB3ED19B5AAA9AC81BCBC2332E22ACDCF110A34EB0EB16907FC7C234
-C234B42A33ADE4181F000DBEA4AF06BA5F2E78FF5AC28FF8E98A4B3C055C014A
-2D60D69EDEDE71B002B3B7B8A27A2BECCA54D654B87CD27A8E0E96B86A4FBE8E
-1579E0831A07D887017AC0BB39BB026FE08497F1D65E9AE6607AC517F2F17B97
-8F8F1523FF7F1EF2548A0FABC85CFF53ACC7D41E5C69708582428CB991A9F535
-44148E7AF8F1D14B074F134D9D33441B87314523FB71F46102B51AE79B94020D
-AFBB7F8F669995DC67E3B208B44C48FBBB7BBDBF0A2D7B3AC69261234D6EEEA0
-588B84EC1B72420133BA048C85E23BA487EBBC77AFB91321996A89156F93F5F6
-28A08FC606C5EB27975D4781610834943953D8BF31AD04F1C9E395A0ECD31B54
-CDC8106E47AC89ACD96ABB0414B5DD6D7ED1B31088F145EB322D386BEB9DA692
-19AA4F2C6CF43F6EF99D8D23AADBE6AF8DF13BFB98766C7FEFB79557EFACB387
-402B922526AB45367269CCA302034B5949E7C65202BF9D0DCD4047867DBBF367
-A6F1FF8BA687566E58C6647EDBC4CB37558267A0C5C381D44C7EA8921E74D38E
-17E10166EA6F512E190B2C91D3C630080464F1CF2F12FA57121E0A1B2681A16D
-7D607765A122D5D8846BCE69FC58625C75B493E86713333379E37697B2D94D3E
-42FD8D599AAAECCDA5E48A9B42A830A7D279369D1DA857A0B15168F018C7BB83
-6BC1D4537324016A60C69568E29057A6F0EC9994414083F4BFEBD2AFD91EF38D
-CBCAA59690ACA669827D419F216123088168C5EB51AC08ACDA82B519906D92EE
-938266B44A8240843D780E7EBB9ED86C8ABACEBA34A31B187E2979ABD14DCA1A
-5E0BF40AAFDB924DC5FC80910FD7205639A8BA0819237BF3BED500FB9F3EA43C
-5E6AD3AB5A37E02C2F2C98633C98E7B2E3437737D42ABF3D96F04F66186C1775
-01453C7DBBEABBB1068D030B6956326AB66B9CF7978313544892E2B2C5F3AF08
-47A1A068756CDB0585D9A0C5B6EFE85EA1361ABE902D3D216387E03283FAC255
-C1091BD8F7A945C1DDEF7A35C40DDA9C13E30FB7FEF134A874FD5E1E96AC5DE4
-8A85FC57335DEE136B20D7FAAFEE8D0A6BC4386ABB41BE77E249546AEADF4B1C
-2887ACCF8AE1BEB2DDCC9778678B58741D0E0A580579AE8199A341CFFD2B41C1
-6E1A3C0318BA1A3409AF672B5287FA20AFC13E656CB4D8FDFE2EE61528F6465A
-61AF81CBB8263AB33F47C08FA9E4D9E17A780A5139D18019FD8CA2011E667E82
-8959B30FAB048457F5AF43F2BB98470C94FDE464B6618CD94CE466C1FC3E4FF9
-C3E845754F4B64681B56DD4863746094BF86049823A59520E33A898F04BA6AC4
-5E3D7ECFE988CE5AD4C8F663C5368B8CCD01050557A7D7E00278A9FE0A15A87C
-3462C3F79DD9A8E40F49982468371A39B5FF7FB34E8CDDE2699F68F0FE2A03AE
-F0688D3524A4DEECBF2CA481F4432C1FDFFAF0D1E1E3466C97DEB6311A2ACC09
-8925F52CA7091A4AFEF40BD9C5A8652C95D8BBDF28AD0A55227E71E8317D0722
-9AD2325F7DE173123FB29DBA2F72D2B9CCFD98B70106F265BB7B63871B6EA903
-2D1898FB0C30619CD89B977CA658B93BC9F4D9ACD0BC4BC6851B84FF187314D7
-2B0E93C31616AB69F3BF0575F55652CABBDD48C5C8B4448D0A428A8614B9E18F
-10037663D57B362B78084F043C915B3246F03B532BC0565F05239C84E798E8A6
-449F4E74DBFB36339ABDA18B8C6560B23710AD64C828165E9876F97D8F848163
-85CB50410BDBEDF24E134372ED5FDD71D031264611284572775097788AFA6B5A
-71A5E46A24C42A2A7910F323971BF7FDF5631050EFADCAAB2F358ADBFD599D8F
-5D6733B5DCEBB1DDB342AF44E409478E619792EFBDFC2093B8D8C9F82136AAA1
-C54F2F501AA172E127061D1673D9BA9F85CBE9A960E850F6B16A918A3D253FF0
-F5F6AE49470234ABC0C0D800422112C9FC319E359578B2006EA138138093DDFA
-C2D233EBBD58C5D77BADF9E2289845B1FB3F47FEB6198B0A085BD4959848E9C5
-3C63E166ED3E465592A03E1FDB511D4BA371EE1591F4F0FBB45206656B9BD7B7
-B65FF730A2821612654D99466614F2BA8BC75D30E26C077F4F9FCD668E42D5DC
-A0BB9D7BB444A1E06210927D7662CE4066614FA8B7CA773C6EC17745CDFF825B
-7A333A53117940951B41965FC92126868E88120744C3E87534680DDE99C18FA5
-9D2BF62D96897ED220092B1318649937563ACE23605F129BF334B7EA44D321BF
-216766AF7A808D7DFC1B633BEE30C1FCFAEC7A448FCAB915236CC36626F8A505
-677610C3FC80276F4BDF14531E2F508B9FF66D78D738FA1931EA3167B390F000
-E6396C45BF79635590E561621859C86ED3F0D454E1474A646EC23C8164E86652
-4B33D79670B203A70B3F8BF31ECF6EA3CB9F8754C302DFDD8C77A96803AEA2D7
-F317C56C176B7315553BD594269F807509AF586E92379220DA095B6428736A4D
-7A0539F6383791D95320E2AAC66412F1D6DCE02BC76B734C494B02447B6A7667
-F7AC2CE8B45D0E182DEE296FED3F4AC8F7781024F0E9DD3F27519DF6CA7728EE
-0D6E0DDD80345FB565BBB020131C253BEB04CFEC1574E14F9F18C8F32A847E51
-E7FDD96B03B7A5D865EA49BC12F902146B2A7546E4B183DD2D4DC0A5E061136E
-8D7D508BCF6743C363068F5F4C66945706F8DDB2C45ED3B1314A9227283FCF3E
-C7ED1158DFBBF384BAC2DAD5965DE5299BCE4CDD007411F5F59F0AD9A2F87425
-B69F51BF50135C6A204BE25BAE93E669898E75C96840E24DB31D038CD86F760D
-FF81D1E902DF84D34C9CBDD6122ACC7AA28D7650BB7A775C3CCB2F153FC3BC22
-BE131A9428464FFC0EAF8C7F57EBFA2C29D635AAFFFF19AC53755D470FF4B7DD
-73C415FC1D778781F40217D3F2F5DC7DBCA79D094D560B81F0D242218F9D2A38
-4FDAFE428BB8FAA7DBC855F52BC0EFBA0DC01C83873E60B2F3C7FD91DC777D7C
-F5F283BF2B5B734868AC1DA079289C6155EF99C4D8E1D34C5BFAEC9CE9FA9333
-D1D8AF4B0DBC9D59A5590CE44AC9261F36A6DD2DD0881D9D50007F4B0894CF3B
-8C8272D0C4B3A39A80CCCAC27109818B5DEFA81C1C2B7E0A573B9B48838ACE55
-EF5161515282833E8150DEE8788B8D8B00AE4F8307D5F1D5246647C07F29424D
-5F0DBD2C03E3C343D5396F35C661939A7030EF2106A83DD3BFA4AA4CA658B9AB
-0D4A2AFDD3AD28BB125AE06FF20C75007F00EF8330EE3D8C2C78E3B7841FF4A7
-F3C4C9018C48E5AAC348541316BD645E277CD0B2BE8CF60CCC906A125C676875
-FE02665D04194838B7CA13F8A626ED8BF7C87F37B840676B29519BB8975D82E8
-FC0114B2A353E7CB529D48EB9F68D149A62012BFF52622286A27E8312A37A671
-F4CD76CEDAA937210F23D8BB98F9023ECA41D96E1A2F5D029233FD55AE298A4B
-D59A81EC7938973B7CAF060566C2C0AFEA4B59EDBA72528811AD64D8A13E36FD
-3F548BA5560FE471AD96043264DD1C23462DE73BC897B99D78E046BE1748D1E9
-5CDAEE3A435F4912D9E9B8CA93D797B1D2915CD76969E5BCA245A43F908DC4D0
-DAC6FA6A373DDFC7A08DB6A6AC588B7EFFCDCA3E1BDF0520C56754B733DD9905
-041A09FFB1EFBC3B3FFA6050B9332B1204653A14F6571253374AE33DA528524D
-31381899DFA1B2CF3D72C9B6BEDB29241634137990361EBA4CD5BCDB62DC21B4
-D5FC2B9A21CAF382C11DBE86BA81741F8BFF1766D22D57AB5F24A962B5DB12EF
-C7F42D88A0FF60C870BA009CB3BCDC651AF7B5A4BCA196798F6C605422D029CC
-EE491C2E183C9F2491BAD7BD1F2CD702EDC0DAA53B8E0D4A6B7BD8145B843F40
-FE06393577CF85554BF6ACABF57716476728E4ADBD5038A1085127A94C3B934A
-C68749266A7194963871D47AE608C69EB7EBAFFD11AA858662DB0F1E9E61464A
-9B0790E15B0BB16FC74A17BB6680117F4569D03738114ADC9C23CE8953D7CF05
-74EB3755333CF89A7B8D5B2DC855366BBFCC6E20DD0E32CF7389318C6C88D550
-67D148436DD3712469468D74304C04ED39C0D7A3F9FAA7821BE32C97A3AF6E3F
-1D8D4BABB4B3D170C275B93F054A1C2286F09FD5BF96674A3CA023AD072DA2DB
-CF505AF5D0B0525E44A212B0F74A48471A1F07BA8780D08E28EDF7B1A9EB1867
-725F569CCD4B09BDC0A547B3F0AA0D66743E29EE219972EF32D14C3E04098EC2
-8928BFBF73E85DA163D4F388A57A7F3C8F1CA1EBBCF18A5610381B5E02324142
-85C2F6FA9BAF812D1FB5C1F15292AEF35FF62A03CC28EB59D3894C60E539C39B
-A5613031A6238D169875846511ADF80FAC8DFE63CA7D74160D29593666B58DA3
-0B5294AF4C2D1135F843762AB3C422DE92ED98F877BCB00CDE1CA9CD5D8B7CB3
-036446C65D702EC1C23C309B0F337806F7DDED771449B3A9EA20B755A333EDF5
-F89B696A9B03BB9413517D90C39A9E95C9CB769F2BD50C8D5FD32507F8B56D11
-61CAF14D5E8868B61135D98F372B7D2186E3DFA3835FE62D8262E789A8FAF0C8
-0FFBB593FD31EF404E658912A53BD4064C497CB120B5FA0A6DD080BD11C9409C
-D77EB713284F74F51636DBD9CAD1B9E7711FBD335B77A848B05AC7DC960E1F13
-3E77B2F11F0E54E4AA803B3D7F1F78306A76497D04294884AD6416118340E12C
-45FD06D28DEE7C1BEF415FCD58DF2E318B41923E45503B0629CB3006EED8FAC6
-C210F4BD5A4413353CA9F51285DE8363E5F638EEDFE47FBFEBCBFD465323DA87
-108E47A4CF84EEC3A85FBC10B5D45138AC9FAB37FA441AAF83FBF7982EBE5634
-E6A4A48BCA7DF5DCF6967ACB622EA0701460B561C2E6D92A6ED930055B824182
-D5A5FD2764F1E752201F4FD676D12CD27DF1DF1CB27F45305D2D330AFE94FA4C
-DBC7EA3BFA40D03DDE69821DD4A92958AD74D36315852E7EBF2D219CD7C9AED0
-EAB86D5F25E476B803B7BB93BA7FCBE1D11AA2FBC9A220D80765C3472C790778
-260CE446D86425C94D42578A277FC4D2AFCE76595361E30EE9C1955C07199388
-8BA8C12AB248B94692CB459DA11AEF914DE16BF149DBA606E24EC7B043AE62D8
-91DBB757EDEE69943594C7A6DAF8BFD5851D2B00F5464CCDCAD5CBCE5ADBDBE9
-6DE74BEA23B1B2D90FDB104FB328260D4A5B0C6B0DD6151DD69349FFAC753C8F
-7CBABBE0CF9194AE7DFD56F9C89B40697626F34601A2A9E148CBE608C4D897F9
-6632004CD3F88A8F802A3CE75A6D61D8CE55C28BC9176D589593420DA9A46344
-8549E71A35AB21EA5668C5642D8003CDDC145D62568F9EAA95DA3291B04B61BF
-360A837AFE7605188059BF61DE89589435E91221973A8DB7DCFCB0B18085053D
-26B172DC3E0B5AEF7D57C374F2EE77CFC61EA4198C7E5EC4B6E52A7491F806DB
-D625F136163DDF0D713AC99967591E635BEE7E50B1E971F3C4BC29FABBE32243
-B14550980DFAC4CCF36444B7AFA3E7352B633ED8BEB673AF5338E5A8C3282CC2
-C8FFEC954097D154E710C15F575A756B8F39B378AC55EDDFD55E5781DDBAB59E
-C43BD669013A274D7F76FC2ACA7FEC49DD5109E849B2D05126EAFB31C504D7C3
-3627D1342C4684AAC4FA858706E55226A7769A7BBF82BF73FF7D7CDCBA51AC97
-CD83AC15C80515D9CB1D677979EFB4C2552F7A2EB7471EB89A957E42C985F2E6
-B947AA0F0FC3B55572A1AAF1952D53CEC9F8FD27914856241EBF3E8AE29ABE5A
-0DCF265F1BB5D6DAD6198F48BE57F7F8F2C87CD40CBF8A15BE7BDD93DDFBE583
-EE94DB22B55515275FB32806BA1B9521396F41CEC7535EAAE04A9820B12498DE
-C97696FD05CC175280FBE13452DF7D477FA3C45301FE490C1BFADF83BF021253
-6E7BE0FCF9C5F3718FFD75E8FA931F2B952915B8E67FDF9D84B128F1DDB49AAC
-9AC6554B5DB294D0E453E89BDD1D9248FE0FC8053FCC529C2C83667F6420ED84
-6030488FD33AD5C4239A962C5F33FDD4FBE3C86A3633D8DB63F7160B9FA5AE10
-8BED8D48DC0A58F81A1A215F70C5475A68E4A077D02D125BBBC61941009C8027
-46A031B3FE7E5226947CE3644A5DE1671557ECF31FDFB298F5647555566E75C6
-928BE4D1BCDFF932053C1801B41EDDBE228D86925AEE137B228AF7ACF7BD9F87
-DC811BD378144014E05253A2B58E2AD79CDCBCB42884F4A39F7F116EACD630BD
-D520E476AB1532414904AE1007F2C6E5002F5041274E9AEC93E94772C09587AB
-BD39259DDC3E244D5CED0B46B96F673C36B647063863BA92028954ED46302AE7
-77651DB98422583FCE400F75FBEF8D1F8A3CC55C9B67AD761B4CC811E05C5904
-1E34AE480252075C0CB3AC1EB7B9B5378082CE02191E98D4430DBAEBAAE8FEFA
-F433E966A37409A80370F4C4B6B2A874EA4EFFF46EB59BF0199AFDBECE698B2D
-7F379F3A5E84EB8DFE148B9CEE8D107D6B13491C79AC3F1392B133755A403A35
-6974207D3928131427E69DAACC415F093BD90CC32B74060B99FC9BBDE3F6968A
-2B4AC8C29DEED24B1F7BBEB290280348A462A22CB8BA0BB639EFB004155DCA7E
-60840178BD7258D5390C1FDB89F15D06142E9274A9347AC0945404F9C014F850
-9CAF4FC3A6564D78F735B5421A471F533304C7D782B9D7E3206AA9AA3072E4A0
-6E748AF4045A94662555380DD4AAFB16696B3D4D27AD309EA426D6A1BE398FDC
-1B8ECF56073465C3098121A7976A82306343AA7CAF1474E3AA4F559CADD70285
-1214957BEC602D40B5C8632A074A34BD030A56202932E3C6C6A686EA5244718F
-AF3CE79700C6A9B13A88A3681C92D169945F8BA473661C3DBE3101692D53FF95
-04373C2B1E34F266C201AD52070351F3AC5AF2E93C763404854BA1F9096C7132
-A2245EECC1F7B3A8B92E7CC25EC89295BF53B6852C6C9741162F4955CCFAE324
-8F8F260C0207A8DD28723E634AA2D67EF68FFB08DD1B4BA2BD8700AA609FEA69
-4C08E47D3413A300D91D5C841143F7A01164DF73DB9A3FFD9A844522C08B14B8
-831C2351D62E63E77E594A14BF5392C5529099C34ACA6A0D77C6F20E0C0E09EB
-2699988D25751DD4F57BCD2A0909C0C2F726575BCDDBF65926930AA987BBB02B
-0613013035A6177A660BDE2DA1E73E5BC00779F4A1A9318C09C86A3CB6C0B985
-A842D6DF4CD9F3CD34C480219CB42A61E7C81734E5DB7EAC5DEB55FC887660F5
-DDDEF3A7AB149E7FC78961F9A6402A091AFCA068BF043C240E2F9F3F88C16C39
-F59EBB4DD51B4E3FD2054ADEF7ECE3D5E17702C4BF9DF301A30ABA4D3F525890
-51EE7C7CF2B9ED1F3E01D8F7D66DE3667D9757514C7284222EE658F38E80479A
-5F9B3CA56830739556F6619EDBF160909A518218A45D4A55177626DE15797BF0
-7A3A0A0DB2316B7C849AC401DE506937E8286EFCB629980E587F55A00846E04F
-1B8601D655C7471E23278582002838C5F504BD777459F6FE349FC93BCC1FE8FD
-DCD897BA751C1687BB8C208C8A850C4C6EBBA17D00210685645324BD9943448E
-E663A34251A58CBC865F0E0CD8379D842F4DADC69C9118AE18BC3D1F0C781160
-B1ABB8CBFE42180966B4B97AD90B7FF8211200FD048C5B28278F4629BE0A8933
-FB48A6737A8FC484A9B5508F6F393F8762E2AD6FFA1DEE11879440887323A32B
-5BB35A63E0476AE21D53CE319D1D075823CEB48C405C0062AF76CF200A71BF9F
-85D86D86783B2351BB0CBD444CFF67BB4E038223B7A6E4F095DACBBBFD906B10
-2BA943AE53EAFA56551DCE7237A238E17CC0B6025E13976D653302A1289419B3
-943BBCDDBA7958283D81E28C9D6FF72FDA6805DA5B49599B7A6A8B66405F9B8C
-B30244636D2C57C514BE99A51EB980D5959C9404DFEFE2F2B7F28AF6AE0D2945
-C90A2F1286CBF3D5165ACBED0FA764ACA2A25C59C27EC136F9CBC8CFCCD88610
-405C9B53E8D59079E93379B3D49AEACDA613AE6E0C438224075C43FADC28385A
-5B4E53D0D98AAC983B2BC2B0C59ED2775C94E7CFD7CB60EA0BB3F2A41CEB982E
-
+B6A3D13C41A83DECA870ADAA461BAE73B44B9CBD7D9FC1D8BA7F096402CED6D3
+0C0D5640646143431C318824FC397E06BA888D966E976366613AE3075D3ADF08
+7E1730EFF0C108B268253AD90C929A8F9CE53FA3344692B4F2C8EE88C508D30C
+7D3713DFBF78CB79AD34CFA007500B8D1EFB46C3902B183CE019A4656F585B91
+337C8FB23A923689F96FA3FA862ACDB4DFCC63C202DEE6D52253A210F7FE163E
+BF0466BFC1104F859AC97006C5DAC76B68FBBBA1E86D352FF8299D5D94B6111C
+4E4961C13C1980ED85E5BABDBC25E26BD2611CF9644C28F3F783C91FB71E6511
+3305932CDB949C97E3C994AA9DE2E3069DB02FC5D1A7B552291D4FC01BD06992
+7BB266B91E315382D3FBEE6578EF6BC38C8AC5D27C8075C3C6C90E1133DEABA2
+600409713AABEDFB90A7D59DE9B1C55D5BF69E81500342759F8EAB102276AE4C
+62226488BE3548335C8B5DF636318A758825ED631CC7897D81D8DB5E1BDC5FA5
+472B07CAF20A93B34EE07C1F1B35CCE504BD00584F0AC929F8D276FBE1A906DA
+76508D83491CE04DFA2D053CC70BD6F6D4F4FC37AE9574F0427F56D04FB60C65
+40CD0C4F9D4B202B68C573C3883AF97D3679B67A9750ED2F7FA8C39E69967DA9
+2D0BCBB592BB6DA1C14CFE5AE55BD8E1EF4D4D5CAD9543A3ADB8346D4F0372E7
+7BAFCFBDBD48211C061927D955929DF620C0B3F9C5C62E8C2EBCB8C31065CC45
+36857F4A093AE79BEBA97AE481ADCA3F806C26D1C407AC716C6CD1680E4FB711
+EB5837E62986F81259FDD4BB7EF510B5A8068E167B6E9F79A85EAE7933D0593F
+E2E47F110DA4F91FE1D1C9EBAEA7AC1EE47C32B850413D2F151439B2CE1CADB4
+7D369343F4FE7A23FE7225240EE5BB2EAD003B791E184C05E16E5B1237336108
+42E036A6736612F2D560738B460C36B7D6BC9ACC66DDC5835744F58900D88F88
+32F5A49330101FE11A2DCC0E1BE4BB40B798C0B17F06E93373736FF86328A280
+439E9293434FEDB5174FB34CABE580EE7389CAF1DABBA6A053D514BE0C3F9CF0
+F3B9E5D971C3E42711FE1426DD84C2A1462CE67A7E9CDA86B3581FE979B06C4B
+E02A9FC63EB240C890DDA668C586795961871B93E01E80D140B1D3E84DC0A522
+86CE9CF8612A35940CF0DC3BFACCDAC376BDBB3A4B063E64C59C61CEDB570B32
+315481B2D8127B9B6462C898A7FA5037DA8D88EFBCBE60B4A803C0E5D4722760
+2FEDD14E231C6377F18BAC84FC907E25108902B9353CA450AFA7A2B028395D93
+C547ACC959FC5F66D49CAFBF6090C67CA7CE8267C80C7AC2BD031CEA01EDE032
+D124162800A144E00AF57B0F7683630F58A223111D278B122D39F1040A35A543
+E850DA1DC3B6C24B1D0FDFD347427E1E0C089F7AF6F499B6DDC5D184EF6C3C22
+2E4BC5A1E7741BD398A43D47BC25601671460EC39CEE52C9A63F03E014100CA3
+9107C794F2A7EB2B5F75EBB0D1ADDBADBE84A42B32247BB1F48A1EA537D9B93A
+9BE5CAEC478D7AAB59D92F1F96A76025C2EBBAB8480A7E7D1DA3C64540ACF041
+1FF7A968795CD24C3B6302C9B95EE6AF47BF5B6F6AD4103A229AECD3B8D6F6F5
+08EC913E120825E699EE78D8CD1202D2F57E2F7FF64AA7BC0B3A947FB07A149E
+59A402E894363FE848DF9B84029A1CB228B5DCD030B86DAF7D7032AA640FA603
+E7B28A4703D4D84D1B7BC417562B51DDEFAD015AF7A25409DF2DA380590D680C
+5E9EC71AC9372D3EFDA6667CFD495C86E4233A490B9C4C72666174B0D320AFCA
+66543CFB72EC10CE2E1E7625D2616C2571B6B2E33430E28BCED3FF154726E618
+14F68511ECD14AC32539B0BEE272A1FD7BDD577A27C6D3BAE6AE3A25A924B50F
+95A815EBAD7947FCB8C58C70A83181B8AA858A70D10F396AE89524407EB2ED07
+68EA77EE29E32F040655EEC1FE51069E22329FCA0F3FD24DD2431A46634AD6D5
+F242F5ED8508E7E1F2E6F8261558B2DB9CC40ABA2FA86E8C9F6D1112AA3EF18D
+0D5BFB642F77D4DD7FC8D3CD74C6434DD634FCA744B58D80D76D446922068DD2
+EB47C42C2EE8C96CC501699E50BB54274133348ECE59A563B4BE5B7CE1DED13F
+0047C7A6B6CB384C8444936BD165B9C6A43EC34FB1BA55E7D63BBD9ACEA2F622
+CF42EED2C3557519B5473BA4B765C75A66369389FC5B07B79B87015A90D2BEBB
+E91BDDA7F6DE559E13D6DB081965B83B050F97BEA2BA3FE20B1C80DB18388C0D
+2FAE933C71CE4123BA815A50D93D97C29698C0C0C96838271AFAB4FF2BC830E6
+184087C68A05C6ADCF9D87F949AC5667C0D2F8538D8D7A0862C62EDEB58CE413
+3AD8C8280432E93ED5DD49EB1C47818D8EDE3B6BA4CD8D21EDD7071FB490ED10
+C910F5399547FBF372840036E3D167CE36B7DA6E3EE3975934FD51A1B77FC8EB
+E576AC8AF5D3A9DE883BDD29FE161F0FD1FE61BAAC76E47CC4E4403A947ED8A0
+36BE4184200F11DE0975421241E77D372C9FCCF8305F9E4679E87E7D0C9311E5
+7CE314162DC520519578434AFC3E6694FC3C907BE36C433FEA335F47BC2332C4
+E8AB9E715BB21D8016162429932C527FEC90A076BADCE3F14E6A8BB84B85F640
+BE5CCB23E63C3334A84E606D014AFA5D22189E5F6697AE6958C6E4A9B14A1EA7
+8A3C53174BE2458BA347038C3C67A8215EEB9909833F1973860F73C3C8E1BDB7
+B3A4830A7A82BCAE2574C9662D9B79F7C9209F388EB655655268240DB3E87310
+966464371A5F1C833894978FF20B2DED89C69ED956DDAB5B3B10A121D49DAC62
+D56399106138052C66D44439EFFB6BA49FAD8823EFE66850FD534A86074C5EE6
+141351C5319252D5DCF7FB36F0F868BA5BE6469BAAC008ADB1FFC72E4BEC7C57
+6DB7B4B8BB56F2990E8A5F8368A67FAEBE4FF86FFFC5F914396E9D4536E3BFF0
+32FF663883563606D288E4F747853EC60A535E19ECB75D4661F1967B55A7535F
+E6E214BA61CE6D84BC6F7D78FA0F7DA7E20B4DD668D016CD47C81E1E832F9D19
+4CC0907B9A1CDD2C241A672A025EABF26DEEAF4074289CF072CDF858B4E61536
+819A7B6A9F51F9EF82AA614FCF4C3C373E77A5B0413856EADE27601CF60EEBC6
+0FE89D9A1D11129AC54B76C6215EE2DD0076C187D039351A8289809783D3FDE8
+70F11D780FA6412CFA96D04798EF3209A1B6F81B14F283D5B3C8F118897F7D05
+9FE1769DA0CB6048672F61B429FEE444967B4279B24C20890EE7B159132DCC36
+DACCE06AFB113A96D8395BF21AE603D578C46E70012AD1E73448E306006DDE55
+AF7EC201895FC7C241549CA800439276011BFFB3C8FAB1DE36C1108DCBE67B71
+56CD9CAD7F14A6BEF3CC4B5E8711BA4ECF0ACAFBE613D5B96EECC0794FF10999
+9EFCC16247FC0F4A09BF9BDB5F840EC4BB48DA4D8B5995FF535B45FB134DD2FE
+F2CBD655AC6F137EDAC2113F8E0C180E069C359B294B2F4C0055A06742D6AACF
+35A519D3922F28C867ADA92F4961CA18A3D104BCA99E0B6452111DA91D39489B
+DBA169A25988765832AAE78B7263C2FED70309078F0EF08AC8614F475A0C5258
+E68536E981EB9270B22D2B94D2892C1D6E447AF65EA74CB0A90A620CF61F1CE5
+FC70CC7E6723171DB1E20AB4BC2AEFA9389F598222025D691E8525A478DCF513
+6C72364F2666AB46677197399C3D68B4CF1F4F87F430A5806E2FD9E798D7AC5C
+977D23EE3000795422818868AADCCC0AFA560830FB9E33D5D8B7C5E4A714FECC
+7EF122247BB79641B10008EBE4AF583E7B89C97821C05075F46208FBA9F88B24
+EBB4E80F0D93999670A3AA0BB5B7B5B72C35D317D27DF658382D849CFBED8D3F
+64D88411ED621ADAD8948E9AC5A874837387E435C19EA34F010B27A0279036D0
+0927647212F62332627582F78239539D7332B563CB823437958240F278E6CC47
+BA53C09452990A4453F5119221D998B69C370EEB7FBB5EC946A2667805EDDE1C
+FCCEDF03BF98C2104673D26A09A249D57690B135537625E48258392840A73967
+B967BE08B211837E50410E273B27B856F66772430F326E9BD0E619D70AF5190A
+D70D7497AA36C39A7579AA36BB89BE2CBBEB16DFB15042C9C2F37FF83E7DF8A5
+36AC3F8AA0D7A78D430B643B6ED36DCA486A81B06951777335704851651CB4F0
+5AFAE9EB706E9A3F8E4F7F131D9F24AD2ACD0F05144FE7CF8B09046628788B6C
+FAFB39E3709836C7B514C2FA8C9CA76A6CAE796E9D52AA6A0EF7260A10B429FF
+F91B1AE060E64B6E61A87484137BF6BA7709730C694015AE6DEEB97C9509C929
+4CAB68E161E10FCF6E84D76C391343E4FA361B1E9F88AA2889B1684803269963
+82BD49E653DD8D19247EA3074E60ABA1ED612C056B4F18962DE3086EA2283B43
+9FD66FC6C08DBC5AC5DBBEBC7998D0EC16805E4080DF1C7F587FE226D9F76290
+11B51364BB712DE2A413FF159C357534005A20CA77AC8F3437D7BCA1C2BE92DC
+FD81A74C007BDA36766FFBAD0AF3EFC3B60E24B2FC23E6E71FC11365B2E3022C
+2C04E123D06919429FCD9F938F5ABB037B7C03061B9E7D883D953C20CE325C61
+8944BF344D96FCB68BE7B872BA1FA3616D43C7C375A0845B5A0B469A091E4D59
+676D53E592DD776AA99EF8196D1D1485AAC1D0EEAE079F0627DFD3B8F5D96E86
+92BB272BF1A20FC52C709B4F9DF4805671082013007D6338185B6BA6AC572AA5
+53CDD41F0CD270EE38ADC8FAA95AA16B68768DCDB552DEA2D6825EAE1B9038B4
+48CEADED7C157695843FD9CF8D6B17D3B1B2F08DA18EA57CB90F47C8D2DC9F0B
+EC8AC42A758E812A549294FC224188F68B6894B08FDBB5EF274E41ADE95680AF
+133B6D6CA99E90B527DE9B15F0C21FA640861E82F83327CEF9B0D4F6E689D1F1
+6A92852DBEFD22B6F8DFBA577E173DD275621BA99E3BFF9C4F8FCD7420DE5810
+A851488A5B968401A3CD8197DB19746EFC0331125B0A7016A9B8F84B0F8C7DC3
+60FBA1201BE6645E37BB02824B2D712BBFB4442215E19D44084D066DA95D75BA
+4446DB751955EA3C4BA900CE491EFC809EA1F8161175F282098ED54778DE77A9
+598AD316C3C7BC26B301B7A12F1A82DA58D466939A23D7A786C9201930E4B750
+AD10988EC2E5B461A2286CC39695B6A5A05B151BDB13066720F467C67EA9744B
+944AB6261D889C365DB55E03334B29679A5F0FC301AA6FC0870B84B8263B1392
+DDD3153B380FE80463ECDEF1318E838BB899D2F420D6C4F99A56D64A5D618E99
+C86CA73DB8BCD3E76A869864DB0A7276F47EF594690C3CAE6E1C47C11887DA03
+22B6F2E6E97A7338221E38AEF20726C9687D1B8280EACE8E8B0B842EDDFBC123
+A6A090B89D5AD42C312418FDD834FD4F354AAAD5002ECC573FCA75E359B52C48
+3ED5A6944A4B5CA3E6EE7FE01C70F8E059B986D7F54D003858569C207F6D4E21
+51572D716A821B7FF136B2FC6649809599F77990E1935842AA0B34DD9AC288DD
+C7A08C49F96C99D716E17E84BF3B622D3DA4ABD0F7C2CD9247F84FF0A0CE3CD0
+54A635725EB0A9B2BE2F6D421DF42C12A8F83CE4964A184D4CD2CC13056004FF
+2654106BD9C6767094C7162231201C4E1FA16D5926BDA3B7467CA4937CA4319E
+3C96B6C0E0043BED230592B06E18C7A1319A778DE99FFD8D9E4C75400CE635F1
+85EF89D9BF91A246F4CBA5FF0C62748C958E3EE1F71CDE61E4C919CE74AB7E3F
+5E5D26C498C7DEE52EA37F00A94F28A7ECF0F0A9EACC292A03E3F107A6C5F6F8
+1EAA1ACADE655FD7A0A67D8682478F68B317EDAEFFF7B7461E0771DFAB0A948A
+28E05549C7575588FD72FE2DD72FD72ECAF8D81CE40A818A655875C0B4894C23
+C3A2E904FEE3ED5473091A41D3A209B818A91D6F1B41BF8E92A270FCAE2D7A0F
+FD60F2294DFCC98D65E33AD49E462599908E4DE5ED7E10BCCEAD3CD5A0B380B3
+E2EB703723E4DF58B08F92BA0293BD16FACB5C78B9A1729E78BA2B7A89572709
+9BD8806875F67C87CC1141E0ECC1C6A4897BD31556C81FA3E2F1E7A568531E6B
+81CBD2DAB4B86410D615E8641F8064FF925171E54E165F33DCFA5113AFAB1E11
+C0678CE2689C7CFCCCA3EAF5D84E715307EDBC68FE1703BC6601E0BDFD4D181A
+C6D7355D4D5A6509777D97F21834D834D905F58303433A49AA135FB8C7E7320C
+24552D6F7E26065CAF3EC1BE08D14C539CB5787D6F119875F18ABBEC5B02D9BF
+CBBE4C315C7773DA59178EBBE098919CDB2B93A3DA0113CF5E4553EEACD7D937
+D092CEF9DB58D3F69D577CA9C3415C710CE46E35D6B252186EF35D59BB97492D
+496192F8D8BCA202442791B0B0A7149AE9BCE292AC6FC53B71D5F8349FF82C81
+91684F71BF4CB9C72FA83B1E6549FADF452B3CE23C6DD3E788538AD9A02E702B
+54BD07B019930E70D793BCE8E83475566B418C27352E1B7947F9E46BC0E5290B
+7AC28B606FB74834085DB3ACE48669824239C4C85AE31C385C4A747E91EA352F
+E6CF035FDC13E146F78A06CF3D1DD83DCED5B0D10760E3A7273AE3172B4455CD
+3BD17AE58B6E2B2D143AED816423A5DCDAFE0532E1A5E7E8CCCA0F3D4D3B98D2
+C3AB43FD353E11C880917EE3189DDE2C1EF5B0E613303BCBB31183DAE43E06B2
+9E8975C9CFEF26E225D83D6161C80FA6B142A3CBECEFFD2355AF6A2F9C590EB1
+8FD3320F35150EFE4F96991345A1D430BCA481C86EC5993915FA62731A551E5D
+B680D4BA1BD02388006737C078F4D104D6F4D38F67F60EEA66C8AF2CBD5CC158
+B342D6E992518A73CF14856DA38EA231FB26A6BB6D0222F5089712B721C80E73
+02051D4DC608B394B2712362EEE267B5FEDCA41425981F8A746C31998132FA2A
+11DBC1F88FD70E24ED19816541549859749854AC92E7000EEBEFD20FFD090D4A
+88F4F27FB18D9E951827E39837B26B12A6C042B60257CFFC9195B371A1AF8E09
+32C39E5B183DB4207C4FA28BA0861A0C4E81C6378F575D56AE2642F46E33F460
+A6293898DF193C8AA496E3800FC23AE3B69463FE9DC9D8776A83F2086DFF16E4
+D5C41FB0C09F1DD405193DFBB68A5EA027E034C69036D40C7BECBE1C6EBB13A5
+1AC11FB6075C973A0A50DA0BDF3E371F4451915C23FC1B1DCAD3085717E6F190
+088A6406038C39B1D8E5AC6C510CFA62222E079A5F94DB168104F4AD2D97253D
+7EDFD74115F05048D4A02AF14202CAAFE8F24BAC11281B4896AFA52058BAF641
+2645E49EE964530DEDDA4FD27FC52ADB572722E1E8CCF51EC924213FF00EF0A8
+0BDD64D37B8A6D5EEEFE09DBA2E131A6EF79625983D31717CFC77C1B8B26EC15
+83ED97C8543A876B22D31EFB2A33F7E6FD2ECD86FF9D428C800E761E49AC8A42
+39BCA596FC08EF4F36E1167B1E9A4391E74E38EF571A2C302AF4C249A54A8297
+C4FD21781920A37057A39B11114EA01A605D249726A950AB9CA13742904614EB
+90EA7993298FF3759BFDE6697E3527036C4B8F37EE3D77BF6DC844E3FFE37161
+C48ED17D1376ED07B8CDBA21F5FF282E1960C5F28219D8B0BC110E7BA3E19C3A
+52F42215A32A050A9E7479065B1FDB644FC88F615877D6A78353945121DC3552
+3F821B76B49A45B668120CC59C1EF57BE66CC57CD0311D57DDDC160872E598C0
+3DC70F7294FFB2C3FFFC14B05934008892DCC197128D644E77767AA88D86FAD1
+51AC3093BE3D8B801C36F94444B23EC3152C3DE0208D109BBE9DB2C632C4A425
+5E49049D29785AD20C3FB106CF1AC5322F33177F4BAA9B5D4C86BBBB5374649F
+83E7565448E89FBAF449922313E96A0C7C0AA2279DED3EED0CF58101DEE159C5
+92DBDAD0A4EDB2FEA9A8CF30E41A12E1E426A92743C7BBDE0EBC948C9CF07AB7
+FA41FC082F303281BEE558A79E3E77B31C752B2840298222F218D813CA7263F4
+51488CFD1A57D7B00FCF5F246CFA7B6438CC0A0071148424D3A7114A358F36B3
+71CB463BB9212F29A5289D0EFC07DE6A4536A030DA9096148ECE837611D1AC32
+66FE24CE590349E3ED0B7DAF61EBE669689B7EA383BB8396A0662C6B7DB61B09
+844EC6A4D0ECA6F09E1D7B3C0C194EC7203DD92D563CD5E4578112B5977C9B1E
+ACD4DA7A6388C0835D021838CB190C1C4A0C43AB7DB4F53A511165201BD8DEF5
+CDB21DCEE81240FE961ED84FAC75E1A0C834D0F07D22D0A30F12126222E51C31
+950433A6EA3DE6438E09724BCB18D6E54CEF6B8B058D1E43409736B7B6BD7D99
+1E2390FAD64F6693F6F1DEBCF5AEFC0DEAC1800CFD326C61A5DD28C269F29F84
+54A07482A7D3F57B789D5597FE88BC127420CB07B3B926EF18D385A7A326A2B0
+87ADE9EDE8EF8887421E66924001C11325535E66EE4C351CC07F878550B5BB7D
+6F3FF0178E710D1AB430A2EFE9ACAF098834059E52D687036ADFB3118F20A78A
+28C559EF84C6CB99087FC344888536F3992571426A9D9F41C26D46B9AE842A7B
+DB9C9160D33BE70543B73BEC74D164E780EE98052D76C2AC8984D0DA790F775E
+6D65AE5C896E2D1A9DBC6F1B9BDA40D6F610E32B4BC21AC198E9F5CA5FFBD93D
+AE97C90881FF85E9E12961B57FDD3103B1EEB05AB42507EA5240A9D3A45714E2
+F79C63CA55E414218EDFEDEE8B782BA3E5D66350AC0F17882486C577DB57BA58
+9B1024388912484C6BF9A0AC48AD306AF2034E7260B35DD6CBB70D48AD716529
+5742DCA4C092EB0E1C420934E7317F0BED25F7F5E190FB708F2CE4AE0D14565C
+D1A77BAF88C75FCC37BDF41010F5D3510121B92338FCA01F4464B178391B5C95
+5F1DB500644C369A7E678F2BAC5FC1124DC7D457376F955351C060D66B75297C
+3D0EBB38119D5F9A930E1063B7DCA33208194907197635F839DE10D98A5A61BA
+6638ACC396C609DF13BEEA0264D39E3D4FEBB8598ADEEF96B0B1BC242ACF137A
+F18B6363ADB7CB53BA96EB2076C7387F1A70C6550A5631B398392DA54EA178FE
+DDF58D0D1ED403F88489AFFBB86C7847DBF7F21BE25847B82DBCC87B46477839
+BCC43986721734097461B8C6B9D0BF2B6EF3C15D44885433D2842A5EE41F2075
+DE45DBBDDA19BB853D41142E1F55B2245ABEC6C01F3254357593397EACBE6A3D
+4956A31982B83A688E0CF2F7426FA7C48DF17DEABC4D213DD5DEC551EFDC7218
+28A68B9EB46AF707919FA0C06451FCFDED1ADD901032B2D403B20D6E8F63E43E
+35591142FBBA5F13299E1C17D38A36AD3B0B89EE2A3DD3BBF875FFFEED310D68
+FB7734479D284B2C0EB236E23202E1BA84A243593E213112286C032D6BE17238
+0C078B117E4B25AC190D251C1ACB6B933C387BF6F02F2DFD8E7B237B52A1AA01
+8E826235AFA451E3CC27B40D67931869C8C0EA92D1E08FC9C546C24F60895113
+E9218BBCB58BF09F9220FFBBDD1B1CBB060B5BB3AE83501A79A78BB15D62B87C
+031435CF68E4CC06593B3B3C5078251F615EF33FEF992E75F84E4D0B6769F73E
+E045A2A6B868AB740A5DDF2FEB58BD2FD74278F9C551522D7E5C722C9CEE6EEE
+D00182BF7E5E2C96058D5FB62D08AE837C727A147DA3A72B7C5487AE97C908AB
+9BD6FFB71D1F69C903FDAD725BEABFD77E775A451B7EEC6881D18D5748E81EC3
+54BC98BBB1FD5BA0E0189445CD489C32BF42884E7964A44054A656921857A2B9
+7A04681CB650B641E19CB6709F10815537F88C9BDA1B55D77648643E2915D2A7
+F46A6E9CBB8874EC1240EBE59C91A99D484DEBEBA60A760DACB8C4BD004547C5
+97FB6384AFC98CD9BB053F335A28A11061CB3C6331B61A9AD32286D360D0DCCF
+4ADE09AE98C56962017816C3563BC9D98C38CC09B1C11A36C17EF18E9C8FCD55
+BE0FD8965DE846D2AF3025861CA5A7C19C2E80CB74F86CD53E8CC9DE6BE3BC10
+386D56410A624BD602018985FA9C49730F20D19ED91BD77F29BAC81CA59ACDA6
+CF14046FB202FF5D7A20D3A46FA47D7D7B85B87B18353FDB263983D9501F49B1
+7A6938C305280A288A18B896725FB13CF0CDC435ECAE7B83428E5D60B6252082
+38EBBC2930019564CA04B7AC91B949ED72EC204BAFB469F56A69A3C1C4326999
+E300C14341F9E836005CF3F1D73C67A459D83832300ED1E6C3E027B828F39C86
+53EB935D1D8D8222144EFBED18CE0548FC8B0996B192D92A69001A8CF42F5391
+7DC08F94FB9DE42AFB9468F27A1B6013E86510A8570DE5743B07B069FBA9A38C
+F923D368622DB5A489A7B7E988BF8A7367B6E713FEA38726CBFE1A3A716B9BFB
+6079389DE1341CC21795033C8AF45ACFEA4D61EB463CC92E543EB7150B5C009A
+6DEF0A41CED12566968B60527F925ADDCE4C13F2046DC05F20201D9F5BE85564
+BD91E07D49C8EBD39BFD36CE3D25B3823FEFAF33783150B23CB4546E81BE7921
+7E7F3988BA130605D007BA0D32C76F4182628AE9C77F5BCE45BE41ABF426FDEE
+276CF14DCD5DB2FF86757BA0FD92C09D343C20E2D28C90FE748C49B5112F34BF
+A7698C19D54FA504F6DDD3861F9199E9093051851212C61071BD7007E43A3190
+844B5DEC290B844ECF3723DA15F60E49D9BEC8B2D1C4B757A35819001FEB97A9
+EC1CDB6E0A5C047EBD0E58118C1F4AC99ABB99926068E157367D91D2D45B580C
+D969FC8F66C4B195084888D50E99A1813BCC3B2E137FA09BB94C96F3CABA8A31
+8DEAE7E321FBA6BBF275E7FDCB0A9EBCCAC180BBFB8278854047284F3B4AA610
+D8D6C8B944BA4E336D68E3FAFC62367EC250213DCFCE27E0B88EA9E85CE24281
+BDC1FD6101E5C1D85F6C16A6F76A529EE35B53CA3B49F612C005AC54DB9DB8FB
+B1376B9DA3B5EF2616A005C012112C7C10DA19B9378A506027E493480D441493
+764D48AD4C8E3CC115279F3687E89D87156E3FB7C062411360B8F7BFA4FEFD03
+6310B69D83D8322DB0E5AA6218A96BBA3DEB66FB67C22587FCB01779F21B9EDE
+2902AE0DDD9FF27D9AC17D5A6D0967A02A20CEA11EBB416B9C2C91D1F70C485A
+39D7816D9B1E573C3BE6D6D002378C5A220CFA7ADB2DC09D9C4A1DD38D06BE06
+AC204C44772FC9BA8CB5A7AC8E927A152BB4EDDF4528FA2D36436CAB54182D33
+6205FAAB5932FC8FA1EC3DD1252A4C947405B72330C4418216D136C4B20B96CF
+22CA8E2B471325B294C61C59FD32E7D2C148F8565DBBCD90B66FA40A83D4AC60
+AC9F8DA1CB5D4E222C27767543EA86D83C3C66C8604A4FBBEA67B6833065E014
+04DEF898EBAC3CD067C2E706E7D1C68F3A236EAE478040B730CE590ED38FE340
+52EA7C1844C49B8911621046AB717AE6FBF3719F7941EC91235F21855B7FBF90
+62C8F23BC153B74FA398F7ECE19CB38A490E534700F97E64984366C1061BEDBA
+6358B94BD318574792A1D00851943BC899B60AB66FF8C64AC97E925AACF493CA
+CF1E2BDAC575E9EA58F82878A5C531CDFA79329DAF07A5D1FEEDBF771C205DB0
+8F7FF003D0D4D382F175CE5DB7BD66FC2D4025FF06C96B99F37683D32B76D83C
+4E4EA738FF8B368AD737273A5B5270C705D8D1824D1D21A8AF0ED7EB23619FB8
+177A61E80C32CFCFD788B203F05B3B3B49F76FAFF5650CBB65FE0FA2FB5D5282
+172A2835ADBAF0B9BC69CDF82AFB639285A250ED1340182F0B8A7CD3EB6E481F
+B1479530461DDAF09C567BF3A814A2B96F4681FB1ECF0FAE7D75EC91643AA71D
+6A129F07276A8C7BACA7D0468CE0386D7667DFE04B09677D502A05C3874586AA
+DAAA13ABD2FB93B8F92F72CA2F38AF9D643F0C1A7786A15DEC80F3F13DC2EB0A
+956A5DC1211D02E732476EFB7D999C63CE53B27759D7D93B47383DB234C4C384
+E5E664206B8C833335CA6A89730543071E483CB92DA30755A982E25E1A268AE6
+D1355E15CA20BFD7B9EA1F89C3C07F0EEDFDEA65F8A82C39BE3AE22E727D22F7
+C8DD4788497AF3E6D9AF79471F575F989158977D3277AB36597BE0EC8347DD33
+BF0D93288549C90642004A9F969893798F93C1EF3C7A6CAB9CADEBB6787C18CC
+2232972AFD6BBC6317FA46765FA74DBD6F1FFD5491E0E6335F0D08605883DA1D
+9E3A80097856D540B61473D573A9AF12B79AD066F09B2BAAEC9E46CBFD1046A9
+1C07FD78B5C98E0F9847157361293ABBAE194FA860141A43482C7CA75F781351
+E762FC9E3F892735C496DFB7045E86C7943775D96ACCF2DFA451089EBD4BA12B
+DDE24237724CA3ABB3AA061213185206F058C2CAFDF35535C1AB6EB38065CDFD
+E57123DB9B0C933C6796B59DB405093C8E429A0511B6A23D2A6FEE64DAF67F99
+0A4B3772003EAC01BE1ED68FBA87079D0100BFBE054A3EAE2CAE8B01971FF85E
+352F86A1A29ED975D4D69C748D244345E7486974F0D402ACED2B7DAD1E1C53FB
+A029DF4E5CBFD64C694B1D911E53900A38DFA5FBE785D35A2595BA71D5209E3F
+803726BC42832EF1FFB227F6BC5691B2DD989BD48CAE99B4B69807E55DEEE2E6
+1C2E43A3F90F08DA4049A65C2EBB68AB37CE0AF7C4ED41B27BDAFE3D37E982B5
+17CD994BA4F8C064FBB1C4D477E177371D0589C4078CE74A1DC6BFBD2C76C8C4
+4DF12316FC2294A8C834A2A1AB1271A7C3CAF90507679280F4BD0C6FF1121BA7
+45ADFA2BAF226982DB7781A96434FA8495F971BB17475C7CDDD134AA6E87946E
+EC2BA6AE663F4317DB621CE3D2644A5B3B5F577DEBB33407D13D5BDB873A9622
+5E0F138FF5EED620E4ECDCFC4BC8D43E46BC62FD90F59B06938D1405DD8F92AC
+7985F4DBE35AB0AD927A7AA1AED8A3FCC9992B89D9CF9EFE02517A602C10CAA4
+44C9FABBBF210F406B358DF144827E04540B47B01AA6631DF583A36A10944787
+AF2F517BE8D6B8B43C4A97F49132467F0243735AAD44908C4FB05137A7374EC2
+BBF2CA497924F050E7902E06785CD6BE7550360283D231BD53628F576B92B6C7
+3A67EDB5366C3DD053660561D5EC2C7D7337E4A89AE89EE9F2ADF4D99A75ED5B
+78C496422AA1B58B8ABC81F5AF8BDA7A3C65D221977FC6EDBAA2E98F26358788
+29E0DC0A30527D64CBC82F2CCAE18ACCC1B2A64DF31030F0F14F233B5306D623
+DCB30263BD18592A089CE4C2D0390126741EE14F7558ED949D13DDC9EEF0AB4A
+3166F740E41EDA16F729F76E42DC1D18B2EC06D694781851E9C9ADDD139F7768
+627A1D4BD88C1505F31911B1BF4AA76BF6866EF658F607EA4272095480CDF526
+DD9FCE4FBD76AB86C887FEBD791AC89EE99AB5A2903FC1D4ECDBBC4AED1E2568
+DC74937B487A36FDEFD62C230258B15372F25FDEF0B59A482A6FA149248743EB
+ADFCCAF718FD9D6B8576F8DC7DBBB96DD1FD3AD502F6F9FDEACDABD1A9D54290
+C3417857F1818AB3AB34C1BAC6BD65D7A1A5B3480921E9E48546BB99D41FC796
+D2D373042F1F4A796F8FA1AD43F1BCD937534ABB4BEE3F1BE7592C158885353A
+C2DF29E4E95EE1D526A064B5EBB9C5A53DF45876AF31DEABCEADCB5E4000497F
+7A0CE6E11077A22DA49AE3416E9B3EA88F151CA288979D90D1F5B9CEC9F1B36A
+7D5546E3B317556F0CBB4375AD06D7834A2B16B0F4A2BC18B3775EF4817CCB4B
+51C75736D8E5CEE393965FBEDB98568BACC0CE59D39E0DB30D4D735566681A7A
+D7F39C19B682DC7B98B87772E9FDFF1A9848463EF22C76724B4FBFB5765DE1FE
+E57B45C65CCA8150A80DEA255943EADA2DD043C239AFFB5FCFB187B763A3BB27
+CC0BC3936F5E9F833A745B3FD079BC7489104F77880229227F07B294BB9B14D7
+62909E582CFC20A5C57CB42D90863F4B7A2BC6EFFE6CB02490D1E1953C5C5B77
+BD5A751FA40E2E681D55AD39F5FEC3D1B564BD77899552874802D7E7C1236388
+07E672122D3C4591E895B2792DB4E265AC250D2511AD07E43490004486C43471
+38FB164E23466689B3CBD57555E84337B5D7F0B809B9524CA5AF7D1406F80EAB
+C72BFC9987447C62D70B4D88A54A6B8BED5F7200A00F59432CAEBD1120BC882E
+82CA6223D0F60FE03319260659263AAAFA9A309D6B87A926821520FBA6B269CB
+C0245426B25DB5B5C9202AF788D8CE53F20EA1F18BB16EE5373AB5593AF0BDA4
+D0BCF44B51AB29CEF3295C3CDE1A112043AB47F05812A5FBABEC2FBBF404C331
+BE74B93237561CBFB1627AC5883F56EAD46A8B2132E352EAEFF95D79A9C36731
+EF7DE5EC66671E4231A6784977C2883AC1597C73E047FFCF49D0E16E4355A8B6
+60EA0698EDE972C32F0FD19754134B5D83C3FDB82D4F8904DDA62E22E2743A89
+E79421A43FCAB3E6FF90C36E5A5B4F2FA2FEA6D0EE41AA3C44B727AF545A3B45
+2D931C1BB522CE068979A7DED0470409E7999EEBD6C58A1F1909CDD00ED2180D
+44A271811E80B3950222BA531719FC4B0ADB6255BAA63787774E2947CCA6519D
+E51D71A2ABD77B282CC8B4F8BAD57ADFED6818B3C24ABE0E668AB63CF2F17731
+2F7C7A492A47EB38DBFAC5A36BBA799375A4EDDF6A0122789BF6F58F8EC9F0C1
+49CF01C136A792BE4C6118DCDC0675459ECCCA754ECDA9D170708CE58A230DB7
+D753C45E7434FFE711AA5DA45393DCA8B5C8920A95C94F3B89776C23B53F70BA
+B6D217CA58C551206918303DB33B6081E3391F10DDC5F58B1790028AA2150AFB
+085185754358891D30992FFA2C23DB2A04521107101C2B52A1A168E2CE7C85FC
+37D32B44FD1DC3BE4B28BBA9A9F91229C79997F5184F5E7143C838FDC8196C52
+0B33A375B320A025180846736F0649DCA8FC61EBB6CC1974A4134EA26E6F5E5C
+A73992547B9A4E6BDA10FF2B41C9215F2F9AC755DB11C1CDAF34396E4B92DB64
+83034FC2023D846B33DC7CD297527F183540456192DCF23BCB4A1DBBB7A2ECBB
+D938F9F3C03AA46A1893059A722AE7FA05CE716AC8D446D7F038D6C72C172A5F
+05F91CB5FD5427E6C156F126F6B2014F97F5792F77CCDA6A802CD7E3405FA66B
+E32EECF53CA9071D1EE20AAFA9AF3DBF4CBD250650870F0B9A3923BC4484F349
+EB072F3244C98AB39B6F708A4A52C0EA243DEB4DD77BBCE573A2E56323A18A0F
+504EE24F90A29AFC5FD3002749E953E1E1E6E6E8989A029BADA9CA0A261884EB
+C6BC3BDE99849D6F05D8D1ABAF82A452EE116463444BE4D3DE38F63938BF69BD
+10EEA7C68AA8077F412060D185E4187120926B4B209A74497A3C9065F1BAE8A3
+C5DF1A6A01349D7E8D215FAA03677C682022A26D3179CABD03A0C4BC6B303BFF
+BC7B3FAF26B96747A840C12EF14E16A2DEC76B243519B53E04038D3FB13A2C24
+B531C3147B51A8C3623F4C161B4097364608D5871A29006F7ACDE5ADA1F82C11
+11BD9E2AAEA52D352D70FA4C94809422ED65C03C4A72DBE2FBF26F4CEACE9DDA
+F6D895413EC28F2F61F40D67AB8798DF36773780B292455A689B4B70F03D18E1
+EEDF66F3C5823D47156B6B2D1A1006C513FCCA31D101DEBD474E72B49B664F35
+86EBB75BDCCB5F4AF8B583B835449F7CAEE5E97A819AC9ECEDDD6AB2E7B326D2
+A92F7568D8301B1F1485F234B32632E8725F8B637EEFA1397FF031342A03B602
+815005BE674B52CD4744E20CCD2DB8F7F58D0717FCDF04001101A51B0926D53B
+BFF990D7B01091B64F85C9397DBE3F48A17BD2584141B3229CEAAA3F0546EC6A
+4B9FBD4EED3EB6F78F8FE6D342B13F5BEEB210E4A527D83B9354A085AC87B359
+4E5DB704BF8363E95FF526A56182093FBC89926FA47D90178A91CAA8D5A73F2A
+E38BFCF454444A79EB4AAA502292C08166EC7CBC37014DC7DCEB4DDDFF7B9A29
+75A5DC4C86D19B4E9901464C7E81F251DD00CEB0A87C6DC15EDE276E8976DC6E
+77642A3B502A160CA2AE5EF55BEFC154602E96F496F7A4D2F3D345F51B28543C
+DE2412AE9C332C5141F664C9B5BA61806420359A29A473E0BCA4FC49853F6622
+A6EF486456683FF69DFE32EA117216FF797E3CFD8C4FE436CA7E1AF5F91DFDD0
+408876DFC19DB1CD9EB2CE9AE76EEEE3E73E0F37BDBF4010B581C510B3DB0CA2
+C340B265B989E1E682B4FF9EE3CF10B9166604FA8262B123C7333E91CEEC975C
+80D73B4DE4F9A065B1D86A040B69197EDDFC955054AEBED3B93C9EE76A139D91
+D8F1967EC2579F6E111AFCA78FDCA67DC154D4DB3CAD540024BDCAC2A28537F4
+51BCBD448C87549379CE17DC363254735D586FC39A5BBCB4EFE907F37B4E9842
+12BFA21977D0D519B0628AA31C58EF538A78402BC7611FFC01B6049A8437D319
+9A9A1375578B7D36F14F6A31E2717F1DB8A55CB0624BD9BB4ACFEF4594715AD3
+BEB006D593E3D0FB36A82813A39AA70E
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -3545,7 +3544,6 @@ FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMBX12 def
 /FontBBox {-53 -251 1139 750 }readonly def
-/UniqueID 5000769 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -4132,7 +4130,6 @@ FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSL10 def
 /FontBBox {-62 -250 1123 750 }readonly def
-/UniqueID 5000798 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -4675,7 +4672,6 @@ FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMCSC10 def
 /FontBBox {14 -250 1077 750 }readonly def
-/UniqueID 5087402 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -4965,7 +4961,6 @@ FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI10 def
 /FontBBox {-32 -250 1048 750 }readonly def
-/UniqueID 5087385 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -5201,7 +5196,6 @@ FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI12 def
 /FontBBox {-31 -250 1026 750 }readonly def
-/UniqueID 5087386 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -5437,7 +5431,6 @@ FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSY10 def
 /FontBBox {-29 -960 1116 775 }readonly def
-/UniqueID 5096651 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -5693,8 +5686,8 @@ rf /Fl 197[25 58[{}1 90.9091 /CMMI10 rf /Fm 197[33 58[{}1
 /CMBX12 rf /Fq 129[48 48 48 48 48 48 1[48 48 48 48 48
 48 1[48 48 48 48 48 48 1[48 48 48 48 48 48 48 48 48 1[48
 48 48 48 48 1[48 3[48 48 48 48 1[48 48 48 1[48 2[48 48
-48 48 48 48 2[48 1[48 48 48 48 48 48 7[48 48 48 48 48
-48 1[48 48 48 48 1[48 48 48 48 48 48 33[{}70 90.9091
+48 48 48 48 1[48 48 1[48 48 48 48 48 48 7[48 48 48 48
+48 48 1[48 48 48 48 1[48 48 48 48 48 48 33[{}71 90.9091
 /CMTT10 rf /Fr 131[91 45 40 48 48 66 48 51 35 36 36 48
 51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25
 45 25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71
@@ -5717,29 +5710,29 @@ ifelse
 %%EndSetup
 %%Page: 1 1
 TeXDict begin 1 0 bop 150 1318 a Fs(GNU)65 b(History)h(Library)p
-150 1418 3600 34 v 1920 1515 a Fr(Edition)31 b(6.3,)h(for)e
-Fq(History)e(Library)h Fr(V)-8 b(ersion)31 b(6.3.)3218
-1623 y(Jan)m(uary)f(2014)150 4935 y Fp(Chet)45 b(Ramey)-11
+150 1418 3600 34 v 1920 1515 a Fr(Edition)31 b(6.4,)h(for)e
+Fq(History)e(Library)h Fr(V)-8 b(ersion)31 b(6.4.)3364
+1623 y(Ma)m(y)g(2015)150 4935 y Fp(Chet)45 b(Ramey)-11
 b(,)46 b(Case)g(W)-11 b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150
 5068 y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)
 -11 b(oundation)p 150 5141 3600 17 v eop end
 %%Page: 2 2
-TeXDict begin 2 1 bop 150 4413 a Fr(This)23 b(do)s(cumen)m(t)h(describ)
-s(es)f(the)h(GNU)g(History)g(library)g(\(v)m(ersion)g(6.3,)j(6)d(Jan)m
-(uary)f(2014\),)28 b(a)c(program-)150 4523 y(ming)38
-b(to)s(ol)h(that)f(pro)m(vides)g(a)g(consisten)m(t)i(user)d(in)m
-(terface)i(for)f(recalling)h(lines)g(of)f(previously)f(t)m(yp)s(ed)150
-4633 y(input.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577
-4767 y Fo(\015)30 b Fr(1988{2014)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h
-(F)-8 b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21
-b(is)f(gran)m(ted)h(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s
-(dify)e(this)i(do)s(cumen)m(t)f(under)f(the)390 5011
-y(terms)25 b(of)h(the)f(GNU)h(F)-8 b(ree)27 b(Do)s(cumen)m(tation)g
-(License,)g(V)-8 b(ersion)26 b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)
-390 5121 y(published)43 b(b)m(y)h(the)h(F)-8 b(ree)46
-b(Soft)m(w)m(are)g(F)-8 b(oundation;)53 b(with)44 b(no)g(In)m(v)-5
-b(arian)m(t)46 b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)
-31 b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+TeXDict begin 2 1 bop 150 4413 a Fr(This)31 b(do)s(cumen)m(t)g(describ)
+s(es)g(the)h(GNU)g(History)g(library)g(\(v)m(ersion)g(6.4,)h(28)g(Ma)m
+(y)g(2015\),)h(a)e(program-)150 4523 y(ming)38 b(to)s(ol)h(that)f(pro)m
+(vides)g(a)g(consisten)m(t)i(user)d(in)m(terface)i(for)f(recalling)h
+(lines)g(of)f(previously)f(t)m(yp)s(ed)150 4633 y(input.)150
+4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767 y Fo(\015)30
+b Fr(1988{2014)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
+b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h
+(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s
+(cumen)m(t)f(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
+b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
+b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
+b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
+b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
+b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
+b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
 b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
 5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
 b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
@@ -6179,79 +6172,81 @@ Fr(p)s(oin)m(ter.)p eop end
 TeXDict begin 7 9 bop 150 -116 a Fr(Chapter)30 b(2:)41
 b(Programming)30 b(with)g(GNU)h(History)1780 b(7)3350
 299 y([F)-8 b(unction])-3599 b Fg(HIST_ENTRY)55 b(*)e(next_history)c
-Ff(\()p Fj(v)m(oid)p Ff(\))390 408 y Fr(Mo)m(v)m(e)38
-b(the)d(curren)m(t)h(history)f(o\013set)i(forw)m(ard)e(to)h(the)g(next)
-f(history)h(en)m(try)-8 b(,)37 b(and)e(return)g(the)h(a)390
-518 y(p)s(oin)m(ter)30 b(to)h(that)g(en)m(try)-8 b(.)42
-b(If)30 b(there)g(is)h(no)f(next)h(en)m(try)-8 b(,)31
-b(return)e(a)i Fq(NULL)e Fr(p)s(oin)m(ter.)150 722 y
-Fi(2.3.5)63 b(Searc)m(hing)40 b(the)h(History)h(List)150
-869 y Fr(These)36 b(functions)g(allo)m(w)i(searc)m(hing)f(of)f(the)h
-(history)f(list)h(for)f(en)m(tries)h(con)m(taining)h(a)f(sp)s(eci\014c)
-f(string.)150 978 y(Searc)m(hing)28 b(ma)m(y)g(b)s(e)f(p)s(erformed)f
-(b)s(oth)h(forw)m(ard)f(and)h(bac)m(kw)m(ard)h(from)f(the)h(curren)m(t)
-f(history)h(p)s(osition.)150 1088 y(The)j(searc)m(h)h(ma)m(y)g(b)s(e)e
-Fj(anc)m(hored)p Fr(,)i(meaning)g(that)g(the)f(string)h(m)m(ust)f(matc)
-m(h)h(at)g(the)g(b)s(eginning)e(of)i(the)150 1198 y(history)e(en)m(try)
--8 b(.)3350 1391 y([F)g(unction])-3599 b Fg(int)53 b(history_search)d
+Ff(\()p Fj(v)m(oid)p Ff(\))390 408 y Fr(If)20 b(the)h(curren)m(t)f
+(history)h(o\013set)g(refers)g(to)g(a)g(v)-5 b(alid)21
+b(history)f(en)m(try)-8 b(,)24 b(incremen)m(t)d(the)g(curren)m(t)f
+(history)390 518 y(o\013set.)41 b(If)27 b(the)g(p)s(ossibly-incremen)m
+(ted)g(history)h(o\013set)g(refers)f(to)h(a)f(v)-5 b(alid)28
+b(history)f(en)m(try)-8 b(,)29 b(return)390 628 y(a)i(p)s(oin)m(ter)f
+(to)h(that)g(en)m(try;)g(otherwise,)g(return)e(a)i Fq(BNULL)e
+Fr(p)s(oin)m(ter.)150 823 y Fi(2.3.5)63 b(Searc)m(hing)40
+b(the)h(History)h(List)150 970 y Fr(These)36 b(functions)g(allo)m(w)i
+(searc)m(hing)f(of)f(the)h(history)f(list)h(for)f(en)m(tries)h(con)m
+(taining)h(a)f(sp)s(eci\014c)f(string.)150 1079 y(Searc)m(hing)28
+b(ma)m(y)g(b)s(e)f(p)s(erformed)f(b)s(oth)h(forw)m(ard)f(and)h(bac)m
+(kw)m(ard)h(from)f(the)h(curren)m(t)f(history)h(p)s(osition.)150
+1189 y(The)j(searc)m(h)h(ma)m(y)g(b)s(e)e Fj(anc)m(hored)p
+Fr(,)i(meaning)g(that)g(the)f(string)h(m)m(ust)f(matc)m(h)h(at)g(the)g
+(b)s(eginning)e(of)i(the)150 1299 y(history)e(en)m(try)-8
+b(.)3350 1477 y([F)g(unction])-3599 b Fg(int)53 b(history_search)d
 Ff(\()p Fj(const)31 b(c)m(har)g(*string,)g(in)m(t)g(direction)p
-Ff(\))390 1501 y Fr(Searc)m(h)e(the)g(history)g(for)g
+Ff(\))390 1586 y Fr(Searc)m(h)e(the)g(history)g(for)g
 Fj(string)p Fr(,)g(starting)h(at)f(the)g(curren)m(t)g(history)g
 (o\013set.)41 b(If)28 b Fj(direction)i Fr(is)f(less)390
-1610 y(than)40 b(0,)j(then)c(the)h(searc)m(h)h(is)f(through)f(previous)
+1696 y(than)40 b(0,)j(then)c(the)h(searc)m(h)h(is)f(through)f(previous)
 h(en)m(tries,)j(otherwise)d(through)g(subsequen)m(t)390
-1720 y(en)m(tries.)i(If)30 b Fj(string)38 b Fr(is)30
+1806 y(en)m(tries.)i(If)30 b Fj(string)38 b Fr(is)30
 b(found,)g(then)g(the)g(curren)m(t)h(history)f(index)g(is)g(set)h(to)h
-(that)f(history)f(en)m(try)-8 b(,)390 1830 y(and)33 b(the)g(v)-5
+(that)f(history)f(en)m(try)-8 b(,)390 1915 y(and)33 b(the)g(v)-5
 b(alue)34 b(returned)e(is)i(the)g(o\013set)g(in)f(the)h(line)f(of)h
 (the)g(en)m(try)f(where)g Fj(string)41 b Fr(w)m(as)34
-b(found.)390 1939 y(Otherwise,)c(nothing)h(is)f(c)m(hanged,)h(and)f(a)h
-(-1)g(is)f(returned.)3350 2133 y([F)-8 b(unction])-3599
+b(found.)390 2025 y(Otherwise,)c(nothing)h(is)f(c)m(hanged,)h(and)f(a)h
+(-1)g(is)f(returned.)3350 2203 y([F)-8 b(unction])-3599
 b Fg(int)53 b(history_search_prefix)f Ff(\()p Fj(const)31
 b(c)m(har)g(*string,)g(in)m(t)g(direction)p Ff(\))390
-2242 y Fr(Searc)m(h)41 b(the)g(history)f(for)g Fj(string)p
+2312 y Fr(Searc)m(h)41 b(the)g(history)f(for)g Fj(string)p
 Fr(,)k(starting)d(at)g(the)g(curren)m(t)f(history)h(o\013set.)72
-b(The)40 b(searc)m(h)h(is)390 2352 y(anc)m(hored:)f(matc)m(hing)31
+b(The)40 b(searc)m(h)h(is)390 2422 y(anc)m(hored:)f(matc)m(hing)31
 b(lines)f(m)m(ust)f(b)s(egin)g(with)g Fj(string)p Fr(.)40
 b(If)29 b Fj(direction)h Fr(is)g(less)f(than)g(0,)i(then)e(the)390
-2461 y(searc)m(h)j(is)f(through)g(previous)g(en)m(tries,)h(otherwise)g
+2532 y(searc)m(h)j(is)f(through)g(previous)g(en)m(tries,)h(otherwise)g
 (through)e(subsequen)m(t)h(en)m(tries.)44 b(If)31 b Fj(string)39
-b Fr(is)390 2571 y(found,)33 b(then)f(the)h(curren)m(t)g(history)g
+b Fr(is)390 2641 y(found,)33 b(then)f(the)h(curren)m(t)g(history)g
 (index)g(is)g(set)g(to)h(that)g(en)m(try)-8 b(,)34 b(and)f(the)g
-(return)f(v)-5 b(alue)33 b(is)g(0.)390 2681 y(Otherwise,)d(nothing)h
+(return)f(v)-5 b(alue)33 b(is)g(0.)390 2751 y(Otherwise,)d(nothing)h
 (is)f(c)m(hanged,)h(and)f(a)h(-1)g(is)f(returned.)3350
-2874 y([F)-8 b(unction])-3599 b Fg(int)53 b(history_search_pos)e
+2929 y([F)-8 b(unction])-3599 b Fg(int)53 b(history_search_pos)e
 Ff(\()p Fj(const)31 b(c)m(har)g(*string,)g(in)m(t)g(direction,)g(in)m
-(t)g(p)s(os)p Ff(\))390 2984 y Fr(Searc)m(h)j(for)g Fj(string)42
+(t)g(p)s(os)p Ff(\))390 3039 y Fr(Searc)m(h)j(for)g Fj(string)42
 b Fr(in)34 b(the)h(history)f(list,)i(starting)f(at)g
 Fj(p)s(os)p Fr(,)g(an)f(absolute)h(index)e(in)m(to)j(the)e(list.)390
-3093 y(If)i Fj(direction)g Fr(is)g(negativ)m(e,)k(the)c(searc)m(h)h
+3148 y(If)i Fj(direction)g Fr(is)g(negativ)m(e,)k(the)c(searc)m(h)h
 (pro)s(ceeds)f(bac)m(kw)m(ard)g(from)g Fj(p)s(os)p Fr(,)h(otherwise)f
-(forw)m(ard.)390 3203 y(Returns)43 b(the)h(absolute)h(index)f(of)g(the)
+(forw)m(ard.)390 3258 y(Returns)43 b(the)h(absolute)h(index)f(of)g(the)
 g(history)g(elemen)m(t)h(where)f Fj(string)52 b Fr(w)m(as)44
-b(found,)i(or)e(-1)390 3313 y(otherwise.)150 3516 y Fi(2.3.6)63
-b(Managing)41 b(the)g(History)h(File)150 3663 y Fr(The)26
+b(found,)i(or)e(-1)390 3367 y(otherwise.)150 3563 y Fi(2.3.6)63
+b(Managing)41 b(the)g(History)h(File)150 3709 y Fr(The)26
 b(History)h(library)f(can)h(read)g(the)f(history)h(from)f(and)g(write)h
 (it)g(to)g(a)g(\014le.)40 b(This)26 b(section)h(do)s(cumen)m(ts)150
-3773 y(the)k(functions)e(for)i(managing)g(a)g(history)f(\014le.)3350
-3967 y([F)-8 b(unction])-3599 b Fg(int)53 b(read_history)c
+3819 y(the)k(functions)e(for)i(managing)g(a)g(history)f(\014le.)3350
+3997 y([F)-8 b(unction])-3599 b Fg(int)53 b(read_history)c
 Ff(\()p Fj(const)32 b(c)m(har)e(*\014lename)p Ff(\))390
-4076 y Fr(Add)f(the)h(con)m(ten)m(ts)h(of)f Fj(\014lename)k
+4107 y Fr(Add)f(the)h(con)m(ten)m(ts)h(of)f Fj(\014lename)k
 Fr(to)d(the)f(history)f(list,)i(a)f(line)g(at)g(a)g(time.)41
 b(If)29 b Fj(\014lename)35 b Fr(is)30 b Fq(NULL)p Fr(,)390
-4186 y(then)g(read)g(from)g Fq(~/.history)p Fr(.)38 b(Returns)30
+4216 y(then)g(read)g(from)g Fq(~/.history)p Fr(.)38 b(Returns)30
 b(0)g(if)h(successful,)f(or)g Fq(errno)f Fr(if)i(not.)3350
-4379 y([F)-8 b(unction])-3599 b Fg(int)53 b(read_history_range)e
+4395 y([F)-8 b(unction])-3599 b Fg(int)53 b(read_history_range)e
 Ff(\()p Fj(const)31 b(c)m(har)g(*\014lename,)g(in)m(t)g(from,)f(in)m(t)
-h(to)p Ff(\))390 4489 y Fr(Read)d(a)g(range)h(of)f(lines)g(from)f
+h(to)p Ff(\))390 4504 y Fr(Read)d(a)g(range)h(of)f(lines)g(from)f
 Fj(\014lename)p Fr(,)i(adding)e(them)h(to)h(the)f(history)g(list.)40
-b(Start)28 b(reading)g(at)390 4598 y(line)f Fj(from)e
+b(Start)28 b(reading)g(at)390 4614 y(line)f Fj(from)e
 Fr(and)h(end)f(at)i Fj(to)p Fr(.)41 b(If)25 b Fj(from)h
 Fr(is)g(zero,)i(start)f(at)g(the)f(b)s(eginning.)39 b(If)26
 b Fj(to)31 b Fr(is)c(less)f(than)g Fj(from)p Fr(,)390
-4708 y(then)33 b(read)g(un)m(til)g(the)g(end)g(of)g(the)g(\014le.)49
+4723 y(then)33 b(read)g(un)m(til)g(the)g(end)g(of)g(the)g(\014le.)49
 b(If)33 b Fj(\014lename)38 b Fr(is)33 b Fq(NULL)p Fr(,)g(then)g(read)g
-(from)f Fq(~/.history)p Fr(.)390 4818 y(Returns)d(0)i(if)g(successful,)
+(from)f Fq(~/.history)p Fr(.)390 4833 y(Returns)d(0)i(if)g(successful,)
 f(or)g Fq(errno)f Fr(if)i(not.)3350 5011 y([F)-8 b(unction])-3599
 b Fg(int)53 b(write_history)d Ff(\()p Fj(const)31 b(c)m(har)g
 (*\014lename)p Ff(\))390 5121 y Fr(W)-8 b(rite)36 b(the)e(curren)m(t)h
@@ -6388,13 +6383,14 @@ b(The)30 b(default)h(is)f(empt)m(y)-8 b(.)3371 3887 y([V)g(ariable])
 4106 V 40 w(c)m(har)p Fr(.)41 b(The)30 b(default)g(is)h(space,)g(tab,)g
 (newline,)f(carriage)i(return,)e(and)g(`)p Fq(=)p Fr('.)3371
 4331 y([V)-8 b(ariable])-3598 b Fg(int)53 b(history_quotes_inhibi)q
-(t_ex)q(pan)q(sio)q(n)390 4440 y Fr(If)29 b(non-zero,)h(single-quoted)g
-(w)m(ords)f(are)g(not)h(scanned)f(for)g(the)g(history)g(expansion)g(c)m
-(haracter.)390 4550 y(The)h(default)g(v)-5 b(alue)31
-b(is)g(0.)3371 4774 y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57
-b(*)c(history_inhibit_expans)q(ion)q(_fu)q(ncti)q(on)390
-4884 y Fr(This)32 b(should)h(b)s(e)f(set)i(to)g(the)g(address)e(of)i(a)
-f(function)g(that)h(tak)m(es)h(t)m(w)m(o)g(argumen)m(ts:)46
+(t_ex)q(pan)q(sio)q(n)390 4440 y Fr(If)27 b(non-zero,)i(double-quoted)f
+(w)m(ords)g(are)g(not)g(scanned)f(for)h(the)g(history)g(expansion)f(c)m
+(haracter)390 4550 y(or)j(the)h(history)f(commen)m(t)i(c)m(haracter.)42
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)g(0.)3371 4774
+y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57 b(*)c
+(history_inhibit_expans)q(ion)q(_fu)q(ncti)q(on)390 4884
+y Fr(This)32 b(should)h(b)s(e)f(set)i(to)g(the)g(address)e(of)i(a)f
+(function)g(that)h(tak)m(es)h(t)m(w)m(o)g(argumen)m(ts:)46
 b(a)34 b Fq(char)29 b(*)390 4994 y Fr(\()p Fj(string)8
 b Fr(\))27 b(and)f(an)g Fq(int)g Fr(index)g(in)m(to)i(that)f(string)f
 (\()p Fj(i)5 b Fr(\).)40 b(It)27 b(should)f(return)f(a)i(non-zero)g(v)
index d7ba1618f943c8465596c33af4d08a68d26b1622..5ee3f2335171457f282309aef49270d5f6752289 100644 (file)
@@ -1,10 +1,10 @@
 %!PS-Adobe-3.0
-%%Creator: groff version 1.19.2
-%%CreationDate: Tue Feb 11 16:57:26 2014
+%%Creator: groff version 1.22.3
+%%CreationDate: Wed Jul  1 10:32:47 2015
 %%DocumentNeededResources: font Times-Roman
 %%+ font Times-Bold
 %%+ font Times-Italic
-%%DocumentSuppliedResources: procset grops 1.19 2
+%%DocumentSuppliedResources: procset grops 1.22 3
 %%Pages: 7
 %%PageOrder: Ascend
 %%DocumentMedia: Default 612 792 0 () ()
@@ -14,7 +14,7 @@
 %%PageMedia: Default
 %%EndDefaults
 %%BeginProlog
-%%BeginResource: procset grops 1.19 2
+%%BeginResource: procset grops 1.22 3
 %!PS-Adobe-3.0 Resource-ProcSet
 /setpacking where{
 pop
@@ -72,6 +72,7 @@ exch pop add exch pop
 /level0 save def
 1 setlinecap
 1 setlinejoin
+DEFS/BPhook known{DEFS begin BPhook end}if
 72 RES div dup scale
 LS{
 90 rotate
@@ -137,7 +138,10 @@ pop
 findfont
 dup maxlength 1 index/FontName known not{1 add}if dict begin
 {
-1 index/FID ne{def}{pop pop}ifelse
+1 index/FID ne
+2 index/UniqueID ne
+and
+{def}{pop pop}ifelse
 }forall
 /Encoding exch def
 dup/FontName exch def
@@ -175,8 +179,10 @@ newpath
 userdict begin
 /showpage{}def
 /setpagedevice{}def
+mark
 }bind def
 /PEND{
+cleartomark
 countdictstack CNT sub{end}repeat
 level1 restore
 }bind def
@@ -229,146 +235,149 @@ def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E/F1 10.95/Times-Bold@0 SF -.219(NA)72 84 S(ME)
-.219 E F0(history \255 GNU History Library)108 96 Q F1(COPYRIGHT)72
-112.8 Q F0(The GNU History Library is Cop)108 124.8 Q
-(yright \251 1989-2011 by the Free Softw)-.1 E(are F)-.1 E
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E/F1
+10.95/Times-Bold@0 SF -.219(NA)72 84 S(ME).219 E F0
+(history \255 GNU History Library)108 96 Q F1(COPYRIGHT)72 112.8 Q F0
+(The GNU History Library is Cop)108 124.8 Q
+(yright \251 1989-2014 by the Free Softw)-.1 E(are F)-.1 E
 (oundation, Inc.)-.15 E F1(DESCRIPTION)72 141.6 Q F0(Man)108 153.6 Q
 2.81(yp)-.15 G .31(rograms read input from the user a line at a time.)
 -2.81 F .309(The GNU History library is able to k)5.309 F .309
 (eep track of)-.1 F .024(those lines, associate arbitrary data with eac\
 h line, and utilize information from pre)108 165.6 R .024
 (vious lines in composing)-.25 F(ne)108 177.6 Q 2.5(wo)-.25 G(nes.)-2.5
-E F1(HIST)72 199.2 Q(OR)-.197 E 2.738(YE)-.383 G(XP)-2.738 E(ANSION)-.81
-E F0 .823(The history library supports a history e)108 211.2 R .822
+E F1(HIST)72 194.4 Q(OR)-.197 E 2.738(YE)-.383 G(XP)-2.738 E(ANSION)-.81
+E F0 .823(The history library supports a history e)108 206.4 R .822
 (xpansion feature that is identical to the history e)-.15 F .822
 (xpansion in)-.15 F/F2 10/Times-Bold@0 SF(bash.)3.322 E F0
-(This section describes what syntax features are a)108 223.2 Q -.25(va)
--.2 G(ilable.).25 E 1.305(History e)108 240 R 1.305
+(This section describes what syntax features are a)108 218.4 Q -.25(va)
+-.2 G(ilable.).25 E 1.305(History e)108 235.2 R 1.305
 (xpansions introduce w)-.15 F 1.306(ords from the history list into the\
  input stream, making it easy to repeat)-.1 F .21
-(commands, insert the ar)108 252 R .21(guments to a pre)-.18 F .209
+(commands, insert the ar)108 247.2 R .21(guments to a pre)-.18 F .209
 (vious command into the current input line, or \214x errors in pre)-.25
-F(vious)-.25 E(commands quickly)108 264 Q(.)-.65 E 1.296(History e)108
-280.8 R 1.297(xpansion is usually performed immediately after a complet\
-e line is read.)-.15 F 1.297(It tak)6.297 F 1.297(es place in tw)-.1 F
-(o)-.1 E 2.855(parts. The)108 292.8 R .354(\214rst is to determine whic\
-h line from the history list to use during substitution.)2.855 F .354
+F(vious)-.25 E(commands quickly)108 259.2 Q(.)-.65 E 1.296(History e)108
+276 R 1.297(xpansion is usually performed immediately after a complete \
+line is read.)-.15 F 1.297(It tak)6.297 F 1.297(es place in tw)-.1 F(o)
+-.1 E 2.855(parts. The)108 288 R .354(\214rst is to determine which lin\
+e from the history list to use during substitution.)2.855 F .354
 (The second is to)5.354 F .116
 (select portions of that line for inclusion into the current one.)108
-304.8 R .117(The line selected from the history is the)5.116 F/F3 10
+300 R .117(The line selected from the history is the)5.116 F/F3 10
 /Times-Italic@0 SF -.15(ev)2.617 G(ent).15 E F0(,)A .846
-(and the portions of that line that are acted upon are)108 316.8 R F3
-(wor)3.346 E(ds)-.37 E F0 5.846(.V)C(arious)-6.956 E F3(modi\214er)3.346
-E(s)-.1 E F0 .846(are a)3.346 F -.25(va)-.2 G .845(ilable to manipulate)
-.25 F .304(the selected w)108 328.8 R 2.804(ords. The)-.1 F .304
-(line is brok)2.804 F .304(en into w)-.1 F .304(ords in the same f)-.1 F
-.304(ashion as)-.1 F F2(bash)2.804 E F0 .305
-(does when reading input, so)2.804 F .539(that se)108 340.8 R -.15(ve)
--.25 G .539(ral w).15 F .539(ords that w)-.1 F .539
+(and the portions of that line that are acted upon are)108 312 R F3(wor)
+3.346 E(ds)-.37 E F0 5.846(.V)C(arious)-6.956 E F3(modi\214er)3.346 E(s)
+-.1 E F0 .846(are a)3.346 F -.25(va)-.2 G .845(ilable to manipulate).25
+F .304(the selected w)108 324 R 2.804(ords. The)-.1 F .304(line is brok)
+2.804 F .304(en into w)-.1 F .304(ords in the same f)-.1 F .304
+(ashion as)-.1 F F2(bash)2.804 E F0 .305(does when reading input, so)
+2.804 F .539(that se)108 336 R -.15(ve)-.25 G .539(ral w).15 F .539
+(ords that w)-.1 F .539
 (ould otherwise be separated are considered one w)-.1 F .538
 (ord when surrounded by quotes)-.1 F .307(\(see the description of)108
-352.8 R F2(history_tok)2.807 E(enize\(\))-.1 E F0(belo)2.807 E 2.807
+348 R F2(history_tok)2.807 E(enize\(\))-.1 E F0(belo)2.807 E 2.807
 (w\). History)-.25 F -.15(ex)2.807 G .307
 (pansions are introduced by the appearance of).15 F .52(the history e)
-108 364.8 R .52(xpansion character)-.15 F 3.02(,w)-.4 G .52(hich is)
--3.02 F F2(!)3.853 E F0 .52(by def)3.853 F 3.02(ault. Only)-.1 F .52
+108 360 R .52(xpansion character)-.15 F 3.02(,w)-.4 G .52(hich is)-3.02
+F F2(!)3.853 E F0 .52(by def)3.853 F 3.02(ault. Only)-.1 F .52
 (backslash \()3.02 F F2(\\).833 E F0 3.02(\)a).833 G .52
-(nd single quotes can quote the)-3.02 F(history e)108 376.8 Q
-(xpansion character)-.15 E(.)-.55 E F2(Ev)87 393.6 Q(ent Designators)-.1
-E F0 .204(An e)108 405.6 R -.15(ve)-.25 G .204(nt designator is a refer\
+(nd single quotes can quote the)-3.02 F(history e)108 372 Q
+(xpansion character)-.15 E(.)-.55 E F2(Ev)87 388.8 Q(ent Designators)-.1
+E F0 .204(An e)108 400.8 R -.15(ve)-.25 G .204(nt designator is a refer\
 ence to a command line entry in the history list.).15 F .205
-(Unless the reference is abso-)5.204 F(lute, e)108 417.6 Q -.15(ve)-.25
+(Unless the reference is abso-)5.204 F(lute, e)108 412.8 Q -.15(ve)-.25
 G(nts are relati).15 E .3 -.15(ve t)-.25 H 2.5(ot).15 G
-(he current position in the history list.)-2.5 E F2(!)108 434.4 Q F0
-(Start a history substitution, e)32.67 E(xcept when follo)-.15 E
+(he current position in the history list.)-2.5 E F2(!)108 429.6 Q F0
+(Start a history substitution, e)144 429.6 Q(xcept when follo)-.15 E
 (wed by a)-.25 E F2(blank)2.5 E F0 2.5(,n)C -.25(ew)-2.5 G
-(line, = or \(.).25 E F2(!)108 446.4 Q F3(n)A F0(Refer to command line)
-27.67 E F3(n)2.5 E F0(.).24 E F2<21ad>108 458.4 Q F3(n)A F0
-(Refer to the current command minus)21.97 E F3(n)2.5 E F0(.).24 E F2(!!)
-108 470.4 Q F0(Refer to the pre)29.34 E(vious command.)-.25 E
-(This is a synon)5 E(ym for `!\2551'.)-.15 E F2(!)108 482.4 Q F3(string)
+(line, = or \(.).25 E F2(!)108 441.6 Q F3(n)A F0(Refer to command line)
+144 441.6 Q F3(n)2.5 E F0(.).24 E F2<21ad>108 453.6 Q F3(n)A F0
+(Refer to the current command minus)144 453.6 Q F3(n)2.5 E F0(.).24 E F2
+(!!)108 465.6 Q F0(Refer to the pre)144 465.6 Q(vious command.)-.25 E
+(This is a synon)5 E(ym for `!\2551'.)-.15 E F2(!)108 477.6 Q F3(string)
 A F0 .865(Refer to the most recent command preceding the current positi\
-on in the history list starting with)9.33 F F3(string)144 494.4 Q F0(.)
-.22 E F2(!?)108 506.4 Q F3(string)A F2([?])A F0 1.503(Refer to the most\
recent command preceding the current position in the history list cont\
-aining)144 518.4 R F3(string)144 530.4 Q F0 5(.T).22 G(he trailing)-5 E
-F2(?)2.5 E F0(may be omitted if)2.5 E F3(string)2.84 E F0(is follo)2.72
-E(wed immediately by a ne)-.25 E(wline.)-.25 E/F4 12/Times-Bold@0 SF(^)
-108 547.4 Q F3(string1)-5 I F4(^)5 I F3(string2)-5 I F4(^)5 I F0 2.63
-(Quick substitution.)144 554.4 R 2.629
+on in the history list starting with)144 477.6 R F3(string)144 489.6 Q
+F0(.).22 E F2(!?)108 501.6 Q F3(string)A F2([?])A F0 1.503(Refer to the\
most recent command preceding the current position in the history list\
+ containing)144 513.6 R F3(string)144 525.6 Q F0 5(.T).22 G(he trailing)
+-5 E F2(?)2.5 E F0(may be omitted if)2.5 E F3(string)2.84 E F0(is follo)
+2.72 E(wed immediately by a ne)-.25 E(wline.)-.25 E/F4 12/Times-Bold@0
+SF(^)108 542.6 Q F3(string1)-5 I F4(^)5 I F3(string2)-5 I F4(^)5 I F0
+2.63(Quick substitution.)144 549.6 R 2.629
 (Repeat the last command, replacing)7.629 F F3(string1)5.469 E F0(with)
 5.129 E F3(string2)5.129 E F0 7.629(.E).02 G(qui)-7.629 E -.25(va)-.25 G
-2.629(lent to).25 F -.74(``)144 566.4 S(!!:s/).74 E F3(string1)A F0(/)A
+2.629(lent to).25 F -.74(``)144 561.6 S(!!:s/).74 E F3(string1)A F0(/)A
 F3(string2)A F0(/')A 2.5('\()-.74 G(see)-2.5 E F2(Modi\214ers)2.5 E F0
-(belo)2.5 E(w\).)-.25 E F2(!#)108 578.4 Q F0
-(The entire command line typed so f)27.67 E(ar)-.1 E(.)-.55 E F2 -.75
-(Wo)87 595.2 S(rd Designators).75 E F0 -.8(Wo)108 607.2 S 1.313
+(belo)2.5 E(w\).)-.25 E F2(!#)108 573.6 Q F0
+(The entire command line typed so f)144 573.6 Q(ar)-.1 E(.)-.55 E F2
+-.75(Wo)87 590.4 S(rd Designators).75 E F0 -.8(Wo)108 602.4 S 1.313
 (rd designators are used to select desired w).8 F 1.314(ords from the e)
 -.1 F -.15(ve)-.25 G 3.814(nt. A).15 F F2(:)3.814 E F0 1.314
 (separates the e)3.814 F -.15(ve)-.25 G 1.314(nt speci\214cation).15 F
-.53(from the w)108 619.2 R .529(ord designator)-.1 F 5.529(.I)-.55 G
+.53(from the w)108 614.4 R .529(ord designator)-.1 F 5.529(.I)-.55 G
 3.029(tm)-5.529 G .529(ay be omitted if the w)-3.029 F .529
 (ord designator be)-.1 F .529(gins with a)-.15 F F2(^)3.029 E F0(,)A F2
 ($)3.029 E F0(,)A F2(*)3.029 E F0(,)A F2<ad>3.029 E F0 3.029(,o)C(r)
 -3.029 E F2(%)3.029 E F0 5.529(.W)C(ords)-6.329 E 1.3
-(are numbered from the be)108 631.2 R 1.3
+(are numbered from the be)108 626.4 R 1.3
 (ginning of the line, with the \214rst w)-.15 F 1.301
 (ord being denoted by 0 \(zero\).)-.1 F -.8(Wo)6.301 G 1.301(rds are).8
-F(inserted into the current line separated by single spaces.)108 643.2 Q
-F2 2.5(0\()108 660 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 672 Q 2.5
-(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E F3
-(n)108.36 684 Q F0(The)30.64 E F3(n)2.5 E F0(th w)A(ord.)-.1 E F2(^)108
-696 Q F0(The \214rst ar)32.67 E 2.5(gument. That)-.18 F(is, w)2.5 E
-(ord 1.)-.1 E F2($)108 708 Q F0 .064(The last w)31 F 2.564(ord. This)-.1
-F .064(is usually the last ar)2.564 F .064(gument, b)-.18 F .064
-(ut will e)-.2 F .064(xpand to the zeroth w)-.15 F .063
-(ord if there is only)-.1 F(one w)144 720 Q(ord in the line.)-.1 E
-(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(1)202.335 E 0 Cg EP
+F(inserted into the current line separated by single spaces.)108 638.4 Q
+F2 2.5(0\()108 655.2 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 667.2 Q
+2.5(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E
+F3(n)108.36 679.2 Q F0(The)144 679.2 Q F3(n)2.5 E F0(th w)A(ord.)-.1 E
+F2(^)108 691.2 Q F0(The \214rst ar)144 691.2 Q 2.5(gument. That)-.18 F
+(is, w)2.5 E(ord 1.)-.1 E F2($)108 703.2 Q F0 .064(The last w)144 703.2
+R 2.564(ord. This)-.1 F .064(is usually the last ar)2.564 F .064
+(gument, b)-.18 F .064(ut will e)-.2 F .064(xpand to the zeroth w)-.15 F
+.063(ord if there is only)-.1 F(one w)144 715.2 Q(ord in the line.)-.1 E
+(GNU History 6.3)72 768 Q(2015 May 24)138.175 E(1)202.335 E 0 Cg EP
 %%Page: 2 2
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E/F1 10/Times-Bold@0 SF(%)108 84 Q F0(The w)26 E
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E/F1
+10/Times-Bold@0 SF(%)108 84 Q F0(The w)144 84 Q
 (ord matched by the most recent `?)-.1 E/F2 10/Times-Italic@0 SF(string)
-A F0(?' search.)A F2(x)108.77 96 Q F1<ad>A F2(y)A F0 2.5(Ar)20.65 G
+A F0(?' search.)A F2(x)108.77 96 Q F1<ad>A F2(y)A F0 2.5(Ar)144 96 S
 (ange of w)-2.5 E(ords; `\255)-.1 E F2(y)A F0 2.5('a)C(bbre)-2.5 E
 (viates `0\255)-.25 E F2(y)A F0('.)A F1(*)108 108 Q F0 .315
-(All of the w)31 F .315(ords b)-.1 F .315(ut the zeroth.)-.2 F .315
+(All of the w)144 108 R .315(ords b)-.1 F .315(ut the zeroth.)-.2 F .315
 (This is a synon)5.315 F .315(ym for `)-.15 F F2(1\255$)A F0 2.815
 ('. It)B .315(is not an error to use)2.815 F F1(*)2.816 E F0 .316
 (if there is)2.816 F(just one w)144 120 Q(ord in the e)-.1 E -.15(ve)
 -.25 G(nt; the empty string is returned in that case.).15 E F1(x*)108
-132 Q F0(Abbre)26 E(viates)-.25 E F2(x\255$)2.5 E F0(.)A F1<78ad>108 144
-Q F0(Abbre)25.3 E(viates)-.25 E F2(x\255$)2.5 E F0(lik)2.5 E(e)-.1 E F1
-(x*)2.5 E F0 2.5(,b)C(ut omits the last w)-2.7 E(ord.)-.1 E(If a w)108
-160.8 Q(ord designator is supplied without an e)-.1 E -.15(ve)-.25 G
-(nt speci\214cation, the pre).15 E(vious command is used as the e)-.25 E
--.15(ve)-.25 G(nt.).15 E F1(Modi\214ers)87 177.6 Q F0 .184
-(After the optional w)108 189.6 R .184(ord designator)-.1 F 2.684(,t)-.4
-G .183(here may appear a sequence of one or more of the follo)-2.684 F
-.183(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 201.6 Q F1(h)
-108 218.4 Q F0(Remo)30.44 E .3 -.15(ve a t)-.15 H
+132 Q F0(Abbre)144 132 Q(viates)-.25 E F2(x\255$)2.5 E F0(.)A F1<78ad>
+108 144 Q F0(Abbre)144 144 Q(viates)-.25 E F2(x\255$)2.5 E F0(lik)2.5 E
+(e)-.1 E F1(x*)2.5 E F0 2.5(,b)C(ut omits the last w)-2.7 E(ord.)-.1 E
+(If a w)108 160.8 Q(ord designator is supplied without an e)-.1 E -.15
+(ve)-.25 G(nt speci\214cation, the pre).15 E
+(vious command is used as the e)-.25 E -.15(ve)-.25 G(nt.).15 E F1
+(Modi\214ers)87 177.6 Q F0 .184(After the optional w)108 189.6 R .184
+(ord designator)-.1 F 2.684(,t)-.4 G .183
+(here may appear a sequence of one or more of the follo)-2.684 F .183
+(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 201.6 Q F1(h)108
+218.4 Q F0(Remo)144 218.4 Q .3 -.15(ve a t)-.15 H
 (railing \214le name component, lea).15 E(ving only the head.)-.2 E F1
-(t)108 230.4 Q F0(Remo)32.67 E .3 -.15(ve a)-.15 H
+(t)108 230.4 Q F0(Remo)144 230.4 Q .3 -.15(ve a)-.15 H
 (ll leading \214le name components, lea).15 E(ving the tail.)-.2 E F1(r)
-108 242.4 Q F0(Remo)31.56 E .3 -.15(ve a t)-.15 H(railing suf).15 E
+108 242.4 Q F0(Remo)144 242.4 Q .3 -.15(ve a t)-.15 H(railing suf).15 E
 (\214x of the form)-.25 E F2(.xxx)2.5 E F0 2.5(,l)C(ea)-2.5 E
-(ving the basename.)-.2 E F1(e)108 254.4 Q F0(Remo)31.56 E .3 -.15(ve a)
--.15 H(ll b).15 E(ut the trailing suf)-.2 E(\214x.)-.25 E F1(p)108 266.4
-Q F0(Print the ne)30.44 E 2.5(wc)-.25 G(ommand b)-2.5 E(ut do not e)-.2
-E -.15(xe)-.15 G(cute it.).15 E F1(q)108 278.4 Q F0
-(Quote the substituted w)30.44 E(ords, escaping further substitutions.)
--.1 E F1(x)108 290.4 Q F0(Quote the substituted w)31 E(ords as with)-.1
-E F1(q)2.5 E F0 2.5(,b)C(ut break into w)-2.7 E(ords at)-.1 E F1(blanks)
-2.5 E F0(and ne)2.5 E(wlines.)-.25 E F1(s/)108 302.4 Q F2(old)A F1(/)A
-F2(ne)A(w)-.15 E F1(/)A F0(Substitute)144 314.4 Q F2(ne)3.081 E(w)-.15 E
-F0 .221(for the \214rst occurrence of)3.031 F F2(old)2.951 E F0 .221
-(in the e)3.491 F -.15(ve)-.25 G .221(nt line.).15 F(An)5.221 E 2.721
-(yd)-.15 G .221(elimiter can be used in place)-2.721 F .617(of /.)144
-326.4 R .617
+(ving the basename.)-.2 E F1(e)108 254.4 Q F0(Remo)144 254.4 Q .3 -.15
+(ve a)-.15 H(ll b).15 E(ut the trailing suf)-.2 E(\214x.)-.25 E F1(p)108
+266.4 Q F0(Print the ne)144 266.4 Q 2.5(wc)-.25 G(ommand b)-2.5 E
+(ut do not e)-.2 E -.15(xe)-.15 G(cute it.).15 E F1(q)108 278.4 Q F0
+(Quote the substituted w)144 278.4 Q
+(ords, escaping further substitutions.)-.1 E F1(x)108 290.4 Q F0
+(Quote the substituted w)144 290.4 Q(ords as with)-.1 E F1(q)2.5 E F0
+2.5(,b)C(ut break into w)-2.7 E(ords at)-.1 E F1(blanks)2.5 E F0(and ne)
+2.5 E(wlines.)-.25 E F1(s/)108 302.4 Q F2(old)A F1(/)A F2(ne)A(w)-.15 E
+F1(/)A F0(Substitute)144 314.4 Q F2(ne)3.081 E(w)-.15 E F0 .221
+(for the \214rst occurrence of)3.031 F F2(old)2.951 E F0 .221(in the e)
+3.491 F -.15(ve)-.25 G .221(nt line.).15 F(An)5.221 E 2.721(yd)-.15 G
+.221(elimiter can be used in place)-2.721 F .617(of /.)144 326.4 R .617
 (The \214nal delimiter is optional if it is the last character of the e)
 5.617 F -.15(ve)-.25 G .617(nt line.).15 F .616(The delimiter may)5.616
 F .666(be quoted in)144 338.4 R F2(old)3.396 E F0(and)3.936 E F2(ne)
@@ -381,20 +390,20 @@ F F2(old)3.004 E F0 .274(substituted, or)3.544 F 2.774(,i)-.4 G 2.774
 (fn)-2.774 G 2.774(op)-2.774 G(re)-2.774 E(vi-)-.25 E
 (ous history substitutions took place, the last)144 362.4 Q F2(string)
 2.84 E F0(in a)2.72 E F1(!?)2.5 E F2(string)A F1([?])A F0(search.)5 E F1
-(&)108 374.4 Q F0(Repeat the pre)27.67 E(vious substitution.)-.25 E F1
-(g)108 386.4 Q F0 .397(Cause changes to be applied o)31 F -.15(ve)-.15 G
-2.897(rt).15 G .398(he entire e)-2.897 F -.15(ve)-.25 G .398(nt line.)
-.15 F .398(This is used in conjunction with `)5.398 F F1(:s)A F0 2.898
-('\()C(e.g.,)-2.898 E(`)144 398.4 Q F1(:gs/)A F2(old)A F1(/)A F2(ne)A(w)
--.15 E F1(/)A F0 1.219('\) or `)B F1(:&)A F0 3.719('. If)B 1.219
+(&)108 374.4 Q F0(Repeat the pre)144 374.4 Q(vious substitution.)-.25 E
+F1(g)108 386.4 Q F0 .397(Cause changes to be applied o)144 386.4 R -.15
+(ve)-.15 G 2.897(rt).15 G .398(he entire e)-2.897 F -.15(ve)-.25 G .398
+(nt line.).15 F .398(This is used in conjunction with `)5.398 F F1(:s)A
+F0 2.898('\()C(e.g.,)-2.898 E(`)144 398.4 Q F1(:gs/)A F2(old)A F1(/)A F2
+(ne)A(w)-.15 E F1(/)A F0 1.219('\) or `)B F1(:&)A F0 3.719('. If)B 1.219
 (used with `)3.719 F F1(:s)A F0 1.218(', an)B 3.718(yd)-.15 G 1.218
 (elimiter can be used in place of /, and the \214nal)-3.718 F .089
 (delimiter is optional if it is the last character of the e)144 410.4 R
 -.15(ve)-.25 G .09(nt line.).15 F(An)5.09 E F1(a)2.59 E F0 .09
 (may be used as a synon)2.59 F .09(ym for)-.15 F F1(g)144 422.4 Q F0(.)A
-F1(G)108 434.4 Q F0(Apply the follo)28.22 E(wing `)-.25 E F1(s)A F0 2.5
-('m)C(odi\214er once to each w)-2.5 E(ord in the e)-.1 E -.15(ve)-.25 G
-(nt line.).15 E/F3 10.95/Times-Bold@0 SF(PR)72 451.2 Q
+F1(G)108 434.4 Q F0(Apply the follo)144 434.4 Q(wing `)-.25 E F1(s)A F0
+2.5('m)C(odi\214er once to each w)-2.5 E(ord in the e)-.1 E -.15(ve)-.25
+G(nt line.).15 E/F3 10.95/Times-Bold@0 SF(PR)72 451.2 Q
 (OGRAMMING WITH HIST)-.329 E(OR)-.197 E 2.738(YF)-.383 G(UNCTIONS)-2.738
 E F0(This section describes ho)108 463.2 Q 2.5(wt)-.25 G 2.5(ou)-2.5 G
 (se the History library in other programs.)-2.5 E F1(Intr)87 480 Q
@@ -433,16 +442,17 @@ G .066(le that uses the History library')-2.566 F 2.566(sf)-.55 G
 -.25 F(public data structures.)108 662.4 Q F1(History Storage)87 691.2 Q
 F0(The history list is an array of history entries.)108 703.2 Q 2.5(Ah)5
 G(istory entry is declared as follo)-2.5 E(ws:)-.25 E F2(typedef void *)
-108 720 Q F1(histdata_t;)2.5 E F0(GNU History 6.3)72 768 Q(2013 June 27)
+108 720 Q F1(histdata_t;)2.5 E F0(GNU History 6.3)72 768 Q(2015 May 24)
 138.175 E(2)202.335 E 0 Cg EP
 %%Page: 3 3
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E(typedef struct _hist_entry {)108 84 Q
-(char *line;)113 96 Q(char *timestamp;)113 108 Q(histdata_t data;)113
-120 Q 2.5(}H)108 132 S(IST_ENTR)-2.5 E -.92(Y;)-.65 G
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E
+(typedef struct _hist_entry {)108 84 Q(char *line;)113 96 Q
+(char *timestamp;)113 108 Q(histdata_t data;)113 120 Q 2.5(}H)108 132 S
+(IST_ENTR)-2.5 E -.92(Y;)-.65 G
 (The history list itself might therefore be declared as)108 148.8 Q/F1
 10/Times-Italic@0 SF(HIST_ENTR)108 165.6 Q 2.5(Y*)-.18 G(*)-2.5 E/F2 10
 /Times-Bold@0 SF(the_history_list;)2.5 E F0(The state of the History li\
@@ -500,24 +510,24 @@ E F1(HIST_ENTR)A 2.5(Y*)-.18 G(histent)-2.5 E F0(\))1.666 E .934
 3.433 F 3.433(yh)-.15 G .933(istory library pri)-3.433 F -.25(va)-.25 G
 .933(te data associated with it.).25 F .933(Returns the applica-)5.933 F
 (tion-speci\214c data so the caller can dispose of it.)108 710.4 Q
-(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(3)202.335 E 0 Cg EP
+(GNU History 6.3)72 768 Q(2015 May 24)138.175 E(3)202.335 E 0 Cg EP
 %%Page: 4 4
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E/F1 10/Times-Italic@0 SF(HIST_ENTR)108 84 Q 2.5
-(Y*)-.18 G/F2 10/Times-Bold@0 SF -.18(re)C(place_history_entry).18 E F0
-(\()4.166 E F1(int whic)A -.834(h, const)-.15 F -.15(ch)2.5 G(ar *line)
-.15 E 1.666(,h)-.1 G(istdata_t data)-1.666 E F0(\))3.332 E(Mak)108 96 Q
-3.062(et)-.1 G .562(he history entry at of)-3.062 F(fset)-.25 E F1(whic)
-3.062 E(h)-.15 E F0(ha)3.062 E -.15(ve)-.2 G F1(line)3.212 E F0(and)
-3.062 E F1(data)3.062 E F0 5.563(.T)C .563
-(his returns the old entry so the caller can dis-)-5.563 F(pose of an)
-108 108 Q 2.5(ya)-.15 G(pplication-speci\214c data.)-2.5 E
-(In the case of an in)5 E -.25(va)-.4 G(lid).25 E F1(whic)2.5 E(h)-.15 E
-F0 2.5(,a)C F2(NULL)A F0(pointer is returned.)2.5 E F1(void)108 132 Q F2
-(clear_history)2.5 E F0(\()4.166 E F1(void)A F0(\))1.666 E
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E/F1
+10/Times-Italic@0 SF(HIST_ENTR)108 84 Q 2.5(Y*)-.18 G/F2 10/Times-Bold@0
+SF -.18(re)C(place_history_entry).18 E F0(\()4.166 E F1(int whic)A -.834
+(h, const)-.15 F -.15(ch)2.5 G(ar *line).15 E 1.666(,h)-.1 G
+(istdata_t data)-1.666 E F0(\))3.332 E(Mak)108 96 Q 3.062(et)-.1 G .562
+(he history entry at of)-3.062 F(fset)-.25 E F1(whic)3.062 E(h)-.15 E F0
+(ha)3.062 E -.15(ve)-.2 G F1(line)3.212 E F0(and)3.062 E F1(data)3.062 E
+F0 5.563(.T)C .563(his returns the old entry so the caller can dis-)
+-5.563 F(pose of an)108 108 Q 2.5(ya)-.15 G(pplication-speci\214c data.)
+-2.5 E(In the case of an in)5 E -.25(va)-.4 G(lid).25 E F1(whic)2.5 E(h)
+-.15 E F0 2.5(,a)C F2(NULL)A F0(pointer is returned.)2.5 E F1(void)108
+132 Q F2(clear_history)2.5 E F0(\()4.166 E F1(void)A F0(\))1.666 E
 (Clear the history list by deleting all the entries.)108 144 Q F1(void)
 108 168 Q F2(sti\215e_history)2.5 E F0(\()4.166 E F1(int max)A F0(\))
 1.666 E(Sti\215e the history list, remembering only the last)108 180 Q
@@ -582,167 +592,170 @@ F F1(pos)3.29 E F0 .79(is less)3.29 F
 -5.207 G .207(here is)-2.707 F(no pre)108 705.6 Q(vious entry)-.25 E 2.5
 (,r)-.65 G(eturn a)-2.5 E F2(NULL)2.5 E F0(pointer)2.5 E(.)-.55 E F1
 (HIST_ENTR)108 729.6 Q 2.5(Y*)-.18 G F2(next_history)A F0(\()4.166 E F1
-(void)A F0(\))1.666 E(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(4)
+(void)A F0(\))1.666 E(GNU History 6.3)72 768 Q(2015 May 24)138.175 E(4)
 202.335 E 0 Cg EP
 %%Page: 5 5
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E(Mo)108 84 Q 1.046 -.15(ve t)-.15 H .746
-(he current history of).15 F .746(fset forw)-.25 F .746(ard to the ne)
--.1 F .746(xt history entry)-.15 F 3.246(,a)-.65 G .747
-(nd return the a pointer to that entry)-3.246 F 5.747(.I)-.65 G(f)-5.747
-E(there is no ne)108 96 Q(xt entry)-.15 E 2.5(,r)-.65 G(eturn a)-2.5 E
-/F1 10/Times-Bold@0 SF(NULL)2.5 E F0(pointer)2.5 E(.)-.55 E F1(Sear)87
-124.8 Q(ching the History List)-.18 E F0 .006(These functions allo)108
-136.8 R 2.506(ws)-.25 G .006(earching of the history list for entries c\
-ontaining a speci\214c string.)-2.506 F .005(Searching may be)5.005 F
-1.451(performed both forw)108 148.8 R 1.451(ard and backw)-.1 F 1.451
-(ard from the current history position.)-.1 F 1.452(The search may be)
-6.452 F/F2 10/Times-Italic@0 SF(anc)3.952 E(hor)-.15 E(ed)-.37 E F0(,)A
-(meaning that the string must match at the be)108 160.8 Q
-(ginning of the history entry)-.15 E(.)-.65 E F2(int)108 184.8 Q F1
-(history_sear)2.5 E(ch)-.18 E F0(\()4.166 E F2(const c)A(har *string)
--.15 E 1.666(,i)-.1 G(nt dir)-1.666 E(ection)-.37 E F0(\))1.666 E .156
-(Search the history for)108 196.8 R F2(string)2.656 E F0 2.656(,s)C .156
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E
+.332(If the current history of)108 84 R .333(fset refers to a v)-.25 F
+.333(alid history entry)-.25 F 2.833(,i)-.65 G .333
+(ncrement the current history of)-2.833 F 2.833(fset. If)-.25 F .333
+(the possi-)2.833 F .202(bly-incremented history of)108 96 R .202
+(fset refers to a v)-.25 F .202(alid history entry)-.25 F 2.702(,r)-.65
+G .202(eturn a pointer to that entry; otherwise, return)-2.702 F(a)108
+108 Q/F1 10/Times-Bold@0 SF(NULL)2.5 E F0(pointer)2.5 E(.)-.55 E F1
+(Sear)87 136.8 Q(ching the History List)-.18 E F0 .005
+(These functions allo)108 148.8 R 2.505(ws)-.25 G .006(earching of the \
+history list for entries containing a speci\214c string.)-2.505 F .006
+(Searching may be)5.006 F 1.452(performed both forw)108 160.8 R 1.452
+(ard and backw)-.1 F 1.451(ard from the current history position.)-.1 F
+1.451(The search may be)6.451 F/F2 10/Times-Italic@0 SF(anc)3.951 E(hor)
+-.15 E(ed)-.37 E F0(,)A(meaning that the string must match at the be)108
+172.8 Q(ginning of the history entry)-.15 E(.)-.65 E F2(int)108 196.8 Q
+F1(history_sear)2.5 E(ch)-.18 E F0(\()4.166 E F2(const c)A(har *string)
+-.15 E 1.666(,i)-.1 G(nt dir)-1.666 E(ection)-.37 E F0(\))1.666 E .155
+(Search the history for)108 208.8 R F2(string)2.655 E F0 2.656(,s)C .156
 (tarting at the current history of)-2.656 F 2.656(fset. If)-.25 F F2
-(dir)2.656 E(ection)-.37 E F0 .155(is less than 0, then the search)2.656
-F .801(is through pre)108 208.8 R .801
+(dir)2.656 E(ection)-.37 E F0 .156(is less than 0, then the search)2.656
+F .802(is through pre)108 220.8 R .802
 (vious entries, otherwise through subsequent entries.)-.25 F(If)5.801 E
-F2(string)3.301 E F0 .802(is found, then the current his-)3.301 F .065
-(tory inde)108 220.8 R 2.565(xi)-.15 G 2.564(ss)-2.565 G .064
+F2(string)3.301 E F0 .801(is found, then the current his-)3.301 F .064
+(tory inde)108 232.8 R 2.564(xi)-.15 G 2.564(ss)-2.564 G .064
 (et to that history entry)-2.564 F 2.564(,a)-.65 G .064(nd the v)-2.564
 F .064(alue returned is the of)-.25 F .064
-(fset in the line of the entry where)-.25 F F2(string)2.564 E F0 -.1(wa)
-108 232.8 S 2.5(sf).1 G 2.5(ound. Otherwise,)-2.5 F
-(nothing is changed, and a -1 is returned.)2.5 E F2(int)108 256.8 Q F1
+(fset in the line of the entry where)-.25 F F2(string)2.565 E F0 -.1(wa)
+108 244.8 S 2.5(sf).1 G 2.5(ound. Otherwise,)-2.5 F
+(nothing is changed, and a -1 is returned.)2.5 E F2(int)108 268.8 Q F1
 (history_sear)2.5 E(ch_pr)-.18 E(e\214x)-.18 E F0(\()4.166 E F2(const c)
 A(har *string)-.15 E 1.666(,i)-.1 G(nt dir)-1.666 E(ection)-.37 E F0(\))
-1.666 E .683(Search the history for)108 268.8 R F2(string)3.183 E F0
+1.666 E .684(Search the history for)108 280.8 R F2(string)3.183 E F0
 3.183(,s)C .683(tarting at the current history of)-3.183 F 3.183
-(fset. The)-.25 F .683(search is anchored: matching lines)3.183 F 1.064
-(must be)108 280.8 R 1.064(gin with)-.15 F F2(string)3.564 E F0 6.064
-(.I)C(f)-6.064 E F2(dir)3.564 E(ection)-.37 E F0 1.063
-(is less than 0, then the search is through pre)3.564 F 1.063
-(vious entries, otherwise)-.25 F 1.114(through subsequent entries.)108
-292.8 R(If)6.114 E F2(string)3.614 E F0 1.114
-(is found, then the current history inde)3.614 F 3.615(xi)-.15 G 3.615
-(ss)-3.615 G 1.115(et to that entry)-3.615 F 3.615(,a)-.65 G 1.115
-(nd the)-3.615 F(return v)108 304.8 Q(alue is 0.)-.25 E
+(fset. The)-.25 F .683(search is anchored: matching lines)3.183 F 1.063
+(must be)108 292.8 R 1.063(gin with)-.15 F F2(string)3.563 E F0 6.063
+(.I)C(f)-6.063 E F2(dir)3.563 E(ection)-.37 E F0 1.064
+(is less than 0, then the search is through pre)3.563 F 1.064
+(vious entries, otherwise)-.25 F 1.115(through subsequent entries.)108
+304.8 R(If)6.115 E F2(string)3.615 E F0 1.115
+(is found, then the current history inde)3.615 F 3.614(xi)-.15 G 3.614
+(ss)-3.614 G 1.114(et to that entry)-3.614 F 3.614(,a)-.65 G 1.114
+(nd the)-3.614 F(return v)108 316.8 Q(alue is 0.)-.25 E
 (Otherwise, nothing is changed, and a -1 is returned.)5 E F2(int)108
-328.8 Q F1(history_sear)2.5 E(ch_pos)-.18 E F0(\()4.166 E F2(const c)A
+340.8 Q F1(history_sear)2.5 E(ch_pos)-.18 E F0(\()4.166 E F2(const c)A
 (har *string)-.15 E 1.666(,i)-.1 G(nt dir)-1.666 E -.834(ection, int)
--.37 F(pos)2.5 E F0(\))3.332 E .604(Search for)108 340.8 R F2(string)
-3.104 E F0 .604(in the history list, starting at)3.104 F F2(pos)3.104 E
+-.37 F(pos)2.5 E F0(\))3.332 E .603(Search for)108 352.8 R F2(string)
+3.103 E F0 .603(in the history list, starting at)3.103 F F2(pos)3.104 E
 F0 3.104(,a)C 3.104(na)-3.104 G .604(bsolute inde)-3.104 F 3.104(xi)-.15
-G .603(nto the list.)-3.104 F(If)5.603 E F2(dir)3.103 E(ection)-.37 E F0
-.603(is ne)3.103 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(,).15 E .608
-(the search proceeds backw)108 352.8 R .608(ard from)-.1 F F2(pos)3.108
+G .604(nto the list.)-3.104 F(If)5.604 E F2(dir)3.104 E(ection)-.37 E F0
+.604(is ne)3.104 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(,).15 E .608
+(the search proceeds backw)108 364.8 R .608(ard from)-.1 F F2(pos)3.108
 E F0 3.108(,o)C .608(therwise forw)-3.108 F 3.108(ard. Returns)-.1 F
 .608(the absolute inde)3.108 F 3.108(xo)-.15 G 3.108(ft)-3.108 G .608
-(he history ele-)-3.108 F(ment where)108 364.8 Q F2(string)2.5 E F0 -.1
+(he history ele-)-3.108 F(ment where)108 376.8 Q F2(string)2.5 E F0 -.1
 (wa)2.5 G 2.5(sf).1 G(ound, or -1 otherwise.)-2.5 E F1
-(Managing the History File)87 393.6 Q F0 .035(The History library can r\
-ead the history from and write it to a \214le.)108 405.6 R .035
+(Managing the History File)87 405.6 Q F0 .035(The History library can r\
+ead the history from and write it to a \214le.)108 417.6 R .036
 (This section documents the functions for)5.035 F
-(managing a history \214le.)108 417.6 Q F2(int)108 441.6 Q F1 -.18(re)
+(managing a history \214le.)108 429.6 Q F2(int)108 453.6 Q F1 -.18(re)
 2.5 G(ad_history).18 E F0(\()4.166 E F2(const c)A(har *\214lename)-.15 E
-F0(\))1.666 E .15(Add the contents of)108 453.6 R F2(\214lename)2.65 E
-F0 .15(to the history list, a line at a time.)2.65 F(If)5.151 E F2
-(\214lename)2.651 E F0(is)2.651 E F1(NULL)2.651 E F0 2.651(,t)C .151
-(hen read from)-2.651 F F2(~/.his-)2.651 E(tory)108 465.6 Q F0 5(.R)C
+F0(\))1.666 E .151(Add the contents of)108 465.6 R F2(\214lename)2.651 E
+F0 .151(to the history list, a line at a time.)2.651 F(If)5.15 E F2
+(\214lename)2.65 E F0(is)2.65 E F1(NULL)2.65 E F0 2.65(,t)C .15
+(hen read from)-2.65 F F2(~/.his-)2.65 E(tory)108 477.6 Q F0 5(.R)C
 (eturns 0 if successful, or)-5 E F1(err)2.5 E(no)-.15 E F0(if not.)2.5 E
-F2(int)108 489.6 Q F1 -.18(re)2.5 G(ad_history_range).18 E F0(\()4.166 E
+F2(int)108 501.6 Q F1 -.18(re)2.5 G(ad_history_range).18 E F0(\()4.166 E
 F2(const c)A(har *\214lename)-.15 E 1.666(,i)-.1 G(nt fr)-1.666 E -.834
-(om, int)-.45 F(to)2.5 E F0(\))3.332 E .053(Read a range of lines from)
-108 501.6 R F2(\214lename)2.553 E F0 2.553(,a)C .053
+(om, int)-.45 F(to)2.5 E F0(\))3.332 E .052(Read a range of lines from)
+108 513.6 R F2(\214lename)2.553 E F0 2.553(,a)C .053
 (dding them to the history list.)-2.553 F .053(Start reading at line)
-5.053 F F2(fr)2.553 E(om)-.45 E F0 .052(and end at)2.553 F F2(to)2.552 E
-F0(.)A(If)108 513.6 Q F2(fr)2.888 E(om)-.45 E F0 .388
-(is zero, start at the be)2.888 F 2.889(ginning. If)-.15 F F2(to)2.889 E
-F0 .389(is less than)2.889 F F2(fr)2.889 E(om)-.45 E F0 2.889(,t)C .389
-(hen read until the end of the \214le.)-2.889 F(If)5.389 E F2
-(\214lename)2.889 E F0(is)108 525.6 Q F1(NULL)2.5 E F0 2.5(,t)C
+5.053 F F2(fr)2.553 E(om)-.45 E F0 .053(and end at)2.553 F F2(to)2.553 E
+F0(.)A(If)108 525.6 Q F2(fr)2.889 E(om)-.45 E F0 .389
+(is zero, start at the be)2.889 F 2.889(ginning. If)-.15 F F2(to)2.889 E
+F0 .389(is less than)2.889 F F2(fr)2.889 E(om)-.45 E F0 2.889(,t)C .388
+(hen read until the end of the \214le.)-2.889 F(If)5.388 E F2
+(\214lename)2.888 E F0(is)108 537.6 Q F1(NULL)2.5 E F0 2.5(,t)C
 (hen read from)-2.5 E F2(~/.history)2.5 E F0 5(.R)C
 (eturns 0 if successful, or)-5 E F1(err)2.5 E(no)-.15 E F0(if not.)2.5 E
-F2(int)108 549.6 Q F1(write_history)2.5 E F0(\()4.166 E F2(const c)A
-(har *\214lename)-.15 E F0(\))1.666 E .962(Write the current history to)
-108 561.6 R F2(\214lename)3.462 E F0 3.461(,o)C -.15(ve)-3.611 G
+F2(int)108 561.6 Q F1(write_history)2.5 E F0(\()4.166 E F2(const c)A
+(har *\214lename)-.15 E F0(\))1.666 E .961(Write the current history to)
+108 573.6 R F2(\214lename)3.461 E F0 3.461(,o)C -.15(ve)-3.611 G
 (rwriting).15 E F2(\214lename)3.461 E F0 .961(if necessary)3.461 F 5.961
-(.I)-.65 G(f)-5.961 E F2(\214lename)3.461 E F0(is)3.461 E F1(NULL)3.461
-E F0 3.461(,t)C .961(hen write)-3.461 F(the history list to)108 573.6 Q
+(.I)-.65 G(f)-5.961 E F2(\214lename)3.462 E F0(is)3.462 E F1(NULL)3.462
+E F0 3.462(,t)C .962(hen write)-3.462 F(the history list to)108 585.6 Q
 F2(~/.history)2.5 E F0 5(.R)C(eturns 0 on success, or)-5 E F1(err)2.5 E
-(no)-.15 E F0(on a read or write error)2.5 E(.)-.55 E F2(int)108 609.6 Q
+(no)-.15 E F0(on a read or write error)2.5 E(.)-.55 E F2(int)108 621.6 Q
 F1(append_history)2.5 E F0(\()4.166 E F2(int nelements,)A(const c)1.666
-E(har *\214lename)-.15 E F0(\))1.666 E .838(Append the last)108 621.6 R
-F2(nelements)3.338 E F0 .839(of the history list to)3.339 F F2
+E(har *\214lename)-.15 E F0(\))1.666 E .839(Append the last)108 633.6 R
+F2(nelements)3.339 E F0 .839(of the history list to)3.339 F F2
 (\214lename)3.339 E F0 5.839(.I)C(f)-5.839 E F2(\214lename)3.339 E F0
-(is)3.339 E F1(NULL)3.339 E F0 3.339(,t)C .839(hen append to)-3.339 F F2
-(~/.history)3.339 E F0(.)A(Returns 0 on success, or)108 633.6 Q F1(err)
+(is)3.339 E F1(NULL)3.339 E F0 3.339(,t)C .838(hen append to)-3.339 F F2
+(~/.history)3.338 E F0(.)A(Returns 0 on success, or)108 645.6 Q F1(err)
 2.5 E(no)-.15 E F0(on a read or write error)2.5 E(.)-.55 E F2(int)108
-657.6 Q F1(history_truncate_\214le)2.5 E F0(\()4.166 E F2(const c)A
+669.6 Q F1(history_truncate_\214le)2.5 E F0(\()4.166 E F2(const c)A
 (har *\214lename)-.15 E 1.666(,i)-.1 G(nt nlines)-1.666 E F0(\))1.666 E
--.35(Tr)108 669.6 S .381(uncate the history \214le).35 F F2(\214lename)
-2.881 E F0 2.881(,l)C(ea)-2.881 E .381(ving only the last)-.2 F F2
-(nlines)2.881 E F0 2.88(lines. If)2.881 F F2(\214lename)2.88 E F0(is)
-2.88 E F1(NULL)2.88 E F0 2.88(,t)C(hen)-2.88 E F2(~/.history)2.88 E F0
-(is)2.88 E 2.5(truncated. Returns)108 681.6 R 2.5(0o)2.5 G 2.5(ns)-2.5 G
+-.35(Tr)108 681.6 S .38(uncate the history \214le).35 F F2(\214lename)
+2.88 E F0 2.88(,l)C(ea)-2.88 E .38(ving only the last)-.2 F F2(nlines)
+2.881 E F0 2.881(lines. If)2.881 F F2(\214lename)2.881 E F0(is)2.881 E
+F1(NULL)2.881 E F0 2.881(,t)C(hen)-2.881 E F2(~/.history)2.881 E F0(is)
+2.881 E 2.5(truncated. Returns)108 693.6 R 2.5(0o)2.5 G 2.5(ns)-2.5 G
 (uccess, or)-2.5 E F1(err)2.5 E(no)-.15 E F0(on f)2.5 E(ailure.)-.1 E
-(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(5)202.335 E 0 Cg EP
+(GNU History 6.3)72 768 Q(2015 May 24)138.175 E(5)202.335 E 0 Cg EP
 %%Page: 6 6
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E/F1 10/Times-Bold@0 SF(History Expansion)87 84 Q
-F0(These functions implement history e)108 96 Q(xpansion.)-.15 E/F2 10
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E/F1
+10/Times-Bold@0 SF(History Expansion)87 84 Q F0
+(These functions implement history e)108 96 Q(xpansion.)-.15 E/F2 10
 /Times-Italic@0 SF(int)108 120 Q F1(history_expand)2.5 E F0(\()4.166 E
 F2 -.15(ch)C(ar *string).15 E 1.666(,c)-.1 G(har **output)-1.816 E F0
 (\))1.666 E(Expand)108 132 Q F2(string)2.5 E F0 2.5(,p)C
 (lacing the result into)-2.5 E F2(output)2.5 E F0 2.5(,ap)C
-(ointer to a string.)-2.5 E(Returns:)5 E 31(0I)144 144 S 3.065(fn)-31 G
-3.065(oe)-3.065 G .565(xpansions took place \(or)-3.215 F 3.065(,i)-.4 G
-3.065(ft)-3.065 G .565(he only change in the te)-3.065 F .566(xt w)-.15
-F .566(as the remo)-.1 F -.25(va)-.15 G 3.066(lo).25 G 3.066(fe)-3.066 G
-(scape)-3.066 E(characters preceding the history e)180 156 Q
-(xpansion character\);)-.15 E 31(1i)144 168 S 2.5(fe)-31 G
-(xpansions did tak)-2.65 E 2.5(ep)-.1 G(lace;)-2.5 E 25.17(-1 if)144 180
-R(there w)2.5 E(as an error in e)-.1 E(xpansion;)-.15 E 31(2i)144 192 S
-2.5(ft)-31 G(he returned line should be displayed, b)-2.5 E(ut not e)-.2
-E -.15(xe)-.15 G(cuted, as with the).15 E F1(:p)2.5 E F0(modi\214er)2.5
-E(.)-.55 E(If an error ocurred in e)108 204 Q(xpansion, then)-.15 E F2
+(ointer to a string.)-2.5 E(Returns:)5 E(0)144 144 Q .566(If no e)180
+144 R .566(xpansions took place \(or)-.15 F 3.065(,i)-.4 G 3.065(ft)
+-3.065 G .565(he only change in the te)-3.065 F .565(xt w)-.15 F .565
+(as the remo)-.1 F -.25(va)-.15 G 3.065(lo).25 G 3.065(fe)-3.065 G
+(scape)-3.065 E(characters preceding the history e)180 156 Q
+(xpansion character\);)-.15 E(1)144 168 Q(if e)180 168 Q
+(xpansions did tak)-.15 E 2.5(ep)-.1 G(lace;)-2.5 E(-1)144 180 Q
+(if there w)180 180 Q(as an error in e)-.1 E(xpansion;)-.15 E(2)144 192
+Q(if the returned line should be displayed, b)180 192 Q(ut not e)-.2 E
+-.15(xe)-.15 G(cuted, as with the).15 E F1(:p)2.5 E F0(modi\214er)2.5 E
+(.)-.55 E(If an error ocurred in e)108 204 Q(xpansion, then)-.15 E F2
 (output)2.5 E F0(contains a descripti)2.5 E .3 -.15(ve e)-.25 H
 (rror message.).15 E F2 -.15(ch)108 228 S(ar *).15 E F1(get_history_e)
 2.5 E -.1(ve)-.15 G(nt).1 E F0(\()4.166 E F2(const c)A(har *string)-.15
 E 1.666(,i)-.1 G(nt *cinde)-1.666 E -.834(x, int)-.2 F(qc)2.5 E(har)-.15
-E F0(\))3.332 E .263(Returns the te)108 240 R .263(xt of the history e)
--.15 F -.15(ve)-.25 G .263(nt be).15 F .263(ginning at)-.15 F F2(string)
+E F0(\))3.332 E .262(Returns the te)108 240 R .262(xt of the history e)
+-.15 F -.15(ve)-.25 G .262(nt be).15 F .263(ginning at)-.15 F F2(string)
 2.763 E F0(+)2.763 E F2(*cinde)2.763 E(x)-.2 E F0(.)A F2(*cinde)5.263 E
-(x)-.2 E F0 .262(is modi\214ed to point to after the)2.762 F -2.15 -.25
-(ev e)108 252 T .709(nt speci\214er).25 F 5.709(.A)-.55 G 3.209(tf)
--5.709 G .709(unction entry)-3.209 F(,)-.65 E F2(cinde)3.209 E(x)-.2 E
-F0 .709(points to the inde)3.209 F 3.209(xi)-.15 G(nto)-3.209 E F2
-(string)3.21 E F0 .71(where the history e)3.21 F -.15(ve)-.25 G .71
-(nt speci\214ca-).15 F .528(tion be)108 264 R(gins.)-.15 E F2(qc)5.528 E
-(har)-.15 E F0 .527(is a character that is allo)3.028 F .527
-(wed to end the e)-.25 F -.15(ve)-.25 G .527
+(x)-.2 E F0 .263(is modi\214ed to point to after the)2.763 F -2.15 -.25
+(ev e)108 252 T .71(nt speci\214er).25 F 5.71(.A)-.55 G 3.21(tf)-5.71 G
+.71(unction entry)-3.21 F(,)-.65 E F2(cinde)3.21 E(x)-.2 E F0 .709
+(points to the inde)3.21 F 3.209(xi)-.15 G(nto)-3.209 E F2(string)3.209
+E F0 .709(where the history e)3.209 F -.15(ve)-.25 G .709
+(nt speci\214ca-).15 F .527(tion be)108 264 R(gins.)-.15 E F2(qc)5.527 E
+(har)-.15 E F0 .527(is a character that is allo)3.027 F .527
+(wed to end the e)-.25 F -.15(ve)-.25 G .528
 (nt speci\214cation in addition to the `).15 F(`normal')-.74 E(')-.74 E
 (terminating characters.)108 276 Q F2 -.15(ch)108 300 S(ar **).15 E F1
 (history_tok)2.5 E(enize)-.1 E F0(\()4.166 E F2(const c)A(har *string)
--.15 E F0(\))1.666 E .238(Return an array of tok)108 312 R .238
-(ens parsed out of)-.1 F F2(string)2.738 E F0 2.738(,m)C .239
-(uch as the shell might.)-2.738 F .239(The tok)5.239 F .239
+-.15 E F0(\))1.666 E .239(Return an array of tok)108 312 R .239
+(ens parsed out of)-.1 F F2(string)2.739 E F0 2.739(,m)C .238
+(uch as the shell might.)-2.739 F .238(The tok)5.238 F .238
 (ens are split on the charac-)-.1 F(ters in the)108 324 Q F1(history_w)
 2.5 E(ord_delimiters)-.1 E F0 -.25(va)2.5 G
 (riable, and shell quoting con).25 E -.15(ve)-.4 G(ntions are obe).15 E
 (yed.)-.15 E F2 -.15(ch)108 348 S(ar *).15 E F1(history_ar)2.5 E
 (g_extract)-.1 E F0(\()4.166 E F2(int \214r)A -.834(st, int)-.1 F -.834
-(last, const)2.5 F -.15(ch)2.5 G(ar *string).15 E F0(\))3.332 E .026
-(Extract a string se)108 360 R .026(gment consisting of the)-.15 F F2
+(last, const)2.5 F -.15(ch)2.5 G(ar *string).15 E F0(\))3.332 E .025
+(Extract a string se)108 360 R .025(gment consisting of the)-.15 F F2
 <8c72>2.526 E(st)-.1 E F0(through)2.526 E F2(last)2.526 E F0(ar)2.526 E
-.025(guments present in)-.18 F F2(string)2.525 E F0 5.025(.A)C -.18(rg)
--5.025 G .025(uments are split).18 F(using)108 372 Q F1(history_tok)2.5
+.026(guments present in)-.18 F F2(string)2.526 E F0 5.026(.A)C -.18(rg)
+-5.026 G .026(uments are split).18 F(using)108 372 Q F1(history_tok)2.5
 E(enize\(\))-.1 E F0(.)A F1(History V)87 400.8 Q(ariables)-.92 E F0
 (This section describes the e)108 412.8 Q(xternally-visible v)-.15 E
 (ariables e)-.25 E(xported by the GNU History Library)-.15 E(.)-.65 E F2
@@ -756,12 +769,12 @@ F2(int)108 508.8 Q F1(history_max_entries)2.5 E F0
 (int)108 544.8 Q F1(history_wite_timestamps)2.5 E F0 1.468
 (If non-zero, timestamps are written to the history \214le, so the)108
 556.8 R 3.968(yc)-.15 G 1.468(an be preserv)-3.968 F 1.468
-(ed between sessions.)-.15 F(The)6.469 E(def)108 568.8 Q .439(ault v)-.1
+(ed between sessions.)-.15 F(The)6.468 E(def)108 568.8 Q .438(ault v)-.1
 F .439(alue is 0, meaning that timestamps are not sa)-.25 F -.15(ve)-.2
 G 2.939(d. The).15 F .439(current timestamp format uses the v)2.939 F
-.438(alue of)-.25 F F2(history_comment_c)108 580.8 Q(har)-.15 E F0 .051
-(to delimit timestamp entries in the history \214le.)2.551 F .051
-(If that v)5.051 F .052(ariable does not ha)-.25 F .352 -.15(ve a v)-.2
+.439(alue of)-.25 F F2(history_comment_c)108 580.8 Q(har)-.15 E F0 .051
+(to delimit timestamp entries in the history \214le.)2.552 F .051
+(If that v)5.051 F .051(ariable does not ha)-.25 F .351 -.15(ve a v)-.2
 H(alue)-.1 E(\(the def)108 592.8 Q
 (ault\), timestamps will not be written.)-.1 E F2 -.15(ch)108 616.8 S
 (ar).15 E F1(history_expansion_char)2.5 E F0
@@ -772,51 +785,52 @@ H(alue)-.1 E(\(the def)108 592.8 Q
 (The character that in)108 664.8 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(sw).1 G
 (ord substitution if found at the start of a line.)-2.6 E(The def)5 E
 (ault is)-.1 E F1(^)2.5 E F0(.)A F2 -.15(ch)108 688.8 S(ar).15 E F1
-(history_comment_char)2.5 E F0 .117(During tok)108 700.8 R .117
+(history_comment_char)2.5 E F0 .116(During tok)108 700.8 R .117
 (enization, if this character is seen as the \214rst character of a w)
--.1 F .117(ord, then it and all subsequent char)-.1 F(-)-.2 E .276
+-.1 F .117(ord, then it and all subsequent char)-.1 F(-)-.2 E .277
 (acters up to a ne)108 712.8 R .276
 (wline are ignored, suppressing history e)-.25 F .276
-(xpansion for the remainder of the line.)-.15 F .277(This is dis-)5.276
+(xpansion for the remainder of the line.)-.15 F .276(This is dis-)5.276
 F(abled by def)108 724.8 Q(ault.)-.1 E(GNU History 6.3)72 768 Q
-(2013 June 27)138.175 E(6)202.335 E 0 Cg EP
+(2015 May 24)138.175 E(6)202.335 E 0 Cg EP
 %%Page: 7 7
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E/F1 10/Times-Italic@0 SF -.15(ch)108 84 S(ar *)
-.15 E/F2 10/Times-Bold@0 SF(history_w)2.5 E(ord_delimiters)-.1 E F0
+/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 124.845(Y\(3\) Library)
+-.65 F(Functions Manual)2.5 E(HIST)127.345 E(OR)-.18 E(Y\(3\))-.65 E/F1
+10/Times-Italic@0 SF -.15(ch)108 84 S(ar *).15 E/F2 10/Times-Bold@0 SF
+(history_w)2.5 E(ord_delimiters)-.1 E F0
 (The characters that separate tok)108 96 Q(ens for)-.1 E F2(history_tok)
 2.5 E(enize\(\))-.1 E F0 5(.T)C(he def)-5 E(ault v)-.1 E(alue is)-.25 E
 F2 2.5("\\)2.5 G(t\\n\(\)<>;&|")-2.5 E F0(.)A F1 -.15(ch)108 120 S(ar *)
 .15 E F2(history_no_expand_chars)2.5 E F0 2.054
 (The list of characters which inhibit history e)108 132 R 2.054
 (xpansion if found immediately follo)-.15 F(wing)-.25 E F2
-(history_expan-)4.554 E(sion_char)108 144 Q F0 5(.T)C(he def)-5 E
+(history_expan-)4.555 E(sion_char)108 144 Q F0 5(.T)C(he def)-5 E
 (ault is space, tab, ne)-.1 E(wline,)-.25 E F2(\\r)2.5 E F0 2.5(,a)C(nd)
 -2.5 E F2(=)2.5 E F0(.)A F1 -.15(ch)108 168 S(ar *).15 E F2
 (history_sear)2.5 E(ch_delimiter_chars)-.18 E F0 .401(The list of addit\
 ional characters which can delimit a history search string, in addition\
- to space, tab,)108 180 R F1(:)2.901 E F0(and)2.901 E F1(?)2.902 E F0
+ to space, tab,)108 180 R F1(:)2.901 E F0(and)2.901 E F1(?)2.901 E F0
 (in the case of a substring search.)108 192 Q(The def)5 E(ault is empty)
 -.1 E(.)-.65 E F1(int)108 216 Q F2(history_quotes_inhibit_expansion)2.5
-E F0 .625(If non-zero, single-quoted w)108 228 R .625
-(ords are not scanned for the history e)-.1 F .624(xpansion character)
--.15 F 5.624(.T)-.55 G .624(he def)-5.624 F .624(ault v)-.1 F .624
-(alue is)-.25 F(0.)108 240 Q F1(rl_lineb)108 264 Q(uf_func_t *)-.2 E F2
-(history_inhibit_expansion_function)2.5 E F0 .347
-(This should be set to the address of a function that tak)108 276 R .348
-(es tw)-.1 F 2.848(oa)-.1 G -.18(rg)-2.848 G .348(uments: a).18 F F2
-.348(char *)2.848 F F0(\()2.848 E F1(string)A F0 2.848(\)a)C .348(nd an)
--2.848 F F2(int)2.848 E F0(inde)2.848 E(x)-.15 E .228
-(into that string \()108 288 R F1(i)A F0 2.728(\). It)B .227
+E F0 .86(If non-zero, double-quoted w)108 228 R .861
+(ords are not scanned for the history e)-.1 F .861
+(xpansion character or the history com-)-.15 F(ment character)108 240 Q
+5(.T)-.55 G(he def)-5 E(ault v)-.1 E(alue is 0.)-.25 E F1(rl_lineb)108
+264 Q(uf_func_t *)-.2 E F2(history_inhibit_expansion_function)2.5 E F0
+.348(This should be set to the address of a function that tak)108 276 R
+.348(es tw)-.1 F 2.848(oa)-.1 G -.18(rg)-2.848 G .347(uments: a).18 F F2
+.347(char *)2.847 F F0(\()2.847 E F1(string)A F0 2.847(\)a)C .347(nd an)
+-2.847 F F2(int)2.847 E F0(inde)2.847 E(x)-.15 E .227
+(into that string \()108 288 R F1(i)A F0 2.727(\). It)B .227
 (should return a non-zero v)2.727 F .227(alue if the history e)-.25 F
-.227(xpansion starting at)-.15 F F1(string[i])2.727 E F0 .227
-(should not)2.727 F .019(be performed; zero if the e)108 300 R .019
+.227(xpansion starting at)-.15 F F1(string[i])2.728 E F0 .228
+(should not)2.728 F .019(be performed; zero if the e)108 300 R .019
 (xpansion should be done.)-.15 F .019
 (It is intended for use by applications lik)5.019 F(e)-.1 E F2(bash)
-2.519 E F0 .019(that use)2.519 F(the history e)108 312 Q
+2.519 E F0 .018(that use)2.519 F(the history e)108 312 Q
 (xpansion character for additional purposes.)-.15 E(By def)5 E
 (ault, this v)-.1 E(ariable is set to)-.25 E F2(NULL)2.5 E F0(.)A/F3
 10.95/Times-Bold@0 SF(FILES)72 328.8 Q F1(~/.history)109.666 340.8 Q F0
@@ -836,20 +850,20 @@ F1(bash)108 405.6 Q F0(\(1\))A F1 -.37(re)108 417.6 S(adline).37 E F0
 (ou should report it.)-2.66 F .16(But \214rst, you should mak)5.16 F
 2.66(es)-.1 G .16(ure that it really is)-2.66 F 2.5(ab)108 528 S
 (ug, and that it appears in the latest v)-2.7 E(ersion of the)-.15 E F2
-(history)2.5 E F0(library that you ha)2.5 E -.15(ve)-.2 G(.).15 E .704
-(Once you ha)108 544.8 R 1.004 -.15(ve d)-.2 H .704(etermined that a b)
-.15 F .704(ug actually e)-.2 F .704(xists, mail a b)-.15 F .705
-(ug report to)-.2 F F1 -.2(bu)3.205 G(g\255r).2 E(eadline)-.37 E F0(@)A
-F1(gnu.or)A(g)-.37 E F0 5.705(.I)C 3.205(fy)-5.705 G(ou)-3.205 E(ha)108
-556.8 Q 1.81 -.15(ve a \214)-.2 H 1.51
-(x, you are welcome to mail that as well!).15 F 1.509
-(Suggestions and `philosophical' b)6.509 F 1.509(ug reports may be)-.2 F
+(history)2.5 E F0(library that you ha)2.5 E -.15(ve)-.2 G(.).15 E .705
+(Once you ha)108 544.8 R 1.005 -.15(ve d)-.2 H .705(etermined that a b)
+.15 F .704(ug actually e)-.2 F .704(xists, mail a b)-.15 F .704
+(ug report to)-.2 F F1 -.2(bu)3.204 G(g\255r).2 E(eadline)-.37 E F0(@)A
+F1(gnu.or)A(g)-.37 E F0 5.704(.I)C 3.204(fy)-5.704 G(ou)-3.204 E(ha)108
+556.8 Q 1.809 -.15(ve a \214)-.2 H 1.509
+(x, you are welcome to mail that as well!).15 F 1.51
+(Suggestions and `philosophical' b)6.51 F 1.51(ug reports may be)-.2 F
 (mailed to)108 568.8 Q F1 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F1
 (gnu.or)A(g)-.37 E F0(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F2
 (gnu.bash.b)2.5 E(ug)-.2 E F0(.)A(Comments and b)108 585.6 Q
 (ug reports concerning this manual page should be directed to)-.2 E F1
 -.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F0(.).25 E
-(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(7)202.335 E 0 Cg EP
+(GNU History 6.3)72 768 Q(2015 May 24)138.175 E(7)202.335 E 0 Cg EP
 %%Trailer
 end
 %%EOF
index 6487f20b60ad3320ba120e27644947f29718095c..6deaeee265fc2b5734a51fbaee4b1f5e5e022338 100644 (file)
@@ -270,9 +270,11 @@ a @code{NULL} pointer.
 @end deftypefun
 
 @deftypefun {HIST_ENTRY *} next_history (void)
-Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a @code{NULL} pointer.
+If the current history offset refers to a valid history entry,
+increment the current history offset.
+If the possibly-incremented history offset refers to a valid history
+entry, return a pointer to that entry;
+otherwise, return a @code{BNULL} pointer.
 @end deftypefun
 
 @node Searching the History List
@@ -467,8 +469,8 @@ carriage return, and @samp{=}.
 @end deftypevar
 
 @deftypevar int history_quotes_inhibit_expansion
-If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
+If non-zero, double-quoted words are not scanned for the history expansion
+character or the history comment character.  The default value is 0.
 @end deftypevar
 
 @deftypevar {rl_linebuf_func_t *} history_inhibit_expansion_function
index 69a5016342fd17e840dc8f84edd937a7f44b66ac..3aa6cfa2453384b7a888355664d40532c6dd9fed 100644 (file)
@@ -202,9 +202,9 @@ Delete the history entry at position @var{offset}.
 displayed.
 
 @item -a
-Append the new
-history lines (history lines entered since the beginning of the
-current Bash session) to the history file.
+Append the new history lines to the history file.
+These are history lines entered since the beginning of the current
+Bash session, but not already appended to the history file.
 
 @item -n
 Append the history lines not already read from the history file
index 57aeaac8b4517aba96284a847440e310d75519b8..fa50622fbb8cd9fea5e83c7d304ddf9d4a53f8b2 100644 (file)
@@ -1,76 +1,76 @@
-READLINE(3)                                                        READLINE(3)
+READLINE(3)                Library Functions Manual                READLINE(3)
 
 
 
-N\bNA\bAM\bME\bE
+\e[1mNAME\e[0m
        readline - get a line from a user with editing
 
-S\bSY\bYN\bNO\bOP\bPS\bSI\bIS\bS
-       #\b#i\bin\bnc\bcl\blu\bud\bde\be <\b<s\bst\btd\bdi\bio\bo.\b.h\bh>\b>
-       #\b#i\bin\bnc\bcl\blu\bud\bde\be <\b<r\bre\bea\bad\bdl\bli\bin\bne\be/\b/r\bre\bea\bad\bdl\bli\bin\bne\be.\b.h\bh>\b>
-       #\b#i\bin\bnc\bcl\blu\bud\bde\be <\b<r\bre\bea\bad\bdl\bli\bin\bne\be/\b/h\bhi\bis\bst\bto\bor\bry\by.\b.h\bh>\b>
+\e[1mSYNOPSIS\e[0m
+       \e[1m#include <stdio.h>\e[0m
+       \e[1m#include <readline/readline.h>\e[0m
+       \e[1m#include <readline/history.h>\e[0m
 
-       _\bc_\bh_\ba_\br _\b*
-       r\bre\bea\bad\bdl\bli\bin\bne\be (_\bc_\bo_\bn_\bs_\bt _\bc_\bh_\ba_\br _\b*_\bp_\br_\bo_\bm_\bp_\bt);
+       \e[4mchar\e[24m \e[4m*\e[0m
+       \e[1mreadline \e[22m(\e[4mconst\e[24m \e[4mchar\e[24m \e[4m*prompt\e[24m);
 
-C\bCO\bOP\bPY\bYR\bRI\bIG\bGH\bHT\bT
-       Readline is Copyright (C) 1989-2011 Free Software Foundation,  Inc.
+\e[1mCOPYRIGHT\e[0m
+       Readline is Copyright (C) 1989-2014 Free Software Foundation,  Inc.
 
-D\bDE\bES\bSC\bCR\bRI\bIP\bPT\bTI\bIO\bON\bN
-       r\bre\bea\bad\bdl\bli\bin\bne\be will read a line from the terminal and return it, using p\bpr\bro\bom\bmp\bpt\bt
-       as a prompt.  If p\bpr\bro\bom\bmp\bpt\bt is N\bNU\bUL\bLL\bor  the  empty  string,  no  prompt  is
-       issued.  The line returned is allocated with _\bm_\ba_\bl_\bl_\bo_\bc(3); the caller must
+\e[1mDESCRIPTION\e[0m
+       \e[1mreadline \e[22mwill read a line from the terminal and return it, using \e[1mprompt\e[0m
+       as a prompt.  If \e[1mprompt \e[22mis \e[1mNULL \e[22mor  the  empty  string,  no  prompt  is
+       issued.  The line returned is allocated with \e[4mmalloc\e[24m(3); the caller must
        free it when  finished.   The  line  returned  has  the  final  newline
        removed, so only the text of the line remains.
 
-       r\bre\bea\bad\bdl\bli\bin\bne\be  offers  editing  capabilities  while the user is entering the
+       \e[1mreadline  \e[22moffers  editing  capabilities  while the user is entering the
        line.  By default, the line editing commands are similar  to  those  of
        emacs.  A vi-style line editing interface is also available.
 
-       This  manual  page describes only the most basic use of r\bre\bea\bad\bdl\bli\bin\bne\be.  Much
-       more functionality is available; see _\bT_\bh_\be _\bG_\bN_\bU _\bR_\be_\ba_\bd_\bl_\bi_\bn_\be _\bL_\bi_\bb_\br_\ba_\br_\by  and  _\bT_\bh_\be
-       _\bG_\bN_\bU _\bH_\bi_\bs_\bt_\bo_\br_\by _\bL_\bi_\bb_\br_\ba_\br_\by for additional information.
+       This  manual  page describes only the most basic use of \e[1mreadline\e[22m.  Much
+       more functionality is available; see \e[4mThe\e[24m \e[4mGNU\e[24m \e[4mReadline\e[24m \e[4mLibrary\e[24m  and  \e[4mThe\e[0m
+       \e[4mGNU\e[24m \e[4mHistory\e[24m \e[4mLibrary\e[24m for additional information.
 
-R\bRE\bET\bTU\bUR\bRN\bN V\bVA\bAL\bLU\bUE\bE
-       r\bre\bea\bad\bdl\bli\bin\bne\be  returns  the text of the line read.  A blank line returns the
-       empty string.  If E\bEO\bOF\bis encountered while reading a line, and the line
-       is  empty,  N\bNU\bUL\bLL\bL is returned.  If an E\bEO\bOF\bis read with a non-empty line,
+\e[1mRETURN VALUE\e[0m
+       \e[1mreadline  \e[22mreturns  the text of the line read.  A blank line returns the
+       empty string.  If \e[1mEOF \e[22mis encountered while reading a line, and the line
+       is  empty,  \e[1mNULL \e[22mis returned.  If an \e[1mEOF \e[22mis read with a non-empty line,
        it is treated as a newline.
 
-N\bNO\bOT\bTA\bAT\bTI\bIO\bON\bN
+\e[1mNOTATION\e[0m
        An Emacs-style notation is used to denote keystrokes.  Control keys are
-       denoted  by C-_\bk_\be_\by, e.g., C-n means Control-N.  Similarly, _\bm_\be_\bt_\ba keys are
-       denoted by M-_\bk_\be_\by, so M-x means Meta-X.  (On keyboards  without  a  _\bm_\be_\bt_\ba
-       key,  M-_\bx means ESC _\bx, i.e., press the Escape key then the _\bx key.  This
-       makes ESC the _\bm_\be_\bt_\ba _\bp_\br_\be_\bf_\bi_\bx.  The combination M-C-_\bx means  ESC-Control-_\bx,
-       or  press the Escape key then hold the Control key while pressing the _\bx
+       denoted  by C-\e[4mkey\e[24m, e.g., C-n means Control-N.  Similarly, \e[4mmeta\e[24m keys are
+       denoted by M-\e[4mkey\e[24m, so M-x means Meta-X.  (On keyboards  without  a  \e[4mmeta\e[0m
+       key,  M-\e[4mx\e[24m means ESC \e[4mx\e[24m, i.e., press the Escape key then the \e[4mx\e[24m key.  This
+       makes ESC the \e[4mmeta\e[24m \e[4mprefix\e[24m.  The combination M-C-\e[4mx\e[24m means  ESC-Control-\e[4mx\e[24m,
+       or  press the Escape key then hold the Control key while pressing the \e[4mx\e[0m
        key.)
 
-       Readline commands may be given numeric _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs, which normally act as
+       Readline commands may be given numeric \e[4marguments\e[24m, which normally act as
        a  repeat  count.   Sometimes,  however, it is the sign of the argument
        that is significant.  Passing a negative argument  to  a  command  that
-       acts  in the forward direction (e.g., k\bki\bil\bll\bl-\b-l\bli\bin\bne\be) causes that command to
+       acts  in the forward direction (e.g., \e[1mkill-line\e[22m) causes that command to
        act in a backward direction.  Commands whose  behavior  with  arguments
-       deviates from this are noted.
+       deviates from this are noted below.
 
-       When  a command is described as _\bk_\bi_\bl_\bl_\bi_\bn_\bg text, the text deleted is saved
-       for possible future retrieval (_\by_\ba_\bn_\bk_\bi_\bn_\bg).  The killed text is saved in a
-       _\bk_\bi_\bl_\bl _\br_\bi_\bn_\bg.  Consecutive kills cause the text to be accumulated into one
+       When  a command is described as \e[4mkilling\e[24m text, the text deleted is saved
+       for possible future retrieval (\e[4myanking\e[24m).  The killed text is saved in a
+       \e[4mkill\e[24m \e[4mring\e[24m.  Consecutive kills cause the text to be accumulated into one
        unit, which can be yanked all at once.  Commands which do not kill text
        separate the chunks of text on the kill ring.
 
-I\bIN\bNI\bIT\bTI\bIA\bAL\bLI\bIZ\bZA\bAT\bTI\bIO\bON\bN F\bFI\bIL\bLE\bE
+\e[1mINITIALIZATION FILE\e[0m
        Readline  is  customized  by putting commands in an initialization file
-       (the _\bi_\bn_\bp_\bu_\bt_\br_\bc file).  The name of this file is taken from the  value  of
-       the  I\bIN\bNP\bPU\bUT\bTR\bRC\bC  environment  variable.   If  that  variable is unset, the
-       default is _\b~_\b/_\b._\bi_\bn_\bp_\bu_\bt_\br_\bc.  If that file  does not exist or cannot be read,
-       the  ultimate  default  is _\b/_\be_\bt_\bc_\b/_\bi_\bn_\bp_\bu_\bt_\br_\bc.  When a program which uses the
+       (the \e[4minputrc\e[24m file).  The name of this file is taken from the  value  of
+       the  \e[1mINPUTRC  \e[22menvironment  variable.   If  that  variable is unset, the
+       default is \e[4m~/.inputrc\e[24m.  If that file  does not exist or cannot be read,
+       the  ultimate  default  is \e[4m/etc/inputrc\e[24m.  When a program which uses the
        readline library starts up, the init file is read, and the key bindings
        and  variables  are set.  There are only a few basic constructs allowed
        in the readline init file.  Blank lines are ignored.   Lines  beginning
-       with  a  #\b# are comments.  Lines beginning with a $\bindicate conditional
+       with  a  \e[1m# \e[22mare comments.  Lines beginning with a \e[1m$ \e[22mindicate conditional
        constructs.  Other lines denote key  bindings  and  variable  settings.
-       Each  program using this library may add its own commands and bindings.
+       Each program using this library may add its own commands and bindings.
 
        For example, placing
 
@@ -78,463 +78,501 @@ I\bIN\bNI\bIT\bTI\bIA\bAL\bLI\bIZ\bZA\bAT\bTI\bIO\bON\bN F\bFI\bIL\bLE\bE
        or
               C-Meta-u: universal-argument
 
-       into the _\bi_\bn_\bp_\bu_\bt_\br_\bc would make M-C-u execute the readline command  _\bu_\bn_\bi_\bv_\be_\br_\b-
-       _\bs_\ba_\bl_\b-_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt.
+       into  the \e[4minputrc\e[24m would make M-C-u execute the readline command \e[4muniver-\e[0m
+       \e[4msal-argument\e[24m.
 
-       The  following symbolic character names are recognized while processing
-       key bindings: _\bD_\bE_\bL, _\bE_\bS_\bC, _\bE_\bS_\bC_\bA_\bP_\bE,  _\bL_\bF_\bD,  _\bN_\bE_\bW_\bL_\bI_\bN_\bE,  _\bR_\bE_\bT,  _\bR_\bE_\bT_\bU_\bR_\bN,  _\bR_\bU_\bB_\bO_\bU_\bT,
-       _\bS_\bP_\bA_\bC_\bE, _\bS_\bP_\bC, and _\bT_\bA_\bB.
+       The following symbolic character names are recognized while  processing
+       key  bindings:  \e[4mDEL\e[24m,  \e[4mESC\e[24m,  \e[4mESCAPE\e[24m,  \e[4mLFD\e[24m, \e[4mNEWLINE\e[24m, \e[4mRET\e[24m, \e[4mRETURN\e[24m, \e[4mRUBOUT\e[24m,
+       \e[4mSPACE\e[24m, \e[4mSPC\e[24m, and \e[4mTAB\e[24m.
 
-       In  addition  to  command  names, readline allows keys to be bound to a
-       string that is inserted when the key is pressed (a _\bm_\ba_\bc_\br_\bo).
+       In addition to command names, readline allows keys to  be  bound  to  a
+       string that is inserted when the key is pressed (a \e[4mmacro\e[24m).
 
-
-   K\bKe\bey\by B\bBi\bin\bnd\bdi\bin\bng\bgs\bs
-       The syntax for controlling key bindings in the _\bi_\bn_\bp_\bu_\bt_\br_\bc file is  simple.
-       All  that is required is the name of the command or the text of a macro
-       and a key sequence to which it should be bound. The name may be  speci-
-       fied in one of two ways: as a symbolic key name, possibly with _\bM_\be_\bt_\ba_\b- or
-       _\bC_\bo_\bn_\bt_\br_\bo_\bl_\b- prefixes, or as a key sequence.  The name and key sequence are
-       separated  by a colon.  There can be no whitespace between the name and
+   \e[1mKey Bindings\e[0m
+       The  syntax for controlling key bindings in the \e[4minputrc\e[24m file is simple.
+       All that is required is the name of the command or the text of a  macro
+       and a key sequence to which it should be bound.  The name may be speci-
+       fied in one of two ways: as a symbolic key name, possibly with \e[4mMeta-\e[24m or
+       \e[4mControl-\e[24m prefixes, or as a key sequence.  The name and key sequence are
+       separated by a colon.  There can be no whitespace between the name  and
        the colon.
 
-       When using the form k\bke\bey\byn\bna\bam\bme\be:_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be or _\bm_\ba_\bc_\br_\bo, _\bk_\be_\by_\bn_\ba_\bm_\be is the name
+       When using the form \e[1mkeyname\e[22m:\e[4mfunction-name\e[24m or \e[4mmacro\e[24m, \e[4mkeyname\e[24m is the name
        of a key spelled out in English.  For example:
 
               Control-u: universal-argument
               Meta-Rubout: backward-kill-word
               Control-o: "> output"
 
-       In  the above example, _\bC_\b-_\bu is bound to the function u\bun\bni\biv\bve\ber\brs\bsa\bal\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt,
-       _\bM_\b-_\bD_\bE_\bL is bound to the function b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd, and _\bC_\b-_\bo is bound  to
-       run  the macro expressed on the right hand side (that is, to insert the
+       In the above example, \e[4mC-u\e[24m is bound to the function  \e[1muniversal-argument\e[22m,
+       \e[4mM-DEL\e[24m  is bound to the function \e[1mbackward-kill-word\e[22m, and \e[4mC-o\e[24m is bound to
+       run the macro expressed on the right hand side (that is, to insert  the
        text ``> output'' into the line).
 
-       In the second form, "\b"k\bke\bey\bys\bse\beq\bq"\b":_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be  or  _\bm_\ba_\bc_\br_\bo,  k\bke\bey\bys\bse\beq\bq  differs
-       from  k\bke\bey\byn\bna\bam\bme\be above in that strings denoting an entire key sequence may
-       be specified by placing the sequence within double  quotes.   Some  GNU
-       Emacs  style  key escapes can be used, as in the following example, but
+       In  the  second  form,  \e[1m"keyseq"\e[22m:\e[4mfunction-name\e[24m or \e[4mmacro\e[24m, \e[1mkeyseq \e[22mdiffers
+       from \e[1mkeyname \e[22mabove in that strings denoting an entire key sequence  may
+       be  specified  by  placing the sequence within double quotes.  Some GNU
+       Emacs style key escapes can be used, as in the following  example,  but
        the symbolic character names are not recognized.
 
               "\C-u": universal-argument
               "\C-x\C-r": re-read-init-file
               "\e[11~": "Function Key 1"
 
-       In this example, _\bC_\b-_\bu is again bound to the function u\bun\bni\biv\bve\ber\brs\bsa\bal\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt.
-       _\bC_\b-_\bx  _\bC_\b-_\br is bound to the function r\bre\be-\b-r\bre\bea\bad\bd-\b-i\bin\bni\bit\bt-\b-f\bfi\bil\ble\be, and _\bE_\bS_\bC _\b[ _\b1 _\b1 _\b~ is
+       In this example, \e[4mC-u\e[24m is again bound to the function \e[1muniversal-argument\e[22m.
+       \e[4mC-x\e[24m \e[4mC-r\e[24m is bound to the function \e[1mre-read-init-file\e[22m, and \e[4mESC\e[24m \e[4m[\e[24m \e[4m1\e[24m \e[4m1\e[24m \e[4m~\e[24m  is
        bound to insert the text ``Function Key 1''.
 
-       The full set of GNU Emacs style escape sequences available when  speci-
+       The  full set of GNU Emacs style escape sequences available when speci-
        fying key sequences is
-              \\b\C\bC-\b-    control prefix
-              \\b\M\bM-\b-    meta prefix
-              \\b\e\be     an escape character
-              \\b\\\b\     backslash
-              \\b\"\b"     literal ", a double quote
-              \\b\'\b'     literal ', a single quote
-
-       In  addition  to  the GNU Emacs style escape sequences, a second set of
+              \e[1m\C-    \e[22mcontrol prefix
+              \e[1m\M-    \e[22mmeta prefix
+              \e[1m\e     \e[22man escape character
+              \e[1m\\     \e[22mbackslash
+              \e[1m\"     \e[22mliteral ", a double quote
+              \e[1m\'     \e[22mliteral ', a single quote
+
+       In addition to the GNU Emacs style escape sequences, a  second  set  of
        backslash escapes is available:
-              \\b\a\ba     alert (bell)
-              \\b\b\bb     backspace
-              \\b\d\bd     delete
-              \\b\f\bf     form feed
-              \\b\n\bn     newline
-              \\b\r\br     carriage return
-              \\b\t\bt     horizontal tab
-              \\b\v\bv     vertical tab
-              \\b\_\bn_\bn_\bn   the eight-bit character whose value is  the  octal  value
-                     _\bn_\bn_\bn (one to three digits)
-              \\b\x\bx_\bH_\bH   the  eight-bit  character  whose value is the hexadecimal
-                     value _\bH_\bH (one or two hex digits)
-
-       When entering the text of a macro, single or double  quotes  should  be
-       used  to indicate a macro definition.  Unquoted text is assumed to be a
-       function name.  In the macro  body,  the  backslash  escapes  described
-       above  are  expanded.   Backslash will quote any other character in the
+              \e[1m\a     \e[22malert (bell)
+              \e[1m\b     \e[22mbackspace
+              \e[1m\d     \e[22mdelete
+              \e[1m\f     \e[22mform feed
+              \e[1m\n     \e[22mnewline
+              \e[1m\r     \e[22mcarriage return
+              \e[1m\t     \e[22mhorizontal tab
+              \e[1m\v     \e[22mvertical tab
+              \e[1m\\e[4m\e[22mnnn\e[24m   the  eight-bit  character  whose value is the octal value
+                     \e[4mnnn\e[24m (one to three digits)
+              \e[1m\x\e[4m\e[22mHH\e[24m   the eight-bit character whose value  is  the  hexadecimal
+                     value \e[4mHH\e[24m (one or two hex digits)
+
+       When  entering  the  text of a macro, single or double quotes should be
+       used to indicate a macro definition.  Unquoted text is assumed to be  a
+       function  name.   In  the  macro  body, the backslash escapes described
+       above are expanded.  Backslash will quote any other  character  in  the
        macro text, including " and '.
 
-       B\bBa\bas\bsh\bh allows the current readline key bindings to be displayed or  modi-
-       fied  with  the b\bbi\bin\bnd\bd builtin command.  The editing mode may be switched
-       during interactive use by using the -\b-o\bo option to the s\bse\bet\bt  builtin  com-
-       mand.   Other  programs  using this library provide similar mechanisms.
-       The _\bi_\bn_\bp_\bu_\bt_\br_\bc file may be edited and re-read if a program does  not  pro-
+       \e[1mBash  \e[22mallows the current readline key bindings to be displayed or modi-
+       fied with the \e[1mbind \e[22mbuiltin command.  The editing mode may  be  switched
+       during  interactive  use by using the \e[1m-o \e[22moption to the \e[1mset \e[22mbuiltin com-
+       mand.  Other programs using this library  provide  similar  mechanisms.
+       The  \e[4minputrc\e[24m  file may be edited and re-read if a program does not pro-
        vide any other means to incorporate new bindings.
 
-   V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs
+   \e[1mVariables\e[0m
        Readline has variables that can be used to further customize its behav-
-       ior.  A variable may be set in the _\bi_\bn_\bp_\bu_\bt_\br_\bc file with a statement of the
+       ior.  A variable may be set in the \e[4minputrc\e[24m file with a statement of the
        form
 
-              s\bse\bet\bt _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be_\b-_\bn_\ba_\bm_\be _\bv_\ba_\bl_\bu_\be
-
-       Except  where  noted,  readline variables can take the values O\bOn\bn or O\bOf\bff\bf
-       (without regard to case).  Unrecognized  variable  names  are  ignored.
-       When  a variable value is read, empty or null values, "on" (case-insen-
-       sitive), and "1" are equivalent to O\bOn\bn.  All other values are equivalent
-       to O\bOf\bff\bf.  The variables and their default values are:
-
-       b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be (\b(a\bau\bud\bdi\bib\bbl\ble\be)\b)
-              Controls  what  happens when readline wants to ring the terminal
-              bell.  If set to n\bno\bon\bne\be, readline never rings the bell.  If set to
-              v\bvi\bis\bsi\bib\bbl\ble\be,  readline  uses a visible bell if one is available.  If
-              set to a\bau\bud\bdi\bib\bbl\ble\be, readline attempts to ring the terminal's bell.
-       b\bbi\bin\bnd\bd-\b-t\btt\bty\by-\b-s\bsp\bpe\bec\bci\bia\bal\bl-\b-c\bch\bha\bar\brs\bs (\b(O\bOn\bn)\b)
-              If set to O\bOn\bn, readline attempts to bind the  control  characters
-              treated specially by the kernel's terminal driver to their read-
-              line equivalents.
-       c\bco\bol\blo\bor\bre\bed\bd-\b-s\bst\bta\bat\bts\bs (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, readline displays possible completions using  dif-
-              ferent  colors  to  indicate their file type.  The color defini-
-              tions are taken from the  value  of  the  L\bLS\bS_\b_C\bCO\bOL\bLO\bOR\bRS\bS  environment
+              \e[1mset \e[4m\e[22mvariable-name\e[24m \e[4mvalue\e[0m
+
+       Except where noted, readline variables can take the values  \e[1mOn  \e[22mor  \e[1mOff\e[0m
+       (without  regard  to  case).   Unrecognized variable names are ignored.
+       When a variable value is read, empty or null values, "on"  (case-insen-
+       sitive), and "1" are equivalent to \e[1mOn\e[22m.  All other values are equivalent
+       to \e[1mOff\e[22m.  The variables and their default values are:
+
+       \e[1mbell-style (audible)\e[0m
+              Controls what happens when readline wants to ring  the  terminal
+              bell.  If set to \e[1mnone\e[22m, readline never rings the bell.  If set to
+              \e[1mvisible\e[22m, readline uses a visible bell if one is  available.   If
+              set to \e[1maudible\e[22m, readline attempts to ring the terminal's bell.
+       \e[1mbind-tty-special-chars (On)\e[0m
+              If  set  to \e[1mOn \e[22m(the default), readline attempts to bind the con-
+              trol characters   treated specially  by  the  kernel's  terminal
+              driver to their readline equivalents.
+       \e[1mblink-matching-paren (Off)\e[0m
+              If set to \e[1mOn\e[22m, readline attempts to briefly move the cursor to an
+              opening parenthesis when a closing parenthesis is inserted.
+       \e[1mcolored-completion-prefix (Off)\e[0m
+              If set to \e[1mOn\e[22m, when listing completions,  readline  displays  the
+              common prefix of the set of possible completions using a differ-
+              ent color.  The color definitions are taken from  the  value  of
+              the \e[1mLS_COLORS \e[22menvironment variable.
+       \e[1mcolored-stats (Off)\e[0m
+              If  set to \e[1mOn\e[22m, readline displays possible completions using dif-
+              ferent colors to indicate their file type.   The  color  defini-
+              tions  are  taken  from  the  value of the \e[1mLS_COLORS \e[22menvironment
               variable.
-       c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn (\b(`\b``\b`#\b#'\b''\b')\b)
-              The  string  that is inserted in v\bvi\bi mode when the i\bin\bns\bse\ber\brt\bt-\b-c\bco\bom\bmm\bme\ben\bnt\bt
-              command is executed.  This command is bound to M\bM-\b-#\bin emacs mode
-              and to #\bin vi command mode.
-       c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-w\bwi\bid\bdt\bth\bh (\b(-\b-1\b1)\b)
-              The  number  of  screen columns used to display possible matches
-              when performing completion.  The value is ignored if it is  less
-              than  0 or greater than the terminal screen width.  A value of 0
-              will cause matches to be displayed one per  line.   The  default
+       \e[1mcomment-begin (``#'')\e[0m
+              The string that is inserted in \e[1mvi \e[22mmode when  the  \e[1minsert-comment\e[0m
+              command is executed.  This command is bound to \e[1mM-# \e[22min emacs mode
+              and to \e[1m# \e[22min vi command mode.
+       \e[1mcompletion-display-width (-1)\e[0m
+              The number of screen columns used to  display  possible  matches
+              when  performing completion.  The value is ignored if it is less
+              than 0 or greater than the terminal screen width.  A value of  0
+              will  cause  matches  to be displayed one per line.  The default
               value is -1.
-       c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-i\big\bgn\bno\bor\bre\be-\b-c\bca\bas\bse\be (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, readline performs filename matching and completion
+       \e[1mcompletion-ignore-case (Off)\e[0m
+              If set to \e[1mOn\e[22m, readline performs filename matching and completion
               in a case-insensitive fashion.
-       c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-m\bma\bap\bp-\b-c\bca\bas\bse\be (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, and c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-i\big\bgn\bno\bor\bre\be-\b-c\bca\bas\bse\be  is  enabled,  readline
-              treats  hyphens  (_\b-) and underscores (_\b_) as equivalent when per-
+       \e[1mcompletion-map-case (Off)\e[0m
+              If  set  to  \e[1mOn\e[22m, and \e[1mcompletion-ignore-case \e[22mis enabled, readline
+              treats hyphens (\e[4m-\e[24m) and underscores (\e[4m_\e[24m) as equivalent  when  per-
               forming case-insensitive filename matching and completion.
-       c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-p\bpr\bre\bef\bfi\bix\bx-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-l\ble\ben\bng\bgt\bth\bh (\b(0\b0)\b)
-              The length in characters of the common prefix of a list of  pos-
-              sible  completions that is displayed without modification.  When
-              set to a value greater than zero, common  prefixes  longer  than
-              this  value are replaced with an ellipsis when displaying possi-
+       \e[1mcompletion-prefix-display-length (0)\e[0m
+              The  length in characters of the common prefix of a list of pos-
+              sible completions that is displayed without modification.   When
+              set  to  a  value greater than zero, common prefixes longer than
+              this value are replaced with an ellipsis when displaying  possi-
               ble completions.
-       c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-q\bqu\bue\ber\bry\by-\b-i\bit\bte\bem\bms\bs (\b(1\b10\b00\b0)\b)
-              This determines when the user is queried about viewing the  num-
-              ber  of  possible  completions generated by the p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\be-\b-
-              t\bti\bio\bon\bns\bs command.  It may be set to any integer value greater  than
-              or  equal  to  zero.   If  the number of possible completions is
+       \e[1mcompletion-query-items (100)\e[0m
+              This  determines when the user is queried about viewing the num-
+              ber of possible completions generated  by  the  \e[1mpossible-comple-\e[0m
+              \e[1mtions  \e[22mcommand.  It may be set to any integer value greater than
+              or equal to zero.  If the  number  of  possible  completions  is
               greater than or equal to the value of this variable, the user is
-              asked  whether or not he wishes to view them; otherwise they are
+              asked whether or not he wishes to view them; otherwise they  are
               simply listed on the terminal.  A negative value causes readline
               to never ask.
-       c\bco\bon\bnv\bve\ber\brt\bt-\b-m\bme\bet\bta\ba (\b(O\bOn\bn)\b)
-              If  set  to O\bOn\bn, readline will convert characters with the eighth
+       \e[1mconvert-meta (On)\e[0m
+              If set to \e[1mOn\e[22m, readline will convert characters with  the  eighth
               bit set to an ASCII key sequence by stripping the eighth bit and
-              prefixing  it  with an escape character (in effect, using escape
-              as the _\bm_\be_\bt_\ba _\bp_\br_\be_\bf_\bi_\bx).
-       d\bdi\bis\bsa\bab\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, readline will inhibit word completion.  Completion
-              characters  will  be  inserted into the line as if they had been
-              mapped to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt.
-       e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be (\b(e\bem\bma\bac\bcs\bs)\b)
+              prefixing it with an escape character (in effect,  using  escape
+              as the \e[4mmeta\e[24m \e[4mprefix\e[24m).
+       \e[1mdisable-completion (Off)\e[0m
+              If set to \e[1mOn\e[22m, readline will inhibit word completion.  Completion
+              characters will be inserted into the line as if  they  had  been
+              mapped to \e[1mself-insert\e[22m.
+       \e[1mediting-mode (emacs)\e[0m
               Controls whether readline begins with a set of key bindings sim-
-              ilar to _\bE_\bm_\ba_\bc_\bs or _\bv_\bi.  e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be can be set to either e\bem\bma\bac\bcs\bor
-              v\bvi\bi.
-       e\bec\bch\bho\bo-\b-c\bco\bon\bnt\btr\bro\bol\bl-\b-c\bch\bha\bar\bra\bac\bct\bte\ber\brs\bs (\b(O\bOn\bn)\b)
-              When set to O\bOn\bn, on operating systems that indicate they  support
+              ilar to \e[4mEmacs\e[24m or \e[4mvi\e[24m.  \e[1mediting-mode \e[22mcan be set to either \e[1memacs \e[22mor
+              \e[1mvi\e[22m.
+       \e[1mecho-control-characters (On)\e[0m
+              When  set to \e[1mOn\e[22m, on operating systems that indicate they support
               it, readline echoes a character corresponding to a signal gener-
               ated from the keyboard.
-       e\ben\bna\bab\bbl\ble\be-\b-k\bke\bey\byp\bpa\bad\bd (\b(O\bOf\bff\bf)\b)
-              When set to O\bOn\bn, readline will try to enable the application key-
+       \e[1menable-bracketed-paste (Off)\e[0m
+              When  set  to  \e[1mOn\e[22m, readline will configure the terminal in a way
+              that will enable it to insert each paste into the editing buffer
+              as a single string of characters, instead of treating each char-
+              acter as if it had been read from the keyboard.  This  can  pre-
+              vent  pasted  characters  from being interpreted as editing com-
+              mands.
+       \e[1menable-keypad (Off)\e[0m
+              When set to \e[1mOn\e[22m, readline will try to enable the application key-
               pad  when  it  is  called.  Some systems need this to enable the
               arrow keys.
-       e\ben\bna\bab\bbl\ble\be-\b-m\bme\bet\bta\ba-\b-k\bke\bey\by (\b(O\bOn\bn)\b)
-              When set to O\bOn\bn, readline will try to enable  any  meta  modifier
+       \e[1menable-meta-key (On)\e[0m
+              When set to \e[1mOn\e[22m, readline will try to enable  any  meta  modifier
               key  the  terminal claims to support when it is called.  On many
               terminals, the meta key is used to send eight-bit characters.
-       e\bex\bxp\bpa\ban\bnd\bd-\b-t\bti\bil\bld\bde\be (\b(O\bOf\bff\bf)\b)
-              If set  to  O\bOn\bn,  tilde  expansion  is  performed  when  readline
+       \e[1mexpand-tilde (Off)\e[0m
+              If set  to  \e[1mOn\e[22m,  tilde  expansion  is  performed  when  readline
               attempts word completion.
-       h\bhi\bis\bst\bto\bor\bry\by-\b-p\bpr\bre\bes\bse\ber\brv\bve\be-\b-p\bpo\boi\bin\bnt\bt (\b(O\bOf\bff\bf)\b)
-              If  set  to  O\bOn\bn, the history code attempts to place point at the
-              same location on each history line retrieved with  p\bpr\bre\bev\bvi\bio\bou\bus\bs-\b-h\bhi\bis\bs-\b-
-              t\bto\bor\bry\by or n\bne\bex\bxt\bt-\b-h\bhi\bis\bst\bto\bor\bry\by.
-       h\bhi\bis\bst\bto\bor\bry\by-\b-s\bsi\biz\bze\be (\b(0\b0)\b)
+       \e[1mhistory-preserve-point (Off)\e[0m
+              If  set  to  \e[1mOn\e[22m, the history code attempts to place point at the
+              same location on each history line retrieved with  \e[1mprevious-his-\e[0m
+              \e[1mtory \e[22mor \e[1mnext-history\e[22m.
+       \e[1mhistory-size (unset)\e[0m
               Set  the  maximum number of history entries saved in the history
               list.  If set to zero, any existing history entries are  deleted
               and no new entries are saved.  If set to a value less than zero,
               the number of history entries is not limited.  By  default,  the
               number of history entries is not limited.
-       h\bho\bor\bri\biz\bzo\bon\bnt\bta\bal\bl-\b-s\bsc\bcr\bro\bol\bll\bl-\b-m\bmo\bod\bde\be (\b(O\bOf\bff\bf)\b)
-              When  set  to  O\bOn\bn, makes readline use a single line for display,
+       \e[1mhorizontal-scroll-mode (Off)\e[0m
+              When  set  to  \e[1mOn\e[22m, makes readline use a single line for display,
               scrolling the input horizontally on a single screen line when it
               becomes  longer  than the screen width rather than wrapping to a
               new line.
-       i\bin\bnp\bpu\but\bt-\b-m\bme\bet\bta\ba (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, readline will enable eight-bit input (that is,  it
+       \e[1minput-meta (Off)\e[0m
+              If set to \e[1mOn\e[22m, readline will enable eight-bit input (that is,  it
               will  not  clear  the  eighth  bit  in the characters it reads),
               regardless of what the terminal claims it can support.  The name
-              m\bme\bet\bta\ba-\b-f\bfl\bla\bag\bis a synonym for this variable.
-       i\bis\bse\bea\bar\brc\bch\bh-\b-t\bte\ber\brm\bmi\bin\bna\bat\bto\bor\brs\bs (\b(`\b``\b`C\bC-\b-[\b[ C\bC-\b-J\bJ'\b''\b')\b)
+              \e[1mmeta-flag \e[22mis a synonym for this variable.
+       \e[1misearch-terminators (``C-[ C-J'')\e[0m
               The  string  of  characters that should terminate an incremental
               search without subsequently executing the character  as  a  com-
               mand.   If this variable has not been given a value, the charac-
-              ters _\bE_\bS_\bC and _\bC_\b-_\bJ will terminate an incremental search.
-       k\bke\bey\bym\bma\bap\bp (\b(e\bem\bma\bac\bcs\bs)\b)
+              ters \e[4mESC\e[24m and \e[4mC-J\e[24m will terminate an incremental search.
+       \e[1mkeymap (emacs)\e[0m
               Set the current readline keymap.  The set of legal keymap  names
-              is  _\be_\bm_\ba_\bc_\bs_\b,  _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bm_\be_\bt_\ba_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx_\b, _\bv_\bi_\b, _\bv_\bi_\b-_\bm_\bo_\bv_\be_\b,
-              _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd, and _\bv_\bi_\b-_\bi_\bn_\bs_\be_\br_\bt.   _\bv_\bi  is  equivalent  to  _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd;
-              _\be_\bm_\ba_\bc_\bs  is  equivalent  to  _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd.  The default value is
-              _\be_\bm_\ba_\bc_\bs.  The value  of  e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be  also  affects  the  default
+              is  \e[4memacs,\e[24m  \e[4memacs-standard,\e[24m \e[4memacs-meta,\e[24m \e[4memacs-ctlx,\e[24m \e[4mvi,\e[24m \e[4mvi-move,\e[0m
+              \e[4mvi-command\e[24m, and \e[4mvi-insert\e[24m.   \e[4mvi\e[24m  is  equivalent  to  \e[4mvi-command\e[24m;
+              \e[4memacs\e[24m  is  equivalent  to  \e[4memacs-standard\e[24m.  The default value is
+              \e[4memacs\e[24m.  The value  of  \e[1mediting-mode  \e[22malso  affects  the  default
               keymap.
-       k\bke\bey\bys\bse\beq\bq-\b-t\bti\bim\bme\beo\bou\but\bt (\b(5\b50\b00\b0)\b)
-              Specifies  the  duration _\br_\be_\ba_\bd_\bl_\bi_\bn_\be will wait for a character when
+       \e[1memacs-mode-string (@)\e[0m
+              This string is displayed immediately before the last line of the
+              primary prompt when emacs editing mode is active.  The value  is
+              expanded  like  a  key binding, so the standard set of meta- and
+              control prefixes and backslash escape  sequences  is  available.
+              Use  the  \1  and  \2 escapes to begin and end sequences of non-
+              printing characters, which can be used to embed a terminal  con-
+              trol sequence into the mode string.
+       \e[1mkeyseq-timeout (500)\e[0m
+              Specifies  the  duration \e[4mreadline\e[24m will wait for a character when
               reading an ambiguous key sequence (one that can form a  complete
               key sequence using the input read so far, or can take additional
               input to complete a  longer  key  sequence).   If  no  input  is
-              received  within  the timeout, _\br_\be_\ba_\bd_\bl_\bi_\bn_\be will use the shorter but
+              received  within  the timeout, \e[4mreadline\e[24m will use the shorter but
               complete key sequence.  The value is specified in  milliseconds,
-              so  a value of 1000 means that _\br_\be_\ba_\bd_\bl_\bi_\bn_\be will wait one second for
+              so  a value of 1000 means that \e[4mreadline\e[24m will wait one second for
               additional input.  If this variable is set to a value less  than
-              or  equal to zero, or to a non-numeric value, _\br_\be_\ba_\bd_\bl_\bi_\bn_\be will wait
+              or  equal to zero, or to a non-numeric value, \e[4mreadline\e[24m will wait
               until another key is pressed to decide  which  key  sequence  to
               complete.
-       m\bma\bar\brk\bk-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs (\b(O\bOn\bn)\b)
-              If set to O\bOn\bn, completed directory names have a slash appended.
-       m\bma\bar\brk\bk-\b-m\bmo\bod\bdi\bif\bfi\bie\bed\bd-\b-l\bli\bin\bne\bes\bs (\b(O\bOf\bff\bf)\b)
-              If  set  to  O\bOn\bn,  history lines that have been modified are dis-
-              played with a preceding asterisk (*\b*).
-       m\bma\bar\brk\bk-\b-s\bsy\bym\bml\bli\bin\bnk\bke\bed\bd-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, completed names which are symbolic links to direc-
+       \e[1mmark-directories (On)\e[0m
+              If set to \e[1mOn\e[22m, completed directory names have a slash appended.
+       \e[1mmark-modified-lines (Off)\e[0m
+              If  set  to  \e[1mOn\e[22m,  history lines that have been modified are dis-
+              played with a preceding asterisk (\e[1m*\e[22m).
+       \e[1mmark-symlinked-directories (Off)\e[0m
+              If set to \e[1mOn\e[22m, completed names which are symbolic links to direc-
               tories   have   a  slash  appended  (subject  to  the  value  of
-              m\bma\bar\brk\bk-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs).
-       m\bma\bat\btc\bch\bh-\b-h\bhi\bid\bdd\bde\ben\bn-\b-f\bfi\bil\ble\bes\bs (\b(O\bOn\bn)\b)
-              This variable, when set to O\bOn\bn, causes readline  to  match  files
+              \e[1mmark-directories\e[22m).
+       \e[1mmatch-hidden-files (On)\e[0m
+              This variable, when set to \e[1mOn\e[22m, causes readline  to  match  files
               whose  names  begin  with  a  `.' (hidden files) when performing
-              filename completion.  If set to O\bOf\bff\bf, the  leading  `.'  must  be
+              filename completion.  If set to \e[1mOff\e[22m, the  leading  `.'  must  be
               supplied by the user in the filename to be completed.
-       m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-p\bpr\bre\bef\bfi\bix\bx (\b(O\bOf\bff\bf)\b)
-              If  set to O\bOn\bn, menu completion displays the common prefix of the
+       \e[1mmenu-complete-display-prefix (Off)\e[0m
+              If  set to \e[1mOn\e[22m, menu completion displays the common prefix of the
               list of possible completions (which may be empty) before cycling
               through the list.
-       o\bou\but\btp\bpu\but\bt-\b-m\bme\bet\bta\ba (\b(O\bOf\bff\bf)\b)
-              If  set  to O\bOn\bn, readline will display characters with the eighth
+       \e[1moutput-meta (Off)\e[0m
+              If  set  to \e[1mOn\e[22m, readline will display characters with the eighth
               bit set directly rather than as a meta-prefixed escape sequence.
-       p\bpa\bag\bge\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(O\bOn\bn)\b)
-              If  set to O\bOn\bn, readline uses an internal _\bm_\bo_\br_\be-like pager to dis-
+       \e[1mpage-completions (On)\e[0m
+              If set to \e[1mOn\e[22m, readline uses an internal \e[4mmore\e[24m-like pager to  dis-
               play a screenful of possible completions at a time.
-       p\bpr\bri\bin\bnt\bt-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs-\b-h\bho\bor\bri\biz\bzo\bon\bnt\bta\bal\bll\bly\by (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, readline will  display  completions  with  matches
-              sorted  horizontally in alphabetical order, rather than down the
+       \e[1mprint-completions-horizontally (Off)\e[0m
+              If  set  to  \e[1mOn\e[22m,  readline will display completions with matches
+              sorted horizontally in alphabetical order, rather than down  the
               screen.
-       r\bre\bev\bve\ber\brt\bt-\b-a\bal\bll\bl-\b-a\bat\bt-\b-n\bne\bew\bwl\bli\bin\bne\be (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, readline will undo all changes  to  history  lines
-              before returning when a\bac\bcc\bce\bep\bpt\bt-\b-l\bli\bin\bne\bis executed.  By default, his-
-              tory lines may be modified  and  retain  individual  undo  lists
-              across calls to r\bre\bea\bad\bdl\bli\bin\bne\be.
-       s\bsh\bho\bow\bw-\b-a\bal\bll\bl-\b-i\bif\bf-\b-a\bam\bmb\bbi\big\bgu\buo\bou\bus\bs (\b(O\bOf\bff\bf)\b)
-              This  alters  the  default behavior of the completion functions.
-              If set to O\bOn\bn, words which have more than one possible completion
-              cause  the  matches  to be listed immediately instead of ringing
+       \e[1mrevert-all-at-newline (Off)\e[0m
+              If  set  to  \e[1mOn\e[22m, readline will undo all changes to history lines
+              before returning when \e[1maccept-line \e[22mis executed.  By default, his-
+              tory  lines  may  be  modified  and retain individual undo lists
+              across calls to \e[1mreadline\e[22m.
+       \e[1mshow-all-if-ambiguous (Off)\e[0m
+              This alters the default behavior of  the  completion  functions.
+              If set to \e[1mOn\e[22m, words which have more than one possible completion
+              cause the matches to be listed immediately  instead  of  ringing
               the bell.
-       s\bsh\bho\bow\bw-\b-a\bal\bll\bl-\b-i\bif\bf-\b-u\bun\bnm\bmo\bod\bdi\bif\bfi\bie\bed\bd (\b(O\bOf\bff\bf)\b)
-              This alters the default behavior of the completion functions  in
-              a fashion similar to s\bsh\bho\bow\bw-\b-a\bal\bll\bl-\b-i\bif\bf-\b-a\bam\bmb\bbi\big\bgu\buo\bou\bus\bs.  If set to O\bOn\bn, words
-              which have more than one possible completion without any  possi-
-              ble  partial  completion (the possible completions don't share a
-              common prefix)  cause  the  matches  to  be  listed  immediately
+       \e[1mshow-all-if-unmodified (Off)\e[0m
+              This  alters the default behavior of the completion functions in
+              a fashion similar to \e[1mshow-all-if-ambiguous\e[22m.  If set to \e[1mOn\e[22m, words
+              which  have more than one possible completion without any possi-
+              ble partial completion (the possible completions don't  share  a
+              common  prefix)  cause  the  matches  to  be  listed immediately
               instead of ringing the bell.
-       s\bsh\bho\bow\bw-\b-m\bmo\bod\bde\be-\b-i\bin\bn-\b-p\bpr\bro\bom\bmp\bpt\bt (\b(O\bOf\bff\bf)\b)
-              If  set  to  O\bOn\bn,  add a character to the beginning of the prompt
-              indicating the editing mode: emacs (@), vi  command  (:)  or  vi
-              insertion (+).
-       s\bsk\bki\bip\bp-\b-c\bco\bom\bmp\bpl\ble\bet\bte\bed\bd-\b-t\bte\bex\bxt\bt (\b(O\bOf\bff\bf)\b)
-              If  set  to O\bOn\bn, this alters the default completion behavior when
-              inserting a single match into the line.  It's only  active  when
-              performing  completion  in  the  middle  of a word.  If enabled,
-              readline does not insert characters  from  the  completion  that
-              match  characters  after  point  in the word being completed, so
+       \e[1mshow-mode-in-prompt (Off)\e[0m
+              If set to \e[1mOn\e[22m, add a character to the  beginning  of  the  prompt
+              indicating the editing mode: emacs, vi command, or vi insertion.
+              The mode strings are user-settable.
+       \e[1mskip-completed-text (Off)\e[0m
+              If set to \e[1mOn\e[22m, this alters the default completion  behavior  when
+              inserting  a  single match into the line.  It's only active when
+              performing completion in the middle  of  a  word.   If  enabled,
+              readline  does  not  insert  characters from the completion that
+              match characters after point in the  word  being  completed,  so
               portions of the word following the cursor are not duplicated.
-       v\bvi\bis\bsi\bib\bbl\ble\be-\b-s\bst\bta\bat\bts\bs (\b(O\bOf\bff\bf)\b)
-              If set to O\bOn\bn, a character denoting a file's type as reported  by
-              _\bs_\bt_\ba_\bt(2)  is  appended to the filename when listing possible com-
+       \e[1mvi-cmd-mode-string ((cmd))\e[0m
+              This string is displayed immediately before the last line of the
+              primary prompt when vi editing mode is  active  and  in  command
+              mode.  The value is expanded like a key binding, so the standard
+              set of meta- and control prefixes and backslash escape sequences
+              is  available.   Use  the  \1  and  \2  escapes to begin and end
+              sequences of non-printing characters, which can be used to embed
+              a terminal control sequence into the mode string.
+       \e[1mvi-ins-mode-string ((ins))\e[0m
+              This string is displayed immediately before the last line of the
+              primary prompt when vi editing mode is active and  in  insertion
+              mode.  The value is expanded like a key binding, so the standard
+              set of meta- and control prefixes and backslash escape sequences
+              is  available.   Use  the  \1  and  \2  escapes to begin and end
+              sequences of non-printing characters, which can be used to embed
+              a terminal control sequence into the mode string.
+       \e[1mvisible-stats (Off)\e[0m
+              If  set to \e[1mOn\e[22m, a character denoting a file's type as reported by
+              \e[4mstat\e[24m(2) is appended to the filename when listing  possible  com-
               pletions.
 
-   C\bCo\bon\bnd\bdi\bit\bti\bio\bon\bna\bal\bl C\bCo\bon\bns\bst\btr\bru\buc\bct\bts\bs
-       Readline implements a facility similar in  spirit  to  the  conditional
-       compilation  features  of  the C preprocessor which allows key bindings
-       and variable settings to be performed as the result  of  tests.   There
+   \e[1mConditional Constructs\e[0m
+       Readline  implements  a  facility  similar in spirit to the conditional
+       compilation features of the C preprocessor which  allows  key  bindings
+       and  variable  settings  to be performed as the result of tests.  There
        are four parser directives used.
 
-       $\b$i\bif\bf    The  $\b$i\bif\bf construct allows bindings to be made based on the edit-
-              ing mode, the terminal being  used,  or  the  application  using
-              readline.   The text of the test extends to the end of the line;
+       \e[1m$if    \e[22mThe \e[1m$if \e[22mconstruct allows bindings to be made based on the  edit-
+              ing  mode,  the  terminal  being  used, or the application using
+              readline.  The text of the test extends to the end of the  line;
               no characters are required to isolate it.
 
-              m\bmo\bod\bde\be   The m\bmo\bod\bde\be=\b= form of the  $\b$i\bif\bf  directive  is  used  to  test
-                     whether  readline  is  in  emacs or vi mode.  This may be
-                     used in conjunction with  the  s\bse\bet\bt  k\bke\bey\bym\bma\bap\bp  command,  for
-                     instance,  to  set  bindings  in  the  _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd and
-                     _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx keymaps only if readline is  starting  out  in
+              \e[1mmode   \e[22mThe  \e[1mmode=  \e[22mform  of  the  \e[1m$if  \e[22mdirective is used to test
+                     whether readline is in emacs or vi  mode.   This  may  be
+                     used  in  conjunction  with  the  \e[1mset keymap \e[22mcommand, for
+                     instance, to  set  bindings  in  the  \e[4memacs-standard\e[24m  and
+                     \e[4memacs-ctlx\e[24m  keymaps  only  if readline is starting out in
                      emacs mode.
 
-              t\bte\ber\brm\bm   The  t\bte\ber\brm\bm=\b=  form may be used to include terminal-specific
+              \e[1mterm   \e[22mThe \e[1mterm= \e[22mform may be used to  include  terminal-specific
                      key bindings, perhaps to bind the key sequences output by
                      the terminal's function keys.  The word on the right side
-                     of the =\b= is tested against the full name of the  terminal
-                     and  the portion of the terminal name before the first -\b-.
-                     This allows _\bs_\bu_\bn  to  match  both  _\bs_\bu_\bn  and  _\bs_\bu_\bn_\b-_\bc_\bm_\bd,  for
+                     of  the \e[1m= \e[22mis tested against the full name of the terminal
+                     and the portion of the terminal name before the first  \e[1m-\e[22m.
+                     This  allows  \e[4msun\e[24m  to  match  both  \e[4msun\e[24m  and \e[4msun-cmd\e[24m, for
                      instance.
 
-              a\bap\bpp\bpl\bli\bic\bca\bat\bti\bio\bon\bn
-                     The a\bap\bpp\bpl\bli\bic\bca\bat\bti\bio\bon\bconstruct is used to include application-
+              \e[1mapplication\e[0m
+                     The \e[1mapplication \e[22mconstruct is used to include application-
                      specific  settings.   Each  program  using  the  readline
-                     library  sets the _\ba_\bp_\bp_\bl_\bi_\bc_\ba_\bt_\bi_\bo_\bn _\bn_\ba_\bm_\be, and an initialization
+                     library sets the \e[4mapplication\e[24m \e[4mname\e[24m, and an  initialization
                      file can test for a particular value.  This could be used
-                     to  bind key sequences to functions useful for a specific
-                     program.  For instance, the following command adds a  key
-                     sequence  that  quotes  the  current  or previous word in
-                     b\bba\bas\bsh\bh:
+                     to bind key sequences to functions useful for a  specific
+                     program.   For instance, the following command adds a key
+                     sequence that quotes the  current  or  previous  word  in
+                     \e[1mbash\e[22m:
 
-                     $\b$i\bif\bBash
+                     \e[1m$if \e[22mBash
                      # Quote the current or previous word
                      "\C-xq": "\eb\"\ef\""
-                     $\b$e\ben\bnd\bdi\bif\bf
+                     \e[1m$endif\e[0m
 
-       $\b$e\ben\bnd\bdi\bif\bf This command, as seen in the previous example, terminates an $\b$i\bif\bf
+       \e[1m$endif \e[22mThis command, as seen in the previous example, terminates an \e[1m$if\e[0m
               command.
 
-       $\b$e\bel\bls\bse\be  Commands in this branch of the $\b$i\bif\bdirective are executed if the
+       \e[1m$else  \e[22mCommands in this branch of the \e[1m$if \e[22mdirective are executed if the
               test fails.
 
-       $\b$i\bin\bnc\bcl\blu\bud\bde\be
-              This directive takes a single filename as an argument and  reads
-              commands  and bindings from that file.  For example, the follow-
-              ing directive would read _\b/_\be_\bt_\bc_\b/_\bi_\bn_\bp_\bu_\bt_\br_\bc:
+       \e[1m$include\e[0m
+              This  directive takes a single filename as an argument and reads
+              commands and bindings from that file.  For example, the  follow-
+              ing directive would read \e[4m/etc/inputrc\e[24m:
 
-              $\b$i\bin\bnc\bcl\blu\bud\bde\be  _\b/_\be_\bt_\bc_\b/_\bi_\bn_\bp_\bu_\bt_\br_\bc
+              \e[1m$include  \e[4m\e[22m/etc/inputrc\e[0m
 
-S\bSE\bEA\bAR\bRC\bCH\bHI\bIN\bNG\bG
-       Readline provides commands for searching through  the  command  history
-       for  lines  containing a specified string.  There are two search modes:
-       _\bi_\bn_\bc_\br_\be_\bm_\be_\bn_\bt_\ba_\bl and _\bn_\bo_\bn_\b-_\bi_\bn_\bc_\br_\be_\bm_\be_\bn_\bt_\ba_\bl.
+\e[1mSEARCHING\e[0m
+       Readline  provides  commands  for searching through the command history
+       for lines containing a specified string.  There are two  search  modes:
+       \e[4mincremental\e[24m and \e[4mnon-incremental\e[24m.
 
-       Incremental searches begin before the  user  has  finished  typing  the
-       search  string.  As each character of the search string is typed, read-
+       Incremental  searches  begin  before  the  user has finished typing the
+       search string.  As each character of the search string is typed,  read-
        line displays the next entry from the history matching the string typed
-       so  far.   An  incremental  search  requires only as many characters as
-       needed to find the desired history entry.  To search  backward  in  the
-       history for a particular string, type C\bC-\b-r\br.  Typing C\bC-\b-s\bsearches forward
-       through the history.  The  characters  present  in  the  value  of  the
-       i\bis\bse\bea\bar\brc\bch\bh-\b-t\bte\ber\brm\bmi\bin\bna\bat\bto\bor\brs\bs  variable  are  used  to  terminate  an incremental
-       search.  If that variable has not been assigned a value the _\bE_\bs_\bc_\ba_\bp_\b and
-       C\bC-\b-J\bJ characters will terminate an incremental search.  C\bC-\b-G\bwill abort an
-       incremental search and restore the original line.  When the  search  is
-       terminated,  the history entry containing the search string becomes the
+       so far.  An incremental search requires  only  as  many  characters  as
+       needed  to  find  the desired history entry.  To search backward in the
+       history for a particular string, type \e[1mC-r\e[22m.  Typing \e[1mC-s \e[22msearches forward
+       through  the  history.   The  characters  present  in  the value of the
+       \e[1misearch-terminators \e[22mvariable  are  used  to  terminate  an  incremental
+       search.   If that variable has not been assigned a value the \e[4mEscape\e[24m and
+       \e[1mC-J \e[22mcharacters will terminate an incremental search.  \e[1mC-G \e[22mwill abort an
+       incremental  search  and restore the original line.  When the search is
+       terminated, the history entry containing the search string becomes  the
        current line.
 
-       To find other matching entries in the history list, type C\bC-\b-s\bs or C\bC-\b-r\br  as
-       appropriate.   This  will search backward or forward in the history for
-       the next line matching the search string typed so far.  Any  other  key
+       To  find other matching entries in the history list, type \e[1mC-s \e[22mor \e[1mC-r \e[22mas
+       appropriate.  This will search backward or forward in the  history  for
+       the  next  line matching the search string typed so far.  Any other key
        sequence bound to a readline command will terminate the search and exe-
-       cute that command.  For instance, a newline will terminate  the  search
-       and  accept  the  line,  thereby executing the command from the history
+       cute  that  command.  For instance, a newline will terminate the search
+       and accept the line, thereby executing the  command  from  the  history
        list.  A movement command will terminate the search, make the last line
        found the current line, and begin editing.
 
-       Non-incremental  searches read the entire search string before starting
-       to search for matching history lines.  The search string may  be  typed
+       Non-incremental searches read the entire search string before  starting
+       to  search  for matching history lines.  The search string may be typed
        by the user or be part of the contents of the current line.
 
-E\bED\bDI\bIT\bTI\bIN\bNG\bG C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
-       The  following  is  a list of the names of the commands and the default
+\e[1mEDITING COMMANDS\e[0m
+       The following is a list of the names of the commands  and  the  default
        key sequences to which they are bound.  Command names without an accom-
        panying key sequence are unbound by default.
 
-       In the following descriptions, _\bp_\bo_\bi_\bn_\bt refers to the current cursor posi-
-       tion, and _\bm_\ba_\br_\bk refers to a cursor position saved by the  s\bse\bet\bt-\b-m\bma\bar\brk\bk  com-
-       mand.   The  text  between  the  point  and  mark is referred to as the
-       _\br_\be_\bg_\bi_\bo_\bn.
+       In the following descriptions, \e[4mpoint\e[24m refers to the current cursor posi-
+       tion,  and  \e[4mmark\e[24m refers to a cursor position saved by the \e[1mset-mark \e[22mcom-
+       mand.  The text between the point  and  mark  is  referred  to  as  the
+       \e[4mregion\e[24m.
 
-   C\bCo\bom\bmm\bma\ban\bnd\bds\bs f\bfo\bor\br M\bMo\bov\bvi\bin\bng\bg
-       b\bbe\beg\bgi\bin\bnn\bni\bin\bng\bg-\b-o\bof\bf-\b-l\bli\bin\bne\be (\b(C\bC-\b-a\ba)\b)
+   \e[1mCommands for Moving\e[0m
+       \e[1mbeginning-of-line (C-a)\e[0m
               Move to the start of the current line.
-       e\ben\bnd\bd-\b-o\bof\bf-\b-l\bli\bin\bne\be (\b(C\bC-\b-e\be)\b)
+       \e[1mend-of-line (C-e)\e[0m
               Move to the end of the line.
-       f\bfo\bor\brw\bwa\bar\brd\bd-\b-c\bch\bha\bar\br (\b(C\bC-\b-f\bf)\b)
+       \e[1mforward-char (C-f)\e[0m
               Move forward a character.
-       b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-c\bch\bha\bar\br (\b(C\bC-\b-b\bb)\b)
+       \e[1mbackward-char (C-b)\e[0m
               Move back a character.
-       f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-f\bf)\b)
+       \e[1mforward-word (M-f)\e[0m
               Move forward to the end of the next word.  Words are composed of
               alphanumeric characters (letters and digits).
-       b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-b\bb)\b)
-              Move  back  to the start of the current or previous word.  Words
+       \e[1mbackward-word (M-b)\e[0m
+              Move back to the start of the current or previous  word.   Words
               are composed of alphanumeric characters (letters and digits).
-       c\bcl\ble\bea\bar\br-\b-s\bsc\bcr\bre\bee\ben\bn (\b(C\bC-\b-l\bl)\b)
-              Clear the screen leaving the current line  at  the  top  of  the
-              screen.   With  an  argument,  refresh  the current line without
+       \e[1mclear-screen (C-l)\e[0m
+              Clear  the  screen  leaving  the  current line at the top of the
+              screen.  With an argument,  refresh  the  current  line  without
               clearing the screen.
-       r\bre\bed\bdr\bra\baw\bw-\b-c\bcu\bur\brr\bre\ben\bnt\bt-\b-l\bli\bin\bne\be
+       \e[1mredraw-current-line\e[0m
               Refresh the current line.
 
-   C\bCo\bom\bmm\bma\ban\bnd\bds\bs f\bfo\bor\br M\bMa\ban\bni\bip\bpu\bul\bla\bat\bti\bin\bng\bg t\bth\bhe\be H\bHi\bis\bst\bto\bor\bry\by
-       a\bac\bcc\bce\bep\bpt\bt-\b-l\bli\bin\bne\be (\b(N\bNe\bew\bwl\bli\bin\bne\be,\b, R\bRe\bet\btu\bur\brn\bn)\b)
+   \e[1mCommands for Manipulating the History\e[0m
+       \e[1maccept-line (Newline, Return)\e[0m
               Accept the line regardless of where the cursor is.  If this line
-              is  non-empty,  it  may  be added to the history list for future
-              recall with a\bad\bdd\bd_\b_h\bhi\bis\bst\bto\bor\bry\by(\b()\b).  If the line is  a  modified  history
+              is non-empty, it may be added to the  history  list  for  future
+              recall  with  \e[1madd_history()\e[22m.   If the line is a modified history
               line, the history line is restored to its original state.
-       p\bpr\bre\bev\bvi\bio\bou\bus\bs-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-p\bp)\b)
+       \e[1mprevious-history (C-p)\e[0m
               Fetch the previous command from the history list, moving back in
               the list.
-       n\bne\bex\bxt\bt-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-n\bn)\b)
-              Fetch the next command from the history list, moving forward  in
+       \e[1mnext-history (C-n)\e[0m
+              Fetch  the next command from the history list, moving forward in
               the list.
-       b\bbe\beg\bgi\bin\bnn\bni\bin\bng\bg-\b-o\bof\bf-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-<\b<)\b)
+       \e[1mbeginning-of-history (M-<)\e[0m
               Move to the first line in the history.
-       e\ben\bnd\bd-\b-o\bof\bf-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b->\b>)\b)
-              Move  to  the end of the input history, i.e., the line currently
+       \e[1mend-of-history (M->)\e[0m
+              Move to the end of the input history, i.e., the  line  currently
               being entered.
-       r\bre\bev\bve\ber\brs\bse\be-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-r\br)\b)
-              Search backward starting at the current  line  and  moving  `up'
-              through  the  history  as  necessary.   This  is  an incremental
+       \e[1mreverse-search-history (C-r)\e[0m
+              Search  backward  starting  at  the current line and moving `up'
+              through the  history  as  necessary.   This  is  an  incremental
               search.
-       f\bfo\bor\brw\bwa\bar\brd\bd-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-s\bs)\b)
-              Search forward starting at the current line  and  moving  `down'
-              through  the  history  as  necessary.   This  is  an incremental
+       \e[1mforward-search-history (C-s)\e[0m
+              Search  forward  starting  at the current line and moving `down'
+              through the  history  as  necessary.   This  is  an  incremental
               search.
-       n\bno\bon\bn-\b-i\bin\bnc\bcr\bre\bem\bme\ben\bnt\bta\bal\bl-\b-r\bre\bev\bve\ber\brs\bse\be-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-p\bp)\b)
+       \e[1mnon-incremental-reverse-search-history (M-p)\e[0m
               Search backward through the history starting at the current line
-              using  a  non-incremental  search  for  a string supplied by the
+              using a non-incremental search for  a  string  supplied  by  the
               user.
-       n\bno\bon\bn-\b-i\bin\bnc\bcr\bre\bem\bme\ben\bnt\bta\bal\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-n\bn)\b)
-              Search forward  through  the  history  using  a  non-incremental
+       \e[1mnon-incremental-forward-search-history (M-n)\e[0m
+              Search  forward  through  the  history  using  a non-incremental
               search for a string supplied by the user.
-       h\bhi\bis\bst\bto\bor\bry\by-\b-s\bse\bea\bar\brc\bch\bh-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd
+       \e[1mhistory-search-backward\e[0m
               Search backward through the history for the string of characters
-              between the start of the current line  and  the  current  cursor
-              position  (the  _\bp_\bo_\bi_\bn_\bt).   The  search  string  must match at the
-              beginning of a history line.  This is a non-incremental  search.
-       h\bhi\bis\bst\bto\bor\bry\by-\b-s\bse\bea\bar\brc\bch\bh-\b-f\bfo\bor\brw\bwa\bar\brd\bd
+              between  the  start  of  the current line and the current cursor
+              position (the \e[4mpoint\e[24m).  The  search  string  must  match  at  the
+              beginning of a history line.  This is a non-incremental search.
+       \e[1mhistory-search-forward\e[0m
               Search  forward through the history for the string of characters
               between the start of the current line and the point.  The search
               string must match at the beginning of a history line.  This is a
               non-incremental search.
-       h\bhi\bis\bst\bto\bor\bry\by-\b-s\bsu\bub\bbs\bst\btr\bri\bin\bng\bg-\b-s\bse\bea\bar\brc\bch\bh-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd
+       \e[1mhistory-substring-search-backward\e[0m
               Search backward through the history for the string of characters
               between  the  start  of  the current line and the current cursor
-              position (the _\bp_\bo_\bi_\bn_\bt).  The search string may match anywhere in a
+              position (the \e[4mpoint\e[24m).  The search string may match anywhere in a
               history line.  This is a non-incremental search.
-       h\bhi\bis\bst\bto\bor\bry\by-\b-s\bsu\bub\bbs\bst\btr\bri\bin\bng\bg-\b-s\bse\bea\bar\brc\bch\bh-\b-f\bfo\bor\brw\bwa\bar\brd\bd
+       \e[1mhistory-substring-search-forward\e[0m
               Search  forward through the history for the string of characters
               between the start of the current line and the point.  The search
               string  may  match  anywhere  in a history line.  This is a non-
               incremental search.
-       y\bya\ban\bnk\bk-\b-n\bnt\bth\bh-\b-a\bar\brg\bg (\b(M\bM-\b-C\bC-\b-y\by)\b)
+       \e[1myank-nth-arg (M-C-y)\e[0m
               Insert the first argument to the previous command  (usually  the
-              second word on the previous line) at point.  With an argument _\bn,
-              insert the _\bnth word from the previous command (the words in  the
+              second word on the previous line) at point.  With an argument \e[4mn\e[24m,
+              insert the \e[4mn\e[24mth word from the previous command (the words in  the
               previous  command  begin  with  word  0).   A  negative argument
-              inserts the _\bnth word from the end of the previous command.  Once
-              the  argument _\bn is computed, the argument is extracted as if the
-              "!_\bn" history expansion had been specified.
-       y\bya\ban\bnk\bk-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bg (\b(M\bM-\b-.\b.,\b, M\bM-\b-_\b_)\b)
+              inserts the \e[4mn\e[24mth word from the end of the previous command.  Once
+              the  argument \e[4mn\e[24m is computed, the argument is extracted as if the
+              "!\e[4mn\e[24m" history expansion had been specified.
+       \e[1myank-last-arg (M-., M-_)\e[0m
               Insert the last argument to the previous command (the last  word
               of the previous history entry).  With a numeric argument, behave
-              exactly like y\bya\ban\bnk\bk-\b-n\bnt\bth\bh-\b-a\bar\brg\bg.  Successive  calls  to  y\bya\ban\bnk\bk-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bg
+              exactly like \e[1myank-nth-arg\e[22m.  Successive  calls  to  \e[1myank-last-arg\e[0m
               move  back through the history list, inserting the last word (or
               the word specified by the argument to the first  call)  of  each
               line in turn.  Any numeric argument supplied to these successive
@@ -544,112 +582,112 @@ E\bED\bDI\bIT\bTI\bIN\bNG\bG C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
               extract  the last argument, as if the "!$" history expansion had
               been specified.
 
-   C\bCo\bom\bmm\bma\ban\bnd\bds\bs f\bfo\bor\br C\bCh\bha\ban\bng\bgi\bin\bng\bg T\bTe\bex\bxt\bt
-       _\be_\bn_\bd_\b-_\bo_\bf_\b-_\bf_\bi_\bl_\be (\b(u\bus\bsu\bua\bal\bll\bly\by C\bC-\b-d\bd)\b)
+   \e[1mCommands for Changing Text\e[0m
+       \e[4mend-of-file\e[24m \e[1m(usually C-d)\e[0m
               The character indicating end-of-file as  set,  for  example,  by
               ``stty''.   If  this character is read when there are no charac-
               ters on the line, and point is at the  beginning  of  the  line,
-              Readline interprets it as the end of input and returns E\bEO\bOF\bF.
-       d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br (\b(C\bC-\b-d\bd)\b)
+              Readline interprets it as the end of input and returns \e[1mEOF\e[22m.
+       \e[1mdelete-char (C-d)\e[0m
               Delete the character at point.  If this function is bound to the
-              same character as the tty E\bEO\bOF\bF character, as C\bC-\b-d\bcommonly is, see
+              same character as the tty \e[1mEOF \e[22mcharacter, as \e[1mC-d \e[22mcommonly is, see
               above for the effects.
-       b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br (\b(R\bRu\bub\bbo\bou\but\bt)\b)
+       \e[1mbackward-delete-char (Rubout)\e[0m
               Delete  the  character  behind the cursor.  When given a numeric
               argument, save the deleted text on the kill ring.
-       f\bfo\bor\brw\bwa\bar\brd\bd-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br
+       \e[1mforward-backward-delete-char\e[0m
               Delete the character under the cursor, unless the cursor  is  at
               the end of the line, in which case the character behind the cur-
               sor is deleted.
-       q\bqu\buo\bot\bte\bed\bd-\b-i\bin\bns\bse\ber\brt\bt (\b(C\bC-\b-q\bq,\b, C\bC-\b-v\bv)\b)
+       \e[1mquoted-insert (C-q, C-v)\e[0m
               Add the next character that you type to the line verbatim.  This
-              is how to insert characters like C\bC-\b-q\bq, for example.
-       t\bta\bab\bb-\b-i\bin\bns\bse\ber\brt\bt (\b(M\bM-\b-T\bTA\bAB\bB)\b)
+              is how to insert characters like \e[1mC-q\e[22m, for example.
+       \e[1mtab-insert (M-TAB)\e[0m
               Insert a tab character.
-       s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt (\b(a\ba,\b, b\bb,\b, A\bA,\b, 1\b1,\b, !\b!,\b, .\b..\b..\b.)\b)
+       \e[1mself-insert (a, b, A, 1, !, ...)\e[0m
               Insert the character typed.
-       t\btr\bra\ban\bns\bsp\bpo\bos\bse\be-\b-c\bch\bha\bar\brs\bs (\b(C\bC-\b-t\bt)\b)
+       \e[1mtranspose-chars (C-t)\e[0m
               Drag  the  character  before point forward over the character at
               point, moving point forward as well.  If point is at the end  of
               the  line, then this transposes the two characters before point.
               Negative arguments have no effect.
-       t\btr\bra\ban\bns\bsp\bpo\bos\bse\be-\b-w\bwo\bor\brd\bds\bs (\b(M\bM-\b-t\bt)\b)
+       \e[1mtranspose-words (M-t)\e[0m
               Drag the word before point past the  word  after  point,  moving
               point  over  that  word  as well.  If point is at the end of the
               line, this transposes the last two words on the line.
-       u\bup\bpc\bca\bas\bse\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-u\bu)\b)
+       \e[1mupcase-word (M-u)\e[0m
               Uppercase the current (or  following)  word.   With  a  negative
               argument, uppercase the previous word, but do not move point.
-       d\bdo\bow\bwn\bnc\bca\bas\bse\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-l\bl)\b)
+       \e[1mdowncase-word (M-l)\e[0m
               Lowercase  the  current  (or  following)  word.  With a negative
               argument, lowercase the previous word, but do not move point.
-       c\bca\bap\bpi\bit\bta\bal\bli\biz\bze\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-c\bc)\b)
+       \e[1mcapitalize-word (M-c)\e[0m
               Capitalize the current (or following)  word.   With  a  negative
               argument, capitalize the previous word, but do not move point.
-       o\bov\bve\ber\brw\bwr\bri\bit\bte\be-\b-m\bmo\bod\bde\be
+       \e[1moverwrite-mode\e[0m
               Toggle  overwrite mode.  With an explicit positive numeric argu-
               ment, switches to overwrite mode.  With an explicit non-positive
               numeric argument, switches to insert mode.  This command affects
-              only e\bem\bma\bac\bcs\bs mode; v\bvi\bmode does overwrite differently.  Each  call
-              to _\br_\be_\ba_\bd_\bl_\bi_\bn_\be_\b(_\b) starts in insert mode.  In overwrite mode, charac-
-              ters bound to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\breplace the text at point rather  than
-              pushing  the  text  to  the  right.   Characters  bound to b\bba\bac\bck\bk-\b-
-              w\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\breplace  the  character  before  point  with  a
+              only \e[1memacs \e[22mmode; \e[1mvi \e[22mmode does overwrite differently.  Each  call
+              to \e[4mreadline()\e[24m starts in insert mode.  In overwrite mode, charac-
+              ters bound to \e[1mself-insert \e[22mreplace the text at point rather  than
+              pushing  the  text  to  the  right.   Characters  bound to \e[1mback-\e[0m
+              \e[1mward-delete-char \e[22mreplace  the  character  before  point  with  a
               space.  By default, this command is unbound.
 
-   K\bKi\bil\bll\bli\bin\bng\bg a\ban\bnd\bd Y\bYa\ban\bnk\bki\bin\bng\bg
-       k\bki\bil\bll\bl-\b-l\bli\bin\bne\be (\b(C\bC-\b-k\bk)\b)
+   \e[1mKilling and Yanking\e[0m
+       \e[1mkill-line (C-k)\e[0m
               Kill the text from point to the end of the line.
-       b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-k\bki\bil\bll\bl-\b-l\bli\bin\bne\be (\b(C\bC-\b-x\bx R\bRu\bub\bbo\bou\but\bt)\b)
+       \e[1mbackward-kill-line (C-x Rubout)\e[0m
               Kill backward to the beginning of the line.
-       u\bun\bni\bix\bx-\b-l\bli\bin\bne\be-\b-d\bdi\bis\bsc\bca\bar\brd\bd (\b(C\bC-\b-u\bu)\b)
+       \e[1munix-line-discard (C-u)\e[0m
               Kill  backward  from  point  to  the beginning of the line.  The
               killed text is saved on the kill-ring.
-       k\bki\bil\bll\bl-\b-w\bwh\bho\bol\ble\be-\b-l\bli\bin\bne\be
+       \e[1mkill-whole-line\e[0m
               Kill all characters on the current line, no matter  where  point
               is.
-       k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-d\bd)\b)
+       \e[1mkill-word (M-d)\e[0m
               Kill  from  point  the  end  of  the current word, or if between
               words, to the end of the next word.   Word  boundaries  are  the
-              same as those used by f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
-       b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-R\bRu\bub\bbo\bou\but\bt)\b)
+              same as those used by \e[1mforward-word\e[22m.
+       \e[1mbackward-kill-word (M-Rubout)\e[0m
               Kill  the  word  behind  point.  Word boundaries are the same as
-              those used by b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
-       u\bun\bni\bix\bx-\b-w\bwo\bor\brd\bd-\b-r\bru\bub\bbo\bou\but\bt (\b(C\bC-\b-w\bw)\b)
+              those used by \e[1mbackward-word\e[22m.
+       \e[1munix-word-rubout (C-w)\e[0m
               Kill the word behind point, using white space as a  word  bound-
               ary.  The killed text is saved on the kill-ring.
-       u\bun\bni\bix\bx-\b-f\bfi\bil\ble\ben\bna\bam\bme\be-\b-r\bru\bub\bbo\bou\but\bt
+       \e[1munix-filename-rubout\e[0m
               Kill  the  word  behind  point,  using white space and the slash
               character as the word boundaries.  The killed text is  saved  on
               the kill-ring.
-       d\bde\bel\ble\bet\bte\be-\b-h\bho\bor\bri\biz\bzo\bon\bnt\bta\bal\bl-\b-s\bsp\bpa\bac\bce\be (\b(M\bM-\b-\\b\)\b)
+       \e[1mdelete-horizontal-space (M-\)\e[0m
               Delete all spaces and tabs around point.
-       k\bki\bil\bll\bl-\b-r\bre\beg\bgi\bio\bon\bn
-              Kill  the  text  between  the point and _\bm_\ba_\br_\bk (saved cursor posi-
-              tion).  This text is referred to as the _\br_\be_\bg_\bi_\bo_\bn.
-       c\bco\bop\bpy\by-\b-r\bre\beg\bgi\bio\bon\bn-\b-a\bas\bs-\b-k\bki\bil\bll\bl
+       \e[1mkill-region\e[0m
+              Kill  the  text  between  the point and \e[4mmark\e[24m (saved cursor posi-
+              tion).  This text is referred to as the \e[4mregion\e[24m.
+       \e[1mcopy-region-as-kill\e[0m
               Copy the text in the region to the kill buffer.
-       c\bco\bop\bpy\by-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd
+       \e[1mcopy-backward-word\e[0m
               Copy the word before point to the kill buffer.  The word  bound-
-              aries are the same as b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
-       c\bco\bop\bpy\by-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd
+              aries are the same as \e[1mbackward-word\e[22m.
+       \e[1mcopy-forward-word\e[0m
               Copy  the  word  following  point  to the kill buffer.  The word
-              boundaries are the same as f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
-       y\bya\ban\bnk\bk (\b(C\bC-\b-y\by)\b)
+              boundaries are the same as \e[1mforward-word\e[22m.
+       \e[1myank (C-y)\e[0m
               Yank the top of the kill ring into the buffer at point.
-       y\bya\ban\bnk\bk-\b-p\bpo\bop\bp (\b(M\bM-\b-y\by)\b)
+       \e[1myank-pop (M-y)\e[0m
               Rotate the kill ring, and yank the new top.  Only works  follow-
-              ing y\bya\ban\bnk\bk or y\bya\ban\bnk\bk-\b-p\bpo\bop\bp.
+              ing \e[1myank \e[22mor \e[1myank-pop\e[22m.
 
-   N\bNu\bum\bme\ber\bri\bic\bc A\bAr\brg\bgu\bum\bme\ben\bnt\bts\bs
-       d\bdi\big\bgi\bit\bt-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt (\b(M\bM-\b-0\b0,\b, M\bM-\b-1\b1,\b, .\b..\b..\b.,\b, M\bM-\b--\b-)\b)
+   \e[1mNumeric Arguments\e[0m
+       \e[1mdigit-argument (M-0, M-1, ..., M--)\e[0m
               Add  this digit to the argument already accumulating, or start a
               new argument.  M-- starts a negative argument.
-       u\bun\bni\biv\bve\ber\brs\bsa\bal\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt
+       \e[1muniversal-argument\e[0m
               This is another way to specify an argument.  If this command  is
               followed  by one or more digits, optionally with a leading minus
               sign, those digits define the argument.  If the command is  fol-
-              lowed  by  digits,  executing  u\bun\bni\biv\bve\ber\brs\bsa\bal\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bagain ends the
+              lowed  by  digits,  executing  \e[1muniversal-argument \e[22magain ends the
               numeric argument, but is otherwise ignored.  As a special  case,
               if  this  command is immediately followed by a character that is
               neither a digit or minus sign, the argument count for  the  next
@@ -658,151 +696,151 @@ E\bED\bDI\bIT\bTI\bIN\bNG\bG C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
               ment count four, a second time makes the argument count sixteen,
               and so on.
 
-   C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg
-       c\bco\bom\bmp\bpl\ble\bet\bte\be (\b(T\bTA\bAB\bB)\b)
+   \e[1mCompleting\e[0m
+       \e[1mcomplete (TAB)\e[0m
               Attempt to perform completion on the  text  before  point.   The
-              actual  completion performed is application-specific.  B\bBa\bas\bsh\bh, for
+              actual  completion performed is application-specific.  \e[1mBash\e[22m, for
               instance, attempts completion treating the text  as  a  variable
-              (if  the  text begins with $\b$), username (if the text begins with
-              ~\b~), hostname (if the text begins with @\b@), or command  (including
+              (if  the  text begins with \e[1m$\e[22m), username (if the text begins with
+              \e[1m~\e[22m), hostname (if the text begins with \e[1m@\e[22m), or command  (including
               aliases  and  functions)  in  turn.  If none of these produces a
-              match, filename completion is  attempted.   G\bGd\bdb\bb,  on  the  other
+              match, filename completion is  attempted.   \e[1mGdb\e[22m,  on  the  other
               hand,  allows completion of program functions and variables, and
               only attempts filename completion under certain circumstances.
-       p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(M\bM-\b-?\b?)\b)
+       \e[1mpossible-completions (M-?)\e[0m
               List the possible completions of the text  before  point.   When
               displaying completions, readline sets the number of columns used
-              for display to the value of c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-w\bwi\bid\bdt\bth\bh, the  value
-              of  the  environment  variable  C\bCO\bOL\bLU\bUM\bMN\bNS\bS, or the screen width, in
+              for display to the value of \e[1mcompletion-display-width\e[22m, the  value
+              of  the  environment  variable  \e[1mCOLUMNS\e[22m, or the screen width, in
               that order.
-       i\bin\bns\bse\ber\brt\bt-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(M\bM-\b-*\b*)\b)
+       \e[1minsert-completions (M-*)\e[0m
               Insert all completions of the text before point that would  have
-              been generated by p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs.
-       m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be
-              Similar  to c\bco\bom\bmp\bpl\ble\bet\bte\be, but replaces the word to be completed with
+              been generated by \e[1mpossible-completions\e[22m.
+       \e[1mmenu-complete\e[0m
+              Similar  to \e[1mcomplete\e[22m, but replaces the word to be completed with
               a single match from the list of possible completions.   Repeated
-              execution  of  m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be  steps through the list of possible
+              execution  of  \e[1mmenu-complete  \e[22msteps through the list of possible
               completions, inserting each match in turn.  At the  end  of  the
               list of completions, the bell is rung (subject to the setting of
-              b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be) and the original text is restored.  An argument of _\bn
-              moves  _\bn  positions  forward  in the list of matches; a negative
+              \e[1mbell-style\e[22m) and the original text is restored.  An argument of \e[4mn\e[0m
+              moves  \e[4mn\e[24m  positions  forward  in the list of matches; a negative
               argument may be used to move backward through  the  list.   This
-              command  is  intended  to  be  bound  to  T\bTA\bAB\bB, but is unbound by
+              command  is  intended  to  be  bound  to  \e[1mTAB\e[22m, but is unbound by
               default.
-       m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd
-              Identical to m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be, but moves backward through the  list
-              of  possible  completions,  as if m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\bhad been given a
+       \e[1mmenu-complete-backward\e[0m
+              Identical to \e[1mmenu-complete\e[22m, but moves backward through the  list
+              of  possible  completions,  as if \e[1mmenu-complete \e[22mhad been given a
               negative argument.  This command is unbound by default.
-       d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br-\b-o\bor\br-\b-l\bli\bis\bst\bt
+       \e[1mdelete-char-or-list\e[0m
               Deletes the character under the cursor if not at  the  beginning
-              or  end  of  the  line (like d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br).  If at the end of the
-              line, behaves identically to p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs.
+              or  end  of  the  line (like \e[1mdelete-char\e[22m).  If at the end of the
+              line, behaves identically to \e[1mpossible-completions\e[22m.
 
-   K\bKe\bey\byb\bbo\boa\bar\brd\bd M\bMa\bac\bcr\bro\bos\bs
-       s\bst\bta\bar\brt\bt-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b(C\bC-\b-x\bx (\b()\b)
+   \e[1mKeyboard Macros\e[0m
+       \e[1mstart-kbd-macro (C-x ()\e[0m
               Begin saving the characters  typed  into  the  current  keyboard
               macro.
-       e\ben\bnd\bd-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b(C\bC-\b-x\bx )\b))\b)
+       \e[1mend-kbd-macro (C-x ))\e[0m
               Stop saving the characters typed into the current keyboard macro
               and store the definition.
-       c\bca\bal\bll\bl-\b-l\bla\bas\bst\bt-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b(C\bC-\b-x\bx e\be)\b)
+       \e[1mcall-last-kbd-macro (C-x e)\e[0m
               Re-execute the last keyboard macro defined, by making the  char-
               acters  in  the  macro  appear  as  if  typed  at  the keyboard.
-              p\bpr\bri\bin\bnt\bt-\b-l\bla\bas\bst\bt-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b()\bPrint the last keyboard macro defined in
-              a format suitable for the _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
+              \e[1mprint-last-kbd-macro () \e[22mPrint the last keyboard macro defined in
+              a format suitable for the \e[4minputrc\e[24m file.
 
-   M\bMi\bis\bsc\bce\bel\bll\bla\ban\bne\beo\bou\bus\bs
-       r\bre\be-\b-r\bre\bea\bad\bd-\b-i\bin\bni\bit\bt-\b-f\bfi\bil\ble\be (\b(C\bC-\b-x\bx C\bC-\b-r\br)\b)
-              Read  in  the  contents of the _\bi_\bn_\bp_\bu_\bt_\br_\bc file, and incorporate any
+   \e[1mMiscellaneous\e[0m
+       \e[1mre-read-init-file (C-x C-r)\e[0m
+              Read  in  the  contents of the \e[4minputrc\e[24m file, and incorporate any
               bindings or variable assignments found there.
-       a\bab\bbo\bor\brt\bt (\b(C\bC-\b-g\bg)\b)
+       \e[1mabort (C-g)\e[0m
               Abort the current editing command and ring the  terminal's  bell
-              (subject to the setting of b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be).
-       d\bdo\bo-\b-u\bup\bpp\bpe\ber\brc\bca\bas\bse\be-\b-v\bve\ber\brs\bsi\bio\bon\bn (\b(M\bM-\b-a\ba,\b, M\bM-\b-b\bb,\b, M\bM-\b-_\bx,\b, .\b..\b..\b.)\b)
-              If  the  metafied character _\bx is lowercase, run the command that
+              (subject to the setting of \e[1mbell-style\e[22m).
+       \e[1mdo-uppercase-version (M-a, M-b, M-\e[4m\e[22mx\e[24m\e[1m, ...)\e[0m
+              If  the  metafied character \e[4mx\e[24m is lowercase, run the command that
               is bound to the corresponding uppercase character.
-       p\bpr\bre\bef\bfi\bix\bx-\b-m\bme\bet\bta\ba (\b(E\bES\bSC\bC)\b)
-              Metafy the next character typed.  E\bES\bSC\bC f\bf is equivalent to M\bMe\bet\bta\ba-\b-f\bf.
-       u\bun\bnd\bdo\bo (\b(C\bC-\b-_\b_,\b, C\bC-\b-x\bx C\bC-\b-u\bu)\b)
+       \e[1mprefix-meta (ESC)\e[0m
+              Metafy the next character typed.  \e[1mESC f \e[22mis equivalent to \e[1mMeta-f\e[22m.
+       \e[1mundo (C-_, C-x C-u)\e[0m
               Incremental undo, separately remembered for each line.
-       r\bre\bev\bve\ber\brt\bt-\b-l\bli\bin\bne\be (\b(M\bM-\b-r\br)\b)
-              Undo  all changes made to this line.  This is like executing the
-              u\bun\bnd\bdo\bo command enough times to return  the  line  to  its  initial
+       \e[1mrevert-line (M-r)\e[0m
+              Undo all changes made to this line.  This is like executing  the
+              \e[1mundo  \e[22mcommand  enough  times  to  return the line to its initial
               state.
-       t\bti\bil\bld\bde\be-\b-e\bex\bxp\bpa\ban\bnd\bd (\b(M\bM-\b-&\b&)\b)
+       \e[1mtilde-expand (M-&)\e[0m
               Perform tilde expansion on the current word.
-       s\bse\bet\bt-\b-m\bma\bar\brk\bk (\b(C\bC-\b-@\b@,\b, M\bM-\b-<\b<s\bsp\bpa\bac\bce\be>\b>)\b)
-              Set  the  mark to the point.  If a numeric argument is supplied,
+       \e[1mset-mark (C-@, M-<space>)\e[0m
+              Set the mark to the point.  If a numeric argument  is  supplied,
               the mark is set to that position.
-       e\bex\bxc\bch\bha\ban\bng\bge\be-\b-p\bpo\boi\bin\bnt\bt-\b-a\ban\bnd\bd-\b-m\bma\bar\brk\bk (\b(C\bC-\b-x\bx C\bC-\b-x\bx)\b)
-              Swap the point with the mark.  The current  cursor  position  is
-              set  to the saved position, and the old cursor position is saved
+       \e[1mexchange-point-and-mark (C-x C-x)\e[0m
+              Swap  the  point  with the mark.  The current cursor position is
+              set to the saved position, and the old cursor position is  saved
               as the mark.
-       c\bch\bha\bar\bra\bac\bct\bte\ber\br-\b-s\bse\bea\bar\brc\bch\bh (\b(C\bC-\b-]\b])\b)
+       \e[1mcharacter-search (C-])\e[0m
               A character is read and point is moved to the next occurrence of
-              that  character.   A negative count searches for previous occur-
+              that character.  A negative count searches for  previous  occur-
               rences.
-       c\bch\bha\bar\bra\bac\bct\bte\ber\br-\b-s\bse\bea\bar\brc\bch\bh-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd (\b(M\bM-\b-C\bC-\b-]\b])\b)
-              A character is read and point is moved to  the  previous  occur-
-              rence  of  that character.  A negative count searches for subse-
+       \e[1mcharacter-search-backward (M-C-])\e[0m
+              A  character  is  read and point is moved to the previous occur-
+              rence of that character.  A negative count searches  for  subse-
               quent occurrences.
-       s\bsk\bki\bip\bp-\b-c\bcs\bsi\bi-\b-s\bse\beq\bqu\bue\ben\bnc\bce\be
-              Read enough characters to consume a multi-key sequence  such  as
-              those  defined for keys like Home and End.  Such sequences begin
+       \e[1mskip-csi-sequence\e[0m
+              Read  enough  characters to consume a multi-key sequence such as
+              those defined for keys like Home and End.  Such sequences  begin
               with a Control Sequence Indicator (CSI), usually ESC-[.  If this
-              sequence  is  bound  to "\[", keys producing such sequences will
-              have no effect unless explicitly bound to  a  readline  command,
-              instead  of  inserting stray characters into the editing buffer.
+              sequence is bound to "\[", keys producing  such  sequences  will
+              have  no  effect  unless explicitly bound to a readline command,
+              instead of inserting stray characters into the  editing  buffer.
               This is unbound by default, but usually bound to ESC-[.
-       i\bin\bns\bse\ber\brt\bt-\b-c\bco\bom\bmm\bme\ben\bnt\bt (\b(M\bM-\b-#\b#)\b)
-              Without a numeric argument,  the  value  of  the  readline  c\bco\bom\bm-\b-
-              m\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn  variable is inserted at the beginning of the current
+       \e[1minsert-comment (M-#)\e[0m
+              Without  a  numeric  argument,  the  value  of the readline \e[1mcom-\e[0m
+              \e[1mment-begin \e[22mvariable is inserted at the beginning of the  current
               line.  If a numeric argument is supplied, this command acts as a
-              toggle:   if  the characters at the beginning of the line do not
-              match the value of c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn, the value is inserted,  other-
-              wise the characters in c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bare deleted from the begin-
-              ning of the line.  In either case, the line is accepted as if  a
-              newline  had  been  typed.   The  default value of c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn
-              makes the current line a shell comment.  If a  numeric  argument
-              causes  the  comment  character  to be removed, the line will be
+              toggle: if the characters at the beginning of the  line  do  not
+              match  the value of \e[1mcomment-begin\e[22m, the value is inserted, other-
+              wise the characters in \e[1mcomment-begin \e[22mare deleted from the begin-
+              ning  of the line.  In either case, the line is accepted as if a
+              newline had been typed.   The  default  value  of  \e[1mcomment-begin\e[0m
+              makes  the  current line a shell comment.  If a numeric argument
+              causes the comment character to be removed,  the  line  will  be
               executed by the shell.
-       d\bdu\bum\bmp\bp-\b-f\bfu\bun\bnc\bct\bti\bio\bon\bns\bs
-              Print all of the functions and their key bindings to  the  read-
+       \e[1mdump-functions\e[0m
+              Print  all  of the functions and their key bindings to the read-
               line output stream.  If a numeric argument is supplied, the out-
-              put is formatted in such a way that it can be made  part  of  an
-              _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
-       d\bdu\bum\bmp\bp-\b-v\bva\bar\bri\bia\bab\bbl\ble\bes\bs
-              Print  all  of  the  settable  variables and their values to the
-              readline output stream.  If a numeric argument is supplied,  the
+              put  is  formatted  in such a way that it can be made part of an
+              \e[4minputrc\e[24m file.
+       \e[1mdump-variables\e[0m
+              Print all of the settable variables  and  their  values  to  the
+              readline  output stream.  If a numeric argument is supplied, the
               output is formatted in such a way that it can be made part of an
-              _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
-       d\bdu\bum\bmp\bp-\b-m\bma\bac\bcr\bro\bos\bs
-              Print all of the readline key sequences bound to macros and  the
-              strings  they  output.   If  a numeric argument is supplied, the
+              \e[4minputrc\e[24m file.
+       \e[1mdump-macros\e[0m
+              Print  all of the readline key sequences bound to macros and the
+              strings they output.  If a numeric  argument  is  supplied,  the
               output is formatted in such a way that it can be made part of an
-              _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
-       e\bem\bma\bac\bcs\bs-\b-e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be (\b(C\bC-\b-e\be)\b)
-              When  in  v\bvi\bi command mode, this causes a switch to e\bem\bma\bac\bcs\bediting
+              \e[4minputrc\e[24m file.
+       \e[1memacs-editing-mode (C-e)\e[0m
+              When in \e[1mvi \e[22mcommand mode, this causes a switch to  \e[1memacs  \e[22mediting
               mode.
-       v\bvi\bi-\b-e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be (\b(M\bM-\b-C\bC-\b-j\bj)\b)
-              When in e\bem\bma\bac\bcs\bs editing mode, this causes a switch to  v\bvi\bi  editing
+       \e[1mvi-editing-mode (M-C-j)\e[0m
+              When  in  \e[1memacs \e[22mediting mode, this causes a switch to \e[1mvi \e[22mediting
               mode.
 
-D\bDE\bEF\bFA\bAU\bUL\bLT\bT K\bKE\bEY\bY B\bBI\bIN\bND\bDI\bIN\bNG\bGS\bS
-       The  following is a list of the default emacs and vi bindings.  Charac-
-       ters with the eighth bit set are  written  as  M-<character>,  and  are
-       referred to as _\bm_\be_\bt_\ba_\bf_\bi_\be_\bd characters.  The printable ASCII characters not
-       mentioned in the list of emacs  standard  bindings  are  bound  to  the
-       s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt  function,  which just inserts the given character into the
+\e[1mDEFAULT KEY BINDINGS\e[0m
+       The following is a list of the default emacs and vi bindings.   Charac-
+       ters  with  the  eighth  bit  set are written as M-<character>, and are
+       referred to as \e[4mmetafied\e[24m characters.  The printable ASCII characters not
+       mentioned  in  the  list  of  emacs  standard bindings are bound to the
+       \e[1mself-insert \e[22mfunction, which just inserts the given character  into  the
        input line.  In vi insertion mode, all characters not specifically men-
-       tioned are bound to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt.  Characters assigned to signal genera-
-       tion by _\bs_\bt_\bt_\by(1) or the terminal driver, such as C-Z or C-C, retain that
-       function.   Upper  and  lower case metafied characters are bound to the
-       same function in the emacs mode meta keymap.  The remaining  characters
-       are  unbound,  which  causes  readline to ring the bell (subject to the
-       setting of the b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\bvariable).
-
-   E\bEm\bma\bac\bcs\bs M\bMo\bod\bde\be
+       tioned are bound to \e[1mself-insert\e[22m.  Characters assigned to signal genera-
+       tion by \e[4mstty\e[24m(1) or the terminal driver, such as C-Z or C-C, retain that
+       function.  Upper and lower case metafied characters are  bound  to  the
+       same  function in the emacs mode meta keymap.  The remaining characters
+       are unbound, which causes readline to ring the  bell  (subject  to  the
+       setting of the \e[1mbell-style \e[22mvariable).
+
+   \e[1mEmacs Mode\e[0m
              Emacs Standard bindings
 
              "C-@"  set-mark
@@ -894,7 +932,7 @@ D\bDE\bEF\bFA\bAU\bUL\bLT\bT K\bKE\bEY\bY B\bBI\bIN\bND\bDI\bIN\bNG\bGS\bS
              "C-XC-?"  backward-kill-line
 
 
-   V\bVI\bI M\bMo\bod\bde\be b\bbi\bin\bnd\bdi\bin\bng\bgs\bs
+   \e[1mVI Mode bindings\e[0m
              VI Insert Mode functions
 
              "C-D"  vi-eof-maybe
@@ -996,39 +1034,39 @@ D\bDE\bEF\bFA\bAU\bUL\bLT\bT K\bKE\bEY\bY B\bBI\bIN\bND\bDI\bIN\bNG\bGS\bS
              "|"  vi-column
              "~"  vi-change-case
 
-S\bSE\bEE\bE A\bAL\bLS\bSO\bO
-       _\bT_\bh_\be _\bG_\bn_\bu _\bR_\be_\ba_\bd_\bl_\bi_\bn_\be _\bL_\bi_\bb_\br_\ba_\br_\by, Brian Fox and Chet Ramey
-       _\bT_\bh_\be _\bG_\bn_\bu _\bH_\bi_\bs_\bt_\bo_\br_\by _\bL_\bi_\bb_\br_\ba_\br_\by, Brian Fox and Chet Ramey
-       _\bb_\ba_\bs_\bh(1)
+\e[1mSEE ALSO\e[0m
+       \e[4mThe\e[24m \e[4mGnu\e[24m \e[4mReadline\e[24m \e[4mLibrary\e[24m, Brian Fox and Chet Ramey
+       \e[4mThe\e[24m \e[4mGnu\e[24m \e[4mHistory\e[24m \e[4mLibrary\e[24m, Brian Fox and Chet Ramey
+       \e[4mbash\e[24m(1)
 
-F\bFI\bIL\bLE\bES\bS
-       _\b~_\b/_\b._\bi_\bn_\bp_\bu_\bt_\br_\bc
-              Individual r\bre\bea\bad\bdl\bli\bin\bne\binitialization file
+\e[1mFILES\e[0m
+       \e[4m~/.inputrc\e[0m
+              Individual \e[1mreadline \e[22minitialization file
 
-A\bAU\bUT\bTH\bHO\bOR\bRS\bS
+\e[1mAUTHORS\e[0m
        Brian Fox, Free Software Foundation
        bfox@gnu.org
 
        Chet Ramey, Case Western Reserve University
        chet.ramey@case.edu
 
-B\bBU\bUG\bG R\bRE\bEP\bPO\bOR\bRT\bTS\bS
-       If you find a bug in r\bre\bea\bad\bdl\bli\bin\bne\be,\b, you should report it.   But  first,  you
-       should  make  sure  that it really is a bug, and that it appears in the
-       latest version of the r\bre\bea\bad\bdl\bli\bin\bne\blibrary that you have.
+\e[1mBUG REPORTS\e[0m
+       If  you  find  a bug in \e[1mreadline, \e[22myou should report it.  But first, you
+       should make sure that it really is a bug, and that it  appears  in  the
+       latest version of the \e[1mreadline \e[22mlibrary that you have.
 
-       Once you have determined that a bug actually exists, mail a bug  report
-       to  _\bb_\bu_\bg_\b-_\br_\be_\ba_\bd_\bl_\bi_\bn_\be@_\bg_\bn_\bu_\b._\bo_\br_\bg.   If  you have a fix, you are welcome to mail
-       that as well!  Suggestions  and  `philosophical'  bug  reports  may  be
-       mailed  to  _\bb_\bu_\bg_\b-_\br_\be_\ba_\bd_\bl_\bi_\bn_\be@_\bg_\bn_\bu_\b._\bo_\br_\bg  or  posted  to  the  Usenet newsgroup
-       g\bgn\bnu\bu.\b.b\bba\bas\bsh\bh.\b.b\bbu\bug\bg.
+       Once  you have determined that a bug actually exists, mail a bug report
+       to \e[4mbug-readline\e[24m@\e[4mgnu.org\e[24m.  If you have a fix, you are  welcome  to  mail
+       that  as  well!   Suggestions  and  `philosophical'  bug reports may be
+       mailed to  \e[4mbug-readline\e[24m@\e[4mgnu.org\e[24m  or  posted  to  the  Usenet  newsgroup
+       \e[1mgnu.bash.bug\e[22m.
 
        Comments and bug reports concerning this manual page should be directed
-       to _\bc_\bh_\be_\bt_\b._\br_\ba_\bm_\be_\by_\b@_\bc_\ba_\bs_\be_\b._\be_\bd_\bu.
+       to \e[4mchet.ramey@case.edu\e[24m.
 
-B\bBU\bUG\bGS\bS
+\e[1mBUGS\e[0m
        It's too big and too slow.
 
 
 
-GNU Readline 6.3                2014 January 6                     READLINE(3)
+GNU Readline 6.3               2014 November 19                    READLINE(3)
index 5ac7b109a45cb9391127d0de5e4513cbe40ec5af..765c8fae9501960bc75b0ce935f24633ff3dfba3 100644 (file)
@@ -6,9 +6,9 @@
 .\"    Case Western Reserve University
 .\"    chet.ramey@case.edu
 .\"
-.\"    Last Change: Mon Jan  6 16:34:55 EST 2014
+.\"    Last Change: Wed Nov 19 18:32:58 EST 2014
 .\"
-.TH READLINE 3 "2014 January 6" "GNU Readline 6.3"
+.TH READLINE 3 "2014 November 19" "GNU Readline 6.3"
 .\"
 .\" File Name macro.  This used to be `.PN', for Path Name,
 .\" but Sun doesn't seem to like that very much.
@@ -34,8 +34,8 @@ readline \- get a line from a user with editing
 \fBreadline\fP (\fIconst char *prompt\fP);
 .fi
 .SH COPYRIGHT
-.if n Readline is Copyright (C) 1989\-2011 Free Software Foundation,  Inc.
-.if t Readline is Copyright \(co 1989\-2011 Free Software Foundation, Inc.
+.if n Readline is Copyright (C) 1989\-2014 Free Software Foundation,  Inc.
+.if t Readline is Copyright \(co 1989\-2014 Free Software Foundation, Inc.
 .SH DESCRIPTION
 .LP
 .B readline
@@ -78,10 +78,10 @@ treated as a newline.
 .LP
 An Emacs-style notation is used to denote
 keystrokes.  Control keys are denoted by C\-\fIkey\fR, e.g., C\-n
-means Control\-N.  Similarly, 
+means Control\-N.  Similarly,
 .I meta
 keys are denoted by M\-\fIkey\fR, so M\-x means Meta\-X.  (On keyboards
-without a 
+without a
 .I meta
 key, M\-\fIx\fP means ESC \fIx\fP, i.e., press the Escape key
 then the
@@ -98,14 +98,15 @@ Readline commands may be given numeric
 which normally act as a repeat count.  Sometimes, however, it is the
 sign of the argument that is significant.  Passing a negative argument
 to a command that acts in the forward direction (e.g., \fBkill\-line\fP)
-causes that command to act in a backward direction.  Commands whose
-behavior with arguments deviates from this are noted.
+causes that command to act in a backward direction.
+Commands whose behavior with arguments deviates from this are noted
+below.
 .PP
 When a command is described as \fIkilling\fP text, the text
 deleted is saved for possible future retrieval
 (\fIyanking\fP).  The killed text is saved in a
 \fIkill ring\fP.  Consecutive kills cause the text to be
-accumulated into one unit, which can be yanked all at once. 
+accumulated into one unit, which can be yanked all at once.
 Commands which do not kill text separate the chunks of text
 on the kill ring.
 .SH INITIALIZATION FILE
@@ -138,7 +139,7 @@ or
 C\-Meta\-u: universal\-argument
 .RE
 .sp
-into the 
+into the
 .I inputrc
 would make M\-C\-u execute the readline command
 .IR universal\-argument .
@@ -167,7 +168,7 @@ The syntax for controlling key bindings in the
 .I inputrc
 file is simple.  All that is required is the name of the
 command or the text of a macro and a key sequence to which
-it should be bound. The name may be specified in one of two ways:
+it should be bound.  The name may be specified in one of two ways:
 as a symbolic key name, possibly with \fIMeta\-\fP or \fIControl\-\fP
 prefixes, or as a key sequence.
 The name and key sequence are separated by a colon.  There can be no
@@ -225,7 +226,7 @@ is again bound to the function
 .I "C-x C-r"
 is bound to the function
 .BR re\-read\-init\-file ,
-and 
+and
 .I "ESC [ 1 1 ~"
 is bound to insert the text
 .if t \f(CWFunction Key 1\fP.
@@ -347,13 +348,23 @@ If set to \fBnone\fP, readline never rings the bell.  If set to
 If set to \fBaudible\fP, readline attempts to ring the terminal's bell.
 .TP
 .B bind\-tty\-special\-chars (On)
-If set to \fBOn\fP, readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their readline
-equivalents.
+If set to \fBOn\fP (the default), readline attempts to bind the control
+characters   treated specially by the kernel's terminal driver to their
+readline equivalents.
+.TP
+.B blink\-matching\-paren (Off)
+If set to \fBOn\fP, readline attempts to briefly move the cursor to an
+opening parenthesis when a closing parenthesis is inserted.
+.TP
+.B colored\-completion\-prefix (Off)
+If set to \fBOn\fP, when listing completions, readline displays the
+common prefix of the set of possible completions using a different color.
+The color definitions are taken from the value of the \fBLS_COLORS\fP
+environment variable.
 .TP
 .B colored\-stats (Off)
 If set to \fBOn\fP, readline displays possible completions using different
-colors to indicate their file type.     
+colors to indicate their file type.
 The color definitions are taken from the value of the \fBLS_COLORS\fP
 environment variable.
 .TP
@@ -425,6 +436,13 @@ When set to \fBOn\fP, on operating systems that indicate they support it,
 readline echoes a character corresponding to a signal generated from the
 keyboard.
 .TP
+.B enable\-bracketed\-paste (Off)
+When set to \fBOn\fP, readline will configure the terminal in a way
+that will enable it to insert each paste into the editing buffer as a
+single string of characters, instead of treating each character as if
+it had been read from the keyboard.  This can prevent pasted characters
+from being interpreted as editing commands.
+.TP
 .B enable\-keypad (Off)
 When set to \fBOn\fP, readline will try to enable the application
 keypad when it is called.  Some systems need this to enable the
@@ -444,7 +462,7 @@ If set to \fBOn\fP, the history code attempts to place point at the
 same location on each history line retrieved with \fBprevious-history\fP 
 or \fBnext-history\fP.
 .TP
-.B history\-size (0)
+.B history\-size (unset)
 Set the maximum number of history entries saved in the history list.
 If set to zero, any existing history entries are deleted and no new entries
 are saved.
@@ -482,6 +500,15 @@ The value of
 .B editing\-mode
 also affects the default keymap.
 .TP
+.B emacs\-mode\-string (@)
+This string is displayed immediately before the last line of the primary
+prompt when emacs editing mode is active.  The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the \e1 and \e2 escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control 
+sequence into the mode string.
+.TP
 .B keyseq\-timeout (500)
 Specifies the duration \fIreadline\fP will wait for a character when reading an
 ambiguous key sequence (one that can form a complete key sequence using
@@ -510,7 +537,7 @@ have a slash appended (subject to the value of
 .TP
 .B match\-hidden\-files (On)
 This variable, when set to \fBOn\fP, causes readline to match files whose 
-names begin with a `.' (hidden files) when performing filename     
+names begin with a `.' (hidden files) when performing filename
 completion.
 If set to \fBOff\fP, the leading `.' must be
 supplied by the user in the filename to be completed.
@@ -558,8 +585,8 @@ of ringing the bell.
 .TP
 .B show\-mode\-in\-prompt (Off)
 If set to \fBOn\fP, add a character to the beginning of the prompt
-indicating the editing mode: emacs (@), vi command (:) or vi      
-insertion (+).
+indicating the editing mode: emacs, vi command, or vi insertion.
+The mode strings are user-settable.
 .TP
 .B skip\-completed\-text (Off)
 If set to \fBOn\fP, this alters the default completion behavior when
@@ -569,6 +596,26 @@ does not insert characters from the completion that match characters
 after point in the word being completed, so portions of the word
 following the cursor are not duplicated.
 .TP
+.B vi\-cmd\-mode\-string ((cmd))
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in command mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the \e1 and \e2 escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+.TP
+.B vi\-ins\-mode\-string ((ins))
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in insertion mode.  
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and  
+backslash escape sequences is available.
+Use the \e1 and \e2 escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control 
+sequence into the mode string.
+.TP
 .B visible\-stats (Off)
 If set to \fBOn\fP, a character denoting a file's type as reported  
 by \fIstat\fP(2) is appended to the filename when listing possible
@@ -581,7 +628,7 @@ compilation features of the C preprocessor which allows key
 bindings and variable settings to be performed as the result
 of tests.  There are four parser directives used.
 .IP \fB$if\fP
-The 
+The
 .B $if
 construct allows bindings to be made based on the
 editing mode, the terminal being used, or the application using
@@ -887,7 +934,7 @@ switches to overwrite mode.  With an explicit non-positive numeric
 argument, switches to insert mode.  This command affects only
 \fBemacs\fP mode; \fBvi\fP mode does overwrite differently.
 Each call to \fIreadline()\fP starts in insert mode.
-In overwrite mode, characters bound to \fBself\-insert\fP replace   
+In overwrite mode, characters bound to \fBself\-insert\fP replace
 the text at point rather than pushing the text to the right.
 Characters bound to \fBbackward\-delete\-char\fP replace the character
 before point with a space.  By default, this command is unbound.
@@ -910,7 +957,7 @@ The killed text is saved on the kill-ring.
 .B kill\-whole\-line
 Kill all characters on the current line, no matter where point is.
 .TP
-.B kill\-word  (M\-d)
+.B kill\-word (M\-d)
 Kill from point the end of the current word, or if between
 words, to the end of the next word.  Word boundaries are the same as
 those used by \fBforward\-word\fP.
@@ -1117,7 +1164,7 @@ but usually bound to ESC\-[.
 Without a numeric argument, the value of the readline
 .B comment\-begin
 variable is inserted at the beginning of the current line.
-If a numeric argument is supplied, this command acts as a toggle:  if
+If a numeric argument is supplied, this command acts as a toggle: if
 the characters at the beginning of the line do not match the value   
 of \fBcomment\-begin\fP, the value is inserted, otherwise             
 the characters in \fBcomment-begin\fP are deleted from the beginning of
index f83d2b8be16429c22869eeb86ade640157750d5b..96be978398cbb0c4c4834c6c10f0724cca91f065 100644 (file)
Binary files a/doc/readline.dvi and b/doc/readline.dvi differ
index 9b7dd842764c81ad496c38a2794361cad964ee90..09aabc518e3e63d6cb3deae8489afc8a2bf039d8 100644 (file)
@@ -1,6 +1,6 @@
 <HTML>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 11  2014 by texi2html 1.64 -->
+<!-- Created on July, 1  2015 by texi2html 1.64 -->
 <!-- 
 Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
             Karl Berry  <karl@freefriends.org>
@@ -592,13 +592,29 @@ the terminal's bell.
 
 <DT><CODE>bind-tty-special-chars</CODE>
 <DD><A NAME="IDX6"></A>
-If set to <SAMP>`on'</SAMP>, Readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their Readline
-equivalents.
+If set to <SAMP>`on'</SAMP> (the default), Readline attempts to bind the control
+characters   treated specially by the kernel's terminal driver to their
+Readline equivalents.
 <P>
 
-<DT><CODE>colored-stats</CODE>
+<DT><CODE>blink-matching-paren</CODE>
 <DD><A NAME="IDX7"></A>
+If set to <SAMP>`on'</SAMP>, Readline attempts to briefly move the cursor to an
+opening parenthesis when a closing parenthesis is inserted.  The default
+is <SAMP>`off'</SAMP>.
+<P>
+
+<DT><CODE>colored-completion-prefix</CODE>
+<DD><A NAME="IDX8"></A>
+If set to <SAMP>`on'</SAMP>, when listing completions, Readline displays the
+common prefix of the set of possible completions using a different color.
+The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
+environment variable.
+The default is <SAMP>`off'</SAMP>.
+<P>
+
+<DT><CODE>colored-stats</CODE>
+<DD><A NAME="IDX9"></A>
 If set to <SAMP>`on'</SAMP>, Readline displays possible completions using different
 colors to indicate their file type.
 The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
@@ -607,14 +623,14 @@ The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>comment-begin</CODE>
-<DD><A NAME="IDX8"></A>
+<DD><A NAME="IDX10"></A>
 The string to insert at the beginning of the line when the
 <CODE>insert-comment</CODE> command is executed.  The default value
 is <CODE>"#"</CODE>.
 <P>
 
 <DT><CODE>completion-display-width</CODE>
-<DD><A NAME="IDX9"></A>
+<DD><A NAME="IDX11"></A>
 The number of screen columns used to display possible matches
 when performing completion.
 The value is ignored if it is less than 0 or greater than the terminal
@@ -624,21 +640,21 @@ The default value is -1.
 <P>
 
 <DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX10"></A>
+<DD><A NAME="IDX12"></A>
 If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
 in a case-insensitive fashion.
 The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>completion-map-case</CODE>
-<DD><A NAME="IDX11"></A>
+<DD><A NAME="IDX13"></A>
 If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
 treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
 performing case-insensitive filename matching and completion.
 <P>
 
 <DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX12"></A>
+<DD><A NAME="IDX14"></A>
 The length in characters of the common prefix of a list of possible
 completions that is displayed without modification.  When set to a
 value greater than zero, common prefixes longer than this value are
@@ -646,7 +662,7 @@ replaced with an ellipsis when displaying possible completions.
 <P>
 
 <DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX13"></A>
+<DD><A NAME="IDX15"></A>
 The number of possible completions that determines when the user is
 asked whether the list of possibilities should be displayed.
 If the number of possible completions is greater than this value,
@@ -658,7 +674,7 @@ The default limit is <CODE>100</CODE>.
 <P>
 
 <DT><CODE>convert-meta</CODE>
-<DD><A NAME="IDX14"></A>
+<DD><A NAME="IDX16"></A>
 If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
 eighth bit set to an ASCII key sequence by stripping the eighth
 bit and prefixing an <KBD>ESC</KBD> character, converting them to a
@@ -666,28 +682,50 @@ meta-prefixed key sequence.  The default value is <SAMP>`on'</SAMP>.
 <P>
 
 <DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX15"></A>
+<DD><A NAME="IDX17"></A>
 If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
 Completion  characters will be inserted into the line as if they had
 been mapped to <CODE>self-insert</CODE>.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>editing-mode</CODE>
-<DD><A NAME="IDX16"></A>
+<DD><A NAME="IDX18"></A>
 The <CODE>editing-mode</CODE> variable controls which default set of
 key bindings is used.  By default, Readline starts up in Emacs editing
 mode, where the keystrokes are most similar to Emacs.  This variable can be
 set to either <SAMP>`emacs'</SAMP> or <SAMP>`vi'</SAMP>.
 <P>
 
+<DT><CODE>emacs-mode-string</CODE>
+<DD><A NAME="IDX19"></A>
+This string is displayed immediately before the last line of the primary
+prompt when emacs editing mode is active.  The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the <SAMP>`\1'</SAMP> and <SAMP>`\2'</SAMP> escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is <SAMP>`@'</SAMP>.
+<P>
+
 <DT><CODE>echo-control-characters</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
+<DD><A NAME="IDX20"></A>
+When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
 readline echoes a character corresponding to a signal generated from the
 keyboard.  The default is <SAMP>`on'</SAMP>.
 <P>
 
+<DT><CODE>enable-bracketed-paste</CODE>
+<DD><A NAME="IDX21"></A>
+When set to <SAMP>`On'</SAMP>, Readline will configure the terminal in a way
+that will enable it to insert each paste into the editing buffer as a
+single string of characters, instead of treating each character as if
+it had been read from the keyboard.  This can prevent pasted characters
+from being interpreted as editing commands.  The default is <SAMP>`off'</SAMP>.
+<P>
+
 <DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX17"></A>
+<DD><A NAME="IDX22"></A>
 When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
 keypad when it is called.  Some systems need this to enable the
 arrow keys.  The default is <SAMP>`off'</SAMP>.
@@ -701,13 +739,13 @@ The default is <SAMP>`on'</SAMP>.
 <P>
 
 <DT><CODE>expand-tilde</CODE>
-<DD><A NAME="IDX18"></A>
+<DD><A NAME="IDX23"></A>
 If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
 attempts word completion.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>history-preserve-point</CODE>
-<DD><A NAME="IDX19"></A>
+<DD><A NAME="IDX24"></A>
 If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
 current cursor position) at the
 same location on each history line retrieved with <CODE>previous-history</CODE>
@@ -715,7 +753,7 @@ or <CODE>next-history</CODE>.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>history-size</CODE>
-<DD><A NAME="IDX20"></A>
+<DD><A NAME="IDX25"></A>
 Set the maximum number of history entries saved in the history list.
 If set to zero, any existing history entries are deleted and no new entries
 are saved.
@@ -725,7 +763,7 @@ By default, the number of history entries is not limited.
 <P>
 
 <DT><CODE>horizontal-scroll-mode</CODE>
-<DD><A NAME="IDX21"></A>
+<DD><A NAME="IDX26"></A>
 This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>.  Setting it
 to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
 horizontally on a single screen line when they are longer than the width
@@ -734,8 +772,8 @@ this variable is set to <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX22"></A>
-<A NAME="IDX23"></A>
+<DD><A NAME="IDX27"></A>
+<A NAME="IDX28"></A>
 If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
 will not clear the eighth bit in the characters it reads),
 regardless of what the terminal claims it can support.  The
@@ -744,7 +782,7 @@ synonym for this variable.
 <P>
 
 <DT><CODE>isearch-terminators</CODE>
-<DD><A NAME="IDX24"></A>
+<DD><A NAME="IDX29"></A>
 The string of characters that should terminate an incremental search without
 subsequently executing the character as a command (see section <A HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A>).
 If this variable has not been given a value, the characters <KBD>ESC</KBD> and
@@ -752,7 +790,7 @@ If this variable has not been given a value, the characters <KBD>ESC</KBD> and
 <P>
 
 <DT><CODE>keymap</CODE>
-<DD><A NAME="IDX25"></A>
+<DD><A NAME="IDX30"></A>
 Sets Readline's idea of the current keymap for key binding commands.
 Acceptable <CODE>keymap</CODE> names are
 <CODE>emacs</CODE>,
@@ -792,14 +830,14 @@ appended.  The default is <SAMP>`on'</SAMP>.
 <P>
 
 <DT><CODE>mark-modified-lines</CODE>
-<DD><A NAME="IDX26"></A>
+<DD><A NAME="IDX31"></A>
 This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
 asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
 This variable is <SAMP>`off'</SAMP> by default.
 <P>
 
 <DT><CODE>mark-symlinked-directories</CODE>
-<DD><A NAME="IDX27"></A>
+<DD><A NAME="IDX32"></A>
 If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
 to directories have a slash appended (subject to the value of
 <CODE>mark-directories</CODE>).
@@ -807,7 +845,7 @@ The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>match-hidden-files</CODE>
-<DD><A NAME="IDX28"></A>
+<DD><A NAME="IDX33"></A>
 This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
 names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
 completion.
@@ -817,21 +855,21 @@ This variable is <SAMP>`on'</SAMP> by default.
 <P>
 
 <DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX29"></A>
+<DD><A NAME="IDX34"></A>
 If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
 list of possible completions (which may be empty) before cycling through
 the list.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>output-meta</CODE>
-<DD><A NAME="IDX30"></A>
+<DD><A NAME="IDX35"></A>
 If set to <SAMP>`on'</SAMP>, Readline will display characters with the
 eighth bit set directly rather than as a meta-prefixed escape
 sequence.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX31"></A>
+<DD><A NAME="IDX36"></A>
 If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
 to display a screenful of possible completions at a time.
 This variable is <SAMP>`on'</SAMP> by default.
@@ -844,7 +882,7 @@ The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>revert-all-at-newline</CODE>
-<DD><A NAME="IDX32"></A>
+<DD><A NAME="IDX37"></A>
 If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
 before returning when <CODE>accept-line</CODE> is executed.  By default,
 history lines may be modified and retain individual undo lists across
@@ -852,7 +890,7 @@ calls to <CODE>readline</CODE>.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX33"></A>
+<DD><A NAME="IDX38"></A>
 This alters the default behavior of the completion functions.  If
 set to <SAMP>`on'</SAMP>, 
 words which have more than one possible completion cause the
@@ -861,7 +899,7 @@ The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>show-all-if-unmodified</CODE>
-<DD><A NAME="IDX34"></A>
+<DD><A NAME="IDX39"></A>
 This alters the default behavior of the completion functions in
 a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
 If set to <SAMP>`on'</SAMP>, 
@@ -873,15 +911,15 @@ The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>show-mode-in-prompt</CODE>
-<DD><A NAME="IDX35"></A>
+<DD><A NAME="IDX40"></A>
 If set to <SAMP>`on'</SAMP>, add a character to the beginning of the prompt
-indicating the editing mode: emacs (<SAMP>`@'</SAMP>), vi command (<SAMP>`:'</SAMP>),
-or vi insertion (<SAMP>`+'</SAMP>).
+indicating the editing mode: emacs, vi command, or vi insertion.
+The mode strings are user-settable.
 The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>skip-completed-text</CODE>
-<DD><A NAME="IDX36"></A>
+<DD><A NAME="IDX41"></A>
 If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
 inserting a single match into the line.  It's only active when
 performing completion in the middle of a word.  If enabled, readline
@@ -895,8 +933,34 @@ completion.
 The default value is <SAMP>`off'</SAMP>.
 <P>
 
+<DT><CODE>vi-cmd-mode-string</CODE>
+<DD><A NAME="IDX42"></A>
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in command mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the <SAMP>`\1'</SAMP> and <SAMP>`\2'</SAMP> escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is <SAMP>`(cmd)'</SAMP>.
+<P>
+
+<DT><CODE>vi-ins-mode-string</CODE>
+<DD><A NAME="IDX43"></A>
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in insertion mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the <SAMP>`\1'</SAMP> and <SAMP>`\2'</SAMP> escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is <SAMP>`(ins)'</SAMP>.
+<P>
+
 <DT><CODE>visible-stats</CODE>
-<DD><A NAME="IDX37"></A>
+<DD><A NAME="IDX44"></A>
 If set to <SAMP>`on'</SAMP>, a character denoting a file's type
 is appended to the filename when listing possible
 completions.  The default is <SAMP>`off'</SAMP>.
@@ -1312,54 +1376,54 @@ The text between the point and mark is referred to as the <EM>region</EM>.
 <H3> 1.4.1 Commands For Moving </H3>
 <!--docid::SEC14::-->
 <DL COMPACT>
-<A NAME="IDX38"></A>
+<A NAME="IDX45"></A>
 <DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX39"></A>
+<DD><A NAME="IDX46"></A>
 Move to the start of the current line.
 <P>
 
-<A NAME="IDX40"></A>
+<A NAME="IDX47"></A>
 <DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX41"></A>
+<DD><A NAME="IDX48"></A>
 Move to the end of the line.
 <P>
 
-<A NAME="IDX42"></A>
+<A NAME="IDX49"></A>
 <DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX43"></A>
+<DD><A NAME="IDX50"></A>
 Move forward a character.
 <P>
 
-<A NAME="IDX44"></A>
+<A NAME="IDX51"></A>
 <DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX45"></A>
+<DD><A NAME="IDX52"></A>
 Move back a character.
 <P>
 
-<A NAME="IDX46"></A>
+<A NAME="IDX53"></A>
 <DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX47"></A>
+<DD><A NAME="IDX54"></A>
 Move forward to the end of the next word.
 Words are composed of letters and digits.
 <P>
 
-<A NAME="IDX48"></A>
+<A NAME="IDX55"></A>
 <DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX49"></A>
+<DD><A NAME="IDX56"></A>
 Move back to the start of the current or previous word.
 Words are composed of letters and digits.
 <P>
 
-<A NAME="IDX50"></A>
+<A NAME="IDX57"></A>
 <DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX51"></A>
+<DD><A NAME="IDX58"></A>
 Clear the screen and redraw the current line,
 leaving the current line at the top of the screen.
 <P>
 
-<A NAME="IDX52"></A>
+<A NAME="IDX59"></A>
 <DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX53"></A>
+<DD><A NAME="IDX60"></A>
 Refresh the current line.  By default, this is unbound.
 <P>
 
@@ -1385,9 +1449,9 @@ Refresh the current line.  By default, this is unbound.
 <P>
 
 <DL COMPACT>
-<A NAME="IDX54"></A>
+<A NAME="IDX61"></A>
 <DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX55"></A>
+<DD><A NAME="IDX62"></A>
 Accept the line regardless of where the cursor is.
 If this line is
 non-empty, it may be added to the history list for future recall with
@@ -1396,64 +1460,66 @@ If this line is a modified history line, the history line is restored
 to its original state.
 <P>
 
-<A NAME="IDX56"></A>
+<A NAME="IDX63"></A>
 <DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX57"></A>
+<DD><A NAME="IDX64"></A>
 Move `back' through the history list, fetching the previous command.
 <P>
 
-<A NAME="IDX58"></A>
+<A NAME="IDX65"></A>
 <DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX59"></A>
+<DD><A NAME="IDX66"></A>
 Move `forward' through the history list, fetching the next command.
 <P>
 
-<A NAME="IDX60"></A>
+<A NAME="IDX67"></A>
 <DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX61"></A>
+<DD><A NAME="IDX68"></A>
 Move to the first line in the history.
 <P>
 
-<A NAME="IDX62"></A>
+<A NAME="IDX69"></A>
 <DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX63"></A>
+<DD><A NAME="IDX70"></A>
 Move to the end of the input history, i.e., the line currently
 being entered.
 <P>
 
-<A NAME="IDX64"></A>
+<A NAME="IDX71"></A>
 <DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX65"></A>
+<DD><A NAME="IDX72"></A>
 Search backward starting at the current line and moving `up' through
 the history as necessary.  This is an incremental search.
 <P>
 
-<A NAME="IDX66"></A>
+<A NAME="IDX73"></A>
 <DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX67"></A>
+<DD><A NAME="IDX74"></A>
 Search forward starting at the current line and moving `down' through
-the the history as necessary.  This is an incremental search.
+the history as necessary.  This is an incremental search.
 <P>
 
-<A NAME="IDX68"></A>
+<A NAME="IDX75"></A>
 <DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX69"></A>
+<DD><A NAME="IDX76"></A>
 Search backward starting at the current line and moving `up'
 through the history as necessary using a non-incremental search
 for a string supplied by the user.
+The search string may match anywhere in a history line.
 <P>
 
-<A NAME="IDX70"></A>
+<A NAME="IDX77"></A>
 <DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX71"></A>
+<DD><A NAME="IDX78"></A>
 Search forward starting at the current line and moving `down'
-through the the history as necessary using a non-incremental search
+through the history as necessary using a non-incremental search
 for a string supplied by the user.
+The search string may match anywhere in a history line.
 <P>
 
-<A NAME="IDX72"></A>
+<A NAME="IDX79"></A>
 <DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX73"></A>
+<DD><A NAME="IDX80"></A>
 Search forward through the history for the string of characters
 between the start of the current line and the point.
 The search string must match at the beginning of a history line.
@@ -1461,9 +1527,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX74"></A>
+<A NAME="IDX81"></A>
 <DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX75"></A>
+<DD><A NAME="IDX82"></A>
 Search backward through the history for the string of characters
 between the start of the current line and the point.
 The search string must match at the beginning of a history line.
@@ -1471,9 +1537,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX76"></A>
+<A NAME="IDX83"></A>
 <DT><CODE>history-substr-search-forward ()</CODE>
-<DD><A NAME="IDX77"></A>
+<DD><A NAME="IDX84"></A>
 Search forward through the history for the string of characters
 between the start of the current line and the point.
 The search string may match anywhere in a history line.
@@ -1481,9 +1547,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX78"></A>
+<A NAME="IDX85"></A>
 <DT><CODE>history-substr-search-backward ()</CODE>
-<DD><A NAME="IDX79"></A>
+<DD><A NAME="IDX86"></A>
 Search backward through the history for the string of characters
 between the start of the current line and the point.
 The search string may match anywhere in a history line.
@@ -1491,9 +1557,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX80"></A>
+<A NAME="IDX87"></A>
 <DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX81"></A>
+<DD><A NAME="IDX88"></A>
 Insert the first argument to the previous command (usually
 the second word on the previous line) at point.
 With an argument <VAR>n</VAR>,
@@ -1504,9 +1570,9 @@ Once the argument <VAR>n</VAR> is computed, the argument is extracted
 as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
 <P>
 
-<A NAME="IDX82"></A>
+<A NAME="IDX89"></A>
 <DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX83"></A>
+<DD><A NAME="IDX90"></A>
 Insert last argument to the previous command (the last word of the
 previous history entry).
 With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
@@ -1543,60 +1609,71 @@ as if the <SAMP>`!$'</SAMP> history expansion had been specified.
 
 <DL COMPACT>
 
-<A NAME="IDX84"></A>
+<A NAME="IDX91"></A>
 <DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
-<DD><A NAME="IDX85"></A>
+<DD><A NAME="IDX92"></A>
 The character indicating end-of-file as set, for example, by
 <CODE>stty</CODE>.  If this character is read when there are no characters
 on the line, and point is at the beginning of the line, Readline
 interprets it as the end of input and returns EOF.
 <P>
 
-<A NAME="IDX86"></A>
+<A NAME="IDX93"></A>
 <DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX87"></A>
+<DD><A NAME="IDX94"></A>
 Delete the character at point.  If this function is bound to the
 same character as the tty EOF character, as <KBD>C-d</KBD>
 commonly is, see above for the effects.
 <P>
 
-<A NAME="IDX88"></A>
+<A NAME="IDX95"></A>
 <DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX89"></A>
+<DD><A NAME="IDX96"></A>
 Delete the character behind the cursor.  A numeric argument means
 to kill the characters instead of deleting them.
 <P>
 
-<A NAME="IDX90"></A>
+<A NAME="IDX97"></A>
 <DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX91"></A>
+<DD><A NAME="IDX98"></A>
 Delete the character under the cursor, unless the cursor is at the
 end of the line, in which case the character behind the cursor is
 deleted.  By default, this is not bound to a key.
 <P>
 
-<A NAME="IDX92"></A>
+<A NAME="IDX99"></A>
 <DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX93"></A>
+<DD><A NAME="IDX100"></A>
 Add the next character typed to the line verbatim.  This is
 how to insert key sequences like <KBD>C-q</KBD>, for example.
 <P>
 
-<A NAME="IDX94"></A>
+<A NAME="IDX101"></A>
 <DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX95"></A>
+<DD><A NAME="IDX102"></A>
 Insert a tab character.
 <P>
 
-<A NAME="IDX96"></A>
+<A NAME="IDX103"></A>
 <DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX97"></A>
+<DD><A NAME="IDX104"></A>
 Insert yourself.
 <P>
 
-<A NAME="IDX98"></A>
+<A NAME="IDX105"></A>
+<DT><CODE>bracketed-paste-begin ()</CODE>
+<DD><A NAME="IDX106"></A>
+This function is intended to be bound to the "bracketed paste" escape
+sequence sent by some terminals, and such a binding is assigned by default.
+It allows Readline to insert the pasted text as a single unit without treating
+each character as if it had been read from the keyboard.  The characters
+are inserted as if each one was bound to <CODE>self-insert</CODE>) instead of
+executing any editing commands.
+<P>
+
+<A NAME="IDX107"></A>
 <DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX99"></A>
+<DD><A NAME="IDX108"></A>
 Drag the character before the cursor forward over
 the character at the cursor, moving the
 cursor forward as well.  If the insertion point
@@ -1605,39 +1682,39 @@ transposes the last two characters of the line.
 Negative arguments have no effect.
 <P>
 
-<A NAME="IDX100"></A>
+<A NAME="IDX109"></A>
 <DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX101"></A>
+<DD><A NAME="IDX110"></A>
 Drag the word before point past the word after point,
 moving point past that word as well.
 If the insertion point is at the end of the line, this transposes
 the last two words on the line.
 <P>
 
-<A NAME="IDX102"></A>
+<A NAME="IDX111"></A>
 <DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX103"></A>
+<DD><A NAME="IDX112"></A>
 Uppercase the current (or following) word.  With a negative argument,
 uppercase the previous word, but do not move the cursor.
 <P>
 
-<A NAME="IDX104"></A>
+<A NAME="IDX113"></A>
 <DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX105"></A>
+<DD><A NAME="IDX114"></A>
 Lowercase the current (or following) word.  With a negative argument,
 lowercase the previous word, but do not move the cursor.
 <P>
 
-<A NAME="IDX106"></A>
+<A NAME="IDX115"></A>
 <DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX107"></A>
+<DD><A NAME="IDX116"></A>
 Capitalize the current (or following) word.  With a negative argument,
 capitalize the previous word, but do not move the cursor.
 <P>
 
-<A NAME="IDX108"></A>
+<A NAME="IDX117"></A>
 <DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX109"></A>
+<DD><A NAME="IDX118"></A>
 Toggle overwrite mode.  With an explicit positive numeric argument,
 switches to overwrite mode.  With an explicit non-positive numeric
 argument, switches to insert mode.  This command affects only
@@ -1677,106 +1754,106 @@ By default, this command is unbound.
 
 <DL COMPACT>
 
-<A NAME="IDX110"></A>
+<A NAME="IDX119"></A>
 <DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX111"></A>
+<DD><A NAME="IDX120"></A>
 Kill the text from point to the end of the line.
 <P>
 
-<A NAME="IDX112"></A>
+<A NAME="IDX121"></A>
 <DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX113"></A>
-Kill backward to the beginning of the line.
+<DD><A NAME="IDX122"></A>
+Kill backward from the cursor to the beginning of the current line.
 <P>
 
-<A NAME="IDX114"></A>
+<A NAME="IDX123"></A>
 <DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX115"></A>
+<DD><A NAME="IDX124"></A>
 Kill backward from the cursor to the beginning of the current line.
 <P>
 
-<A NAME="IDX116"></A>
+<A NAME="IDX125"></A>
 <DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX117"></A>
+<DD><A NAME="IDX126"></A>
 Kill all characters on the current line, no matter where point is.
 By default, this is unbound.
 <P>
 
-<A NAME="IDX118"></A>
+<A NAME="IDX127"></A>
 <DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX119"></A>
+<DD><A NAME="IDX128"></A>
 Kill from point to the end of the current word, or if between
 words, to the end of the next word.
 Word boundaries are the same as <CODE>forward-word</CODE>.
 <P>
 
-<A NAME="IDX120"></A>
+<A NAME="IDX129"></A>
 <DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX121"></A>
+<DD><A NAME="IDX130"></A>
 Kill the word behind point.
 Word boundaries are the same as <CODE>backward-word</CODE>.
 <P>
 
-<A NAME="IDX122"></A>
+<A NAME="IDX131"></A>
 <DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX123"></A>
+<DD><A NAME="IDX132"></A>
 Kill the word behind point, using white space as a word boundary.
 The killed text is saved on the kill-ring.
 <P>
 
-<A NAME="IDX124"></A>
+<A NAME="IDX133"></A>
 <DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX125"></A>
+<DD><A NAME="IDX134"></A>
 Kill the word behind point, using white space and the slash character
 as the word boundaries.
 The killed text is saved on the kill-ring.
 <P>
 
-<A NAME="IDX126"></A>
+<A NAME="IDX135"></A>
 <DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX127"></A>
+<DD><A NAME="IDX136"></A>
 Delete all spaces and tabs around point.  By default, this is unbound.
 <P>
 
-<A NAME="IDX128"></A>
+<A NAME="IDX137"></A>
 <DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX129"></A>
+<DD><A NAME="IDX138"></A>
 Kill the text in the current region.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX130"></A>
+<A NAME="IDX139"></A>
 <DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX131"></A>
+<DD><A NAME="IDX140"></A>
 Copy the text in the region to the kill buffer, so it can be yanked
 right away.  By default, this command is unbound.
 <P>
 
-<A NAME="IDX132"></A>
+<A NAME="IDX141"></A>
 <DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX133"></A>
+<DD><A NAME="IDX142"></A>
 Copy the word before point to the kill buffer.
 The word boundaries are the same as <CODE>backward-word</CODE>.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX134"></A>
+<A NAME="IDX143"></A>
 <DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX135"></A>
+<DD><A NAME="IDX144"></A>
 Copy the word following point to the kill buffer.
 The word boundaries are the same as <CODE>forward-word</CODE>.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX136"></A>
+<A NAME="IDX145"></A>
 <DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX137"></A>
+<DD><A NAME="IDX146"></A>
 Yank the top of the kill ring into the buffer at point.
 <P>
 
-<A NAME="IDX138"></A>
+<A NAME="IDX147"></A>
 <DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX139"></A>
+<DD><A NAME="IDX148"></A>
 Rotate the kill-ring, and yank the new top.  You can only do this if
 the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
 </DL>
@@ -1800,23 +1877,23 @@ the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
 <!--docid::SEC18::-->
 <DL COMPACT>
 
-<A NAME="IDX140"></A>
+<A NAME="IDX149"></A>
 <DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX141"></A>
+<DD><A NAME="IDX150"></A>
 Add this digit to the argument already accumulating, or start a new
 argument.  <KBD>M--</KBD> starts a negative argument.
 <P>
 
-<A NAME="IDX142"></A>
+<A NAME="IDX151"></A>
 <DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX143"></A>
+<DD><A NAME="IDX152"></A>
 This is another way to specify an argument.
 If this command is followed by one or more digits, optionally with a
 leading minus sign, those digits define the argument.
 If the command is followed by digits, executing <CODE>universal-argument</CODE>
 again ends the numeric argument, but is otherwise ignored.
 As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
+character that is neither a digit nor minus sign, the argument count
 for the next command is multiplied by four.
 The argument count is initially one, so executing this function the
 first time makes the argument count four, a second time makes the
@@ -1844,33 +1921,33 @@ By default, this is not bound to a key.
 <P>
 
 <DL COMPACT>
-<A NAME="IDX144"></A>
+<A NAME="IDX153"></A>
 <DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX145"></A>
+<DD><A NAME="IDX154"></A>
 Attempt to perform completion on the text before point.
 The actual completion performed is application-specific.
 The default is filename completion.
 <P>
 
-<A NAME="IDX146"></A>
+<A NAME="IDX155"></A>
 <DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX147"></A>
+<DD><A NAME="IDX156"></A>
 List the possible completions of the text before point.
 When displaying completions, Readline sets the number of columns used
 for display to the value of <CODE>completion-display-width</CODE>, the value of
 the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
 <P>
 
-<A NAME="IDX148"></A>
+<A NAME="IDX157"></A>
 <DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX149"></A>
+<DD><A NAME="IDX158"></A>
 Insert all completions of the text before point that would have
 been generated by <CODE>possible-completions</CODE>.
 <P>
 
-<A NAME="IDX150"></A>
+<A NAME="IDX159"></A>
 <DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX151"></A>
+<DD><A NAME="IDX160"></A>
 Similar to <CODE>complete</CODE>, but replaces the word to be completed
 with a single match from the list of possible completions.
 Repeated execution of <CODE>menu-complete</CODE> steps through the list
@@ -1885,17 +1962,17 @@ This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
 by default.
 <P>
 
-<A NAME="IDX152"></A>
+<A NAME="IDX161"></A>
 <DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX153"></A>
+<DD><A NAME="IDX162"></A>
 Identical to <CODE>menu-complete</CODE>, but moves backward through the list
 of possible completions, as if <CODE>menu-complete</CODE> had been given a
 negative argument.
 <P>
 
-<A NAME="IDX154"></A>
+<A NAME="IDX163"></A>
 <DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX155"></A>
+<DD><A NAME="IDX164"></A>
 Deletes the character under the cursor if not at the beginning or
 end of the line (like <CODE>delete-char</CODE>).
 If at the end of the line, behaves identically to
@@ -1924,29 +2001,29 @@ This command is unbound by default.
 <!--docid::SEC20::-->
 <DL COMPACT>
 
-<A NAME="IDX156"></A>
+<A NAME="IDX165"></A>
 <DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX157"></A>
+<DD><A NAME="IDX166"></A>
 Begin saving the characters typed into the current keyboard macro.
 <P>
 
-<A NAME="IDX158"></A>
+<A NAME="IDX167"></A>
 <DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX159"></A>
+<DD><A NAME="IDX168"></A>
 Stop saving the characters typed into the current keyboard macro
 and save the definition.
 <P>
 
-<A NAME="IDX160"></A>
+<A NAME="IDX169"></A>
 <DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX161"></A>
+<DD><A NAME="IDX170"></A>
 Re-execute the last keyboard macro defined, by making the characters
 in the macro appear as if typed at the keyboard.
 <P>
 
-<A NAME="IDX162"></A>
+<A NAME="IDX171"></A>
 <DT><CODE>print-last-kbd-macro ()</CODE>
-<DD><A NAME="IDX163"></A>
+<DD><A NAME="IDX172"></A>
 Print the last keboard macro defined in a format suitable for the
 <VAR>inputrc</VAR> file.
 <P>
@@ -1972,87 +2049,87 @@ Print the last keboard macro defined in a format suitable for the
 <!--docid::SEC21::-->
 <DL COMPACT>
 
-<A NAME="IDX164"></A>
+<A NAME="IDX173"></A>
 <DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX165"></A>
+<DD><A NAME="IDX174"></A>
 Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
 any bindings or variable assignments found there.
 <P>
 
-<A NAME="IDX166"></A>
+<A NAME="IDX175"></A>
 <DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX167"></A>
+<DD><A NAME="IDX176"></A>
 Abort the current editing command and
 ring the terminal's bell (subject to the setting of
 <CODE>bell-style</CODE>).
 <P>
 
-<A NAME="IDX168"></A>
+<A NAME="IDX177"></A>
 <DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX169"></A>
+<DD><A NAME="IDX178"></A>
 If the metafied character <VAR>x</VAR> is lowercase, run the command
 that is bound to the corresponding uppercase character.
 <P>
 
-<A NAME="IDX170"></A>
+<A NAME="IDX179"></A>
 <DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX171"></A>
+<DD><A NAME="IDX180"></A>
 Metafy the next character typed.  This is for keyboards
 without a meta key.  Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
 <KBD>M-f</KBD>.
 <P>
 
-<A NAME="IDX172"></A>
+<A NAME="IDX181"></A>
 <DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX173"></A>
+<DD><A NAME="IDX182"></A>
 Incremental undo, separately remembered for each line.
 <P>
 
-<A NAME="IDX174"></A>
+<A NAME="IDX183"></A>
 <DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX175"></A>
+<DD><A NAME="IDX184"></A>
 Undo all changes made to this line.  This is like executing the <CODE>undo</CODE>
 command enough times to get back to the beginning.
 <P>
 
-<A NAME="IDX176"></A>
+<A NAME="IDX185"></A>
 <DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX177"></A>
+<DD><A NAME="IDX186"></A>
 Perform tilde expansion on the current word.
 <P>
 
-<A NAME="IDX178"></A>
+<A NAME="IDX187"></A>
 <DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX179"></A>
+<DD><A NAME="IDX188"></A>
 Set the mark to the point.  If a
 numeric argument is supplied, the mark is set to that position.
 <P>
 
-<A NAME="IDX180"></A>
+<A NAME="IDX189"></A>
 <DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX181"></A>
+<DD><A NAME="IDX190"></A>
 Swap the point with the mark.  The current cursor position is set to
 the saved position, and the old cursor position is saved as the mark.
 <P>
 
-<A NAME="IDX182"></A>
+<A NAME="IDX191"></A>
 <DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX183"></A>
+<DD><A NAME="IDX192"></A>
 A character is read and point is moved to the next occurrence of that
 character.  A negative count searches for previous occurrences.
 <P>
 
-<A NAME="IDX184"></A>
+<A NAME="IDX193"></A>
 <DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX185"></A>
+<DD><A NAME="IDX194"></A>
 A character is read and point is moved to the previous occurrence
 of that character.  A negative count searches for subsequent
 occurrences.
 <P>
 
-<A NAME="IDX186"></A>
+<A NAME="IDX195"></A>
 <DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX187"></A>
+<DD><A NAME="IDX196"></A>
 Read enough characters to consume a multi-key sequence such as those
 defined for keys like Home and End.  Such sequences begin with a
 Control Sequence Indicator (CSI), usually ESC-[.  If this sequence is
@@ -2062,9 +2139,9 @@ stray characters into the editing buffer.  This is unbound by default,
 but usually bound to ESC-[.
 <P>
 
-<A NAME="IDX188"></A>
+<A NAME="IDX197"></A>
 <DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX189"></A>
+<DD><A NAME="IDX198"></A>
 Without a numeric argument, the value of the <CODE>comment-begin</CODE>
 variable is inserted at the beginning of the current line.
 If a numeric argument is supplied, this command acts as a toggle:  if
@@ -2075,43 +2152,43 @@ the line.
 In either case, the line is accepted as if a newline had been typed.
 <P>
 
-<A NAME="IDX190"></A>
+<A NAME="IDX199"></A>
 <DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX191"></A>
+<DD><A NAME="IDX200"></A>
 Print all of the functions and their key bindings to the
 Readline output stream.  If a numeric argument is supplied,
 the output is formatted in such a way that it can be made part
 of an <VAR>inputrc</VAR> file.  This command is unbound by default.
 <P>
 
-<A NAME="IDX192"></A>
+<A NAME="IDX201"></A>
 <DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX193"></A>
+<DD><A NAME="IDX202"></A>
 Print all of the settable variables and their values to the
 Readline output stream.  If a numeric argument is supplied,
 the output is formatted in such a way that it can be made part
 of an <VAR>inputrc</VAR> file.  This command is unbound by default.
 <P>
 
-<A NAME="IDX194"></A>
+<A NAME="IDX203"></A>
 <DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX195"></A>
+<DD><A NAME="IDX204"></A>
 Print all of the Readline key sequences bound to macros and the
 strings they output.  If a numeric argument is supplied,
 the output is formatted in such a way that it can be made part
 of an <VAR>inputrc</VAR> file.  This command is unbound by default.
 <P>
 
-<A NAME="IDX196"></A>
+<A NAME="IDX205"></A>
 <DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX197"></A>
+<DD><A NAME="IDX206"></A>
 When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
 editing mode.
 <P>
 
-<A NAME="IDX198"></A>
+<A NAME="IDX207"></A>
 <DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX199"></A>
+<DD><A NAME="IDX208"></A>
 When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
 editing mode.
 <P>
@@ -2246,8 +2323,8 @@ the simplest way possible, perhaps to replace calls in your code to
 <CODE>gets()</CODE> or <CODE>fgets()</CODE>.
 </P><P>
 
-<A NAME="IDX200"></A>
-<A NAME="IDX201"></A>
+<A NAME="IDX209"></A>
+<A NAME="IDX210"></A>
 </P><P>
 
 The function <CODE>readline()</CODE> prints a prompt <VAR>prompt</VAR>
@@ -2537,7 +2614,7 @@ negative argument.
 </P><P>
 
 A command function should return 0 if its action completes successfully,
-and a non-zero value if some error occurs.
+and a value greater than zero if some error occurs.
 This is the convention obeyed by all of the builtin Readline bindable
 command functions.
 </P><P>
@@ -2563,7 +2640,7 @@ command functions.
 These variables are available to function writers.
 </P><P>
 
-<A NAME="IDX202"></A>
+<A NAME="IDX211"></A>
 <DL>
 <DT><U>Variable:</U> char * <B>rl_line_buffer</B>
 <DD>This is the line gathered so far.  You are welcome to modify the
@@ -2573,7 +2650,7 @@ the memory allocated to <CODE>rl_line_buffer</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX203"></A>
+<A NAME="IDX212"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_point</B>
 <DD>The offset of the current cursor position in <CODE>rl_line_buffer</CODE>
@@ -2581,7 +2658,7 @@ the memory allocated to <CODE>rl_line_buffer</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX204"></A>
+<A NAME="IDX213"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_end</B>
 <DD>The number of characters present in <CODE>rl_line_buffer</CODE>.  When
@@ -2590,7 +2667,7 @@ the memory allocated to <CODE>rl_line_buffer</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX205"></A>
+<A NAME="IDX214"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_mark</B>
 <DD>The <VAR>mark</VAR> (saved position) in the current line.  If set, the mark
@@ -2598,7 +2675,7 @@ and point define a <EM>region</EM>.
 </DL>
 </P><P>
 
-<A NAME="IDX206"></A>
+<A NAME="IDX215"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_done</B>
 <DD>Setting this to a non-zero value causes Readline to return the current
@@ -2606,7 +2683,7 @@ line immediately.
 </DL>
 </P><P>
 
-<A NAME="IDX207"></A>
+<A NAME="IDX216"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_num_chars_to_read</B>
 <DD>Setting this to a positive value before calling <CODE>readline()</CODE> causes
@@ -2615,7 +2692,7 @@ than reading up to a character bound to <CODE>accept-line</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX208"></A>
+<A NAME="IDX217"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_pending_input</B>
 <DD>Setting this to a value makes it the next keystroke read.  This is a
@@ -2623,7 +2700,7 @@ way to stuff a single character into the input stream.
 </DL>
 </P><P>
 
-<A NAME="IDX209"></A>
+<A NAME="IDX218"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_dispatching</B>
 <DD>Set to a non-zero value if a function is being called from a key binding;
@@ -2632,7 +2709,7 @@ they were called directly or by Readline's dispatching mechanism.
 </DL>
 </P><P>
 
-<A NAME="IDX210"></A>
+<A NAME="IDX219"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_erase_empty_line</B>
 <DD>Setting this to a non-zero value causes Readline to completely erase
@@ -2642,7 +2719,7 @@ the beginning of the newly-blank line.
 </DL>
 </P><P>
 
-<A NAME="IDX211"></A>
+<A NAME="IDX220"></A>
 <DL>
 <DT><U>Variable:</U> char * <B>rl_prompt</B>
 <DD>The prompt Readline uses.  This is set from the argument to
@@ -2652,7 +2729,7 @@ be used to modify the prompt string after calling <CODE>readline()</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX212"></A>
+<A NAME="IDX221"></A>
 <DL>
 <DT><U>Variable:</U> char * <B>rl_display_prompt</B>
 <DD>The string displayed as the prompt.  This is usually identical to
@@ -2661,7 +2738,7 @@ use the prompt string as a message area, such as incremental search.
 </DL>
 </P><P>
 
-<A NAME="IDX213"></A>
+<A NAME="IDX222"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_already_prompted</B>
 <DD>If an application wishes to display the prompt itself, rather than have
@@ -2674,14 +2751,14 @@ never sets it.
 </DL>
 </P><P>
 
-<A NAME="IDX214"></A>
+<A NAME="IDX223"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_library_version</B>
 <DD>The version number of this revision of the library.
 </DL>
 </P><P>
 
-<A NAME="IDX215"></A>
+<A NAME="IDX224"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_readline_version</B>
 <DD>An integer encoding the current version of the library.  The encoding is
@@ -2692,7 +2769,7 @@ value 0x0402.
 </DL>
 </P><P>
 
-<A NAME="IDX216"></A>
+<A NAME="IDX225"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_gnu_readline_p</B>
 <DD>Always set to 1, denoting that this is GNU readline rather than some
@@ -2700,7 +2777,7 @@ emulation.
 </DL>
 </P><P>
 
-<A NAME="IDX217"></A>
+<A NAME="IDX226"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_terminal_name</B>
 <DD>The terminal type, used for initialization.  If not set by the application,
@@ -2709,7 +2786,7 @@ the first time it is called.
 </DL>
 </P><P>
 
-<A NAME="IDX218"></A>
+<A NAME="IDX227"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_readline_name</B>
 <DD>This variable is set to a unique name by each application using Readline.
@@ -2718,7 +2795,7 @@ The value allows conditional parsing of the inputrc file
 </DL>
 </P><P>
 
-<A NAME="IDX219"></A>
+<A NAME="IDX228"></A>
 <DL>
 <DT><U>Variable:</U> FILE * <B>rl_instream</B>
 <DD>The stdio stream from which Readline reads input.
@@ -2726,7 +2803,7 @@ If <CODE>NULL</CODE>, Readline defaults to <VAR>stdin</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX220"></A>
+<A NAME="IDX229"></A>
 <DL>
 <DT><U>Variable:</U> FILE * <B>rl_outstream</B>
 <DD>The stdio stream to which Readline performs output.
@@ -2734,7 +2811,7 @@ If <CODE>NULL</CODE>, Readline defaults to <VAR>stdout</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX221"></A>
+<A NAME="IDX230"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_prefer_env_winsize</B>
 <DD>If non-zero, Readline gives values found in the <CODE>LINES</CODE> and
@@ -2743,7 +2820,7 @@ from the kernel when computing the screen dimensions.
 </DL>
 </P><P>
 
-<A NAME="IDX222"></A>
+<A NAME="IDX231"></A>
 <DL>
 <DT><U>Variable:</U> rl_command_func_t * <B>rl_last_func</B>
 <DD>The address of the last command function Readline executed.  May be used to
@@ -2752,7 +2829,7 @@ example.
 </DL>
 </P><P>
 
-<A NAME="IDX223"></A>
+<A NAME="IDX232"></A>
 <DL>
 <DT><U>Variable:</U> rl_hook_func_t * <B>rl_startup_hook</B>
 <DD>If non-zero, this is the address of a function to call just
@@ -2760,7 +2837,7 @@ before <CODE>readline</CODE> prints the first prompt.
 </DL>
 </P><P>
 
-<A NAME="IDX224"></A>
+<A NAME="IDX233"></A>
 <DL>
 <DT><U>Variable:</U> rl_hook_func_t * <B>rl_pre_input_hook</B>
 <DD>If non-zero, this is the address of a function to call after
@@ -2769,7 +2846,7 @@ starts reading input characters.
 </DL>
 </P><P>
 
-<A NAME="IDX225"></A>
+<A NAME="IDX234"></A>
 <DL>
 <DT><U>Variable:</U> rl_hook_func_t * <B>rl_event_hook</B>
 <DD>If non-zero, this is the address of a function to call periodically
@@ -2779,7 +2856,7 @@ is no keyboard input.
 </DL>
 </P><P>
 
-<A NAME="IDX226"></A>
+<A NAME="IDX235"></A>
 <DL>
 <DT><U>Variable:</U> rl_getc_func_t * <B>rl_getc_function</B>
 <DD>If non-zero, Readline will call indirectly through this pointer
@@ -2791,7 +2868,7 @@ setting <VAR>rl_input_available_hook</VAR> as well.
 </DL>
 </P><P>
 
-<A NAME="IDX227"></A>
+<A NAME="IDX236"></A>
 <DL>
 <DT><U>Variable:</U> rl_hook_func_t * <B>rl_signal_event_hook</B>
 <DD>If non-zero, this is the address of a function to call if a read system
@@ -2799,7 +2876,7 @@ call is interrupted when Readline is reading terminal input.
 </DL>
 </P><P>
 
-<A NAME="IDX228"></A>
+<A NAME="IDX237"></A>
 <DL>
 <DT><U>Variable:</U> rl_hook_func_t * <B>rl_input_available_hook</B>
 <DD>If non-zero, Readline will use this function's return value when it needs
@@ -2824,7 +2901,7 @@ setting <VAR>rl_input_available_hook</VAR> as well.
 </DL>
 </P><P>
 
-<A NAME="IDX229"></A>
+<A NAME="IDX238"></A>
 <DL>
 <DT><U>Variable:</U> rl_voidfunc_t * <B>rl_redisplay_function</B>
 <DD>If non-zero, Readline will call indirectly through this pointer
@@ -2834,7 +2911,7 @@ redisplay function (see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A
 </DL>
 </P><P>
 
-<A NAME="IDX230"></A>
+<A NAME="IDX239"></A>
 <DL>
 <DT><U>Variable:</U> rl_vintfunc_t * <B>rl_prep_term_function</B>
 <DD>If non-zero, Readline will call indirectly through this pointer
@@ -2845,7 +2922,7 @@ By default, this is set to <CODE>rl_prep_terminal</CODE>
 </DL>
 </P><P>
 
-<A NAME="IDX231"></A>
+<A NAME="IDX240"></A>
 <DL>
 <DT><U>Variable:</U> rl_voidfunc_t * <B>rl_deprep_term_function</B>
 <DD>If non-zero, Readline will call indirectly through this pointer
@@ -2856,7 +2933,7 @@ By default, this is set to <CODE>rl_deprep_terminal</CODE>
 </DL>
 </P><P>
 
-<A NAME="IDX232"></A>
+<A NAME="IDX241"></A>
 <DL>
 <DT><U>Variable:</U> Keymap <B>rl_executing_keymap</B>
 <DD>This variable is set to the keymap (see section <A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>) in which the
@@ -2864,7 +2941,7 @@ currently executing readline function was found.
 </DL>
 </P><P>
 
-<A NAME="IDX233"></A>
+<A NAME="IDX242"></A>
 <DL>
 <DT><U>Variable:</U> Keymap <B>rl_binding_keymap</B>
 <DD>This variable is set to the keymap (see section <A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>) in which the
@@ -2872,21 +2949,21 @@ last key binding occurred.
 </DL>
 </P><P>
 
-<A NAME="IDX234"></A>
+<A NAME="IDX243"></A>
 <DL>
 <DT><U>Variable:</U> char * <B>rl_executing_macro</B>
 <DD>This variable is set to the text of any currently-executing macro.
 </DL>
 </P><P>
 
-<A NAME="IDX235"></A>
+<A NAME="IDX244"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_executing_key</B>
 <DD>The key that caused the dispatch to the currently-executing Readline function.
 </DL>
 </P><P>
 
-<A NAME="IDX236"></A>
+<A NAME="IDX245"></A>
 <DL>
 <DT><U>Variable:</U> char * <B>rl_executing_keyseq</B>
 <DD>The full key sequence that caused the dispatch to the currently-executing
@@ -2894,14 +2971,14 @@ Readline function.
 </DL>
 </P><P>
 
-<A NAME="IDX237"></A>
+<A NAME="IDX246"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_key_sequence_length</B>
 <DD>The number of characters in <VAR>rl_executing_keyseq</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX238"></A>
+<A NAME="IDX247"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_readline_state</B>
 <DD>A variable with bit values that encapsulate the current Readline state.
@@ -2971,7 +3048,7 @@ and is about to return the line to the caller.
 </DL>
 </P><P>
 
-<A NAME="IDX239"></A>
+<A NAME="IDX248"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_explicit_arg</B>
 <DD>Set to a non-zero value if an explicit numeric argument was specified by
@@ -2979,7 +3056,7 @@ the user.  Only valid in a bindable command function.
 </DL>
 </P><P>
 
-<A NAME="IDX240"></A>
+<A NAME="IDX249"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_numeric_arg</B>
 <DD>Set to the value of any numeric argument explicitly specified by the user
@@ -2988,7 +3065,7 @@ command function.
 </DL>
 </P><P>
 
-<A NAME="IDX241"></A>
+<A NAME="IDX250"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_editing_mode</B>
 <DD>Set to a value denoting Readline's current editing mode.  A value of
@@ -3067,7 +3144,7 @@ programmer, should bind the functions you write to descriptive names as
 well.  Readline provides a function for doing that:
 </P><P>
 
-<A NAME="IDX242"></A>
+<A NAME="IDX251"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_add_defun</B> <I>(const char *name, rl_command_func_t *function, int key)</I>
 <DD>Add <VAR>name</VAR> to the list of named functions.  Make <VAR>function</VAR> be
@@ -3107,7 +3184,7 @@ get run.  You can make your own keymaps, copy existing keymaps, and tell
 Readline which keymap to use.
 </P><P>
 
-<A NAME="IDX243"></A>
+<A NAME="IDX252"></A>
 <DL>
 <DT><U>Function:</U> Keymap <B>rl_make_bare_keymap</B> <I>(void)</I>
 <DD>Returns a new, empty keymap.  The space for the keymap is allocated with
@@ -3116,14 +3193,14 @@ Readline which keymap to use.
 </DL>
 </P><P>
 
-<A NAME="IDX244"></A>
+<A NAME="IDX253"></A>
 <DL>
 <DT><U>Function:</U> Keymap <B>rl_copy_keymap</B> <I>(Keymap map)</I>
 <DD>Return a new keymap which is a copy of <VAR>map</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX245"></A>
+<A NAME="IDX254"></A>
 <DL>
 <DT><U>Function:</U> Keymap <B>rl_make_keymap</B> <I>(void)</I>
 <DD>Return a new keymap with the printing characters bound to rl_insert,
@@ -3132,7 +3209,7 @@ the Meta digits bound to produce numeric arguments.
 </DL>
 </P><P>
 
-<A NAME="IDX246"></A>
+<A NAME="IDX255"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_discard_keymap</B> <I>(Keymap keymap)</I>
 <DD>Free the storage associated with the data in <VAR>keymap</VAR>.
@@ -3140,7 +3217,7 @@ The caller should free <VAR>keymap</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX247"></A>
+<A NAME="IDX256"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_free_keymap</B> <I>(Keymap keymap)</I>
 <DD>Free all storage associated with <VAR>keymap</VAR>.  This calls
@@ -3152,21 +3229,21 @@ Readline has several internal keymaps.  These functions allow you to
 change which keymap is active.
 </P><P>
 
-<A NAME="IDX248"></A>
+<A NAME="IDX257"></A>
 <DL>
 <DT><U>Function:</U> Keymap <B>rl_get_keymap</B> <I>(void)</I>
 <DD>Returns the currently active keymap.
 </DL>
 </P><P>
 
-<A NAME="IDX249"></A>
+<A NAME="IDX258"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_set_keymap</B> <I>(Keymap keymap)</I>
 <DD>Makes <VAR>keymap</VAR> the currently active keymap.
 </DL>
 </P><P>
 
-<A NAME="IDX250"></A>
+<A NAME="IDX259"></A>
 <DL>
 <DT><U>Function:</U> Keymap <B>rl_get_keymap_by_name</B> <I>(const char *name)</I>
 <DD>Return the keymap matching <VAR>name</VAR>.  <VAR>name</VAR> is one which would
@@ -3174,7 +3251,7 @@ be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="read
 </DL>
 </P><P>
 
-<A NAME="IDX251"></A>
+<A NAME="IDX260"></A>
 <DL>
 <DT><U>Function:</U> char * <B>rl_get_keymap_name</B> <I>(Keymap keymap)</I>
 <DD>Return the name matching <VAR>keymap</VAR>.  <VAR>name</VAR> is one which would
@@ -3219,7 +3296,7 @@ initialization function assigned to the <CODE>rl_startup_hook</CODE> variable
 These functions manage key bindings.
 </P><P>
 
-<A NAME="IDX252"></A>
+<A NAME="IDX261"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_key</B> <I>(int key, rl_command_func_t *function)</I>
 <DD>Binds <VAR>key</VAR> to <VAR>function</VAR> in the currently active keymap.
@@ -3227,7 +3304,7 @@ Returns non-zero in the case of an invalid <VAR>key</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX253"></A>
+<A NAME="IDX262"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_key_in_map</B> <I>(int key, rl_command_func_t *function, Keymap map)</I>
 <DD>Bind <VAR>key</VAR> to <VAR>function</VAR> in <VAR>map</VAR>.
@@ -3235,7 +3312,7 @@ Returns non-zero in the case of an invalid <VAR>key</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX254"></A>
+<A NAME="IDX263"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_key_if_unbound</B> <I>(int key, rl_command_func_t *function)</I>
 <DD>Binds <VAR>key</VAR> to <VAR>function</VAR> if it is not already bound in the
@@ -3245,7 +3322,7 @@ already bound.
 </DL>
 </P><P>
 
-<A NAME="IDX255"></A>
+<A NAME="IDX264"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_key_if_unbound_in_map</B> <I>(int key, rl_command_func_t *function, Keymap map)</I>
 <DD>Binds <VAR>key</VAR> to <VAR>function</VAR> if it is not already bound in <VAR>map</VAR>.
@@ -3254,7 +3331,7 @@ already bound.
 </DL>
 </P><P>
 
-<A NAME="IDX256"></A>
+<A NAME="IDX265"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_unbind_key</B> <I>(int key)</I>
 <DD>Bind <VAR>key</VAR> to the null function in the currently active keymap.
@@ -3262,7 +3339,7 @@ Returns non-zero in case of error.
 </DL>
 </P><P>
 
-<A NAME="IDX257"></A>
+<A NAME="IDX266"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_unbind_key_in_map</B> <I>(int key, Keymap map)</I>
 <DD>Bind <VAR>key</VAR> to the null function in <VAR>map</VAR>.
@@ -3270,21 +3347,21 @@ Returns non-zero in case of error.
 </DL>
 </P><P>
 
-<A NAME="IDX258"></A>
+<A NAME="IDX267"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_unbind_function_in_map</B> <I>(rl_command_func_t *function, Keymap map)</I>
 <DD>Unbind all keys that execute <VAR>function</VAR> in <VAR>map</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX259"></A>
+<A NAME="IDX268"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_unbind_command_in_map</B> <I>(const char *command, Keymap map)</I>
 <DD>Unbind all keys that are bound to <VAR>command</VAR> in <VAR>map</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX260"></A>
+<A NAME="IDX269"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_keyseq</B> <I>(const char *keyseq, rl_command_func_t *function)</I>
 <DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the function
@@ -3294,7 +3371,7 @@ The return value is non-zero if <VAR>keyseq</VAR> is invalid.
 </DL>
 </P><P>
 
-<A NAME="IDX261"></A>
+<A NAME="IDX270"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_keyseq_in_map</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
 <DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the function
@@ -3304,14 +3381,14 @@ The return value is non-zero if <VAR>keyseq</VAR> is invalid.
 </DL>
 </P><P>
 
-<A NAME="IDX262"></A>
+<A NAME="IDX271"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_set_key</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
 <DD>Equivalent to <CODE>rl_bind_keyseq_in_map</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX263"></A>
+<A NAME="IDX272"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_keyseq_if_unbound</B> <I>(const char *keyseq, rl_command_func_t *function)</I>
 <DD>Binds <VAR>keyseq</VAR> to <VAR>function</VAR> if it is not already bound in the
@@ -3321,7 +3398,7 @@ already bound.
 </DL>
 </P><P>
 
-<A NAME="IDX264"></A>
+<A NAME="IDX273"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_bind_keyseq_if_unbound_in_map</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
 <DD>Binds <VAR>keyseq</VAR> to <VAR>function</VAR> if it is not already bound in <VAR>map</VAR>.
@@ -3330,7 +3407,7 @@ already bound.
 </DL>
 </P><P>
 
-<A NAME="IDX265"></A>
+<A NAME="IDX274"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_generic_bind</B> <I>(int type, const char *keyseq, char *data, Keymap map)</I>
 <DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the arbitrary
@@ -3341,7 +3418,7 @@ necessary.  The initial keymap in which to do bindings is <VAR>map</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX266"></A>
+<A NAME="IDX275"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_parse_and_bind</B> <I>(char *line)</I>
 <DD>Parse <VAR>line</VAR> as if it had been read from the <CODE>inputrc</CODE> file and
@@ -3350,7 +3427,7 @@ perform any key bindings and variable assignments found
 </DL>
 </P><P>
 
-<A NAME="IDX267"></A>
+<A NAME="IDX276"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_read_init_file</B> <I>(const char *filename)</I>
 <DD>Read keybindings and variable assignments from <VAR>filename</VAR>
@@ -3381,14 +3458,14 @@ and the functions invoked by a particular key sequence.  You may also
 associate a new function name with an arbitrary function.
 </P><P>
 
-<A NAME="IDX268"></A>
+<A NAME="IDX277"></A>
 <DL>
 <DT><U>Function:</U> rl_command_func_t * <B>rl_named_function</B> <I>(const char *name)</I>
 <DD>Return the function with name <VAR>name</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX269"></A>
+<A NAME="IDX278"></A>
 <DL>
 <DT><U>Function:</U> rl_command_func_t * <B>rl_function_of_keyseq</B> <I>(const char *keyseq, Keymap map, int *type)</I>
 <DD>Return the function invoked by <VAR>keyseq</VAR> in keymap <VAR>map</VAR>.
@@ -3398,7 +3475,7 @@ it points to (one of <CODE>ISFUNC</CODE>, <CODE>ISKMAP</CODE>, or <CODE>ISMACR</
 </DL>
 </P><P>
 
-<A NAME="IDX270"></A>
+<A NAME="IDX279"></A>
 <DL>
 <DT><U>Function:</U> char ** <B>rl_invoking_keyseqs</B> <I>(rl_command_func_t *function)</I>
 <DD>Return an array of strings representing the key sequences used to
@@ -3406,7 +3483,7 @@ invoke <VAR>function</VAR> in the current keymap.
 </DL>
 </P><P>
 
-<A NAME="IDX271"></A>
+<A NAME="IDX280"></A>
 <DL>
 <DT><U>Function:</U> char ** <B>rl_invoking_keyseqs_in_map</B> <I>(rl_command_func_t *function, Keymap map)</I>
 <DD>Return an array of strings representing the key sequences used to
@@ -3414,7 +3491,7 @@ invoke <VAR>function</VAR> in the keymap <VAR>map</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX272"></A>
+<A NAME="IDX281"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_function_dumper</B> <I>(int readable)</I>
 <DD>Print the readline function names and the key sequences currently
@@ -3424,14 +3501,14 @@ the list is formatted in such a way that it can be made part of an
 </DL>
 </P><P>
 
-<A NAME="IDX273"></A>
+<A NAME="IDX282"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_list_funmap_names</B> <I>(void)</I>
 <DD>Print the names of all bindable Readline functions to <CODE>rl_outstream</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX274"></A>
+<A NAME="IDX283"></A>
 <DL>
 <DT><U>Function:</U> const char ** <B>rl_funmap_names</B> <I>(void)</I>
 <DD>Return a NULL terminated array of known function names.  The array is
@@ -3441,7 +3518,7 @@ should free the array, but not the pointers, using <CODE>free</CODE> or
 </DL>
 </P><P>
 
-<A NAME="IDX275"></A>
+<A NAME="IDX284"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_add_funmap_entry</B> <I>(const char *name, rl_command_func_t *function)</I>
 <DD>Add <VAR>name</VAR> to the list of bindable Readline command names, and make
@@ -3496,7 +3573,7 @@ tells what to undo, not how to undo it.  <CODE>UNDO_BEGIN</CODE> and
 <CODE>rl_end_undo_group()</CODE>.
 </P><P>
 
-<A NAME="IDX276"></A>
+<A NAME="IDX285"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_begin_undo_group</B> <I>(void)</I>
 <DD>Begins saving undo information in a group construct.  The undo
@@ -3506,7 +3583,7 @@ information usually comes from calls to <CODE>rl_insert_text()</CODE> and
 </DL>
 </P><P>
 
-<A NAME="IDX277"></A>
+<A NAME="IDX286"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_end_undo_group</B> <I>(void)</I>
 <DD>Closes the current undo group started with <CODE>rl_begin_undo_group
@@ -3515,7 +3592,7 @@ for each call to <CODE>rl_begin_undo_group()</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX278"></A>
+<A NAME="IDX287"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_add_undo</B> <I>(enum undo_code what, int start, int end, char *text)</I>
 <DD>Remember how to undo an event (according to <VAR>what</VAR>).  The affected
@@ -3523,14 +3600,14 @@ text runs from <VAR>start</VAR> to <VAR>end</VAR>, and encompasses <VAR>text</VA
 </DL>
 </P><P>
 
-<A NAME="IDX279"></A>
+<A NAME="IDX288"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_free_undo_list</B> <I>(void)</I>
 <DD>Free the existing undo list.
 </DL>
 </P><P>
 
-<A NAME="IDX280"></A>
+<A NAME="IDX289"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_do_undo</B> <I>(void)</I>
 <DD>Undo the first thing on the undo list.  Returns <CODE>0</CODE> if there was
@@ -3544,7 +3621,7 @@ once, just before you modify the text.  You must supply the indices of
 the text range that you are going to modify.
 </P><P>
 
-<A NAME="IDX281"></A>
+<A NAME="IDX290"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_modifying</B> <I>(int start, int end)</I>
 <DD>Tell Readline to save the text between <VAR>start</VAR> and <VAR>end</VAR> as a
@@ -3571,7 +3648,7 @@ that text.
 <!--docid::SEC35::-->
 <P>
 
-<A NAME="IDX282"></A>
+<A NAME="IDX291"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_redisplay</B> <I>(void)</I>
 <DD>Change what's displayed on the screen to reflect the current contents
@@ -3579,7 +3656,7 @@ of <CODE>rl_line_buffer</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX283"></A>
+<A NAME="IDX292"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_forced_update_display</B> <I>(void)</I>
 <DD>Force the line to be updated and redisplayed, whether or not
@@ -3587,7 +3664,7 @@ Readline thinks the screen display is correct.
 </DL>
 </P><P>
 
-<A NAME="IDX284"></A>
+<A NAME="IDX293"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_on_new_line</B> <I>(void)</I>
 <DD>Tell the update functions that we have moved onto a new (empty) line,
@@ -3595,7 +3672,7 @@ usually after outputting a newline.
 </DL>
 </P><P>
 
-<A NAME="IDX285"></A>
+<A NAME="IDX294"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_on_new_line_with_prompt</B> <I>(void)</I>
 <DD>Tell the update functions that we have moved onto a new line, with
@@ -3607,7 +3684,7 @@ It should be used after setting <VAR>rl_already_prompted</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX286"></A>
+<A NAME="IDX295"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_reset_line_state</B> <I>(void)</I>
 <DD>Reset the display state to a clean state and redisplay the current line
@@ -3615,14 +3692,14 @@ starting on a new line.
 </DL>
 </P><P>
 
-<A NAME="IDX287"></A>
+<A NAME="IDX296"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_crlf</B> <I>(void)</I>
 <DD>Move the cursor to the start of the next screen line.
 </DL>
 </P><P>
 
-<A NAME="IDX288"></A>
+<A NAME="IDX297"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_show_char</B> <I>(int c)</I>
 <DD>Display character <VAR>c</VAR> on <CODE>rl_outstream</CODE>.
@@ -3633,7 +3710,7 @@ redisplay.
 </DL>
 </P><P>
 
-<A NAME="IDX289"></A>
+<A NAME="IDX298"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_message</B> <I>(const char *, <small>...</small>)</I>
 <DD>The arguments are a format string as would be supplied to <CODE>printf</CODE>,
@@ -3646,7 +3723,7 @@ before calling this function.
 </DL>
 </P><P>
 
-<A NAME="IDX290"></A>
+<A NAME="IDX299"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_clear_message</B> <I>(void)</I>
 <DD>Clear the message in the echo area.  If the prompt was saved with a call to
@@ -3655,7 +3732,7 @@ call <CODE>rl_restore_prompt</CODE> before calling this function.
 </DL>
 </P><P>
 
-<A NAME="IDX291"></A>
+<A NAME="IDX300"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_save_prompt</B> <I>(void)</I>
 <DD>Save the local Readline prompt display state in preparation for
@@ -3663,7 +3740,7 @@ displaying a new message in the message area with <CODE>rl_message()</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX292"></A>
+<A NAME="IDX301"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_restore_prompt</B> <I>(void)</I>
 <DD>Restore the local Readline prompt display state saved by the most
@@ -3674,7 +3751,7 @@ corresponding call to <CODE>rl_clear_message</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX293"></A>
+<A NAME="IDX302"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_expand_prompt</B> <I>(char *prompt)</I>
 <DD>Expand any special character sequences in <VAR>prompt</VAR> and set up the
@@ -3687,12 +3764,12 @@ It returns the number of visible characters on the last line of the
 Applications may indicate that the prompt contains characters that take
 up no physical screen space when displayed by bracketing a sequence of
 such characters with the special markers <CODE>RL_PROMPT_START_IGNORE</CODE>
-and <CODE>RL_PROMPT_END_IGNORE</CODE> (declared in <TT>`readline.h'</TT>.  This may
+and <CODE>RL_PROMPT_END_IGNORE</CODE> (declared in <TT>`readline.h'</TT>).  This may
 be used to embed terminal-specific escape sequences in prompts.
 </DL>
 </P><P>
 
-<A NAME="IDX294"></A>
+<A NAME="IDX303"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_set_prompt</B> <I>(const char *prompt)</I>
 <DD>Make Readline use <VAR>prompt</VAR> for subsequent redisplay.  This calls
@@ -3719,7 +3796,7 @@ to the result.
 <!--docid::SEC36::-->
 <P>
 
-<A NAME="IDX295"></A>
+<A NAME="IDX304"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_insert_text</B> <I>(const char *text)</I>
 <DD>Insert <VAR>text</VAR> into the line at the current cursor position.
@@ -3727,7 +3804,7 @@ Returns the number of characters inserted.
 </DL>
 </P><P>
 
-<A NAME="IDX296"></A>
+<A NAME="IDX305"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_delete_text</B> <I>(int start, int end)</I>
 <DD>Delete the text between <VAR>start</VAR> and <VAR>end</VAR> in the current line.
@@ -3735,7 +3812,7 @@ Returns the number of characters deleted.
 </DL>
 </P><P>
 
-<A NAME="IDX297"></A>
+<A NAME="IDX306"></A>
 <DL>
 <DT><U>Function:</U> char * <B>rl_copy_text</B> <I>(int start, int end)</I>
 <DD>Return a copy of the text between <VAR>start</VAR> and <VAR>end</VAR> in
@@ -3743,7 +3820,7 @@ the current line.
 </DL>
 </P><P>
 
-<A NAME="IDX298"></A>
+<A NAME="IDX307"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_kill_text</B> <I>(int start, int end)</I>
 <DD>Copy the text between <VAR>start</VAR> and <VAR>end</VAR> in the current line
@@ -3755,7 +3832,7 @@ not a kill, a new kill ring slot is used.
 </DL>
 </P><P>
 
-<A NAME="IDX299"></A>
+<A NAME="IDX308"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_push_macro_input</B> <I>(char *macro)</I>
 <DD>Cause <VAR>macro</VAR> to be inserted into the line, as if it had been invoked
@@ -3782,7 +3859,7 @@ by a key bound to a macro.  Not especially useful; use
 <!--docid::SEC37::-->
 <P>
 
-<A NAME="IDX300"></A>
+<A NAME="IDX309"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_read_key</B> <I>(void)</I>
 <DD>Return the next character available from Readline's current input stream.
@@ -3794,7 +3871,7 @@ the <CODE>rl_event_hook</CODE> variable.
 </DL>
 </P><P>
 
-<A NAME="IDX301"></A>
+<A NAME="IDX310"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_getc</B> <I>(FILE *stream)</I>
 <DD>Return the next character available from <VAR>stream</VAR>, which is assumed to
@@ -3802,7 +3879,7 @@ be the keyboard.
 </DL>
 </P><P>
 
-<A NAME="IDX302"></A>
+<A NAME="IDX311"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_stuff_char</B> <I>(int c)</I>
 <DD>Insert <VAR>c</VAR> into the Readline input stream.  It will be "read"
@@ -3813,7 +3890,7 @@ before Readline attempts to read characters from the terminal with
 </DL>
 </P><P>
 
-<A NAME="IDX303"></A>
+<A NAME="IDX312"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_execute_next</B> <I>(int c)</I>
 <DD>Make <VAR>c</VAR> be the next command to be executed when <CODE>rl_read_key()</CODE>
@@ -3821,7 +3898,7 @@ is called.  This sets <VAR>rl_pending_input</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX304"></A>
+<A NAME="IDX313"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_clear_pending_input</B> <I>(void)</I>
 <DD>Unset <VAR>rl_pending_input</VAR>, effectively negating the effect of any
@@ -3830,7 +3907,7 @@ pending input has not already been read with <CODE>rl_read_key()</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX305"></A>
+<A NAME="IDX314"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_set_keyboard_input_timeout</B> <I>(int u)</I>
 <DD>While waiting for keyboard input in <CODE>rl_read_key()</CODE>, Readline will
@@ -3860,7 +3937,7 @@ Returns the old timeout value.
 <!--docid::SEC38::-->
 <P>
 
-<A NAME="IDX306"></A>
+<A NAME="IDX315"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_prep_terminal</B> <I>(int meta_flag)</I>
 <DD>Modify the terminal settings for Readline's use, so <CODE>readline()</CODE>
@@ -3870,7 +3947,7 @@ read eight-bit input.
 </DL>
 </P><P>
 
-<A NAME="IDX307"></A>
+<A NAME="IDX316"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_deprep_terminal</B> <I>(void)</I>
 <DD>Undo the effects of <CODE>rl_prep_terminal()</CODE>, leaving the terminal in
@@ -3879,7 +3956,7 @@ the state in which it was before the most recent call to
 </DL>
 </P><P>
 
-<A NAME="IDX308"></A>
+<A NAME="IDX317"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_tty_set_default_bindings</B> <I>(Keymap kmap)</I>
 <DD>Read the operating system's terminal editing characters (as would be
@@ -3888,7 +3965,7 @@ The bindings are performed in <VAR>kmap</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX309"></A>
+<A NAME="IDX318"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_tty_unset_default_bindings</B> <I>(Keymap kmap)</I>
 <DD>Reset the bindings manipulated by <CODE>rl_tty_set_default_bindings</CODE> so
@@ -3897,7 +3974,7 @@ The bindings are performed in <VAR>kmap</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX310"></A>
+<A NAME="IDX319"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_reset_terminal</B> <I>(const char *terminal_name)</I>
 <DD>Reinitialize Readline's idea of the terminal settings using
@@ -3925,7 +4002,7 @@ environment variable is used.
 <!--docid::SEC39::-->
 <P>
 
-<A NAME="IDX311"></A>
+<A NAME="IDX320"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_save_state</B> <I>(struct readline_state *sp)</I>
 <DD>Save a snapshot of Readline's internal state to <VAR>sp</VAR>.
@@ -3935,7 +4012,7 @@ The caller is responsible for allocating the structure.
 </DL>
 </P><P>
 
-<A NAME="IDX312"></A>
+<A NAME="IDX321"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_restore_state</B> <I>(struct readline_state *sp)</I>
 <DD>Restore Readline's internal state to that stored in <VAR>sp</VAR>, which must
@@ -3946,7 +4023,7 @@ The caller is responsible for freeing the structure.
 </DL>
 </P><P>
 
-<A NAME="IDX313"></A>
+<A NAME="IDX322"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_free</B> <I>(void *mem)</I>
 <DD>Deallocate the memory pointed to by <VAR>mem</VAR>.  <VAR>mem</VAR> must have been
@@ -3954,7 +4031,7 @@ allocated by <CODE>malloc</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX314"></A>
+<A NAME="IDX323"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_replace_line</B> <I>(const char *text, int clear_undo)</I>
 <DD>Replace the contents of <CODE>rl_line_buffer</CODE> with <VAR>text</VAR>.
@@ -3964,7 +4041,7 @@ current line is cleared.
 </DL>
 </P><P>
 
-<A NAME="IDX315"></A>
+<A NAME="IDX324"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_extend_line_buffer</B> <I>(int len)</I>
 <DD>Ensure that <CODE>rl_line_buffer</CODE> has enough space to hold <VAR>len</VAR>
@@ -3972,7 +4049,7 @@ characters, possibly reallocating it if necessary.
 </DL>
 </P><P>
 
-<A NAME="IDX316"></A>
+<A NAME="IDX325"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_initialize</B> <I>(void)</I>
 <DD>Initialize or re-initialize Readline's internal state.
@@ -3981,21 +4058,21 @@ reading any input.
 </DL>
 </P><P>
 
-<A NAME="IDX317"></A>
+<A NAME="IDX326"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_ding</B> <I>(void)</I>
 <DD>Ring the terminal bell, obeying the setting of <CODE>bell-style</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX318"></A>
+<A NAME="IDX327"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_alphabetic</B> <I>(int c)</I>
 <DD>Return 1 if <VAR>c</VAR> is an alphabetic character.
 </DL>
 </P><P>
 
-<A NAME="IDX319"></A>
+<A NAME="IDX328"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_display_match_list</B> <I>(char **matches, int len, int max)</I>
 <DD>A convenience function for displaying a list of strings in
@@ -4015,28 +4092,28 @@ The following are implemented as macros, defined in <CODE>chardefs.h</CODE>.
 Applications should refrain from using them.
 </P><P>
 
-<A NAME="IDX320"></A>
+<A NAME="IDX329"></A>
 <DL>
 <DT><U>Function:</U> int <B>_rl_uppercase_p</B> <I>(int c)</I>
 <DD>Return 1 if <VAR>c</VAR> is an uppercase alphabetic character.
 </DL>
 </P><P>
 
-<A NAME="IDX321"></A>
+<A NAME="IDX330"></A>
 <DL>
 <DT><U>Function:</U> int <B>_rl_lowercase_p</B> <I>(int c)</I>
 <DD>Return 1 if <VAR>c</VAR> is a lowercase alphabetic character.
 </DL>
 </P><P>
 
-<A NAME="IDX322"></A>
+<A NAME="IDX331"></A>
 <DL>
 <DT><U>Function:</U> int <B>_rl_digit_p</B> <I>(int c)</I>
 <DD>Return 1 if <VAR>c</VAR> is a numeric character.
 </DL>
 </P><P>
 
-<A NAME="IDX323"></A>
+<A NAME="IDX332"></A>
 <DL>
 <DT><U>Function:</U> int <B>_rl_to_upper</B> <I>(int c)</I>
 <DD>If <VAR>c</VAR> is a lowercase alphabetic character, return the corresponding
@@ -4044,7 +4121,7 @@ uppercase character.
 </DL>
 </P><P>
 
-<A NAME="IDX324"></A>
+<A NAME="IDX333"></A>
 <DL>
 <DT><U>Function:</U> int <B>_rl_to_lower</B> <I>(int c)</I>
 <DD>If <VAR>c</VAR> is an uppercase alphabetic character, return the corresponding
@@ -4052,7 +4129,7 @@ lowercase character.
 </DL>
 </P><P>
 
-<A NAME="IDX325"></A>
+<A NAME="IDX334"></A>
 <DL>
 <DT><U>Function:</U> int <B>_rl_digit_value</B> <I>(int c)</I>
 <DD>If <VAR>c</VAR> is a number, return the value it represents.
@@ -4077,7 +4154,7 @@ lowercase character.
 <!--docid::SEC40::-->
 <P>
 
-<A NAME="IDX326"></A>
+<A NAME="IDX335"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_macro_bind</B> <I>(const char *keyseq, const char *macro, Keymap map)</I>
 <DD>Bind the key sequence <VAR>keyseq</VAR> to invoke the macro <VAR>macro</VAR>.
@@ -4087,7 +4164,7 @@ use <CODE>rl_generic_bind()</CODE> instead.
 </DL>
 </P><P>
 
-<A NAME="IDX327"></A>
+<A NAME="IDX336"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_macro_dumper</B> <I>(int readable)</I>
 <DD>Print the key sequences bound to macros and their values, using
@@ -4097,7 +4174,7 @@ that it can be made part of an <CODE>inputrc</CODE> file and re-read.
 </DL>
 </P><P>
 
-<A NAME="IDX328"></A>
+<A NAME="IDX337"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_variable_bind</B> <I>(const char *variable, const char *value)</I>
 <DD>Make the Readline variable <VAR>variable</VAR> have <VAR>value</VAR>.
@@ -4107,7 +4184,7 @@ file (see section <A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax<
 </DL>
 </P><P>
 
-<A NAME="IDX329"></A>
+<A NAME="IDX338"></A>
 <DL>
 <DT><U>Function:</U> char * <B>rl_variable_value</B> <I>(const char *variable)</I>
 <DD>Return a string representing the value of the Readline variable <VAR>variable</VAR>.
@@ -4115,7 +4192,7 @@ For boolean variables, this string is either <SAMP>`on'</SAMP> or <SAMP>`off'</S
 </DL>
 </P><P>
 
-<A NAME="IDX330"></A>
+<A NAME="IDX339"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_variable_dumper</B> <I>(int readable)</I>
 <DD>Print the readline variable names and their current values
@@ -4125,7 +4202,7 @@ that it can be made part of an <CODE>inputrc</CODE> file and re-read.
 </DL>
 </P><P>
 
-<A NAME="IDX331"></A>
+<A NAME="IDX340"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_set_paren_blink_timeout</B> <I>(int u)</I>
 <DD>Set the time interval (in microseconds) that Readline waits when showing
@@ -4133,7 +4210,7 @@ a balancing character when <CODE>blink-matching-paren</CODE> has been enabled.
 </DL>
 </P><P>
 
-<A NAME="IDX332"></A>
+<A NAME="IDX341"></A>
 <DL>
 <DT><U>Function:</U> char * <B>rl_get_termcap</B> <I>(const char *cap)</I>
 <DD>Retrieve the string value of the termcap capability <VAR>cap</VAR>.
@@ -4145,7 +4222,7 @@ values for only those capabilities Readline uses.
 </DL>
 </P><P>
 
-<A NAME="IDX333"></A>
+<A NAME="IDX342"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_clear_history</B> <I>(void)</I>
 <DD>Clear the history list by deleting all of the entries, in the same manner
@@ -4181,7 +4258,7 @@ also be invoked as a `callback' function from an event loop.  There
 are functions available to make this easy.
 </P><P>
 
-<A NAME="IDX334"></A>
+<A NAME="IDX343"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_callback_handler_install</B> <I>(const char *prompt, rl_vcpfunc_t *lhandler)</I>
 <DD>Set up the terminal for readline I/O and display the initial
@@ -4189,10 +4266,12 @@ expanded value of <VAR>prompt</VAR>.  Save the value of <VAR>lhandler</VAR> to
 use as a handler function to call when a complete line of input has been
 entered.
 The handler function receives the text of the line as an argument.
+As with <CODE>readline()</CODE>, the handler function should <CODE>free</CODE> the
+line when it it finished with it.
 </DL>
 </P><P>
 
-<A NAME="IDX335"></A>
+<A NAME="IDX344"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_callback_read_char</B> <I>(void)</I>
 <DD>Whenever an application determines that keyboard input is available, it
@@ -4212,11 +4291,22 @@ the terminal settings are modified for Readline's use again.
 </DL>
 </P><P>
 
-<A NAME="IDX336"></A>
+<A NAME="IDX345"></A>
+<DL>
+<DT><U>Function:</U> void <B>rl_callback_sigcleanup</B> <I>(void)</I>
+<DD>Clean up any internal state the callback interface uses to maintain state
+between calls to rl_callback_read_char (e.g., the state of any active
+incremental searches).  This is intended to be used by applications that
+wish to perform their own signal handling; Readline's internal signal handler
+calls this when appropriate.
+</DL>
+</P><P>
+
+<A NAME="IDX346"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_callback_handler_remove</B> <I>(void)</I>
 <DD>Restore the terminal to its initial state and remove the line handler.
-This may be called from within a callback as well as independently.
+You may call this function from within a callback as well as independently.
 If the <VAR>lhandler</VAR> installed by <CODE>rl_callback_handler_install</CODE>
 does not exit the program, either this function or the function referred
 to by the value of <CODE>rl_deprep_term_function</CODE> should be called before
@@ -4468,7 +4558,15 @@ resetting the terminal to its original state.  If the application's signal
 handler does more than update its idea of the terminal size and return (for
 example, a <CODE>longjmp</CODE> back to a main processing loop), it <EM>must</EM>
 call <CODE>rl_cleanup_after_signal()</CODE> (described below), to restore the
-terminal state. 
+terminal state.
+</P><P>
+
+When an application is using the callback interface
+(see section <A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>), Readline installs signal handlers only for
+the duration of the call to <CODE>rl_callback_read_char</CODE>.  Applications
+using the callback interface should be prepared to clean up Readline's
+state if they wish to handle the signal before the line handler completes
+and restores the terminal state.
 </P><P>
 
 Readline provides two variables that allow application writers to
@@ -4478,7 +4576,7 @@ values of these variables only when calling <CODE>readline()</CODE>, not in
 a signal handler, so Readline's internal signal state is not corrupted.
 </P><P>
 
-<A NAME="IDX337"></A>
+<A NAME="IDX347"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_catch_signals</B>
 <DD>If this variable is non-zero, Readline will install signal handlers for
@@ -4490,7 +4588,7 @@ The default value of <CODE>rl_catch_signals</CODE> is 1.
 </DL>
 </P><P>
 
-<A NAME="IDX338"></A>
+<A NAME="IDX348"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_catch_sigwinch</B>
 <DD>If this variable is set to a non-zero value,
@@ -4501,7 +4599,7 @@ The default value of <CODE>rl_catch_sigwinch</CODE> is 1.
 </DL>
 </P><P>
 
-<A NAME="IDX339"></A>
+<A NAME="IDX349"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_change_environment</B>
 <DD>If this variable is set to a non-zero value,
@@ -4521,7 +4619,7 @@ Readline provides convenience functions to do the necessary terminal
 and internal state cleanup upon receipt of a signal.
 </P><P>
 
-<A NAME="IDX340"></A>
+<A NAME="IDX350"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_cleanup_after_signal</B> <I>(void)</I>
 <DD>This function will reset the state of the terminal to what it was before
@@ -4531,7 +4629,7 @@ all signals, depending on the values of <CODE>rl_catch_signals</CODE> and
 </DL>
 </P><P>
 
-<A NAME="IDX341"></A>
+<A NAME="IDX351"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_free_line_state</B> <I>(void)</I>
 <DD>This will free any partial state associated with the current input line
@@ -4543,7 +4641,7 @@ current input line.
 </DL>
 </P><P>
 
-<A NAME="IDX342"></A>
+<A NAME="IDX352"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_reset_after_signal</B> <I>(void)</I>
 <DD>This will reinitialize the terminal and reinstall any Readline signal
@@ -4558,7 +4656,7 @@ Readline to update its idea of the terminal size when a <CODE>SIGWINCH</CODE>
 is received.
 </P><P>
 
-<A NAME="IDX343"></A>
+<A NAME="IDX353"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_echo_signal_char</B> <I>(int sig)</I>
 <DD>If an application wishes to install its own signal handlers, but still
@@ -4568,14 +4666,14 @@ function with <VAR>sig</VAR> set to <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, o
 </DL>
 </P><P>
 
-<A NAME="IDX344"></A>
+<A NAME="IDX354"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_resize_terminal</B> <I>(void)</I>
 <DD>Update Readline's internal screen size by reading values from the kernel.
 </DL>
 </P><P>
 
-<A NAME="IDX345"></A>
+<A NAME="IDX355"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_set_screen_size</B> <I>(int rows, int cols)</I>
 <DD>Set Readline's idea of the terminal size to <VAR>rows</VAR> rows and
@@ -4589,7 +4687,7 @@ is still interested in the screen dimensions, Readline's idea of the screen
 size may be queried.
 </P><P>
 
-<A NAME="IDX346"></A>
+<A NAME="IDX356"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_get_screen_size</B> <I>(int *rows, int *cols)</I>
 <DD>Return Readline's idea of the terminal's size in the
@@ -4597,7 +4695,7 @@ variables pointed to by the arguments.
 </DL>
 </P><P>
 
-<A NAME="IDX347"></A>
+<A NAME="IDX357"></A>
 <DL>
 <DT><U>Function:</U> void <B>rl_reset_screen_size</B> <I>(void)</I>
 <DD>Cause Readline to reobtain the screen size and recalculate its dimensions.
@@ -4607,7 +4705,7 @@ variables pointed to by the arguments.
 The following functions install and remove Readline's signal handlers.
 </P><P>
 
-<A NAME="IDX348"></A>
+<A NAME="IDX358"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_set_signals</B> <I>(void)</I>
 <DD>Install Readline's signal handler for <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>,
@@ -4617,7 +4715,7 @@ The following functions install and remove Readline's signal handlers.
 </DL>
 </P><P>
 
-<A NAME="IDX349"></A>
+<A NAME="IDX359"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_clear_signals</B> <I>(void)</I>
 <DD>Remove all of the Readline signal handlers installed by
@@ -4730,7 +4828,7 @@ Such a generator function is referred to as an
 </OL>
 <P>
 
-<A NAME="IDX350"></A>
+<A NAME="IDX360"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_complete</B> <I>(int ignore, int invoking_key)</I>
 <DD>Complete the word at or before point.  You have supplied the function
@@ -4739,7 +4837,7 @@ that does the initial simple matching selection algorithm (see
 </DL>
 </P><P>
 
-<A NAME="IDX351"></A>
+<A NAME="IDX361"></A>
 <DL>
 <DT><U>Variable:</U> rl_compentry_func_t * <B>rl_completion_entry_function</B>
 <DD>This is a pointer to the generator function for
@@ -4775,7 +4873,7 @@ Here is the complete list of callable completion functions present in
 Readline.
 </P><P>
 
-<A NAME="IDX352"></A>
+<A NAME="IDX362"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_complete_internal</B> <I>(int what_to_do)</I>
 <DD>Complete the word at or before point.  <VAR>what_to_do</VAR> says what to do
@@ -4789,7 +4887,7 @@ a common prefix.
 </DL>
 </P><P>
 
-<A NAME="IDX353"></A>
+<A NAME="IDX363"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_complete</B> <I>(int ignore, int invoking_key)</I>
 <DD>Complete the word at or before point.  You have supplied the function
@@ -4801,7 +4899,7 @@ argument depending on <VAR>invoking_key</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX354"></A>
+<A NAME="IDX364"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_possible_completions</B> <I>(int count, int invoking_key)</I>
 <DD>List the possible completions.  See description of <CODE>rl_complete
@@ -4810,7 +4908,7 @@ argument depending on <VAR>invoking_key</VAR>.
 </DL>
 </P><P>
 
-<A NAME="IDX355"></A>
+<A NAME="IDX365"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_insert_completions</B> <I>(int count, int invoking_key)</I>
 <DD>Insert the list of possible completions into the line, deleting the
@@ -4819,7 +4917,7 @@ This calls <CODE>rl_complete_internal()</CODE> with an argument of <SAMP>`*'</SA
 </DL>
 </P><P>
 
-<A NAME="IDX356"></A>
+<A NAME="IDX366"></A>
 <DL>
 <DT><U>Function:</U> int <B>rl_completion_mode</B> <I>(rl_command_func_t *cfunc)</I>
 <DD>Returns the appropriate value to pass to <CODE>rl_complete_internal()</CODE>
@@ -4831,7 +4929,7 @@ the same interface as <CODE>rl_complete()</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX357"></A>
+<A NAME="IDX367"></A>
 <DL>
 <DT><U>Function:</U> char ** <B>rl_completion_matches</B> <I>(const char *text, rl_compentry_func_t *entry_func)</I>
 <DD>Returns an array of strings which is a list of completions for
@@ -4849,7 +4947,7 @@ when there are no more matches.
 </DL>
 </P><P>
 
-<A NAME="IDX358"></A>
+<A NAME="IDX368"></A>
 <DL>
 <DT><U>Function:</U> char * <B>rl_filename_completion_function</B> <I>(const char *text, int state)</I>
 <DD>A generator function for filename completion in the general case.
@@ -4860,7 +4958,7 @@ Readline functions).
 </DL>
 </P><P>
 
-<A NAME="IDX359"></A>
+<A NAME="IDX369"></A>
 <DL>
 <DT><U>Function:</U> char * <B>rl_username_completion_function</B> <I>(const char *text, int state)</I>
 <DD>A completion generator for usernames.  <VAR>text</VAR> contains a partial
@@ -4888,7 +4986,7 @@ for subsequent calls.
 <!--docid::SEC48::-->
 <P>
 
-<A NAME="IDX360"></A>
+<A NAME="IDX370"></A>
 <DL>
 <DT><U>Variable:</U> rl_compentry_func_t * <B>rl_completion_entry_function</B>
 <DD>A pointer to the generator function for <CODE>rl_completion_matches()</CODE>.
@@ -4897,7 +4995,7 @@ the default filename completer.
 </DL>
 </P><P>
 
-<A NAME="IDX361"></A>
+<A NAME="IDX371"></A>
 <DL>
 <DT><U>Variable:</U> rl_completion_func_t * <B>rl_attempted_completion_function</B>
 <DD>A pointer to an alternative function to create matches.
@@ -4914,7 +5012,7 @@ completion even if this function returns no matches.
 </DL>
 </P><P>
 
-<A NAME="IDX362"></A>
+<A NAME="IDX372"></A>
 <DL>
 <DT><U>Variable:</U> rl_quote_func_t * <B>rl_filename_quoting_function</B>
 <DD>A pointer to a function that will quote a filename in an
@@ -4931,7 +5029,7 @@ to reset this character.
 </DL>
 </P><P>
 
-<A NAME="IDX363"></A>
+<A NAME="IDX373"></A>
 <DL>
 <DT><U>Variable:</U> rl_dequote_func_t * <B>rl_filename_dequoting_function</B>
 <DD>A pointer to a function that will remove application-specific quoting
@@ -4944,7 +5042,7 @@ that delimits the filename (usually <SAMP>`''</SAMP> or <SAMP>`"'</SAMP>).  If
 </DL>
 </P><P>
 
-<A NAME="IDX364"></A>
+<A NAME="IDX374"></A>
 <DL>
 <DT><U>Variable:</U> rl_linebuf_func_t * <B>rl_char_is_quoted_p</B>
 <DD>A pointer to a function to call that determines whether or not a specific
@@ -4957,7 +5055,7 @@ used to break words for the completer.
 </DL>
 </P><P>
 
-<A NAME="IDX365"></A>
+<A NAME="IDX375"></A>
 <DL>
 <DT><U>Variable:</U> rl_compignore_func_t * <B>rl_ignore_some_completions_function</B>
 <DD>This function, if defined, is called by the completer when real filename
@@ -4970,7 +5068,7 @@ from the array must be freed.
 </DL>
 </P><P>
 
-<A NAME="IDX366"></A>
+<A NAME="IDX376"></A>
 <DL>
 <DT><U>Variable:</U> rl_icppfunc_t * <B>rl_directory_completion_hook</B>
 <DD>This function, if defined, is allowed to modify the directory portion
@@ -4993,7 +5091,7 @@ The function should not modify the directory argument if it returns 0.
 </DL>
 </P><P>
 
-<A NAME="IDX367"></A>
+<A NAME="IDX377"></A>
 <DL>
 <DT><U>Variable:</U> rl_icppfunc_t * <B>rl_directory_rewrite_hook;</B>
 <DD>If non-zero, this is the address of a function to call when completing
@@ -5013,7 +5111,7 @@ The function should not modify the directory argument if it returns 0.
 </DL>
 </P><P>
 
-<A NAME="IDX368"></A>
+<A NAME="IDX378"></A>
 <DL>
 <DT><U>Variable:</U> rl_icppfunc_t * <B>rl_filename_stat_hook</B>
 <DD>If non-zero, this is the address of a function for the completer to
@@ -5029,7 +5127,7 @@ The function should not modify the directory argument if it returns 0.
 </DL>
 </P><P>
 
-<A NAME="IDX369"></A>
+<A NAME="IDX379"></A>
 <DL>
 <DT><U>Variable:</U> rl_dequote_func_t * <B>rl_filename_rewrite_hook</B>
 <DD>If non-zero, this is the address of a function called when reading
@@ -5048,7 +5146,7 @@ allocated string.
 </DL>
 </P><P>
 
-<A NAME="IDX370"></A>
+<A NAME="IDX380"></A>
 <DL>
 <DT><U>Variable:</U> rl_compdisp_func_t * <B>rl_completion_display_matches_hook</B>
 <DD>If non-zero, then this is the address of a function to call when
@@ -5060,12 +5158,12 @@ where <VAR>matches</VAR> is the array of matching strings,
 <VAR>num_matches</VAR> is the number of strings in that array, and
 <VAR>max_length</VAR> is the length of the longest string in that array.
 Readline provides a convenience function, <CODE>rl_display_match_list</CODE>,
-that takes care of doing the display to Readline's output stream.  That
-function may be called from this hook.
+that takes care of doing the display to Readline's output stream.
+You may call that function from this hook.
 </DL>
 </P><P>
 
-<A NAME="IDX371"></A>
+<A NAME="IDX381"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_basic_word_break_characters</B>
 <DD>The basic list of characters that signal a break between words for the
@@ -5075,14 +5173,14 @@ which break words for completion in Bash:
 </DL>
 </P><P>
 
-<A NAME="IDX372"></A>
+<A NAME="IDX382"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_basic_quote_characters</B>
 <DD>A list of quote characters which can cause a word break.
 </DL>
 </P><P>
 
-<A NAME="IDX373"></A>
+<A NAME="IDX383"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_completer_word_break_characters</B>
 <DD>The list of characters that signal a break between words for
@@ -5091,7 +5189,7 @@ which break words for completion in Bash:
 </DL>
 </P><P>
 
-<A NAME="IDX374"></A>
+<A NAME="IDX384"></A>
 <DL>
 <DT><U>Variable:</U> rl_cpvfunc_t * <B>rl_completion_word_break_hook</B>
 <DD>If non-zero, this is the address of a function to call when Readline is
@@ -5103,7 +5201,7 @@ returns <CODE>NULL</CODE>, <CODE>rl_completer_word_break_characters</CODE> is us
 </DL>
 </P><P>
 
-<A NAME="IDX375"></A>
+<A NAME="IDX385"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_completer_quote_characters</B>
 <DD>A list of characters which can be used to quote a substring of the line.
@@ -5113,7 +5211,7 @@ unless they also appear within this list.
 </DL>
 </P><P>
 
-<A NAME="IDX376"></A>
+<A NAME="IDX386"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_filename_quote_characters</B>
 <DD>A list of characters that cause a filename to be quoted by the completer
@@ -5121,7 +5219,7 @@ when they appear in a completed filename.  The default is the null string.
 </DL>
 </P><P>
 
-<A NAME="IDX377"></A>
+<A NAME="IDX387"></A>
 <DL>
 <DT><U>Variable:</U> const char * <B>rl_special_prefixes</B>
 <DD>The list of characters that are word break characters, but should be
@@ -5132,7 +5230,7 @@ shell variables and hostnames.
 </DL>
 </P><P>
 
-<A NAME="IDX378"></A>
+<A NAME="IDX388"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_query_items</B>
 <DD>Up to this many items will be displayed in response to a
@@ -5142,7 +5240,7 @@ indicates that Readline should never ask the user.
 </DL>
 </P><P>
 
-<A NAME="IDX379"></A>
+<A NAME="IDX389"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_append_character</B>
 <DD>When a single completion alternative matches at the end of the command
@@ -5155,7 +5253,7 @@ an application-specific command line syntax specification.
 </DL>
 </P><P>
 
-<A NAME="IDX380"></A>
+<A NAME="IDX390"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_suppress_append</B>
 <DD>If non-zero, <VAR>rl_completion_append_character</VAR> is not appended to
@@ -5165,7 +5263,7 @@ is called, and may only be changed within such a function.
 </DL>
 </P><P>
 
-<A NAME="IDX381"></A>
+<A NAME="IDX391"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_quote_character</B>
 <DD>When Readline is completing quoted text, as delimited by one of the
@@ -5175,7 +5273,7 @@ This is set before any application-specific completion function is called.
 </DL>
 </P><P>
 
-<A NAME="IDX382"></A>
+<A NAME="IDX392"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_suppress_quote</B>
 <DD>If non-zero, Readline does not append a matching quote character when
@@ -5185,7 +5283,7 @@ is called, and may only be changed within such a function.
 </DL>
 </P><P>
 
-<A NAME="IDX383"></A>
+<A NAME="IDX393"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_found_quote</B>
 <DD>When Readline is completing quoted text, it sets this variable
@@ -5195,7 +5293,7 @@ This is set before any application-specific completion function is called.
 </DL>
 </P><P>
 
-<A NAME="IDX384"></A>
+<A NAME="IDX394"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_mark_symlink_dirs</B>
 <DD>If non-zero, a slash will be appended to completed filenames that are
@@ -5210,7 +5308,7 @@ function modifies the value, the user's preferences are honored.
 </DL>
 </P><P>
 
-<A NAME="IDX385"></A>
+<A NAME="IDX395"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_ignore_completion_duplicates</B>
 <DD>If non-zero, then duplicates in the matches are removed.
@@ -5218,7 +5316,7 @@ The default is 1.
 </DL>
 </P><P>
 
-<A NAME="IDX386"></A>
+<A NAME="IDX396"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_filename_completion_desired</B>
 <DD>Non-zero means that the results of the matches are to be treated as
@@ -5232,7 +5330,7 @@ characters in <CODE>rl_filename_quote_characters</CODE> and
 </DL>
 </P><P>
 
-<A NAME="IDX387"></A>
+<A NAME="IDX397"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_filename_quoting_desired</B>
 <DD>Non-zero means that the results of the matches are to be quoted using
@@ -5246,7 +5344,7 @@ by <CODE>rl_filename_quoting_function</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX388"></A>
+<A NAME="IDX398"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_attempted_completion_over</B>
 <DD>If an application-specific completion function assigned to
@@ -5257,7 +5355,7 @@ It should be set only by an application's completion function.
 </DL>
 </P><P>
 
-<A NAME="IDX389"></A>
+<A NAME="IDX399"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_sort_completion_matches</B>
 <DD>If an application sets this variable to 0, Readline will not sort the
@@ -5269,7 +5367,7 @@ matches.
 </DL>
 </P><P>
 
-<A NAME="IDX390"></A>
+<A NAME="IDX400"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_type</B>
 <DD>Set to a character describing the type of completion Readline is currently
@@ -5281,7 +5379,7 @@ the same interface as <CODE>rl_complete()</CODE>.
 </DL>
 </P><P>
 
-<A NAME="IDX391"></A>
+<A NAME="IDX401"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_completion_invoking_key</B>
 <DD>Set to the final character in the key sequence that invoked one of the
@@ -5291,7 +5389,7 @@ function is called.
 </DL>
 </P><P>
 
-<A NAME="IDX392"></A>
+<A NAME="IDX402"></A>
 <DL>
 <DT><U>Variable:</U> int <B>rl_inhibit_completion</B>
 <DD>If this variable is non-zero, completion is inhibited.  The completion
@@ -6438,7 +6536,7 @@ to permit their use in free software.
 <TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">notation, readline</A></TD><TD valign=top><A HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="cp_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX201">readline, function</A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX210">readline, function</A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="cp_V"></A>V</TH><TD></TD><TD></TD></TR>
 <TR><TD></TD><TD valign=top><A HREF="readline.html#IDX4">variables, readline</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
@@ -6530,433 +6628,443 @@ to permit their use in free software.
 <TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn__"></A>_</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX322"><CODE>_rl_digit_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX325"><CODE>_rl_digit_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX321"><CODE>_rl_lowercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX324"><CODE>_rl_to_lower</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX323"><CODE>_rl_to_upper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX320"><CODE>_rl_uppercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX331"><CODE>_rl_digit_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX334"><CODE>_rl_digit_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX330"><CODE>_rl_lowercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX333"><CODE>_rl_to_lower</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX332"><CODE>_rl_to_upper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX329"><CODE>_rl_uppercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX166"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX167"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX54"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX55"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX175"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX176"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX61"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX62"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_B"></A>B</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX44"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX45"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX88"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX89"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX112"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX113"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX120"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX121"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX48"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX49"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX60"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX61"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX38"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX39"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX51"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX52"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX95"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX96"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX121"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX122"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX129"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX130"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX55"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX56"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX67"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX68"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX45"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX46"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
 <TR><TD></TD><TD valign=top><A HREF="readline.html#IDX5">bell-style</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
 <TR><TD></TD><TD valign=top><A HREF="readline.html#IDX6">bind-tty-special-chars</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX7">blink-matching-paren</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX105"><CODE>bracketed-paste-begin ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX106"><CODE>bracketed-paste-begin ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX160"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX161"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX106"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX107"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX182"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX183"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX184"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX185"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX50"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX51"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX7">colored-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX8">comment-begin</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX144"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX145"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX9">completion-display-width</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX10">completion-ignore-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX11">completion-map-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX12">completion-prefix-display-length</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX13">completion-query-items</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX14">convert-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX132"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX133"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX134"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX135"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX130"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX131"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX169"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX170"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX115"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX116"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX191"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX192"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX193"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX194"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX57"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX58"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX8">colored-completion-prefix</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX9">colored-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX10">comment-begin</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX153"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX154"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX11">completion-display-width</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX12">completion-ignore-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX13">completion-map-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX14">completion-prefix-display-length</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX15">completion-query-items</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX16">convert-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX141"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX142"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX143"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX144"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX139"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX140"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_D"></A>D</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX86"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX87"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX154"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX155"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX126"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX127"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX140"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX141"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX15">disable-completion</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX168"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX169"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX104"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX105"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX190"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX191"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX194"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX195"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX192"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX193"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX93"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX94"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX163"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX164"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX135"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX136"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX149"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX150"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX17">disable-completion</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX177"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX178"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX113"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX114"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX199"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX200"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX203"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX204"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX201"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX202"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX16">editing-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX196"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX197"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX17">enable-keypad</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX158"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX159"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX84"><CODE><I>end-of-file</I> (usually C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX85"><CODE><I>end-of-file</I> (usually C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX62"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX63"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX40"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX41"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX180"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX181"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX18">expand-tilde</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX20">echo-control-characters</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX18">editing-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX205"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX206"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX19">emacs-mode-string</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX21">enable-bracketed-paste</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX22">enable-keypad</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX167"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX168"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX91"><CODE><I>end-of-file</I> (usually C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX92"><CODE><I>end-of-file</I> (usually C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX69"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX70"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX47"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX48"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX189"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX190"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX23">expand-tilde</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_F"></A>F</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX90"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX91"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX42"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX43"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX66"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX67"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX46"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX47"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX97"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX98"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX49"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX50"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX73"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX74"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX53"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX54"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX19">history-preserve-point</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX74"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX75"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX72"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX73"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX20">history-size</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX78"><CODE>history-substr-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX79"><CODE>history-substr-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX76"><CODE>history-substr-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX77"><CODE>history-substr-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX21">horizontal-scroll-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX24">history-preserve-point</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX81"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX82"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX79"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX80"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX25">history-size</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX85"><CODE>history-substr-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX86"><CODE>history-substr-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX83"><CODE>history-substr-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX84"><CODE>history-substr-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX26">horizontal-scroll-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_I"></A>I</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX22">input-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX188"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX189"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX148"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX149"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX24">isearch-terminators</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX27">input-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX197"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX198"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX157"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX158"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX29">isearch-terminators</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_K"></A>K</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX25">keymap</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX110"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX111"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX128"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX129"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX116"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX117"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX118"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX119"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX30">keymap</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX119"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX120"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX137"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX138"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX125"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX126"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX127"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX128"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_M"></A>M</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX26">mark-modified-lines</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX27">mark-symlinked-directories</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX28">match-hidden-files</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX150"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX151"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX152"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX153"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX29">menu-complete-display-prefix</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX23">meta-flag</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX31">mark-modified-lines</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX32">mark-symlinked-directories</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX33">match-hidden-files</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX159"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX160"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX161"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX162"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX34">menu-complete-display-prefix</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX28">meta-flag</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_N"></A>N</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX58"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX59"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX70"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX71"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX68"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX69"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX65"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX66"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX77"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX78"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX75"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX76"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_O"></A>O</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX30">output-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX108"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX109"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX35">output-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX117"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX118"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_P"></A>P</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX31">page-completions</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX146"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX147"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX170"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX171"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX56"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX57"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX162"><CODE>print-last-kbd-macro ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX163"><CODE>print-last-kbd-macro ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX36">page-completions</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX155"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX156"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX179"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX180"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX63"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX64"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX171"><CODE>print-last-kbd-macro ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX172"><CODE>print-last-kbd-macro ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_Q"></A>Q</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX92"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX93"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX99"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX100"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX164"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX165"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX200"><CODE>readline</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX52"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX53"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX64"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX65"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX32">revert-all-at-newline</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX174"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX175"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX242"><CODE>rl_add_defun</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC30">2.4.1 Naming a Function</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX275"><CODE>rl_add_funmap_entry</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX278"><CODE>rl_add_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX318"><CODE>rl_alphabetic</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX213">rl_already_prompted</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX361">rl_attempted_completion_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX388">rl_attempted_completion_over</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX372">rl_basic_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX371">rl_basic_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX276"><CODE>rl_begin_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX252"><CODE>rl_bind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX254"><CODE>rl_bind_key_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX255"><CODE>rl_bind_key_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX253"><CODE>rl_bind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX260"><CODE>rl_bind_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX263"><CODE>rl_bind_keyseq_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX264"><CODE>rl_bind_keyseq_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX261"><CODE>rl_bind_keyseq_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX233">rl_binding_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX334"><CODE>rl_callback_handler_install</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX336"><CODE>rl_callback_handler_remove</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX335"><CODE>rl_callback_read_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX337">rl_catch_signals</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX338">rl_catch_sigwinch</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX339">rl_change_environment</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX364">rl_char_is_quoted_p</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX340"><CODE>rl_cleanup_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX333"><CODE>rl_clear_history</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX290"><CODE>rl_clear_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX304"><CODE>rl_clear_pending_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX349"><CODE>rl_clear_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX350"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX353"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX352"><CODE>rl_complete_internal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX375">rl_completer_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX373">rl_completer_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX379">rl_completion_append_character</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX370">rl_completion_display_matches_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX351">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX360">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX383">rl_completion_found_quote</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX391">rl_completion_invoking_key</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX384">rl_completion_mark_symlink_dirs</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX357"><CODE>rl_completion_matches</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX356"><CODE>rl_completion_mode</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX378">rl_completion_query_items</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX381">rl_completion_quote_character</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX380">rl_completion_suppress_append</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX382">rl_completion_suppress_quote</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX390">rl_completion_type</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX374">rl_completion_word_break_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX244"><CODE>rl_copy_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX297"><CODE>rl_copy_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX287"><CODE>rl_crlf</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX296"><CODE>rl_delete_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX231">rl_deprep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX307"><CODE>rl_deprep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX317"><CODE>rl_ding</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX366">rl_directory_completion_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX367">rl_directory_rewrite_hook;</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX246"><CODE>rl_discard_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX209">rl_dispatching</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX319"><CODE>rl_display_match_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX212">rl_display_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX280"><CODE>rl_do_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX206">rl_done</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX343"><CODE>rl_echo_signal_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX241">rl_editing_mode</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX204">rl_end</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX277"><CODE>rl_end_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX210">rl_erase_empty_line</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX225">rl_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX303"><CODE>rl_execute_next</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX235">rl_executing_key</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX232">rl_executing_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX236">rl_executing_keyseq</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX234">rl_executing_macro</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX293"><CODE>rl_expand_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX239">rl_explicit_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX315"><CODE>rl_extend_line_buffer</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX386">rl_filename_completion_desired</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX358"><CODE>rl_filename_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX363">rl_filename_dequoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX376">rl_filename_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX387">rl_filename_quoting_desired</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX362">rl_filename_quoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX369">rl_filename_rewrite_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX368">rl_filename_stat_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX283"><CODE>rl_forced_update_display</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX313"><CODE>rl_free</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX247"><CODE>rl_free_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX341"><CODE>rl_free_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX279"><CODE>rl_free_undo_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX272"><CODE>rl_function_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX269"><CODE>rl_function_of_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX274"><CODE>rl_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX265"><CODE>rl_generic_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX248"><CODE>rl_get_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX250"><CODE>rl_get_keymap_by_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX251"><CODE>rl_get_keymap_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX346"><CODE>rl_get_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX332"><CODE>rl_get_termcap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX301"><CODE>rl_getc</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX226">rl_getc_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX216">rl_gnu_readline_p</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX385">rl_ignore_completion_duplicates</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX365">rl_ignore_some_completions_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX392">rl_inhibit_completion</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX316"><CODE>rl_initialize</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX228">rl_input_available_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX355"><CODE>rl_insert_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX295"><CODE>rl_insert_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX219">rl_instream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX270"><CODE>rl_invoking_keyseqs</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX271"><CODE>rl_invoking_keyseqs_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX237">rl_key_sequence_length</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX298"><CODE>rl_kill_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX222">rl_last_func</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX214">rl_library_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX202">rl_line_buffer</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX273"><CODE>rl_list_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX326"><CODE>rl_macro_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX327"><CODE>rl_macro_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX243"><CODE>rl_make_bare_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX245"><CODE>rl_make_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX205">rl_mark</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX289"><CODE>rl_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX281"><CODE>rl_modifying</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX268"><CODE>rl_named_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX207">rl_num_chars_to_read</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX240">rl_numeric_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX284"><CODE>rl_on_new_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX285"><CODE>rl_on_new_line_with_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX220">rl_outstream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX266"><CODE>rl_parse_and_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX208">rl_pending_input</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX203">rl_point</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX354"><CODE>rl_possible_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX224">rl_pre_input_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX221">rl_prefer_env_winsize</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX230">rl_prep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX306"><CODE>rl_prep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX211">rl_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX299"><CODE>rl_push_macro_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX267"><CODE>rl_read_init_file</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX300"><CODE>rl_read_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX218">rl_readline_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX238">rl_readline_state</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX215">rl_readline_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX282"><CODE>rl_redisplay</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX229">rl_redisplay_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX314"><CODE>rl_replace_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX342"><CODE>rl_reset_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX286"><CODE>rl_reset_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX347"><CODE>rl_reset_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX310"><CODE>rl_reset_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX344"><CODE>rl_resize_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX292"><CODE>rl_restore_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX312"><CODE>rl_restore_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX291"><CODE>rl_save_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX311"><CODE>rl_save_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX262"><CODE>rl_set_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX305"><CODE>rl_set_keyboard_input_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX249"><CODE>rl_set_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX331"><CODE>rl_set_paren_blink_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX294"><CODE>rl_set_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX345"><CODE>rl_set_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX348"><CODE>rl_set_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX288"><CODE>rl_show_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX227">rl_signal_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX389">rl_sort_completion_matches</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX377">rl_special_prefixes</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX223">rl_startup_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX302"><CODE>rl_stuff_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX217">rl_terminal_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX308"><CODE>rl_tty_set_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX309"><CODE>rl_tty_unset_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX259"><CODE>rl_unbind_command_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX258"><CODE>rl_unbind_function_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX256"><CODE>rl_unbind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX257"><CODE>rl_unbind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX359"><CODE>rl_username_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX328"><CODE>rl_variable_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX330"><CODE>rl_variable_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX329"><CODE>rl_variable_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX173"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX174"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX209"><CODE>readline</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX59"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX60"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX71"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX72"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX37">revert-all-at-newline</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX183"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX184"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX251"><CODE>rl_add_defun</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC30">2.4.1 Naming a Function</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX284"><CODE>rl_add_funmap_entry</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX287"><CODE>rl_add_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX327"><CODE>rl_alphabetic</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX222">rl_already_prompted</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX371">rl_attempted_completion_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX398">rl_attempted_completion_over</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX382">rl_basic_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX381">rl_basic_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX285"><CODE>rl_begin_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX261"><CODE>rl_bind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX263"><CODE>rl_bind_key_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX264"><CODE>rl_bind_key_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX262"><CODE>rl_bind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX269"><CODE>rl_bind_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX272"><CODE>rl_bind_keyseq_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX273"><CODE>rl_bind_keyseq_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX270"><CODE>rl_bind_keyseq_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX242">rl_binding_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX343"><CODE>rl_callback_handler_install</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX346"><CODE>rl_callback_handler_remove</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX344"><CODE>rl_callback_read_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX345"><CODE>rl_callback_sigcleanup</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX347">rl_catch_signals</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX348">rl_catch_sigwinch</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX349">rl_change_environment</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX374">rl_char_is_quoted_p</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX350"><CODE>rl_cleanup_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX342"><CODE>rl_clear_history</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX299"><CODE>rl_clear_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX313"><CODE>rl_clear_pending_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX359"><CODE>rl_clear_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX360"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX363"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX362"><CODE>rl_complete_internal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX385">rl_completer_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX383">rl_completer_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX389">rl_completion_append_character</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX380">rl_completion_display_matches_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX361">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX370">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX393">rl_completion_found_quote</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX401">rl_completion_invoking_key</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX394">rl_completion_mark_symlink_dirs</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX367"><CODE>rl_completion_matches</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX366"><CODE>rl_completion_mode</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX388">rl_completion_query_items</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX391">rl_completion_quote_character</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX390">rl_completion_suppress_append</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX392">rl_completion_suppress_quote</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX400">rl_completion_type</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX384">rl_completion_word_break_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX253"><CODE>rl_copy_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX306"><CODE>rl_copy_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX296"><CODE>rl_crlf</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX305"><CODE>rl_delete_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX240">rl_deprep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX316"><CODE>rl_deprep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX326"><CODE>rl_ding</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX376">rl_directory_completion_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX377">rl_directory_rewrite_hook;</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX255"><CODE>rl_discard_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX218">rl_dispatching</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX328"><CODE>rl_display_match_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX221">rl_display_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX289"><CODE>rl_do_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX215">rl_done</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX353"><CODE>rl_echo_signal_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX250">rl_editing_mode</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX213">rl_end</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX286"><CODE>rl_end_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX219">rl_erase_empty_line</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX234">rl_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX312"><CODE>rl_execute_next</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX244">rl_executing_key</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX241">rl_executing_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX245">rl_executing_keyseq</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX243">rl_executing_macro</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX302"><CODE>rl_expand_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX248">rl_explicit_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX324"><CODE>rl_extend_line_buffer</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX396">rl_filename_completion_desired</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX368"><CODE>rl_filename_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX373">rl_filename_dequoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX386">rl_filename_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX397">rl_filename_quoting_desired</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX372">rl_filename_quoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX379">rl_filename_rewrite_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX378">rl_filename_stat_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX292"><CODE>rl_forced_update_display</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX322"><CODE>rl_free</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX256"><CODE>rl_free_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX351"><CODE>rl_free_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX288"><CODE>rl_free_undo_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX281"><CODE>rl_function_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX278"><CODE>rl_function_of_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX283"><CODE>rl_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX274"><CODE>rl_generic_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX257"><CODE>rl_get_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX259"><CODE>rl_get_keymap_by_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX260"><CODE>rl_get_keymap_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX356"><CODE>rl_get_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX341"><CODE>rl_get_termcap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX310"><CODE>rl_getc</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX235">rl_getc_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX225">rl_gnu_readline_p</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX395">rl_ignore_completion_duplicates</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX375">rl_ignore_some_completions_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX402">rl_inhibit_completion</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX325"><CODE>rl_initialize</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX237">rl_input_available_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX365"><CODE>rl_insert_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX304"><CODE>rl_insert_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX228">rl_instream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX279"><CODE>rl_invoking_keyseqs</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX280"><CODE>rl_invoking_keyseqs_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX246">rl_key_sequence_length</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX307"><CODE>rl_kill_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX231">rl_last_func</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX223">rl_library_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX211">rl_line_buffer</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX282"><CODE>rl_list_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX335"><CODE>rl_macro_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX336"><CODE>rl_macro_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX252"><CODE>rl_make_bare_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX254"><CODE>rl_make_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX214">rl_mark</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX298"><CODE>rl_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX290"><CODE>rl_modifying</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX277"><CODE>rl_named_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX216">rl_num_chars_to_read</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX249">rl_numeric_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX293"><CODE>rl_on_new_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX294"><CODE>rl_on_new_line_with_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX229">rl_outstream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX275"><CODE>rl_parse_and_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX217">rl_pending_input</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX212">rl_point</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX364"><CODE>rl_possible_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX233">rl_pre_input_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX230">rl_prefer_env_winsize</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX239">rl_prep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX315"><CODE>rl_prep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX220">rl_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX308"><CODE>rl_push_macro_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX276"><CODE>rl_read_init_file</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX309"><CODE>rl_read_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX227">rl_readline_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX247">rl_readline_state</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX224">rl_readline_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX291"><CODE>rl_redisplay</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX238">rl_redisplay_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX323"><CODE>rl_replace_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX352"><CODE>rl_reset_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX295"><CODE>rl_reset_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX357"><CODE>rl_reset_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX319"><CODE>rl_reset_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX354"><CODE>rl_resize_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX301"><CODE>rl_restore_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX321"><CODE>rl_restore_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX300"><CODE>rl_save_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX320"><CODE>rl_save_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX271"><CODE>rl_set_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX314"><CODE>rl_set_keyboard_input_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX258"><CODE>rl_set_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX340"><CODE>rl_set_paren_blink_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX303"><CODE>rl_set_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX355"><CODE>rl_set_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX358"><CODE>rl_set_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX297"><CODE>rl_show_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX236">rl_signal_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX399">rl_sort_completion_matches</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX387">rl_special_prefixes</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX232">rl_startup_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX311"><CODE>rl_stuff_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX226">rl_terminal_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX317"><CODE>rl_tty_set_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX318"><CODE>rl_tty_unset_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX268"><CODE>rl_unbind_command_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX267"><CODE>rl_unbind_function_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX265"><CODE>rl_unbind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX266"><CODE>rl_unbind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX369"><CODE>rl_username_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX337"><CODE>rl_variable_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX339"><CODE>rl_variable_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX338"><CODE>rl_variable_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_S"></A>S</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX96"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX97"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX178"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX179"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX33">show-all-if-ambiguous</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX34">show-all-if-unmodified</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX35">show-mode-in-prompt</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX36">skip-completed-text</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX186"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX187"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX156"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX157"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX103"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX104"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX187"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX188"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX38">show-all-if-ambiguous</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX39">show-all-if-unmodified</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX40">show-mode-in-prompt</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX41">skip-completed-text</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX195"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX196"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX165"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX166"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_T"></A>T</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX94"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX95"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX176"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX177"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX98"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX99"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX100"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX101"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX101"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX102"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX185"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX186"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX107"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX108"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX109"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX110"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_U"></A>U</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX172"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX173"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX142"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX143"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX124"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX125"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX114"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX115"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX122"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX123"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX102"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX103"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX181"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX182"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX151"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX152"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX133"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX134"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX123"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX124"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX131"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX132"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX111"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX112"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_V"></A>V</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX198"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX199"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX37">visible-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX42">vi-cmd-mode-string</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX207"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX208"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX43">vi-ins-mode-string</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX44">visible-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 <TR><TH><A NAME="fn_Y"></A>Y</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX136"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX137"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX82"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX83"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX80"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX81"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX138"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX139"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX145"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX146"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX89"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX90"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX87"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX88"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX147"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX148"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
 <TR><TD COLSPAN=3> <HR></TD></TR>
 </TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#fn__" style="text-decoration:none"><b>_</b></A>
  &nbsp; 
@@ -7165,7 +7273,7 @@ to permit their use in free software.
 <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
 </TR></TABLE>
 <H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 11  2014</I>
+This document was generated by <I>Chet Ramey</I> on <I>July, 1  2015</I>
 using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
 "><I>texi2html</I></A>
 <P></P>  
@@ -7327,7 +7435,7 @@ the following structure:
 <BR>  
 <FONT SIZE="-1">
 This document was generated
-by <I>Chet Ramey</I> on <I>February, 11  2014</I>
+by <I>Chet Ramey</I> on <I>July, 1  2015</I>
 using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
 "><I>texi2html</I></A>
 
index 344e1dd2c783179e1e986a2197a5c3a6412f9a5e..f71cbb897e19b0d8e623be12ae19fd24ab5e41d6 100644 (file)
@@ -1,8 +1,7 @@
-This is readline.info, produced by makeinfo version 4.13 from
-/usr/homes/chet/src/bash/readline-src/doc/rlman.texi.
+This is readline.info, produced by makeinfo version 5.2 from rlman.texi.
 
-This manual describes the GNU Readline Library (version 6.3, 6 January
-2014), a library which aids in the consistency of user interface across
+This manual describes the GNU Readline Library (version 6.4, 28 May
+2015), a library which aids in the consistency of user interface across
 discrete programs which provide a command line interface.
 
    Copyright (C) 1988-2014 Free Software Foundation, Inc.
@@ -14,7 +13,6 @@ discrete programs which provide a command line interface.
      no Back-Cover Texts.  A copy of the license is included in the
      section entitled "GNU Free Documentation License".
 
-
 INFO-DIR-SECTION Libraries
 START-INFO-DIR-ENTRY
 * Readline: (readline).       The GNU readline library API.
@@ -29,7 +27,7 @@ GNU Readline Library
 This document describes the GNU Readline Library, a utility which aids
 in the consistency of user interface across discrete programs which
 provide a command line interface.  The Readline home page is
-`http://www.gnu.org/software/readline/'.
+<http://www.gnu.org/software/readline/>.
 
 * Menu:
 
@@ -68,10 +66,10 @@ File: readline.info,  Node: Introduction and Notation,  Next: Readline Interacti
 The following paragraphs describe the notation used to represent
 keystrokes.
 
-   The text `C-k' is read as `Control-K' and describes the character
+   The text 'C-k' is read as 'Control-K' and describes the character
 produced when the <k> key is pressed while the Control key is depressed.
 
-   The text `M-k' is read as `Meta-K' and describes the character
+   The text 'M-k' is read as 'Meta-K' and describes the character
 produced when the Meta key (if you have one) is depressed, and the <k>
 key is pressed.  The Meta key is labeled <ALT> on many keyboards.  On
 keyboards with two keys labeled <ALT> (usually to either side of the
@@ -85,15 +83,15 @@ Meta key, the identical keystroke can be generated by typing <ESC>
 _first_, and then typing <k>.  Either process is known as "metafying"
 the <k> key.
 
-   The text `M-C-k' is read as `Meta-Control-k' and describes the
-character produced by "metafying" `C-k'.
+   The text 'M-C-k' is read as 'Meta-Control-k' and describes the
+character produced by "metafying" 'C-k'.
 
-   In addition, several keys have their own names.  Specifically,
-<DEL>, <ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves
-when seen in this text, or in an init file (*note Readline Init File::).
-If your keyboard lacks a <LFD> key, typing <C-j> will produce the
-desired character.  The <RET> key may be labeled <Return> or <Enter> on
-some keyboards.
+   In addition, several keys have their own names.  Specifically, <DEL>,
+<ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves when seen
+in this text, or in an init file (*note Readline Init File::).  If your
+keyboard lacks a <LFD> key, typing <C-j> will produce the desired
+character.  The <RET> key may be labeled <Return> or <Enter> on some
+keyboards.
 
 \1f
 File: readline.info,  Node: Readline Interaction,  Next: Readline Init File,  Prev: Introduction and Notation,  Up: Command Line Editing
@@ -131,41 +129,35 @@ character appears where the cursor was, and then the cursor moves one
 space to the right.  If you mistype a character, you can use your erase
 character to back up and delete the mistyped character.
 
-   Sometimes you may mistype a character, and not notice the error
-until you have typed several other characters.  In that case, you can
-type `C-b' to move the cursor to the left, and then correct your
-mistake.  Afterwards, you can move the cursor to the right with `C-f'.
+   Sometimes you may mistype a character, and not notice the error until
+you have typed several other characters.  In that case, you can type
+'C-b' to move the cursor to the left, and then correct your mistake.
+Afterwards, you can move the cursor to the right with 'C-f'.
 
    When you add text in the middle of a line, you will notice that
-characters to the right of the cursor are `pushed over' to make room
-for the text that you have inserted.  Likewise, when you delete text
-behind the cursor, characters to the right of the cursor are `pulled
-back' to fill in the blank space created by the removal of the text.  A
-list of the bare essentials for editing the text of an input line
-follows.
-
-`C-b'
-     Move back one character.
+characters to the right of the cursor are 'pushed over' to make room for
+the text that you have inserted.  Likewise, when you delete text behind
+the cursor, characters to the right of the cursor are 'pulled back' to
+fill in the blank space created by the removal of the text.  A list of
+the bare essentials for editing the text of an input line follows.
 
-`C-f'
+'C-b'
+     Move back one character.
+'C-f'
      Move forward one character.
-
 <DEL> or <Backspace>
      Delete the character to the left of the cursor.
-
-`C-d'
+'C-d'
      Delete the character underneath the cursor.
-
 Printing characters
      Insert the character into the line at the cursor.
-
-`C-_' or `C-x C-u'
+'C-_' or 'C-x C-u'
      Undo the last editing command.  You can undo all the way back to an
      empty line.
 
 (Depending on your configuration, the <Backspace> key be set to delete
 the character to the left of the cursor and the <DEL> key set to delete
-the character underneath the cursor, like `C-d', rather than the
+the character underneath the cursor, like 'C-d', rather than the
 character to the left of the cursor.)
 
 \1f
@@ -175,29 +167,25 @@ File: readline.info,  Node: Readline Movement Commands,  Next: Readline Killing
 --------------------------------
 
 The above table describes the most basic keystrokes that you need in
-order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to `C-b', `C-f', `C-d', and
-<DEL>.  Here are some commands for moving more rapidly about the line.
+order to do editing of the input line.  For your convenience, many other
+commands have been added in addition to 'C-b', 'C-f', 'C-d', and <DEL>.
+Here are some commands for moving more rapidly about the line.
 
-`C-a'
+'C-a'
      Move to the start of the line.
-
-`C-e'
+'C-e'
      Move to the end of the line.
-
-`M-f'
+'M-f'
      Move forward a word, where a word is composed of letters and
      digits.
-
-`M-b'
+'M-b'
      Move backward a word.
-
-`C-l'
+'C-l'
      Clear the screen, reprinting the current line at the top.
 
-   Notice how `C-f' moves forward a character, while `M-f' moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
+   Notice how 'C-f' moves forward a character, while 'M-f' moves forward
+a word.  It is a loose convention that control keystrokes operate on
+characters while meta keystrokes operate on words.
 
 \1f
 File: readline.info,  Node: Readline Killing Commands,  Next: Readline Arguments,  Prev: Readline Movement Commands,  Up: Readline Interaction
@@ -206,51 +194,49 @@ File: readline.info,  Node: Readline Killing Commands,  Next: Readline Arguments
 -------------------------------
 
 "Killing" text means to delete the text from the line, but to save it
-away for later use, usually by "yanking" (re-inserting) it back into
-the line.  (`Cut' and `paste' are more recent jargon for `kill' and
-`yank'.)
+away for later use, usually by "yanking" (re-inserting) it back into the
+line.  ('Cut' and 'paste' are more recent jargon for 'kill' and 'yank'.)
 
-   If the description for a command says that it `kills' text, then you
+   If the description for a command says that it 'kills' text, then you
 can be sure that you can get the text back in a different (or the same)
 place later.
 
-   When you use a kill command, the text is saved in a "kill-ring".
-Any number of consecutive kills save all of the killed text together, so
+   When you use a kill command, the text is saved in a "kill-ring".  Any
+number of consecutive kills save all of the killed text together, so
 that when you yank it back, you get it all.  The kill ring is not line
 specific; the text that you killed on a previously typed line is
-available to be yanked back later, when you are typing another line.  
+available to be yanked back later, when you are typing another line.
 
    Here is the list of commands for killing text.
 
-`C-k'
+'C-k'
      Kill the text from the current cursor position to the end of the
      line.
 
-`M-d'
+'M-d'
      Kill from the cursor to the end of the current word, or, if between
      words, to the end of the next word.  Word boundaries are the same
-     as those used by `M-f'.
+     as those used by 'M-f'.
 
-`M-<DEL>'
+'M-<DEL>'
      Kill from the cursor the start of the current word, or, if between
      words, to the start of the previous word.  Word boundaries are the
-     same as those used by `M-b'.
-
-`C-w'
-     Kill from the cursor to the previous whitespace.  This is
-     different than `M-<DEL>' because the word boundaries differ.
+     same as those used by 'M-b'.
 
+'C-w'
+     Kill from the cursor to the previous whitespace.  This is different
+     than 'M-<DEL>' because the word boundaries differ.
 
    Here is how to "yank" the text back into the line.  Yanking means to
 copy the most-recently-killed text from the kill buffer.
 
-`C-y'
+'C-y'
      Yank the most recently killed text back into the buffer at the
      cursor.
 
-`M-y'
+'M-y'
      Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `C-y' or `M-y'.
+     if the prior command is 'C-y' or 'M-y'.
 
 \1f
 File: readline.info,  Node: Readline Arguments,  Next: Searching,  Prev: Readline Killing Commands,  Up: Readline Interaction
@@ -263,15 +249,15 @@ argument acts as a repeat count, other times it is the sign of the
 argument that is significant.  If you pass a negative argument to a
 command which normally acts in a forward direction, that command will
 act in a backward direction.  For example, to kill text back to the
-start of the line, you might type `M-- C-k'.
+start of the line, you might type 'M-- C-k'.
 
    The general way to pass numeric arguments to a command is to type
-meta digits before the command.  If the first `digit' typed is a minus
-sign (`-'), then the sign of the argument will be negative.  Once you
+meta digits before the command.  If the first 'digit' typed is a minus
+sign ('-'), then the sign of the argument will be negative.  Once you
 have typed one meta digit to get the argument started, you can type the
-remainder of the digits, and then the command.  For example, to give
-the `C-d' command an argument of 10, you could type `M-1 0 C-d', which
-will delete the next ten characters on the input line.
+remainder of the digits, and then the command.  For example, to give the
+'C-d' command an argument of 10, you could type 'M-1 0 C-d', which will
+delete the next ten characters on the input line.
 
 \1f
 File: readline.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline Interaction
@@ -279,36 +265,36 @@ File: readline.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline
 1.2.5 Searching for Commands in the History
 -------------------------------------------
 
-Readline provides commands for searching through the command history
-for lines containing a specified string.  There are two search modes:
+Readline provides commands for searching through the command history for
+lines containing a specified string.  There are two search modes:
 "incremental" and "non-incremental".
 
    Incremental searches begin before the user has finished typing the
 search string.  As each character of the search string is typed,
 Readline displays the next entry from the history matching the string
-typed so far.  An incremental search requires only as many characters
-as needed to find the desired history entry.  To search backward in the
-history for a particular string, type `C-r'.  Typing `C-s' searches
-forward through the history.  The characters present in the value of
-the `isearch-terminators' variable are used to terminate an incremental
+typed so far.  An incremental search requires only as many characters as
+needed to find the desired history entry.  To search backward in the
+history for a particular string, type 'C-r'.  Typing 'C-s' searches
+forward through the history.  The characters present in the value of the
+'isearch-terminators' variable are used to terminate an incremental
 search.  If that variable has not been assigned a value, the <ESC> and
-`C-J' characters will terminate an incremental search.  `C-g' will
-abort an incremental search and restore the original line.  When the
-search is terminated, the history entry containing the search string
-becomes the current line.
-
-   To find other matching entries in the history list, type `C-r' or
-`C-s' as appropriate.  This will search backward or forward in the
-history for the next entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate the
-search and execute that command.  For instance, a <RET> will terminate
-the search and accept the line, thereby executing the command from the
+'C-J' characters will terminate an incremental search.  'C-g' will abort
+an incremental search and restore the original line.  When the search is
+terminated, the history entry containing the search string becomes the
+current line.
+
+   To find other matching entries in the history list, type 'C-r' or
+'C-s' as appropriate.  This will search backward or forward in the
+history for the next entry matching the search string typed so far.  Any
+other key sequence bound to a Readline command will terminate the search
+and execute that command.  For instance, a <RET> will terminate the
+search and accept the line, thereby executing the command from the
 history list.  A movement command will terminate the search, make the
 last line found the current line, and begin editing.
 
-   Readline remembers the last incremental search string.  If two
-`C-r's are typed without any intervening characters defining a new
-search string, any remembered search string is used.
+   Readline remembers the last incremental search string.  If two 'C-r's
+are typed without any intervening characters defining a new search
+string, any remembered search string is used.
 
    Non-incremental searches read the entire search string before
 starting to search for matching history lines.  The search string may be
@@ -320,19 +306,19 @@ File: readline.info,  Node: Readline Init File,  Next: Bindable Readline Command
 1.3 Readline Init File
 ======================
 
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.  Any user can customize programs that use Readline by
+Although the Readline library comes with a set of Emacs-like keybindings
+installed by default, it is possible to use a different set of
+keybindings.  Any user can customize programs that use Readline by
 putting commands in an "inputrc" file, conventionally in his home
 directory.  The name of this file is taken from the value of the
-environment variable `INPUTRC'.  If that variable is unset, the default
-is `~/.inputrc'.  If that file does not exist or cannot be read, the
-ultimate default is `/etc/inputrc'.
+environment variable 'INPUTRC'.  If that variable is unset, the default
+is '~/.inputrc'.  If that file does not exist or cannot be read, the
+ultimate default is '/etc/inputrc'.
 
    When a program which uses the Readline library starts up, the init
 file is read, and the key bindings are set.
 
-   In addition, the `C-x C-r' command re-reads this init file, thus
+   In addition, the 'C-x C-r' command re-reads this init file, thus
 incorporating any changes that you might have made to it.
 
 * Menu:
@@ -349,21 +335,21 @@ File: readline.info,  Node: Readline Init File Syntax,  Next: Conditional Init C
 1.3.1 Readline Init File Syntax
 -------------------------------
 
-There are only a few basic constructs allowed in the Readline init
-file.  Blank lines are ignored.  Lines beginning with a `#' are
-comments.  Lines beginning with a `$' indicate conditional constructs
-(*note Conditional Init Constructs::).  Other lines denote variable
-settings and key bindings.
+There are only a few basic constructs allowed in the Readline init file.
+Blank lines are ignored.  Lines beginning with a '#' are comments.
+Lines beginning with a '$' indicate conditional constructs (*note
+Conditional Init Constructs::).  Other lines denote variable settings
+and key bindings.
 
 Variable Settings
      You can modify the run-time behavior of Readline by altering the
-     values of variables in Readline using the `set' command within the
+     values of variables in Readline using the 'set' command within the
      init file.  The syntax is simple:
 
           set VARIABLE VALUE
 
-     Here, for example, is how to change from the default Emacs-like
-     key binding to use `vi' line editing commands:
+     Here, for example, is how to change from the default Emacs-like key
+     binding to use 'vi' line editing commands:
 
           set editing-mode vi
 
@@ -371,258 +357,308 @@ Variable Settings
      without regard to case.  Unrecognized variable names are ignored.
 
      Boolean variables (those that can be set to on or off) are set to
-     on if the value is null or empty, ON (case-insensitive), or 1.
-     Any other value results in the variable being set to off.
+     on if the value is null or empty, ON (case-insensitive), or 1.  Any
+     other value results in the variable being set to off.
 
      A great deal of run-time behavior is changeable with the following
      variables.
 
-    `bell-style'
-          Controls what happens when Readline wants to ring the
-          terminal bell.  If set to `none', Readline never rings the
-          bell.  If set to `visible', Readline uses a visible bell if
-          one is available.  If set to `audible' (the default),
-          Readline attempts to ring the terminal's bell.
-
-    `bind-tty-special-chars'
-          If set to `on', Readline attempts to bind the control
-          characters treated specially by the kernel's terminal driver
-          to their Readline equivalents.
-
-    `colored-stats'
-          If set to `on', Readline displays possible completions using
+     'bell-style'
+          Controls what happens when Readline wants to ring the terminal
+          bell.  If set to 'none', Readline never rings the bell.  If
+          set to 'visible', Readline uses a visible bell if one is
+          available.  If set to 'audible' (the default), Readline
+          attempts to ring the terminal's bell.
+
+     'bind-tty-special-chars'
+          If set to 'on' (the default), Readline attempts to bind the
+          control characters treated specially by the kernel's terminal
+          driver to their Readline equivalents.
+
+     'blink-matching-paren'
+          If set to 'on', Readline attempts to briefly move the cursor
+          to an opening parenthesis when a closing parenthesis is
+          inserted.  The default is 'off'.
+
+     'colored-completion-prefix'
+          If set to 'on', when listing completions, Readline displays
+          the common prefix of the set of possible completions using a
+          different color.  The color definitions are taken from the
+          value of the 'LS_COLORS' environment variable.  The default is
+          'off'.
+
+     'colored-stats'
+          If set to 'on', Readline displays possible completions using
           different colors to indicate their file type.  The color
-          definitions are taken from the value of the `LS_COLORS'
-          environment variable.  The default is `off'.
+          definitions are taken from the value of the 'LS_COLORS'
+          environment variable.  The default is 'off'.
 
-    `comment-begin'
+     'comment-begin'
           The string to insert at the beginning of the line when the
-          `insert-comment' command is executed.  The default value is
-          `"#"'.
+          'insert-comment' command is executed.  The default value is
+          '"#"'.
 
-    `completion-display-width'
+     'completion-display-width'
           The number of screen columns used to display possible matches
           when performing completion.  The value is ignored if it is
           less than 0 or greater than the terminal screen width.  A
           value of 0 will cause matches to be displayed one per line.
           The default value is -1.
 
-    `completion-ignore-case'
-          If set to `on', Readline performs filename matching and
+     'completion-ignore-case'
+          If set to 'on', Readline performs filename matching and
           completion in a case-insensitive fashion.  The default value
-          is `off'.
+          is 'off'.
 
-    `completion-map-case'
-          If set to `on', and COMPLETION-IGNORE-CASE is enabled,
-          Readline treats hyphens (`-') and underscores (`_') as
+     'completion-map-case'
+          If set to 'on', and COMPLETION-IGNORE-CASE is enabled,
+          Readline treats hyphens ('-') and underscores ('_') as
           equivalent when performing case-insensitive filename matching
           and completion.
 
-    `completion-prefix-display-length'
+     'completion-prefix-display-length'
           The length in characters of the common prefix of a list of
           possible completions that is displayed without modification.
           When set to a value greater than zero, common prefixes longer
           than this value are replaced with an ellipsis when displaying
           possible completions.
 
-    `completion-query-items'
+     'completion-query-items'
           The number of possible completions that determines when the
           user is asked whether the list of possibilities should be
           displayed.  If the number of possible completions is greater
           than this value, Readline will ask the user whether or not he
           wishes to view them; otherwise, they are simply listed.  This
-          variable must be set to an integer value greater than or
-          equal to 0.  A negative value means Readline should never ask.
-          The default limit is `100'.
+          variable must be set to an integer value greater than or equal
+          to 0.  A negative value means Readline should never ask.  The
+          default limit is '100'.
 
-    `convert-meta'
-          If set to `on', Readline will convert characters with the
+     'convert-meta'
+          If set to 'on', Readline will convert characters with the
           eighth bit set to an ASCII key sequence by stripping the
           eighth bit and prefixing an <ESC> character, converting them
-          to a meta-prefixed key sequence.  The default value is `on'.
+          to a meta-prefixed key sequence.  The default value is 'on'.
 
-    `disable-completion'
-          If set to `On', Readline will inhibit word completion.
-          Completion  characters will be inserted into the line as if
-          they had been mapped to `self-insert'.  The default is `off'.
+     'disable-completion'
+          If set to 'On', Readline will inhibit word completion.
+          Completion characters will be inserted into the line as if
+          they had been mapped to 'self-insert'.  The default is 'off'.
 
-    `editing-mode'
-          The `editing-mode' variable controls which default set of key
+     'editing-mode'
+          The 'editing-mode' variable controls which default set of key
           bindings is used.  By default, Readline starts up in Emacs
           editing mode, where the keystrokes are most similar to Emacs.
-          This variable can be set to either `emacs' or `vi'.
-
-    `echo-control-characters'
-          When set to `on', on operating systems that indicate they
+          This variable can be set to either 'emacs' or 'vi'.
+
+     'emacs-mode-string'
+          This string is displayed immediately before the last line of
+          the primary prompt when emacs editing mode is active.  The
+          value is expanded like a key binding, so the standard set of
+          meta- and control prefixes and backslash escape sequences is
+          available.  Use the '\1' and '\2' escapes to begin and end
+          sequences of non-printing characters, which can be used to
+          embed a terminal control sequence into the mode string.  The
+          default is '@'.
+
+     'echo-control-characters'
+          When set to 'on', on operating systems that indicate they
           support it, readline echoes a character corresponding to a
-          signal generated from the keyboard.  The default is `on'.
-
-    `enable-keypad'
-          When set to `on', Readline will try to enable the application
+          signal generated from the keyboard.  The default is 'on'.
+
+     'enable-bracketed-paste'
+          When set to 'On', Readline will configure the terminal in a
+          way that will enable it to insert each paste into the editing
+          buffer as a single string of characters, instead of treating
+          each character as if it had been read from the keyboard.  This
+          can prevent pasted characters from being interpreted as
+          editing commands.  The default is 'off'.
+
+     'enable-keypad'
+          When set to 'on', Readline will try to enable the application
           keypad when it is called.  Some systems need this to enable
-          the arrow keys.  The default is `off'.
+          the arrow keys.  The default is 'off'.
 
-    `enable-meta-key'
-          When set to `on', Readline will try to enable any meta
-          modifier key the terminal claims to support when it is
-          called.  On many terminals, the meta key is used to send
-          eight-bit characters.  The default is `on'.
+     'enable-meta-key'
+          When set to 'on', Readline will try to enable any meta
+          modifier key the terminal claims to support when it is called.
+          On many terminals, the meta key is used to send eight-bit
+          characters.  The default is 'on'.
 
-    `expand-tilde'
-          If set to `on', tilde expansion is performed when Readline
-          attempts word completion.  The default is `off'.
+     'expand-tilde'
+          If set to 'on', tilde expansion is performed when Readline
+          attempts word completion.  The default is 'off'.
 
-    `history-preserve-point'
-          If set to `on', the history code attempts to place the point
+     'history-preserve-point'
+          If set to 'on', the history code attempts to place the point
           (the current cursor position) at the same location on each
-          history line retrieved with `previous-history' or
-          `next-history'.  The default is `off'.
-
-    `history-size'
-          Set the maximum number of history entries saved in the
-          history list.  If set to zero, any existing history entries
-          are deleted and no new entries are saved.  If set to a value
-          less than zero, the number of history entries is not limited.
-          By default, the number of history entries is not limited.
-
-    `horizontal-scroll-mode'
-          This variable can be set to either `on' or `off'.  Setting it
-          to `on' means that the text of the lines being edited will
+          history line retrieved with 'previous-history' or
+          'next-history'.  The default is 'off'.
+
+     'history-size'
+          Set the maximum number of history entries saved in the history
+          list.  If set to zero, any existing history entries are
+          deleted and no new entries are saved.  If set to a value less
+          than zero, the number of history entries is not limited.  By
+          default, the number of history entries is not limited.
+
+     'horizontal-scroll-mode'
+          This variable can be set to either 'on' or 'off'.  Setting it
+          to 'on' means that the text of the lines being edited will
           scroll horizontally on a single screen line when they are
           longer than the width of the screen, instead of wrapping onto
-          a new screen line.  By default, this variable is set to `off'.
+          a new screen line.  By default, this variable is set to 'off'.
 
-    `input-meta'
-          If set to `on', Readline will enable eight-bit input (it will
+     'input-meta'
+          If set to 'on', Readline will enable eight-bit input (it will
           not clear the eighth bit in the characters it reads),
           regardless of what the terminal claims it can support.  The
-          default value is `off'.  The name `meta-flag' is a synonym
-          for this variable.
+          default value is 'off'.  The name 'meta-flag' is a synonym for
+          this variable.
 
-    `isearch-terminators'
+     'isearch-terminators'
           The string of characters that should terminate an incremental
           search without subsequently executing the character as a
           command (*note Searching::).  If this variable has not been
-          given a value, the characters <ESC> and `C-J' will terminate
+          given a value, the characters <ESC> and 'C-J' will terminate
           an incremental search.
 
-    `keymap'
+     'keymap'
           Sets Readline's idea of the current keymap for key binding
-          commands.  Acceptable `keymap' names are `emacs',
-          `emacs-standard', `emacs-meta', `emacs-ctlx', `vi', `vi-move',
-          `vi-command', and `vi-insert'.  `vi' is equivalent to
-          `vi-command'; `emacs' is equivalent to `emacs-standard'.  The
-          default value is `emacs'.  The value of the `editing-mode'
+          commands.  Acceptable 'keymap' names are 'emacs',
+          'emacs-standard', 'emacs-meta', 'emacs-ctlx', 'vi', 'vi-move',
+          'vi-command', and 'vi-insert'.  'vi' is equivalent to
+          'vi-command'; 'emacs' is equivalent to 'emacs-standard'.  The
+          default value is 'emacs'.  The value of the 'editing-mode'
           variable also affects the default keymap.
 
-    `keyseq-timeout'
-          Specifies the duration Readline will wait for a character
-          when reading an ambiguous key sequence (one that can form a
-          complete key sequence using the input read so far, or can
-          take additional input to complete a longer key sequence).  If
-          no input is received within the timeout, Readline will use
-          the shorter but complete key sequence.  Readline uses this
-          value to determine whether or not input is available on the
-          current input source (`rl_instream' by default).  The value
-          is specified in milliseconds, so a value of 1000 means that
+     'keyseq-timeout'
+          Specifies the duration Readline will wait for a character when
+          reading an ambiguous key sequence (one that can form a
+          complete key sequence using the input read so far, or can take
+          additional input to complete a longer key sequence).  If no
+          input is received within the timeout, Readline will use the
+          shorter but complete key sequence.  Readline uses this value
+          to determine whether or not input is available on the current
+          input source ('rl_instream' by default).  The value is
+          specified in milliseconds, so a value of 1000 means that
           Readline will wait one second for additional input.  If this
           variable is set to a value less than or equal to zero, or to a
           non-numeric value, Readline will wait until another key is
-          pressed to decide which key sequence to complete.  The
-          default value is `500'.
+          pressed to decide which key sequence to complete.  The default
+          value is '500'.
 
-    `mark-directories'
-          If set to `on', completed directory names have a slash
-          appended.  The default is `on'.
+     'mark-directories'
+          If set to 'on', completed directory names have a slash
+          appended.  The default is 'on'.
 
-    `mark-modified-lines'
-          This variable, when set to `on', causes Readline to display an
-          asterisk (`*') at the start of history lines which have been
-          modified.  This variable is `off' by default.
+     'mark-modified-lines'
+          This variable, when set to 'on', causes Readline to display an
+          asterisk ('*') at the start of history lines which have been
+          modified.  This variable is 'off' by default.
 
-    `mark-symlinked-directories'
-          If set to `on', completed names which are symbolic links to
+     'mark-symlinked-directories'
+          If set to 'on', completed names which are symbolic links to
           directories have a slash appended (subject to the value of
-          `mark-directories').  The default is `off'.
+          'mark-directories').  The default is 'off'.
 
-    `match-hidden-files'
-          This variable, when set to `on', causes Readline to match
-          files whose names begin with a `.' (hidden files) when
-          performing filename completion.  If set to `off', the leading
-          `.' must be supplied by the user in the filename to be
-          completed.  This variable is `on' by default.
+     'match-hidden-files'
+          This variable, when set to 'on', causes Readline to match
+          files whose names begin with a '.' (hidden files) when
+          performing filename completion.  If set to 'off', the leading
+          '.' must be supplied by the user in the filename to be
+          completed.  This variable is 'on' by default.
 
-    `menu-complete-display-prefix'
-          If set to `on', menu completion displays the common prefix of
+     'menu-complete-display-prefix'
+          If set to 'on', menu completion displays the common prefix of
           the list of possible completions (which may be empty) before
-          cycling through the list.  The default is `off'.
+          cycling through the list.  The default is 'off'.
 
-    `output-meta'
-          If set to `on', Readline will display characters with the
+     'output-meta'
+          If set to 'on', Readline will display characters with the
           eighth bit set directly rather than as a meta-prefixed escape
-          sequence.  The default is `off'.
+          sequence.  The default is 'off'.
 
-    `page-completions'
-          If set to `on', Readline uses an internal `more'-like pager
-          to display a screenful of possible completions at a time.
-          This variable is `on' by default.
+     'page-completions'
+          If set to 'on', Readline uses an internal 'more'-like pager to
+          display a screenful of possible completions at a time.  This
+          variable is 'on' by default.
 
-    `print-completions-horizontally'
-          If set to `on', Readline will display completions with matches
+     'print-completions-horizontally'
+          If set to 'on', Readline will display completions with matches
           sorted horizontally in alphabetical order, rather than down
-          the screen.  The default is `off'.
+          the screen.  The default is 'off'.
 
-    `revert-all-at-newline'
-          If set to `on', Readline will undo all changes to history
-          lines before returning when `accept-line' is executed.  By
+     'revert-all-at-newline'
+          If set to 'on', Readline will undo all changes to history
+          lines before returning when 'accept-line' is executed.  By
           default, history lines may be modified and retain individual
-          undo lists across calls to `readline'.  The default is `off'.
+          undo lists across calls to 'readline'.  The default is 'off'.
 
-    `show-all-if-ambiguous'
+     'show-all-if-ambiguous'
           This alters the default behavior of the completion functions.
-          If set to `on', words which have more than one possible
+          If set to 'on', words which have more than one possible
           completion cause the matches to be listed immediately instead
-          of ringing the bell.  The default value is `off'.
+          of ringing the bell.  The default value is 'off'.
 
-    `show-all-if-unmodified'
+     'show-all-if-unmodified'
           This alters the default behavior of the completion functions
           in a fashion similar to SHOW-ALL-IF-AMBIGUOUS.  If set to
-          `on', words which have more than one possible completion
+          'on', words which have more than one possible completion
           without any possible partial completion (the possible
           completions don't share a common prefix) cause the matches to
           be listed immediately instead of ringing the bell.  The
-          default value is `off'.
-
-    `show-mode-in-prompt'
-          If set to `on', add a character to the beginning of the prompt
-          indicating the editing mode: emacs (`@'), vi command (`:'),
-          or vi insertion (`+').  The default value is `off'.
-
-    `skip-completed-text'
-          If set to `on', this alters the default completion behavior
-          when inserting a single match into the line.  It's only
-          active when performing completion in the middle of a word.
-          If enabled, readline does not insert characters from the
-          completion that match characters after point in the word
-          being completed, so portions of the word following the cursor
-          are not duplicated.  For instance, if this is enabled,
-          attempting completion when the cursor is after the `e' in
-          `Makefile' will result in `Makefile' rather than
-          `Makefilefile', assuming there is a single possible
-          completion.  The default value is `off'.
-
-    `visible-stats'
-          If set to `on', a character denoting a file's type is
-          appended to the filename when listing possible completions.
-          The default is `off'.
-
+          default value is 'off'.
+
+     'show-mode-in-prompt'
+          If set to 'on', add a character to the beginning of the prompt
+          indicating the editing mode: emacs, vi command, or vi
+          insertion.  The mode strings are user-settable.  The default
+          value is 'off'.
+
+     'skip-completed-text'
+          If set to 'on', this alters the default completion behavior
+          when inserting a single match into the line.  It's only active
+          when performing completion in the middle of a word.  If
+          enabled, readline does not insert characters from the
+          completion that match characters after point in the word being
+          completed, so portions of the word following the cursor are
+          not duplicated.  For instance, if this is enabled, attempting
+          completion when the cursor is after the 'e' in 'Makefile' will
+          result in 'Makefile' rather than 'Makefilefile', assuming
+          there is a single possible completion.  The default value is
+          'off'.
+
+     'vi-cmd-mode-string'
+          This string is displayed immediately before the last line of
+          the primary prompt when vi editing mode is active and in
+          command mode.  The value is expanded like a key binding, so
+          the standard set of meta- and control prefixes and backslash
+          escape sequences is available.  Use the '\1' and '\2' escapes
+          to begin and end sequences of non-printing characters, which
+          can be used to embed a terminal control sequence into the mode
+          string.  The default is '(cmd)'.
+
+     'vi-ins-mode-string'
+          This string is displayed immediately before the last line of
+          the primary prompt when vi editing mode is active and in
+          insertion mode.  The value is expanded like a key binding, so
+          the standard set of meta- and control prefixes and backslash
+          escape sequences is available.  Use the '\1' and '\2' escapes
+          to begin and end sequences of non-printing characters, which
+          can be used to embed a terminal control sequence into the mode
+          string.  The default is '(ins)'.
+
+     'visible-stats'
+          If set to 'on', a character denoting a file's type is appended
+          to the filename when listing possible completions.  The
+          default is 'off'.
 
 Key Bindings
-     The syntax for controlling key bindings in the init file is
-     simple.  First you need to find the name of the command that you
-     want to change.  The following sections contain tables of the
-     command name, the default keybinding, if any, and a short
-     description of what the command does.
+     The syntax for controlling key bindings in the init file is simple.
+     First you need to find the name of the command that you want to
+     change.  The following sections contain tables of the command name,
+     the default keybinding, if any, and a short description of what the
+     command does.
 
      Once you know the name of the command, simply place on a line in
      the init file the name of the key you wish to bind the command to,
@@ -631,27 +667,27 @@ Key Bindings
      part of the key name.  The name of the key can be expressed in
      different ways, depending on what you find most comfortable.
 
-     In addition to command names, readline allows keys to be bound to
-     string that is inserted when the key is pressed (a MACRO).
+     In addition to command names, readline allows keys to be bound to a
+     string that is inserted when the key is pressed (a MACRO).
 
-    KEYNAME: FUNCTION-NAME or MACRO
+     KEYNAME: FUNCTION-NAME or MACRO
           KEYNAME is the name of a key spelled out in English.  For
           example:
                Control-u: universal-argument
                Meta-Rubout: backward-kill-word
                Control-o: "> output"
 
-          In the above example, `C-u' is bound to the function
-          `universal-argument', `M-DEL' is bound to the function
-          `backward-kill-word', and `C-o' is bound to run the macro
+          In the above example, 'C-u' is bound to the function
+          'universal-argument', 'M-DEL' is bound to the function
+          'backward-kill-word', and 'C-o' is bound to run the macro
           expressed on the right hand side (that is, to insert the text
-          `> output' into the line).
+          '> output' into the line).
 
           A number of symbolic character names are recognized while
           processing this key binding syntax: DEL, ESC, ESCAPE, LFD,
           NEWLINE, RET, RETURN, RUBOUT, SPACE, SPC, and TAB.
 
-    "KEYSEQ": FUNCTION-NAME or MACRO
+     "KEYSEQ": FUNCTION-NAME or MACRO
           KEYSEQ differs from KEYNAME above in that strings denoting an
           entire key sequence can be specified, by placing the key
           sequence in double quotes.  Some GNU Emacs style key escapes
@@ -662,66 +698,51 @@ Key Bindings
                "\C-x\C-r": re-read-init-file
                "\e[11~": "Function Key 1"
 
-          In the above example, `C-u' is again bound to the function
-          `universal-argument' (just as it was in the first example),
-          `C-x C-r' is bound to the function `re-read-init-file', and
-          `<ESC> <[> <1> <1> <~>' is bound to insert the text `Function
-          Key 1'.
-
+          In the above example, 'C-u' is again bound to the function
+          'universal-argument' (just as it was in the first example),
+          ''C-x' 'C-r'' is bound to the function 're-read-init-file',
+          and '<ESC> <[> <1> <1> <~>' is bound to insert the text
+          'Function Key 1'.
 
      The following GNU Emacs style escape sequences are available when
      specifying key sequences:
 
-    `\C-'
+     '\C-'
           control prefix
-
-    `\M-'
+     '\M-'
           meta prefix
-
-    `\e'
+     '\e'
           an escape character
-
-    `\\'
+     '\\'
           backslash
-
-    `\"'
+     '\"'
           <">, a double quotation mark
-
-    `\''
+     '\''
           <'>, a single quote or apostrophe
 
      In addition to the GNU Emacs style escape sequences, a second set
      of backslash escapes is available:
 
-    `\a'
+     '\a'
           alert (bell)
-
-    `\b'
+     '\b'
           backspace
-
-    `\d'
+     '\d'
           delete
-
-    `\f'
+     '\f'
           form feed
-
-    `\n'
+     '\n'
           newline
-
-    `\r'
+     '\r'
           carriage return
-
-    `\t'
+     '\t'
           horizontal tab
-
-    `\v'
+     '\v'
           vertical tab
-
-    `\NNN'
+     '\NNN'
           the eight-bit character whose value is the octal value NNN
           (one to three digits)
-
-    `\xHH'
+     '\xHH'
           the eight-bit character whose value is the hexadecimal value
           HH (one or two hex digits)
 
@@ -729,12 +750,11 @@ Key Bindings
      used to indicate a macro definition.  Unquoted text is assumed to
      be a function name.  In the macro body, the backslash escapes
      described above are expanded.  Backslash will quote any other
-     character in the macro text, including `"' and `''.  For example,
-     the following binding will make `C-x \' insert a single `\' into
+     character in the macro text, including '"' and '''.  For example,
+     the following binding will make ''C-x' \' insert a single '\' into
      the line:
           "\C-x\\": "\\"
 
-
 \1f
 File: readline.info,  Node: Conditional Init Constructs,  Next: Sample Init File,  Prev: Readline Init File Syntax,  Up: Readline Init File
 
@@ -742,33 +762,32 @@ File: readline.info,  Node: Conditional Init Constructs,  Next: Sample Init File
 ---------------------------------
 
 Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key bindings
-and variable settings to be performed as the result of tests.  There
-are four parser directives used.
-
-`$if'
-     The `$if' construct allows bindings to be made based on the
-     editing mode, the terminal being used, or the application using
-     Readline.  The text of the test extends to the end of the line; no
-     characters are required to isolate it.
-
-    `mode'
-          The `mode=' form of the `$if' directive is used to test
-          whether Readline is in `emacs' or `vi' mode.  This may be
-          used in conjunction with the `set keymap' command, for
-          instance, to set bindings in the `emacs-standard' and
-          `emacs-ctlx' keymaps only if Readline is starting out in
-          `emacs' mode.
-
-    `term'
-          The `term=' form may be used to include terminal-specific key
+compilation features of the C preprocessor which allows key bindings and
+variable settings to be performed as the result of tests.  There are
+four parser directives used.
+
+'$if'
+     The '$if' construct allows bindings to be made based on the editing
+     mode, the terminal being used, or the application using Readline.
+     The text of the test extends to the end of the line; no characters
+     are required to isolate it.
+
+     'mode'
+          The 'mode=' form of the '$if' directive is used to test
+          whether Readline is in 'emacs' or 'vi' mode.  This may be used
+          in conjunction with the 'set keymap' command, for instance, to
+          set bindings in the 'emacs-standard' and 'emacs-ctlx' keymaps
+          only if Readline is starting out in 'emacs' mode.
+
+     'term'
+          The 'term=' form may be used to include terminal-specific key
           bindings, perhaps to bind the key sequences output by the
           terminal's function keys.  The word on the right side of the
-          `=' is tested against both the full name of the terminal and
-          the portion of the terminal name before the first `-'.  This
-          allows `sun' to match both `sun' and `sun-cmd', for instance.
+          '=' is tested against both the full name of the terminal and
+          the portion of the terminal name before the first '-'.  This
+          allows 'sun' to match both 'sun' and 'sun-cmd', for instance.
 
-    `application'
+     'application'
           The APPLICATION construct is used to include
           application-specific settings.  Each program using the
           Readline library sets the APPLICATION NAME, and you can test
@@ -781,18 +800,18 @@ are four parser directives used.
                "\C-xq": "\eb\"\ef\""
                $endif
 
-`$endif'
-     This command, as seen in the previous example, terminates an `$if'
+'$endif'
+     This command, as seen in the previous example, terminates an '$if'
      command.
 
-`$else'
-     Commands in this branch of the `$if' directive are executed if the
+'$else'
+     Commands in this branch of the '$if' directive are executed if the
      test fails.
 
-`$include'
+'$include'
      This directive takes a single filename as an argument and reads
      commands and bindings from that file.  For example, the following
-     directive reads from `/etc/inputrc':
+     directive reads from '/etc/inputrc':
           $include /etc/inputrc
 
 \1f
@@ -804,7 +823,6 @@ File: readline.info,  Node: Sample Init File,  Prev: Conditional Init Constructs
 Here is an example of an INPUTRC file.  This illustrates key binding,
 variable assignment, and conditional syntax.
 
-
      # This file controls the behaviour of line input editing for
      # programs that use the GNU Readline library.  Existing
      # programs include FTP, Bash, and GDB.
@@ -922,14 +940,14 @@ File: readline.info,  Node: Bindable Readline Commands,  Next: Readline vi Mode,
 * Keyboard Macros::            Saving and re-executing typed characters
 * Miscellaneous Commands::     Other miscellaneous commands.
 
-   This section describes Readline commands that may be bound to key
+This section describes Readline commands that may be bound to key
 sequences.  Command names without an accompanying key sequence are
 unbound by default.
 
    In the following descriptions, "point" refers to the current cursor
-position, and "mark" refers to a cursor position saved by the
-`set-mark' command.  The text between the point and mark is referred to
-as the "region".
+position, and "mark" refers to a cursor position saved by the 'set-mark'
+command.  The text between the point and mark is referred to as the
+"region".
 
 \1f
 File: readline.info,  Node: Commands For Moving,  Next: Commands For History,  Up: Bindable Readline Commands
@@ -937,125 +955,123 @@ File: readline.info,  Node: Commands For Moving,  Next: Commands For History,  U
 1.4.1 Commands For Moving
 -------------------------
 
-`beginning-of-line (C-a)'
+'beginning-of-line (C-a)'
      Move to the start of the current line.
 
-`end-of-line (C-e)'
+'end-of-line (C-e)'
      Move to the end of the line.
 
-`forward-char (C-f)'
+'forward-char (C-f)'
      Move forward a character.
 
-`backward-char (C-b)'
+'backward-char (C-b)'
      Move back a character.
 
-`forward-word (M-f)'
+'forward-word (M-f)'
      Move forward to the end of the next word.  Words are composed of
      letters and digits.
 
-`backward-word (M-b)'
+'backward-word (M-b)'
      Move back to the start of the current or previous word.  Words are
      composed of letters and digits.
 
-`clear-screen (C-l)'
+'clear-screen (C-l)'
      Clear the screen and redraw the current line, leaving the current
      line at the top of the screen.
 
-`redraw-current-line ()'
+'redraw-current-line ()'
      Refresh the current line.  By default, this is unbound.
 
-
 \1f
 File: readline.info,  Node: Commands For History,  Next: Commands For Text,  Prev: Commands For Moving,  Up: Bindable Readline Commands
 
 1.4.2 Commands For Manipulating The History
 -------------------------------------------
 
-`accept-line (Newline or Return)'
+'accept-line (Newline or Return)'
      Accept the line regardless of where the cursor is.  If this line is
      non-empty, it may be added to the history list for future recall
-     with `add_history()'.  If this line is a modified history line,
-     the history line is restored to its original state.
+     with 'add_history()'.  If this line is a modified history line, the
+     history line is restored to its original state.
 
-`previous-history (C-p)'
-     Move `back' through the history list, fetching the previous
+'previous-history (C-p)'
+     Move 'back' through the history list, fetching the previous
      command.
 
-`next-history (C-n)'
-     Move `forward' through the history list, fetching the next command.
+'next-history (C-n)'
+     Move 'forward' through the history list, fetching the next command.
 
-`beginning-of-history (M-<)'
+'beginning-of-history (M-<)'
      Move to the first line in the history.
 
-`end-of-history (M->)'
+'end-of-history (M->)'
      Move to the end of the input history, i.e., the line currently
      being entered.
 
-`reverse-search-history (C-r)'
-     Search backward starting at the current line and moving `up'
+'reverse-search-history (C-r)'
+     Search backward starting at the current line and moving 'up'
      through the history as necessary.  This is an incremental search.
 
-`forward-search-history (C-s)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary.  This is an incremental
-     search.
+'forward-search-history (C-s)'
+     Search forward starting at the current line and moving 'down'
+     through the history as necessary.  This is an incremental search.
 
-`non-incremental-reverse-search-history (M-p)'
-     Search backward starting at the current line and moving `up'
-     through the history as necessary using a non-incremental search
-     for a string supplied by the user.
+'non-incremental-reverse-search-history (M-p)'
+     Search backward starting at the current line and moving 'up'
+     through the history as necessary using a non-incremental search for
+     a string supplied by the user.  The search string may match
+     anywhere in a history line.
 
-`non-incremental-forward-search-history (M-n)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary using a non-incremental search
-     for a string supplied by the user.
+'non-incremental-forward-search-history (M-n)'
+     Search forward starting at the current line and moving 'down'
+     through the history as necessary using a non-incremental search for
+     a string supplied by the user.  The search string may match
+     anywhere in a history line.
 
-`history-search-forward ()'
+'history-search-forward ()'
      Search forward through the history for the string of characters
      between the start of the current line and the point.  The search
      string must match at the beginning of a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`history-search-backward ()'
+'history-search-backward ()'
      Search backward through the history for the string of characters
      between the start of the current line and the point.  The search
      string must match at the beginning of a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`history-substr-search-forward ()'
+'history-substr-search-forward ()'
      Search forward through the history for the string of characters
      between the start of the current line and the point.  The search
      string may match anywhere in a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`history-substr-search-backward ()'
+'history-substr-search-backward ()'
      Search backward through the history for the string of characters
      between the start of the current line and the point.  The search
      string may match anywhere in a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`yank-nth-arg (M-C-y)'
+'yank-nth-arg (M-C-y)'
      Insert the first argument to the previous command (usually the
      second word on the previous line) at point.  With an argument N,
      insert the Nth word from the previous command (the words in the
      previous command begin with word 0).  A negative argument inserts
      the Nth word from the end of the previous command.  Once the
-     argument N is computed, the argument is extracted as if the `!N'
+     argument N is computed, the argument is extracted as if the '!N'
      history expansion had been specified.
 
-`yank-last-arg (M-. or M-_)'
+'yank-last-arg (M-. or M-_)'
      Insert last argument to the previous command (the last word of the
      previous history entry).  With a numeric argument, behave exactly
-     like `yank-nth-arg'.  Successive calls to `yank-last-arg' move
-     back through the history list, inserting the last word (or the
-     word specified by the argument to the first call) of each line in
-     turn.  Any numeric argument supplied to these successive calls
-     determines the direction to move through the history.  A negative
-     argument switches the direction through the history (back or
-     forward).  The history expansion facilities are used to extract
-     the last argument, as if the `!$' history expansion had been
-     specified.
-
+     like 'yank-nth-arg'.  Successive calls to 'yank-last-arg' move back
+     through the history list, inserting the last word (or the word
+     specified by the argument to the first call) of each line in turn.
+     Any numeric argument supplied to these successive calls determines
+     the direction to move through the history.  A negative argument
+     switches the direction through the history (back or forward).  The
+     history expansion facilities are used to extract the last argument,
+     as if the '!$' history expansion had been specified.
 
 \1f
 File: readline.info,  Node: Commands For Text,  Next: Commands For Killing,  Prev: Commands For History,  Up: Bindable Readline Commands
@@ -1063,139 +1079,147 @@ File: readline.info,  Node: Commands For Text,  Next: Commands For Killing,  Pre
 1.4.3 Commands For Changing Text
 --------------------------------
 
-`end-of-file (usually C-d)'
+'end-of-file (usually C-d)'
      The character indicating end-of-file as set, for example, by
-     `stty'.  If this character is read when there are no characters on
+     'stty'.  If this character is read when there are no characters on
      the line, and point is at the beginning of the line, Readline
      interprets it as the end of input and returns EOF.
 
-`delete-char (C-d)'
+'delete-char (C-d)'
      Delete the character at point.  If this function is bound to the
-     same character as the tty EOF character, as `C-d' commonly is, see
+     same character as the tty EOF character, as 'C-d' commonly is, see
      above for the effects.
 
-`backward-delete-char (Rubout)'
+'backward-delete-char (Rubout)'
      Delete the character behind the cursor.  A numeric argument means
      to kill the characters instead of deleting them.
 
-`forward-backward-delete-char ()'
+'forward-backward-delete-char ()'
      Delete the character under the cursor, unless the cursor is at the
      end of the line, in which case the character behind the cursor is
      deleted.  By default, this is not bound to a key.
 
-`quoted-insert (C-q or C-v)'
+'quoted-insert (C-q or C-v)'
      Add the next character typed to the line verbatim.  This is how to
-     insert key sequences like `C-q', for example.
+     insert key sequences like 'C-q', for example.
 
-`tab-insert (M-<TAB>)'
+'tab-insert (M-<TAB>)'
      Insert a tab character.
 
-`self-insert (a, b, A, 1, !, ...)'
+'self-insert (a, b, A, 1, !, ...)'
      Insert yourself.
 
-`transpose-chars (C-t)'
+'bracketed-paste-begin ()'
+     This function is intended to be bound to the "bracketed paste"
+     escape sequence sent by some terminals, and such a binding is
+     assigned by default.  It allows Readline to insert the pasted text
+     as a single unit without treating each character as if it had been
+     read from the keyboard.  The characters are inserted as if each one
+     was bound to 'self-insert') instead of executing any editing
+     commands.
+
+'transpose-chars (C-t)'
      Drag the character before the cursor forward over the character at
      the cursor, moving the cursor forward as well.  If the insertion
      point is at the end of the line, then this transposes the last two
      characters of the line.  Negative arguments have no effect.
 
-`transpose-words (M-t)'
+'transpose-words (M-t)'
      Drag the word before point past the word after point, moving point
      past that word as well.  If the insertion point is at the end of
      the line, this transposes the last two words on the line.
 
-`upcase-word (M-u)'
+'upcase-word (M-u)'
      Uppercase the current (or following) word.  With a negative
      argument, uppercase the previous word, but do not move the cursor.
 
-`downcase-word (M-l)'
+'downcase-word (M-l)'
      Lowercase the current (or following) word.  With a negative
      argument, lowercase the previous word, but do not move the cursor.
 
-`capitalize-word (M-c)'
+'capitalize-word (M-c)'
      Capitalize the current (or following) word.  With a negative
      argument, capitalize the previous word, but do not move the cursor.
 
-`overwrite-mode ()'
+'overwrite-mode ()'
      Toggle overwrite mode.  With an explicit positive numeric argument,
      switches to overwrite mode.  With an explicit non-positive numeric
      argument, switches to insert mode.  This command affects only
-     `emacs' mode; `vi' mode does overwrite differently.  Each call to
-     `readline()' starts in insert mode.
+     'emacs' mode; 'vi' mode does overwrite differently.  Each call to
+     'readline()' starts in insert mode.
 
-     In overwrite mode, characters bound to `self-insert' replace the
+     In overwrite mode, characters bound to 'self-insert' replace the
      text at point rather than pushing the text to the right.
-     Characters bound to `backward-delete-char' replace the character
+     Characters bound to 'backward-delete-char' replace the character
      before point with a space.
 
      By default, this command is unbound.
 
-
 \1f
 File: readline.info,  Node: Commands For Killing,  Next: Numeric Arguments,  Prev: Commands For Text,  Up: Bindable Readline Commands
 
 1.4.4 Killing And Yanking
 -------------------------
 
-`kill-line (C-k)'
+'kill-line (C-k)'
      Kill the text from point to the end of the line.
 
-`backward-kill-line (C-x Rubout)'
-     Kill backward to the beginning of the line.
+'backward-kill-line (C-x Rubout)'
+     Kill backward from the cursor to the beginning of the current line.
 
-`unix-line-discard (C-u)'
+'unix-line-discard (C-u)'
      Kill backward from the cursor to the beginning of the current line.
 
-`kill-whole-line ()'
+'kill-whole-line ()'
      Kill all characters on the current line, no matter where point is.
      By default, this is unbound.
 
-`kill-word (M-d)'
+'kill-word (M-d)'
      Kill from point to the end of the current word, or if between
      words, to the end of the next word.  Word boundaries are the same
-     as `forward-word'.
+     as 'forward-word'.
 
-`backward-kill-word (M-<DEL>)'
+'backward-kill-word (M-<DEL>)'
      Kill the word behind point.  Word boundaries are the same as
-     `backward-word'.
+     'backward-word'.
 
-`unix-word-rubout (C-w)'
+'unix-word-rubout (C-w)'
      Kill the word behind point, using white space as a word boundary.
      The killed text is saved on the kill-ring.
 
-`unix-filename-rubout ()'
+'unix-filename-rubout ()'
      Kill the word behind point, using white space and the slash
      character as the word boundaries.  The killed text is saved on the
      kill-ring.
 
-`delete-horizontal-space ()'
+'delete-horizontal-space ()'
      Delete all spaces and tabs around point.  By default, this is
      unbound.
 
-`kill-region ()'
+'kill-region ()'
      Kill the text in the current region.  By default, this command is
      unbound.
 
-`copy-region-as-kill ()'
+'copy-region-as-kill ()'
      Copy the text in the region to the kill buffer, so it can be yanked
      right away.  By default, this command is unbound.
 
-`copy-backward-word ()'
-     Copy the word before point to the kill buffer.  The word
-     boundaries are the same as `backward-word'.  By default, this
-     command is unbound.
+'copy-backward-word ()'
+     Copy the word before point to the kill buffer.  The word boundaries
+     are the same as 'backward-word'.  By default, this command is
+     unbound.
 
-`copy-forward-word ()'
+'copy-forward-word ()'
      Copy the word following point to the kill buffer.  The word
-     boundaries are the same as `forward-word'.  By default, this
+     boundaries are the same as 'forward-word'.  By default, this
      command is unbound.
 
-`yank (C-y)'
+'yank (C-y)'
      Yank the top of the kill ring into the buffer at point.
 
-`yank-pop (M-y)'
+'yank-pop (M-y)'
      Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `yank' or `yank-pop'.
+     if the prior command is 'yank' or 'yank-pop'.
 
 \1f
 File: readline.info,  Node: Numeric Arguments,  Next: Commands For Completion,  Prev: Commands For Killing,  Up: Bindable Readline Commands
@@ -1203,22 +1227,22 @@ File: readline.info,  Node: Numeric Arguments,  Next: Commands For Completion,
 1.4.5 Specifying Numeric Arguments
 ----------------------------------
 
-`digit-argument (M-0, M-1, ... M--)'
+'digit-argument (M-0, M-1, ... M--)'
      Add this digit to the argument already accumulating, or start a new
-     argument.  `M--' starts a negative argument.
+     argument.  'M--' starts a negative argument.
 
-`universal-argument ()'
+'universal-argument ()'
      This is another way to specify an argument.  If this command is
      followed by one or more digits, optionally with a leading minus
-     sign, those digits define the argument.  If the command is
-     followed by digits, executing `universal-argument' again ends the
-     numeric argument, but is otherwise ignored.  As a special case, if
-     this command is immediately followed by a character that is
-     neither a digit or minus sign, the argument count for the next
-     command is multiplied by four.  The argument count is initially
-     one, so executing this function the first time makes the argument
-     count four, a second time makes the argument count sixteen, and so
-     on.  By default, this is not bound to a key.
+     sign, those digits define the argument.  If the command is followed
+     by digits, executing 'universal-argument' again ends the numeric
+     argument, but is otherwise ignored.  As a special case, if this
+     command is immediately followed by a character that is neither a
+     digit nor minus sign, the argument count for the next command is
+     multiplied by four.  The argument count is initially one, so
+     executing this function the first time makes the argument count
+     four, a second time makes the argument count sixteen, and so on.
+     By default, this is not bound to a key.
 
 \1f
 File: readline.info,  Node: Commands For Completion,  Next: Keyboard Macros,  Prev: Numeric Arguments,  Up: Bindable Readline Commands
@@ -1226,185 +1250,181 @@ File: readline.info,  Node: Commands For Completion,  Next: Keyboard Macros,  Pr
 1.4.6 Letting Readline Type For You
 -----------------------------------
 
-`complete (<TAB>)'
-     Attempt to perform completion on the text before point.  The
-     actual completion performed is application-specific.  The default
-     is filename completion.
+'complete (<TAB>)'
+     Attempt to perform completion on the text before point.  The actual
+     completion performed is application-specific.  The default is
+     filename completion.
 
-`possible-completions (M-?)'
+'possible-completions (M-?)'
      List the possible completions of the text before point.  When
      displaying completions, Readline sets the number of columns used
-     for display to the value of `completion-display-width', the value
-     of the environment variable `COLUMNS', or the screen width, in
-     that order.
+     for display to the value of 'completion-display-width', the value
+     of the environment variable 'COLUMNS', or the screen width, in that
+     order.
 
-`insert-completions (M-*)'
+'insert-completions (M-*)'
      Insert all completions of the text before point that would have
-     been generated by `possible-completions'.
+     been generated by 'possible-completions'.
 
-`menu-complete ()'
-     Similar to `complete', but replaces the word to be completed with
-     single match from the list of possible completions.  Repeated
-     execution of `menu-complete' steps through the list of possible
+'menu-complete ()'
+     Similar to 'complete', but replaces the word to be completed with a
+     single match from the list of possible completions.  Repeated
+     execution of 'menu-complete' steps through the list of possible
      completions, inserting each match in turn.  At the end of the list
      of completions, the bell is rung (subject to the setting of
-     `bell-style') and the original text is restored.  An argument of N
+     'bell-style') and the original text is restored.  An argument of N
      moves N positions forward in the list of matches; a negative
      argument may be used to move backward through the list.  This
      command is intended to be bound to <TAB>, but is unbound by
      default.
 
-`menu-complete-backward ()'
-     Identical to `menu-complete', but moves backward through the list
-     of possible completions, as if `menu-complete' had been given a
+'menu-complete-backward ()'
+     Identical to 'menu-complete', but moves backward through the list
+     of possible completions, as if 'menu-complete' had been given a
      negative argument.
 
-`delete-char-or-list ()'
+'delete-char-or-list ()'
      Deletes the character under the cursor if not at the beginning or
-     end of the line (like `delete-char').  If at the end of the line,
-     behaves identically to `possible-completions'.  This command is
+     end of the line (like 'delete-char').  If at the end of the line,
+     behaves identically to 'possible-completions'.  This command is
      unbound by default.
 
-
 \1f
 File: readline.info,  Node: Keyboard Macros,  Next: Miscellaneous Commands,  Prev: Commands For Completion,  Up: Bindable Readline Commands
 
 1.4.7 Keyboard Macros
 ---------------------
 
-`start-kbd-macro (C-x ()'
+'start-kbd-macro (C-x ()'
      Begin saving the characters typed into the current keyboard macro.
 
-`end-kbd-macro (C-x ))'
+'end-kbd-macro (C-x ))'
      Stop saving the characters typed into the current keyboard macro
      and save the definition.
 
-`call-last-kbd-macro (C-x e)'
+'call-last-kbd-macro (C-x e)'
      Re-execute the last keyboard macro defined, by making the
      characters in the macro appear as if typed at the keyboard.
 
-`print-last-kbd-macro ()'
+'print-last-kbd-macro ()'
      Print the last keboard macro defined in a format suitable for the
      INPUTRC file.
 
-
 \1f
 File: readline.info,  Node: Miscellaneous Commands,  Prev: Keyboard Macros,  Up: Bindable Readline Commands
 
 1.4.8 Some Miscellaneous Commands
 ---------------------------------
 
-`re-read-init-file (C-x C-r)'
+'re-read-init-file (C-x C-r)'
      Read in the contents of the INPUTRC file, and incorporate any
      bindings or variable assignments found there.
 
-`abort (C-g)'
+'abort (C-g)'
      Abort the current editing command and ring the terminal's bell
-     (subject to the setting of `bell-style').
+     (subject to the setting of 'bell-style').
 
-`do-uppercase-version (M-a, M-b, M-X, ...)'
+'do-uppercase-version (M-a, M-b, M-X, ...)'
      If the metafied character X is lowercase, run the command that is
      bound to the corresponding uppercase character.
 
-`prefix-meta (<ESC>)'
+'prefix-meta (<ESC>)'
      Metafy the next character typed.  This is for keyboards without a
-     meta key.  Typing `<ESC> f' is equivalent to typing `M-f'.
+     meta key.  Typing '<ESC> f' is equivalent to typing 'M-f'.
 
-`undo (C-_ or C-x C-u)'
+'undo (C-_ or C-x C-u)'
      Incremental undo, separately remembered for each line.
 
-`revert-line (M-r)'
+'revert-line (M-r)'
      Undo all changes made to this line.  This is like executing the
-     `undo' command enough times to get back to the beginning.
+     'undo' command enough times to get back to the beginning.
 
-`tilde-expand (M-~)'
+'tilde-expand (M-~)'
      Perform tilde expansion on the current word.
 
-`set-mark (C-@)'
+'set-mark (C-@)'
      Set the mark to the point.  If a numeric argument is supplied, the
      mark is set to that position.
 
-`exchange-point-and-mark (C-x C-x)'
+'exchange-point-and-mark (C-x C-x)'
      Swap the point with the mark.  The current cursor position is set
      to the saved position, and the old cursor position is saved as the
      mark.
 
-`character-search (C-])'
+'character-search (C-])'
      A character is read and point is moved to the next occurrence of
      that character.  A negative count searches for previous
      occurrences.
 
-`character-search-backward (M-C-])'
+'character-search-backward (M-C-])'
      A character is read and point is moved to the previous occurrence
      of that character.  A negative count searches for subsequent
      occurrences.
 
-`skip-csi-sequence ()'
+'skip-csi-sequence ()'
      Read enough characters to consume a multi-key sequence such as
      those defined for keys like Home and End.  Such sequences begin
      with a Control Sequence Indicator (CSI), usually ESC-[.  If this
-     sequence is bound to "\e[", keys producing such sequences will
-     have no effect unless explicitly bound to a readline command,
-     instead of inserting stray characters into the editing buffer.
-     This is unbound by default, but usually bound to ESC-[.
+     sequence is bound to "\e[", keys producing such sequences will have
+     no effect unless explicitly bound to a readline command, instead of
+     inserting stray characters into the editing buffer.  This is
+     unbound by default, but usually bound to ESC-[.
 
-`insert-comment (M-#)'
-     Without a numeric argument, the value of the `comment-begin'
+'insert-comment (M-#)'
+     Without a numeric argument, the value of the 'comment-begin'
      variable is inserted at the beginning of the current line.  If a
-     numeric argument is supplied, this command acts as a toggle:  if
-     the characters at the beginning of the line do not match the value
-     of `comment-begin', the value is inserted, otherwise the
-     characters in `comment-begin' are deleted from the beginning of
-     the line.  In either case, the line is accepted as if a newline
-     had been typed.
-
-`dump-functions ()'
+     numeric argument is supplied, this command acts as a toggle: if the
+     characters at the beginning of the line do not match the value of
+     'comment-begin', the value is inserted, otherwise the characters in
+     'comment-begin' are deleted from the beginning of the line.  In
+     either case, the line is accepted as if a newline had been typed.
+
+'dump-functions ()'
      Print all of the functions and their key bindings to the Readline
      output stream.  If a numeric argument is supplied, the output is
      formatted in such a way that it can be made part of an INPUTRC
      file.  This command is unbound by default.
 
-`dump-variables ()'
+'dump-variables ()'
      Print all of the settable variables and their values to the
      Readline output stream.  If a numeric argument is supplied, the
      output is formatted in such a way that it can be made part of an
      INPUTRC file.  This command is unbound by default.
 
-`dump-macros ()'
+'dump-macros ()'
      Print all of the Readline key sequences bound to macros and the
-     strings they output.  If a numeric argument is supplied, the
-     output is formatted in such a way that it can be made part of an
-     INPUTRC file.  This command is unbound by default.
+     strings they output.  If a numeric argument is supplied, the output
+     is formatted in such a way that it can be made part of an INPUTRC
+     file.  This command is unbound by default.
 
-`emacs-editing-mode (C-e)'
-     When in `vi' command mode, this causes a switch to `emacs' editing
+'emacs-editing-mode (C-e)'
+     When in 'vi' command mode, this causes a switch to 'emacs' editing
      mode.
 
-`vi-editing-mode (M-C-j)'
-     When in `emacs' editing mode, this causes a switch to `vi' editing
+'vi-editing-mode (M-C-j)'
+     When in 'emacs' editing mode, this causes a switch to 'vi' editing
      mode.
 
-
 \1f
 File: readline.info,  Node: Readline vi Mode,  Prev: Bindable Readline Commands,  Up: Command Line Editing
 
 1.5 Readline vi Mode
 ====================
 
-While the Readline library does not have a full set of `vi' editing
+While the Readline library does not have a full set of 'vi' editing
 functions, it does contain enough to allow simple editing of the line.
-The Readline `vi' mode behaves as specified in the POSIX standard.
+The Readline 'vi' mode behaves as specified in the POSIX standard.
 
-   In order to switch interactively between `emacs' and `vi' editing
-modes, use the command `M-C-j' (bound to emacs-editing-mode when in
-`vi' mode and to vi-editing-mode in `emacs' mode).  The Readline
-default is `emacs' mode.
+   In order to switch interactively between 'emacs' and 'vi' editing
+modes, use the command 'M-C-j' (bound to emacs-editing-mode when in 'vi'
+mode and to vi-editing-mode in 'emacs' mode).  The Readline default is
+'emacs' mode.
 
-   When you enter a line in `vi' mode, you are already placed in
-`insertion' mode, as if you had typed an `i'.  Pressing <ESC> switches
-you into `command' mode, where you can edit the text of the line with
-the standard `vi' movement keys, move to previous history lines with
-`k' and subsequent lines with `j', and so forth.
+   When you enter a line in 'vi' mode, you are already placed in
+'insertion' mode, as if you had typed an 'i'.  Pressing <ESC> switches
+you into 'command' mode, where you can edit the text of the line with
+the standard 'vi' movement keys, move to previous history lines with 'k'
+and subsequent lines with 'j', and so forth.
 
    This document describes the GNU Readline Library, a utility for
 aiding in the consistency of user interface across discrete programs
@@ -1417,8 +1437,8 @@ manual provided the copyright notice and this permission notice pare
 preserved on all copies.
 
    Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
+this manual under the conditions for verbatim copying, provided that the
+entire resulting derived work is distributed under the terms of a
 permission notice identical to this one.
 
    Permission is granted to copy and distribute translations of this
@@ -1434,9 +1454,9 @@ File: readline.info,  Node: Programming with GNU Readline,  Next: GNU Free Docum
 
 This chapter describes the interface between the GNU Readline Library
 and other programs.  If you are a programmer, and you wish to include
-the features found in GNU Readline such as completion, line editing,
-and interactive history manipulation in your own programs, this section
-is for you.
+the features found in GNU Readline such as completion, line editing, and
+interactive history manipulation in your own programs, this section is
+for you.
 
 * Menu:
 
@@ -1457,41 +1477,41 @@ File: readline.info,  Node: Basic Behavior,  Next: Custom Functions,  Up: Progra
 2.1 Basic Behavior
 ==================
 
-Many programs provide a command line interface, such as `mail', `ftp',
-and `sh'.  For such programs, the default behaviour of Readline is
+Many programs provide a command line interface, such as 'mail', 'ftp',
+and 'sh'.  For such programs, the default behaviour of Readline is
 sufficient.  This section describes how to use Readline in the simplest
-way possible, perhaps to replace calls in your code to `gets()' or
-`fgets()'.
+way possible, perhaps to replace calls in your code to 'gets()' or
+'fgets()'.
 
-   The function `readline()' prints a prompt PROMPT and then reads and
-returns a single line of text from the user.  If PROMPT is `NULL' or
-the empty string, no prompt is displayed.  The line `readline' returns
-is allocated with `malloc()'; the caller should `free()' the line when
-it has finished with it.  The declaration for `readline' in ANSI C is
+   The function 'readline()' prints a prompt PROMPT and then reads and
+returns a single line of text from the user.  If PROMPT is 'NULL' or the
+empty string, no prompt is displayed.  The line 'readline' returns is
+allocated with 'malloc()'; the caller should 'free()' the line when it
+has finished with it.  The declaration for 'readline' in ANSI C is
 
-     `char *readline (const char *PROMPT);'
+     char *readline (const char *PROMPT);
 
 So, one might say
-     `char *line = readline ("Enter a line: ");'
-   in order to read a line of text from the user.  The line returned
-has the final newline removed, so only the text remains.
+     char *line = readline ("Enter a line: ");
+in order to read a line of text from the user.  The line returned has
+the final newline removed, so only the text remains.
 
-   If `readline' encounters an `EOF' while reading the line, and the
-line is empty at that point, then `(char *)NULL' is returned.
+   If 'readline' encounters an 'EOF' while reading the line, and the
+line is empty at that point, then '(char *)NULL' is returned.
 Otherwise, the line is ended just as if a newline had been typed.
 
-   If you want the user to be able to get at the line later, (with
-<C-p> for example), you must call `add_history()' to save the line away
-in a "history" list of such lines.
+   If you want the user to be able to get at the line later, (with <C-p>
+for example), you must call 'add_history()' to save the line away in a
+"history" list of such lines.
 
-     `add_history (line)';
+     add_history (line);
 
 For full details on the GNU History Library, see the associated manual.
 
    It is preferable to avoid saving empty lines on the history list,
-since users rarely have a burning need to reuse a blank line.  Here is
-a function which usefully replaces the standard `gets()' library
-function, and has the advantage of no static buffer to overflow:
+since users rarely have a burning need to reuse a blank line.  Here is a
+function which usefully replaces the standard 'gets()' library function,
+and has the advantage of no static buffer to overflow:
 
      /* A static variable for holding the line. */
      static char *line_read = (char *)NULL;
@@ -1523,21 +1543,21 @@ function, and has the advantage of no static buffer to overflow:
    This function gives the user the default behaviour of <TAB>
 completion: completion on file names.  If you do not want Readline to
 complete on filenames, you can change the binding of the <TAB> key with
-`rl_bind_key()'.
+'rl_bind_key()'.
 
-     `int rl_bind_key (int KEY, rl_command_func_t *FUNCTION);'
+     int rl_bind_key (int KEY, rl_command_func_t *FUNCTION);
 
-   `rl_bind_key()' takes two arguments: KEY is the character that you
+   'rl_bind_key()' takes two arguments: KEY is the character that you
 want to bind, and FUNCTION is the address of the function to call when
-KEY is pressed.  Binding <TAB> to `rl_insert()' makes <TAB> insert
-itself.  `rl_bind_key()' returns non-zero if KEY is not a valid ASCII
+KEY is pressed.  Binding <TAB> to 'rl_insert()' makes <TAB> insert
+itself.  'rl_bind_key()' returns non-zero if KEY is not a valid ASCII
 character code (between 0 and 255).
 
    Thus, to disable the default <TAB> behavior, the following suffices:
-     `rl_bind_key ('\t', rl_insert);'
+     rl_bind_key ('\t', rl_insert);
 
    This code should be executed once at the start of your program; you
-might write a function called `initialize_readline()' which performs
+might write a function called 'initialize_readline()' which performs
 this and other desired initializations, such as installing custom
 completers (*note Custom Completers::).
 
@@ -1549,25 +1569,24 @@ File: readline.info,  Node: Custom Functions,  Next: Readline Variables,  Prev:
 
 Readline provides many functions for manipulating the text of the line,
 but it isn't possible to anticipate the needs of all programs.  This
-section describes the various functions and variables defined within
-the Readline library which allow a user program to add customized
+section describes the various functions and variables defined within the
+Readline library which allow a user program to add customized
 functionality to Readline.
 
    Before declaring any functions that customize Readline's behavior, or
 using any functionality Readline provides in other code, an application
-writer should include the file `<readline/readline.h>' in any file that
-uses Readline's features.  Since some of the definitions in
-`readline.h' use the `stdio' library, the file `<stdio.h>' should be
-included before `readline.h'.
-
-   `readline.h' defines a C preprocessor variable that should be
-treated as an integer, `RL_READLINE_VERSION', which may be used to
-conditionally compile application code depending on the installed
-Readline version.  The value is a hexadecimal encoding of the major and
-minor version numbers of the library, of the form 0xMMMM.  MM is the
-two-digit major version number; MM is the two-digit minor version
-number.  For Readline 4.2, for example, the value of
-`RL_READLINE_VERSION' would be `0x0402'.
+writer should include the file '<readline/readline.h>' in any file that
+uses Readline's features.  Since some of the definitions in 'readline.h'
+use the 'stdio' library, the file '<stdio.h>' should be included before
+'readline.h'.
+
+   'readline.h' defines a C preprocessor variable that should be treated
+as an integer, 'RL_READLINE_VERSION', which may be used to conditionally
+compile application code depending on the installed Readline version.
+The value is a hexadecimal encoding of the major and minor version
+numbers of the library, of the form 0xMMMM.  MM is the two-digit major
+version number; MM is the two-digit minor version number.  For Readline
+4.2, for example, the value of 'RL_READLINE_VERSION' would be '0x0402'.
 
 * Menu:
 
@@ -1588,57 +1607,51 @@ write code describing pointers to C functions with appropriately
 prototyped arguments and return values.
 
    For instance, say we want to declare a variable FUNC as a pointer to
-a function which takes two `int' arguments and returns an `int' (this
-is the type of all of the Readline bindable functions).  Instead of the
+a function which takes two 'int' arguments and returns an 'int' (this is
+the type of all of the Readline bindable functions).  Instead of the
 classic C declaration
 
-   `int (*func)();'
+   'int (*func)();'
 
 or the ANSI-C style declaration
 
-   `int (*func)(int, int);'
+   'int (*func)(int, int);'
 
 we may write
 
-   `rl_command_func_t *func;'
+   'rl_command_func_t *func;'
 
    The full list of function pointer types available is
 
-`typedef int rl_command_func_t (int, int);'
-
-`typedef char *rl_compentry_func_t (const char *, int);'
-
-`typedef char **rl_completion_func_t (const char *, int, int);'
-
-`typedef char *rl_quote_func_t (char *, int, char *);'
-
-`typedef char *rl_dequote_func_t (char *, int);'
-
-`typedef int rl_compignore_func_t (char **);'
+'typedef int rl_command_func_t (int, int);'
 
-`typedef void rl_compdisp_func_t (char **, int, int);'
+'typedef char *rl_compentry_func_t (const char *, int);'
 
-`typedef int rl_hook_func_t (void);'
+'typedef char **rl_completion_func_t (const char *, int, int);'
 
-`typedef int rl_getc_func_t (FILE *);'
+'typedef char *rl_quote_func_t (char *, int, char *);'
 
-`typedef int rl_linebuf_func_t (char *, int);'
+'typedef char *rl_dequote_func_t (char *, int);'
 
-`typedef int rl_intfunc_t (int);'
+'typedef int rl_compignore_func_t (char **);'
 
-`#define rl_ivoidfunc_t rl_hook_func_t'
+'typedef void rl_compdisp_func_t (char **, int, int);'
 
-`typedef int rl_icpfunc_t (char *);'
+'typedef int rl_hook_func_t (void);'
 
-`typedef int rl_icppfunc_t (char **);'
+'typedef int rl_getc_func_t (FILE *);'
 
-`typedef void rl_voidfunc_t (void);'
+'typedef int rl_linebuf_func_t (char *, int);'
 
-`typedef void rl_vintfunc_t (int);'
+'typedef int rl_intfunc_t (int);'
+'#define rl_ivoidfunc_t rl_hook_func_t'
+'typedef int rl_icpfunc_t (char *);'
+'typedef int rl_icppfunc_t (char **);'
 
-`typedef void rl_vcpfunc_t (char *);'
-
-`typedef void rl_vcppfunc_t (char **);'
+'typedef void rl_voidfunc_t (void);'
+'typedef void rl_vintfunc_t (int);'
+'typedef void rl_vcpfunc_t (char *);'
+'typedef void rl_vcppfunc_t (char **);'
 
 \1f
 File: readline.info,  Node: Function Writing,  Prev: Readline Typedefs,  Up: Custom Functions
@@ -1650,9 +1663,9 @@ In order to write new functions for Readline, you need to know the
 calling conventions for keyboard-invoked functions, and the names of the
 variables that describe the current state of the line read so far.
 
-   The calling sequence for a command `foo' looks like
+   The calling sequence for a command 'foo' looks like
 
-     `int foo (int count, int key)'
+     int foo (int count, int key)
 
 where COUNT is the numeric argument (or 1 if defaulted) and KEY is the
 key that invoked this function.
@@ -1667,8 +1680,8 @@ negative and positive arguments.  At the very least, it should be aware
 that it can be passed a negative argument.
 
    A command function should return 0 if its action completes
-successfully, and a non-zero value if some error occurs.  This is the
-convention obeyed by all of the builtin Readline bindable command
+successfully, and a value greater than zero if some error occurs.  This
+is the convention obeyed by all of the builtin Readline bindable command
 functions.
 
 \1f
@@ -1682,16 +1695,16 @@ These variables are available to function writers.
  -- Variable: char * rl_line_buffer
      This is the line gathered so far.  You are welcome to modify the
      contents of the line, but see *note Allowing Undoing::.  The
-     function `rl_extend_line_buffer' is available to increase the
-     memory allocated to `rl_line_buffer'.
+     function 'rl_extend_line_buffer' is available to increase the
+     memory allocated to 'rl_line_buffer'.
 
  -- Variable: int rl_point
-     The offset of the current cursor position in `rl_line_buffer' (the
+     The offset of the current cursor position in 'rl_line_buffer' (the
      _point_).
 
  -- Variable: int rl_end
-     The number of characters present in `rl_line_buffer'.  When
-     `rl_point' is at the end of the line, `rl_point' and `rl_end' are
+     The number of characters present in 'rl_line_buffer'.  When
+     'rl_point' is at the end of the line, 'rl_point' and 'rl_end' are
      equal.
 
  -- Variable: int rl_mark
@@ -1703,9 +1716,9 @@ These variables are available to function writers.
      current line immediately.
 
  -- Variable: int rl_num_chars_to_read
-     Setting this to a positive value before calling `readline()' causes
+     Setting this to a positive value before calling 'readline()' causes
      Readline to return after accepting that many characters, rather
-     than reading up to a character bound to `accept-line'.
+     than reading up to a character bound to 'accept-line'.
 
  -- Variable: int rl_pending_input
      Setting this to a value makes it the next keystroke read.  This is
@@ -1719,27 +1732,27 @@ These variables are available to function writers.
 
  -- Variable: int rl_erase_empty_line
      Setting this to a non-zero value causes Readline to completely
-     erase the current line, including any prompt, any time a newline
-     is typed as the only character on an otherwise-empty line.  The
-     cursor is moved to the beginning of the newly-blank line.
+     erase the current line, including any prompt, any time a newline is
+     typed as the only character on an otherwise-empty line.  The cursor
+     is moved to the beginning of the newly-blank line.
 
  -- Variable: char * rl_prompt
      The prompt Readline uses.  This is set from the argument to
-     `readline()', and should not be assigned to directly.  The
-     `rl_set_prompt()' function (*note Redisplay::) may be used to
-     modify the prompt string after calling `readline()'.
+     'readline()', and should not be assigned to directly.  The
+     'rl_set_prompt()' function (*note Redisplay::) may be used to
+     modify the prompt string after calling 'readline()'.
 
  -- Variable: char * rl_display_prompt
      The string displayed as the prompt.  This is usually identical to
-     RL_PROMPT, but may be changed temporarily by functions that use
-     the prompt string as a message area, such as incremental search.
+     RL_PROMPT, but may be changed temporarily by functions that use the
+     prompt string as a message area, such as incremental search.
 
  -- Variable: int rl_already_prompted
      If an application wishes to display the prompt itself, rather than
-     have Readline do it the first time `readline()' is called, it
+     have Readline do it the first time 'readline()' is called, it
      should set this variable to a non-zero value after displaying the
      prompt.  The prompt must also be passed as the argument to
-     `readline()' so the redisplay functions can update the display
+     'readline()' so the redisplay functions can update the display
      properly.  The calling application is responsible for managing the
      value; Readline never sets it.
 
@@ -1750,7 +1763,7 @@ These variables are available to function writers.
      An integer encoding the current version of the library.  The
      encoding is of the form 0xMMMM, where MM is the two-digit major
      version number, and MM is the two-digit minor version number.  For
-     example, for Readline-4.2, `rl_readline_version' would have the
+     example, for Readline-4.2, 'rl_readline_version' would have the
      value 0x0402.
 
  -- Variable: int rl_gnu_readline_p
@@ -1759,7 +1772,7 @@ These variables are available to function writers.
 
  -- Variable: const char * rl_terminal_name
      The terminal type, used for initialization.  If not set by the
-     application, Readline sets this to the value of the `TERM'
+     application, Readline sets this to the value of the 'TERM'
      environment variable the first time it is called.
 
  -- Variable: const char * rl_readline_name
@@ -1768,89 +1781,88 @@ These variables are available to function writers.
      (*note Conditional Init Constructs::).
 
  -- Variable: FILE * rl_instream
-     The stdio stream from which Readline reads input.  If `NULL',
+     The stdio stream from which Readline reads input.  If 'NULL',
      Readline defaults to STDIN.
 
  -- Variable: FILE * rl_outstream
-     The stdio stream to which Readline performs output.  If `NULL',
+     The stdio stream to which Readline performs output.  If 'NULL',
      Readline defaults to STDOUT.
 
  -- Variable: int rl_prefer_env_winsize
-     If non-zero, Readline gives values found in the `LINES' and
-     `COLUMNS' environment variables greater precedence than values
+     If non-zero, Readline gives values found in the 'LINES' and
+     'COLUMNS' environment variables greater precedence than values
      fetched from the kernel when computing the screen dimensions.
 
  -- Variable: rl_command_func_t * rl_last_func
-     The address of the last command function Readline executed.  May
-     be used to test whether or not a function is being executed twice
-     in succession, for example.
+     The address of the last command function Readline executed.  May be
+     used to test whether or not a function is being executed twice in
+     succession, for example.
 
  -- Variable: rl_hook_func_t * rl_startup_hook
      If non-zero, this is the address of a function to call just before
-     `readline' prints the first prompt.
+     'readline' prints the first prompt.
 
  -- Variable: rl_hook_func_t * rl_pre_input_hook
      If non-zero, this is the address of a function to call after the
-     first prompt has been printed and just before `readline' starts
+     first prompt has been printed and just before 'readline' starts
      reading input characters.
 
  -- Variable: rl_hook_func_t * rl_event_hook
      If non-zero, this is the address of a function to call periodically
-     when Readline is waiting for terminal input.  By default, this
-     will be called at most ten times a second if there is no keyboard
-     input.
+     when Readline is waiting for terminal input.  By default, this will
+     be called at most ten times a second if there is no keyboard input.
 
  -- Variable: rl_getc_func_t * rl_getc_function
      If non-zero, Readline will call indirectly through this pointer to
      get a character from the input stream.  By default, it is set to
-     `rl_getc', the default Readline character input function (*note
+     'rl_getc', the default Readline character input function (*note
      Character Input::).  In general, an application that sets
-     RL_GETC_FUNCTION should consider setting RL_INPUT_AVAILABLE_HOOK
-     as well.
+     RL_GETC_FUNCTION should consider setting RL_INPUT_AVAILABLE_HOOK as
+     well.
 
  -- Variable: rl_hook_func_t * rl_signal_event_hook
      If non-zero, this is the address of a function to call if a read
      system call is interrupted when Readline is reading terminal input.
 
  -- Variable: rl_hook_func_t * rl_input_available_hook
-     If non-zero, Readline will use this function's return value when
-     it needs to determine whether or not there is available input on
-     the current input source.  The default hook checks `rl_instream';
-     if an application is using a different input source, it should set
-     the hook appropriately.  Readline queries for available input when
+     If non-zero, Readline will use this function's return value when it
+     needs to determine whether or not there is available input on the
+     current input source.  The default hook checks 'rl_instream'; if an
+     application is using a different input source, it should set the
+     hook appropriately.  Readline queries for available input when
      implementing intra-key-sequence timeouts during input and
-     incremental searches.  This may use an application-specific
-     timeout before returning a value; Readline uses the value passed
-     to `rl_set_keyboard_input_timeout()' or the value of the
-     user-settable KEYSEQ-TIMEOUT variable.  This is designed for use
-     by applications using Readline's callback interface (*note
-     Alternate Interface::), which may not use the traditional
-     `read(2)' and file descriptor interface, or other applications
-     using a different input mechanism.  If an application uses an
-     input mechanism or hook that can potentially exceed the value of
-     KEYSEQ-TIMEOUT, it should increase the timeout or set this hook
-     appropriately even when not using the callback interface.  In
-     general, an application that sets RL_GETC_FUNCTION should consider
-     setting RL_INPUT_AVAILABLE_HOOK as well.
+     incremental searches.  This may use an application-specific timeout
+     before returning a value; Readline uses the value passed to
+     'rl_set_keyboard_input_timeout()' or the value of the user-settable
+     KEYSEQ-TIMEOUT variable.  This is designed for use by applications
+     using Readline's callback interface (*note Alternate Interface::),
+     which may not use the traditional 'read(2)' and file descriptor
+     interface, or other applications using a different input mechanism.
+     If an application uses an input mechanism or hook that can
+     potentially exceed the value of KEYSEQ-TIMEOUT, it should increase
+     the timeout or set this hook appropriately even when not using the
+     callback interface.  In general, an application that sets
+     RL_GETC_FUNCTION should consider setting RL_INPUT_AVAILABLE_HOOK as
+     well.
 
  -- Variable: rl_voidfunc_t * rl_redisplay_function
      If non-zero, Readline will call indirectly through this pointer to
      update the display with the current contents of the editing buffer.
-     By default, it is set to `rl_redisplay', the default Readline
+     By default, it is set to 'rl_redisplay', the default Readline
      redisplay function (*note Redisplay::).
 
  -- Variable: rl_vintfunc_t * rl_prep_term_function
      If non-zero, Readline will call indirectly through this pointer to
      initialize the terminal.  The function takes a single argument, an
-     `int' flag that says whether or not to use eight-bit characters.
-     By default, this is set to `rl_prep_terminal' (*note Terminal
+     'int' flag that says whether or not to use eight-bit characters.
+     By default, this is set to 'rl_prep_terminal' (*note Terminal
      Management::).
 
  -- Variable: rl_voidfunc_t * rl_deprep_term_function
      If non-zero, Readline will call indirectly through this pointer to
      reset the terminal.  This function should undo the effects of
-     `rl_prep_term_function'.  By default, this is set to
-     `rl_deprep_terminal' (*note Terminal Management::).
+     'rl_prep_term_function'.  By default, this is set to
+     'rl_deprep_terminal' (*note Terminal Management::).
 
  -- Variable: Keymap rl_executing_keymap
      This variable is set to the keymap (*note Keymaps::) in which the
@@ -1876,98 +1888,73 @@ These variables are available to function writers.
 
  -- Variable: int rl_readline_state
      A variable with bit values that encapsulate the current Readline
-     state.  A bit is set with the `RL_SETSTATE' macro, and unset with
-     the `RL_UNSETSTATE' macro.  Use the `RL_ISSTATE' macro to test
+     state.  A bit is set with the 'RL_SETSTATE' macro, and unset with
+     the 'RL_UNSETSTATE' macro.  Use the 'RL_ISSTATE' macro to test
      whether a particular state bit is set.  Current state bits include:
 
-    `RL_STATE_NONE'
+     'RL_STATE_NONE'
           Readline has not yet been called, nor has it begun to
           initialize.
-
-    `RL_STATE_INITIALIZING'
+     'RL_STATE_INITIALIZING'
           Readline is initializing its internal data structures.
-
-    `RL_STATE_INITIALIZED'
+     'RL_STATE_INITIALIZED'
           Readline has completed its initialization.
-
-    `RL_STATE_TERMPREPPED'
+     'RL_STATE_TERMPREPPED'
           Readline has modified the terminal modes to do its own input
           and redisplay.
-
-    `RL_STATE_READCMD'
+     'RL_STATE_READCMD'
           Readline is reading a command from the keyboard.
-
-    `RL_STATE_METANEXT'
+     'RL_STATE_METANEXT'
           Readline is reading more input after reading the meta-prefix
           character.
-
-    `RL_STATE_DISPATCHING'
+     'RL_STATE_DISPATCHING'
           Readline is dispatching to a command.
-
-    `RL_STATE_MOREINPUT'
+     'RL_STATE_MOREINPUT'
           Readline is reading more input while executing an editing
           command.
-
-    `RL_STATE_ISEARCH'
+     'RL_STATE_ISEARCH'
           Readline is performing an incremental history search.
-
-    `RL_STATE_NSEARCH'
+     'RL_STATE_NSEARCH'
           Readline is performing a non-incremental history search.
-
-    `RL_STATE_SEARCH'
+     'RL_STATE_SEARCH'
           Readline is searching backward or forward through the history
           for a string.
-
-    `RL_STATE_NUMERICARG'
+     'RL_STATE_NUMERICARG'
           Readline is reading a numeric argument.
-
-    `RL_STATE_MACROINPUT'
+     'RL_STATE_MACROINPUT'
           Readline is currently getting its input from a
           previously-defined keyboard macro.
-
-    `RL_STATE_MACRODEF'
+     'RL_STATE_MACRODEF'
           Readline is currently reading characters defining a keyboard
           macro.
-
-    `RL_STATE_OVERWRITE'
+     'RL_STATE_OVERWRITE'
           Readline is in overwrite mode.
-
-    `RL_STATE_COMPLETING'
+     'RL_STATE_COMPLETING'
           Readline is performing word completion.
-
-    `RL_STATE_SIGHANDLER'
+     'RL_STATE_SIGHANDLER'
           Readline is currently executing the readline signal handler.
-
-    `RL_STATE_UNDOING'
+     'RL_STATE_UNDOING'
           Readline is performing an undo.
-
-    `RL_STATE_INPUTPENDING'
+     'RL_STATE_INPUTPENDING'
           Readline has input pending due to a call to
-          `rl_execute_next()'.
-
-    `RL_STATE_TTYCSAVED'
+          'rl_execute_next()'.
+     'RL_STATE_TTYCSAVED'
           Readline has saved the values of the terminal's special
           characters.
-
-    `RL_STATE_CALLBACK'
+     'RL_STATE_CALLBACK'
           Readline is currently using the alternate (callback) interface
           (*note Alternate Interface::).
-
-    `RL_STATE_VIMOTION'
+     'RL_STATE_VIMOTION'
           Readline is reading the argument to a vi-mode "motion"
           command.
-
-    `RL_STATE_MULTIKEY'
+     'RL_STATE_MULTIKEY'
           Readline is reading a multiple-keystroke command.
-
-    `RL_STATE_VICMDONCE'
+     'RL_STATE_VICMDONCE'
           Readline has entered vi command (movement) mode at least one
-          time during the current call to `readline()'.
-
-    `RL_STATE_DONE'
-          Readline has read a key sequence bound to `accept-line' and
-          is about to return the line to the caller.
-
+          time during the current call to 'readline()'.
+     'RL_STATE_DONE'
+          Readline has read a key sequence bound to 'accept-line' and is
+          about to return the line to the caller.
 
  -- Variable: int rl_explicit_arg
      Set to a non-zero value if an explicit numeric argument was
@@ -1998,12 +1985,12 @@ File: readline.info,  Node: Readline Convenience Functions,  Next: Readline Sign
                                                key sequences.
 * Allowing Undoing::   How to make your functions undoable.
 * Redisplay::          Functions to control line display.
-* Modifying Text::     Functions to modify `rl_line_buffer'.
+* Modifying Text::     Functions to modify 'rl_line_buffer'.
 * Character Input::    Functions to read keyboard input.
 * Terminal Management::        Functions to manage terminal settings.
 * Utility Functions::  Generally useful functions and hooks.
 * Miscellaneous Functions::    Functions that don't fall into any category.
-* Alternate Interface::        Using Readline in a `callback' fashion.
+* Alternate Interface::        Using Readline in a 'callback' fashion.
 * A Readline Example::         An example Readline function.
 * Alternate Interface Example::        An example program using the alternate interface.
 
@@ -2021,7 +2008,7 @@ the function.  Thus, in an init file, one might find
      Meta-Rubout:      backward-kill-word
 
    This binds the keystroke <Meta-Rubout> to the function
-_descriptively_ named `backward-kill-word'.  You, as the programmer,
+_descriptively_ named 'backward-kill-word'.  You, as the programmer,
 should bind the functions you write to descriptive names as well.
 Readline provides a function for doing that:
 
@@ -2029,13 +2016,13 @@ Readline provides a function for doing that:
           *function, int key)
      Add NAME to the list of named functions.  Make FUNCTION be the
      function that gets called.  If KEY is not -1, then bind it to
-     FUNCTION using `rl_bind_key()'.
+     FUNCTION using 'rl_bind_key()'.
 
-   Using this function alone is sufficient for most applications.  It
-is the recommended way to add a few functions to the default functions
-that Readline has built in.  If you need to do something other than
-adding a function to Readline, you may need to use the underlying
-functions described below.
+   Using this function alone is sufficient for most applications.  It is
+the recommended way to add a few functions to the default functions that
+Readline has built in.  If you need to do something other than adding a
+function to Readline, you may need to use the underlying functions
+described below.
 
 \1f
 File: readline.info,  Node: Keymaps,  Next: Binding Keys,  Prev: Function Naming,  Up: Readline Convenience Functions
@@ -2049,9 +2036,9 @@ You can make your own keymaps, copy existing keymaps, and tell Readline
 which keymap to use.
 
  -- Function: Keymap rl_make_bare_keymap (void)
-     Returns a new, empty keymap.  The space for the keymap is
-     allocated with `malloc()'; the caller should free it by calling
-     `rl_free_keymap()' when done.
+     Returns a new, empty keymap.  The space for the keymap is allocated
+     with 'malloc()'; the caller should free it by calling
+     'rl_free_keymap()' when done.
 
  -- Function: Keymap rl_copy_keymap (Keymap map)
      Return a new keymap which is a copy of MAP.
@@ -2068,7 +2055,7 @@ which keymap to use.
 
  -- Function: void rl_free_keymap (Keymap keymap)
      Free all storage associated with KEYMAP.  This calls
-     `rl_discard_keymap' to free subordindate keymaps and macros.
+     'rl_discard_keymap' to free subordindate keymaps and macros.
 
    Readline has several internal keymaps.  These functions allow you to
 change which keymap is active.
@@ -2081,12 +2068,12 @@ change which keymap is active.
 
  -- Function: Keymap rl_get_keymap_by_name (const char *name)
      Return the keymap matching NAME.  NAME is one which would be
-     supplied in a `set keymap' inputrc line (*note Readline Init
+     supplied in a 'set keymap' inputrc line (*note Readline Init
      File::).
 
  -- Function: char * rl_get_keymap_name (Keymap keymap)
      Return the name matching KEYMAP.  NAME is one which would be
-     supplied in a `set keymap' inputrc line (*note Readline Init
+     supplied in a 'set keymap' inputrc line (*note Readline Init
      File::).
 
 \1f
@@ -2095,17 +2082,17 @@ File: readline.info,  Node: Binding Keys,  Next: Associating Function Names and
 2.4.3 Binding Keys
 ------------------
 
-Key sequences are associate with functions through the keymap.
-Readline has several internal keymaps: `emacs_standard_keymap',
-`emacs_meta_keymap', `emacs_ctlx_keymap', `vi_movement_keymap', and
-`vi_insertion_keymap'.  `emacs_standard_keymap' is the default, and the
+Key sequences are associate with functions through the keymap.  Readline
+has several internal keymaps: 'emacs_standard_keymap',
+'emacs_meta_keymap', 'emacs_ctlx_keymap', 'vi_movement_keymap', and
+'vi_insertion_keymap'.  'emacs_standard_keymap' is the default, and the
 examples in this manual assume that.
 
-   Since `readline()' installs a set of default key bindings the first
+   Since 'readline()' installs a set of default key bindings the first
 time it is called, there is always the danger that a custom binding
-installed before the first call to `readline()' will be overridden.  An
+installed before the first call to 'readline()' will be overridden.  An
 alternate mechanism is to install custom key bindings in an
-initialization function assigned to the `rl_startup_hook' variable
+initialization function assigned to the 'rl_startup_hook' variable
 (*note Readline Variables::).
 
    These functions manage key bindings.
@@ -2149,9 +2136,9 @@ initialization function assigned to the `rl_startup_hook' variable
  -- Function: int rl_bind_keyseq (const char *keyseq, rl_command_func_t
           *function)
      Bind the key sequence represented by the string KEYSEQ to the
-     function FUNCTION, beginning in the current keymap.  This makes
-     new keymaps as necessary.  The return value is non-zero if KEYSEQ
-     is invalid.
+     function FUNCTION, beginning in the current keymap.  This makes new
+     keymaps as necessary.  The return value is non-zero if KEYSEQ is
+     invalid.
 
  -- Function: int rl_bind_keyseq_in_map (const char *keyseq,
           rl_command_func_t *function, Keymap map)
@@ -2162,7 +2149,7 @@ initialization function assigned to the `rl_startup_hook' variable
 
  -- Function: int rl_set_key (const char *keyseq, rl_command_func_t
           *function, Keymap map)
-     Equivalent to `rl_bind_keyseq_in_map'.
+     Equivalent to 'rl_bind_keyseq_in_map'.
 
  -- Function: int rl_bind_keyseq_if_unbound (const char *keyseq,
           rl_command_func_t *function)
@@ -2180,12 +2167,12 @@ initialization function assigned to the `rl_startup_hook' variable
           *data, Keymap map)
      Bind the key sequence represented by the string KEYSEQ to the
      arbitrary pointer DATA.  TYPE says what kind of data is pointed to
-     by DATA; this can be a function (`ISFUNC'), a macro (`ISMACR'), or
-     a keymap (`ISKMAP').  This makes new keymaps as necessary.  The
+     by DATA; this can be a function ('ISFUNC'), a macro ('ISMACR'), or
+     a keymap ('ISKMAP').  This makes new keymaps as necessary.  The
      initial keymap in which to do bindings is MAP.
 
  -- Function: int rl_parse_and_bind (char *line)
-     Parse LINE as if it had been read from the `inputrc' file and
+     Parse LINE as if it had been read from the 'inputrc' file and
      perform any key bindings and variable assignments found (*note
      Readline Init File::).
 
@@ -2209,9 +2196,9 @@ associate a new function name with an arbitrary function.
  -- Function: rl_command_func_t * rl_function_of_keyseq (const char
           *keyseq, Keymap map, int *type)
      Return the function invoked by KEYSEQ in keymap MAP.  If MAP is
-     `NULL', the current keymap is used.  If TYPE is not `NULL', the
-     type of the object is returned in the `int' variable it points to
-     (one of `ISFUNC', `ISKMAP', or `ISMACR').
+     'NULL', the current keymap is used.  If TYPE is not 'NULL', the
+     type of the object is returned in the 'int' variable it points to
+     (one of 'ISFUNC', 'ISKMAP', or 'ISMACR').
 
  -- Function: char ** rl_invoking_keyseqs (rl_command_func_t *function)
      Return an array of strings representing the key sequences used to
@@ -2224,19 +2211,19 @@ associate a new function name with an arbitrary function.
 
  -- Function: void rl_function_dumper (int readable)
      Print the readline function names and the key sequences currently
-     bound to them to `rl_outstream'.  If READABLE is non-zero, the
-     list is formatted in such a way that it can be made part of an
-     `inputrc' file and re-read.
+     bound to them to 'rl_outstream'.  If READABLE is non-zero, the list
+     is formatted in such a way that it can be made part of an 'inputrc'
+     file and re-read.
 
  -- Function: void rl_list_funmap_names (void)
      Print the names of all bindable Readline functions to
-     `rl_outstream'.
+     'rl_outstream'.
 
  -- Function: const char ** rl_funmap_names (void)
      Return a NULL terminated array of known function names.  The array
      is sorted.  The array itself is allocated, but not the strings
      inside.  You should free the array, but not the pointers, using
-     `free' or `rl_free' when you are done.
+     'free' or 'rl_free' when you are done.
 
  -- Function: int rl_add_funmap_entry (const char *name,
           rl_command_func_t *function)
@@ -2254,36 +2241,36 @@ functions much more useful.  It is certainly easy to try something if
 you know you can undo it.
 
    If your function simply inserts text once, or deletes text once, and
-uses `rl_insert_text()' or `rl_delete_text()' to do it, then undoing is
+uses 'rl_insert_text()' or 'rl_delete_text()' to do it, then undoing is
 already done for you automatically.
 
    If you do multiple insertions or multiple deletions, or any
-combination of these operations, you should group them together into
-one operation.  This is done with `rl_begin_undo_group()' and
-`rl_end_undo_group()'.
+combination of these operations, you should group them together into one
+operation.  This is done with 'rl_begin_undo_group()' and
+'rl_end_undo_group()'.
 
    The types of events that can be undone are:
 
      enum undo_code { UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END };
 
-   Notice that `UNDO_DELETE' means to insert some text, and
-`UNDO_INSERT' means to delete some text.  That is, the undo code tells
-what to undo, not how to undo it.  `UNDO_BEGIN' and `UNDO_END' are tags
-added by `rl_begin_undo_group()' and `rl_end_undo_group()'.
+   Notice that 'UNDO_DELETE' means to insert some text, and
+'UNDO_INSERT' means to delete some text.  That is, the undo code tells
+what to undo, not how to undo it.  'UNDO_BEGIN' and 'UNDO_END' are tags
+added by 'rl_begin_undo_group()' and 'rl_end_undo_group()'.
 
  -- Function: int rl_begin_undo_group (void)
      Begins saving undo information in a group construct.  The undo
-     information usually comes from calls to `rl_insert_text()' and
-     `rl_delete_text()', but could be the result of calls to
-     `rl_add_undo()'.
+     information usually comes from calls to 'rl_insert_text()' and
+     'rl_delete_text()', but could be the result of calls to
+     'rl_add_undo()'.
 
  -- Function: int rl_end_undo_group (void)
-     Closes the current undo group started with `rl_begin_undo_group
-     ()'.  There should be one call to `rl_end_undo_group()' for each
-     call to `rl_begin_undo_group()'.
+     Closes the current undo group started with 'rl_begin_undo_group
+     ()'.  There should be one call to 'rl_end_undo_group()' for each
+     call to 'rl_begin_undo_group()'.
 
- -- Function: void rl_add_undo (enum undo_code what, int start, int
-          end, char *text)
+ -- Function: void rl_add_undo (enum undo_code what, int start, int end,
+          char *text)
      Remember how to undo an event (according to WHAT).  The affected
      text runs from START to END, and encompasses TEXT.
 
@@ -2291,11 +2278,11 @@ added by `rl_begin_undo_group()' and `rl_end_undo_group()'.
      Free the existing undo list.
 
  -- Function: int rl_do_undo (void)
-     Undo the first thing on the undo list.  Returns `0' if there was
+     Undo the first thing on the undo list.  Returns '0' if there was
      nothing to undo, non-zero if something was undone.
 
    Finally, if you neither insert nor delete text, but directly modify
-the existing text (e.g., change its case), call `rl_modifying()' once,
+the existing text (e.g., change its case), call 'rl_modifying()' once,
 just before you modify the text.  You must supply the indices of the
 text range that you are going to modify.
 
@@ -2312,7 +2299,7 @@ File: readline.info,  Node: Redisplay,  Next: Modifying Text,  Prev: Allowing Un
 
  -- Function: void rl_redisplay (void)
      Change what's displayed on the screen to reflect the current
-     contents of `rl_line_buffer'.
+     contents of 'rl_line_buffer'.
 
  -- Function: int rl_forced_update_display (void)
      Force the line to be updated and redisplayed, whether or not
@@ -2326,8 +2313,8 @@ File: readline.info,  Node: Redisplay,  Next: Modifying Text,  Prev: Allowing Un
      Tell the update functions that we have moved onto a new line, with
      RL_PROMPT already displayed.  This could be used by applications
      that want to output the prompt string themselves, but still need
-     Readline to know the prompt string length for redisplay.  It
-     should be used after setting RL_ALREADY_PROMPTED.
+     Readline to know the prompt string length for redisplay.  It should
+     be used after setting RL_ALREADY_PROMPTED.
 
  -- Function: int rl_reset_line_state (void)
      Reset the display state to a clean state and redisplay the current
@@ -2337,53 +2324,52 @@ File: readline.info,  Node: Redisplay,  Next: Modifying Text,  Prev: Allowing Un
      Move the cursor to the start of the next screen line.
 
  -- Function: int rl_show_char (int c)
-     Display character C on `rl_outstream'.  If Readline has not been
+     Display character C on 'rl_outstream'.  If Readline has not been
      set to display meta characters directly, this will convert meta
      characters to a meta-prefixed key sequence.  This is intended for
      use by applications which wish to do their own redisplay.
 
  -- Function: int rl_message (const char *, ...)
-     The arguments are a format string as would be supplied to `printf',
-     possibly containing conversion specifications such as `%d', and
-     any additional arguments necessary to satisfy the conversion
+     The arguments are a format string as would be supplied to 'printf',
+     possibly containing conversion specifications such as '%d', and any
+     additional arguments necessary to satisfy the conversion
      specifications.  The resulting string is displayed in the "echo
-     area".  The echo area is also used to display numeric arguments
-     and search strings.  You should call `rl_save_prompt' to save the
+     area".  The echo area is also used to display numeric arguments and
+     search strings.  You should call 'rl_save_prompt' to save the
      prompt information before calling this function.
 
  -- Function: int rl_clear_message (void)
-     Clear the message in the echo area.  If the prompt was saved with
-     a call to `rl_save_prompt' before the last call to `rl_message',
-     call `rl_restore_prompt' before calling this function.
+     Clear the message in the echo area.  If the prompt was saved with a
+     call to 'rl_save_prompt' before the last call to 'rl_message', call
+     'rl_restore_prompt' before calling this function.
 
  -- Function: void rl_save_prompt (void)
      Save the local Readline prompt display state in preparation for
-     displaying a new message in the message area with `rl_message()'.
+     displaying a new message in the message area with 'rl_message()'.
 
  -- Function: void rl_restore_prompt (void)
      Restore the local Readline prompt display state saved by the most
-     recent call to `rl_save_prompt'.  if `rl_save_prompt' was called
-     to save the prompt before a call to `rl_message', this function
-     should be called before the corresponding call to
-     `rl_clear_message'.
+     recent call to 'rl_save_prompt'.  if 'rl_save_prompt' was called to
+     save the prompt before a call to 'rl_message', this function should
+     be called before the corresponding call to 'rl_clear_message'.
 
  -- Function: int rl_expand_prompt (char *prompt)
      Expand any special character sequences in PROMPT and set up the
-     local Readline prompt redisplay variables.  This function is
-     called by `readline()'.  It may also be called to expand the
-     primary prompt if the `rl_on_new_line_with_prompt()' function or
-     `rl_already_prompted' variable is used.  It returns the number of
+     local Readline prompt redisplay variables.  This function is called
+     by 'readline()'.  It may also be called to expand the primary
+     prompt if the 'rl_on_new_line_with_prompt()' function or
+     'rl_already_prompted' variable is used.  It returns the number of
      visible characters on the last line of the (possibly multi-line)
      prompt.  Applications may indicate that the prompt contains
      characters that take up no physical screen space when displayed by
      bracketing a sequence of such characters with the special markers
-     `RL_PROMPT_START_IGNORE' and `RL_PROMPT_END_IGNORE' (declared in
-     `readline.h'.  This may be used to embed terminal-specific escape
+     'RL_PROMPT_START_IGNORE' and 'RL_PROMPT_END_IGNORE' (declared in
+     'readline.h').  This may be used to embed terminal-specific escape
      sequences in prompts.
 
  -- Function: int rl_set_prompt (const char *prompt)
      Make Readline use PROMPT for subsequent redisplay.  This calls
-     `rl_expand_prompt()' to expand the prompt and sets `rl_prompt' to
+     'rl_expand_prompt()' to expand the prompt and sets 'rl_prompt' to
      the result.
 
 \1f
@@ -2397,24 +2383,24 @@ File: readline.info,  Node: Modifying Text,  Next: Character Input,  Prev: Redis
      the number of characters inserted.
 
  -- Function: int rl_delete_text (int start, int end)
-     Delete the text between START and END in the current line.
-     Returns the number of characters deleted.
+     Delete the text between START and END in the current line.  Returns
+     the number of characters deleted.
 
  -- Function: char * rl_copy_text (int start, int end)
      Return a copy of the text between START and END in the current
      line.
 
  -- Function: int rl_kill_text (int start, int end)
-     Copy the text between START and END in the current line to the
-     kill ring, appending or prepending to the last kill if the last
-     command was a kill command.  The text is deleted.  If START is
-     less than END, the text is appended, otherwise prepended.  If the
-     last command was not a kill, a new kill ring slot is used.
+     Copy the text between START and END in the current line to the kill
+     ring, appending or prepending to the last kill if the last command
+     was a kill command.  The text is deleted.  If START is less than
+     END, the text is appended, otherwise prepended.  If the last
+     command was not a kill, a new kill ring slot is used.
 
  -- Function: int rl_push_macro_input (char *macro)
      Cause MACRO to be inserted into the line, as if it had been invoked
      by a key bound to a macro.  Not especially useful; use
-     `rl_insert_text()' instead.
+     'rl_insert_text()' instead.
 
 \1f
 File: readline.info,  Node: Character Input,  Next: Terminal Management,  Prev: Modifying Text,  Up: Readline Convenience Functions
@@ -2426,9 +2412,9 @@ File: readline.info,  Node: Character Input,  Next: Terminal Management,  Prev:
      Return the next character available from Readline's current input
      stream.  This handles input inserted into the input stream via
      RL_PENDING_INPUT (*note Readline Variables::) and
-     `rl_stuff_char()', macros, and characters read from the keyboard.
+     'rl_stuff_char()', macros, and characters read from the keyboard.
      While waiting for input, this function will call any function
-     assigned to the `rl_event_hook' variable.
+     assigned to the 'rl_event_hook' variable.
 
  -- Function: int rl_getc (FILE *stream)
      Return the next character available from STREAM, which is assumed
@@ -2437,23 +2423,23 @@ File: readline.info,  Node: Character Input,  Next: Terminal Management,  Prev:
  -- Function: int rl_stuff_char (int c)
      Insert C into the Readline input stream.  It will be "read" before
      Readline attempts to read characters from the terminal with
-     `rl_read_key()'.  Up to 512 characters may be pushed back.
-     `rl_stuff_char' returns 1 if the character was successfully
+     'rl_read_key()'.  Up to 512 characters may be pushed back.
+     'rl_stuff_char' returns 1 if the character was successfully
      inserted; 0 otherwise.
 
  -- Function: int rl_execute_next (int c)
-     Make C be the next command to be executed when `rl_read_key()' is
+     Make C be the next command to be executed when 'rl_read_key()' is
      called.  This sets RL_PENDING_INPUT.
 
  -- Function: int rl_clear_pending_input (void)
      Unset RL_PENDING_INPUT, effectively negating the effect of any
-     previous call to `rl_execute_next()'.  This works only if the
-     pending input has not already been read with `rl_read_key()'.
+     previous call to 'rl_execute_next()'.  This works only if the
+     pending input has not already been read with 'rl_read_key()'.
 
  -- Function: int rl_set_keyboard_input_timeout (int u)
-     While waiting for keyboard input in `rl_read_key()', Readline will
+     While waiting for keyboard input in 'rl_read_key()', Readline will
      wait for U microseconds for input before calling any function
-     assigned to `rl_event_hook'.  U must be greater than or equal to
+     assigned to 'rl_event_hook'.  U must be greater than or equal to
      zero (a zero-length timeout is equivalent to a poll).  The default
      waiting period is one-tenth of a second.  Returns the old timeout
      value.
@@ -2465,30 +2451,30 @@ File: readline.info,  Node: Terminal Management,  Next: Utility Functions,  Prev
 -------------------------
 
  -- Function: void rl_prep_terminal (int meta_flag)
-     Modify the terminal settings for Readline's use, so `readline()'
+     Modify the terminal settings for Readline's use, so 'readline()'
      can read a single character at a time from the keyboard.  The
      META_FLAG argument should be non-zero if Readline should read
      eight-bit input.
 
  -- Function: void rl_deprep_terminal (void)
-     Undo the effects of `rl_prep_terminal()', leaving the terminal in
+     Undo the effects of 'rl_prep_terminal()', leaving the terminal in
      the state in which it was before the most recent call to
-     `rl_prep_terminal()'.
+     'rl_prep_terminal()'.
 
  -- Function: void rl_tty_set_default_bindings (Keymap kmap)
      Read the operating system's terminal editing characters (as would
-     be displayed by `stty') to their Readline equivalents.  The
+     be displayed by 'stty') to their Readline equivalents.  The
      bindings are performed in KMAP.
 
  -- Function: void rl_tty_unset_default_bindings (Keymap kmap)
-     Reset the bindings manipulated by `rl_tty_set_default_bindings' so
-     that the terminal editing characters are bound to `rl_insert'.
-     The bindings are performed in KMAP.
+     Reset the bindings manipulated by 'rl_tty_set_default_bindings' so
+     that the terminal editing characters are bound to 'rl_insert'.  The
+     bindings are performed in KMAP.
 
  -- Function: int rl_reset_terminal (const char *terminal_name)
      Reinitialize Readline's idea of the terminal settings using
-     TERMINAL_NAME as the terminal type (e.g., `vt100').  If
-     TERMINAL_NAME is `NULL', the value of the `TERM' environment
+     TERMINAL_NAME as the terminal type (e.g., 'vt100').  If
+     TERMINAL_NAME is 'NULL', the value of the 'TERM' environment
      variable is used.
 
 \1f
@@ -2499,54 +2485,54 @@ File: readline.info,  Node: Utility Functions,  Next: Miscellaneous Functions,
 
  -- Function: int rl_save_state (struct readline_state *sp)
      Save a snapshot of Readline's internal state to SP.  The contents
-     of the READLINE_STATE structure are documented in `readline.h'.
+     of the READLINE_STATE structure are documented in 'readline.h'.
      The caller is responsible for allocating the structure.
 
  -- Function: int rl_restore_state (struct readline_state *sp)
      Restore Readline's internal state to that stored in SP, which must
-     have been saved by a call to `rl_save_state'.  The contents of the
-     READLINE_STATE structure are documented in `readline.h'.  The
+     have been saved by a call to 'rl_save_state'.  The contents of the
+     READLINE_STATE structure are documented in 'readline.h'.  The
      caller is responsible for freeing the structure.
 
  -- Function: void rl_free (void *mem)
      Deallocate the memory pointed to by MEM.  MEM must have been
-     allocated by `malloc'.
+     allocated by 'malloc'.
 
  -- Function: void rl_replace_line (const char *text, int clear_undo)
-     Replace the contents of `rl_line_buffer' with TEXT.  The point and
+     Replace the contents of 'rl_line_buffer' with TEXT.  The point and
      mark are preserved, if possible.  If CLEAR_UNDO is non-zero, the
      undo list associated with the current line is cleared.
 
  -- Function: void rl_extend_line_buffer (int len)
-     Ensure that `rl_line_buffer' has enough space to hold LEN
+     Ensure that 'rl_line_buffer' has enough space to hold LEN
      characters, possibly reallocating it if necessary.
 
  -- Function: int rl_initialize (void)
      Initialize or re-initialize Readline's internal state.  It's not
-     strictly necessary to call this; `readline()' calls it before
+     strictly necessary to call this; 'readline()' calls it before
      reading any input.
 
  -- Function: int rl_ding (void)
-     Ring the terminal bell, obeying the setting of `bell-style'.
+     Ring the terminal bell, obeying the setting of 'bell-style'.
 
  -- Function: int rl_alphabetic (int c)
      Return 1 if C is an alphabetic character.
 
  -- Function: void rl_display_match_list (char **matches, int len, int
           max)
-     A convenience function for displaying a list of strings in
-     columnar format on Readline's output stream.  `matches' is the list
-     of strings, in argv format, such as a list of completion matches.
-     `len' is the number of strings in `matches', and `max' is the
-     length of the longest string in `matches'.  This function uses the
-     setting of `print-completions-horizontally' to select how the
+     A convenience function for displaying a list of strings in columnar
+     format on Readline's output stream.  'matches' is the list of
+     strings, in argv format, such as a list of completion matches.
+     'len' is the number of strings in 'matches', and 'max' is the
+     length of the longest string in 'matches'.  This function uses the
+     setting of 'print-completions-horizontally' to select how the
      matches are displayed (*note Readline Init File Syntax::).  When
      displaying completions, this function sets the number of columns
-     used for display to the value of `completion-display-width', the
-     value of the environment variable `COLUMNS', or the screen width,
+     used for display to the value of 'completion-display-width', the
+     value of the environment variable 'COLUMNS', or the screen width,
      in that order.
 
-   The following are implemented as macros, defined in `chardefs.h'.
+   The following are implemented as macros, defined in 'chardefs.h'.
 Applications should refrain from using them.
 
  -- Function: int _rl_uppercase_p (int c)
@@ -2580,34 +2566,34 @@ File: readline.info,  Node: Miscellaneous Functions,  Next: Alternate Interface,
      Bind the key sequence KEYSEQ to invoke the macro MACRO.  The
      binding is performed in MAP.  When KEYSEQ is invoked, the MACRO
      will be inserted into the line.  This function is deprecated; use
-     `rl_generic_bind()' instead.
+     'rl_generic_bind()' instead.
 
  -- Function: void rl_macro_dumper (int readable)
-     Print the key sequences bound to macros and their values, using
-     the current keymap, to `rl_outstream'.  If READABLE is non-zero,
-     the list is formatted in such a way that it can be made part of an
-     `inputrc' file and re-read.
+     Print the key sequences bound to macros and their values, using the
+     current keymap, to 'rl_outstream'.  If READABLE is non-zero, the
+     list is formatted in such a way that it can be made part of an
+     'inputrc' file and re-read.
 
  -- Function: int rl_variable_bind (const char *variable, const char
           *value)
-     Make the Readline variable VARIABLE have VALUE.  This behaves as
-     if the readline command `set VARIABLE VALUE' had been executed in
-     an `inputrc' file (*note Readline Init File Syntax::).
+     Make the Readline variable VARIABLE have VALUE.  This behaves as if
+     the readline command 'set VARIABLE VALUE' had been executed in an
+     'inputrc' file (*note Readline Init File Syntax::).
 
  -- Function: char * rl_variable_value (const char *variable)
      Return a string representing the value of the Readline variable
-     VARIABLE.  For boolean variables, this string is either `on' or
-     `off'.
+     VARIABLE.  For boolean variables, this string is either 'on' or
+     'off'.
 
  -- Function: void rl_variable_dumper (int readable)
      Print the readline variable names and their current values to
-     `rl_outstream'.  If READABLE is non-zero, the list is formatted in
-     such a way that it can be made part of an `inputrc' file and
+     'rl_outstream'.  If READABLE is non-zero, the list is formatted in
+     such a way that it can be made part of an 'inputrc' file and
      re-read.
 
  -- Function: int rl_set_paren_blink_timeout (int u)
      Set the time interval (in microseconds) that Readline waits when
-     showing a balancing character when `blink-matching-paren' has been
+     showing a balancing character when 'blink-matching-paren' has been
      enabled.
 
  -- Function: char * rl_get_termcap (const char *cap)
@@ -2620,9 +2606,9 @@ File: readline.info,  Node: Miscellaneous Functions,  Next: Alternate Interface,
 
  -- Function: void rl_clear_history (void)
      Clear the history list by deleting all of the entries, in the same
-     manner as the History library's `clear_history()' function.  This
-     differs from `clear_history' because it frees private data
-     Readline saves in the history list.
+     manner as the History library's 'clear_history()' function.  This
+     differs from 'clear_history' because it frees private data Readline
+     saves in the history list.
 
 \1f
 File: readline.info,  Node: Alternate Interface,  Next: A Readline Example,  Prev: Miscellaneous Functions,  Up: Readline Convenience Functions
@@ -2630,11 +2616,11 @@ File: readline.info,  Node: Alternate Interface,  Next: A Readline Example,  Pre
 2.4.12 Alternate Interface
 --------------------------
 
-An alternate interface is available to plain `readline()'.  Some
+An alternate interface is available to plain 'readline()'.  Some
 applications need to interleave keyboard I/O with file, device, or
-window system I/O, typically by using a main loop to `select()' on
+window system I/O, typically by using a main loop to 'select()' on
 various file descriptors.  To accommodate this need, readline can also
-be invoked as a `callback' function from an event loop.  There are
+be invoked as a 'callback' function from an event loop.  There are
 functions available to make this easy.
 
  -- Function: void rl_callback_handler_install (const char *prompt,
@@ -2643,29 +2629,37 @@ functions available to make this easy.
      expanded value of PROMPT.  Save the value of LHANDLER to use as a
      handler function to call when a complete line of input has been
      entered.  The handler function receives the text of the line as an
-     argument.
+     argument.  As with 'readline()', the handler function should 'free'
+     the line when it it finished with it.
 
  -- Function: void rl_callback_read_char (void)
      Whenever an application determines that keyboard input is
-     available, it should call `rl_callback_read_char()', which will
+     available, it should call 'rl_callback_read_char()', which will
      read the next character from the current input source.  If that
-     character completes the line, `rl_callback_read_char' will invoke
-     the LHANDLER function installed by `rl_callback_handler_install'
-     to process the line.  Before calling the LHANDLER function, the
+     character completes the line, 'rl_callback_read_char' will invoke
+     the LHANDLER function installed by 'rl_callback_handler_install' to
+     process the line.  Before calling the LHANDLER function, the
      terminal settings are reset to the values they had before calling
-     `rl_callback_handler_install'.  If the LHANDLER function returns,
+     'rl_callback_handler_install'.  If the LHANDLER function returns,
      and the line handler remains installed, the terminal settings are
-     modified for Readline's use again.  `EOF' is indicated by calling
-     LHANDLER with a `NULL' line.
+     modified for Readline's use again.  'EOF' is indicated by calling
+     LHANDLER with a 'NULL' line.
+
+ -- Function: void rl_callback_sigcleanup (void)
+     Clean up any internal state the callback interface uses to maintain
+     state between calls to rl_callback_read_char (e.g., the state of
+     any active incremental searches).  This is intended to be used by
+     applications that wish to perform their own signal handling;
+     Readline's internal signal handler calls this when appropriate.
 
  -- Function: void rl_callback_handler_remove (void)
      Restore the terminal to its initial state and remove the line
-     handler.  This may be called from within a callback as well as
-     independently.  If the LHANDLER installed by
-     `rl_callback_handler_install' does not exit the program, either
+     handler.  You may call this function from within a callback as well
+     as independently.  If the LHANDLER installed by
+     'rl_callback_handler_install' does not exit the program, either
      this function or the function referred to by the value of
-     `rl_deprep_term_function' should be called before the program
-     exits to reset the terminal settings.
+     'rl_deprep_term_function' should be called before the program exits
+     to reset the terminal settings.
 
 \1f
 File: readline.info,  Node: A Readline Example,  Next: Alternate Interface Example,  Prev: Alternate Interface,  Up: Readline Convenience Functions
@@ -2675,8 +2669,8 @@ File: readline.info,  Node: A Readline Example,  Next: Alternate Interface Examp
 
 Here is a function which changes lowercase characters to their uppercase
 equivalents, and uppercase characters to lowercase.  If this function
-was bound to `M-c', then typing `M-c' would change the case of the
-character under point.  Typing `M-1 0 M-c' would change the case of the
+was bound to 'M-c', then typing 'M-c' would change the case of the
+character under point.  Typing 'M-1 0 M-c' would change the case of the
 following 10 characters, leaving the cursor on the last character
 changed.
 
@@ -2838,96 +2832,103 @@ Signals are asynchronous events sent to a process by the Unix kernel,
 sometimes on behalf of another process.  They are intended to indicate
 exceptional events, like a user pressing the interrupt key on his
 terminal, or a network connection being broken.  There is a class of
-signals that can be sent to the process currently reading input from
-the keyboard.  Since Readline changes the terminal attributes when it
-is called, it needs to perform special processing when such a signal is
+signals that can be sent to the process currently reading input from the
+keyboard.  Since Readline changes the terminal attributes when it is
+called, it needs to perform special processing when such a signal is
 received in order to restore the terminal to a sane state, or provide
 application writers with functions to do so manually.
 
    Readline contains an internal signal handler that is installed for a
-number of signals (`SIGINT', `SIGQUIT', `SIGTERM', `SIGHUP', `SIGALRM',
-`SIGTSTP', `SIGTTIN', and `SIGTTOU').  When one of these signals is
-received, the signal handler will reset the terminal attributes to
-those that were in effect before `readline()' was called, reset the
-signal handling to what it was before `readline()' was called, and
-resend the signal to the calling application.  If and when the calling
+number of signals ('SIGINT', 'SIGQUIT', 'SIGTERM', 'SIGHUP', 'SIGALRM',
+'SIGTSTP', 'SIGTTIN', and 'SIGTTOU').  When one of these signals is
+received, the signal handler will reset the terminal attributes to those
+that were in effect before 'readline()' was called, reset the signal
+handling to what it was before 'readline()' was called, and resend the
+signal to the calling application.  If and when the calling
 application's signal handler returns, Readline will reinitialize the
-terminal and continue to accept input.  When a `SIGINT' is received,
-the Readline signal handler performs some additional work, which will
-cause any partially-entered line to be aborted (see the description of
-`rl_free_line_state()' below).
+terminal and continue to accept input.  When a 'SIGINT' is received, the
+Readline signal handler performs some additional work, which will cause
+any partially-entered line to be aborted (see the description of
+'rl_free_line_state()' below).
 
-   There is an additional Readline signal handler, for `SIGWINCH', which
+   There is an additional Readline signal handler, for 'SIGWINCH', which
 the kernel sends to a process whenever the terminal's size changes (for
-example, if a user resizes an `xterm').  The Readline `SIGWINCH'
-handler updates Readline's internal screen size information, and then
-calls any `SIGWINCH' signal handler the calling application has
-installed.  Readline calls the application's `SIGWINCH' signal handler
-without resetting the terminal to its original state.  If the
-application's signal handler does more than update its idea of the
-terminal size and return (for example, a `longjmp' back to a main
-processing loop), it _must_ call `rl_cleanup_after_signal()' (described
-below), to restore the terminal state.
+example, if a user resizes an 'xterm').  The Readline 'SIGWINCH' handler
+updates Readline's internal screen size information, and then calls any
+'SIGWINCH' signal handler the calling application has installed.
+Readline calls the application's 'SIGWINCH' signal handler without
+resetting the terminal to its original state.  If the application's
+signal handler does more than update its idea of the terminal size and
+return (for example, a 'longjmp' back to a main processing loop), it
+_must_ call 'rl_cleanup_after_signal()' (described below), to restore
+the terminal state.
+
+   When an application is using the callback interface (*note Alternate
+Interface::), Readline installs signal handlers only for the duration of
+the call to 'rl_callback_read_char'.  Applications using the callback
+interface should be prepared to clean up Readline's state if they wish
+to handle the signal before the line handler completes and restores the
+terminal state.
 
    Readline provides two variables that allow application writers to
 control whether or not it will catch certain signals and act on them
 when they are received.  It is important that applications change the
-values of these variables only when calling `readline()', not in a
+values of these variables only when calling 'readline()', not in a
 signal handler, so Readline's internal signal state is not corrupted.
 
  -- Variable: int rl_catch_signals
-     If this variable is non-zero, Readline will install signal
-     handlers for `SIGINT', `SIGQUIT', `SIGTERM', `SIGHUP', `SIGALRM',
-     `SIGTSTP', `SIGTTIN', and `SIGTTOU'.
+     If this variable is non-zero, Readline will install signal handlers
+     for 'SIGINT', 'SIGQUIT', 'SIGTERM', 'SIGHUP', 'SIGALRM', 'SIGTSTP',
+     'SIGTTIN', and 'SIGTTOU'.
 
-     The default value of `rl_catch_signals' is 1.
+     The default value of 'rl_catch_signals' is 1.
 
  -- Variable: int rl_catch_sigwinch
      If this variable is set to a non-zero value, Readline will install
-     a signal handler for `SIGWINCH'.
+     a signal handler for 'SIGWINCH'.
 
-     The default value of `rl_catch_sigwinch' is 1.
+     The default value of 'rl_catch_sigwinch' is 1.
 
  -- Variable: int rl_change_environment
      If this variable is set to a non-zero value, and Readline is
-     handling `SIGWINCH', Readline will modify the LINES and COLUMNS
-     environment variables upon receipt of a `SIGWINCH'
+     handling 'SIGWINCH', Readline will modify the LINES and COLUMNS
+     environment variables upon receipt of a 'SIGWINCH'
 
-     The default value of `rl_change_environment' is 1.
+     The default value of 'rl_change_environment' is 1.
 
    If an application does not wish to have Readline catch any signals,
-or to handle signals other than those Readline catches (`SIGHUP', for
+or to handle signals other than those Readline catches ('SIGHUP', for
 example), Readline provides convenience functions to do the necessary
 terminal and internal state cleanup upon receipt of a signal.
 
  -- Function: void rl_cleanup_after_signal (void)
      This function will reset the state of the terminal to what it was
-     before `readline()' was called, and remove the Readline signal
+     before 'readline()' was called, and remove the Readline signal
      handlers for all signals, depending on the values of
-     `rl_catch_signals' and `rl_catch_sigwinch'.
+     'rl_catch_signals' and 'rl_catch_sigwinch'.
 
  -- Function: void rl_free_line_state (void)
      This will free any partial state associated with the current input
      line (undo information, any partial history entry, any
-     partially-entered keyboard macro, and any partially-entered
-     numeric argument).  This should be called before
-     `rl_cleanup_after_signal()'.  The Readline signal handler for
-     `SIGINT' calls this to abort the current input line.
+     partially-entered keyboard macro, and any partially-entered numeric
+     argument).  This should be called before
+     'rl_cleanup_after_signal()'.  The Readline signal handler for
+     'SIGINT' calls this to abort the current input line.
 
  -- Function: void rl_reset_after_signal (void)
      This will reinitialize the terminal and reinstall any Readline
-     signal handlers, depending on the values of `rl_catch_signals' and
-     `rl_catch_sigwinch'.
+     signal handlers, depending on the values of 'rl_catch_signals' and
+     'rl_catch_sigwinch'.
 
-   If an application does not wish Readline to catch `SIGWINCH', it may
-call `rl_resize_terminal()' or `rl_set_screen_size()' to force Readline
-to update its idea of the terminal size when a `SIGWINCH' is received.
+   If an application does not wish Readline to catch 'SIGWINCH', it may
+call 'rl_resize_terminal()' or 'rl_set_screen_size()' to force Readline
+to update its idea of the terminal size when a 'SIGWINCH' is received.
 
  -- Function: void rl_echo_signal_char (int sig)
      If an application wishes to install its own signal handlers, but
      still have readline display characters that generate signals,
-     calling this function with SIG set to `SIGINT', `SIGQUIT', or
-     `SIGTSTP' will display the character generating that signal.
+     calling this function with SIG set to 'SIGINT', 'SIGQUIT', or
+     'SIGTSTP' will display the character generating that signal.
 
  -- Function: void rl_resize_terminal (void)
      Update Readline's internal screen size by reading values from the
@@ -2938,7 +2939,7 @@ to update its idea of the terminal size when a `SIGWINCH' is received.
      columns.  If either ROWS or COLUMNS is less than or equal to 0,
      Readline's idea of that terminal dimension is unchanged.
 
-   If an application does not want to install a `SIGWINCH' handler, but
+   If an application does not want to install a 'SIGWINCH' handler, but
 is still interested in the screen dimensions, Readline's idea of the
 screen size may be queried.
 
@@ -2954,14 +2955,14 @@ screen size may be queried.
 handlers.
 
  -- Function: int rl_set_signals (void)
-     Install Readline's signal handler for `SIGINT', `SIGQUIT',
-     `SIGTERM', `SIGHUP', `SIGALRM', `SIGTSTP', `SIGTTIN', `SIGTTOU',
-     and `SIGWINCH', depending on the values of `rl_catch_signals' and
-     `rl_catch_sigwinch'.
+     Install Readline's signal handler for 'SIGINT', 'SIGQUIT',
+     'SIGTERM', 'SIGHUP', 'SIGALRM', 'SIGTSTP', 'SIGTTIN', 'SIGTTOU',
+     and 'SIGWINCH', depending on the values of 'rl_catch_signals' and
+     'rl_catch_sigwinch'.
 
  -- Function: int rl_clear_signals (void)
      Remove all of the Readline signal handlers installed by
-     `rl_set_signals()'.
+     'rl_set_signals()'.
 
 \1f
 File: readline.info,  Node: Custom Completers,  Prev: Readline Signal Handling,  Up: Programming with GNU Readline
@@ -2992,58 +2993,56 @@ In order to complete some text, the full list of possible completions
 must be available.  That is, it is not possible to accurately expand a
 partial word without knowing all of the possible words which make sense
 in that context.  The Readline library provides the user interface to
-completion, and two of the most common completion functions:  filename
+completion, and two of the most common completion functions: filename
 and username.  For completing other types of text, you must write your
 own completion function.  This section describes exactly what such
 functions must do, and provides an example.
 
    There are three major functions used to perform completion:
 
-  1. The user-interface function `rl_complete()'.  This function is
+  1. The user-interface function 'rl_complete()'.  This function is
      called with the same arguments as other bindable Readline
      functions: COUNT and INVOKING_KEY.  It isolates the word to be
-     completed and calls `rl_completion_matches()' to generate a list
-     of possible completions.  It then either lists the possible
-     completions, inserts the possible completions, or actually
-     performs the completion, depending on which behavior is desired.
+     completed and calls 'rl_completion_matches()' to generate a list of
+     possible completions.  It then either lists the possible
+     completions, inserts the possible completions, or actually performs
+     the completion, depending on which behavior is desired.
 
-  2. The internal function `rl_completion_matches()' uses an
+  2. The internal function 'rl_completion_matches()' uses an
      application-supplied "generator" function to generate the list of
-     possible matches, and then returns the array of these matches.
-     The caller should place the address of its generator function in
-     `rl_completion_entry_function'.
+     possible matches, and then returns the array of these matches.  The
+     caller should place the address of its generator function in
+     'rl_completion_entry_function'.
 
   3. The generator function is called repeatedly from
-     `rl_completion_matches()', returning a string each time.  The
+     'rl_completion_matches()', returning a string each time.  The
      arguments to the generator function are TEXT and STATE.  TEXT is
-     the partial word to be completed.  STATE is zero the first time
-     the function is called, allowing the generator to perform any
-     necessary initialization, and a positive non-zero integer for each
-     subsequent call.  The generator function returns `(char *)NULL' to
-     inform `rl_completion_matches()' that there are no more
-     possibilities left.  Usually the generator function computes the
-     list of possible completions when STATE is zero, and returns them
-     one at a time on subsequent calls.  Each string the generator
-     function returns as a match must be allocated with `malloc()';
-     Readline frees the strings when it has finished with them.  Such a
-     generator function is referred to as an "application-specific
-     completion function".
-
+     the partial word to be completed.  STATE is zero the first time the
+     function is called, allowing the generator to perform any necessary
+     initialization, and a positive non-zero integer for each subsequent
+     call.  The generator function returns '(char *)NULL' to inform
+     'rl_completion_matches()' that there are no more possibilities
+     left.  Usually the generator function computes the list of possible
+     completions when STATE is zero, and returns them one at a time on
+     subsequent calls.  Each string the generator function returns as a
+     match must be allocated with 'malloc()'; Readline frees the strings
+     when it has finished with them.  Such a generator function is
+     referred to as an "application-specific completion function".
 
  -- Function: int rl_complete (int ignore, int invoking_key)
      Complete the word at or before point.  You have supplied the
      function that does the initial simple matching selection algorithm
-     (see `rl_completion_matches()').  The default is to do filename
+     (see 'rl_completion_matches()').  The default is to do filename
      completion.
 
  -- Variable: rl_compentry_func_t * rl_completion_entry_function
      This is a pointer to the generator function for
-     `rl_completion_matches()'.  If the value of
-     `rl_completion_entry_function' is `NULL' then the default filename
-     generator function, `rl_filename_completion_function()', is used.
+     'rl_completion_matches()'.  If the value of
+     'rl_completion_entry_function' is 'NULL' then the default filename
+     generator function, 'rl_filename_completion_function()', is used.
      An "application-specific completion function" is a function whose
-     address is assigned to `rl_completion_entry_function' and whose
-     return values are used to  generate possible completions.
+     address is assigned to 'rl_completion_entry_function' and whose
+     return values are used to generate possible completions.
 
 \1f
 File: readline.info,  Node: Completion Functions,  Next: Completion Variables,  Prev: How Completing Works,  Up: Custom Completers
@@ -3056,51 +3055,51 @@ Readline.
 
  -- Function: int rl_complete_internal (int what_to_do)
      Complete the word at or before point.  WHAT_TO_DO says what to do
-     with the completion.  A value of `?' means list the possible
-     completions.  `TAB' means do standard completion.  `*' means
-     insert all of the possible completions.  `!' means to display all
-     of the possible completions, if there is more than one, as well as
-     performing partial completion.  `@' is similar to `!', but
-     possible completions are not listed if the possible completions
-     share a common prefix.
+     with the completion.  A value of '?' means list the possible
+     completions.  'TAB' means do standard completion.  '*' means insert
+     all of the possible completions.  '!' means to display all of the
+     possible completions, if there is more than one, as well as
+     performing partial completion.  '@' is similar to '!', but possible
+     completions are not listed if the possible completions share a
+     common prefix.
 
  -- Function: int rl_complete (int ignore, int invoking_key)
      Complete the word at or before point.  You have supplied the
      function that does the initial simple matching selection algorithm
-     (see `rl_completion_matches()' and `rl_completion_entry_function').
+     (see 'rl_completion_matches()' and 'rl_completion_entry_function').
      The default is to do filename completion.  This calls
-     `rl_complete_internal()' with an argument depending on
+     'rl_complete_internal()' with an argument depending on
      INVOKING_KEY.
 
  -- Function: int rl_possible_completions (int count, int invoking_key)
-     List the possible completions.  See description of `rl_complete
-     ()'.  This calls `rl_complete_internal()' with an argument of `?'.
+     List the possible completions.  See description of 'rl_complete
+     ()'.  This calls 'rl_complete_internal()' with an argument of '?'.
 
  -- Function: int rl_insert_completions (int count, int invoking_key)
      Insert the list of possible completions into the line, deleting the
-     partially-completed word.  See description of `rl_complete()'.
-     This calls `rl_complete_internal()' with an argument of `*'.
+     partially-completed word.  See description of 'rl_complete()'.
+     This calls 'rl_complete_internal()' with an argument of '*'.
 
  -- Function: int rl_completion_mode (rl_command_func_t *cfunc)
-     Returns the appropriate value to pass to `rl_complete_internal()'
+     Returns the appropriate value to pass to 'rl_complete_internal()'
      depending on whether CFUNC was called twice in succession and the
-     values of the `show-all-if-ambiguous' and `show-all-if-unmodified'
+     values of the 'show-all-if-ambiguous' and 'show-all-if-unmodified'
      variables.  Application-specific completion functions may use this
-     function to present the same interface as `rl_complete()'.
+     function to present the same interface as 'rl_complete()'.
 
  -- Function: char ** rl_completion_matches (const char *text,
           rl_compentry_func_t *entry_func)
      Returns an array of strings which is a list of completions for
-     TEXT.  If there are no completions, returns `NULL'.  The first
+     TEXT.  If there are no completions, returns 'NULL'.  The first
      entry in the returned array is the substitution for TEXT.  The
      remaining entries are the possible completions.  The array is
-     terminated with a `NULL' pointer.
+     terminated with a 'NULL' pointer.
 
-     ENTRY_FUNC is a function of two args, and returns a `char *'.  The
-     first argument is TEXT.  The second is a state argument; it is
-     zero on the first call, and non-zero on subsequent calls.
-     ENTRY_FUNC returns a `NULL'  pointer to the caller when there are
-     no more matches.
+     ENTRY_FUNC is a function of two args, and returns a 'char *'.  The
+     first argument is TEXT.  The second is a state argument; it is zero
+     on the first call, and non-zero on subsequent calls.  ENTRY_FUNC
+     returns a 'NULL' pointer to the caller when there are no more
+     matches.
 
  -- Function: char * rl_filename_completion_function (const char *text,
           int state)
@@ -3112,7 +3111,7 @@ Readline.
  -- Function: char * rl_username_completion_function (const char *text,
           int state)
      A completion generator for usernames.  TEXT contains a partial
-     username preceded by a random character (usually `~').  As with all
+     username preceded by a random character (usually '~').  As with all
      completion generators, STATE is zero on the first call and non-zero
      for subsequent calls.
 
@@ -3123,31 +3122,31 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
 --------------------------
 
  -- Variable: rl_compentry_func_t * rl_completion_entry_function
-     A pointer to the generator function for `rl_completion_matches()'.
-     `NULL' means to use `rl_filename_completion_function()', the
+     A pointer to the generator function for 'rl_completion_matches()'.
+     'NULL' means to use 'rl_filename_completion_function()', the
      default filename completer.
 
  -- Variable: rl_completion_func_t * rl_attempted_completion_function
      A pointer to an alternative function to create matches.  The
      function is called with TEXT, START, and END.  START and END are
-     indices in `rl_line_buffer' defining the boundaries of TEXT, which
-     is a character string.  If this function exists and returns
-     `NULL', or if this variable is set to `NULL', then `rl_complete()'
-     will call the value of `rl_completion_entry_function' to generate
+     indices in 'rl_line_buffer' defining the boundaries of TEXT, which
+     is a character string.  If this function exists and returns 'NULL',
+     or if this variable is set to 'NULL', then 'rl_complete()' will
+     call the value of 'rl_completion_entry_function' to generate
      matches, otherwise the array of strings returned will be used.  If
-     this function sets the `rl_attempted_completion_over' variable to
-     non-zero value, Readline will not perform its default completion
+     this function sets the 'rl_attempted_completion_over' variable to a
+     non-zero value, Readline will not perform its default completion
      even if this function returns no matches.
 
  -- Variable: rl_quote_func_t * rl_filename_quoting_function
      A pointer to a function that will quote a filename in an
      application-specific fashion.  This is called if filename
      completion is being attempted and one of the characters in
-     `rl_filename_quote_characters' appears in a completed filename.
+     'rl_filename_quote_characters' appears in a completed filename.
      The function is called with TEXT, MATCH_TYPE, and QUOTE_POINTER.
      The TEXT is the filename to be quoted.  The MATCH_TYPE is either
-     `SINGLE_MATCH', if there is only one completion match, or
-     `MULT_MATCH'.  Some functions use this to decide whether or not to
+     'SINGLE_MATCH', if there is only one completion match, or
+     'MULT_MATCH'.  Some functions use this to decide whether or not to
      insert a closing quote character.  The QUOTE_POINTER is a pointer
      to any opening quote character the user typed.  Some functions
      choose to reset this character.
@@ -3155,11 +3154,11 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
  -- Variable: rl_dequote_func_t * rl_filename_dequoting_function
      A pointer to a function that will remove application-specific
      quoting characters from a filename before completion is attempted,
-     so those characters do not interfere with matching the text
-     against names in the filesystem.  It is called with TEXT, the text
-     of the word to be dequoted, and QUOTE_CHAR, which is the quoting
-     character that delimits the filename (usually `'' or `"').  If
-     QUOTE_CHAR is zero, the filename was not in an embedded string.
+     so those characters do not interfere with matching the text against
+     names in the filesystem.  It is called with TEXT, the text of the
+     word to be dequoted, and QUOTE_CHAR, which is the quoting character
+     that delimits the filename (usually ''' or '"').  If QUOTE_CHAR is
+     zero, the filename was not in an embedded string.
 
  -- Variable: rl_linebuf_func_t * rl_char_is_quoted_p
      A pointer to a function to call that determines whether or not a
@@ -3168,30 +3167,30 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
      function is called with two arguments: TEXT, the text of the line,
      and INDEX, the index of the character in the line.  It is used to
      decide whether a character found in
-     `rl_completer_word_break_characters' should be used to break words
+     'rl_completer_word_break_characters' should be used to break words
      for the completer.
 
  -- Variable: rl_compignore_func_t * rl_ignore_some_completions_function
      This function, if defined, is called by the completer when real
-     filename completion is done, after all the matching names have
-     been generated.  It is passed a `NULL' terminated array of matches.
-     The first element (`matches[0]') is the maximal substring common
-     to all matches. This function can re-arrange the list of matches
-     as required, but each element deleted from the array must be freed.
+     filename completion is done, after all the matching names have been
+     generated.  It is passed a 'NULL' terminated array of matches.  The
+     first element ('matches[0]') is the maximal substring common to all
+     matches.  This function can re-arrange the list of matches as
+     required, but each element deleted from the array must be freed.
 
  -- Variable: rl_icppfunc_t * rl_directory_completion_hook
      This function, if defined, is allowed to modify the directory
      portion of filenames Readline completes.  It could be used to
      expand symbolic links or shell variables in pathnames.  It is
-     called with the address of a string (the current directory name)
-     as an argument, and may modify that string.  If the string is
-     replaced with a new string, the old value should be freed.  Any
-     modified directory name should have a trailing slash.  The
-     modified value will be used as part of the completion, replacing
-     the directory portion of the pathname the user typed.  At the
-     least, even if no other expansion is performed, this function
-     should remove any quote characters from the directory name,
-     because its result will be passed directly to `opendir()'.
+     called with the address of a string (the current directory name) as
+     an argument, and may modify that string.  If the string is replaced
+     with a new string, the old value should be freed.  Any modified
+     directory name should have a trailing slash.  The modified value
+     will be used as part of the completion, replacing the directory
+     portion of the pathname the user typed.  At the least, even if no
+     other expansion is performed, this function should remove any quote
+     characters from the directory name, because its result will be
+     passed directly to 'opendir()'.
 
      The directory completion hook returns an integer that should be
      non-zero if the function modifies its directory argument.  The
@@ -3201,13 +3200,13 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
      If non-zero, this is the address of a function to call when
      completing a directory name.  This function takes the address of
      the directory name to be modified as an argument.  Unlike
-     `rl_directory_completion_hook', it only modifies the directory
-     name used in `opendir', not what is displayed when the possible
+     'rl_directory_completion_hook', it only modifies the directory name
+     used in 'opendir', not what is displayed when the possible
      completions are printed or inserted.  It is called before
      rl_directory_completion_hook.  At the least, even if no other
      expansion is performed, this function should remove any quote
      characters from the directory name, because its result will be
-     passed directly to `opendir()'.
+     passed directly to 'opendir()'.
 
      The directory rewrite hook returns an integer that should be
      non-zero if the function modfies its directory argument.  The
@@ -3216,9 +3215,9 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
  -- Variable: rl_icppfunc_t * rl_filename_stat_hook
      If non-zero, this is the address of a function for the completer to
      call before deciding which character to append to a completed name.
-     This function modifies its filename name argument, and the
-     modified value is passed to `stat()' to determine the file's type
-     and characteristics.  This function does not need to remove quote
+     This function modifies its filename name argument, and the modified
+     value is passed to 'stat()' to determine the file's type and
+     characteristics.  This function does not need to remove quote
      characters from the filename.
 
      The stat hook returns an integer that should be non-zero if the
@@ -3244,19 +3243,19 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
      If non-zero, then this is the address of a function to call when
      completing a word would normally display the list of possible
      matches.  This function is called in lieu of Readline displaying
-     the list.  It takes three arguments: (`char **'MATCHES, `int'
-     NUM_MATCHES, `int' MAX_LENGTH) where MATCHES is the array of
+     the list.  It takes three arguments: ('char **'MATCHES, 'int'
+     NUM_MATCHES, 'int' MAX_LENGTH) where MATCHES is the array of
      matching strings, NUM_MATCHES is the number of strings in that
      array, and MAX_LENGTH is the length of the longest string in that
      array.  Readline provides a convenience function,
-     `rl_display_match_list', that takes care of doing the display to
-     Readline's output stream.  That function may be called from this
+     'rl_display_match_list', that takes care of doing the display to
+     Readline's output stream.  You may call that function from this
      hook.
 
  -- Variable: const char * rl_basic_word_break_characters
      The basic list of characters that signal a break between words for
      the completer routine.  The default value of this variable is the
-     characters which break words for completion in Bash: `"
+     characters which break words for completion in Bash: '"
      \t\n\"\\'`@$><=;|&{("'.
 
  -- Variable: const char * rl_basic_quote_characters
@@ -3264,28 +3263,28 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
 
  -- Variable: const char * rl_completer_word_break_characters
      The list of characters that signal a break between words for
-     `rl_complete_internal()'.  The default list is the value of
-     `rl_basic_word_break_characters'.
+     'rl_complete_internal()'.  The default list is the value of
+     'rl_basic_word_break_characters'.
 
  -- Variable: rl_cpvfunc_t * rl_completion_word_break_hook
      If non-zero, this is the address of a function to call when
      Readline is deciding where to separate words for word completion.
      It should return a character string like
-     `rl_completer_word_break_characters' to be used to perform the
+     'rl_completer_word_break_characters' to be used to perform the
      current completion.  The function may choose to set
-     `rl_completer_word_break_characters' itself.  If the function
-     returns `NULL', `rl_completer_word_break_characters' is used.
+     'rl_completer_word_break_characters' itself.  If the function
+     returns 'NULL', 'rl_completer_word_break_characters' is used.
 
  -- Variable: const char * rl_completer_quote_characters
      A list of characters which can be used to quote a substring of the
      line.  Completion occurs on the entire substring, and within the
-     substring `rl_completer_word_break_characters' are treated as any
+     substring 'rl_completer_word_break_characters' are treated as any
      other character, unless they also appear within this list.
 
  -- Variable: const char * rl_filename_quote_characters
      A list of characters that cause a filename to be quoted by the
-     completer when they appear in a completed filename.  The default
-     is the null string.
+     completer when they appear in a completed filename.  The default is
+     the null string.
 
  -- Variable: const char * rl_special_prefixes
      The list of characters that are word break characters, but should
@@ -3302,13 +3301,13 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
 
  -- Variable: int rl_completion_append_character
      When a single completion alternative matches at the end of the
-     command line, this character is appended to the inserted
-     completion text.  The default is a space character (` ').  Setting
-     this to the null character (`\0') prevents anything being appended
+     command line, this character is appended to the inserted completion
+     text.  The default is a space character (' ').  Setting this to the
+     null character ('\0') prevents anything being appended
      automatically.  This can be changed in application-specific
      completion functions to provide the "most sensible word separator
-     character" according to an application-specific command line
-     syntax specification.
+     character" according to an application-specific command line syntax
+     specification.
 
  -- Variable: int rl_completion_suppress_append
      If non-zero, RL_COMPLETION_APPEND_CHARACTER is not appended to
@@ -3329,11 +3328,10 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
      may only be changed within such a function.
 
  -- Variable: int rl_completion_found_quote
-     When Readline is completing quoted text, it sets this variable to
-     a non-zero value if the word being completed contains or is
-     delimited by any quoting characters, including backslashes.  This
-     is set before any application-specific completion function is
-     called.
+     When Readline is completing quoted text, it sets this variable to a
+     non-zero value if the word being completed contains or is delimited
+     by any quoting characters, including backslashes.  This is set
+     before any application-specific completion function is called.
 
  -- Variable: int rl_completion_mark_symlink_dirs
      If non-zero, a slash will be appended to completed filenames that
@@ -3343,8 +3341,8 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
      user's global preference (set via the MARK-SYMLINKED-DIRECTORIES
      Readline variable) if appropriate.  This variable is set to the
      user's preference before any application-specific completion
-     function is called, so unless that function modifies the value,
-     the user's preferences are honored.
+     function is called, so unless that function modifies the value, the
+     user's preferences are honored.
 
  -- Variable: int rl_ignore_completion_duplicates
      If non-zero, then duplicates in the matches are removed.  The
@@ -3352,27 +3350,27 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
 
  -- Variable: int rl_filename_completion_desired
      Non-zero means that the results of the matches are to be treated as
-     filenames.  This is _always_ zero when completion is attempted,
-     and can only be changed within an application-specific completion
+     filenames.  This is _always_ zero when completion is attempted, and
+     can only be changed within an application-specific completion
      function.  If it is set to a non-zero value by such a function,
      directory names have a slash appended and Readline attempts to
      quote completed filenames if they contain any characters in
-     `rl_filename_quote_characters' and `rl_filename_quoting_desired'
-     is set to a non-zero value.
+     'rl_filename_quote_characters' and 'rl_filename_quoting_desired' is
+     set to a non-zero value.
 
  -- Variable: int rl_filename_quoting_desired
      Non-zero means that the results of the matches are to be quoted
      using double quotes (or an application-specific quoting mechanism)
      if the completed filename contains any characters in
-     `rl_filename_quote_chars'.  This is _always_ non-zero when
+     'rl_filename_quote_chars'.  This is _always_ non-zero when
      completion is attempted, and can only be changed within an
      application-specific completion function.  The quoting is effected
      via a call to the function pointed to by
-     `rl_filename_quoting_function'.
+     'rl_filename_quoting_function'.
 
  -- Variable: int rl_attempted_completion_over
      If an application-specific completion function assigned to
-     `rl_attempted_completion_function' sets this variable to a non-zero
+     'rl_attempted_completion_function' sets this variable to a non-zero
      value, Readline will not perform its default filename completion
      even if the application's completion function returns no matches.
      It should be set only by an application's completion function.
@@ -3382,27 +3380,27 @@ File: readline.info,  Node: Completion Variables,  Next: A Short Completion Exam
      the list of completions (which implies that it cannot remove any
      duplicate completions).  The default value is 1, which means that
      Readline will sort the completions and, depending on the value of
-     `rl_ignore_completion_duplicates', will attempt to remove duplicate
+     'rl_ignore_completion_duplicates', will attempt to remove duplicate
      matches.
 
  -- Variable: int rl_completion_type
      Set to a character describing the type of completion Readline is
      currently attempting; see the description of
-     `rl_complete_internal()' (*note Completion Functions::) for the
+     'rl_complete_internal()' (*note Completion Functions::) for the
      list of characters.  This is set to the appropriate value before
      any application-specific completion function is called, allowing
-     such functions to present the same interface as `rl_complete()'.
+     such functions to present the same interface as 'rl_complete()'.
 
  -- Variable: int rl_completion_invoking_key
      Set to the final character in the key sequence that invoked one of
-     the completion functions that call `rl_complete_internal()'.  This
+     the completion functions that call 'rl_complete_internal()'.  This
      is set to the appropriate value before any application-specific
      completion function is called.
 
  -- Variable: int rl_inhibit_completion
      If this variable is non-zero, completion is inhibited.  The
      completion character will be inserted as any other bound to
-     `self-insert'.
+     'self-insert'.
 
 \1f
 File: readline.info,  Node: A Short Completion Example,  Prev: Completion Variables,  Up: Custom Completers
@@ -3411,8 +3409,8 @@ File: readline.info,  Node: A Short Completion Example,  Prev: Completion Variab
 --------------------------------
 
 Here is a small application demonstrating the use of the GNU Readline
-library.  It is called `fileman', and the source code resides in
-`examples/fileman.c'.  This sample application provides completion of
+library.  It is called 'fileman', and the source code resides in
+'examples/fileman.c'.  This sample application provides completion of
 command names, line editing features, and access to the history list.
 
      /* fileman.c -- A tiny application which demonstrates how to use the
@@ -3887,7 +3885,7 @@ Appendix A GNU Free Documentation License
                      Version 1.3, 3 November 2008
 
      Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-     `http://fsf.org/'
+     <http://fsf.org/>
 
      Everyone is permitted to copy and distribute verbatim copies
      of this license document, but changing it is not allowed.
@@ -3912,21 +3910,21 @@ Appendix A GNU Free Documentation License
      free program should come with manuals providing the same freedoms
      that the software does.  But this License is not limited to
      software manuals; it can be used for any textual work, regardless
-     of subject matter or whether it is published as a printed book.
-     We recommend this License principally for works whose purpose is
+     of subject matter or whether it is published as a printed book.  We
+     recommend this License principally for works whose purpose is
      instruction or reference.
 
   1. APPLICABILITY AND DEFINITIONS
 
      This License applies to any manual or other work, in any medium,
-     that contains a notice placed by the copyright holder saying it
-     can be distributed under the terms of this License.  Such a notice
+     that contains a notice placed by the copyright holder saying it can
+     be distributed under the terms of this License.  Such a notice
      grants a world-wide, royalty-free license, unlimited in duration,
      to use that work under the conditions stated herein.  The
      "Document", below, refers to any such manual or work.  Any member
-     of the public is a licensee, and is addressed as "you".  You
-     accept the license if you copy, modify or distribute the work in a
-     way requiring permission under copyright law.
+     of the public is a licensee, and is addressed as "you".  You accept
+     the license if you copy, modify or distribute the work in a way
+     requiring permission under copyright law.
 
      A "Modified Version" of the Document means any work containing the
      Document or a portion of it, either copied verbatim, or with
@@ -3944,12 +3942,12 @@ Appendix A GNU Free Documentation License
      regarding them.
 
      The "Invariant Sections" are certain Secondary Sections whose
-     titles are designated, as being those of Invariant Sections, in
-     the notice that says that the Document is released under this
-     License.  If a section does not fit the above definition of
-     Secondary then it is not allowed to be designated as Invariant.
-     The Document may contain zero Invariant Sections.  If the Document
-     does not identify any Invariant Sections then there are none.
+     titles are designated, as being those of Invariant Sections, in the
+     notice that says that the Document is released under this License.
+     If a section does not fit the above definition of Secondary then it
+     is not allowed to be designated as Invariant.  The Document may
+     contain zero Invariant Sections.  If the Document does not identify
+     any Invariant Sections then there are none.
 
      The "Cover Texts" are certain short passages of text that are
      listed, as Front-Cover Texts or Back-Cover Texts, in the notice
@@ -3960,27 +3958,27 @@ Appendix A GNU Free Documentation License
      A "Transparent" copy of the Document means a machine-readable copy,
      represented in a format whose specification is available to the
      general public, that is suitable for revising the document
-     straightforwardly with generic text editors or (for images
-     composed of pixels) generic paint programs or (for drawings) some
-     widely available drawing editor, and that is suitable for input to
-     text formatters or for automatic translation to a variety of
-     formats suitable for input to text formatters.  A copy made in an
-     otherwise Transparent file format whose markup, or absence of
-     markup, has been arranged to thwart or discourage subsequent
-     modification by readers is not Transparent.  An image format is
-     not Transparent if used for any substantial amount of text.  A
-     copy that is not "Transparent" is called "Opaque".
+     straightforwardly with generic text editors or (for images composed
+     of pixels) generic paint programs or (for drawings) some widely
+     available drawing editor, and that is suitable for input to text
+     formatters or for automatic translation to a variety of formats
+     suitable for input to text formatters.  A copy made in an otherwise
+     Transparent file format whose markup, or absence of markup, has
+     been arranged to thwart or discourage subsequent modification by
+     readers is not Transparent.  An image format is not Transparent if
+     used for any substantial amount of text.  A copy that is not
+     "Transparent" is called "Opaque".
 
      Examples of suitable formats for Transparent copies include plain
      ASCII without markup, Texinfo input format, LaTeX input format,
-     SGML or XML using a publicly available DTD, and
-     standard-conforming simple HTML, PostScript or PDF designed for
-     human modification.  Examples of transparent image formats include
-     PNG, XCF and JPG.  Opaque formats include proprietary formats that
-     can be read and edited only by proprietary word processors, SGML or
-     XML for which the DTD and/or processing tools are not generally
-     available, and the machine-generated HTML, PostScript or PDF
-     produced by some word processors for output purposes only.
+     SGML or XML using a publicly available DTD, and standard-conforming
+     simple HTML, PostScript or PDF designed for human modification.
+     Examples of transparent image formats include PNG, XCF and JPG.
+     Opaque formats include proprietary formats that can be read and
+     edited only by proprietary word processors, SGML or XML for which
+     the DTD and/or processing tools are not generally available, and
+     the machine-generated HTML, PostScript or PDF produced by some word
+     processors for output purposes only.
 
      The "Title Page" means, for a printed book, the title page itself,
      plus such following pages as are needed to hold, legibly, the
@@ -4018,8 +4016,8 @@ Appendix A GNU Free Documentation License
      may not use technical measures to obstruct or control the reading
      or further copying of the copies you make or distribute.  However,
      you may accept compensation in exchange for copies.  If you
-     distribute a large enough number of copies you must also follow
-     the conditions in section 3.
+     distribute a large enough number of copies you must also follow the
+     conditions in section 3.
 
      You may also lend copies, under the same conditions stated above,
      and you may publicly display copies.
@@ -4033,12 +4031,11 @@ Appendix A GNU Free Documentation License
      these Cover Texts: Front-Cover Texts on the front cover, and
      Back-Cover Texts on the back cover.  Both covers must also clearly
      and legibly identify you as the publisher of these copies.  The
-     front cover must present the full title with all words of the
-     title equally prominent and visible.  You may add other material
-     on the covers in addition.  Copying with changes limited to the
-     covers, as long as they preserve the title of the Document and
-     satisfy these conditions, can be treated as verbatim copying in
-     other respects.
+     front cover must present the full title with all words of the title
+     equally prominent and visible.  You may add other material on the
+     covers in addition.  Copying with changes limited to the covers, as
+     long as they preserve the title of the Document and satisfy these
+     conditions, can be treated as verbatim copying in other respects.
 
      If the required texts for either cover are too voluminous to fit
      legibly, you should put the first ones listed (as many as fit
@@ -4046,40 +4043,39 @@ Appendix A GNU Free Documentation License
      adjacent pages.
 
      If you publish or distribute Opaque copies of the Document
-     numbering more than 100, you must either include a
-     machine-readable Transparent copy along with each Opaque copy, or
-     state in or with each Opaque copy a computer-network location from
-     which the general network-using public has access to download
-     using public-standard network protocols a complete Transparent
-     copy of the Document, free of added material.  If you use the
-     latter option, you must take reasonably prudent steps, when you
-     begin distribution of Opaque copies in quantity, to ensure that
-     this Transparent copy will remain thus accessible at the stated
-     location until at least one year after the last time you
-     distribute an Opaque copy (directly or through your agents or
-     retailers) of that edition to the public.
+     numbering more than 100, you must either include a machine-readable
+     Transparent copy along with each Opaque copy, or state in or with
+     each Opaque copy a computer-network location from which the general
+     network-using public has access to download using public-standard
+     network protocols a complete Transparent copy of the Document, free
+     of added material.  If you use the latter option, you must take
+     reasonably prudent steps, when you begin distribution of Opaque
+     copies in quantity, to ensure that this Transparent copy will
+     remain thus accessible at the stated location until at least one
+     year after the last time you distribute an Opaque copy (directly or
+     through your agents or retailers) of that edition to the public.
 
      It is requested, but not required, that you contact the authors of
-     the Document well before redistributing any large number of
-     copies, to give them a chance to provide you with an updated
-     version of the Document.
+     the Document well before redistributing any large number of copies,
+     to give them a chance to provide you with an updated version of the
+     Document.
 
   4. MODIFICATIONS
 
      You may copy and distribute a Modified Version of the Document
      under the conditions of sections 2 and 3 above, provided that you
-     release the Modified Version under precisely this License, with
-     the Modified Version filling the role of the Document, thus
-     licensing distribution and modification of the Modified Version to
-     whoever possesses a copy of it.  In addition, you must do these
-     things in the Modified Version:
+     release the Modified Version under precisely this License, with the
+     Modified Version filling the role of the Document, thus licensing
+     distribution and modification of the Modified Version to whoever
+     possesses a copy of it.  In addition, you must do these things in
+     the Modified Version:
 
        A. Use in the Title Page (and on the covers, if any) a title
-          distinct from that of the Document, and from those of
-          previous versions (which should, if there were any, be listed
-          in the History section of the Document).  You may use the
-          same title as a previous version if the original publisher of
-          that version gives permission.
+          distinct from that of the Document, and from those of previous
+          versions (which should, if there were any, be listed in the
+          History section of the Document).  You may use the same title
+          as a previous version if the original publisher of that
+          version gives permission.
 
        B. List on the Title Page, as authors, one or more persons or
           entities responsible for authorship of the modifications in
@@ -4109,31 +4105,30 @@ Appendix A GNU Free Documentation License
 
        I. Preserve the section Entitled "History", Preserve its Title,
           and add to it an item stating at least the title, year, new
-          authors, and publisher of the Modified Version as given on
-          the Title Page.  If there is no section Entitled "History" in
-          the Document, create one stating the title, year, authors,
-          and publisher of the Document as given on its Title Page,
-          then add an item describing the Modified Version as stated in
-          the previous sentence.
+          authors, and publisher of the Modified Version as given on the
+          Title Page.  If there is no section Entitled "History" in the
+          Document, create one stating the title, year, authors, and
+          publisher of the Document as given on its Title Page, then add
+          an item describing the Modified Version as stated in the
+          previous sentence.
 
        J. Preserve the network location, if any, given in the Document
           for public access to a Transparent copy of the Document, and
           likewise the network locations given in the Document for
-          previous versions it was based on.  These may be placed in
-          the "History" section.  You may omit a network location for a
-          work that was published at least four years before the
-          Document itself, or if the original publisher of the version
-          it refers to gives permission.
+          previous versions it was based on.  These may be placed in the
+          "History" section.  You may omit a network location for a work
+          that was published at least four years before the Document
+          itself, or if the original publisher of the version it refers
+          to gives permission.
 
        K. For any section Entitled "Acknowledgements" or "Dedications",
-          Preserve the Title of the section, and preserve in the
-          section all the substance and tone of each of the contributor
+          Preserve the Title of the section, and preserve in the section
+          all the substance and tone of each of the contributor
           acknowledgements and/or dedications given therein.
 
-       L. Preserve all the Invariant Sections of the Document,
-          unaltered in their text and in their titles.  Section numbers
-          or the equivalent are not considered part of the section
-          titles.
+       L. Preserve all the Invariant Sections of the Document, unaltered
+          in their text and in their titles.  Section numbers or the
+          equivalent are not considered part of the section titles.
 
        M. Delete any section Entitled "Endorsements".  Such a section
           may not be included in the Modified Version.
@@ -4146,11 +4141,11 @@ Appendix A GNU Free Documentation License
 
      If the Modified Version includes new front-matter sections or
      appendices that qualify as Secondary Sections and contain no
-     material copied from the Document, you may at your option
-     designate some or all of these sections as invariant.  To do this,
-     add their titles to the list of Invariant Sections in the Modified
-     Version's license notice.  These titles must be distinct from any
-     other section titles.
+     material copied from the Document, you may at your option designate
+     some or all of these sections as invariant.  To do this, add their
+     titles to the list of Invariant Sections in the Modified Version's
+     license notice.  These titles must be distinct from any other
+     section titles.
 
      You may add a section Entitled "Endorsements", provided it contains
      nothing but endorsements of your Modified Version by various
@@ -4159,15 +4154,15 @@ Appendix A GNU Free Documentation License
      definition of a standard.
 
      You may add a passage of up to five words as a Front-Cover Text,
-     and a passage of up to 25 words as a Back-Cover Text, to the end
-     of the list of Cover Texts in the Modified Version.  Only one
-     passage of Front-Cover Text and one of Back-Cover Text may be
-     added by (or through arrangements made by) any one entity.  If the
-     Document already includes a cover text for the same cover,
-     previously added by you or by arrangement made by the same entity
-     you are acting on behalf of, you may not add another; but you may
-     replace the old one, on explicit permission from the previous
-     publisher that added the old one.
+     and a passage of up to 25 words as a Back-Cover Text, to the end of
+     the list of Cover Texts in the Modified Version.  Only one passage
+     of Front-Cover Text and one of Back-Cover Text may be added by (or
+     through arrangements made by) any one entity.  If the Document
+     already includes a cover text for the same cover, previously added
+     by you or by arrangement made by the same entity you are acting on
+     behalf of, you may not add another; but you may replace the old
+     one, on explicit permission from the previous publisher that added
+     the old one.
 
      The author(s) and publisher(s) of the Document do not by this
      License give permission to use their names for publicity for or to
@@ -4177,8 +4172,8 @@ Appendix A GNU Free Documentation License
 
      You may combine the Document with other documents released under
      this License, under the terms defined in section 4 above for
-     modified versions, provided that you include in the combination
-     all of the Invariant Sections of all of the original documents,
+     modified versions, provided that you include in the combination all
+     of the Invariant Sections of all of the original documents,
      unmodified, and list them all as Invariant Sections of your
      combined work in its license notice, and that you preserve all
      their Warranty Disclaimers.
@@ -4205,20 +4200,20 @@ Appendix A GNU Free Documentation License
      documents released under this License, and replace the individual
      copies of this License in the various documents with a single copy
      that is included in the collection, provided that you follow the
-     rules of this License for verbatim copying of each of the
-     documents in all other respects.
+     rules of this License for verbatim copying of each of the documents
+     in all other respects.
 
      You may extract a single document from such a collection, and
      distribute it individually under this License, provided you insert
-     a copy of this License into the extracted document, and follow
-     this License in all other respects regarding verbatim copying of
-     that document.
+     a copy of this License into the extracted document, and follow this
+     License in all other respects regarding verbatim copying of that
+     document.
 
   7. AGGREGATION WITH INDEPENDENT WORKS
 
      A compilation of the Document or its derivatives with other
-     separate and independent documents or works, in or on a volume of
-     storage or distribution medium, is called an "aggregate" if the
+     separate and independent documents or works, in or on a volume of a
+     storage or distribution medium, is called an "aggregate" if the
      copyright resulting from the compilation is not used to limit the
      legal rights of the compilation's users beyond what the individual
      works permit.  When the Document is included in an aggregate, this
@@ -4263,8 +4258,8 @@ Appendix A GNU Free Documentation License
 
      However, if you cease all violation of this License, then your
      license from a particular copyright holder is reinstated (a)
-     provisionally, unless and until the copyright holder explicitly
-     and finally terminates your license, and (b) permanently, if the
+     provisionally, unless and until the copyright holder explicitly and
+     finally terminates your license, and (b) permanently, if the
      copyright holder fails to notify you of the violation by some
      reasonable means prior to 60 days after the cessation.
 
@@ -4276,33 +4271,33 @@ Appendix A GNU Free Documentation License
      after your receipt of the notice.
 
      Termination of your rights under this section does not terminate
-     the licenses of parties who have received copies or rights from
-     you under this License.  If your rights have been terminated and
-     not permanently reinstated, receipt of a copy of some or all of
-     the same material does not give you any rights to use it.
+     the licenses of parties who have received copies or rights from you
+     under this License.  If your rights have been terminated and not
+     permanently reinstated, receipt of a copy of some or all of the
+     same material does not give you any rights to use it.
 
- 10. FUTURE REVISIONS OF THIS LICENSE
 10. FUTURE REVISIONS OF THIS LICENSE
 
      The Free Software Foundation may publish new, revised versions of
      the GNU Free Documentation License from time to time.  Such new
      versions will be similar in spirit to the present version, but may
      differ in detail to address new problems or concerns.  See
-     `http://www.gnu.org/copyleft/'.
+     <http://www.gnu.org/copyleft/>.
 
      Each version of the License is given a distinguishing version
      number.  If the Document specifies that a particular numbered
      version of this License "or any later version" applies to it, you
      have the option of following the terms and conditions either of
      that specified version or of any later version that has been
-     published (not as a draft) by the Free Software Foundation.  If
-     the Document does not specify a version number of this License,
-     you may choose any version ever published (not as a draft) by the
-     Free Software Foundation.  If the Document specifies that a proxy
-     can decide which future versions of this License can be used, that
+     published (not as a draft) by the Free Software Foundation.  If the
+     Document does not specify a version number of this License, you may
+     choose any version ever published (not as a draft) by the Free
+     Software Foundation.  If the Document specifies that a proxy can
+     decide which future versions of this License can be used, that
      proxy's public statement of acceptance of a version permanently
      authorizes you to choose that version for the Document.
 
- 11. RELICENSING
 11. RELICENSING
 
      "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
      World Wide Web server that publishes copyrightable works and also
@@ -4332,7 +4327,6 @@ Appendix A GNU Free Documentation License
      site under CC-BY-SA on the same site at any time before August 1,
      2009, provided the MMC is eligible for relicensing.
 
-
 ADDENDUM: How to use this License for your documents
 ====================================================
 
@@ -4349,7 +4343,7 @@ notices just after the title page:
        Free Documentation License''.
 
    If you have Invariant Sections, Front-Cover Texts and Back-Cover
-Texts, replace the "with...Texts." line with this:
+Texts, replace the "with...Texts."  line with this:
 
          with the Invariant Sections being LIST THEIR TITLES, with
          the Front-Cover Texts being LIST, and with the Back-Cover Texts
@@ -4360,9 +4354,9 @@ combination of the three, merge those two alternatives to suit the
 situation.
 
    If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
+recommend releasing these examples in parallel under your choice of free
+software license, such as the GNU General Public License, to permit
+their use in free software.
 
 \1f
 File: readline.info,  Node: Concept Index,  Next: Function and Variable Index,  Prev: GNU Free Documentation License,  Up: Top
@@ -4382,7 +4376,7 @@ Concept Index
 * initialization file, readline:         Readline Init File.   (line  6)
 * interaction, readline:                 Readline Interaction. (line  6)
 * kill ring:                             Readline Killing Commands.
-                                                               (line 19)
+                                                               (line 18)
 * killing text:                          Readline Killing Commands.
                                                                (line  6)
 * notation, readline:                    Readline Bare Essentials.
@@ -4402,12 +4396,12 @@ Function and Variable Index
 \0\b[index\0\b]
 * Menu:
 
-* _rl_digit_p:                           Utility Functions.   (line  65)
-* _rl_digit_value:                       Utility Functions.   (line  76)
-* _rl_lowercase_p:                       Utility Functions.   (line  62)
-* _rl_to_lower:                          Utility Functions.   (line  72)
-* _rl_to_upper:                          Utility Functions.   (line  68)
-* _rl_uppercase_p:                       Utility Functions.   (line  59)
+* _rl_digit_p:                           Utility Functions.   (line  64)
+* _rl_digit_value:                       Utility Functions.   (line  75)
+* _rl_lowercase_p:                       Utility Functions.   (line  61)
+* _rl_to_lower:                          Utility Functions.   (line  71)
+* _rl_to_upper:                          Utility Functions.   (line  67)
+* _rl_uppercase_p:                       Utility Functions.   (line  58)
 * abort (C-g):                           Miscellaneous Commands.
                                                               (line  10)
 * accept-line (Newline or Return):       Commands For History.
@@ -4426,31 +4420,36 @@ Function and Variable Index
                                                               (line  35)
 * bind-tty-special-chars:                Readline Init File Syntax.
                                                               (line  42)
+* blink-matching-paren:                  Readline Init File Syntax.
+                                                              (line  47)
+* bracketed-paste-begin ():              Commands For Text.   (line  36)
 * call-last-kbd-macro (C-x e):           Keyboard Macros.     (line  13)
-* capitalize-word (M-c):                 Commands For Text.   (line  55)
+* capitalize-word (M-c):                 Commands For Text.   (line  64)
 * character-search (C-]):                Miscellaneous Commands.
                                                               (line  41)
 * character-search-backward (M-C-]):     Miscellaneous Commands.
                                                               (line  46)
 * clear-screen (C-l):                    Commands For Moving. (line  26)
+* colored-completion-prefix:             Readline Init File Syntax.
+                                                              (line  52)
 * colored-stats:                         Readline Init File Syntax.
-                                                              (line  47)
+                                                              (line  59)
 * comment-begin:                         Readline Init File Syntax.
-                                                              (line  53)
+                                                              (line  65)
 * complete (<TAB>):                      Commands For Completion.
                                                               (line   6)
 * completion-display-width:              Readline Init File Syntax.
-                                                              (line  58)
+                                                              (line  70)
 * completion-ignore-case:                Readline Init File Syntax.
-                                                              (line  65)
+                                                              (line  77)
 * completion-map-case:                   Readline Init File Syntax.
-                                                              (line  70)
+                                                              (line  82)
 * completion-prefix-display-length:      Readline Init File Syntax.
-                                                              (line  76)
+                                                              (line  88)
 * completion-query-items:                Readline Init File Syntax.
-                                                              (line  83)
+                                                              (line  95)
 * convert-meta:                          Readline Init File Syntax.
-                                                              (line  93)
+                                                              (line 105)
 * copy-backward-word ():                 Commands For Killing.
                                                               (line  49)
 * copy-forward-word ():                  Commands For Killing.
@@ -4462,22 +4461,31 @@ Function and Variable Index
                                                               (line  39)
 * delete-horizontal-space ():            Commands For Killing.
                                                               (line  37)
-* digit-argument (M-0, M-1, ... M--):    Numeric Arguments.   (line   6)
+* digit-argument ('M-0', 'M-1', ... 'M--'): Numeric Arguments.
+                                                              (line   6)
 * disable-completion:                    Readline Init File Syntax.
-                                                              (line  99)
+                                                              (line 111)
 * do-uppercase-version (M-a, M-b, M-X, ...): Miscellaneous Commands.
                                                               (line  14)
-* downcase-word (M-l):                   Commands For Text.   (line  51)
+* downcase-word (M-l):                   Commands For Text.   (line  60)
 * dump-functions ():                     Miscellaneous Commands.
-                                                              (line  70)
+                                                              (line  69)
 * dump-macros ():                        Miscellaneous Commands.
-                                                              (line  82)
+                                                              (line  81)
 * dump-variables ():                     Miscellaneous Commands.
-                                                              (line  76)
+                                                              (line  75)
+* echo-control-characters:               Readline Init File Syntax.
+                                                              (line 132)
 * editing-mode:                          Readline Init File Syntax.
-                                                              (line 104)
+                                                              (line 116)
+* emacs-editing-mode (C-e):              Miscellaneous Commands.
+                                                              (line  87)
+* emacs-mode-string:                     Readline Init File Syntax.
+                                                              (line 122)
+* enable-bracketed-paste:                Readline Init File Syntax.
+                                                              (line 137)
 * enable-keypad:                         Readline Init File Syntax.
-                                                              (line 115)
+                                                              (line 145)
 * end-kbd-macro (C-x )):                 Keyboard Macros.     (line   9)
 * end-of-file (usually C-d):             Commands For Text.   (line   6)
 * end-of-history (M->):                  Commands For History.
@@ -4486,36 +4494,36 @@ Function and Variable Index
 * exchange-point-and-mark (C-x C-x):     Miscellaneous Commands.
                                                               (line  36)
 * expand-tilde:                          Readline Init File Syntax.
-                                                              (line 126)
+                                                              (line 156)
 * forward-backward-delete-char ():       Commands For Text.   (line  21)
 * forward-char (C-f):                    Commands For Moving. (line  12)
 * forward-search-history (C-s):          Commands For History.
                                                               (line  30)
 * forward-word (M-f):                    Commands For Moving. (line  18)
 * history-preserve-point:                Readline Init File Syntax.
-                                                              (line 130)
+                                                              (line 160)
 * history-search-backward ():            Commands For History.
-                                                              (line  51)
+                                                              (line  52)
 * history-search-forward ():             Commands For History.
-                                                              (line  45)
+                                                              (line  46)
 * history-size:                          Readline Init File Syntax.
-                                                              (line 136)
+                                                              (line 166)
 * history-substr-search-backward ():     Commands For History.
-                                                              (line  63)
+                                                              (line  64)
 * history-substr-search-forward ():      Commands For History.
-                                                              (line  57)
+                                                              (line  58)
 * horizontal-scroll-mode:                Readline Init File Syntax.
-                                                              (line 143)
+                                                              (line 173)
 * input-meta:                            Readline Init File Syntax.
-                                                              (line 150)
+                                                              (line 180)
 * insert-comment (M-#):                  Miscellaneous Commands.
                                                               (line  60)
 * insert-completions (M-*):              Commands For Completion.
                                                               (line  18)
 * isearch-terminators:                   Readline Init File Syntax.
-                                                              (line 157)
+                                                              (line 187)
 * keymap:                                Readline Init File Syntax.
-                                                              (line 164)
+                                                              (line 194)
 * kill-line (C-k):                       Commands For Killing.
                                                               (line   6)
 * kill-region ():                        Commands For Killing.
@@ -4525,30 +4533,30 @@ Function and Variable Index
 * kill-word (M-d):                       Commands For Killing.
                                                               (line  19)
 * mark-modified-lines:                   Readline Init File Syntax.
-                                                              (line 193)
+                                                              (line 223)
 * mark-symlinked-directories:            Readline Init File Syntax.
-                                                              (line 198)
+                                                              (line 228)
 * match-hidden-files:                    Readline Init File Syntax.
-                                                              (line 203)
+                                                              (line 233)
 * menu-complete ():                      Commands For Completion.
                                                               (line  22)
 * menu-complete-backward ():             Commands For Completion.
                                                               (line  34)
 * menu-complete-display-prefix:          Readline Init File Syntax.
-                                                              (line 210)
+                                                              (line 240)
 * meta-flag:                             Readline Init File Syntax.
-                                                              (line 150)
+                                                              (line 180)
 * next-history (C-n):                    Commands For History.
                                                               (line  16)
 * non-incremental-forward-search-history (M-n): Commands For History.
                                                               (line  40)
 * non-incremental-reverse-search-history (M-p): Commands For History.
-                                                              (line  35)
+                                                              (line  34)
 * output-meta:                           Readline Init File Syntax.
-                                                              (line 215)
-* overwrite-mode ():                     Commands For Text.   (line  59)
+                                                              (line 245)
+* overwrite-mode ():                     Commands For Text.   (line  68)
 * page-completions:                      Readline Init File Syntax.
-                                                              (line 220)
+                                                              (line 250)
 * possible-completions (M-?):            Commands For Completion.
                                                               (line  11)
 * prefix-meta (<ESC>):                   Miscellaneous Commands.
@@ -4564,282 +4572,286 @@ Function and Variable Index
 * reverse-search-history (C-r):          Commands For History.
                                                               (line  26)
 * revert-all-at-newline:                 Readline Init File Syntax.
-                                                              (line 230)
+                                                              (line 260)
 * revert-line (M-r):                     Miscellaneous Commands.
                                                               (line  25)
-* rl_add_defun:                          Function Naming.     (line  20)
+* rl_add_defun:                          Function Naming.     (line  18)
 * rl_add_funmap_entry:                   Associating Function Names and Bindings.
-                                                              (line  47)
-* rl_add_undo:                           Allowing Undoing.    (line  41)
-* rl_alphabetic:                         Utility Functions.   (line  39)
-* rl_already_prompted:                   Readline Variables.  (line  64)
+                                                              (line  45)
+* rl_add_undo:                           Allowing Undoing.    (line  39)
+* rl_alphabetic:                         Utility Functions.   (line  38)
+* rl_already_prompted:                   Readline Variables.  (line  63)
 * rl_attempted_completion_function:      Completion Variables.
-                                                              (line  12)
+                                                              (line  11)
 * rl_attempted_completion_over:          Completion Variables.
-                                                              (line 255)
+                                                              (line 253)
 * rl_basic_quote_characters:             Completion Variables.
-                                                              (line 144)
+                                                              (line 143)
 * rl_basic_word_break_characters:        Completion Variables.
-                                                              (line 138)
-* rl_begin_undo_group:                   Allowing Undoing.    (line  29)
-* rl_bind_key:                           Binding Keys.        (line  22)
-* rl_bind_key_if_unbound:                Binding Keys.        (line  32)
-* rl_bind_key_if_unbound_in_map:         Binding Keys.        (line  38)
-* rl_bind_key_in_map:                    Binding Keys.        (line  27)
-* rl_bind_keyseq:                        Binding Keys.        (line  59)
-* rl_bind_keyseq_if_unbound:             Binding Keys.        (line  77)
-* rl_bind_keyseq_if_unbound_in_map:      Binding Keys.        (line  83)
-* rl_bind_keyseq_in_map:                 Binding Keys.        (line  66)
-* rl_binding_keymap:                     Readline Variables.  (line 186)
-* rl_callback_handler_install:           Alternate Interface. (line  15)
-* rl_callback_handler_remove:            Alternate Interface. (line  35)
+                                                              (line 137)
+* rl_begin_undo_group:                   Allowing Undoing.    (line  28)
+* rl_binding_keymap:                     Readline Variables.  (line 184)
+* rl_bind_key:                           Binding Keys.        (line  21)
+* rl_bind_keyseq:                        Binding Keys.        (line  57)
+* rl_bind_keyseq_if_unbound:             Binding Keys.        (line  75)
+* rl_bind_keyseq_if_unbound_in_map:      Binding Keys.        (line  81)
+* rl_bind_keyseq_in_map:                 Binding Keys.        (line  64)
+* rl_bind_key_if_unbound:                Binding Keys.        (line  30)
+* rl_bind_key_if_unbound_in_map:         Binding Keys.        (line  36)
+* rl_bind_key_in_map:                    Binding Keys.        (line  25)
+* rl_callback_handler_install:           Alternate Interface. (line  13)
+* rl_callback_handler_remove:            Alternate Interface. (line  42)
 * rl_callback_read_char:                 Alternate Interface. (line  22)
+* rl_callback_sigcleanup:                Alternate Interface. (line  35)
 * rl_catch_signals:                      Readline Signal Handling.
-                                                              (line  48)
+                                                              (line  54)
 * rl_catch_sigwinch:                     Readline Signal Handling.
-                                                              (line  55)
-* rl_change_environment:                 Readline Signal Handling.
                                                               (line  61)
+* rl_change_environment:                 Readline Signal Handling.
+                                                              (line  67)
 * rl_char_is_quoted_p:                   Completion Variables.
-                                                              (line  46)
+                                                              (line  45)
 * rl_cleanup_after_signal:               Readline Signal Handling.
-                                                              (line  73)
+                                                              (line  79)
 * rl_clear_history:                      Miscellaneous Functions.
-                                                              (line  50)
-* rl_clear_message:                      Redisplay.           (line  48)
-* rl_clear_pending_input:                Character Input.     (line  30)
-* rl_clear_signals:                      Readline Signal Handling.
-                                                              (line 132)
-* rl_complete <1>:                       How Completing Works.
                                                               (line  49)
-* rl_complete:                           Completion Functions.
-                                                              (line  20)
-* rl_complete_internal:                  Completion Functions.
-                                                              (line  10)
+* rl_clear_message:                      Redisplay.           (line  47)
+* rl_clear_pending_input:                Character Input.     (line  29)
+* rl_clear_signals:                      Readline Signal Handling.
+                                                              (line 138)
+* rl_complete:                           How Completing Works.
+                                                              (line  46)
+* rl_complete <1>:                       Completion Functions.
+                                                              (line  19)
 * rl_completer_quote_characters:         Completion Variables.
-                                                              (line 161)
+                                                              (line 160)
 * rl_completer_word_break_characters:    Completion Variables.
-                                                              (line 147)
+                                                              (line 146)
+* rl_complete_internal:                  Completion Functions.
+                                                              (line   9)
 * rl_completion_append_character:        Completion Variables.
-                                                              (line 185)
+                                                              (line 184)
 * rl_completion_display_matches_hook:    Completion Variables.
-                                                              (line 125)
-* rl_completion_entry_function <1>:      How Completing Works.
-                                                              (line  55)
-* rl_completion_entry_function:          Completion Variables.
-                                                              (line   7)
+                                                              (line 124)
+* rl_completion_entry_function:          How Completing Works.
+                                                              (line  52)
+* rl_completion_entry_function <1>:      Completion Variables.
+                                                              (line   6)
 * rl_completion_found_quote:             Completion Variables.
-                                                              (line 213)
+                                                              (line 212)
 * rl_completion_invoking_key:            Completion Variables.
-                                                              (line 278)
+                                                              (line 276)
 * rl_completion_mark_symlink_dirs:       Completion Variables.
-                                                              (line 220)
+                                                              (line 218)
 * rl_completion_matches:                 Completion Functions.
-                                                              (line  45)
+                                                              (line  43)
 * rl_completion_mode:                    Completion Functions.
-                                                              (line  37)
+                                                              (line  36)
 * rl_completion_query_items:             Completion Variables.
-                                                              (line 179)
+                                                              (line 178)
 * rl_completion_quote_character:         Completion Variables.
-                                                              (line 201)
+                                                              (line 200)
 * rl_completion_suppress_append:         Completion Variables.
-                                                              (line 195)
+                                                              (line 194)
 * rl_completion_suppress_quote:          Completion Variables.
-                                                              (line 207)
+                                                              (line 206)
 * rl_completion_type:                    Completion Variables.
-                                                              (line 270)
+                                                              (line 268)
 * rl_completion_word_break_hook:         Completion Variables.
-                                                              (line 152)
-* rl_copy_keymap:                        Keymaps.             (line  17)
-* rl_copy_text:                          Modifying Text.      (line  15)
-* rl_crlf:                               Redisplay.           (line  30)
-* rl_delete_text:                        Modifying Text.      (line  11)
-* rl_deprep_term_function:               Readline Variables.  (line 176)
-* rl_deprep_terminal:                    Terminal Management. (line  13)
-* rl_ding:                               Utility Functions.   (line  36)
+                                                              (line 151)
+* rl_copy_keymap:                        Keymaps.             (line  16)
+* rl_copy_text:                          Modifying Text.      (line  14)
+* rl_crlf:                               Redisplay.           (line  29)
+* rl_delete_text:                        Modifying Text.      (line  10)
+* rl_deprep_terminal:                    Terminal Management. (line  12)
+* rl_deprep_term_function:               Readline Variables.  (line 174)
+* rl_ding:                               Utility Functions.   (line  35)
 * rl_directory_completion_hook:          Completion Variables.
-                                                              (line  64)
+                                                              (line  63)
 * rl_directory_rewrite_hook;:            Completion Variables.
-                                                              (line  82)
-* rl_discard_keymap:                     Keymaps.             (line  26)
-* rl_dispatching:                        Readline Variables.  (line  41)
-* rl_display_match_list:                 Utility Functions.   (line  43)
-* rl_display_prompt:                     Readline Variables.  (line  59)
-* rl_do_undo:                            Allowing Undoing.    (line  48)
-* rl_done:                               Readline Variables.  (line  28)
+                                                              (line  81)
+* rl_discard_keymap:                     Keymaps.             (line  25)
+* rl_dispatching:                        Readline Variables.  (line  40)
+* rl_display_match_list:                 Utility Functions.   (line  41)
+* rl_display_prompt:                     Readline Variables.  (line  58)
+* rl_done:                               Readline Variables.  (line  27)
+* rl_do_undo:                            Allowing Undoing.    (line  47)
 * rl_echo_signal_char:                   Readline Signal Handling.
-                                                              (line  96)
-* rl_editing_mode:                       Readline Variables.  (line 308)
-* rl_end:                                Readline Variables.  (line  19)
-* rl_end_undo_group:                     Allowing Undoing.    (line  35)
-* rl_erase_empty_line:                   Readline Variables.  (line  47)
-* rl_event_hook:                         Readline Variables.  (line 124)
-* rl_execute_next:                       Character Input.     (line  26)
-* rl_executing_key:                      Readline Variables.  (line 193)
-* rl_executing_keymap:                   Readline Variables.  (line 182)
-* rl_executing_keyseq:                   Readline Variables.  (line 197)
-* rl_executing_macro:                    Readline Variables.  (line 190)
-* rl_expand_prompt:                      Redisplay.           (line  64)
-* rl_explicit_arg:                       Readline Variables.  (line 299)
-* rl_extend_line_buffer:                 Utility Functions.   (line  27)
+                                                              (line 102)
+* rl_editing_mode:                       Readline Variables.  (line 281)
+* rl_end:                                Readline Variables.  (line  18)
+* rl_end_undo_group:                     Allowing Undoing.    (line  34)
+* rl_erase_empty_line:                   Readline Variables.  (line  46)
+* rl_event_hook:                         Readline Variables.  (line 123)
+* rl_execute_next:                       Character Input.     (line  25)
+* rl_executing_key:                      Readline Variables.  (line 191)
+* rl_executing_keymap:                   Readline Variables.  (line 180)
+* rl_executing_keyseq:                   Readline Variables.  (line 195)
+* rl_executing_macro:                    Readline Variables.  (line 188)
+* rl_expand_prompt:                      Redisplay.           (line  62)
+* rl_explicit_arg:                       Readline Variables.  (line 272)
+* rl_extend_line_buffer:                 Utility Functions.   (line  26)
 * rl_filename_completion_desired:        Completion Variables.
-                                                              (line 235)
+                                                              (line 233)
 * rl_filename_completion_function:       Completion Functions.
-                                                              (line  59)
+                                                              (line  57)
 * rl_filename_dequoting_function:        Completion Variables.
-                                                              (line  37)
+                                                              (line  36)
 * rl_filename_quote_characters:          Completion Variables.
-                                                              (line 167)
+                                                              (line 166)
 * rl_filename_quoting_desired:           Completion Variables.
-                                                              (line 245)
+                                                              (line 243)
 * rl_filename_quoting_function:          Completion Variables.
-                                                              (line  24)
+                                                              (line  23)
 * rl_filename_rewrite_hook:              Completion Variables.
-                                                              (line 110)
+                                                              (line 109)
 * rl_filename_stat_hook:                 Completion Variables.
-                                                              (line  98)
-* rl_forced_update_display:              Redisplay.           (line  11)
-* rl_free:                               Utility Functions.   (line  18)
-* rl_free_keymap:                        Keymaps.             (line  30)
+                                                              (line  97)
+* rl_forced_update_display:              Redisplay.           (line  10)
+* rl_free:                               Utility Functions.   (line  17)
+* rl_free_keymap:                        Keymaps.             (line  29)
 * rl_free_line_state:                    Readline Signal Handling.
-                                                              (line  79)
-* rl_free_undo_list:                     Allowing Undoing.    (line  45)
+                                                              (line  85)
+* rl_free_undo_list:                     Allowing Undoing.    (line  44)
 * rl_function_dumper:                    Associating Function Names and Bindings.
-                                                              (line  30)
+                                                              (line  29)
 * rl_function_of_keyseq:                 Associating Function Names and Bindings.
-                                                              (line  15)
+                                                              (line  13)
 * rl_funmap_names:                       Associating Function Names and Bindings.
-                                                              (line  40)
-* rl_generic_bind:                       Binding Keys.        (line  89)
-* rl_get_keymap:                         Keymaps.             (line  37)
-* rl_get_keymap_by_name:                 Keymaps.             (line  43)
-* rl_get_keymap_name:                    Keymaps.             (line  48)
+                                                              (line  39)
+* rl_generic_bind:                       Binding Keys.        (line  87)
+* rl_getc:                               Character Input.     (line  14)
+* rl_getc_function:                      Readline Variables.  (line 128)
+* rl_get_keymap:                         Keymaps.             (line  36)
+* rl_get_keymap_by_name:                 Keymaps.             (line  42)
+* rl_get_keymap_name:                    Keymaps.             (line  47)
 * rl_get_screen_size:                    Readline Signal Handling.
-                                                              (line 115)
+                                                              (line 121)
 * rl_get_termcap:                        Miscellaneous Functions.
-                                                              (line  42)
-* rl_getc:                               Character Input.     (line  15)
-* rl_getc_function:                      Readline Variables.  (line 130)
-* rl_gnu_readline_p:                     Readline Variables.  (line  83)
+                                                              (line  41)
+* rl_gnu_readline_p:                     Readline Variables.  (line  82)
 * rl_ignore_completion_duplicates:       Completion Variables.
-                                                              (line 231)
+                                                              (line 229)
 * rl_ignore_some_completions_function:   Completion Variables.
-                                                              (line  56)
+                                                              (line  55)
 * rl_inhibit_completion:                 Completion Variables.
-                                                              (line 284)
-* rl_initialize:                         Utility Functions.   (line  31)
-* rl_input_available_hook:               Readline Variables.  (line 142)
+                                                              (line 282)
+* rl_initialize:                         Utility Functions.   (line  30)
+* rl_input_available_hook:               Readline Variables.  (line 140)
 * rl_insert_completions:                 Completion Functions.
-                                                              (line  32)
-* rl_insert_text:                        Modifying Text.      (line   7)
-* rl_instream:                           Readline Variables.  (line  97)
+                                                              (line  31)
+* rl_insert_text:                        Modifying Text.      (line   6)
+* rl_instream:                           Readline Variables.  (line  96)
 * rl_invoking_keyseqs:                   Associating Function Names and Bindings.
-                                                              (line  21)
+                                                              (line  20)
 * rl_invoking_keyseqs_in_map:            Associating Function Names and Bindings.
-                                                              (line  26)
-* rl_key_sequence_length:                Readline Variables.  (line 201)
-* rl_kill_text:                          Modifying Text.      (line  19)
-* rl_last_func:                          Readline Variables.  (line 110)
-* rl_library_version:                    Readline Variables.  (line  73)
-* rl_line_buffer:                        Readline Variables.  (line   9)
+                                                              (line  24)
+* rl_key_sequence_length:                Readline Variables.  (line 199)
+* rl_kill_text:                          Modifying Text.      (line  18)
+* rl_last_func:                          Readline Variables.  (line 109)
+* rl_library_version:                    Readline Variables.  (line  72)
+* rl_line_buffer:                        Readline Variables.  (line   8)
 * rl_list_funmap_names:                  Associating Function Names and Bindings.
-                                                              (line  36)
+                                                              (line  35)
 * rl_macro_bind:                         Miscellaneous Functions.
-                                                              (line   8)
+                                                              (line   6)
 * rl_macro_dumper:                       Miscellaneous Functions.
-                                                              (line  14)
-* rl_make_bare_keymap:                   Keymaps.             (line  12)
-* rl_make_keymap:                        Keymaps.             (line  20)
-* rl_mark:                               Readline Variables.  (line  24)
-* rl_message:                            Redisplay.           (line  39)
-* rl_modifying:                          Allowing Undoing.    (line  57)
+                                                              (line  13)
+* rl_make_bare_keymap:                   Keymaps.             (line  11)
+* rl_make_keymap:                        Keymaps.             (line  19)
+* rl_mark:                               Readline Variables.  (line  23)
+* rl_message:                            Redisplay.           (line  38)
+* rl_modifying:                          Allowing Undoing.    (line  56)
 * rl_named_function:                     Associating Function Names and Bindings.
-                                                              (line  11)
-* rl_num_chars_to_read:                  Readline Variables.  (line  32)
-* rl_numeric_arg:                        Readline Variables.  (line 303)
-* rl_on_new_line:                        Redisplay.           (line  15)
-* rl_on_new_line_with_prompt:            Redisplay.           (line  19)
-* rl_outstream:                          Readline Variables.  (line 101)
-* rl_parse_and_bind:                     Binding Keys.        (line  96)
-* rl_pending_input:                      Readline Variables.  (line  37)
-* rl_point:                              Readline Variables.  (line  15)
+                                                              (line  10)
+* rl_numeric_arg:                        Readline Variables.  (line 276)
+* rl_num_chars_to_read:                  Readline Variables.  (line  31)
+* rl_on_new_line:                        Redisplay.           (line  14)
+* rl_on_new_line_with_prompt:            Redisplay.           (line  18)
+* rl_outstream:                          Readline Variables.  (line 100)
+* rl_parse_and_bind:                     Binding Keys.        (line  95)
+* rl_pending_input:                      Readline Variables.  (line  36)
+* rl_point:                              Readline Variables.  (line  14)
 * rl_possible_completions:               Completion Functions.
-                                                              (line  28)
-* rl_pre_input_hook:                     Readline Variables.  (line 119)
-* rl_prefer_env_winsize:                 Readline Variables.  (line 105)
-* rl_prep_term_function:                 Readline Variables.  (line 169)
-* rl_prep_terminal:                      Terminal Management. (line   7)
-* rl_prompt:                             Readline Variables.  (line  53)
-* rl_push_macro_input:                   Modifying Text.      (line  26)
-* rl_read_init_file:                     Binding Keys.        (line 101)
-* rl_read_key:                           Character Input.     (line   7)
-* rl_readline_name:                      Readline Variables.  (line  92)
-* rl_readline_state:                     Readline Variables.  (line 204)
-* rl_readline_version:                   Readline Variables.  (line  76)
-* rl_redisplay:                          Redisplay.           (line   7)
-* rl_redisplay_function:                 Readline Variables.  (line 163)
-* rl_replace_line:                       Utility Functions.   (line  22)
+                                                              (line  27)
+* rl_prefer_env_winsize:                 Readline Variables.  (line 104)
+* rl_prep_terminal:                      Terminal Management. (line   6)
+* rl_prep_term_function:                 Readline Variables.  (line 167)
+* rl_pre_input_hook:                     Readline Variables.  (line 118)
+* rl_prompt:                             Readline Variables.  (line  52)
+* rl_push_macro_input:                   Modifying Text.      (line  25)
+* rl_readline_name:                      Readline Variables.  (line  91)
+* rl_readline_state:                     Readline Variables.  (line 202)
+* rl_readline_version:                   Readline Variables.  (line  75)
+* rl_read_init_file:                     Binding Keys.        (line 100)
+* rl_read_key:                           Character Input.     (line   6)
+* rl_redisplay:                          Redisplay.           (line   6)
+* rl_redisplay_function:                 Readline Variables.  (line 161)
+* rl_replace_line:                       Utility Functions.   (line  21)
 * rl_reset_after_signal:                 Readline Signal Handling.
-                                                              (line  87)
-* rl_reset_line_state:                   Redisplay.           (line  26)
+                                                              (line  93)
+* rl_reset_line_state:                   Redisplay.           (line  25)
 * rl_reset_screen_size:                  Readline Signal Handling.
-                                                              (line 119)
-* rl_reset_terminal:                     Terminal Management. (line  28)
+                                                              (line 125)
+* rl_reset_terminal:                     Terminal Management. (line  27)
 * rl_resize_terminal:                    Readline Signal Handling.
-                                                              (line 102)
-* rl_restore_prompt:                     Redisplay.           (line  57)
-* rl_restore_state:                      Utility Functions.   (line  12)
-* rl_save_prompt:                        Redisplay.           (line  53)
-* rl_save_state:                         Utility Functions.   (line   7)
-* rl_set_key:                            Binding Keys.        (line  73)
-* rl_set_keyboard_input_timeout:         Character Input.     (line  35)
-* rl_set_keymap:                         Keymaps.             (line  40)
+                                                              (line 108)
+* rl_restore_prompt:                     Redisplay.           (line  56)
+* rl_restore_state:                      Utility Functions.   (line  11)
+* rl_save_prompt:                        Redisplay.           (line  52)
+* rl_save_state:                         Utility Functions.   (line   6)
+* rl_set_key:                            Binding Keys.        (line  71)
+* rl_set_keyboard_input_timeout:         Character Input.     (line  34)
+* rl_set_keymap:                         Keymaps.             (line  39)
 * rl_set_paren_blink_timeout:            Miscellaneous Functions.
-                                                              (line  37)
-* rl_set_prompt:                         Redisplay.           (line  78)
+                                                              (line  36)
+* rl_set_prompt:                         Redisplay.           (line  76)
 * rl_set_screen_size:                    Readline Signal Handling.
-                                                              (line 106)
+                                                              (line 112)
 * rl_set_signals:                        Readline Signal Handling.
-                                                              (line 126)
-* rl_show_char:                          Redisplay.           (line  33)
-* rl_signal_event_hook:                  Readline Variables.  (line 138)
+                                                              (line 132)
+* rl_show_char:                          Redisplay.           (line  32)
+* rl_signal_event_hook:                  Readline Variables.  (line 136)
 * rl_sort_completion_matches:            Completion Variables.
-                                                              (line 262)
+                                                              (line 260)
 * rl_special_prefixes:                   Completion Variables.
-                                                              (line 172)
-* rl_startup_hook:                       Readline Variables.  (line 115)
-* rl_stuff_char:                         Character Input.     (line  19)
-* rl_terminal_name:                      Readline Variables.  (line  87)
-* rl_tty_set_default_bindings:           Terminal Management. (line  18)
-* rl_tty_unset_default_bindings:         Terminal Management. (line  23)
-* rl_unbind_command_in_map:              Binding Keys.        (line  55)
-* rl_unbind_function_in_map:             Binding Keys.        (line  51)
-* rl_unbind_key:                         Binding Keys.        (line  42)
-* rl_unbind_key_in_map:                  Binding Keys.        (line  46)
+                                                              (line 171)
+* rl_startup_hook:                       Readline Variables.  (line 114)
+* rl_stuff_char:                         Character Input.     (line  18)
+* rl_terminal_name:                      Readline Variables.  (line  86)
+* rl_tty_set_default_bindings:           Terminal Management. (line  17)
+* rl_tty_unset_default_bindings:         Terminal Management. (line  22)
+* rl_unbind_command_in_map:              Binding Keys.        (line  53)
+* rl_unbind_function_in_map:             Binding Keys.        (line  49)
+* rl_unbind_key:                         Binding Keys.        (line  41)
+* rl_unbind_key_in_map:                  Binding Keys.        (line  45)
 * rl_username_completion_function:       Completion Functions.
-                                                              (line  66)
+                                                              (line  64)
 * rl_variable_bind:                      Miscellaneous Functions.
-                                                              (line  21)
+                                                              (line  19)
 * rl_variable_dumper:                    Miscellaneous Functions.
-                                                              (line  31)
+                                                              (line  30)
 * rl_variable_value:                     Miscellaneous Functions.
-                                                              (line  26)
+                                                              (line  25)
 * self-insert (a, b, A, 1, !, ...):      Commands For Text.   (line  33)
 * set-mark (C-@):                        Miscellaneous Commands.
                                                               (line  32)
 * show-all-if-ambiguous:                 Readline Init File Syntax.
-                                                              (line 236)
+                                                              (line 266)
 * show-all-if-unmodified:                Readline Init File Syntax.
-                                                              (line 242)
+                                                              (line 272)
 * show-mode-in-prompt:                   Readline Init File Syntax.
-                                                              (line 251)
+                                                              (line 281)
 * skip-completed-text:                   Readline Init File Syntax.
-                                                              (line 256)
+                                                              (line 287)
 * skip-csi-sequence ():                  Miscellaneous Commands.
                                                               (line  51)
 * start-kbd-macro (C-x ():               Keyboard Macros.     (line   6)
-* transpose-chars (C-t):                 Commands For Text.   (line  36)
-* transpose-words (M-t):                 Commands For Text.   (line  42)
+* tab-insert (M-<TAB>):                  Commands For Text.   (line  30)
+* tilde-expand (M-~):                    Miscellaneous Commands.
+                                                              (line  29)
+* transpose-chars (C-t):                 Commands For Text.   (line  45)
+* transpose-words (M-t):                 Commands For Text.   (line  51)
 * undo (C-_ or C-x C-u):                 Miscellaneous Commands.
                                                               (line  22)
 * universal-argument ():                 Numeric Arguments.   (line  10)
@@ -4849,73 +4861,79 @@ Function and Variable Index
                                                               (line  12)
 * unix-word-rubout (C-w):                Commands For Killing.
                                                               (line  28)
-* upcase-word (M-u):                     Commands For Text.   (line  47)
+* upcase-word (M-u):                     Commands For Text.   (line  56)
+* vi-cmd-mode-string:                    Readline Init File Syntax.
+                                                              (line 300)
+* vi-editing-mode (M-C-j):               Miscellaneous Commands.
+                                                              (line  91)
+* vi-ins-mode-string:                    Readline Init File Syntax.
+                                                              (line 310)
 * visible-stats:                         Readline Init File Syntax.
-                                                              (line 269)
+                                                              (line 320)
 * yank (C-y):                            Commands For Killing.
                                                               (line  59)
 * yank-last-arg (M-. or M-_):            Commands For History.
-                                                              (line  78)
+                                                              (line  79)
 * yank-nth-arg (M-C-y):                  Commands For History.
-                                                              (line  69)
+                                                              (line  70)
 * yank-pop (M-y):                        Commands For Killing.
                                                               (line  62)
 
 
 \1f
 Tag Table:
-Node: Top\7f907
-Node: Command Line Editing\7f1632
-Node: Introduction and Notation\7f2284
-Node: Readline Interaction\7f3907
-Node: Readline Bare Essentials\7f5099
-Node: Readline Movement Commands\7f6889
-Node: Readline Killing Commands\7f7855
-Node: Readline Arguments\7f9776
-Node: Searching\7f10821
-Node: Readline Init File\7f12973
-Node: Readline Init File Syntax\7f14127
-Node: Conditional Init Constructs\7f30832
-Node: Sample Init File\7f33366
-Node: Bindable Readline Commands\7f36485
-Node: Commands For Moving\7f37543
-Node: Commands For History\7f38405
-Node: Commands For Text\7f42560
-Node: Commands For Killing\7f45543
-Node: Numeric Arguments\7f47686
-Node: Commands For Completion\7f48826
-Node: Keyboard Macros\7f50796
-Node: Miscellaneous Commands\7f51485
-Node: Readline vi Mode\7f55342
-Node: Programming with GNU Readline\7f57159
-Node: Basic Behavior\7f58145
-Node: Custom Functions\7f61562
-Node: Readline Typedefs\7f63046
-Node: Function Writing\7f64686
-Node: Readline Variables\7f65993
-Node: Readline Convenience Functions\7f78671
-Node: Function Naming\7f79743
-Node: Keymaps\7f81005
-Node: Binding Keys\7f82998
-Node: Associating Function Names and Bindings\7f87545
-Node: Allowing Undoing\7f89830
-Node: Redisplay\7f92380
-Node: Modifying Text\7f96281
-Node: Character Input\7f97527
-Node: Terminal Management\7f99425
-Node: Utility Functions\7f100861
-Node: Miscellaneous Functions\7f104189
-Node: Alternate Interface\7f106778
-Node: A Readline Example\7f109012
-Node: Alternate Interface Example\7f110951
-Node: Readline Signal Handling\7f113724
-Node: Custom Completers\7f120246
-Node: How Completing Works\7f120966
-Node: Completion Functions\7f124280
-Node: Completion Variables\7f127854
-Node: A Short Completion Example\7f143502
-Node: GNU Free Documentation License\7f156281
-Node: Concept Index\7f181474
-Node: Function and Variable Index\7f182995
+Node: Top\7f860
+Node: Command Line Editing\7f1585
+Node: Introduction and Notation\7f2237
+Node: Readline Interaction\7f3861
+Node: Readline Bare Essentials\7f5053
+Node: Readline Movement Commands\7f6837
+Node: Readline Killing Commands\7f7798
+Node: Readline Arguments\7f9717
+Node: Searching\7f10762
+Node: Readline Init File\7f12915
+Node: Readline Init File Syntax\7f14069
+Node: Conditional Init Constructs\7f33514
+Node: Sample Init File\7f36040
+Node: Bindable Readline Commands\7f39158
+Node: Commands For Moving\7f40213
+Node: Commands For History\7f41074
+Node: Commands For Text\7f45333
+Node: Commands For Killing\7f48776
+Node: Numeric Arguments\7f50943
+Node: Commands For Completion\7f52083
+Node: Keyboard Macros\7f54052
+Node: Miscellaneous Commands\7f54740
+Node: Readline vi Mode\7f58591
+Node: Programming with GNU Readline\7f60408
+Node: Basic Behavior\7f61394
+Node: Custom Functions\7f64798
+Node: Readline Typedefs\7f66281
+Node: Function Writing\7f67915
+Node: Readline Variables\7f69229
+Node: Readline Convenience Functions\7f81901
+Node: Function Naming\7f82973
+Node: Keymaps\7f84235
+Node: Binding Keys\7f86228
+Node: Associating Function Names and Bindings\7f90776
+Node: Allowing Undoing\7f93061
+Node: Redisplay\7f95611
+Node: Modifying Text\7f99508
+Node: Character Input\7f100755
+Node: Terminal Management\7f102653
+Node: Utility Functions\7f104090
+Node: Miscellaneous Functions\7f107418
+Node: Alternate Interface\7f110007
+Node: A Readline Example\7f112749
+Node: Alternate Interface Example\7f114688
+Node: Readline Signal Handling\7f117461
+Node: Custom Completers\7f124357
+Node: How Completing Works\7f125077
+Node: Completion Functions\7f128384
+Node: Completion Variables\7f131958
+Node: A Short Completion Example\7f147602
+Node: GNU Free Documentation License\7f160381
+Node: Concept Index\7f185555
+Node: Function and Variable Index\7f187076
 \1f
 End Tag Table
index 0667918dac72db7e75e131a7566ccf0655cb760c..afc415dda2202b1bd7898525d47f87d063a69e14 100644 (file)
Binary files a/doc/readline.pdf and b/doc/readline.pdf differ
index 9f922f52d503d84d673163e0aaf1b76587dcf5f7..77a0ecba44beed1b419978ae04b5ef200582027c 100644 (file)
@@ -1,8 +1,8 @@
 %!PS-Adobe-2.0
-%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
+%%Creator: dvips(k) 5.994 Copyright 2014 Radical Eye Software
 %%Title: readline.dvi
-%%CreationDate: Tue Feb 11 16:57:25 2014
-%%Pages: 77
+%%CreationDate: Wed Jul  1 10:32:45 2015
+%%Pages: 79
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 612 792
 %%DocumentFonts: CMBX12 CMR10 CMTT10 CMSY10 CMMI12 CMMI10 CMCSC10
@@ -12,7 +12,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -D 600 -t letter -o readline.ps readline.dvi
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2014.02.11:1657
+%DVIPSSource:  TeX output 2015.07.01:1032
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -98,7 +98,6 @@ FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI9 def
 /FontBBox {-29 -250 1075 750 }readonly def
-/UniqueID 5087384 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -334,7 +333,6 @@ FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMR9 def
 /FontBBox {-39 -250 1036 750 }readonly def
-/UniqueID 5000792 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -867,7 +865,6 @@ FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSLTT10 def
 /FontBBox {-20 -233 617 696 }readonly def
-/UniqueID 5000800 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -1317,7 +1314,6 @@ FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMR10 def
 /FontBBox {-40 -250 1009 750 }readonly def
-/UniqueID 5000793 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -2196,7 +2192,6 @@ FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTT9 def
 /FontBBox {-6 -233 542 698 }readonly def
-/UniqueID 5000831 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -2893,7 +2888,6 @@ FontDirectory/CMSS10 known{/CMSS10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSS10 def
 /FontBBox {-61 -250 999 759 }readonly def
-/UniqueID 5000803 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -3135,7 +3129,6 @@ FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTT10 def
 /FontBBox {-4 -233 537 696 }readonly def
-/UniqueID 5000832 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -3921,7 +3914,6 @@ FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMBX12 def
 /FontBBox {-53 -251 1139 750 }readonly def
-/UniqueID 5000769 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -4550,7 +4542,6 @@ FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSL10 def
 /FontBBox {-62 -250 1123 750 }readonly def
-/UniqueID 5000798 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -5183,7 +5174,6 @@ FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTI10 def
 /FontBBox {-35 -250 1124 750 }readonly def
-/UniqueID 5000828 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -5585,7 +5575,6 @@ FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMCSC10 def
 /FontBBox {14 -250 1077 750 }readonly def
-/UniqueID 5087402 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -5908,7 +5897,6 @@ FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI10 def
 /FontBBox {-32 -250 1048 750 }readonly def
-/UniqueID 5087385 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -6144,7 +6132,6 @@ FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI12 def
 /FontBBox {-31 -250 1026 750 }readonly def
-/UniqueID 5087386 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -6380,7 +6367,6 @@ FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSY10 def
 /FontBBox {-29 -960 1116 775 }readonly def
-/UniqueID 5096651 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -6638,21 +6624,21 @@ rf /Ff 214[35 35 40[{}2 90.9091 /CMSS10 rf /Fg 133[52
 13[{}1 90.9091 /CMSY10 rf /Fq 134[71 71 97 71 75 52 53
 55 1[75 67 75 112 37 2[37 75 67 41 61 75 60 75 65 7[102
 1[139 102 103 94 75 100 101 92 101 105 128 81 105 1[50
-105 106 85 88 103 97 96 102 6[37 67 1[67 67 67 67 67
-67 67 67 1[37 1[37 44[{}57 119.552 /CMBX12 rf /Fr 129[48
+105 106 85 88 103 97 96 102 6[37 2[67 67 67 67 67 67
+67 2[37 1[37 44[{}55 119.552 /CMBX12 rf /Fr 129[48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48
-48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48 1[48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48 1[48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 33[{}91 90.9091 /CMTT10 rf /Fs 131[91 45 40 48
-48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45
-28 40 51 40 51 45 25 2[25 45 25 56 68 68 93 68 68 66
-51 67 71 62 71 68 83 57 71 47 33 68 71 59 62 69 66 64
-68 71 4[25 25 45 45 45 45 45 45 45 45 45 45 45 25 30
-25 2[35 35 25 2[45 1[45 19[76 51 51 53 11[{}84 90.9091
-/CMR10 rf /Ft 134[102 6[79 3[108 1[54 2[54 3[88 108 1[108
-94 11[149 2[144 3[151 1[116 4[152 71[{}14 172.154 /CMBX12
+48 33[{}91 90.9091 /CMTT10 rf /Fs 131[91 45 40 48 48
+66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45 28
+40 51 40 51 45 25 2[25 45 25 56 68 68 93 68 68 66 51
+67 71 62 71 68 83 57 71 47 33 68 71 59 62 69 66 64 68
+71 4[25 25 45 45 45 45 45 45 45 45 45 45 45 25 30 25
+2[35 35 25 2[45 1[45 19[76 51 51 53 11[{}84 90.9091 /CMR10
+rf /Ft 134[102 6[79 3[108 1[54 2[54 3[88 108 1[108 94
+11[149 2[144 3[151 1[116 4[152 71[{}14 172.154 /CMBX12
 rf end
 %%EndProlog
 %%BeginSetup
@@ -6668,30 +6654,29 @@ ifelse
 %%EndSetup
 %%Page: 1 1
 TeXDict begin 1 0 bop 150 1318 a Ft(GNU)65 b(Readline)g(Library)p
-150 1418 3600 34 v 1873 1515 a Fs(Edition)30 b(6.3,)i(for)e
-Fr(Readline)e(Library)h Fs(V)-8 b(ersion)31 b(6.3.)3218
-1623 y(Jan)m(uary)f(2014)150 4935 y Fq(Chet)45 b(Ramey)-11
+150 1418 3600 34 v 1873 1515 a Fs(Edition)30 b(6.4,)i(for)e
+Fr(Readline)e(Library)h Fs(V)-8 b(ersion)31 b(6.4.)3364
+1623 y(Ma)m(y)g(2015)150 4935 y Fq(Chet)45 b(Ramey)-11
 b(,)46 b(Case)g(W)-11 b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150
 5068 y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)
 -11 b(oundation)p 150 5141 3600 17 v eop end
 %%Page: 2 2
-TeXDict begin 2 1 bop 150 4413 a Fs(This)32 b(man)m(ual)h(describ)s(es)
-f(the)h(GNU)g(Readline)g(Library)f(\(v)m(ersion)i(6.3,)g(6)f(Jan)m
-(uary)g(2014\),)i(a)e(library)150 4523 y(whic)m(h)39
-b(aids)g(in)g(the)g(consistency)h(of)g(user)e(in)m(terface)j(across)f
-(discrete)g(programs)e(whic)m(h)h(pro)m(vide)h(a)150
-4633 y(command)30 b(line)h(in)m(terface.)150 4767 y(Cop)m(yrigh)m(t)602
-4764 y(c)577 4767 y Fp(\015)f Fs(1988{2014)35 b(F)-8
-b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
-4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
-b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
-(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
-b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
-b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
-b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
-b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
-b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
-b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+TeXDict begin 2 1 bop 150 4413 a Fs(This)39 b(man)m(ual)i(describ)s(es)
+e(the)h(GNU)h(Readline)g(Library)e(\(v)m(ersion)i(6.4,)j(28)d(Ma)m(y)g
+(2015\),)k(a)40 b(library)150 4523 y(whic)m(h)f(aids)g(in)g(the)g
+(consistency)h(of)g(user)e(in)m(terface)j(across)f(discrete)g(programs)
+e(whic)m(h)h(pro)m(vide)h(a)150 4633 y(command)30 b(line)h(in)m
+(terface.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577
+4767 y Fp(\015)f Fs(1988{2014)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)
+-8 b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21
+b(is)f(gran)m(ted)h(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s
+(dify)e(this)i(do)s(cumen)m(t)f(under)f(the)390 5011
+y(terms)25 b(of)h(the)f(GNU)h(F)-8 b(ree)27 b(Do)s(cumen)m(tation)g
+(License,)g(V)-8 b(ersion)26 b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)
+390 5121 y(published)43 b(b)m(y)h(the)h(F)-8 b(ree)46
+b(Soft)m(w)m(are)g(F)-8 b(oundation;)53 b(with)44 b(no)g(In)m(v)-5
+b(arian)m(t)46 b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)
+31 b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
 b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
 5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
 b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
@@ -6732,144 +6717,144 @@ f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)47
 b Fs(4)399 1764 y(1.3.2)93 b(Conditional)31 b(Init)f(Constructs)e
 Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)58
-b Fs(11)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
+b Fs(12)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
 b Fm(:)j(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)44 b Fs(11)275 1983 y(1.4)92
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)44 b Fs(12)275 1983 y(1.4)92
 b(Bindable)30 b(Readline)h(Commands)14 b Fm(:)g(:)i(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b Fs(14)399 2093 y(1.4.1)93
+h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b Fs(15)399 2093 y(1.4.1)93
 b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)10 b Fm(:)17
 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)40
-b Fs(14)399 2203 y(1.4.2)93 b(Commands)29 b(F)-8 b(or)31
+b Fs(15)399 2203 y(1.4.2)93 b(Commands)29 b(F)-8 b(or)31
 b(Manipulating)g(The)f(History)20 b Fm(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49 b Fs(14)399 2312 y(1.4.3)93
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49 b Fs(15)399 2312 y(1.4.3)93
 b(Commands)29 b(F)-8 b(or)31 b(Changing)f(T)-8 b(ext)25
 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)53 b Fs(16)399
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)53 b Fs(17)399
 2422 y(1.4.4)93 b(Killing)31 b(And)e(Y)-8 b(anking)26
 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)55 b Fs(17)399 2531 y(1.4.5)93 b(Sp)s(ecifying)30
+h(:)f(:)g(:)55 b Fs(18)399 2531 y(1.4.5)93 b(Sp)s(ecifying)30
 b(Numeric)g(Argumen)m(ts)19 b Fm(:)d(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)49
-b Fs(18)399 2641 y(1.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8
+b Fs(19)399 2641 y(1.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8
 b(or)31 b(Y)-8 b(ou)14 b Fm(:)i(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)44
-b Fs(18)399 2751 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)23
+b Fs(20)399 2751 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)23
 b Fm(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)53 b Fs(19)399 2860 y(1.4.8)93
+f(:)h(:)f(:)g(:)h(:)f(:)53 b Fs(20)399 2860 y(1.4.8)93
 b(Some)30 b(Miscellaneous)j(Commands)26 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)58 b Fs(19)275 2970 y(1.5)92 b(Readline)31 b(vi)f(Mo)s(de)22
+f(:)g(:)58 b Fs(21)275 2970 y(1.5)92 b(Readline)31 b(vi)f(Mo)s(de)22
 b Fm(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b Fs(21)150
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b Fs(22)150
 3212 y Fq(2)135 b(Programming)46 b(with)f(GNU)g(Readline)17
-b Fn(:)k(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)62 b Fq(22)275
+b Fn(:)k(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)62 b Fq(23)275
 3349 y Fs(2.1)92 b(Basic)31 b(Beha)m(vior)15 b Fm(:)i(:)e(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)44 b Fs(22)275 3459 y(2.2)92
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)44 b Fs(23)275 3459 y(2.2)92
 b(Custom)29 b(F)-8 b(unctions)10 b Fm(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)40 b Fs(23)399 3568 y(2.2.1)93 b(Readline)31
+h(:)f(:)40 b Fs(24)399 3568 y(2.2.1)93 b(Readline)31
 b(T)m(yp)s(edefs)9 b Fm(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Fs(24)399
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Fs(25)399
 3678 y(2.2.2)93 b(W)-8 b(riting)31 b(a)g(New)g(F)-8 b(unction)15
 b Fm(:)h(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)45
-b Fs(24)275 3787 y(2.3)92 b(Readline)31 b(V)-8 b(ariables)23
+b Fs(25)275 3787 y(2.3)92 b(Readline)31 b(V)-8 b(ariables)23
 b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53 b Fs(25)275
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53 b Fs(26)275
 3897 y(2.4)92 b(Readline)31 b(Con)m(v)m(enience)g(F)-8
 b(unctions)14 b Fm(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-43 b Fs(30)399 4007 y(2.4.1)93 b(Naming)31 b(a)g(F)-8
+43 b Fs(31)399 4007 y(2.4.1)93 b(Naming)31 b(a)g(F)-8
 b(unction)13 b Fm(:)j(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b Fs(30)399 4116 y(2.4.2)93
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b Fs(31)399 4116 y(2.4.2)93
 b(Selecting)32 b(a)e(Keymap)21 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)51 b
-Fs(30)399 4226 y(2.4.3)93 b(Binding)30 b(Keys)c Fm(:)16
+Fs(31)399 4226 y(2.4.3)93 b(Binding)30 b(Keys)c Fm(:)16
 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Fs(31)399 4335 y(2.4.4)93
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Fs(32)399 4335 y(2.4.4)93
 b(Asso)s(ciating)32 b(F)-8 b(unction)31 b(Names)g(and)e(Bindings)18
 b Fm(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47
-b Fs(33)399 4445 y(2.4.5)93 b(Allo)m(wing)32 b(Undoing)19
+b Fs(34)399 4445 y(2.4.5)93 b(Allo)m(wing)32 b(Undoing)19
 b Fm(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)48 b Fs(34)399 4555 y(2.4.6)93
+h(:)f(:)h(:)f(:)g(:)h(:)48 b Fs(35)399 4555 y(2.4.6)93
 b(Redispla)m(y)21 b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
-(:)f(:)51 b Fs(35)399 4664 y(2.4.7)93 b(Mo)s(difying)30
+(:)f(:)51 b Fs(36)399 4664 y(2.4.7)93 b(Mo)s(difying)30
 b(T)-8 b(ext)28 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)57 b
-Fs(36)399 4774 y(2.4.8)93 b(Character)31 b(Input)13 b
+Fs(37)399 4774 y(2.4.8)93 b(Character)31 b(Input)13 b
 Fm(:)h(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)43 b Fs(36)399 4883 y(2.4.9)93
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)43 b Fs(37)399 4883 y(2.4.9)93
 b(T)-8 b(erminal)30 b(Managemen)m(t)8 b Fm(:)18 b(:)e(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38 b
-Fs(37)399 4993 y(2.4.10)93 b(Utilit)m(y)33 b(F)-8 b(unctions)15
+Fs(38)399 4993 y(2.4.10)93 b(Utilit)m(y)33 b(F)-8 b(unctions)15
 b Fm(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)45 b Fs(38)399 5103 y(2.4.11)93
+(:)h(:)f(:)g(:)h(:)f(:)45 b Fs(39)399 5103 y(2.4.11)93
 b(Miscellaneous)33 b(F)-8 b(unctions)15 b Fm(:)g(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Fs(39)399 5212
+(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Fs(40)399 5212
 y(2.4.12)93 b(Alternate)32 b(In)m(terface)17 b Fm(:)g(:)e(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)47
-b Fs(40)399 5322 y(2.4.13)93 b(A)31 b(Readline)g(Example)24
+b Fs(41)399 5322 y(2.4.13)93 b(A)31 b(Readline)g(Example)24
 b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)53 b Fs(40)p eop end
+g(:)h(:)53 b Fs(41)p eop end
 %%Page: -2 4
 TeXDict begin -2 3 bop 3699 -116 a Fs(ii)399 83 y(2.4.14)93
 b(Alternate)32 b(In)m(terface)g(Example)10 b Fm(:)15
 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40 b Fs(42)275
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40 b Fs(43)275
 193 y(2.5)92 b(Readline)31 b(Signal)f(Handling)10 b Fm(:)15
 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)39 b Fs(43)275 302 y(2.6)92 b(Custom)29 b(Completers)18
+g(:)h(:)39 b Fs(45)275 302 y(2.6)92 b(Custom)29 b(Completers)18
 b Fm(:)e(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)48 b Fs(46)399 412
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)48 b Fs(47)399 412
 y(2.6.1)93 b(Ho)m(w)31 b(Completing)g(W)-8 b(orks)24
 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-53 b Fs(46)399 521 y(2.6.2)93 b(Completion)31 b(F)-8
+53 b Fs(47)399 521 y(2.6.2)93 b(Completion)31 b(F)-8
 b(unctions)19 b Fm(:)d(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)49 b Fs(47)399 631 y(2.6.3)93 b(Completion)31
+h(:)f(:)h(:)f(:)g(:)49 b Fs(48)399 631 y(2.6.3)93 b(Completion)31
 b(V)-8 b(ariables)9 b Fm(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fs(48)399 741 y(2.6.4)93
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fs(49)399 741 y(2.6.4)93
 b(A)30 b(Short)g(Completion)h(Example)c Fm(:)15 b(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)56 b Fs(52)150 983 y Fq(App)t(endix)44
+h(:)f(:)g(:)h(:)56 b Fs(54)150 983 y Fq(App)t(endix)44
 b(A)160 b(GNU)45 b(F)-11 b(ree)45 b(Do)t(cumen)l(tation)h(License)446
 1116 y Fn(:)20 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)72
-b Fq(61)150 1386 y(Concept)45 b(Index)18 b Fn(:)i(:)f(:)g(:)h(:)f(:)h
+b Fq(63)150 1386 y(Concept)45 b(Index)18 b Fn(:)i(:)f(:)g(:)h(:)f(:)h
 (:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)63
-b Fq(69)150 1655 y(F)-11 b(unction)44 b(and)h(V)-11 b(ariable)45
+b Fq(71)150 1655 y(F)-11 b(unction)44 b(and)h(V)-11 b(ariable)45
 b(Index)29 b Fn(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)73 b Fq(70)p eop end
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)73 b Fq(72)p eop end
 %%Page: 1 5
 TeXDict begin 1 4 bop 150 -116 a Fs(Chapter)30 b(1:)41
 b(Command)29 b(Line)i(Editing)2153 b(1)150 299 y Fo(1)80
@@ -7165,7 +7150,7 @@ b(lines)h(are)150 3065 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
 (a)g(`)p Fr(#)p Fs(')g(are)h(commen)m(ts.)73 b(Lines)41
 b(b)s(eginning)f(with)g(a)i(`)p Fr($)p Fs(')f(indicate)150
 3174 y(conditional)i(constructs)e(\(see)i(Section)f(1.3.2)h
-([Conditional)f(Init)f(Constructs],)j(page)f(11\).)74
+([Conditional)f(Init)f(Constructs],)j(page)f(12\).)74
 b(Other)150 3284 y(lines)31 b(denote)g(v)-5 b(ariable)31
 b(settings)g(and)f(k)m(ey)h(bindings.)150 3432 y(V)-8
 b(ariable)32 b(Settings)630 3542 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
@@ -7201,399 +7186,464 @@ Fr(visible)p Fs(',)32 b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g
 (one)g(is)g(a)m(v)-5 b(ailable.)51 b(If)33 b(set)g(to)1110
 408 y(`)p Fr(audible)p Fs(')j(\(the)i(default\),)i(Readline)e(attempts)
 g(to)h(ring)e(the)g(terminal's)1110 518 y(b)s(ell.)630
-676 y Fr(bind-tty-special-chars)1110 786 y Fs(If)45 b(set)h(to)f(`)p
-Fr(on)p Fs(',)50 b(Readline)45 b(attempts)i(to)f(bind)d(the)j(con)m
-(trol)g(c)m(haracters)1110 896 y(treated)36 b(sp)s(ecially)h(b)m(y)e
-(the)h(k)m(ernel's)g(terminal)g(driv)m(er)f(to)h(their)f(Readline)1110
-1005 y(equiv)-5 b(alen)m(ts.)630 1163 y Fr(colored-stats)1110
-1273 y Fs(If)26 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(displa)m
-(ys)g(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
-1383 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+701 y Fr(bind-tty-special-chars)1110 810 y Fs(If)e(set)g(to)h(`)p
+Fr(on)p Fs(')f(\(the)g(default\),)i(Readline)f(attempts)g(to)g(bind)d
+(the)i(con)m(trol)1110 920 y(c)m(haracters)30 b(treated)g(sp)s(ecially)
+g(b)m(y)f(the)g(k)m(ernel's)h(terminal)f(driv)m(er)g(to)h(their)1110
+1029 y(Readline)h(equiv)-5 b(alen)m(ts.)630 1212 y Fr
+(blink-matching-paren)1110 1322 y Fs(If)36 b(set)g(to)h(`)p
+Fr(on)p Fs(',)h(Readline)f(attempts)g(to)g(brie\015y)e(mo)m(v)m(e)j
+(the)f(cursor)e(to)i(an)1110 1431 y(op)s(ening)k(paren)m(thesis)h(when)
+f(a)h(closing)h(paren)m(thesis)e(is)h(inserted.)74 b(The)1110
+1541 y(default)31 b(is)f(`)p Fr(off)p Fs('.)630 1724
+y Fr(colored-completion-prefi)o(x)1110 1833 y Fs(If)f(set)h(to)g(`)p
+Fr(on)p Fs(',)g(when)e(listing)i(completions,)h(Readline)f(displa)m(ys)
+g(the)f(com-)1110 1943 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s
+(ossible)f(completions)h(using)f(a)h(di\013eren)m(t)g(color.)1110
+2052 y(The)39 b(color)i(de\014nitions)f(are)g(tak)m(en)h(from)f(the)g
+(v)-5 b(alue)40 b(of)g(the)g Fr(LS_COLORS)1110 2162 y
+Fs(en)m(vironmen)m(t)31 b(v)-5 b(ariable.)41 b(The)30
+b(default)h(is)f(`)p Fr(off)p Fs('.)630 2345 y Fr(colored-stats)1110
+2454 y Fs(If)c(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(displa)m(ys)g
+(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
+2564 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
 b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
-1492 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fr(LS_COLORS)d
+2673 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fr(LS_COLORS)d
 Fs(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
-1602 y(is)30 b(`)p Fr(off)p Fs('.)630 1760 y Fr(comment-begin)1110
-1870 y Fs(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
-h(the)h(line)f(when)g(the)1110 1979 y Fr(insert-comment)26
+2783 y(is)30 b(`)p Fr(off)p Fs('.)630 2966 y Fr(comment-begin)1110
+3075 y Fs(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
+h(the)h(line)f(when)g(the)1110 3185 y Fr(insert-comment)26
 b Fs(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)f Fr("#")p Fs(.)630 2138 y Fr(completion-display-width)
-1110 2247 y Fs(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
-g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 2357
+b(alue)31 b(is)f Fr("#")p Fs(.)630 3367 y Fr(completion-display-width)
+1110 3477 y Fs(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
+g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 3587
 y(when)28 b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5
 b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
-2466 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
+3696 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
 b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
-2576 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
+3806 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
 (line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
-2734 y Fr(completion-ignore-case)1110 2844 y Fs(If)d(set)h(to)g(`)p
+3988 y Fr(completion-ignore-case)1110 4098 y Fs(If)d(set)h(to)g(`)p
 Fr(on)p Fs(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
-(and)e(completion)1110 2953 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
+(and)e(completion)1110 4208 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
 40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Fr(off)p
-Fs('.)630 3112 y Fr(completion-map-case)1110 3221 y Fs(If)22
+Fs('.)630 4390 y Fr(completion-map-case)1110 4500 y Fs(If)22
 b(set)g(to)h(`)p Fr(on)p Fs(',)h(and)e Fi(completion-ignore-case)31
-b Fs(is)22 b(enabled,)i(Readline)f(treats)1110 3331 y(h)m(yphens)29
+b Fs(is)22 b(enabled,)i(Readline)f(treats)1110 4609 y(h)m(yphens)29
 b(\(`)p Fr(-)p Fs('\))j(and)e(underscores)g(\(`)p Fr(_)p
 Fs('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
-3440 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
-(completion.)630 3599 y Fr(completion-prefix-displa)o(y-le)o(ngth)1110
-3708 y Fs(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
-(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 3818
+4719 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
+(completion.)630 4902 y Fr(completion-prefix-displa)o(y-le)o(ngth)1110
+5011 y Fs(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
+(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 5121
 y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s
-(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 3927
+(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 5230
 y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
-(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 4037
+(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 5340
 y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
-f(completions.)630 4195 y Fr(completion-query-items)1110
-4305 y Fs(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
-(that)g(determines)f(when)f(the)i(user)1110 4415 y(is)i(ask)m(ed)h
-(whether)f(the)h(list)g(of)f(p)s(ossibilities)h(should)e(b)s(e)h
-(displa)m(y)m(ed.)41 b(If)29 b(the)1110 4524 y(n)m(um)m(b)s(er)d(of)h
-(p)s(ossible)f(completions)i(is)f(greater)h(than)e(this)h(v)-5
-b(alue,)28 b(Readline)1110 4634 y(will)f(ask)g(the)f(user)g(whether)g
-(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i(otherwise,)1110
-4743 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5
-b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m(teger)g(v)-5
-b(alue)1110 4853 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
-b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110
-4963 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
-Fr(100)p Fs(.)630 5121 y Fr(convert-meta)1110 5230 y
-Fs(If)22 b(set)g(to)h(`)p Fr(on)p Fs(',)h(Readline)f(will)f(con)m(v)m
-(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
-5340 y(to)33 b(an)e Fl(asci)r(i)h Fs(k)m(ey)h(sequence)f(b)m(y)g
-(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)p
-eop end
+f(completions.)p eop end
 %%Page: 6 10
 TeXDict begin 6 9 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(6)1110 299 y(an)24
-b Fr(ESC)g Fs(c)m(haracter,)j(con)m(v)m(erting)f(them)f(to)g(a)g
-(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 408 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(on)p Fs('.)630
-555 y Fr(disable-completion)1110 664 y Fs(If)36 b(set)h(to)h(`)p
-Fr(On)p Fs(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h(completion.)60
-b(Completion)1110 774 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h
-(in)m(to)h(the)g(line)f(as)g(if)g(they)h(had)e(b)s(een)g(mapp)s(ed)1110
-883 y(to)31 b Fr(self-insert)p Fs(.)38 b(The)30 b(default)g(is)h(`)p
-Fr(off)p Fs('.)630 1029 y Fr(editing-mode)1110 1139 y
-Fs(The)d Fr(editing-mode)e Fs(v)-5 b(ariable)29 b(con)m(trols)h(whic)m
-(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 1249 y(ings)25
-b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f(up)f(in)h
-(Emacs)g(editing)h(mo)s(de,)1110 1358 y(where)j(the)g(k)m(eystrok)m(es)
-i(are)e(most)h(similar)f(to)h(Emacs.)40 b(This)29 b(v)-5
-b(ariable)30 b(can)1110 1468 y(b)s(e)g(set)h(to)g(either)g(`)p
-Fr(emacs)p Fs(')e(or)h(`)p Fr(vi)p Fs('.)630 1614 y Fr
-(echo-control-characters)1110 1724 y Fs(When)g(set)h(to)g(`)p
+b(Command)29 b(Line)i(Editing)2153 b(6)630 299 y Fr
+(completion-query-items)1110 408 y Fs(The)26 b(n)m(um)m(b)s(er)f(of)h
+(p)s(ossible)g(completions)h(that)g(determines)f(when)f(the)i(user)1110
+518 y(is)i(ask)m(ed)h(whether)f(the)h(list)g(of)f(p)s(ossibilities)h
+(should)e(b)s(e)h(displa)m(y)m(ed.)41 b(If)29 b(the)1110
+628 y(n)m(um)m(b)s(er)d(of)h(p)s(ossible)f(completions)i(is)f(greater)h
+(than)e(this)h(v)-5 b(alue,)28 b(Readline)1110 737 y(will)f(ask)g(the)f
+(user)g(whether)g(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i
+(otherwise,)1110 847 y(they)d(are)f(simply)g(listed.)40
+b(This)23 b(v)-5 b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m
+(teger)g(v)-5 b(alue)1110 956 y(greater)26 b(than)f(or)f(equal)i(to)f
+(0.)40 b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i
+(should)1110 1066 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g
+(is)g Fr(100)p Fs(.)630 1223 y Fr(convert-meta)1110 1332
+y Fs(If)22 b(set)g(to)h(`)p Fr(on)p Fs(',)h(Readline)f(will)f(con)m(v)m
+(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
+1442 y(to)33 b(an)e Fl(asci)r(i)h Fs(k)m(ey)h(sequence)f(b)m(y)g
+(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)1110
+1551 y(an)24 b Fr(ESC)g Fs(c)m(haracter,)j(con)m(v)m(erting)f(them)f
+(to)g(a)g(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 1661
+y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(on)p
+Fs('.)630 1817 y Fr(disable-completion)1110 1927 y Fs(If)36
+b(set)h(to)h(`)p Fr(On)p Fs(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h
+(completion.)60 b(Completion)1110 2037 y(c)m(haracters)28
+b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g(line)f(as)g(if)g(they)h
+(had)e(b)s(een)g(mapp)s(ed)1110 2146 y(to)31 b Fr(self-insert)p
+Fs(.)38 b(The)30 b(default)g(is)h(`)p Fr(off)p Fs('.)630
+2303 y Fr(editing-mode)1110 2412 y Fs(The)d Fr(editing-mode)e
+Fs(v)-5 b(ariable)29 b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)
+m(ey)i(bind-)1110 2522 y(ings)25 b(is)g(used.)38 b(By)26
+b(default,)g(Readline)g(starts)f(up)f(in)h(Emacs)g(editing)h(mo)s(de,)
+1110 2632 y(where)j(the)g(k)m(eystrok)m(es)i(are)e(most)h(similar)f(to)
+h(Emacs.)40 b(This)29 b(v)-5 b(ariable)30 b(can)1110
+2741 y(b)s(e)g(set)h(to)g(either)g(`)p Fr(emacs)p Fs(')e(or)h(`)p
+Fr(vi)p Fs('.)630 2898 y Fr(emacs-mode-string)1110 3007
+y Fs(This)f(string)h(is)f(displa)m(y)m(ed)i(immediately)g(b)s(efore)e
+(the)h(last)g(line)h(of)e(the)h(pri-)1110 3117 y(mary)43
+b(prompt)g(when)f(emacs)i(editing)g(mo)s(de)f(is)g(activ)m(e.)82
+b(The)43 b(v)-5 b(alue)44 b(is)1110 3226 y(expanded)28
+b(lik)m(e)i(a)f(k)m(ey)g(binding,)f(so)h(the)g(standard)f(set)h(of)g
+(meta-)g(and)f(con-)1110 3336 y(trol)36 b(pre\014xes)e(and)h(bac)m
+(kslash)h(escap)s(e)g(sequences)g(is)f(a)m(v)-5 b(ailable.)58
+b(Use)36 b(the)1110 3446 y(`)p Fr(\\1)p Fs(')i(and)f(`)p
+Fr(\\2)p Fs(')h(escap)s(es)g(to)h(b)s(egin)e(and)h(end)f(sequences)h
+(of)g(non-prin)m(ting)1110 3555 y(c)m(haracters,)27 b(whic)m(h)c(can)h
+(b)s(e)f(used)f(to)j(em)m(b)s(ed)e(a)h(terminal)g(con)m(trol)h
+(sequence)1110 3665 y(in)m(to)31 b(the)g(mo)s(de)f(string.)41
+b(The)29 b(default)i(is)f(`)p Fr(@)p Fs('.)630 3821 y
+Fr(echo-control-characters)1110 3931 y Fs(When)g(set)h(to)g(`)p
 Fr(on)p Fs(',)f(on)g(op)s(erating)h(systems)f(that)h(indicate)g(they)g
-(supp)s(ort)1110 1833 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
+(supp)s(ort)1110 4041 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
 (haracter)h(corresp)s(onding)d(to)j(a)f(signal)g(generated)1110
-1943 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
-Fr(on)p Fs('.)630 2089 y Fr(enable-keypad)1110 2198 y
-Fs(When)23 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(will)g(try)f(to)
-h(enable)g(the)f(application)i(k)m(eypad)1110 2308 y(when)h(it)h(is)f
-(called.)41 b(Some)27 b(systems)f(need)h(this)f(to)h(enable)g(the)g
-(arro)m(w)g(k)m(eys.)1110 2418 y(The)j(default)g(is)h(`)p
-Fr(off)p Fs('.)630 2564 y Fr(enable-meta-key)1110 2673
-y Fs(When)40 b(set)g(to)g(`)p Fr(on)p Fs(',)j(Readline)d(will)g(try)g
-(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110 2783
-y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h(is)g
-(called.)76 b(On)41 b(man)m(y)1110 2892 y(terminals,)c(the)e(meta)h(k)m
-(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
-b(The)1110 3002 y(default)31 b(is)f(`)p Fr(on)p Fs('.)630
-3148 y Fr(expand-tilde)1110 3258 y Fs(If)d(set)h(to)h(`)p
+4150 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
+Fr(on)p Fs('.)630 4307 y Fr(enable-bracketed-paste)1110
+4416 y Fs(When)24 b(set)h(to)h(`)p Fr(On)p Fs(',)g(Readline)f(will)g
+(con\014gure)f(the)h(terminal)g(in)f(a)h(w)m(a)m(y)g(that)1110
+4526 y(will)k(enable)f(it)h(to)g(insert)g(eac)m(h)g(paste)g(in)m(to)g
+(the)g(editing)g(bu\013er)e(as)i(a)f(single)1110 4635
+y(string)33 b(of)f(c)m(haracters,)j(instead)e(of)g(treating)h(eac)m(h)g
+(c)m(haracter)g(as)f(if)f(it)i(had)1110 4745 y(b)s(een)e(read)i(from)e
+(the)i(k)m(eyb)s(oard.)49 b(This)32 b(can)h(prev)m(en)m(t)h(pasted)f(c)
+m(haracters)1110 4855 y(from)d(b)s(eing)g(in)m(terpreted)h(as)f
+(editing)h(commands.)41 b(The)29 b(default)i(is)f(`)p
+Fr(off)p Fs('.)630 5011 y Fr(enable-keypad)1110 5121
+y Fs(When)23 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(will)g(try)f
+(to)h(enable)g(the)f(application)i(k)m(eypad)1110 5230
+y(when)h(it)h(is)f(called.)41 b(Some)27 b(systems)f(need)h(this)f(to)h
+(enable)g(the)g(arro)m(w)g(k)m(eys.)1110 5340 y(The)j(default)g(is)h(`)
+p Fr(off)p Fs('.)p eop end
+%%Page: 7 11
+TeXDict begin 7 10 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fr(enable-meta-key)
+1110 408 y Fs(When)40 b(set)g(to)g(`)p Fr(on)p Fs(',)j(Readline)d(will)
+g(try)g(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110
+518 y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h
+(is)g(called.)76 b(On)41 b(man)m(y)1110 628 y(terminals,)c(the)e(meta)h
+(k)m(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
+b(The)1110 737 y(default)31 b(is)f(`)p Fr(on)p Fs('.)630
+925 y Fr(expand-tilde)1110 1035 y Fs(If)d(set)h(to)h(`)p
 Fr(on)p Fs(',)f(tilde)g(expansion)g(is)f(p)s(erformed)f(when)h
-(Readline)h(attempts)1110 3367 y(w)m(ord)i(completion.)42
-b(The)30 b(default)g(is)h(`)p Fr(off)p Fs('.)630 3513
-y Fr(history-preserve-point)1110 3623 y Fs(If)41 b(set)h(to)h(`)p
+(Readline)h(attempts)1110 1144 y(w)m(ord)i(completion.)42
+b(The)30 b(default)g(is)h(`)p Fr(off)p Fs('.)630 1332
+y Fr(history-preserve-point)1110 1442 y Fs(If)41 b(set)h(to)h(`)p
 Fr(on)p Fs(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
-(p)s(oin)m(t)f(\(the)1110 3733 y(curren)m(t)35 b(cursor)g(p)s
+(p)s(oin)m(t)f(\(the)1110 1551 y(curren)m(t)35 b(cursor)g(p)s
 (osition\))g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g
-(line)1110 3842 y(retriev)m(ed)h(with)f Fr(previous-history)c
+(line)1110 1661 y(retriev)m(ed)h(with)f Fr(previous-history)c
 Fs(or)37 b Fr(next-history)p Fs(.)55 b(The)36 b(default)1110
-3952 y(is)30 b(`)p Fr(off)p Fs('.)630 4098 y Fr(history-size)1110
-4208 y Fs(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
-(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 4317
+1771 y(is)30 b(`)p Fr(off)p Fs('.)630 1958 y Fr(history-size)1110
+2068 y Fs(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
+(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 2178
 y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
-(en)m(tries)g(are)g(deleted)h(and)e(no)1110 4427 y(new)e(en)m(tries)i
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 2287 y(new)e(en)m(tries)i
 (are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
 b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
-4536 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
+2397 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
 b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
-4646 y(en)m(tries)g(is)g(not)f(limited.)630 4792 y Fr
-(horizontal-scroll-mode)1110 4902 y Fs(This)35 b(v)-5
+2506 y(en)m(tries)g(is)g(not)f(limited.)630 2694 y Fr
+(horizontal-scroll-mode)1110 2804 y Fs(This)35 b(v)-5
 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f(`)p
 Fr(on)p Fs(')g(or)g(`)p Fr(off)p Fs('.)57 b(Setting)36
-b(it)g(to)h(`)p Fr(on)p Fs(')1110 5011 y(means)26 b(that)h(the)f(text)h
+b(it)g(to)h(`)p Fr(on)p Fs(')1110 2913 y(means)26 b(that)h(the)f(text)h
 (of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
-(tally)1110 5121 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
-(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 5230
+(tally)1110 3023 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
+(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 3133
 y(screen,)27 b(instead)g(of)f(wrapping)f(on)m(to)i(a)f(new)g(screen)g
-(line.)39 b(By)27 b(default,)g(this)1110 5340 y(v)-5
-b(ariable)31 b(is)g(set)f(to)i(`)p Fr(off)p Fs('.)p eop
-end
-%%Page: 7 11
-TeXDict begin 7 10 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fr(input-meta)1110
-408 y Fs(If)31 b(set)g(to)h(`)p Fr(on)p Fs(',)g(Readline)g(will)f
-(enable)h(eigh)m(t-bit)h(input)d(\(it)i(will)f(not)h(clear)1110
-518 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h(c)m(haracters)h(it)f
-(reads\),)j(regardless)c(of)h(what)g(the)1110 628 y(terminal)g(claims)h
-(it)g(can)f(supp)s(ort.)68 b(The)39 b(default)h(v)-5
-b(alue)40 b(is)g(`)p Fr(off)p Fs('.)69 b(The)1110 737
-y(name)30 b Fr(meta-flag)e Fs(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5
-b(ariable.)630 894 y Fr(isearch-terminators)1110 1003
-y Fs(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e(terminate)j
-(an)f(incremen)m(tal)1110 1113 y(searc)m(h)25 b(without)g(subsequen)m
-(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g(command)1110
-1223 y(\(see)45 b(Section)h(1.2.5)g([Searc)m(hing],)j(page)d(3\).)84
-b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110 1332
-y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m(haracters)h
-Fr(ESC)d Fs(and)h Fk(C-J)g Fs(will)h(terminate)g(an)1110
-1442 y(incremen)m(tal)c(searc)m(h.)630 1598 y Fr(keymap)192
+(line.)39 b(By)27 b(default,)g(this)1110 3242 y(v)-5
+b(ariable)31 b(is)g(set)f(to)i(`)p Fr(off)p Fs('.)630
+3430 y Fr(input-meta)1110 3540 y Fs(If)f(set)g(to)h(`)p
+Fr(on)p Fs(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
+i(will)f(not)h(clear)1110 3649 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
+(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
+3759 y(terminal)g(claims)h(it)g(can)f(supp)s(ort.)68
+b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Fr(off)p
+Fs('.)69 b(The)1110 3868 y(name)30 b Fr(meta-flag)e Fs(is)j(a)f(synon)m
+(ym)g(for)g(this)h(v)-5 b(ariable.)630 4056 y Fr(isearch-terminators)
+1110 4166 y Fs(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
+(terminate)j(an)f(incremen)m(tal)1110 4275 y(searc)m(h)25
+b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
+(command)1110 4385 y(\(see)45 b(Section)h(1.2.5)g([Searc)m(hing],)j
+(page)d(3\).)84 b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110
+4495 y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m
+(haracters)h Fr(ESC)d Fs(and)h Fk(C-J)g Fs(will)h(terminate)g(an)1110
+4604 y(incremen)m(tal)c(searc)m(h.)630 4792 y Fr(keymap)192
 b Fs(Sets)39 b(Readline's)g(idea)h(of)f(the)g(curren)m(t)f(k)m(eymap)h
-(for)g(k)m(ey)g(binding)f(com-)1110 1708 y(mands.)81
+(for)g(k)m(ey)g(binding)f(com-)1110 4902 y(mands.)81
 b(Acceptable)47 b Fr(keymap)42 b Fs(names)i(are)h Fr(emacs)p
-Fs(,)i Fr(emacs-standard)p Fs(,)1110 1817 y Fr(emacs-meta)p
+Fs(,)i Fr(emacs-standard)p Fs(,)1110 5011 y Fr(emacs-meta)p
 Fs(,)99 b Fr(emacs-ctlx)p Fs(,)f Fr(vi)p Fs(,)j Fr(vi-move)p
-Fs(,)f Fr(vi-command)p Fs(,)f(and)1110 1927 y Fr(vi-insert)p
+Fs(,)f Fr(vi-command)p Fs(,)f(and)1110 5121 y Fr(vi-insert)p
 Fs(.)64 b Fr(vi)38 b Fs(is)h(equiv)-5 b(alen)m(t)41 b(to)e
 Fr(vi-command)p Fs(;)i Fr(emacs)c Fs(is)i(equiv)-5 b(alen)m(t)1110
-2037 y(to)33 b Fr(emacs-standard)p Fs(.)41 b(The)31 b(default)h(v)-5
+5230 y(to)33 b Fr(emacs-standard)p Fs(.)41 b(The)31 b(default)h(v)-5
 b(alue)32 b(is)g Fr(emacs)p Fs(.)44 b(The)31 b(v)-5 b(alue)33
-b(of)f(the)1110 2146 y Fr(editing-mode)27 b Fs(v)-5 b(ariable)31
-b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 2303
-y Fr(keyseq-timeout)1110 2412 y Fs(Sp)s(eci\014es)25
-b(the)g(duration)g(Readline)h(will)g(w)m(ait)g(for)g(a)f(c)m(haracter)i
-(when)e(read-)1110 2522 y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h
-(sequence)f(\(one)g(that)h(can)f(form)g(a)g(complete)h(k)m(ey)1110
-2632 y(sequence)j(using)e(the)i(input)e(read)h(so)g(far,)h(or)g(can)f
-(tak)m(e)i(additional)f(input)1110 2741 y(to)g(complete)g(a)f(longer)h
-(k)m(ey)f(sequence\).)49 b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h
-(within)1110 2851 y(the)43 b(timeout,)48 b(Readline)43
-b(will)g(use)g(the)g(shorter)g(but)f(complete)j(k)m(ey)e(se-)1110
-2960 y(quence.)c(Readline)26 b(uses)f(this)h(v)-5 b(alue)26
-b(to)g(determine)g(whether)f(or)g(not)h(input)1110 3070
-y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m(t)f(input)g
-(source)h(\()p Fr(rl_instream)d Fs(b)m(y)i(default\).)1110
-3180 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
+b(of)f(the)1110 5340 y Fr(editing-mode)27 b Fs(v)-5 b(ariable)31
+b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)p eop
+end
+%%Page: 8 12
+TeXDict begin 8 11 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(8)630 299 y Fr(keyseq-timeout)1110
+408 y Fs(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
+(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 518
+y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
+(form)g(a)g(complete)h(k)m(ey)1110 628 y(sequence)j(using)e(the)i
+(input)e(read)h(so)g(far,)h(or)g(can)f(tak)m(e)i(additional)f(input)
+1110 737 y(to)g(complete)g(a)f(longer)h(k)m(ey)f(sequence\).)49
+b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h(within)1110
+847 y(the)43 b(timeout,)48 b(Readline)43 b(will)g(use)g(the)g(shorter)g
+(but)f(complete)j(k)m(ey)e(se-)1110 956 y(quence.)c(Readline)26
+b(uses)f(this)h(v)-5 b(alue)26 b(to)g(determine)g(whether)f(or)g(not)h
+(input)1110 1066 y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m
+(t)f(input)g(source)h(\()p Fr(rl_instream)d Fs(b)m(y)i(default\).)1110
+1176 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
 (milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
-1110 3289 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
+1110 1285 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
 (additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
-b(is)1110 3399 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
+b(is)1110 1395 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
 (equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
-b(alue,)1110 3508 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
+b(alue,)1110 1504 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
 (k)m(ey)g(is)f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110
-3618 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)g Fr(500)p Fs(.)630 3774 y Fr(mark-directories)1110
-3884 y Fs(If)38 b(set)g(to)h(`)p Fr(on)p Fs(',)i(completed)e(directory)
+1614 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)g Fr(500)p Fs(.)630 1802 y Fr(mark-directories)1110
+1911 y Fs(If)38 b(set)g(to)h(`)p Fr(on)p Fs(',)i(completed)e(directory)
 f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
-3994 y(The)30 b(default)g(is)h(`)p Fr(on)p Fs('.)630
-4150 y Fr(mark-modified-lines)1110 4260 y Fs(This)k(v)-5
+2021 y(The)30 b(default)g(is)h(`)p Fr(on)p Fs('.)630
+2209 y Fr(mark-modified-lines)1110 2318 y Fs(This)k(v)-5
 b(ariable,)38 b(when)d(set)h(to)h(`)p Fr(on)p Fs(',)g(causes)g
-(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 4369 y(terisk)f(\(`)p
+(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 2428 y(terisk)f(\(`)p
 Fr(*)p Fs('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f
-(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 4479 y(This)d(v)-5
+(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 2538 y(This)d(v)-5
 b(ariable)31 b(is)f(`)p Fr(off)p Fs(')g(b)m(y)g(default.)630
-4635 y Fr(mark-symlinked-directori)o(es)1110 4745 y Fs(If)59
+2725 y Fr(mark-symlinked-directori)o(es)1110 2835 y Fs(If)59
 b(set)h(to)g(`)p Fr(on)p Fs(',)67 b(completed)60 b(names)f(whic)m(h)g
-(are)h(sym)m(b)s(olic)g(links)f(to)1110 4855 y(directories)71
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 2945 y(directories)71
 b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5 b(ject)70
-b(to)g(the)g(v)-5 b(alue)70 b(of)1110 4964 y Fr(mark-directories)p
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 3054 y Fr(mark-directories)p
 Fs(\).)37 b(The)30 b(default)g(is)g(`)p Fr(off)p Fs('.)630
-5121 y Fr(match-hidden-files)1110 5230 y Fs(This)21 b(v)-5
+3242 y Fr(match-hidden-files)1110 3352 y Fs(This)21 b(v)-5
 b(ariable,)25 b(when)d(set)g(to)h(`)p Fr(on)p Fs(',)h(causes)f
-(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 5340
+(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 3461
 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fr(.)p Fs(')g(\(hidden)f
-(\014les\))i(when)e(p)s(erforming)g(\014lename)p eop
-end
-%%Page: 8 12
-TeXDict begin 8 11 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(8)1110 299 y(completion.)75
-b(If)41 b(set)g(to)h(`)p Fr(off)p Fs(',)i(the)e(leading)g(`)p
-Fr(.)p Fs(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
-408 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
+(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 3571
+y(completion.)75 b(If)41 b(set)g(to)h(`)p Fr(off)p Fs(',)i(the)e
+(leading)g(`)p Fr(.)p Fs(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
+3680 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
 53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Fr(on)p Fs(')g(b)m(y)1110
-518 y(default.)630 664 y Fr(menu-complete-display-pr)o(efix)1110
-774 y Fs(If)f(set)h(to)g(`)p Fr(on)p Fs(',)h(men)m(u)e(completion)i
+3790 y(default.)630 3978 y Fr(menu-complete-display-pr)o(efix)1110
+4088 y Fs(If)f(set)h(to)g(`)p Fr(on)p Fs(',)h(men)m(u)e(completion)i
 (displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
-883 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)s
-(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 993 y(through)30
+4197 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)
+s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 4307 y(through)30
 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fr(off)p
-Fs('.)630 1139 y Fr(output-meta)1110 1249 y Fs(If)35
+Fs('.)630 4495 y Fr(output-meta)1110 4604 y Fs(If)35
 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(will)g(displa)m(y)f(c)m
-(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1358 y(set)h(directly)g
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 4714 y(set)h(directly)g
 (rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
-b(The)1110 1468 y(default)31 b(is)f(`)p Fr(off)p Fs('.)630
-1614 y Fr(page-completions)1110 1724 y Fs(If)j(set)i(to)f(`)p
+b(The)1110 4823 y(default)31 b(is)f(`)p Fr(off)p Fs('.)630
+5011 y Fr(page-completions)1110 5121 y Fs(If)j(set)i(to)f(`)p
 Fr(on)p Fs(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
 Fr(more)p Fs(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
-1833 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
+5230 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
 47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fr(on)p Fs(')1110
-1943 y(b)m(y)e(default.)630 2089 y Fr(print-completions-horizo)o(ntal)o
-(ly)1110 2198 y Fs(If)23 b(set)i(to)g(`)p Fr(on)p Fs(',)g(Readline)g
-(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
-2308 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
-(than)g(do)m(wn)g(the)h(screen.)1110 2418 y(The)30 b(default)g(is)h(`)p
-Fr(off)p Fs('.)630 2564 y Fr(revert-all-at-newline)1110
-2673 y Fs(If)e(set)h(to)g(`)p Fr(on)p Fs(',)g(Readline)g(will)g(undo)f
-(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
-2783 y(returning)f(when)f Fr(accept-line)f Fs(is)j(executed.)41
-b(By)29 b(default,)g(history)g(lines)1110 2892 y(ma)m(y)42
-b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
-(across)g(calls)h(to)1110 3002 y Fr(readline)p Fs(.)38
-b(The)30 b(default)h(is)f(`)p Fr(off)p Fs('.)630 3148
-y Fr(show-all-if-ambiguous)1110 3258 y Fs(This)f(alters)i(the)f
-(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
-b(If)29 b(set)1110 3367 y(to)f(`)p Fr(on)p Fs(',)g(w)m(ords)f(whic)m(h)
-g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
-1110 3477 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
-(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 3587 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(off)p Fs('.)630
-3733 y Fr(show-all-if-unmodified)1110 3842 y Fs(This)38
-b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
-(functions)e(in)h(a)1110 3952 y(fashion)25 b(similar)h(to)g
-Fi(sho)m(w-all-if-am)m(biguous)p Fs(.)41 b(If)25 b(set)h(to)h(`)p
-Fr(on)p Fs(',)f(w)m(ords)f(whic)m(h)1110 4061 y(ha)m(v)m(e)32
-b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
-(ossible)f(par-)1110 4171 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
-f(completions)h(don't)f(share)g(a)h(common)1110 4281
-y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
-(immediately)i(instead)e(of)h(ring-)1110 4390 y(ing)g(the)f(b)s(ell.)41
-b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fr(off)p
-Fs('.)630 4536 y Fr(show-mode-in-prompt)1110 4646 y Fs(If)35
-b(set)i(to)f(`)p Fr(on)p Fs(',)h(add)e(a)h(c)m(haracter)i(to)e(the)g(b)
-s(eginning)f(of)h(the)g(prompt)f(in-)1110 4756 y(dicating)43
-b(the)f(editing)h(mo)s(de:)63 b(emacs)43 b(\(`)p Fr(@)p
-Fs('\),)i(vi)d(command)g(\(`)p Fr(:)p Fs('\),)k(or)c(vi)1110
-4865 y(insertion)30 b(\(`)p Fr(+)p Fs('\).)42 b(The)30
-b(default)h(v)-5 b(alue)30 b(is)h(`)p Fr(off)p Fs('.)630
-5011 y Fr(skip-completed-text)1110 5121 y Fs(If)h(set)i(to)f(`)p
-Fr(on)p Fs(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s(eha)m
-(vior)f(when)f(in-)1110 5230 y(serting)d(a)h(single)g(matc)m(h)f(in)m
-(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)
-1110 5340 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f(w)m
-(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)p eop
-end
+5340 y(b)m(y)e(default.)p eop end
 %%Page: 9 13
 TeXDict begin 9 12 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(9)1110 299 y(not)41
-b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
-(c)m(haracters)1110 408 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f(b)
-s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
-518 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
-b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
-628 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Fr(e)p Fs(')f(in)1110 737 y(`)p Fr(Makefile)p
+b(Command)29 b(Line)i(Editing)2153 b(9)630 299 y Fr
+(print-completions-horizo)o(ntal)o(ly)1110 408 y Fs(If)23
+b(set)i(to)g(`)p Fr(on)p Fs(',)g(Readline)g(will)f(displa)m(y)g
+(completions)h(with)f(matc)m(hes)h(sorted)1110 518 y(horizon)m(tally)45
+b(in)e(alphab)s(etical)i(order,)i(rather)c(than)g(do)m(wn)g(the)h
+(screen.)1110 628 y(The)30 b(default)g(is)h(`)p Fr(off)p
+Fs('.)630 792 y Fr(revert-all-at-newline)1110 902 y Fs(If)e(set)h(to)g
+(`)p Fr(on)p Fs(',)g(Readline)g(will)g(undo)f(all)h(c)m(hanges)h(to)f
+(history)g(lines)f(b)s(efore)1110 1011 y(returning)f(when)f
+Fr(accept-line)f Fs(is)j(executed.)41 b(By)29 b(default,)g(history)g
+(lines)1110 1121 y(ma)m(y)42 b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i
+(individual)e(undo)g(lists)h(across)g(calls)h(to)1110
+1230 y Fr(readline)p Fs(.)38 b(The)30 b(default)h(is)f(`)p
+Fr(off)p Fs('.)630 1395 y Fr(show-all-if-ambiguous)1110
+1504 y Fs(This)f(alters)i(the)f(default)g(b)s(eha)m(vior)g(of)g(the)h
+(completion)g(functions.)40 b(If)29 b(set)1110 1614 y(to)f(`)p
+Fr(on)p Fs(',)g(w)m(ords)f(whic)m(h)g(ha)m(v)m(e)i(more)f(than)f(one)h
+(p)s(ossible)f(completion)h(cause)1110 1724 y(the)39
+b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i(instead)e(of)g
+(ringing)g(the)g(b)s(ell.)1110 1833 y(The)30 b(default)g(v)-5
+b(alue)31 b(is)g(`)p Fr(off)p Fs('.)630 1998 y Fr
+(show-all-if-unmodified)1110 2107 y Fs(This)38 b(alters)h(the)g
+(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h(functions)e(in)h(a)
+1110 2217 y(fashion)25 b(similar)h(to)g Fi(sho)m(w-all-if-am)m(biguous)
+p Fs(.)41 b(If)25 b(set)h(to)h(`)p Fr(on)p Fs(',)f(w)m(ords)f(whic)m(h)
+1110 2326 y(ha)m(v)m(e)32 b(more)f(than)f(one)i(p)s(ossible)e
+(completion)i(without)f(an)m(y)g(p)s(ossible)f(par-)1110
+2436 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
+(don't)f(share)g(a)h(common)1110 2545 y(pre\014x\))30
+b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g(immediately)i
+(instead)e(of)h(ring-)1110 2655 y(ing)g(the)f(b)s(ell.)41
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fr(off)p
+Fs('.)630 2819 y Fr(show-mode-in-prompt)1110 2929 y Fs(If)g(set)g(to)h
+(`)p Fr(on)p Fs(',)f(add)f(a)i(c)m(haracter)g(to)g(the)f(b)s(eginning)g
+(of)g(the)g(prompt)f(indi-)1110 3039 y(cating)j(the)g(editing)f(mo)s
+(de:)42 b(emacs,)33 b(vi)e(command,)g(or)g(vi)g(insertion.)43
+b(The)1110 3148 y(mo)s(de)30 b(strings)g(are)h(user-settable.)42
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(off)p
+Fs('.)630 3313 y Fr(skip-completed-text)1110 3422 y Fs(If)h(set)i(to)f
+(`)p Fr(on)p Fs(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s
+(eha)m(vior)f(when)f(in-)1110 3532 y(serting)d(a)h(single)g(matc)m(h)f
+(in)m(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s
+(erform-)1110 3641 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f
+(w)m(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)1110
+3751 y(not)41 b(insert)f(c)m(haracters)i(from)e(the)h(completion)h
+(that)f(matc)m(h)g(c)m(haracters)1110 3861 y(after)c(p)s(oin)m(t)g(in)g
+(the)g(w)m(ord)f(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g
+(w)m(ord)1110 3970 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g
+(duplicated.)45 b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
+4080 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(`)p Fr(e)p Fs(')f(in)1110 4189 y(`)p Fr(Makefile)p
 Fs(')c(will)i(result)f(in)g(`)p Fr(Makefile)p Fs(')f(rather)h(than)h(`)
-p Fr(Makefilefile)p Fs(',)1110 847 y(assuming)d(there)g(is)h(a)f
+p Fr(Makefilefile)p Fs(',)1110 4299 y(assuming)d(there)g(is)h(a)f
 (single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
-b(alue)1110 956 y(is)30 b(`)p Fr(off)p Fs('.)630 1113
-y Fr(visible-stats)1110 1223 y Fs(If)h(set)i(to)f(`)p
+b(alue)1110 4408 y(is)30 b(`)p Fr(off)p Fs('.)630 4573
+y Fr(vi-cmd-mode-string)1110 4682 y Fs(This)f(string)h(is)f(displa)m(y)
+m(ed)i(immediately)g(b)s(efore)e(the)h(last)g(line)h(of)e(the)h(pri-)
+1110 4792 y(mary)21 b(prompt)g(when)f(vi)i(editing)g(mo)s(de)f(is)g
+(activ)m(e)j(and)d(in)g(command)g(mo)s(de.)1110 4902
+y(The)38 b(v)-5 b(alue)39 b(is)f(expanded)f(lik)m(e)j(a)f(k)m(ey)g
+(binding,)g(so)g(the)f(standard)g(set)h(of)1110 5011
+y(meta-)30 b(and)e(con)m(trol)i(pre\014xes)e(and)g(bac)m(kslash)h
+(escap)s(e)g(sequences)g(is)g(a)m(v)-5 b(ail-)1110 5121
+y(able.)50 b(Use)33 b(the)h(`)p Fr(\\1)p Fs(')f(and)g(`)p
+Fr(\\2)p Fs(')g(escap)s(es)g(to)h(b)s(egin)f(and)g(end)f(sequences)i
+(of)1110 5230 y(non-prin)m(ting)40 b(c)m(haracters,)45
+b(whic)m(h)40 b(can)g(b)s(e)g(used)g(to)h(em)m(b)s(ed)f(a)g(terminal)
+1110 5340 y(con)m(trol)32 b(sequence)f(in)m(to)g(the)f(mo)s(de)g
+(string.)41 b(The)30 b(default)h(is)f(`)p Fr(\(cmd\))p
+Fs('.)p eop end
+%%Page: 10 14
+TeXDict begin 10 13 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(10)630 299 y Fr
+(vi-ins-mode-string)1110 408 y Fs(This)29 b(string)h(is)f(displa)m(y)m
+(ed)i(immediately)g(b)s(efore)e(the)h(last)g(line)h(of)e(the)h(pri-)
+1110 518 y(mary)25 b(prompt)f(when)g(vi)h(editing)h(mo)s(de)e(is)i
+(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)1110 628
+y(The)38 b(v)-5 b(alue)39 b(is)f(expanded)f(lik)m(e)j(a)f(k)m(ey)g
+(binding,)g(so)g(the)f(standard)g(set)h(of)1110 737 y(meta-)30
+b(and)e(con)m(trol)i(pre\014xes)e(and)g(bac)m(kslash)h(escap)s(e)g
+(sequences)g(is)g(a)m(v)-5 b(ail-)1110 847 y(able.)50
+b(Use)33 b(the)h(`)p Fr(\\1)p Fs(')f(and)g(`)p Fr(\\2)p
+Fs(')g(escap)s(es)g(to)h(b)s(egin)f(and)g(end)f(sequences)i(of)1110
+956 y(non-prin)m(ting)40 b(c)m(haracters,)45 b(whic)m(h)40
+b(can)g(b)s(e)g(used)g(to)h(em)m(b)s(ed)f(a)g(terminal)1110
+1066 y(con)m(trol)32 b(sequence)f(in)m(to)g(the)f(mo)s(de)g(string.)41
+b(The)30 b(default)h(is)f(`)p Fr(\(ins\))p Fs('.)630
+1223 y Fr(visible-stats)1110 1332 y Fs(If)h(set)i(to)f(`)p
 Fr(on)p Fs(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
-(e)g(is)g(app)s(ended)e(to)j(the)1110 1332 y(\014lename)e(when)e
+(e)g(is)g(app)s(ended)e(to)j(the)1110 1442 y(\014lename)e(when)e
 (listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p
-Fr(off)p Fs('.)150 1489 y(Key)f(Bindings)630 1598 y(The)41
+Fr(off)p Fs('.)150 1598 y(Key)f(Bindings)630 1708 y(The)41
 b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g
 (init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630
-1708 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
+1817 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
 (y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 b(The)27 b(follo)m(wing)630
-1817 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
+1927 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
 (the)e(default)g(k)m(eybinding,)h(if)f(an)m(y)-8 b(,)630
-1927 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
-(do)s(es.)630 2060 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
+2037 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
+(do)s(es.)630 2170 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
 (the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g(the)g(init)630
-2170 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
+2279 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
 (bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)630
-2279 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+2389 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
 b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g
-(and)630 2389 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
+(and)630 2498 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
 (terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
-b(The)40 b(name)h(of)630 2498 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
+b(The)40 b(name)h(of)630 2608 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
 (expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
-(what)h(y)m(ou)g(\014nd)e(most)630 2608 y(comfortable.)630
-2741 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
+(what)h(y)m(ou)g(\014nd)e(most)630 2718 y(comfortable.)630
+2851 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
 (k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630
-2851 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
-(\(a)h Fi(macro)5 b Fs(\).)630 3007 y Fi(k)m(eyname)g
+2960 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
+(\(a)h Fi(macro)5 b Fs(\).)630 3117 y Fi(k)m(eyname)g
 Fs(:)42 b Fi(function-name)35 b Fs(or)c Fi(macro)1110
-3117 y(k)m(eyname)k Fs(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+3226 y(k)m(eyname)k Fs(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
 (elled)e(out)h(in)g(English.)39 b(F)-8 b(or)30 b(example:)1350
-3250 y Fr(Control-u:)45 b(universal-argument)1350 3360
-y(Meta-Rubout:)f(backward-kill-word)1350 3469 y(Control-o:)h(">)i
-(output")1110 3602 y Fs(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
+3360 y Fr(Control-u:)45 b(universal-argument)1350 3469
+y(Meta-Rubout:)f(backward-kill-word)1350 3579 y(Control-o:)h(">)i
+(output")1110 3712 y Fs(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
 b Fk(C-u)94 b Fs(is)g(b)s(ound)f(to)i(the)f(function)1110
-3712 y Fr(universal-argument)p Fs(,)124 b Fk(M-DEL)107
-b Fs(is)i(b)s(ound)e(to)j(the)f(function)1110 3821 y
+3821 y Fr(universal-argument)p Fs(,)124 b Fk(M-DEL)107
+b Fs(is)i(b)s(ound)e(to)j(the)f(function)1110 3931 y
 Fr(backward-kill-word)p Fs(,)75 b(and)69 b Fk(C-o)g Fs(is)h(b)s(ound)e
-(to)j(run)d(the)i(macro)1110 3931 y(expressed)45 b(on)h(the)g(righ)m(t)
+(to)j(run)d(the)i(macro)1110 4041 y(expressed)45 b(on)h(the)g(righ)m(t)
 g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
-Fr(>)1110 4041 y(output)p Fs(')29 b(in)m(to)i(the)g(line\).)1110
-4174 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
-(names)f(are)g(recognized)h(while)1110 4283 y(pro)s(cessing)40
+Fr(>)1110 4150 y(output)p Fs(')29 b(in)m(to)i(the)g(line\).)1110
+4283 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
+(names)f(are)g(recognized)h(while)1110 4393 y(pro)s(cessing)40
 b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fi(DEL)p
 Fs(,)42 b Fi(ESC)p Fs(,)g Fi(ESCAPE)p Fs(,)f Fi(LFD)p
-Fs(,)1110 4393 y Fi(NEWLINE)p Fs(,)31 b Fi(RET)p Fs(,)f
+Fs(,)1110 4502 y Fi(NEWLINE)p Fs(,)31 b Fi(RET)p Fs(,)f
 Fi(RETURN)p Fs(,)g Fi(R)m(UBOUT)p Fs(,)h Fi(SP)-8 b(A)m(CE)p
 Fs(,)31 b Fi(SPC)p Fs(,)e(and)h Fi(T)-8 b(AB)p Fs(.)630
-4549 y Fr(")p Fi(k)m(eyseq)r Fr(")p Fs(:)41 b Fi(function-name)36
-b Fs(or)30 b Fi(macro)1110 4659 y(k)m(eyseq)k Fs(di\013ers)d(from)f
+4659 y Fr(")p Fi(k)m(eyseq)r Fr(")p Fs(:)41 b Fi(function-name)36
+b Fs(or)30 b Fi(macro)1110 4769 y(k)m(eyseq)k Fs(di\013ers)d(from)f
 Fi(k)m(eyname)37 b Fs(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
-(denoting)g(an)g(en-)1110 4769 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
+(denoting)g(an)g(en-)1110 4878 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
 (e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)
-1110 4878 y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h
+1110 4988 y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h
 Fs(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
-1110 4988 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
-(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 5097 y(recognized.)1350
-5230 y Fr("\\C-u":)46 b(universal-argument)1350 5340
-y("\\C-x\\C-r":)f(re-read-init-file)p eop end
-%%Page: 10 14
-TeXDict begin 10 13 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(10)1350 299 y Fr("\\e[11~":)45
-b("Function)h(Key)g(1")1110 447 y Fs(In)64 b(the)g(ab)s(o)m(v)m(e)i
-(example,)74 b Fk(C-u)64 b Fs(is)g(again)i(b)s(ound)c(to)k(the)e
-(function)1110 556 y Fr(universal-argument)39 b Fs(\(just)k(as)h(it)g
-(w)m(as)g(in)g(the)f(\014rst)g(example\),)49 b(`)p Fk(C-x)1110
-666 y(C-r)p Fs(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
+1110 5097 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
+(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 5207 y(recognized.)1350
+5340 y Fr("\\C-u":)46 b(universal-argument)p eop end
+%%Page: 11 15
+TeXDict begin 11 14 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(11)1350 299 y Fr("\\C-x\\C-r":)45
+b(re-read-init-file)1350 408 y("\\e[11~":)g("Function)h(Key)g(1")1110
+553 y Fs(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74 b
+Fk(C-u)64 b Fs(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
+663 y Fr(universal-argument)39 b Fs(\(just)k(as)h(it)g(w)m(as)g(in)g
+(the)f(\014rst)g(example\),)49 b(`)p Fk(C-x)1110 773
+y(C-r)p Fs(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
 Fr(re-read-init-file)p Fs(,)c(and)j(`)p Fr(ESC)h([)g(1)g(1)1110
-775 y(~)p Fs(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Fr(Function)e(Key)g(1)p Fs('.)630 961 y(The)g(follo)m(wing)i
+882 y(~)p Fs(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Fr(Function)e(Key)g(1)p Fs('.)630 1063 y(The)g(follo)m(wing)i
 Fl(gnu)f Fs(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
-b(ailable)32 b(when)d(sp)s(ecifying)630 1071 y(k)m(ey)i(sequences:)630
-1257 y Fk(\\C-)336 b Fs(con)m(trol)32 b(pre\014x)630
-1443 y Fk(\\M-)336 b Fs(meta)31 b(pre\014x)630 1629 y
+b(ailable)32 b(when)d(sp)s(ecifying)630 1172 y(k)m(ey)i(sequences:)630
+1353 y Fk(\\C-)336 b Fs(con)m(trol)32 b(pre\014x)630
+1533 y Fk(\\M-)336 b Fs(meta)31 b(pre\014x)630 1714 y
 Fk(\\e)384 b Fs(an)30 b(escap)s(e)h(c)m(haracter)630
-1815 y Fk(\\\\)384 b Fs(bac)m(kslash)630 2001 y Fk(\\)p
+1894 y Fk(\\\\)384 b Fs(bac)m(kslash)630 2074 y Fk(\\)p
 Fr(")g(")p Fs(,)30 b(a)h(double)f(quotation)i(mark)630
-2186 y Fk(\\')384 b Fr(')p Fs(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 2372 y(In)d(addition)h(to)g(the)g Fl(gnu)f
+2255 y Fk(\\')384 b Fr(')p Fs(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 2435 y(In)d(addition)h(to)g(the)g Fl(gnu)f
 Fs(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
-(bac)m(kslash)630 2482 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-2668 y Fr(\\a)384 b Fs(alert)31 b(\(b)s(ell\))630 2854
-y Fr(\\b)384 b Fs(bac)m(kspace)630 3040 y Fr(\\d)g Fs(delete)630
-3226 y Fr(\\f)g Fs(form)30 b(feed)630 3412 y Fr(\\n)384
-b Fs(newline)630 3597 y Fr(\\r)g Fs(carriage)32 b(return)630
-3783 y Fr(\\t)384 b Fs(horizon)m(tal)32 b(tab)630 3969
-y Fr(\\v)384 b Fs(v)m(ertical)32 b(tab)630 4155 y Fr(\\)p
+(bac)m(kslash)630 2545 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+2725 y Fr(\\a)384 b Fs(alert)31 b(\(b)s(ell\))630 2906
+y Fr(\\b)384 b Fs(bac)m(kspace)630 3086 y Fr(\\d)g Fs(delete)630
+3267 y Fr(\\f)g Fs(form)30 b(feed)630 3447 y Fr(\\n)384
+b Fs(newline)630 3628 y Fr(\\r)g Fs(carriage)32 b(return)630
+3808 y Fr(\\t)384 b Fs(horizon)m(tal)32 b(tab)630 3989
+y Fr(\\v)384 b Fs(v)m(ertical)32 b(tab)630 4169 y Fr(\\)p
 Fk(nnn)288 b Fs(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fi(nnn)e
-Fs(\(one)i(to)1110 4265 y(three)c(digits\))630 4451 y
+Fs(\(one)i(to)1110 4279 y(three)c(digits\))630 4459 y
 Fr(\\x)p Fk(HH)288 b Fs(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e
 (v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39
-b Fi(HH)1110 4560 y Fs(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
-4746 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
+b Fi(HH)1110 4569 y Fs(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+4749 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
 (or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
-4856 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
+4859 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
-b(In)630 4965 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
+b(In)630 4968 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
-(are)e(expanded.)37 b(Bac)m(kslash)630 5075 y(will)j(quote)h(an)m(y)f
+(are)e(expanded.)37 b(Bac)m(kslash)630 5078 y(will)j(quote)h(an)m(y)f
 (other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
 b(`)p Fr(")p Fs(')h(and)g(`)p Fr(')p Fs('.)69 b(F)-8
-b(or)630 5185 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
+b(or)630 5187 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
 (mak)m(e)h(`)p Fk(C-x)j Fr(\\)p Fs(')c(insert)f(a)h(single)h(`)p
 Fr(\\)p Fs(')f(in)m(to)g(the)g(line:)870 5332 y Fr("\\C-x\\\\":)45
 b("\\\\")p eop end
-%%Page: 11 15
-TeXDict begin 11 14 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(11)150 299 y Fh(1.3.2)63
+%%Page: 12 16
+TeXDict begin 12 15 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(12)150 299 y Fh(1.3.2)63
 b(Conditional)41 b(Init)g(Constructs)150 446 y Fs(Readline)c(implemen)m
 (ts)g(a)h(facilit)m(y)g(similar)f(in)g(spirit)f(to)i(the)f(conditional)
 h(compilation)g(features)f(of)150 555 y(the)31 b(C)f(prepro)s(cessor)g
@@ -7653,9 +7703,9 @@ b(/etc/inputrc)150 4660 y Fh(1.3.3)63 b(Sample)41 b(Init)g(File)150
 Fs(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
 b(ariable)27 b(assignmen)m(t,)i(and)150 4917 y(conditional)j(syn)m
 (tax.)p eop end
-%%Page: 12 16
-TeXDict begin 12 15 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(12)390 408 y Fr(#)47
+%%Page: 13 17
+TeXDict begin 13 16 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(13)390 408 y Fr(#)47
 b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
 (editing)e(for)390 518 y(#)i(programs)f(that)h(use)g(the)f(GNU)h
 (Readline)f(library.)93 b(Existing)390 628 y(#)47 b(programs)f(include)
@@ -7684,9 +7734,9 @@ h(function)f(name)g(is)h(ignored)p 3970 2401 42 76 v
 4902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
 390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390
 5340 y(#"\\M-\\C-[C":)g(forward-char)p eop end
-%%Page: 13 17
-TeXDict begin 13 16 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(13)390 299 y Fr(#"\\M-\\C-[A":)331
+%%Page: 14 18
+TeXDict begin 14 17 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(14)390 299 y Fr(#"\\M-\\C-[A":)331
 b(previous-history)390 408 y(#"\\M-\\C-[B":)g(next-history)390
 628 y(C-q:)47 b(quoted-insert)390 847 y($endif)390 1066
 y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g(the)
@@ -7719,9 +7769,9 @@ y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
 (completions)e(for)390 5121 y(#)j(a)h(word,)e(ask)h(the)g(user)g(if)g
 (he)g(wants)f(to)i(see)f(all)f(of)i(them)390 5230 y(set)f
 (completion-query-items)42 b(150)p eop end
-%%Page: 14 18
-TeXDict begin 14 17 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(14)390 299 y Fr(#)47
+%%Page: 15 19
+TeXDict begin 15 18 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(15)390 299 y Fr(#)47
 b(For)g(FTP)390 408 y($if)g(Ftp)390 518 y("\\C-xg":)f("get)g(\\M-?")390
 628 y("\\C-xt":)g("put)g(\\M-?")390 737 y("\\M-.":)g(yank-last-arg)390
 847 y($endif)150 1077 y Fq(1.4)68 b(Bindable)45 b(Readline)i(Commands)
@@ -7767,9 +7817,9 @@ b(If)31 b(this)630 5073 y(line)g(is)f(a)h(mo)s(di\014ed)e(history)h
 (state.)150 5230 y Fr(previous-history)26 b(\(C-p\))630
 5340 y Fs(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g
 (fetc)m(hing)g(the)g(previous)f(command.)p eop end
-%%Page: 15 19
-TeXDict begin 15 18 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(15)150 299 y Fr(next-history)27
+%%Page: 16 20
+TeXDict begin 16 19 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(16)150 299 y Fr(next-history)27
 b(\(C-n\))630 408 y Fs(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
 (history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
 558 y Fr(beginning-of-history)25 b(\(M-<\))630 667 y
@@ -7782,26 +7832,30 @@ y Fs(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
 (line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
 1295 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
 (tal)i(searc)m(h.)150 1445 y Fr(forward-search-history)24
-b(\(C-s\))630 1554 y Fs(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
-(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')f(through)g(the)
-h(the)630 1664 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
+b(\(C-s\))630 1554 y Fs(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
+(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
+630 1664 y(history)30 b(as)h(necessary)-8 b(.)41 b(This)30
 b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 1813 y Fr
 (non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
 b(\(M-p\))630 1923 y Fs(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
 (the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
 (his-)630 2032 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
 (tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
-2142 y(user.)150 2291 y Fr(non-incremental-forward-)o(sear)o(ch-h)o
-(ist)o(ory)24 b(\(M-n\))630 2401 y Fs(Searc)m(h)30 b(forw)m(ard)f
-(starting)h(at)g(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')
-f(through)g(the)h(the)630 2511 y(history)d(as)f(necessary)i(using)e(a)h
-(non-incremen)m(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i
-(the)630 2620 y(user.)150 2770 y Fr(history-search-forward)d(\(\))630
-2879 y Fs(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
-(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
-2989 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m
-(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)
-630 3098 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
+2142 y(user.)k(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
+(ywhere)g(in)f(a)h(history)f(line.)150 2291 y Fr
+(non-incremental-forward-)o(sear)o(ch-h)o(ist)o(ory)24
+b(\(M-n\))630 2401 y Fs(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
+(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
+630 2511 y(history)27 b(as)f(necessary)i(using)e(a)h(non-incremen)m
+(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i(the)630
+2620 y(user.)40 b(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)
+m(ywhere)g(in)f(a)h(history)f(line.)150 2770 y Fr
+(history-search-forward)24 b(\(\))630 2879 y Fs(Searc)m(h)42
+b(forw)m(ard)f(through)f(the)i(history)f(for)g(the)h(string)f(of)h(c)m
+(haracters)h(b)s(et)m(w)m(een)f(the)630 2989 y(start)36
+b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)58
+b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
+3098 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
 b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
 b(By)33 b(default,)g(this)630 3208 y(command)d(is)h(un)m(b)s(ound.)150
 3357 y Fr(history-search-backward)24 b(\(\))630 3467
@@ -7833,9 +7887,9 @@ y Fs(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
 5340 y(on)32 b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46
 b(With)32 b(an)g(argumen)m(t)g Fi(n)p Fs(,)g(insert)g(the)g
 Fi(n)p Fs(th)f(w)m(ord)g(from)p eop end
-%%Page: 16 20
-TeXDict begin 16 19 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(16)630 299 y(the)35
+%%Page: 17 21
+TeXDict begin 17 20 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(17)630 299 y(the)35
 b(previous)f(command)h(\(the)g(w)m(ords)g(in)f(the)h(previous)g
 (command)f(b)s(egin)h(with)f(w)m(ord)630 408 y(0\).)69
 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
@@ -7843,368 +7897,379 @@ Fi(n)p Fs(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
 518 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fi(n)e
 Fs(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
 628 y(the)e(`)p Fr(!)p Fk(n)p Fs(')f(history)g(expansion)g(had)g(b)s
-(een)g(sp)s(eci\014ed.)150 798 y Fr(yank-last-arg)d(\(M-.)i(or)h(M-_\))
-630 908 y Fs(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)f
+(een)g(sp)s(eci\014ed.)150 775 y Fr(yank-last-arg)d(\(M-.)i(or)h(M-_\))
+630 885 y Fs(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)f
 (command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
-1018 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+994 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
 (t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Fr(yank-nth-arg)p
-Fs(.)630 1127 y(Successiv)m(e)26 b(calls)g(to)f Fr(yank-last-arg)c
+Fs(.)630 1104 y(Successiv)m(e)26 b(calls)g(to)f Fr(yank-last-arg)c
 Fs(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
-(inserting)630 1237 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+(inserting)630 1214 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
 s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
-(of)f(eac)m(h)h(line)630 1346 y(in)36 b(turn.)58 b(An)m(y)36
+(of)f(eac)m(h)h(line)630 1323 y(in)36 b(turn.)58 b(An)m(y)36
 b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
-(calls)h(determines)630 1456 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(calls)h(determines)630 1433 y(the)d(direction)g(to)h(mo)m(v)m(e)g
 (through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
-(switc)m(hes)h(the)630 1565 y(direction)23 b(through)g(the)g(history)f
+(switc)m(hes)h(the)630 1542 y(direction)23 b(through)g(the)g(history)f
 (\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
-(facilities)630 1675 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
+(facilities)630 1652 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
 (argumen)m(t,)h(as)e(if)h(the)g(`)p Fr(!$)p Fs(')f(history)g(expansion)
-h(had)f(b)s(een)630 1785 y(sp)s(eci\014ed.)150 1995 y
+h(had)f(b)s(een)630 1762 y(sp)s(eci\014ed.)150 1949 y
 Fh(1.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
-b(ext)150 2173 y Fk(end-of-file)27 b Fr(\(usually)h(C-d\))630
-2282 y Fs(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
+b(ext)150 2115 y Fk(end-of-file)27 b Fr(\(usually)h(C-d\))630
+2225 y Fs(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
 (for)f(example,)i(b)m(y)e Fr(stty)p Fs(.)39 b(If)25 b(this)h(c)m
-(harac-)630 2392 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
+(harac-)630 2334 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
 (haracters)j(on)d(the)h(line,)i(and)d(p)s(oin)m(t)h(is)g(at)h(the)f(b)s
-(eginning)630 2501 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
+(eginning)630 2444 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
 (it)g(as)f(the)h(end)f(of)g(input)f(and)h(returns)f Fl(eof)p
-Fs(.)150 2672 y Fr(delete-char)e(\(C-d\))630 2782 y Fs(Delete)35
+Fs(.)150 2591 y Fr(delete-char)e(\(C-d\))630 2701 y Fs(Delete)35
 b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
-(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2891
+(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2811
 y(as)e(the)f(tt)m(y)i Fl(eof)d Fs(c)m(haracter,)j(as)f
 Fk(C-d)e Fs(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
-(e\013ects.)150 3062 y Fr(backward-delete-char)25 b(\(Rubout\))630
-3172 y Fs(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
+(e\013ects.)150 2958 y Fr(backward-delete-char)25 b(\(Rubout\))630
+3068 y Fs(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
 b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
-3281 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-3452 y Fr(forward-backward-delete-)o(char)24 b(\(\))630
-3561 y Fs(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+3177 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
+3325 y Fr(forward-backward-delete-)o(char)24 b(\(\))630
+3434 y Fs(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
 (unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
-3671 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
+3544 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
 (ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
-3781 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-3951 y Fr(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 4061
+3654 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+3801 y Fr(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 3911
 y Fs(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
 (v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
-4170 y(sequences)d(lik)m(e)g Fk(C-q)p Fs(,)f(for)g(example.)150
-4341 y Fr(tab-insert)e(\(M-TAB\))630 4451 y Fs(Insert)i(a)h(tab)f(c)m
-(haracter.)150 4621 y Fr(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
-(\))630 4731 y Fs(Insert)g(y)m(ourself.)150 4902 y Fr(transpose-chars)c
-(\(C-t\))630 5011 y Fs(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
+4020 y(sequences)d(lik)m(e)g Fk(C-q)p Fs(,)f(for)g(example.)150
+4168 y Fr(tab-insert)e(\(M-TAB\))630 4278 y Fs(Insert)i(a)h(tab)f(c)m
+(haracter.)150 4425 y Fr(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
+(\))630 4535 y Fs(Insert)g(y)m(ourself.)150 4682 y Fr
+(bracketed-paste-begin)25 b(\(\))630 4792 y Fs(This)f(function)h(is)f
+(in)m(tended)h(to)h(b)s(e)e(b)s(ound)f(to)i(the)g Fr(")p
+Fs(brac)m(k)m(eted)h(paste)p Fr(")f Fs(escap)s(e)h(sequence)630
+4902 y(sen)m(t)38 b(b)m(y)f(some)h(terminals,)i(and)d(suc)m(h)g(a)h
+(binding)e(is)i(assigned)f(b)m(y)h(default.)62 b(It)38
+b(allo)m(ws)630 5011 y(Readline)33 b(to)g(insert)g(the)f(pasted)h(text)
+g(as)g(a)g(single)g(unit)f(without)h(treating)h(eac)m(h)f(c)m(har-)630
+5121 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h(from)f(the)h(k)
+m(eyb)s(oard.)66 b(The)39 b(c)m(haracters)h(are)f(inserted)630
+5230 y(as)i(if)g(eac)m(h)i(one)e(w)m(as)h(b)s(ound)d(to)i
+Fr(self-insert)p Fs(\))e(instead)i(of)h(executing)g(an)m(y)f(editing)
+630 5340 y(commands.)p eop end
+%%Page: 18 22
+TeXDict begin 18 21 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fr(transpose-chars)26
+b(\(C-t\))630 408 y Fs(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
 (cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
-(cursor,)630 5121 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
+(cursor,)630 518 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
 (ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e(end)
-g(of)h(the)630 5230 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
+g(of)h(the)630 628 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
 (last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
-b(Negativ)m(e)25 b(argumen)m(ts)630 5340 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)p eop end
-%%Page: 17 21
-TeXDict begin 17 20 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fr(transpose-words)26
-b(\(M-t\))630 408 y Fs(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m
-(t)g(past)g(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)
-m(t)f(past)g(that)630 518 y(w)m(ord)c(as)h(w)m(ell.)41
-b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
-(the)f(line,)i(this)e(transp)s(oses)g(the)630 628 y(last)j(t)m(w)m(o)h
-(w)m(ords)e(on)g(the)h(line.)150 792 y Fr(upcase-word)c(\(M-u\))630
-902 y Fs(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+b(Negativ)m(e)25 b(argumen)m(ts)630 737 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)150 907 y Fr(transpose-words)c(\(M-t\))630
+1016 y Fs(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
+(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)
+g(that)630 1126 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
+b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i(the)f
+(line,)i(this)e(transp)s(oses)g(the)630 1236 y(last)j(t)m(w)m(o)h(w)m
+(ords)e(on)g(the)h(line.)150 1405 y Fr(upcase-word)c(\(M-u\))630
+1515 y Fs(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
 (w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
-1012 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
-(the)e(cursor.)150 1176 y Fr(downcase-word)d(\(M-l\))630
-1286 y Fs(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+1624 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
+(the)e(cursor.)150 1794 y Fr(downcase-word)d(\(M-l\))630
+1904 y Fs(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
 (w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
-(ercase)630 1396 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
-(v)m(e)i(the)f(cursor.)150 1560 y Fr(capitalize-word)26
-b(\(M-c\))630 1670 y Fs(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(ercase)630 2013 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
+(v)m(e)i(the)f(cursor.)150 2183 y Fr(capitalize-word)26
+b(\(M-c\))630 2292 y Fs(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
 (wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
-(capitalize)630 1780 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
-(mo)m(v)m(e)i(the)f(cursor.)150 1944 y Fr(overwrite-mode)26
-b(\(\))630 2054 y Fs(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(capitalize)630 2402 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
+(mo)m(v)m(e)i(the)f(cursor.)150 2571 y Fr(overwrite-mode)26
+b(\(\))630 2681 y Fs(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
 b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
-h(switc)m(hes)630 2163 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
+h(switc)m(hes)630 2791 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
 b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
-(t,)i(switc)m(hes)e(to)630 2273 y(insert)30 b(mo)s(de.)41
+(t,)i(switc)m(hes)e(to)630 2900 y(insert)30 b(mo)s(de.)41
 b(This)30 b(command)h(a\013ects)h(only)e Fr(emacs)f Fs(mo)s(de;)i
-Fr(vi)f Fs(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 2383
+Fr(vi)f Fs(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 3010
 y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
 Fr(readline\(\))c Fs(starts)k(in)f(insert)g(mo)s(de.)630
-2520 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
+3149 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
 (ound)c(to)j Fr(self-insert)c Fs(replace)k(the)g(text)g(at)630
-2629 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
+3259 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
 (the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
-2739 y Fr(backward-delete-char)25 b Fs(replace)31 b(the)g(c)m(haracter)
-h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 2876
+3369 y Fr(backward-delete-char)25 b Fs(replace)31 b(the)g(c)m(haracter)
+h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 3508
 y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
-3081 y Fh(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
-3255 y Fr(kill-line)28 b(\(C-k\))630 3365 y Fs(Kill)j(the)f(text)i
+3718 y Fh(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+3895 y Fr(kill-line)28 b(\(C-k\))630 4004 y Fs(Kill)j(the)f(text)i
 (from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f(line.)150
-3530 y Fr(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
-3639 y Fs(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s(eginning)g(of)g(the)h
-(line.)150 3804 y Fr(unix-line-discard)26 b(\(C-u\))630
-3914 y Fs(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f
-(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4079
-y Fr(kill-whole-line)c(\(\))630 4188 y Fs(Kill)37 b(all)g(c)m
-(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g(where)f(p)s
-(oin)m(t)h(is.)59 b(By)36 b(default,)630 4298 y(this)30
-b(is)h(un)m(b)s(ound.)150 4462 y Fr(kill-word)d(\(M-d\))630
-4572 y Fs(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
-(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
-(the)g(end)630 4682 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
-b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Fr(forward-word)p
-Fs(.)150 4846 y Fr(backward-kill-word)25 b(\(M-DEL\))630
-4956 y Fs(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
-b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
-Fr(backward-word)p Fs(.)150 5121 y Fr(unix-word-rubout)d(\(C-w\))630
-5230 y Fs(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
-(white)h(space)g(as)g(a)g(w)m(ord)f(b)s(oundary)-8 b(.)43
-b(The)31 b(killed)630 5340 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
-(kill-ring.)p eop end
-%%Page: 18 22
-TeXDict begin 18 21 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fr
-(unix-filename-rubout)25 b(\(\))630 408 y Fs(Kill)37
-b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e(white)g(space)h
-(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630 518
-y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g(sa)m
-(v)m(ed)g(on)g(the)f(kill-ring.)150 693 y Fr(delete-horizontal-space)24
-b(\(\))630 803 y Fs(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)
-s(oin)m(t.)41 b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150
-978 y Fr(kill-region)d(\(\))630 1088 y Fs(Kill)k(the)f(text)i(in)e(the)
-g(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g
-(un)m(b)s(ound.)150 1263 y Fr(copy-region-as-kill)25
-b(\(\))630 1373 y Fs(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h
-(the)f(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m
-(t)f(a)m(w)m(a)m(y)-8 b(.)630 1482 y(By)31 b(default,)f(this)h(command)
-f(is)g(un)m(b)s(ound.)150 1657 y Fr(copy-backward-word)25
-b(\(\))630 1767 y Fs(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
+4174 y Fr(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+4283 y Fs(Kill)h(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f(b)s
+(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4453 y
+Fr(unix-line-discard)c(\(C-u\))630 4562 y Fs(Kill)31
+b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f(b)s(eginning)g(of)h
+(the)f(curren)m(t)g(line.)150 4732 y Fr(kill-whole-line)c(\(\))630
+4842 y Fs(Kill)37 b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h
+(line,)h(no)f(matter)g(where)f(p)s(oin)m(t)h(is.)59 b(By)36
+b(default,)630 4951 y(this)30 b(is)h(un)m(b)s(ound.)150
+5121 y Fr(kill-word)d(\(M-d\))630 5230 y Fs(Kill)i(from)f(p)s(oin)m(t)g
+(to)h(the)g(end)e(of)i(the)f(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m
+(w)m(een)g(w)m(ords,)f(to)h(the)g(end)630 5340 y(of)h(the)f(next)h(w)m
+(ord.)40 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f
+Fr(forward-word)p Fs(.)p eop end
+%%Page: 19 23
+TeXDict begin 19 22 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fr
+(backward-kill-word)25 b(\(M-DEL\))630 408 y Fs(Kill)k(the)g(w)m(ord)g
+(b)s(ehind)e(p)s(oin)m(t.)40 b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h
+(the)g(same)g(as)g Fr(backward-word)p Fs(.)150 577 y
+Fr(unix-word-rubout)d(\(C-w\))630 686 y Fs(Kill)32 b(the)g(w)m(ord)f(b)
+s(ehind)f(p)s(oin)m(t,)i(using)f(white)h(space)g(as)g(a)g(w)m(ord)f(b)s
+(oundary)-8 b(.)43 b(The)31 b(killed)630 796 y(text)g(is)g(sa)m(v)m(ed)
+g(on)g(the)f(kill-ring.)150 964 y Fr(unix-filename-rubout)25
+b(\(\))630 1073 y Fs(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m
+(t,)j(using)e(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f
+(the)630 1183 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30
+b(killed)h(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150
+1351 y Fr(delete-horizontal-space)24 b(\(\))630 1461
+y Fs(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
+b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 1629
+y Fr(kill-region)d(\(\))630 1738 y Fs(Kill)k(the)f(text)i(in)e(the)g
+(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
+m(b)s(ound.)150 1906 y Fr(copy-region-as-kill)25 b(\(\))630
+2016 y Fs(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
+(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)f
+(a)m(w)m(a)m(y)-8 b(.)630 2125 y(By)31 b(default,)f(this)h(command)f
+(is)g(un)m(b)s(ound.)150 2293 y Fr(copy-backward-word)25
+b(\(\))630 2403 y Fs(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
 (t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
-f(are)i(the)630 1877 y(same)31 b(as)f Fr(backward-word)p
+f(are)i(the)630 2513 y(same)31 b(as)f Fr(backward-word)p
 Fs(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
-2052 y Fr(copy-forward-word)26 b(\(\))630 2161 y Fs(Cop)m(y)31
+2681 y Fr(copy-forward-word)26 b(\(\))630 2790 y Fs(Cop)m(y)31
 b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
 (bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
-2271 y(same)f(as)f Fr(forward-word)p Fs(.)38 b(By)30
+2900 y(same)f(as)f Fr(forward-word)p Fs(.)38 b(By)30
 b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
-2446 y Fr(yank)f(\(C-y\))630 2556 y Fs(Y)-8 b(ank)31
+3068 y Fr(yank)f(\(C-y\))630 3177 y Fs(Y)-8 b(ank)31
 b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
-(p)s(oin)m(t.)150 2731 y Fr(yank-pop)d(\(M-y\))630 2841
+(p)s(oin)m(t.)150 3346 y Fr(yank-pop)d(\(M-y\))630 3455
 y Fs(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
 b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
-2950 y(command)30 b(is)h Fr(yank)e Fs(or)h Fr(yank-pop)p
-Fs(.)150 3165 y Fh(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
-(ts)150 3345 y Fr(digit-argument)26 b(\()p Fk(M-0)p Fr(,)j
-Fk(M-1)p Fr(,)h(...)f Fk(M--)p Fr(\))630 3455 y Fs(Add)d(this)h(digit)g
+3565 y(command)30 b(is)h Fr(yank)e Fs(or)h Fr(yank-pop)p
+Fs(.)150 3773 y Fh(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 3949 y Fr(digit-argument)26 b(\()p Fk(M-0)p Fr(,)j
+Fk(M-1)p Fr(,)h(...)f Fk(M--)p Fr(\))630 4058 y Fs(Add)d(this)h(digit)g
 (to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
-(new)f(argumen)m(t.)630 3564 y Fk(M--)j Fs(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 3740 y Fr(universal-argument)25 b(\(\))630
-3849 y Fs(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
+(new)f(argumen)m(t.)630 4168 y Fk(M--)j Fs(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 4336 y Fr(universal-argument)25 b(\(\))630
+4446 y Fs(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
 (argumen)m(t.)40 b(If)25 b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m
-(y)f(one)630 3959 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
+(y)f(one)630 4555 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
 (leading)h(min)m(us)e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630
-4068 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+4665 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
 m(y)f(digits,)i(executing)f Fr(universal-argument)630
-4178 y Fs(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+4774 y Fs(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
 (otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
-4288 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+4884 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
 d(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
-4397 y(or)28 b(min)m(us)f(sign,)i(the)f(argumen)m(t)g(coun)m(t)h(for)e
-(the)i(next)f(command)f(is)h(m)m(ultiplied)h(b)m(y)e(four.)630
-4507 y(The)37 b(argumen)m(t)h(coun)m(t)f(is)h(initially)h(one,)g(so)f
-(executing)g(this)f(function)g(the)h(\014rst)e(time)630
-4616 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
-(time)i(mak)m(es)f(the)g(argumen)m(t)g(coun)m(t)h(six-)630
-4726 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
-(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 4941 y Fh(1.4.6)63
+4994 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
+(the)h(next)f(command)g(is)g(m)m(ultiplied)h(b)m(y)630
+5103 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
+(one,)h(so)e(executing)i(this)e(function)f(the)i(\014rst)630
+5213 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
+(second)g(time)g(mak)m(es)h(the)e(argumen)m(t)h(coun)m(t)630
+5322 y(sixteen,)i(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g
+(not)h(b)s(ound)d(to)k(a)e(k)m(ey)-8 b(.)p eop end
+%%Page: 20 24
+TeXDict begin 20 23 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fh(1.4.6)63
 b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
-b(Y)-10 b(ou)150 5121 y Fr(complete)28 b(\(TAB\))630
-5230 y Fs(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
-(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
-5340 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
-b(The)30 b(default)h(is)f(\014lename)h(completion.)p
-eop end
-%%Page: 19 23
-TeXDict begin 19 22 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fr
-(possible-completions)25 b(\(M-?\))630 408 y Fs(List)35
-b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
-(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 518
-y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
-(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
-b(of)630 628 y Fr(completion-display-width)o Fs(,)g(the)j(v)-5
-b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
-b Fr(COLUMNS)p Fs(,)630 737 y(or)30 b(the)h(screen)f(width,)g(in)g
-(that)h(order.)150 883 y Fr(insert-completions)25 b(\(M-*\))630
-992 y Fs(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
-(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
-1102 y(b)m(y)g Fr(possible-completions)p Fs(.)150 1247
-y Fr(menu-complete)d(\(\))630 1357 y Fs(Similar)d(to)g
+b(Y)-10 b(ou)150 483 y Fr(complete)28 b(\(TAB\))630 593
+y Fs(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g(b)s
+(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
+702 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
+b(The)30 b(default)h(is)f(\014lename)h(completion.)150
+886 y Fr(possible-completions)25 b(\(M-?\))630 996 y
+Fs(List)35 b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s
+(efore)e(p)s(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630
+1105 y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i
+(columns)f(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5
+b(alue)33 b(of)630 1215 y Fr(completion-display-width)o
+Fs(,)g(the)j(v)-5 b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5
+b(ariable)38 b Fr(COLUMNS)p Fs(,)630 1325 y(or)30 b(the)h(screen)f
+(width,)g(in)g(that)h(order.)150 1509 y Fr(insert-completions)25
+b(\(M-*\))630 1618 y Fs(Insert)30 b(all)h(completions)h(of)f(the)g
+(text)g(b)s(efore)f(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s
+(een)e(generated)630 1728 y(b)m(y)g Fr(possible-completions)p
+Fs(.)150 1912 y Fr(menu-complete)d(\(\))630 2021 y Fs(Similar)d(to)g
 Fr(complete)p Fs(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
-(completed)i(with)e(a)i(single)f(matc)m(h)630 1466 y(from)37
+(completed)i(with)e(a)i(single)f(matc)m(h)630 2131 y(from)37
 b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
-b(execution)g(of)f Fr(menu-complete)630 1576 y Fs(steps)i(through)g
+b(execution)g(of)f Fr(menu-complete)630 2241 y Fs(steps)i(through)g
 (the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
-(matc)m(h)f(in)f(turn.)630 1685 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
+(matc)m(h)f(in)f(turn.)630 2350 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
 (of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
-b(ject)36 b(to)i(the)f(setting)630 1795 y(of)f Fr(bell-style)p
+b(ject)36 b(to)i(the)f(setting)630 2460 y(of)f Fr(bell-style)p
 Fs(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
 b(An)36 b(argumen)m(t)h(of)f Fi(n)f Fs(mo)m(v)m(es)i
-Fi(n)630 1905 y Fs(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+Fi(n)630 2569 y Fs(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
 (matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
-(used)g(to)630 2014 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
+(used)g(to)630 2679 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
 (list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
-(ound)e(to)630 2124 y Fr(TAB)p Fs(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
-(y)i(default.)150 2269 y Fr(menu-complete-backward)24
-b(\(\))630 2379 y Fs(Iden)m(tical)36 b(to)g Fr(menu-complete)p
+(ound)e(to)630 2789 y Fr(TAB)p Fs(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 2973 y Fr(menu-complete-backward)24
+b(\(\))630 3082 y Fs(Iden)m(tical)36 b(to)g Fr(menu-complete)p
 Fs(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
-(p)s(ossible)630 2488 y(completions,)d(as)e(if)h Fr(menu-complete)26
+(p)s(ossible)630 3192 y(completions,)d(as)e(if)h Fr(menu-complete)26
 b Fs(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
-2634 y Fr(delete-char-or-list)25 b(\(\))630 2743 y Fs(Deletes)41
+3376 y Fr(delete-char-or-list)25 b(\(\))630 3485 y Fs(Deletes)41
 b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
-(eginning)e(or)h(end)f(of)h(the)630 2853 y(line)50 b(\(lik)m(e)h
+(eginning)e(or)h(end)f(of)h(the)630 3595 y(line)50 b(\(lik)m(e)h
 Fr(delete-char)p Fs(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
-55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 2963
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 3705
 y Fr(possible-completions)p Fs(.)35 b(This)30 b(command)g(is)g(un)m(b)s
-(ound)e(b)m(y)i(default.)150 3148 y Fh(1.4.7)63 b(Keyb)s(oard)41
-b(Macros)150 3313 y Fr(start-kbd-macro)26 b(\(C-x)j(\(\))630
-3422 y Fs(Begin)i(sa)m(ving)h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m
+(ound)e(b)m(y)i(default.)150 3928 y Fh(1.4.7)63 b(Keyb)s(oard)41
+b(Macros)150 4113 y Fr(start-kbd-macro)26 b(\(C-x)j(\(\))630
+4222 y Fs(Begin)i(sa)m(ving)h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m
 (to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)g(macro.)150
-3568 y Fr(end-kbd-macro)d(\(C-x)i(\)\))630 3677 y Fs(Stop)e(sa)m(ving)h
+4406 y Fr(end-kbd-macro)d(\(C-x)i(\)\))630 4516 y Fs(Stop)e(sa)m(ving)h
 (the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m(to)i(the)e(curren)m(t)g(k)m
-(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 3787
-y(de\014nition.)150 3932 y Fr(call-last-kbd-macro)c(\(C-x)k(e\))630
-4042 y Fs(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)f(macro)h
+(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 4625
+y(de\014nition.)150 4809 y Fr(call-last-kbd-macro)c(\(C-x)k(e\))630
+4919 y Fs(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)f(macro)h
 (de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)630
-4151 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s
-(oard.)150 4297 y Fr(print-last-kbd-macro)25 b(\(\))630
-4406 y Fs(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
+5029 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s
+(oard.)150 5213 y Fr(print-last-kbd-macro)25 b(\(\))630
+5322 y Fs(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
 e(in)i(a)f(format)h(suitable)g(for)f(the)h Fi(inputrc)k
-Fs(\014le.)150 4591 y Fh(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
-150 4756 y Fr(re-read-init-file)26 b(\(C-x)j(C-r\))630
-4866 y Fs(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
-Fi(inputrc)27 b Fs(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
-(or)i(v)-5 b(ariable)630 4975 y(assignmen)m(ts)31 b(found)e(there.)150
-5121 y Fr(abort)g(\(C-g\))630 5230 y Fs(Ab)s(ort)d(the)h(curren)m(t)f
-(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
-b(ject)26 b(to)i(the)630 5340 y(setting)j(of)g Fr(bell-style)p
-Fs(\).)p eop end
-%%Page: 20 24
-TeXDict begin 20 23 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fr
-(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p Fk(x)p
-Fr(,)g(...)o(\))630 408 y Fs(If)e(the)h(meta\014ed)g(c)m(haracter)h
+Fs(\014le.)p eop end
+%%Page: 21 25
+TeXDict begin 21 24 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fh(1.4.8)63
+b(Some)41 b(Miscellaneous)i(Commands)150 466 y Fr(re-read-init-file)26
+b(\(C-x)j(C-r\))630 576 y Fs(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f
+(the)g Fi(inputrc)27 b Fs(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h
+(bindings)d(or)i(v)-5 b(ariable)630 685 y(assignmen)m(ts)31
+b(found)e(there.)150 836 y Fr(abort)g(\(C-g\))630 945
+y Fs(Ab)s(ort)d(the)h(curren)m(t)f(editing)h(command)f(and)g(ring)h
+(the)f(terminal's)h(b)s(ell)g(\(sub)5 b(ject)26 b(to)i(the)630
+1055 y(setting)j(of)g Fr(bell-style)p Fs(\).)150 1205
+y Fr(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p Fk(x)p
+Fr(,)g(...)o(\))630 1315 y Fs(If)e(the)h(meta\014ed)g(c)m(haracter)h
 Fi(x)34 b Fs(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g(command)h(that)g
-(is)g(b)s(ound)d(to)k(the)630 518 y(corresp)s(onding)g(upp)s(ercase)h
-(c)m(haracter.)150 667 y Fr(prefix-meta)d(\(ESC\))630
-777 y Fs(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
+(is)g(b)s(ound)d(to)k(the)630 1425 y(corresp)s(onding)g(upp)s(ercase)h
+(c)m(haracter.)150 1575 y Fr(prefix-meta)d(\(ESC\))630
+1685 y Fs(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
 b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f(without)g(a)h(meta)g(k)m(ey)-8
-b(.)630 887 y(T)m(yping)30 b(`)p Fr(ESC)g(f)p Fs(')g(is)h(equiv)-5
-b(alen)m(t)31 b(to)g(t)m(yping)g Fk(M-f)p Fs(.)150 1036
-y Fr(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 1146 y Fs(Incremen)m(tal)h
+b(.)630 1794 y(T)m(yping)30 b(`)p Fr(ESC)g(f)p Fs(')g(is)h(equiv)-5
+b(alen)m(t)31 b(to)g(t)m(yping)g Fk(M-f)p Fs(.)150 1945
+y Fr(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 2054 y Fs(Incremen)m(tal)h
 (undo,)f(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-1295 y Fr(revert-line)27 b(\(M-r\))630 1405 y Fs(Undo)33
+2205 y Fr(revert-line)27 b(\(M-r\))630 2314 y Fs(Undo)33
 b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 b(This)32
 b(is)h(lik)m(e)i(executing)f(the)f Fr(undo)f Fs(command)630
-1514 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 1664 y Fr(tilde-expand)d(\(M-~\))630 1773 y Fs(P)m(erform)j(tilde)h
-(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 1923
-y Fr(set-mark)d(\(C-@\))630 2032 y Fs(Set)33 b(the)g(mark)f(to)i(the)f
+2424 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
+150 2574 y Fr(tilde-expand)d(\(M-~\))630 2684 y Fs(P)m(erform)j(tilde)h
+(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 2834
+y Fr(set-mark)d(\(C-@\))630 2944 y Fs(Set)33 b(the)g(mark)f(to)i(the)f
 (p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
-(supplied,)f(the)h(mark)g(is)f(set)630 2142 y(to)f(that)g(p)s(osition.)
-150 2291 y Fr(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
-2401 y Fs(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
+(supplied,)f(the)h(mark)g(is)f(set)630 3054 y(to)f(that)g(p)s(osition.)
+150 3204 y Fr(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
+3314 y Fs(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
 b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f(set)h(to)f(the)h
-(sa)m(v)m(ed)630 2511 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
-(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 2660
-y Fr(character-search)26 b(\(C-]\))630 2770 y Fs(A)f(c)m(haracter)h(is)
+(sa)m(v)m(ed)630 3423 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
+(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 3574
+y Fr(character-search)26 b(\(C-]\))630 3683 y Fs(A)f(c)m(haracter)h(is)
 f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
-(ccurrence)g(of)g(that)g(c)m(haracter.)630 2879 y(A)30
+(ccurrence)g(of)g(that)g(c)m(haracter.)630 3793 y(A)30
 b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 3029 y Fr(character-search-backwar)o(d)24
-b(\(M-C-]\))630 3138 y Fs(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 3943 y Fr(character-search-backwar)o(d)24
+b(\(M-C-]\))630 4053 y Fs(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
 (oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
-g(that)630 3248 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
+g(that)630 4162 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
 (searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
-3397 y Fr(skip-csi-sequence)d(\(\))630 3507 y Fs(Read)i(enough)f(c)m
+4313 y Fr(skip-csi-sequence)d(\(\))630 4422 y Fs(Read)i(enough)f(c)m
 (haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
-(as)g(those)h(de\014ned)630 3616 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
+(as)g(those)h(de\014ned)630 4532 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
 (and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
-(trol)g(Sequence)630 3726 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
+(trol)g(Sequence)630 4642 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
 b(If)36 b(this)g(sequence)h(is)g(b)s(ound)d(to)k Fr("\\)p
-Fs(e[)p Fr(")p Fs(,)g(k)m(eys)f(pro-)630 3836 y(ducing)31
+Fs(e[)p Fr(")p Fs(,)g(k)m(eys)f(pro-)630 4751 y(ducing)31
 b(suc)m(h)h(sequences)g(will)h(ha)m(v)m(e)g(no)f(e\013ect)h(unless)e
-(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 3945 y(command,)f
+(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 4861 y(command,)f
 (instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g(in)m(to)g(the)f
-(editing)h(bu\013er.)44 b(This)31 b(is)630 4055 y(un)m(b)s(ound)d(b)m
+(editing)h(bu\013er.)44 b(This)31 b(is)630 4970 y(un)m(b)s(ound)d(b)m
 (y)i(default,)h(but)f(usually)g(b)s(ound)e(to)j(ESC-[.)150
-4204 y Fr(insert-comment)26 b(\(M-#\))630 4314 y Fs(Without)36
+5121 y Fr(insert-comment)26 b(\(M-#\))630 5230 y Fs(Without)36
 b(a)g(n)m(umeric)g(argumen)m(t,)h(the)f(v)-5 b(alue)36
 b(of)g(the)g Fr(comment-begin)c Fs(v)-5 b(ariable)36
-b(is)g(in-)630 4423 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
+b(is)g(in-)630 5340 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
 (curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
-(supplied,)630 4533 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
-b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g
-(line)630 4643 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
-b(alue)31 b(of)f Fr(comment-begin)p Fs(,)e(the)i(v)-5
-b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4752
-y(c)m(haracters)42 b(in)d Fr(comment-begin)e Fs(are)j(deleted)h(from)f
-(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4862
-y(either)31 b(case,)h(the)e(line)h(is)f(accepted)i(as)f(if)f(a)h
-(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 5011 y Fr(dump-functions)d
-(\(\))630 5121 y Fs(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
-(their)g(k)m(ey)h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
-5230 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
+(supplied,)p eop end
+%%Page: 22 26
+TeXDict begin 22 25 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(22)630 299 y(this)36
+b(command)h(acts)g(as)g(a)g(toggle:)55 b(if)37 b(the)f(c)m(haracters)i
+(at)g(the)e(b)s(eginning)g(of)h(the)g(line)630 408 y(do)30
+b(not)h(matc)m(h)h(the)f(v)-5 b(alue)31 b(of)f Fr(comment-begin)p
+Fs(,)e(the)i(v)-5 b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630
+518 y(c)m(haracters)42 b(in)d Fr(comment-begin)e Fs(are)j(deleted)h
+(from)f(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630
+628 y(either)31 b(case,)h(the)e(line)h(is)f(accepted)i(as)f(if)f(a)h
+(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 787 y Fr(dump-functions)d
+(\(\))630 897 y Fs(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g(their)
+g(k)m(ey)h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
+1006 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
 (output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
-5340 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fi(inputrc)k
+1116 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fi(inputrc)k
 Fs(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
-(default.)p eop end
-%%Page: 21 25
-TeXDict begin 21 24 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fr(dump-variables)26
-b(\(\))630 408 y Fs(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+(default.)150 1275 y Fr(dump-variables)26 b(\(\))630
+1385 y Fs(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
 b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(Readline)h
-(output)f(stream.)630 518 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
-(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m
-(y)g(that)630 628 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
+(output)f(stream.)630 1494 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)
+g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)
+m(y)g(that)630 1604 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
 Fi(inputrc)k Fs(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
-(b)m(y)k(default.)150 787 y Fr(dump-macros)c(\(\))630
-897 y Fs(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f
-(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
-1006 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
+(b)m(y)k(default.)150 1763 y Fr(dump-macros)c(\(\))630
+1873 y Fs(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)
+f(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
+1983 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
 (supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
-1116 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
+2092 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
 Fi(inputrc)35 b Fs(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
-d(b)m(y)630 1225 y(default.)150 1385 y Fr(emacs-editing-mode)e(\(C-e\))
-630 1494 y Fs(When)30 b(in)g Fr(vi)g Fs(command)g(mo)s(de,)g(this)h
+d(b)m(y)630 2202 y(default.)150 2361 y Fr(emacs-editing-mode)e(\(C-e\))
+630 2471 y Fs(When)30 b(in)g Fr(vi)g Fs(command)g(mo)s(de,)g(this)h
 (causes)f(a)h(switc)m(h)g(to)g Fr(emacs)e Fs(editing)i(mo)s(de.)150
-1654 y Fr(vi-editing-mode)26 b(\(M-C-j\))630 1763 y Fs(When)k(in)g
+2630 y Fr(vi-editing-mode)26 b(\(M-C-j\))630 2740 y Fs(When)k(in)g
 Fr(emacs)f Fs(editing)i(mo)s(de,)f(this)h(causes)f(a)h(switc)m(h)g(to)g
-Fr(vi)f Fs(editing)h(mo)s(de.)150 1996 y Fq(1.5)68 b(Readline)47
-b(vi)e(Mo)t(de)150 2155 y Fs(While)32 b(the)g(Readline)g(library)f(do)s
+Fr(vi)f Fs(editing)h(mo)s(de.)150 2972 y Fq(1.5)68 b(Readline)47
+b(vi)e(Mo)t(de)150 3132 y Fs(While)32 b(the)g(Readline)g(library)f(do)s
 (es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g Fr(vi)f
 Fs(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
-2265 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+3241 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
 b(The)34 b(Readline)g Fr(vi)g Fs(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f(sp)s
-(eci\014ed)f(in)150 2374 y(the)e Fl(posix)e Fs(standard.)275
-2509 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
+(eci\014ed)f(in)150 3351 y(the)e Fl(posix)e Fs(standard.)275
+3485 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
 (een)d Fr(emacs)f Fs(and)g Fr(vi)h Fs(editing)g(mo)s(des,)g(use)g(the)g
-(command)150 2619 y Fk(M-C-j)36 b Fs(\(b)s(ound)h(to)h
+(command)150 3595 y Fk(M-C-j)36 b Fs(\(b)s(ound)h(to)h
 (emacs-editing-mo)s(de)i(when)d(in)g Fr(vi)h Fs(mo)s(de)f(and)g(to)i
-(vi-editing-mo)s(de)g(in)e Fr(emacs)150 2728 y Fs(mo)s(de\).)k(The)30
+(vi-editing-mo)s(de)g(in)e Fr(emacs)150 3704 y Fs(mo)s(de\).)k(The)30
 b(Readline)h(default)f(is)g Fr(emacs)f Fs(mo)s(de.)275
-2863 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fr(vi)f
+3839 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fr(vi)f
 Fs(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g(`insertion')g(mo)s
-(de,)g(as)h(if)f(y)m(ou)150 2972 y(had)f(t)m(yp)s(ed)g(an)g(`)p
+(de,)g(as)h(if)f(y)m(ou)150 3949 y(had)f(t)m(yp)s(ed)g(an)g(`)p
 Fr(i)p Fs('.)41 b(Pressing)29 b Fr(ESC)f Fs(switc)m(hes)i(y)m(ou)g(in)m
 (to)h(`command')e(mo)s(de,)h(where)e(y)m(ou)i(can)g(edit)g(the)150
-3082 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
+4058 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
 Fr(vi)g Fs(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g
-(history)f(lines)h(with)150 3191 y(`)p Fr(k)p Fs(')d(and)e(subsequen)m
+(history)f(lines)h(with)150 4168 y(`)p Fr(k)p Fs(')d(and)e(subsequen)m
 (t)h(lines)h(with)f(`)p Fr(j)p Fs(',)g(and)g(so)h(forth.)p
 eop end
-%%Page: 22 26
-TeXDict begin 22 25 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(22)150
+%%Page: 23 27
+TeXDict begin 23 26 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(23)150
 299 y Fo(2)80 b(Programming)54 b(with)f(GNU)h(Readline)150
 527 y Fs(This)24 b(c)m(hapter)i(describ)s(es)e(the)h(in)m(terface)h(b)s
 (et)m(w)m(een)g(the)f Fl(gnu)f Fs(Readline)i(Library)e(and)g(other)h
@@ -8265,9 +8330,9 @@ b(of)d(no)g(static)i(bu\013er)e(to)h(o)m(v)m(er\015o)m(w:)390
 (has)h(already)f(been)g(allocated,)629 5011 y(return)g(the)h(memory)f
 (to)h(the)g(free)f(pool.)h(*/)485 5121 y(if)h(\(line_read\))581
 5230 y({)676 5340 y(free)f(\(line_read\);)p eop end
-%%Page: 23 27
-TeXDict begin 23 26 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(23)676
+%%Page: 24 28
+TeXDict begin 24 27 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(24)676
 299 y Fr(line_read)46 b(=)h(\(char)f(*\)NULL;)581 408
 y(})485 628 y(/*)i(Get)f(a)g(line)g(from)f(the)h(user.)g(*/)485
 737 y(line_read)f(=)h(readline)f(\(""\);)485 956 y(/*)i(If)f(the)g
@@ -8301,7 +8366,7 @@ g(func-)150 3190 y(tion)33 b(called)h Fr(initialize_readline\(\))27
 b Fs(whic)m(h)33 b(p)s(erforms)e(this)h(and)h(other)g(desired)f
 (initializations,)150 3299 y(suc)m(h)e(as)h(installing)g(custom)g
 (completers)g(\(see)g(Section)h(2.6)f([Custom)f(Completers],)h(page)g
-(46\).)150 3559 y Fq(2.2)68 b(Custom)45 b(F)-11 b(unctions)150
+(47\).)150 3559 y Fq(2.2)68 b(Custom)45 b(F)-11 b(unctions)150
 3719 y Fs(Readline)28 b(pro)m(vides)f(man)m(y)g(functions)g(for)g
 (manipulating)h(the)f(text)h(of)g(the)f(line,)i(but)d(it)i(isn't)f(p)s
 (ossible)150 3828 y(to)37 b(an)m(ticipate)i(the)e(needs)f(of)h(all)g
@@ -8334,9 +8399,9 @@ Fs(is)h(the)g(t)m(w)m(o-digit)j(minor)c(v)m(ersion)i(n)m(um)m(b)s(er.)
 38 b(F)-8 b(or)30 b(Readline)g(4.2,)g(for)f(example,)150
 5340 y(the)i(v)-5 b(alue)30 b(of)h Fr(RL_READLINE_VERSION)25
 b Fs(w)m(ould)30 b(b)s(e)g Fr(0x0402)p Fs(.)p eop end
-%%Page: 24 28
-TeXDict begin 24 27 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(24)150
+%%Page: 25 29
+TeXDict begin 25 28 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(25)150
 299 y Fh(2.2.1)63 b(Readline)40 b(T)m(yp)s(edefs)150
 446 y Fs(F)-8 b(or)31 b(readabilit)m(y)-8 b(,)33 b(w)m(e)d(declare)i(a)
 f(n)m(um)m(b)s(er)e(of)h(new)g(ob)5 b(ject)31 b(t)m(yp)s(es,)g(all)g(p)
@@ -8396,29 +8461,29 @@ b Fs(is)36 b(the)g(k)m(ey)h(that)f(in)m(v)m(ok)m(ed)150
 (\(refreshing)g(the)h(curren)m(t)f(line)h(as)f(opp)s(osed)g(to)h
 (refreshing)e(the)i(screen,)j(for)c(example\).)p eop
 end
-%%Page: 25 29
-TeXDict begin 25 28 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(25)150
+%%Page: 26 30
+TeXDict begin 26 29 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(26)150
 299 y(Some)33 b(c)m(ho)s(ose)h(to)g(ignore)g(it.)50 b(In)32
 b(general,)j(if)f(a)f(function)g(uses)g(the)g(n)m(umeric)g(argumen)m(t)
 h(as)f(a)h(rep)s(eat)150 408 y(coun)m(t,)29 b(it)g(should)e(b)s(e)g
 (able)h(to)h(do)f(something)g(useful)f(with)h(b)s(oth)f(negativ)m(e)j
 (and)d(p)s(ositiv)m(e)i(argumen)m(ts.)150 518 y(A)m(t)i(the)g(v)m(ery)g
 (least,)h(it)e(should)g(b)s(e)g(a)m(w)m(are)h(that)g(it)g(can)g(b)s(e)f
-(passed)g(a)g(negativ)m(e)j(argumen)m(t.)275 658 y(A)27
-b(command)h(function)f(should)g(return)g(0)h(if)g(its)g(action)h
-(completes)g(successfully)-8 b(,)29 b(and)e(a)h(non-zero)150
-768 y(v)-5 b(alue)40 b(if)f(some)g(error)g(o)s(ccurs.)67
-b(This)38 b(is)h(the)g(con)m(v)m(en)m(tion)j(ob)s(ey)m(ed)d(b)m(y)g
-(all)h(of)f(the)h(builtin)e(Readline)150 877 y(bindable)30
-b(command)g(functions.)150 1118 y Fq(2.3)68 b(Readline)47
+(passed)g(a)g(negativ)m(e)j(argumen)m(t.)275 658 y(A)38
+b(command)f(function)h(should)f(return)g(0)h(if)g(its)h(action)g
+(completes)g(successfully)-8 b(,)41 b(and)c(a)h(v)-5
+b(alue)150 768 y(greater)34 b(than)f(zero)g(if)g(some)h(error)e(o)s
+(ccurs.)48 b(This)32 b(is)h(the)g(con)m(v)m(en)m(tion)i(ob)s(ey)m(ed)f
+(b)m(y)e(all)i(of)f(the)g(builtin)150 877 y(Readline)e(bindable)f
+(command)g(functions.)150 1118 y Fq(2.3)68 b(Readline)47
 b(V)-11 b(ariables)150 1278 y Fs(These)30 b(v)-5 b(ariables)31
 b(are)g(a)m(v)-5 b(ailable)33 b(to)e(function)f(writers.)3371
 1473 y([V)-8 b(ariable])-3598 b Fg(char)54 b(*)e(rl_line_buffer)390
 1583 y Fs(This)30 b(is)i(the)f(line)g(gathered)h(so)f(far.)43
 b(Y)-8 b(ou)32 b(are)f(w)m(elcome)i(to)f(mo)s(dify)f(the)g(con)m(ten)m
 (ts)i(of)e(the)g(line,)390 1693 y(but)k(see)h(Section)g(2.4.5)h([Allo)m
-(wing)h(Undoing],)f(page)f(34.)57 b(The)35 b(function)g
+(wing)h(Undoing],)f(page)f(35.)57 b(The)35 b(function)g
 Fr(rl_extend_line_)390 1802 y(buffer)29 b Fs(is)h(a)m(v)-5
 b(ailable)33 b(to)e(increase)g(the)g(memory)f(allo)s(cated)i(to)f
 Fr(rl_line_buffer)p Fs(.)3371 1998 y([V)-8 b(ariable])-3598
@@ -8463,15 +8528,15 @@ m(t)390 5121 y(line,)f(including)c(an)m(y)g(prompt,)j(an)m(y)d(time)h
 390 5230 y(an)36 b(otherwise-empt)m(y)i(line.)58 b(The)36
 b(cursor)g(is)g(mo)m(v)m(ed)h(to)g(the)g(b)s(eginning)e(of)i(the)f
 (newly-blank)390 5340 y(line.)p eop end
-%%Page: 26 30
-TeXDict begin 26 29 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(26)3371
+%%Page: 27 31
+TeXDict begin 27 30 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(27)3371
 299 y([V)-8 b(ariable])-3598 b Fg(char)54 b(*)e(rl_prompt)390
 408 y Fs(The)26 b(prompt)f(Readline)i(uses.)38 b(This)26
 b(is)g(set)h(from)e(the)i(argumen)m(t)f(to)h Fr(readline\(\))p
 Fs(,)d(and)i(should)390 518 y(not)h(b)s(e)f(assigned)h(to)h(directly)-8
 b(.)41 b(The)26 b Fr(rl_set_prompt\(\))d Fs(function)j(\(see)i(Section)
-g(2.4.6)h([Redis-)390 628 y(pla)m(y],)i(page)h(35\))f(ma)m(y)g(b)s(e)f
+g(2.4.6)h([Redis-)390 628 y(pla)m(y],)i(page)h(36\))f(ma)m(y)g(b)s(e)f
 (used)f(to)j(mo)s(dify)d(the)i(prompt)e(string)h(after)h(calling)h
 Fr(readline\(\))p Fs(.)3371 814 y([V)-8 b(ariable])-3598
 b Fg(char)54 b(*)e(rl_display_prompt)390 924 y Fs(The)31
@@ -8521,7 +8586,7 @@ b(is)g(set)f(to)h(a)g(unique)e(name)h(b)m(y)g(eac)m(h)i(application)f
 (using)f(Readline.)44 b(The)30 b(v)-5 b(alue)390 3904
 y(allo)m(ws)29 b(conditional)h(parsing)d(of)h(the)h(inputrc)e(\014le)h
 (\(see)h(Section)g(1.3.2)g([Conditional)g(Init)f(Con-)390
-4014 y(structs],)j(page)g(11\).)3371 4200 y([V)-8 b(ariable])-3598
+4014 y(structs],)j(page)g(12\).)3371 4200 y([V)-8 b(ariable])-3598
 b Fg(FILE)54 b(*)e(rl_instream)390 4310 y Fs(The)40 b(stdio)i(stream)f
 (from)g(whic)m(h)f(Readline)i(reads)f(input.)71 b(If)41
 b Fr(NULL)p Fs(,)i(Readline)e(defaults)g(to)390 4419
@@ -8536,9 +8601,9 @@ g Fr(LINES)f Fs(and)h Fr(COLUMNS)e Fs(en)m(vironmen)m(t)j(v)-5
 b(ari-)390 5230 y(ables)41 b(greater)h(precedence)g(than)e(v)-5
 b(alues)41 b(fetc)m(hed)h(from)e(the)h(k)m(ernel)h(when)e(computing)h
 (the)390 5340 y(screen)30 b(dimensions.)p eop end
-%%Page: 27 31
-TeXDict begin 27 30 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(27)3371
+%%Page: 28 32
+TeXDict begin 28 31 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(28)3371
 299 y([V)-8 b(ariable])-3598 b Fg(rl_command_func_t)57
 b(*)c(rl_last_func)390 408 y Fs(The)34 b(address)g(of)h(the)g(last)h
 (command)e(function)g(Readline)i(executed.)55 b(Ma)m(y)35
@@ -8567,7 +8632,7 @@ b(*)52 b(rl_getc_function)390 2271 y Fs(If)30 b(non-zero,)h(Readline)g
 b(By)21 b(default,)j(it)e(is)f(set)h(to)g Fr(rl_getc)p
 Fs(,)f(the)h(default)f(Readline)h(c)m(haracter)h(input)390
 2491 y(function)f(\(see)i(Section)g(2.4.8)g([Character)g(Input],)f
-(page)h(36\).)39 b(In)22 b(general,)k(an)c(application)i(that)390
+(page)h(37\).)39 b(In)22 b(general,)k(an)c(application)i(that)390
 2600 y(sets)31 b Fi(rl)p 635 2600 28 4 v 40 w(getc)p
 835 2600 V 41 w(function)f Fs(should)g(consider)g(setting)h
 Fi(rl)p 2234 2600 V 40 w(input)p 2487 2600 V 39 w(a)m(v)-5
@@ -8596,7 +8661,7 @@ b(alue)21 b(passed)f(to)390 4025 y Fr(rl_set_keyboard_input_ti)o(meou)o
 Fi(k)m(eyseq-timeout)390 4134 y Fs(v)-5 b(ariable.)48
 b(This)31 b(is)i(designed)f(for)g(use)g(b)m(y)g(applications)i(using)e
 (Readline's)h(callbac)m(k)h(in)m(terface)390 4244 y(\(see)d(Section)f
-(2.4.12)i([Alternate)f(In)m(terface],)h(page)e(40\),)i(whic)m(h)d(ma)m
+(2.4.12)i([Alternate)f(In)m(terface],)h(page)e(41\),)i(whic)m(h)d(ma)m
 (y)h(not)g(use)g(the)g(traditional)390 4354 y Fr(read\(2\))39
 b Fs(and)g(\014le)i(descriptor)f(in)m(terface,)45 b(or)c(other)f
 (applications)i(using)e(a)h(di\013eren)m(t)g(input)390
@@ -8617,11 +8682,11 @@ b(ailable)p 3064 4792 V 43 w(ho)s(ok)36 b Fs(as)30 b(w)m(ell.)3371
 (ten)m(ts)h(of)f(the)h(editing)f(bu\013er.)39 b(By)27
 b(default,)h(it)g(is)f(set)g(to)h Fr(rl_redisplay)p Fs(,)390
 5340 y(the)j(default)f(Readline)h(redispla)m(y)g(function)f(\(see)h
-(Section)g(2.4.6)h([Redispla)m(y],)g(page)f(35\).)p eop
+(Section)g(2.4.6)h([Redispla)m(y],)g(page)f(36\).)p eop
 end
-%%Page: 28 32
-TeXDict begin 28 31 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(28)3371
+%%Page: 29 33
+TeXDict begin 29 32 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(29)3371
 299 y([V)-8 b(ariable])-3598 b Fg(rl_vintfunc_t)56 b(*)d
 (rl_prep_term_function)390 408 y Fs(If)24 b(non-zero,)i(Readline)e
 (will)h(call)g(indirectly)g(through)e(this)h(p)s(oin)m(ter)g(to)h
@@ -8630,7 +8695,7 @@ b(Programming)30 b(with)g(GNU)h(Readline)1683 b(28)3371
 (whether)e(or)h(not)g(to)h(use)390 628 y(eigh)m(t-bit)e(c)m(haracters.)
 53 b(By)35 b(default,)g(this)f(is)g(set)h(to)g Fr(rl_prep_terminal)29
 b Fs(\(see)35 b(Section)g(2.4.9)390 737 y([T)-8 b(erminal)31
-b(Managemen)m(t],)i(page)e(37\).)3371 915 y([V)-8 b(ariable])-3598
+b(Managemen)m(t],)i(page)e(38\).)3371 915 y([V)-8 b(ariable])-3598
 b Fg(rl_voidfunc_t)56 b(*)d(rl_deprep_term_functio)q(n)390
 1024 y Fs(If)36 b(non-zero,)j(Readline)e(will)g(call)h(indirectly)f
 (through)f(this)g(p)s(oin)m(ter)h(to)g(reset)g(the)g(terminal.)390
@@ -8638,14 +8703,14 @@ b Fg(rl_voidfunc_t)56 b(*)d(rl_deprep_term_functio)q(n)390
 Fr(rl_prep_term_function)p Fs(.)49 b(By)35 b(default,)i(this)390
 1243 y(is)30 b(set)h(to)g Fr(rl_deprep_terminal)26 b
 Fs(\(see)31 b(Section)g(2.4.9)i([T)-8 b(erminal)30 b(Managemen)m(t],)j
-(page)e(37\).)3371 1421 y([V)-8 b(ariable])-3598 b Fg(Keymap)54
+(page)e(38\).)3371 1421 y([V)-8 b(ariable])-3598 b Fg(Keymap)54
 b(rl_executing_keymap)390 1530 y Fs(This)35 b(v)-5 b(ariable)37
 b(is)f(set)g(to)h(the)f(k)m(eymap)h(\(see)g(Section)f(2.4.2)i
-([Keymaps],)g(page)e(30\))i(in)d(whic)m(h)390 1640 y(the)c(curren)m
+([Keymaps],)g(page)e(31\))i(in)d(whic)m(h)390 1640 y(the)c(curren)m
 (tly)f(executing)i(readline)e(function)g(w)m(as)h(found.)3371
 1817 y([V)-8 b(ariable])-3598 b Fg(Keymap)54 b(rl_binding_keymap)390
 1927 y Fs(This)35 b(v)-5 b(ariable)37 b(is)f(set)g(to)h(the)f(k)m
-(eymap)h(\(see)g(Section)f(2.4.2)i([Keymaps],)g(page)e(30\))i(in)d
+(eymap)h(\(see)g(Section)f(2.4.2)i([Keymaps],)g(page)e(31\))i(in)d
 (whic)m(h)390 2036 y(the)c(last)g(k)m(ey)g(binding)e(o)s(ccurred.)3371
 2213 y([V)-8 b(ariable])-3598 b Fg(char)54 b(*)e(rl_executing_macro)390
 2323 y Fs(This)30 b(v)-5 b(ariable)31 b(is)f(set)h(to)g(the)g(text)g
@@ -8680,9 +8745,9 @@ b(state)j(bits)390 3909 y(include:)390 4064 y Fr(RL_STATE_NONE)870
 y(pla)m(y)-8 b(.)390 5230 y Fr(RL_STATE_READCMD)870 5340
 y Fs(Readline)31 b(is)f(reading)h(a)g(command)f(from)g(the)g(k)m(eyb)s
 (oard.)p eop end
-%%Page: 29 33
-TeXDict begin 29 32 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(29)390
+%%Page: 30 34
+TeXDict begin 30 33 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(30)390
 299 y Fr(RL_STATE_METANEXT)870 408 y Fs(Readline)31 b(is)f(reading)h
 (more)f(input)g(after)h(reading)f(the)h(meta-pre\014x)f(c)m(haracter.)
 390 576 y Fr(RL_STATE_DISPATCHING)870 686 y Fs(Readline)h(is)f(dispatc)
@@ -8716,14 +8781,14 @@ b(alues)31 b(of)f(the)h(terminal's)g(sp)s(ecial)g(c)m(haracters.)390
 4566 y Fr(RL_STATE_CALLBACK)870 4676 y Fs(Readline)44
 b(is)f(curren)m(tly)g(using)f(the)h(alternate)i(\(callbac)m(k\))h(in)m
 (terface)e(\(see)g(Sec-)870 4786 y(tion)31 b(2.4.12)h([Alternate)h(In)m
-(terface],)f(page)f(40\).)390 4953 y Fr(RL_STATE_VIMOTION)870
+(terface],)f(page)f(41\).)390 4953 y Fr(RL_STATE_VIMOTION)870
 5063 y Fs(Readline)g(is)f(reading)h(the)f(argumen)m(t)h(to)g(a)g(vi-mo)
 s(de)g Fr(")p Fs(motion)p Fr(")f Fs(command.)390 5230
 y Fr(RL_STATE_MULTIKEY)870 5340 y Fs(Readline)h(is)f(reading)h(a)g(m)m
 (ultiple-k)m(eystrok)m(e)i(command.)p eop end
-%%Page: 30 34
-TeXDict begin 30 33 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(30)390
+%%Page: 31 35
+TeXDict begin 31 34 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(31)390
 299 y Fr(RL_STATE_VICMDONCE)870 408 y Fs(Readline)40
 b(has)f(en)m(tered)g(vi)g(command)g(\(mo)m(v)m(emen)m(t\))j(mo)s(de)d
 (at)h(least)g(one)f(time)870 518 y(during)29 b(the)i(curren)m(t)f(call)
@@ -8793,9 +8858,9 @@ b(The)23 b(space)i(for)f(the)g(k)m(eymap)h(is)f(allo)s(cated)i(with)e
 Fr(malloc\(\))p Fs(;)390 5340 y(the)31 b(caller)g(should)f(free)g(it)h
 (b)m(y)f(calling)i Fr(rl_free_keymap\(\))26 b Fs(when)j(done.)p
 eop end
-%%Page: 31 35
-TeXDict begin 31 34 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(31)3350
+%%Page: 32 36
+TeXDict begin 32 35 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(32)3350
 299 y([F)-8 b(unction])-3599 b Fg(Keymap)54 b(rl_copy_keymap)c
 Ff(\()p Fi(Keymap)30 b(map)p Ff(\))390 408 y Fs(Return)g(a)g(new)g(k)m
 (eymap)h(whic)m(h)f(is)h(a)f(cop)m(y)h(of)g Fi(map)p
@@ -8856,7 +8921,7 @@ b(An)26 b(alternate)h(mec)m(hanism)f(is)g(to)g(install)h(custom)f(k)m
 (ey)g(bindings)f(in)g(an)h(initialization)150 4321 y(function)37
 b(assigned)g(to)h(the)f Fr(rl_startup_hook)c Fs(v)-5
 b(ariable)38 b(\(see)g(Section)g(2.3)g([Readline)g(V)-8
-b(ariables],)150 4431 y(page)31 b(25\).)275 4561 y(These)f(functions)g
+b(ariables],)150 4431 y(page)31 b(26\).)275 4561 y(These)f(functions)g
 (manage)h(k)m(ey)g(bindings.)3350 4731 y([F)-8 b(unction])-3599
 b Fg(int)53 b(rl_bind_key)c Ff(\()p Fi(in)m(t)31 b(k)m(ey)-8
 b(,)32 b(rl)p 1403 4731 V 40 w(command)p 1827 4731 V
@@ -8872,9 +8937,9 @@ b(k)m(ey)-8 b(,)32 b(rl)p 1769 5121 V 40 w(command)p
 b Fs(to)31 b Fi(function)f Fs(in)g Fi(map)p Fs(.)40 b(Returns)30
 b(non-zero)h(in)f(the)h(case)g(of)f(an)h(in)m(v)-5 b(alid)31
 b Fi(k)m(ey)p Fs(.)p eop end
-%%Page: 32 36
-TeXDict begin 32 35 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(32)3350
+%%Page: 33 37
+TeXDict begin 33 36 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(33)3350
 299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_bind_key_if_unboun)q(d)e
 Ff(\()p Fi(in)m(t)32 b(k)m(ey)-8 b(,)31 b(rl)p 1978 299
 28 4 v 40 w(command)p 2402 299 V 40 w(func)p 2612 299
@@ -8956,9 +9021,9 @@ Fs(if)g(it)g(is)g(not)g(already)h(b)s(ound)d(in)h Fi(map)p
 Fs(.)46 b(Returns)31 b(non-zero)h(in)g(the)390 5340 y(case)f(of)g(an)f
 (in)m(v)-5 b(alid)31 b Fi(k)m(eyseq)j Fs(or)c(if)g Fi(k)m(eyseq)k
 Fs(is)c(already)h(b)s(ound.)p eop end
-%%Page: 33 37
-TeXDict begin 33 36 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(33)3350
+%%Page: 34 38
+TeXDict begin 34 37 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(34)3350
 299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_generic_bind)d
 Ff(\()p Fi(in)m(t)31 b(t)m(yp)s(e,)g(const)g(c)m(har)g(*k)m(eyseq,)h(c)
 m(har)f(*data,)h(Keymap)565 408 y(map)p Ff(\))390 518
@@ -9038,9 +9103,9 @@ b(Y)-8 b(ou)29 b(should)e(free)h(the)g(arra)m(y)-8 b(,)29
 b(but)f(not)390 5340 y(the)j(p)s(oin)m(ters,)f(using)g
 Fr(free)f Fs(or)i Fr(rl_free)d Fs(when)h(y)m(ou)i(are)g(done.)p
 eop end
-%%Page: 34 38
-TeXDict begin 34 37 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(34)3350
+%%Page: 35 39
+TeXDict begin 35 38 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(35)3350
 299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_add_funmap_entry)e
 Ff(\()p Fi(const)32 b(c)m(har)e(*name,)i(rl)p 2252 299
 28 4 v 39 w(command)p 2675 299 V 40 w(func)p 2885 299
@@ -9112,9 +9177,9 @@ Ff(\()p Fi(in)m(t)32 b(start,)f(in)m(t)g(end)p Ff(\))390
 (et)m(w)m(een)g Fi(start)i Fs(and)c Fi(end)k Fs(as)e(a)f(single)h(undo)
 e(unit.)70 b(It)40 b(is)390 5322 y(assumed)30 b(that)h(y)m(ou)f(will)h
 (subsequen)m(tly)f(mo)s(dify)f(that)i(text.)p eop end
-%%Page: 35 39
-TeXDict begin 35 38 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(35)150
+%%Page: 36 40
+TeXDict begin 36 39 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(36)150
 299 y Fh(2.4.6)63 b(Redispla)m(y)3350 508 y Fs([F)-8
 b(unction])-3599 b Fg(void)54 b(rl_redisplay)49 b Ff(\()p
 Fi(v)m(oid)p Ff(\))390 617 y Fs(Change)38 b(what's)f(displa)m(y)m(ed)i
@@ -9183,9 +9248,9 @@ Fi(v)m(oid)p Ff(\))390 5230 y Fs(Sa)m(v)m(e)44 b(the)f(lo)s(cal)i
 (Readline)e(prompt)f(displa)m(y)i(state)g(in)f(preparation)g(for)g
 (displa)m(ying)g(a)g(new)390 5340 y(message)31 b(in)g(the)f(message)i
 (area)f(with)f Fr(rl_message\(\))p Fs(.)p eop end
-%%Page: 36 40
-TeXDict begin 36 39 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(36)3350
+%%Page: 37 41
+TeXDict begin 37 40 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(37)3350
 299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_restore_prompt)c
 Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Restore)44 b(the)e(lo)s(cal)i
 (Readline)g(prompt)d(displa)m(y)i(state)h(sa)m(v)m(ed)g(b)m(y)f(the)f
@@ -9211,11 +9276,11 @@ b(ma)m(y)h(indicate)f(that)390 1575 y(the)28 b(prompt)f(con)m(tains)i
 (c)m(haracters)g(that)g(tak)m(e)g(up)e(no)h(ph)m(ysical)g(screen)g
 (space)g(when)f(displa)m(y)m(ed)390 1685 y(b)m(y)41 b(brac)m(k)m(eting)
 i(a)e(sequence)g(of)g(suc)m(h)g(c)m(haracters)h(with)f(the)g(sp)s
-(ecial)h(mark)m(ers)f Fr(RL_PROMPT_)390 1794 y(START_IGNORE)32
-b Fs(and)k Fr(RL_PROMPT_END_IGNORE)30 b Fs(\(declared)37
-b(in)e Fr(readline.h)p Fs(.)54 b(This)35 b(ma)m(y)i(b)s(e)390
-1904 y(used)30 b(to)h(em)m(b)s(ed)f(terminal-sp)s(eci\014c)h(escap)s(e)
-f(sequences)h(in)f(prompts.)3350 2084 y([F)-8 b(unction])-3599
+(ecial)h(mark)m(ers)f Fr(RL_PROMPT_)390 1794 y(START_IGNORE)29
+b Fs(and)j Fr(RL_PROMPT_END_IGNORE)26 b Fs(\(declared)33
+b(in)f Fr(readline.h)p Fs(\).)44 b(This)32 b(ma)m(y)h(b)s(e)390
+1904 y(used)d(to)h(em)m(b)s(ed)f(terminal-sp)s(eci\014c)h(escap)s(e)f
+(sequences)h(in)f(prompts.)3350 2084 y([F)-8 b(unction])-3599
 b Fg(int)53 b(rl_set_prompt)d Ff(\()p Fi(const)31 b(c)m(har)g(*prompt)p
 Ff(\))390 2194 y Fs(Mak)m(e)d(Readline)g(use)f Fi(prompt)h
 Fs(for)e(subsequen)m(t)h(redispla)m(y)-8 b(.)40 b(This)26
@@ -9260,12 +9325,12 @@ b(ailable)32 b(from)d(Readline's)h(curren)m(t)f(input)g(stream.)41
 b(This)28 b(han-)390 5230 y(dles)e(input)g(inserted)g(in)m(to)i(the)e
 (input)g(stream)h(via)g Fi(rl)p 2226 5230 28 4 v 40 w(p)s(ending)p
 2583 5230 V 38 w(input)h Fs(\(see)f(Section)h(2.3)f([Read-)390
-5340 y(line)40 b(V)-8 b(ariables],)43 b(page)d(25\))g(and)f
+5340 y(line)40 b(V)-8 b(ariables],)43 b(page)d(26\))g(and)f
 Fr(rl_stuff_char\(\))p Fs(,)f(macros,)k(and)d(c)m(haracters)h(read)f
 (from)p eop end
-%%Page: 37 41
-TeXDict begin 37 40 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(37)390
+%%Page: 38 42
+TeXDict begin 38 41 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(38)390
 299 y(the)34 b(k)m(eyb)s(oard.)52 b(While)35 b(w)m(aiting)g(for)f
 (input,)g(this)g(function)g(will)g(call)i(an)m(y)e(function)g(assigned)
 390 408 y(to)d(the)g Fr(rl_event_hook)26 b Fs(v)-5 b(ariable.)3350
@@ -9345,9 +9410,9 @@ Fr(vt100)p Fs(\).)44 b(If)31 b Fi(terminal)p 1753 5230
 V 41 w(name)37 b Fs(is)31 b Fr(NULL)p Fs(,)h(the)g(v)-5
 b(alue)32 b(of)g(the)g Fr(TERM)e Fs(en)m(vironmen)m(t)390
 5340 y(v)-5 b(ariable)31 b(is)g(used.)p eop end
-%%Page: 38 42
-TeXDict begin 38 41 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(38)150
+%%Page: 39 43
+TeXDict begin 39 42 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(39)150
 299 y Fh(2.4.10)63 b(Utilit)m(y)40 b(F)-10 b(unctions)3350
 503 y Fs([F)i(unction])-3599 b Fg(int)53 b(rl_save_state)d
 Ff(\()p Fi(struct)30 b(readline)p 1702 503 28 4 v 41
@@ -9423,9 +9488,9 @@ b(should)150 5032 y(refrain)d(from)g(using)g(them.)3350
 Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390 5340 y Fs(Return)f(1)g(if)h
 Fi(c)36 b Fs(is)30 b(an)h(upp)s(ercase)e(alphab)s(etic)i(c)m(haracter.)
 p eop end
-%%Page: 39 43
-TeXDict begin 39 42 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(39)3350
+%%Page: 40 44
+TeXDict begin 40 43 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(40)3350
 299 y([F)-8 b(unction])-3599 b Fg(int)53 b(_rl_lowercase_p)d
 Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390 408 y Fs(Return)f(1)g(if)h
 Fi(c)36 b Fs(is)30 b(a)h(lo)m(w)m(ercase)i(alphab)s(etic)e(c)m
@@ -9504,9 +9569,9 @@ y Fs(Retriev)m(e)e(the)e(string)g(v)-5 b(alue)27 b(of)g(the)h(termcap)f
 (terminal's)g(capabilities,)k(and)34 b(this)h(function)g(will)g(return)
 f(v)-5 b(alues)35 b(for)390 5340 y(only)30 b(those)h(capabilities)i
 (Readline)e(uses.)p eop end
-%%Page: 40 44
-TeXDict begin 40 43 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(40)3350
+%%Page: 41 45
+TeXDict begin 41 44 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(41)3350
 299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_clear_history)c
 Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Clear)27 b(the)h(history)f
 (list)h(b)m(y)f(deleting)h(all)g(of)f(the)h(en)m(tries,)h(in)d(the)i
@@ -9514,951 +9579,973 @@ Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Clear)27 b(the)h(history)f
 b Fr(clear_history\(\))d Fs(function.)78 b(This)42 b(di\013ers)g(from)g
 Fr(clear_history)e Fs(b)s(ecause)i(it)390 628 y(frees)30
 b(priv)-5 b(ate)31 b(data)g(Readline)g(sa)m(v)m(es)h(in)e(the)h
-(history)f(list.)150 832 y Fh(2.4.12)63 b(Alternate)40
-b(In)m(terface)150 979 y Fs(An)21 b(alternate)j(in)m(terface)f(is)f(a)m
+(history)f(list.)150 826 y Fh(2.4.12)63 b(Alternate)40
+b(In)m(terface)150 973 y Fs(An)21 b(alternate)j(in)m(terface)f(is)f(a)m
 (v)-5 b(ailable)24 b(to)e(plain)g Fr(readline\(\))p Fs(.)35
 b(Some)21 b(applications)i(need)f(to)g(in)m(terlea)m(v)m(e)150
-1088 y(k)m(eyb)s(oard)35 b(I/O)h(with)f(\014le,)i(device,)h(or)e(windo)
+1083 y(k)m(eyb)s(oard)35 b(I/O)h(with)f(\014le,)i(device,)h(or)e(windo)
 m(w)f(system)g(I/O,)h(t)m(ypically)i(b)m(y)d(using)g(a)h(main)g(lo)s
-(op)f(to)150 1198 y Fr(select\(\))42 b Fs(on)i(v)-5 b(arious)45
+(op)f(to)150 1192 y Fr(select\(\))42 b Fs(on)i(v)-5 b(arious)45
 b(\014le)f(descriptors.)83 b(T)-8 b(o)45 b(accommo)s(date)h(this)e
-(need,)k(readline)d(can)f(also)i(b)s(e)150 1308 y(in)m(v)m(ok)m(ed)33
+(need,)k(readline)d(can)f(also)i(b)s(e)150 1302 y(in)m(v)m(ok)m(ed)33
 b(as)e(a)h(`callbac)m(k')h(function)e(from)g(an)g(ev)m(en)m(t)h(lo)s
 (op.)44 b(There)30 b(are)i(functions)f(a)m(v)-5 b(ailable)33
-b(to)f(mak)m(e)150 1417 y(this)e(easy)-8 b(.)3350 1611
+b(to)f(mak)m(e)150 1412 y(this)e(easy)-8 b(.)3350 1595
 y([F)g(unction])-3599 b Fg(void)54 b(rl_callback_handler_inst)q(all)e
-Ff(\()p Fi(const)31 b(c)m(har)g(*prompt,)565 1721 y(rl)p
-632 1721 28 4 v 40 w(v)m(cpfunc)p 978 1721 V 40 w(t)f(*lhandler)p
-Ff(\))390 1831 y Fs(Set)25 b(up)f(the)h(terminal)g(for)f(readline)i
+Ff(\()p Fi(const)31 b(c)m(har)g(*prompt,)565 1705 y(rl)p
+632 1705 28 4 v 40 w(v)m(cpfunc)p 978 1705 V 40 w(t)f(*lhandler)p
+Ff(\))390 1814 y Fs(Set)25 b(up)f(the)h(terminal)g(for)f(readline)i
 (I/O)e(and)g(displa)m(y)h(the)g(initial)h(expanded)e(v)-5
-b(alue)26 b(of)f Fi(prompt)p Fs(.)390 1940 y(Sa)m(v)m(e)34
+b(alue)26 b(of)f Fi(prompt)p Fs(.)390 1924 y(Sa)m(v)m(e)34
 b(the)f(v)-5 b(alue)33 b(of)g Fi(lhandler)39 b Fs(to)34
 b(use)e(as)h(a)g(handler)f(function)h(to)g(call)h(when)e(a)h(complete)i
-(line)390 2050 y(of)h(input)f(has)g(b)s(een)g(en)m(tered.)57
+(line)390 2033 y(of)h(input)f(has)g(b)s(een)g(en)m(tered.)57
 b(The)35 b(handler)g(function)g(receiv)m(es)j(the)e(text)g(of)g(the)g
-(line)g(as)g(an)390 2159 y(argumen)m(t.)3350 2354 y([F)-8
-b(unction])-3599 b Fg(void)54 b(rl_callback_read_char)d
-Ff(\()p Fi(v)m(oid)p Ff(\))390 2463 y Fs(Whenev)m(er)34
-b(an)g(application)h(determines)e(that)i(k)m(eyb)s(oard)e(input)g(is)h
-(a)m(v)-5 b(ailable,)37 b(it)d(should)f(call)390 2573
-y Fr(rl_callback_read_char\(\))p Fs(,)17 b(whic)m(h)22
+(line)g(as)g(an)390 2143 y(argumen)m(t.)k(As)29 b(with)f
+Fr(readline\(\))p Fs(,)e(the)j(handler)e(function)h(should)g
+Fr(free)f Fs(the)h(line)h(when)e(it)i(it)390 2252 y(\014nished)g(with)h
+(it.)3350 2436 y([F)-8 b(unction])-3599 b Fg(void)54
+b(rl_callback_read_char)d Ff(\()p Fi(v)m(oid)p Ff(\))390
+2545 y Fs(Whenev)m(er)34 b(an)g(application)h(determines)e(that)i(k)m
+(eyb)s(oard)e(input)g(is)h(a)m(v)-5 b(ailable,)37 b(it)d(should)f(call)
+390 2655 y Fr(rl_callback_read_char\(\))p Fs(,)17 b(whic)m(h)22
 b(will)g(read)f(the)h(next)g(c)m(haracter)h(from)f(the)f(curren)m(t)h
-(input)390 2682 y(source.)40 b(If)27 b(that)i(c)m(haracter)g(completes)
+(input)390 2765 y(source.)40 b(If)27 b(that)i(c)m(haracter)g(completes)
 h(the)e(line,)h Fr(rl_callback_read_char)22 b Fs(will)28
-b(in)m(v)m(ok)m(e)i(the)390 2792 y Fi(lhandler)47 b Fs(function)40
+b(in)m(v)m(ok)m(e)i(the)390 2874 y Fi(lhandler)47 b Fs(function)40
 b(installed)i(b)m(y)e Fr(rl_callback_handler_insta)o(ll)35
-b Fs(to)41 b(pro)s(cess)f(the)h(line.)390 2902 y(Before)j(calling)h
+b Fs(to)41 b(pro)s(cess)f(the)h(line.)390 2984 y(Before)j(calling)h
 (the)e Fi(lhandler)49 b Fs(function,)e(the)c(terminal)h(settings)g(are)
-g(reset)f(to)h(the)g(v)-5 b(alues)390 3011 y(they)44
+g(reset)f(to)h(the)g(v)-5 b(alues)390 3093 y(they)44
 b(had)e(b)s(efore)h(calling)i Fr(rl_callback_handler_insta)o(ll)p
 Fs(.)73 b(If)43 b(the)h Fi(lhandler)49 b Fs(function)390
-3121 y(returns,)27 b(and)h(the)g(line)g(handler)f(remains)h(installed,)
+3203 y(returns,)27 b(and)h(the)g(line)g(handler)f(remains)h(installed,)
 i(the)e(terminal)g(settings)h(are)f(mo)s(di\014ed)f(for)390
-3230 y(Readline's)k(use)f(again.)42 b Fr(EOF)29 b Fs(is)i(indicated)g
+3313 y(Readline's)k(use)f(again.)42 b Fr(EOF)29 b Fs(is)i(indicated)g
 (b)m(y)f(calling)i Fi(lhandler)k Fs(with)30 b(a)h Fr(NULL)e
-Fs(line.)3350 3425 y([F)-8 b(unction])-3599 b Fg(void)54
-b(rl_callback_handler_remo)q(ve)e Ff(\()p Fi(v)m(oid)p
-Ff(\))390 3534 y Fs(Restore)38 b(the)f(terminal)h(to)g(its)f(initial)i
-(state)f(and)f(remo)m(v)m(e)h(the)g(line)f(handler.)60
-b(This)37 b(ma)m(y)h(b)s(e)390 3644 y(called)f(from)f(within)g(a)h
-(callbac)m(k)h(as)f(w)m(ell)g(as)f(indep)s(enden)m(tly)-8
-b(.)58 b(If)36 b(the)h Fi(lhandler)42 b Fs(installed)37
-b(b)m(y)390 3753 y Fr(rl_callback_handler_inst)o(all)32
-b Fs(do)s(es)39 b(not)g(exit)g(the)g(program,)i(either)e(this)g
-(function)f(or)390 3863 y(the)32 b(function)f(referred)f(to)i(b)m(y)g
+Fs(line.)3350 3496 y([F)-8 b(unction])-3599 b Fg(void)54
+b(rl_callback_sigcleanup)e Ff(\()p Fi(v)m(oid)p Ff(\))390
+3606 y Fs(Clean)26 b(up)e(an)m(y)i(in)m(ternal)g(state)h(the)e(callbac)
+m(k)j(in)m(terface)f(uses)e(to)h(main)m(tain)g(state)h(b)s(et)m(w)m
+(een)f(calls)390 3715 y(to)35 b(rl)p 572 3715 V 40 w(callbac)m(k)p
+928 3715 V 42 w(read)p 1142 3715 V 40 w(c)m(har)f(\(e.g.,)j(the)e
+(state)g(of)f(an)m(y)h(activ)m(e)h(incremen)m(tal)f(searc)m(hes\).)54
+b(This)33 b(is)390 3825 y(in)m(tended)f(to)h(b)s(e)e(used)g(b)m(y)h
+(applications)h(that)g(wish)e(to)i(p)s(erform)d(their)j(o)m(wn)f
+(signal)g(handling;)390 3934 y(Readline's)f(in)m(ternal)g(signal)g
+(handler)f(calls)h(this)g(when)e(appropriate.)3350 4118
+y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_callback_handler_remo)q(ve)e
+Ff(\()p Fi(v)m(oid)p Ff(\))390 4227 y Fs(Restore)37 b(the)f(terminal)g
+(to)g(its)h(initial)g(state)g(and)e(remo)m(v)m(e)i(the)f(line)g
+(handler.)56 b(Y)-8 b(ou)36 b(ma)m(y)h(call)390 4337
+y(this)25 b(function)g(from)g(within)g(a)h(callbac)m(k)i(as)d(w)m(ell)i
+(as)f(indep)s(enden)m(tly)-8 b(.)38 b(If)25 b(the)h Fi(lhandler)31
+b Fs(installed)390 4446 y(b)m(y)25 b Fr(rl_callback_handler_insta)o(ll)
+19 b Fs(do)s(es)25 b(not)h(exit)g(the)g(program,)g(either)g(this)f
+(function)g(or)390 4556 y(the)32 b(function)f(referred)f(to)i(b)m(y)g
 (the)f(v)-5 b(alue)32 b(of)g Fr(rl_deprep_term_function)25
-b Fs(should)30 b(b)s(e)h(called)390 3973 y(b)s(efore)f(the)h(program)f
+b Fs(should)30 b(b)s(e)h(called)390 4666 y(b)s(efore)f(the)h(program)f
 (exits)h(to)g(reset)g(the)f(terminal)h(settings.)150
-4177 y Fh(2.4.13)63 b(A)41 b(Readline)f(Example)150 4324
+4864 y Fh(2.4.13)63 b(A)41 b(Readline)f(Example)150 5011
 y Fs(Here)34 b(is)g(a)g(function)g(whic)m(h)g(c)m(hanges)g(lo)m(w)m
 (ercase)j(c)m(haracters)e(to)f(their)g(upp)s(ercase)f(equiv)-5
-b(alen)m(ts,)37 b(and)150 4433 y(upp)s(ercase)d(c)m(haracters)j(to)f
+b(alen)m(ts,)37 b(and)150 5121 y(upp)s(ercase)d(c)m(haracters)j(to)f
 (lo)m(w)m(ercase.)58 b(If)35 b(this)g(function)g(w)m(as)h(b)s(ound)d
 (to)j(`)p Fr(M-c)p Fs(',)h(then)e(t)m(yping)g(`)p Fr(M-c)p
-Fs(')150 4543 y(w)m(ould)c(c)m(hange)i(the)f(case)g(of)g(the)g(c)m
+Fs(')150 5230 y(w)m(ould)c(c)m(hange)i(the)f(case)g(of)g(the)g(c)m
 (haracter)h(under)d(p)s(oin)m(t.)44 b(T)m(yping)31 b(`)p
 Fr(M-1)f(0)g(M-c)p Fs(')h(w)m(ould)g(c)m(hange)i(the)150
-4653 y(case)e(of)g(the)g(follo)m(wing)g(10)h(c)m(haracters,)g(lea)m
-(ving)g(the)e(cursor)g(on)g(the)h(last)g(c)m(haracter)h(c)m(hanged.)390
-4792 y Fr(/*)47 b(Invert)f(the)h(case)g(of)g(the)g(COUNT)f(following)g
-(characters.)e(*/)390 4902 y(int)390 5011 y(invert_case_line)f
-(\(count,)j(key\))629 5121 y(int)h(count,)f(key;)390
-5230 y({)485 5340 y(register)g(int)h(start,)f(end,)h(i;)p
+5340 y(case)e(of)g(the)g(follo)m(wing)g(10)h(c)m(haracters,)g(lea)m
+(ving)g(the)e(cursor)g(on)g(the)h(last)g(c)m(haracter)h(c)m(hanged.)p
 eop end
-%%Page: 41 45
-TeXDict begin 41 44 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(41)485
-408 y Fr(start)47 b(=)g(rl_point;)485 628 y(if)h(\(rl_point)d(>=)i
-(rl_end\))581 737 y(return)f(\(0\);)485 956 y(if)i(\(count)e(<)h(0\))
-581 1066 y({)676 1176 y(direction)f(=)h(-1;)676 1285
-y(count)g(=)g(-count;)581 1395 y(})485 1504 y(else)581
-1614 y(direction)e(=)j(1;)485 1833 y(/*)g(Find)e(the)h(end)g(of)g(the)g
-(range)g(to)g(modify.)f(*/)485 1943 y(end)h(=)h(start)e(+)i(\(count)e
-(*)h(direction\);)485 2162 y(/*)h(Force)e(it)h(to)g(be)h(within)e
-(range.)g(*/)485 2271 y(if)i(\(end)e(>)i(rl_end\))581
-2381 y(end)f(=)g(rl_end;)485 2491 y(else)g(if)g(\(end)g(<)g(0\))581
-2600 y(end)g(=)g(0;)485 2819 y(if)h(\(start)e(==)h(end\))581
-2929 y(return)f(\(0\);)485 3148 y(if)i(\(start)e(>)h(end\))581
-3258 y({)676 3367 y(int)g(temp)g(=)g(start;)676 3477
-y(start)g(=)g(end;)676 3587 y(end)g(=)h(temp;)581 3696
-y(})485 3915 y(/*)g(Tell)e(readline)g(that)g(we)i(are)f(modifying)e
-(the)i(line,)629 4025 y(so)g(it)g(will)g(save)f(the)h(undo)g
-(information.)d(*/)485 4134 y(rl_modifying)h(\(start,)h(end\);)485
-4354 y(for)h(\(i)h(=)f(start;)f(i)i(!=)f(end;)f(i++\))581
-4463 y({)676 4573 y(if)i(\(_rl_uppercase_p)43 b
-(\(rl_line_buffer[i]\)\))772 4682 y(rl_line_buffer[i])g(=)k
-(_rl_to_lower)e(\(rl_line_buffer[i]\);)676 4792 y(else)i(if)g
-(\(_rl_lowercase_p)d(\(rl_line_buffer[i]\)\))772 4902
-y(rl_line_buffer[i])f(=)k(_rl_to_upper)e(\(rl_line_buffer[i]\);)581
-5011 y(})485 5121 y(/*)j(Move)e(point)h(to)g(on)g(top)g(of)g(the)g
-(last)g(character)e(changed.)g(*/)485 5230 y(rl_point)h(=)h
-(\(direction)e(==)j(1\))f(?)g(end)g(-)h(1)f(:)h(start;)485
-5340 y(return)f(\(0\);)p eop end
 %%Page: 42 46
 TeXDict begin 42 45 bop 150 -116 a Fs(Chapter)30 b(2:)41
 b(Programming)30 b(with)g(GNU)h(Readline)1683 b(42)390
-299 y Fr(})150 532 y Fh(2.4.14)63 b(Alternate)40 b(In)m(terface)g
-(Example)150 679 y Fs(Here)f(is)g(a)g(complete)h(program)e(that)h
+299 y Fr(/*)47 b(Invert)f(the)h(case)g(of)g(the)g(COUNT)f(following)g
+(characters.)e(*/)390 408 y(int)390 518 y(invert_case_line)f(\(count,)j
+(key\))629 628 y(int)h(count,)f(key;)390 737 y({)485
+847 y(register)g(int)h(start,)f(end,)h(i;)485 1066 y(start)g(=)g
+(rl_point;)485 1285 y(if)h(\(rl_point)d(>=)i(rl_end\))581
+1395 y(return)f(\(0\);)485 1614 y(if)i(\(count)e(<)h(0\))581
+1724 y({)676 1833 y(direction)f(=)h(-1;)676 1943 y(count)g(=)g(-count;)
+581 2052 y(})485 2162 y(else)581 2271 y(direction)e(=)j(1;)485
+2491 y(/*)g(Find)e(the)h(end)g(of)g(the)g(range)g(to)g(modify.)f(*/)485
+2600 y(end)h(=)h(start)e(+)i(\(count)e(*)h(direction\);)485
+2819 y(/*)h(Force)e(it)h(to)g(be)h(within)e(range.)g(*/)485
+2929 y(if)i(\(end)e(>)i(rl_end\))581 3039 y(end)f(=)g(rl_end;)485
+3148 y(else)g(if)g(\(end)g(<)g(0\))581 3258 y(end)g(=)g(0;)485
+3477 y(if)h(\(start)e(==)h(end\))581 3587 y(return)f(\(0\);)485
+3806 y(if)i(\(start)e(>)h(end\))581 3915 y({)676 4025
+y(int)g(temp)g(=)g(start;)676 4134 y(start)g(=)g(end;)676
+4244 y(end)g(=)h(temp;)581 4354 y(})485 4573 y(/*)g(Tell)e(readline)g
+(that)g(we)i(are)f(modifying)e(the)i(line,)629 4682 y(so)g(it)g(will)g
+(save)f(the)h(undo)g(information.)d(*/)485 4792 y(rl_modifying)h
+(\(start,)h(end\);)485 5011 y(for)h(\(i)h(=)f(start;)f(i)i(!=)f(end;)f
+(i++\))581 5121 y({)676 5230 y(if)i(\(_rl_uppercase_p)43
+b(\(rl_line_buffer[i]\)\))772 5340 y(rl_line_buffer[i])g(=)k
+(_rl_to_lower)e(\(rl_line_buffer[i]\);)p eop end
+%%Page: 43 47
+TeXDict begin 43 46 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(43)676
+299 y Fr(else)47 b(if)g(\(_rl_lowercase_p)d(\(rl_line_buffer[i]\)\))772
+408 y(rl_line_buffer[i])f(=)k(_rl_to_upper)e(\(rl_line_buffer[i]\);)581
+518 y(})485 628 y(/*)j(Move)e(point)h(to)g(on)g(top)g(of)g(the)g(last)g
+(character)e(changed.)g(*/)485 737 y(rl_point)h(=)h(\(direction)e(==)j
+(1\))f(?)g(end)g(-)h(1)f(:)h(start;)485 847 y(return)f(\(0\);)390
+956 y(})150 1189 y Fh(2.4.14)63 b(Alternate)40 b(In)m(terface)g
+(Example)150 1336 y Fs(Here)f(is)g(a)g(complete)h(program)e(that)h
 (illustrates)h(Readline's)f(alternate)h(in)m(terface.)67
-b(It)38 b(reads)h(lines)150 788 y(from)30 b(the)i(terminal)f(and)f
+b(It)38 b(reads)h(lines)150 1446 y(from)30 b(the)i(terminal)f(and)f
 (displa)m(ys)h(them,)h(pro)m(viding)f(the)g(standard)f(history)h(and)f
-(T)-8 b(AB)32 b(completion)150 898 y(functions.)40 b(It)31
+(T)-8 b(AB)32 b(completion)150 1555 y(functions.)40 b(It)31
 b(understands)d(the)j(EOF)f(c)m(haracter)i(or)e Fr(")p
-Fs(exit)p Fr(")h Fs(to)g(exit)g(the)g(program.)390 1066
+Fs(exit)p Fr(")h Fs(to)g(exit)g(the)g(program.)390 1724
 y Fr(/*)47 b(Standard)f(include)g(files.)g(stdio.h)f(is)j(required.)d
-(*/)390 1176 y(#include)h(<stdlib.h>)390 1285 y(#include)g(<unistd.h>)
-390 1504 y(/*)h(Used)g(for)g(select\(2\))e(*/)390 1614
-y(#include)h(<sys/types.h>)390 1724 y(#include)g(<sys/select.h>)390
-1943 y(#include)g(<stdio.h>)390 2162 y(/*)h(Standard)f(readline)f
-(include)h(files.)g(*/)390 2271 y(#include)g(<readline/readline.h>)390
-2381 y(#include)g(<readline/history.h>)390 2600 y(static)g(void)h
-(cb_linehandler)d(\(char)i(*\);)390 2819 y(int)h(running;)390
-2929 y(const)f(char)h(*prompt)f(=)h("rltest$)f(";)390
-3148 y(/*)h(Callback)f(function)f(called)h(for)h(each)g(line)g(when)f
-(accept-line)f(executed,)g(EOF)533 3258 y(seen,)i(or)g(EOF)g(character)
+(*/)390 1833 y(#include)h(<stdlib.h>)390 1943 y(#include)g(<unistd.h>)
+390 2162 y(/*)h(Used)g(for)g(select\(2\))e(*/)390 2271
+y(#include)h(<sys/types.h>)390 2381 y(#include)g(<sys/select.h>)390
+2600 y(#include)g(<stdio.h>)390 2819 y(/*)h(Standard)f(readline)f
+(include)h(files.)g(*/)390 2929 y(#include)g(<readline/readline.h>)390
+3039 y(#include)g(<readline/history.h>)390 3258 y(static)g(void)h
+(cb_linehandler)d(\(char)i(*\);)390 3477 y(int)h(running;)390
+3587 y(const)f(char)h(*prompt)f(=)h("rltest$)f(";)390
+3806 y(/*)h(Callback)f(function)f(called)h(for)h(each)g(line)g(when)f
+(accept-line)f(executed,)g(EOF)533 3915 y(seen,)i(or)g(EOF)g(character)
 e(read.)94 b(This)47 b(sets)f(a)i(flag)e(and)h(returns;)f(it)h(could)
-533 3367 y(also)g(call)f(exit\(3\).)g(*/)390 3477 y(static)g(void)390
-3587 y(cb_linehandler)e(\(char)i(*line\))390 3696 y({)485
-3806 y(/*)i(Can)f(use)f(^D)i(\(stty)e(eof\))h(or)g(`exit')f(to)h(exit.)
-f(*/)485 3915 y(if)i(\(line)e(==)h(NULL)g(||)g(strcmp)f(\(line,)g
-("exit"\))g(==)h(0\))581 4025 y({)676 4134 y(if)h(\(line)e(==)h(0\))772
-4244 y(printf)f(\("\\n"\);)676 4354 y(printf)g(\("exit\\n"\);)676
-4463 y(/*)i(This)e(function)g(needs)g(to)h(be)g(called)g(to)g(reset)f
-(the)h(terminal)f(settings,)p 3874 4483 42 84 v 820 4573
+533 4025 y(also)g(call)f(exit\(3\).)g(*/)390 4134 y(static)g(void)390
+4244 y(cb_linehandler)e(\(char)i(*line\))390 4354 y({)485
+4463 y(/*)i(Can)f(use)f(^D)i(\(stty)e(eof\))h(or)g(`exit')f(to)h(exit.)
+f(*/)485 4573 y(if)i(\(line)e(==)h(NULL)g(||)g(strcmp)f(\(line,)g
+("exit"\))g(==)h(0\))581 4682 y({)676 4792 y(if)h(\(line)e(==)h(0\))772
+4902 y(printf)f(\("\\n"\);)676 5011 y(printf)g(\("exit\\n"\);)676
+5121 y(/*)i(This)e(function)g(needs)g(to)h(be)g(called)g(to)g(reset)f
+(the)h(terminal)f(settings,)p 3874 5141 42 84 v 820 5230
 a(and)g(calling)g(it)h(from)g(the)g(line)g(handler)e(keeps)i(one)g
-(extra)f(prompt)g(from)p 3874 4593 42 76 v 820 4682 a(being)g
-(displayed.)f(*/)676 4792 y(rl_callback_handler_remove)c(\(\);)676
-5011 y(running)46 b(=)i(0;)581 5121 y(})485 5230 y(else)581
-5340 y({)p eop end
-%%Page: 43 47
-TeXDict begin 43 46 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(43)676
-299 y Fr(if)48 b(\(*line\))772 408 y(add_history)d(\(line\);)676
-518 y(printf)h(\("input)g(line:)h(\045s\\n",)f(line\);)676
-628 y(free)h(\(line\);)581 737 y(})390 847 y(})390 1066
-y(int)390 1176 y(main)g(\(int)f(c,)h(char)g(**v\))390
-1285 y({)485 1395 y(fd_set)g(fds;)485 1504 y(int)g(r;)485
-1724 y(/*)h(Install)d(the)i(line)g(handler.)f(*/)485
-1833 y(rl_callback_handler_instal)o(l)c(\(prompt,)j(cb_linehandler\);)
-485 2052 y(/*)j(Enter)e(a)h(simple)g(event)f(loop.)94
+(extra)f(prompt)g(from)p 3874 5251 42 76 v 820 5340 a(being)g
+(displayed.)f(*/)p eop end
+%%Page: 44 48
+TeXDict begin 44 47 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(44)676
+299 y Fr(rl_callback_handler_remove)41 b(\(\);)676 518
+y(running)46 b(=)i(0;)581 628 y(})485 737 y(else)581
+847 y({)676 956 y(if)g(\(*line\))772 1066 y(add_history)d(\(line\);)676
+1176 y(printf)h(\("input)g(line:)h(\045s\\n",)f(line\);)676
+1285 y(free)h(\(line\);)581 1395 y(})390 1504 y(})390
+1724 y(int)390 1833 y(main)g(\(int)f(c,)h(char)g(**v\))390
+1943 y({)485 2052 y(fd_set)g(fds;)485 2162 y(int)g(r;)485
+2381 y(/*)h(Install)d(the)i(line)g(handler.)f(*/)485
+2491 y(rl_callback_handler_instal)o(l)c(\(prompt,)j(cb_linehandler\);)
+485 2710 y(/*)j(Enter)e(a)h(simple)g(event)f(loop.)94
 b(This)47 b(waits)f(until)g(something)g(is)h(available)629
-2162 y(to)g(read)f(on)i(readline's)d(input)h(stream)g(\(defaults)f(to)j
-(standard)d(input\))h(and)629 2271 y(calls)g(the)h(builtin)f(character)
+2819 y(to)g(read)f(on)i(readline's)d(input)h(stream)g(\(defaults)f(to)j
+(standard)d(input\))h(and)629 2929 y(calls)g(the)h(builtin)f(character)
 f(read)i(callback)e(to)i(read)g(it.)95 b(It)47 b(does)f(not)629
-2381 y(have)g(to)h(modify)g(the)f(user's)h(terminal)e(settings.)g(*/)
-485 2491 y(running)h(=)i(1;)485 2600 y(while)f(\(running\))581
-2710 y({)676 2819 y(FD_ZERO)f(\(&fds\);)676 2929 y(FD_SET)g(\(fileno)g
-(\(rl_instream\),)e(&fds\);)676 3148 y(r)k(=)f(select)f(\(FD_SETSIZE,)f
-(&fds,)h(NULL,)h(NULL,)f(NULL\);)676 3258 y(if)i(\(r)f(<)g(0\))772
-3367 y({)867 3477 y(perror)f(\("rltest:)g(select"\);)867
-3587 y(rl_callback_handler_remov)o(e)c(\(\);)867 3696
-y(break;)772 3806 y(})676 4025 y(if)48 b(\(FD_ISSET)d(\(fileno)h
-(\(rl_instream\),)e(&fds\)\))772 4134 y(rl_callback_read_char)e(\(\);)
-581 4244 y(})485 4463 y(printf)47 b(\("rltest:)e(Event)h(loop)h(has)g
-(exited\\n"\);)485 4573 y(return)g(0;)390 4682 y(})150
-4961 y Fq(2.5)68 b(Readline)47 b(Signal)e(Handling)150
-5121 y Fs(Signals)31 b(are)f(async)m(hronous)g(ev)m(en)m(ts)i(sen)m(t)f
+3039 y(have)g(to)h(modify)g(the)f(user's)h(terminal)e(settings.)g(*/)
+485 3148 y(running)h(=)i(1;)485 3258 y(while)f(\(running\))581
+3367 y({)676 3477 y(FD_ZERO)f(\(&fds\);)676 3587 y(FD_SET)g(\(fileno)g
+(\(rl_instream\),)e(&fds\);)676 3806 y(r)k(=)f(select)f(\(FD_SETSIZE,)f
+(&fds,)h(NULL,)h(NULL,)f(NULL\);)676 3915 y(if)i(\(r)f(<)g(0\))772
+4025 y({)867 4134 y(perror)f(\("rltest:)g(select"\);)867
+4244 y(rl_callback_handler_remov)o(e)c(\(\);)867 4354
+y(break;)772 4463 y(})676 4682 y(if)48 b(\(FD_ISSET)d(\(fileno)h
+(\(rl_instream\),)e(&fds\)\))772 4792 y(rl_callback_read_char)e(\(\);)
+581 4902 y(})485 5121 y(printf)47 b(\("rltest:)e(Event)h(loop)h(has)g
+(exited\\n"\);)485 5230 y(return)g(0;)390 5340 y(})p
+eop end
+%%Page: 45 49
+TeXDict begin 45 48 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(45)150
+299 y Fq(2.5)68 b(Readline)47 b(Signal)e(Handling)150
+458 y Fs(Signals)31 b(are)f(async)m(hronous)g(ev)m(en)m(ts)i(sen)m(t)f
 (to)g(a)g(pro)s(cess)f(b)m(y)h(the)f(Unix)g(k)m(ernel,)i(sometimes)f
-(on)g(b)s(ehalf)150 5230 y(of)k(another)g(pro)s(cess.)53
+(on)g(b)s(ehalf)150 568 y(of)k(another)g(pro)s(cess.)53
 b(They)34 b(are)h(in)m(tended)g(to)g(indicate)h(exceptional)g(ev)m(en)m
-(ts,)i(lik)m(e)e(a)f(user)f(pressing)150 5340 y(the)g(in)m(terrupt)f(k)
-m(ey)h(on)g(his)f(terminal,)i(or)f(a)g(net)m(w)m(ork)g(connection)h(b)s
-(eing)e(brok)m(en.)50 b(There)34 b(is)f(a)h(class)p eop
-end
-%%Page: 44 48
-TeXDict begin 44 47 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(44)150
-299 y(of)29 b(signals)g(that)h(can)f(b)s(e)f(sen)m(t)h(to)h(the)f(pro)s
+(ts,)i(lik)m(e)e(a)f(user)f(pressing)150 677 y(the)g(in)m(terrupt)f(k)m
+(ey)h(on)g(his)f(terminal,)i(or)f(a)g(net)m(w)m(ork)g(connection)h(b)s
+(eing)e(brok)m(en.)50 b(There)34 b(is)f(a)h(class)150
+787 y(of)29 b(signals)g(that)h(can)f(b)s(e)f(sen)m(t)h(to)h(the)f(pro)s
 (cess)f(curren)m(tly)h(reading)g(input)f(from)g(the)h(k)m(eyb)s(oard.)
-40 b(Since)150 408 y(Readline)45 b(c)m(hanges)g(the)g(terminal)g
+40 b(Since)150 897 y(Readline)45 b(c)m(hanges)g(the)g(terminal)g
 (attributes)g(when)e(it)i(is)g(called,)k(it)c(needs)f(to)h(p)s(erform)e
-(sp)s(ecial)150 518 y(pro)s(cessing)27 b(when)g(suc)m(h)g(a)h(signal)g
+(sp)s(ecial)150 1006 y(pro)s(cessing)27 b(when)g(suc)m(h)g(a)h(signal)g
 (is)g(receiv)m(ed)h(in)e(order)g(to)h(restore)h(the)e(terminal)h(to)h
-(a)f(sane)f(state,)j(or)150 628 y(pro)m(vide)g(application)i(writers)e
+(a)f(sane)f(state,)j(or)150 1116 y(pro)m(vide)g(application)i(writers)e
 (with)g(functions)g(to)h(do)g(so)f(man)m(ually)-8 b(.)275
-777 y(Readline)40 b(con)m(tains)i(an)e(in)m(ternal)h(signal)g(handler)f
-(that)h(is)f(installed)h(for)f(a)h(n)m(um)m(b)s(er)e(of)h(signals)150
-887 y(\()p Fr(SIGINT)p Fs(,)e Fr(SIGQUIT)p Fs(,)f Fr(SIGTERM)p
+1270 y(Readline)40 b(con)m(tains)i(an)e(in)m(ternal)h(signal)g(handler)
+f(that)h(is)f(installed)h(for)f(a)h(n)m(um)m(b)s(er)e(of)h(signals)150
+1380 y(\()p Fr(SIGINT)p Fs(,)e Fr(SIGQUIT)p Fs(,)f Fr(SIGTERM)p
 Fs(,)g Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p Fs(,)g Fr(SIGTSTP)p
 Fs(,)g Fr(SIGTTIN)p Fs(,)g(and)g Fr(SIGTTOU)p Fs(\).)59
-b(When)150 996 y(one)27 b(of)g(these)g(signals)g(is)g(receiv)m(ed,)i
+b(When)150 1489 y(one)27 b(of)g(these)g(signals)g(is)g(receiv)m(ed,)i
 (the)e(signal)g(handler)f(will)h(reset)h(the)e(terminal)i(attributes)f
-(to)g(those)150 1106 y(that)33 b(w)m(ere)g(in)f(e\013ect)h(b)s(efore)f
+(to)g(those)150 1599 y(that)33 b(w)m(ere)g(in)f(e\013ect)h(b)s(efore)f
 Fr(readline\(\))e Fs(w)m(as)i(called,)j(reset)d(the)h(signal)g
-(handling)f(to)h(what)f(it)h(w)m(as)150 1215 y(b)s(efore)26
+(handling)f(to)h(what)f(it)h(w)m(as)150 1709 y(b)s(efore)26
 b Fr(readline\(\))e Fs(w)m(as)j(called,)i(and)d(resend)g(the)h(signal)g
 (to)h(the)f(calling)h(application.)41 b(If)26 b(and)g(when)150
-1325 y(the)34 b(calling)i(application's)f(signal)g(handler)e(returns,)h
+1818 y(the)34 b(calling)i(application's)f(signal)g(handler)e(returns,)h
 (Readline)g(will)h(reinitialize)h(the)e(terminal)h(and)150
-1435 y(con)m(tin)m(ue)29 b(to)g(accept)h(input.)39 b(When)28
+1928 y(con)m(tin)m(ue)29 b(to)g(accept)h(input.)39 b(When)28
 b(a)h Fr(SIGINT)d Fs(is)j(receiv)m(ed,)h(the)e(Readline)h(signal)g
-(handler)f(p)s(erforms)150 1544 y(some)39 b(additional)h(w)m(ork,)h
+(handler)f(p)s(erforms)150 2037 y(some)39 b(additional)h(w)m(ork,)h
 (whic)m(h)d(will)h(cause)g(an)m(y)h(partially-en)m(tered)g(line)f(to)h
-(b)s(e)e(ab)s(orted)g(\(see)i(the)150 1654 y(description)30
+(b)s(e)e(ab)s(orted)g(\(see)i(the)150 2147 y(description)30
 b(of)h Fr(rl_free_line_state\(\))25 b Fs(b)s(elo)m(w\).)275
-1803 y(There)e(is)i(an)f(additional)h(Readline)g(signal)g(handler,)g
+2301 y(There)e(is)i(an)f(additional)h(Readline)g(signal)g(handler,)g
 (for)f Fr(SIGWINCH)p Fs(,)g(whic)m(h)g(the)g(k)m(ernel)h(sends)e(to)j
-(a)150 1913 y(pro)s(cess)i(whenev)m(er)h(the)g(terminal's)g(size)h(c)m
+(a)150 2411 y(pro)s(cess)i(whenev)m(er)h(the)g(terminal's)g(size)h(c)m
 (hanges)g(\(for)f(example,)h(if)f(a)g(user)f(resizes)i(an)e
-Fr(xterm)p Fs(\).)39 b(The)150 2022 y(Readline)d Fr(SIGWINCH)e
+Fr(xterm)p Fs(\).)39 b(The)150 2521 y(Readline)d Fr(SIGWINCH)e
 Fs(handler)g(up)s(dates)h(Readline's)h(in)m(ternal)h(screen)e(size)i
-(information,)g(and)e(then)150 2132 y(calls)g(an)m(y)f
+(information,)g(and)e(then)150 2630 y(calls)g(an)m(y)f
 Fr(SIGWINCH)e Fs(signal)i(handler)f(the)h(calling)h(application)g(has)f
-(installed.)51 b(Readline)35 b(calls)g(the)150 2242 y(application's)i
+(installed.)51 b(Readline)35 b(calls)g(the)150 2740 y(application's)i
 Fr(SIGWINCH)c Fs(signal)i(handler)g(without)g(resetting)h(the)g
-(terminal)f(to)h(its)g(original)g(state.)150 2351 y(If)31
+(terminal)f(to)h(its)g(original)g(state.)150 2849 y(If)31
 b(the)i(application's)g(signal)g(handler)e(do)s(es)g(more)h(than)g(up)s
 (date)f(its)i(idea)f(of)g(the)g(terminal)h(size)g(and)150
-2461 y(return)28 b(\(for)i(example,)h(a)f Fr(longjmp)d
+2959 y(return)28 b(\(for)i(example,)h(a)f Fr(longjmp)d
 Fs(bac)m(k)k(to)f(a)g(main)g(pro)s(cessing)f(lo)s(op\),)h(it)g
-Fj(must)39 b Fs(call)31 b Fr(rl_cleanup_)150 2570 y(after_signal\(\))26
+Fj(must)39 b Fs(call)31 b Fr(rl_cleanup_)150 3068 y(after_signal\(\))26
 b Fs(\(describ)s(ed)k(b)s(elo)m(w\),)h(to)g(restore)g(the)g(terminal)g
-(state.)275 2720 y(Readline)e(pro)m(vides)f(t)m(w)m(o)i(v)-5
-b(ariables)29 b(that)h(allo)m(w)g(application)g(writers)e(to)h(con)m
-(trol)h(whether)e(or)h(not)150 2829 y(it)34 b(will)f(catc)m(h)i
-(certain)f(signals)f(and)g(act)h(on)f(them)g(when)f(they)i(are)f
-(receiv)m(ed.)51 b(It)33 b(is)g(imp)s(ortan)m(t)g(that)150
-2939 y(applications)38 b(c)m(hange)g(the)e(v)-5 b(alues)37
-b(of)g(these)g(v)-5 b(ariables)37 b(only)g(when)f(calling)i
-Fr(readline\(\))p Fs(,)d(not)i(in)g(a)150 3049 y(signal)31
-b(handler,)f(so)g(Readline's)i(in)m(ternal)f(signal)g(state)h(is)e(not)
-h(corrupted.)3371 3263 y([V)-8 b(ariable])-3598 b Fg(int)53
-b(rl_catch_signals)390 3372 y Fs(If)28 b(this)h(v)-5
-b(ariable)30 b(is)f(non-zero,)h(Readline)f(will)g(install)h(signal)f
-(handlers)f(for)h Fr(SIGINT)p Fs(,)f Fr(SIGQUIT)p Fs(,)390
-3482 y Fr(SIGTERM)p Fs(,)h Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p
-Fs(,)f Fr(SIGTSTP)p Fs(,)h Fr(SIGTTIN)p Fs(,)f(and)i
-Fr(SIGTTOU)p Fs(.)390 3631 y(The)g(default)g(v)-5 b(alue)31
-b(of)g Fr(rl_catch_signals)26 b Fs(is)k(1.)3371 3846
-y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_catch_sigwinch)390
-3955 y Fs(If)37 b(this)h(v)-5 b(ariable)38 b(is)g(set)g(to)g(a)g
-(non-zero)g(v)-5 b(alue,)40 b(Readline)f(will)f(install)g(a)g(signal)g
-(handler)f(for)390 4065 y Fr(SIGWINCH)p Fs(.)390 4214
-y(The)30 b(default)g(v)-5 b(alue)31 b(of)g Fr(rl_catch_sigwinch)25
-b Fs(is)31 b(1.)3371 4428 y([V)-8 b(ariable])-3598 b
-Fg(int)53 b(rl_change_environment)390 4538 y Fs(If)31
-b(this)g(v)-5 b(ariable)32 b(is)f(set)h(to)g(a)g(non-zero)g(v)-5
-b(alue,)32 b(and)f(Readline)h(is)f(handling)g Fr(SIGWINCH)p
-Fs(,)e(Read-)390 4648 y(line)h(will)h(mo)s(dify)e(the)h
+(state.)275 3223 y(When)38 b(an)h(application)h(is)f(using)g(the)g
+(callbac)m(k)i(in)m(terface)f(\(see)g(Section)g(2.4.12)h([Alternate)f
+(In-)150 3333 y(terface],)48 b(page)c(41\),)j(Readline)c(installs)h
+(signal)g(handlers)e(only)h(for)f(the)h(duration)g(of)g(the)g(call)h
+(to)150 3442 y Fr(rl_callback_read_char)p Fs(.)c(Applications)33
+b(using)f(the)g(callbac)m(k)j(in)m(terface)e(should)f(b)s(e)f(prepared)
+g(to)150 3552 y(clean)d(up)d(Readline's)j(state)g(if)e(they)h(wish)f
+(to)h(handle)f(the)h(signal)h(b)s(efore)e(the)h(line)g(handler)f
+(completes)150 3661 y(and)k(restores)h(the)f(terminal)h(state.)275
+3816 y(Readline)e(pro)m(vides)f(t)m(w)m(o)i(v)-5 b(ariables)29
+b(that)h(allo)m(w)g(application)g(writers)e(to)h(con)m(trol)h(whether)e
+(or)h(not)150 3925 y(it)34 b(will)f(catc)m(h)i(certain)f(signals)f(and)
+g(act)h(on)f(them)g(when)f(they)i(are)f(receiv)m(ed.)51
+b(It)33 b(is)g(imp)s(ortan)m(t)g(that)150 4035 y(applications)38
+b(c)m(hange)g(the)e(v)-5 b(alues)37 b(of)g(these)g(v)-5
+b(ariables)37 b(only)g(when)f(calling)i Fr(readline\(\))p
+Fs(,)d(not)i(in)g(a)150 4144 y(signal)31 b(handler,)f(so)g(Readline's)i
+(in)m(ternal)f(signal)g(state)h(is)e(not)h(corrupted.)3371
+4369 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_catch_signals)390
+4478 y Fs(If)28 b(this)h(v)-5 b(ariable)30 b(is)f(non-zero,)h(Readline)
+f(will)g(install)h(signal)f(handlers)f(for)h Fr(SIGINT)p
+Fs(,)f Fr(SIGQUIT)p Fs(,)390 4588 y Fr(SIGTERM)p Fs(,)h
+Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p Fs(,)f Fr(SIGTSTP)p Fs(,)h
+Fr(SIGTTIN)p Fs(,)f(and)i Fr(SIGTTOU)p Fs(.)390 4742
+y(The)g(default)g(v)-5 b(alue)31 b(of)g Fr(rl_catch_signals)26
+b Fs(is)k(1.)3371 4966 y([V)-8 b(ariable])-3598 b Fg(int)53
+b(rl_catch_sigwinch)390 5076 y Fs(If)37 b(this)h(v)-5
+b(ariable)38 b(is)g(set)g(to)g(a)g(non-zero)g(v)-5 b(alue,)40
+b(Readline)f(will)f(install)g(a)g(signal)g(handler)f(for)390
+5186 y Fr(SIGWINCH)p Fs(.)390 5340 y(The)30 b(default)g(v)-5
+b(alue)31 b(of)g Fr(rl_catch_sigwinch)25 b Fs(is)31 b(1.)p
+eop end
+%%Page: 46 50
+TeXDict begin 46 49 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(46)3371
+299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_change_environment)390
+408 y Fs(If)31 b(this)g(v)-5 b(ariable)32 b(is)f(set)h(to)g(a)g
+(non-zero)g(v)-5 b(alue,)32 b(and)f(Readline)h(is)f(handling)g
+Fr(SIGWINCH)p Fs(,)e(Read-)390 518 y(line)h(will)h(mo)s(dify)e(the)h
 Fi(LINES)35 b Fs(and)29 b Fi(COLUMNS)35 b Fs(en)m(vironmen)m(t)30
 b(v)-5 b(ariables)31 b(up)s(on)d(receipt)j(of)g(a)390
-4757 y Fr(SIGWINCH)390 4907 y Fs(The)f(default)g(v)-5
-b(alue)31 b(of)g Fr(rl_change_environment)24 b Fs(is)31
-b(1.)275 5121 y(If)f(an)h(application)h(do)s(es)f(not)g(wish)f(to)i(ha)
-m(v)m(e)g(Readline)g(catc)m(h)g(an)m(y)f(signals,)h(or)f(to)h(handle)e
-(signals)150 5230 y(other)39 b(than)f(those)h(Readline)h(catc)m(hes)g
-(\()p Fr(SIGHUP)p Fs(,)g(for)e(example\),)k(Readline)d(pro)m(vides)g
-(con)m(v)m(enience)150 5340 y(functions)30 b(to)h(do)f(the)h(necessary)
-g(terminal)g(and)e(in)m(ternal)i(state)h(clean)m(up)f(up)s(on)e
-(receipt)i(of)g(a)f(signal.)p eop end
-%%Page: 45 49
-TeXDict begin 45 48 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(45)3350
-299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_cleanup_after_signal)e
-Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(This)33 b(function)h(will)g
-(reset)g(the)g(state)i(of)e(the)g(terminal)g(to)h(what)f(it)g(w)m(as)g
-(b)s(efore)g Fr(readline\(\))390 518 y Fs(w)m(as)c(called,)h(and)d
-(remo)m(v)m(e)j(the)f(Readline)g(signal)g(handlers)e(for)h(all)h
-(signals,)h(dep)s(ending)d(on)h(the)390 628 y(v)-5 b(alues)31
-b(of)f Fr(rl_catch_signals)c Fs(and)k Fr(rl_catch_sigwinch)p
-Fs(.)3350 799 y([F)-8 b(unction])-3599 b Fg(void)54 b
-(rl_free_line_state)c Ff(\()p Fi(v)m(oid)p Ff(\))390
-909 y Fs(This)38 b(will)i(free)f(an)m(y)h(partial)g(state)g(asso)s
+628 y Fr(SIGWINCH)390 767 y Fs(The)f(default)g(v)-5 b(alue)31
+b(of)g Fr(rl_change_environment)24 b Fs(is)31 b(1.)275
+961 y(If)f(an)h(application)h(do)s(es)f(not)g(wish)f(to)i(ha)m(v)m(e)g
+(Readline)g(catc)m(h)g(an)m(y)f(signals,)h(or)f(to)h(handle)e(signals)
+150 1071 y(other)39 b(than)f(those)h(Readline)h(catc)m(hes)g(\()p
+Fr(SIGHUP)p Fs(,)g(for)e(example\),)k(Readline)d(pro)m(vides)g(con)m(v)
+m(enience)150 1181 y(functions)30 b(to)h(do)f(the)h(necessary)g
+(terminal)g(and)e(in)m(ternal)i(state)h(clean)m(up)f(up)s(on)e(receipt)
+i(of)g(a)f(signal.)3350 1375 y([F)-8 b(unction])-3599
+b Fg(void)54 b(rl_cleanup_after_signal)e Ff(\()p Fi(v)m(oid)p
+Ff(\))390 1484 y Fs(This)33 b(function)h(will)g(reset)g(the)g(state)i
+(of)e(the)g(terminal)g(to)h(what)f(it)g(w)m(as)g(b)s(efore)g
+Fr(readline\(\))390 1594 y Fs(w)m(as)c(called,)h(and)d(remo)m(v)m(e)j
+(the)f(Readline)g(signal)g(handlers)e(for)h(all)h(signals,)h(dep)s
+(ending)d(on)h(the)390 1704 y(v)-5 b(alues)31 b(of)f
+Fr(rl_catch_signals)c Fs(and)k Fr(rl_catch_sigwinch)p
+Fs(.)3350 1898 y([F)-8 b(unction])-3599 b Fg(void)54
+b(rl_free_line_state)c Ff(\()p Fi(v)m(oid)p Ff(\))390
+2007 y Fs(This)38 b(will)i(free)f(an)m(y)h(partial)g(state)g(asso)s
 (ciated)h(with)e(the)g(curren)m(t)g(input)f(line)i(\(undo)e(infor-)390
-1019 y(mation,)46 b(an)m(y)d(partial)h(history)e(en)m(try)-8
+2117 y(mation,)46 b(an)m(y)d(partial)h(history)e(en)m(try)-8
 b(,)47 b(an)m(y)42 b(partially-en)m(tered)j(k)m(eyb)s(oard)d(macro,)47
-b(and)42 b(an)m(y)390 1128 y(partially-en)m(tered)50
+b(and)42 b(an)m(y)390 2227 y(partially-en)m(tered)50
 b(n)m(umeric)d(argumen)m(t\).)94 b(This)47 b(should)g(b)s(e)g(called)i
-(b)s(efore)e Fr(rl_cleanup_)390 1238 y(after_signal\(\))p
+(b)s(efore)e Fr(rl_cleanup_)390 2336 y(after_signal\(\))p
 Fs(.)74 b(The)42 b(Readline)h(signal)g(handler)f(for)h
 Fr(SIGINT)e Fs(calls)i(this)g(to)g(ab)s(ort)g(the)390
-1347 y(curren)m(t)30 b(input)g(line.)3350 1519 y([F)-8
+2446 y(curren)m(t)30 b(input)g(line.)3350 2640 y([F)-8
 b(unction])-3599 b Fg(void)54 b(rl_reset_after_signal)d
-Ff(\()p Fi(v)m(oid)p Ff(\))390 1629 y Fs(This)28 b(will)g(reinitialize)
+Ff(\()p Fi(v)m(oid)p Ff(\))390 2750 y Fs(This)28 b(will)g(reinitialize)
 j(the)e(terminal)g(and)f(reinstall)h(an)m(y)g(Readline)g(signal)g
-(handlers,)f(dep)s(end-)390 1738 y(ing)j(on)f(the)g(v)-5
+(handlers,)f(dep)s(end-)390 2859 y(ing)j(on)f(the)g(v)-5
 b(alues)31 b(of)g Fr(rl_catch_signals)26 b Fs(and)j Fr
-(rl_catch_sigwinch)p Fs(.)275 1910 y(If)38 b(an)i(application)g(do)s
+(rl_catch_sigwinch)p Fs(.)275 3054 y(If)38 b(an)i(application)g(do)s
 (es)f(not)h(wish)f(Readline)h(to)g(catc)m(h)h Fr(SIGWINCH)p
-Fs(,)e(it)h(ma)m(y)g(call)h Fr(rl_resize_)150 2020 y(terminal\(\))24
+Fs(,)e(it)h(ma)m(y)g(call)h Fr(rl_resize_)150 3163 y(terminal\(\))24
 b Fs(or)j Fr(rl_set_screen_size\(\))22 b Fs(to)28 b(force)g(Readline)f
 (to)h(up)s(date)f(its)g(idea)h(of)f(the)g(terminal)150
-2129 y(size)k(when)f(a)g Fr(SIGWINCH)e Fs(is)j(receiv)m(ed.)3350
-2301 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_echo_signal_char)d
-Ff(\()p Fi(in)m(t)31 b(sig)p Ff(\))390 2411 y Fs(If)43
+3273 y(size)k(when)f(a)g Fr(SIGWINCH)e Fs(is)j(receiv)m(ed.)3350
+3467 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_echo_signal_char)d
+Ff(\()p Fi(in)m(t)31 b(sig)p Ff(\))390 3577 y Fs(If)43
 b(an)g(application)i(wishes)e(to)i(install)f(its)g(o)m(wn)f(signal)i
 (handlers,)h(but)c(still)j(ha)m(v)m(e)g(readline)390
-2520 y(displa)m(y)31 b(c)m(haracters)h(that)f(generate)h(signals,)f
+3686 y(displa)m(y)31 b(c)m(haracters)h(that)f(generate)h(signals,)f
 (calling)h(this)e(function)g(with)g Fi(sig)39 b Fs(set)31
-b(to)g Fr(SIGINT)p Fs(,)390 2630 y Fr(SIGQUIT)p Fs(,)e(or)h
+b(to)g Fr(SIGINT)p Fs(,)390 3796 y Fr(SIGQUIT)p Fs(,)e(or)h
 Fr(SIGTSTP)e Fs(will)j(displa)m(y)g(the)f(c)m(haracter)i(generating)g
-(that)f(signal.)3350 2802 y([F)-8 b(unction])-3599 b
+(that)f(signal.)3350 3990 y([F)-8 b(unction])-3599 b
 Fg(void)54 b(rl_resize_terminal)c Ff(\()p Fi(v)m(oid)p
-Ff(\))390 2911 y Fs(Up)s(date)30 b(Readline's)h(in)m(ternal)g(screen)g
+Ff(\))390 4100 y Fs(Up)s(date)30 b(Readline's)h(in)m(ternal)g(screen)g
 (size)g(b)m(y)f(reading)h(v)-5 b(alues)31 b(from)f(the)g(k)m(ernel.)
-3350 3083 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_set_screen_size)c
+3350 4294 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_set_screen_size)c
 Ff(\()p Fi(in)m(t)32 b(ro)m(ws,)e(in)m(t)h(cols)p Ff(\))390
-3193 y Fs(Set)d(Readline's)h(idea)f(of)g(the)g(terminal)g(size)h(to)g
+4403 y Fs(Set)d(Readline's)h(idea)f(of)g(the)g(terminal)g(size)h(to)g
 Fi(ro)m(ws)i Fs(ro)m(ws)d(and)f Fi(cols)33 b Fs(columns.)40
-b(If)27 b(either)h Fi(ro)m(ws)390 3302 y Fs(or)35 b Fi(columns)k
+b(If)27 b(either)h Fi(ro)m(ws)390 4513 y Fs(or)35 b Fi(columns)k
 Fs(is)c(less)g(than)g(or)g(equal)h(to)g(0,)h(Readline's)f(idea)g(of)f
-(that)h(terminal)f(dimension)g(is)390 3412 y(unc)m(hanged.)275
-3584 y(If)d(an)i(application)g(do)s(es)f(not)h(w)m(an)m(t)g(to)g
+(that)h(terminal)f(dimension)g(is)390 4623 y(unc)m(hanged.)275
+4817 y(If)d(an)i(application)g(do)s(es)f(not)h(w)m(an)m(t)g(to)g
 (install)g(a)g Fr(SIGWINCH)d Fs(handler,)j(but)e(is)i(still)g(in)m
-(terested)g(in)150 3693 y(the)d(screen)f(dimensions,)g(Readline's)h
+(terested)g(in)150 4927 y(the)d(screen)f(dimensions,)g(Readline's)h
 (idea)g(of)g(the)f(screen)h(size)g(ma)m(y)g(b)s(e)f(queried.)3350
-3865 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_get_screen_size)c
+5121 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_get_screen_size)c
 Ff(\()p Fi(in)m(t)32 b(*ro)m(ws,)f(in)m(t)g(*cols)p Ff(\))390
-3975 y Fs(Return)e(Readline's)i(idea)g(of)f(the)g(terminal's)h(size)g
+5230 y Fs(Return)e(Readline's)i(idea)g(of)f(the)g(terminal's)h(size)g
 (in)f(the)g(v)-5 b(ariables)31 b(p)s(oin)m(ted)f(to)g(b)m(y)g(the)h
-(argu-)390 4084 y(men)m(ts.)3350 4256 y([F)-8 b(unction])-3599
-b Fg(void)54 b(rl_reset_screen_size)d Ff(\()p Fi(v)m(oid)p
-Ff(\))390 4366 y Fs(Cause)30 b(Readline)h(to)g(reobtain)g(the)g(screen)
-f(size)h(and)f(recalculate)j(its)e(dimensions.)275 4538
-y(The)e(follo)m(wing)j(functions)e(install)h(and)f(remo)m(v)m(e)i
-(Readline's)f(signal)g(handlers.)3350 4710 y([F)-8 b(unction])-3599
-b Fg(int)53 b(rl_set_signals)d Ff(\()p Fi(v)m(oid)p Ff(\))390
-4819 y Fs(Install)40 b(Readline's)h(signal)f(handler)f(for)h
-Fr(SIGINT)p Fs(,)h Fr(SIGQUIT)p Fs(,)f Fr(SIGTERM)p Fs(,)h
-Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p Fs(,)390 4929 y Fr(SIGTSTP)p
-Fs(,)35 b Fr(SIGTTIN)p Fs(,)f Fr(SIGTTOU)p Fs(,)h(and)g
-Fr(SIGWINCH)p Fs(,)f(dep)s(ending)g(on)h(the)g(v)-5 b(alues)36
-b(of)f Fr(rl_catch_)390 5038 y(signals)28 b Fs(and)i
-Fr(rl_catch_sigwinch)p Fs(.)3350 5210 y([F)-8 b(unction])-3599
-b Fg(int)53 b(rl_clear_signals)e Ff(\()p Fi(v)m(oid)p
-Ff(\))390 5320 y Fs(Remo)m(v)m(e)32 b(all)f(of)g(the)g(Readline)g
-(signal)g(handlers)e(installed)i(b)m(y)f Fr(rl_set_signals\(\))p
-Fs(.)p eop end
-%%Page: 46 50
-TeXDict begin 46 49 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(46)150
-299 y Fq(2.6)68 b(Custom)45 b(Completers)150 458 y Fs(T)m(ypically)-8
-b(,)47 b(a)c(program)g(that)g(reads)f(commands)h(from)f(the)g(user)g
-(has)h(a)g(w)m(a)m(y)g(of)g(disam)m(biguating)150 568
-y(commands)35 b(and)g(data.)56 b(If)35 b(y)m(our)h(program)f(is)g(one)h
-(of)g(these,)h(then)e(it)h(can)g(pro)m(vide)f(completion)i(for)150
-677 y(commands,)29 b(data,)i(or)e(b)s(oth.)39 b(The)29
-b(follo)m(wing)i(sections)f(describ)s(e)e(ho)m(w)i(y)m(our)f(program)g
-(and)f(Readline)150 787 y(co)s(op)s(erate)j(to)h(pro)m(vide)e(this)g
-(service.)150 970 y Fh(2.6.1)63 b(Ho)m(w)40 b(Completing)i(W)-10
-b(orks)150 1117 y Fs(In)26 b(order)f(to)i(complete)h(some)f(text,)h
-(the)f(full)f(list)h(of)f(p)s(ossible)g(completions)h(m)m(ust)g(b)s(e)e
-(a)m(v)-5 b(ailable.)42 b(That)150 1227 y(is,)28 b(it)f(is)g(not)g(p)s
-(ossible)g(to)g(accurately)i(expand)d(a)h(partial)h(w)m(ord)f(without)f
-(kno)m(wing)i(all)f(of)g(the)g(p)s(ossible)150 1336 y(w)m(ords)33
+(argu-)390 5340 y(men)m(ts.)p eop end
+%%Page: 47 51
+TeXDict begin 47 50 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(47)3350
+299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_reset_screen_size)d
+Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Cause)30 b(Readline)h(to)g
+(reobtain)g(the)g(screen)f(size)h(and)f(recalculate)j(its)e
+(dimensions.)275 599 y(The)e(follo)m(wing)j(functions)e(install)h(and)f
+(remo)m(v)m(e)i(Readline's)f(signal)g(handlers.)3350
+789 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_set_signals)d
+Ff(\()p Fi(v)m(oid)p Ff(\))390 899 y Fs(Install)40 b(Readline's)h
+(signal)f(handler)f(for)h Fr(SIGINT)p Fs(,)h Fr(SIGQUIT)p
+Fs(,)f Fr(SIGTERM)p Fs(,)h Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p
+Fs(,)390 1008 y Fr(SIGTSTP)p Fs(,)35 b Fr(SIGTTIN)p Fs(,)f
+Fr(SIGTTOU)p Fs(,)h(and)g Fr(SIGWINCH)p Fs(,)f(dep)s(ending)g(on)h(the)
+g(v)-5 b(alues)36 b(of)f Fr(rl_catch_)390 1118 y(signals)28
+b Fs(and)i Fr(rl_catch_sigwinch)p Fs(.)3350 1308 y([F)-8
+b(unction])-3599 b Fg(int)53 b(rl_clear_signals)e Ff(\()p
+Fi(v)m(oid)p Ff(\))390 1418 y Fs(Remo)m(v)m(e)32 b(all)f(of)g(the)g
+(Readline)g(signal)g(handlers)e(installed)i(b)m(y)f Fr
+(rl_set_signals\(\))p Fs(.)150 1654 y Fq(2.6)68 b(Custom)45
+b(Completers)150 1814 y Fs(T)m(ypically)-8 b(,)47 b(a)c(program)g(that)
+g(reads)f(commands)h(from)f(the)g(user)g(has)h(a)g(w)m(a)m(y)g(of)g
+(disam)m(biguating)150 1923 y(commands)35 b(and)g(data.)56
+b(If)35 b(y)m(our)h(program)f(is)g(one)h(of)g(these,)h(then)e(it)h(can)
+g(pro)m(vide)f(completion)i(for)150 2033 y(commands,)29
+b(data,)i(or)e(b)s(oth.)39 b(The)29 b(follo)m(wing)i(sections)f
+(describ)s(e)e(ho)m(w)i(y)m(our)f(program)g(and)f(Readline)150
+2143 y(co)s(op)s(erate)j(to)h(pro)m(vide)e(this)g(service.)150
+2345 y Fh(2.6.1)63 b(Ho)m(w)40 b(Completing)i(W)-10 b(orks)150
+2492 y Fs(In)26 b(order)f(to)i(complete)h(some)f(text,)h(the)f(full)f
+(list)h(of)f(p)s(ossible)g(completions)h(m)m(ust)g(b)s(e)e(a)m(v)-5
+b(ailable.)42 b(That)150 2601 y(is,)28 b(it)f(is)g(not)g(p)s(ossible)g
+(to)g(accurately)i(expand)d(a)h(partial)h(w)m(ord)f(without)f(kno)m
+(wing)i(all)f(of)g(the)g(p)s(ossible)150 2711 y(w)m(ords)33
 b(whic)m(h)g(mak)m(e)h(sense)f(in)g(that)g(con)m(text.)51
 b(The)33 b(Readline)h(library)e(pro)m(vides)i(the)f(user)f(in)m
-(terface)150 1446 y(to)d(completion,)h(and)e(t)m(w)m(o)i(of)e(the)h
+(terface)150 2821 y(to)d(completion,)h(and)e(t)m(w)m(o)i(of)e(the)h
 (most)f(common)h(completion)h(functions:)39 b(\014lename)29
-b(and)e(username.)150 1555 y(F)-8 b(or)39 b(completing)g(other)f(t)m
+b(and)e(username.)150 2930 y(F)-8 b(or)39 b(completing)g(other)f(t)m
 (yp)s(es)g(of)h(text,)i(y)m(ou)d(m)m(ust)g(write)g(y)m(our)g(o)m(wn)g
-(completion)h(function.)64 b(This)150 1665 y(section)32
+(completion)h(function.)64 b(This)150 3040 y(section)32
 b(describ)s(es)d(exactly)j(what)f(suc)m(h)f(functions)g(m)m(ust)g(do,)g
-(and)g(pro)m(vides)g(an)h(example.)275 1791 y(There)e(are)i(three)g(ma)
+(and)g(pro)m(vides)g(an)h(example.)275 3177 y(There)e(are)i(three)g(ma)
 5 b(jor)30 b(functions)g(used)g(to)h(p)s(erform)e(completion:)199
-1918 y(1.)61 b(The)43 b(user-in)m(terface)h(function)f
+3315 y(1.)61 b(The)43 b(user-in)m(terface)h(function)f
 Fr(rl_complete\(\))p Fs(.)76 b(This)43 b(function)g(is)g(called)i(with)
-e(the)h(same)330 2027 y(argumen)m(ts)36 b(as)g(other)g(bindable)f
+e(the)h(same)330 3424 y(argumen)m(ts)36 b(as)g(other)g(bindable)f
 (Readline)h(functions:)51 b Fi(coun)m(t)38 b Fs(and)d
-Fi(in)m(v)m(oking)p 3107 2027 28 4 v 41 w(k)m(ey)p Fs(.)57
-b(It)36 b(isolates)330 2137 y(the)i(w)m(ord)f(to)h(b)s(e)f(completed)i
+Fi(in)m(v)m(oking)p 3107 3424 28 4 v 41 w(k)m(ey)p Fs(.)57
+b(It)36 b(isolates)330 3534 y(the)i(w)m(ord)f(to)h(b)s(e)f(completed)i
 (and)d(calls)j Fr(rl_completion_matches\(\))31 b Fs(to)39
-b(generate)g(a)f(list)g(of)330 2247 y(p)s(ossible)31
+b(generate)g(a)f(list)g(of)330 3643 y(p)s(ossible)31
 b(completions.)44 b(It)31 b(then)g(either)g(lists)h(the)f(p)s(ossible)g
-(completions,)h(inserts)f(the)g(p)s(ossible)330 2356
+(completions,)h(inserts)f(the)g(p)s(ossible)330 3753
 y(completions,)50 b(or)45 b(actually)i(p)s(erforms)d(the)h(completion,)
 50 b(dep)s(ending)44 b(on)h(whic)m(h)g(b)s(eha)m(vior)g(is)330
-2466 y(desired.)199 2592 y(2.)61 b(The)33 b(in)m(ternal)h(function)g
+3863 y(desired.)199 3999 y(2.)61 b(The)33 b(in)m(ternal)h(function)g
 Fr(rl_completion_matches\(\))27 b Fs(uses)33 b(an)g
-(application-supplied)h Fi(gener-)330 2702 y(ator)44
+(application-supplied)h Fi(gener-)330 4108 y(ator)44
 b Fs(function)37 b(to)h(generate)g(the)f(list)h(of)f(p)s(ossible)f
 (matc)m(hes,)k(and)d(then)f(returns)g(the)h(arra)m(y)h(of)330
-2811 y(these)h(matc)m(hes.)68 b(The)39 b(caller)h(should)e(place)i(the)
+4218 y(these)h(matc)m(hes.)68 b(The)39 b(caller)h(should)e(place)i(the)
 f(address)f(of)h(its)g(generator)i(function)d(in)h Fr(rl_)330
-2921 y(completion_entry_functio)o(n)p Fs(.)199 3047 y(3.)61
+4327 y(completion_entry_functio)o(n)p Fs(.)199 4463 y(3.)61
 b(The)22 b(generator)i(function)f(is)g(called)h(rep)s(eatedly)f(from)g
-Fr(rl_completion_matches\(\))o Fs(,)c(returning)330 3157
+Fr(rl_completion_matches\(\))o Fs(,)c(returning)330 4573
 y(a)33 b(string)g(eac)m(h)h(time.)48 b(The)32 b(argumen)m(ts)h(to)h
 (the)f(generator)h(function)e(are)h Fi(text)j Fs(and)c
-Fi(state)p Fs(.)49 b Fi(text)330 3267 y Fs(is)32 b(the)g(partial)h(w)m
+Fi(state)p Fs(.)49 b Fi(text)330 4682 y Fs(is)32 b(the)g(partial)h(w)m
 (ord)f(to)h(b)s(e)e(completed.)47 b Fi(state)38 b Fs(is)32
 b(zero)h(the)f(\014rst)g(time)g(the)h(function)e(is)h(called,)330
-3376 y(allo)m(wing)46 b(the)e(generator)h(to)f(p)s(erform)f(an)m(y)h
+4792 y(allo)m(wing)46 b(the)e(generator)h(to)f(p)s(erform)f(an)m(y)h
 (necessary)g(initialization,)51 b(and)43 b(a)h(p)s(ositiv)m(e)h(non-)
-330 3486 y(zero)30 b(in)m(teger)h(for)d(eac)m(h)j(subsequen)m(t)d
+330 4902 y(zero)30 b(in)m(teger)h(for)d(eac)m(h)j(subsequen)m(t)d
 (call.)42 b(The)29 b(generator)h(function)f(returns)f
-Fr(\(char)h(*\)NULL)e Fs(to)330 3595 y(inform)37 b Fr
+Fr(\(char)h(*\)NULL)e Fs(to)330 5011 y(inform)37 b Fr
 (rl_completion_matches\(\))32 b Fs(that)39 b(there)f(are)g(no)g(more)g
-(p)s(ossibilities)h(left.)65 b(Usually)330 3705 y(the)39
+(p)s(ossibilities)h(left.)65 b(Usually)330 5121 y(the)39
 b(generator)h(function)e(computes)h(the)g(list)g(of)g(p)s(ossible)f
 (completions)i(when)e Fi(state)45 b Fs(is)39 b(zero,)330
-3814 y(and)25 b(returns)f(them)i(one)f(at)i(a)f(time)g(on)f(subsequen)m
+5230 y(and)25 b(returns)f(them)i(one)f(at)i(a)f(time)g(on)f(subsequen)m
 (t)g(calls.)40 b(Eac)m(h)26 b(string)g(the)g(generator)g(function)330
-3924 y(returns)31 b(as)h(a)g(matc)m(h)h(m)m(ust)f(b)s(e)f(allo)s(cated)
+5340 y(returns)31 b(as)h(a)g(matc)m(h)h(m)m(ust)f(b)s(e)f(allo)s(cated)
 j(with)d Fr(malloc\(\))p Fs(;)g(Readline)h(frees)g(the)g(strings)g
-(when)330 4034 y(it)i(has)g(\014nished)e(with)i(them.)51
-b(Suc)m(h)33 b(a)h(generator)h(function)f(is)g(referred)f(to)h(as)h(an)
-e Fi(application-)330 4143 y(sp)s(eci\014c)d(completion)i(function)p
-Fs(.)3350 4303 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete)c
+(when)p eop end
+%%Page: 48 52
+TeXDict begin 48 51 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(48)330
+299 y(it)34 b(has)g(\014nished)e(with)i(them.)51 b(Suc)m(h)33
+b(a)h(generator)h(function)f(is)g(referred)f(to)h(as)h(an)e
+Fi(application-)330 408 y(sp)s(eci\014c)d(completion)i(function)p
+Fs(.)3350 572 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete)c
 Ff(\()p Fi(in)m(t)31 b(ignore,)g(in)m(t)g(in)m(v)m(oking)p
-1929 4303 V 42 w(k)m(ey)p Ff(\))390 4413 y Fs(Complete)g(the)g(w)m(ord)
-g(at)g(or)g(b)s(efore)f(p)s(oin)m(t.)41 b(Y)-8 b(ou)32
+1929 572 28 4 v 42 w(k)m(ey)p Ff(\))390 682 y Fs(Complete)g(the)g(w)m
+(ord)g(at)g(or)g(b)s(efore)f(p)s(oin)m(t.)41 b(Y)-8 b(ou)32
 b(ha)m(v)m(e)g(supplied)d(the)i(function)f(that)h(do)s(es)g(the)390
-4522 y(initial)42 b(simple)f(matc)m(hing)i(selection)f(algorithm)h
+792 y(initial)42 b(simple)f(matc)m(hing)i(selection)f(algorithm)h
 (\(see)f Fr(rl_completion_matches\(\))o Fs(\).)67 b(The)390
-4632 y(default)31 b(is)f(to)h(do)f(\014lename)h(completion.)3371
-4792 y([V)-8 b(ariable])-3598 b Fg(rl_compentry_func_t)58
-b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 4902
+901 y(default)31 b(is)f(to)h(do)f(\014lename)h(completion.)3371
+1065 y([V)-8 b(ariable])-3598 b Fg(rl_compentry_func_t)58
+b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 1175
 y Fs(This)39 b(is)h(a)g(p)s(oin)m(ter)g(to)h(the)f(generator)h
 (function)f(for)f Fr(rl_completion_matches\(\))p Fs(.)63
-b(If)40 b(the)390 5011 y(v)-5 b(alue)24 b(of)g Fr
+b(If)40 b(the)390 1284 y(v)-5 b(alue)24 b(of)g Fr
 (rl_completion_entry_funct)o(ion)17 b Fs(is)24 b Fr(NULL)f
 Fs(then)g(the)h(default)g(\014lename)g(generator)390
-5121 y(function,)49 b Fr(rl_filename_completion_)o(fun)o(ctio)o(n\(\))p
+1394 y(function,)49 b Fr(rl_filename_completion_)o(fun)o(ctio)o(n\(\))p
 Fs(,)42 b(is)j(used.)84 b(An)44 b Fi(application-sp)s(eci\014c)390
-5230 y(completion)22 b(function)f Fs(is)g(a)h(function)e(whose)h
+1503 y(completion)22 b(function)f Fs(is)g(a)h(function)e(whose)h
 (address)f(is)h(assigned)h(to)f Fr(rl_completion_entry_)390
-5340 y(function)28 b Fs(and)i(whose)g(return)f(v)-5 b(alues)31
-b(are)g(used)e(to)j(generate)f(p)s(ossible)f(completions.)p
-eop end
-%%Page: 47 51
-TeXDict begin 47 50 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(47)150
-299 y Fh(2.6.2)63 b(Completion)41 b(F)-10 b(unctions)150
-446 y Fs(Here)31 b(is)f(the)h(complete)h(list)f(of)f(callable)j
+1613 y(function)28 b Fs(and)i(whose)g(return)f(v)-5 b(alues)31
+b(are)g(used)e(to)j(generate)f(p)s(ossible)f(completions.)150
+1799 y Fh(2.6.2)63 b(Completion)41 b(F)-10 b(unctions)150
+1946 y Fs(Here)31 b(is)f(the)h(complete)h(list)f(of)f(callable)j
 (completion)e(functions)f(presen)m(t)h(in)f(Readline.)3350
-640 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete_internal)f
-Ff(\()p Fi(in)m(t)31 b(what)p 1828 640 28 4 v 40 w(to)p
-1948 640 V 41 w(do)p Ff(\))390 749 y Fs(Complete)37 b(the)g(w)m(ord)f
-(at)i(or)e(b)s(efore)g(p)s(oin)m(t.)60 b Fi(what)p 2208
-749 V 40 w(to)p 2328 749 V 41 w(do)41 b Fs(sa)m(ys)c(what)f(to)i(do)e
-(with)g(the)h(com-)390 859 y(pletion.)44 b(A)31 b(v)-5
+2109 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete_internal)f
+Ff(\()p Fi(in)m(t)31 b(what)p 1828 2109 V 40 w(to)p 1948
+2109 V 41 w(do)p Ff(\))390 2219 y Fs(Complete)37 b(the)g(w)m(ord)f(at)i
+(or)e(b)s(efore)g(p)s(oin)m(t.)60 b Fi(what)p 2208 2219
+V 40 w(to)p 2328 2219 V 41 w(do)41 b Fs(sa)m(ys)c(what)f(to)i(do)e
+(with)g(the)h(com-)390 2329 y(pletion.)44 b(A)31 b(v)-5
 b(alue)32 b(of)f(`)p Fr(?)p Fs(')g(means)h(list)f(the)h(p)s(ossible)e
 (completions.)45 b(`)p Fr(TAB)p Fs(')31 b(means)g(do)g(standard)390
-969 y(completion.)44 b(`)p Fr(*)p Fs(')32 b(means)f(insert)g(all)h(of)f
-(the)g(p)s(ossible)g(completions.)44 b(`)p Fr(!)p Fs(')32
-b(means)f(to)h(displa)m(y)f(all)390 1078 y(of)k(the)f(p)s(ossible)g
+2438 y(completion.)44 b(`)p Fr(*)p Fs(')32 b(means)f(insert)g(all)h(of)
+f(the)g(p)s(ossible)g(completions.)44 b(`)p Fr(!)p Fs(')32
+b(means)f(to)h(displa)m(y)f(all)390 2548 y(of)k(the)f(p)s(ossible)g
 (completions,)j(if)d(there)h(is)f(more)g(than)h(one,)g(as)g(w)m(ell)g
-(as)g(p)s(erforming)e(partial)390 1188 y(completion.)41
+(as)g(p)s(erforming)e(partial)390 2657 y(completion.)41
 b(`)p Fr(@)p Fs(')27 b(is)h(similar)f(to)h(`)p Fr(!)p
 Fs(',)h(but)d(p)s(ossible)h(completions)i(are)e(not)h(listed)g(if)f
-(the)g(p)s(ossible)390 1297 y(completions)32 b(share)e(a)g(common)h
-(pre\014x.)3350 1491 y([F)-8 b(unction])-3599 b Fg(int)53
+(the)g(p)s(ossible)390 2767 y(completions)32 b(share)e(a)g(common)h
+(pre\014x.)3350 2931 y([F)-8 b(unction])-3599 b Fg(int)53
 b(rl_complete)c Ff(\()p Fi(in)m(t)31 b(ignore,)g(in)m(t)g(in)m(v)m
-(oking)p 1929 1491 V 42 w(k)m(ey)p Ff(\))390 1601 y Fs(Complete)42
+(oking)p 1929 2931 V 42 w(k)m(ey)p Ff(\))390 3041 y Fs(Complete)42
 b(the)f(w)m(ord)g(at)h(or)f(b)s(efore)g(p)s(oin)m(t.)73
 b(Y)-8 b(ou)41 b(ha)m(v)m(e)i(supplied)c(the)j(function)f(that)g(do)s
-(es)390 1710 y(the)33 b(initial)h(simple)f(matc)m(hing)h(selection)h
+(es)390 3150 y(the)33 b(initial)h(simple)f(matc)m(hing)h(selection)h
 (algorithm)f(\(see)g Fr(rl_completion_matches\(\))27
-b Fs(and)390 1820 y Fr(rl_completion_entry_func)o(tion)o
+b Fs(and)390 3260 y Fr(rl_completion_entry_func)o(tion)o
 Fs(\).)52 b(The)35 b(default)h(is)g(to)h(do)e(\014lename)h(completion.)
-59 b(This)390 1930 y(calls)32 b Fr(rl_complete_internal\(\))24
+59 b(This)390 3369 y(calls)32 b Fr(rl_complete_internal\(\))24
 b Fs(with)30 b(an)g(argumen)m(t)h(dep)s(ending)e(on)h
-Fi(in)m(v)m(oking)p 3314 1930 V 41 w(k)m(ey)p Fs(.)3350
-2124 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_possible_completio)q(ns)
+Fi(in)m(v)m(oking)p 3314 3369 V 41 w(k)m(ey)p Fs(.)3350
+3533 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_possible_completio)q(ns)
 f Ff(\()p Fi(in)m(t)31 b(coun)m(t,)g(in)m(t)g(in)m(v)m(oking)p
-2534 2124 V 41 w(k)m(ey)p Ff(\))390 2233 y Fs(List)41
+2534 3533 V 41 w(k)m(ey)p Ff(\))390 3643 y Fs(List)41
 b(the)f(p)s(ossible)g(completions.)73 b(See)40 b(description)h(of)g
 Fr(rl_complete)27 b(\(\))p Fs(.)70 b(This)40 b(calls)i
-Fr(rl_)390 2343 y(complete_internal\(\))25 b Fs(with)30
-b(an)g(argumen)m(t)h(of)g(`)p Fr(?)p Fs('.)3350 2537
+Fr(rl_)390 3752 y(complete_internal\(\))25 b Fs(with)30
+b(an)g(argumen)m(t)h(of)g(`)p Fr(?)p Fs('.)3350 3916
 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_insert_completions)f
 Ff(\()p Fi(in)m(t)31 b(coun)m(t,)h(in)m(t)e(in)m(v)m(oking)p
-2429 2537 V 42 w(k)m(ey)p Ff(\))390 2646 y Fs(Insert)j(the)h(list)g(of)
+2429 3916 V 42 w(k)m(ey)p Ff(\))390 4026 y Fs(Insert)j(the)h(list)g(of)
 g(p)s(ossible)f(completions)i(in)m(to)f(the)g(line,)h(deleting)g(the)f
-(partially-completed)390 2756 y(w)m(ord.)44 b(See)32
+(partially-completed)390 4135 y(w)m(ord.)44 b(See)32
 b(description)g(of)g Fr(rl_complete\(\))p Fs(.)41 b(This)31
 b(calls)i Fr(rl_complete_internal\(\))25 b Fs(with)390
-2865 y(an)30 b(argumen)m(t)h(of)g(`)p Fr(*)p Fs('.)3350
-3059 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_completion_mode)e
-Ff(\()p Fi(rl)p 1448 3059 V 40 w(command)p 1872 3059
-V 40 w(func)p 2082 3059 V 39 w(t)31 b(*cfunc)p Ff(\))390
-3169 y Fs(Returns)40 b(the)i(appropriate)g(v)-5 b(alue)41
+4245 y(an)30 b(argumen)m(t)h(of)g(`)p Fr(*)p Fs('.)3350
+4409 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_completion_mode)e
+Ff(\()p Fi(rl)p 1448 4409 V 40 w(command)p 1872 4409
+V 40 w(func)p 2082 4409 V 39 w(t)31 b(*cfunc)p Ff(\))390
+4519 y Fs(Returns)40 b(the)i(appropriate)g(v)-5 b(alue)41
 b(to)i(pass)e(to)h Fr(rl_complete_internal\(\))35 b Fs(dep)s(ending)40
-b(on)390 3279 y(whether)g Fi(cfunc)46 b Fs(w)m(as)41
+b(on)390 4628 y(whether)g Fi(cfunc)46 b Fs(w)m(as)41
 b(called)h(t)m(wice)g(in)f(succession)g(and)f(the)h(v)-5
-b(alues)41 b(of)g(the)g Fr(show-all-if-)390 3388 y(ambiguous)25
+b(alues)41 b(of)g(the)g Fr(show-all-if-)390 4738 y(ambiguous)25
 b Fs(and)i Fr(show-all-if-unmodified)21 b Fs(v)-5 b(ariables.)41
-b(Application-sp)s(eci\014c)29 b(completion)390 3498
+b(Application-sp)s(eci\014c)29 b(completion)390 4847
 y(functions)h(ma)m(y)h(use)f(this)g(function)g(to)h(presen)m(t)g(the)f
 (same)h(in)m(terface)h(as)f Fr(rl_complete\(\))p Fs(.)3350
-3692 y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e
+5011 y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e
 (rl_completion_matches)g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)565
-3801 y(rl)p 632 3801 V 40 w(comp)s(en)m(try)p 1094 3801
-V 40 w(func)p 1304 3801 V 39 w(t)g(*en)m(try)p 1661 3801
-V 41 w(func)p Ff(\))390 3911 y Fs(Returns)37 b(an)h(arra)m(y)g(of)g
+5121 y(rl)p 632 5121 V 40 w(comp)s(en)m(try)p 1094 5121
+V 40 w(func)p 1304 5121 V 39 w(t)g(*en)m(try)p 1661 5121
+V 41 w(func)p Ff(\))390 5230 y Fs(Returns)37 b(an)h(arra)m(y)g(of)g
 (strings)g(whic)m(h)f(is)h(a)g(list)h(of)f(completions)h(for)e
-Fi(text)p Fs(.)64 b(If)38 b(there)g(are)g(no)390 4020
+Fi(text)p Fs(.)64 b(If)38 b(there)g(are)g(no)390 5340
 y(completions,)f(returns)c Fr(NULL)p Fs(.)52 b(The)34
 b(\014rst)f(en)m(try)i(in)f(the)h(returned)e(arra)m(y)i(is)g(the)f
-(substitution)390 4130 y(for)26 b Fi(text)p Fs(.)40 b(The)26
-b(remaining)h(en)m(tries)g(are)g(the)f(p)s(ossible)g(completions.)40
-b(The)26 b(arra)m(y)h(is)f(terminated)390 4240 y(with)k(a)h
-Fr(NULL)e Fs(p)s(oin)m(ter.)390 4379 y Fi(en)m(try)p
-603 4379 V 40 w(func)44 b Fs(is)c(a)g(function)f(of)h(t)m(w)m(o)g
-(args,)j(and)38 b(returns)h(a)g Fr(char)30 b(*)p Fs(.)67
-b(The)39 b(\014rst)g(argumen)m(t)h(is)390 4489 y Fi(text)p
-Fs(.)66 b(The)39 b(second)f(is)h(a)g(state)h(argumen)m(t;)j(it)c(is)g
-(zero)g(on)g(the)g(\014rst)f(call,)k(and)c(non-zero)h(on)390
-4598 y(subsequen)m(t)33 b(calls.)52 b Fi(en)m(try)p 1320
-4598 V 41 w(func)38 b Fs(returns)33 b(a)h Fr(NULL)f Fs(p)s(oin)m(ter)g
-(to)i(the)f(caller)h(when)e(there)h(are)g(no)390 4708
-y(more)d(matc)m(hes.)3350 4902 y([F)-8 b(unction])-3599
+(substitution)p eop end
+%%Page: 49 53
+TeXDict begin 49 52 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(49)390
+299 y(for)26 b Fi(text)p Fs(.)40 b(The)26 b(remaining)h(en)m(tries)g
+(are)g(the)f(p)s(ossible)g(completions.)40 b(The)26 b(arra)m(y)h(is)f
+(terminated)390 408 y(with)k(a)h Fr(NULL)e Fs(p)s(oin)m(ter.)390
+542 y Fi(en)m(try)p 603 542 28 4 v 40 w(func)44 b Fs(is)c(a)g(function)
+f(of)h(t)m(w)m(o)g(args,)j(and)38 b(returns)h(a)g Fr(char)30
+b(*)p Fs(.)67 b(The)39 b(\014rst)g(argumen)m(t)h(is)390
+651 y Fi(text)p Fs(.)66 b(The)39 b(second)f(is)h(a)g(state)h(argumen)m
+(t;)j(it)c(is)g(zero)g(on)g(the)g(\014rst)f(call,)k(and)c(non-zero)h
+(on)390 761 y(subsequen)m(t)33 b(calls.)52 b Fi(en)m(try)p
+1320 761 V 41 w(func)38 b Fs(returns)33 b(a)h Fr(NULL)f
+Fs(p)s(oin)m(ter)g(to)i(the)f(caller)h(when)e(there)h(are)g(no)390
+870 y(more)d(matc)m(hes.)3350 1051 y([F)-8 b(unction])-3599
 b Fg(char)54 b(*)e(rl_filename_completion)q(_fu)q(nct)q(ion)g
-Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565 5011
-y(state)p Ff(\))390 5121 y Fs(A)26 b(generator)h(function)e(for)g
+Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565 1160
+y(state)p Ff(\))390 1270 y Fs(A)26 b(generator)h(function)e(for)g
 (\014lename)h(completion)h(in)e(the)h(general)h(case.)40
-b Fi(text)28 b Fs(is)e(a)g(partial)h(\014le-)390 5230
+b Fi(text)28 b Fs(is)e(a)g(partial)h(\014le-)390 1379
 y(name.)38 b(The)21 b(Bash)g(source)h(is)g(a)f(useful)g(reference)h
 (for)f(writing)h(application-sp)s(eci\014c)h(completion)390
-5340 y(functions)30 b(\(the)h(Bash)f(completion)i(functions)e(call)i
-(this)e(and)g(other)g(Readline)h(functions\).)p eop end
-%%Page: 48 52
-TeXDict begin 48 51 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(48)3350
-299 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_username_completion)
-q(_fu)q(nct)q(ion)g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565
-408 y(state)p Ff(\))390 518 y Fs(A)d(completion)g(generator)h(for)e
+1489 y(functions)30 b(\(the)h(Bash)f(completion)i(functions)e(call)i
+(this)e(and)g(other)g(Readline)h(functions\).)3350 1669
+y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_username_completion)q
+(_fu)q(nct)q(ion)g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565
+1779 y(state)p Ff(\))390 1888 y Fs(A)d(completion)g(generator)h(for)e
 (usernames.)40 b Fi(text)31 b Fs(con)m(tains)f(a)f(partial)g(username)f
-(preceded)g(b)m(y)390 628 y(a)j(random)f(c)m(haracter)i(\(usually)e(`)p
-Fr(~)p Fs('\).)42 b(As)31 b(with)f(all)h(completion)h(generators,)g
-Fi(state)37 b Fs(is)31 b(zero)g(on)390 737 y(the)g(\014rst)e(call)j
-(and)e(non-zero)h(for)f(subsequen)m(t)f(calls.)150 955
+(preceded)g(b)m(y)390 1998 y(a)j(random)f(c)m(haracter)i(\(usually)e(`)
+Fr(~)p Fs('\).)42 b(As)31 b(with)f(all)h(completion)h(generators,)g
+Fi(state)37 b Fs(is)31 b(zero)g(on)390 2107 y(the)g(\014rst)e(call)j
+(and)e(non-zero)h(for)f(subsequen)m(t)f(calls.)150 2304
 y Fh(2.6.3)63 b(Completion)41 b(V)-10 b(ariables)3371
-1170 y Fs([V)i(ariable])-3598 b Fg(rl_compentry_func_t)58
-b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 1279
+2498 y Fs([V)i(ariable])-3598 b Fg(rl_compentry_func_t)58
+b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 2608
 y Fs(A)34 b(p)s(oin)m(ter)f(to)h(the)g(generator)h(function)e(for)g
 Fr(rl_completion_matches\(\))p Fs(.)44 b Fr(NULL)32 b
-Fs(means)h(to)390 1389 y(use)d Fr(rl_filename_completion_fu)o(nct)o
+Fs(means)h(to)390 2717 y(use)d Fr(rl_filename_completion_fu)o(nct)o
 (ion\()o(\))p Fs(,)25 b(the)30 b(default)h(\014lename)f(completer.)3371
-1609 y([V)-8 b(ariable])-3598 b Fg(rl_completion_func_t)58
+2897 y([V)-8 b(ariable])-3598 b Fg(rl_completion_func_t)58
 b(*)53 b(rl_attempted_completio)q(n_f)q(unct)q(ion)390
-1719 y Fs(A)35 b(p)s(oin)m(ter)g(to)g(an)g(alternativ)m(e)i(function)d
+3007 y Fs(A)35 b(p)s(oin)m(ter)g(to)g(an)g(alternativ)m(e)i(function)d
 (to)i(create)g(matc)m(hes.)55 b(The)34 b(function)h(is)f(called)i(with)
-390 1829 y Fi(text)p Fs(,)26 b Fi(start)p Fs(,)f(and)d
+390 3117 y Fi(text)p Fs(,)26 b Fi(start)p Fs(,)f(and)d
 Fi(end)p Fs(.)38 b Fi(start)25 b Fs(and)e Fi(end)j Fs(are)d(indices)g
 (in)g Fr(rl_line_buffer)c Fs(de\014ning)j(the)h(b)s(ound-)390
-1938 y(aries)j(of)h Fi(text)p Fs(,)h(whic)m(h)d(is)h(a)h(c)m(haracter)g
+3226 y(aries)j(of)h Fi(text)p Fs(,)h(whic)m(h)d(is)h(a)h(c)m(haracter)g
 (string.)39 b(If)26 b(this)g(function)f(exists)i(and)e(returns)g
-Fr(NULL)p Fs(,)h(or)g(if)390 2048 y(this)c(v)-5 b(ariable)22
+Fr(NULL)p Fs(,)h(or)g(if)390 3336 y(this)c(v)-5 b(ariable)22
 b(is)g(set)h(to)f Fr(NULL)p Fs(,)h(then)f Fr(rl_complete\(\))c
 Fs(will)k(call)h(the)f(v)-5 b(alue)23 b(of)f Fr(rl_completion_)390
-2157 y(entry_function)i Fs(to)30 b(generate)f(matc)m(hes,)i(otherwise)d
+3445 y(entry_function)i Fs(to)30 b(generate)f(matc)m(hes,)i(otherwise)d
 (the)h(arra)m(y)g(of)f(strings)h(returned)e(will)i(b)s(e)390
-2267 y(used.)37 b(If)22 b(this)g(function)g(sets)h(the)g
+3555 y(used.)37 b(If)22 b(this)g(function)g(sets)h(the)g
 Fr(rl_attempted_completion)o(_ove)o(r)16 b Fs(v)-5 b(ariable)24
-b(to)f(a)f(non-zero)390 2377 y(v)-5 b(alue,)35 b(Readline)g(will)f(not)
+b(to)f(a)f(non-zero)390 3665 y(v)-5 b(alue,)35 b(Readline)g(will)f(not)
 g(p)s(erform)f(its)h(default)g(completion)h(ev)m(en)g(if)f(this)g
-(function)f(returns)390 2486 y(no)d(matc)m(hes.)3371
-2707 y([V)-8 b(ariable])-3598 b Fg(rl_quote_func_t)57
-b(*)52 b(rl_filename_quoting_)q(func)q(tio)q(n)390 2816
+(function)f(returns)390 3774 y(no)d(matc)m(hes.)3371
+3954 y([V)-8 b(ariable])-3598 b Fg(rl_quote_func_t)57
+b(*)52 b(rl_filename_quoting_)q(func)q(tio)q(n)390 4064
 y Fs(A)33 b(p)s(oin)m(ter)f(to)h(a)g(function)g(that)g(will)g(quote)g
 (a)g(\014lename)f(in)h(an)f(application-sp)s(eci\014c)i(fashion.)390
-2926 y(This)k(is)i(called)g(if)f(\014lename)h(completion)g(is)f(b)s
+4173 y(This)k(is)i(called)g(if)f(\014lename)h(completion)g(is)f(b)s
 (eing)g(attempted)i(and)d(one)i(of)f(the)g(c)m(haracters)390
-3036 y(in)33 b Fr(rl_filename_quote_charac)o(ter)o(s)27
+4283 y(in)33 b Fr(rl_filename_quote_charac)o(ter)o(s)27
 b Fs(app)s(ears)33 b(in)g(a)g(completed)h(\014lename.)50
-b(The)32 b(function)390 3145 y(is)37 b(called)h(with)e
-Fi(text)p Fs(,)k Fi(matc)m(h)p 1438 3145 28 4 v 41 w(t)m(yp)s(e)p
-Fs(,)f(and)d Fi(quote)p 2119 3145 V 41 w(p)s(oin)m(ter)p
+b(The)32 b(function)390 4393 y(is)37 b(called)h(with)e
+Fi(text)p Fs(,)k Fi(matc)m(h)p 1438 4393 V 41 w(t)m(yp)s(e)p
+Fs(,)f(and)d Fi(quote)p 2119 4393 V 41 w(p)s(oin)m(ter)p
 Fs(.)60 b(The)36 b Fi(text)k Fs(is)d(the)g(\014lename)g(to)h(b)s(e)390
-3255 y(quoted.)76 b(The)42 b Fi(matc)m(h)p 1210 3255
+4502 y(quoted.)76 b(The)42 b Fi(matc)m(h)p 1210 4502
 V 41 w(t)m(yp)s(e)48 b Fs(is)42 b(either)h Fr(SINGLE_MATCH)p
 Fs(,)f(if)g(there)g(is)h(only)f(one)h(completion)390
-3364 y(matc)m(h,)33 b(or)e Fr(MULT_MATCH)p Fs(.)41 b(Some)31
+4612 y(matc)m(h,)33 b(or)e Fr(MULT_MATCH)p Fs(.)41 b(Some)31
 b(functions)g(use)g(this)h(to)g(decide)f(whether)g(or)h(not)f(to)h
-(insert)g(a)390 3474 y(closing)22 b(quote)f(c)m(haracter.)40
-b(The)20 b Fi(quote)p 1751 3474 V 41 w(p)s(oin)m(ter)27
+(insert)g(a)390 4721 y(closing)22 b(quote)f(c)m(haracter.)40
+b(The)20 b Fi(quote)p 1751 4721 V 41 w(p)s(oin)m(ter)27
 b Fs(is)21 b(a)g(p)s(oin)m(ter)g(to)g(an)m(y)h(op)s(ening)e(quote)h(c)m
-(haracter)390 3584 y(the)31 b(user)e(t)m(yp)s(ed.)41
+(haracter)390 4831 y(the)31 b(user)e(t)m(yp)s(ed.)41
 b(Some)30 b(functions)g(c)m(ho)s(ose)h(to)g(reset)g(this)g(c)m
-(haracter.)3371 3804 y([V)-8 b(ariable])-3598 b Fg(rl_dequote_func_t)57
-b(*)c(rl_filename_dequoting_)q(fun)q(cti)q(on)390 3914
+(haracter.)3371 5011 y([V)-8 b(ariable])-3598 b Fg(rl_dequote_func_t)57
+b(*)c(rl_filename_dequoting_)q(fun)q(cti)q(on)390 5121
 y Fs(A)30 b(p)s(oin)m(ter)f(to)i(a)f(function)f(that)h(will)g(remo)m(v)
 m(e)h(application-sp)s(eci\014c)g(quoting)f(c)m(haracters)h(from)390
-4023 y(a)i(\014lename)g(b)s(efore)f(completion)h(is)g(attempted,)h(so)f
+5230 y(a)i(\014lename)g(b)s(efore)f(completion)h(is)g(attempted,)h(so)f
 (those)g(c)m(haracters)h(do)e(not)h(in)m(terfere)g(with)390
-4133 y(matc)m(hing)39 b(the)f(text)i(against)f(names)f(in)g(the)g
+5340 y(matc)m(hing)39 b(the)f(text)i(against)f(names)f(in)g(the)g
 (\014lesystem.)64 b(It)38 b(is)g(called)i(with)d Fi(text)p
-Fs(,)42 b(the)c(text)390 4243 y(of)k(the)h(w)m(ord)f(to)g(b)s(e)g
-(dequoted,)j(and)d Fi(quote)p 2014 4243 V 41 w(c)m(har)p
-Fs(,)j(whic)m(h)d(is)h(the)f(quoting)h(c)m(haracter)g(that)390
-4352 y(delimits)33 b(the)f(\014lename)g(\(usually)h(`)p
-Fr(')p Fs(')f(or)g(`)p Fr(")p Fs('\).)46 b(If)32 b Fi(quote)p
-2368 4352 V 41 w(c)m(har)39 b Fs(is)32 b(zero,)i(the)e(\014lename)g(w)m
-(as)h(not)390 4462 y(in)d(an)g(em)m(b)s(edded)g(string.)3371
-4682 y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57
-b(*)c(rl_char_is_quoted_p)390 4792 y Fs(A)37 b(p)s(oin)m(ter)g(to)g(a)g
-(function)g(to)g(call)h(that)g(determines)f(whether)f(or)h(not)g(a)g
-(sp)s(eci\014c)f(c)m(haracter)390 4902 y(in)e(the)h(line)f(bu\013er)g
-(is)g(quoted,)i(according)g(to)f(whatev)m(er)g(quoting)g(mec)m(hanism)g
-(the)f(program)390 5011 y(calling)26 b(Readline)g(uses.)38
-b(The)24 b(function)h(is)g(called)h(with)e(t)m(w)m(o)i(argumen)m(ts:)39
-b Fi(text)p Fs(,)27 b(the)e(text)h(of)f(the)390 5121
+Fs(,)42 b(the)c(text)p eop end
+%%Page: 50 54
+TeXDict begin 50 53 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(50)390
+299 y(of)42 b(the)h(w)m(ord)f(to)g(b)s(e)g(dequoted,)j(and)d
+Fi(quote)p 2014 299 28 4 v 41 w(c)m(har)p Fs(,)j(whic)m(h)d(is)h(the)f
+(quoting)h(c)m(haracter)g(that)390 408 y(delimits)33
+b(the)f(\014lename)g(\(usually)h(`)p Fr(')p Fs(')f(or)g(`)p
+Fr(")p Fs('\).)46 b(If)32 b Fi(quote)p 2368 408 V 41
+w(c)m(har)39 b Fs(is)32 b(zero,)i(the)e(\014lename)g(w)m(as)h(not)390
+518 y(in)d(an)g(em)m(b)s(edded)g(string.)3371 705 y([V)-8
+b(ariable])-3598 b Fg(rl_linebuf_func_t)57 b(*)c(rl_char_is_quoted_p)
+390 814 y Fs(A)37 b(p)s(oin)m(ter)g(to)g(a)g(function)g(to)g(call)h
+(that)g(determines)f(whether)f(or)h(not)g(a)g(sp)s(eci\014c)f(c)m
+(haracter)390 924 y(in)e(the)h(line)f(bu\013er)g(is)g(quoted,)i
+(according)g(to)f(whatev)m(er)g(quoting)g(mec)m(hanism)g(the)f(program)
+390 1034 y(calling)26 b(Readline)g(uses.)38 b(The)24
+b(function)h(is)g(called)h(with)e(t)m(w)m(o)i(argumen)m(ts:)39
+b Fi(text)p Fs(,)27 b(the)e(text)h(of)f(the)390 1143
 y(line,)31 b(and)g Fi(index)p Fs(,)f(the)h(index)f(of)h(the)g(c)m
 (haracter)i(in)d(the)h(line.)42 b(It)31 b(is)g(used)f(to)h(decide)g
-(whether)g(a)390 5230 y(c)m(haracter)h(found)d(in)g Fr
+(whether)g(a)390 1253 y(c)m(haracter)h(found)d(in)g Fr
 (rl_completer_word_break_ch)o(ara)o(cter)o(s)24 b Fs(should)29
-b(b)s(e)h(used)f(to)i(break)390 5340 y(w)m(ords)f(for)g(the)h
-(completer.)p eop end
-%%Page: 49 53
-TeXDict begin 49 52 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(49)3371
-299 y([V)-8 b(ariable])-3598 b Fg(rl_compignore_func_t)58
-b(*)53 b(rl_ignore_some_complet)q(ion)q(s_fu)q(nct)q(ion)390
-408 y Fs(This)37 b(function,)i(if)f(de\014ned,)g(is)g(called)h(b)m(y)e
-(the)h(completer)h(when)e(real)h(\014lename)g(completion)390
-518 y(is)c(done,)h(after)f(all)h(the)g(matc)m(hing)g(names)e(ha)m(v)m
-(e)j(b)s(een)d(generated.)53 b(It)34 b(is)g(passed)f(a)i
-Fr(NULL)d Fs(ter-)390 628 y(minated)f(arra)m(y)g(of)g(matc)m(hes.)43
-b(The)31 b(\014rst)f(elemen)m(t)i(\()p Fr(matches[0])p
-Fs(\))d(is)h(the)h(maximal)h(substring)390 737 y(common)d(to)g(all)h
-(matc)m(hes.)41 b(This)28 b(function)h(can)g(re-arrange)g(the)g(list)h
-(of)f(matc)m(hes)g(as)g(required,)390 847 y(but)h(eac)m(h)h(elemen)m(t)
-h(deleted)f(from)f(the)h(arra)m(y)g(m)m(ust)f(b)s(e)g(freed.)3371
-1043 y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
-(rl_directory_completio)q(n_ho)q(ok)390 1152 y Fs(This)44
-b(function,)49 b(if)d(de\014ned,)i(is)d(allo)m(w)m(ed)i(to)f(mo)s(dify)
-e(the)i(directory)g(p)s(ortion)e(of)i(\014lenames)390
-1262 y(Readline)35 b(completes.)56 b(It)35 b(could)g(b)s(e)f(used)g(to)
-i(expand)e(sym)m(b)s(olic)h(links)g(or)g(shell)g(v)-5
-b(ariables)35 b(in)390 1372 y(pathnames.)70 b(It)41 b(is)f(called)h
+b(b)s(e)h(used)f(to)i(break)390 1362 y(w)m(ords)f(for)g(the)h
+(completer.)3371 1549 y([V)-8 b(ariable])-3598 b Fg
+(rl_compignore_func_t)58 b(*)53 b(rl_ignore_some_complet)q(ion)q(s_fu)q
+(nct)q(ion)390 1659 y Fs(This)37 b(function,)i(if)f(de\014ned,)g(is)g
+(called)h(b)m(y)e(the)h(completer)h(when)e(real)h(\014lename)g
+(completion)390 1768 y(is)c(done,)h(after)f(all)h(the)g(matc)m(hing)g
+(names)e(ha)m(v)m(e)j(b)s(een)d(generated.)53 b(It)34
+b(is)g(passed)f(a)i Fr(NULL)d Fs(ter-)390 1878 y(minated)f(arra)m(y)g
+(of)g(matc)m(hes.)43 b(The)31 b(\014rst)f(elemen)m(t)i(\()p
+Fr(matches[0])p Fs(\))d(is)h(the)h(maximal)h(substring)390
+1988 y(common)d(to)g(all)h(matc)m(hes.)41 b(This)28 b(function)h(can)g
+(re-arrange)g(the)g(list)h(of)f(matc)m(hes)g(as)g(required,)390
+2097 y(but)h(eac)m(h)h(elemen)m(t)h(deleted)f(from)f(the)h(arra)m(y)g
+(m)m(ust)f(b)s(e)g(freed.)3371 2284 y([V)-8 b(ariable])-3598
+b Fg(rl_icppfunc_t)56 b(*)d(rl_directory_completio)q(n_ho)q(ok)390
+2394 y Fs(This)44 b(function,)49 b(if)d(de\014ned,)i(is)d(allo)m(w)m
+(ed)i(to)f(mo)s(dify)e(the)i(directory)g(p)s(ortion)e(of)i(\014lenames)
+390 2503 y(Readline)35 b(completes.)56 b(It)35 b(could)g(b)s(e)f(used)g
+(to)i(expand)e(sym)m(b)s(olic)h(links)g(or)g(shell)g(v)-5
+b(ariables)35 b(in)390 2613 y(pathnames.)70 b(It)41 b(is)f(called)h
 (with)f(the)h(address)e(of)i(a)g(string)f(\(the)h(curren)m(t)f
-(directory)h(name\))390 1481 y(as)d(an)f(argumen)m(t,)j(and)d(ma)m(y)i
+(directory)h(name\))390 2722 y(as)d(an)f(argumen)m(t,)j(and)d(ma)m(y)i
 (mo)s(dify)d(that)j(string.)62 b(If)37 b(the)h(string)f(is)h(replaced)g
-(with)f(a)h(new)390 1591 y(string,)j(the)d(old)h(v)-5
+(with)f(a)h(new)390 2832 y(string,)j(the)d(old)h(v)-5
 b(alue)39 b(should)e(b)s(e)h(freed.)64 b(An)m(y)39 b(mo)s(di\014ed)e
-(directory)i(name)f(should)g(ha)m(v)m(e)i(a)390 1700
+(directory)i(name)f(should)g(ha)m(v)m(e)i(a)390 2941
 y(trailing)c(slash.)54 b(The)35 b(mo)s(di\014ed)e(v)-5
 b(alue)36 b(will)f(b)s(e)f(used)g(as)i(part)e(of)h(the)h(completion,)h
-(replacing)390 1810 y(the)32 b(directory)g(p)s(ortion)f(of)h(the)g
+(replacing)390 3051 y(the)32 b(directory)g(p)s(ortion)f(of)h(the)g
 (pathname)f(the)h(user)f(t)m(yp)s(ed.)44 b(A)m(t)33 b(the)f(least,)h
-(ev)m(en)g(if)e(no)h(other)390 1920 y(expansion)j(is)h(p)s(erformed,)f
+(ev)m(en)g(if)e(no)h(other)390 3161 y(expansion)j(is)h(p)s(erformed,)f
 (this)h(function)f(should)g(remo)m(v)m(e)i(an)m(y)f(quote)g(c)m
-(haracters)h(from)e(the)390 2029 y(directory)c(name,)g(b)s(ecause)f
+(haracters)h(from)e(the)390 3270 y(directory)c(name,)g(b)s(ecause)f
 (its)h(result)f(will)h(b)s(e)e(passed)h(directly)h(to)g
-Fr(opendir\(\))p Fs(.)390 2170 y(The)25 b(directory)i(completion)g(ho)s
+Fr(opendir\(\))p Fs(.)390 3406 y(The)25 b(directory)i(completion)g(ho)s
 (ok)e(returns)g(an)h(in)m(teger)h(that)f(should)f(b)s(e)g(non-zero)i
-(if)e(the)i(func-)390 2279 y(tion)35 b(mo)s(di\014es)e(its)i(directory)
+(if)e(the)i(func-)390 3516 y(tion)35 b(mo)s(di\014es)e(its)i(directory)
 f(argumen)m(t.)53 b(The)33 b(function)h(should)f(not)i(mo)s(dify)e(the)
-h(directory)390 2389 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371
-2585 y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
-(rl_directory_rewrite_h)q(ook;)390 2694 y Fs(If)24 b(non-zero,)i(this)e
+h(directory)390 3625 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371
+3812 y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
+(rl_directory_rewrite_h)q(ook;)390 3922 y Fs(If)24 b(non-zero,)i(this)e
 (is)h(the)f(address)g(of)g(a)h(function)f(to)h(call)g(when)f
-(completing)h(a)g(directory)g(name.)390 2804 y(This)h(function)g(tak)m
+(completing)h(a)g(directory)g(name.)390 4031 y(This)h(function)g(tak)m
 (es)i(the)f(address)f(of)h(the)f(directory)h(name)g(to)g(b)s(e)f(mo)s
-(di\014ed)g(as)h(an)f(argumen)m(t.)390 2914 y(Unlik)m(e)40
+(di\014ed)g(as)h(an)f(argumen)m(t.)390 4141 y(Unlik)m(e)40
 b Fr(rl_directory_completion_h)o(ook)p Fs(,)35 b(it)40
 b(only)f(mo)s(di\014es)f(the)i(directory)f(name)h(used)390
-3023 y(in)35 b Fr(opendir)p Fs(,)g(not)g(what)h(is)f(displa)m(y)m(ed)h
+4250 y(in)35 b Fr(opendir)p Fs(,)g(not)g(what)h(is)f(displa)m(y)m(ed)h
 (when)e(the)i(p)s(ossible)f(completions)h(are)g(prin)m(ted)f(or)g(in-)
-390 3133 y(serted.)k(It)27 b(is)f(called)h(b)s(efore)f(rl)p
-1463 3133 28 4 v 40 w(directory)p 1859 3133 V 41 w(completion)p
-2333 3133 V 41 w(ho)s(ok.)39 b(A)m(t)27 b(the)g(least,)h(ev)m(en)f(if)g
-(no)f(other)390 3242 y(expansion)35 b(is)h(p)s(erformed,)f(this)h
+390 4360 y(serted.)k(It)27 b(is)f(called)h(b)s(efore)f(rl)p
+1463 4360 V 40 w(directory)p 1859 4360 V 41 w(completion)p
+2333 4360 V 41 w(ho)s(ok.)39 b(A)m(t)27 b(the)g(least,)h(ev)m(en)f(if)g
+(no)f(other)390 4469 y(expansion)35 b(is)h(p)s(erformed,)f(this)h
 (function)f(should)g(remo)m(v)m(e)i(an)m(y)f(quote)g(c)m(haracters)h
-(from)e(the)390 3352 y(directory)c(name,)g(b)s(ecause)f(its)h(result)f
+(from)e(the)390 4579 y(directory)c(name,)g(b)s(ecause)f(its)h(result)f
 (will)h(b)s(e)e(passed)h(directly)h(to)g Fr(opendir\(\))p
-Fs(.)390 3492 y(The)37 b(directory)i(rewrite)f(ho)s(ok)f(returns)g(an)h
+Fs(.)390 4715 y(The)37 b(directory)i(rewrite)f(ho)s(ok)f(returns)g(an)h
 (in)m(teger)h(that)f(should)f(b)s(e)g(non-zero)i(if)e(the)i(func-)390
-3602 y(tion)e(mo)s(d\014es)e(its)h(directory)h(argumen)m(t.)58
+4824 y(tion)e(mo)s(d\014es)e(its)h(directory)h(argumen)m(t.)58
 b(The)36 b(function)f(should)h(not)g(mo)s(dify)f(the)h(directory)390
-3712 y(argumen)m(t)31 b(if)f(it)h(returns)e(0.)3371 3908
+4934 y(argumen)m(t)31 b(if)f(it)h(returns)e(0.)3371 5121
 y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
-(rl_filename_stat_hook)390 4017 y Fs(If)30 b(non-zero,)h(this)f(is)g
+(rl_filename_stat_hook)390 5230 y Fs(If)30 b(non-zero,)h(this)f(is)g
 (the)g(address)f(of)h(a)h(function)f(for)f(the)i(completer)g(to)g(call)
-g(b)s(efore)f(deciding)390 4127 y(whic)m(h)g(c)m(haracter)i(to)e(app)s
+g(b)s(efore)f(deciding)390 5340 y(whic)m(h)g(c)m(haracter)i(to)e(app)s
 (end)f(to)i(a)f(completed)h(name.)41 b(This)29 b(function)h(mo)s
-(di\014es)f(its)i(\014lename)390 4236 y(name)36 b(argumen)m(t,)h(and)e
-(the)h(mo)s(di\014ed)e(v)-5 b(alue)36 b(is)g(passed)f(to)h
-Fr(stat\(\))e Fs(to)i(determine)g(the)g(\014le's)390
-4346 y(t)m(yp)s(e)41 b(and)f(c)m(haracteristics.)73 b(This)40
-b(function)g(do)s(es)g(not)h(need)f(to)h(remo)m(v)m(e)h(quote)f(c)m
-(haracters)390 4456 y(from)30 b(the)g(\014lename.)390
-4596 y(The)i(stat)h(ho)s(ok)f(returns)f(an)h(in)m(teger)i(that)e
-(should)g(b)s(e)f(non-zero)i(if)f(the)g(function)g(mo)s(d\014es)g(its)
-390 4706 y(directory)42 b(argumen)m(t.)73 b(The)40 b(function)h(should)
-f(not)h(mo)s(dify)f(the)h(directory)h(argumen)m(t)f(if)g(it)390
-4815 y(returns)29 b(0.)3371 5011 y([V)-8 b(ariable])-3598
+(di\014es)f(its)i(\014lename)p eop end
+%%Page: 51 55
+TeXDict begin 51 54 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(51)390
+299 y(name)36 b(argumen)m(t,)h(and)e(the)h(mo)s(di\014ed)e(v)-5
+b(alue)36 b(is)g(passed)f(to)h Fr(stat\(\))e Fs(to)i(determine)g(the)g
+(\014le's)390 408 y(t)m(yp)s(e)41 b(and)f(c)m(haracteristics.)73
+b(This)40 b(function)g(do)s(es)g(not)h(need)f(to)h(remo)m(v)m(e)h
+(quote)f(c)m(haracters)390 518 y(from)30 b(the)g(\014lename.)390
+667 y(The)i(stat)h(ho)s(ok)f(returns)f(an)h(in)m(teger)i(that)e(should)
+g(b)s(e)f(non-zero)i(if)f(the)g(function)g(mo)s(d\014es)g(its)390
+776 y(directory)42 b(argumen)m(t.)73 b(The)40 b(function)h(should)f
+(not)h(mo)s(dify)f(the)h(directory)h(argumen)m(t)f(if)g(it)390
+886 y(returns)29 b(0.)3371 1099 y([V)-8 b(ariable])-3598
 b Fg(rl_dequote_func_t)57 b(*)c(rl_filename_rewrite_ho)q(ok)390
-5121 y Fs(If)39 b(non-zero,)k(this)d(is)f(the)h(address)f(of)h(a)g
+1208 y Fs(If)39 b(non-zero,)k(this)d(is)f(the)h(address)f(of)h(a)g
 (function)g(called)g(when)f(reading)h(directory)g(en)m(tries)390
-5230 y(from)f(the)h(\014lesystem)g(for)g(completion)h(and)e(comparing)i
+1318 y(from)f(the)h(\014lesystem)g(for)g(completion)h(and)e(comparing)i
 (them)e(to)i(the)f(partial)h(w)m(ord)e(to)i(b)s(e)390
-5340 y(completed.)g(The)26 b(function)h(should)f(p)s(erform)f(an)m(y)j
-(necessary)f(application)i(or)e(system-sp)s(eci\014c)p
-eop end
-%%Page: 50 54
-TeXDict begin 50 53 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(50)390
-299 y(con)m(v)m(ersion)35 b(on)g(the)f(\014lename,)i(suc)m(h)d(as)i
+1427 y(completed.)g(The)26 b(function)h(should)f(p)s(erform)f(an)m(y)j
+(necessary)f(application)i(or)e(system-sp)s(eci\014c)390
+1537 y(con)m(v)m(ersion)35 b(on)g(the)f(\014lename,)i(suc)m(h)d(as)i
 (con)m(v)m(erting)h(b)s(et)m(w)m(een)f(c)m(haracter)g(sets)g(or)f(con)m
-(v)m(erting)390 408 y(from)f(a)g(\014lesystem)h(format)g(to)g(a)f(c)m
+(v)m(erting)390 1647 y(from)f(a)g(\014lesystem)h(format)g(to)g(a)f(c)m
 (haracter)i(input)e(format.)50 b(The)32 b(function)h(tak)m(es)i(t)m(w)m
-(o)g(argu-)390 518 y(men)m(ts:)49 b Fi(fname)p Fs(,)36
+(o)g(argu-)390 1756 y(men)m(ts:)49 b Fi(fname)p Fs(,)36
 b(the)e(\014lename)h(to)g(b)s(e)f(con)m(v)m(erted,)j(and)d
 Fi(fnlen)p Fs(,)h(its)g(length)g(in)f(b)m(ytes.)53 b(It)35
-b(m)m(ust)390 628 y(either)24 b(return)e(its)h(\014rst)g(argumen)m(t)g
+b(m)m(ust)390 1866 y(either)24 b(return)e(its)h(\014rst)g(argumen)m(t)g
 (\(if)h(no)f(con)m(v)m(ersion)h(tak)m(es)h(place\))g(or)e(the)g(con)m
-(v)m(erted)i(\014lename)390 737 y(in)j(newly-allo)s(cated)i(memory)-8
+(v)m(erted)i(\014lename)390 1975 y(in)j(newly-allo)s(cated)i(memory)-8
 b(.)41 b(The)27 b(con)m(v)m(erted)j(form)e(is)g(used)g(to)h(compare)f
-(against)i(the)e(w)m(ord)390 847 y(to)g(b)s(e)e(completed,)j(and,)f(if)
-f(it)h(matc)m(hes,)h(is)e(added)f(to)i(the)g(list)f(of)h(matc)m(hes.)41
-b(Readline)27 b(will)h(free)390 956 y(the)j(allo)s(cated)h(string.)3371
-1134 y([V)-8 b(ariable])-3598 b Fg(rl_compdisp_func_t)58
+(against)i(the)e(w)m(ord)390 2085 y(to)g(b)s(e)e(completed,)j(and,)f
+(if)f(it)h(matc)m(hes,)h(is)e(added)f(to)i(the)g(list)f(of)h(matc)m
+(hes.)41 b(Readline)27 b(will)h(free)390 2194 y(the)j(allo)s(cated)h
+(string.)3371 2407 y([V)-8 b(ariable])-3598 b Fg(rl_compdisp_func_t)58
 b(*)52 b(rl_completion_display)q(_ma)q(tch)q(es_h)q(ook)390
-1244 y Fs(If)22 b(non-zero,)i(then)e(this)g(is)g(the)g(address)f(of)h
+2517 y Fs(If)22 b(non-zero,)i(then)e(this)g(is)g(the)g(address)f(of)h
 (a)g(function)g(to)h(call)g(when)e(completing)i(a)g(w)m(ord)e(w)m(ould)
-390 1354 y(normally)h(displa)m(y)h(the)f(list)h(of)f(p)s(ossible)g
+390 2626 y(normally)h(displa)m(y)h(the)f(list)h(of)f(p)s(ossible)g
 (matc)m(hes.)39 b(This)21 b(function)h(is)g(called)i(in)e(lieu)g(of)g
-(Readline)390 1463 y(displa)m(ying)37 b(the)h(list.)61
+(Readline)390 2736 y(displa)m(ying)37 b(the)h(list.)61
 b(It)37 b(tak)m(es)i(three)e(argumen)m(ts:)54 b(\()p
 Fr(char)30 b(**)p Fi(matc)m(hes)p Fs(,)39 b Fr(int)d
-Fi(n)m(um)p 3370 1463 28 4 v 40 w(matc)m(hes)p Fs(,)390
-1573 y Fr(int)26 b Fi(max)p 735 1573 V 40 w(length)p
+Fi(n)m(um)p 3370 2736 28 4 v 40 w(matc)m(hes)p Fs(,)390
+2845 y Fr(int)26 b Fi(max)p 735 2845 V 40 w(length)p
 Fs(\))h(where)f Fi(matc)m(hes)31 b Fs(is)c(the)f(arra)m(y)h(of)g(matc)m
-(hing)g(strings,)h Fi(n)m(um)p 3152 1573 V 39 w(matc)m(hes)j
-Fs(is)c(the)390 1682 y(n)m(um)m(b)s(er)h(of)h(strings)g(in)g(that)g
-(arra)m(y)-8 b(,)31 b(and)d Fi(max)p 2020 1682 V 40 w(length)i
-Fs(is)f(the)g(length)h(of)f(the)g(longest)h(string)f(in)390
-1792 y(that)g(arra)m(y)-8 b(.)41 b(Readline)28 b(pro)m(vides)g(a)h(con)
-m(v)m(enience)h(function,)e Fr(rl_display_match_list)p
-Fs(,)23 b(that)390 1902 y(tak)m(es)36 b(care)g(of)f(doing)g(the)g
-(displa)m(y)f(to)i(Readline's)f(output)g(stream.)54 b(That)35
-b(function)f(ma)m(y)i(b)s(e)390 2011 y(called)c(from)d(this)i(ho)s(ok.)
-3371 2189 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_basic_word_break_ch)q(ara)q(cter)q(s)390 2299 y Fs(The)44
+(hing)g(strings,)h Fi(n)m(um)p 3152 2845 V 39 w(matc)m(hes)j
+Fs(is)c(the)390 2955 y(n)m(um)m(b)s(er)35 b(of)i(strings)f(in)g(that)h
+(arra)m(y)-8 b(,)39 b(and)d Fi(max)p 2073 2955 V 40 w(length)h
+Fs(is)g(the)f(length)h(of)g(the)f(longest)i(string)390
+3065 y(in)f(that)i(arra)m(y)-8 b(.)63 b(Readline)39 b(pro)m(vides)e(a)h
+(con)m(v)m(enience)i(function,)f Fr(rl_display_match_list)p
+Fs(,)390 3174 y(that)33 b(tak)m(es)g(care)g(of)f(doing)g(the)g(displa)m
+(y)g(to)h(Readline's)g(output)e(stream.)46 b(Y)-8 b(ou)33
+b(ma)m(y)f(call)h(that)390 3284 y(function)d(from)g(this)g(ho)s(ok.)
+3371 3497 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_basic_word_break_ch)q(ara)q(cter)q(s)390 3606 y Fs(The)44
 b(basic)g(list)h(of)f(c)m(haracters)i(that)f(signal)g(a)f(break)g(b)s
 (et)m(w)m(een)h(w)m(ords)f(for)g(the)g(completer)390
-2408 y(routine.)61 b(The)37 b(default)g(v)-5 b(alue)37
+3716 y(routine.)61 b(The)37 b(default)g(v)-5 b(alue)37
 b(of)h(this)f(v)-5 b(ariable)38 b(is)f(the)g(c)m(haracters)i(whic)m(h)e
-(break)g(w)m(ords)f(for)390 2518 y(completion)c(in)e(Bash:)41
-b Fr(")30 b(\\t\\n\\"\\\\'`@$><=;|&{\(")p Fs(.)3371 2696
+(break)g(w)m(ords)f(for)390 3825 y(completion)c(in)e(Bash:)41
+b Fr(")30 b(\\t\\n\\"\\\\'`@$><=;|&{\(")p Fs(.)3371 4038
 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_basic_quote_charact)q(ers)390 2806 y Fs(A)30 b(list)i(of)e(quote)h
+(rl_basic_quote_charact)q(ers)390 4148 y Fs(A)30 b(list)i(of)e(quote)h
 (c)m(haracters)h(whic)m(h)e(can)h(cause)g(a)f(w)m(ord)g(break.)3371
-2984 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_completer_word_brea)q(k_c)q(hara)q(cte)q(rs)390 3093
+4360 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_completer_word_brea)q(k_c)q(hara)q(cte)q(rs)390 4470
 y Fs(The)64 b(list)i(of)f(c)m(haracters)h(that)g(signal)g(a)f(break)g
 (b)s(et)m(w)m(een)g(w)m(ords)g(for)f Fr(rl_complete_)390
-3203 y(internal\(\))p Fs(.)38 b(The)30 b(default)g(list)h(is)g(the)f(v)
+4579 y(internal\(\))p Fs(.)38 b(The)30 b(default)g(list)h(is)g(the)f(v)
 -5 b(alue)31 b(of)g Fr(rl_basic_word_break_cha)o(ract)o(ers)p
-Fs(.)3371 3381 y([V)-8 b(ariable])-3598 b Fg(rl_cpvfunc_t)56
-b(*)d(rl_completion_word_brea)q(k_ho)q(ok)390 3491 y
+Fs(.)3371 4792 y([V)-8 b(ariable])-3598 b Fg(rl_cpvfunc_t)56
+b(*)d(rl_completion_word_brea)q(k_ho)q(ok)390 4902 y
 Fs(If)31 b(non-zero,)i(this)e(is)h(the)f(address)g(of)g(a)h(function)g
 (to)g(call)h(when)d(Readline)i(is)g(deciding)f(where)390
-3600 y(to)k(separate)g(w)m(ords)f(for)g(w)m(ord)g(completion.)54
+5011 y(to)k(separate)g(w)m(ords)f(for)g(w)m(ord)g(completion.)54
 b(It)34 b(should)f(return)g(a)i(c)m(haracter)h(string)e(lik)m(e)i
-Fr(rl_)390 3710 y(completer_word_break_cha)o(ract)o(ers)26
+Fr(rl_)390 5121 y(completer_word_break_cha)o(ract)o(ers)26
 b Fs(to)34 b(b)s(e)e(used)g(to)i(p)s(erform)e(the)h(curren)m(t)f
-(completion.)390 3819 y(The)24 b(function)h(ma)m(y)g(c)m(ho)s(ose)h(to)
+(completion.)390 5230 y(The)24 b(function)h(ma)m(y)g(c)m(ho)s(ose)h(to)
 f(set)g Fr(rl_completer_word_break_ch)o(arac)o(ter)o(s)19
-b Fs(itself.)39 b(If)25 b(the)390 3929 y(function)30
+b Fs(itself.)39 b(If)25 b(the)390 5340 y(function)30
 b(returns)f Fr(NULL)p Fs(,)h Fr(rl_completer_word_break)o(_cha)o(rac)o
-(ters)24 b Fs(is)30 b(used.)3371 4107 y([V)-8 b(ariable])-3598
-b Fg(const)54 b(char)f(*)g(rl_completer_quote_cha)q(rac)q(ters)390
-4217 y Fs(A)34 b(list)g(of)g(c)m(haracters)h(whic)m(h)e(can)h(b)s(e)g
-(used)e(to)j(quote)f(a)g(substring)f(of)h(the)f(line.)51
-b(Completion)390 4326 y(o)s(ccurs)26 b(on)g(the)g(en)m(tire)i
-(substring,)e(and)f(within)h(the)g(substring)g Fr
-(rl_completer_word_break)o(_)390 4436 y(characters)32
-b Fs(are)k(treated)g(as)f(an)m(y)h(other)f(c)m(haracter,)j(unless)d
-(they)g(also)h(app)s(ear)e(within)h(this)390 4545 y(list.)3371
-4724 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_filename_quote_char)q(act)q(ers)390 4833 y Fs(A)34
-b(list)g(of)g(c)m(haracters)h(that)f(cause)h(a)f(\014lename)g(to)g(b)s
-(e)f(quoted)h(b)m(y)f(the)h(completer)h(when)e(they)390
-4943 y(app)s(ear)d(in)g(a)h(completed)g(\014lename.)41
+(ters)24 b Fs(is)30 b(used.)p eop end
+%%Page: 52 56
+TeXDict begin 52 55 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(52)3371
+299 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_completer_quote_cha)q(rac)q(ters)390 408 y Fs(A)34
+b(list)g(of)g(c)m(haracters)h(whic)m(h)e(can)h(b)s(e)g(used)e(to)j
+(quote)f(a)g(substring)f(of)h(the)f(line.)51 b(Completion)390
+518 y(o)s(ccurs)26 b(on)g(the)g(en)m(tire)i(substring,)e(and)f(within)h
+(the)g(substring)g Fr(rl_completer_word_break)o(_)390
+628 y(characters)32 b Fs(are)k(treated)g(as)f(an)m(y)h(other)f(c)m
+(haracter,)j(unless)d(they)g(also)h(app)s(ear)e(within)h(this)390
+737 y(list.)3371 943 y([V)-8 b(ariable])-3598 b Fg(const)54
+b(char)f(*)g(rl_filename_quote_char)q(act)q(ers)390 1052
+y Fs(A)34 b(list)g(of)g(c)m(haracters)h(that)f(cause)h(a)f(\014lename)g
+(to)g(b)s(e)f(quoted)h(b)m(y)f(the)h(completer)h(when)e(they)390
+1162 y(app)s(ear)d(in)g(a)h(completed)g(\014lename.)41
 b(The)30 b(default)g(is)h(the)f(n)m(ull)h(string.)3371
-5121 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_special_prefixes)390 5230 y Fs(The)27 b(list)i(of)e(c)m(haracters)j
+1367 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_special_prefixes)390 1477 y Fs(The)27 b(list)i(of)e(c)m(haracters)j
 (that)e(are)g(w)m(ord)f(break)h(c)m(haracters,)i(but)d(should)f(b)s(e)h
-(left)i(in)e Fi(text)k Fs(when)390 5340 y(it)25 b(is)g(passed)f(to)h
+(left)i(in)e Fi(text)k Fs(when)390 1587 y(it)25 b(is)g(passed)f(to)h
 (the)g(completion)h(function.)38 b(Programs)25 b(can)g(use)f(this)h(to)
-g(help)f(determine)h(what)p eop end
-%%Page: 51 55
-TeXDict begin 51 54 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(51)390
-299 y(kind)27 b(of)h(completing)h(to)f(do.)40 b(F)-8
-b(or)29 b(instance,)g(Bash)f(sets)g(this)g(v)-5 b(ariable)28
-b(to)h Fr(")p Fs($@)p Fr(")e Fs(so)h(that)g(it)h(can)390
-408 y(complete)j(shell)e(v)-5 b(ariables)31 b(and)f(hostnames.)3371
-628 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_query_i)q
-(tems)390 737 y Fs(Up)36 b(to)h(this)f(man)m(y)g(items)h(will)f(b)s(e)g
-(displa)m(y)m(ed)h(in)e(resp)s(onse)h(to)h(a)f(p)s(ossible-completions)
-h(call.)390 847 y(After)28 b(that,)h(readline)f(asks)g(the)g(user)f(if)
-h(she)f(is)h(sure)f(she)h(w)m(an)m(ts)g(to)h(see)f(them)g(all.)40
-b(The)28 b(default)390 956 y(v)-5 b(alue)31 b(is)f(100.)42
-b(A)31 b(negativ)m(e)h(v)-5 b(alue)31 b(indicates)g(that)g(Readline)g
-(should)f(nev)m(er)h(ask)f(the)h(user.)3371 1176 y([V)-8
-b(ariable])-3598 b Fg(int)53 b(rl_completion_append_)q(char)q(act)q(er)
-390 1285 y Fs(When)33 b(a)h(single)f(completion)i(alternativ)m(e)h
-(matc)m(hes)e(at)g(the)f(end)g(of)g(the)h(command)f(line,)h(this)390
-1395 y(c)m(haracter)23 b(is)e(app)s(ended)f(to)i(the)g(inserted)f
+g(help)f(determine)h(what)390 1696 y(kind)i(of)h(completing)h(to)f(do.)
+40 b(F)-8 b(or)29 b(instance,)g(Bash)f(sets)g(this)g(v)-5
+b(ariable)28 b(to)h Fr(")p Fs($@)p Fr(")e Fs(so)h(that)g(it)h(can)390
+1806 y(complete)j(shell)e(v)-5 b(ariables)31 b(and)f(hostnames.)3371
+2011 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_query_i)q
+(tems)390 2121 y Fs(Up)36 b(to)h(this)f(man)m(y)g(items)h(will)f(b)s(e)
+g(displa)m(y)m(ed)h(in)e(resp)s(onse)h(to)h(a)f(p)s
+(ossible-completions)h(call.)390 2230 y(After)28 b(that,)h(readline)f
+(asks)g(the)g(user)f(if)h(she)f(is)h(sure)f(she)h(w)m(an)m(ts)g(to)h
+(see)f(them)g(all.)40 b(The)28 b(default)390 2340 y(v)-5
+b(alue)31 b(is)f(100.)42 b(A)31 b(negativ)m(e)h(v)-5
+b(alue)31 b(indicates)g(that)g(Readline)g(should)f(nev)m(er)h(ask)f
+(the)h(user.)3371 2545 y([V)-8 b(ariable])-3598 b Fg(int)53
+b(rl_completion_append_)q(char)q(act)q(er)390 2655 y
+Fs(When)33 b(a)h(single)f(completion)i(alternativ)m(e)h(matc)m(hes)e
+(at)g(the)f(end)g(of)g(the)h(command)f(line,)h(this)390
+2765 y(c)m(haracter)23 b(is)e(app)s(ended)f(to)i(the)g(inserted)f
 (completion)i(text.)39 b(The)20 b(default)i(is)g(a)f(space)h(c)m
-(haracter)390 1504 y(\(`)31 b('\).)86 b(Setting)46 b(this)f(to)h(the)g
+(haracter)390 2874 y(\(`)31 b('\).)86 b(Setting)46 b(this)f(to)h(the)g
 (n)m(ull)f(c)m(haracter)i(\(`)p Fr(\\0)p Fs('\))f(prev)m(en)m(ts)g(an)m
-(ything)g(b)s(eing)f(app)s(ended)390 1614 y(automatically)-8
+(ything)g(b)s(eing)f(app)s(ended)390 2984 y(automatically)-8
 b(.)66 b(This)37 b(can)h(b)s(e)f(c)m(hanged)h(in)g(application-sp)s
-(eci\014c)h(completion)g(functions)e(to)390 1724 y(pro)m(vide)j(the)g
+(eci\014c)h(completion)g(functions)e(to)390 3093 y(pro)m(vide)j(the)g
 (\\most)g(sensible)g(w)m(ord)f(separator)i(c)m(haracter")h(according)e
-(to)h(an)e(application-)390 1833 y(sp)s(eci\014c)30 b(command)g(line)h
-(syn)m(tax)g(sp)s(eci\014cation.)3371 2052 y([V)-8 b(ariable])-3598
+(to)h(an)e(application-)390 3203 y(sp)s(eci\014c)30 b(command)g(line)h
+(syn)m(tax)g(sp)s(eci\014cation.)3371 3408 y([V)-8 b(ariable])-3598
 b Fg(int)53 b(rl_completion_suppres)q(s_ap)q(pen)q(d)390
-2162 y Fs(If)33 b(non-zero,)i Fi(rl)p 949 2162 28 4 v
-39 w(completion)p 1421 2162 V 42 w(app)s(end)p 1755 2162
+3518 y Fs(If)33 b(non-zero,)i Fi(rl)p 949 3518 28 4 v
+39 w(completion)p 1421 3518 V 42 w(app)s(end)p 1755 3518
 V 38 w(c)m(haracter)42 b Fs(is)33 b(not)g(app)s(ended)f(to)i(matc)m
-(hes)g(at)g(the)g(end)390 2271 y(of)28 b(the)f(command)h(line,)h(as)e
+(hes)g(at)g(the)g(end)390 3628 y(of)28 b(the)f(command)h(line,)h(as)e
 (describ)s(ed)g(ab)s(o)m(v)m(e.)41 b(It)27 b(is)h(set)g(to)g(0)g(b)s
-(efore)g(an)m(y)f(application-sp)s(eci\014c)390 2381
+(efore)g(an)m(y)f(application-sp)s(eci\014c)390 3737
 y(completion)32 b(function)e(is)g(called,)i(and)e(ma)m(y)h(only)f(b)s
 (e)g(c)m(hanged)h(within)f(suc)m(h)g(a)h(function.)3371
-2600 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_quote_c)q
-(hara)q(cte)q(r)390 2710 y Fs(When)36 b(Readline)h(is)f(completing)h
+3943 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_quote_c)q
+(hara)q(cte)q(r)390 4052 y Fs(When)36 b(Readline)h(is)f(completing)h
 (quoted)g(text,)h(as)f(delimited)g(b)m(y)f(one)g(of)g(the)h(c)m
-(haracters)g(in)390 2819 y Fi(rl)p 457 2819 V 40 w(completer)p
-885 2819 V 41 w(quote)p 1145 2819 V 41 w(c)m(haracters)p
+(haracters)g(in)390 4162 y Fi(rl)p 457 4162 V 40 w(completer)p
+885 4162 V 41 w(quote)p 1145 4162 V 41 w(c)m(haracters)p
 Fs(,)43 b(it)c(sets)g(this)g(v)-5 b(ariable)40 b(to)g(the)f(quoting)g
-(c)m(haracter)i(found.)390 2929 y(This)30 b(is)g(set)h(b)s(efore)f(an)m
+(c)m(haracter)i(found.)390 4271 y(This)30 b(is)g(set)h(b)s(efore)f(an)m
 (y)h(application-sp)s(eci\014c)g(completion)h(function)e(is)h(called.)
-3371 3148 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_suppres)
-q(s_qu)q(ote)390 3258 y Fs(If)32 b(non-zero,)h(Readline)g(do)s(es)f
+3371 4477 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_suppres)
+q(s_qu)q(ote)390 4587 y Fs(If)32 b(non-zero,)h(Readline)g(do)s(es)f
 (not)h(app)s(end)d(a)j(matc)m(hing)g(quote)g(c)m(haracter)h(when)d(p)s
-(erforming)390 3367 y(completion)25 b(on)e(a)h(quoted)g(string.)38
+(erforming)390 4696 y(completion)25 b(on)e(a)h(quoted)g(string.)38
 b(It)24 b(is)f(set)h(to)h(0)f(b)s(efore)f(an)m(y)h(application-sp)s
-(eci\014c)h(completion)390 3477 y(function)30 b(is)g(called,)i(and)e
+(eci\014c)h(completion)390 4806 y(function)30 b(is)g(called,)i(and)e
 (ma)m(y)h(only)g(b)s(e)e(c)m(hanged)i(within)f(suc)m(h)g(a)h(function.)
-3371 3696 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_found_q)
-q(uote)390 3806 y Fs(When)31 b(Readline)i(is)e(completing)i(quoted)f
+3371 5011 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_found_q)
+q(uote)390 5121 y Fs(When)31 b(Readline)i(is)e(completing)i(quoted)f
 (text,)h(it)f(sets)g(this)g(v)-5 b(ariable)32 b(to)h(a)f(non-zero)g(v)
--5 b(alue)32 b(if)390 3915 y(the)21 b(w)m(ord)g(b)s(eing)g(completed)h
+-5 b(alue)32 b(if)390 5230 y(the)21 b(w)m(ord)g(b)s(eing)g(completed)h
 (con)m(tains)g(or)f(is)g(delimited)h(b)m(y)f(an)m(y)g(quoting)h(c)m
-(haracters,)i(including)390 4025 y(bac)m(kslashes.)42
+(haracters,)i(including)390 5340 y(bac)m(kslashes.)42
 b(This)29 b(is)i(set)g(b)s(efore)f(an)m(y)g(application-sp)s(eci\014c)i
-(completion)g(function)e(is)g(called.)3371 4244 y([V)-8
-b(ariable])-3598 b Fg(int)53 b(rl_completion_mark_sy)q(mlin)q(k_d)q
-(irs)390 4354 y Fs(If)31 b(non-zero,)i(a)f(slash)g(will)g(b)s(e)f(app)s
-(ended)f(to)j(completed)g(\014lenames)e(that)i(are)f(sym)m(b)s(olic)g
-(links)390 4463 y(to)25 b(directory)g(names,)g(sub)5
+(completion)g(function)e(is)g(called.)p eop end
+%%Page: 53 57
+TeXDict begin 53 56 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(53)3371
+299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_mark_sy)q
+(mlin)q(k_d)q(irs)390 408 y Fs(If)31 b(non-zero,)i(a)f(slash)g(will)g
+(b)s(e)f(app)s(ended)f(to)j(completed)g(\014lenames)e(that)i(are)f(sym)
+m(b)s(olic)g(links)390 518 y(to)25 b(directory)g(names,)g(sub)5
 b(ject)24 b(to)h(the)f(v)-5 b(alue)25 b(of)f(the)h(user-settable)g
-Fi(mark-directories)k Fs(v)-5 b(ariable.)390 4573 y(This)27
+Fi(mark-directories)k Fs(v)-5 b(ariable.)390 628 y(This)27
 b(v)-5 b(ariable)28 b(exists)g(so)f(that)h(application-sp)s(eci\014c)h
 (completion)g(functions)e(can)g(o)m(v)m(erride)i(the)390
-4682 y(user's)42 b(global)h(preference)g(\(set)g(via)g(the)f
+737 y(user's)42 b(global)h(preference)g(\(set)g(via)g(the)f
 Fi(mark-symlink)m(ed-directories)48 b Fs(Readline)43
-b(v)-5 b(ariable\))390 4792 y(if)38 b(appropriate.)62
+b(v)-5 b(ariable\))390 847 y(if)38 b(appropriate.)62
 b(This)37 b(v)-5 b(ariable)38 b(is)g(set)g(to)g(the)g(user's)f
-(preference)g(b)s(efore)g(an)m(y)h(application-)390 4902
+(preference)g(b)s(efore)g(an)m(y)h(application-)390 956
 y(sp)s(eci\014c)31 b(completion)i(function)f(is)f(called,)j(so)e
 (unless)f(that)h(function)f(mo)s(di\014es)g(the)h(v)-5
-b(alue,)33 b(the)390 5011 y(user's)d(preferences)g(are)h(honored.)3371
-5230 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_ignore_completion_)q
-(dupl)q(ica)q(tes)390 5340 y Fs(If)30 b(non-zero,)h(then)f(duplicates)h
+b(alue,)33 b(the)390 1066 y(user's)d(preferences)g(are)h(honored.)3371
+1303 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_ignore_completion_)q
+(dupl)q(ica)q(tes)390 1413 y Fs(If)30 b(non-zero,)h(then)f(duplicates)h
 (in)f(the)h(matc)m(hes)g(are)g(remo)m(v)m(ed.)42 b(The)29
-b(default)i(is)f(1.)p eop end
-%%Page: 52 56
-TeXDict begin 52 55 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(52)3371
-299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_filename_completio)q
-(n_de)q(sir)q(ed)390 408 y Fs(Non-zero)33 b(means)f(that)g(the)g
-(results)f(of)h(the)g(matc)m(hes)h(are)f(to)h(b)s(e)e(treated)i(as)f
-(\014lenames.)45 b(This)390 518 y(is)40 b Fj(always)49
-b Fs(zero)41 b(when)e(completion)i(is)f(attempted,)j(and)d(can)g(only)g
-(b)s(e)f(c)m(hanged)i(within)e(an)390 628 y(application-sp)s(eci\014c)i
-(completion)g(function.)67 b(If)39 b(it)h(is)f(set)h(to)h(a)e(non-zero)
-h(v)-5 b(alue)40 b(b)m(y)f(suc)m(h)h(a)390 737 y(function,)24
+b(default)i(is)f(1.)3371 1650 y([V)-8 b(ariable])-3598
+b Fg(int)53 b(rl_filename_completio)q(n_de)q(sir)q(ed)390
+1760 y Fs(Non-zero)33 b(means)f(that)g(the)g(results)f(of)h(the)g(matc)
+m(hes)h(are)f(to)h(b)s(e)e(treated)i(as)f(\014lenames.)45
+b(This)390 1870 y(is)40 b Fj(always)49 b Fs(zero)41 b(when)e
+(completion)i(is)f(attempted,)j(and)d(can)g(only)g(b)s(e)f(c)m(hanged)i
+(within)e(an)390 1979 y(application-sp)s(eci\014c)i(completion)g
+(function.)67 b(If)39 b(it)h(is)f(set)h(to)h(a)e(non-zero)h(v)-5
+b(alue)40 b(b)m(y)f(suc)m(h)h(a)390 2089 y(function,)24
 b(directory)f(names)f(ha)m(v)m(e)h(a)g(slash)f(app)s(ended)e(and)i
-(Readline)h(attempts)g(to)g(quote)g(com-)390 847 y(pleted)35
+(Readline)h(attempts)g(to)g(quote)g(com-)390 2198 y(pleted)35
 b(\014lenames)g(if)g(they)h(con)m(tain)g(an)m(y)f(c)m(haracters)i(in)e
-Fr(rl_filename_quote_chara)o(cter)o(s)390 956 y Fs(and)30
+Fr(rl_filename_quote_chara)o(cter)o(s)390 2308 y Fs(and)30
 b Fr(rl_filename_quoting_des)o(ired)24 b Fs(is)30 b(set)h(to)g(a)g
-(non-zero)g(v)-5 b(alue.)3371 1141 y([V)d(ariable])-3598
-b Fg(int)53 b(rl_filename_quoting_d)q(esir)q(ed)390 1250
+(non-zero)g(v)-5 b(alue.)3371 2545 y([V)d(ariable])-3598
+b Fg(int)53 b(rl_filename_quoting_d)q(esir)q(ed)390 2655
 y Fs(Non-zero)29 b(means)f(that)h(the)f(results)g(of)g(the)g(matc)m
 (hes)i(are)e(to)h(b)s(e)e(quoted)h(using)g(double)f(quotes)390
-1360 y(\(or)43 b(an)f(application-sp)s(eci\014c)i(quoting)f(mec)m
+2765 y(\(or)43 b(an)f(application-sp)s(eci\014c)i(quoting)f(mec)m
 (hanism\))g(if)f(the)h(completed)g(\014lename)g(con)m(tains)390
-1469 y(an)m(y)28 b(c)m(haracters)h(in)e Fr(rl_filename_quote_chars)p
+2874 y(an)m(y)28 b(c)m(haracters)h(in)e Fr(rl_filename_quote_chars)p
 Fs(.)34 b(This)27 b(is)g Fj(always)37 b Fs(non-zero)28
-b(when)f(comple-)390 1579 y(tion)h(is)g(attempted,)h(and)e(can)h(only)g
+b(when)f(comple-)390 2984 y(tion)h(is)g(attempted,)h(and)e(can)h(only)g
 (b)s(e)f(c)m(hanged)h(within)f(an)h(application-sp)s(eci\014c)h
-(completion)390 1689 y(function.)37 b(The)21 b(quoting)g(is)g
+(completion)390 3093 y(function.)37 b(The)21 b(quoting)g(is)g
 (e\013ected)i(via)e(a)h(call)g(to)g(the)f(function)g(p)s(oin)m(ted)g
-(to)g(b)m(y)g Fr(rl_filename_)390 1798 y(quoting_function)p
-Fs(.)3371 1983 y([V)-8 b(ariable])-3598 b Fg(int)53 b
-(rl_attempted_completi)q(on_o)q(ver)390 2092 y Fs(If)93
+(to)g(b)m(y)g Fr(rl_filename_)390 3203 y(quoting_function)p
+Fs(.)3371 3440 y([V)-8 b(ariable])-3598 b Fg(int)53 b
+(rl_attempted_completi)q(on_o)q(ver)390 3550 y Fs(If)93
 b(an)h(application-sp)s(eci\014c)i(completion)f(function)f(assigned)g
-(to)h Fr(rl_attempted_)390 2202 y(completion_function)48
+(to)h Fr(rl_attempted_)390 3660 y(completion_function)48
 b Fs(sets)53 b(this)g(v)-5 b(ariable)54 b(to)g(a)f(non-zero)h(v)-5
-b(alue,)60 b(Readline)53 b(will)h(not)390 2311 y(p)s(erform)28
+b(alue,)60 b(Readline)53 b(will)h(not)390 3769 y(p)s(erform)28
 b(its)i(default)g(\014lename)g(completion)h(ev)m(en)f(if)g(the)f
-(application's)i(completion)g(function)390 2421 y(returns)e(no)h(matc)m
+(application's)i(completion)g(function)390 3879 y(returns)e(no)h(matc)m
 (hes.)42 b(It)31 b(should)e(b)s(e)h(set)h(only)f(b)m(y)h(an)f
-(application's)i(completion)f(function.)3371 2605 y([V)-8
+(application's)i(completion)f(function.)3371 4116 y([V)-8
 b(ariable])-3598 b Fg(int)53 b(rl_sort_completion_ma)q(tche)q(s)390
-2715 y Fs(If)29 b(an)h(application)h(sets)f(this)g(v)-5
+4226 y Fs(If)29 b(an)h(application)h(sets)f(this)g(v)-5
 b(ariable)31 b(to)f(0,)h(Readline)f(will)g(not)g(sort)g(the)g(list)h
-(of)f(completions)390 2824 y(\(whic)m(h)25 b(implies)f(that)i(it)f
+(of)f(completions)390 4335 y(\(whic)m(h)25 b(implies)f(that)i(it)f
 (cannot)g(remo)m(v)m(e)h(an)m(y)f(duplicate)g(completions\).)40
-b(The)24 b(default)h(v)-5 b(alue)25 b(is)390 2934 y(1,)32
+b(The)24 b(default)h(v)-5 b(alue)25 b(is)390 4445 y(1,)32
 b(whic)m(h)f(means)g(that)h(Readline)g(will)f(sort)h(the)f(completions)
-h(and,)f(dep)s(ending)f(on)h(the)g(v)-5 b(alue)390 3044
+h(and,)f(dep)s(ending)f(on)h(the)g(v)-5 b(alue)390 4555
 y(of)31 b Fr(rl_ignore_completion_du)o(pli)o(cate)o(s)p
 Fs(,)25 b(will)30 b(attempt)i(to)f(remo)m(v)m(e)h(duplicate)f(matc)m
-(hes.)3371 3228 y([V)-8 b(ariable])-3598 b Fg(int)53
-b(rl_completion_type)390 3337 y Fs(Set)35 b(to)h(a)f(c)m(haracter)i
+(hes.)3371 4792 y([V)-8 b(ariable])-3598 b Fg(int)53
+b(rl_completion_type)390 4902 y Fs(Set)35 b(to)h(a)f(c)m(haracter)i
 (describing)e(the)g(t)m(yp)s(e)g(of)g(completion)i(Readline)e(is)g
-(curren)m(tly)h(attempt-)390 3447 y(ing;)f(see)f(the)g(description)f
+(curren)m(tly)h(attempt-)390 5011 y(ing;)f(see)f(the)g(description)f
 (of)g Fr(rl_complete_internal\(\))28 b Fs(\(see)34 b(Section)g(2.6.2)h
-([Completion)390 3557 y(F)-8 b(unctions],)39 b(page)f(47\))f(for)g(the)
+([Completion)390 5121 y(F)-8 b(unctions],)39 b(page)f(48\))f(for)g(the)
 g(list)g(of)g(c)m(haracters.)61 b(This)36 b(is)g(set)i(to)f(the)g
-(appropriate)f(v)-5 b(alue)390 3666 y(b)s(efore)31 b(an)m(y)h
+(appropriate)f(v)-5 b(alue)390 5230 y(b)s(efore)31 b(an)m(y)h
 (application-sp)s(eci\014c)h(completion)g(function)f(is)f(called,)j
-(allo)m(wing)f(suc)m(h)e(functions)390 3776 y(to)g(presen)m(t)g(the)f
-(same)h(in)m(terface)h(as)e Fr(rl_complete\(\))p Fs(.)3371
-3960 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_invokin)q
-(g_ke)q(y)390 4070 y Fs(Set)41 b(to)g(the)g(\014nal)g(c)m(haracter)h
-(in)e(the)h(k)m(ey)g(sequence)h(that)f(in)m(v)m(ok)m(ed)h(one)f(of)g
-(the)g(completion)390 4179 y(functions)c(that)h(call)h
-Fr(rl_complete_internal\(\))p Fs(.)56 b(This)37 b(is)g(set)h(to)g(the)g
-(appropriate)f(v)-5 b(alue)390 4289 y(b)s(efore)30 b(an)m(y)h
+(allo)m(wing)f(suc)m(h)e(functions)390 5340 y(to)g(presen)m(t)g(the)f
+(same)h(in)m(terface)h(as)e Fr(rl_complete\(\))p Fs(.)p
+eop end
+%%Page: 54 58
+TeXDict begin 54 57 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(54)3371
+299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_invokin)q
+(g_ke)q(y)390 408 y Fs(Set)41 b(to)g(the)g(\014nal)g(c)m(haracter)h(in)
+e(the)h(k)m(ey)g(sequence)h(that)f(in)m(v)m(ok)m(ed)h(one)f(of)g(the)g
+(completion)390 518 y(functions)c(that)h(call)h Fr
+(rl_complete_internal\(\))p Fs(.)56 b(This)37 b(is)g(set)h(to)g(the)g
+(appropriate)f(v)-5 b(alue)390 628 y(b)s(efore)30 b(an)m(y)h
 (application-sp)s(eci\014c)h(completion)f(function)f(is)h(called.)3371
-4473 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_inhibit_completion)390
-4583 y Fs(If)28 b(this)g(v)-5 b(ariable)29 b(is)f(non-zero,)i
+812 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_inhibit_completion)390
+922 y Fs(If)28 b(this)g(v)-5 b(ariable)29 b(is)f(non-zero,)i
 (completion)f(is)f(inhibited.)40 b(The)28 b(completion)h(c)m(haracter)h
-(will)f(b)s(e)390 4692 y(inserted)h(as)h(an)m(y)g(other)f(b)s(ound)e
-(to)k Fr(self-insert)p Fs(.)150 4892 y Fh(2.6.4)63 b(A)40
-b(Short)i(Completion)g(Example)150 5039 y Fs(Here)30
+(will)f(b)s(e)390 1031 y(inserted)h(as)h(an)m(y)g(other)f(b)s(ound)e
+(to)k Fr(self-insert)p Fs(.)150 1230 y Fh(2.6.4)63 b(A)40
+b(Short)i(Completion)g(Example)150 1377 y Fs(Here)30
 b(is)f(a)g(small)h(application)g(demonstrating)f(the)h(use)e(of)i(the)f
 (GNU)h(Readline)f(library)-8 b(.)40 b(It)30 b(is)f(called)150
-5148 y Fr(fileman)p Fs(,)40 b(and)f(the)h(source)g(co)s(de)g(resides)f
+1487 y Fr(fileman)p Fs(,)40 b(and)f(the)h(source)g(co)s(de)g(resides)f
 (in)g Fr(examples/fileman.c)p Fs(.)64 b(This)39 b(sample)h(application)
-150 5258 y(pro)m(vides)26 b(completion)i(of)e(command)g(names,)h(line)f
+150 1597 y(pro)m(vides)26 b(completion)i(of)e(command)g(names,)h(line)f
 (editing)h(features,)h(and)d(access)j(to)f(the)f(history)g(list.)p
 eop end
-%%Page: 53 57
-TeXDict begin 53 56 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(53)390
+%%Page: 55 59
+TeXDict begin 55 58 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(55)390
 299 y Fe(/*)40 b(fileman.c)h(--)f(A)f(tiny)h(application)i(which)e
 (demonstrates)i(how)e(to)g(use)g(the)508 386 y(GNU)g(Readline)h
 (library.)80 b(This)40 b(application)i(interactively)g(allows)f(users)
@@ -10494,9 +10581,9 @@ y(int)e(com_cd)g(PARAMS\(\(char)i(*\)\);)390 4483 y(int)e(com_quit)h
 (call)i(to)e(do)h(the)g(job.)g(*/)468 5181 y(char)h(*doc;)f(/*)g
 (Documentation)i(for)e(this)g(function.)80 b(*/)390 5268
 y(})39 b(COMMAND;)p eop end
-%%Page: 54 58
-TeXDict begin 54 57 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(54)390
+%%Page: 56 60
+TeXDict begin 56 59 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(56)390
 386 y Fe(COMMAND)41 b(commands[])g(=)f({)468 473 y({)g("cd",)g(com_cd,)
 h("Change)g(to)f(directory)h(DIR")f(},)468 560 y({)g("delete",)h
 (com_delete,)h("Delete)f(FILE")f(},)468 648 y({)g("help",)h(com_help,)g
@@ -10532,9 +10619,9 @@ y(break;)625 5093 y(/*)g(Remove)h(leading)f(and)g(trailing)h
 (whitespace)h(from)e(the)g(line.)743 5181 y(Then,)g(if)g(there)g(is)g
 (anything)h(left,)g(add)e(it)h(to)g(the)g(history)h(list)743
 5268 y(and)f(execute)h(it.)f(*/)p eop end
-%%Page: 55 59
-TeXDict begin 55 58 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(55)625
+%%Page: 57 61
+TeXDict begin 57 60 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(57)625
 299 y Fe(s)40 b(=)f(stripwhite)j(\(line\);)625 473 y(if)e(\(*s\))704
 560 y({)782 648 y(add_history)i(\(s\);)782 735 y(execute_line)g(\(s\);)
 704 822 y(})625 996 y(free)e(\(line\);)547 1083 y(})468
@@ -10561,9 +10648,9 @@ y(if)e(\(!command\))547 3524 y({)625 3611 y(fprintf)h(\(stderr,)g
 b(Return)41 b(a)e(NULL)h(pointer)h(if)f(NAME)g(isn't)g(a)g(command)g
 (name.)h(*/)390 5006 y(COMMAND)g(*)390 5093 y(find_command)h(\(name\))
 586 5181 y(char)e(*name;)390 5268 y({)p eop end
-%%Page: 56 60
-TeXDict begin 56 59 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(56)468
+%%Page: 58 62
+TeXDict begin 58 61 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(58)468
 299 y Fe(register)41 b(int)f(i;)468 473 y(for)g(\(i)g(=)f(0;)h
 (commands[i].name;)j(i++\))547 560 y(if)d(\(strcmp)g(\(name,)h
 (commands[i].name\))i(==)d(0\))625 648 y(return)h(\(&commands[i]\);)468
@@ -10604,9 +10691,9 @@ b(We)40 b(can)g(use)f(the)h(entire)h(contents)g(of)f(rl_line_buffer)508
 b(Return)40 b(the)g(array)h(of)e(matches,)508 5181 y(or)g(NULL)h(if)g
 (there)h(aren't)f(any.)g(*/)390 5268 y(char)g(**)p eop
 end
-%%Page: 57 61
-TeXDict begin 57 60 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(57)390
+%%Page: 59 63
+TeXDict begin 59 62 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(59)390
 299 y Fe(fileman_completion)43 b(\(text,)e(start,)g(end\))586
 386 y(const)f(char)h(*text;)586 473 y(int)f(start,)h(end;)390
 560 y({)468 648 y(char)g(**matches;)468 822 y(matches)g(=)f(\(char)g
@@ -10645,9 +10732,9 @@ b(*/)390 4832 y(/*)903 b(FileMan)41 b(Commands)1060 b(*/)390
 b(*/)390 5181 y(/*)40 b(String)g(to)g(pass)g(to)g(system)g(\(\).)80
 b(This)40 b(is)f(for)h(the)g(LIST,)h(VIEW)f(and)g(RENAME)508
 5268 y(commands.)h(*/)p eop end
-%%Page: 58 62
-TeXDict begin 58 61 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(58)390
+%%Page: 60 64
+TeXDict begin 60 63 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(60)390
 299 y Fe(static)41 b(char)f(syscom[1024];)390 473 y(/*)g(List)g(the)g
 (file\(s\))h(named)f(in)g(arg.)g(*/)390 560 y(com_list)h(\(arg\))586
 648 y(char)f(*arg;)390 735 y({)468 822 y(if)g(\(!arg\))547
@@ -10675,9 +10762,9 @@ j(==)d(1\))f(?)h("")f(:)h("s",)782 5093 y(finfo.st_size,)782
 5181 y(\(finfo.st_size)j(==)c(1\))h(?)g("")f(:)h("s"\);)468
 5268 y(printf)h(\("Inode)g(Last)f(Change)h(at:)f(\045s",)g(ctime)g
 (\(&finfo.st_ctime\)\);)p eop end
-%%Page: 59 63
-TeXDict begin 59 62 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(59)468
+%%Page: 61 65
+TeXDict begin 61 64 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(61)468
 299 y Fe(printf)41 b(\(")236 b(Last)40 b(access)h(at:)f(\045s",)g
 (ctime)g(\(&finfo.st_atime\)\);)468 386 y(printf)h(\(")157
 b(Last)41 b(modified)g(at:)f(\045s",)g(ctime)g(\(&finfo.st_mtime\)\);)
@@ -10706,9 +10793,9 @@ b(Possibilties)42 b(are:\\n",)f(arg\);)625 3176 y(for)f(\(i)g(=)f(0;)h
 4919 y(com_cd)h(\(arg\))586 5006 y(char)f(*arg;)390 5093
 y({)468 5181 y(if)g(\(chdir)h(\(arg\))f(==)g(-1\))547
 5268 y({)p eop end
-%%Page: 60 64
-TeXDict begin 60 63 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(60)625
+%%Page: 62 66
+TeXDict begin 62 65 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(62)625
 299 y Fe(perror)41 b(\(arg\);)625 386 y(return)g(1;)547
 473 y(})468 648 y(com_pwd)g(\(""\);)468 735 y(return)g(\(0\);)390
 822 y(})390 996 y(/*)f(Print)g(out)g(the)g(current)h(working)g
@@ -10737,10 +10824,10 @@ y({)625 4658 y(fprintf)h(\(stderr,)g("\045s:)f(Argument)h
 (required.\\n",)i(caller\);)625 4745 y(return)e(\(0\);)547
 4832 y(})468 5006 y(return)g(\(1\);)390 5093 y(})p eop
 end
-%%Page: 61 65
-TeXDict begin 61 64 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 63 67
+TeXDict begin 63 66 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(61)150 299 y Fo(App)t(endix)52 b(A)81 b(GNU)54 b(F)-13
+b(63)150 299 y Fo(App)t(endix)52 b(A)81 b(GNU)54 b(F)-13
 b(ree)53 b(Do)t(cumen)l(tation)e(License)1359 502 y Fs(V)-8
 b(ersion)31 b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390
 635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fp(\015)e
@@ -10821,10 +10908,10 @@ b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g
 5340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
 b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
 (cumen)m(t)g(is)g(released)p eop end
-%%Page: 62 66
-TeXDict begin 62 65 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 64 68
+TeXDict begin 64 67 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(62)330 299 y(under)26 b(this)i(License.)40 b(If)27
+b(64)330 299 y(under)26 b(this)i(License.)40 b(If)27
 b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
 (de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
 y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
@@ -10915,10 +11002,10 @@ b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
 b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
 5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
-%%Page: 63 67
-TeXDict begin 63 66 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 65 69
+TeXDict begin 65 68 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(63)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(65)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
 (the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
 (or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
 b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
@@ -11008,10 +11095,10 @@ b(in)f(the)h(Title)h(P)m(age)g(\(and)f(on)f(the)h(co)m(v)m(ers,)i(if)e
 5340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
 (ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
 b(,)p eop end
-%%Page: 64 68
-TeXDict begin 64 67 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 66 70
+TeXDict begin 66 69 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(64)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+b(66)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
 (the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
 h(title)h(as)510 408 y(a)e(previous)f(v)m(ersion)g(if)h(the)f(original)
 i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s(ermission.)360
@@ -11090,10 +11177,10 @@ b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g
 (designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
 b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
 eop end
-%%Page: 65 69
-TeXDict begin 65 68 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 67 71
+TeXDict begin 67 70 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(65)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(67)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
 b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
 b(ersion's)36 b(license)g(notice.)57 b(These)330 408
 y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
@@ -11178,10 +11265,10 @@ b(ma)m(y)g(extract)h(a)f(single)g(do)s(cumen)m(t)f(from)g(suc)m(h)g(a)h
 5230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
 (other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
 5340 y(that)d(do)s(cumen)m(t.)p eop end
-%%Page: 66 70
-TeXDict begin 66 69 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 68 72
+TeXDict begin 68 71 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(66)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+b(68)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
 (W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
 (its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
 s(enden)m(t)330 551 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h
@@ -11266,10 +11353,10 @@ b(ha)m(v)m(e)h(receiv)m(ed)h(copies)e(or)h(righ)m(ts)f(from)g(y)m(ou)g
 (reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
 (the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
 (an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
-%%Page: 67 71
-TeXDict begin 67 70 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 69 73
+TeXDict begin 69 72 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(67)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
+b(69)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
 b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
 (the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
@@ -11333,10 +11420,10 @@ f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g
 g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
 (time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
 330 4005 y(eligible)h(for)e(relicensing.)p eop end
-%%Page: 68 72
-TeXDict begin 68 71 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 70 74
+TeXDict begin 70 73 bop 150 -116 a Fs(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(68)150 299 y Fq(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+b(70)150 299 y Fq(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
 (for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fs(T)-8 b(o)35
 b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
 i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
@@ -11371,11 +11458,11 @@ y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
 b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
 (ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
 eop end
-%%Page: 69 73
-TeXDict begin 69 72 bop 150 -116 a Fs(Concept)31 b(Index)2927
-b(69)150 299 y Fo(Concept)52 b(Index)150 638 y Fq(A)150
+%%Page: 71 75
+TeXDict begin 71 74 bop 150 -116 a Fs(Concept)31 b(Index)2927
+b(71)150 299 y Fo(Concept)52 b(Index)150 638 y Fq(A)150
 754 y Fb(application-sp)r(eci\014c)27 b(completion)f(functions)17
-b Fa(:)d(:)f(:)g(:)g(:)h(:)f(:)43 b Fb(46)150 1005 y
+b Fa(:)d(:)f(:)g(:)g(:)h(:)f(:)43 b Fb(47)150 1005 y
 Fq(C)150 1121 y Fb(command)26 b(editing)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fb(1)150 1372 y Fq(E)150
@@ -11399,777 +11486,799 @@ g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38
 b Fb(1)2025 1343 y Fq(R)2025 1474 y Fb(readline,)26 b(function)12
 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(22)2025 1761 y Fq(V)2025 1891 y Fb(v)l(ariables,)27
+b Fb(23)2025 1761 y Fq(V)2025 1891 y Fb(v)l(ariables,)27
 b(readline)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50
 b Fb(4)2025 2178 y Fq(Y)2025 2309 y Fb(y)n(anking)25
 b(text)11 b Fa(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)38 b Fb(2)p eop end
-%%Page: 70 74
-TeXDict begin 70 73 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(70)150 299 y
+%%Page: 72 76
+TeXDict begin 72 75 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(72)150 299 y
 Fo(F)-13 b(unction)52 b(and)h(V)-13 b(ariable)53 b(Index)p
 159 610 41 6 v 150 726 a Fe(_rl_digit_p)24 b Fa(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fb(39)150 814 y Fe(_rl_digit_value)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
+b Fb(40)150 814 y Fe(_rl_digit_value)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(39)150 901 y Fe(_rl_lowercase_p)11
+g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(40)150 901 y Fe(_rl_lowercase_p)11
 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(39)150 988 y Fe(_rl_to_lower)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+b Fb(40)150 988 y Fe(_rl_to_lower)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(39)150 1076
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(40)150 1075
 y Fe(_rl_to_upper)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)45 b Fb(39)150 1163 y Fe(_rl_uppercase_p)11
+(:)g(:)h(:)f(:)g(:)45 b Fb(40)150 1163 y Fe(_rl_uppercase_p)11
 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(38)150 1415 y Fq(A)150 1531 y Fe(abort)27 b(\(C-g\))11
+b Fb(39)150 1415 y Fq(A)150 1531 y Fe(abort)27 b(\(C-g\))11
 b Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)37 b Fb(19)150 1618 y Fe(accept-line)28 b(\(Newline)g(or)e(Return\))
+(:)37 b Fb(21)150 1618 y Fe(accept-line)28 b(\(Newline)g(or)e(Return\))
 8 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34
-b Fb(14)150 1871 y Fq(B)150 1987 y Fe(backward-char)29
+b Fb(15)150 1870 y Fq(B)150 1986 y Fe(backward-char)29
 b(\(C-b\))8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fb(14)150 2074 y Fe(backward-delete-char)c(\(Rubout\))17
+b Fb(15)150 2073 y Fe(backward-delete-char)c(\(Rubout\))17
 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)43
-b Fb(16)150 2161 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))18
+b Fb(17)150 2161 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))18
 b Fa(:)d(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)45
-b Fb(17)150 2249 y Fe(backward-kill-word)30 b(\(M-DEL\))7
+b Fb(18)150 2248 y Fe(backward-kill-word)30 b(\(M-DEL\))7
 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)33 b Fb(17)150 2336 y Fe(backward-word)c(\(M-b\))8
+(:)h(:)33 b Fb(19)150 2335 y Fe(backward-word)c(\(M-b\))8
 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(14)150
-2423 y Fe(beginning-of-history)c(\(M-<\))7 b Fa(:)15
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(15)150
+2422 y Fe(beginning-of-history)c(\(M-<\))7 b Fa(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
-b Fb(15)150 2511 y Fe(beginning-of-line)c(\(C-a\))15
+b Fb(16)150 2510 y Fe(beginning-of-line)c(\(C-a\))15
 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)41 b Fb(14)150 2598 y(b)r(ell-st)n(yle)21
+h(:)f(:)g(:)g(:)41 b Fb(15)150 2597 y(b)r(ell-st)n(yle)21
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)47 b Fb(4)150 2685 y(bind-tt)n(y-sp)r(ecial-c)n
+g(:)g(:)g(:)h(:)f(:)47 b Fb(4)150 2684 y(bind-tt)n(y-sp)r(ecial-c)n
 (hars)15 b Fa(:)d(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fb(5)150 2935 y Fq(C)150 3051 y Fe(call-last-kbd-macro)30
+b Fb(5)150 2771 y(blink-matc)n(hing-paren)17 b Fa(:)12
+b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fb(5)150 2859
+y Fe(bracketed-paste-begin)30 b(\(\))12 b Fa(:)i(:)f(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)38
+b Fb(17)150 3111 y Fq(C)150 3227 y Fe(call-last-kbd-macro)30
 b(\(C-x)c(e\))11 b Fa(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)38 b Fb(19)150 3139 y Fe(capitalize-word)29
+(:)g(:)g(:)g(:)g(:)38 b Fb(20)150 3314 y Fe(capitalize-word)29
 b(\(M-c\))21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(17)150
-3226 y Fe(character-search)29 b(\(C-]\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(18)150
+3401 y Fe(character-search)29 b(\(C-]\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(20)150 3313 y Fe(character-search-backward)31 b(\(M-C-]\))6
-b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(20)150
-3401 y Fe(clear-screen)28 b(\(C-l\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
+b Fb(21)150 3488 y Fe(character-search-backward)31 b(\(M-C-]\))6
+b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(21)150
+3576 y Fe(clear-screen)28 b(\(C-l\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)37 b Fb(14)150 3488 y(colored-stats)11 b
-Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)37 b Fb(15)150 3663 y(colored-completion-pre\014x)21
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fb(5)150 3750 y(colored-stats)11
+b Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)37 b Fb(5)150 3838 y(commen)n(t-b)r(egin)17 b
+Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44
+b Fb(5)150 3925 y Fe(complete)27 b(\(TAB\))22 b Fa(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
+b Fb(20)150 4012 y(completion-displa)n(y-width)22 b Fa(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)48 b Fb(5)150 4099 y(completion-ignore-case)13
+b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b Fb(5)150 4187
+y(completion-map-case)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+36 b Fb(5)150 4274 y(completion-pre\014x-displa)n(y-length)8
+b Fa(:)k(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+34 b Fb(5)150 4361 y(completion-query-items)17 b Fa(:)c(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)44 b Fb(6)150 4448 y(con)n(v)n(ert-meta)20 b
+Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)37 b Fb(5)150 3575 y(commen)n(t-b)r(egin)17 b Fa(:)d(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fb(5)150
-3662 y Fe(complete)27 b(\(TAB\))22 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(18)150 3750 y(completion-displa)n
-(y-width)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(5)150
-3837 y(completion-ignore-case)13 b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-40 b Fb(5)150 3924 y(completion-map-case)9 b Fa(:)14
-b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36 b Fb(5)150
-4012 y(completion-pre\014x-displa)n(y-length)8 b Fa(:)k(:)h(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fb(5)150
-4099 y(completion-query-items)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
-b Fb(5)150 4186 y(con)n(v)n(ert-meta)20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fb(5)150
-4273 y Fe(copy-backward-word)30 b(\(\))20 b Fa(:)13 b(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-46 b Fb(18)150 4361 y Fe(copy-forward-word)29 b(\(\))23
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(18)150 4448 y
-Fe(copy-region-as-kill)30 b(\(\))17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(18)150 4700 y Fq(D)150 4816 y Fe(delete-char)28
+h(:)47 b Fb(6)150 4536 y Fe(copy-backward-word)30 b(\(\))20
+b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(19)150 4623 y Fe(copy-forward-word)
+29 b(\(\))23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(19)150
+4710 y Fe(copy-region-as-kill)30 b(\(\))17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
+b Fb(19)150 4962 y Fq(D)150 5078 y Fe(delete-char)28
 b(\(C-d\))13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(16)150 4904 y Fe(delete-char-or-list)30 b(\(\))17
+b Fb(17)150 5165 y Fe(delete-char-or-list)30 b(\(\))17
 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)44 b Fb(19)150 4991 y Fe(delete-horizontal-space)31
+g(:)g(:)g(:)g(:)g(:)44 b Fb(20)150 5253 y Fe(delete-horizontal-space)31
 b(\(\))7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)33 b Fb(18)150 5078 y Fe(digit-argument)c(\()p
+g(:)g(:)g(:)h(:)33 b Fb(19)150 5340 y Fe(digit-argument)c(\()p
 Fc(M-0)p Fe(,)e Fc(M-1)p Fe(,)f(...)g Fc(M--)p Fe(\))7
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(18)150
-5166 y(disable-completion)13 b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)40 b Fb(6)150 5253 y Fe(do-uppercase-version)30
-b(\(M-a,)d(M-b,)f(M-)p Fc(x)p Fe(,)h(...)q(\))310 5340
-y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(20)2025 610
+b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(19)2025
+610 y(disable-completion)13 b Fa(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)40 b Fb(6)2025 698 y Fe(do-uppercase-version)30
+b(\(M-a,)d(M-b,)f(M-)p Fc(x)p Fe(,)h(...\))2185 785 y
+Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(21)2025 873
 y Fe(downcase-word)28 b(\(M-l\))8 b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)34 b Fb(17)2025 698 y Fe(dump-functions)29 b(\(\))13
+h(:)34 b Fb(18)2025 961 y Fe(dump-functions)29 b(\(\))13
 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(20)2025
-786 y Fe(dump-macros)28 b(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(22)2025
+1048 y Fe(dump-macros)28 b(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(21)2025 874 y Fe(dump-variables)29
+g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(22)2025 1136 y Fe(dump-variables)29
 b(\(\))13 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39
-b Fb(21)2025 1130 y Fq(E)2025 1247 y Fb(editing-mo)r(de)21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)48 b Fb(6)2025 1335 y Fe(emacs-editing-mode)29 b(\(C-e\))12
-b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)39 b Fb(21)2025 1423 y(enable-k)n(eypad)17
-b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fb(6)2025 1511 y Fe(end-kbd-macro)28 b(\(C-x)f(\)\))10
-b Fa(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(19)2025 1599 y Fc(end-of-file)28
-b Fe(\(usually)f(C-d\))16 b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fb(16)2025 1687
-y Fe(end-of-history)29 b(\(M->\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fb(15)2025 1775 y Fe(end-of-line)28 b(\(C-e\))13 b
-Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(14)2025
-1863 y Fe(exchange-point-and-mark)31 b(\(C-x)26 b(C-x\))13
-b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(20)2025
-1951 y(expand-tilde)14 b Fa(:)e(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)41 b Fb(6)2025 2205 y Fq(F)2025
-2322 y Fe(forward-backward-delete-char)32 b(\(\))11 b
-Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b
-Fb(16)2025 2410 y Fe(forward-char)28 b(\(C-f\))10 b Fa(:)15
-b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(14)2025 2498
-y Fe(forward-search-history)30 b(\(C-s\))21 b Fa(:)13
+b Fb(22)2025 1391 y Fq(E)2025 1508 y Fb(ec)n(ho-con)n(trol-c)n
+(haracters)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35
+b Fb(6)2025 1596 y(editing-mo)r(de)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(6)2025
+1684 y Fe(emacs-editing-mode)29 b(\(C-e\))12 b Fa(:)j(:)e(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
+b Fb(22)2025 1771 y(emacs-mo)r(de-string)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fb(6)2025 1859 y(enable-brac)n(k)n
+(eted-paste)12 b Fa(:)g(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)39
+b Fb(6)2025 1947 y(enable-k)n(eypad)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Fb(6)2025 2035
+y Fe(end-kbd-macro)28 b(\(C-x)f(\)\))10 b Fa(:)j(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
+b Fb(20)2025 2122 y Fc(end-of-file)28 b Fe(\(usually)f(C-d\))16
+b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)43 b Fb(17)2025 2210 y Fe(end-of-history)29 b(\(M->\))23
+b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(16)2025 2298 y
+Fe(end-of-line)28 b(\(C-e\))13 b Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)39 b Fb(15)2025 2386 y Fe(exchange-point-and-mark)31
+b(\(C-x)26 b(C-x\))13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(21)2025 2473 y(expand-tilde)14 b Fa(:)e(:)h(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)41 b Fb(7)2025
+2726 y Fq(F)2025 2843 y Fe(forward-backward-delete-char)32
+b(\(\))11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
+b Fb(17)2025 2931 y Fe(forward-char)28 b(\(C-f\))10 b
+Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(15)2025
+3019 y Fe(forward-search-history)30 b(\(C-s\))21 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fb(15)2025 2586 y Fe(forward-word)28 b(\(M-f\))10 b
+b Fb(16)2025 3106 y Fe(forward-word)28 b(\(M-f\))10 b
 Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(14)2025
-2831 y Fq(H)2025 2949 y Fb(history-preserv)n(e-p)r(oin)n(t)9
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(15)2025
+3351 y Fq(H)2025 3468 y Fb(history-preserv)n(e-p)r(oin)n(t)9
 b Fa(:)j(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fb(6)2025
-3037 y Fe(history-search-backward)31 b(\(\))7 b Fa(:)13
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fb(7)2025
+3556 y Fe(history-search-backward)31 b(\(\))7 b Fa(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
-b Fb(15)2025 3125 y Fe(history-search-forward)c(\(\))10
+b Fb(16)2025 3643 y Fe(history-search-forward)c(\(\))10
 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)36 b Fb(15)2025 3213 y(history-size)16 b Fa(:)d(:)h(:)f(:)g(:)g
+f(:)g(:)36 b Fb(16)2025 3731 y(history-size)16 b Fa(:)d(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43
-b Fb(6)2025 3301 y Fe(history-substr-search-backward)32
+b Fb(7)2025 3819 y Fe(history-substr-search-backward)32
 b(\(\))6 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33
-b Fb(15)2025 3389 y Fe(history-substr-search-forward)f(\(\))9
-b Fa(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fb(15)2025
-3477 y(horizon)n(tal-scroll-mo)r(de)23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+b Fb(16)2025 3907 y Fe(history-substr-search-forward)f(\(\))9
+b Fa(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fb(16)2025
+3994 y(horizon)n(tal-scroll-mo)r(de)23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)48 b Fb(6)2025 3713 y Fq(I)2025 3831 y Fb(input-meta)19
+g(:)h(:)48 b Fb(7)2025 4230 y Fq(I)2025 4348 y Fb(input-meta)19
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)47 b Fb(7)2025 3919 y Fe(insert-comment)29
+g(:)g(:)g(:)47 b Fb(7)2025 4435 y Fe(insert-comment)29
 b(\(M-#\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(20)2025
-4007 y Fe(insert-completions)29 b(\(M-*\))12 b Fa(:)j(:)e(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(21)2025
+4523 y Fe(insert-completions)29 b(\(M-*\))12 b Fa(:)j(:)e(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(19)2025 4095 y(isearc)n(h-terminators)21 b Fa(:)13
+b Fb(20)2025 4611 y(isearc)n(h-terminators)21 b Fa(:)13
 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fb(7)2025
-4332 y Fq(K)2025 4449 y Fb(k)n(eymap)8 b Fa(:)k(:)h(:)g(:)g(:)g(:)h(:)f
+4847 y Fq(K)2025 4964 y Fb(k)n(eymap)8 b Fa(:)k(:)h(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(7)2025 4537 y Fe(kill-line)27 b(\(C-k\))18 b Fa(:)d(:)e(:)g(:)g(:)
+b Fb(7)2025 5052 y Fe(kill-line)27 b(\(C-k\))18 b Fa(:)d(:)e(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(17)2025 4625 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(18)2025 5139 y
 Fe(kill-region)28 b(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)47 b Fb(18)2025 4713 y Fe(kill-whole-line)29
+g(:)h(:)f(:)g(:)47 b Fb(19)2025 5227 y Fe(kill-whole-line)29
 b(\(\))10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fb(17)2025 4801 y Fe(kill-word)27 b(\(M-d\))18 b Fa(:)d(:)e(:)g(:)g
+b Fb(18)2025 5315 y Fe(kill-word)27 b(\(M-d\))18 b Fa(:)d(:)e(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(17)2025 5046
-y Fq(M)2025 5164 y Fb(mark-mo)r(di\014ed-lines)11 b Fa(:)i(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(7)2025 5252 y(mark-symlink)n
-(ed-directories)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(7)2025
-5340 y(matc)n(h-hidden-\014les)18 b Fa(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)45 b Fb(7)p eop end
-%%Page: 71 75
-TeXDict begin 71 74 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(71)150 299 y
-Fe(menu-complete)29 b(\(\))16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)42 b Fb(19)150 386 y Fe(menu-complete-backward)31
-b(\(\))10 b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)36 b Fb(19)150 473 y(men)n(u-complete-displa)n
-(y-pre\014x)19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fb(8)150 561 y(meta-\015ag)15
-b Fa(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)42 b Fb(7)150 811 y Fq(N)150 927 y
-Fe(next-history)28 b(\(C-n\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fb(15)150 1014 y Fe(non-incremental-forward-searc)q(h-hi)q
-(story)32 b(\(M-n\))310 1102 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
-b Fb(15)150 1189 y Fe(non-incremental-reverse-searc)q(h-hi)q(story)f
-(\(M-p\))310 1276 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(18)p eop end
+%%Page: 73 77
+TeXDict begin 73 76 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(73)150 299 y
+Fq(M)150 417 y Fb(mark-mo)r(di\014ed-lines)11 b Fa(:)i(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(8)150 505 y(mark-symlink)n
+(ed-directories)8 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(8)150
+593 y(matc)n(h-hidden-\014les)18 b Fa(:)12 b(:)h(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)45 b Fb(8)150 681 y Fe(menu-complete)29
+b(\(\))16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
+b Fb(20)150 769 y Fe(menu-complete-backward)31 b(\(\))10
+b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)36 b Fb(20)150 857 y(men)n(u-complete-displa)n(y-pre\014x)19
+b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)48 b Fb(8)150 946 y(meta-\015ag)15 b Fa(:)f(:)f(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42
+b Fb(7)150 1200 y Fq(N)150 1318 y Fe(next-history)28
+b(\(C-n\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Fb(16)150 1406 y Fe(non-incremental-forward-searc)q(h-hi)q(story)32
+b(\(M-n\))310 1493 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
-b Fb(15)150 1510 y Fq(O)150 1626 y Fb(output-meta)13
+b Fb(16)150 1581 y Fe(non-incremental-reverse-searc)q(h-hi)q(story)f
+(\(M-p\))310 1668 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
+b Fb(16)150 1906 y Fq(O)150 2024 y Fb(output-meta)13
 b Fa(:)f(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)40 b Fb(8)150 1713 y Fe(overwrite-mode)29 b(\(\))13
+(:)g(:)40 b Fb(8)150 2112 y Fe(overwrite-mode)29 b(\(\))13
 b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(17)150
-1955 y Fq(P)150 2071 y Fb(page-completions)21 b Fa(:)13
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(18)150
+2358 y Fq(P)150 2476 y Fb(page-completions)21 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
-b Fb(8)150 2158 y Fe(possible-completions)30 b(\(M-?\))7
+b Fb(8)150 2564 y Fe(possible-completions)30 b(\(M-?\))7
 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)33 b Fb(19)150 2246 y Fe(prefix-meta)28 b(\(ESC\))13
+(:)h(:)33 b Fb(20)150 2652 y Fe(prefix-meta)28 b(\(ESC\))13
 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(20)150
-2333 y Fe(previous-history)29 b(\(C-p\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(21)150
+2741 y Fe(previous-history)29 b(\(C-p\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(14)150 2420 y Fe(print-last-kbd-macro)30 b(\(\))15
+b Fb(15)150 2829 y Fe(print-last-kbd-macro)30 b(\(\))15
 b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)41 b Fb(19)150 2673 y Fq(Q)150 2789 y
+h(:)f(:)g(:)g(:)41 b Fb(20)150 3085 y Fq(Q)150 3203 y
 Fe(quoted-insert)29 b(\(C-q)d(or)g(C-v\))c Fa(:)13 b(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b
-Fb(16)150 3041 y Fq(R)150 3157 y Fe(re-read-init-file)29
+Fb(17)150 3460 y Fq(R)150 3577 y Fe(re-read-init-file)29
 b(\(C-x)e(C-r\))11 b Fa(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)38 b Fb(19)150 3245 y Fe(readline)12
+(:)g(:)g(:)g(:)g(:)38 b Fb(21)150 3666 y Fe(readline)12
 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)38 b Fb(22)150 3332 y Fe(redraw-current-line)30
+(:)g(:)h(:)f(:)38 b Fb(23)150 3754 y Fe(redraw-current-line)30
 b(\(\))17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(14)150 3419 y
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(15)150 3842 y
 Fe(reverse-search-history)31 b(\(C-r\))20 b Fa(:)13 b(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fb(15)150
-3506 y(rev)n(ert-all-at-newline)22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fb(16)150
+3930 y(rev)n(ert-all-at-newline)22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)48 b Fb(8)150 3594 y Fe(revert-line)28 b(\(M-r\))13
+g(:)g(:)h(:)48 b Fb(9)150 4018 y Fe(revert-line)28 b(\(M-r\))13
 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(20)150
-3681 y Fe(rl_add_defun)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(21)150
+4106 y Fe(rl_add_defun)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(30)150 3768 y Fe(rl_add_funmap_entry)18
+g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(31)150 4194 y Fe(rl_add_funmap_entry)18
 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(34)150 3856
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(35)150 4282
 y Fe(rl_add_undo)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)48 b Fb(34)150 3943 y Fe(rl_alphabetic)16
+f(:)g(:)g(:)g(:)g(:)48 b Fb(35)150 4371 y Fe(rl_alphabetic)16
 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(38)150 4030 y Fe(rl_already_prompted)18 b Fa(:)g(:)13
+b Fb(39)150 4459 y Fe(rl_already_prompted)18 b Fa(:)g(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(26)150 4118 y Fe
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(27)150 4547 y Fe
 (rl_attempted_completion_funct)q(ion)25 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)45 b Fb(48)150 4205 y Fe(rl_attempted_completion_over)13
+(:)g(:)g(:)h(:)45 b Fb(49)150 4635 y Fe(rl_attempted_completion_over)13
 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(52)150 4292 y Fe(rl_basic_quote_characters)26 b
+b Fb(53)150 4723 y Fe(rl_basic_quote_characters)26 b
 Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)46 b Fb(50)150 4380 y Fe(rl_basic_word_break_character)q(s)7
+(:)g(:)46 b Fb(51)150 4811 y Fe(rl_basic_word_break_character)q(s)7
 b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
-b Fb(50)150 4467 y Fe(rl_begin_undo_group)18 b Fa(:)g(:)13
+b Fb(51)150 4899 y Fe(rl_begin_undo_group)18 b Fa(:)g(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(34)150 4554 y Fe(rl_bind_key)24
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(35)150 4987 y Fe(rl_bind_key)24
 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-48 b Fb(31)150 4641 y Fe(rl_bind_key_if_unbound)10 b
+48 b Fb(32)150 5076 y Fe(rl_bind_key_if_unbound)10 b
 Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(32)150 4729 y Fe
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(33)150 5164 y Fe
 (rl_bind_key_if_unbound_in_map)11 b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(32)150 4816 y Fe(rl_bind_key_in_map)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(33)150 5252 y Fe(rl_bind_key_in_map)
 25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(31)150
-4903 y Fe(rl_bind_keyseq)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(32)150
+5340 y Fe(rl_bind_keyseq)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)40 b Fb(32)150 4991 y Fe(rl_bind_keyseq_if_unbound)26
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)46 b Fb(32)150 5078 y Fe(rl_bind_keyseq_if_unbound_in_)q(map)25
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(32)150
-5165 y Fe(rl_bind_keyseq_in_map)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(32)150 5253 y Fe(rl_binding_keymap)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(28)150 5340 y Fe
-(rl_callback_handler_install)15 b Fa(:)k(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(40)2025 299 y
+(:)f(:)g(:)g(:)40 b Fb(33)2025 299 y Fe(rl_bind_keyseq_if_unbound)25
+b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)46 b Fb(33)2025 387 y Fe(rl_bind_keyseq_if_unbound_in_m)q(ap)25
+b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Fb(33)2025
+476 y Fe(rl_bind_keyseq_in_map)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(33)2025 564 y Fe(rl_binding_keymap)6 b Fa(:)17 b(:)c(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)33 b Fb(29)2025 653 y Fe
+(rl_callback_handler_install)15 b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(41)2025 741 y
 Fe(rl_callback_handler_remove)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(40)2025 387
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(41)2025 830
 y Fe(rl_callback_read_char)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(40)2025 476 y Fe(rl_catch_signals)9 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(44)2025 564 y Fe(rl_catch_sigwinch)6
-b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(44)2025
-653 y Fe(rl_change_environment)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(44)2025 741 y Fe(rl_char_is_quoted_p)18 b Fa(:)f(:)c(:)h(:)f(:)g
+b Fb(41)2025 918 y Fe(rl_callback_sigcleanup)10 b Fa(:)18
+b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)37 b Fb(41)2025 1006 y Fe(rl_catch_signals)9
+b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(45)2025 1095 y Fe(rl_catch_sigwinch)6 b Fa(:)17
+b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(45)2025
+1183 y Fe(rl_change_environment)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(46)2025 1272 y Fe(rl_char_is_quoted_p)18 b Fa(:)f(:)c(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)45 b Fb(48)2025 830 y Fe(rl_cleanup_after_signal)8
+g(:)g(:)45 b Fb(50)2025 1360 y Fe(rl_cleanup_after_signal)8
 b Fa(:)18 b(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)34 b Fb(45)2025 918 y Fe(rl_clear_history)9
+(:)g(:)g(:)g(:)g(:)h(:)34 b Fb(46)2025 1449 y Fe(rl_clear_history)9
 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(40)2025 1006 y Fe(rl_clear_message)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(41)2025 1537 y Fe(rl_clear_message)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(35)2025 1095 y Fe
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(36)2025 1625 y Fe
 (rl_clear_pending_input)10 b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
-b Fb(37)2025 1183 y Fe(rl_clear_signals)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(38)2025 1714 y Fe(rl_clear_signals)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(45)2025 1272 y Fe(rl_complete)11
-b Fa(:)k(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
-b Fb(46,)27 b(47)2025 1360 y Fe(rl_complete_internal)16
-b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(47)2025 1449 y Fe
-(rl_completer_quote_characters)10 b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(50)2025 1537 y Fe
-(rl_completer_word_break_charac)q(ters)15 b Fa(:)k(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(50)2025 1625 y Fe
-(rl_completion_append_character)8 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(51)2025 1714 y Fe
-(rl_completion_display_matches_)q(hook)15 b Fa(:)k(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(50)2025 1802 y Fe
-(rl_completion_entry_function)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)45 b Fb(46,)27 b(48)2025 1891 y Fe
-(rl_completion_found_quote)e Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(51)2025 1979
-y Fe(rl_completion_invoking_key)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(52)2025
-2068 y Fe(rl_completion_mark_symlink_dir)q(s)27 b Fa(:)14
-b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(51)2025
-2156 y Fe(rl_completion_matches)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(47)2025 2245 y Fe(rl_completion_mode)25 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(47)2025 2333 y
-Fe(rl_completion_query_items)25 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(51)2025
-2421 y Fe(rl_completion_quote_character)10 b Fa(:)19
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(47)2025 1802 y Fe(rl_complete)24
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+48 b Fb(48)2025 1891 y Fe(rl_complete_internal)16 b Fa(:)h(:)c(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)42 b Fb(48)2025 1979 y Fe(rl_completer_quote_characters)10
+b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
+b Fb(52)2025 2068 y Fe(rl_completer_word_break_charac)q(ters)15
+b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(51)2025
+2156 y Fe(rl_completion_append_character)8 b Fa(:)19
+b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
+b Fb(52)2025 2245 y Fe(rl_completion_display_matches_)q(hook)15
+b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(51)2025
+2333 y Fe(rl_completion_entry_function)25 b Fa(:)13 b(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)45 b Fb(48,)27 b(49)2025 2421
+y Fe(rl_completion_found_quote)e Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(52)2025
+2510 y Fe(rl_completion_invoking_key)17 b Fa(:)i(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44
+b Fb(54)2025 2598 y Fe(rl_completion_mark_symlink_dir)q(s)27
+b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
+b Fb(53)2025 2687 y Fe(rl_completion_matches)13 b Fa(:)18
+b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)40 b Fb(48)2025 2775 y Fe(rl_completion_mode)25
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(48)2025
+2864 y Fe(rl_completion_query_items)25 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(52)2025
+2952 y Fe(rl_completion_quote_character)10 b Fa(:)19
 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(51)2025 2510 y Fe(rl_completion_suppress_append)10
+b Fb(52)2025 3041 y Fe(rl_completion_suppress_append)10
 b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(51)2025 2598 y Fe(rl_completion_suppress_quote)13
+b Fb(52)2025 3129 y Fe(rl_completion_suppress_quote)13
 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(51)2025 2687 y Fe(rl_completion_type)25 b Fa(:)13
+b Fb(52)2025 3217 y Fe(rl_completion_type)25 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(52)2025 2775 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(53)2025 3306 y
 Fe(rl_completion_word_break_hook)10 b Fa(:)19 b(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b
-Fb(50)2025 2864 y Fe(rl_copy_keymap)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f
+Fb(51)2025 3394 y Fe(rl_copy_keymap)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(31)2025 2952 y Fe(rl_copy_text)21
+g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(32)2025 3483 y Fe(rl_copy_text)21
 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(36)2025 3041 y Fe(rl_crlf)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(37)2025 3571 y Fe(rl_crlf)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(35)2025 3129 y Fe(rl_delete_text)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
+b Fb(36)2025 3660 y Fe(rl_delete_text)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(36)2025 3217 y Fe
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(37)2025 3748 y Fe
 (rl_deprep_term_function)8 b Fa(:)18 b(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
-b Fb(28)2025 3306 y Fe(rl_deprep_terminal)25 b Fa(:)13
+b Fb(29)2025 3836 y Fe(rl_deprep_terminal)25 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(37)2025 3394 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(38)2025 3925 y
 Fe(rl_ding)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(38)2025 3483
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(39)2025 4013
 y Fe(rl_directory_completion_hook)13 b Fa(:)19 b(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(49)2025 3571 y Fe(rl_directory_rewrite_hook;)17
+b Fb(50)2025 4102 y Fe(rl_directory_rewrite_hook;)17
 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)44 b Fb(49)2025 3660 y Fe(rl_discard_keymap)6 b Fa(:)17
+(:)44 b Fb(50)2025 4190 y Fe(rl_discard_keymap)6 b Fa(:)17
 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(31)2025
-3748 y Fe(rl_dispatching)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(32)2025
+4279 y Fe(rl_dispatching)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)40 b Fb(25)2025 3836 y Fe(rl_display_match_list)13
+(:)g(:)h(:)f(:)40 b Fb(26)2025 4367 y Fe(rl_display_match_list)13
 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(38)2025 3925 y
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(39)2025 4456 y
 Fe(rl_display_prompt)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-33 b Fb(26)2025 4013 y Fe(rl_do_undo)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
+33 b Fb(27)2025 4544 y Fe(rl_do_undo)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b
-Fb(34)2025 4102 y Fe(rl_done)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
+Fb(35)2025 4632 y Fe(rl_done)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(25)2025 4190 y Fe(rl_echo_signal_char)18 b Fa(:)f(:)c(:)h(:)f(:)g
+b Fb(26)2025 4721 y Fe(rl_echo_signal_char)18 b Fa(:)f(:)c(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)45 b Fb(45)2025 4279 y Fe(rl_editing_mode)11
+g(:)g(:)45 b Fb(46)2025 4809 y Fe(rl_editing_mode)11
 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(30)2025 4367 y Fe(rl_end)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+b Fb(31)2025 4898 y Fe(rl_end)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(25)2025 4456 y Fe(rl_end_undo_group)6 b Fa(:)17
+b Fb(26)2025 4986 y Fe(rl_end_undo_group)6 b Fa(:)17
 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(34)2025
-4544 y Fe(rl_erase_empty_line)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(35)2025
+5075 y Fe(rl_erase_empty_line)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fb(25)2025 4632 y Fe(rl_event_hook)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(26)2025 5163 y Fe(rl_event_hook)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(27)2025 4721 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(28)2025 5252 y
 Fe(rl_execute_next)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)38 b Fb(37)2025 4809 y Fe(rl_executing_key)9
+g(:)g(:)38 b Fb(38)2025 5340 y Fe(rl_executing_key)9
 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(28)2025 4898 y Fe(rl_executing_keymap)18 b Fa(:)f(:)c(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)45 b Fb(28)2025 4986 y Fe(rl_executing_keyseq)18
-b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(28)2025 5075
-y Fe(rl_executing_macro)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47
-b Fb(28)2025 5163 y Fe(rl_expand_prompt)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(36)2025 5252 y Fe(rl_explicit_arg)11
-b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(30)2025 5340 y Fe(rl_extend_line_buffer)13 b Fa(:)18
-b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)40 b Fb(38)p eop end
-%%Page: 72 76
-TeXDict begin 72 75 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(72)150 299 y
-Fe(rl_filename_completion_desire)q(d)7 b Fa(:)19 b(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(52)150
-387 y Fe(rl_filename_completion_functi)q(on)28 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(47)150
-476 y Fe(rl_filename_dequoting_functio)q(n)7 b Fa(:)19
+b Fb(29)p eop end
+%%Page: 74 78
+TeXDict begin 74 77 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(74)150 299 y
+Fe(rl_executing_keymap)18 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Fb(29)150 387 y Fe(rl_executing_keyseq)18 b Fa(:)g(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(29)150 476 y Fe(rl_executing_macro)25
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(29)150
+564 y Fe(rl_expand_prompt)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)35 b Fb(37)150 653 y Fe(rl_explicit_arg)11 b
+Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
+b Fb(31)150 741 y Fe(rl_extend_line_buffer)13 b Fa(:)18
+b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)39 b Fb(39)150 830 y Fe
+(rl_filename_completion_desire)q(d)7 b Fa(:)19 b(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(53)150
+918 y Fe(rl_filename_completion_functi)q(on)28 b Fa(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(49)150
+1006 y Fe(rl_filename_dequoting_functio)q(n)7 b Fa(:)19
 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
-b Fb(48)150 564 y Fe(rl_filename_quote_characters)13
+b Fb(49)150 1095 y Fe(rl_filename_quote_characters)13
 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(50)150 653 y Fe(rl_filename_quoting_desired)15 b
-Fa(:)k(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(52)150 741 y Fe(rl_filename_quoting_function)13
+b Fb(52)150 1183 y Fe(rl_filename_quoting_desired)15
+b Fa(:)k(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+41 b Fb(53)150 1272 y Fe(rl_filename_quoting_function)13
 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(48)150 830 y Fe(rl_filename_rewrite_hook)28 b Fa(:)13
+b Fb(49)150 1360 y Fe(rl_filename_rewrite_hook)28 b Fa(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)49 b Fb(49)150 918 y Fe(rl_filename_stat_hook)13 b
-Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(49)150 1006 y Fe
-(rl_forced_update_display)28 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(35)150
-1095 y Fe(rl_free)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)49 b Fb(51)150 1449 y Fe(rl_filename_stat_hook)13
+b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(50)150 1537 y
+Fe(rl_forced_update_display)28 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(36)150
+1625 y Fe(rl_free)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(38)150
-1183 y Fe(rl_free_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(39)150
+1714 y Fe(rl_free_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)40 b Fb(31)150 1272 y Fe(rl_free_line_state)25
+(:)f(:)g(:)g(:)40 b Fb(32)150 1802 y Fe(rl_free_line_state)25
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(45)150
-1360 y Fe(rl_free_undo_list)6 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(46)150
+1891 y Fe(rl_free_undo_list)6 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)32 b Fb(34)150 1449 y Fe(rl_function_dumper)25
+g(:)h(:)32 b Fb(35)150 1979 y Fe(rl_function_dumper)25
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(33)150
-1537 y Fe(rl_function_of_keyseq)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(34)150
+2068 y Fe(rl_function_of_keyseq)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(33)150 1625 y Fe(rl_funmap_names)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
+b Fb(34)150 2156 y Fe(rl_funmap_names)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(33)150 1714 y Fe(rl_generic_bind)11
+(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(34)150 2245 y Fe(rl_generic_bind)11
 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(33)150 1802 y Fe(rl_get_keymap)16 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g
+b Fb(34)150 2333 y Fe(rl_get_keymap)16 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(31)150 1891 y Fe
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(32)150 2421 y Fe
 (rl_get_keymap_by_name)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(31)150 1979 y Fe(rl_get_keymap_name)25 b Fa(:)13
+b Fb(32)150 2510 y Fe(rl_get_keymap_name)25 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(31)150 2068 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(32)150 2598 y
 Fe(rl_get_screen_size)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(45)150 2156 y Fe(rl_get_termcap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(46)150 2687 y Fe(rl_get_termcap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(39)150 2245 y Fe(rl_getc)15
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(40)150 2775 y Fe(rl_getc)15
 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)41 b Fb(37)150 2333 y Fe(rl_getc_function)9
+(:)f(:)g(:)g(:)g(:)41 b Fb(38)150 2864 y Fe(rl_getc_function)9
 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(27)150 2421 y Fe(rl_gnu_readline_p)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
+b Fb(28)150 2952 y Fe(rl_gnu_readline_p)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(26)150 2510 y Fe
+g(:)g(:)g(:)g(:)h(:)32 b Fb(27)150 3041 y Fe
 (rl_ignore_completion_duplicat)q(es)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)48 b Fb(51)150 2598 y Fe(rl_ignore_some_completions_fu)q
+(:)g(:)g(:)g(:)48 b Fb(53)150 3129 y Fe(rl_ignore_some_completions_fu)q
 (ncti)q(on)12 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)38
-b Fb(49)150 2687 y Fe(rl_inhibit_completion)13 b Fa(:)18
+b Fb(50)150 3217 y Fe(rl_inhibit_completion)13 b Fa(:)18
 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)39 b Fb(52)150 2775 y Fe(rl_initialize)16
+g(:)g(:)g(:)h(:)f(:)39 b Fb(54)150 3306 y Fe(rl_initialize)16
 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(38)150 2864 y Fe(rl_input_available_hook)8 b Fa(:)18
+b Fb(39)150 3394 y Fe(rl_input_available_hook)8 b Fa(:)18
 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)34 b Fb(27)150 2952 y Fe(rl_insert_completions)13
+h(:)f(:)g(:)34 b Fb(28)150 3483 y Fe(rl_insert_completions)13
 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(47)150 3041 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(48)150 3571 y
 Fe(rl_insert_text)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)40 b Fb(36)150 3129 y Fe(rl_instream)24 b Fa(:)13
+g(:)g(:)40 b Fb(37)150 3660 y Fe(rl_instream)24 b Fa(:)13
 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fb(26)150 3217 y Fe(rl_invoking_keyseqs)18 b Fa(:)g(:)13
+b Fb(27)150 3748 y Fe(rl_invoking_keyseqs)18 b Fa(:)g(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(33)150 3306 y Fe
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(34)150 3836 y Fe
 (rl_invoking_keyseqs_in_map)18 b Fa(:)g(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(33)150 3394 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(34)150 3925 y
 Fe(rl_key_sequence_length)10 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fb(28)150 3483 y Fe(rl_kill_text)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fb(29)150 4013 y Fe(rl_kill_text)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(36)150 3571
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(37)150 4102
 y Fe(rl_last_func)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)45 b Fb(27)150 3660 y Fe(rl_library_version)25
+(:)g(:)h(:)f(:)g(:)45 b Fb(28)150 4190 y Fe(rl_library_version)25
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(26)150
-3748 y Fe(rl_line_buffer)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(27)150
+4279 y Fe(rl_line_buffer)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)40 b Fb(25)150 3836 y Fe(rl_list_funmap_names)16
+(:)f(:)g(:)g(:)40 b Fb(26)150 4367 y Fe(rl_list_funmap_names)16
 b Fa(:)h(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(33)150 3925 y Fe(rl_macro_bind)16
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(34)150 4456 y Fe(rl_macro_bind)16
 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(39)150 4013 y Fe(rl_macro_dumper)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
+b Fb(40)150 4544 y Fe(rl_macro_dumper)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(39)150 4102 y Fe
+(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(40)150 4632 y Fe
 (rl_make_bare_keymap)18 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fb(30)150 4190 y Fe(rl_make_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(31)150 4721 y Fe(rl_make_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(31)150 4279 y Fe(rl_mark)15
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(32)150 4809 y Fe(rl_mark)15
 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)41 b Fb(25)150 4367 y Fe(rl_message)7
+(:)f(:)g(:)g(:)g(:)41 b Fb(26)150 4898 y Fe(rl_message)7
 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)33 b Fb(35)150 4456 y Fe(rl_modifying)22 b Fa(:)13
+f(:)g(:)33 b Fb(36)150 4986 y Fe(rl_modifying)22 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fb(34)150 4544 y Fe(rl_named_function)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
+b Fb(35)150 5075 y Fe(rl_named_function)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(33)150 4632 y Fe(rl_num_chars_to_read)16
+g(:)g(:)g(:)g(:)h(:)32 b Fb(34)150 5163 y Fe(rl_num_chars_to_read)16
 b Fa(:)h(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(25)150 4721 y Fe(rl_numeric_arg)14
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(26)150 5252 y Fe(rl_numeric_arg)14
 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40
-b Fb(30)150 4809 y Fe(rl_on_new_line)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(31)150 5340 y Fe(rl_on_new_line)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(35)150 4898 y Fe
-(rl_on_new_line_with_prompt)18 b Fa(:)g(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(35)150 4986 y
-Fe(rl_outstream)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)45 b Fb(26)150 5075 y Fe(rl_parse_and_bind)6
-b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(33)150
-5163 y Fe(rl_pending_input)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)35 b Fb(25)150 5252 y Fe(rl_point)12 b Fa(:)j(:)e(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fb(25)150 5340 y Fe(rl_possible_completions)8 b Fa(:)18
-b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)34 b Fb(47)2025 299 y Fe(rl_pre_input_hook)6
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(36)2025 299 y Fe
+(rl_on_new_line_with_prompt)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(36)2025 387
+y Fe(rl_outstream)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)45 b Fb(27)2025 475 y Fe(rl_parse_and_bind)6
 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(27)2025
-387 y Fe(rl_prefer_env_winsize)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(34)2025
+564 y Fe(rl_pending_input)9 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)35 b Fb(26)2025 652 y Fe(rl_point)12 b Fa(:)j(:)e(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Fb(26)2025 740 y Fe(rl_possible_completions)8 b Fa(:)18
+b(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)34 b Fb(48)2025 828 y Fe(rl_pre_input_hook)6
+b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(28)2025
+916 y Fe(rl_prefer_env_winsize)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(26)2025 474 y Fe(rl_prep_term_function)13 b Fa(:)18
+b Fb(27)2025 1005 y Fe(rl_prep_term_function)13 b Fa(:)18
 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)40 b Fb(28)2025 562 y Fe(rl_prep_terminal)9
+g(:)g(:)g(:)g(:)g(:)40 b Fb(29)2025 1093 y Fe(rl_prep_terminal)9
 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(37)2025 650 y Fe(rl_prompt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+b Fb(38)2025 1181 y Fe(rl_prompt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
-Fb(26)2025 738 y Fe(rl_push_macro_input)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)45 b Fb(36)2025 826 y Fe(rl_read_init_file)6 b Fa(:)17
-b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(33)2025
-913 y Fe(rl_read_key)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(36)2025 1001 y Fe(rl_readline_name)9
+Fb(27)2025 1269 y Fe(rl_push_macro_input)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)45 b Fb(37)2025 1357 y Fe(rl_read_init_file)6
+b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(34)2025
+1446 y Fe(rl_read_key)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(37)2025 1534 y Fe(rl_readline_name)9
 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(26)2025 1089 y Fe(rl_readline_state)6 b Fa(:)17
+b Fb(27)2025 1622 y Fe(rl_readline_state)6 b Fa(:)17
 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(28)2025
-1177 y Fe(rl_readline_version)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(29)2025
+1710 y Fe(rl_readline_version)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fb(26)2025 1265 y Fe(rl_redisplay)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fb(27)2025 1799 y Fe(rl_redisplay)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(35)2025 1352
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(36)2025 1887
 y Fe(rl_redisplay_function)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(27)2025 1440 y Fe(rl_replace_line)11 b Fa(:)17 b(:)c(:)g(:)g(:)g
+b Fb(28)2025 1975 y Fe(rl_replace_line)11 b Fa(:)17 b(:)c(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(38)2025 1528 y Fe
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(39)2025 2063 y Fe
 (rl_reset_after_signal)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(45)2025 1616 y Fe(rl_reset_line_state)18 b Fa(:)f(:)c(:)h(:)f(:)g
+b Fb(46)2025 2151 y Fe(rl_reset_line_state)18 b Fa(:)f(:)c(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)45 b Fb(35)2025 1704 y Fe(rl_reset_screen_size)16
+g(:)g(:)45 b Fb(36)2025 2240 y Fe(rl_reset_screen_size)16
 b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(45)2025 1791 y Fe
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(47)2025 2328 y Fe
 (rl_reset_terminal)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33
-b Fb(37)2025 1879 y Fe(rl_resize_terminal)25 b Fa(:)13
+b Fb(38)2025 2416 y Fe(rl_resize_terminal)25 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(45)2025 1967 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(46)2025 2504 y
 Fe(rl_restore_prompt)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-33 b Fb(36)2025 2055 y Fe(rl_restore_state)9 b Fa(:)16
+33 b Fb(37)2025 2592 y Fe(rl_restore_state)9 b Fa(:)16
 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(38)2025
-2142 y Fe(rl_save_prompt)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(39)2025
+2681 y Fe(rl_save_prompt)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)40 b Fb(35)2025 2230 y Fe(rl_save_state)16
+(:)g(:)h(:)f(:)40 b Fb(36)2025 2769 y Fe(rl_save_state)16
 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fb(38)2025 2318 y Fe(rl_set_key)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
+b Fb(39)2025 2857 y Fe(rl_set_key)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(32)2025
-2406 y Fe(rl_set_keyboard_input_timeout)10 b Fa(:)19
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(33)2025
+2945 y Fe(rl_set_keyboard_input_timeout)10 b Fa(:)19
 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(37)2025 2494 y Fe(rl_set_keymap)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(38)2025 3034 y Fe(rl_set_keymap)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(31)2025 2581 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(32)2025 3122 y
 Fe(rl_set_paren_blink_timeout)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(39)2025 2669
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(40)2025 3210
 y Fe(rl_set_prompt)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)43 b Fb(36)2025 2757 y Fe(rl_set_screen_size)25
+g(:)g(:)g(:)43 b Fb(37)2025 3298 y Fe(rl_set_screen_size)25
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(45)2025
-2845 y Fe(rl_set_signals)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(46)2025
+3386 y Fe(rl_set_signals)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)40 b Fb(45)2025 2933 y Fe(rl_show_char)21
+(:)g(:)h(:)f(:)40 b Fb(47)2025 3475 y Fe(rl_show_char)21
 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(35)2025 3020 y Fe(rl_signal_event_hook)16 b Fa(:)h(:)c(:)g(:)g(:)h
+b Fb(36)2025 3563 y Fe(rl_signal_event_hook)16 b Fa(:)h(:)c(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)42 b Fb(27)2025 3108 y Fe(rl_sort_completion_matches)17
+g(:)42 b Fb(28)2025 3651 y Fe(rl_sort_completion_matches)17
 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)44 b Fb(52)2025 3196 y Fe(rl_special_prefixes)18 b
+(:)44 b Fb(53)2025 3739 y Fe(rl_special_prefixes)18 b
 Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(50)2025 3284 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(52)2025 3827 y
 Fe(rl_startup_hook)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)38 b Fb(27)2025 3372 y Fe(rl_stuff_char)16 b
+g(:)g(:)38 b Fb(28)2025 3916 y Fe(rl_stuff_char)16 b
 Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fb(37)2025 3459 y Fe(rl_terminal_name)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(38)2025 4004 y Fe(rl_terminal_name)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(26)2025 3547 y Fe
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(27)2025 4092 y Fe
 (rl_tty_set_default_bindings)15 b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(37)2025 3635 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(38)2025 4180 y
 Fe(rl_tty_unset_default_bindings)10 b Fa(:)19 b(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b
-Fb(37)2025 3723 y Fe(rl_unbind_command_in_map)28 b Fa(:)13
+Fb(38)2025 4269 y Fe(rl_unbind_command_in_map)28 b Fa(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)49 b Fb(32)2025 3810 y Fe(rl_unbind_function_in_map)25
+(:)49 b Fb(33)2025 4357 y Fe(rl_unbind_function_in_map)25
 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)46 b Fb(32)2025 3898 y Fe(rl_unbind_key)16 b Fa(:)g(:)d(:)g(:)h
+(:)h(:)46 b Fb(33)2025 4445 y Fe(rl_unbind_key)16 b Fa(:)g(:)d(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(32)2025
-3986 y Fe(rl_unbind_key_in_map)16 b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(33)2025
+4533 y Fe(rl_unbind_key_in_map)16 b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fb(32)2025 4074 y Fe(rl_username_completion_functio)q(n)27
+b Fb(33)2025 4621 y Fe(rl_username_completion_functio)q(n)27
 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fb(48)2025 4162 y Fe(rl_variable_bind)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(49)2025 4710 y Fe(rl_variable_bind)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(39)2025 4249 y Fe(rl_variable_dumper)25
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(40)2025 4798 y Fe(rl_variable_dumper)25
 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(39)2025
-4337 y Fe(rl_variable_value)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(40)2025
+4886 y Fe(rl_variable_value)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)33 b Fb(39)2025 4583 y Fq(S)2025 4700 y Fe(self-insert)28
+g(:)g(:)33 b Fb(40)2025 5134 y Fq(S)2025 5252 y Fe(self-insert)28
 b(\(a,)e(b,)g(A,)g(1,)g(!,)g(...)q(\))9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(16)2025 4788 y Fe(set-mark)27
+g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(17)2025 5340 y Fe(set-mark)27
 b(\(C-@\))22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)47 b Fb(20)2025 4875 y(sho)n(w-all-if-am)n(biguous)14
-b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(8)2025
-4963 y(sho)n(w-all-if-unmo)r(di\014ed)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)50 b Fb(8)2025 5051 y(sho)n(w-mo)r(de-in-prompt)9
-b Fa(:)j(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(8)2025
-5139 y(skip-completed-text)11 b Fa(:)h(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)38 b Fb(8)2025 5227 y Fe(skip-csi-sequence)29
-b(\(\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(20)2025
-5314 y Fe(start-kbd-macro)29 b(\(C-x)d(\(\))c Fa(:)13
-b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)48 b Fb(19)p eop end
-%%Page: 73 77
-TeXDict begin 73 76 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(73)150 299 y
-Fq(T)150 415 y Fe(tab-insert)28 b(\(M-TAB\))10 b Fa(:)15
-b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(16)150 502
-y Fe(tilde-expand)28 b(\(M-~\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)37 b Fb(20)150 590 y Fe(transpose-chars)29 b(\(C-t\))21
+(:)47 b Fb(21)p eop end
+%%Page: 75 79
+TeXDict begin 75 78 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(75)150 299 y
+Fb(sho)n(w-all-if-am)n(biguous)14 b Fa(:)h(:)e(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)41 b Fb(9)150 386 y(sho)n(w-all-if-unmo)r(di\014ed)23
+b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fb(9)150
+474 y(sho)n(w-mo)r(de-in-prompt)9 b Fa(:)j(:)h(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)36 b Fb(9)150 561 y(skip-completed-text)11 b Fa(:)h(:)h(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(9)150 648 y Fe(skip-csi-sequence)29
+b(\(\))23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(21)150
+736 y Fe(start-kbd-macro)29 b(\(C-x)e(\(\))22 b Fa(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)48 b Fb(20)150 978 y Fq(T)150 1094 y Fe(tab-insert)28
+b(\(M-TAB\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Fb(17)150 1181 y Fe(tilde-expand)28 b(\(M-~\))10 b
+Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(21)150
+1269 y Fe(transpose-chars)29 b(\(C-t\))21 b Fa(:)13 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+46 b Fb(18)150 1356 y Fe(transpose-words)29 b(\(M-t\))21
 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(16)150 677 y Fe(transpose-words)29
-b(\(M-t\))21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(17)150
-929 y Fq(U)150 1045 y Fe(undo)27 b(\(C-_)f(or)g(C-x)g(C-u\))6
-b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(20)150 1133
-y Fe(universal-argument)e(\(\))20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fb(18)150 1220 y Fe(unix-filename-rubout)30 b(\(\))15
-b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)41 b Fb(18)150 1307 y Fe(unix-line-discard)29
-b(\(C-u\))15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(17)150 1395 y
-Fe(unix-word-rubout)29 b(\(C-w\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(17)2025 299 y Fe(upcase-word)28 b(\(M-u\))13 b Fa(:)h(:)f(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(17)2025 559 y Fq(V)2025
-678 y Fe(vi-editing-mode)29 b(\(M-C-j\))15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(18)150 1608 y Fq(U)150
+1725 y Fe(undo)27 b(\(C-_)f(or)g(C-x)g(C-u\))6 b Fa(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(21)150 1812 y Fe(universal-argument)
+e(\(\))20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(19)2025
+299 y Fe(unix-filename-rubout)30 b(\(\))15 b Fa(:)e(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41
-b Fb(21)2025 767 y(visible-stats)7 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b
-Fb(9)2025 1009 y Fq(Y)2025 1128 y Fe(yank)26 b(\(C-y\))14
-b Fa(:)g(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)40 b Fb(18)2025 1217 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))
-c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)47 b Fb(16)2025 1306 y Fe(yank-nth-arg)28 b(\(M-C-y\))c
+b Fb(19)2025 387 y Fe(unix-line-discard)29 b(\(C-u\))15
+b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)41 b Fb(18)2025 474 y Fe(unix-word-rubout)29
+b(\(C-w\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fb(19)2025 562
+y Fe(upcase-word)28 b(\(M-u\))13 b Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)39 b Fb(18)2025 816 y Fq(V)2025 933 y Fb(vi-cmd-mo)r(de-string)
+15 b Fa(:)d(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42
+b Fb(9)2025 1021 y Fe(vi-editing-mode)29 b(\(M-C-j\))15
+b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)41 b Fb(22)2025 1109 y(vi-ins-mo)r(de-string)19
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
+b Fb(10)2025 1196 y(visible-stats)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(10)2025
+1432 y Fq(Y)2025 1549 y Fe(yank)26 b(\(C-y\))14 b Fa(:)g(:)f(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
+b Fb(19)2025 1637 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))c
+Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)47 b Fb(17)2025 1724 y Fe(yank-nth-arg)28 b(\(M-C-y\))c
 Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(15)2025 1395 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(16)2025 1812 y
 Fe(yank-pop)27 b(\(M-y\))22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)47 b Fb(18)p eop end
+g(:)h(:)f(:)g(:)47 b Fb(19)p eop end
 %%Trailer
 
 userdict /end-hook known{end-hook}if
index 306aa74d5bc4201518b65b90428c26435d222540..cb4f90782d2b8801147f45fc6795ab2232726103 100644 (file)
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
-%%Creator: groff version 1.19.2
-%%CreationDate: Tue Feb 11 16:57:26 2014
+%%Creator: groff version 1.22.3
+%%CreationDate: Wed Jul  1 10:32:47 2015
 %%DocumentNeededResources: font Times-Roman
 %%+ font Times-Bold
 %%+ font Times-Italic
 %%+ font Courier
-%%DocumentSuppliedResources: procset grops 1.19 2
+%%DocumentSuppliedResources: procset grops 1.22 3
 %%Pages: 16
 %%PageOrder: Ascend
 %%DocumentMedia: Default 612 792 0 () ()
@@ -15,7 +15,7 @@
 %%PageMedia: Default
 %%EndDefaults
 %%BeginProlog
-%%BeginResource: procset grops 1.19 2
+%%BeginResource: procset grops 1.22 3
 %!PS-Adobe-3.0 Resource-ProcSet
 /setpacking where{
 pop
@@ -73,6 +73,7 @@ exch pop add exch pop
 /level0 save def
 1 setlinecap
 1 setlinejoin
+DEFS/BPhook known{DEFS begin BPhook end}if
 72 RES div dup scale
 LS{
 90 rotate
@@ -138,7 +139,10 @@ pop
 findfont
 dup maxlength 1 index/FontName known not{1 add}if dict begin
 {
-1 index/FID ne{def}{pop pop}ifelse
+1 index/FID ne
+2 index/UniqueID ne
+and
+{def}{pop pop}ifelse
 }forall
 /Encoding exch def
 dup/FontName exch def
@@ -176,8 +180,10 @@ newpath
 userdict begin
 /showpage{}def
 /setpagedevice{}def
+mark
 }bind def
 /PEND{
+cleartomark
 countdictstack CNT sub{end}repeat
 level1 restore
 }bind def
@@ -231,8 +237,9 @@ def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1
-10.95/Times-Bold@0 SF -.219(NA)72 84 S(ME).219 E F0
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10.95/Times-Bold@0 SF
+-.219(NA)72 84 S(ME).219 E F0
 (readline \255 get a line from a user with editing)108 96 Q F1(SYNOPSIS)
 72 112.8 Q/F2 10/Times-Bold@0 SF(#include <stdio.h>)108 124.8 Q
 (#include <r)108 136.8 Q(eadline/r)-.18 E(eadline.h>)-.18 E(#include <r)
@@ -240,7 +247,7 @@ BP
 -.15(ch)108 165.6 S(ar *).15 E F2 -.18(re)108 177.6 S(adline).18 E F0
 (\()2.5 E F3(const c)A(har *pr)-.15 E(ompt)-.45 E F0(\);)A F1(COPYRIGHT)
 72 194.4 Q F0(Readline is Cop)108 206.4 Q
-(yright \251 1989\2552011 Free Softw)-.1 E(are F)-.1 E(oundation, Inc.)
+(yright \251 1989\2552014 Free Softw)-.1 E(are F)-.1 E(oundation, Inc.)
 -.15 E F1(DESCRIPTION)72 223.2 Q F2 -.18(re)108 235.2 S(adline).18 E F0
 .088(will read a line from the terminal and return it, using)2.588 F F2
 (pr)2.587 E(ompt)-.18 E F0 .087(as a prompt.)2.587 F(If)5.087 E F2(pr)
@@ -277,14 +284,14 @@ F(If)6.089 E F2(EOF)3.589 E F0 1.089(is encountered)3.589 F .283
 -.65 E F3(meta)2.962 E F0 -.1(ke)2.842 G .082(ys are denoted by M\255)
 -.05 F F3 -.1(ke)C(y)-.2 E F0 2.583(,s)C 2.583(oM)-2.583 G .083
 (\255x means Meta\255X.)-2.583 F .083(\(On k)5.083 F -.15(ey)-.1 G .083
-(boards without a).15 F F3(meta)108 422.4 Q F0 -.1(ke)3.491 G 2.031 -.65
-(y, M)-.05 H<ad>.65 E F3(x)A F0 .731(means ESC)3.231 F F3(x)3.231 E F0
-3.231(,i)C .731(.e., press the Escape k)-3.231 F 1.03 -.15(ey t)-.1 H
-.73(hen the).15 F F3(x)4 E F0 -.1(ke)3.76 G 4.53 -.65(y. T)-.05 H .73
-(his mak).65 F .73(es ESC the)-.1 F F3 .73(meta pr)3.23 F(e\214x)-.37 E
-F0(.)A .48(The combination M\255C\255)108 434.4 R F3(x)A F0 .48
-(means ESC\255Control\255)2.98 F F3(x)A F0 2.98(,o)C 2.98(rp)-2.98 G .48
-(ress the Escape k)-2.98 F .78 -.15(ey t)-.1 H .48
+(boards without a).15 F F3(meta)108.38 422.4 Q F0 -.1(ke)3.472 G 2.012
+-.65(y, M)-.05 H<ad>.65 E F3(x)A F0 .712(means ESC)3.212 F F3(x)3.212 E
+F0 3.212(,i)C .712(.e., press the Escape k)-3.212 F 1.011 -.15(ey t)-.1
+H .711(hen the).15 F F3(x)3.981 E F0 -.1(ke)3.741 G 4.511 -.65(y. T)-.05
+H .711(his mak).65 F .711(es ESC the)-.1 F F3 .711(meta pr)3.211 F
+(e\214x)-.37 E F0(.)A .48(The combination M\255C\255)108 434.4 R F3(x)A
+F0 .48(means ESC\255Control\255)2.98 F F3(x)A F0 2.98(,o)C 2.98(rp)-2.98
+G .48(ress the Escape k)-2.98 F .78 -.15(ey t)-.1 H .48
 (hen hold the Control k).15 F .78 -.15(ey w)-.1 H(hile).15 E
 (pressing the)108 446.4 Q F3(x)3.27 E F0 -.1(ke)3.03 G -.65(y.)-.05 G
 (\)).65 E .62(Readline commands may be gi)108 463.2 R -.15(ve)-.25 G
@@ -298,26 +305,27 @@ F0(.)A .48(The combination M\255C\255)108 434.4 R F3(x)A F0 .48
 (ard direction \(e.g.,)-.1 F F2(kill\255line)3.518 E F0 3.518(\)c)C
 1.018(auses that command to act in a backw)-3.518 F 1.018
 (ard direction.)-.1 F(Com-)6.018 E(mands whose beha)108 499.2 Q
-(vior with ar)-.2 E(guments de)-.18 E(viates from this are noted.)-.25 E
-.811(When a command is described as)108 516 R F3(killing)3.311 E F0(te)
-3.311 E .811(xt, the te)-.15 F .811(xt deleted is sa)-.15 F -.15(ve)-.2
-G 3.311(df).15 G .812(or possible future retrie)-3.311 F -.25(va)-.25 G
-3.312(l\().25 G F3(yank-)-3.312 E(ing)108 528 Q F0 2.529(\). The)B .029
-(killed te)2.529 F .029(xt is sa)-.15 F -.15(ve)-.2 G 2.529(di).15 G
-2.529(na)-2.529 G F3 .029(kill ring)B F0 5.029(.C)C(onsecuti)-5.029 E
-.329 -.15(ve k)-.25 H .029(ills cause the te).15 F .029
-(xt to be accumulated into one unit,)-.15 F .567(which can be yank)108
-540 R .567(ed all at once.)-.1 F .567(Commands which do not kill te)
-5.567 F .567(xt separate the chunks of te)-.15 F .567(xt on the kill)
--.15 F(ring.)108 552 Q F1(INITIALIZA)72 568.8 Q(TION FILE)-1.04 E F0
-.091(Readline is customized by putting commands in an initialization \
-\214le \(the)108 580.8 R F3(inputr)2.591 E(c)-.37 E F0 2.591
-(\214le\). The)2.591 F .091(name of this \214le)2.591 F 1.442(is tak)108
-592.8 R 1.443(en from the v)-.1 F 1.443(alue of the)-.25 F F2(INPUTRC)
-3.943 E F0(en)3.943 E 1.443(vironment v)-.4 F 3.943(ariable. If)-.25 F
-1.443(that v)3.943 F 1.443(ariable is unset, the def)-.25 F 1.443
-(ault is)-.1 F F3(~/.inputr)108 604.8 Q(c)-.37 E F0 5.058(.I).31 G 2.558
-(ft)-5.058 G .058(hat \214le)-2.558 F .058(does not e)5.058 F .058
+(vior with ar)-.2 E(guments de)-.18 E(viates from this are noted belo)
+-.25 E -.65(w.)-.25 G .811(When a command is described as)108 516 R F3
+(killing)3.311 E F0(te)3.311 E .811(xt, the te)-.15 F .811
+(xt deleted is sa)-.15 F -.15(ve)-.2 G 3.311(df).15 G .812
+(or possible future retrie)-3.311 F -.25(va)-.25 G 3.312(l\().25 G F3
+(yank-)-3.312 E(ing)108 528 Q F0 2.529(\). The)B .029(killed te)2.529 F
+.029(xt is sa)-.15 F -.15(ve)-.2 G 2.529(di).15 G 2.529(na)-2.529 G F3
+.029(kill ring)B F0 5.029(.C)C(onsecuti)-5.029 E .329 -.15(ve k)-.25 H
+.029(ills cause the te).15 F .029(xt to be accumulated into one unit,)
+-.15 F .567(which can be yank)108 540 R .567(ed all at once.)-.1 F .567
+(Commands which do not kill te)5.567 F .567
+(xt separate the chunks of te)-.15 F .567(xt on the kill)-.15 F(ring.)
+108 552 Q F1(INITIALIZA)72 568.8 Q(TION FILE)-1.04 E F0 .091(Readline i\
+s customized by putting commands in an initialization \214le \(the)108
+580.8 R F3(inputr)2.591 E(c)-.37 E F0 2.591(\214le\). The)2.591 F .091
+(name of this \214le)2.591 F 1.442(is tak)108 592.8 R 1.443
+(en from the v)-.1 F 1.443(alue of the)-.25 F F2(INPUTRC)3.943 E F0(en)
+3.943 E 1.443(vironment v)-.4 F 3.943(ariable. If)-.25 F 1.443(that v)
+3.943 F 1.443(ariable is unset, the def)-.25 F 1.443(ault is)-.1 F F3
+(~/.inputr)108 604.8 Q(c)-.37 E F0 5.058(.I).31 G 2.558(ft)-5.058 G .058
+(hat \214le)-2.558 F .058(does not e)5.058 F .058
 (xist or cannot be read, the ultimate def)-.15 F .058(ault is)-.1 F F3
 (/etc/inputr)2.557 E(c)-.37 E F0 5.057(.W).31 G .057(hen a program)
 -5.057 F 1.158(which uses the readline library starts up, the init \214\
@@ -336,15 +344,16 @@ le is read, and the k)108 616.8 R 1.459 -.15(ey b)-.1 H 1.159
 (re).15 G(xample, placing)-2.65 E(M\255Control\255u: uni)144 698.4 Q
 -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E(or)108 710.4 Q
 (C\255Meta\255u: uni)144 722.4 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)
--.18 E(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(1)198.45 E 0 Cg
-EP
+-.18 E(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G
+(mber 19).15 E(1)190.545 E 0 Cg EP
 %%Page: 2 2
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R
-(into the)108 84 Q/F1 10/Times-Italic@0 SF(inputr)2.51 E(c)-.37 E F0 -.1
-(wo)2.81 G(uld mak).1 E 2.5(eM)-.1 G(\255C\255u e)-2.5 E -.15(xe)-.15 G
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E(into the)108 84 Q/F1 10
+/Times-Italic@0 SF(inputr)2.51 E(c)-.37 E F0 -.1(wo)2.81 G(uld mak).1 E
+2.5(eM)-.1 G(\255C\255u e)-2.5 E -.15(xe)-.15 G
 (cute the readline command).15 E F1(univer)2.5 E(sal\255ar)-.1 E(gument)
 -.37 E F0(.).68 E 2.795(The follo)108 100.8 R 2.795
 (wing symbolic character names are recognized while processing k)-.25 F
@@ -358,86 +367,89 @@ E F0(,)1.1 E F1 -.4(RU)2.5 G(BOUT).4 E F0(,)1.27 E F1(SP)2.5 E -.3(AC)
 F -.15(ey)-.1 G 2.709(st).15 G 2.709(ob)-2.709 G 2.709(eb)-2.709 G .209
 (ound to a string that is inserted when the k)-2.709 F .509 -.15(ey i)
 -.1 H(s).15 E(pressed \(a)108 141.6 Q F1(macr)2.5 E(o)-.45 E F0(\).)A/F2
-10/Times-Bold@0 SF -.25(Ke)87 163.2 S 2.5(yB).25 G(indings)-2.5 E F0
-.366(The syntax for controlling k)108 175.2 R .666 -.15(ey b)-.1 H .366
+10/Times-Bold@0 SF -.25(Ke)87 158.4 S 2.5(yB).25 G(indings)-2.5 E F0
+.366(The syntax for controlling k)108 170.4 R .666 -.15(ey b)-.1 H .366
 (indings in the).15 F F1(inputr)2.876 E(c)-.37 E F0 .366
 (\214le is simple.)3.176 F .366(All that is required is the name of the)
-5.366 F .383(command or the te)108 187.2 R .383(xt of a macro and a k)
--.15 F .683 -.15(ey s)-.1 H .383
-(equence to which it should be bound. The name may be speci-).15 F .853
-(\214ed in one of tw)108 199.2 R 3.353(ow)-.1 G .853
-(ays: as a symbolic k)-3.453 F 1.153 -.15(ey n)-.1 H .853
-(ame, possibly with).15 F F1(Meta\255)3.353 E F0(or)3.353 E F1(Contr)
-3.353 E(ol\255)-.45 E F0(pre\214x)3.353 E .853(es, or as a k)-.15 F -.15
-(ey)-.1 G 2.919(sequence. The)108 211.2 R .419(name and k)2.919 F .719
--.15(ey s)-.1 H .419(equence are separated by a colon.).15 F .419
+5.366 F .264(command or the te)108 182.4 R .264(xt of a macro and a k)
+-.15 F .564 -.15(ey s)-.1 H .264(equence to which it should be bound.)
+.15 F .263(The name may be speci-)5.264 F .853(\214ed in one of tw)108
+194.4 R 3.353(ow)-.1 G .853(ays: as a symbolic k)-3.453 F 1.153 -.15
+(ey n)-.1 H .853(ame, possibly with).15 F F1(Meta\255)3.353 E F0(or)
+3.353 E F1(Contr)3.353 E(ol\255)-.45 E F0(pre\214x)3.353 E .853
+(es, or as a k)-.15 F -.15(ey)-.1 G 2.919(sequence. The)108 206.4 R .419
+(name and k)2.919 F .719 -.15(ey s)-.1 H .419
+(equence are separated by a colon.).15 F .419
 (There can be no whitespace between the)5.419 F(name and the colon.)108
-223.2 Q 1.755(When using the form)108 240 R F2 -.1(ke)4.255 G(yname).1 E
-F0(:)A F1(function-name).833 E F0(or)4.255 E F1(macr)4.255 E(o)-.45 E F0
-(,)A F1 -.1(ke)4.255 G(yname)-.2 E F0 1.756(is the name of a k)4.435 F
-2.056 -.15(ey s)-.1 H 1.756(pelled out in).15 F 2.5(English. F)108 252 R
-(or e)-.15 E(xample:)-.15 E(Control\255u: uni)144 276 Q -.15(ve)-.25 G
-(rsal\255ar).15 E(gument)-.18 E(Meta\255Rubout: backw)144 288 Q
-(ard\255kill\255w)-.1 E(ord)-.1 E(Control\255o: "> output")144 300 Q
-.148(In the abo)108 316.8 R .448 -.15(ve ex)-.15 H(ample,).15 E F1
-(C\255u)2.488 E F0 .148(is bound to the function)2.898 F F2(uni)2.647 E
--.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0(,)A F1(M-DEL)3.327 E F0
-.147(is bound to the function)3.177 F F2(backward\255kill\255w)108 328.8
-Q(ord)-.1 E F0 3.835(,a)C(nd)-3.835 E F1(C\255o)3.675 E F0 1.336
+218.4 Q .361(When using the form)108 235.2 R F2 -.1(ke)2.861 G(yname).1
+E F0(:)A F1(function-name).833 E F0(or)2.861 E F1(macr)2.861 E(o)-.45 E
+F0(,)A F1 -.1(ke)2.861 G(yname)-.2 E F0 .362(is the name of a k)3.042 F
+.662 -.15(ey s)-.1 H .362(pelled out in Eng-).15 F 2.5(lish. F)108 247.2
+R(or e)-.15 E(xample:)-.15 E(Control\255u: uni)144 271.2 Q -.15(ve)-.25
+G(rsal\255ar).15 E(gument)-.18 E(Meta\255Rubout: backw)144 283.2 Q
+(ard\255kill\255w)-.1 E(ord)-.1 E(Control\255o: "> output")144 295.2 Q
+.148(In the abo)108 312 R .448 -.15(ve ex)-.15 H(ample,).15 E F1(C\255u)
+2.488 E F0 .148(is bound to the function)2.898 F F2(uni)2.647 E -.1(ve)
+-.1 G(rsal\255ar).1 E(gument)-.1 E F0(,)A F1(M-DEL)3.327 E F0 .147
+(is bound to the function)3.177 F F2(backward\255kill\255w)108 324 Q
+(ord)-.1 E F0 3.835(,a)C(nd)-3.835 E F1(C\255o)3.675 E F0 1.336
 (is bound to run the macro e)4.016 F 1.336
 (xpressed on the right hand side \(that is, to)-.15 F(insert the te)108
-340.8 Q(xt)-.15 E/F3 10/Courier@0 SF 6(>o)2.5 G(utput)-6 E F0
-(into the line\).)2.5 E .056(In the second form,)108 357.6 R F2("k)2.556
+336 Q(xt)-.15 E/F3 10/Courier@0 SF 6(>o)2.5 G(utput)-6 E F0
+(into the line\).)2.5 E .056(In the second form,)108 352.8 R F2("k)2.556
 E(eyseq")-.1 E F0(:)A F1(function\255name).833 E F0(or)2.556 E F1(macr)
 2.556 E(o)-.45 E F0(,)A F2 -.1(ke)2.556 G(yseq).1 E F0(dif)2.555 E .055
 (fers from)-.25 F F2 -.1(ke)2.555 G(yname).1 E F0(abo)2.555 E .355 -.15
 (ve i)-.15 H 2.555(nt).15 G .055(hat strings)-2.555 F 1.284
-(denoting an entire k)108 369.6 R 1.584 -.15(ey s)-.1 H 1.284(equence m\
+(denoting an entire k)108 364.8 R 1.584 -.15(ey s)-.1 H 1.284(equence m\
 ay be speci\214ed by placing the sequence within double quotes.).15 F
-(Some)6.284 E .386(GNU Emacs style k)108 381.6 R .686 -.15(ey e)-.1 H
+(Some)6.284 E .386(GNU Emacs style k)108 376.8 R .686 -.15(ey e)-.1 H
 .385(scapes can be used, as in the follo).15 F .385(wing e)-.25 F .385
 (xample, b)-.15 F .385(ut the symbolic character names)-.2 F
-(are not recognized.)108 393.6 Q("\\C\255u": uni)144 417.6 Q -.15(ve)
+(are not recognized.)108 388.8 Q("\\C\255u": uni)144 412.8 Q -.15(ve)
 -.25 G(rsal\255ar).15 E(gument)-.18 E
-("\\C\255x\\C\255r": re\255read\255init\255\214le)144 429.6 Q
-("\\e[11~": "Function K)144 441.6 Q .3 -.15(ey 1)-.25 H(").15 E .198
-(In this e)108 458.4 R(xample,)-.15 E F1(C-u)2.538 E F0 .199(is ag)2.949
+("\\C\255x\\C\255r": re\255read\255init\255\214le)144 424.8 Q
+("\\e[11~": "Function K)144 436.8 Q .3 -.15(ey 1)-.25 H(").15 E .198
+(In this e)108 453.6 R(xample,)-.15 E F1(C-u)2.538 E F0 .199(is ag)2.949
 F .199(ain bound to the function)-.05 F F2(uni)2.699 E -.1(ve)-.1 G
 (rsal\255ar).1 E(gument)-.1 E F0(.)A F1 .199(C-x C-r)5.039 F F0 .199
-(is bound to the function)3.429 F F2 -.18(re)108 470.4 S<ad72>.18 E
+(is bound to the function)3.429 F F2 -.18(re)108 465.6 S<ad72>.18 E
 (ead\255init\255\214le)-.18 E F0 2.5(,a)C(nd)-2.5 E F1(ESC [ 1 1 ~)3.01
 E F0(is bound to insert the te)3.94 E(xt)-.15 E F3(Function Key 1)2.5 E
-F0(.)A(The full set of GNU Emacs style escape sequences a)108 487.2 Q
+F0(.)A(The full set of GNU Emacs style escape sequences a)108 482.4 Q
 -.25(va)-.2 G(ilable when specifying k).25 E .3 -.15(ey s)-.1 H
-(equences is).15 E F2<5c43ad>144 499.2 Q F0(control pre\214x)20.3 E F2
-<5c4dad>144 511.2 Q F0(meta pre\214x)18.08 E F2(\\e)144 523.2 Q F0
-(an escape character)28.78 E F2(\\\\)144 535.2 Q F0(backslash)30.44 E F2
-(\\")144 547.2 Q F0(literal ", a double quote)27.67 E F2(\\')144 559.2 Q
-F0(literal ', a single quote)29.89 E(In addition to the GNU Emacs style\
- escape sequences, a second set of backslash escapes is a)108 576 Q -.25
-(va)-.2 G(ilable:).25 E F2(\\a)144 588 Q F0(alert \(bell\))28.22 E F2
-(\\b)144 600 Q F0(backspace)27.66 E F2(\\d)144 612 Q F0(delete)27.66 E
-F2(\\f)144 624 Q F0(form feed)29.89 E F2(\\n)144 636 Q F0(ne)27.66 E
-(wline)-.25 E F2(\\r)144 648 Q F0(carriage return)28.78 E F2(\\t)144 660
-Q F0(horizontal tab)29.89 E F2(\\v)144 672 Q F0 -.15(ve)28.22 G
-(rtical tab).15 E F2(\\)144 684 Q F1(nnn)A F0
-(the eight-bit character whose v)18.22 E(alue is the octal v)-.25 E
+(equences is).15 E F2<5c43ad>144 494.4 Q F0(control pre\214x)180 494.4 Q
+F2<5c4dad>144 506.4 Q F0(meta pre\214x)180 506.4 Q F2(\\e)144 518.4 Q F0
+(an escape character)180 518.4 Q F2(\\\\)144 530.4 Q F0(backslash)180
+530.4 Q F2(\\")144 542.4 Q F0(literal ", a double quote)180 542.4 Q F2
+(\\')144 554.4 Q F0(literal ', a single quote)180 554.4 Q(In addition t\
+o the GNU Emacs style escape sequences, a second set of backslash escap\
+es is a)108 571.2 Q -.25(va)-.2 G(ilable:).25 E F2(\\a)144 583.2 Q F0
+(alert \(bell\))180 583.2 Q F2(\\b)144 595.2 Q F0(backspace)180 595.2 Q
+F2(\\d)144 607.2 Q F0(delete)180 607.2 Q F2(\\f)144 619.2 Q F0
+(form feed)180 619.2 Q F2(\\n)144 631.2 Q F0(ne)180 631.2 Q(wline)-.25 E
+F2(\\r)144 643.2 Q F0(carriage return)180 643.2 Q F2(\\t)144 655.2 Q F0
+(horizontal tab)180 655.2 Q F2(\\v)144 667.2 Q F0 -.15(ve)180 667.2 S
+(rtical tab).15 E F2(\\)144 679.2 Q F1(nnn)A F0
+(the eight-bit character whose v)180 679.2 Q(alue is the octal v)-.25 E
 (alue)-.25 E F1(nnn)2.5 E F0(\(one to three digits\))2.5 E F2(\\x)144
-696 Q F1(HH)A F0(the eight-bit character whose v)13.78 E(alue is the he)
--.25 E(xadecimal v)-.15 E(alue)-.25 E F1(HH)2.5 E F0(\(one or tw)2.5 E
-2.5(oh)-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E .74(When entering the te)
-108 712.8 R .74(xt of a macro, single or double quotes should be used t\
-o indicate a macro de\214nition.)-.15 F .089(Unquoted te)108 724.8 R
-.089(xt is assumed to be a function name.)-.15 F .09(In the macro body)
-5.089 F 2.59(,t)-.65 G .09(he backslash escapes described abo)-2.59 F
--.15(ve)-.15 G(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(2)
-198.45 E 0 Cg EP
+691.2 Q F1(HH)A F0(the eight-bit character whose v)180 691.2 Q
+(alue is the he)-.25 E(xadecimal v)-.15 E(alue)-.25 E F1(HH)2.5 E F0
+(\(one or tw)2.5 E 2.5(oh)-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E .74
+(When entering the te)108 708 R .74(xt of a macro, single or double quo\
+tes should be used to indicate a macro de\214nition.)-.15 F .089
+(Unquoted te)108 720 R .089(xt is assumed to be a function name.)-.15 F
+.09(In the macro body)5.089 F 2.59(,t)-.65 G .09
+(he backslash escapes described abo)-2.59 F -.15(ve)-.15 G
+(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15
+E(2)190.545 E 0 Cg EP
 %%Page: 3 3
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R(are e)
-108 84 Q 2.5(xpanded. Backslash)-.15 F(will quote an)2.5 E 2.5(yo)-.15 G
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E(are e)108 84 Q 2.5
+(xpanded. Backslash)-.15 F(will quote an)2.5 E 2.5(yo)-.15 G
 (ther character in the macro te)-2.5 E(xt, including " and '.)-.15 E/F1
 10/Times-Bold@0 SF(Bash)108 100.8 Q F0(allo)2.93 E .43
 (ws the current readline k)-.25 F .73 -.15(ey b)-.1 H .429
@@ -477,1051 +489,1119 @@ E 5.043(.A)-.55 G -.25(va)-2.5 G .043(riable may be set in the).25 F F2
 3.44(,r)C .94(eadline uses a visible bell if one is a)-3.44 F -.25(va)
 -.2 G 3.44(ilable. If).25 F .94(set to)3.44 F F1(audible)3.44 E F0(,)A
 (readline attempts to ring the terminal')144 300 Q 2.5(sb)-.55 G(ell.)
--2.5 E F1(bind\255tty\255special\255chars \(On\))108 312 Q F0 .055
-(If set to)144 324 R F1(On)2.555 E F0 2.555(,r)C .056(eadline attempts \
-to bind the control characters treated specially by the k)-2.555 F
-(ernel')-.1 E 2.556(st)-.55 G(ermi-)-2.556 E(nal dri)144 336 Q -.15(ve)
--.25 G 2.5(rt).15 G 2.5(ot)-2.5 G(heir readline equi)-2.5 E -.25(va)-.25
-G(lents.).25 E F1(color)108 348 Q(ed\255stats \(Off\))-.18 E F0 1.58
-(If set to)144 360 R F1(On)4.08 E F0 4.08(,r)C 1.579
-(eadline displays possible completions using dif)-4.08 F 1.579
-(ferent colors to indicate their \214le)-.25 F 2.5(type. The)144 372 R
-(color de\214nitions are tak)2.5 E(en from the v)-.1 E(alue of the)-.25
-E F1(LS_COLORS)2.5 E F0(en)2.5 E(vironment v)-.4 E(ariable.)-.25 E F1
-(comment\255begin \(`)108 384 Q(`#')-.63 E('\))-.63 E F0 .062
-(The string that is inserted in)144 396 R F1(vi)2.562 E F0 .062
+-2.5 E F1(bind\255tty\255special\255chars \(On\))108 312 Q F0 .333
+(If set to)144 324 R F1(On)2.833 E F0 .334(\(the def)2.833 F .334
+(ault\), readline attempts to bind the control characters)-.1 F .334
+(treated specially by the)7.834 F -.1(ke)144 336 S(rnel').1 E 2.5(st)
+-.55 G(erminal dri)-2.5 E -.15(ve)-.25 G 2.5(rt).15 G 2.5(ot)-2.5 G
+(heir readline equi)-2.5 E -.25(va)-.25 G(lents.).25 E F1
+(blink\255matching\255par)108 348 Q(en \(Off\))-.18 E F0 .21(If set to)
+144 360 R F1(On)2.71 E F0 2.71(,r)C .21
+(eadline attempts to brie\215y mo)-2.71 F .51 -.15(ve t)-.15 H .21
+(he cursor to an opening parenthesis when a closing).15 F
+(parenthesis is inserted.)144 372 Q F1(color)108 384 Q
+(ed\255completion\255pr)-.18 E(e\214x \(Off\))-.18 E F0 .515(If set to)
+144 396 R F1(On)3.015 E F0 3.015(,w)C .515(hen listing completions, rea\
+dline displays the common pre\214x of the set of possible)-3.015 F 2.936
+(completions using a dif)144 408 R 2.936(ferent color)-.25 F 7.936(.T)
+-.55 G 2.936(he color de\214nitions are tak)-7.936 F 2.935
+(en from the v)-.1 F 2.935(alue of the)-.25 F F1(LS_COLORS)144 420 Q F0
+(en)2.5 E(vironment v)-.4 E(ariable.)-.25 E F1(color)108 432 Q
+(ed\255stats \(Off\))-.18 E F0 1.579(If set to)144 444 R F1(On)4.079 E
+F0 4.079(,r)C 1.579(eadline displays possible completions using dif)
+-4.079 F 1.58(ferent colors to indicate their \214le)-.25 F 2.5
+(type. The)144 456 R(color de\214nitions are tak)2.5 E(en from the v)-.1
+E(alue of the)-.25 E F1(LS_COLORS)2.5 E F0(en)2.5 E(vironment v)-.4 E
+(ariable.)-.25 E F1(comment\255begin \(`)108 468 Q(`#')-.63 E('\))-.63 E
+F0 .062(The string that is inserted in)144 480 R F1(vi)2.562 E F0 .062
 (mode when the)2.562 F F1(insert\255comment)2.562 E F0 .062
 (command is e)2.562 F -.15(xe)-.15 G 2.562(cuted. This).15 F(com-)2.562
-E(mand is bound to)144 408 Q F1(M\255#)2.5 E F0(in emacs mode and to)2.5
+E(mand is bound to)144 492 Q F1(M\255#)2.5 E F0(in emacs mode and to)2.5
 E F1(#)2.5 E F0(in vi command mode.)2.5 E F1
-(completion\255display\255width \(-1\))108 420 Q F0 1.453(The number of\
+(completion\255display\255width \(-1\))108 504 Q F0 1.453(The number of\
  screen columns used to display possible matches when performing comple\
-tion.)144 432 R .193(The v)144 444 R .193(alue is ignored if it is less\
- than 0 or greater than the terminal screen width.)-.25 F 2.694(Av)5.194
-G .194(alue of 0 will)-2.944 F
-(cause matches to be displayed one per line.)144 456 Q(The def)5 E
-(ault v)-.1 E(alue is -1.)-.25 E F1(completion\255ignor)108 468 Q
-(e\255case \(Off\))-.18 E F0(If set to)144 480 Q F1(On)2.5 E F0 2.5(,r)C
+tion.)144 516 R .194(The v)144 528 R .193(alue is ignored if it is less\
+ than 0 or greater than the terminal screen width.)-.25 F 2.693(Av)5.193
+G .193(alue of 0 will)-2.943 F
+(cause matches to be displayed one per line.)144 540 Q(The def)5 E
+(ault v)-.1 E(alue is -1.)-.25 E F1(completion\255ignor)108 552 Q
+(e\255case \(Off\))-.18 E F0(If set to)144 564 Q F1(On)2.5 E F0 2.5(,r)C
 (eadline performs \214lename matching and completion in a case\255insen\
 siti)-2.5 E .3 -.15(ve f)-.25 H(ashion.).05 E F1
-(completion\255map\255case \(Off\))108 492 Q F0 .094(If set to)144 504 R
+(completion\255map\255case \(Off\))108 576 Q F0 .093(If set to)144 588 R
 F1(On)2.593 E F0 2.593(,a)C(nd)-2.593 E F1(completion\255ignor)2.593 E
 (e\255case)-.18 E F0 .093(is enabled, readline treats h)2.593 F .093
-(yphens \()-.05 F F2<ad>A F0 2.593(\)a)C .093(nd underscores)-2.593 F
-(\()144 516 Q F2(_)A F0 2.5(\)a)C 2.5(se)-2.5 G(qui)-2.5 E -.25(va)-.25
+(yphens \()-.05 F F2<ad>A F0 2.593(\)a)C .094(nd underscores)-2.593 F
+(\()144 600 Q F2(_)A F0 2.5(\)a)C 2.5(se)-2.5 G(qui)-2.5 E -.25(va)-.25
 G(lent when performing case\255insensiti).25 E .3 -.15(ve \214)-.25 H
-(lename matching and completion.).15 E F1(completion\255pr)108 528 Q
+(lename matching and completion.).15 E F1(completion\255pr)108 612 Q
 (e\214x\255display\255length \(0\))-.18 E F0 .829(The length in charact\
 ers of the common pre\214x of a list of possible completions that is di\
-splayed)144 540 R 1.275(without modi\214cation.)144 552 R 1.275
-(When set to a v)6.275 F 1.274(alue greater than zero, common pre\214x)
--.25 F 1.274(es longer than this)-.15 F -.25(va)144 564 S(lue are repla\
+splayed)144 624 R 1.274(without modi\214cation.)144 636 R 1.274
+(When set to a v)6.274 F 1.274(alue greater than zero, common pre\214x)
+-.25 F 1.275(es longer than this)-.15 F -.25(va)144 648 S(lue are repla\
 ced with an ellipsis when displaying possible completions.).25 E F1
-(completion\255query\255items \(100\))108 576 Q F0 .529
-(This determines when the user is queried about vie)144 588 R .53
-(wing the number of possible completions gen-)-.25 F .561(erated by the)
-144 600 R F1(possible\255completions)3.061 E F0 3.061(command. It)3.061
-F .561(may be set to an)3.061 F 3.06(yi)-.15 G(nte)-3.06 E .56(ger v)
--.15 F .56(alue greater than or)-.25 F .782(equal to zero.)144 612 R
+(completion\255query\255items \(100\))108 660 Q F0 .53
+(This determines when the user is queried about vie)144 672 R .529
+(wing the number of possible completions gen-)-.25 F .56(erated by the)
+144 684 R F1(possible\255completions)3.06 E F0 3.06(command. It)3.06 F
+.561(may be set to an)3.061 F 3.061(yi)-.15 G(nte)-3.061 E .561(ger v)
+-.15 F .561(alue greater than or)-.25 F .783(equal to zero.)144 696 R
 .783(If the number of possible completions is greater than or equal to \
-the v)5.782 F .783(alue of this)-.25 F -.25(va)144 624 S .237
+the v)5.783 F .782(alue of this)-.25 F -.25(va)144 708 S .237
 (riable, the user is ask).25 F .237(ed whether or not he wishes to vie)
 -.1 F 2.737(wt)-.25 G .237(hem; otherwise the)-2.737 F 2.737(ya)-.15 G
-.237(re simply listed)-2.737 F(on the terminal.)144 636 Q 2.5(An)5 G
+.237(re simply listed)-2.737 F(on the terminal.)144 720 Q 2.5(An)5 G
 -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve v)-.25 H
 (alue causes readline to ne)-.1 E -.15(ve)-.25 G 2.5(ra).15 G(sk.)-2.5 E
-F1(con)108 648 Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .612(If set to)
-144 660 R F1(On)3.112 E F0 3.112(,r)C .613(eadline will con)-3.112 F
--.15(ve)-.4 G .613(rt characters with the eighth bit set to an ASCII k)
-.15 F .913 -.15(ey s)-.1 H .613(equence by).15 F 1.316(stripping the ei\
-ghth bit and pre\214xing it with an escape character \(in ef)144 672 R
-1.315(fect, using escape as the)-.25 F F2(meta pr)144 684 Q(e\214x)-.37
-E F0(\).)A F1(disable\255completion \(Off\))108 696 Q F0 .038(If set to)
-144 708 R F1(On)2.538 E F0 2.538(,r)C .038(eadline will inhibit w)-2.538
-F .038(ord completion.)-.1 F .038
-(Completion characters will be inserted into the)5.038 F(line as if the)
-144 720 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
-(.)A(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(3)198.45 E 0 Cg
-EP
+(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15
+E(3)190.545 E 0 Cg EP
 %%Page: 4 4
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(editing\255mode \(emacs\))108 84 Q F0 .142
-(Controls whether readline be)144 96 R .141(gins with a set of k)-.15 F
-.441 -.15(ey b)-.1 H .141(indings similar to).15 F/F2 10/Times-Italic@0
-SF(Emacs)2.641 E F0(or)2.641 E F2(vi)2.641 E F0(.)A F1(editing\255mode)
-5.141 E F0(can be set to either)144 108 Q F1(emacs)2.5 E F0(or)2.5 E F1
-(vi)2.5 E F0(.)A F1(echo\255contr)108 120 Q(ol\255characters \(On\))-.18
-E F0 1.21(When set to)144 132 R F1(On)3.71 E F0 3.71(,o)C 3.71(no)-3.71
-G 1.211(perating systems that indicate the)-3.71 F 3.711(ys)-.15 G 1.211
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10/Times-Bold@0 SF
+(con)108 84 Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .613(If set to)144
+96 R F1(On)3.113 E F0 3.113(,r)C .613(eadline will con)-3.113 F -.15(ve)
+-.4 G .613(rt characters with the eighth bit set to an ASCII k).15 F
+.912 -.15(ey s)-.1 H .612(equence by).15 F 1.315(stripping the eighth b\
+it and pre\214xing it with an escape character \(in ef)144 108 R 1.316
+(fect, using escape as the)-.25 F/F2 10/Times-Italic@0 SF(meta pr)144
+120 Q(e\214x)-.37 E F0(\).)A F1(disable\255completion \(Off\))108 132 Q
+F0 .038(If set to)144 144 R F1(On)2.538 E F0 2.538(,r)C .038
+(eadline will inhibit w)-2.538 F .038(ord completion.)-.1 F .038
+(Completion characters will be inserted into the)5.038 F(line as if the)
+144 156 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
+(.)A F1(editing\255mode \(emacs\))108 168 Q F0 .141
+(Controls whether readline be)144 180 R .141(gins with a set of k)-.15 F
+.441 -.15(ey b)-.1 H .141(indings similar to).15 F F2(Emacs)2.642 E F0
+(or)2.642 E F2(vi)2.642 E F0(.)A F1(editing\255mode)5.142 E F0
+(can be set to either)144 192 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E
+F0(.)A F1(echo\255contr)108 204 Q(ol\255characters \(On\))-.18 E F0
+1.211(When set to)144 216 R F1(On)3.711 E F0 3.711(,o)C 3.711(no)-3.711
+G 1.211(perating systems that indicate the)-3.711 F 3.711(ys)-.15 G 1.21
 (upport it, readline echoes a character)-3.711 F
-(corresponding to a signal generated from the k)144 144 Q -.15(ey)-.1 G
-(board.).15 E F1(enable\255k)108 156 Q(eypad \(Off\))-.1 E F0 .893
-(When set to)144 168 R F1(On)3.393 E F0 3.393(,r)C .893
+(corresponding to a signal generated from the k)144 228 Q -.15(ey)-.1 G
+(board.).15 E F1(enable\255brack)108 240 Q(eted\255paste \(Off\))-.1 E
+F0 1.221(When set to)144 252 R F1(On)3.721 E F0 3.721(,r)C 1.221
+(eadline will con\214gure the terminal in a w)-3.721 F 1.221
+(ay that will enable it to insert each)-.1 F .353
+(paste into the editing b)144 264 R(uf)-.2 E .353(fer as a single strin\
+g of characters, instead of treating each character as if)-.25 F .543
+(it had been read from the k)144 276 R -.15(ey)-.1 G 3.043(board. This)
+.15 F .543(can pre)3.043 F -.15(ve)-.25 G .544
+(nt pasted characters from being interpreted as).15 F(editing commands.)
+144 288 Q F1(enable\255k)108 300 Q(eypad \(Off\))-.1 E F0 .893
+(When set to)144 312 R F1(On)3.393 E F0 3.393(,r)C .893
 (eadline will try to enable the application k)-3.393 F -.15(ey)-.1 G
 .893(pad when it is called.).15 F .892(Some sys-)5.893 F
-(tems need this to enable the arro)144 180 Q 2.5(wk)-.25 G -.15(ey)-2.6
-G(s.).15 E F1(enable\255meta\255k)108 192 Q(ey \(On\))-.1 E F0 .64
-(When set to)144 204 R F1(On)3.14 E F0 3.14(,r)C .64
+(tems need this to enable the arro)144 324 Q 2.5(wk)-.25 G -.15(ey)-2.6
+G(s.).15 E F1(enable\255meta\255k)108 336 Q(ey \(On\))-.1 E F0 .64
+(When set to)144 348 R F1(On)3.14 E F0 3.14(,r)C .64
 (eadline will try to enable an)-3.14 F 3.14(ym)-.15 G .64
 (eta modi\214er k)-3.14 F .94 -.15(ey t)-.1 H .64
-(he terminal claims to support).15 F(when it is called.)144 216 Q
+(he terminal claims to support).15 F(when it is called.)144 360 Q
 (On man)5 E 2.5(yt)-.15 G(erminals, the meta k)-2.5 E .3 -.15(ey i)-.1 H
 2.5(su).15 G(sed to send eight-bit characters.)-2.5 E F1
-(expand\255tilde \(Off\))108 228 Q F0(If set to)144 240 Q F1(On)2.5 E F0
+(expand\255tilde \(Off\))108 372 Q F0(If set to)144 384 Q F1(On)2.5 E F0
 2.5(,t)C(ilde e)-2.5 E(xpansion is performed when readline attempts w)
--.15 E(ord completion.)-.1 E F1(history\255pr)108 252 Q(eser)-.18 E -.1
-(ve)-.1 G(\255point \(Off\)).1 E F0 1.339(If set to)144 264 R F1(On)
+-.15 E(ord completion.)-.1 E F1(history\255pr)108 396 Q(eser)-.18 E -.1
+(ve)-.1 G(\255point \(Off\)).1 E F0 1.339(If set to)144 408 R F1(On)
 3.839 E F0 3.839(,t)C 1.338(he history code attempts to place point at \
-the same location on each history line)-3.839 F(retrie)144 276 Q -.15
+the same location on each history line)-3.839 F(retrie)144 420 Q -.15
 (ve)-.25 G 2.5(dw).15 G(ith)-2.5 E F1(pr)2.5 E -.15(ev)-.18 G
 (ious-history).15 E F0(or)2.5 E F1(next-history)2.5 E F0(.)A F1
-(history\255size \(0\))108 288 Q F0 .948
-(Set the maximum number of history entries sa)144 300 R -.15(ve)-.2 G
+(history\255size \(unset\))108 432 Q F0 .948
+(Set the maximum number of history entries sa)144 444 R -.15(ve)-.2 G
 3.448(di).15 G 3.448(nt)-3.448 G .948(he history list.)-3.448 F .949
 (If set to zero, an)5.948 F 3.449(ye)-.15 G(xisting)-3.599 E .483
-(history entries are deleted and no ne)144 312 R 2.983(we)-.25 G .483
+(history entries are deleted and no ne)144 456 R 2.983(we)-.25 G .483
 (ntries are sa)-2.983 F -.15(ve)-.2 G 2.983(d. If).15 F .482(set to a v)
 2.983 F .482(alue less than zero, the num-)-.25 F
-(ber of history entries is not limited.)144 324 Q(By def)5 E
+(ber of history entries is not limited.)144 468 Q(By def)5 E
 (ault, the number of history entries is not limited.)-.1 E F1
-(horizontal\255scr)108 336 Q(oll\255mode \(Off\))-.18 E F0 .448
-(When set to)144 348 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E .448
+(horizontal\255scr)108 480 Q(oll\255mode \(Off\))-.18 E F0 .448
+(When set to)144 492 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E .448
 (es readline use a single line for display)-.1 F 2.948(,s)-.65 G .449
 (crolling the input horizontally on a)-2.948 F 1.194(single screen line\
  when it becomes longer than the screen width rather than wrapping to a\
- ne)144 360 R(w)-.25 E(line.)144 372 Q F1(input\255meta \(Off\))108 384
-Q F0 .367(If set to)144 396 R F1(On)2.867 E F0 2.867(,r)C .367(eadline \
+ ne)144 504 R(w)-.25 E(line.)144 516 Q F1(input\255meta \(Off\))108 528
+Q F0 .367(If set to)144 540 R F1(On)2.867 E F0 2.867(,r)C .367(eadline \
 will enable eight-bit input \(that is, it will not clear the eighth bit\
- in the char)-2.867 F(-)-.2 E .957(acters it reads\), re)144 408 R -.05
+ in the char)-2.867 F(-)-.2 E .957(acters it reads\), re)144 552 R -.05
 (ga)-.15 G .956(rdless of what the terminal claims it can support.).05 F
 .956(The name)5.956 F F1(meta\255\215ag)3.456 E F0 .956(is a)3.456 F
-(synon)144 420 Q(ym for this v)-.15 E(ariable.)-.25 E F1(isear)108 432 Q
+(synon)144 564 Q(ym for this v)-.15 E(ariable.)-.25 E F1(isear)108 576 Q
 (ch\255terminators \(`)-.18 E(`C\255[ C\255J')-.63 E('\))-.63 E F0 .439
 (The string of characters that should terminate an incremental search w\
-ithout subsequently e)144 444 R -.15(xe)-.15 G(cut-).15 E .935
-(ing the character as a command.)144 456 R .935(If this v)5.935 F .935
+ithout subsequently e)144 588 R -.15(xe)-.15 G(cut-).15 E .935
+(ing the character as a command.)144 600 R .935(If this v)5.935 F .935
 (ariable has not been gi)-.25 F -.15(ve)-.25 G 3.434(nav).15 G .934
-(alue, the characters)-3.684 F F2(ESC)3.434 E F0(and)144 468 Q F2
+(alue, the characters)-3.684 F F2(ESC)3.434 E F0(and)144 612 Q F2
 (C\255J)2.5 E F0(will terminate an incremental search.)2.5 E F1 -.1(ke)
-108 480 S(ymap \(emacs\)).1 E F0 2.323(Set the current readline k)144
-492 R -.15(ey)-.1 G 4.823(map. The).15 F 2.323(set of le)4.823 F -.05
+108 624 S(ymap \(emacs\)).1 E F0 2.323(Set the current readline k)144
+636 R -.15(ey)-.1 G 4.823(map. The).15 F 2.323(set of le)4.823 F -.05
 (ga)-.15 G 4.823(lk).05 G -.15(ey)-4.923 G 2.323(map names is).15 F F2
 2.324(emacs, emacs-standar)4.823 F(d,)-.37 E .809
-(emacs-meta, emacs-ctlx, vi, vi-mo)144 504 R(ve)-.1 E 3.308(,v)-.1 G
+(emacs-meta, emacs-ctlx, vi, vi-mo)144 648 R(ve)-.1 E 3.308(,v)-.1 G
 (i-command)-3.308 E F0 3.308(,a)C(nd)-3.308 E F2(vi-insert)3.308 E F0(.)
 .68 E F2(vi)5.808 E F0 .808(is equi)3.308 F -.25(va)-.25 G .808(lent to)
-.25 F F2(vi-command)3.308 E F0(;)A F2(emacs)144 516 Q F0 .697(is equi)
+.25 F F2(vi-command)3.308 E F0(;)A F2(emacs)144 660 Q F0 .697(is equi)
 3.196 F -.25(va)-.25 G .697(lent to).25 F F2(emacs-standar)3.197 E(d)
 -.37 E F0 5.697(.T)C .697(he def)-5.697 F .697(ault v)-.1 F .697
 (alue is)-.25 F F2(emacs)3.197 E F0 5.697(.T).27 G .697(he v)-5.697 F
-.697(alue of)-.25 F F1(editing\255mode)3.197 E F0(also af)144 528 Q
-(fects the def)-.25 E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1 -.1(ke)
-108 540 S(yseq\255timeout \(500\)).1 E F0 .368(Speci\214es the duration)
-144 552 R F2 -.37(re)2.867 G(adline).37 E F0 .367(will w)2.867 F .367
+.697(alue of)-.25 F F1(editing\255mode)3.197 E F0(also af)144 672 Q
+(fects the def)-.25 E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1
+(emacs\255mode\255string \(@\))108 684 Q F0 .051(This string is display\
+ed immediately before the last line of the primary prompt when emacs ed\
+iting)144 696 R .292(mode is acti)144 708 R -.15(ve)-.25 G 5.292(.T).15
+G .292(he v)-5.292 F .293(alue is e)-.25 F .293(xpanded lik)-.15 F 2.793
+(eak)-.1 G .593 -.15(ey b)-2.893 H .293
+(inding, so the standard set of meta- and control).15 F(pre\214x)144 720
+Q .602(es and backslash escape sequences is a)-.15 F -.25(va)-.2 G 3.101
+(ilable. Use).25 F .601(the \\1 and \\2 escapes to be)3.101 F .601
+(gin and end)-.15 F(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)
+-.15 G(mber 19).15 E(4)190.545 E 0 Cg EP
+%%Page: 5 5
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E .019(sequences of non-p\
+rinting characters, which can be used to embed a terminal control seque\
+nce into)144 84 R(the mode string.)144 96 Q/F1 10/Times-Bold@0 SF -.1
+(ke)108 108 S(yseq\255timeout \(500\)).1 E F0 .368
+(Speci\214es the duration)144 120 R/F2 10/Times-Italic@0 SF -.37(re)
+2.867 G(adline).37 E F0 .367(will w)2.867 F .367
 (ait for a character when reading an ambiguous k)-.1 F .667 -.15(ey s)
--.1 H(equence).15 E 1.356(\(one that can form a complete k)144 564 R
+-.1 H(equence).15 E 1.356(\(one that can form a complete k)144 132 R
 1.656 -.15(ey s)-.1 H 1.356(equence using the input read so f).15 F(ar)
 -.1 E 3.856(,o)-.4 G 3.856(rc)-3.856 G 1.356(an tak)-3.856 F 3.856(ea)
--.1 G(dditional)-3.856 E .32(input to complete a longer k)144 576 R .62
+-.1 G(dditional)-3.856 E .32(input to complete a longer k)144 144 R .62
 -.15(ey s)-.1 H 2.82(equence\). If).15 F .32(no input is recei)2.82 F
 -.15(ve)-.25 G 2.82(dw).15 G .32(ithin the timeout,)-2.82 F F2 -.37(re)
-2.82 G(adline).37 E F0(will)2.82 E .906(use the shorter b)144 588 R .907
+2.82 G(adline).37 E F0(will)2.82 E .906(use the shorter b)144 156 R .907
 (ut complete k)-.2 F 1.207 -.15(ey s)-.1 H 3.407(equence. The).15 F -.25
 (va)3.407 G .907(lue is speci\214ed in milliseconds, so a v).25 F .907
-(alue of)-.25 F .05(1000 means that)144 600 R F2 -.37(re)2.55 G(adline)
+(alue of)-.25 F .05(1000 means that)144 168 R F2 -.37(re)2.55 G(adline)
 .37 E F0 .05(will w)2.55 F .05(ait one second for additional input.)-.1
 F .05(If this v)5.05 F .05(ariable is set to a v)-.25 F(alue)-.25 E .051
-(less than or equal to zero, or to a non-numeric v)144 612 R(alue,)-.25
+(less than or equal to zero, or to a non-numeric v)144 180 R(alue,)-.25
 E F2 -.37(re)2.551 G(adline).37 E F0 .051(will w)2.551 F .051
 (ait until another k)-.1 F .352 -.15(ey i)-.1 H 2.552(sp).15 G(ressed)
--2.552 E(to decide which k)144 624 Q .3 -.15(ey s)-.1 H
-(equence to complete.).15 E F1(mark\255dir)108 636 Q(ectories \(On\))
--.18 E F0(If set to)144 648 Q F1(On)2.5 E F0 2.5(,c)C
+-2.552 E(to decide which k)144 192 Q .3 -.15(ey s)-.1 H
+(equence to complete.).15 E F1(mark\255dir)108 204 Q(ectories \(On\))
+-.18 E F0(If set to)144 216 Q F1(On)2.5 E F0 2.5(,c)C
 (ompleted directory names ha)-2.5 E .3 -.15(ve a s)-.2 H(lash appended.)
-.15 E F1(mark\255modi\214ed\255lines \(Off\))108 660 Q F0(If set to)144
-672 Q F1(On)2.5 E F0 2.5(,h)C(istory lines that ha)-2.5 E .3 -.15(ve b)
+.15 E F1(mark\255modi\214ed\255lines \(Off\))108 228 Q F0(If set to)144
+240 Q F1(On)2.5 E F0 2.5(,h)C(istory lines that ha)-2.5 E .3 -.15(ve b)
 -.2 H(een modi\214ed are displayed with a preceding asterisk \().15 E F1
-(*)A F0(\).)A F1(mark\255symlink)108 684 Q(ed\255dir)-.1 E
-(ectories \(Off\))-.18 E F0 .175(If set to)144 696 R F1(On)2.675 E F0
+(*)A F0(\).)A F1(mark\255symlink)108 252 Q(ed\255dir)-.1 E
+(ectories \(Off\))-.18 E F0 .175(If set to)144 264 R F1(On)2.675 E F0
 2.675(,c)C .175
 (ompleted names which are symbolic links to directories ha)-2.675 F .475
--.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 708
-Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A
-(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(4)198.45 E 0 Cg EP
-%%Page: 5 5
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(match\255hidden\255\214les \(On\))108 84 Q F0 .192
-(This v)144 96 R .192(ariable, when set to)-.25 F F1(On)2.692 E F0 2.692
-(,c)C .192(auses readline to match \214les whose names be)-2.692 F .193
+-.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 276
+Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A F1
+(match\255hidden\255\214les \(On\))108 288 Q F0 .192(This v)144 300 R
+.192(ariable, when set to)-.25 F F1(On)2.692 E F0 2.692(,c)C .192
+(auses readline to match \214les whose names be)-2.692 F .193
 (gin with a `.)-.15 F 2.693('\()-.7 G(hidden)-2.693 E .457
-(\214les\) when performing \214lename completion.)144 108 R .456
+(\214les\) when performing \214lename completion.)144 312 R .456
 (If set to)5.456 F F1(Off)2.956 E F0 2.956(,t)C .456(he leading `.)
 -2.956 F 2.956('m)-.7 G .456(ust be supplied by the)-2.956 F
-(user in the \214lename to be completed.)144 120 Q F1
-(menu\255complete\255display\255pr)108 132 Q(e\214x \(Off\))-.18 E F0
-1.585(If set to)144 144 R F1(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
+(user in the \214lename to be completed.)144 324 Q F1
+(menu\255complete\255display\255pr)108 336 Q(e\214x \(Off\))-.18 E F0
+1.585(If set to)144 348 R F1(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
 ion displays the common pre\214x of the list of possible completions)
--4.085 F(\(which may be empty\) before c)144 156 Q
-(ycling through the list.)-.15 E F1(output\255meta \(Off\))108 168 Q F0
-.507(If set to)144 180 R F1(On)3.007 E F0 3.007(,r)C .507(eadline will \
+-4.085 F(\(which may be empty\) before c)144 360 Q
+(ycling through the list.)-.15 E F1(output\255meta \(Off\))108 372 Q F0
+.507(If set to)144 384 R F1(On)3.007 E F0 3.007(,r)C .507(eadline will \
 display characters with the eighth bit set directly rather than as a me\
-ta-)-3.007 F(pre\214x)144 192 Q(ed escape sequence.)-.15 E F1
-(page\255completions \(On\))108 204 Q F0 .808(If set to)144 216 R F1(On)
-3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F/F2 10
-/Times-Italic@0 SF(mor)3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808
+ta-)-3.007 F(pre\214x)144 396 Q(ed escape sequence.)-.15 E F1
+(page\255completions \(On\))108 408 Q F0 .808(If set to)144 420 R F1(On)
+3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F F2(mor)
+3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808
 (ager to display a screenful of possible comple-)-3.308 F
-(tions at a time.)144 228 Q F1
-(print\255completions\255horizontally \(Off\))108 240 Q F0 1.319
-(If set to)144 252 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline will dis\
+(tions at a time.)144 432 Q F1
+(print\255completions\255horizontally \(Off\))108 444 Q F0 1.319
+(If set to)144 456 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline will dis\
 play completions with matches sorted horizontally in alphabetical)-3.819
-F(order)144 264 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25
-E F1 -2.29 -.18(re v)108 276 T(ert\255all\255at\255newline \(Off\)).08 E
-F0 .698(If set to)144 288 R F1(On)3.198 E F0 3.198(,r)C .699
+F(order)144 468 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25
+E F1 -2.29 -.18(re v)108 480 T(ert\255all\255at\255newline \(Off\)).08 E
+F0 .698(If set to)144 492 R F1(On)3.198 E F0 3.198(,r)C .699
 (eadline will undo all changes to history lines before returning when)
--3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 300 S
+-3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 504 S
 2.686(cuted. By).15 F(def)2.686 E .186
 (ault, history lines may be modi\214ed and retain indi)-.1 F .186
-(vidual undo lists across calls to)-.25 F F1 -.18(re)144 312 S(adline)
-.18 E F0(.)A F1(sho)108 324 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
-F0 .303(This alters the def)144 336 R .303(ault beha)-.1 F .304
+(vidual undo lists across calls to)-.25 F F1 -.18(re)144 516 S(adline)
+.18 E F0(.)A F1(sho)108 528 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
+F0 .303(This alters the def)144 540 R .303(ault beha)-.1 F .304
 (vior of the completion functions.)-.2 F .304(If set to)5.304 F F1(On)
 2.804 E F0 2.804(,w)C .304(ords which ha)-2.904 F .604 -.15(ve m)-.2 H
 (ore).15 E 1.264(than one possible completion cause the matches to be l\
-isted immediately instead of ringing the)144 348 R(bell.)144 360 Q F1
-(sho)108 372 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
-(This alters the def)144 384 R 5.345(ault beha)-.1 F 5.345
+isted immediately instead of ringing the)144 552 R(bell.)144 564 Q F1
+(sho)108 576 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
+(This alters the def)144 588 R 5.345(ault beha)-.1 F 5.345
 (vior of the completion functions in a f)-.2 F 5.346(ashion similar to)
--.1 F F1(sho)144 396 Q(w\255all\255if\255ambiguous)-.1 E F0 6.691(.I)C
+-.1 F F1(sho)144 600 Q(w\255all\255if\255ambiguous)-.1 E F0 6.691(.I)C
 4.191(fs)-6.691 G 1.691(et to)-4.191 F F1(On)4.191 E F0 4.191(,w)C 1.691
 (ords which ha)-4.291 F 1.991 -.15(ve m)-.2 H 1.691
-(ore than one possible completion).15 F 1.039(without an)144 408 R 3.539
+(ore than one possible completion).15 F 1.039(without an)144 612 R 3.539
 (yp)-.15 G 1.039
 (ossible partial completion \(the possible completions don')-3.539 F
 3.539(ts)-.18 G 1.04(hare a common pre\214x\))-3.539 F(cause the matche\
-s to be listed immediately instead of ringing the bell.)144 420 Q F1
-(sho)108 432 Q(w\255mode\255in\255pr)-.1 E(ompt \(Off\))-.18 E F0 1.019
-(If set to)144 444 R F1(On)3.519 E F0 3.519(,a)C 1.018
-(dd a character to the be)-3.519 F 1.018
-(ginning of the prompt indicating the editing mode: emacs)-.15 F
-(\(@\), vi command \(:\) or vi insertion \(+\).)144 456 Q F1
-(skip\255completed\255text \(Off\))108 468 Q F0 .094(If set to)144 480 R
-F1(On)2.594 E F0 2.594(,t)C .095(his alters the def)-2.594 F .095
-(ault completion beha)-.1 F .095
-(vior when inserting a single match into the line.)-.2 F(It')144 492 Q
+s to be listed immediately instead of ringing the bell.)144 624 Q F1
+(sho)108 636 Q(w\255mode\255in\255pr)-.1 E(ompt \(Off\))-.18 E F0 .252
+(If set to)144 648 R F1(On)2.752 E F0 2.752(,a)C .252
+(dd a character to the be)-2.752 F .251
+(ginning of the prompt indicating the editing mode: emacs, vi)-.15 F
+(command, or vi insertion.)144 660 Q(The mode strings are user)5 E
+(-settable.)-.2 E F1(skip\255completed\255text \(Off\))108 672 Q F0 .094
+(If set to)144 684 R F1(On)2.594 E F0 2.594(,t)C .095
+(his alters the def)-2.594 F .095(ault completion beha)-.1 F .095
+(vior when inserting a single match into the line.)-.2 F(It')144 696 Q
 2.546(so)-.55 G .046(nly acti)-2.546 F .346 -.15(ve w)-.25 H .046
 (hen performing completion in the middle of a w).15 F 2.545(ord. If)-.1
 F .045(enabled, readline does not)2.545 F 1.394(insert characters from \
-the completion that match characters after point in the w)144 504 R
-1.395(ord being com-)-.1 F(pleted, so portions of the w)144 516 Q
-(ord follo)-.1 E(wing the cursor are not duplicated.)-.25 E F1
-(visible\255stats \(Off\))108 528 Q F0 .847(If set to)144 540 R F1(On)
+the completion that match characters after point in the w)144 708 R
+1.395(ord being com-)-.1 F(pleted, so portions of the w)144 720 Q
+(ord follo)-.1 E(wing the cursor are not duplicated.)-.25 E
+(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15
+E(5)190.545 E 0 Cg EP
+%%Page: 6 6
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10/Times-Bold@0 SF
+(vi\255cmd\255mode\255string \(\(cmd\)\))108 84 Q F0 1.198(This string \
+is displayed immediately before the last line of the primary prompt whe\
+n vi editing)144 96 R .521(mode is acti)144 108 R .821 -.15(ve a)-.25 H
+.522(nd in command mode.).15 F .522(The v)5.522 F .522(alue is e)-.25 F
+.522(xpanded lik)-.15 F 3.022(eak)-.1 G .822 -.15(ey b)-3.122 H .522
+(inding, so the standard).15 F .87(set of meta- and control pre\214x)144
+120 R .869(es and backslash escape sequences is a)-.15 F -.25(va)-.2 G
+3.369(ilable. Use).25 F .869(the \\1 and \\2)3.369 F .386(escapes to be)
+144 132 R .386(gin and end sequences of non-printing characters, which \
+can be used to embed a ter)-.15 F(-)-.2 E
+(minal control sequence into the mode string.)144 144 Q F1
+(vi\255ins\255mode\255string \(\(ins\)\))108 156 Q F0 1.198(This string\
+ is displayed immediately before the last line of the primary prompt wh\
+en vi editing)144 168 R .782(mode is acti)144 180 R 1.083 -.15(ve a)-.25
+H .783(nd in insertion mode.).15 F .783(The v)5.783 F .783(alue is e)
+-.25 F .783(xpanded lik)-.15 F 3.283(eak)-.1 G 1.083 -.15(ey b)-3.383 H
+.783(inding, so the standard).15 F .87
+(set of meta- and control pre\214x)144 192 R .869
+(es and backslash escape sequences is a)-.15 F -.25(va)-.2 G 3.369
+(ilable. Use).25 F .869(the \\1 and \\2)3.369 F .386(escapes to be)144
+204 R .386(gin and end sequences of non-printing characters, which can \
+be used to embed a ter)-.15 F(-)-.2 E
+(minal control sequence into the mode string.)144 216 Q F1
+(visible\255stats \(Off\))108 228 Q F0 .847(If set to)144 240 R F1(On)
 3.346 E F0 3.346(,ac)C .846(haracter denoting a \214le')-3.346 F 3.346
-(st)-.55 G .846(ype as reported by)-3.346 F F2(stat)3.346 E F0 .846
-(\(2\) is appended to the \214lename)B
-(when listing possible completions.)144 552 Q F1(Conditional Constructs)
-87 568.8 Q F0 .05(Readline implements a f)108 580.8 R .05(acility simil\
+(st)-.55 G .846(ype as reported by)-3.346 F/F2 10/Times-Italic@0 SF
+(stat)3.346 E F0 .846(\(2\) is appended to the \214lename)B
+(when listing possible completions.)144 252 Q F1(Conditional Constructs)
+87 268.8 Q F0 .05(Readline implements a f)108 280.8 R .05(acility simil\
 ar in spirit to the conditional compilation features of the C preproces\
-sor)-.1 F .097(which allo)108 592.8 R .097(ws k)-.25 F .396 -.15(ey b)
+sor)-.1 F .097(which allo)108 292.8 R .097(ws k)-.25 F .396 -.15(ey b)
 -.1 H .096(indings and v).15 F .096
 (ariable settings to be performed as the result of tests.)-.25 F .096
-(There are four parser)5.096 F(directi)108 604.8 Q -.15(ve)-.25 G 2.5
-(su).15 G(sed.)-2.5 E F1($if)108 621.6 Q F0(The)24.89 E F1($if)2.962 E
-F0 .462(construct allo)2.962 F .463(ws bindings to be made based on the\
- editing mode, the terminal being used,)-.25 F .478
-(or the application using readline.)144 633.6 R .477(The te)5.477 F .477
+(There are four parser)5.096 F(directi)108 304.8 Q -.15(ve)-.25 G 2.5
+(su).15 G(sed.)-2.5 E F1($if)108 321.6 Q F0(The)144 321.6 Q F1($if)2.962
+E F0 .462(construct allo)2.962 F .463(ws bindings to be made based on t\
+he editing mode, the terminal being used,)-.25 F .478
+(or the application using readline.)144 333.6 R .477(The te)5.477 F .477
 (xt of the test e)-.15 F .477
 (xtends to the end of the line; no characters)-.15 F
-(are required to isolate it.)144 645.6 Q F1(mode)144 662.4 Q F0(The)
-12.67 E F1(mode=)3.711 E F0 1.211(form of the)3.711 F F1($if)3.711 E F0
+(are required to isolate it.)144 345.6 Q F1(mode)144 362.4 Q F0(The)180
+362.4 Q F1(mode=)3.711 E F0 1.211(form of the)3.711 F F1($if)3.711 E F0
 (directi)3.711 E 1.511 -.15(ve i)-.25 H 3.711(su).15 G 1.211
 (sed to test whether readline is in emacs or vi)-3.711 F 3.065
-(mode. This)180 674.4 R .565(may be used in conjunction with the)3.065 F
+(mode. This)180 374.4 R .565(may be used in conjunction with the)3.065 F
 F1 .565(set k)3.065 F(eymap)-.1 E F0 .565(command, for instance, to)
-3.065 F .029(set bindings in the)180 686.4 R F2(emacs-standar)2.529 E(d)
+3.065 F .029(set bindings in the)180 386.4 R F2(emacs-standar)2.529 E(d)
 -.37 E F0(and)2.529 E F2(emacs-ctlx)2.529 E F0 -.1(ke)2.529 G .029
-(ymaps only if readline is starting out)-.05 F(in emacs mode.)180 698.4
-Q F1(term)144 715.2 Q F0(The)15.46 E F1(term=)3.197 E F0 .696
+(ymaps only if readline is starting out)-.05 F(in emacs mode.)180 398.4
+Q F1(term)144 415.2 Q F0(The)180 415.2 Q F1(term=)3.197 E F0 .696
 (form may be used to include terminal-speci\214c k)3.197 F .996 -.15
-(ey b)-.1 H .696(indings, perhaps to bind).15 F .654(the k)180 727.2 R
+(ey b)-.1 H .696(indings, perhaps to bind).15 F .654(the k)180 427.2 R
 .954 -.15(ey s)-.1 H .654(equences output by the terminal').15 F 3.154
 (sf)-.55 G .654(unction k)-3.154 F -.15(ey)-.1 G 3.154(s. The).15 F -.1
-(wo)3.154 G .654(rd on the right side of).1 F(GNU Readline 6.3)72 768 Q
-(2014 January 6)128.74 E(5)198.45 E 0 Cg EP
-%%Page: 6 6
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R(the)
-180 84 Q/F1 10/Times-Bold@0 SF(=)3.004 E F0 .504(is tested ag)3.004 F
-.503(ainst the full name of the terminal and the portion of the termina\
-l name)-.05 F(before the \214rst)180 96 Q F1<ad>2.5 E F0 5(.T)C
-(his allo)-5 E(ws)-.25 E/F2 10/Times-Italic@0 SF(sun)2.84 E F0
+(wo)3.154 G .654(rd on the right side of).1 F(the)180 439.2 Q F1(=)3.004
+E F0 .504(is tested ag)3.004 F .503(ainst the full name of the terminal\
+ and the portion of the terminal name)-.05 F(before the \214rst)180
+451.2 Q F1<ad>2.5 E F0 5(.T)C(his allo)-5 E(ws)-.25 E F2(sun)2.84 E F0
 (to match both)2.74 E F2(sun)2.84 E F0(and)2.74 E F2(sun\255cmd)2.5 E F0
-2.5(,f).77 G(or instance.)-2.5 E F1(application)144 112.8 Q F0(The)180
-124.8 Q F1(application)3.003 E F0 .503
+2.5(,f).77 G(or instance.)-2.5 E F1(application)144 468 Q F0(The)180 480
+Q F1(application)3.003 E F0 .503
 (construct is used to include application-speci\214c settings.)3.003 F
 .503(Each program)5.503 F .114(using the readline library sets the)180
-136.8 R F2 .114(application name)2.614 F F0 2.614(,a)C .114
+492 R F2 .114(application name)2.614 F F0 2.614(,a)C .114
 (nd an initialization \214le can test for a)-2.614 F .5(particular v)180
-148.8 R 3(alue. This)-.25 F .501(could be used to bind k)3 F .801 -.15
+504 R 3(alue. This)-.25 F .501(could be used to bind k)3 F .801 -.15
 (ey s)-.1 H .501(equences to functions useful for a spe-).15 F .397
-(ci\214c program.)180 160.8 R -.15(Fo)5.397 G 2.896(ri).15 G .396
+(ci\214c program.)180 516 R -.15(Fo)5.397 G 2.896(ri).15 G .396
 (nstance, the follo)-2.896 F .396(wing command adds a k)-.25 F .696 -.15
-(ey s)-.1 H .396(equence that quotes the).15 F(current or pre)180 172.8
-Q(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 196.8 Q F0
-(Bash)2.5 E 2.5(#Q)180 208.8 S(uote the current or pre)-2.5 E(vious w)
--.25 E(ord)-.1 E("\\C-xq": "\\eb\\"\\ef\\"")180 220.8 Q F1($endif)180
-232.8 Q($endif)108 249.6 Q F0(This command, as seen in the pre)9.33 E
+(ey s)-.1 H .396(equence that quotes the).15 F(current or pre)180 528 Q
+(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 552 Q F0
+(Bash)2.5 E 2.5(#Q)180 564 S(uote the current or pre)-2.5 E(vious w)-.25
+E(ord)-.1 E("\\C-xq": "\\eb\\"\\ef\\"")180 576 Q F1($endif)180 588 Q
+($endif)108 604.8 Q F0(This command, as seen in the pre)144 604.8 Q
 (vious e)-.25 E(xample, terminates an)-.15 E F1($if)2.5 E F0(command.)
-2.5 E F1($else)108 266.4 Q F0(Commands in this branch of the)15.45 E F1
-($if)2.5 E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E -.15(xe)-.15
-G(cuted if the test f).15 E(ails.)-.1 E F1($include)108 283.2 Q F0 .356
-(This directi)144 295.2 R .656 -.15(ve t)-.25 H(ak).15 E .356
+2.5 E F1($else)108 621.6 Q F0(Commands in this branch of the)144 621.6 Q
+F1($if)2.5 E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E -.15(xe)
+-.15 G(cuted if the test f).15 E(ails.)-.1 E F1($include)108 638.4 Q F0
+.356(This directi)144 650.4 R .656 -.15(ve t)-.25 H(ak).15 E .356
 (es a single \214lename as an ar)-.1 F .357
 (gument and reads commands and bindings from that)-.18 F 2.5(\214le. F)
-144 307.2 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
+144 662.4 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
 -.15(ve w)-.25 H(ould read).05 E F2(/etc/inputr)2.5 E(c)-.37 E F0(:)A F1
-($include)144 331.2 Q F2(/etc/inputr)5.833 E(c)-.37 E/F3 10.95
-/Times-Bold@0 SF(SEARCHING)72 348 Q F0 1.004(Readline pro)108 360 R
+($include)144 686.4 Q F2(/etc/inputr)5.833 E(c)-.37 E/F3 10.95
+/Times-Bold@0 SF(SEARCHING)72 703.2 Q F0 1.004(Readline pro)108 715.2 R
 1.003(vides commands for searching through the command history for line\
-s containing a speci\214ed)-.15 F 2.5(string. There)108 372 R(are tw)2.5
-E 2.5(os)-.1 G(earch modes:)-2.5 E F2(incr)2.51 E(emental)-.37 E F0(and)
-3.01 E F2(non-incr)2.5 E(emental)-.37 E F0(.).51 E .697
-(Incremental searches be)108 388.8 R .697
+s containing a speci\214ed)-.15 F 2.5(string. There)108 727.2 R(are tw)
+2.5 E 2.5(os)-.1 G(earch modes:)-2.5 E F2(incr)2.51 E(emental)-.37 E F0
+(and)3.01 E F2(non-incr)2.5 E(emental)-.37 E F0(.).51 E
+(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15
+E(6)190.545 E 0 Cg EP
+%%Page: 7 7
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E .697
+(Incremental searches be)108 84 R .697
 (gin before the user has \214nished typing the search string.)-.15 F
 .698(As each character of the)5.698 F .113
-(search string is typed, readline displays the ne)108 400.8 R .112
+(search string is typed, readline displays the ne)108 96 R .112
 (xt entry from the history matching the string typed so f)-.15 F(ar)-.1
 E 5.112(.A)-.55 G(n)-5.112 E .544
-(incremental search requires only as man)108 412.8 R 3.044(yc)-.15 G
-.544(haracters as needed to \214nd the desired history entry)-3.044 F
-5.545(.T)-.65 G 3.045(os)-6.345 G(earch)-3.045 E(backw)108 424.8 Q .181
-(ard in the history for a particular string, type)-.1 F F1(C\255r)2.681
-E F0 5.181(.T)C(yping)-5.981 E F1(C\255s)2.68 E F0 .18(searches forw)
-2.68 F .18(ard through the history)-.1 F(.)-.65 E .354
-(The characters present in the v)108 436.8 R .354(alue of the)-.25 F F1
-(isear)2.854 E(ch-terminators)-.18 E F0 -.25(va)2.854 G .354
-(riable are used to terminate an incremen-).25 F .6(tal search.)108
-448.8 R .6(If that v)5.6 F .6(ariable has not been assigned a v)-.25 F
-.6(alue the)-.25 F F2(Escape)3.1 E F0(and)3.1 E F1(C\255J)3.1 E F0 .6
-(characters will terminate an)3.1 F .122(incremental search.)108 460.8 R
-F1(C\255G)5.122 E F0 .122
+(incremental search requires only as man)108 108 R 3.044(yc)-.15 G .544
+(haracters as needed to \214nd the desired history entry)-3.044 F 5.545
+(.T)-.65 G 3.045(os)-6.345 G(earch)-3.045 E(backw)108 120 Q .181
+(ard in the history for a particular string, type)-.1 F/F1 10
+/Times-Bold@0 SF(C\255r)2.681 E F0 5.181(.T)C(yping)-5.981 E F1(C\255s)
+2.68 E F0 .18(searches forw)2.68 F .18(ard through the history)-.1 F(.)
+-.65 E .354(The characters present in the v)108 132 R .354(alue of the)
+-.25 F F1(isear)2.854 E(ch-terminators)-.18 E F0 -.25(va)2.854 G .354
+(riable are used to terminate an incremen-).25 F .6(tal search.)108 144
+R .6(If that v)5.6 F .6(ariable has not been assigned a v)-.25 F .6
+(alue the)-.25 F/F2 10/Times-Italic@0 SF(Escape)3.1 E F0(and)3.1 E F1
+(C\255J)3.1 E F0 .6(characters will terminate an)3.1 F .122
+(incremental search.)108 156 R F1(C\255G)5.122 E F0 .122
 (will abort an incremental search and restore the original line.)2.622 F
 .123(When the search is)5.123 F(terminated, the history entry containin\
-g the search string becomes the current line.)108 472.8 Q 2.407 -.8
-(To \214)108 489.6 T .806
+g the search string becomes the current line.)108 168 Q 2.407 -.8
+(To \214)108 184.8 T .806
 (nd other matching entries in the history list, type).8 F F1(C\255s)
 3.306 E F0(or)3.306 E F1(C\255r)3.306 E F0 .806(as appropriate.)3.306 F
-.806(This will search back-)5.806 F -.1(wa)108 501.6 S 1.308(rd or forw)
+.806(This will search back-)5.806 F -.1(wa)108 196.8 S 1.308(rd or forw)
 .1 F 1.309(ard in the history for the ne)-.1 F 1.309
 (xt line matching the search string typed so f)-.15 F(ar)-.1 E 6.309(.A)
 -.55 G 1.609 -.15(ny o)-6.309 H 1.309(ther k).15 F -.15(ey)-.1 G .317
 (sequence bound to a readline command will terminate the search and e)
-108 513.6 R -.15(xe)-.15 G .317(cute that command.).15 F -.15(Fo)5.317 G
-2.817(ri).15 G(nstance,)-2.817 E 3.48(an)108 525.6 S -.25(ew)-3.48 G .98
+108 208.8 R -.15(xe)-.15 G .317(cute that command.).15 F -.15(Fo)5.317 G
+2.817(ri).15 G(nstance,)-2.817 E 3.48(an)108 220.8 S -.25(ew)-3.48 G .98
 (line will terminate the search and accept the line, thereby e).25 F
 -.15(xe)-.15 G .981(cuting the command from the history).15 F 3.062
-(list. A)108 537.6 R(mo)3.062 E -.15(ve)-.15 G .562
+(list. A)108 232.8 R(mo)3.062 E -.15(ve)-.15 G .562
 (ment command will terminate the search, mak).15 F 3.062(et)-.1 G .562
 (he last line found the current line, and be)-3.062 F(gin)-.15 E
-(editing.)108 549.6 Q .567(Non-incremental searches read the entire sea\
+(editing.)108 244.8 Q .567(Non-incremental searches read the entire sea\
 rch string before starting to search for matching history lines.)108
-566.4 R(The search string may be typed by the user or be part of the co\
-ntents of the current line.)108 578.4 Q F3(EDITING COMMANDS)72 595.2 Q
-F0 1.392(The follo)108 607.2 R 1.391
+261.6 R(The search string may be typed by the user or be part of the co\
+ntents of the current line.)108 273.6 Q/F3 10.95/Times-Bold@0 SF
+(EDITING COMMANDS)72 290.4 Q F0 1.392(The follo)108 302.4 R 1.391
 (wing is a list of the names of the commands and the def)-.25 F 1.391
 (ault k)-.1 F 1.691 -.15(ey s)-.1 H 1.391(equences to which the).15 F
-3.891(ya)-.15 G(re)-3.891 E 2.5(bound. Command)108 619.2 R
+3.891(ya)-.15 G(re)-3.891 E 2.5(bound. Command)108 314.4 R
 (names without an accompan)2.5 E(ying k)-.15 E .3 -.15(ey s)-.1 H
-(equence are unbound by def).15 E(ault.)-.1 E .054(In the follo)108 636
-R .054(wing descriptions,)-.25 F F2(point)2.554 E F0 .055
+(equence are unbound by def).15 E(ault.)-.1 E .054(In the follo)108
+331.2 R .054(wing descriptions,)-.25 F F2(point)2.554 E F0 .055
 (refers to the current cursor position, and)2.554 F F2(mark)2.555 E F0
-.055(refers to a cursor position)2.555 F(sa)108 648 Q -.15(ve)-.2 G 2.5
-(db).15 G 2.5(yt)-2.5 G(he)-2.5 E F1(set\255mark)2.5 E F0 2.5
+.055(refers to a cursor position)2.555 F(sa)108 343.2 Q -.15(ve)-.2 G
+2.5(db).15 G 2.5(yt)-2.5 G(he)-2.5 E F1(set\255mark)2.5 E F0 2.5
 (command. The)2.5 F(te)2.5 E
 (xt between the point and mark is referred to as the)-.15 E F2 -.37(re)
-2.5 G(gion)-.03 E F0(.)A F1(Commands f)87 664.8 Q(or Mo)-.25 E(ving)-.1
-E(beginning\255of\255line \(C\255a\))108 676.8 Q F0(Mo)144 688.8 Q .3
--.15(ve t)-.15 H 2.5(ot).15 G(he start of the current line.)-2.5 E F1
-(end\255of\255line \(C\255e\))108 700.8 Q F0(Mo)144 712.8 Q .3 -.15
-(ve t)-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E(GNU Readline 6.3)72
-768 Q(2014 January 6)128.74 E(6)198.45 E 0 Cg EP
-%%Page: 7 7
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF -.25(fo)108 84 S(rward\255char \(C\255f\)).25 E F0(Mo)
-144 96 Q .3 -.15(ve f)-.15 H(orw).15 E(ard a character)-.1 E(.)-.55 E F1
-(backward\255char \(C\255b\))108 108 Q F0(Mo)144 120 Q .3 -.15(ve b)-.15
-H(ack a character).15 E(.)-.55 E F1 -.25(fo)108 132 S(rward\255w).25 E
-(ord \(M\255f\))-.1 E F0(Mo)144 144 Q .823 -.15(ve f)-.15 H(orw).15 E
-.523(ard to the end of the ne)-.1 F .523(xt w)-.15 F 3.023(ord. W)-.1 F
-.522(ords are composed of alphanumeric characters \(let-)-.8 F
-(ters and digits\).)144 156 Q F1(backward\255w)108 168 Q(ord \(M\255b\))
--.1 E F0(Mo)144 180 Q 1.71 -.15(ve b)-.15 H 1.41
+2.5 G(gion)-.03 E F0(.)A F1(Commands f)87 360 Q(or Mo)-.25 E(ving)-.1 E
+(beginning\255of\255line \(C\255a\))108 372 Q F0(Mo)144 384 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he start of the current line.)-2.5 E F1
+(end\255of\255line \(C\255e\))108 396 Q F0(Mo)144 408 Q .3 -.15(ve t)
+-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E F1 -.25(fo)108 420 S
+(rward\255char \(C\255f\)).25 E F0(Mo)144 432 Q .3 -.15(ve f)-.15 H(orw)
+.15 E(ard a character)-.1 E(.)-.55 E F1(backward\255char \(C\255b\))108
+444 Q F0(Mo)144 456 Q .3 -.15(ve b)-.15 H(ack a character).15 E(.)-.55 E
+F1 -.25(fo)108 468 S(rward\255w).25 E(ord \(M\255f\))-.1 E F0(Mo)144 480
+Q .823 -.15(ve f)-.15 H(orw).15 E .523(ard to the end of the ne)-.1 F
+.523(xt w)-.15 F 3.023(ord. W)-.1 F .522
+(ords are composed of alphanumeric characters \(let-)-.8 F
+(ters and digits\).)144 492 Q F1(backward\255w)108 504 Q(ord \(M\255b\))
+-.1 E F0(Mo)144 516 Q 1.71 -.15(ve b)-.15 H 1.41
 (ack to the start of the current or pre).15 F 1.41(vious w)-.25 F 3.91
 (ord. W)-.1 F 1.41(ords are composed of alphanumeric)-.8 F
-(characters \(letters and digits\).)144 192 Q F1(clear\255scr)108 204 Q
-(een \(C\255l\))-.18 E F0 .993(Clear the screen lea)144 216 R .993
+(characters \(letters and digits\).)144 528 Q F1(clear\255scr)108 540 Q
+(een \(C\255l\))-.18 E F0 .993(Clear the screen lea)144 552 R .993
 (ving the current line at the top of the screen.)-.2 F -.4(Wi)5.993 G
 .993(th an ar).4 F .993(gument, refresh the)-.18 F
-(current line without clearing the screen.)144 228 Q F1 -.18(re)108 240
+(current line without clearing the screen.)144 564 Q F1 -.18(re)108 576
 S(draw\255curr).18 E(ent\255line)-.18 E F0(Refresh the current line.)144
-252 Q F1(Commands f)87 268.8 Q(or Manipulating the History)-.25 E
-(accept\255line \(Newline, Retur)108 280.8 Q(n\))-.15 E F0 .364
-(Accept the line re)144 292.8 R -.05(ga)-.15 G .364
+588 Q F1(Commands f)87 604.8 Q(or Manipulating the History)-.25 E
+(accept\255line \(Newline, Retur)108 616.8 Q(n\))-.15 E F0 .364
+(Accept the line re)144 628.8 R -.05(ga)-.15 G .364
 (rdless of where the cursor is.).05 F .364(If this line is non-empty)
 5.364 F 2.864(,i)-.65 G 2.864(tm)-2.864 G .365(ay be added to the)-2.864
-F .741(history list for future recall with)144 304.8 R F1
+F .741(history list for future recall with)144 640.8 R F1
 (add_history\(\))3.241 E F0 5.741(.I)C 3.241(ft)-5.741 G .74
 (he line is a modi\214ed history line, the history)-3.241 F
-(line is restored to its original state.)144 316.8 Q F1(pr)108 328.8 Q
+(line is restored to its original state.)144 652.8 Q F1(pr)108 664.8 Q
 -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0(Fetch the pre)144
-340.8 Q(vious command from the history list, mo)-.25 E
-(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 352.8 Q
-F0(Fetch the ne)144 364.8 Q(xt command from the history list, mo)-.15 E
-(ving forw)-.15 E(ard in the list.)-.1 E F1
-(beginning\255of\255history \(M\255<\))108 376.8 Q F0(Mo)144 388.8 Q .3
--.15(ve t)-.15 H 2.5(ot).15 G(he \214rst line in the history)-2.5 E(.)
--.65 E F1(end\255of\255history \(M\255>\))108 400.8 Q F0(Mo)144 412.8 Q
-.3 -.15(ve t)-.15 H 2.5(ot).15 G(he end of the input history)-2.5 E 2.5
-(,i)-.65 G(.e., the line currently being entered.)-2.5 E F1 -2.29 -.18
-(re v)108 424.8 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0
-1.47(Search backw)144 436.8 R 1.471
-(ard starting at the current line and mo)-.1 F 1.471
-(ving `up' through the history as necessary)-.15 F(.)-.65 E
-(This is an incremental search.)144 448.8 Q F1 -.25(fo)108 460.8 S
-(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.132
-(Search forw)144 472.8 R 1.132(ard starting at the current line and mo)
--.1 F 1.131(ving `do)-.15 F 1.131(wn' through the history as necessary)
--.25 F(.)-.65 E(This is an incremental search.)144 484.8 Q F1
-(non\255incr)108 496.8 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H
-(rse\255sear).15 E(ch\255history \(M\255p\))-.18 E F0 .164(Search backw)
-144 508.8 R .164(ard through the history starting at the current line u\
-sing a non-incremental search for)-.1 F 2.5(as)144 520.8 S
-(tring supplied by the user)-2.5 E(.)-.55 E F1(non\255incr)108 532.8 Q
-(emental\255f)-.18 E(orward\255sear)-.25 E(ch\255history \(M\255n\))-.18
-E F0 1.354(Search forw)144 544.8 R 1.354(ard through the history using \
-a non-incremental search for a string supplied by the)-.1 F(user)144
-556.8 Q(.)-.55 E F1(history\255sear)108 568.8 Q(ch\255backward)-.18 E F0
-.95(Search backw)144 580.8 R .951(ard through the history for the strin\
-g of characters between the start of the current)-.1 F .12
-(line and the current cursor position \(the)144 592.8 R/F2 10
-/Times-Italic@0 SF(point)2.62 E F0 2.62(\). The)B .12
-(search string must match at the be)2.62 F .12(ginning of a)-.15 F
-(history line.)144 604.8 Q(This is a non-incremental search.)5 E F1
-(history\255sear)108 616.8 Q(ch\255f)-.18 E(orward)-.25 E F0 .248
-(Search forw)144 628.8 R .249(ard through the history for the string of\
- characters between the start of the current line)-.1 F .036
-(and the point.)144 640.8 R .036(The search string must match at the be)
-5.036 F .035(ginning of a history line.)-.15 F .035
-(This is a non-incre-)5.035 F(mental search.)144 652.8 Q F1
-(history\255substring\255sear)108 664.8 Q(ch\255backward)-.18 E F0 .95
-(Search backw)144 676.8 R .951(ard through the history for the string o\
-f characters between the start of the current)-.1 F .007
-(line and the current cursor position \(the)144 688.8 R F2(point)2.507 E
-F0 2.507(\). The)B .007(search string may match an)2.507 F .006
-(ywhere in a history)-.15 F 2.5(line. This)144 700.8 R
-(is a non-incremental search.)2.5 E(GNU Readline 6.3)72 768 Q
-(2014 January 6)128.74 E(7)198.45 E 0 Cg EP
+676.8 Q(vious command from the history list, mo)-.25 E
+(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 688.8 Q
+F0(Fetch the ne)144 700.8 Q(xt command from the history list, mo)-.15 E
+(ving forw)-.15 E(ard in the list.)-.1 E(GNU Readline 6.3)72 768 Q
+(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15 E(7)190.545 E 0 Cg EP
 %%Page: 8 8
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(history\255substring\255sear)108 84 Q(ch\255f)-.18 E
-(orward)-.25 E F0 .248(Search forw)144 96 R .249(ard through the histor\
-y for the string of characters between the start of the current line)-.1
-F .319(and the point.)144 108 R .319(The search string may match an)
-5.319 F .319(ywhere in a history line.)-.15 F .318
-(This is a non-incremental)5.318 F(search.)144 120 Q F1
-(yank\255nth\255ar)108 132 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622
-(Insert the \214rst ar)144 144 R .622(gument to the pre)-.18 F .622
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10/Times-Bold@0 SF
+(beginning\255of\255history \(M\255<\))108 84 Q F0(Mo)144 96 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he \214rst line in the history)-2.5 E(.)-.65 E
+F1(end\255of\255history \(M\255>\))108 108 Q F0(Mo)144 120 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he end of the input history)-2.5 E 2.5(,i)-.65
+G(.e., the line currently being entered.)-2.5 E F1 -2.29 -.18(re v)108
+132 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0 1.47
+(Search backw)144 144 R 1.471(ard starting at the current line and mo)
+-.1 F 1.471(ving `up' through the history as necessary)-.15 F(.)-.65 E
+(This is an incremental search.)144 156 Q F1 -.25(fo)108 168 S
+(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.132
+(Search forw)144 180 R 1.132(ard starting at the current line and mo)-.1
+F 1.131(ving `do)-.15 F 1.131(wn' through the history as necessary)-.25
+F(.)-.65 E(This is an incremental search.)144 192 Q F1(non\255incr)108
+204 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H(rse\255sear).15 E
+(ch\255history \(M\255p\))-.18 E F0 .164(Search backw)144 216 R .164(ar\
+d through the history starting at the current line using a non-incremen\
+tal search for)-.1 F 2.5(as)144 228 S(tring supplied by the user)-2.5 E
+(.)-.55 E F1(non\255incr)108 240 Q(emental\255f)-.18 E(orward\255sear)
+-.25 E(ch\255history \(M\255n\))-.18 E F0 1.354(Search forw)144 252 R
+1.354(ard through the history using a non-incremental search for a stri\
+ng supplied by the)-.1 F(user)144 264 Q(.)-.55 E F1(history\255sear)108
+276 Q(ch\255backward)-.18 E F0 .95(Search backw)144 288 R .951(ard thro\
+ugh the history for the string of characters between the start of the c\
+urrent)-.1 F .12(line and the current cursor position \(the)144 300 R/F2
+10/Times-Italic@0 SF(point)2.62 E F0 2.62(\). The)B .12
+(search string must match at the be)2.62 F .12(ginning of a)-.15 F
+(history line.)144 312 Q(This is a non-incremental search.)5 E F1
+(history\255sear)108 324 Q(ch\255f)-.18 E(orward)-.25 E F0 .248
+(Search forw)144 336 R .249(ard through the history for the string of c\
+haracters between the start of the current line)-.1 F .036
+(and the point.)144 348 R .036(The search string must match at the be)
+5.036 F .035(ginning of a history line.)-.15 F .035
+(This is a non-incre-)5.035 F(mental search.)144 360 Q F1
+(history\255substring\255sear)108 372 Q(ch\255backward)-.18 E F0 .95
+(Search backw)144 384 R .951(ard through the history for the string of \
+characters between the start of the current)-.1 F .007
+(line and the current cursor position \(the)144 396 R F2(point)2.507 E
+F0 2.507(\). The)B .007(search string may match an)2.507 F .006
+(ywhere in a history)-.15 F 2.5(line. This)144 408 R
+(is a non-incremental search.)2.5 E F1(history\255substring\255sear)108
+420 Q(ch\255f)-.18 E(orward)-.25 E F0 .248(Search forw)144 432 R .249(a\
+rd through the history for the string of characters between the start o\
+f the current line)-.1 F .319(and the point.)144 444 R .319
+(The search string may match an)5.319 F .319(ywhere in a history line.)
+-.15 F .318(This is a non-incremental)5.318 F(search.)144 456 Q F1
+(yank\255nth\255ar)108 468 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622
+(Insert the \214rst ar)144 480 R .622(gument to the pre)-.18 F .622
 (vious command \(usually the second w)-.25 F .622(ord on the pre)-.1 F
-.622(vious line\))-.25 F .795(at point.)144 156 R -.4(Wi)5.795 G .794
-(th an ar).4 F(gument)-.18 E/F2 10/Times-Italic@0 SF(n)3.294 E F0 3.294
-(,i).24 G .794(nsert the)-3.294 F F2(n)3.294 E F0 .794(th w)B .794
-(ord from the pre)-.1 F .794(vious command \(the w)-.25 F .794
-(ords in the)-.1 F(pre)144 168 Q .291(vious command be)-.25 F .291
-(gin with w)-.15 F .291(ord 0\).)-.1 F 2.791(An)5.291 G -2.25 -.15(eg a)
--2.791 H(ti).15 E .591 -.15(ve a)-.25 H -.18(rg).15 G .291
-(ument inserts the).18 F F2(n)2.791 E F0 .291(th w)B .292
-(ord from the end of)-.1 F .282(the pre)144 180 R .282(vious command.)
--.25 F .282(Once the ar)5.282 F(gument)-.18 E F2(n)2.781 E F0 .281
-(is computed, the ar)2.781 F .281(gument is e)-.18 F .281
-(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 192 Q
-(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 204 Q
+.622(vious line\))-.25 F .795(at point.)144 492 R -.4(Wi)5.795 G .794
+(th an ar).4 F(gument)-.18 E F2(n)3.294 E F0 3.294(,i).24 G .794
+(nsert the)-3.294 F F2(n)3.294 E F0 .794(th w)B .794(ord from the pre)
+-.1 F .794(vious command \(the w)-.25 F .794(ords in the)-.1 F(pre)144
+504 Q .291(vious command be)-.25 F .291(gin with w)-.15 F .291(ord 0\).)
+-.1 F 2.791(An)5.291 G -2.25 -.15(eg a)-2.791 H(ti).15 E .591 -.15(ve a)
+-.25 H -.18(rg).15 G .291(ument inserts the).18 F F2(n)2.791 E F0 .291
+(th w)B .292(ord from the end of)-.1 F .282(the pre)144 516 R .282
+(vious command.)-.25 F .282(Once the ar)5.282 F(gument)-.18 E F2(n)2.781
+E F0 .281(is computed, the ar)2.781 F .281(gument is e)-.18 F .281
+(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 528 Q
+(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 540 Q
 2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.307
-(Insert the last ar)144 216 R 1.307(gument to the pre)-.18 F 1.307
+(Insert the last ar)144 552 R 1.307(gument to the pre)-.18 F 1.307
 (vious command \(the last w)-.25 F 1.308(ord of the pre)-.1 F 1.308
-(vious history entry\).)-.25 F -.4(Wi)144 228 S .204(th a numeric ar).4
+(vious history entry\).)-.25 F -.4(Wi)144 564 S .204(th a numeric ar).4
 F .204(gument, beha)-.18 F .504 -.15(ve ex)-.2 H .204(actly lik).15 F(e)
 -.1 E F1(yank\255nth\255ar)2.704 E(g)-.1 E F0 5.203(.S)C(uccessi)-5.203
 E .503 -.15(ve c)-.25 H .203(alls to).15 F F1(yank\255last\255ar)2.703 E
-(g)-.1 E F0(mo)144 240 Q .806 -.15(ve b)-.15 H .507
+(g)-.1 E F0(mo)144 576 Q .806 -.15(ve b)-.15 H .507
 (ack through the history list, inserting the last w).15 F .507
 (ord \(or the w)-.1 F .507(ord speci\214ed by the ar)-.1 F(gument)-.18 E
-1.397(to the \214rst call\) of each line in turn.)144 252 R(An)6.396 E
+1.397(to the \214rst call\) of each line in turn.)144 588 R(An)6.396 E
 3.896(yn)-.15 G 1.396(umeric ar)-3.896 F 1.396
 (gument supplied to these successi)-.18 F 1.696 -.15(ve c)-.25 H(alls)
-.15 E .491(determines the direction to mo)144 264 R .791 -.15(ve t)-.15
+.15 E .491(determines the direction to mo)144 600 R .791 -.15(ve t)-.15
 H .491(hrough the history).15 F 5.492(.A)-.65 G(ne)-2.5 E -.05(ga)-.15 G
 (ti).05 E .792 -.15(ve a)-.25 H -.18(rg).15 G .492
 (ument switches the direction).18 F .494
-(through the history \(back or forw)144 276 R 2.994(ard\). The)-.1 F
+(through the history \(back or forw)144 612 R 2.994(ard\). The)-.1 F
 .494(history e)2.994 F .494(xpansion f)-.15 F .494
-(acilities are used to e)-.1 F .494(xtract the last)-.15 F(ar)144 288 Q
+(acilities are used to e)-.1 F .494(xtract the last)-.15 F(ar)144 624 Q
 (gument, as if the "!$" history e)-.18 E(xpansion had been speci\214ed.)
--.15 E F1(Commands f)87 304.8 Q(or Changing T)-.25 E(ext)-.92 E F2
-(end\255of\255\214le)108 316.8 Q F1(\(usually C\255d\))2.5 E F0 .798
-(The character indicating end-of-\214le as set, for e)144 328.8 R .799
+-.15 E F1(Commands f)87 640.8 Q(or Changing T)-.25 E(ext)-.92 E F2
+(end\255of\255\214le)108 652.8 Q F1(\(usually C\255d\))2.5 E F0 .798
+(The character indicating end-of-\214le as set, for e)144 664.8 R .799
 (xample, by)-.15 F/F3 10/Courier@0 SF(stty)3.299 E F0 5.799(.I)C 3.299
 (ft)-5.799 G .799(his character is read when)-3.299 F .592
-(there are no characters on the line, and point is at the be)144 340.8 R
+(there are no characters on the line, and point is at the be)144 676.8 R
 .592(ginning of the line, Readline interprets it)-.15 F
-(as the end of input and returns)144 352.8 Q/F4 9/Times-Bold@0 SF(EOF)
-2.5 E/F5 9/Times-Roman@0 SF(.)A F1(delete\255char \(C\255d\))108 364.8 Q
-F0 .441(Delete the character at point.)144 376.8 R .442
+(as the end of input and returns)144 688.8 Q/F4 9/Times-Bold@0 SF(EOF)
+2.5 E/F5 9/Times-Roman@0 SF(.)A F1(delete\255char \(C\255d\))108 700.8 Q
+F0 .441(Delete the character at point.)144 712.8 R .442
 (If this function is bound to the same character as the tty)5.441 F F1
-(EOF)2.942 E F0(char)2.942 E(-)-.2 E(acter)144 388.8 Q 2.5(,a)-.4 G(s)
+(EOF)2.942 E F0(char)2.942 E(-)-.2 E(acter)144 724.8 Q 2.5(,a)-.4 G(s)
 -2.5 E F1(C\255d)2.5 E F0(commonly is, see abo)2.5 E .3 -.15(ve f)-.15 H
-(or the ef).15 E(fects.)-.25 E F1(backward\255delete\255char \(Rubout\))
-108 400.8 Q F0 .553(Delete the character behind the cursor)144 412.8 R
-5.553(.W)-.55 G .553(hen gi)-5.553 F -.15(ve)-.25 G 3.053(nan).15 G .553
-(umeric ar)-3.053 F .552(gument, sa)-.18 F .852 -.15(ve t)-.2 H .552
-(he deleted te).15 F .552(xt on)-.15 F(the kill ring.)144 424.8 Q F1
--.25(fo)108 436.8 S(rward\255backward\255delete\255char).25 E F0 .473
-(Delete the character under the cursor)144 448.8 R 2.973(,u)-.4 G .474
+(or the ef).15 E(fects.)-.25 E(GNU Readline 6.3)72 768 Q(2014 No)120.835
+E -.15(ve)-.15 G(mber 19).15 E(8)190.545 E 0 Cg EP
+%%Page: 9 9
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10/Times-Bold@0 SF
+(backward\255delete\255char \(Rubout\))108 84 Q F0 .553
+(Delete the character behind the cursor)144 96 R 5.553(.W)-.55 G .553
+(hen gi)-5.553 F -.15(ve)-.25 G 3.053(nan).15 G .553(umeric ar)-3.053 F
+.552(gument, sa)-.18 F .852 -.15(ve t)-.2 H .552(he deleted te).15 F
+.552(xt on)-.15 F(the kill ring.)144 108 Q F1 -.25(fo)108 120 S
+(rward\255backward\255delete\255char).25 E F0 .473
+(Delete the character under the cursor)144 132 R 2.973(,u)-.4 G .474
 (nless the cursor is at the end of the line, in which case the)-2.973 F
-(character behind the cursor is deleted.)144 460.8 Q F1
-(quoted\255insert \(C\255q, C\255v\))108 472.8 Q F0 1.229(Add the ne)144
-484.8 R 1.228(xt character that you type to the line v)-.15 F 3.728
+(character behind the cursor is deleted.)144 144 Q F1
+(quoted\255insert \(C\255q, C\255v\))108 156 Q F0 1.229(Add the ne)144
+168 R 1.228(xt character that you type to the line v)-.15 F 3.728
 (erbatim. This)-.15 F 1.228(is ho)3.728 F 3.728(wt)-.25 G 3.728(oi)
--3.728 G 1.228(nsert characters lik)-3.728 F(e)-.1 E F1(C\255q)144 496.8
-Q F0 2.5(,f)C(or e)-2.5 E(xample.)-.15 E F1(tab\255insert \(M-T)108
-508.8 Q(AB\))-.9 E F0(Insert a tab character)144 520.8 Q(.)-.55 E F1
-(self\255insert \(a, b, A, 1, !, ...\))108 532.8 Q F0
-(Insert the character typed.)144 544.8 Q F1
-(transpose\255chars \(C\255t\))108 556.8 Q F0 .321
-(Drag the character before point forw)144 568.8 R .321(ard o)-.1 F -.15
-(ve)-.15 G 2.821(rt).15 G .321(he character at point, mo)-2.821 F .322
-(ving point forw)-.15 F .322(ard as well.)-.1 F 1.182
-(If point is at the end of the line, then this transposes the tw)144
-580.8 R 3.682(oc)-.1 G 1.182(haracters before point.)-3.682 F(Ne)6.182 E
--.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 592.8 Q(guments ha)-.18 E
-.3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
-(transpose\255w)108 604.8 Q(ords \(M\255t\))-.1 E F0 .023(Drag the w)144
-616.8 R .023(ord before point past the w)-.1 F .023(ord after point, mo)
+-3.728 G 1.228(nsert characters lik)-3.728 F(e)-.1 E F1(C\255q)144 180 Q
+F0 2.5(,f)C(or e)-2.5 E(xample.)-.15 E F1(tab\255insert \(M-T)108 192 Q
+(AB\))-.9 E F0(Insert a tab character)144 204 Q(.)-.55 E F1
+(self\255insert \(a, b, A, 1, !, ...\))108 216 Q F0
+(Insert the character typed.)144 228 Q F1(transpose\255chars \(C\255t\))
+108 240 Q F0 .321(Drag the character before point forw)144 252 R .321
+(ard o)-.1 F -.15(ve)-.15 G 2.821(rt).15 G .321
+(he character at point, mo)-2.821 F .322(ving point forw)-.15 F .322
+(ard as well.)-.1 F 1.182
+(If point is at the end of the line, then this transposes the tw)144 264
+R 3.682(oc)-.1 G 1.182(haracters before point.)-3.682 F(Ne)6.182 E -.05
+(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 276 Q(guments ha)-.18 E .3
+-.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
+(transpose\255w)108 288 Q(ords \(M\255t\))-.1 E F0 .023(Drag the w)144
+300 R .023(ord before point past the w)-.1 F .023(ord after point, mo)
 -.1 F .023(ving point o)-.15 F -.15(ve)-.15 G 2.524(rt).15 G .024(hat w)
 -2.524 F .024(ord as well.)-.1 F .024(If point)5.024 F
-(is at the end of the line, this transposes the last tw)144 628.8 Q 2.5
-(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 640.8 Q
-(ord \(M\255u\))-.1 E F0 1.699(Uppercase the current \(or follo)144
-652.8 R 1.698(wing\) w)-.25 F 4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F
--.05(ga)-.15 G(ti).05 E 1.998 -.15(ve a)-.25 H -.18(rg).15 G 1.698
-(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 664.8 S(rd, b).1
-E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 676.8 Q
-(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 688.8 Q 1.647
+(is at the end of the line, this transposes the last tw)144 312 Q 2.5
+(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 324 Q
+(ord \(M\255u\))-.1 E F0 1.699(Uppercase the current \(or follo)144 336
+R 1.698(wing\) w)-.25 F 4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F -.05(ga)
+-.15 G(ti).05 E 1.998 -.15(ve a)-.25 H -.18(rg).15 G 1.698
+(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 348 S(rd, b).1 E
+(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 360 Q
+(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 372 Q 1.647
 (wercase the current \(or follo)-.25 F 1.647(wing\) w)-.25 F 4.147
 (ord. W)-.1 F 1.648(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.948 -.15
 (ve a)-.25 H -.18(rg).15 G 1.648(ument, lo).18 F 1.648(wercase the pre)
--.25 F(vious)-.25 E -.1(wo)144 700.8 S(rd, b).1 E(ut do not mo)-.2 E .3
--.15(ve p)-.15 H(oint.).15 E(GNU Readline 6.3)72 768 Q(2014 January 6)
-128.74 E(8)198.45 E 0 Cg EP
-%%Page: 9 9
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(capitalize\255w)108 84 Q(ord \(M\255c\))-.1 E F0 1.975
-(Capitalize the current \(or follo)144 96 R 1.974(wing\) w)-.25 F 4.474
-(ord. W)-.1 F 1.974(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 2.274 -.15
-(ve a)-.25 H -.18(rg).15 G 1.974(ument, capitalize the pre).18 F(vious)
--.25 E -.1(wo)144 108 S(rd, b).1 E(ut do not mo)-.2 E .3 -.15(ve p)-.15
-H(oint.).15 E F1 -.1(ove)108 120 S(rwrite\255mode).1 E F0 -.8(To)144 132
-S .437(ggle o).8 F -.15(ve)-.15 G .437(rwrite mode.).15 F -.4(Wi)5.437 G
-.437(th an e).4 F .437(xplicit positi)-.15 F .738 -.15(ve n)-.25 H .438
-(umeric ar).15 F .438(gument, switches to o)-.18 F -.15(ve)-.15 G .438
-(rwrite mode.).15 F -.4(Wi)144 144 S .781(th an e).4 F .781
-(xplicit non-positi)-.15 F 1.081 -.15(ve n)-.25 H .781(umeric ar).15 F
-.781(gument, switches to insert mode.)-.18 F .78(This command af)5.781 F
-(fects)-.25 E(only)144 156 Q F1(emacs)4.394 E F0(mode;)4.394 E F1(vi)
+-.25 F(vious)-.25 E -.1(wo)144 384 S(rd, b).1 E(ut do not mo)-.2 E .3
+-.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 396 Q
+(ord \(M\255c\))-.1 E F0 1.975(Capitalize the current \(or follo)144 408
+R 1.974(wing\) w)-.25 F 4.474(ord. W)-.1 F 1.974(ith a ne)-.4 F -.05(ga)
+-.15 G(ti).05 E 2.274 -.15(ve a)-.25 H -.18(rg).15 G 1.974
+(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 420 S(rd, b).1
+E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108 432
+S(rwrite\255mode).1 E F0 -.8(To)144 444 S .437(ggle o).8 F -.15(ve)-.15
+G .437(rwrite mode.).15 F -.4(Wi)5.437 G .437(th an e).4 F .437
+(xplicit positi)-.15 F .738 -.15(ve n)-.25 H .438(umeric ar).15 F .438
+(gument, switches to o)-.18 F -.15(ve)-.15 G .438(rwrite mode.).15 F -.4
+(Wi)144 456 S .781(th an e).4 F .781(xplicit non-positi)-.15 F 1.081
+-.15(ve n)-.25 H .781(umeric ar).15 F .781
+(gument, switches to insert mode.)-.18 F .78(This command af)5.781 F
+(fects)-.25 E(only)144 468 Q F1(emacs)4.394 E F0(mode;)4.394 E F1(vi)
 4.394 E F0 1.894(mode does o)4.394 F -.15(ve)-.15 G 1.894(rwrite dif).15
 F(ferently)-.25 E 6.894(.E)-.65 G 1.894(ach call to)-6.894 F/F2 10
 /Times-Italic@0 SF -.37(re)4.395 G(adline\(\)).37 E F0 1.895
-(starts in insert)4.395 F 3.969(mode. In)144 168 R -.15(ove)3.969 G
+(starts in insert)4.395 F 3.969(mode. In)144 480 R -.15(ove)3.969 G
 1.469(rwrite mode, characters bound to).15 F F1(self\255insert)3.969 E
 F0 1.468(replace the te)3.969 F 1.468(xt at point rather than)-.15 F
-.957(pushing the te)144 180 R .957(xt to the right.)-.15 F .958
+.957(pushing the te)144 492 R .957(xt to the right.)-.15 F .958
 (Characters bound to)5.957 F F1(backward\255delete\255char)3.458 E F0
-.958(replace the character)3.458 F(before point with a space.)144 192 Q
+.958(replace the character)3.458 F(before point with a space.)144 504 Q
 (By def)5 E(ault, this command is unbound.)-.1 E F1(Killing and Y)87
-208.8 Q(anking)-.85 E(kill\255line \(C\255k\))108 220.8 Q F0
-(Kill the te)144 232.8 Q(xt from point to the end of the line.)-.15 E F1
-(backward\255kill\255line \(C\255x Rubout\))108 244.8 Q F0(Kill backw)
-144 256.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
-(unix\255line\255discard \(C\255u\))108 268.8 Q F0(Kill backw)144 280.8
+520.8 Q(anking)-.85 E(kill\255line \(C\255k\))108 532.8 Q F0
+(Kill the te)144 544.8 Q(xt from point to the end of the line.)-.15 E F1
+(backward\255kill\255line \(C\255x Rubout\))108 556.8 Q F0(Kill backw)
+144 568.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
+(unix\255line\255discard \(C\255u\))108 580.8 Q F0(Kill backw)144 592.8
 Q(ard from point to the be)-.1 E(ginning of the line.)-.15 E
 (The killed te)5 E(xt is sa)-.15 E -.15(ve)-.2 G 2.5(do).15 G 2.5(nt)
--2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 292.8 Q F0
+-2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 604.8 Q F0
 (Kill all characters on the current line, no matter where point is.)144
-304.8 Q F1(kill\255w)108 316.8 Q(ord \(M\255d\))-.1 E F0 1.308
-(Kill from point the end of the current w)144 328.8 R 1.308
+616.8 Q F1(kill\255w)108 628.8 Q(ord \(M\255d\))-.1 E F0 1.308
+(Kill from point the end of the current w)144 640.8 R 1.308
 (ord, or if between w)-.1 F 1.308(ords, to the end of the ne)-.1 F 1.307
-(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 340.8 S
+(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 652.8 S
 (rd boundaries are the same as those used by).8 E F1 -.25(fo)2.5 G
-(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 352.8 Q
-(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 364.8 Q(ord behind point.)
+(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 664.8 Q
+(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 676.8 Q(ord behind point.)
 -.1 E -.8(Wo)5 G(rd boundaries are the same as those used by).8 E F1
-(backward\255w)2.5 E(ord)-.1 E F0(.)A F1(unix\255w)108 376.8 Q
-(ord\255rubout \(C\255w\))-.1 E F0 .364(Kill the w)144 388.8 R .364
+(backward\255w)2.5 E(ord)-.1 E F0(.)A F1(unix\255w)108 688.8 Q
+(ord\255rubout \(C\255w\))-.1 E F0 .364(Kill the w)144 700.8 R .364
 (ord behind point, using white space as a w)-.1 F .365(ord boundary)-.1
 F 5.365(.T)-.65 G .365(he killed te)-5.365 F .365(xt is sa)-.15 F -.15
 (ve)-.2 G 2.865(do).15 G 2.865(nt)-2.865 G(he)-2.865 E(kill-ring.)144
-400.8 Q F1(unix\255\214lename\255rubout)108 412.8 Q F0 .167(Kill the w)
-144 424.8 R .166
+712.8 Q(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G
+(mber 19).15 E(9)190.545 E 0 Cg EP
+%%Page: 10 10
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10/Times-Bold@0 SF
+(unix\255\214lename\255rubout)108 84 Q F0 .167(Kill the w)144 96 R .166
 (ord behind point, using white space and the slash character as the w)
--.1 F .166(ord boundaries.)-.1 F(The)5.166 E(killed te)144 436.8 Q
+-.1 F .166(ord boundaries.)-.1 F(The)5.166 E(killed te)144 108 Q
 (xt is sa)-.15 E -.15(ve)-.2 G 2.5(do).15 G 2.5(nt)-2.5 G(he kill-ring.)
--2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 448.8 Q F0
-(Delete all spaces and tabs around point.)144 460.8 Q F1(kill\255r)108
-472.8 Q(egion)-.18 E F0 1.13(Kill the te)144 484.8 R 1.13
-(xt between the point and)-.15 F F2(mark)3.63 E F0(\(sa)3.63 E -.15(ve)
--.2 G 3.63(dc).15 G 1.13(ursor position\).)-3.63 F 1.13(This te)6.13 F
-1.13(xt is referred to as the)-.15 F F2 -.37(re)144 496.8 S(gion)-.03 E
-F0(.)A F1(copy\255r)108 508.8 Q(egion\255as\255kill)-.18 E F0(Cop)144
-520.8 Q 2.5(yt)-.1 G(he te)-2.5 E(xt in the re)-.15 E
+-2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 120 Q F0
+(Delete all spaces and tabs around point.)144 132 Q F1(kill\255r)108 144
+Q(egion)-.18 E F0 1.13(Kill the te)144 156 R 1.13
+(xt between the point and)-.15 F/F2 10/Times-Italic@0 SF(mark)3.63 E F0
+(\(sa)3.63 E -.15(ve)-.2 G 3.63(dc).15 G 1.13(ursor position\).)-3.63 F
+1.13(This te)6.13 F 1.13(xt is referred to as the)-.15 F F2 -.37(re)144
+168 S(gion)-.03 E F0(.)A F1(copy\255r)108 180 Q(egion\255as\255kill)-.18
+E F0(Cop)144 192 Q 2.5(yt)-.1 G(he te)-2.5 E(xt in the re)-.15 E
 (gion to the kill b)-.15 E(uf)-.2 E(fer)-.25 E(.)-.55 E F1
-(copy\255backward\255w)108 532.8 Q(ord)-.1 E F0(Cop)144 544.8 Q 4.801
-(yt)-.1 G 2.301(he w)-4.801 F 2.301(ord before point to the kill b)-.1 F
-(uf)-.2 E(fer)-.25 E 7.301(.T)-.55 G 2.301(he w)-7.301 F 2.3
-(ord boundaries are the same as)-.1 F F1(back-)4.8 E(ward\255w)144 556.8
-Q(ord)-.1 E F0(.)A F1(copy\255f)108 568.8 Q(orward\255w)-.25 E(ord)-.1 E
-F0(Cop)144 580.8 Q 4.507(yt)-.1 G 2.007(he w)-4.507 F 2.007(ord follo)
--.1 F 2.007(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.008
-(.T)-.55 G 2.008(he w)-7.008 F 2.008(ord boundaries are the same as)-.1
-F F1 -.25(fo)4.508 G -.37(r-).25 G(ward\255w)144 592.8 Q(ord)-.1 E F0(.)
-A F1(yank \(C\255y\))108 604.8 Q F0 -1(Ya)144 616.8 S
+(copy\255backward\255w)108 204 Q(ord)-.1 E F0(Cop)144 216 Q 4.801(yt)-.1
+G 2.301(he w)-4.801 F 2.301(ord before point to the kill b)-.1 F(uf)-.2
+E(fer)-.25 E 7.301(.T)-.55 G 2.301(he w)-7.301 F 2.3
+(ord boundaries are the same as)-.1 F F1(back-)4.8 E(ward\255w)144 228 Q
+(ord)-.1 E F0(.)A F1(copy\255f)108 240 Q(orward\255w)-.25 E(ord)-.1 E F0
+(Cop)144 252 Q 4.507(yt)-.1 G 2.007(he w)-4.507 F 2.007(ord follo)-.1 F
+2.007(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.008(.T)-.55
+G 2.008(he w)-7.008 F 2.008(ord boundaries are the same as)-.1 F F1 -.25
+(fo)4.508 G -.37(r-).25 G(ward\255w)144 264 Q(ord)-.1 E F0(.)A F1
+(yank \(C\255y\))108 276 Q F0 -1(Ya)144 288 S
 (nk the top of the kill ring into the b)1 E(uf)-.2 E(fer at point.)-.25
-E F1(yank\255pop \(M\255y\))108 628.8 Q F0
-(Rotate the kill ring, and yank the ne)144 640.8 Q 2.5(wt)-.25 G 2.5
+E F1(yank\255pop \(M\255y\))108 300 Q F0
+(Rotate the kill ring, and yank the ne)144 312 Q 2.5(wt)-.25 G 2.5
 (op. Only)-2.5 F -.1(wo)2.5 G(rks follo).1 E(wing)-.25 E F1(yank)2.5 E
-F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 657.6 Q
-(guments)-.1 E(digit\255ar)108 669.6 Q
-(gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .642
-(Add this digit to the ar)144 681.6 R .641
-(gument already accumulating, or start a ne)-.18 F 3.141(wa)-.25 G -.18
-(rg)-3.141 G 3.141(ument. M\255\255).18 F .641(starts a ne)3.141 F(g-)
--.15 E(ati)144 693.6 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1
-(uni)108 705.6 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .778
-(This is another w)144 717.6 R .779(ay to specify an ar)-.1 F 3.279
-(gument. If)-.18 F .779(this command is follo)3.279 F .779
-(wed by one or more digits,)-.25 F 2.684
+F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 328.8 Q
+(guments)-.1 E(digit\255ar)108 340.8 Q
+(gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .367
+(Add this digit to the ar)144 352.8 R .367
+(gument already accumulating, or start a ne)-.18 F 2.867(wa)-.25 G -.18
+(rg)-2.867 G 2.867(ument. M\255\255).18 F .366(starts a ne)2.867 F -.05
+(ga)-.15 G(-).05 E(ti)144 364.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G
+(ument.).18 E F1(uni)108 376.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1
+E F0 .778(This is another w)144 388.8 R .779(ay to specify an ar)-.1 F
+3.279(gument. If)-.18 F .779(this command is follo)3.279 F .779
+(wed by one or more digits,)-.25 F 1.376
 (optionally with a leading minus sign, those digits de\214ne the ar)144
-729.6 R 5.184(gument. If)-.18 F 2.684(the command is)5.184 F
-(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(9)198.45 E 0 Cg EP
-%%Page: 10 10
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R(follo)
-144 84 Q .244(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E/F1 10
-/Times-Bold@0 SF(uni)2.744 E -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E
-F0(ag)2.744 E .244(ain ends the numeric ar)-.05 F .244(gument, b)-.18 F
-.245(ut is other)-.2 F(-)-.2 E .899(wise ignored.)144 96 R .898
+400.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
+412.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F1(uni)
+3.67 E -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0(ag)3.67 E 1.17
+(ain ends the numeric ar)-.05 F 1.17(gument, b)-.18 F 1.17(ut is other)
+-.2 F(-)-.2 E .899(wise ignored.)144 424.8 R .898
 (As a special case, if this command is immediately follo)5.899 F .898
 (wed by a character that is)-.25 F .243
-(neither a digit or minus sign, the ar)144 108 R .243
+(neither a digit or minus sign, the ar)144 436.8 R .243
 (gument count for the ne)-.18 F .243(xt command is multiplied by four)
--.15 F 5.243(.T)-.55 G(he)-5.243 E(ar)144 120 Q .378
+-.15 F 5.243(.T)-.55 G(he)-5.243 E(ar)144 448.8 Q .378
 (gument count is initially one, so e)-.18 F -.15(xe)-.15 G .378
 (cuting this function the \214rst time mak).15 F .378(es the ar)-.1 F
-.378(gument count)-.18 F(four)144 132 Q 2.5(,as)-.4 G(econd time mak)
+.378(gument count)-.18 F(four)144 460.8 Q 2.5(,as)-.4 G(econd time mak)
 -2.5 E(es the ar)-.1 E(gument count sixteen, and so on.)-.18 E F1
-(Completing)87 148.8 Q(complete \(T)108 160.8 Q(AB\))-.9 E F0 1.908
-(Attempt to perform completion on the te)144 172.8 R 1.908
+(Completing)87 477.6 Q(complete \(T)108 489.6 Q(AB\))-.9 E F0 1.908
+(Attempt to perform completion on the te)144 501.6 R 1.908
 (xt before point.)-.15 F 1.909(The actual completion performed is)6.909
-F(application-speci\214c.)144 184.8 Q F1(Bash)5.518 E F0 3.018(,f)C .518
+F(application-speci\214c.)144 513.6 Q F1(Bash)5.518 E F0 3.018(,f)C .518
 (or instance, attempts completion treating the te)-3.018 F .517
-(xt as a v)-.15 F .517(ariable \(if the)-.25 F(te)144 196.8 Q .656
+(xt as a v)-.15 F .517(ariable \(if the)-.25 F(te)144 525.6 Q .656
 (xt be)-.15 F .656(gins with)-.15 F F1($)3.156 E F0 .656
 (\), username \(if the te)B .656(xt be)-.15 F .656(gins with)-.15 F F1
 (~)3.156 E F0 .656(\), hostname \(if the te)B .656(xt be)-.15 F .656
 (gins with)-.15 F F1(@)3.157 E F0 .657(\), or)B .93
-(command \(including aliases and functions\) in turn.)144 208.8 R .929
+(command \(including aliases and functions\) in turn.)144 537.6 R .929
 (If none of these produces a match, \214lename)5.929 F 1.273
-(completion is attempted.)144 220.8 R F1(Gdb)6.273 E F0 3.773(,o)C 3.773
+(completion is attempted.)144 549.6 R F1(Gdb)6.273 E F0 3.773(,o)C 3.773
 (nt)-3.773 G 1.273(he other hand, allo)-3.773 F 1.273
-(ws completion of program functions and)-.25 F -.25(va)144 232.8 S(riab\
+(ws completion of program functions and)-.25 F -.25(va)144 561.6 S(riab\
 les, and only attempts \214lename completion under certain circumstance\
-s.).25 E F1(possible\255completions \(M\255?\))108 244.8 Q F0 .262
-(List the possible completions of the te)144 256.8 R .262
+s.).25 E F1(possible\255completions \(M\255?\))108 573.6 Q F0 .262
+(List the possible completions of the te)144 585.6 R .262
 (xt before point.)-.15 F .261
 (When displaying completions, readline sets)5.261 F 1.002
-(the number of columns used for display to the v)144 268.8 R 1.002
+(the number of columns used for display to the v)144 597.6 R 1.002
 (alue of)-.25 F F1(completion-display-width)3.502 E F0 3.502(,t)C 1.003
-(he v)-3.502 F 1.003(alue of)-.25 F(the en)144 280.8 Q(vironment v)-.4 E
-(ariable)-.25 E/F2 9/Times-Bold@0 SF(COLUMNS)2.5 E/F3 9/Times-Roman@0 SF
+(he v)-3.502 F 1.003(alue of)-.25 F(the en)144 609.6 Q(vironment v)-.4 E
+(ariable)-.25 E/F3 9/Times-Bold@0 SF(COLUMNS)2.5 E/F4 9/Times-Roman@0 SF
 (,)A F0(or the screen width, in that order)2.25 E(.)-.55 E F1
-(insert\255completions \(M\255*\))108 292.8 Q F0 .783
-(Insert all completions of the te)144 304.8 R .783
+(insert\255completions \(M\255*\))108 621.6 Q F0 .783
+(Insert all completions of the te)144 633.6 R .783
 (xt before point that w)-.15 F .783(ould ha)-.1 F 1.083 -.15(ve b)-.2 H
 .783(een generated by).15 F F1(possible\255com-)3.282 E(pletions)144
-316.8 Q F0(.)A F1(menu\255complete)108 328.8 Q F0 .928(Similar to)144
-340.8 R F1(complete)3.428 E F0 3.428(,b)C .929(ut replaces the w)-3.628
+645.6 Q F0(.)A F1(menu\255complete)108 657.6 Q F0 .928(Similar to)144
+669.6 R F1(complete)3.428 E F0 3.428(,b)C .929(ut replaces the w)-3.628
 F .929(ord to be completed with a single match from the list of)-.1 F
-1.194(possible completions.)144 352.8 R 1.194(Repeated e)6.194 F -.15
+1.194(possible completions.)144 681.6 R 1.194(Repeated e)6.194 F -.15
 (xe)-.15 G 1.194(cution of).15 F F1(menu\255complete)3.694 E F0 1.193
 (steps through the list of possible)3.694 F .828
-(completions, inserting each match in turn.)144 364.8 R .828
+(completions, inserting each match in turn.)144 693.6 R .828
 (At the end of the list of completions, the bell is rung)5.828 F .727
-(\(subject to the setting of)144 376.8 R F1(bell\255style)3.227 E F0
+(\(subject to the setting of)144 705.6 R F1(bell\255style)3.227 E F0
 3.227(\)a)C .727(nd the original te)-3.227 F .727(xt is restored.)-.15 F
-.727(An ar)5.727 F .727(gument of)-.18 F/F4 10/Times-Italic@0 SF(n)3.227
-E F0(mo)3.227 E -.15(ve)-.15 G(s).15 E F4(n)3.227 E F0 1.73
-(positions forw)144 388.8 R 1.73(ard in the list of matches; a ne)-.1 F
--.05(ga)-.15 G(ti).05 E 2.03 -.15(ve a)-.25 H -.18(rg).15 G 1.73
-(ument may be used to mo).18 F 2.03 -.15(ve b)-.15 H(ackw).15 E(ard)-.1
-E(through the list.)144 400.8 Q(This command is intended to be bound to)
-5 E F1 -.9(TA)2.5 G(B).9 E F0 2.5(,b)C(ut is unbound by def)-2.7 E
-(ault.)-.1 E F1(menu\255complete\255backward)108 412.8 Q F0 .82
-(Identical to)144 424.8 R F1(menu\255complete)3.32 E F0 3.32(,b)C .82
-(ut mo)-3.52 F -.15(ve)-.15 G 3.32(sb).15 G(ackw)-3.32 E .82
+.727(An ar)5.727 F .727(gument of)-.18 F F2(n)3.227 E F0(mo)3.227 E -.15
+(ve)-.15 G(s).15 E F2(n)3.227 E F0 1.73(positions forw)144 717.6 R 1.73
+(ard in the list of matches; a ne)-.1 F -.05(ga)-.15 G(ti).05 E 2.03
+-.15(ve a)-.25 H -.18(rg).15 G 1.73(ument may be used to mo).18 F 2.03
+-.15(ve b)-.15 H(ackw).15 E(ard)-.1 E(through the list.)144 729.6 Q
+(This command is intended to be bound to)5 E F1 -.9(TA)2.5 G(B).9 E F0
+2.5(,b)C(ut is unbound by def)-2.7 E(ault.)-.1 E(GNU Readline 6.3)72 768
+Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15 E(10)185.545 E 0 Cg EP
+%%Page: 11 11
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E/F1 10/Times-Bold@0 SF
+(menu\255complete\255backward)108 84 Q F0 .82(Identical to)144 96 R F1
+(menu\255complete)3.32 E F0 3.32(,b)C .82(ut mo)-3.52 F -.15(ve)-.15 G
+3.32(sb).15 G(ackw)-3.32 E .82
 (ard through the list of possible completions, as if)-.1 F F1
-(menu\255complete)144 436.8 Q F0(had been gi)2.5 E -.15(ve)-.25 G 2.5
-(nan).15 G -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve a)-.25 H -.18(rg)
-.15 G 2.5(ument. This).18 F(command is unbound by def)2.5 E(ault.)-.1 E
-F1(delete\255char\255or\255list)108 448.8 Q F0 .373
-(Deletes the character under the cursor if not at the be)144 460.8 R
-.374(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete-char)
-2.874 E F0(\).)A(If at the end of the line, beha)144 472.8 Q -.15(ve)-.2
-G 2.5(si).15 G(dentically to)-2.5 E F1(possible-completions)2.5 E F0(.)A
-F1 -.25(Ke)87 489.6 S(yboard Macr).25 E(os)-.18 E(start\255kbd\255macr)
-108 501.6 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833 E F0(Be)144 513.6 Q
+(menu\255complete)144 108 Q F0(had been gi)2.5 E -.15(ve)-.25 G 2.5(nan)
+.15 G -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve a)-.25 H -.18(rg).15 G
+2.5(ument. This).18 F(command is unbound by def)2.5 E(ault.)-.1 E F1
+(delete\255char\255or\255list)108 120 Q F0 .373
+(Deletes the character under the cursor if not at the be)144 132 R .374
+(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete-char)2.874 E
+F0(\).)A(If at the end of the line, beha)144 144 Q -.15(ve)-.2 G 2.5(si)
+.15 G(dentically to)-2.5 E F1(possible-completions)2.5 E F0(.)A F1 -.25
+(Ke)87 160.8 S(yboard Macr).25 E(os)-.18 E(start\255kbd\255macr)108
+172.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833 E F0(Be)144 184.8 Q
 (gin sa)-.15 E(ving the characters typed into the current k)-.2 E -.15
-(ey)-.1 G(board macro.).15 E F1(end\255kbd\255macr)108 525.6 Q 2.5(o\()
--.18 G(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 537.6 Q
+(ey)-.1 G(board macro.).15 E F1(end\255kbd\255macr)108 196.8 Q 2.5(o\()
+-.18 G(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 208.8 Q
 (ving the characters typed into the current k)-.2 E -.15(ey)-.1 G
 (board macro and store the de\214nition.).15 E F1
-(call\255last\255kbd\255macr)108 549.6 Q 2.5(o\()-.18 G(C\255x e\))-2.5
-E F0(Re-e)144 561.6 Q -.15(xe)-.15 G 1(cute the last k).15 F -.15(ey)-.1
+(call\255last\255kbd\255macr)108 220.8 Q 2.5(o\()-.18 G(C\255x e\))-2.5
+E F0(Re-e)144 232.8 Q -.15(xe)-.15 G 1(cute the last k).15 F -.15(ey)-.1
 G .999(board macro de\214ned, by making the characters in the macro app\
-ear as if).15 F .662(typed at the k)144 573.6 R -.15(ey)-.1 G(board.).15
+ear as if).15 F .662(typed at the k)144 244.8 R -.15(ey)-.1 G(board.).15
 E F1(print\255last\255kbd\255macr)5.663 E 3.163(o\()-.18 G(\))-3.163 E
 F0 .663(Print the last k)3.163 F -.15(ey)-.1 G .663
 (board macro de\214ned in a for).15 F(-)-.2 E(mat suitable for the)144
-585.6 Q F4(inputr)2.5 E(c)-.37 E F0(\214le.)2.5 E F1(Miscellaneous)87
-602.4 Q -.18(re)108 614.4 S<ad72>.18 E
+256.8 Q/F2 10/Times-Italic@0 SF(inputr)2.5 E(c)-.37 E F0(\214le.)2.5 E
+F1(Miscellaneous)87 273.6 Q -.18(re)108 285.6 S<ad72>.18 E
 (ead\255init\255\214le \(C\255x C\255r\))-.18 E F0 1.777
-(Read in the contents of the)144 626.4 R F4(inputr)4.277 E(c)-.37 E F0
+(Read in the contents of the)144 297.6 R F2(inputr)4.277 E(c)-.37 E F0
 1.776(\214le, and incorporate an)4.276 F 4.276(yb)-.15 G 1.776
 (indings or v)-4.276 F 1.776(ariable assignments)-.25 F(found there.)144
-638.4 Q F1(abort \(C\255g\))108 650.4 Q F0 3.248
-(Abort the current editing command and ring the terminal')144 662.4 R
+309.6 Q F1(abort \(C\255g\))108 321.6 Q F0 3.248
+(Abort the current editing command and ring the terminal')144 333.6 R
 5.749(sb)-.55 G 3.249(ell \(subject to the setting of)-5.749 F F1
-(bell\255style)144 674.4 Q F0(\).)A F1(do\255upper)108 686.4 Q
-(case\255v)-.18 E(ersion \(M\255a, M\255b, M\255)-.1 E F4(x)A F1 2.5(,.)
-C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 698.4 R F4(x)
+(bell\255style)144 345.6 Q F0(\).)A F1(do\255upper)108 357.6 Q
+(case\255v)-.18 E(ersion \(M\255a, M\255b, M\255)-.1 E F2(x)A F1 2.5(,.)
+C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 369.6 R F2(x)
 4.256 E F0 1.755(is lo)4.256 F 1.755
 (wercase, run the command that is bound to the corresponding)-.25 F
-(uppercase character)144 710.4 Q(.)-.55 E(GNU Readline 6.3)72 768 Q
-(2014 January 6)128.74 E(10)193.45 E 0 Cg EP
-%%Page: 11 11
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(pr)108 84 Q(e\214x\255meta \(ESC\))-.18 E F0
-(Metafy the ne)144 96 Q(xt character typed.)-.15 E/F2 9/Times-Bold@0 SF
-(ESC)5 E F1(f)2.25 E F0(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1
-(Meta\255f)2.5 E F0(.)A F1(undo \(C\255_, C\255x C\255u\))108 108 Q F0
-(Incremental undo, separately remembered for each line.)144 120 Q F1
--2.29 -.18(re v)108 132 T(ert\255line \(M\255r\)).08 E F0 1.095
-(Undo all changes made to this line.)144 144 R 1.095(This is lik)6.095 F
-3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
+(uppercase character)144 381.6 Q(.)-.55 E F1(pr)108 393.6 Q
+(e\214x\255meta \(ESC\))-.18 E F0(Metafy the ne)144 405.6 Q
+(xt character typed.)-.15 E/F3 9/Times-Bold@0 SF(ESC)5 E F1(f)2.25 E F0
+(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1(Meta\255f)2.5 E F0(.)A F1
+(undo \(C\255_, C\255x C\255u\))108 417.6 Q F0
+(Incremental undo, separately remembered for each line.)144 429.6 Q F1
+-2.29 -.18(re v)108 441.6 T(ert\255line \(M\255r\)).08 E F0 1.095
+(Undo all changes made to this line.)144 453.6 R 1.095(This is lik)6.095
+F 3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
 F0 1.095(command enough times to)3.595 F
-(return the line to its initial state.)144 156 Q F1
-(tilde\255expand \(M\255&\))108 168 Q F0(Perform tilde e)144 180 Q
+(return the line to its initial state.)144 465.6 Q F1
+(tilde\255expand \(M\255&\))108 477.6 Q F0(Perform tilde e)144 489.6 Q
 (xpansion on the current w)-.15 E(ord.)-.1 E F1
-(set\255mark \(C\255@, M\255<space>\))108 192 Q F0
-(Set the mark to the point.)144 204 Q(If a numeric ar)5 E
+(set\255mark \(C\255@, M\255<space>\))108 501.6 Q F0
+(Set the mark to the point.)144 513.6 Q(If a numeric ar)5 E
 (gument is supplied, the mark is set to that position.)-.18 E F1
-(exchange\255point\255and\255mark \(C\255x C\255x\))108 216 Q F0(Sw)144
-228 Q .283(ap the point with the mark.)-.1 F .283
+(exchange\255point\255and\255mark \(C\255x C\255x\))108 525.6 Q F0(Sw)
+144 537.6 Q .283(ap the point with the mark.)-.1 F .283
 (The current cursor position is set to the sa)5.283 F -.15(ve)-.2 G
 2.782(dp).15 G .282(osition, and the old)-2.782 F(cursor position is sa)
-144 240 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E F1
-(character\255sear)108 252 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144 264 S
-.535(haracter is read and point is mo)-3.035 F -.15(ve)-.15 G 3.035(dt)
-.15 G 3.035(ot)-3.035 G .535(he ne)-3.035 F .535
+144 549.6 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E F1
+(character\255sear)108 561.6 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144
+573.6 S .535(haracter is read and point is mo)-3.035 F -.15(ve)-.15 G
+3.035(dt).15 G 3.035(ot)-3.035 G .535(he ne)-3.035 F .535
 (xt occurrence of that character)-.15 F 5.536(.A)-.55 G(ne)-2.5 E -.05
 (ga)-.15 G(ti).05 E .836 -.15(ve c)-.25 H(ount).15 E(searches for pre)
-144 276 Q(vious occurrences.)-.25 E F1(character\255sear)108 288 Q
-(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 300 S 1.044
+144 585.6 Q(vious occurrences.)-.25 E F1(character\255sear)108 597.6 Q
+(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 609.6 S 1.044
 (haracter is read and point is mo)-3.544 F -.15(ve)-.15 G 3.544(dt).15 G
 3.544(ot)-3.544 G 1.044(he pre)-3.544 F 1.044
 (vious occurrence of that character)-.25 F 6.043(.A)-.55 G(ne)-2.5 E
 -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G
-(count searches for subsequent occurrences.)144 312 Q F1
-(skip\255csi\255sequence)108 324 Q F0 1.826
-(Read enough characters to consume a multi-k)144 336 R 2.126 -.15(ey s)
--.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)-.1 G
-4.327(sl).15 G(ik)-4.327 E(e)-.1 E .791(Home and End.)144 348 R .791
-(Such sequences be)5.791 F .791
+(count searches for subsequent occurrences.)144 621.6 Q F1
+(skip\255csi\255sequence)108 633.6 Q F0 1.826
+(Read enough characters to consume a multi-k)144 645.6 R 2.126 -.15
+(ey s)-.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)
+-.1 G 4.327(sl).15 G(ik)-4.327 E(e)-.1 E .791(Home and End.)144 657.6 R
+.791(Such sequences be)5.791 F .791
 (gin with a Control Sequence Indicator \(CSI\), usually ESC\255[.)-.15 F
-.331(If this sequence is bound to "\\[", k)144 360 R -.15(ey)-.1 G 2.831
-(sp).15 G .331(roducing such sequences will ha)-2.831 F .632 -.15(ve n)
--.2 H 2.832(oe).15 G -.25(ff)-2.832 G .332(ect unless e).25 F(xplic-)
--.15 E .026(itly bound to a readline command, instead of inserting stra\
-y characters into the editing b)144 372 R(uf)-.2 E(fer)-.25 E 5.026(.T)
--.55 G(his)-5.026 E(is unbound by def)144 384 Q(ault, b)-.1 E
+.331(If this sequence is bound to "\\[", k)144 669.6 R -.15(ey)-.1 G
+2.831(sp).15 G .331(roducing such sequences will ha)-2.831 F .632 -.15
+(ve n)-.2 H 2.832(oe).15 G -.25(ff)-2.832 G .332(ect unless e).25 F
+(xplic-)-.15 E .026(itly bound to a readline command, instead of insert\
+ing stray characters into the editing b)144 681.6 R(uf)-.2 E(fer)-.25 E
+5.026(.T)-.55 G(his)-5.026 E(is unbound by def)144 693.6 Q(ault, b)-.1 E
 (ut usually bound to ESC\255[.)-.2 E F1(insert\255comment \(M\255#\))108
-396 Q F0 -.4(Wi)144 408 S .48(thout a numeric ar).4 F .48(gument, the v)
--.18 F .481(alue of the readline)-.25 F F1(comment\255begin)2.981 E F0
--.25(va)2.981 G .481(riable is inserted at the).25 F(be)144 420 Q .098
-(ginning of the current line.)-.15 F .098(If a numeric ar)5.098 F .097
-(gument is supplied, this command acts as a toggle:)-.18 F(if)5.097 E
-.321(the characters at the be)144 432 R .321
-(ginning of the line do not match the v)-.15 F .321(alue of)-.25 F F1
-(comment\255begin)2.821 E F0 2.822(,t)C .322(he v)-2.822 F .322(alue is)
--.25 F 1.014(inserted, otherwise the characters in)144 444 R F1
-(comment-begin)3.514 E F0 1.014(are deleted from the be)3.514 F 1.013
-(ginning of the line.)-.15 F 1.468
-(In either case, the line is accepted as if a ne)144 456 R 1.468
+705.6 Q F0 -.4(Wi)144 717.6 S .48(thout a numeric ar).4 F .48
+(gument, the v)-.18 F .481(alue of the readline)-.25 F F1
+(comment\255begin)2.981 E F0 -.25(va)2.981 G .481
+(riable is inserted at the).25 F(be)144 729.6 Q .245
+(ginning of the current line.)-.15 F .245(If a numeric ar)5.245 F .244
+(gument is supplied, this command acts as a toggle: if)-.18 F
+(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15
+E(11)185.545 E 0 Cg EP
+%%Page: 12 12
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E .321
+(the characters at the be)144 84 R .321
+(ginning of the line do not match the v)-.15 F .321(alue of)-.25 F/F1 10
+/Times-Bold@0 SF(comment\255begin)2.821 E F0 2.822(,t)C .322(he v)-2.822
+F .322(alue is)-.25 F 1.014(inserted, otherwise the characters in)144 96
+R F1(comment-begin)3.514 E F0 1.014(are deleted from the be)3.514 F
+1.013(ginning of the line.)-.15 F 1.468
+(In either case, the line is accepted as if a ne)144 108 R 1.468
 (wline had been typed.)-.25 F 1.469(The def)6.469 F 1.469(ault v)-.1 F
-1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 468 Q F0(mak)
+1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 120 Q F0(mak)
 2.983 E .483(es the current line a shell comment.)-.1 F .483
 (If a numeric ar)5.483 F .482(gument causes the comment)-.18 F
-(character to be remo)144 480 Q -.15(ve)-.15 G(d, the line will be e).15
-E -.15(xe)-.15 G(cuted by the shell.).15 E F1(dump\255functions)108 492
-Q F0 .626(Print all of the functions and their k)144 504 R .926 -.15
+(character to be remo)144 132 Q -.15(ve)-.15 G(d, the line will be e).15
+E -.15(xe)-.15 G(cuted by the shell.).15 E F1(dump\255functions)108 144
+Q F0 .626(Print all of the functions and their k)144 156 R .926 -.15
 (ey b)-.1 H .627(indings to the readline output stream.).15 F .627
 (If a numeric ar)5.627 F(gu-)-.18 E
-(ment is supplied, the output is formatted in such a w)144 516 Q
-(ay that it can be made part of an)-.1 E/F3 10/Times-Italic@0 SF(inputr)
-2.5 E(c)-.37 E F0(\214le.)2.5 E F1(dump\255v)108 528 Q(ariables)-.1 E F0
-.283(Print all of the settable v)144 540 R .283(ariables and their v)
+(ment is supplied, the output is formatted in such a w)144 168 Q
+(ay that it can be made part of an)-.1 E/F2 10/Times-Italic@0 SF(inputr)
+2.5 E(c)-.37 E F0(\214le.)2.5 E F1(dump\255v)108 180 Q(ariables)-.1 E F0
+.283(Print all of the settable v)144 192 R .283(ariables and their v)
 -.25 F .283(alues to the readline output stream.)-.25 F .283
 (If a numeric ar)5.283 F(gu-)-.18 E
-(ment is supplied, the output is formatted in such a w)144 552 Q
-(ay that it can be made part of an)-.1 E F3(inputr)2.5 E(c)-.37 E F0
-(\214le.)2.5 E F1(dump\255macr)108 564 Q(os)-.18 E F0 .592
-(Print all of the readline k)144 576 R .892 -.15(ey s)-.1 H .592
+(ment is supplied, the output is formatted in such a w)144 204 Q
+(ay that it can be made part of an)-.1 E F2(inputr)2.5 E(c)-.37 E F0
+(\214le.)2.5 E F1(dump\255macr)108 216 Q(os)-.18 E F0 .592
+(Print all of the readline k)144 228 R .892 -.15(ey s)-.1 H .592
 (equences bound to macros and the strings the).15 F 3.093(yo)-.15 G
-3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 588 Q
+3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 240 Q
 .528(gument is supplied, the output is formatted in such a w)-.18 F .528
-(ay that it can be made part of an)-.1 F F3(inputr)3.027 E(c)-.37 E F0
-(\214le.)144 600 Q F1(emacs\255editing\255mode \(C\255e\))108 612 Q F0
-(When in)144 624 Q F1(vi)2.5 E F0(command mode, this causes a switch to)
+(ay that it can be made part of an)-.1 F F2(inputr)3.027 E(c)-.37 E F0
+(\214le.)144 252 Q F1(emacs\255editing\255mode \(C\255e\))108 264 Q F0
+(When in)144 276 Q F1(vi)2.5 E F0(command mode, this causes a switch to)
 2.5 E F1(emacs)2.5 E F0(editing mode.)2.5 E F1
-(vi\255editing\255mode \(M\255C\255j\))108 636 Q F0(When in)144 648 Q F1
+(vi\255editing\255mode \(M\255C\255j\))108 288 Q F0(When in)144 300 Q F1
 (emacs)2.5 E F0(editing mode, this causes a switch to)2.5 E F1(vi)2.5 E
-F0(editing mode.)2.5 E/F4 10.95/Times-Bold@0 SF(DEF)72 664.8 Q -.548(AU)
+F0(editing mode.)2.5 E/F3 10.95/Times-Bold@0 SF(DEF)72 316.8 Q -.548(AU)
 -.986 G 2.014 -1.007(LT K).548 H(EY BINDINGS)1.007 E F0 .064(The follo)
-108 676.8 R .064(wing is a list of the def)-.25 F .064
+108 328.8 R .064(wing is a list of the def)-.25 F .064
 (ault emacs and vi bindings.)-.1 F .065
 (Characters with the eighth bit set are written as)5.065 F .527
-(M\255<character>, and are referred to as)108 688.8 R F3(meta\214ed)
+(M\255<character>, and are referred to as)108 340.8 R F2(meta\214ed)
 3.407 E F0 3.027(characters. The)3.797 F .527
 (printable ASCII characters not mentioned)3.027 F 1.115
-(in the list of emacs standard bindings are bound to the)108 700.8 R F1
+(in the list of emacs standard bindings are bound to the)108 352.8 R F1
 (self\255insert)3.615 E F0 1.116(function, which just inserts the gi)
 3.615 F -.15(ve)-.25 G(n).15 E .945(character into the input line.)108
-712.8 R .945(In vi insertion mode, all characters not speci\214cally me\
-ntioned are bound to)5.945 F F1(self\255insert)108 724.8 Q F0 5.358(.C)C
-.358(haracters assigned to signal generation by)-5.358 F F3(stty)2.859 E
+364.8 R .945(In vi insertion mode, all characters not speci\214cally me\
+ntioned are bound to)5.945 F F1(self\255insert)108 376.8 Q F0 5.358(.C)C
+.358(haracters assigned to signal generation by)-5.358 F F2(stty)2.859 E
 F0 .359(\(1\) or the terminal dri).32 F -.15(ve)-.25 G 1.159 -.4(r, s)
-.15 H .359(uch as C-Z or C-C,).4 F(GNU Readline 6.3)72 768 Q
-(2014 January 6)128.74 E(11)193.45 E 0 Cg EP
-%%Page: 12 12
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R .188
-(retain that function.)108 84 R .188(Upper and lo)5.188 F .188(wer case\
- meta\214ed characters are bound to the same function in the emacs)-.25
-F .304(mode meta k)108 96 R -.15(ey)-.1 G 2.804(map. The).15 F .305(rem\
-aining characters are unbound, which causes readline to ring the bell \
-\(subject)2.804 F(to the setting of the)108 108 Q/F1 10/Times-Bold@0 SF
-(bell\255style)2.5 E F0 -.25(va)2.5 G(riable\).).25 E F1(Emacs Mode)87
-124.8 Q F0(Emacs Standard bindings)151.2 136.8 Q 2.5("C-@" set-mark)
-151.2 160.8 R 2.5("C-A" be)151.2 172.8 R(ginning-of-line)-.15 E 2.5
-("C-B" backw)151.2 184.8 R(ard-char)-.1 E 2.5("C-D" delete-char)151.2
-196.8 R 2.5("C-E" end-of-line)151.2 208.8 R 2.5("C-F" forw)151.2 220.8 R
-(ard-char)-.1 E 2.5("C-G" abort)151.2 232.8 R 2.5("C-H" backw)151.2
-244.8 R(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 256.8 R 2.5
-("C-J" accept-line)151.2 268.8 R 2.5("C-K" kill-line)151.2 280.8 R 2.5
-("C-L" clear)151.2 292.8 R(-screen)-.2 E 2.5("C-M" accept-line)151.2
-304.8 R 2.5("C-N" ne)151.2 316.8 R(xt-history)-.15 E 2.5("C-P" pre)151.2
-328.8 R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 340.8 R 2.5
-("C-R" re)151.2 352.8 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
-("C-S" forw)151.2 364.8 R(ard-search-history)-.1 E 2.5
-("C-T" transpose-chars)151.2 376.8 R 2.5("C-U" unix-line-discard)151.2
-388.8 R 2.5("C-V" quoted-insert)151.2 400.8 R 2.5("C-W" unix-w)151.2
-412.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 424.8 R 2.5
-("C-]" character)151.2 436.8 R(-search)-.2 E 2.5("C-_" undo)151.2 448.8
-R 3.333("")151.2 460.8 S(to "/")-.833 E(self-insert)5 E 2.5("0" to)151.2
-472.8 R 2.5("9" self-insert)2.5 F 2.5(":" to)151.2 484.8 R 2.5
-("~" self-insert)2.5 F 2.5("C-?" backw)151.2 496.8 R(ard-delete-char)-.1
-E(Emacs Meta bindings)151.2 513.6 Q 2.5("M-C-G" abort)151.2 537.6 R 2.5
-("M-C-H" backw)151.2 549.6 R(ard-kill-w)-.1 E(ord)-.1 E 2.5
-("M-C-I" tab-insert)151.2 561.6 R 2.5("M-C-J" vi-editing-mode)151.2
-573.6 R 2.5("M-C-M" vi-editing-mode)151.2 585.6 R 2.5("M-C-R" re)151.2
-597.6 R -.15(ve)-.25 G(rt-line).15 E 2.5("M-C-Y" yank-nth-ar)151.2 609.6
-R(g)-.18 E 2.5("M-C-[" complete)151.2 621.6 R 2.5("M-C-]" character)
-151.2 633.6 R(-search-backw)-.2 E(ard)-.1 E 2.5("M-space" set-mark)151.2
-645.6 R 2.5("M-#" insert-comment)151.2 657.6 R 2.5("M-&" tilde-e)151.2
-669.6 R(xpand)-.15 E 2.5("M-*" insert-completions)151.2 681.6 R 2.5
-("M--" digit-ar)151.2 693.6 R(gument)-.18 E 2.5("M-." yank-last-ar)151.2
-705.6 R(g)-.18 E 2.5("M-0" digit-ar)151.2 717.6 R(gument)-.18 E 2.5
-("M-1" digit-ar)151.2 729.6 R(gument)-.18 E(GNU Readline 6.3)72 768 Q
-(2014 January 6)128.74 E(12)193.45 E 0 Cg EP
+.15 H .359(uch as C-Z or C-C,).4 F .188(retain that function.)108 388.8
+R .188(Upper and lo)5.188 F .188(wer case meta\214ed characters are bou\
+nd to the same function in the emacs)-.25 F .304(mode meta k)108 400.8 R
+-.15(ey)-.1 G 2.804(map. The).15 F .305(remaining characters are unboun\
+d, which causes readline to ring the bell \(subject)2.804 F
+(to the setting of the)108 412.8 Q F1(bell\255style)2.5 E F0 -.25(va)2.5
+G(riable\).).25 E F1(Emacs Mode)87 429.6 Q F0(Emacs Standard bindings)
+151.2 441.6 Q 2.5("C-@" set-mark)151.2 465.6 R 2.5("C-A" be)151.2 477.6
+R(ginning-of-line)-.15 E 2.5("C-B" backw)151.2 489.6 R(ard-char)-.1 E
+2.5("C-D" delete-char)151.2 501.6 R 2.5("C-E" end-of-line)151.2 513.6 R
+2.5("C-F" forw)151.2 525.6 R(ard-char)-.1 E 2.5("C-G" abort)151.2 537.6
+R 2.5("C-H" backw)151.2 549.6 R(ard-delete-char)-.1 E 2.5
+("C-I" complete)151.2 561.6 R 2.5("C-J" accept-line)151.2 573.6 R 2.5
+("C-K" kill-line)151.2 585.6 R 2.5("C-L" clear)151.2 597.6 R(-screen)-.2
+E 2.5("C-M" accept-line)151.2 609.6 R 2.5("C-N" ne)151.2 621.6 R
+(xt-history)-.15 E 2.5("C-P" pre)151.2 633.6 R(vious-history)-.25 E 2.5
+("C-Q" quoted-insert)151.2 645.6 R 2.5("C-R" re)151.2 657.6 R -.15(ve)
+-.25 G(rse-search-history).15 E 2.5("C-S" forw)151.2 669.6 R
+(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 681.6 R 2.5
+("C-U" unix-line-discard)151.2 693.6 R 2.5("C-V" quoted-insert)151.2
+705.6 R 2.5("C-W" unix-w)151.2 717.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)
+151.2 729.6 R(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G
+(mber 19).15 E(12)185.545 E 0 Cg EP
 %%Page: 13 13
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
-("M-2" digit-ar)151.2 84 R(gument)-.18 E 2.5("M-3" digit-ar)151.2 96 R
-(gument)-.18 E 2.5("M-4" digit-ar)151.2 108 R(gument)-.18 E 2.5
-("M-5" digit-ar)151.2 120 R(gument)-.18 E 2.5("M-6" digit-ar)151.2 132 R
-(gument)-.18 E 2.5("M-7" digit-ar)151.2 144 R(gument)-.18 E 2.5
-("M-8" digit-ar)151.2 156 R(gument)-.18 E 2.5("M-9" digit-ar)151.2 168 R
-(gument)-.18 E 2.5("M-<" be)151.2 180 R(ginning-of-history)-.15 E 2.5
-("M-=" possible-completions)151.2 192 R 2.5("M->" end-of-history)151.2
-204 R 2.5("M-?" possible-completions)151.2 216 R 2.5("M-B" backw)151.2
-228 R(ard-w)-.1 E(ord)-.1 E 2.5("M-C" capitalize-w)151.2 240 R(ord)-.1 E
-2.5("M-D" kill-w)151.2 252 R(ord)-.1 E 2.5("M-F" forw)151.2 264 R(ard-w)
--.1 E(ord)-.1 E 2.5("M-L" do)151.2 276 R(wncase-w)-.25 E(ord)-.1 E 2.5
-("M-N" non-incremental-forw)151.2 288 R(ard-search-history)-.1 E 2.5
-("M-P" non-incremental-re)151.2 300 R -.15(ve)-.25 G(rse-search-history)
-.15 E 2.5("M-R" re)151.2 312 R -.15(ve)-.25 G(rt-line).15 E 2.5
-("M-T" transpose-w)151.2 324 R(ords)-.1 E 2.5("M-U" upcase-w)151.2 336 R
-(ord)-.1 E 2.5("M-Y" yank-pop)151.2 348 R 2.5
-("M-\\" delete-horizontal-space)151.2 360 R 2.5("M-~" tilde-e)151.2 372
-R(xpand)-.15 E 2.5("M-C-?" backw)151.2 384 R(ard-kill-w)-.1 E(ord)-.1 E
-2.5("M-_" yank-last-ar)151.2 396 R(g)-.18 E(Emacs Control-X bindings)
-151.2 412.8 Q 2.5("C-XC-G" abort)151.2 436.8 R 2.5
-("C-XC-R" re-read-init-\214le)151.2 448.8 R 2.5("C-XC-U" undo)151.2
-460.8 R 2.5("C-XC-X" e)151.2 472.8 R(xchange-point-and-mark)-.15 E 2.5
-("C-X\(" start-kbd-macro)151.2 484.8 R 2.5("C-X\)" end-kbd-macro)151.2
-496.8 R 2.5("C-XE" call-last-kbd-macro)151.2 508.8 R 2.5("C-XC-?" backw)
-151.2 520.8 R(ard-kill-line)-.1 E/F1 10/Times-Bold@0 SF
-(VI Mode bindings)87 549.6 Q F0(VI Insert Mode functions)151.2 561.6 Q
-2.5("C-D" vi-eof-maybe)151.2 585.6 R 2.5("C-H" backw)151.2 597.6 R
-(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 609.6 R 2.5
-("C-J" accept-line)151.2 621.6 R 2.5("C-M" accept-line)151.2 633.6 R 2.5
-("C-R" re)151.2 645.6 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
-("C-S" forw)151.2 657.6 R(ard-search-history)-.1 E 2.5
-("C-T" transpose-chars)151.2 669.6 R 2.5("C-U" unix-line-discard)151.2
-681.6 R 2.5("C-V" quoted-insert)151.2 693.6 R 2.5("C-W" unix-w)151.2
-705.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 717.6 R 2.5("C-[" vi-mo)
-151.2 729.6 R -.15(ve)-.15 G(ment-mode).15 E(GNU Readline 6.3)72 768 Q
-(2014 January 6)128.74 E(13)193.45 E 0 Cg EP
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("C-]" character)
+151.2 84 R(-search)-.2 E 2.5("C-_" undo)151.2 96 R 3.333("")151.2 108 S
+(to "/")-.833 E(self-insert)5 E 2.5("0" to)151.2 120 R 2.5
+("9" self-insert)2.5 F 2.5(":" to)151.2 132 R 2.5("~" self-insert)2.5 F
+2.5("C-?" backw)151.2 144 R(ard-delete-char)-.1 E(Emacs Meta bindings)
+151.2 160.8 Q 2.5("M-C-G" abort)151.2 184.8 R 2.5("M-C-H" backw)151.2
+196.8 R(ard-kill-w)-.1 E(ord)-.1 E 2.5("M-C-I" tab-insert)151.2 208.8 R
+2.5("M-C-J" vi-editing-mode)151.2 220.8 R 2.5("M-C-M" vi-editing-mode)
+151.2 232.8 R 2.5("M-C-R" re)151.2 244.8 R -.15(ve)-.25 G(rt-line).15 E
+2.5("M-C-Y" yank-nth-ar)151.2 256.8 R(g)-.18 E 2.5("M-C-[" complete)
+151.2 268.8 R 2.5("M-C-]" character)151.2 280.8 R(-search-backw)-.2 E
+(ard)-.1 E 2.5("M-space" set-mark)151.2 292.8 R 2.5
+("M-#" insert-comment)151.2 304.8 R 2.5("M-&" tilde-e)151.2 316.8 R
+(xpand)-.15 E 2.5("M-*" insert-completions)151.2 328.8 R 2.5
+("M--" digit-ar)151.2 340.8 R(gument)-.18 E 2.5("M-." yank-last-ar)151.2
+352.8 R(g)-.18 E 2.5("M-0" digit-ar)151.2 364.8 R(gument)-.18 E 2.5
+("M-1" digit-ar)151.2 376.8 R(gument)-.18 E 2.5("M-2" digit-ar)151.2
+388.8 R(gument)-.18 E 2.5("M-3" digit-ar)151.2 400.8 R(gument)-.18 E 2.5
+("M-4" digit-ar)151.2 412.8 R(gument)-.18 E 2.5("M-5" digit-ar)151.2
+424.8 R(gument)-.18 E 2.5("M-6" digit-ar)151.2 436.8 R(gument)-.18 E 2.5
+("M-7" digit-ar)151.2 448.8 R(gument)-.18 E 2.5("M-8" digit-ar)151.2
+460.8 R(gument)-.18 E 2.5("M-9" digit-ar)151.2 472.8 R(gument)-.18 E 2.5
+("M-<" be)151.2 484.8 R(ginning-of-history)-.15 E 2.5
+("M-=" possible-completions)151.2 496.8 R 2.5("M->" end-of-history)151.2
+508.8 R 2.5("M-?" possible-completions)151.2 520.8 R 2.5("M-B" backw)
+151.2 532.8 R(ard-w)-.1 E(ord)-.1 E 2.5("M-C" capitalize-w)151.2 544.8 R
+(ord)-.1 E 2.5("M-D" kill-w)151.2 556.8 R(ord)-.1 E 2.5("M-F" forw)151.2
+568.8 R(ard-w)-.1 E(ord)-.1 E 2.5("M-L" do)151.2 580.8 R(wncase-w)-.25 E
+(ord)-.1 E 2.5("M-N" non-incremental-forw)151.2 592.8 R
+(ard-search-history)-.1 E 2.5("M-P" non-incremental-re)151.2 604.8 R
+-.15(ve)-.25 G(rse-search-history).15 E 2.5("M-R" re)151.2 616.8 R -.15
+(ve)-.25 G(rt-line).15 E 2.5("M-T" transpose-w)151.2 628.8 R(ords)-.1 E
+2.5("M-U" upcase-w)151.2 640.8 R(ord)-.1 E 2.5("M-Y" yank-pop)151.2
+652.8 R 2.5("M-\\" delete-horizontal-space)151.2 664.8 R 2.5
+("M-~" tilde-e)151.2 676.8 R(xpand)-.15 E 2.5("M-C-?" backw)151.2 688.8
+R(ard-kill-w)-.1 E(ord)-.1 E 2.5("M-_" yank-last-ar)151.2 700.8 R(g)-.18
+E(Emacs Control-X bindings)151.2 717.6 Q(GNU Readline 6.3)72 768 Q
+(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15 E(13)185.545 E 0 Cg EP
 %%Page: 14 14
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
-("C-_" undo)151.2 84 R 3.333("")151.2 96 S(to "~")-.833 E(self-insert)5
-E 2.5("C-?" backw)151.2 108 R(ard-delete-char)-.1 E
-(VI Command Mode functions)151.2 124.8 Q 2.5("C-D" vi-eof-maybe)151.2
-148.8 R 2.5("C-E" emacs-editing-mode)151.2 160.8 R 2.5("C-G" abort)151.2
-172.8 R 2.5("C-H" backw)151.2 184.8 R(ard-char)-.1 E 2.5
-("C-J" accept-line)151.2 196.8 R 2.5("C-K" kill-line)151.2 208.8 R 2.5
-("C-L" clear)151.2 220.8 R(-screen)-.2 E 2.5("C-M" accept-line)151.2
-232.8 R 2.5("C-N" ne)151.2 244.8 R(xt-history)-.15 E 2.5("C-P" pre)151.2
-256.8 R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 268.8 R 2.5
-("C-R" re)151.2 280.8 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
-("C-S" forw)151.2 292.8 R(ard-search-history)-.1 E 2.5
-("C-T" transpose-chars)151.2 304.8 R 2.5("C-U" unix-line-discard)151.2
-316.8 R 2.5("C-V" quoted-insert)151.2 328.8 R 2.5("C-W" unix-w)151.2
-340.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 352.8 R 2.5("C-_" vi-undo)
-151.2 364.8 R -4.166 3.333("" f)151.2 376.8 T(orw)-3.333 E(ard-char)-.1
-E 2.5("#" insert-comment)151.2 388.8 R 2.5("$" end-of-line)151.2 400.8 R
-2.5("%" vi-match)151.2 412.8 R 2.5("&" vi-tilde-e)151.2 424.8 R(xpand)
--.15 E 2.5("*" vi-complete)151.2 436.8 R 2.5("+" ne)151.2 448.8 R
-(xt-history)-.15 E 2.5("," vi-char)151.2 460.8 R(-search)-.2 E 2.5
-("-" pre)151.2 472.8 R(vious-history)-.25 E 2.5("." vi-redo)151.2 484.8
-R 2.5("/" vi-search)151.2 496.8 R 2.5("0" be)151.2 508.8 R
-(ginning-of-line)-.15 E("1" to "9")151.2 520.8 Q(vi-ar)5 E(g-digit)-.18
-E 2.5(";" vi-char)151.2 532.8 R(-search)-.2 E 2.5("=" vi-complete)151.2
-544.8 R 2.5("?" vi-search)151.2 556.8 R 2.5("A" vi-append-eol)151.2
-568.8 R 2.5("B" vi-pre)151.2 580.8 R(v-w)-.25 E(ord)-.1 E 2.5
-("C" vi-change-to)151.2 592.8 R 2.5("D" vi-delete-to)151.2 604.8 R 2.5
-("E" vi-end-w)151.2 616.8 R(ord)-.1 E 2.5("F" vi-char)151.2 628.8 R
-(-search)-.2 E 2.5("G" vi-fetch-history)151.2 640.8 R 2.5
-("I" vi-insert-be)151.2 652.8 R(g)-.15 E 2.5("N" vi-search-ag)151.2
-664.8 R(ain)-.05 E 2.5("P" vi-put)151.2 676.8 R 2.5("R" vi-replace)151.2
-688.8 R 2.5("S" vi-subst)151.2 700.8 R 2.5("T" vi-char)151.2 712.8 R
-(-search)-.2 E 2.5("U" re)151.2 724.8 R -.15(ve)-.25 G(rt-line).15 E
-(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(14)193.45 E 0 Cg EP
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("C-XC-G" abort)151.2
+84 R 2.5("C-XC-R" re-read-init-\214le)151.2 96 R 2.5("C-XC-U" undo)151.2
+108 R 2.5("C-XC-X" e)151.2 120 R(xchange-point-and-mark)-.15 E 2.5
+("C-X\(" start-kbd-macro)151.2 132 R 2.5("C-X\)" end-kbd-macro)151.2 144
+R 2.5("C-XE" call-last-kbd-macro)151.2 156 R 2.5("C-XC-?" backw)151.2
+168 R(ard-kill-line)-.1 E/F1 10/Times-Bold@0 SF(VI Mode bindings)87
+196.8 Q F0(VI Insert Mode functions)151.2 208.8 Q 2.5
+("C-D" vi-eof-maybe)151.2 232.8 R 2.5("C-H" backw)151.2 244.8 R
+(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 256.8 R 2.5
+("C-J" accept-line)151.2 268.8 R 2.5("C-M" accept-line)151.2 280.8 R 2.5
+("C-R" re)151.2 292.8 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
+("C-S" forw)151.2 304.8 R(ard-search-history)-.1 E 2.5
+("C-T" transpose-chars)151.2 316.8 R 2.5("C-U" unix-line-discard)151.2
+328.8 R 2.5("C-V" quoted-insert)151.2 340.8 R 2.5("C-W" unix-w)151.2
+352.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 364.8 R 2.5("C-[" vi-mo)
+151.2 376.8 R -.15(ve)-.15 G(ment-mode).15 E 2.5("C-_" undo)151.2 388.8
+R 3.333("")151.2 400.8 S(to "~")-.833 E(self-insert)5 E 2.5("C-?" backw)
+151.2 412.8 R(ard-delete-char)-.1 E(VI Command Mode functions)151.2
+429.6 Q 2.5("C-D" vi-eof-maybe)151.2 453.6 R 2.5
+("C-E" emacs-editing-mode)151.2 465.6 R 2.5("C-G" abort)151.2 477.6 R
+2.5("C-H" backw)151.2 489.6 R(ard-char)-.1 E 2.5("C-J" accept-line)151.2
+501.6 R 2.5("C-K" kill-line)151.2 513.6 R 2.5("C-L" clear)151.2 525.6 R
+(-screen)-.2 E 2.5("C-M" accept-line)151.2 537.6 R 2.5("C-N" ne)151.2
+549.6 R(xt-history)-.15 E 2.5("C-P" pre)151.2 561.6 R(vious-history)-.25
+E 2.5("C-Q" quoted-insert)151.2 573.6 R 2.5("C-R" re)151.2 585.6 R -.15
+(ve)-.25 G(rse-search-history).15 E 2.5("C-S" forw)151.2 597.6 R
+(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 609.6 R 2.5
+("C-U" unix-line-discard)151.2 621.6 R 2.5("C-V" quoted-insert)151.2
+633.6 R 2.5("C-W" unix-w)151.2 645.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)
+151.2 657.6 R 2.5("C-_" vi-undo)151.2 669.6 R -4.166 3.333("" f)151.2
+681.6 T(orw)-3.333 E(ard-char)-.1 E 2.5("#" insert-comment)151.2 693.6 R
+2.5("$" end-of-line)151.2 705.6 R 2.5("%" vi-match)151.2 717.6 R 2.5
+("&" vi-tilde-e)151.2 729.6 R(xpand)-.15 E(GNU Readline 6.3)72 768 Q
+(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15 E(14)185.545 E 0 Cg EP
 %%Page: 15 15
 %%BeginPageSetup
 BP
 %%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
-("W" vi-ne)151.2 84 R(xt-w)-.15 E(ord)-.1 E 2.5("X" backw)151.2 96 R
-(ard-delete-char)-.1 E 2.5("Y" vi-yank-to)151.2 108 R 2.5
-("\\" vi-complete)151.2 120 R 2.5("^" vi-\214rst-print)151.2 132 R 2.5
-("_" vi-yank-ar)151.2 144 R(g)-.18 E 2.5("`" vi-goto-mark)151.2 156 R
-2.5("a" vi-append-mode)151.2 168 R 2.5("b" vi-pre)151.2 180 R(v-w)-.25 E
-(ord)-.1 E 2.5("c" vi-change-to)151.2 192 R 2.5("d" vi-delete-to)151.2
-204 R 2.5("e" vi-end-w)151.2 216 R(ord)-.1 E 2.5("f" vi-char)151.2 228 R
-(-search)-.2 E 2.5("h" backw)151.2 240 R(ard-char)-.1 E 2.5
-("i" vi-insertion-mode)151.2 252 R 2.5("j" ne)151.2 264 R(xt-history)
--.15 E 2.5("k" pre)151.2 276 R(v-history)-.25 E 2.5("l" forw)151.2 288 R
-(ard-char)-.1 E 2.5("m" vi-set-mark)151.2 300 R 2.5("n" vi-search-ag)
-151.2 312 R(ain)-.05 E 2.5("p" vi-put)151.2 324 R 2.5
-("r" vi-change-char)151.2 336 R 2.5("s" vi-subst)151.2 348 R 2.5
-("t" vi-char)151.2 360 R(-search)-.2 E 2.5("u" vi-undo)151.2 372 R 2.5
-("w" vi-ne)151.2 384 R(xt-w)-.15 E(ord)-.1 E 2.5("x" vi-delete)151.2 396
-R 2.5("y" vi-yank-to)151.2 408 R 2.5("|" vi-column)151.2 420 R 2.5
-("~" vi-change-case)151.2 432 R/F1 10.95/Times-Bold@0 SF(SEE ALSO)72
-448.8 Q/F2 10/Times-Italic@0 SF(The Gnu Readline Libr)108 460.8 Q(ary)
--.15 E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F2
-(The Gnu History Libr)108 472.8 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E
-(ox and Chet Rame)-.15 E(y)-.15 E F2(bash)108 484.8 Q F0(\(1\))A F1
-(FILES)72 501.6 Q F2(~/.inputr)109.666 513.6 Q(c)-.37 E F0(Indi)144
-525.6 Q(vidual)-.25 E/F3 10/Times-Bold@0 SF -.18(re)2.5 G(adline).18 E
-F0(initialization \214le)2.5 E F1 -.548(AU)72 542.4 S(THORS).548 E F0
-(Brian F)108 554.4 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
-(bfox@gnu.or)108 566.4 Q(g)-.18 E(Chet Rame)108 583.2 Q 1.3 -.65(y, C)
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("*" vi-complete)
+151.2 84 R 2.5("+" ne)151.2 96 R(xt-history)-.15 E 2.5("," vi-char)151.2
+108 R(-search)-.2 E 2.5("-" pre)151.2 120 R(vious-history)-.25 E 2.5
+("." vi-redo)151.2 132 R 2.5("/" vi-search)151.2 144 R 2.5("0" be)151.2
+156 R(ginning-of-line)-.15 E("1" to "9")151.2 168 Q(vi-ar)5 E(g-digit)
+-.18 E 2.5(";" vi-char)151.2 180 R(-search)-.2 E 2.5("=" vi-complete)
+151.2 192 R 2.5("?" vi-search)151.2 204 R 2.5("A" vi-append-eol)151.2
+216 R 2.5("B" vi-pre)151.2 228 R(v-w)-.25 E(ord)-.1 E 2.5
+("C" vi-change-to)151.2 240 R 2.5("D" vi-delete-to)151.2 252 R 2.5
+("E" vi-end-w)151.2 264 R(ord)-.1 E 2.5("F" vi-char)151.2 276 R(-search)
+-.2 E 2.5("G" vi-fetch-history)151.2 288 R 2.5("I" vi-insert-be)151.2
+300 R(g)-.15 E 2.5("N" vi-search-ag)151.2 312 R(ain)-.05 E 2.5
+("P" vi-put)151.2 324 R 2.5("R" vi-replace)151.2 336 R 2.5("S" vi-subst)
+151.2 348 R 2.5("T" vi-char)151.2 360 R(-search)-.2 E 2.5("U" re)151.2
+372 R -.15(ve)-.25 G(rt-line).15 E 2.5("W" vi-ne)151.2 384 R(xt-w)-.15 E
+(ord)-.1 E 2.5("X" backw)151.2 396 R(ard-delete-char)-.1 E 2.5
+("Y" vi-yank-to)151.2 408 R 2.5("\\" vi-complete)151.2 420 R 2.5
+("^" vi-\214rst-print)151.2 432 R 2.5("_" vi-yank-ar)151.2 444 R(g)-.18
+E 2.5("`" vi-goto-mark)151.2 456 R 2.5("a" vi-append-mode)151.2 468 R
+2.5("b" vi-pre)151.2 480 R(v-w)-.25 E(ord)-.1 E 2.5("c" vi-change-to)
+151.2 492 R 2.5("d" vi-delete-to)151.2 504 R 2.5("e" vi-end-w)151.2 516
+R(ord)-.1 E 2.5("f" vi-char)151.2 528 R(-search)-.2 E 2.5("h" backw)
+151.2 540 R(ard-char)-.1 E 2.5("i" vi-insertion-mode)151.2 552 R 2.5
+("j" ne)151.2 564 R(xt-history)-.15 E 2.5("k" pre)151.2 576 R(v-history)
+-.25 E 2.5("l" forw)151.2 588 R(ard-char)-.1 E 2.5("m" vi-set-mark)151.2
+600 R 2.5("n" vi-search-ag)151.2 612 R(ain)-.05 E 2.5("p" vi-put)151.2
+624 R 2.5("r" vi-change-char)151.2 636 R 2.5("s" vi-subst)151.2 648 R
+2.5("t" vi-char)151.2 660 R(-search)-.2 E 2.5("u" vi-undo)151.2 672 R
+2.5("w" vi-ne)151.2 684 R(xt-w)-.15 E(ord)-.1 E 2.5("x" vi-delete)151.2
+696 R 2.5("y" vi-yank-to)151.2 708 R 2.5("|" vi-column)151.2 720 R
+(GNU Readline 6.3)72 768 Q(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15
+E(15)185.545 E 0 Cg EP
+%%Page: 16 16
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 117.355(READLINE\(3\) Library)72 48 R
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("~" vi-change-case)
+151.2 84 R/F1 10.95/Times-Bold@0 SF(SEE ALSO)72 100.8 Q/F2 10
+/Times-Italic@0 SF(The Gnu Readline Libr)108 112.8 Q(ary)-.15 E F0 2.5
+(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F2
+(The Gnu History Libr)108 124.8 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E
+(ox and Chet Rame)-.15 E(y)-.15 E F2(bash)108 136.8 Q F0(\(1\))A F1
+(FILES)72 153.6 Q F2(~/.inputr)109.666 165.6 Q(c)-.37 E F0(Indi)144
+177.6 Q(vidual)-.25 E/F3 10/Times-Bold@0 SF -.18(re)2.5 G(adline).18 E
+F0(initialization \214le)2.5 E F1 -.548(AU)72 194.4 S(THORS).548 E F0
+(Brian F)108 206.4 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
+(bfox@gnu.or)108 218.4 Q(g)-.18 E(Chet Rame)108 235.2 Q 1.3 -.65(y, C)
 -.15 H(ase W).65 E(estern Reserv)-.8 E 2.5(eU)-.15 G(ni)-2.5 E -.15(ve)
--.25 G(rsity).15 E(chet.rame)108 595.2 Q(y@case.edu)-.15 E F1 -.11(BU)72
-612 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .691(If you \214nd a b)
-108 624 R .691(ug in)-.2 F F3 -.18(re)3.191 G(adline,).18 E F0 .691
+-.25 G(rsity).15 E(chet.rame)108 247.2 Q(y@case.edu)-.15 E F1 -.11(BU)72
+264 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .691(If you \214nd a b)
+108 276 R .691(ug in)-.2 F F3 -.18(re)3.191 G(adline,).18 E F0 .691
 (you should report it.)3.191 F .69(But \214rst, you should mak)5.69 F
 3.19(es)-.1 G .69(ure that it really is a b)-3.19 F(ug,)-.2 E
-(and that it appears in the latest v)108 636 Q(ersion of the)-.15 E F3
+(and that it appears in the latest v)108 288 Q(ersion of the)-.15 E F3
 -.18(re)2.5 G(adline).18 E F0(library that you ha)2.5 E -.15(ve)-.2 G(.)
-.15 E .704(Once you ha)108 652.8 R 1.004 -.15(ve d)-.2 H .704
+.15 E .704(Once you ha)108 304.8 R 1.004 -.15(ve d)-.2 H .704
 (etermined that a b).15 F .704(ug actually e)-.2 F .704(xists, mail a b)
 -.15 F .705(ug report to)-.2 F F2 -.2(bu)3.205 G(g\255r).2 E(eadline)
 -.37 E F0(@)A F2(gnu.or)A(g)-.37 E F0 5.705(.I)C 3.205(fy)-5.705 G(ou)
--3.205 E(ha)108 664.8 Q 1.81 -.15(ve a \214)-.2 H 1.51
+-3.205 E(ha)108 316.8 Q 1.81 -.15(ve a \214)-.2 H 1.51
 (x, you are welcome to mail that as well!).15 F 1.509
 (Suggestions and `philosophical' b)6.509 F 1.509(ug reports may be)-.2 F
-(mailed to)108 676.8 Q F2 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F2
+(mailed to)108 328.8 Q F2 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F2
 (gnu.or)A(g)-.37 E F0(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F3
-(gnu.bash.b)2.5 E(ug)-.2 E F0(.)A(Comments and b)108 693.6 Q
+(gnu.bash.b)2.5 E(ug)-.2 E F0(.)A(Comments and b)108 345.6 Q
 (ug reports concerning this manual page should be directed to)-.2 E F2
 -.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F0(.).25 E
-(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(15)193.45 E 0 Cg EP
-%%Page: 16 16
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1
-10.95/Times-Bold@0 SF -.11(BU)72 84 S(GS).11 E F0(It')108 96 Q 2.5(st)
--.55 G(oo big and too slo)-2.5 E -.65(w.)-.25 G(GNU Readline 6.3)72 768
-Q(2014 January 6)128.74 E(16)193.45 E 0 Cg EP
+F1 -.11(BU)72 362.4 S(GS).11 E F0(It')108 374.4 Q 2.5(st)-.55 G
+(oo big and too slo)-2.5 E -.65(w.)-.25 G(GNU Readline 6.3)72 768 Q
+(2014 No)120.835 E -.15(ve)-.15 G(mber 19).15 E(16)185.545 E 0 Cg EP
 %%Trailer
 end
 %%EOF
index 40de49c4db6be5a66945fd4fd6101b4ba4907008..2fd6f4412a118c11fea9bc23ad833bd5f1a3ed59 100644 (file)
@@ -282,7 +282,7 @@ At the very least, it should be aware that it can be passed a
 negative argument.
 
 A command function should return 0 if its action completes successfully,
-and a non-zero value if some error occurs.
+and a value greater than zero if some error occurs.
 This is the convention obeyed by all of the builtin Readline bindable
 command functions.
 
@@ -1020,7 +1020,7 @@ It returns the number of visible characters on the last line of the
 Applications may indicate that the prompt contains characters that take
 up no physical screen space when displayed by bracketing a sequence of
 such characters with the special markers @code{RL_PROMPT_START_IGNORE}
-and @code{RL_PROMPT_END_IGNORE} (declared in @file{readline.h}.  This may
+and @code{RL_PROMPT_END_IGNORE} (declared in @file{readline.h}).  This may
 be used to embed terminal-specific escape sequences in prompts.
 @end deftypefun
 
@@ -1307,6 +1307,8 @@ expanded value of @var{prompt}.  Save the value of @var{lhandler} to
 use as a handler function to call when a complete line of input has been
 entered.
 The handler function receives the text of the line as an argument.
+As with @code{readline()}, the handler function should @code{free} the
+line when it it finished with it.
 @end deftypefun
 
 @deftypefun void rl_callback_read_char (void)
@@ -1326,9 +1328,17 @@ the terminal settings are modified for Readline's use again.
 @code{NULL} line.
 @end deftypefun
 
+@deftypefun void rl_callback_sigcleanup (void)
+Clean up any internal state the callback interface uses to maintain state
+between calls to rl_callback_read_char (e.g., the state of any active
+incremental searches).  This is intended to be used by applications that
+wish to perform their own signal handling; Readline's internal signal handler
+calls this when appropriate.
+@end deftypefun
+
 @deftypefun void rl_callback_handler_remove (void)
 Restore the terminal to its initial state and remove the line handler.
-This may be called from within a callback as well as independently.
+You may call this function from within a callback as well as independently.
 If the @var{lhandler} installed by @code{rl_callback_handler_install}
 does not exit the program, either this function or the function referred
 to by the value of @code{rl_deprep_term_function} should be called before
@@ -1532,7 +1542,14 @@ resetting the terminal to its original state.  If the application's signal
 handler does more than update its idea of the terminal size and return (for
 example, a @code{longjmp} back to a main processing loop), it @emph{must}
 call @code{rl_cleanup_after_signal()} (described below), to restore the
-terminal state. 
+terminal state.
+
+When an application is using the callback interface
+(@pxref{Alternate Interface}), Readline installs signal handlers only for
+the duration of the call to @code{rl_callback_read_char}.  Applications
+using the callback interface should be prepared to clean up Readline's
+state if they wish to handle the signal before the line handler completes
+and restores the terminal state.
 
 Readline provides two variables that allow application writers to
 control whether or not it will catch certain signals and act on them
@@ -1942,8 +1959,8 @@ where @var{matches} is the array of matching strings,
 @var{num_matches} is the number of strings in that array, and
 @var{max_length} is the length of the longest string in that array.
 Readline provides a convenience function, @code{rl_display_match_list},
-that takes care of doing the display to Readline's output stream.  That
-function may be called from this hook.
+that takes care of doing the display to Readline's output stream.
+You may call that function from this hook.
 @end deftypevar
 
 @deftypevar {const char *} rl_basic_word_break_characters
index 0af6c02e13573fb2d8d316b8eda46c59220aa8ca..6465895abf2680d28541f193a58fac48915e83f0 100644 (file)
@@ -423,9 +423,23 @@ the terminal's bell.
 
 @item bind-tty-special-chars
 @vindex bind-tty-special-chars
-If set to @samp{on}, Readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their Readline
-equivalents.
+If set to @samp{on} (the default), Readline attempts to bind the control
+characters   treated specially by the kernel's terminal driver to their
+Readline equivalents.
+
+@item blink-matching-paren
+@vindex blink-matching-paren
+If set to @samp{on}, Readline attempts to briefly move the cursor to an
+opening parenthesis when a closing parenthesis is inserted.  The default
+is @samp{off}.
+
+@item colored-completion-prefix
+@vindex colored-completion-prefix
+If set to @samp{on}, when listing completions, Readline displays the
+common prefix of the set of possible completions using a different color.
+The color definitions are taken from the value of the @env{LS_COLORS}
+environment variable.
+The default is @samp{off}.
 
 @item colored-stats
 @vindex colored-stats
@@ -500,11 +514,31 @@ key bindings is used.  By default, Readline starts up in Emacs editing
 mode, where the keystrokes are most similar to Emacs.  This variable can be
 set to either @samp{emacs} or @samp{vi}.
 
+@item emacs-mode-string
+@vindex emacs-mode-string
+This string is displayed immediately before the last line of the primary
+prompt when emacs editing mode is active.  The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the @samp{\1} and @samp{\2} escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is @samp{@@}.
+
 @item echo-control-characters
+@vindex echo-control-characters
 When set to @samp{on}, on operating systems that indicate they support it,
 readline echoes a character corresponding to a signal generated from the
 keyboard.  The default is @samp{on}.
 
+@item enable-bracketed-paste
+@vindex enable-bracketed-paste
+When set to @samp{On}, Readline will configure the terminal in a way
+that will enable it to insert each paste into the editing buffer as a
+single string of characters, instead of treating each character as if
+it had been read from the keyboard.  This can prevent pasted characters
+from being interpreted as editing commands.  The default is @samp{off}.
+
 @item enable-keypad
 @vindex enable-keypad
 When set to @samp{on}, Readline will try to enable the application
@@ -673,8 +707,8 @@ The default value is @samp{off}.
 @item show-mode-in-prompt
 @vindex show-mode-in-prompt
 If set to @samp{on}, add a character to the beginning of the prompt
-indicating the editing mode: emacs (@samp{@@}), vi command (@samp{:}),
-or vi insertion (@samp{+}).
+indicating the editing mode: emacs, vi command, or vi insertion.
+The mode strings are user-settable.
 The default value is @samp{off}.
 
 @item skip-completed-text
@@ -691,6 +725,30 @@ rather than @samp{Makefilefile}, assuming there is a single possible
 completion.
 The default value is @samp{off}.
 
+@item vi-cmd-mode-string
+@vindex vi-cmd-mode-string
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in command mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the @samp{\1} and @samp{\2} escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is @samp{(cmd)}.
+
+@item vi-ins-mode-string
+@vindex vi-ins-mode-string
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in insertion mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the @samp{\1} and @samp{\2} escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is @samp{(ins)}.
+
 @item visible-stats
 @vindex visible-stats
 If set to @samp{on}, a character denoting a file's type
@@ -1122,17 +1180,19 @@ the history as necessary.  This is an incremental search.
 
 @item forward-search-history (C-s)
 Search forward starting at the current line and moving `down' through
-the the history as necessary.  This is an incremental search.
+the history as necessary.  This is an incremental search.
 
 @item non-incremental-reverse-search-history (M-p)
 Search backward starting at the current line and moving `up'
 through the history as necessary using a non-incremental search
 for a string supplied by the user.
+The search string may match anywhere in a history line.
 
 @item non-incremental-forward-search-history (M-n)
 Search forward starting at the current line and moving `down'
-through the the history as necessary using a non-incremental search
+through the history as necessary using a non-incremental search
 for a string supplied by the user.
+The search string may match anywhere in a history line.
 
 @item history-search-forward ()
 Search forward through the history for the string of characters
@@ -1224,6 +1284,14 @@ Insert a tab character.
 @item self-insert (a, b, A, 1, !, @dots{})
 Insert yourself.
 
+@item bracketed-paste-begin ()
+This function is intended to be bound to the "bracketed paste" escape
+sequence sent by some terminals, and such a binding is assigned by default.
+It allows Readline to insert the pasted text as a single unit without treating
+each character as if it had been read from the keyboard.  The characters
+are inserted as if each one was bound to @code{self-insert}) instead of
+executing any editing commands.
+
 @item transpose-chars (C-t)
 Drag the character before the cursor forward over
 the character at the cursor, moving the
@@ -1275,7 +1343,7 @@ By default, this command is unbound.
 Kill the text from point to the end of the line.
 
 @item backward-kill-line (C-x Rubout)
-Kill backward to the beginning of the line.
+Kill backward from the cursor to the beginning of the current line.
 
 @item unix-line-discard (C-u)
 Kill backward from the cursor to the beginning of the current line.
@@ -1357,7 +1425,7 @@ leading minus sign, those digits define the argument.
 If the command is followed by digits, executing @code{universal-argument}
 again ends the numeric argument, but is otherwise ignored.
 As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
+character that is neither a digit nor minus sign, the argument count
 for the next command is multiplied by four.
 The argument count is initially one, so executing this function the
 first time makes the argument count four, a second time makes the
@@ -1788,6 +1856,10 @@ is removed before attempting a match.
 Any completion that matches the pattern will be removed from the list.
 A leading @samp{!} negates the pattern; in this case any completion
 not matching the pattern will be removed.
+If the @code{nocasematch} shell option
+(see the description of @code{shopt} in @ref{The Shopt Builtin})
+is enabled, the match is performed without regard to the case
+of alphabetic characters.
 
 Finally, any prefix and suffix specified with the @option{-P} and @option{-S}
 options are added to each member of the completion list, and the result is
@@ -1941,6 +2013,9 @@ with @option{-F}.
 Tell Readline not to quote the completed words if they are filenames
 (quoting filenames is the default).
 
+@item nosort
+Tell Readline not to sort the list of possible completions alphabetically.
+
 @item nospace
 Tell Readline not to append a space (the default) to words completed at
 the end of the line.
index 9fd215ba44530e945e229bae686e336016e1f169..78e5f7a3530af0520a85b2b51b303c7e03c0a24d 100644 (file)
Binary files a/doc/rluserman.dvi and b/doc/rluserman.dvi differ
index 22df7f4e23bd703ff037ff73a549e6d920bafa69..728500b78ed00561a232163e3bea9b8a4d0e4af7 100644 (file)
@@ -1,6 +1,6 @@
 <HTML>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 11  2014 by texi2html 1.64 -->
+<!-- Created on July, 1  2015 by texi2html 1.64 -->
 <!-- 
 Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
             Karl Berry  <karl@freefriends.org>
@@ -588,13 +588,29 @@ the terminal's bell.
 
 <DT><CODE>bind-tty-special-chars</CODE>
 <DD><A NAME="IDX6"></A>
-If set to <SAMP>`on'</SAMP>, Readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their Readline
-equivalents.
+If set to <SAMP>`on'</SAMP> (the default), Readline attempts to bind the control
+characters   treated specially by the kernel's terminal driver to their
+Readline equivalents.
 <P>
 
-<DT><CODE>colored-stats</CODE>
+<DT><CODE>blink-matching-paren</CODE>
 <DD><A NAME="IDX7"></A>
+If set to <SAMP>`on'</SAMP>, Readline attempts to briefly move the cursor to an
+opening parenthesis when a closing parenthesis is inserted.  The default
+is <SAMP>`off'</SAMP>.
+<P>
+
+<DT><CODE>colored-completion-prefix</CODE>
+<DD><A NAME="IDX8"></A>
+If set to <SAMP>`on'</SAMP>, when listing completions, Readline displays the
+common prefix of the set of possible completions using a different color.
+The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
+environment variable.
+The default is <SAMP>`off'</SAMP>.
+<P>
+
+<DT><CODE>colored-stats</CODE>
+<DD><A NAME="IDX9"></A>
 If set to <SAMP>`on'</SAMP>, Readline displays possible completions using different
 colors to indicate their file type.
 The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
@@ -603,14 +619,14 @@ The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>comment-begin</CODE>
-<DD><A NAME="IDX8"></A>
+<DD><A NAME="IDX10"></A>
 The string to insert at the beginning of the line when the
 <CODE>insert-comment</CODE> command is executed.  The default value
 is <CODE>"#"</CODE>.
 <P>
 
 <DT><CODE>completion-display-width</CODE>
-<DD><A NAME="IDX9"></A>
+<DD><A NAME="IDX11"></A>
 The number of screen columns used to display possible matches
 when performing completion.
 The value is ignored if it is less than 0 or greater than the terminal
@@ -620,21 +636,21 @@ The default value is -1.
 <P>
 
 <DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX10"></A>
+<DD><A NAME="IDX12"></A>
 If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
 in a case-insensitive fashion.
 The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>completion-map-case</CODE>
-<DD><A NAME="IDX11"></A>
+<DD><A NAME="IDX13"></A>
 If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
 treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
 performing case-insensitive filename matching and completion.
 <P>
 
 <DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX12"></A>
+<DD><A NAME="IDX14"></A>
 The length in characters of the common prefix of a list of possible
 completions that is displayed without modification.  When set to a
 value greater than zero, common prefixes longer than this value are
@@ -642,7 +658,7 @@ replaced with an ellipsis when displaying possible completions.
 <P>
 
 <DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX13"></A>
+<DD><A NAME="IDX15"></A>
 The number of possible completions that determines when the user is
 asked whether the list of possibilities should be displayed.
 If the number of possible completions is greater than this value,
@@ -654,7 +670,7 @@ The default limit is <CODE>100</CODE>.
 <P>
 
 <DT><CODE>convert-meta</CODE>
-<DD><A NAME="IDX14"></A>
+<DD><A NAME="IDX16"></A>
 If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
 eighth bit set to an ASCII key sequence by stripping the eighth
 bit and prefixing an <KBD>ESC</KBD> character, converting them to a
@@ -662,28 +678,50 @@ meta-prefixed key sequence.  The default value is <SAMP>`on'</SAMP>.
 <P>
 
 <DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX15"></A>
+<DD><A NAME="IDX17"></A>
 If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
 Completion  characters will be inserted into the line as if they had
 been mapped to <CODE>self-insert</CODE>.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>editing-mode</CODE>
-<DD><A NAME="IDX16"></A>
+<DD><A NAME="IDX18"></A>
 The <CODE>editing-mode</CODE> variable controls which default set of
 key bindings is used.  By default, Readline starts up in Emacs editing
 mode, where the keystrokes are most similar to Emacs.  This variable can be
 set to either <SAMP>`emacs'</SAMP> or <SAMP>`vi'</SAMP>.
 <P>
 
+<DT><CODE>emacs-mode-string</CODE>
+<DD><A NAME="IDX19"></A>
+This string is displayed immediately before the last line of the primary
+prompt when emacs editing mode is active.  The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the <SAMP>`\1'</SAMP> and <SAMP>`\2'</SAMP> escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is <SAMP>`@'</SAMP>.
+<P>
+
 <DT><CODE>echo-control-characters</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
+<DD><A NAME="IDX20"></A>
+When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
 readline echoes a character corresponding to a signal generated from the
 keyboard.  The default is <SAMP>`on'</SAMP>.
 <P>
 
+<DT><CODE>enable-bracketed-paste</CODE>
+<DD><A NAME="IDX21"></A>
+When set to <SAMP>`On'</SAMP>, Readline will configure the terminal in a way
+that will enable it to insert each paste into the editing buffer as a
+single string of characters, instead of treating each character as if
+it had been read from the keyboard.  This can prevent pasted characters
+from being interpreted as editing commands.  The default is <SAMP>`off'</SAMP>.
+<P>
+
 <DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX17"></A>
+<DD><A NAME="IDX22"></A>
 When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
 keypad when it is called.  Some systems need this to enable the
 arrow keys.  The default is <SAMP>`off'</SAMP>.
@@ -697,13 +735,13 @@ The default is <SAMP>`on'</SAMP>.
 <P>
 
 <DT><CODE>expand-tilde</CODE>
-<DD><A NAME="IDX18"></A>
+<DD><A NAME="IDX23"></A>
 If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
 attempts word completion.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>history-preserve-point</CODE>
-<DD><A NAME="IDX19"></A>
+<DD><A NAME="IDX24"></A>
 If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
 current cursor position) at the
 same location on each history line retrieved with <CODE>previous-history</CODE>
@@ -711,7 +749,7 @@ or <CODE>next-history</CODE>.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>history-size</CODE>
-<DD><A NAME="IDX20"></A>
+<DD><A NAME="IDX25"></A>
 Set the maximum number of history entries saved in the history list.
 If set to zero, any existing history entries are deleted and no new entries
 are saved.
@@ -721,7 +759,7 @@ By default, the number of history entries is not limited.
 <P>
 
 <DT><CODE>horizontal-scroll-mode</CODE>
-<DD><A NAME="IDX21"></A>
+<DD><A NAME="IDX26"></A>
 This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>.  Setting it
 to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
 horizontally on a single screen line when they are longer than the width
@@ -730,8 +768,8 @@ this variable is set to <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX22"></A>
-<A NAME="IDX23"></A>
+<DD><A NAME="IDX27"></A>
+<A NAME="IDX28"></A>
 If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
 will not clear the eighth bit in the characters it reads),
 regardless of what the terminal claims it can support.  The
@@ -740,7 +778,7 @@ synonym for this variable.
 <P>
 
 <DT><CODE>isearch-terminators</CODE>
-<DD><A NAME="IDX24"></A>
+<DD><A NAME="IDX29"></A>
 The string of characters that should terminate an incremental search without
 subsequently executing the character as a command (see section <A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>).
 If this variable has not been given a value, the characters <KBD>ESC</KBD> and
@@ -748,7 +786,7 @@ If this variable has not been given a value, the characters <KBD>ESC</KBD> and
 <P>
 
 <DT><CODE>keymap</CODE>
-<DD><A NAME="IDX25"></A>
+<DD><A NAME="IDX30"></A>
 Sets Readline's idea of the current keymap for key binding commands.
 Acceptable <CODE>keymap</CODE> names are
 <CODE>emacs</CODE>,
@@ -788,14 +826,14 @@ appended.  The default is <SAMP>`on'</SAMP>.
 <P>
 
 <DT><CODE>mark-modified-lines</CODE>
-<DD><A NAME="IDX26"></A>
+<DD><A NAME="IDX31"></A>
 This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
 asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
 This variable is <SAMP>`off'</SAMP> by default.
 <P>
 
 <DT><CODE>mark-symlinked-directories</CODE>
-<DD><A NAME="IDX27"></A>
+<DD><A NAME="IDX32"></A>
 If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
 to directories have a slash appended (subject to the value of
 <CODE>mark-directories</CODE>).
@@ -803,7 +841,7 @@ The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>match-hidden-files</CODE>
-<DD><A NAME="IDX28"></A>
+<DD><A NAME="IDX33"></A>
 This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
 names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
 completion.
@@ -813,21 +851,21 @@ This variable is <SAMP>`on'</SAMP> by default.
 <P>
 
 <DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX29"></A>
+<DD><A NAME="IDX34"></A>
 If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
 list of possible completions (which may be empty) before cycling through
 the list.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>output-meta</CODE>
-<DD><A NAME="IDX30"></A>
+<DD><A NAME="IDX35"></A>
 If set to <SAMP>`on'</SAMP>, Readline will display characters with the
 eighth bit set directly rather than as a meta-prefixed escape
 sequence.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX31"></A>
+<DD><A NAME="IDX36"></A>
 If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
 to display a screenful of possible completions at a time.
 This variable is <SAMP>`on'</SAMP> by default.
@@ -840,7 +878,7 @@ The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>revert-all-at-newline</CODE>
-<DD><A NAME="IDX32"></A>
+<DD><A NAME="IDX37"></A>
 If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
 before returning when <CODE>accept-line</CODE> is executed.  By default,
 history lines may be modified and retain individual undo lists across
@@ -848,7 +886,7 @@ calls to <CODE>readline</CODE>.  The default is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX33"></A>
+<DD><A NAME="IDX38"></A>
 This alters the default behavior of the completion functions.  If
 set to <SAMP>`on'</SAMP>, 
 words which have more than one possible completion cause the
@@ -857,7 +895,7 @@ The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>show-all-if-unmodified</CODE>
-<DD><A NAME="IDX34"></A>
+<DD><A NAME="IDX39"></A>
 This alters the default behavior of the completion functions in
 a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
 If set to <SAMP>`on'</SAMP>, 
@@ -869,15 +907,15 @@ The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>show-mode-in-prompt</CODE>
-<DD><A NAME="IDX35"></A>
+<DD><A NAME="IDX40"></A>
 If set to <SAMP>`on'</SAMP>, add a character to the beginning of the prompt
-indicating the editing mode: emacs (<SAMP>`@'</SAMP>), vi command (<SAMP>`:'</SAMP>),
-or vi insertion (<SAMP>`+'</SAMP>).
+indicating the editing mode: emacs, vi command, or vi insertion.
+The mode strings are user-settable.
 The default value is <SAMP>`off'</SAMP>.
 <P>
 
 <DT><CODE>skip-completed-text</CODE>
-<DD><A NAME="IDX36"></A>
+<DD><A NAME="IDX41"></A>
 If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
 inserting a single match into the line.  It's only active when
 performing completion in the middle of a word.  If enabled, readline
@@ -891,8 +929,34 @@ completion.
 The default value is <SAMP>`off'</SAMP>.
 <P>
 
+<DT><CODE>vi-cmd-mode-string</CODE>
+<DD><A NAME="IDX42"></A>
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in command mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the <SAMP>`\1'</SAMP> and <SAMP>`\2'</SAMP> escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is <SAMP>`(cmd)'</SAMP>.
+<P>
+
+<DT><CODE>vi-ins-mode-string</CODE>
+<DD><A NAME="IDX43"></A>
+This string is displayed immediately before the last line of the primary
+prompt when vi editing mode is active and in insertion mode.
+The value is expanded like a
+key binding, so the standard set of meta- and control prefixes and
+backslash escape sequences is available.
+Use the <SAMP>`\1'</SAMP> and <SAMP>`\2'</SAMP> escapes to begin and end sequences of
+non-printing characters, which can be used to embed a terminal control
+sequence into the mode string.
+The default is <SAMP>`(ins)'</SAMP>.
+<P>
+
 <DT><CODE>visible-stats</CODE>
-<DD><A NAME="IDX37"></A>
+<DD><A NAME="IDX44"></A>
 If set to <SAMP>`on'</SAMP>, a character denoting a file's type
 is appended to the filename when listing possible
 completions.  The default is <SAMP>`off'</SAMP>.
@@ -1308,54 +1372,54 @@ The text between the point and mark is referred to as the <EM>region</EM>.
 <H3> 1.4.1 Commands For Moving </H3>
 <!--docid::SEC14::-->
 <DL COMPACT>
-<A NAME="IDX38"></A>
+<A NAME="IDX45"></A>
 <DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX39"></A>
+<DD><A NAME="IDX46"></A>
 Move to the start of the current line.
 <P>
 
-<A NAME="IDX40"></A>
+<A NAME="IDX47"></A>
 <DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX41"></A>
+<DD><A NAME="IDX48"></A>
 Move to the end of the line.
 <P>
 
-<A NAME="IDX42"></A>
+<A NAME="IDX49"></A>
 <DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX43"></A>
+<DD><A NAME="IDX50"></A>
 Move forward a character.
 <P>
 
-<A NAME="IDX44"></A>
+<A NAME="IDX51"></A>
 <DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX45"></A>
+<DD><A NAME="IDX52"></A>
 Move back a character.
 <P>
 
-<A NAME="IDX46"></A>
+<A NAME="IDX53"></A>
 <DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX47"></A>
+<DD><A NAME="IDX54"></A>
 Move forward to the end of the next word.
 Words are composed of letters and digits.
 <P>
 
-<A NAME="IDX48"></A>
+<A NAME="IDX55"></A>
 <DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX49"></A>
+<DD><A NAME="IDX56"></A>
 Move back to the start of the current or previous word.
 Words are composed of letters and digits.
 <P>
 
-<A NAME="IDX50"></A>
+<A NAME="IDX57"></A>
 <DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX51"></A>
+<DD><A NAME="IDX58"></A>
 Clear the screen and redraw the current line,
 leaving the current line at the top of the screen.
 <P>
 
-<A NAME="IDX52"></A>
+<A NAME="IDX59"></A>
 <DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX53"></A>
+<DD><A NAME="IDX60"></A>
 Refresh the current line.  By default, this is unbound.
 <P>
 
@@ -1381,9 +1445,9 @@ Refresh the current line.  By default, this is unbound.
 <P>
 
 <DL COMPACT>
-<A NAME="IDX54"></A>
+<A NAME="IDX61"></A>
 <DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX55"></A>
+<DD><A NAME="IDX62"></A>
 Accept the line regardless of where the cursor is.
 If this line is
 non-empty, it may be added to the history list for future recall with
@@ -1392,64 +1456,66 @@ If this line is a modified history line, the history line is restored
 to its original state.
 <P>
 
-<A NAME="IDX56"></A>
+<A NAME="IDX63"></A>
 <DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX57"></A>
+<DD><A NAME="IDX64"></A>
 Move `back' through the history list, fetching the previous command.
 <P>
 
-<A NAME="IDX58"></A>
+<A NAME="IDX65"></A>
 <DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX59"></A>
+<DD><A NAME="IDX66"></A>
 Move `forward' through the history list, fetching the next command.
 <P>
 
-<A NAME="IDX60"></A>
+<A NAME="IDX67"></A>
 <DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX61"></A>
+<DD><A NAME="IDX68"></A>
 Move to the first line in the history.
 <P>
 
-<A NAME="IDX62"></A>
+<A NAME="IDX69"></A>
 <DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX63"></A>
+<DD><A NAME="IDX70"></A>
 Move to the end of the input history, i.e., the line currently
 being entered.
 <P>
 
-<A NAME="IDX64"></A>
+<A NAME="IDX71"></A>
 <DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX65"></A>
+<DD><A NAME="IDX72"></A>
 Search backward starting at the current line and moving `up' through
 the history as necessary.  This is an incremental search.
 <P>
 
-<A NAME="IDX66"></A>
+<A NAME="IDX73"></A>
 <DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX67"></A>
+<DD><A NAME="IDX74"></A>
 Search forward starting at the current line and moving `down' through
-the the history as necessary.  This is an incremental search.
+the history as necessary.  This is an incremental search.
 <P>
 
-<A NAME="IDX68"></A>
+<A NAME="IDX75"></A>
 <DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX69"></A>
+<DD><A NAME="IDX76"></A>
 Search backward starting at the current line and moving `up'
 through the history as necessary using a non-incremental search
 for a string supplied by the user.
+The search string may match anywhere in a history line.
 <P>
 
-<A NAME="IDX70"></A>
+<A NAME="IDX77"></A>
 <DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX71"></A>
+<DD><A NAME="IDX78"></A>
 Search forward starting at the current line and moving `down'
-through the the history as necessary using a non-incremental search
+through the history as necessary using a non-incremental search
 for a string supplied by the user.
+The search string may match anywhere in a history line.
 <P>
 
-<A NAME="IDX72"></A>
+<A NAME="IDX79"></A>
 <DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX73"></A>
+<DD><A NAME="IDX80"></A>
 Search forward through the history for the string of characters
 between the start of the current line and the point.
 The search string must match at the beginning of a history line.
@@ -1457,9 +1523,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX74"></A>
+<A NAME="IDX81"></A>
 <DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX75"></A>
+<DD><A NAME="IDX82"></A>
 Search backward through the history for the string of characters
 between the start of the current line and the point.
 The search string must match at the beginning of a history line.
@@ -1467,9 +1533,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX76"></A>
+<A NAME="IDX83"></A>
 <DT><CODE>history-substr-search-forward ()</CODE>
-<DD><A NAME="IDX77"></A>
+<DD><A NAME="IDX84"></A>
 Search forward through the history for the string of characters
 between the start of the current line and the point.
 The search string may match anywhere in a history line.
@@ -1477,9 +1543,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX78"></A>
+<A NAME="IDX85"></A>
 <DT><CODE>history-substr-search-backward ()</CODE>
-<DD><A NAME="IDX79"></A>
+<DD><A NAME="IDX86"></A>
 Search backward through the history for the string of characters
 between the start of the current line and the point.
 The search string may match anywhere in a history line.
@@ -1487,9 +1553,9 @@ This is a non-incremental search.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX80"></A>
+<A NAME="IDX87"></A>
 <DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX81"></A>
+<DD><A NAME="IDX88"></A>
 Insert the first argument to the previous command (usually
 the second word on the previous line) at point.
 With an argument <VAR>n</VAR>,
@@ -1500,9 +1566,9 @@ Once the argument <VAR>n</VAR> is computed, the argument is extracted
 as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
 <P>
 
-<A NAME="IDX82"></A>
+<A NAME="IDX89"></A>
 <DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX83"></A>
+<DD><A NAME="IDX90"></A>
 Insert last argument to the previous command (the last word of the
 previous history entry).
 With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
@@ -1539,60 +1605,71 @@ as if the <SAMP>`!$'</SAMP> history expansion had been specified.
 
 <DL COMPACT>
 
-<A NAME="IDX84"></A>
+<A NAME="IDX91"></A>
 <DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
-<DD><A NAME="IDX85"></A>
+<DD><A NAME="IDX92"></A>
 The character indicating end-of-file as set, for example, by
 <CODE>stty</CODE>.  If this character is read when there are no characters
 on the line, and point is at the beginning of the line, Readline
 interprets it as the end of input and returns EOF.
 <P>
 
-<A NAME="IDX86"></A>
+<A NAME="IDX93"></A>
 <DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX87"></A>
+<DD><A NAME="IDX94"></A>
 Delete the character at point.  If this function is bound to the
 same character as the tty EOF character, as <KBD>C-d</KBD>
 commonly is, see above for the effects.
 <P>
 
-<A NAME="IDX88"></A>
+<A NAME="IDX95"></A>
 <DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX89"></A>
+<DD><A NAME="IDX96"></A>
 Delete the character behind the cursor.  A numeric argument means
 to kill the characters instead of deleting them.
 <P>
 
-<A NAME="IDX90"></A>
+<A NAME="IDX97"></A>
 <DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX91"></A>
+<DD><A NAME="IDX98"></A>
 Delete the character under the cursor, unless the cursor is at the
 end of the line, in which case the character behind the cursor is
 deleted.  By default, this is not bound to a key.
 <P>
 
-<A NAME="IDX92"></A>
+<A NAME="IDX99"></A>
 <DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX93"></A>
+<DD><A NAME="IDX100"></A>
 Add the next character typed to the line verbatim.  This is
 how to insert key sequences like <KBD>C-q</KBD>, for example.
 <P>
 
-<A NAME="IDX94"></A>
+<A NAME="IDX101"></A>
 <DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX95"></A>
+<DD><A NAME="IDX102"></A>
 Insert a tab character.
 <P>
 
-<A NAME="IDX96"></A>
+<A NAME="IDX103"></A>
 <DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX97"></A>
+<DD><A NAME="IDX104"></A>
 Insert yourself.
 <P>
 
-<A NAME="IDX98"></A>
+<A NAME="IDX105"></A>
+<DT><CODE>bracketed-paste-begin ()</CODE>
+<DD><A NAME="IDX106"></A>
+This function is intended to be bound to the "bracketed paste" escape
+sequence sent by some terminals, and such a binding is assigned by default.
+It allows Readline to insert the pasted text as a single unit without treating
+each character as if it had been read from the keyboard.  The characters
+are inserted as if each one was bound to <CODE>self-insert</CODE>) instead of
+executing any editing commands.
+<P>
+
+<A NAME="IDX107"></A>
 <DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX99"></A>
+<DD><A NAME="IDX108"></A>
 Drag the character before the cursor forward over
 the character at the cursor, moving the
 cursor forward as well.  If the insertion point
@@ -1601,39 +1678,39 @@ transposes the last two characters of the line.
 Negative arguments have no effect.
 <P>
 
-<A NAME="IDX100"></A>
+<A NAME="IDX109"></A>
 <DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX101"></A>
+<DD><A NAME="IDX110"></A>
 Drag the word before point past the word after point,
 moving point past that word as well.
 If the insertion point is at the end of the line, this transposes
 the last two words on the line.
 <P>
 
-<A NAME="IDX102"></A>
+<A NAME="IDX111"></A>
 <DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX103"></A>
+<DD><A NAME="IDX112"></A>
 Uppercase the current (or following) word.  With a negative argument,
 uppercase the previous word, but do not move the cursor.
 <P>
 
-<A NAME="IDX104"></A>
+<A NAME="IDX113"></A>
 <DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX105"></A>
+<DD><A NAME="IDX114"></A>
 Lowercase the current (or following) word.  With a negative argument,
 lowercase the previous word, but do not move the cursor.
 <P>
 
-<A NAME="IDX106"></A>
+<A NAME="IDX115"></A>
 <DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX107"></A>
+<DD><A NAME="IDX116"></A>
 Capitalize the current (or following) word.  With a negative argument,
 capitalize the previous word, but do not move the cursor.
 <P>
 
-<A NAME="IDX108"></A>
+<A NAME="IDX117"></A>
 <DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX109"></A>
+<DD><A NAME="IDX118"></A>
 Toggle overwrite mode.  With an explicit positive numeric argument,
 switches to overwrite mode.  With an explicit non-positive numeric
 argument, switches to insert mode.  This command affects only
@@ -1673,106 +1750,106 @@ By default, this command is unbound.
 
 <DL COMPACT>
 
-<A NAME="IDX110"></A>
+<A NAME="IDX119"></A>
 <DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX111"></A>
+<DD><A NAME="IDX120"></A>
 Kill the text from point to the end of the line.
 <P>
 
-<A NAME="IDX112"></A>
+<A NAME="IDX121"></A>
 <DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX113"></A>
-Kill backward to the beginning of the line.
+<DD><A NAME="IDX122"></A>
+Kill backward from the cursor to the beginning of the current line.
 <P>
 
-<A NAME="IDX114"></A>
+<A NAME="IDX123"></A>
 <DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX115"></A>
+<DD><A NAME="IDX124"></A>
 Kill backward from the cursor to the beginning of the current line.
 <P>
 
-<A NAME="IDX116"></A>
+<A NAME="IDX125"></A>
 <DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX117"></A>
+<DD><A NAME="IDX126"></A>
 Kill all characters on the current line, no matter where point is.
 By default, this is unbound.
 <P>
 
-<A NAME="IDX118"></A>
+<A NAME="IDX127"></A>
 <DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX119"></A>
+<DD><A NAME="IDX128"></A>
 Kill from point to the end of the current word, or if between
 words, to the end of the next word.
 Word boundaries are the same as <CODE>forward-word</CODE>.
 <P>
 
-<A NAME="IDX120"></A>
+<A NAME="IDX129"></A>
 <DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX121"></A>
+<DD><A NAME="IDX130"></A>
 Kill the word behind point.
 Word boundaries are the same as <CODE>backward-word</CODE>.
 <P>
 
-<A NAME="IDX122"></A>
+<A NAME="IDX131"></A>
 <DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX123"></A>
+<DD><A NAME="IDX132"></A>
 Kill the word behind point, using white space as a word boundary.
 The killed text is saved on the kill-ring.
 <P>
 
-<A NAME="IDX124"></A>
+<A NAME="IDX133"></A>
 <DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX125"></A>
+<DD><A NAME="IDX134"></A>
 Kill the word behind point, using white space and the slash character
 as the word boundaries.
 The killed text is saved on the kill-ring.
 <P>
 
-<A NAME="IDX126"></A>
+<A NAME="IDX135"></A>
 <DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX127"></A>
+<DD><A NAME="IDX136"></A>
 Delete all spaces and tabs around point.  By default, this is unbound.
 <P>
 
-<A NAME="IDX128"></A>
+<A NAME="IDX137"></A>
 <DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX129"></A>
+<DD><A NAME="IDX138"></A>
 Kill the text in the current region.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX130"></A>
+<A NAME="IDX139"></A>
 <DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX131"></A>
+<DD><A NAME="IDX140"></A>
 Copy the text in the region to the kill buffer, so it can be yanked
 right away.  By default, this command is unbound.
 <P>
 
-<A NAME="IDX132"></A>
+<A NAME="IDX141"></A>
 <DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX133"></A>
+<DD><A NAME="IDX142"></A>
 Copy the word before point to the kill buffer.
 The word boundaries are the same as <CODE>backward-word</CODE>.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX134"></A>
+<A NAME="IDX143"></A>
 <DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX135"></A>
+<DD><A NAME="IDX144"></A>
 Copy the word following point to the kill buffer.
 The word boundaries are the same as <CODE>forward-word</CODE>.
 By default, this command is unbound.
 <P>
 
-<A NAME="IDX136"></A>
+<A NAME="IDX145"></A>
 <DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX137"></A>
+<DD><A NAME="IDX146"></A>
 Yank the top of the kill ring into the buffer at point.
 <P>
 
-<A NAME="IDX138"></A>
+<A NAME="IDX147"></A>
 <DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX139"></A>
+<DD><A NAME="IDX148"></A>
 Rotate the kill-ring, and yank the new top.  You can only do this if
 the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
 </DL>
@@ -1796,23 +1873,23 @@ the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
 <!--docid::SEC18::-->
 <DL COMPACT>
 
-<A NAME="IDX140"></A>
+<A NAME="IDX149"></A>
 <DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX141"></A>
+<DD><A NAME="IDX150"></A>
 Add this digit to the argument already accumulating, or start a new
 argument.  <KBD>M--</KBD> starts a negative argument.
 <P>
 
-<A NAME="IDX142"></A>
+<A NAME="IDX151"></A>
 <DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX143"></A>
+<DD><A NAME="IDX152"></A>
 This is another way to specify an argument.
 If this command is followed by one or more digits, optionally with a
 leading minus sign, those digits define the argument.
 If the command is followed by digits, executing <CODE>universal-argument</CODE>
 again ends the numeric argument, but is otherwise ignored.
 As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
+character that is neither a digit nor minus sign, the argument count
 for the next command is multiplied by four.
 The argument count is initially one, so executing this function the
 first time makes the argument count four, a second time makes the
@@ -1840,33 +1917,33 @@ By default, this is not bound to a key.
 <P>
 
 <DL COMPACT>
-<A NAME="IDX144"></A>
+<A NAME="IDX153"></A>
 <DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX145"></A>
+<DD><A NAME="IDX154"></A>
 Attempt to perform completion on the text before point.
 The actual completion performed is application-specific.
 The default is filename completion.
 <P>
 
-<A NAME="IDX146"></A>
+<A NAME="IDX155"></A>
 <DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX147"></A>
+<DD><A NAME="IDX156"></A>
 List the possible completions of the text before point.
 When displaying completions, Readline sets the number of columns used
 for display to the value of <CODE>completion-display-width</CODE>, the value of
 the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
 <P>
 
-<A NAME="IDX148"></A>
+<A NAME="IDX157"></A>
 <DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX149"></A>
+<DD><A NAME="IDX158"></A>
 Insert all completions of the text before point that would have
 been generated by <CODE>possible-completions</CODE>.
 <P>
 
-<A NAME="IDX150"></A>
+<A NAME="IDX159"></A>
 <DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX151"></A>
+<DD><A NAME="IDX160"></A>
 Similar to <CODE>complete</CODE>, but replaces the word to be completed
 with a single match from the list of possible completions.
 Repeated execution of <CODE>menu-complete</CODE> steps through the list
@@ -1881,17 +1958,17 @@ This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
 by default.
 <P>
 
-<A NAME="IDX152"></A>
+<A NAME="IDX161"></A>
 <DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX153"></A>
+<DD><A NAME="IDX162"></A>
 Identical to <CODE>menu-complete</CODE>, but moves backward through the list
 of possible completions, as if <CODE>menu-complete</CODE> had been given a
 negative argument.
 <P>
 
-<A NAME="IDX154"></A>
+<A NAME="IDX163"></A>
 <DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX155"></A>
+<DD><A NAME="IDX164"></A>
 Deletes the character under the cursor if not at the beginning or
 end of the line (like <CODE>delete-char</CODE>).
 If at the end of the line, behaves identically to
@@ -1920,29 +1997,29 @@ This command is unbound by default.
 <!--docid::SEC20::-->
 <DL COMPACT>
 
-<A NAME="IDX156"></A>
+<A NAME="IDX165"></A>
 <DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX157"></A>
+<DD><A NAME="IDX166"></A>
 Begin saving the characters typed into the current keyboard macro.
 <P>
 
-<A NAME="IDX158"></A>
+<A NAME="IDX167"></A>
 <DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX159"></A>
+<DD><A NAME="IDX168"></A>
 Stop saving the characters typed into the current keyboard macro
 and save the definition.
 <P>
 
-<A NAME="IDX160"></A>
+<A NAME="IDX169"></A>
 <DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX161"></A>
+<DD><A NAME="IDX170"></A>
 Re-execute the last keyboard macro defined, by making the characters
 in the macro appear as if typed at the keyboard.
 <P>
 
-<A NAME="IDX162"></A>
+<A NAME="IDX171"></A>
 <DT><CODE>print-last-kbd-macro ()</CODE>
-<DD><A NAME="IDX163"></A>
+<DD><A NAME="IDX172"></A>
 Print the last keboard macro defined in a format suitable for the
 <VAR>inputrc</VAR> file.
 <P>
@@ -1968,87 +2045,87 @@ Print the last keboard macro defined in a format suitable for the
 <!--docid::SEC21::-->
 <DL COMPACT>
 
-<A NAME="IDX164"></A>
+<A NAME="IDX173"></A>
 <DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX165"></A>
+<DD><A NAME="IDX174"></A>
 Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
 any bindings or variable assignments found there.
 <P>
 
-<A NAME="IDX166"></A>
+<A NAME="IDX175"></A>
 <DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX167"></A>
+<DD><A NAME="IDX176"></A>
 Abort the current editing command and
 ring the terminal's bell (subject to the setting of
 <CODE>bell-style</CODE>).
 <P>
 
-<A NAME="IDX168"></A>
+<A NAME="IDX177"></A>
 <DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX169"></A>
+<DD><A NAME="IDX178"></A>
 If the metafied character <VAR>x</VAR> is lowercase, run the command
 that is bound to the corresponding uppercase character.
 <P>
 
-<A NAME="IDX170"></A>
+<A NAME="IDX179"></A>
 <DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX171"></A>
+<DD><A NAME="IDX180"></A>
 Metafy the next character typed.  This is for keyboards
 without a meta key.  Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
 <KBD>M-f</KBD>.
 <P>
 
-<A NAME="IDX172"></A>
+<A NAME="IDX181"></A>
 <DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX173"></A>
+<DD><A NAME="IDX182"></A>
 Incremental undo, separately remembered for each line.
 <P>
 
-<A NAME="IDX174"></A>
+<A NAME="IDX183"></A>
 <DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX175"></A>
+<DD><A NAME="IDX184"></A>
 Undo all changes made to this line.  This is like executing the <CODE>undo</CODE>
 command enough times to get back to the beginning.
 <P>
 
-<A NAME="IDX176"></A>
+<A NAME="IDX185"></A>
 <DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX177"></A>
+<DD><A NAME="IDX186"></A>
 Perform tilde expansion on the current word.
 <P>
 
-<A NAME="IDX178"></A>
+<A NAME="IDX187"></A>
 <DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX179"></A>
+<DD><A NAME="IDX188"></A>
 Set the mark to the point.  If a
 numeric argument is supplied, the mark is set to that position.
 <P>
 
-<A NAME="IDX180"></A>
+<A NAME="IDX189"></A>
 <DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX181"></A>
+<DD><A NAME="IDX190"></A>
 Swap the point with the mark.  The current cursor position is set to
 the saved position, and the old cursor position is saved as the mark.
 <P>
 
-<A NAME="IDX182"></A>
+<A NAME="IDX191"></A>
 <DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX183"></A>
+<DD><A NAME="IDX192"></A>
 A character is read and point is moved to the next occurrence of that
 character.  A negative count searches for previous occurrences.
 <P>
 
-<A NAME="IDX184"></A>
+<A NAME="IDX193"></A>
 <DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX185"></A>
+<DD><A NAME="IDX194"></A>
 A character is read and point is moved to the previous occurrence
 of that character.  A negative count searches for subsequent
 occurrences.
 <P>
 
-<A NAME="IDX186"></A>
+<A NAME="IDX195"></A>
 <DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX187"></A>
+<DD><A NAME="IDX196"></A>
 Read enough characters to consume a multi-key sequence such as those
 defined for keys like Home and End.  Such sequences begin with a
 Control Sequence Indicator (CSI), usually ESC-[.  If this sequence is
@@ -2058,9 +2135,9 @@ stray characters into the editing buffer.  This is unbound by default,
 but usually bound to ESC-[.
 <P>
 
-<A NAME="IDX188"></A>
+<A NAME="IDX197"></A>
 <DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX189"></A>
+<DD><A NAME="IDX198"></A>
 Without a numeric argument, the value of the <CODE>comment-begin</CODE>
 variable is inserted at the beginning of the current line.
 If a numeric argument is supplied, this command acts as a toggle:  if
@@ -2071,43 +2148,43 @@ the line.
 In either case, the line is accepted as if a newline had been typed.
 <P>
 
-<A NAME="IDX190"></A>
+<A NAME="IDX199"></A>
 <DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX191"></A>
+<DD><A NAME="IDX200"></A>
 Print all of the functions and their key bindings to the
 Readline output stream.  If a numeric argument is supplied,
 the output is formatted in such a way that it can be made part
 of an <VAR>inputrc</VAR> file.  This command is unbound by default.
 <P>
 
-<A NAME="IDX192"></A>
+<A NAME="IDX201"></A>
 <DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX193"></A>
+<DD><A NAME="IDX202"></A>
 Print all of the settable variables and their values to the
 Readline output stream.  If a numeric argument is supplied,
 the output is formatted in such a way that it can be made part
 of an <VAR>inputrc</VAR> file.  This command is unbound by default.
 <P>
 
-<A NAME="IDX194"></A>
+<A NAME="IDX203"></A>
 <DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX195"></A>
+<DD><A NAME="IDX204"></A>
 Print all of the Readline key sequences bound to macros and the
 strings they output.  If a numeric argument is supplied,
 the output is formatted in such a way that it can be made part
 of an <VAR>inputrc</VAR> file.  This command is unbound by default.
 <P>
 
-<A NAME="IDX196"></A>
+<A NAME="IDX205"></A>
 <DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX197"></A>
+<DD><A NAME="IDX206"></A>
 When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
 editing mode.
 <P>
 
-<A NAME="IDX198"></A>
+<A NAME="IDX207"></A>
 <DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX199"></A>
+<DD><A NAME="IDX208"></A>
 When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
 editing mode.
 <P>
@@ -2834,7 +2911,7 @@ to permit their use in free software.
 <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
 </TR></TABLE>
 <H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 11  2014</I>
+This document was generated by <I>Chet Ramey</I> on <I>July, 1  2015</I>
 using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
 "><I>texi2html</I></A>
 <P></P>  
@@ -2996,7 +3073,7 @@ the following structure:
 <BR>  
 <FONT SIZE="-1">
 This document was generated
-by <I>Chet Ramey</I> on <I>February, 11  2014</I>
+by <I>Chet Ramey</I> on <I>July, 1  2015</I>
 using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
 "><I>texi2html</I></A>
 
index 1aefd3442ce429bf4fb36facd322fc85880cb83b..cc0d7496631fb076771a4bfc34f6998c06ef6294 100644 (file)
@@ -1,9 +1,9 @@
-This is rluserman.info, produced by makeinfo version 4.13 from
-/usr/homes/chet/src/bash/readline-src/doc/rluserman.texi.
+This is rluserman.info, produced by makeinfo version 5.2 from
+rluserman.texi.
 
 This manual describes the end user interface of the GNU Readline Library
-(version 6.3, 6 January 2014), a library which aids in the consistency
-of user interface across discrete programs which provide a command line
+(version 6.4, 28 May 2015), a library which aids in the consistency of
+user interface across discrete programs which provide a command line
 interface.
 
    Copyright (C) 1988-2014 Free Software Foundation, Inc.
@@ -15,7 +15,6 @@ interface.
      no Back-Cover Texts.  A copy of the license is included in the
      section entitled "GNU Free Documentation License".
 
-
 INFO-DIR-SECTION Libraries
 START-INFO-DIR-ENTRY
 * RLuserman: (rluserman).       The GNU readline library User's Manual.
@@ -30,7 +29,7 @@ GNU Readline Library
 This document describes the end user interface of the GNU Readline
 Library, a utility which aids in the consistency of user interface
 across discrete programs which provide a command line interface.  The
-Readline home page is `http://www.gnu.org/software/readline/'.
+Readline home page is <http://www.gnu.org/software/readline/>.
 
 * Menu:
 
@@ -65,10 +64,10 @@ File: rluserman.info,  Node: Introduction and Notation,  Next: Readline Interact
 The following paragraphs describe the notation used to represent
 keystrokes.
 
-   The text `C-k' is read as `Control-K' and describes the character
+   The text 'C-k' is read as 'Control-K' and describes the character
 produced when the <k> key is pressed while the Control key is depressed.
 
-   The text `M-k' is read as `Meta-K' and describes the character
+   The text 'M-k' is read as 'Meta-K' and describes the character
 produced when the Meta key (if you have one) is depressed, and the <k>
 key is pressed.  The Meta key is labeled <ALT> on many keyboards.  On
 keyboards with two keys labeled <ALT> (usually to either side of the
@@ -82,15 +81,15 @@ Meta key, the identical keystroke can be generated by typing <ESC>
 _first_, and then typing <k>.  Either process is known as "metafying"
 the <k> key.
 
-   The text `M-C-k' is read as `Meta-Control-k' and describes the
-character produced by "metafying" `C-k'.
+   The text 'M-C-k' is read as 'Meta-Control-k' and describes the
+character produced by "metafying" 'C-k'.
 
-   In addition, several keys have their own names.  Specifically,
-<DEL>, <ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves
-when seen in this text, or in an init file (*note Readline Init File::).
-If your keyboard lacks a <LFD> key, typing <C-j> will produce the
-desired character.  The <RET> key may be labeled <Return> or <Enter> on
-some keyboards.
+   In addition, several keys have their own names.  Specifically, <DEL>,
+<ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves when seen
+in this text, or in an init file (*note Readline Init File::).  If your
+keyboard lacks a <LFD> key, typing <C-j> will produce the desired
+character.  The <RET> key may be labeled <Return> or <Enter> on some
+keyboards.
 
 \1f
 File: rluserman.info,  Node: Readline Interaction,  Next: Readline Init File,  Prev: Introduction and Notation,  Up: Command Line Editing
@@ -128,41 +127,35 @@ character appears where the cursor was, and then the cursor moves one
 space to the right.  If you mistype a character, you can use your erase
 character to back up and delete the mistyped character.
 
-   Sometimes you may mistype a character, and not notice the error
-until you have typed several other characters.  In that case, you can
-type `C-b' to move the cursor to the left, and then correct your
-mistake.  Afterwards, you can move the cursor to the right with `C-f'.
+   Sometimes you may mistype a character, and not notice the error until
+you have typed several other characters.  In that case, you can type
+'C-b' to move the cursor to the left, and then correct your mistake.
+Afterwards, you can move the cursor to the right with 'C-f'.
 
    When you add text in the middle of a line, you will notice that
-characters to the right of the cursor are `pushed over' to make room
-for the text that you have inserted.  Likewise, when you delete text
-behind the cursor, characters to the right of the cursor are `pulled
-back' to fill in the blank space created by the removal of the text.  A
-list of the bare essentials for editing the text of an input line
-follows.
-
-`C-b'
-     Move back one character.
+characters to the right of the cursor are 'pushed over' to make room for
+the text that you have inserted.  Likewise, when you delete text behind
+the cursor, characters to the right of the cursor are 'pulled back' to
+fill in the blank space created by the removal of the text.  A list of
+the bare essentials for editing the text of an input line follows.
 
-`C-f'
+'C-b'
+     Move back one character.
+'C-f'
      Move forward one character.
-
 <DEL> or <Backspace>
      Delete the character to the left of the cursor.
-
-`C-d'
+'C-d'
      Delete the character underneath the cursor.
-
 Printing characters
      Insert the character into the line at the cursor.
-
-`C-_' or `C-x C-u'
+'C-_' or 'C-x C-u'
      Undo the last editing command.  You can undo all the way back to an
      empty line.
 
 (Depending on your configuration, the <Backspace> key be set to delete
 the character to the left of the cursor and the <DEL> key set to delete
-the character underneath the cursor, like `C-d', rather than the
+the character underneath the cursor, like 'C-d', rather than the
 character to the left of the cursor.)
 
 \1f
@@ -172,29 +165,25 @@ File: rluserman.info,  Node: Readline Movement Commands,  Next: Readline Killing
 --------------------------------
 
 The above table describes the most basic keystrokes that you need in
-order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to `C-b', `C-f', `C-d', and
-<DEL>.  Here are some commands for moving more rapidly about the line.
+order to do editing of the input line.  For your convenience, many other
+commands have been added in addition to 'C-b', 'C-f', 'C-d', and <DEL>.
+Here are some commands for moving more rapidly about the line.
 
-`C-a'
+'C-a'
      Move to the start of the line.
-
-`C-e'
+'C-e'
      Move to the end of the line.
-
-`M-f'
+'M-f'
      Move forward a word, where a word is composed of letters and
      digits.
-
-`M-b'
+'M-b'
      Move backward a word.
-
-`C-l'
+'C-l'
      Clear the screen, reprinting the current line at the top.
 
-   Notice how `C-f' moves forward a character, while `M-f' moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
+   Notice how 'C-f' moves forward a character, while 'M-f' moves forward
+a word.  It is a loose convention that control keystrokes operate on
+characters while meta keystrokes operate on words.
 
 \1f
 File: rluserman.info,  Node: Readline Killing Commands,  Next: Readline Arguments,  Prev: Readline Movement Commands,  Up: Readline Interaction
@@ -203,51 +192,49 @@ File: rluserman.info,  Node: Readline Killing Commands,  Next: Readline Argument
 -------------------------------
 
 "Killing" text means to delete the text from the line, but to save it
-away for later use, usually by "yanking" (re-inserting) it back into
-the line.  (`Cut' and `paste' are more recent jargon for `kill' and
-`yank'.)
+away for later use, usually by "yanking" (re-inserting) it back into the
+line.  ('Cut' and 'paste' are more recent jargon for 'kill' and 'yank'.)
 
-   If the description for a command says that it `kills' text, then you
+   If the description for a command says that it 'kills' text, then you
 can be sure that you can get the text back in a different (or the same)
 place later.
 
-   When you use a kill command, the text is saved in a "kill-ring".
-Any number of consecutive kills save all of the killed text together, so
+   When you use a kill command, the text is saved in a "kill-ring".  Any
+number of consecutive kills save all of the killed text together, so
 that when you yank it back, you get it all.  The kill ring is not line
 specific; the text that you killed on a previously typed line is
-available to be yanked back later, when you are typing another line.  
+available to be yanked back later, when you are typing another line.
 
    Here is the list of commands for killing text.
 
-`C-k'
+'C-k'
      Kill the text from the current cursor position to the end of the
      line.
 
-`M-d'
+'M-d'
      Kill from the cursor to the end of the current word, or, if between
      words, to the end of the next word.  Word boundaries are the same
-     as those used by `M-f'.
+     as those used by 'M-f'.
 
-`M-<DEL>'
+'M-<DEL>'
      Kill from the cursor the start of the current word, or, if between
      words, to the start of the previous word.  Word boundaries are the
-     same as those used by `M-b'.
-
-`C-w'
-     Kill from the cursor to the previous whitespace.  This is
-     different than `M-<DEL>' because the word boundaries differ.
+     same as those used by 'M-b'.
 
+'C-w'
+     Kill from the cursor to the previous whitespace.  This is different
+     than 'M-<DEL>' because the word boundaries differ.
 
    Here is how to "yank" the text back into the line.  Yanking means to
 copy the most-recently-killed text from the kill buffer.
 
-`C-y'
+'C-y'
      Yank the most recently killed text back into the buffer at the
      cursor.
 
-`M-y'
+'M-y'
      Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `C-y' or `M-y'.
+     if the prior command is 'C-y' or 'M-y'.
 
 \1f
 File: rluserman.info,  Node: Readline Arguments,  Next: Searching,  Prev: Readline Killing Commands,  Up: Readline Interaction
@@ -260,15 +247,15 @@ argument acts as a repeat count, other times it is the sign of the
 argument that is significant.  If you pass a negative argument to a
 command which normally acts in a forward direction, that command will
 act in a backward direction.  For example, to kill text back to the
-start of the line, you might type `M-- C-k'.
+start of the line, you might type 'M-- C-k'.
 
    The general way to pass numeric arguments to a command is to type
-meta digits before the command.  If the first `digit' typed is a minus
-sign (`-'), then the sign of the argument will be negative.  Once you
+meta digits before the command.  If the first 'digit' typed is a minus
+sign ('-'), then the sign of the argument will be negative.  Once you
 have typed one meta digit to get the argument started, you can type the
-remainder of the digits, and then the command.  For example, to give
-the `C-d' command an argument of 10, you could type `M-1 0 C-d', which
-will delete the next ten characters on the input line.
+remainder of the digits, and then the command.  For example, to give the
+'C-d' command an argument of 10, you could type 'M-1 0 C-d', which will
+delete the next ten characters on the input line.
 
 \1f
 File: rluserman.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline Interaction
@@ -276,36 +263,36 @@ File: rluserman.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline
 1.2.5 Searching for Commands in the History
 -------------------------------------------
 
-Readline provides commands for searching through the command history
-for lines containing a specified string.  There are two search modes:
+Readline provides commands for searching through the command history for
+lines containing a specified string.  There are two search modes:
 "incremental" and "non-incremental".
 
    Incremental searches begin before the user has finished typing the
 search string.  As each character of the search string is typed,
 Readline displays the next entry from the history matching the string
-typed so far.  An incremental search requires only as many characters
-as needed to find the desired history entry.  To search backward in the
-history for a particular string, type `C-r'.  Typing `C-s' searches
-forward through the history.  The characters present in the value of
-the `isearch-terminators' variable are used to terminate an incremental
+typed so far.  An incremental search requires only as many characters as
+needed to find the desired history entry.  To search backward in the
+history for a particular string, type 'C-r'.  Typing 'C-s' searches
+forward through the history.  The characters present in the value of the
+'isearch-terminators' variable are used to terminate an incremental
 search.  If that variable has not been assigned a value, the <ESC> and
-`C-J' characters will terminate an incremental search.  `C-g' will
-abort an incremental search and restore the original line.  When the
-search is terminated, the history entry containing the search string
-becomes the current line.
-
-   To find other matching entries in the history list, type `C-r' or
-`C-s' as appropriate.  This will search backward or forward in the
-history for the next entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate the
-search and execute that command.  For instance, a <RET> will terminate
-the search and accept the line, thereby executing the command from the
+'C-J' characters will terminate an incremental search.  'C-g' will abort
+an incremental search and restore the original line.  When the search is
+terminated, the history entry containing the search string becomes the
+current line.
+
+   To find other matching entries in the history list, type 'C-r' or
+'C-s' as appropriate.  This will search backward or forward in the
+history for the next entry matching the search string typed so far.  Any
+other key sequence bound to a Readline command will terminate the search
+and execute that command.  For instance, a <RET> will terminate the
+search and accept the line, thereby executing the command from the
 history list.  A movement command will terminate the search, make the
 last line found the current line, and begin editing.
 
-   Readline remembers the last incremental search string.  If two
-`C-r's are typed without any intervening characters defining a new
-search string, any remembered search string is used.
+   Readline remembers the last incremental search string.  If two 'C-r's
+are typed without any intervening characters defining a new search
+string, any remembered search string is used.
 
    Non-incremental searches read the entire search string before
 starting to search for matching history lines.  The search string may be
@@ -317,19 +304,19 @@ File: rluserman.info,  Node: Readline Init File,  Next: Bindable Readline Comman
 1.3 Readline Init File
 ======================
 
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.  Any user can customize programs that use Readline by
+Although the Readline library comes with a set of Emacs-like keybindings
+installed by default, it is possible to use a different set of
+keybindings.  Any user can customize programs that use Readline by
 putting commands in an "inputrc" file, conventionally in his home
 directory.  The name of this file is taken from the value of the
-environment variable `INPUTRC'.  If that variable is unset, the default
-is `~/.inputrc'.  If that file does not exist or cannot be read, the
-ultimate default is `/etc/inputrc'.
+environment variable 'INPUTRC'.  If that variable is unset, the default
+is '~/.inputrc'.  If that file does not exist or cannot be read, the
+ultimate default is '/etc/inputrc'.
 
    When a program which uses the Readline library starts up, the init
 file is read, and the key bindings are set.
 
-   In addition, the `C-x C-r' command re-reads this init file, thus
+   In addition, the 'C-x C-r' command re-reads this init file, thus
 incorporating any changes that you might have made to it.
 
 * Menu:
@@ -346,21 +333,21 @@ File: rluserman.info,  Node: Readline Init File Syntax,  Next: Conditional Init
 1.3.1 Readline Init File Syntax
 -------------------------------
 
-There are only a few basic constructs allowed in the Readline init
-file.  Blank lines are ignored.  Lines beginning with a `#' are
-comments.  Lines beginning with a `$' indicate conditional constructs
-(*note Conditional Init Constructs::).  Other lines denote variable
-settings and key bindings.
+There are only a few basic constructs allowed in the Readline init file.
+Blank lines are ignored.  Lines beginning with a '#' are comments.
+Lines beginning with a '$' indicate conditional constructs (*note
+Conditional Init Constructs::).  Other lines denote variable settings
+and key bindings.
 
 Variable Settings
      You can modify the run-time behavior of Readline by altering the
-     values of variables in Readline using the `set' command within the
+     values of variables in Readline using the 'set' command within the
      init file.  The syntax is simple:
 
           set VARIABLE VALUE
 
-     Here, for example, is how to change from the default Emacs-like
-     key binding to use `vi' line editing commands:
+     Here, for example, is how to change from the default Emacs-like key
+     binding to use 'vi' line editing commands:
 
           set editing-mode vi
 
@@ -368,258 +355,308 @@ Variable Settings
      without regard to case.  Unrecognized variable names are ignored.
 
      Boolean variables (those that can be set to on or off) are set to
-     on if the value is null or empty, ON (case-insensitive), or 1.
-     Any other value results in the variable being set to off.
+     on if the value is null or empty, ON (case-insensitive), or 1.  Any
+     other value results in the variable being set to off.
 
      A great deal of run-time behavior is changeable with the following
      variables.
 
-    `bell-style'
-          Controls what happens when Readline wants to ring the
-          terminal bell.  If set to `none', Readline never rings the
-          bell.  If set to `visible', Readline uses a visible bell if
-          one is available.  If set to `audible' (the default),
-          Readline attempts to ring the terminal's bell.
-
-    `bind-tty-special-chars'
-          If set to `on', Readline attempts to bind the control
-          characters treated specially by the kernel's terminal driver
-          to their Readline equivalents.
-
-    `colored-stats'
-          If set to `on', Readline displays possible completions using
+     'bell-style'
+          Controls what happens when Readline wants to ring the terminal
+          bell.  If set to 'none', Readline never rings the bell.  If
+          set to 'visible', Readline uses a visible bell if one is
+          available.  If set to 'audible' (the default), Readline
+          attempts to ring the terminal's bell.
+
+     'bind-tty-special-chars'
+          If set to 'on' (the default), Readline attempts to bind the
+          control characters treated specially by the kernel's terminal
+          driver to their Readline equivalents.
+
+     'blink-matching-paren'
+          If set to 'on', Readline attempts to briefly move the cursor
+          to an opening parenthesis when a closing parenthesis is
+          inserted.  The default is 'off'.
+
+     'colored-completion-prefix'
+          If set to 'on', when listing completions, Readline displays
+          the common prefix of the set of possible completions using a
+          different color.  The color definitions are taken from the
+          value of the 'LS_COLORS' environment variable.  The default is
+          'off'.
+
+     'colored-stats'
+          If set to 'on', Readline displays possible completions using
           different colors to indicate their file type.  The color
-          definitions are taken from the value of the `LS_COLORS'
-          environment variable.  The default is `off'.
+          definitions are taken from the value of the 'LS_COLORS'
+          environment variable.  The default is 'off'.
 
-    `comment-begin'
+     'comment-begin'
           The string to insert at the beginning of the line when the
-          `insert-comment' command is executed.  The default value is
-          `"#"'.
+          'insert-comment' command is executed.  The default value is
+          '"#"'.
 
-    `completion-display-width'
+     'completion-display-width'
           The number of screen columns used to display possible matches
           when performing completion.  The value is ignored if it is
           less than 0 or greater than the terminal screen width.  A
           value of 0 will cause matches to be displayed one per line.
           The default value is -1.
 
-    `completion-ignore-case'
-          If set to `on', Readline performs filename matching and
+     'completion-ignore-case'
+          If set to 'on', Readline performs filename matching and
           completion in a case-insensitive fashion.  The default value
-          is `off'.
+          is 'off'.
 
-    `completion-map-case'
-          If set to `on', and COMPLETION-IGNORE-CASE is enabled,
-          Readline treats hyphens (`-') and underscores (`_') as
+     'completion-map-case'
+          If set to 'on', and COMPLETION-IGNORE-CASE is enabled,
+          Readline treats hyphens ('-') and underscores ('_') as
           equivalent when performing case-insensitive filename matching
           and completion.
 
-    `completion-prefix-display-length'
+     'completion-prefix-display-length'
           The length in characters of the common prefix of a list of
           possible completions that is displayed without modification.
           When set to a value greater than zero, common prefixes longer
           than this value are replaced with an ellipsis when displaying
           possible completions.
 
-    `completion-query-items'
+     'completion-query-items'
           The number of possible completions that determines when the
           user is asked whether the list of possibilities should be
           displayed.  If the number of possible completions is greater
           than this value, Readline will ask the user whether or not he
           wishes to view them; otherwise, they are simply listed.  This
-          variable must be set to an integer value greater than or
-          equal to 0.  A negative value means Readline should never ask.
-          The default limit is `100'.
+          variable must be set to an integer value greater than or equal
+          to 0.  A negative value means Readline should never ask.  The
+          default limit is '100'.
 
-    `convert-meta'
-          If set to `on', Readline will convert characters with the
+     'convert-meta'
+          If set to 'on', Readline will convert characters with the
           eighth bit set to an ASCII key sequence by stripping the
           eighth bit and prefixing an <ESC> character, converting them
-          to a meta-prefixed key sequence.  The default value is `on'.
+          to a meta-prefixed key sequence.  The default value is 'on'.
 
-    `disable-completion'
-          If set to `On', Readline will inhibit word completion.
-          Completion  characters will be inserted into the line as if
-          they had been mapped to `self-insert'.  The default is `off'.
+     'disable-completion'
+          If set to 'On', Readline will inhibit word completion.
+          Completion characters will be inserted into the line as if
+          they had been mapped to 'self-insert'.  The default is 'off'.
 
-    `editing-mode'
-          The `editing-mode' variable controls which default set of key
+     'editing-mode'
+          The 'editing-mode' variable controls which default set of key
           bindings is used.  By default, Readline starts up in Emacs
           editing mode, where the keystrokes are most similar to Emacs.
-          This variable can be set to either `emacs' or `vi'.
-
-    `echo-control-characters'
-          When set to `on', on operating systems that indicate they
+          This variable can be set to either 'emacs' or 'vi'.
+
+     'emacs-mode-string'
+          This string is displayed immediately before the last line of
+          the primary prompt when emacs editing mode is active.  The
+          value is expanded like a key binding, so the standard set of
+          meta- and control prefixes and backslash escape sequences is
+          available.  Use the '\1' and '\2' escapes to begin and end
+          sequences of non-printing characters, which can be used to
+          embed a terminal control sequence into the mode string.  The
+          default is '@'.
+
+     'echo-control-characters'
+          When set to 'on', on operating systems that indicate they
           support it, readline echoes a character corresponding to a
-          signal generated from the keyboard.  The default is `on'.
-
-    `enable-keypad'
-          When set to `on', Readline will try to enable the application
+          signal generated from the keyboard.  The default is 'on'.
+
+     'enable-bracketed-paste'
+          When set to 'On', Readline will configure the terminal in a
+          way that will enable it to insert each paste into the editing
+          buffer as a single string of characters, instead of treating
+          each character as if it had been read from the keyboard.  This
+          can prevent pasted characters from being interpreted as
+          editing commands.  The default is 'off'.
+
+     'enable-keypad'
+          When set to 'on', Readline will try to enable the application
           keypad when it is called.  Some systems need this to enable
-          the arrow keys.  The default is `off'.
+          the arrow keys.  The default is 'off'.
 
-    `enable-meta-key'
-          When set to `on', Readline will try to enable any meta
-          modifier key the terminal claims to support when it is
-          called.  On many terminals, the meta key is used to send
-          eight-bit characters.  The default is `on'.
+     'enable-meta-key'
+          When set to 'on', Readline will try to enable any meta
+          modifier key the terminal claims to support when it is called.
+          On many terminals, the meta key is used to send eight-bit
+          characters.  The default is 'on'.
 
-    `expand-tilde'
-          If set to `on', tilde expansion is performed when Readline
-          attempts word completion.  The default is `off'.
+     'expand-tilde'
+          If set to 'on', tilde expansion is performed when Readline
+          attempts word completion.  The default is 'off'.
 
-    `history-preserve-point'
-          If set to `on', the history code attempts to place the point
+     'history-preserve-point'
+          If set to 'on', the history code attempts to place the point
           (the current cursor position) at the same location on each
-          history line retrieved with `previous-history' or
-          `next-history'.  The default is `off'.
-
-    `history-size'
-          Set the maximum number of history entries saved in the
-          history list.  If set to zero, any existing history entries
-          are deleted and no new entries are saved.  If set to a value
-          less than zero, the number of history entries is not limited.
-          By default, the number of history entries is not limited.
-
-    `horizontal-scroll-mode'
-          This variable can be set to either `on' or `off'.  Setting it
-          to `on' means that the text of the lines being edited will
+          history line retrieved with 'previous-history' or
+          'next-history'.  The default is 'off'.
+
+     'history-size'
+          Set the maximum number of history entries saved in the history
+          list.  If set to zero, any existing history entries are
+          deleted and no new entries are saved.  If set to a value less
+          than zero, the number of history entries is not limited.  By
+          default, the number of history entries is not limited.
+
+     'horizontal-scroll-mode'
+          This variable can be set to either 'on' or 'off'.  Setting it
+          to 'on' means that the text of the lines being edited will
           scroll horizontally on a single screen line when they are
           longer than the width of the screen, instead of wrapping onto
-          a new screen line.  By default, this variable is set to `off'.
+          a new screen line.  By default, this variable is set to 'off'.
 
-    `input-meta'
-          If set to `on', Readline will enable eight-bit input (it will
+     'input-meta'
+          If set to 'on', Readline will enable eight-bit input (it will
           not clear the eighth bit in the characters it reads),
           regardless of what the terminal claims it can support.  The
-          default value is `off'.  The name `meta-flag' is a synonym
-          for this variable.
+          default value is 'off'.  The name 'meta-flag' is a synonym for
+          this variable.
 
-    `isearch-terminators'
+     'isearch-terminators'
           The string of characters that should terminate an incremental
           search without subsequently executing the character as a
           command (*note Searching::).  If this variable has not been
-          given a value, the characters <ESC> and `C-J' will terminate
+          given a value, the characters <ESC> and 'C-J' will terminate
           an incremental search.
 
-    `keymap'
+     'keymap'
           Sets Readline's idea of the current keymap for key binding
-          commands.  Acceptable `keymap' names are `emacs',
-          `emacs-standard', `emacs-meta', `emacs-ctlx', `vi', `vi-move',
-          `vi-command', and `vi-insert'.  `vi' is equivalent to
-          `vi-command'; `emacs' is equivalent to `emacs-standard'.  The
-          default value is `emacs'.  The value of the `editing-mode'
+          commands.  Acceptable 'keymap' names are 'emacs',
+          'emacs-standard', 'emacs-meta', 'emacs-ctlx', 'vi', 'vi-move',
+          'vi-command', and 'vi-insert'.  'vi' is equivalent to
+          'vi-command'; 'emacs' is equivalent to 'emacs-standard'.  The
+          default value is 'emacs'.  The value of the 'editing-mode'
           variable also affects the default keymap.
 
-    `keyseq-timeout'
-          Specifies the duration Readline will wait for a character
-          when reading an ambiguous key sequence (one that can form a
-          complete key sequence using the input read so far, or can
-          take additional input to complete a longer key sequence).  If
-          no input is received within the timeout, Readline will use
-          the shorter but complete key sequence.  Readline uses this
-          value to determine whether or not input is available on the
-          current input source (`rl_instream' by default).  The value
-          is specified in milliseconds, so a value of 1000 means that
+     'keyseq-timeout'
+          Specifies the duration Readline will wait for a character when
+          reading an ambiguous key sequence (one that can form a
+          complete key sequence using the input read so far, or can take
+          additional input to complete a longer key sequence).  If no
+          input is received within the timeout, Readline will use the
+          shorter but complete key sequence.  Readline uses this value
+          to determine whether or not input is available on the current
+          input source ('rl_instream' by default).  The value is
+          specified in milliseconds, so a value of 1000 means that
           Readline will wait one second for additional input.  If this
           variable is set to a value less than or equal to zero, or to a
           non-numeric value, Readline will wait until another key is
-          pressed to decide which key sequence to complete.  The
-          default value is `500'.
+          pressed to decide which key sequence to complete.  The default
+          value is '500'.
 
-    `mark-directories'
-          If set to `on', completed directory names have a slash
-          appended.  The default is `on'.
+     'mark-directories'
+          If set to 'on', completed directory names have a slash
+          appended.  The default is 'on'.
 
-    `mark-modified-lines'
-          This variable, when set to `on', causes Readline to display an
-          asterisk (`*') at the start of history lines which have been
-          modified.  This variable is `off' by default.
+     'mark-modified-lines'
+          This variable, when set to 'on', causes Readline to display an
+          asterisk ('*') at the start of history lines which have been
+          modified.  This variable is 'off' by default.
 
-    `mark-symlinked-directories'
-          If set to `on', completed names which are symbolic links to
+     'mark-symlinked-directories'
+          If set to 'on', completed names which are symbolic links to
           directories have a slash appended (subject to the value of
-          `mark-directories').  The default is `off'.
+          'mark-directories').  The default is 'off'.
 
-    `match-hidden-files'
-          This variable, when set to `on', causes Readline to match
-          files whose names begin with a `.' (hidden files) when
-          performing filename completion.  If set to `off', the leading
-          `.' must be supplied by the user in the filename to be
-          completed.  This variable is `on' by default.
+     'match-hidden-files'
+          This variable, when set to 'on', causes Readline to match
+          files whose names begin with a '.' (hidden files) when
+          performing filename completion.  If set to 'off', the leading
+          '.' must be supplied by the user in the filename to be
+          completed.  This variable is 'on' by default.
 
-    `menu-complete-display-prefix'
-          If set to `on', menu completion displays the common prefix of
+     'menu-complete-display-prefix'
+          If set to 'on', menu completion displays the common prefix of
           the list of possible completions (which may be empty) before
-          cycling through the list.  The default is `off'.
+          cycling through the list.  The default is 'off'.
 
-    `output-meta'
-          If set to `on', Readline will display characters with the
+     'output-meta'
+          If set to 'on', Readline will display characters with the
           eighth bit set directly rather than as a meta-prefixed escape
-          sequence.  The default is `off'.
+          sequence.  The default is 'off'.
 
-    `page-completions'
-          If set to `on', Readline uses an internal `more'-like pager
-          to display a screenful of possible completions at a time.
-          This variable is `on' by default.
+     'page-completions'
+          If set to 'on', Readline uses an internal 'more'-like pager to
+          display a screenful of possible completions at a time.  This
+          variable is 'on' by default.
 
-    `print-completions-horizontally'
-          If set to `on', Readline will display completions with matches
+     'print-completions-horizontally'
+          If set to 'on', Readline will display completions with matches
           sorted horizontally in alphabetical order, rather than down
-          the screen.  The default is `off'.
+          the screen.  The default is 'off'.
 
-    `revert-all-at-newline'
-          If set to `on', Readline will undo all changes to history
-          lines before returning when `accept-line' is executed.  By
+     'revert-all-at-newline'
+          If set to 'on', Readline will undo all changes to history
+          lines before returning when 'accept-line' is executed.  By
           default, history lines may be modified and retain individual
-          undo lists across calls to `readline'.  The default is `off'.
+          undo lists across calls to 'readline'.  The default is 'off'.
 
-    `show-all-if-ambiguous'
+     'show-all-if-ambiguous'
           This alters the default behavior of the completion functions.
-          If set to `on', words which have more than one possible
+          If set to 'on', words which have more than one possible
           completion cause the matches to be listed immediately instead
-          of ringing the bell.  The default value is `off'.
+          of ringing the bell.  The default value is 'off'.
 
-    `show-all-if-unmodified'
+     'show-all-if-unmodified'
           This alters the default behavior of the completion functions
           in a fashion similar to SHOW-ALL-IF-AMBIGUOUS.  If set to
-          `on', words which have more than one possible completion
+          'on', words which have more than one possible completion
           without any possible partial completion (the possible
           completions don't share a common prefix) cause the matches to
           be listed immediately instead of ringing the bell.  The
-          default value is `off'.
-
-    `show-mode-in-prompt'
-          If set to `on', add a character to the beginning of the prompt
-          indicating the editing mode: emacs (`@'), vi command (`:'),
-          or vi insertion (`+').  The default value is `off'.
-
-    `skip-completed-text'
-          If set to `on', this alters the default completion behavior
-          when inserting a single match into the line.  It's only
-          active when performing completion in the middle of a word.
-          If enabled, readline does not insert characters from the
-          completion that match characters after point in the word
-          being completed, so portions of the word following the cursor
-          are not duplicated.  For instance, if this is enabled,
-          attempting completion when the cursor is after the `e' in
-          `Makefile' will result in `Makefile' rather than
-          `Makefilefile', assuming there is a single possible
-          completion.  The default value is `off'.
-
-    `visible-stats'
-          If set to `on', a character denoting a file's type is
-          appended to the filename when listing possible completions.
-          The default is `off'.
-
+          default value is 'off'.
+
+     'show-mode-in-prompt'
+          If set to 'on', add a character to the beginning of the prompt
+          indicating the editing mode: emacs, vi command, or vi
+          insertion.  The mode strings are user-settable.  The default
+          value is 'off'.
+
+     'skip-completed-text'
+          If set to 'on', this alters the default completion behavior
+          when inserting a single match into the line.  It's only active
+          when performing completion in the middle of a word.  If
+          enabled, readline does not insert characters from the
+          completion that match characters after point in the word being
+          completed, so portions of the word following the cursor are
+          not duplicated.  For instance, if this is enabled, attempting
+          completion when the cursor is after the 'e' in 'Makefile' will
+          result in 'Makefile' rather than 'Makefilefile', assuming
+          there is a single possible completion.  The default value is
+          'off'.
+
+     'vi-cmd-mode-string'
+          This string is displayed immediately before the last line of
+          the primary prompt when vi editing mode is active and in
+          command mode.  The value is expanded like a key binding, so
+          the standard set of meta- and control prefixes and backslash
+          escape sequences is available.  Use the '\1' and '\2' escapes
+          to begin and end sequences of non-printing characters, which
+          can be used to embed a terminal control sequence into the mode
+          string.  The default is '(cmd)'.
+
+     'vi-ins-mode-string'
+          This string is displayed immediately before the last line of
+          the primary prompt when vi editing mode is active and in
+          insertion mode.  The value is expanded like a key binding, so
+          the standard set of meta- and control prefixes and backslash
+          escape sequences is available.  Use the '\1' and '\2' escapes
+          to begin and end sequences of non-printing characters, which
+          can be used to embed a terminal control sequence into the mode
+          string.  The default is '(ins)'.
+
+     'visible-stats'
+          If set to 'on', a character denoting a file's type is appended
+          to the filename when listing possible completions.  The
+          default is 'off'.
 
 Key Bindings
-     The syntax for controlling key bindings in the init file is
-     simple.  First you need to find the name of the command that you
-     want to change.  The following sections contain tables of the
-     command name, the default keybinding, if any, and a short
-     description of what the command does.
+     The syntax for controlling key bindings in the init file is simple.
+     First you need to find the name of the command that you want to
+     change.  The following sections contain tables of the command name,
+     the default keybinding, if any, and a short description of what the
+     command does.
 
      Once you know the name of the command, simply place on a line in
      the init file the name of the key you wish to bind the command to,
@@ -628,27 +665,27 @@ Key Bindings
      part of the key name.  The name of the key can be expressed in
      different ways, depending on what you find most comfortable.
 
-     In addition to command names, readline allows keys to be bound to
-     string that is inserted when the key is pressed (a MACRO).
+     In addition to command names, readline allows keys to be bound to a
+     string that is inserted when the key is pressed (a MACRO).
 
-    KEYNAME: FUNCTION-NAME or MACRO
+     KEYNAME: FUNCTION-NAME or MACRO
           KEYNAME is the name of a key spelled out in English.  For
           example:
                Control-u: universal-argument
                Meta-Rubout: backward-kill-word
                Control-o: "> output"
 
-          In the above example, `C-u' is bound to the function
-          `universal-argument', `M-DEL' is bound to the function
-          `backward-kill-word', and `C-o' is bound to run the macro
+          In the above example, 'C-u' is bound to the function
+          'universal-argument', 'M-DEL' is bound to the function
+          'backward-kill-word', and 'C-o' is bound to run the macro
           expressed on the right hand side (that is, to insert the text
-          `> output' into the line).
+          '> output' into the line).
 
           A number of symbolic character names are recognized while
           processing this key binding syntax: DEL, ESC, ESCAPE, LFD,
           NEWLINE, RET, RETURN, RUBOUT, SPACE, SPC, and TAB.
 
-    "KEYSEQ": FUNCTION-NAME or MACRO
+     "KEYSEQ": FUNCTION-NAME or MACRO
           KEYSEQ differs from KEYNAME above in that strings denoting an
           entire key sequence can be specified, by placing the key
           sequence in double quotes.  Some GNU Emacs style key escapes
@@ -659,66 +696,51 @@ Key Bindings
                "\C-x\C-r": re-read-init-file
                "\e[11~": "Function Key 1"
 
-          In the above example, `C-u' is again bound to the function
-          `universal-argument' (just as it was in the first example),
-          `C-x C-r' is bound to the function `re-read-init-file', and
-          `<ESC> <[> <1> <1> <~>' is bound to insert the text `Function
-          Key 1'.
-
+          In the above example, 'C-u' is again bound to the function
+          'universal-argument' (just as it was in the first example),
+          ''C-x' 'C-r'' is bound to the function 're-read-init-file',
+          and '<ESC> <[> <1> <1> <~>' is bound to insert the text
+          'Function Key 1'.
 
      The following GNU Emacs style escape sequences are available when
      specifying key sequences:
 
-    `\C-'
+     '\C-'
           control prefix
-
-    `\M-'
+     '\M-'
           meta prefix
-
-    `\e'
+     '\e'
           an escape character
-
-    `\\'
+     '\\'
           backslash
-
-    `\"'
+     '\"'
           <">, a double quotation mark
-
-    `\''
+     '\''
           <'>, a single quote or apostrophe
 
      In addition to the GNU Emacs style escape sequences, a second set
      of backslash escapes is available:
 
-    `\a'
+     '\a'
           alert (bell)
-
-    `\b'
+     '\b'
           backspace
-
-    `\d'
+     '\d'
           delete
-
-    `\f'
+     '\f'
           form feed
-
-    `\n'
+     '\n'
           newline
-
-    `\r'
+     '\r'
           carriage return
-
-    `\t'
+     '\t'
           horizontal tab
-
-    `\v'
+     '\v'
           vertical tab
-
-    `\NNN'
+     '\NNN'
           the eight-bit character whose value is the octal value NNN
           (one to three digits)
-
-    `\xHH'
+     '\xHH'
           the eight-bit character whose value is the hexadecimal value
           HH (one or two hex digits)
 
@@ -726,12 +748,11 @@ Key Bindings
      used to indicate a macro definition.  Unquoted text is assumed to
      be a function name.  In the macro body, the backslash escapes
      described above are expanded.  Backslash will quote any other
-     character in the macro text, including `"' and `''.  For example,
-     the following binding will make `C-x \' insert a single `\' into
+     character in the macro text, including '"' and '''.  For example,
+     the following binding will make ''C-x' \' insert a single '\' into
      the line:
           "\C-x\\": "\\"
 
-
 \1f
 File: rluserman.info,  Node: Conditional Init Constructs,  Next: Sample Init File,  Prev: Readline Init File Syntax,  Up: Readline Init File
 
@@ -739,33 +760,32 @@ File: rluserman.info,  Node: Conditional Init Constructs,  Next: Sample Init Fil
 ---------------------------------
 
 Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key bindings
-and variable settings to be performed as the result of tests.  There
-are four parser directives used.
-
-`$if'
-     The `$if' construct allows bindings to be made based on the
-     editing mode, the terminal being used, or the application using
-     Readline.  The text of the test extends to the end of the line; no
-     characters are required to isolate it.
-
-    `mode'
-          The `mode=' form of the `$if' directive is used to test
-          whether Readline is in `emacs' or `vi' mode.  This may be
-          used in conjunction with the `set keymap' command, for
-          instance, to set bindings in the `emacs-standard' and
-          `emacs-ctlx' keymaps only if Readline is starting out in
-          `emacs' mode.
-
-    `term'
-          The `term=' form may be used to include terminal-specific key
+compilation features of the C preprocessor which allows key bindings and
+variable settings to be performed as the result of tests.  There are
+four parser directives used.
+
+'$if'
+     The '$if' construct allows bindings to be made based on the editing
+     mode, the terminal being used, or the application using Readline.
+     The text of the test extends to the end of the line; no characters
+     are required to isolate it.
+
+     'mode'
+          The 'mode=' form of the '$if' directive is used to test
+          whether Readline is in 'emacs' or 'vi' mode.  This may be used
+          in conjunction with the 'set keymap' command, for instance, to
+          set bindings in the 'emacs-standard' and 'emacs-ctlx' keymaps
+          only if Readline is starting out in 'emacs' mode.
+
+     'term'
+          The 'term=' form may be used to include terminal-specific key
           bindings, perhaps to bind the key sequences output by the
           terminal's function keys.  The word on the right side of the
-          `=' is tested against both the full name of the terminal and
-          the portion of the terminal name before the first `-'.  This
-          allows `sun' to match both `sun' and `sun-cmd', for instance.
+          '=' is tested against both the full name of the terminal and
+          the portion of the terminal name before the first '-'.  This
+          allows 'sun' to match both 'sun' and 'sun-cmd', for instance.
 
-    `application'
+     'application'
           The APPLICATION construct is used to include
           application-specific settings.  Each program using the
           Readline library sets the APPLICATION NAME, and you can test
@@ -778,18 +798,18 @@ are four parser directives used.
                "\C-xq": "\eb\"\ef\""
                $endif
 
-`$endif'
-     This command, as seen in the previous example, terminates an `$if'
+'$endif'
+     This command, as seen in the previous example, terminates an '$if'
      command.
 
-`$else'
-     Commands in this branch of the `$if' directive are executed if the
+'$else'
+     Commands in this branch of the '$if' directive are executed if the
      test fails.
 
-`$include'
+'$include'
      This directive takes a single filename as an argument and reads
      commands and bindings from that file.  For example, the following
-     directive reads from `/etc/inputrc':
+     directive reads from '/etc/inputrc':
           $include /etc/inputrc
 
 \1f
@@ -801,7 +821,6 @@ File: rluserman.info,  Node: Sample Init File,  Prev: Conditional Init Construct
 Here is an example of an INPUTRC file.  This illustrates key binding,
 variable assignment, and conditional syntax.
 
-
      # This file controls the behaviour of line input editing for
      # programs that use the GNU Readline library.  Existing
      # programs include FTP, Bash, and GDB.
@@ -919,14 +938,14 @@ File: rluserman.info,  Node: Bindable Readline Commands,  Next: Readline vi Mode
 * Keyboard Macros::            Saving and re-executing typed characters
 * Miscellaneous Commands::     Other miscellaneous commands.
 
-   This section describes Readline commands that may be bound to key
+This section describes Readline commands that may be bound to key
 sequences.  Command names without an accompanying key sequence are
 unbound by default.
 
    In the following descriptions, "point" refers to the current cursor
-position, and "mark" refers to a cursor position saved by the
-`set-mark' command.  The text between the point and mark is referred to
-as the "region".
+position, and "mark" refers to a cursor position saved by the 'set-mark'
+command.  The text between the point and mark is referred to as the
+"region".
 
 \1f
 File: rluserman.info,  Node: Commands For Moving,  Next: Commands For History,  Up: Bindable Readline Commands
@@ -934,125 +953,123 @@ File: rluserman.info,  Node: Commands For Moving,  Next: Commands For History,
 1.4.1 Commands For Moving
 -------------------------
 
-`beginning-of-line (C-a)'
+'beginning-of-line (C-a)'
      Move to the start of the current line.
 
-`end-of-line (C-e)'
+'end-of-line (C-e)'
      Move to the end of the line.
 
-`forward-char (C-f)'
+'forward-char (C-f)'
      Move forward a character.
 
-`backward-char (C-b)'
+'backward-char (C-b)'
      Move back a character.
 
-`forward-word (M-f)'
+'forward-word (M-f)'
      Move forward to the end of the next word.  Words are composed of
      letters and digits.
 
-`backward-word (M-b)'
+'backward-word (M-b)'
      Move back to the start of the current or previous word.  Words are
      composed of letters and digits.
 
-`clear-screen (C-l)'
+'clear-screen (C-l)'
      Clear the screen and redraw the current line, leaving the current
      line at the top of the screen.
 
-`redraw-current-line ()'
+'redraw-current-line ()'
      Refresh the current line.  By default, this is unbound.
 
-
 \1f
 File: rluserman.info,  Node: Commands For History,  Next: Commands For Text,  Prev: Commands For Moving,  Up: Bindable Readline Commands
 
 1.4.2 Commands For Manipulating The History
 -------------------------------------------
 
-`accept-line (Newline or Return)'
+'accept-line (Newline or Return)'
      Accept the line regardless of where the cursor is.  If this line is
      non-empty, it may be added to the history list for future recall
-     with `add_history()'.  If this line is a modified history line,
-     the history line is restored to its original state.
+     with 'add_history()'.  If this line is a modified history line, the
+     history line is restored to its original state.
 
-`previous-history (C-p)'
-     Move `back' through the history list, fetching the previous
+'previous-history (C-p)'
+     Move 'back' through the history list, fetching the previous
      command.
 
-`next-history (C-n)'
-     Move `forward' through the history list, fetching the next command.
+'next-history (C-n)'
+     Move 'forward' through the history list, fetching the next command.
 
-`beginning-of-history (M-<)'
+'beginning-of-history (M-<)'
      Move to the first line in the history.
 
-`end-of-history (M->)'
+'end-of-history (M->)'
      Move to the end of the input history, i.e., the line currently
      being entered.
 
-`reverse-search-history (C-r)'
-     Search backward starting at the current line and moving `up'
+'reverse-search-history (C-r)'
+     Search backward starting at the current line and moving 'up'
      through the history as necessary.  This is an incremental search.
 
-`forward-search-history (C-s)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary.  This is an incremental
-     search.
+'forward-search-history (C-s)'
+     Search forward starting at the current line and moving 'down'
+     through the history as necessary.  This is an incremental search.
 
-`non-incremental-reverse-search-history (M-p)'
-     Search backward starting at the current line and moving `up'
-     through the history as necessary using a non-incremental search
-     for a string supplied by the user.
+'non-incremental-reverse-search-history (M-p)'
+     Search backward starting at the current line and moving 'up'
+     through the history as necessary using a non-incremental search for
+     a string supplied by the user.  The search string may match
+     anywhere in a history line.
 
-`non-incremental-forward-search-history (M-n)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary using a non-incremental search
-     for a string supplied by the user.
+'non-incremental-forward-search-history (M-n)'
+     Search forward starting at the current line and moving 'down'
+     through the history as necessary using a non-incremental search for
+     a string supplied by the user.  The search string may match
+     anywhere in a history line.
 
-`history-search-forward ()'
+'history-search-forward ()'
      Search forward through the history for the string of characters
      between the start of the current line and the point.  The search
      string must match at the beginning of a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`history-search-backward ()'
+'history-search-backward ()'
      Search backward through the history for the string of characters
      between the start of the current line and the point.  The search
      string must match at the beginning of a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`history-substr-search-forward ()'
+'history-substr-search-forward ()'
      Search forward through the history for the string of characters
      between the start of the current line and the point.  The search
      string may match anywhere in a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`history-substr-search-backward ()'
+'history-substr-search-backward ()'
      Search backward through the history for the string of characters
      between the start of the current line and the point.  The search
      string may match anywhere in a history line.  This is a
      non-incremental search.  By default, this command is unbound.
 
-`yank-nth-arg (M-C-y)'
+'yank-nth-arg (M-C-y)'
      Insert the first argument to the previous command (usually the
      second word on the previous line) at point.  With an argument N,
      insert the Nth word from the previous command (the words in the
      previous command begin with word 0).  A negative argument inserts
      the Nth word from the end of the previous command.  Once the
-     argument N is computed, the argument is extracted as if the `!N'
+     argument N is computed, the argument is extracted as if the '!N'
      history expansion had been specified.
 
-`yank-last-arg (M-. or M-_)'
+'yank-last-arg (M-. or M-_)'
      Insert last argument to the previous command (the last word of the
      previous history entry).  With a numeric argument, behave exactly
-     like `yank-nth-arg'.  Successive calls to `yank-last-arg' move
-     back through the history list, inserting the last word (or the
-     word specified by the argument to the first call) of each line in
-     turn.  Any numeric argument supplied to these successive calls
-     determines the direction to move through the history.  A negative
-     argument switches the direction through the history (back or
-     forward).  The history expansion facilities are used to extract
-     the last argument, as if the `!$' history expansion had been
-     specified.
-
+     like 'yank-nth-arg'.  Successive calls to 'yank-last-arg' move back
+     through the history list, inserting the last word (or the word
+     specified by the argument to the first call) of each line in turn.
+     Any numeric argument supplied to these successive calls determines
+     the direction to move through the history.  A negative argument
+     switches the direction through the history (back or forward).  The
+     history expansion facilities are used to extract the last argument,
+     as if the '!$' history expansion had been specified.
 
 \1f
 File: rluserman.info,  Node: Commands For Text,  Next: Commands For Killing,  Prev: Commands For History,  Up: Bindable Readline Commands
@@ -1060,139 +1077,147 @@ File: rluserman.info,  Node: Commands For Text,  Next: Commands For Killing,  Pr
 1.4.3 Commands For Changing Text
 --------------------------------
 
-`end-of-file (usually C-d)'
+'end-of-file (usually C-d)'
      The character indicating end-of-file as set, for example, by
-     `stty'.  If this character is read when there are no characters on
+     'stty'.  If this character is read when there are no characters on
      the line, and point is at the beginning of the line, Readline
      interprets it as the end of input and returns EOF.
 
-`delete-char (C-d)'
+'delete-char (C-d)'
      Delete the character at point.  If this function is bound to the
-     same character as the tty EOF character, as `C-d' commonly is, see
+     same character as the tty EOF character, as 'C-d' commonly is, see
      above for the effects.
 
-`backward-delete-char (Rubout)'
+'backward-delete-char (Rubout)'
      Delete the character behind the cursor.  A numeric argument means
      to kill the characters instead of deleting them.
 
-`forward-backward-delete-char ()'
+'forward-backward-delete-char ()'
      Delete the character under the cursor, unless the cursor is at the
      end of the line, in which case the character behind the cursor is
      deleted.  By default, this is not bound to a key.
 
-`quoted-insert (C-q or C-v)'
+'quoted-insert (C-q or C-v)'
      Add the next character typed to the line verbatim.  This is how to
-     insert key sequences like `C-q', for example.
+     insert key sequences like 'C-q', for example.
 
-`tab-insert (M-<TAB>)'
+'tab-insert (M-<TAB>)'
      Insert a tab character.
 
-`self-insert (a, b, A, 1, !, ...)'
+'self-insert (a, b, A, 1, !, ...)'
      Insert yourself.
 
-`transpose-chars (C-t)'
+'bracketed-paste-begin ()'
+     This function is intended to be bound to the "bracketed paste"
+     escape sequence sent by some terminals, and such a binding is
+     assigned by default.  It allows Readline to insert the pasted text
+     as a single unit without treating each character as if it had been
+     read from the keyboard.  The characters are inserted as if each one
+     was bound to 'self-insert') instead of executing any editing
+     commands.
+
+'transpose-chars (C-t)'
      Drag the character before the cursor forward over the character at
      the cursor, moving the cursor forward as well.  If the insertion
      point is at the end of the line, then this transposes the last two
      characters of the line.  Negative arguments have no effect.
 
-`transpose-words (M-t)'
+'transpose-words (M-t)'
      Drag the word before point past the word after point, moving point
      past that word as well.  If the insertion point is at the end of
      the line, this transposes the last two words on the line.
 
-`upcase-word (M-u)'
+'upcase-word (M-u)'
      Uppercase the current (or following) word.  With a negative
      argument, uppercase the previous word, but do not move the cursor.
 
-`downcase-word (M-l)'
+'downcase-word (M-l)'
      Lowercase the current (or following) word.  With a negative
      argument, lowercase the previous word, but do not move the cursor.
 
-`capitalize-word (M-c)'
+'capitalize-word (M-c)'
      Capitalize the current (or following) word.  With a negative
      argument, capitalize the previous word, but do not move the cursor.
 
-`overwrite-mode ()'
+'overwrite-mode ()'
      Toggle overwrite mode.  With an explicit positive numeric argument,
      switches to overwrite mode.  With an explicit non-positive numeric
      argument, switches to insert mode.  This command affects only
-     `emacs' mode; `vi' mode does overwrite differently.  Each call to
-     `readline()' starts in insert mode.
+     'emacs' mode; 'vi' mode does overwrite differently.  Each call to
+     'readline()' starts in insert mode.
 
-     In overwrite mode, characters bound to `self-insert' replace the
+     In overwrite mode, characters bound to 'self-insert' replace the
      text at point rather than pushing the text to the right.
-     Characters bound to `backward-delete-char' replace the character
+     Characters bound to 'backward-delete-char' replace the character
      before point with a space.
 
      By default, this command is unbound.
 
-
 \1f
 File: rluserman.info,  Node: Commands For Killing,  Next: Numeric Arguments,  Prev: Commands For Text,  Up: Bindable Readline Commands
 
 1.4.4 Killing And Yanking
 -------------------------
 
-`kill-line (C-k)'
+'kill-line (C-k)'
      Kill the text from point to the end of the line.
 
-`backward-kill-line (C-x Rubout)'
-     Kill backward to the beginning of the line.
+'backward-kill-line (C-x Rubout)'
+     Kill backward from the cursor to the beginning of the current line.
 
-`unix-line-discard (C-u)'
+'unix-line-discard (C-u)'
      Kill backward from the cursor to the beginning of the current line.
 
-`kill-whole-line ()'
+'kill-whole-line ()'
      Kill all characters on the current line, no matter where point is.
      By default, this is unbound.
 
-`kill-word (M-d)'
+'kill-word (M-d)'
      Kill from point to the end of the current word, or if between
      words, to the end of the next word.  Word boundaries are the same
-     as `forward-word'.
+     as 'forward-word'.
 
-`backward-kill-word (M-<DEL>)'
+'backward-kill-word (M-<DEL>)'
      Kill the word behind point.  Word boundaries are the same as
-     `backward-word'.
+     'backward-word'.
 
-`unix-word-rubout (C-w)'
+'unix-word-rubout (C-w)'
      Kill the word behind point, using white space as a word boundary.
      The killed text is saved on the kill-ring.
 
-`unix-filename-rubout ()'
+'unix-filename-rubout ()'
      Kill the word behind point, using white space and the slash
      character as the word boundaries.  The killed text is saved on the
      kill-ring.
 
-`delete-horizontal-space ()'
+'delete-horizontal-space ()'
      Delete all spaces and tabs around point.  By default, this is
      unbound.
 
-`kill-region ()'
+'kill-region ()'
      Kill the text in the current region.  By default, this command is
      unbound.
 
-`copy-region-as-kill ()'
+'copy-region-as-kill ()'
      Copy the text in the region to the kill buffer, so it can be yanked
      right away.  By default, this command is unbound.
 
-`copy-backward-word ()'
-     Copy the word before point to the kill buffer.  The word
-     boundaries are the same as `backward-word'.  By default, this
-     command is unbound.
+'copy-backward-word ()'
+     Copy the word before point to the kill buffer.  The word boundaries
+     are the same as 'backward-word'.  By default, this command is
+     unbound.
 
-`copy-forward-word ()'
+'copy-forward-word ()'
      Copy the word following point to the kill buffer.  The word
-     boundaries are the same as `forward-word'.  By default, this
+     boundaries are the same as 'forward-word'.  By default, this
      command is unbound.
 
-`yank (C-y)'
+'yank (C-y)'
      Yank the top of the kill ring into the buffer at point.
 
-`yank-pop (M-y)'
+'yank-pop (M-y)'
      Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `yank' or `yank-pop'.
+     if the prior command is 'yank' or 'yank-pop'.
 
 \1f
 File: rluserman.info,  Node: Numeric Arguments,  Next: Commands For Completion,  Prev: Commands For Killing,  Up: Bindable Readline Commands
@@ -1200,22 +1225,22 @@ File: rluserman.info,  Node: Numeric Arguments,  Next: Commands For Completion,
 1.4.5 Specifying Numeric Arguments
 ----------------------------------
 
-`digit-argument (M-0, M-1, ... M--)'
+'digit-argument (M-0, M-1, ... M--)'
      Add this digit to the argument already accumulating, or start a new
-     argument.  `M--' starts a negative argument.
+     argument.  'M--' starts a negative argument.
 
-`universal-argument ()'
+'universal-argument ()'
      This is another way to specify an argument.  If this command is
      followed by one or more digits, optionally with a leading minus
-     sign, those digits define the argument.  If the command is
-     followed by digits, executing `universal-argument' again ends the
-     numeric argument, but is otherwise ignored.  As a special case, if
-     this command is immediately followed by a character that is
-     neither a digit or minus sign, the argument count for the next
-     command is multiplied by four.  The argument count is initially
-     one, so executing this function the first time makes the argument
-     count four, a second time makes the argument count sixteen, and so
-     on.  By default, this is not bound to a key.
+     sign, those digits define the argument.  If the command is followed
+     by digits, executing 'universal-argument' again ends the numeric
+     argument, but is otherwise ignored.  As a special case, if this
+     command is immediately followed by a character that is neither a
+     digit nor minus sign, the argument count for the next command is
+     multiplied by four.  The argument count is initially one, so
+     executing this function the first time makes the argument count
+     four, a second time makes the argument count sixteen, and so on.
+     By default, this is not bound to a key.
 
 \1f
 File: rluserman.info,  Node: Commands For Completion,  Next: Keyboard Macros,  Prev: Numeric Arguments,  Up: Bindable Readline Commands
@@ -1223,185 +1248,181 @@ File: rluserman.info,  Node: Commands For Completion,  Next: Keyboard Macros,  P
 1.4.6 Letting Readline Type For You
 -----------------------------------
 
-`complete (<TAB>)'
-     Attempt to perform completion on the text before point.  The
-     actual completion performed is application-specific.  The default
-     is filename completion.
+'complete (<TAB>)'
+     Attempt to perform completion on the text before point.  The actual
+     completion performed is application-specific.  The default is
+     filename completion.
 
-`possible-completions (M-?)'
+'possible-completions (M-?)'
      List the possible completions of the text before point.  When
      displaying completions, Readline sets the number of columns used
-     for display to the value of `completion-display-width', the value
-     of the environment variable `COLUMNS', or the screen width, in
-     that order.
+     for display to the value of 'completion-display-width', the value
+     of the environment variable 'COLUMNS', or the screen width, in that
+     order.
 
-`insert-completions (M-*)'
+'insert-completions (M-*)'
      Insert all completions of the text before point that would have
-     been generated by `possible-completions'.
+     been generated by 'possible-completions'.
 
-`menu-complete ()'
-     Similar to `complete', but replaces the word to be completed with
-     single match from the list of possible completions.  Repeated
-     execution of `menu-complete' steps through the list of possible
+'menu-complete ()'
+     Similar to 'complete', but replaces the word to be completed with a
+     single match from the list of possible completions.  Repeated
+     execution of 'menu-complete' steps through the list of possible
      completions, inserting each match in turn.  At the end of the list
      of completions, the bell is rung (subject to the setting of
-     `bell-style') and the original text is restored.  An argument of N
+     'bell-style') and the original text is restored.  An argument of N
      moves N positions forward in the list of matches; a negative
      argument may be used to move backward through the list.  This
      command is intended to be bound to <TAB>, but is unbound by
      default.
 
-`menu-complete-backward ()'
-     Identical to `menu-complete', but moves backward through the list
-     of possible completions, as if `menu-complete' had been given a
+'menu-complete-backward ()'
+     Identical to 'menu-complete', but moves backward through the list
+     of possible completions, as if 'menu-complete' had been given a
      negative argument.
 
-`delete-char-or-list ()'
+'delete-char-or-list ()'
      Deletes the character under the cursor if not at the beginning or
-     end of the line (like `delete-char').  If at the end of the line,
-     behaves identically to `possible-completions'.  This command is
+     end of the line (like 'delete-char').  If at the end of the line,
+     behaves identically to 'possible-completions'.  This command is
      unbound by default.
 
-
 \1f
 File: rluserman.info,  Node: Keyboard Macros,  Next: Miscellaneous Commands,  Prev: Commands For Completion,  Up: Bindable Readline Commands
 
 1.4.7 Keyboard Macros
 ---------------------
 
-`start-kbd-macro (C-x ()'
+'start-kbd-macro (C-x ()'
      Begin saving the characters typed into the current keyboard macro.
 
-`end-kbd-macro (C-x ))'
+'end-kbd-macro (C-x ))'
      Stop saving the characters typed into the current keyboard macro
      and save the definition.
 
-`call-last-kbd-macro (C-x e)'
+'call-last-kbd-macro (C-x e)'
      Re-execute the last keyboard macro defined, by making the
      characters in the macro appear as if typed at the keyboard.
 
-`print-last-kbd-macro ()'
+'print-last-kbd-macro ()'
      Print the last keboard macro defined in a format suitable for the
      INPUTRC file.
 
-
 \1f
 File: rluserman.info,  Node: Miscellaneous Commands,  Prev: Keyboard Macros,  Up: Bindable Readline Commands
 
 1.4.8 Some Miscellaneous Commands
 ---------------------------------
 
-`re-read-init-file (C-x C-r)'
+'re-read-init-file (C-x C-r)'
      Read in the contents of the INPUTRC file, and incorporate any
      bindings or variable assignments found there.
 
-`abort (C-g)'
+'abort (C-g)'
      Abort the current editing command and ring the terminal's bell
-     (subject to the setting of `bell-style').
+     (subject to the setting of 'bell-style').
 
-`do-uppercase-version (M-a, M-b, M-X, ...)'
+'do-uppercase-version (M-a, M-b, M-X, ...)'
      If the metafied character X is lowercase, run the command that is
      bound to the corresponding uppercase character.
 
-`prefix-meta (<ESC>)'
+'prefix-meta (<ESC>)'
      Metafy the next character typed.  This is for keyboards without a
-     meta key.  Typing `<ESC> f' is equivalent to typing `M-f'.
+     meta key.  Typing '<ESC> f' is equivalent to typing 'M-f'.
 
-`undo (C-_ or C-x C-u)'
+'undo (C-_ or C-x C-u)'
      Incremental undo, separately remembered for each line.
 
-`revert-line (M-r)'
+'revert-line (M-r)'
      Undo all changes made to this line.  This is like executing the
-     `undo' command enough times to get back to the beginning.
+     'undo' command enough times to get back to the beginning.
 
-`tilde-expand (M-~)'
+'tilde-expand (M-~)'
      Perform tilde expansion on the current word.
 
-`set-mark (C-@)'
+'set-mark (C-@)'
      Set the mark to the point.  If a numeric argument is supplied, the
      mark is set to that position.
 
-`exchange-point-and-mark (C-x C-x)'
+'exchange-point-and-mark (C-x C-x)'
      Swap the point with the mark.  The current cursor position is set
      to the saved position, and the old cursor position is saved as the
      mark.
 
-`character-search (C-])'
+'character-search (C-])'
      A character is read and point is moved to the next occurrence of
      that character.  A negative count searches for previous
      occurrences.
 
-`character-search-backward (M-C-])'
+'character-search-backward (M-C-])'
      A character is read and point is moved to the previous occurrence
      of that character.  A negative count searches for subsequent
      occurrences.
 
-`skip-csi-sequence ()'
+'skip-csi-sequence ()'
      Read enough characters to consume a multi-key sequence such as
      those defined for keys like Home and End.  Such sequences begin
      with a Control Sequence Indicator (CSI), usually ESC-[.  If this
-     sequence is bound to "\e[", keys producing such sequences will
-     have no effect unless explicitly bound to a readline command,
-     instead of inserting stray characters into the editing buffer.
-     This is unbound by default, but usually bound to ESC-[.
+     sequence is bound to "\e[", keys producing such sequences will have
+     no effect unless explicitly bound to a readline command, instead of
+     inserting stray characters into the editing buffer.  This is
+     unbound by default, but usually bound to ESC-[.
 
-`insert-comment (M-#)'
-     Without a numeric argument, the value of the `comment-begin'
+'insert-comment (M-#)'
+     Without a numeric argument, the value of the 'comment-begin'
      variable is inserted at the beginning of the current line.  If a
-     numeric argument is supplied, this command acts as a toggle:  if
-     the characters at the beginning of the line do not match the value
-     of `comment-begin', the value is inserted, otherwise the
-     characters in `comment-begin' are deleted from the beginning of
-     the line.  In either case, the line is accepted as if a newline
-     had been typed.
-
-`dump-functions ()'
+     numeric argument is supplied, this command acts as a toggle: if the
+     characters at the beginning of the line do not match the value of
+     'comment-begin', the value is inserted, otherwise the characters in
+     'comment-begin' are deleted from the beginning of the line.  In
+     either case, the line is accepted as if a newline had been typed.
+
+'dump-functions ()'
      Print all of the functions and their key bindings to the Readline
      output stream.  If a numeric argument is supplied, the output is
      formatted in such a way that it can be made part of an INPUTRC
      file.  This command is unbound by default.
 
-`dump-variables ()'
+'dump-variables ()'
      Print all of the settable variables and their values to the
      Readline output stream.  If a numeric argument is supplied, the
      output is formatted in such a way that it can be made part of an
      INPUTRC file.  This command is unbound by default.
 
-`dump-macros ()'
+'dump-macros ()'
      Print all of the Readline key sequences bound to macros and the
-     strings they output.  If a numeric argument is supplied, the
-     output is formatted in such a way that it can be made part of an
-     INPUTRC file.  This command is unbound by default.
+     strings they output.  If a numeric argument is supplied, the output
+     is formatted in such a way that it can be made part of an INPUTRC
+     file.  This command is unbound by default.
 
-`emacs-editing-mode (C-e)'
-     When in `vi' command mode, this causes a switch to `emacs' editing
+'emacs-editing-mode (C-e)'
+     When in 'vi' command mode, this causes a switch to 'emacs' editing
      mode.
 
-`vi-editing-mode (M-C-j)'
-     When in `emacs' editing mode, this causes a switch to `vi' editing
+'vi-editing-mode (M-C-j)'
+     When in 'emacs' editing mode, this causes a switch to 'vi' editing
      mode.
 
-
 \1f
 File: rluserman.info,  Node: Readline vi Mode,  Prev: Bindable Readline Commands,  Up: Command Line Editing
 
 1.5 Readline vi Mode
 ====================
 
-While the Readline library does not have a full set of `vi' editing
+While the Readline library does not have a full set of 'vi' editing
 functions, it does contain enough to allow simple editing of the line.
-The Readline `vi' mode behaves as specified in the POSIX standard.
+The Readline 'vi' mode behaves as specified in the POSIX standard.
 
-   In order to switch interactively between `emacs' and `vi' editing
-modes, use the command `M-C-j' (bound to emacs-editing-mode when in
-`vi' mode and to vi-editing-mode in `emacs' mode).  The Readline
-default is `emacs' mode.
+   In order to switch interactively between 'emacs' and 'vi' editing
+modes, use the command 'M-C-j' (bound to emacs-editing-mode when in 'vi'
+mode and to vi-editing-mode in 'emacs' mode).  The Readline default is
+'emacs' mode.
 
-   When you enter a line in `vi' mode, you are already placed in
-`insertion' mode, as if you had typed an `i'.  Pressing <ESC> switches
-you into `command' mode, where you can edit the text of the line with
-the standard `vi' movement keys, move to previous history lines with
-`k' and subsequent lines with `j', and so forth.
+   When you enter a line in 'vi' mode, you are already placed in
+'insertion' mode, as if you had typed an 'i'.  Pressing <ESC> switches
+you into 'command' mode, where you can edit the text of the line with
+the standard 'vi' movement keys, move to previous history lines with 'k'
+and subsequent lines with 'j', and so forth.
 
 \1f
 File: rluserman.info,  Node: GNU Free Documentation License,  Prev: Command Line Editing,  Up: Top
@@ -1412,7 +1433,7 @@ Appendix A GNU Free Documentation License
                      Version 1.3, 3 November 2008
 
      Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-     `http://fsf.org/'
+     <http://fsf.org/>
 
      Everyone is permitted to copy and distribute verbatim copies
      of this license document, but changing it is not allowed.
@@ -1437,21 +1458,21 @@ Appendix A GNU Free Documentation License
      free program should come with manuals providing the same freedoms
      that the software does.  But this License is not limited to
      software manuals; it can be used for any textual work, regardless
-     of subject matter or whether it is published as a printed book.
-     We recommend this License principally for works whose purpose is
+     of subject matter or whether it is published as a printed book.  We
+     recommend this License principally for works whose purpose is
      instruction or reference.
 
   1. APPLICABILITY AND DEFINITIONS
 
      This License applies to any manual or other work, in any medium,
-     that contains a notice placed by the copyright holder saying it
-     can be distributed under the terms of this License.  Such a notice
+     that contains a notice placed by the copyright holder saying it can
+     be distributed under the terms of this License.  Such a notice
      grants a world-wide, royalty-free license, unlimited in duration,
      to use that work under the conditions stated herein.  The
      "Document", below, refers to any such manual or work.  Any member
-     of the public is a licensee, and is addressed as "you".  You
-     accept the license if you copy, modify or distribute the work in a
-     way requiring permission under copyright law.
+     of the public is a licensee, and is addressed as "you".  You accept
+     the license if you copy, modify or distribute the work in a way
+     requiring permission under copyright law.
 
      A "Modified Version" of the Document means any work containing the
      Document or a portion of it, either copied verbatim, or with
@@ -1469,12 +1490,12 @@ Appendix A GNU Free Documentation License
      regarding them.
 
      The "Invariant Sections" are certain Secondary Sections whose
-     titles are designated, as being those of Invariant Sections, in
-     the notice that says that the Document is released under this
-     License.  If a section does not fit the above definition of
-     Secondary then it is not allowed to be designated as Invariant.
-     The Document may contain zero Invariant Sections.  If the Document
-     does not identify any Invariant Sections then there are none.
+     titles are designated, as being those of Invariant Sections, in the
+     notice that says that the Document is released under this License.
+     If a section does not fit the above definition of Secondary then it
+     is not allowed to be designated as Invariant.  The Document may
+     contain zero Invariant Sections.  If the Document does not identify
+     any Invariant Sections then there are none.
 
      The "Cover Texts" are certain short passages of text that are
      listed, as Front-Cover Texts or Back-Cover Texts, in the notice
@@ -1485,27 +1506,27 @@ Appendix A GNU Free Documentation License
      A "Transparent" copy of the Document means a machine-readable copy,
      represented in a format whose specification is available to the
      general public, that is suitable for revising the document
-     straightforwardly with generic text editors or (for images
-     composed of pixels) generic paint programs or (for drawings) some
-     widely available drawing editor, and that is suitable for input to
-     text formatters or for automatic translation to a variety of
-     formats suitable for input to text formatters.  A copy made in an
-     otherwise Transparent file format whose markup, or absence of
-     markup, has been arranged to thwart or discourage subsequent
-     modification by readers is not Transparent.  An image format is
-     not Transparent if used for any substantial amount of text.  A
-     copy that is not "Transparent" is called "Opaque".
+     straightforwardly with generic text editors or (for images composed
+     of pixels) generic paint programs or (for drawings) some widely
+     available drawing editor, and that is suitable for input to text
+     formatters or for automatic translation to a variety of formats
+     suitable for input to text formatters.  A copy made in an otherwise
+     Transparent file format whose markup, or absence of markup, has
+     been arranged to thwart or discourage subsequent modification by
+     readers is not Transparent.  An image format is not Transparent if
+     used for any substantial amount of text.  A copy that is not
+     "Transparent" is called "Opaque".
 
      Examples of suitable formats for Transparent copies include plain
      ASCII without markup, Texinfo input format, LaTeX input format,
-     SGML or XML using a publicly available DTD, and
-     standard-conforming simple HTML, PostScript or PDF designed for
-     human modification.  Examples of transparent image formats include
-     PNG, XCF and JPG.  Opaque formats include proprietary formats that
-     can be read and edited only by proprietary word processors, SGML or
-     XML for which the DTD and/or processing tools are not generally
-     available, and the machine-generated HTML, PostScript or PDF
-     produced by some word processors for output purposes only.
+     SGML or XML using a publicly available DTD, and standard-conforming
+     simple HTML, PostScript or PDF designed for human modification.
+     Examples of transparent image formats include PNG, XCF and JPG.
+     Opaque formats include proprietary formats that can be read and
+     edited only by proprietary word processors, SGML or XML for which
+     the DTD and/or processing tools are not generally available, and
+     the machine-generated HTML, PostScript or PDF produced by some word
+     processors for output purposes only.
 
      The "Title Page" means, for a printed book, the title page itself,
      plus such following pages as are needed to hold, legibly, the
@@ -1543,8 +1564,8 @@ Appendix A GNU Free Documentation License
      may not use technical measures to obstruct or control the reading
      or further copying of the copies you make or distribute.  However,
      you may accept compensation in exchange for copies.  If you
-     distribute a large enough number of copies you must also follow
-     the conditions in section 3.
+     distribute a large enough number of copies you must also follow the
+     conditions in section 3.
 
      You may also lend copies, under the same conditions stated above,
      and you may publicly display copies.
@@ -1558,12 +1579,11 @@ Appendix A GNU Free Documentation License
      these Cover Texts: Front-Cover Texts on the front cover, and
      Back-Cover Texts on the back cover.  Both covers must also clearly
      and legibly identify you as the publisher of these copies.  The
-     front cover must present the full title with all words of the
-     title equally prominent and visible.  You may add other material
-     on the covers in addition.  Copying with changes limited to the
-     covers, as long as they preserve the title of the Document and
-     satisfy these conditions, can be treated as verbatim copying in
-     other respects.
+     front cover must present the full title with all words of the title
+     equally prominent and visible.  You may add other material on the
+     covers in addition.  Copying with changes limited to the covers, as
+     long as they preserve the title of the Document and satisfy these
+     conditions, can be treated as verbatim copying in other respects.
 
      If the required texts for either cover are too voluminous to fit
      legibly, you should put the first ones listed (as many as fit
@@ -1571,40 +1591,39 @@ Appendix A GNU Free Documentation License
      adjacent pages.
 
      If you publish or distribute Opaque copies of the Document
-     numbering more than 100, you must either include a
-     machine-readable Transparent copy along with each Opaque copy, or
-     state in or with each Opaque copy a computer-network location from
-     which the general network-using public has access to download
-     using public-standard network protocols a complete Transparent
-     copy of the Document, free of added material.  If you use the
-     latter option, you must take reasonably prudent steps, when you
-     begin distribution of Opaque copies in quantity, to ensure that
-     this Transparent copy will remain thus accessible at the stated
-     location until at least one year after the last time you
-     distribute an Opaque copy (directly or through your agents or
-     retailers) of that edition to the public.
+     numbering more than 100, you must either include a machine-readable
+     Transparent copy along with each Opaque copy, or state in or with
+     each Opaque copy a computer-network location from which the general
+     network-using public has access to download using public-standard
+     network protocols a complete Transparent copy of the Document, free
+     of added material.  If you use the latter option, you must take
+     reasonably prudent steps, when you begin distribution of Opaque
+     copies in quantity, to ensure that this Transparent copy will
+     remain thus accessible at the stated location until at least one
+     year after the last time you distribute an Opaque copy (directly or
+     through your agents or retailers) of that edition to the public.
 
      It is requested, but not required, that you contact the authors of
-     the Document well before redistributing any large number of
-     copies, to give them a chance to provide you with an updated
-     version of the Document.
+     the Document well before redistributing any large number of copies,
+     to give them a chance to provide you with an updated version of the
+     Document.
 
   4. MODIFICATIONS
 
      You may copy and distribute a Modified Version of the Document
      under the conditions of sections 2 and 3 above, provided that you
-     release the Modified Version under precisely this License, with
-     the Modified Version filling the role of the Document, thus
-     licensing distribution and modification of the Modified Version to
-     whoever possesses a copy of it.  In addition, you must do these
-     things in the Modified Version:
+     release the Modified Version under precisely this License, with the
+     Modified Version filling the role of the Document, thus licensing
+     distribution and modification of the Modified Version to whoever
+     possesses a copy of it.  In addition, you must do these things in
+     the Modified Version:
 
        A. Use in the Title Page (and on the covers, if any) a title
-          distinct from that of the Document, and from those of
-          previous versions (which should, if there were any, be listed
-          in the History section of the Document).  You may use the
-          same title as a previous version if the original publisher of
-          that version gives permission.
+          distinct from that of the Document, and from those of previous
+          versions (which should, if there were any, be listed in the
+          History section of the Document).  You may use the same title
+          as a previous version if the original publisher of that
+          version gives permission.
 
        B. List on the Title Page, as authors, one or more persons or
           entities responsible for authorship of the modifications in
@@ -1634,31 +1653,30 @@ Appendix A GNU Free Documentation License
 
        I. Preserve the section Entitled "History", Preserve its Title,
           and add to it an item stating at least the title, year, new
-          authors, and publisher of the Modified Version as given on
-          the Title Page.  If there is no section Entitled "History" in
-          the Document, create one stating the title, year, authors,
-          and publisher of the Document as given on its Title Page,
-          then add an item describing the Modified Version as stated in
-          the previous sentence.
+          authors, and publisher of the Modified Version as given on the
+          Title Page.  If there is no section Entitled "History" in the
+          Document, create one stating the title, year, authors, and
+          publisher of the Document as given on its Title Page, then add
+          an item describing the Modified Version as stated in the
+          previous sentence.
 
        J. Preserve the network location, if any, given in the Document
           for public access to a Transparent copy of the Document, and
           likewise the network locations given in the Document for
-          previous versions it was based on.  These may be placed in
-          the "History" section.  You may omit a network location for a
-          work that was published at least four years before the
-          Document itself, or if the original publisher of the version
-          it refers to gives permission.
+          previous versions it was based on.  These may be placed in the
+          "History" section.  You may omit a network location for a work
+          that was published at least four years before the Document
+          itself, or if the original publisher of the version it refers
+          to gives permission.
 
        K. For any section Entitled "Acknowledgements" or "Dedications",
-          Preserve the Title of the section, and preserve in the
-          section all the substance and tone of each of the contributor
+          Preserve the Title of the section, and preserve in the section
+          all the substance and tone of each of the contributor
           acknowledgements and/or dedications given therein.
 
-       L. Preserve all the Invariant Sections of the Document,
-          unaltered in their text and in their titles.  Section numbers
-          or the equivalent are not considered part of the section
-          titles.
+       L. Preserve all the Invariant Sections of the Document, unaltered
+          in their text and in their titles.  Section numbers or the
+          equivalent are not considered part of the section titles.
 
        M. Delete any section Entitled "Endorsements".  Such a section
           may not be included in the Modified Version.
@@ -1671,11 +1689,11 @@ Appendix A GNU Free Documentation License
 
      If the Modified Version includes new front-matter sections or
      appendices that qualify as Secondary Sections and contain no
-     material copied from the Document, you may at your option
-     designate some or all of these sections as invariant.  To do this,
-     add their titles to the list of Invariant Sections in the Modified
-     Version's license notice.  These titles must be distinct from any
-     other section titles.
+     material copied from the Document, you may at your option designate
+     some or all of these sections as invariant.  To do this, add their
+     titles to the list of Invariant Sections in the Modified Version's
+     license notice.  These titles must be distinct from any other
+     section titles.
 
      You may add a section Entitled "Endorsements", provided it contains
      nothing but endorsements of your Modified Version by various
@@ -1684,15 +1702,15 @@ Appendix A GNU Free Documentation License
      definition of a standard.
 
      You may add a passage of up to five words as a Front-Cover Text,
-     and a passage of up to 25 words as a Back-Cover Text, to the end
-     of the list of Cover Texts in the Modified Version.  Only one
-     passage of Front-Cover Text and one of Back-Cover Text may be
-     added by (or through arrangements made by) any one entity.  If the
-     Document already includes a cover text for the same cover,
-     previously added by you or by arrangement made by the same entity
-     you are acting on behalf of, you may not add another; but you may
-     replace the old one, on explicit permission from the previous
-     publisher that added the old one.
+     and a passage of up to 25 words as a Back-Cover Text, to the end of
+     the list of Cover Texts in the Modified Version.  Only one passage
+     of Front-Cover Text and one of Back-Cover Text may be added by (or
+     through arrangements made by) any one entity.  If the Document
+     already includes a cover text for the same cover, previously added
+     by you or by arrangement made by the same entity you are acting on
+     behalf of, you may not add another; but you may replace the old
+     one, on explicit permission from the previous publisher that added
+     the old one.
 
      The author(s) and publisher(s) of the Document do not by this
      License give permission to use their names for publicity for or to
@@ -1702,8 +1720,8 @@ Appendix A GNU Free Documentation License
 
      You may combine the Document with other documents released under
      this License, under the terms defined in section 4 above for
-     modified versions, provided that you include in the combination
-     all of the Invariant Sections of all of the original documents,
+     modified versions, provided that you include in the combination all
+     of the Invariant Sections of all of the original documents,
      unmodified, and list them all as Invariant Sections of your
      combined work in its license notice, and that you preserve all
      their Warranty Disclaimers.
@@ -1730,20 +1748,20 @@ Appendix A GNU Free Documentation License
      documents released under this License, and replace the individual
      copies of this License in the various documents with a single copy
      that is included in the collection, provided that you follow the
-     rules of this License for verbatim copying of each of the
-     documents in all other respects.
+     rules of this License for verbatim copying of each of the documents
+     in all other respects.
 
      You may extract a single document from such a collection, and
      distribute it individually under this License, provided you insert
-     a copy of this License into the extracted document, and follow
-     this License in all other respects regarding verbatim copying of
-     that document.
+     a copy of this License into the extracted document, and follow this
+     License in all other respects regarding verbatim copying of that
+     document.
 
   7. AGGREGATION WITH INDEPENDENT WORKS
 
      A compilation of the Document or its derivatives with other
-     separate and independent documents or works, in or on a volume of
-     storage or distribution medium, is called an "aggregate" if the
+     separate and independent documents or works, in or on a volume of a
+     storage or distribution medium, is called an "aggregate" if the
      copyright resulting from the compilation is not used to limit the
      legal rights of the compilation's users beyond what the individual
      works permit.  When the Document is included in an aggregate, this
@@ -1788,8 +1806,8 @@ Appendix A GNU Free Documentation License
 
      However, if you cease all violation of this License, then your
      license from a particular copyright holder is reinstated (a)
-     provisionally, unless and until the copyright holder explicitly
-     and finally terminates your license, and (b) permanently, if the
+     provisionally, unless and until the copyright holder explicitly and
+     finally terminates your license, and (b) permanently, if the
      copyright holder fails to notify you of the violation by some
      reasonable means prior to 60 days after the cessation.
 
@@ -1801,33 +1819,33 @@ Appendix A GNU Free Documentation License
      after your receipt of the notice.
 
      Termination of your rights under this section does not terminate
-     the licenses of parties who have received copies or rights from
-     you under this License.  If your rights have been terminated and
-     not permanently reinstated, receipt of a copy of some or all of
-     the same material does not give you any rights to use it.
+     the licenses of parties who have received copies or rights from you
+     under this License.  If your rights have been terminated and not
+     permanently reinstated, receipt of a copy of some or all of the
+     same material does not give you any rights to use it.
 
- 10. FUTURE REVISIONS OF THIS LICENSE
 10. FUTURE REVISIONS OF THIS LICENSE
 
      The Free Software Foundation may publish new, revised versions of
      the GNU Free Documentation License from time to time.  Such new
      versions will be similar in spirit to the present version, but may
      differ in detail to address new problems or concerns.  See
-     `http://www.gnu.org/copyleft/'.
+     <http://www.gnu.org/copyleft/>.
 
      Each version of the License is given a distinguishing version
      number.  If the Document specifies that a particular numbered
      version of this License "or any later version" applies to it, you
      have the option of following the terms and conditions either of
      that specified version or of any later version that has been
-     published (not as a draft) by the Free Software Foundation.  If
-     the Document does not specify a version number of this License,
-     you may choose any version ever published (not as a draft) by the
-     Free Software Foundation.  If the Document specifies that a proxy
-     can decide which future versions of this License can be used, that
+     published (not as a draft) by the Free Software Foundation.  If the
+     Document does not specify a version number of this License, you may
+     choose any version ever published (not as a draft) by the Free
+     Software Foundation.  If the Document specifies that a proxy can
+     decide which future versions of this License can be used, that
      proxy's public statement of acceptance of a version permanently
      authorizes you to choose that version for the Document.
 
- 11. RELICENSING
 11. RELICENSING
 
      "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
      World Wide Web server that publishes copyrightable works and also
@@ -1857,7 +1875,6 @@ Appendix A GNU Free Documentation License
      site under CC-BY-SA on the same site at any time before August 1,
      2009, provided the MMC is eligible for relicensing.
 
-
 ADDENDUM: How to use this License for your documents
 ====================================================
 
@@ -1874,7 +1891,7 @@ notices just after the title page:
        Free Documentation License''.
 
    If you have Invariant Sections, Front-Cover Texts and Back-Cover
-Texts, replace the "with...Texts." line with this:
+Texts, replace the "with...Texts."  line with this:
 
          with the Invariant Sections being LIST THEIR TITLES, with
          the Front-Cover Texts being LIST, and with the Back-Cover Texts
@@ -1885,36 +1902,36 @@ combination of the three, merge those two alternatives to suit the
 situation.
 
    If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
+recommend releasing these examples in parallel under your choice of free
+software license, such as the GNU General Public License, to permit
+their use in free software.
 
 
 \1f
 Tag Table:
-Node: Top\7f950
-Node: Command Line Editing\7f1472
-Node: Introduction and Notation\7f2126
-Node: Readline Interaction\7f3750
-Node: Readline Bare Essentials\7f4943
-Node: Readline Movement Commands\7f6734
-Node: Readline Killing Commands\7f7701
-Node: Readline Arguments\7f9623
-Node: Searching\7f10669
-Node: Readline Init File\7f12822
-Node: Readline Init File Syntax\7f13977
-Node: Conditional Init Constructs\7f30683
-Node: Sample Init File\7f33218
-Node: Bindable Readline Commands\7f36338
-Node: Commands For Moving\7f37397
-Node: Commands For History\7f38260
-Node: Commands For Text\7f42416
-Node: Commands For Killing\7f45400
-Node: Numeric Arguments\7f47544
-Node: Commands For Completion\7f48685
-Node: Keyboard Macros\7f50656
-Node: Miscellaneous Commands\7f51346
-Node: Readline vi Mode\7f55204
-Node: GNU Free Documentation License\7f56118
+Node: Top\7f903
+Node: Command Line Editing\7f1425
+Node: Introduction and Notation\7f2079
+Node: Readline Interaction\7f3704
+Node: Readline Bare Essentials\7f4897
+Node: Readline Movement Commands\7f6682
+Node: Readline Killing Commands\7f7644
+Node: Readline Arguments\7f9564
+Node: Searching\7f10610
+Node: Readline Init File\7f12764
+Node: Readline Init File Syntax\7f13919
+Node: Conditional Init Constructs\7f33365
+Node: Sample Init File\7f35892
+Node: Bindable Readline Commands\7f39011
+Node: Commands For Moving\7f40067
+Node: Commands For History\7f40929
+Node: Commands For Text\7f45189
+Node: Commands For Killing\7f48633
+Node: Numeric Arguments\7f50801
+Node: Commands For Completion\7f51942
+Node: Keyboard Macros\7f53912
+Node: Miscellaneous Commands\7f54601
+Node: Readline vi Mode\7f58453
+Node: GNU Free Documentation License\7f59367
 \1f
 End Tag Table
index 48f73ff3b11fed00e4307b8d7bcfd325705d6a3a..19d2909078adb6dadeedc468340218527ff84b89 100644 (file)
Binary files a/doc/rluserman.pdf and b/doc/rluserman.pdf differ
index 4ce45178951e391735224c5b3a2aadf5f7ed6537..5736805c7d85f21c76da0ff9af5236d50ddbbafd 100644 (file)
@@ -1,8 +1,8 @@
 %!PS-Adobe-2.0
-%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
+%%Creator: dvips(k) 5.994 Copyright 2014 Radical Eye Software
 %%Title: rluserman.dvi
-%%CreationDate: Tue Feb 11 16:57:26 2014
-%%Pages: 32
+%%CreationDate: Wed Jul  1 10:32:46 2015
+%%Pages: 33
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 612 792
 %%DocumentFonts: CMBX12 CMR10 CMTT10 CMSY10 CMMI12 CMMI10 CMCSC10
@@ -12,7 +12,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -D 600 -t letter -o rluserman.ps rluserman.dvi
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2014.02.11:1657
+%DVIPSSource:  TeX output 2015.07.01:1032
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -98,7 +98,6 @@ FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSLTT10 def
 /FontBBox {-20 -233 617 696 }readonly def
-/UniqueID 5000800 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -538,7 +537,6 @@ FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTT9 def
 /FontBBox {-6 -233 542 698 }readonly def
-/UniqueID 5000831 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -1028,7 +1026,6 @@ FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMR10 def
 /FontBBox {-40 -250 1009 750 }readonly def
-/UniqueID 5000793 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -1874,7 +1871,6 @@ FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMBX12 def
 /FontBBox {-53 -251 1139 750 }readonly def
-/UniqueID 5000769 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -2465,7 +2461,6 @@ FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSL10 def
 /FontBBox {-62 -250 1123 750 }readonly def
-/UniqueID 5000798 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -3027,7 +3022,6 @@ FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTI10 def
 /FontBBox {-35 -250 1124 750 }readonly def
-/UniqueID 5000828 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -3337,7 +3331,6 @@ FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMCSC10 def
 /FontBBox {14 -250 1077 750 }readonly def
-/UniqueID 5087402 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -3660,7 +3653,6 @@ FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI10 def
 /FontBBox {-32 -250 1048 750 }readonly def
-/UniqueID 5087385 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -3896,7 +3888,6 @@ FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMMI12 def
 /FontBBox {-31 -250 1026 750 }readonly def
-/UniqueID 5087386 def
 /PaintType 0 def
 /FontInfo 10 dict dup begin
 /version (003.002) readonly def
@@ -4132,7 +4123,6 @@ FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMSY10 def
 /FontBBox {-29 -960 1116 775 }readonly def
-/UniqueID 5096651 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -4370,7 +4360,6 @@ FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
 /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
 /FontName /CMTT10 def
 /FontBBox {-4 -233 537 696 }readonly def
-/UniqueID 5000832 def
 /PaintType 0 def
 /FontInfo 9 dict dup begin
 /version (003.002) readonly def
@@ -4393,13 +4382,13 @@ dup 39 /quoteright put
 dup 40 /parenleft put
 dup 41 /parenright put
 dup 42 /asterisk put
-dup 43 /plus put
 dup 44 /comma put
 dup 45 /hyphen put
 dup 46 /period put
 dup 47 /slash put
 dup 48 /zero put
 dup 49 /one put
+dup 50 /two put
 dup 53 /five put
 dup 55 /seven put
 dup 56 /eight put
@@ -4761,295 +4750,296 @@ E694DD95CCD0BC2504F3D9087210CE220862D34139D33EB505D90D39E7DEE3D9
 949C98D8EB9035A0ECECD035CDC6E7B8A007BFD3EB3D8DFCD130158E473E636A
 3D00F8A2183766C422991EA3FB1A6F5DC967EF9C8736FB190191154216B7AC75
 F5E269CC1AB5FD8B1B8F1632E9496BF02CECAA66532357A0DB3AE03D98351FF7
-0A2AC142089A891607B075019E60BBC5CDB1AB6E31DFECD6500C7D2BF2FC30DC
-F01AB50F30D846DE8324B6906A7B803B4B68E8D223CFE37DF3B7AF8134CC4F47
-7A7480F7D15CF7C3325A323FE82020CC0612109A3CC42B711A2424CE5BE9D9A3
-8580D6E18003D481215067B85309D01CF552CEE8A4CE229F1DF34AA051CD265C
-844AEA21EA62B9D32B100F3E3D0356C7D6AB6BE4CC0DE6B38D60E53DE4B6DC74
-FF8F6B829082ACC5F05107AA165879BC7B65A6AC4FD1469B1DBA07B8179A8715
-B0A8876D79FC5BD11F18A5694141E1E1B253334550C08C45922AE297F392377E
-D572BC910D908FB5C9A82B081A615DA1A945373C5708913DF1350EC8CD823FB2
-CFF9459187061FA975B9DE40B505BBA694E969B8FB91D5D70F7780CFC82E6EE2
-6FC3728BF89897655750871CA945D71EC75327BEDECACFC93D54A83B5AFE42DF
-8D4C73D376210A519E5D6809C8DCA265EFD1B78A4F79C2D5DE44DA2F941CB57B
-710A1DF1383E15E19F75A6EA4E8160D3443AB76B043FFA545EDE8EAE35F9210F
-04954B40EB0E8266080E03ADD276015A8266B3ABF13CE2DDD71C256E4A9FDEC8
-CB6266083EE0FEECD91DB9871D482C74D78329E64F6A5DC107C0D5EB12F1FD94
-A39B06987319791CEFAAFCE7FD20DCFB93040394103B6484BBF3EC67BEA74B35
-4C0769F378A159CF556F099B2CB8812562182E131DB04E222FA8EFF0356F4053
-A620904FB48262680E469F55C63DA2AA370AC91947714A4C395EB7AE43F1429D
-E65A7DF7D025289B9697360FD086AF88289EEEDA7037BACD1195FAD825935648
-8026D3EA9A8482B40266A67066A5883C45E0A59D86E6B5E85EC5E9AAFA5AFECD
-2A17591593AAC5E8194110F5C5105E6DBA0ACB7BC4A2D699D5C1A06B6995CD1E
-80E988FFB362671B46BDD7015EF0A7448235B7735157147B765F5DDB701B597A
-875F3521A1C8086B51866A7619F336ED12351862DD20FDE12FAF404E7BE5C680
-DE0F61E7B727C4D74E1F2746456EB22A7BC3F87F3BC1CD528B80D9EE933F8774
-34B5340FAA4B5AB5DBAE5CF08E93FA62070DF7E62E25CEBC9E71978280C67530
-45741E8029ABC5986BA0FFD9C93F6E292EEC0FCA3BCFF7BBB72A4E359CE8ADCC
-8DB71DB3DFC28F40040BA616190B7CB188DEA75CFCC51A29C0FA1370A2073C37
-967546F898FA085A321699921AFA3C62EB4AECD5E1A38F798C7D2A298859A4DC
-6254850B9DFDFBE4B3FACB7EF18D3665B519CDB7E237338C270A101519F5CF54
-AFBCEC5FB113A76F513512EB30F9FF153DE81E6054E339E8B6882AE01DF6A152
-BC35124ABC160369DD987E35A8FF34BED266BA5F47F457F7597C89B880956C65
-4F2D85887702B5D844D95DAA978BC08F87039AA1C41FC2971BFD4A2E99618909
-B14E3D8FAEA37D137898FC9E61132515E70E88333B66DCE1B50D7E73B29419F7
-31DCB71CFACDCA26125EC8C31F5DA690E001122B94186395717CB3B6C205CC68
-D73B036E086DB2150CEC23229BFACA0785AA219F4D0D01DB2C2C5508C7E004D1
-DB633B1D96270004E5C61CCA0AF777054BD11CD3D2585BA67F788193052E3656
-A6A0AF2BCB038543035A4136139CFCB07FEC241417AA42EFB8D8709FBB42E5B1
-943CE84B1B236F2616E294978B7998DC56BFAE5849E49325AECB45F2E433CF98
-79B1CDC7560D57DFD4EA193F7ED84F78C8A17FEBF46CBD2BCA1AB0740BF90733
-1D2372D1B5C98385229072D5977275D827199BA3A1B4EF26D68C306A75C72A26
-03EA819822023917473295767AA2CFEDE5E047943ED3E32879A84DCC81E275BC
-94ECEB7B99B5C34C05A9FDF7D5808376163975DB899F48E8A8CF84740D67BA73
-8993AAA68F6071992F0380CA8B863A24977BAF2D7088538E17489A2DF9F9A32C
-565ED05120BB512E5D9128B121FB499064A45A2E0A28D80AD3B4551608D0BA1E
-4AC96A2C30BBC76DFF9FD079311CA301EE8BF7F102D65DE54761D48A0897776D
-82A8B3FB58A4519FAF442DD383E874D0AF2E6847624E01848846901A907295CC
-BDB23983E9FF6A9F07D1B465A551B952F2937A7907719CA93A5A656AC9458C15
-F76588BA96987E6FC21269D171AA2515C26F5C55037EFE995669A6B83D729DF9
-AA281A0531A677099EFE0C9232665F5E35D8BD361D524FF1197608D9F989E9D8
-E3D8E8C7E1480CE21039CA03E0F9052C86240F4C90AB6DD6D171AAC77ED7292D
-8F879A1B79E9D1552AB3E19DA983D1D5A950572612E4E6FDE9E69C71980463E3
-C722C595B2A86827FC4C909590B584CBD7D3E24CDE36207E1AAFFE33B7860B61
-CEE9FCA44D8524929D01E5AB1943E5750B1DD99E9AEB25C52853002EAE192A11
-5F27FE0A63FB2FA3E73A0D9730F779027FA425EE4F235A48648EA4E0F5D19628
-1F356E43716DF1A220B571D2A90AEC085DD46E2A5DF1AF183CF3E92E6461B270
-D8DEEA934E4EEB8A64CB2C20D8F2EA26EE35348FCE5D39BC04067BA121BDC7BB
-48191B0BBD4A202329F20B96C6679501E078B368328C1100C3082BE82353C0D6
-306B1DCD86266BEF5A71D66781FC901B2527CA8DA8F76263C2C622FF2CC6ED9A
-1EBAACEE27AA9D25D259B5891F92369E9379CEECA6BD66E2FA21A9BCF44DDE4A
-AE60DB1F2D197B01B7879DB5C9269011DE3B16C87FE72BA7DAB6D80304862FDD
-FDEB38D10ACB5A9D7B25F38E9954D25BFB12A2B8418168DF7636FF117FB35D21
-C1F55FB01FC6110A9FD772EB2B8E1C2C35BD8563EA1649417136F66FFB4842CE
-4D21A92A7B64A5FE1A318CE6318116ADF9D192C20CC096A492130ECBCF4FABC7
-50C1E68562D86572A90D9E057F70E8B709998897D91C7EEBF937FA2AE51FC70F
-A05103BDF452897DCDFE1EDA5557C660840F432E24C14C7449FE02AC59174207
-1F6223B96572D7AEE53DD4E360296622292CF73FEF83499155DF434D48B5C5A7
-A4FD10323821591C2712E1C7058C22C9F80540023D18819409F08B2F01DE39BE
-36C5AFB090097100D50B38254D60DAB4AD09809403283C234D2433BD523074F9
-989D577E3C4BEABB44BEFBB16D501C8EDF23BC29C90C4C66EAD79DA27446F808
-BA1FA9A0711D04EE3667923F05A70FA3D6C514581271D03250347E7C64A82DF0
-47BFF057939397176F69447F3224620468948FD17D8E01ADFC71C5F898C40809
-639725A04D51FD74E2CE327E7BBE8413269A4845ECA1B2ECEDEF15EFF612F89F
-AB02ED248DA47A6CFB73291ECDE8EB8F21B09934621109B5FB12A0004A664776
-F0A7D13F8FA4AE3549FBA43E3D116ACD78EF378DA5AD57AA1ECF3865D6896A36
-E6B323FD31D98395035F2B21BD1263CE8963DB0E66581716C489BEAC1EEC747A
-38D54FF19BDD64FB6D29C60BA9FED7274F4338B9FD9497A7A5C990800BB19F85
-C43BA6F4DD2934935F5AF4D0D467F5AE425DB20FA8C62661FEBF77CB8B1039F0
-9DB57000EDB0ACCFCED5E10C27CE898F93F4789C7300A8431736B32B8B327BEE
-5CFB1DC3305C8C5FAB9F301FE6900069D4802D7B20AEBF979C3FAFB222838B42
-0789CED59803CEA24CB8E40B432A72BDDFBED38C1F5AF6B53E120BED34DB66E8
-6CEB33AD20F76CA376DDB0CFCB41DEE81C8E5DDAAEED06216C71E988D3BDD49D
-5A3A7A1C5A70E0EA117766451F27437C79193DAC7547FCA3234F8311768F3829
-85767D0A573CCC48325704A30F55B21548209D89438187316067A1F6BF1CE0AC
-85E725133837507C3BF78290140C2D51EA3444E6ACE981BE4D9B3923810E1417
-E9668B180E5F843D71976F9F5ECEDEDD9C0D2DCDD416CC167C3F48165EC004B6
-CE1113D64B375A59B41BA38FA35AFB458D467ADFED5E72F41A386540A3B68C99
-F29836F918332BF171BE5DDD0C9EBF34A14DB5E4DAAB65F7EA0D2EA8E82B7AC8
-01411A2E6F1F7620F2BE468EE935F5BFA9598A101EA265260A394B6948DB87B0
-6CBD5DA5FF81E7034A0B0332C4F7A1A9332A26AF80978F0545C3CF847324A38E
-B9938E305C484BE9DBA023039DB4A5D1AFB139B3B7493A492B8A8511EB2A762E
-95734FDF9B759B29A3224534034775C03C1100D8EBF3CE1B55748FEBC613E11E
-5D418E4C9F1ABBC812450C808EABC5CEE95B59086CDF27A81583EB5E999831F2
-1E6909788D689599D14A0D075785E50BA7174A30BFA0E4370A4EB59C3CE9BE46
-A238ABFBB5E951A82881292CDD4362F2D1959C306EC4A4BE51FD2D4604C08E4B
-E4CA91C5B1E8FE430EBE9D981CD0066E8294201589C4989E5262A6867EEC3153
-405A49080CD60053FCE99A84958209C94A0B36776BE153C72216C9AD3CFE3ECD
-4B0409369DB51A7636D48243B526027043ADC287EE39662564D609A179A9F203
-10C9E244E9150D3003F919A36807EE190D488F9D1B6B0FF9B2347F642697C669
-DCEDFCD72AE48A6828A6875B5F629482BEBCECC17774EEA93BD31F6F11C6F5DE
-EE483B14BAE3D73F933C3629A894BD5080BBA757B24E3E9092B65764B2A8B614
-8DBBBE9AF190EDBCF631C733A5FF8DB69B1C7EE0B2B7BF76BB921A85B40A07DA
-65F1250C1D2F5F4873CD80AA44A68BA601F416F91701A3410AE272E7087B04ED
-7A7A6159AF6067593BA6C8C2DB390FA2BF1C1BF264674B9D3248E0B6DB496E27
-6E5CA50B01D847967C31AB3309731E77A3062F8872578CF37B8D0596B708384F
-FA3EA8D9EE4A73F696D9BAF8351E46D2E9C413EF5937C7297EE9E20E68F86C00
-C35FF23DA9E343E1B86F324D4A95B1412ABA88EBC765EABAB90264973989A3AE
-787268BF358DABBB74F04385ED7F430D88BD45A958763473C203893CB0F46774
-01504F6ED812AFF4E35844791413A2380D1BBBCB6932BAC282643C7A18BF414E
-5013111E69889FFD8BB711AF2172FBB317DCBB1C1FF12E5BFED589627F976891
-9F53E7915C9B9FABA2B8D2D442B3EAF14BB73ACD5674EF76F03700437603C802
-354E32C5B2CD02FC470533EE8CB6EBB5A83CFA3F1565C3F6341134EDAF4C7F8F
-2D8FB57630AA264665D154CEBEFE4FAAF88AF6BA659EA31A4CA4FD688B2A51E5
-D24E96A55373328287CF954F8727BD760E57EE2E8BDBACC29E5CAB8DA1B58A5E
-FD8416398145A5F0E50DF18C110B518BEF42E6954C3CCB1E18BBDE1E2B6FDC4E
-D7339D7326B8EC9A1D979367B1A9CDFFCD34029404A018A1E42BE7347DC05D93
-15BDF40ECE8318EB9D25DA7216C4CA8994D091A0DE6E5F189B05E4AE951C6526
-AC9113A0A25EAB299108C3A2487187FB78DA98338CA7B9A3F74AE32D61C73533
-2C4E1233495DA9C0D3471C14E2AB780128DE8CC99D14E2C4000403766DCA344E
-E09A4D796BE9085E4DC06838BA17481E0ED70B5DD973C64B7311E47420E3F750
-DA46A3E7FF1B2300F2E78AE703B83C14213EBEA42AD7DCE3F0523883383D6E04
-5C2E597138AFB94098EE8621B2E5EE5315C3163A5EAD6278B65B88C497D2A2ED
-71660428739FB1E9A3E2DC11FD250E6EF346AA43309480AD7F3777EE5AC41042
-1C395F67D61726B397120C859923FCFD36BD4A86C589AC3A9E125C8CCFBEF7C9
-A49C3319D069844B2F2BAF76E916805C5EA06B90B3382701200A0CB279BB4693
-57922CBE713140AAA954CA7AAAB76AEC2E33A9A0048C9EDC101A8CBDC342CA04
-449DF8AA026885F767D45CDEA73F405AE7ECD1E118CBDE17B7F9F109F36E410C
-E4486A1C7FE40C214B4AD7A715A003FA496686BAA306AA3F97BD49B512DE1EFB
-3D5A9A8DD33FB117121B04D8DF25F8634499B54510D394310A5117666DACC963
-2DD41B688F2CFC87750A45BE221979075AAD06FDCFF45044FC09DFE41F3DED63
-42D2F296D337C1DFF439FED0659652CA4500815C7172686E0B4D1C410E9C451E
-1DDD94BE8BD441D09C6D8E898A0DD102135C854816E66C6E79FE476744CCE245
-8CABDD95A91D03EFF4FB5CBA2D8D0D97313E5EB3B923730E72C6E1B04E976DE3
-F76B5DB805E9B9FACB88A7F175A33A517C2C2183DD53F4D15F2192ADB4E524EA
-DB1CBB45CBB0A40A36D1D685B16735C90EE914BEC1CBFC2683532F1D3B44E0B2
-F98725D89F233AC99AB45891D383C3D7276C8239494EADAF676900F089E37101
-7D3F958A07A74CC7455B55C0310CE104700F674AC222B9E5E4351D4F0510E2E2
-720AB917341BF9FF91D095F22EEB64AABE29367300AD0EC3F7BC12A385824380
-AAF5D2A4DD4026324E41D8299DE8A5A905A621DACB611ED1CC9E855039EBA0C9
-CCE46F79F36F97D3E15667B12611AADCB2CE1BACD56248E3CAA720DE09045AEB
-5F70674EADD8442734E302C0CDAD357F02A0813DA689E031C3B04CC545D3128E
-FEAB24F2A30813BFF909511E0F8A221633943E4AEEE93D62D653AC0290B8B6EA
-C086BD0C97F800C3522C59E39AFFEF43EA20C8E833E842B85804B94C8DDAF027
-727337A4AAC37B089F196142317C4215C533A6E5D42CAB2CD22FB9C4719D03DA
-599B6DD3F11C6C94EDC46EFF4E5D0531D63BD97EEEFA8ADE254E23002D4D034D
-64DE4FBAE45CC5CDE42BE8E8F17E585B3C0D5C65D4BA1AA413171A02F4115D2D
-7FDA0098104AEEE3FC1EA2C2AADDEA317AF0D73C74147DA6115B6D91ECD8E66F
-8107525A506B277AFCE3023040BF2D69585927081BC5306B4829FE4BFF531793
-9336A51846CD02E346BFB7334D2DE477C13087E110FF8B168E8EB510CB6DC834
-7630BFFFB5557F43071144661DADF55FCA0C106164D208FBA2FD762FBD606E6A
-7835A82103FA89231484FA9C9E4AE0F426D3EB2D3E519E79E39FA70871E3D329
-ACBD432BE3D4BB05813C5F7350AE1712FEAF9937B76AC683D52F702A6D2B578E
-B1CDA48A37F09083C2B38C0AD334DA683ED3CA881B626B0611B68BC5F42F4BD2
-FA1213AA8B75FA3002DE7E87D6C091891D6494838F533970BD62AEED67CF2C7F
-39466438C53CF548D7D86563500E7D8D0C0CEE994A2C1A992E31F6A8D32F1D96
-F4F69E28C3F7A4B92A9F7E5467EE2B115AF8F3E8539203926A84F09DB1AA1E5F
-ACE1A907CB2C6C89B65BE9DACA624CD10442B189FE49331E87B1714C1F8BCF57
-7C1656D7EBA4D8CD8568CD948FE85A7ED797796256818A2963D37AACD082E405
-7BE8562CE78A54FA6C08755DFA26DDCC4669DE91AFDD1073542EF1FB04813BB9
-42334FD59AC8167F05B1B963F4DDDDBF7CF177C7B1E181E28348AB12E083AE0A
-7DF434EBE4960070AF2655C63B1F9114D3EA51B7BFF6F70F756406002FA2421F
-56BD35B9F0F399CA89102FC688FE8690ECE6FE9078920726F5325740F9F15591
-B27312E42881D173ACD0E6752574F135F7DE5CE5CD376E6E1EBC98468DDA9FBF
-65A0A0F24E1157BDCB90A0F00F5DF9FE167B83D7460558BDB3E6B51A9EA1AEDE
-83E7C462522236BFD2EB75E0A1743B59C5CD781130C3450908BB9309C790B81A
-726A5DFFA753589C05AE88E5B0AAB069FDB597ED006DF7499DD73689205A7B06
-0D00CD4285C9254C4671F6746BD385AB76E376D2C8F9CA89523E0FCCAC1AFE2F
-D21D3541474D46EE3756FE9846C6D27BEFF024487A0B68895E14BDD5EC5838C3
-B18276B88DE43E949FD14C65AED312B831B120FFB0D11816CD1B11F285496F47
-C4F06AB615C651F3B0CEC80D098A58D3D6903A243F1B64E2C1DE434676948F2E
-F120F94DFEC20C1E028CB0DEA2F9B856F73BA9F92E7907BF360D288262CD8D21
-0DF5C898EFD5115C486ED15F346BECF6AA2BA4E59DC3F860F5DB383E235E0AD3
-8A656A2311770ED4B902642BD30E97BD60DB26102E2895ACD22F67AD22C6F0E7
-912DD49F6FAEDFA568702D57D86BC176907D08B53280D1BD1093FE696EFFC553
-D8E20CB6C5871A3BF7F93125CFC5084250C3EFA20150F9AFAEDDC014EAF973DA
-1C934EF9A0E2146448F922FC2FEFC8D893C90547E076767ED9428B0D96DEC3E6
-82B678E9F5B7F7FC77D419705DF05CF6F17E8F3636E0E51CB00CFACE3DDB1173
-1BFC5B5D81EEF8C28D59DE074A7A63F45EE061106B837B3933F36C44BFAB49FB
-A61C1C6F5EC9CEDC870D226DD47D576D51446E61E0A9A9E1CAA5E94B08560766
-DC3248AB4B788D13F495C6A7EE9DF3ED79EA1EF6B1BA6E3B3F00CCDF619F06EF
-502C07F28171F5F93E65144504AE40EF7451662297926F87F1859DB516931484
-BD3D7DB2BE1F192678681FB18F22B6544E9B51928848F4E635FD79F309FCA94C
-C4FB2E04AE984EE0AA48C54F4A79F7180D2B158F31ADAC46B6827509DA86ECF6
-5872099655FA5A7C9DFA06C4FCD33CC12384D0EE1F646FA74D14DDEF8F2321AE
-966D7EFED0DF0FADDC8762BB671761CB643D32393CB2E201537C5D87D9E44BB3
-AE88232BB580669A5EB79669FBF2B116F9845CB9AFA54A8C852F572FDE1176E4
-56F650BB69AA195F6315D0EAF88ED671B5B26EAF84F4A59A573D0F649948253E
-C51D3B4CB623B63D0A4B513DA7188BC08865DFBD7C78BB0DA0A5FC8D7910D07B
-07A4737B05E41FE3FF9CFE5BD35A9CA84E2107A0C47FABAC9DBE051F0C9CDB8F
-2C98B80C7A945743B0A87CC75C7E211D33F68FBA841D97D5D25433B14211FDEF
-005D470B1E5C29A8B3110C0ECAE381BC8CFE5C52D59454871B0411166EFDB76D
-09C3C6F54A0FED793E0B19DB23A48B99A5583A172987685243EEBD56E31C5E77
-1623F16CE8F1D822221276B5210AECC885E83167E1E66446A2681A88BB40EF6E
-82073899AD81700F9230ED476E90B38AB6815083C254E657ABD8761ECD173870
-98417DA59075CE7788E3B279D89DC565746F120208E593CEA999E6F40370231A
-644738834021ABB4DD630B523FD969A5D79D8034D70C5625C14B8B70F26447EA
-7EADEB97E2294414560FE2359B8C0F3E8E2BE47E0D79AB32837AD9155F2E4A1A
-27129BD9CC0E2F6E72EE7E43BDBC49F44388434096CE46A8367850BB70059308
-CDDB676CA17E963F6073B19AAEE7E12C76D6165564DEDFEB517102655293A942
-DD67998256EEC2D21A844181ECC8DFD7A9FF26C64854B1AF3F304D09E264B18A
-8F26004866D01BCB4A823FDC800C45740A543A036EE4785ED09CDE35F7C6E579
-9FD4C16E2089FA7C22C7C7A5296B165689D2C26B4D64DCEC325FB1ED3BDF3F90
-9B90E84072EE1F2AFA0D61E7043C22749CC71E561BFB0D20E7135EEF7B2DE8FC
-2C2AEE15F8A17E739E489F9001A063F452B899EA26734F78ACA3964077BBD523
-538660F290A2656966B6BB9036E3E63674847E35E02E54E8ABF1CA3C31807CCB
-16A349CFF5DC7CB54934F12890E3CA0B9D76B692E7714035F3A64A6A877DE24F
-A42D526B7D32C480D44215610EB46E17C295C70D6D105EC0240D36E0B3C29DBE
-76269CD8A66DE579C88353547EDCAD1FFF1F95D76E0923A24FC3A9F9C2A7D910
-B8FB62163DE7A02B3A919C06FC23F1AEA27E338BEE68D0297E8281EC47320D01
-CD201378228D6860C71EAEE0900BF462B701E57909F02824D1424C444B9D6F50
-0229794506BCC56B503293BC69B3C6F28CA4C816A8F2AA2992253A408A822D1A
-952079FD015DD41F3C93D9F0FF6EEEDF50C1629A76B0D03BA0037845ED1DC89E
-53335C804C71AB80D025E49F4313E797ECB16C7F39B963476A5C57256F083CE7
-FA22C560B68DC95691724A56632484BE7F0DCC403E915EC2B115EEAF3F8B7F1D
-D1460DA180355E3BD2DF1D459A179317B5781D0C86D9245B62B159F1EF46D3A2
-94AE78E79A69302C17520FED89AC397304BE804CC2D620523FE203B4935E0A08
-F843C562D352CBE1202538E0BC63CD3CDECD197989CE794BAE7E0FD9EB5A8333
-827FDA2233058977663741CED6E55E4E5A5AE4F4E6CB57F07E1D4579D18C178A
-49428C7CECAFA604C8C64F6A00FC9D6CC34AEF674672329279FA7F3DE0BF959E
-8B8B4E9EEC0F406A91C51E62C583FA54F391F5177FE1E29F6A81FD3E98B4D80C
-9F1289FF4B55FB319FDED440F59F421F062E6554ADCD00600C4DCCCA97F32890
-49CA92115DD0C894F37FBDE59FBC8510F2D6901CECB70268982D49A47C7B037B
-F55446CA03BD401B4826BFCE26D55C80337D3F2B10DE20AE6B7563D61778992E
-CEEFC6515DD496AC6209BFD515FAF56B42D331C0981F4FDA4A033B407008A4C5
-034E4BAB5F833148164F563A9FE8D8F7B6E9D6CCF780FA857149E2E610497C37
-5997969165907BBA244FF5679BFC346A2DEA84F66C046D613192C06D35A5A372
-9C281B8696DFEAFA164E0F2C86FCC43783AB3CF735F013488F40CB1EBCED4DB5
-1B892E6FEB72A60CB79A529528E20DCE7AD6C983B1E0AD8482581C10C5923466
-485B25BD384555BE05AA2A1C9A449A651357564CE0D8293CACA18C8B520DB97D
-EDC0BC13AE0A5C709B4523CD32CE0B6C3A43A684384E98CD042AA39CE119983C
-08B789000E3D887B76048AFFE58FC01E50359EDA5D579B4A99BE63E027FAA499
-FD3637CD7EE3DB8FAC7A7B49EAF466A258786257FA59E9DAB9DECBEAC369D7BE
-C0D40B594D973B17885248C445426905AB12B617FD88E09E80AD8E3A6EDD5AD7
-4F184B6929B879463ADA22B7E42DB8801B842D433575B03DDD0FAF179EE4683B
-D1080F2C9A08FA1DCEC4862D18ABB3204E84754B44E7CAD9831A67235DE21FFC
-6AB91313F29574062015729C03204D895014DD676BD2BF94292F3C1A79841C08
-92D804BDE4740AC1388896E0C83F3BB8E93DE19E9E2088140B3EFF9AB00799AA
-BEF0D6208DC9435106F4E160E2C172A39670EE21C887B82AE4E0B5E8F3C556C2
-C01353F5BD0D6E7D1B675C5C15841895863217F32476B02EC0E8909FE1D5E443
-78DD61A1DB513FFF4997F22F3A9B03F0A645A152F00DE39BAFFE9F338CA87E8D
-0ADB94F94532A807C65B095001A83E03780C61F8C6D175F9405987E7431636E1
-9BC9CEA79500EB0AFD5292A50C34B7ED0C6FEE3E395A9EC246CA7851E979F086
-EAE04235C25605B4ED0286C746FC0099CCC04961C0B7D8A1ADD5A50E48EAC5EF
-0E1000C77ED1BFAA3210AB496B2B9C1AD5A197B2EB435F2FD01DD5FD39111CD1
-D496210BB93C418A64B3476D7FD53900AC2F689CB16BEF3D60A93A171B216403
-1D611A41408881AA571B936726E7D703A0D8F2D0BE3E32882EB78150A9BA761A
-6C7F1212FD52512C56C42865D910423EFF3EEDE621466A59E0104BF420847F6B
-B927BB31090FFCDEEC85E729B99D78BF42906A2986129A933C2493BB216EF00F
-60EF04214F0B5118DA3A2738B9A55FE06DB2AE5A2F535D095CD138545B7A0A4F
-A1F80FA197317253879321A5E78D3C6BCF487B6B242F1C6F1FBBDDE5D9BCB191
-9DDBC945E0A5AB2F752AC425F421A92B26E87C6945ED317B36173EFBCDF0B67C
-89345B03640A2E59CECFB8F351948121BCA6D196FDE5601C7D545EEF9A0B8B91
-590F8712FBB88A87EBA115C565D6B3B9EFD53545F079B60D9E833F41DA40D176
-5328B8891A5CB1AB952FC77A93BB871EF8A17C79045BEDD65A9B7893FBAE62B2
-90EEC774E889C7A02496FBA6C1FD8E42A35E37DF49A2B914CCF4726C985A306F
-D8C83FCC6BB9EA66A193E350458C52592C2B16AA812628DD8FB16A4AC9897BD9
-CF1BFBFAC5BDEFA1E856FB2B130794F44C039C01DBECB2086F2B6B367603EEDC
-2025844C5F492CE76052B2B6D69F805BEB62C5539DDB1CD5D861CE15E1200B25
-ED83F8D7CB26C3401BC30CBD2AE8CF0221FAE4B1884FC4CBC1F0ED39ABB25593
-957FE70694E6AF2FD8748AA4396DF453B587C6A31522A6F52F1E9DC1953EA4E0
-A2D0689DE808E32BD30D1D7DDEE920D1F5B859B8381F7AC8C543DE6C0A477F6C
-7D27AA483A9ECF4EB9BB2A455C664538B9D7B6D7EB3BCBC7825BE1C0B3541572
-429E73EE263BBAD84659F47EA900CE69F8F5174AAA951A8B710B86F7D1648CC4
-D16587DC76196A5391062DC4EDEA970590722EF6C40E1BDB1282A7B6BF4FEBD0
-313257B86A5573E362D0BF6480703F27613B787B0A939737252B558E22FB3F07
-E3D41D0DE9FE12B2FB8E38F9968C3A542579CA6C36943A162164EA3B27748D75
-354223F4AA01E2FED87A70C8C2A099B1EB1601AD93A025B58658CCC3C5E1E104
-CB33771CC91BFCBDE5F90BEC75BBAABBF5FAB63FD631086FE97CD3654A5415D5
-13B9EF1C38B243EB96B27146EEA7CDC8E17C74676F43BCA3D0FA31A576581C2C
-1F232E73DF1544DA33AB3D45654D54C890025CC17E33989E875FAABE340CE6FF
-F5F5C5844D37F5B38BE18F29ECC4E390AD9BD270F9B6368FB038D9A9D9168BB0
-0BC3D6156AD8D4099EE878A762B7D725093DBA56C9D6B88152BEADFD7D0AB6E1
-D14B487A609D37BB815280A5F5EBD105E6AD2773D00CF996BC39C4965E08791E
-CDF69FB205A8EE0CEAD9145DAFA7A2B028395D938AFDFFEF2EE37FCA8A948216
-B85AC1B885D4AA9A6AC8203CAAA7716573D061407DD2B1DDF1CD6026EFDBC1D3
-61B5C61371A248DBE267CDAAD1F0CF3E66BA16CC47A41CB5C49DDBEE015CA0B1
-7B2D0201374A35EB3EE70EAEEE44078DC8CE4F516DDEF10A61F500DFFC8C02C1
-337E2DA9EDD7F3FF4937D0999572E6BFFF9FA3F2FDB01308DE7D6FB8D0A67E00
-F4284882F2043063C03DE5CA05F97A36260FEB8C4BE95DE9F2DF7D2CA572DB0D
-478BCA15D32BD8A95109DB5F92B318AB831168A4150A437679076D7CFE5EACCC
-14E866A65FEB2EBCBE51E792F5A644BDC6AB9F1F576077F718D29BB7DE82B829
-B0DCE337CA18225E470E412E1FDB18CE8BEF93F26AEFC1C6073E0A1173CD5E83
-89A72C279856E4FD31837BA43B603A28D71D427BBCA52207220EC3E14234E7E7
-F3F1172B3998887BBF98C4E3D3B1B01A33387340CDDAD0CBB223B58BE51B027F
-9795CA7142F703264069FCE544AAD50B2F2E8EB5A1B7330B31409A873FE3A1EB
-8C22C80BB164AD35EB68A1B20DB47DC61B0AA72694B10904C9FF8B890B096EA1
-7DFA7B09D784BF68D70DBFBE84568B4A62FAB8BA46748420CA6CE88FAB584A40
-D0A153513AE867F772284B966D4BC5FB7128184F55BEF9AAE0D61402AF14E1FA
-F59D22F240C60AAD06BE5E1C77D29A072AC5C0AE669053AB5B1C5A2A45A624D9
-0AF27A204DB9269F9D1FBDAD38C66EEFFA2D1F2C773754A8C47A5665F0D8D020
-05E6AEF66E79A14E5850D79DD6A0E46F1115D8E2842698BC
+0A2AC142089A891607B075019E60BBC5CDB1AB6E31DFECD6500C6E40074023DB
+11474C87E51DC00983F99863097050A7E428E3BA47F9E40C9EF1B5F0590217A0
+A9DB1CAD41A5D420F20BC2AFF0A25BBEA832C3128628C241DF5FE78884C6ADDC
+E617893C14876F6330D6951DD113F3C4F8678EB201A60F4D9C07A3E29D763741
+10751577429E325609A544F60D83D0FD5D44990D5ED78A02BDB2467C8815F792
+804C8C32AF13EA9476679DDC9504C39846228B064450180C894451A8D43597EA
+50C94125A083C5A0F2E38E993B049C75AE05949B5B09DCCE5EED7C91601BD79A
+EA08883D8AA2D08C9D5E296AFD13383B457231E8797E5F8C73D0D56A1F7E1ACD
+3A1C48486E9CC4DF715366FAFC79A197595F18B60FC89EB02C9B8136131137AB
+222A517CD5F5797D6A65BE553168878325162072BA5D719F3510639FDBCBB448
+5DFA0B1774CFA961558A0A72D139AF0D5B42EF7897F697CB5942DB7B2FCCDB9D
+71472A56B663D2E55A7263E24137165D2F917DCABF63814C818CDE0B03B6E961
+9F220CA7EC58283B36F3B7AC37F415FDD00C248DECE7E9B57B07D0DC7A106C69
+55BD5F726687151CE743BA4703F19721E773F3BF02E67130F273D35DCF38642F
+919D3D0CC9434EBE1126FFED9D7D3DF75B2BBE10CD30D8B8C0903CD1FE3ABBB8
+BC90B87AC4478CD688616E797B2DBEE120183ED696226DA703C0CA001BE9D46B
+B306E7F7F63BED6FC610B8A89B00A5A95701FCC80D83C50874EE764B7C487097
+DBBB0146746FFE1CBFCF7D7195F08231FB46755C1DF964C7CCD803E7E69722F6
+9D5B3CC4890090A74AB2121E464354F724AB7D39E8DC2234DDA3674EF0695148
+63176CEB812F168A0A7498C96AF70A1A7FE2769A3E725883D789ACC8C71D0278
+CF3538E7AF786E5F241B9F91FB0604DD3EB2E444F548F5248F65DF7D175A0343
+DEB9AFE845F8975DA301F1A4C4CFEE3234AED965B423E4D203C9CA88AA967195
+B23B4CD359F7F4AD551BC2564E677FBBAB954D0C3EE386139F7F5A4B1DCF7FC7
+7230BCF476051638B337BCC8F5A9145AF38D4987A65FD5A7E8301F4B8D06F9E5
+B26EBA34CDB951F14C7B0BE1CFAB8098F64D529F70B452492A1B29E03AA1D0FA
+B54AA53EDD3EE3F74E230CABB2B94FEBE4913EF0A30E0C4F27A7E29FFE700BBE
+D43233DA1A0E4A32B0EEBC1B2F9FB7F6885992E21BD1BE5D912F282B0FCF1EFE
+62013C4B5C1CE5B8AE189B28747FD30961A3FB1C58C700C9119E592B7F52E24A
+F9AB44BA92AB05E2CA9CA2C443CC9E7E0165D8345BD37D961D945027E01DDEB1
+1DBB608A3A7995A9E99ADC90970D7F4EC02EDCB7D32AB877BF4797F38CE514F2
+C7F43965C3135FCBB4D8A986E119C562E6973942ADE968B09A36DBC5391321AE
+97265D39A7B7EE00ACD0661D426EA4E5E8114D65587170C73D3559258A172128
+5CA211EC04137A6227810826C10E676E9595F9880C0DAE45050EBA9FD950A591
+16A39911D102EC836D067418E3FE7B361BA40987B660717E4CCF43CBCF5D3668
+6AFE35386A12B9992F9EF7CE7A326A8C02EB51E90837A75A0B781DA6516F96AF
+F7BCC0503C01FF3C7DD5B574307D454E664CE49E37E01EDB9BAE51D41BAC615F
+08590D7A5CCD633E8EB051D8A4C066F0D63CBE9D2A0A38CF97401B541668661C
+7ABECADEE4BCBDEA822919196BF14DCFF9CD143FE5ECEE374907F17ABE47AD79
+B88BD1B6D6A8DDD56A95A2DAD1B2D3C45D19389F9CAAC36CB03641BB8CAB7C93
+69F7418CE2956990036E3A8BB0E48FADB3B56D08EBB536E3A2D176159DEBF462
+295F700F66A6917DD457589CCE6B33F498859C33E35F2D46336776BB31686529
+B303BA134073508E67ED9FCC2023873B21EE627CD2DFB6F4EBCCA944C3AD2B92
+4F9411C31ABE2FBC265D09AC7315F74D393AF906055A304AD1636A5CD22D2684
+83BE15E9A035804414CC68914F260510A30219E72F1C4D63363FE03C220A44BE
+90009E869C2DA6D639759EC8436096B593A917B3B604271F75C6941DC839EFA3
+0B9A58F85E67EBBD0895EF6BEA57CD716017EC0BCF009D27434156CD86F0B768
+175571C451520F4AA26BD45AF025C230BB98A9350407BE5C1F1C71F83517E580
+7F3A2542F4D6DFB5BA77D93116800A66D29B916F2FC78042068D44A8D6620DCE
+97A64BF9A7A488CBF302A6F0173EF1350FBBD46E307FA637AF4600D643372835
+04F98F008F3DBDF3D584D936FC268B799340D8647F0262B3C9DCE41687A8CC27
+0D6B2DD19FCB4E3AE162CC44390DF0D2A6A3BFD0DD5156B5ED3C031A371A24D4
+4DA4CB9B961C5447242055FA6CF13F67C155E6F36215628736704094836F03CF
+1D2823E43F30B68B4C0A95EDE5356C2654F9782FF4CAB180ED7B362914F4882A
+F765062AE02E2AB49E3FA86FBCC730849CE306949294893D2CF06DE88A7776E7
+ED162FAA07057BC0C1F5FC70326B2884A5E4685505E19DA512EE2C90EF91D7C0
+13F41B468ABDD40FA91430DE8289D65ACECF7BB7A4162949AEF4BCFB5B329542
+31F35AECE5E5641E9217BFCF742B8B908D54431CD98DFF97989F901C114984FA
+0B2726174AB60C6415A71CC1373AEE18D5A29C34C66E8822C2C298E912F2E217
+44B52FBD94B98CC6BD235322BCB219185B4273195271FD3DD5625D9483069494
+526694DD7B5632E9FBE1E6C71D50781FC5E4C578579CBF97288A9E92D84B6C5D
+055EBE77F09EF26329C9D687E89F7307650AF8E45713B65CB92C6C356EC62F33
+DCA398238DED9E66283D790346C019900C3EC090F97A9153F5E1BA5460B5E4C7
+52C9C90BE107B5341621E6D3BB7EB0F2AC3D11595F8F6DEAD3B9310B9F706A3E
+A3CD958623CC42ABE4E8BA63E102D56838503B608D5DFD3DF3BEC35C7157576F
+AF584C90AEB1012890559BAE9C90E3935CC1EA4E913FFEA421ECD35AA6F6C089
+82078877FD89A115C98F61E0999ED37FE634B710854AFE360201E858FC4F10B4
+9F3887390A579E01928F8C5AD522DA87167E6F1D2153A48397D23A9803F08478
+AD3ABCAAB2ADA02F36C06FA7B262AD0BD026E6500FA6600D71BEE0A365DDBA7D
+71A812EBBB71766909A02AE6DE30A9EC76F56E17D811B2EF177CF3537F1A4CCD
+5D39BA029F063080AC2ABF0D9EE11BD2593E3D637DC34D4E815BD6664FEA4969
+8F5E128D85484125F78AB2E16BB78E605A389377EC9E1876E5028830360F668C
+C77F377D1854ADA97454DBF45CBD2F10DBC4E9C6B29AA8A875B2012441653008
+F5EB97CA0AB351859499FD9F5ABA5464D1BF21CD3D3C1277F8B9796D98BF4CDA
+C045E7E674DC7B472D05ACF65FDE581C93A0B213C8EB8163957F28627EF14A72
+6049530168A4E11D2B7F4FD9391130007C67C4792CA94A72B8ABA43CB4B708CF
+DD0C96BE177380FDEE3E46DD584FA820C67463CD4031CE04652993FF3DBA19D1
+D0A520FD0E52DD5BE265CBADED20CE377F90F876998006F67AEDD30E3E8CAB3D
+4B2518556A99AA4FFABBB1E6ACCBEEDBAE2BC1DBE9D8292AEDB8E3F103DBF748
+D9E0C6C3F0A4A203DE481A462379216B3CCA465A41D0B9B5090206D797D3A3EA
+6E750E5C13F6DDFFF42CA7F046DB5699AA2209A038519F515B4886AFF04FF03C
+1DB46BCE65DBA0C4352D85F88E4AF74FC376B8476F610846100AC2A5C1CDB880
+A959EB2E020529E3C8456CDF94C36581409E8E1789B2B45AFB8FB541D431A748
+35443C33F1E4191B71A3996F53B98722DBF5E30717629EA737E4EB1F7F3A0F7A
+C0879729840AE4C830E3A2CC3ADD62C1145BF535D121E3875F12228B90561B82
+EB2CDB4F8BBF201769BBFDAAED00E9CFE295023034AADC12C217B0100CE8055A
+8D2DB665537FEBACD5BCD69D50F72DC60BE0DDC9AAF703C8041A3353DBB0244C
+A8488514C101E4D662D394A84C5B9048F2EEFF7931A3BDEA5DA02F3C4D564F1E
+73DDC5FE2CD57134C1DB9468A2DC585717F65E68CA931CC16F0F7887D2BF2375
+FD28B4C0D900692E944BF5710273E30138F4775422955D09B22B738142A37FCD
+83ACFD05B6AE9D17C673B24855F74FE10844B5ED73C25221623FCCDFED42D395
+DD426D6EAF323A54510021065F91B6248E1D8B0F466E3BE65C203FA87F98A297
+E5A95829A4E0A910FEAACD69F6FA81A9AB404778AE7C3BA4DAECDE05C1F86749
+66BB8107BA7F1AB76CA04C8C00262F0735ECB6D815C7B2AD937BB50275E1617F
+01F89AC79015E809211847CACEDAD713FED01470469311C9F6AA26EDA3021D7B
+A1C9E4E0F3D073B66BD9C3FBCB6B97FB5C48991C14F8459AAFFAEF73F83F4074
+96D705FABBFF885B801AEF577C84BADF4AC26B30A94B8C54B1229E666BD2FF2C
+A17D7743EAB5AD6E1C2A38BD2A7FED4300A81D982633440A01C55331895BC45B
+4B9DC7C0F43FBE75C02BE6ED47836EB92D7B6332D9867DBEB2F015C5A0F3F522
+20E262070FD52EE2BB71BEE7B0113B1FC80054ABBF13A376849751AE61ADF535
+4B95D1BD84934DDCA41015CD6BB80C324AE8B2772B073C437714B2CE80E11F2B
+76DB0DB35372C642AE7BC605B52C844F088CC468FCB9CFB13C6A4DA589049160
+2E1174520BD195FFEF8EB36EE6CF7C7138ACD19BA70CD00E7C6A18E0E0BF7C81
+295CE640135318682A1A4285C68B52DF7F950CE1BD26F6A5A51BF6C6766D2E66
+423B44BA965BBF34AD26D5A0F284B9D9E275AC18D80112EE8AEDBF5E2A6A58C2
+937E25BD76655873F1863056E3AE2325CE6F463D89A6178E3FF77351470579EA
+3BC3F74D30EE32192FBF71756BACC7E5BC8CA579247276A109093DA0F830A790
+9A3671B00269E0D361D7D08A09920B895D1F89346FF161A125E5892DBCC7F52A
+2848001F31BAB732EB4E00C976320F04088D0204434C9230B3D2D276A3481389
+49CC6E3FA168E4157858C7C6B50A8773F7F7625104C19AD63F2DA9503DA5ADB8
+8F8808FA9BC76E2FAA41B2A3BE135390C866A8B822C6E0AF049D82498FE60CEE
+529477538C36578BAA7C843BC8FC8659A1F685EF19BA5D5DC53167092562EA73
+BA7FE5D104E616DFDFA9331F7D6C9109FE513CD31940D87D0382E7157CF171E4
+A9236D5250DE6BCF0F246C5680A8D92791CA155AE942C1D8A77A9DCD88CF49B3
+663E993B0B1389DF2DE4420F29C0EC1FBED031486AE43137C68D3CB178B44D4B
+B181F63B11D2A21DE4A1E748C530CD046643BA951A81B3C0A5D78F53DE84D930
+033793C346BF6F1534037CC10E4468D0E359D6EC741C09E4A6EA4D8CEC41F846
+81CB64FAC81C877FC43DB4D00BE2D0EB06A80BAF795333376EB46FB942D38E90
+F3EE4A987EF66419E7989984ED8B36E9D936FDAF433D1A26DBFD21E69D37117B
+12426FE996620C50B0CE91BE8814410442FFB26273FC1F2C1FF4C9CFD3CDB6B8
+789B5DAD9E9E95474160F8F293F2D70ED25850C6EB5890D6BCED0B92B197C3A3
+431F2098DAB97889705FF519F48284CE07ADE6E6B2935BEE3BE6143EFF691949
+17BABBCA7B31E6F671DE31E5EF9B63C4C655460FFE6EE62852945BB1138052CA
+35CF43563ECA3587FD9F8290DFC9AB53D599428841AE1C67B22CFDA355FE092C
+252048396D0CABA7154EE336D1F021F4C0CC7C3EF47C33407D8F64741642DCDF
+C9B4C3B90A8AA883A327B95164F17A73F8BFF93F9C9BC8CA3075AF420D4A68A4
+CCA219B3D3BC5AA25486046277CEE16F512132FAE2D02CFDDCAA396083AF0B89
+591C79C211F90E5AB011E52B36827C7D3DFFDAAE45E196F3A37C0254B076E857
+5ACBF02204E8B1E01FA474C2CE29F8FF4B58E4A9DBADA84ADEC02749830CCCC4
+2ECB73AEACD6481FF0039067C298760A48C561AA968666F012037DA102DC4B7E
+450DB77AB426236601E8B53FC2D483FE9C47C8C645539B41D84C837E1875BBBD
+963D87D00BCD894434C466F39F7CF2F1CD1DF157A8F096FEE3B05E250290C74D
+8683F09F2CC02DC1B61149332E829494EB03469353948AC5AD5D84F04B4A6BFC
+C48A9455D3DBEC6F970E72A4F1BAE25D729B32280A43D16E0D780DA82518F0CD
+D7FC7FDBF93310A5C1B9CA867B436CB37DC30328966F8E6D85CC3BEE3ACAAFBB
+7AD796D617A6B480DCB507A605FD1347A693FF85C5DE7E864694EAB70D92FE56
+2E5BD7D673F3CD0D83F64192AA679CC947AD12FFC7026C7082AED8441A1A4008
+1761C4F442D8366B9505301526445E821C9713B00D6462E0D1236A363B9A143D
+5755999AA3254174F5401F03592133E2924D4994A97A620AE2A307BEDB04D9DA
+92D617AA7E1DC41B9F486196F85B0F9D4C26F4D67D74A3F8BE6A5E05F302E15C
+0D74CF24E14C4BB5625501A6863B1EE19032C3A28B07899B21E0A8DF706EA672
+D9DD51A2F5027A99E2B58E626FBF060BF25200B484060450ACF9C64318A86F69
+990ADC813C1EAAA76830206527AB4240EF28F04D538E98E31AD943D8B155ECCD
+98C39C82D7E43481202EF89CD4F871D3C997BA62B8DDF0CD885A6576CF1FC080
+412A9B9BF9FFCBB8DE22D63F6DDB9841ED350AA719EDA87A18DF0E776660023F
+FEAD68C95A159E5CE4731AA7FEF11A62FEF73CF850142CA18B29FD4981B2B461
+AEE5B1ECB409E9CEAB2F2A83940E79FA805E71646A48C120FF056D978F9D931F
+D5CA93F27B4855E6ED4D7121A56B90D9463EC6F9B76F4A262313A08E76BEA626
+3D33C83EA3262C03B5ED7B4C10F687E88F3FFE3B5F3BAF16F25003A21432826E
+D1C17D67172C5BD9B1D5E3DCAC4C14E0BE2D194F2D42DE37659C704C518E749A
+77E1AD2B11CAA8514791C9AD8DB8FBA16905349A0C8A176620C23342F68E8E27
+3880EBDBCA5F32FAEE3680092934BC7243500E2DE3A22DD325246F39ABA0F354
+36289AB53D71B147C85088703C683C1D96F47EA244E8513814769A7B30D52CF8
+49C9DCE11E912F7BFF5CFD25BAC588E476C76B5064D528381C6882CB3BA73A8E
+C1E605B14304D5BD1A755DEFE9C4D6D5100C1B810C622DF4990C4CFF82187FCA
+8CE5A717B266D35EEA7C2719E3AA0829704B3FDC4B0DCFA34E1EEBFB9B8BCAFD
+7036015D1D26573C8DD513B8E617746F89E6C890D11721AA61419CC3A3D256B6
+47E79645560AE6FBC56725850C60D68ABF8FF3514AAFE242CE44EF87F851E991
+C525AE6E8CCD5D2FD7E091972E688B826CCE918852E4FBF9DCA5AC377F7F0195
+8CCFA0A096C20318C5BA8628F1B3C553C1E0E083F24E22ADE00B2DB1C8439E8E
+F2138E45D8D6775B2910E50B91A04CB493A0E6E3F1A971ECC92E71F3E8F14DB8
+32CD332FB4C9D0C89CF1F1CCD77536DE9FA04DC3354910E3494B91659DACA558
+EC0F8CCFB7E0603570FD5CEE33FB603405D211B6C734BD2DC3378370B93087DD
+3EBD7184464B513DE3164CB0C10F5BF386D1308FB4AF8C26308C93ECAEA20C12
+D9716C8B29FC3367B36C77BA6F0B40B6220D70AA4C699FEBA3D9DA0655ECB2E8
+74CE90B53D74EDDECC270BD267886768DF920E850FBB196080512A0AE489D11C
+27D0DDC0DE1456EBE8376163C48ED8899E5C2BEF686464ED53277C764A1D8D80
+EC7812F2BA5B7E65349582CF436ABFF6249B4141EC6F21CD7CD4C1A23C8D017C
+DB296BF885E5B09B8EB36F9799E0355CAD64B60611D64001B91FF15FFCCEC35F
+4C4A4FF37124D8497F0508E52BA7C490F2481C833A8072A120ED280BC79336EE
+B03F07034E8EC04890779D7D222FDA4C4A282705B8A3E66BD5D96FABDCCFBD8C
+4F0B6AB3CB420978C2DECAB2D3CD19334396397432D8577CAB85D875E3ABEA8A
+51A1D8643619BAA52B7DD571939A2C327955DFC03F61527EC239E696E7C0B78E
+73A6D83EBF19244882785A3F582161D4492EE515C99623E0E0E3FCF6E38B4721
+7EB379E4491CE7343B593A8A266B83BE2A2277D5CC84335A776E658FF85D39C7
+9612211B3BC71E2B8D85474B18957807E746DA079887E28DECB9B3CE7E94669E
+EC25FF3035BBE99A7E2314FF4A8C4CEB5ECDDA4999B9B2500B46028A9B370B91
+61F6EE06F9E4C02EEA683FEE392659CDF283E39B61BFE99DCE8F30F5EC630067
+42D44AC6F7647AC4424E0C4964D8CA25CA6152364AD67638F2B7397413809F1E
+24F916933FA452A8683A953462BAC73128F890B07E9454FB4059D69B5851D744
+AB67E7C0A61414200E9813D685BC535D2B621F8C75F56014014D610FFC4C56FA
+06A81021A818D6D368EEDD862C9BB334F050F5502BC63CE2006DD12273746CB0
+4335C8E25C462E4DEF12DE2C80A2F25E81A04AE22205C8F61EE20636C2E1BA41
+00CE04BC0FE7A2128ED163112F69BDC089FBCD33545A412E24F1B885A315C1E2
+361FEBAC883956CFC4F9D2CA2998A8C882A678AE2F282C8E03AEDB9EB7D4F471
+55A5F118459A68150BCB2BD96FEA71221EAD5BE0B2CF5C80895F8CC2954A670B
+32BEFAA720634E28A6EC26B3F87C74AB7EE8812DA0D25444CA546A29CE234F7D
+09BE4F16D64B517D6DE603CCDDEEA0CBF3AA4E01EBC780B3481F8666B11B1C75
+C9EE8989EF359CAE9A3B90A20B946F6FB3E178A459BF425984666B617D9BE899
+1DFD5E21DDD66D2C064ED0FF7DE1307C3F0A720E0A97EE937B2ACD5518CFD8D1
+CB354D53E09E7F5576F456E0D48A5B17487FBF7418509B2E3B64C9B55282C9AF
+034233818D88FCC291FE5CDF13DC78D85AAE8892407AEE591B1E9AC0F54513FC
+BC04173FE429E9A56139B59EF1E68966418316B704C87F1E6A65B71776E90790
+6FA2275B1E008FAA1C24F1A81C96AE91620C54F48083A32C22DC34A4F3DB63AC
+39A3A61843C9D5F585AF29A534C5D81A4CDA1C29EDFCF2C85937206EB4CB1ADB
+B9616941A8E3F09E5CA686AC3C48D822A9D427C4A40ACC498E53A98704334CD6
+0570E591AF9C82168F3640BB70E1ACE1ED7DB6394603DC325CBD657A6333482F
+B53F47CE8207A268408B4C514C7BD1816C7E3B39262506597110CBF5B2C39863
+4272EFF639940302C2576A440B8D6D5D42DE3DE12F9A72DDB062805155DF7831
+18E426B79F4DAC9CD8A7A770CA7AD3CF6E980F1E3B970C9924E037F238A1D136
+EAB6923A8777D40C107AE9C94F6DF96C7906DC4D3F316517461AA237A4524E29
+044C718C69A97B882C85825DE80D2EF200A80C4ABED634374F207D96F86CD82E
+BE667AC443760263ABF558A985DB39268FBA2E269F8C2FD530EDBAE11F8B675F
+04002CC02F06FA8F0DD337CA95BBE3900CEC3FC4A779CC786E75519021848414
+C627B78999A01E4F1DD583A59F5C214B0237CCAFC61AC72FF1EEBA89290919B1
+5A45EF986EA5BBADFD24A349ED6A045519F74A5E562088FCD777DF45C6FB3453
+E4D353C5743FFE7081E04325E7EDA574DD56F297527EF7DABEB9F743EAB4F519
+600668E4454EA430D311BA1FA97D1C14DD3404B460C0F409C3E39CF779AB4F1D
+17B67BC88081D452039777E5D8D47D77D324EA364FEBE33D7B1A08828CD8FB05
+3DE0ED55F3E530AF1633E458852B735929381835DC00DFEE3D300F52896E5079
+7297820CD077E2F0E0ED088584EB67E64C99A62CC8AE9A9B3F5253E81A4BC631
+BF7332968C6C2CEE6ED5A3F1D2E1DB8D362A7B09BEB329B43716CFD997BA30D1
+074821847E87737B51490856228FFF070B7FC27DF6C18CECD5FC2FD568723BC2
+E9620AA94742606023A015F445B9B3BC89B5AF91962C4E659B2CAE981E4637D9
+5B5D074474973DBEDB804148DAEB0CFF939C282918A219726227BFEF91EFE98E
+F274D8A8A0E32EF7301BAE01A83E7FDBEEF87D87BCCEA23BA55F4DCE15F0E05F
+0EC406A4CD62E867A7CA57DD3D019BA08780F859EE584313D9240A8C3ED2BAE6
+9D5AB6B07424651AF5ADE40A7673DC5B3FDA0CD476DB9BE966E696F914D22014
+F46330ABB20E75EB0DB3A5A727CE54E08B44842F2787CF6BBCB7AB230EB5436E
+08B1D0D9F60572CACEA793A91F90C836F83E022F3C8D648839C630CDA27E74AD
+8A91F120882446E4AF11C73D525EDE5C005649A880FDE689467CB09A642EA5B8
+3C0DC11578DAD76E7017B88CFB546A081762C963DA2480430071D8A123DCD6D8
+A350B33C66E11B08E6B62CAB222D160E6C48776913331628DE5F0710F87B1C22
+C77F2D888F5C01BFF9879441A81CB7992A2BC042013008BE382206D45DB802BF
+BABFCA10AACD0E4FED2E035179BA5134073C1010226DEAF9DEDC976F0C524625
+4C4ED71C9F114B381AF4371A8E95352B648CA9F681978A49093A6C40E338CF75
+49F7998CFDC29670BAAE16189D6635A80B6793AB9186B66B8814BEF45B359F41
+EB3F7AA1E75D8D91373EB23CAC6E9A2C69F153AE238C6DCB7A4A4326099572D1
+AAE06D49343427770F37ED208FE983DFFDD3C7E32E0E9281578E115ABAA0EDE2
+0291B95A050B24D486D5F2CDB12F615AAE8C56C6D07DD22FF592BFCAE7A01E67
+333F90B0F07751621B32913A2DB059CC00F537425EA4EEDB491E595EF709B414
+7634D80E767BAF9FEBC1FC41D0FB3F5D162F66311F416A93BA6301ABB5AC7173
+7CBBA52D93D5031D1B7F2BB8595FA1C84E440D99BBA7E8EAC149DFF18C7049DA
+2788E3F847DC10DD9439C584D0446309206AC1C1D2A172BE0A6C5D8C5C0DC137
+CF56300F4156F86A1F4D502A0001BCFE8E82AA4212FF2864B1E081B3504C9ED3
+A508FFDB26EBEA894C33CE7B4FEC09F475F585B2E61599B4FCF4EFCC08B48CDF
+D2BEC7557520C0DC7A69A74CBC4C765025ACB960C010986BC5E2A96F5DEE58F7
+D05BB869712E6E66AEBFDCF2F90530B4262FE620D9F8D66B352A529488C005BA
+C3144B6A47053E9975DCBA568BB914F6FEB4E1804D2D99C56FACE488C8ECBF90
+BED15297E72E45A12C2D7D2A9D072B11EF324C6B5115076928B694E39E50C386
+F11C687EFADDB68C57AA29E3064CC387ACD573B2F29D27746F169902D3957EE1
+A02EC362C66754EFDA5A4644559536D3FC592F158C77B50708E74507A8AE6324
+3023BB7C93882B2675D612ACA1198C3B2813BA6E04AF30C98F3C0CDD9C63DEC1
+D0E9AC3764C872EE8D7D525F8AF36BDAA0B0CC112D2B46FF2EE95EA351321B94
+93BB28CD9BB63AC0841EB3070A33A016E1D6C87A55057118D14F7F53E18EAB1C
+09D22FBC1FA42CC6C7975E4FB0268944EE843E4A90D7F0AA228F0BE55B42EBD3
+EC32E11924F5D9742BE8E7A803FB25CD75DE330AC140601ACED8B1452BF8B2B4
+C55AFEF142AF8CCB3F394E5859EA994E3ABFF4C77871DC8668E47C858C35770B
+D9BC3BE31CD67C6B5E607F6DFFDC7EE338711C98C2A30AC2B612089CDE630E04
+A73B07518B9EA8A3AA324B6AEF0E5D7612DBE06BF7DE4A55796DAB2C81CFE23D
+0132797108BBB0193CE77D91DA6B48E951338E1E0DE6054FBD1A4FCAD95479DD
+2DFBFE923FB7A3B06B7085793C165A20D79BF09BE800B2ED7FBF43436EE7676C
+FD2EE1495E13D572912BE7C2379C8D1E7DA4A6A2EF9FE33AA14A75377A356DEC
+6AF1106AA3D780D1A99DD2E0CC66CCEBB8CA3CC418DE0A267E8E5D34EE925E2F
+827461088DB60E0D56BBD217D9E0C3D2B591CC60468A3F7A5A6D49FD8F64DD46
+BAC6215C2E56E67A10F69219E1C8A09DED4A745CD53E5748A7C2B57FCEFDE598
+A026E280A1E5767ECBD3A3ECC41D52232674BE60A3A8BB6FF9EE627AA4B2CC24
+9474949DAEA29AB9586836860AE1FFB4AADC75B0760015C86FE32F49F26FF44C
+C03D4BD3CDE93C57329410FA84900B19338CAC1C55B507A6B130EEFFB01A5E44
+0E3E133C17A0AA4ADF837C5D6CE284D053DCBB3C03F59C5C9BB80C0C4BEA25B6
+5FD00C833BDAEC0A4607285DEFBBC7D3A6A100E8D6453115233D76CA2C132D31
+A3A3FEA39606F68F0AC10CFD4F5701C4B2A7B6848C77A903BDA77904D038A1C5
+6014E31F975CF627D67B0D3F3AAEE72D32EA80709CF712A6EB46E508177AFA03
+F275DA9768CD589CB298322B0BF50B578E9E4B58989DDE12CBAAAEB7E36655C2
+842F5C7FC004B8B8516D8CD35543F3D2182DACC5EE8750A0CAB151C6EED04063
+71B111101991BABA8B86E9F6F718B9ED1E69D91EEB503C6AE45B661C8CA8B1CB
+20A9C01764DC4CC575C636B84755614BBFC242A5865469F87FF4F97A43B5A651
+B2DAF746AA69FA6B9CFC9FF4A2590DA2D23BEF1EA97DE3FF48A0A23369B90395
+0DFD36B3C7A992CDC1E49F42DE7C37CDEEC35A7AF8CADC2CA0BBB01895613E03
+9C157B1683F1421F74B08184D56DEFCA72132550C6C1061B36769DBD39EC22CF
+238641C90BB9510D564C0AB202205358CE42CDA4723E5506BF5A274236A6E9E4
+DD21C0FC9FE57974FCABC6C808856B5F837AF759863BEF5BB381E2A729C6C4DE
+2F53DD2DC92BAEAD141FD5FFE341E0FD5AEE566E2E1C6A44E94071DA0C3D4F57
+07B02D120D95B21086CC12F33FC4D0C7C8B6147928A00339324024F787193073
+13DD96DBC559F2339FB51C6123A3C51C70B7676B39255F589A80747491320833
+0FD6685904C70A865AABFCBB7F5E351BEF3B535D00403E1B5C4C64E8DE7061DC
+A1D9D4AE825BFEE090412772E057A13FCD3A897FDE348FD50E50C620C89461B8
+BE07B057B796B16E06CD314943153935D91152BC6E331DA67D73524ED7548385
+0F087BB2F0023532B945ECC61B6E3075FCDAA3ABBF945B64AADA7213C590A9B5
+11D068C9183BC0D2238DB3844BB4C7596E00BF6A67B6BDA2F85D5D603B80035B
+5DF1EC6C3570609A972B752550C89C34B8E14BD1E0A030303D9015EBC9114F57
+2899C129E72055B92DF22636EC479B03277E3E60DCAD36EB35CC3898C056C72D
+B58CCC6FCE3B2FFDCF560E130B196BC278224FD4901DD2F2F753494FFF4AAD61
+002715D828FCC2B6BA8794D843C1144231E818579B305AB9022AD279E0514068
+F4330A1C2C2C3FBDD150098C5B7DED6374D6B45CDBB7C88C78343959CC260B39
+986001C07720E3B745CAAFF84F858CF3AC4440B592D5A83BD96FB5980286CCB3
+6EDA47D11381FEE3F3CAEFB2D6E35F2B896DA68E8567D9327FB956733DA2896D
+1A63B1FB168529BE23A7D04607085DA1596BA1858B1A07F3F37A233D2E81D599
+82D885596BD3D041DBB2F3972CF605C0FD781C1360B368B49C4E41D2BF45FC3B
+15460C0D9AFB5BDBC87FEE463493E471DB54CFC064DBAF00EB126DEE19C58319
+71E77AFADB3B1256673E0B9226177A6161133FB030F063FA67C6
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -5093,16 +5083,16 @@ rf /Fh 135[56 2[56 1[42 2[51 58 56 4[27 1[58 49 51 1[54
 /Fn 129[48 48 1[48 48 48 48 48 48 48 48 48 48 48 48 48
 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 1[48 48
 48 1[48 3[48 48 48 48 48 48 48 48 48 48 48 1[48 48 48
-48 48 48 48 48 48 48 48 48 48 48 1[48 1[48 48 1[48 3[48
-48 48 48 48 48 48 48 48 48 48 2[48 48 48 48 33[{}78 90.9091
-/CMTT10 rf /Fo 131[91 45 40 48 48 66 48 51 35 36 36 48
-51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25
-45 25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71
-47 33 68 71 59 62 69 66 64 68 5[25 25 45 45 45 45 45
-45 45 45 45 45 45 25 30 25 2[35 35 25 4[45 20[51 51 53
-11[{}81 90.9091 /CMR10 rf /Fp 134[102 4[75 76 79 3[108
-1[54 2[54 2[59 88 108 86 108 94 11[149 2[144 3[151 1[116
-2[72 1[152 71[{}19 172.154 /CMBX12 rf end
+48 48 48 48 48 48 48 48 48 48 48 1[48 1[48 48 1[48 2[48
+48 48 48 48 48 48 1[48 48 48 48 2[48 48 48 48 33[{}78
+90.9091 /CMTT10 rf /Fo 131[91 45 40 48 48 66 48 51 35
+36 36 48 51 45 51 76 25 48 28 25 51 45 28 40 51 40 51
+45 25 2[25 45 25 56 68 68 93 68 68 66 51 67 71 62 71
+68 83 57 71 47 33 68 71 59 62 69 66 64 68 5[25 25 45
+45 45 45 45 45 45 45 45 45 45 25 30 25 2[35 35 25 4[45
+20[51 51 53 11[{}81 90.9091 /CMR10 rf /Fp 134[102 4[75
+76 79 3[108 1[54 2[54 2[59 88 108 86 108 94 11[149 2[144
+3[151 1[116 2[72 1[152 71[{}19 172.154 /CMBX12 rf end
 %%EndProlog
 %%BeginSetup
 %%Feature: *Resolution 600dpi
@@ -5118,20 +5108,20 @@ ifelse
 %%Page: 1 1
 TeXDict begin 1 0 bop 150 1318 a Fp(GNU)65 b(Readline)g(Library)g(User)
 g(In)-5 b(terface)p 150 1418 3600 34 v 1873 1515 a Fo(Edition)30
-b(6.3,)i(for)e Fn(Readline)e(Library)h Fo(V)-8 b(ersion)31
-b(6.3.)3218 1623 y(Jan)m(uary)f(2014)150 4935 y Fm(Chet)45
+b(6.4,)i(for)e Fn(Readline)e(Library)h Fo(V)-8 b(ersion)31
+b(6.4.)3364 1623 y(Ma)m(y)g(2015)150 4935 y Fm(Chet)45
 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46 b(Reserv)l(e)g(Univ)l
 (ersit)l(y)150 5068 y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11
 b(ree)45 b(Soft)l(w)l(are)h(F)-11 b(oundation)p 150 5141
 3600 17 v eop end
 %%Page: 2 2
-TeXDict begin 2 1 bop 150 4413 a Fo(This)38 b(man)m(ual)h(describ)s(es)
-f(the)h(end)f(user)g(in)m(terface)i(of)f(the)g(GNU)g(Readline)g
-(Library)f(\(v)m(ersion)i(6.3,)150 4523 y(6)e(Jan)m(uary)f(2014\),)42
-b(a)c(library)f(whic)m(h)h(aids)f(in)h(the)g(consistency)g(of)g(user)f
-(in)m(terface)i(across)f(discrete)150 4633 y(programs)30
-b(whic)m(h)g(pro)m(vide)h(a)f(command)g(line)h(in)m(terface.)150
-4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767 y Fl(\015)f
+TeXDict begin 2 1 bop 150 4413 a Fo(This)29 b(man)m(ual)g(describ)s(es)
+g(the)h(end)e(user)h(in)m(terface)i(of)f(the)f(GNU)h(Readline)g
+(Library)f(\(v)m(ersion)h(6.4,)h(28)150 4523 y(Ma)m(y)26
+b(2015\),)i(a)e(library)e(whic)m(h)h(aids)g(in)f(the)i(consistency)f
+(of)g(user)g(in)m(terface)h(across)g(discrete)f(programs)150
+4633 y(whic)m(h)30 b(pro)m(vide)h(a)f(command)g(line)h(in)m(terface.)
+150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767 y Fl(\015)f
 Fo(1988{2014)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
 b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h
 (to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s
@@ -5182,46 +5172,46 @@ f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)47
 b Fo(4)399 1764 y(1.3.2)93 b(Conditional)31 b(Init)f(Constructs)e
 Fi(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)58
-b Fo(11)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
+b Fo(12)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
 b Fi(:)j(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)44 b Fo(11)275 1983 y(1.4)92
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)44 b Fo(12)275 1983 y(1.4)92
 b(Bindable)30 b(Readline)h(Commands)14 b Fi(:)g(:)i(:)f(:)g(:)h(:)f(:)h
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b Fo(14)399 2093 y(1.4.1)93
+h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b Fo(15)399 2093 y(1.4.1)93
 b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)10 b Fi(:)17
 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)40
-b Fo(14)399 2203 y(1.4.2)93 b(Commands)29 b(F)-8 b(or)31
+b Fo(15)399 2203 y(1.4.2)93 b(Commands)29 b(F)-8 b(or)31
 b(Manipulating)g(The)f(History)20 b Fi(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49 b Fo(14)399 2312 y(1.4.3)93
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49 b Fo(15)399 2312 y(1.4.3)93
 b(Commands)29 b(F)-8 b(or)31 b(Changing)f(T)-8 b(ext)25
 b Fi(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)53 b Fo(16)399
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)53 b Fo(17)399
 2422 y(1.4.4)93 b(Killing)31 b(And)e(Y)-8 b(anking)26
 b Fi(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)55 b Fo(17)399 2531 y(1.4.5)93 b(Sp)s(ecifying)30
+h(:)f(:)g(:)55 b Fo(18)399 2531 y(1.4.5)93 b(Sp)s(ecifying)30
 b(Numeric)g(Argumen)m(ts)19 b Fi(:)d(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)49
-b Fo(18)399 2641 y(1.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8
+b Fo(19)399 2641 y(1.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8
 b(or)31 b(Y)-8 b(ou)14 b Fi(:)i(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)44
-b Fo(18)399 2751 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)23
+b Fo(20)399 2751 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)23
 b Fi(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)53 b Fo(19)399 2860 y(1.4.8)93
+f(:)h(:)f(:)g(:)h(:)f(:)53 b Fo(20)399 2860 y(1.4.8)93
 b(Some)30 b(Miscellaneous)j(Commands)26 b Fi(:)16 b(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)58 b Fo(19)275 2970 y(1.5)92 b(Readline)31 b(vi)f(Mo)s(de)22
+f(:)g(:)58 b Fo(21)275 2970 y(1.5)92 b(Readline)31 b(vi)f(Mo)s(de)22
 b Fi(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b Fo(21)150
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)52 b Fo(22)150
 3212 y Fm(App)t(endix)44 b(A)160 b(GNU)45 b(F)-11 b(ree)45
 b(Do)t(cumen)l(tation)h(License)446 3345 y Fj(:)20 b(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
 (:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)72 b Fm(22)p eop end
+f(:)h(:)f(:)h(:)f(:)h(:)f(:)72 b Fm(23)p eop end
 %%Page: 1 4
 TeXDict begin 1 3 bop 150 -116 a Fo(Chapter)30 b(1:)41
 b(Command)29 b(Line)i(Editing)2153 b(1)150 299 y Fk(1)80
@@ -5517,7 +5507,7 @@ b(lines)h(are)150 3065 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
 (a)g(`)p Fn(#)p Fo(')g(are)h(commen)m(ts.)73 b(Lines)41
 b(b)s(eginning)f(with)g(a)i(`)p Fn($)p Fo(')f(indicate)150
 3174 y(conditional)i(constructs)e(\(see)i(Section)f(1.3.2)h
-([Conditional)f(Init)f(Constructs],)j(page)f(11\).)74
+([Conditional)f(Init)f(Constructs],)j(page)f(12\).)74
 b(Other)150 3284 y(lines)31 b(denote)g(v)-5 b(ariable)31
 b(settings)g(and)f(k)m(ey)h(bindings.)150 3432 y(V)-8
 b(ariable)32 b(Settings)630 3542 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
@@ -5553,399 +5543,464 @@ Fn(visible)p Fo(',)32 b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g
 (one)g(is)g(a)m(v)-5 b(ailable.)51 b(If)33 b(set)g(to)1110
 408 y(`)p Fn(audible)p Fo(')j(\(the)i(default\),)i(Readline)e(attempts)
 g(to)h(ring)e(the)g(terminal's)1110 518 y(b)s(ell.)630
-676 y Fn(bind-tty-special-chars)1110 786 y Fo(If)45 b(set)h(to)f(`)p
-Fn(on)p Fo(',)50 b(Readline)45 b(attempts)i(to)f(bind)d(the)j(con)m
-(trol)g(c)m(haracters)1110 896 y(treated)36 b(sp)s(ecially)h(b)m(y)e
-(the)h(k)m(ernel's)g(terminal)g(driv)m(er)f(to)h(their)f(Readline)1110
-1005 y(equiv)-5 b(alen)m(ts.)630 1163 y Fn(colored-stats)1110
-1273 y Fo(If)26 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(displa)m
-(ys)g(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
-1383 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+701 y Fn(bind-tty-special-chars)1110 810 y Fo(If)e(set)g(to)h(`)p
+Fn(on)p Fo(')f(\(the)g(default\),)i(Readline)f(attempts)g(to)g(bind)d
+(the)i(con)m(trol)1110 920 y(c)m(haracters)30 b(treated)g(sp)s(ecially)
+g(b)m(y)f(the)g(k)m(ernel's)h(terminal)f(driv)m(er)g(to)h(their)1110
+1029 y(Readline)h(equiv)-5 b(alen)m(ts.)630 1212 y Fn
+(blink-matching-paren)1110 1322 y Fo(If)36 b(set)g(to)h(`)p
+Fn(on)p Fo(',)h(Readline)f(attempts)g(to)g(brie\015y)e(mo)m(v)m(e)j
+(the)f(cursor)e(to)i(an)1110 1431 y(op)s(ening)k(paren)m(thesis)h(when)
+f(a)h(closing)h(paren)m(thesis)e(is)h(inserted.)74 b(The)1110
+1541 y(default)31 b(is)f(`)p Fn(off)p Fo('.)630 1724
+y Fn(colored-completion-prefi)o(x)1110 1833 y Fo(If)f(set)h(to)g(`)p
+Fn(on)p Fo(',)g(when)e(listing)i(completions,)h(Readline)f(displa)m(ys)
+g(the)f(com-)1110 1943 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s
+(ossible)f(completions)h(using)f(a)h(di\013eren)m(t)g(color.)1110
+2052 y(The)39 b(color)i(de\014nitions)f(are)g(tak)m(en)h(from)f(the)g
+(v)-5 b(alue)40 b(of)g(the)g Fn(LS_COLORS)1110 2162 y
+Fo(en)m(vironmen)m(t)31 b(v)-5 b(ariable.)41 b(The)30
+b(default)h(is)f(`)p Fn(off)p Fo('.)630 2345 y Fn(colored-stats)1110
+2454 y Fo(If)c(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(displa)m(ys)g
+(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
+2564 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
 b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
-1492 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fn(LS_COLORS)d
+2673 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fn(LS_COLORS)d
 Fo(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
-1602 y(is)30 b(`)p Fn(off)p Fo('.)630 1760 y Fn(comment-begin)1110
-1870 y Fo(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
-h(the)h(line)f(when)g(the)1110 1979 y Fn(insert-comment)26
+2783 y(is)30 b(`)p Fn(off)p Fo('.)630 2966 y Fn(comment-begin)1110
+3075 y Fo(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
+h(the)h(line)f(when)g(the)1110 3185 y Fn(insert-comment)26
 b Fo(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)f Fn("#")p Fo(.)630 2138 y Fn(completion-display-width)
-1110 2247 y Fo(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
-g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 2357
+b(alue)31 b(is)f Fn("#")p Fo(.)630 3367 y Fn(completion-display-width)
+1110 3477 y Fo(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
+g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 3587
 y(when)28 b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5
 b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
-2466 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
+3696 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
 b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
-2576 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
+3806 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
 (line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
-2734 y Fn(completion-ignore-case)1110 2844 y Fo(If)d(set)h(to)g(`)p
+3988 y Fn(completion-ignore-case)1110 4098 y Fo(If)d(set)h(to)g(`)p
 Fn(on)p Fo(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
-(and)e(completion)1110 2953 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
+(and)e(completion)1110 4208 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
 40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Fn(off)p
-Fo('.)630 3112 y Fn(completion-map-case)1110 3221 y Fo(If)22
+Fo('.)630 4390 y Fn(completion-map-case)1110 4500 y Fo(If)22
 b(set)g(to)h(`)p Fn(on)p Fo(',)h(and)e Fe(completion-ignore-case)31
-b Fo(is)22 b(enabled,)i(Readline)f(treats)1110 3331 y(h)m(yphens)29
+b Fo(is)22 b(enabled,)i(Readline)f(treats)1110 4609 y(h)m(yphens)29
 b(\(`)p Fn(-)p Fo('\))j(and)e(underscores)g(\(`)p Fn(_)p
 Fo('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
-3440 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
-(completion.)630 3599 y Fn(completion-prefix-displa)o(y-le)o(ngth)1110
-3708 y Fo(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
-(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 3818
+4719 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
+(completion.)630 4902 y Fn(completion-prefix-displa)o(y-le)o(ngth)1110
+5011 y Fo(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
+(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 5121
 y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s
-(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 3927
+(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 5230
 y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
-(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 4037
+(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 5340
 y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
-f(completions.)630 4195 y Fn(completion-query-items)1110
-4305 y Fo(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
-(that)g(determines)f(when)f(the)i(user)1110 4415 y(is)i(ask)m(ed)h
-(whether)f(the)h(list)g(of)f(p)s(ossibilities)h(should)e(b)s(e)h
-(displa)m(y)m(ed.)41 b(If)29 b(the)1110 4524 y(n)m(um)m(b)s(er)d(of)h
-(p)s(ossible)f(completions)i(is)f(greater)h(than)e(this)h(v)-5
-b(alue,)28 b(Readline)1110 4634 y(will)f(ask)g(the)f(user)g(whether)g
-(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i(otherwise,)1110
-4743 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5
-b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m(teger)g(v)-5
-b(alue)1110 4853 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
-b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110
-4963 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
-Fn(100)p Fo(.)630 5121 y Fn(convert-meta)1110 5230 y
-Fo(If)22 b(set)g(to)h(`)p Fn(on)p Fo(',)h(Readline)f(will)f(con)m(v)m
-(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
-5340 y(to)33 b(an)e Fh(asci)r(i)h Fo(k)m(ey)h(sequence)f(b)m(y)g
-(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)p
-eop end
+f(completions.)p eop end
 %%Page: 6 9
 TeXDict begin 6 8 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(6)1110 299 y(an)24
-b Fn(ESC)g Fo(c)m(haracter,)j(con)m(v)m(erting)f(them)f(to)g(a)g
-(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 408 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(on)p Fo('.)630
-555 y Fn(disable-completion)1110 664 y Fo(If)36 b(set)h(to)h(`)p
-Fn(On)p Fo(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h(completion.)60
-b(Completion)1110 774 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h
-(in)m(to)h(the)g(line)f(as)g(if)g(they)h(had)e(b)s(een)g(mapp)s(ed)1110
-883 y(to)31 b Fn(self-insert)p Fo(.)38 b(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)630 1029 y Fn(editing-mode)1110 1139 y
-Fo(The)d Fn(editing-mode)e Fo(v)-5 b(ariable)29 b(con)m(trols)h(whic)m
-(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 1249 y(ings)25
-b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f(up)f(in)h
-(Emacs)g(editing)h(mo)s(de,)1110 1358 y(where)j(the)g(k)m(eystrok)m(es)
-i(are)e(most)h(similar)f(to)h(Emacs.)40 b(This)29 b(v)-5
-b(ariable)30 b(can)1110 1468 y(b)s(e)g(set)h(to)g(either)g(`)p
-Fn(emacs)p Fo(')e(or)h(`)p Fn(vi)p Fo('.)630 1614 y Fn
-(echo-control-characters)1110 1724 y Fo(When)g(set)h(to)g(`)p
+b(Command)29 b(Line)i(Editing)2153 b(6)630 299 y Fn
+(completion-query-items)1110 408 y Fo(The)26 b(n)m(um)m(b)s(er)f(of)h
+(p)s(ossible)g(completions)h(that)g(determines)f(when)f(the)i(user)1110
+518 y(is)i(ask)m(ed)h(whether)f(the)h(list)g(of)f(p)s(ossibilities)h
+(should)e(b)s(e)h(displa)m(y)m(ed.)41 b(If)29 b(the)1110
+628 y(n)m(um)m(b)s(er)d(of)h(p)s(ossible)f(completions)i(is)f(greater)h
+(than)e(this)h(v)-5 b(alue,)28 b(Readline)1110 737 y(will)f(ask)g(the)f
+(user)g(whether)g(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i
+(otherwise,)1110 847 y(they)d(are)f(simply)g(listed.)40
+b(This)23 b(v)-5 b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m
+(teger)g(v)-5 b(alue)1110 956 y(greater)26 b(than)f(or)f(equal)i(to)f
+(0.)40 b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i
+(should)1110 1066 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g
+(is)g Fn(100)p Fo(.)630 1223 y Fn(convert-meta)1110 1332
+y Fo(If)22 b(set)g(to)h(`)p Fn(on)p Fo(',)h(Readline)f(will)f(con)m(v)m
+(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
+1442 y(to)33 b(an)e Fh(asci)r(i)h Fo(k)m(ey)h(sequence)f(b)m(y)g
+(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)1110
+1551 y(an)24 b Fn(ESC)g Fo(c)m(haracter,)j(con)m(v)m(erting)f(them)f
+(to)g(a)g(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 1661
+y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(on)p
+Fo('.)630 1817 y Fn(disable-completion)1110 1927 y Fo(If)36
+b(set)h(to)h(`)p Fn(On)p Fo(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h
+(completion.)60 b(Completion)1110 2037 y(c)m(haracters)28
+b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g(line)f(as)g(if)g(they)h
+(had)e(b)s(een)g(mapp)s(ed)1110 2146 y(to)31 b Fn(self-insert)p
+Fo(.)38 b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630
+2303 y Fn(editing-mode)1110 2412 y Fo(The)d Fn(editing-mode)e
+Fo(v)-5 b(ariable)29 b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)
+m(ey)i(bind-)1110 2522 y(ings)25 b(is)g(used.)38 b(By)26
+b(default,)g(Readline)g(starts)f(up)f(in)h(Emacs)g(editing)h(mo)s(de,)
+1110 2632 y(where)j(the)g(k)m(eystrok)m(es)i(are)e(most)h(similar)f(to)
+h(Emacs.)40 b(This)29 b(v)-5 b(ariable)30 b(can)1110
+2741 y(b)s(e)g(set)h(to)g(either)g(`)p Fn(emacs)p Fo(')e(or)h(`)p
+Fn(vi)p Fo('.)630 2898 y Fn(emacs-mode-string)1110 3007
+y Fo(This)f(string)h(is)f(displa)m(y)m(ed)i(immediately)g(b)s(efore)e
+(the)h(last)g(line)h(of)e(the)h(pri-)1110 3117 y(mary)43
+b(prompt)g(when)f(emacs)i(editing)g(mo)s(de)f(is)g(activ)m(e.)82
+b(The)43 b(v)-5 b(alue)44 b(is)1110 3226 y(expanded)28
+b(lik)m(e)i(a)f(k)m(ey)g(binding,)f(so)h(the)g(standard)f(set)h(of)g
+(meta-)g(and)f(con-)1110 3336 y(trol)36 b(pre\014xes)e(and)h(bac)m
+(kslash)h(escap)s(e)g(sequences)g(is)f(a)m(v)-5 b(ailable.)58
+b(Use)36 b(the)1110 3446 y(`)p Fn(\\1)p Fo(')i(and)f(`)p
+Fn(\\2)p Fo(')h(escap)s(es)g(to)h(b)s(egin)e(and)h(end)f(sequences)h
+(of)g(non-prin)m(ting)1110 3555 y(c)m(haracters,)27 b(whic)m(h)c(can)h
+(b)s(e)f(used)f(to)j(em)m(b)s(ed)e(a)h(terminal)g(con)m(trol)h
+(sequence)1110 3665 y(in)m(to)31 b(the)g(mo)s(de)f(string.)41
+b(The)29 b(default)i(is)f(`)p Fn(@)p Fo('.)630 3821 y
+Fn(echo-control-characters)1110 3931 y Fo(When)g(set)h(to)g(`)p
 Fn(on)p Fo(',)f(on)g(op)s(erating)h(systems)f(that)h(indicate)g(they)g
-(supp)s(ort)1110 1833 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
+(supp)s(ort)1110 4041 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
 (haracter)h(corresp)s(onding)d(to)j(a)f(signal)g(generated)1110
-1943 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
-Fn(on)p Fo('.)630 2089 y Fn(enable-keypad)1110 2198 y
-Fo(When)23 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(will)g(try)f(to)
-h(enable)g(the)f(application)i(k)m(eypad)1110 2308 y(when)h(it)h(is)f
-(called.)41 b(Some)27 b(systems)f(need)h(this)f(to)h(enable)g(the)g
-(arro)m(w)g(k)m(eys.)1110 2418 y(The)j(default)g(is)h(`)p
-Fn(off)p Fo('.)630 2564 y Fn(enable-meta-key)1110 2673
-y Fo(When)40 b(set)g(to)g(`)p Fn(on)p Fo(',)j(Readline)d(will)g(try)g
-(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110 2783
-y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h(is)g
-(called.)76 b(On)41 b(man)m(y)1110 2892 y(terminals,)c(the)e(meta)h(k)m
-(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
-b(The)1110 3002 y(default)31 b(is)f(`)p Fn(on)p Fo('.)630
-3148 y Fn(expand-tilde)1110 3258 y Fo(If)d(set)h(to)h(`)p
+4150 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
+Fn(on)p Fo('.)630 4307 y Fn(enable-bracketed-paste)1110
+4416 y Fo(When)24 b(set)h(to)h(`)p Fn(On)p Fo(',)g(Readline)f(will)g
+(con\014gure)f(the)h(terminal)g(in)f(a)h(w)m(a)m(y)g(that)1110
+4526 y(will)k(enable)f(it)h(to)g(insert)g(eac)m(h)g(paste)g(in)m(to)g
+(the)g(editing)g(bu\013er)e(as)i(a)f(single)1110 4635
+y(string)33 b(of)f(c)m(haracters,)j(instead)e(of)g(treating)h(eac)m(h)g
+(c)m(haracter)g(as)f(if)f(it)i(had)1110 4745 y(b)s(een)e(read)i(from)e
+(the)i(k)m(eyb)s(oard.)49 b(This)32 b(can)h(prev)m(en)m(t)h(pasted)f(c)
+m(haracters)1110 4855 y(from)d(b)s(eing)g(in)m(terpreted)h(as)f
+(editing)h(commands.)41 b(The)29 b(default)i(is)f(`)p
+Fn(off)p Fo('.)630 5011 y Fn(enable-keypad)1110 5121
+y Fo(When)23 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(will)g(try)f
+(to)h(enable)g(the)f(application)i(k)m(eypad)1110 5230
+y(when)h(it)h(is)f(called.)41 b(Some)27 b(systems)f(need)h(this)f(to)h
+(enable)g(the)g(arro)m(w)g(k)m(eys.)1110 5340 y(The)j(default)g(is)h(`)
+p Fn(off)p Fo('.)p eop end
+%%Page: 7 10
+TeXDict begin 7 9 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fn(enable-meta-key)
+1110 408 y Fo(When)40 b(set)g(to)g(`)p Fn(on)p Fo(',)j(Readline)d(will)
+g(try)g(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110
+518 y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h
+(is)g(called.)76 b(On)41 b(man)m(y)1110 628 y(terminals,)c(the)e(meta)h
+(k)m(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
+b(The)1110 737 y(default)31 b(is)f(`)p Fn(on)p Fo('.)630
+925 y Fn(expand-tilde)1110 1035 y Fo(If)d(set)h(to)h(`)p
 Fn(on)p Fo(',)f(tilde)g(expansion)g(is)f(p)s(erformed)f(when)h
-(Readline)h(attempts)1110 3367 y(w)m(ord)i(completion.)42
-b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630 3513
-y Fn(history-preserve-point)1110 3623 y Fo(If)41 b(set)h(to)h(`)p
+(Readline)h(attempts)1110 1144 y(w)m(ord)i(completion.)42
+b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630 1332
+y Fn(history-preserve-point)1110 1442 y Fo(If)41 b(set)h(to)h(`)p
 Fn(on)p Fo(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
-(p)s(oin)m(t)f(\(the)1110 3733 y(curren)m(t)35 b(cursor)g(p)s
+(p)s(oin)m(t)f(\(the)1110 1551 y(curren)m(t)35 b(cursor)g(p)s
 (osition\))g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g
-(line)1110 3842 y(retriev)m(ed)h(with)f Fn(previous-history)c
+(line)1110 1661 y(retriev)m(ed)h(with)f Fn(previous-history)c
 Fo(or)37 b Fn(next-history)p Fo(.)55 b(The)36 b(default)1110
-3952 y(is)30 b(`)p Fn(off)p Fo('.)630 4098 y Fn(history-size)1110
-4208 y Fo(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
-(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 4317
+1771 y(is)30 b(`)p Fn(off)p Fo('.)630 1958 y Fn(history-size)1110
+2068 y Fo(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
+(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 2178
 y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
-(en)m(tries)g(are)g(deleted)h(and)e(no)1110 4427 y(new)e(en)m(tries)i
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 2287 y(new)e(en)m(tries)i
 (are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
 b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
-4536 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
+2397 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
 b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
-4646 y(en)m(tries)g(is)g(not)f(limited.)630 4792 y Fn
-(horizontal-scroll-mode)1110 4902 y Fo(This)35 b(v)-5
+2506 y(en)m(tries)g(is)g(not)f(limited.)630 2694 y Fn
+(horizontal-scroll-mode)1110 2804 y Fo(This)35 b(v)-5
 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f(`)p
 Fn(on)p Fo(')g(or)g(`)p Fn(off)p Fo('.)57 b(Setting)36
-b(it)g(to)h(`)p Fn(on)p Fo(')1110 5011 y(means)26 b(that)h(the)f(text)h
+b(it)g(to)h(`)p Fn(on)p Fo(')1110 2913 y(means)26 b(that)h(the)f(text)h
 (of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
-(tally)1110 5121 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
-(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 5230
+(tally)1110 3023 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
+(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 3133
 y(screen,)27 b(instead)g(of)f(wrapping)f(on)m(to)i(a)f(new)g(screen)g
-(line.)39 b(By)27 b(default,)g(this)1110 5340 y(v)-5
-b(ariable)31 b(is)g(set)f(to)i(`)p Fn(off)p Fo('.)p eop
-end
-%%Page: 7 10
-TeXDict begin 7 9 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fn(input-meta)1110
-408 y Fo(If)31 b(set)g(to)h(`)p Fn(on)p Fo(',)g(Readline)g(will)f
-(enable)h(eigh)m(t-bit)h(input)d(\(it)i(will)f(not)h(clear)1110
-518 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h(c)m(haracters)h(it)f
-(reads\),)j(regardless)c(of)h(what)g(the)1110 628 y(terminal)g(claims)h
-(it)g(can)f(supp)s(ort.)68 b(The)39 b(default)h(v)-5
-b(alue)40 b(is)g(`)p Fn(off)p Fo('.)69 b(The)1110 737
-y(name)30 b Fn(meta-flag)e Fo(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5
-b(ariable.)630 894 y Fn(isearch-terminators)1110 1003
-y Fo(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e(terminate)j
-(an)f(incremen)m(tal)1110 1113 y(searc)m(h)25 b(without)g(subsequen)m
-(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g(command)1110
-1223 y(\(see)45 b(Section)h(1.2.5)g([Searc)m(hing],)j(page)d(3\).)84
-b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110 1332
-y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m(haracters)h
-Fn(ESC)d Fo(and)h Fg(C-J)g Fo(will)h(terminate)g(an)1110
-1442 y(incremen)m(tal)c(searc)m(h.)630 1598 y Fn(keymap)192
+(line.)39 b(By)27 b(default,)g(this)1110 3242 y(v)-5
+b(ariable)31 b(is)g(set)f(to)i(`)p Fn(off)p Fo('.)630
+3430 y Fn(input-meta)1110 3540 y Fo(If)f(set)g(to)h(`)p
+Fn(on)p Fo(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
+i(will)f(not)h(clear)1110 3649 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
+(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
+3759 y(terminal)g(claims)h(it)g(can)f(supp)s(ort.)68
+b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Fn(off)p
+Fo('.)69 b(The)1110 3868 y(name)30 b Fn(meta-flag)e Fo(is)j(a)f(synon)m
+(ym)g(for)g(this)h(v)-5 b(ariable.)630 4056 y Fn(isearch-terminators)
+1110 4166 y Fo(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
+(terminate)j(an)f(incremen)m(tal)1110 4275 y(searc)m(h)25
+b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
+(command)1110 4385 y(\(see)45 b(Section)h(1.2.5)g([Searc)m(hing],)j
+(page)d(3\).)84 b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110
+4495 y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m
+(haracters)h Fn(ESC)d Fo(and)h Fg(C-J)g Fo(will)h(terminate)g(an)1110
+4604 y(incremen)m(tal)c(searc)m(h.)630 4792 y Fn(keymap)192
 b Fo(Sets)39 b(Readline's)g(idea)h(of)f(the)g(curren)m(t)f(k)m(eymap)h
-(for)g(k)m(ey)g(binding)f(com-)1110 1708 y(mands.)81
+(for)g(k)m(ey)g(binding)f(com-)1110 4902 y(mands.)81
 b(Acceptable)47 b Fn(keymap)42 b Fo(names)i(are)h Fn(emacs)p
-Fo(,)i Fn(emacs-standard)p Fo(,)1110 1817 y Fn(emacs-meta)p
+Fo(,)i Fn(emacs-standard)p Fo(,)1110 5011 y Fn(emacs-meta)p
 Fo(,)99 b Fn(emacs-ctlx)p Fo(,)f Fn(vi)p Fo(,)j Fn(vi-move)p
-Fo(,)f Fn(vi-command)p Fo(,)f(and)1110 1927 y Fn(vi-insert)p
+Fo(,)f Fn(vi-command)p Fo(,)f(and)1110 5121 y Fn(vi-insert)p
 Fo(.)64 b Fn(vi)38 b Fo(is)h(equiv)-5 b(alen)m(t)41 b(to)e
 Fn(vi-command)p Fo(;)i Fn(emacs)c Fo(is)i(equiv)-5 b(alen)m(t)1110
-2037 y(to)33 b Fn(emacs-standard)p Fo(.)41 b(The)31 b(default)h(v)-5
+5230 y(to)33 b Fn(emacs-standard)p Fo(.)41 b(The)31 b(default)h(v)-5
 b(alue)32 b(is)g Fn(emacs)p Fo(.)44 b(The)31 b(v)-5 b(alue)33
-b(of)f(the)1110 2146 y Fn(editing-mode)27 b Fo(v)-5 b(ariable)31
-b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 2303
-y Fn(keyseq-timeout)1110 2412 y Fo(Sp)s(eci\014es)25
-b(the)g(duration)g(Readline)h(will)g(w)m(ait)g(for)g(a)f(c)m(haracter)i
-(when)e(read-)1110 2522 y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h
-(sequence)f(\(one)g(that)h(can)f(form)g(a)g(complete)h(k)m(ey)1110
-2632 y(sequence)j(using)e(the)i(input)e(read)h(so)g(far,)h(or)g(can)f
-(tak)m(e)i(additional)f(input)1110 2741 y(to)g(complete)g(a)f(longer)h
-(k)m(ey)f(sequence\).)49 b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h
-(within)1110 2851 y(the)43 b(timeout,)48 b(Readline)43
-b(will)g(use)g(the)g(shorter)g(but)f(complete)j(k)m(ey)e(se-)1110
-2960 y(quence.)c(Readline)26 b(uses)f(this)h(v)-5 b(alue)26
-b(to)g(determine)g(whether)f(or)g(not)h(input)1110 3070
-y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m(t)f(input)g
-(source)h(\()p Fn(rl_instream)d Fo(b)m(y)i(default\).)1110
-3180 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
+b(of)f(the)1110 5340 y Fn(editing-mode)27 b Fo(v)-5 b(ariable)31
+b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)p eop
+end
+%%Page: 8 11
+TeXDict begin 8 10 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(8)630 299 y Fn(keyseq-timeout)1110
+408 y Fo(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
+(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 518
+y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
+(form)g(a)g(complete)h(k)m(ey)1110 628 y(sequence)j(using)e(the)i
+(input)e(read)h(so)g(far,)h(or)g(can)f(tak)m(e)i(additional)f(input)
+1110 737 y(to)g(complete)g(a)f(longer)h(k)m(ey)f(sequence\).)49
+b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h(within)1110
+847 y(the)43 b(timeout,)48 b(Readline)43 b(will)g(use)g(the)g(shorter)g
+(but)f(complete)j(k)m(ey)e(se-)1110 956 y(quence.)c(Readline)26
+b(uses)f(this)h(v)-5 b(alue)26 b(to)g(determine)g(whether)f(or)g(not)h
+(input)1110 1066 y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m
+(t)f(input)g(source)h(\()p Fn(rl_instream)d Fo(b)m(y)i(default\).)1110
+1176 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
 (milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
-1110 3289 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
+1110 1285 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
 (additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
-b(is)1110 3399 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
+b(is)1110 1395 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
 (equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
-b(alue,)1110 3508 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
+b(alue,)1110 1504 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
 (k)m(ey)g(is)f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110
-3618 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)g Fn(500)p Fo(.)630 3774 y Fn(mark-directories)1110
-3884 y Fo(If)38 b(set)g(to)h(`)p Fn(on)p Fo(',)i(completed)e(directory)
+1614 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)g Fn(500)p Fo(.)630 1802 y Fn(mark-directories)1110
+1911 y Fo(If)38 b(set)g(to)h(`)p Fn(on)p Fo(',)i(completed)e(directory)
 f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
-3994 y(The)30 b(default)g(is)h(`)p Fn(on)p Fo('.)630
-4150 y Fn(mark-modified-lines)1110 4260 y Fo(This)k(v)-5
+2021 y(The)30 b(default)g(is)h(`)p Fn(on)p Fo('.)630
+2209 y Fn(mark-modified-lines)1110 2318 y Fo(This)k(v)-5
 b(ariable,)38 b(when)d(set)h(to)h(`)p Fn(on)p Fo(',)g(causes)g
-(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 4369 y(terisk)f(\(`)p
+(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 2428 y(terisk)f(\(`)p
 Fn(*)p Fo('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f
-(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 4479 y(This)d(v)-5
+(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 2538 y(This)d(v)-5
 b(ariable)31 b(is)f(`)p Fn(off)p Fo(')g(b)m(y)g(default.)630
-4635 y Fn(mark-symlinked-directori)o(es)1110 4745 y Fo(If)59
+2725 y Fn(mark-symlinked-directori)o(es)1110 2835 y Fo(If)59
 b(set)h(to)g(`)p Fn(on)p Fo(',)67 b(completed)60 b(names)f(whic)m(h)g
-(are)h(sym)m(b)s(olic)g(links)f(to)1110 4855 y(directories)71
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 2945 y(directories)71
 b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5 b(ject)70
-b(to)g(the)g(v)-5 b(alue)70 b(of)1110 4964 y Fn(mark-directories)p
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 3054 y Fn(mark-directories)p
 Fo(\).)37 b(The)30 b(default)g(is)g(`)p Fn(off)p Fo('.)630
-5121 y Fn(match-hidden-files)1110 5230 y Fo(This)21 b(v)-5
+3242 y Fn(match-hidden-files)1110 3352 y Fo(This)21 b(v)-5
 b(ariable,)25 b(when)d(set)g(to)h(`)p Fn(on)p Fo(',)h(causes)f
-(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 5340
+(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 3461
 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fn(.)p Fo(')g(\(hidden)f
-(\014les\))i(when)e(p)s(erforming)g(\014lename)p eop
-end
-%%Page: 8 11
-TeXDict begin 8 10 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(8)1110 299 y(completion.)75
-b(If)41 b(set)g(to)h(`)p Fn(off)p Fo(',)i(the)e(leading)g(`)p
-Fn(.)p Fo(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
-408 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
+(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 3571
+y(completion.)75 b(If)41 b(set)g(to)h(`)p Fn(off)p Fo(',)i(the)e
+(leading)g(`)p Fn(.)p Fo(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
+3680 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
 53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Fn(on)p Fo(')g(b)m(y)1110
-518 y(default.)630 664 y Fn(menu-complete-display-pr)o(efix)1110
-774 y Fo(If)f(set)h(to)g(`)p Fn(on)p Fo(',)h(men)m(u)e(completion)i
+3790 y(default.)630 3978 y Fn(menu-complete-display-pr)o(efix)1110
+4088 y Fo(If)f(set)h(to)g(`)p Fn(on)p Fo(',)h(men)m(u)e(completion)i
 (displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
-883 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)s
-(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 993 y(through)30
+4197 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)
+s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 4307 y(through)30
 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fn(off)p
-Fo('.)630 1139 y Fn(output-meta)1110 1249 y Fo(If)35
+Fo('.)630 4495 y Fn(output-meta)1110 4604 y Fo(If)35
 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(will)g(displa)m(y)f(c)m
-(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1358 y(set)h(directly)g
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 4714 y(set)h(directly)g
 (rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
-b(The)1110 1468 y(default)31 b(is)f(`)p Fn(off)p Fo('.)630
-1614 y Fn(page-completions)1110 1724 y Fo(If)j(set)i(to)f(`)p
+b(The)1110 4823 y(default)31 b(is)f(`)p Fn(off)p Fo('.)630
+5011 y Fn(page-completions)1110 5121 y Fo(If)j(set)i(to)f(`)p
 Fn(on)p Fo(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
 Fn(more)p Fo(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
-1833 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
+5230 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
 47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fn(on)p Fo(')1110
-1943 y(b)m(y)e(default.)630 2089 y Fn(print-completions-horizo)o(ntal)o
-(ly)1110 2198 y Fo(If)23 b(set)i(to)g(`)p Fn(on)p Fo(',)g(Readline)g
-(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
-2308 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
-(than)g(do)m(wn)g(the)h(screen.)1110 2418 y(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)630 2564 y Fn(revert-all-at-newline)1110
-2673 y Fo(If)e(set)h(to)g(`)p Fn(on)p Fo(',)g(Readline)g(will)g(undo)f
-(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
-2783 y(returning)f(when)f Fn(accept-line)f Fo(is)j(executed.)41
-b(By)29 b(default,)g(history)g(lines)1110 2892 y(ma)m(y)42
-b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
-(across)g(calls)h(to)1110 3002 y Fn(readline)p Fo(.)38
-b(The)30 b(default)h(is)f(`)p Fn(off)p Fo('.)630 3148
-y Fn(show-all-if-ambiguous)1110 3258 y Fo(This)f(alters)i(the)f
-(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
-b(If)29 b(set)1110 3367 y(to)f(`)p Fn(on)p Fo(',)g(w)m(ords)f(whic)m(h)
-g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
-1110 3477 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
-(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 3587 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(off)p Fo('.)630
-3733 y Fn(show-all-if-unmodified)1110 3842 y Fo(This)38
-b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
-(functions)e(in)h(a)1110 3952 y(fashion)25 b(similar)h(to)g
-Fe(sho)m(w-all-if-am)m(biguous)p Fo(.)41 b(If)25 b(set)h(to)h(`)p
-Fn(on)p Fo(',)f(w)m(ords)f(whic)m(h)1110 4061 y(ha)m(v)m(e)32
-b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
-(ossible)f(par-)1110 4171 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
-f(completions)h(don't)f(share)g(a)h(common)1110 4281
-y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
-(immediately)i(instead)e(of)h(ring-)1110 4390 y(ing)g(the)f(b)s(ell.)41
-b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fn(off)p
-Fo('.)630 4536 y Fn(show-mode-in-prompt)1110 4646 y Fo(If)35
-b(set)i(to)f(`)p Fn(on)p Fo(',)h(add)e(a)h(c)m(haracter)i(to)e(the)g(b)
-s(eginning)f(of)h(the)g(prompt)f(in-)1110 4756 y(dicating)43
-b(the)f(editing)h(mo)s(de:)63 b(emacs)43 b(\(`)p Fn(@)p
-Fo('\),)i(vi)d(command)g(\(`)p Fn(:)p Fo('\),)k(or)c(vi)1110
-4865 y(insertion)30 b(\(`)p Fn(+)p Fo('\).)42 b(The)30
-b(default)h(v)-5 b(alue)30 b(is)h(`)p Fn(off)p Fo('.)630
-5011 y Fn(skip-completed-text)1110 5121 y Fo(If)h(set)i(to)f(`)p
-Fn(on)p Fo(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s(eha)m
-(vior)f(when)f(in-)1110 5230 y(serting)d(a)h(single)g(matc)m(h)f(in)m
-(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)
-1110 5340 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f(w)m
-(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)p eop
-end
+5340 y(b)m(y)e(default.)p eop end
 %%Page: 9 12
 TeXDict begin 9 11 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(9)1110 299 y(not)41
-b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
-(c)m(haracters)1110 408 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f(b)
-s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
-518 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
-b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
-628 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Fn(e)p Fo(')f(in)1110 737 y(`)p Fn(Makefile)p
+b(Command)29 b(Line)i(Editing)2153 b(9)630 299 y Fn
+(print-completions-horizo)o(ntal)o(ly)1110 408 y Fo(If)23
+b(set)i(to)g(`)p Fn(on)p Fo(',)g(Readline)g(will)f(displa)m(y)g
+(completions)h(with)f(matc)m(hes)h(sorted)1110 518 y(horizon)m(tally)45
+b(in)e(alphab)s(etical)i(order,)i(rather)c(than)g(do)m(wn)g(the)h
+(screen.)1110 628 y(The)30 b(default)g(is)h(`)p Fn(off)p
+Fo('.)630 792 y Fn(revert-all-at-newline)1110 902 y Fo(If)e(set)h(to)g
+(`)p Fn(on)p Fo(',)g(Readline)g(will)g(undo)f(all)h(c)m(hanges)h(to)f
+(history)g(lines)f(b)s(efore)1110 1011 y(returning)f(when)f
+Fn(accept-line)f Fo(is)j(executed.)41 b(By)29 b(default,)g(history)g
+(lines)1110 1121 y(ma)m(y)42 b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i
+(individual)e(undo)g(lists)h(across)g(calls)h(to)1110
+1230 y Fn(readline)p Fo(.)38 b(The)30 b(default)h(is)f(`)p
+Fn(off)p Fo('.)630 1395 y Fn(show-all-if-ambiguous)1110
+1504 y Fo(This)f(alters)i(the)f(default)g(b)s(eha)m(vior)g(of)g(the)h
+(completion)g(functions.)40 b(If)29 b(set)1110 1614 y(to)f(`)p
+Fn(on)p Fo(',)g(w)m(ords)f(whic)m(h)g(ha)m(v)m(e)i(more)f(than)f(one)h
+(p)s(ossible)f(completion)h(cause)1110 1724 y(the)39
+b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i(instead)e(of)g
+(ringing)g(the)g(b)s(ell.)1110 1833 y(The)30 b(default)g(v)-5
+b(alue)31 b(is)g(`)p Fn(off)p Fo('.)630 1998 y Fn
+(show-all-if-unmodified)1110 2107 y Fo(This)38 b(alters)h(the)g
+(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h(functions)e(in)h(a)
+1110 2217 y(fashion)25 b(similar)h(to)g Fe(sho)m(w-all-if-am)m(biguous)
+p Fo(.)41 b(If)25 b(set)h(to)h(`)p Fn(on)p Fo(',)f(w)m(ords)f(whic)m(h)
+1110 2326 y(ha)m(v)m(e)32 b(more)f(than)f(one)i(p)s(ossible)e
+(completion)i(without)f(an)m(y)g(p)s(ossible)f(par-)1110
+2436 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
+(don't)f(share)g(a)h(common)1110 2545 y(pre\014x\))30
+b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g(immediately)i
+(instead)e(of)h(ring-)1110 2655 y(ing)g(the)f(b)s(ell.)41
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fn(off)p
+Fo('.)630 2819 y Fn(show-mode-in-prompt)1110 2929 y Fo(If)g(set)g(to)h
+(`)p Fn(on)p Fo(',)f(add)f(a)i(c)m(haracter)g(to)g(the)f(b)s(eginning)g
+(of)g(the)g(prompt)f(indi-)1110 3039 y(cating)j(the)g(editing)f(mo)s
+(de:)42 b(emacs,)33 b(vi)e(command,)g(or)g(vi)g(insertion.)43
+b(The)1110 3148 y(mo)s(de)30 b(strings)g(are)h(user-settable.)42
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(off)p
+Fo('.)630 3313 y Fn(skip-completed-text)1110 3422 y Fo(If)h(set)i(to)f
+(`)p Fn(on)p Fo(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s
+(eha)m(vior)f(when)f(in-)1110 3532 y(serting)d(a)h(single)g(matc)m(h)f
+(in)m(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s
+(erform-)1110 3641 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f
+(w)m(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)1110
+3751 y(not)41 b(insert)f(c)m(haracters)i(from)e(the)h(completion)h
+(that)f(matc)m(h)g(c)m(haracters)1110 3861 y(after)c(p)s(oin)m(t)g(in)g
+(the)g(w)m(ord)f(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g
+(w)m(ord)1110 3970 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g
+(duplicated.)45 b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
+4080 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(`)p Fn(e)p Fo(')f(in)1110 4189 y(`)p Fn(Makefile)p
 Fo(')c(will)i(result)f(in)g(`)p Fn(Makefile)p Fo(')f(rather)h(than)h(`)
-p Fn(Makefilefile)p Fo(',)1110 847 y(assuming)d(there)g(is)h(a)f
+p Fn(Makefilefile)p Fo(',)1110 4299 y(assuming)d(there)g(is)h(a)f
 (single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
-b(alue)1110 956 y(is)30 b(`)p Fn(off)p Fo('.)630 1113
-y Fn(visible-stats)1110 1223 y Fo(If)h(set)i(to)f(`)p
+b(alue)1110 4408 y(is)30 b(`)p Fn(off)p Fo('.)630 4573
+y Fn(vi-cmd-mode-string)1110 4682 y Fo(This)f(string)h(is)f(displa)m(y)
+m(ed)i(immediately)g(b)s(efore)e(the)h(last)g(line)h(of)e(the)h(pri-)
+1110 4792 y(mary)21 b(prompt)g(when)f(vi)i(editing)g(mo)s(de)f(is)g
+(activ)m(e)j(and)d(in)g(command)g(mo)s(de.)1110 4902
+y(The)38 b(v)-5 b(alue)39 b(is)f(expanded)f(lik)m(e)j(a)f(k)m(ey)g
+(binding,)g(so)g(the)f(standard)g(set)h(of)1110 5011
+y(meta-)30 b(and)e(con)m(trol)i(pre\014xes)e(and)g(bac)m(kslash)h
+(escap)s(e)g(sequences)g(is)g(a)m(v)-5 b(ail-)1110 5121
+y(able.)50 b(Use)33 b(the)h(`)p Fn(\\1)p Fo(')f(and)g(`)p
+Fn(\\2)p Fo(')g(escap)s(es)g(to)h(b)s(egin)f(and)g(end)f(sequences)i
+(of)1110 5230 y(non-prin)m(ting)40 b(c)m(haracters,)45
+b(whic)m(h)40 b(can)g(b)s(e)g(used)g(to)h(em)m(b)s(ed)f(a)g(terminal)
+1110 5340 y(con)m(trol)32 b(sequence)f(in)m(to)g(the)f(mo)s(de)g
+(string.)41 b(The)30 b(default)h(is)f(`)p Fn(\(cmd\))p
+Fo('.)p eop end
+%%Page: 10 13
+TeXDict begin 10 12 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(10)630 299 y Fn
+(vi-ins-mode-string)1110 408 y Fo(This)29 b(string)h(is)f(displa)m(y)m
+(ed)i(immediately)g(b)s(efore)e(the)h(last)g(line)h(of)e(the)h(pri-)
+1110 518 y(mary)25 b(prompt)f(when)g(vi)h(editing)h(mo)s(de)e(is)i
+(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)1110 628
+y(The)38 b(v)-5 b(alue)39 b(is)f(expanded)f(lik)m(e)j(a)f(k)m(ey)g
+(binding,)g(so)g(the)f(standard)g(set)h(of)1110 737 y(meta-)30
+b(and)e(con)m(trol)i(pre\014xes)e(and)g(bac)m(kslash)h(escap)s(e)g
+(sequences)g(is)g(a)m(v)-5 b(ail-)1110 847 y(able.)50
+b(Use)33 b(the)h(`)p Fn(\\1)p Fo(')f(and)g(`)p Fn(\\2)p
+Fo(')g(escap)s(es)g(to)h(b)s(egin)f(and)g(end)f(sequences)i(of)1110
+956 y(non-prin)m(ting)40 b(c)m(haracters,)45 b(whic)m(h)40
+b(can)g(b)s(e)g(used)g(to)h(em)m(b)s(ed)f(a)g(terminal)1110
+1066 y(con)m(trol)32 b(sequence)f(in)m(to)g(the)f(mo)s(de)g(string.)41
+b(The)30 b(default)h(is)f(`)p Fn(\(ins\))p Fo('.)630
+1223 y Fn(visible-stats)1110 1332 y Fo(If)h(set)i(to)f(`)p
 Fn(on)p Fo(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
-(e)g(is)g(app)s(ended)e(to)j(the)1110 1332 y(\014lename)e(when)e
+(e)g(is)g(app)s(ended)e(to)j(the)1110 1442 y(\014lename)e(when)e
 (listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)150 1489 y(Key)f(Bindings)630 1598 y(The)41
+Fn(off)p Fo('.)150 1598 y(Key)f(Bindings)630 1708 y(The)41
 b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g
 (init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630
-1708 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
+1817 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
 (y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 b(The)27 b(follo)m(wing)630
-1817 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
+1927 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
 (the)e(default)g(k)m(eybinding,)h(if)f(an)m(y)-8 b(,)630
-1927 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
-(do)s(es.)630 2060 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
+2037 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
+(do)s(es.)630 2170 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
 (the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g(the)g(init)630
-2170 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
+2279 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
 (bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)630
-2279 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+2389 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
 b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g
-(and)630 2389 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
+(and)630 2498 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
 (terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
-b(The)40 b(name)h(of)630 2498 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
+b(The)40 b(name)h(of)630 2608 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
 (expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
-(what)h(y)m(ou)g(\014nd)e(most)630 2608 y(comfortable.)630
-2741 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
+(what)h(y)m(ou)g(\014nd)e(most)630 2718 y(comfortable.)630
+2851 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
 (k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630
-2851 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
-(\(a)h Fe(macro)5 b Fo(\).)630 3007 y Fe(k)m(eyname)g
+2960 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
+(\(a)h Fe(macro)5 b Fo(\).)630 3117 y Fe(k)m(eyname)g
 Fo(:)42 b Fe(function-name)35 b Fo(or)c Fe(macro)1110
-3117 y(k)m(eyname)k Fo(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+3226 y(k)m(eyname)k Fo(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
 (elled)e(out)h(in)g(English.)39 b(F)-8 b(or)30 b(example:)1350
-3250 y Fn(Control-u:)45 b(universal-argument)1350 3360
-y(Meta-Rubout:)f(backward-kill-word)1350 3469 y(Control-o:)h(">)i
-(output")1110 3602 y Fo(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
+3360 y Fn(Control-u:)45 b(universal-argument)1350 3469
+y(Meta-Rubout:)f(backward-kill-word)1350 3579 y(Control-o:)h(">)i
+(output")1110 3712 y Fo(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
 b Fg(C-u)94 b Fo(is)g(b)s(ound)f(to)i(the)f(function)1110
-3712 y Fn(universal-argument)p Fo(,)124 b Fg(M-DEL)107
-b Fo(is)i(b)s(ound)e(to)j(the)f(function)1110 3821 y
+3821 y Fn(universal-argument)p Fo(,)124 b Fg(M-DEL)107
+b Fo(is)i(b)s(ound)e(to)j(the)f(function)1110 3931 y
 Fn(backward-kill-word)p Fo(,)75 b(and)69 b Fg(C-o)g Fo(is)h(b)s(ound)e
-(to)j(run)d(the)i(macro)1110 3931 y(expressed)45 b(on)h(the)g(righ)m(t)
+(to)j(run)d(the)i(macro)1110 4041 y(expressed)45 b(on)h(the)g(righ)m(t)
 g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
-Fn(>)1110 4041 y(output)p Fo(')29 b(in)m(to)i(the)g(line\).)1110
-4174 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
-(names)f(are)g(recognized)h(while)1110 4283 y(pro)s(cessing)40
+Fn(>)1110 4150 y(output)p Fo(')29 b(in)m(to)i(the)g(line\).)1110
+4283 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
+(names)f(are)g(recognized)h(while)1110 4393 y(pro)s(cessing)40
 b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fe(DEL)p
 Fo(,)42 b Fe(ESC)p Fo(,)g Fe(ESCAPE)p Fo(,)f Fe(LFD)p
-Fo(,)1110 4393 y Fe(NEWLINE)p Fo(,)31 b Fe(RET)p Fo(,)f
+Fo(,)1110 4502 y Fe(NEWLINE)p Fo(,)31 b Fe(RET)p Fo(,)f
 Fe(RETURN)p Fo(,)g Fe(R)m(UBOUT)p Fo(,)h Fe(SP)-8 b(A)m(CE)p
 Fo(,)31 b Fe(SPC)p Fo(,)e(and)h Fe(T)-8 b(AB)p Fo(.)630
-4549 y Fn(")p Fe(k)m(eyseq)r Fn(")p Fo(:)41 b Fe(function-name)36
-b Fo(or)30 b Fe(macro)1110 4659 y(k)m(eyseq)k Fo(di\013ers)d(from)f
+4659 y Fn(")p Fe(k)m(eyseq)r Fn(")p Fo(:)41 b Fe(function-name)36
+b Fo(or)30 b Fe(macro)1110 4769 y(k)m(eyseq)k Fo(di\013ers)d(from)f
 Fe(k)m(eyname)37 b Fo(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
-(denoting)g(an)g(en-)1110 4769 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
+(denoting)g(an)g(en-)1110 4878 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
 (e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)
-1110 4878 y(double)29 b(quotes.)41 b(Some)29 b Fh(gnu)h
+1110 4988 y(double)29 b(quotes.)41 b(Some)29 b Fh(gnu)h
 Fo(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
-1110 4988 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
-(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 5097 y(recognized.)1350
-5230 y Fn("\\C-u":)46 b(universal-argument)1350 5340
-y("\\C-x\\C-r":)f(re-read-init-file)p eop end
-%%Page: 10 13
-TeXDict begin 10 12 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(10)1350 299 y Fn("\\e[11~":)45
-b("Function)h(Key)g(1")1110 447 y Fo(In)64 b(the)g(ab)s(o)m(v)m(e)i
-(example,)74 b Fg(C-u)64 b Fo(is)g(again)i(b)s(ound)c(to)k(the)e
-(function)1110 556 y Fn(universal-argument)39 b Fo(\(just)k(as)h(it)g
-(w)m(as)g(in)g(the)f(\014rst)g(example\),)49 b(`)p Fg(C-x)1110
-666 y(C-r)p Fo(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
+1110 5097 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
+(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 5207 y(recognized.)1350
+5340 y Fn("\\C-u":)46 b(universal-argument)p eop end
+%%Page: 11 14
+TeXDict begin 11 13 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(11)1350 299 y Fn("\\C-x\\C-r":)45
+b(re-read-init-file)1350 408 y("\\e[11~":)g("Function)h(Key)g(1")1110
+553 y Fo(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74 b
+Fg(C-u)64 b Fo(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
+663 y Fn(universal-argument)39 b Fo(\(just)k(as)h(it)g(w)m(as)g(in)g
+(the)f(\014rst)g(example\),)49 b(`)p Fg(C-x)1110 773
+y(C-r)p Fo(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
 Fn(re-read-init-file)p Fo(,)c(and)j(`)p Fn(ESC)h([)g(1)g(1)1110
-775 y(~)p Fo(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Fn(Function)e(Key)g(1)p Fo('.)630 961 y(The)g(follo)m(wing)i
+882 y(~)p Fo(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Fn(Function)e(Key)g(1)p Fo('.)630 1063 y(The)g(follo)m(wing)i
 Fh(gnu)f Fo(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
-b(ailable)32 b(when)d(sp)s(ecifying)630 1071 y(k)m(ey)i(sequences:)630
-1257 y Fg(\\C-)336 b Fo(con)m(trol)32 b(pre\014x)630
-1443 y Fg(\\M-)336 b Fo(meta)31 b(pre\014x)630 1629 y
+b(ailable)32 b(when)d(sp)s(ecifying)630 1172 y(k)m(ey)i(sequences:)630
+1353 y Fg(\\C-)336 b Fo(con)m(trol)32 b(pre\014x)630
+1533 y Fg(\\M-)336 b Fo(meta)31 b(pre\014x)630 1714 y
 Fg(\\e)384 b Fo(an)30 b(escap)s(e)h(c)m(haracter)630
-1815 y Fg(\\\\)384 b Fo(bac)m(kslash)630 2001 y Fg(\\)p
+1894 y Fg(\\\\)384 b Fo(bac)m(kslash)630 2074 y Fg(\\)p
 Fn(")g(")p Fo(,)30 b(a)h(double)f(quotation)i(mark)630
-2186 y Fg(\\')384 b Fn(')p Fo(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 2372 y(In)d(addition)h(to)g(the)g Fh(gnu)f
+2255 y Fg(\\')384 b Fn(')p Fo(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 2435 y(In)d(addition)h(to)g(the)g Fh(gnu)f
 Fo(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
-(bac)m(kslash)630 2482 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-2668 y Fn(\\a)384 b Fo(alert)31 b(\(b)s(ell\))630 2854
-y Fn(\\b)384 b Fo(bac)m(kspace)630 3040 y Fn(\\d)g Fo(delete)630
-3226 y Fn(\\f)g Fo(form)30 b(feed)630 3412 y Fn(\\n)384
-b Fo(newline)630 3597 y Fn(\\r)g Fo(carriage)32 b(return)630
-3783 y Fn(\\t)384 b Fo(horizon)m(tal)32 b(tab)630 3969
-y Fn(\\v)384 b Fo(v)m(ertical)32 b(tab)630 4155 y Fn(\\)p
+(bac)m(kslash)630 2545 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+2725 y Fn(\\a)384 b Fo(alert)31 b(\(b)s(ell\))630 2906
+y Fn(\\b)384 b Fo(bac)m(kspace)630 3086 y Fn(\\d)g Fo(delete)630
+3267 y Fn(\\f)g Fo(form)30 b(feed)630 3447 y Fn(\\n)384
+b Fo(newline)630 3628 y Fn(\\r)g Fo(carriage)32 b(return)630
+3808 y Fn(\\t)384 b Fo(horizon)m(tal)32 b(tab)630 3989
+y Fn(\\v)384 b Fo(v)m(ertical)32 b(tab)630 4169 y Fn(\\)p
 Fg(nnn)288 b Fo(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fe(nnn)e
-Fo(\(one)i(to)1110 4265 y(three)c(digits\))630 4451 y
+Fo(\(one)i(to)1110 4279 y(three)c(digits\))630 4459 y
 Fn(\\x)p Fg(HH)288 b Fo(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e
 (v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39
-b Fe(HH)1110 4560 y Fo(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
-4746 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
+b Fe(HH)1110 4569 y Fo(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+4749 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
 (or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
-4856 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
+4859 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
-b(In)630 4965 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
+b(In)630 4968 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
-(are)e(expanded.)37 b(Bac)m(kslash)630 5075 y(will)j(quote)h(an)m(y)f
+(are)e(expanded.)37 b(Bac)m(kslash)630 5078 y(will)j(quote)h(an)m(y)f
 (other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
 b(`)p Fn(")p Fo(')h(and)g(`)p Fn(')p Fo('.)69 b(F)-8
-b(or)630 5185 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
+b(or)630 5187 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
 (mak)m(e)h(`)p Fg(C-x)j Fn(\\)p Fo(')c(insert)f(a)h(single)h(`)p
 Fn(\\)p Fo(')f(in)m(to)g(the)g(line:)870 5332 y Fn("\\C-x\\\\":)45
 b("\\\\")p eop end
-%%Page: 11 14
-TeXDict begin 11 13 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(11)150 299 y Fd(1.3.2)63
+%%Page: 12 15
+TeXDict begin 12 14 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(12)150 299 y Fd(1.3.2)63
 b(Conditional)41 b(Init)g(Constructs)150 446 y Fo(Readline)c(implemen)m
 (ts)g(a)h(facilit)m(y)g(similar)f(in)g(spirit)f(to)i(the)f(conditional)
 h(compilation)g(features)f(of)150 555 y(the)31 b(C)f(prepro)s(cessor)g
@@ -6005,9 +6060,9 @@ b(/etc/inputrc)150 4660 y Fd(1.3.3)63 b(Sample)41 b(Init)g(File)150
 Fo(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
 b(ariable)27 b(assignmen)m(t,)i(and)150 4917 y(conditional)j(syn)m
 (tax.)p eop end
-%%Page: 12 15
-TeXDict begin 12 14 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(12)390 408 y Fn(#)47
+%%Page: 13 16
+TeXDict begin 13 15 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(13)390 408 y Fn(#)47
 b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
 (editing)e(for)390 518 y(#)i(programs)f(that)h(use)g(the)f(GNU)h
 (Readline)f(library.)93 b(Existing)390 628 y(#)47 b(programs)f(include)
@@ -6036,9 +6091,9 @@ h(function)f(name)g(is)h(ignored)p 3970 2401 42 76 v
 4902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
 390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390
 5340 y(#"\\M-\\C-[C":)g(forward-char)p eop end
-%%Page: 13 16
-TeXDict begin 13 15 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(13)390 299 y Fn(#"\\M-\\C-[A":)331
+%%Page: 14 17
+TeXDict begin 14 16 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(14)390 299 y Fn(#"\\M-\\C-[A":)331
 b(previous-history)390 408 y(#"\\M-\\C-[B":)g(next-history)390
 628 y(C-q:)47 b(quoted-insert)390 847 y($endif)390 1066
 y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g(the)
@@ -6071,9 +6126,9 @@ y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
 (completions)e(for)390 5121 y(#)j(a)h(word,)e(ask)h(the)g(user)g(if)g
 (he)g(wants)f(to)i(see)f(all)f(of)i(them)390 5230 y(set)f
 (completion-query-items)42 b(150)p eop end
-%%Page: 14 17
-TeXDict begin 14 16 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(14)390 299 y Fn(#)47
+%%Page: 15 18
+TeXDict begin 15 17 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(15)390 299 y Fn(#)47
 b(For)g(FTP)390 408 y($if)g(Ftp)390 518 y("\\C-xg":)f("get)g(\\M-?")390
 628 y("\\C-xt":)g("put)g(\\M-?")390 737 y("\\M-.":)g(yank-last-arg)390
 847 y($endif)150 1077 y Fm(1.4)68 b(Bindable)45 b(Readline)i(Commands)
@@ -6119,9 +6174,9 @@ b(If)31 b(this)630 5073 y(line)g(is)f(a)h(mo)s(di\014ed)e(history)h
 (state.)150 5230 y Fn(previous-history)26 b(\(C-p\))630
 5340 y Fo(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g
 (fetc)m(hing)g(the)g(previous)f(command.)p eop end
-%%Page: 15 18
-TeXDict begin 15 17 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(15)150 299 y Fn(next-history)27
+%%Page: 16 19
+TeXDict begin 16 18 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(16)150 299 y Fn(next-history)27
 b(\(C-n\))630 408 y Fo(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
 (history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
 558 y Fn(beginning-of-history)25 b(\(M-<\))630 667 y
@@ -6134,26 +6189,30 @@ y Fo(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
 (line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
 1295 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
 (tal)i(searc)m(h.)150 1445 y Fn(forward-search-history)24
-b(\(C-s\))630 1554 y Fo(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
-(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')f(through)g(the)
-h(the)630 1664 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
+b(\(C-s\))630 1554 y Fo(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
+(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
+630 1664 y(history)30 b(as)h(necessary)-8 b(.)41 b(This)30
 b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 1813 y Fn
 (non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
 b(\(M-p\))630 1923 y Fo(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
 (the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
 (his-)630 2032 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
 (tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
-2142 y(user.)150 2291 y Fn(non-incremental-forward-)o(sear)o(ch-h)o
-(ist)o(ory)24 b(\(M-n\))630 2401 y Fo(Searc)m(h)30 b(forw)m(ard)f
-(starting)h(at)g(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')
-f(through)g(the)h(the)630 2511 y(history)d(as)f(necessary)i(using)e(a)h
-(non-incremen)m(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i
-(the)630 2620 y(user.)150 2770 y Fn(history-search-forward)d(\(\))630
-2879 y Fo(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
-(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
-2989 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m
-(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)
-630 3098 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
+2142 y(user.)k(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
+(ywhere)g(in)f(a)h(history)f(line.)150 2291 y Fn
+(non-incremental-forward-)o(sear)o(ch-h)o(ist)o(ory)24
+b(\(M-n\))630 2401 y Fo(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
+(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
+630 2511 y(history)27 b(as)f(necessary)i(using)e(a)h(non-incremen)m
+(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i(the)630
+2620 y(user.)40 b(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)
+m(ywhere)g(in)f(a)h(history)f(line.)150 2770 y Fn
+(history-search-forward)24 b(\(\))630 2879 y Fo(Searc)m(h)42
+b(forw)m(ard)f(through)f(the)i(history)f(for)g(the)h(string)f(of)h(c)m
+(haracters)h(b)s(et)m(w)m(een)f(the)630 2989 y(start)36
+b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)58
+b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
+3098 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
 b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
 b(By)33 b(default,)g(this)630 3208 y(command)d(is)h(un)m(b)s(ound.)150
 3357 y Fn(history-search-backward)24 b(\(\))630 3467
@@ -6185,9 +6244,9 @@ y Fo(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
 5340 y(on)32 b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46
 b(With)32 b(an)g(argumen)m(t)g Fe(n)p Fo(,)g(insert)g(the)g
 Fe(n)p Fo(th)f(w)m(ord)g(from)p eop end
-%%Page: 16 19
-TeXDict begin 16 18 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(16)630 299 y(the)35
+%%Page: 17 20
+TeXDict begin 17 19 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(17)630 299 y(the)35
 b(previous)f(command)h(\(the)g(w)m(ords)g(in)f(the)h(previous)g
 (command)f(b)s(egin)h(with)f(w)m(ord)630 408 y(0\).)69
 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
@@ -6195,369 +6254,380 @@ Fe(n)p Fo(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
 518 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fe(n)e
 Fo(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
 628 y(the)e(`)p Fn(!)p Fg(n)p Fo(')f(history)g(expansion)g(had)g(b)s
-(een)g(sp)s(eci\014ed.)150 798 y Fn(yank-last-arg)d(\(M-.)i(or)h(M-_\))
-630 908 y Fo(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)f
+(een)g(sp)s(eci\014ed.)150 775 y Fn(yank-last-arg)d(\(M-.)i(or)h(M-_\))
+630 885 y Fo(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)f
 (command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
-1018 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+994 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
 (t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Fn(yank-nth-arg)p
-Fo(.)630 1127 y(Successiv)m(e)26 b(calls)g(to)f Fn(yank-last-arg)c
+Fo(.)630 1104 y(Successiv)m(e)26 b(calls)g(to)f Fn(yank-last-arg)c
 Fo(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
-(inserting)630 1237 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+(inserting)630 1214 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
 s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
-(of)f(eac)m(h)h(line)630 1346 y(in)36 b(turn.)58 b(An)m(y)36
+(of)f(eac)m(h)h(line)630 1323 y(in)36 b(turn.)58 b(An)m(y)36
 b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
-(calls)h(determines)630 1456 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(calls)h(determines)630 1433 y(the)d(direction)g(to)h(mo)m(v)m(e)g
 (through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
-(switc)m(hes)h(the)630 1565 y(direction)23 b(through)g(the)g(history)f
+(switc)m(hes)h(the)630 1542 y(direction)23 b(through)g(the)g(history)f
 (\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
-(facilities)630 1675 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
+(facilities)630 1652 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
 (argumen)m(t,)h(as)e(if)h(the)g(`)p Fn(!$)p Fo(')f(history)g(expansion)
-h(had)f(b)s(een)630 1785 y(sp)s(eci\014ed.)150 1995 y
+h(had)f(b)s(een)630 1762 y(sp)s(eci\014ed.)150 1949 y
 Fd(1.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
-b(ext)150 2173 y Fg(end-of-file)27 b Fn(\(usually)h(C-d\))630
-2282 y Fo(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
+b(ext)150 2115 y Fg(end-of-file)27 b Fn(\(usually)h(C-d\))630
+2225 y Fo(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
 (for)f(example,)i(b)m(y)e Fn(stty)p Fo(.)39 b(If)25 b(this)h(c)m
-(harac-)630 2392 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
+(harac-)630 2334 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
 (haracters)j(on)d(the)h(line,)i(and)d(p)s(oin)m(t)h(is)g(at)h(the)f(b)s
-(eginning)630 2501 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
+(eginning)630 2444 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
 (it)g(as)f(the)h(end)f(of)g(input)f(and)h(returns)f Fh(eof)p
-Fo(.)150 2672 y Fn(delete-char)e(\(C-d\))630 2782 y Fo(Delete)35
+Fo(.)150 2591 y Fn(delete-char)e(\(C-d\))630 2701 y Fo(Delete)35
 b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
-(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2891
+(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2811
 y(as)e(the)f(tt)m(y)i Fh(eof)d Fo(c)m(haracter,)j(as)f
 Fg(C-d)e Fo(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
-(e\013ects.)150 3062 y Fn(backward-delete-char)25 b(\(Rubout\))630
-3172 y Fo(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
+(e\013ects.)150 2958 y Fn(backward-delete-char)25 b(\(Rubout\))630
+3068 y Fo(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
 b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
-3281 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-3452 y Fn(forward-backward-delete-)o(char)24 b(\(\))630
-3561 y Fo(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+3177 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
+3325 y Fn(forward-backward-delete-)o(char)24 b(\(\))630
+3434 y Fo(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
 (unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
-3671 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
+3544 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
 (ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
-3781 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-3951 y Fn(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 4061
+3654 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+3801 y Fn(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 3911
 y Fo(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
 (v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
-4170 y(sequences)d(lik)m(e)g Fg(C-q)p Fo(,)f(for)g(example.)150
-4341 y Fn(tab-insert)e(\(M-TAB\))630 4451 y Fo(Insert)i(a)h(tab)f(c)m
-(haracter.)150 4621 y Fn(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
-(\))630 4731 y Fo(Insert)g(y)m(ourself.)150 4902 y Fn(transpose-chars)c
-(\(C-t\))630 5011 y Fo(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
+4020 y(sequences)d(lik)m(e)g Fg(C-q)p Fo(,)f(for)g(example.)150
+4168 y Fn(tab-insert)e(\(M-TAB\))630 4278 y Fo(Insert)i(a)h(tab)f(c)m
+(haracter.)150 4425 y Fn(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
+(\))630 4535 y Fo(Insert)g(y)m(ourself.)150 4682 y Fn
+(bracketed-paste-begin)25 b(\(\))630 4792 y Fo(This)f(function)h(is)f
+(in)m(tended)h(to)h(b)s(e)e(b)s(ound)f(to)i(the)g Fn(")p
+Fo(brac)m(k)m(eted)h(paste)p Fn(")f Fo(escap)s(e)h(sequence)630
+4902 y(sen)m(t)38 b(b)m(y)f(some)h(terminals,)i(and)d(suc)m(h)g(a)h
+(binding)e(is)i(assigned)f(b)m(y)h(default.)62 b(It)38
+b(allo)m(ws)630 5011 y(Readline)33 b(to)g(insert)g(the)f(pasted)h(text)
+g(as)g(a)g(single)g(unit)f(without)h(treating)h(eac)m(h)f(c)m(har-)630
+5121 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h(from)f(the)h(k)
+m(eyb)s(oard.)66 b(The)39 b(c)m(haracters)h(are)f(inserted)630
+5230 y(as)i(if)g(eac)m(h)i(one)e(w)m(as)h(b)s(ound)d(to)i
+Fn(self-insert)p Fo(\))e(instead)i(of)h(executing)g(an)m(y)f(editing)
+630 5340 y(commands.)p eop end
+%%Page: 18 21
+TeXDict begin 18 20 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fn(transpose-chars)26
+b(\(C-t\))630 408 y Fo(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
 (cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
-(cursor,)630 5121 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
+(cursor,)630 518 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
 (ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e(end)
-g(of)h(the)630 5230 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
+g(of)h(the)630 628 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
 (last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
-b(Negativ)m(e)25 b(argumen)m(ts)630 5340 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)p eop end
-%%Page: 17 20
-TeXDict begin 17 19 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fn(transpose-words)26
-b(\(M-t\))630 408 y Fo(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m
-(t)g(past)g(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)
-m(t)f(past)g(that)630 518 y(w)m(ord)c(as)h(w)m(ell.)41
-b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
-(the)f(line,)i(this)e(transp)s(oses)g(the)630 628 y(last)j(t)m(w)m(o)h
-(w)m(ords)e(on)g(the)h(line.)150 792 y Fn(upcase-word)c(\(M-u\))630
-902 y Fo(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+b(Negativ)m(e)25 b(argumen)m(ts)630 737 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)150 907 y Fn(transpose-words)c(\(M-t\))630
+1016 y Fo(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
+(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)
+g(that)630 1126 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
+b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i(the)f
+(line,)i(this)e(transp)s(oses)g(the)630 1236 y(last)j(t)m(w)m(o)h(w)m
+(ords)e(on)g(the)h(line.)150 1405 y Fn(upcase-word)c(\(M-u\))630
+1515 y Fo(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
 (w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
-1012 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
-(the)e(cursor.)150 1176 y Fn(downcase-word)d(\(M-l\))630
-1286 y Fo(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+1624 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
+(the)e(cursor.)150 1794 y Fn(downcase-word)d(\(M-l\))630
+1904 y Fo(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
 (w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
-(ercase)630 1396 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
-(v)m(e)i(the)f(cursor.)150 1560 y Fn(capitalize-word)26
-b(\(M-c\))630 1670 y Fo(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(ercase)630 2013 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
+(v)m(e)i(the)f(cursor.)150 2183 y Fn(capitalize-word)26
+b(\(M-c\))630 2292 y Fo(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
 (wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
-(capitalize)630 1780 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
-(mo)m(v)m(e)i(the)f(cursor.)150 1944 y Fn(overwrite-mode)26
-b(\(\))630 2054 y Fo(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(capitalize)630 2402 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
+(mo)m(v)m(e)i(the)f(cursor.)150 2571 y Fn(overwrite-mode)26
+b(\(\))630 2681 y Fo(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
 b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
-h(switc)m(hes)630 2163 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
+h(switc)m(hes)630 2791 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
 b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
-(t,)i(switc)m(hes)e(to)630 2273 y(insert)30 b(mo)s(de.)41
+(t,)i(switc)m(hes)e(to)630 2900 y(insert)30 b(mo)s(de.)41
 b(This)30 b(command)h(a\013ects)h(only)e Fn(emacs)f Fo(mo)s(de;)i
-Fn(vi)f Fo(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 2383
+Fn(vi)f Fo(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 3010
 y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
 Fn(readline\(\))c Fo(starts)k(in)f(insert)g(mo)s(de.)630
-2520 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
+3149 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
 (ound)c(to)j Fn(self-insert)c Fo(replace)k(the)g(text)g(at)630
-2629 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
+3259 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
 (the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
-2739 y Fn(backward-delete-char)25 b Fo(replace)31 b(the)g(c)m(haracter)
-h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 2876
+3369 y Fn(backward-delete-char)25 b Fo(replace)31 b(the)g(c)m(haracter)
+h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 3508
 y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
-3081 y Fd(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
-3255 y Fn(kill-line)28 b(\(C-k\))630 3365 y Fo(Kill)j(the)f(text)i
+3718 y Fd(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+3895 y Fn(kill-line)28 b(\(C-k\))630 4004 y Fo(Kill)j(the)f(text)i
 (from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f(line.)150
-3530 y Fn(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
-3639 y Fo(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s(eginning)g(of)g(the)h
-(line.)150 3804 y Fn(unix-line-discard)26 b(\(C-u\))630
-3914 y Fo(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f
-(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4079
-y Fn(kill-whole-line)c(\(\))630 4188 y Fo(Kill)37 b(all)g(c)m
-(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g(where)f(p)s
-(oin)m(t)h(is.)59 b(By)36 b(default,)630 4298 y(this)30
-b(is)h(un)m(b)s(ound.)150 4462 y Fn(kill-word)d(\(M-d\))630
-4572 y Fo(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
-(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
-(the)g(end)630 4682 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
-b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Fn(forward-word)p
-Fo(.)150 4846 y Fn(backward-kill-word)25 b(\(M-DEL\))630
-4956 y Fo(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
-b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
-Fn(backward-word)p Fo(.)150 5121 y Fn(unix-word-rubout)d(\(C-w\))630
-5230 y Fo(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
-(white)h(space)g(as)g(a)g(w)m(ord)f(b)s(oundary)-8 b(.)43
-b(The)31 b(killed)630 5340 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
-(kill-ring.)p eop end
-%%Page: 18 21
-TeXDict begin 18 20 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fn
-(unix-filename-rubout)25 b(\(\))630 408 y Fo(Kill)37
-b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e(white)g(space)h
-(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630 518
-y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g(sa)m
-(v)m(ed)g(on)g(the)f(kill-ring.)150 693 y Fn(delete-horizontal-space)24
-b(\(\))630 803 y Fo(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)
-s(oin)m(t.)41 b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150
-978 y Fn(kill-region)d(\(\))630 1088 y Fo(Kill)k(the)f(text)i(in)e(the)
-g(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g
-(un)m(b)s(ound.)150 1263 y Fn(copy-region-as-kill)25
-b(\(\))630 1373 y Fo(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h
-(the)f(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m
-(t)f(a)m(w)m(a)m(y)-8 b(.)630 1482 y(By)31 b(default,)f(this)h(command)
-f(is)g(un)m(b)s(ound.)150 1657 y Fn(copy-backward-word)25
-b(\(\))630 1767 y Fo(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
+4174 y Fn(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+4283 y Fo(Kill)h(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f(b)s
+(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4453 y
+Fn(unix-line-discard)c(\(C-u\))630 4562 y Fo(Kill)31
+b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f(b)s(eginning)g(of)h
+(the)f(curren)m(t)g(line.)150 4732 y Fn(kill-whole-line)c(\(\))630
+4842 y Fo(Kill)37 b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h
+(line,)h(no)f(matter)g(where)f(p)s(oin)m(t)h(is.)59 b(By)36
+b(default,)630 4951 y(this)30 b(is)h(un)m(b)s(ound.)150
+5121 y Fn(kill-word)d(\(M-d\))630 5230 y Fo(Kill)i(from)f(p)s(oin)m(t)g
+(to)h(the)g(end)e(of)i(the)f(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m
+(w)m(een)g(w)m(ords,)f(to)h(the)g(end)630 5340 y(of)h(the)f(next)h(w)m
+(ord.)40 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f
+Fn(forward-word)p Fo(.)p eop end
+%%Page: 19 22
+TeXDict begin 19 21 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fn
+(backward-kill-word)25 b(\(M-DEL\))630 408 y Fo(Kill)k(the)g(w)m(ord)g
+(b)s(ehind)e(p)s(oin)m(t.)40 b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h
+(the)g(same)g(as)g Fn(backward-word)p Fo(.)150 577 y
+Fn(unix-word-rubout)d(\(C-w\))630 686 y Fo(Kill)32 b(the)g(w)m(ord)f(b)
+s(ehind)f(p)s(oin)m(t,)i(using)f(white)h(space)g(as)g(a)g(w)m(ord)f(b)s
+(oundary)-8 b(.)43 b(The)31 b(killed)630 796 y(text)g(is)g(sa)m(v)m(ed)
+g(on)g(the)f(kill-ring.)150 964 y Fn(unix-filename-rubout)25
+b(\(\))630 1073 y Fo(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m
+(t,)j(using)e(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f
+(the)630 1183 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30
+b(killed)h(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150
+1351 y Fn(delete-horizontal-space)24 b(\(\))630 1461
+y Fo(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
+b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 1629
+y Fn(kill-region)d(\(\))630 1738 y Fo(Kill)k(the)f(text)i(in)e(the)g
+(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
+m(b)s(ound.)150 1906 y Fn(copy-region-as-kill)25 b(\(\))630
+2016 y Fo(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
+(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)f
+(a)m(w)m(a)m(y)-8 b(.)630 2125 y(By)31 b(default,)f(this)h(command)f
+(is)g(un)m(b)s(ound.)150 2293 y Fn(copy-backward-word)25
+b(\(\))630 2403 y Fo(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
 (t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
-f(are)i(the)630 1877 y(same)31 b(as)f Fn(backward-word)p
+f(are)i(the)630 2513 y(same)31 b(as)f Fn(backward-word)p
 Fo(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
-2052 y Fn(copy-forward-word)26 b(\(\))630 2161 y Fo(Cop)m(y)31
+2681 y Fn(copy-forward-word)26 b(\(\))630 2790 y Fo(Cop)m(y)31
 b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
 (bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
-2271 y(same)f(as)f Fn(forward-word)p Fo(.)38 b(By)30
+2900 y(same)f(as)f Fn(forward-word)p Fo(.)38 b(By)30
 b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
-2446 y Fn(yank)f(\(C-y\))630 2556 y Fo(Y)-8 b(ank)31
+3068 y Fn(yank)f(\(C-y\))630 3177 y Fo(Y)-8 b(ank)31
 b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
-(p)s(oin)m(t.)150 2731 y Fn(yank-pop)d(\(M-y\))630 2841
+(p)s(oin)m(t.)150 3346 y Fn(yank-pop)d(\(M-y\))630 3455
 y Fo(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
 b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
-2950 y(command)30 b(is)h Fn(yank)e Fo(or)h Fn(yank-pop)p
-Fo(.)150 3165 y Fd(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
-(ts)150 3345 y Fn(digit-argument)26 b(\()p Fg(M-0)p Fn(,)j
-Fg(M-1)p Fn(,)h(...)f Fg(M--)p Fn(\))630 3455 y Fo(Add)d(this)h(digit)g
+3565 y(command)30 b(is)h Fn(yank)e Fo(or)h Fn(yank-pop)p
+Fo(.)150 3773 y Fd(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 3949 y Fn(digit-argument)26 b(\()p Fg(M-0)p Fn(,)j
+Fg(M-1)p Fn(,)h(...)f Fg(M--)p Fn(\))630 4058 y Fo(Add)d(this)h(digit)g
 (to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
-(new)f(argumen)m(t.)630 3564 y Fg(M--)j Fo(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 3740 y Fn(universal-argument)25 b(\(\))630
-3849 y Fo(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
+(new)f(argumen)m(t.)630 4168 y Fg(M--)j Fo(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 4336 y Fn(universal-argument)25 b(\(\))630
+4446 y Fo(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
 (argumen)m(t.)40 b(If)25 b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m
-(y)f(one)630 3959 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
+(y)f(one)630 4555 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
 (leading)h(min)m(us)e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630
-4068 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+4665 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
 m(y)f(digits,)i(executing)f Fn(universal-argument)630
-4178 y Fo(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+4774 y Fo(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
 (otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
-4288 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+4884 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
 d(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
-4397 y(or)28 b(min)m(us)f(sign,)i(the)f(argumen)m(t)g(coun)m(t)h(for)e
-(the)i(next)f(command)f(is)h(m)m(ultiplied)h(b)m(y)e(four.)630
-4507 y(The)37 b(argumen)m(t)h(coun)m(t)f(is)h(initially)h(one,)g(so)f
-(executing)g(this)f(function)g(the)h(\014rst)e(time)630
-4616 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
-(time)i(mak)m(es)f(the)g(argumen)m(t)g(coun)m(t)h(six-)630
-4726 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
-(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 4941 y Fd(1.4.6)63
+4994 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
+(the)h(next)f(command)g(is)g(m)m(ultiplied)h(b)m(y)630
+5103 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
+(one,)h(so)e(executing)i(this)e(function)f(the)i(\014rst)630
+5213 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
+(second)g(time)g(mak)m(es)h(the)e(argumen)m(t)h(coun)m(t)630
+5322 y(sixteen,)i(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g
+(not)h(b)s(ound)d(to)k(a)e(k)m(ey)-8 b(.)p eop end
+%%Page: 20 23
+TeXDict begin 20 22 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fd(1.4.6)63
 b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
-b(Y)-10 b(ou)150 5121 y Fn(complete)28 b(\(TAB\))630
-5230 y Fo(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
-(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
-5340 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
-b(The)30 b(default)h(is)f(\014lename)h(completion.)p
-eop end
-%%Page: 19 22
-TeXDict begin 19 21 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fn
-(possible-completions)25 b(\(M-?\))630 408 y Fo(List)35
-b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
-(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 518
-y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
-(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
-b(of)630 628 y Fn(completion-display-width)o Fo(,)g(the)j(v)-5
-b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
-b Fn(COLUMNS)p Fo(,)630 737 y(or)30 b(the)h(screen)f(width,)g(in)g
-(that)h(order.)150 883 y Fn(insert-completions)25 b(\(M-*\))630
-992 y Fo(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
-(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
-1102 y(b)m(y)g Fn(possible-completions)p Fo(.)150 1247
-y Fn(menu-complete)d(\(\))630 1357 y Fo(Similar)d(to)g
+b(Y)-10 b(ou)150 483 y Fn(complete)28 b(\(TAB\))630 593
+y Fo(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g(b)s
+(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
+702 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
+b(The)30 b(default)h(is)f(\014lename)h(completion.)150
+886 y Fn(possible-completions)25 b(\(M-?\))630 996 y
+Fo(List)35 b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s
+(efore)e(p)s(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630
+1105 y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i
+(columns)f(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5
+b(alue)33 b(of)630 1215 y Fn(completion-display-width)o
+Fo(,)g(the)j(v)-5 b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5
+b(ariable)38 b Fn(COLUMNS)p Fo(,)630 1325 y(or)30 b(the)h(screen)f
+(width,)g(in)g(that)h(order.)150 1509 y Fn(insert-completions)25
+b(\(M-*\))630 1618 y Fo(Insert)30 b(all)h(completions)h(of)f(the)g
+(text)g(b)s(efore)f(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s
+(een)e(generated)630 1728 y(b)m(y)g Fn(possible-completions)p
+Fo(.)150 1912 y Fn(menu-complete)d(\(\))630 2021 y Fo(Similar)d(to)g
 Fn(complete)p Fo(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
-(completed)i(with)e(a)i(single)f(matc)m(h)630 1466 y(from)37
+(completed)i(with)e(a)i(single)f(matc)m(h)630 2131 y(from)37
 b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
-b(execution)g(of)f Fn(menu-complete)630 1576 y Fo(steps)i(through)g
+b(execution)g(of)f Fn(menu-complete)630 2241 y Fo(steps)i(through)g
 (the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
-(matc)m(h)f(in)f(turn.)630 1685 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
+(matc)m(h)f(in)f(turn.)630 2350 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
 (of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
-b(ject)36 b(to)i(the)f(setting)630 1795 y(of)f Fn(bell-style)p
+b(ject)36 b(to)i(the)f(setting)630 2460 y(of)f Fn(bell-style)p
 Fo(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
 b(An)36 b(argumen)m(t)h(of)f Fe(n)f Fo(mo)m(v)m(es)i
-Fe(n)630 1905 y Fo(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+Fe(n)630 2569 y Fo(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
 (matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
-(used)g(to)630 2014 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
+(used)g(to)630 2679 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
 (list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
-(ound)e(to)630 2124 y Fn(TAB)p Fo(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
-(y)i(default.)150 2269 y Fn(menu-complete-backward)24
-b(\(\))630 2379 y Fo(Iden)m(tical)36 b(to)g Fn(menu-complete)p
+(ound)e(to)630 2789 y Fn(TAB)p Fo(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 2973 y Fn(menu-complete-backward)24
+b(\(\))630 3082 y Fo(Iden)m(tical)36 b(to)g Fn(menu-complete)p
 Fo(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
-(p)s(ossible)630 2488 y(completions,)d(as)e(if)h Fn(menu-complete)26
+(p)s(ossible)630 3192 y(completions,)d(as)e(if)h Fn(menu-complete)26
 b Fo(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
-2634 y Fn(delete-char-or-list)25 b(\(\))630 2743 y Fo(Deletes)41
+3376 y Fn(delete-char-or-list)25 b(\(\))630 3485 y Fo(Deletes)41
 b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
-(eginning)e(or)h(end)f(of)h(the)630 2853 y(line)50 b(\(lik)m(e)h
+(eginning)e(or)h(end)f(of)h(the)630 3595 y(line)50 b(\(lik)m(e)h
 Fn(delete-char)p Fo(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
-55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 2963
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 3705
 y Fn(possible-completions)p Fo(.)35 b(This)30 b(command)g(is)g(un)m(b)s
-(ound)e(b)m(y)i(default.)150 3148 y Fd(1.4.7)63 b(Keyb)s(oard)41
-b(Macros)150 3313 y Fn(start-kbd-macro)26 b(\(C-x)j(\(\))630
-3422 y Fo(Begin)i(sa)m(ving)h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m
+(ound)e(b)m(y)i(default.)150 3928 y Fd(1.4.7)63 b(Keyb)s(oard)41
+b(Macros)150 4113 y Fn(start-kbd-macro)26 b(\(C-x)j(\(\))630
+4222 y Fo(Begin)i(sa)m(ving)h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m
 (to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)g(macro.)150
-3568 y Fn(end-kbd-macro)d(\(C-x)i(\)\))630 3677 y Fo(Stop)e(sa)m(ving)h
+4406 y Fn(end-kbd-macro)d(\(C-x)i(\)\))630 4516 y Fo(Stop)e(sa)m(ving)h
 (the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m(to)i(the)e(curren)m(t)g(k)m
-(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 3787
-y(de\014nition.)150 3932 y Fn(call-last-kbd-macro)c(\(C-x)k(e\))630
-4042 y Fo(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)f(macro)h
+(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 4625
+y(de\014nition.)150 4809 y Fn(call-last-kbd-macro)c(\(C-x)k(e\))630
+4919 y Fo(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)f(macro)h
 (de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)630
-4151 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s
-(oard.)150 4297 y Fn(print-last-kbd-macro)25 b(\(\))630
-4406 y Fo(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
+5029 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s
+(oard.)150 5213 y Fn(print-last-kbd-macro)25 b(\(\))630
+5322 y Fo(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
 e(in)i(a)f(format)h(suitable)g(for)f(the)h Fe(inputrc)k
-Fo(\014le.)150 4591 y Fd(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
-150 4756 y Fn(re-read-init-file)26 b(\(C-x)j(C-r\))630
-4866 y Fo(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
-Fe(inputrc)27 b Fo(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
-(or)i(v)-5 b(ariable)630 4975 y(assignmen)m(ts)31 b(found)e(there.)150
-5121 y Fn(abort)g(\(C-g\))630 5230 y Fo(Ab)s(ort)d(the)h(curren)m(t)f
-(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
-b(ject)26 b(to)i(the)630 5340 y(setting)j(of)g Fn(bell-style)p
-Fo(\).)p eop end
-%%Page: 20 23
-TeXDict begin 20 22 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fn
-(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p Fg(x)p
-Fn(,)g(...)o(\))630 408 y Fo(If)e(the)h(meta\014ed)g(c)m(haracter)h
+Fo(\014le.)p eop end
+%%Page: 21 24
+TeXDict begin 21 23 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fd(1.4.8)63
+b(Some)41 b(Miscellaneous)i(Commands)150 466 y Fn(re-read-init-file)26
+b(\(C-x)j(C-r\))630 576 y Fo(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f
+(the)g Fe(inputrc)27 b Fo(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h
+(bindings)d(or)i(v)-5 b(ariable)630 685 y(assignmen)m(ts)31
+b(found)e(there.)150 836 y Fn(abort)g(\(C-g\))630 945
+y Fo(Ab)s(ort)d(the)h(curren)m(t)f(editing)h(command)f(and)g(ring)h
+(the)f(terminal's)h(b)s(ell)g(\(sub)5 b(ject)26 b(to)i(the)630
+1055 y(setting)j(of)g Fn(bell-style)p Fo(\).)150 1205
+y Fn(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p Fg(x)p
+Fn(,)g(...)o(\))630 1315 y Fo(If)e(the)h(meta\014ed)g(c)m(haracter)h
 Fe(x)34 b Fo(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g(command)h(that)g
-(is)g(b)s(ound)d(to)k(the)630 518 y(corresp)s(onding)g(upp)s(ercase)h
-(c)m(haracter.)150 667 y Fn(prefix-meta)d(\(ESC\))630
-777 y Fo(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
+(is)g(b)s(ound)d(to)k(the)630 1425 y(corresp)s(onding)g(upp)s(ercase)h
+(c)m(haracter.)150 1575 y Fn(prefix-meta)d(\(ESC\))630
+1685 y Fo(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
 b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f(without)g(a)h(meta)g(k)m(ey)-8
-b(.)630 887 y(T)m(yping)30 b(`)p Fn(ESC)g(f)p Fo(')g(is)h(equiv)-5
-b(alen)m(t)31 b(to)g(t)m(yping)g Fg(M-f)p Fo(.)150 1036
-y Fn(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 1146 y Fo(Incremen)m(tal)h
+b(.)630 1794 y(T)m(yping)30 b(`)p Fn(ESC)g(f)p Fo(')g(is)h(equiv)-5
+b(alen)m(t)31 b(to)g(t)m(yping)g Fg(M-f)p Fo(.)150 1945
+y Fn(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 2054 y Fo(Incremen)m(tal)h
 (undo,)f(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-1295 y Fn(revert-line)27 b(\(M-r\))630 1405 y Fo(Undo)33
+2205 y Fn(revert-line)27 b(\(M-r\))630 2314 y Fo(Undo)33
 b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 b(This)32
 b(is)h(lik)m(e)i(executing)f(the)f Fn(undo)f Fo(command)630
-1514 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 1664 y Fn(tilde-expand)d(\(M-~\))630 1773 y Fo(P)m(erform)j(tilde)h
-(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 1923
-y Fn(set-mark)d(\(C-@\))630 2032 y Fo(Set)33 b(the)g(mark)f(to)i(the)f
+2424 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
+150 2574 y Fn(tilde-expand)d(\(M-~\))630 2684 y Fo(P)m(erform)j(tilde)h
+(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 2834
+y Fn(set-mark)d(\(C-@\))630 2944 y Fo(Set)33 b(the)g(mark)f(to)i(the)f
 (p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
-(supplied,)f(the)h(mark)g(is)f(set)630 2142 y(to)f(that)g(p)s(osition.)
-150 2291 y Fn(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
-2401 y Fo(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
+(supplied,)f(the)h(mark)g(is)f(set)630 3054 y(to)f(that)g(p)s(osition.)
+150 3204 y Fn(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
+3314 y Fo(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
 b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f(set)h(to)f(the)h
-(sa)m(v)m(ed)630 2511 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
-(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 2660
-y Fn(character-search)26 b(\(C-]\))630 2770 y Fo(A)f(c)m(haracter)h(is)
+(sa)m(v)m(ed)630 3423 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
+(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 3574
+y Fn(character-search)26 b(\(C-]\))630 3683 y Fo(A)f(c)m(haracter)h(is)
 f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
-(ccurrence)g(of)g(that)g(c)m(haracter.)630 2879 y(A)30
+(ccurrence)g(of)g(that)g(c)m(haracter.)630 3793 y(A)30
 b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 3029 y Fn(character-search-backwar)o(d)24
-b(\(M-C-]\))630 3138 y Fo(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 3943 y Fn(character-search-backwar)o(d)24
+b(\(M-C-]\))630 4053 y Fo(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
 (oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
-g(that)630 3248 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
+g(that)630 4162 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
 (searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
-3397 y Fn(skip-csi-sequence)d(\(\))630 3507 y Fo(Read)i(enough)f(c)m
+4313 y Fn(skip-csi-sequence)d(\(\))630 4422 y Fo(Read)i(enough)f(c)m
 (haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
-(as)g(those)h(de\014ned)630 3616 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
+(as)g(those)h(de\014ned)630 4532 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
 (and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
-(trol)g(Sequence)630 3726 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
+(trol)g(Sequence)630 4642 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
 b(If)36 b(this)g(sequence)h(is)g(b)s(ound)d(to)k Fn("\\)p
-Fo(e[)p Fn(")p Fo(,)g(k)m(eys)f(pro-)630 3836 y(ducing)31
+Fo(e[)p Fn(")p Fo(,)g(k)m(eys)f(pro-)630 4751 y(ducing)31
 b(suc)m(h)h(sequences)g(will)h(ha)m(v)m(e)g(no)f(e\013ect)h(unless)e
-(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 3945 y(command,)f
+(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 4861 y(command,)f
 (instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g(in)m(to)g(the)f
-(editing)h(bu\013er.)44 b(This)31 b(is)630 4055 y(un)m(b)s(ound)d(b)m
+(editing)h(bu\013er.)44 b(This)31 b(is)630 4970 y(un)m(b)s(ound)d(b)m
 (y)i(default,)h(but)f(usually)g(b)s(ound)e(to)j(ESC-[.)150
-4204 y Fn(insert-comment)26 b(\(M-#\))630 4314 y Fo(Without)36
+5121 y Fn(insert-comment)26 b(\(M-#\))630 5230 y Fo(Without)36
 b(a)g(n)m(umeric)g(argumen)m(t,)h(the)f(v)-5 b(alue)36
 b(of)g(the)g Fn(comment-begin)c Fo(v)-5 b(ariable)36
-b(is)g(in-)630 4423 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
+b(is)g(in-)630 5340 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
 (curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
-(supplied,)630 4533 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
-b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g
-(line)630 4643 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
-b(alue)31 b(of)f Fn(comment-begin)p Fo(,)e(the)i(v)-5
-b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4752
-y(c)m(haracters)42 b(in)d Fn(comment-begin)e Fo(are)j(deleted)h(from)f
-(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4862
-y(either)31 b(case,)h(the)e(line)h(is)f(accepted)i(as)f(if)f(a)h
-(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 5011 y Fn(dump-functions)d
-(\(\))630 5121 y Fo(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
-(their)g(k)m(ey)h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
-5230 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
+(supplied,)p eop end
+%%Page: 22 25
+TeXDict begin 22 24 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(22)630 299 y(this)36
+b(command)h(acts)g(as)g(a)g(toggle:)55 b(if)37 b(the)f(c)m(haracters)i
+(at)g(the)e(b)s(eginning)g(of)h(the)g(line)630 408 y(do)30
+b(not)h(matc)m(h)h(the)f(v)-5 b(alue)31 b(of)f Fn(comment-begin)p
+Fo(,)e(the)i(v)-5 b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630
+518 y(c)m(haracters)42 b(in)d Fn(comment-begin)e Fo(are)j(deleted)h
+(from)f(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630
+628 y(either)31 b(case,)h(the)e(line)h(is)f(accepted)i(as)f(if)f(a)h
+(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 787 y Fn(dump-functions)d
+(\(\))630 897 y Fo(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g(their)
+g(k)m(ey)h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
+1006 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
 (output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
-5340 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fe(inputrc)k
+1116 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fe(inputrc)k
 Fo(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
-(default.)p eop end
-%%Page: 21 24
-TeXDict begin 21 23 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fn(dump-variables)26
-b(\(\))630 408 y Fo(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+(default.)150 1275 y Fn(dump-variables)26 b(\(\))630
+1385 y Fo(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
 b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(Readline)h
-(output)f(stream.)630 518 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
-(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m
-(y)g(that)630 628 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
+(output)f(stream.)630 1494 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)
+g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)
+m(y)g(that)630 1604 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
 Fe(inputrc)k Fo(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
-(b)m(y)k(default.)150 787 y Fn(dump-macros)c(\(\))630
-897 y Fo(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f
-(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
-1006 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
+(b)m(y)k(default.)150 1763 y Fn(dump-macros)c(\(\))630
+1873 y Fo(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)
+f(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
+1983 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
 (supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
-1116 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
+2092 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
 Fe(inputrc)35 b Fo(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
-d(b)m(y)630 1225 y(default.)150 1385 y Fn(emacs-editing-mode)e(\(C-e\))
-630 1494 y Fo(When)30 b(in)g Fn(vi)g Fo(command)g(mo)s(de,)g(this)h
+d(b)m(y)630 2202 y(default.)150 2361 y Fn(emacs-editing-mode)e(\(C-e\))
+630 2471 y Fo(When)30 b(in)g Fn(vi)g Fo(command)g(mo)s(de,)g(this)h
 (causes)f(a)h(switc)m(h)g(to)g Fn(emacs)e Fo(editing)i(mo)s(de.)150
-1654 y Fn(vi-editing-mode)26 b(\(M-C-j\))630 1763 y Fo(When)k(in)g
+2630 y Fn(vi-editing-mode)26 b(\(M-C-j\))630 2740 y Fo(When)k(in)g
 Fn(emacs)f Fo(editing)i(mo)s(de,)f(this)h(causes)f(a)h(switc)m(h)g(to)g
-Fn(vi)f Fo(editing)h(mo)s(de.)150 1996 y Fm(1.5)68 b(Readline)47
-b(vi)e(Mo)t(de)150 2155 y Fo(While)32 b(the)g(Readline)g(library)f(do)s
+Fn(vi)f Fo(editing)h(mo)s(de.)150 2972 y Fm(1.5)68 b(Readline)47
+b(vi)e(Mo)t(de)150 3132 y Fo(While)32 b(the)g(Readline)g(library)f(do)s
 (es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g Fn(vi)f
 Fo(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
-2265 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+3241 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
 b(The)34 b(Readline)g Fn(vi)g Fo(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f(sp)s
-(eci\014ed)f(in)150 2374 y(the)e Fh(posix)e Fo(standard.)275
-2509 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
+(eci\014ed)f(in)150 3351 y(the)e Fh(posix)e Fo(standard.)275
+3485 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
 (een)d Fn(emacs)f Fo(and)g Fn(vi)h Fo(editing)g(mo)s(des,)g(use)g(the)g
-(command)150 2619 y Fg(M-C-j)36 b Fo(\(b)s(ound)h(to)h
+(command)150 3595 y Fg(M-C-j)36 b Fo(\(b)s(ound)h(to)h
 (emacs-editing-mo)s(de)i(when)d(in)g Fn(vi)h Fo(mo)s(de)f(and)g(to)i
-(vi-editing-mo)s(de)g(in)e Fn(emacs)150 2728 y Fo(mo)s(de\).)k(The)30
+(vi-editing-mo)s(de)g(in)e Fn(emacs)150 3704 y Fo(mo)s(de\).)k(The)30
 b(Readline)h(default)f(is)g Fn(emacs)f Fo(mo)s(de.)275
-2863 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fn(vi)f
+3839 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fn(vi)f
 Fo(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g(`insertion')g(mo)s
-(de,)g(as)h(if)f(y)m(ou)150 2972 y(had)f(t)m(yp)s(ed)g(an)g(`)p
+(de,)g(as)h(if)f(y)m(ou)150 3949 y(had)f(t)m(yp)s(ed)g(an)g(`)p
 Fn(i)p Fo('.)41 b(Pressing)29 b Fn(ESC)f Fo(switc)m(hes)i(y)m(ou)g(in)m
 (to)h(`command')e(mo)s(de,)h(where)e(y)m(ou)i(can)g(edit)g(the)150
-3082 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
+4058 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
 Fn(vi)g Fo(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g
-(history)f(lines)h(with)150 3191 y(`)p Fn(k)p Fo(')d(and)e(subsequen)m
+(history)f(lines)h(with)150 4168 y(`)p Fn(k)p Fo(')d(and)e(subsequen)m
 (t)h(lines)h(with)f(`)p Fn(j)p Fo(',)g(and)g(so)h(forth.)p
 eop end
-%%Page: 22 25
-TeXDict begin 22 24 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 23 26
+TeXDict begin 23 25 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(22)150 299 y Fk(App)t(endix)52 b(A)81 b(GNU)54 b(F)-13
+b(23)150 299 y Fk(App)t(endix)52 b(A)81 b(GNU)54 b(F)-13
 b(ree)53 b(Do)t(cumen)l(tation)e(License)1359 502 y Fo(V)-8
 b(ersion)31 b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390
 635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fl(\015)e
@@ -6638,10 +6708,10 @@ b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g
 5340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
 b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
 (cumen)m(t)g(is)g(released)p eop end
-%%Page: 23 26
-TeXDict begin 23 25 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 24 27
+TeXDict begin 24 26 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(23)330 299 y(under)26 b(this)i(License.)40 b(If)27
+b(24)330 299 y(under)26 b(this)i(License.)40 b(If)27
 b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
 (de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
 y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
@@ -6732,10 +6802,10 @@ b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
 b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
 5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
-%%Page: 24 27
-TeXDict begin 24 26 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 25 28
+TeXDict begin 25 27 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(24)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(25)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
 (the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
 (or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
 b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
@@ -6825,10 +6895,10 @@ b(in)f(the)h(Title)h(P)m(age)g(\(and)f(on)f(the)h(co)m(v)m(ers,)i(if)e
 5340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
 (ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
 b(,)p eop end
-%%Page: 25 28
-TeXDict begin 25 27 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 26 29
+TeXDict begin 26 28 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(25)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+b(26)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
 (the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
 h(title)h(as)510 408 y(a)e(previous)f(v)m(ersion)g(if)h(the)f(original)
 i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s(ermission.)360
@@ -6907,10 +6977,10 @@ b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g
 (designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
 b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
 eop end
-%%Page: 26 29
-TeXDict begin 26 28 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 27 30
+TeXDict begin 27 29 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(26)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(27)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
 b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
 b(ersion's)36 b(license)g(notice.)57 b(These)330 408
 y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
@@ -6995,10 +7065,10 @@ b(ma)m(y)g(extract)h(a)f(single)g(do)s(cumen)m(t)f(from)g(suc)m(h)g(a)h
 5230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
 (other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
 5340 y(that)d(do)s(cumen)m(t.)p eop end
-%%Page: 27 30
-TeXDict begin 27 29 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 28 31
+TeXDict begin 28 30 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(27)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+b(28)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
 (W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
 (its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
 s(enden)m(t)330 551 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h
@@ -7083,10 +7153,10 @@ b(ha)m(v)m(e)h(receiv)m(ed)h(copies)e(or)h(righ)m(ts)f(from)g(y)m(ou)g
 (reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
 (the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
 (an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
-%%Page: 28 31
-TeXDict begin 28 30 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 29 32
+TeXDict begin 29 31 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(28)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
+b(29)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
 b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
 (the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
@@ -7150,10 +7220,10 @@ f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g
 g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
 (time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
 330 4005 y(eligible)h(for)e(relicensing.)p eop end
-%%Page: 29 32
-TeXDict begin 29 31 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 30 33
+TeXDict begin 30 32 bop 150 -116 a Fo(App)s(endix)29
 b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(29)150 299 y Fm(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+b(30)150 299 y Fm(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
 (for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fo(T)-8 b(o)35
 b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
 i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
index 83c08425da4b5eb5141f4facb12fa15470e1e3b1..173e8ab4bb518c0f97d90e72f505c6cea2ef6e42 100755 (executable)
 #! /bin/sh
-# texi2dvi --- produce DVI (or PDF) files from Texinfo (or LaTeX) sources.
-# $Id: texi2dvi,v 1.14 2003/02/05 00:42:33 karl Exp $
+# texi2dvi --- produce DVI (or PDF) files from Texinfo (or (La)TeX) sources.
+# $Id: texi2dvi 5704 2014-07-07 17:45:16Z karl $
 #
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001,
-# 2002, 2003 Free Software Foundation, Inc.
+# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014
+# Free Software Foundation, Inc.
 #
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License,
+# or (at your option) any later version.
 #
-#   This program is distributed in the hope that it will be useful,
-#   but WITHOUT ANY WARRANTY; without even the implied warranty of
-#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-#   GNU General Public License for more details.
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
 #
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
-# Original author: Noah Friedman <friedman@gnu.org>.
+# Originally written by Noah Friedman.
 #
 # Please send bug reports, etc. to bug-texinfo@gnu.org.
 # If possible, please send a copy of the output of the script called with
 # the `--debug' option when making a bug report.
 
-# This string is expanded by rcs automatically when this file is checked out.
-rcs_revision='$Revision: 1.14 $'
+test -f /bin/ksh && test -z "$RUNNING_KSH" \
+  && { UNAMES=`uname -s`; test "x$UNAMES" = xULTRIX; } 2>/dev/null \
+  && { RUNNING_KSH=true; export RUNNING_KSH; exec /bin/ksh $0 ${1+"$@"}; }
+unset RUNNING_KSH
+
+# No failure shall remain unpunished.
+set -e
+
+# In case the default sed doesn't suffice.
+: ${SED=sed}
+
+# This string is expanded automatically when this file is checked out.
+rcs_revision='$Revision: 5704 $'
 rcs_version=`set - $rcs_revision; echo $2`
-program=`echo $0 | sed -e 's!.*/!!'`
-version="texi2dvi (GNU Texinfo 4.5) $rcs_version
+program=`echo $0 | $SED -e 's!.*/!!'`
+
+build_mode=${TEXI2DVI_BUILD_MODE:-local}
+build_dir=${TEXI2DVI_BUILD_DIRECTORY:-.}
+
+# Initialize variables for option overriding and otherwise.
+# Don't use `unset' since old bourne shells don't have this command.
+# Instead, assign them an empty value.
+action=compile
+batch=false     # interact normally
+catcode_special=maybe
+debug=false
+escape="\\"
+expand=false    # true for expansion via makeinfo
+includes=
+line_error=true # pass --file-line-error to TeX
+max_iters=7     # when to quit
+oname=          # --output
+out_lang=dvi
+quiet=false     # let the tools' message be displayed
+set_language=
+src_specials=
+shell_escape=
+latex2html=hevea  # or set to tex4ht
+textra=         # Extra TeX commands to insert in the input file.
+txiprereq=19990129 # minimum texinfo.tex version with macro expansion
+verb=false      # true for verbose mode
+translate_file= # name of charset translation file
+
+orig_pwd=`pwd`
+
+# We have to initialize IFS to space tab newline since we save and
+# restore IFS and apparently POSIX allows stupid/broken behavior with
+# empty-but-set IFS.
+# http://lists.gnu.org/archive/html/automake-patches/2006-05/msg00008.html
+# We need space, tab and new line, in precisely that order.  And don't leave
+# trailing blanks.
+space=' '
+tab='  '
+newline='
+'
+IFS="$space$tab$newline"
+
+# In case someone pedantic insists on using grep -E.
+: ${EGREP=egrep}
+
+# Systems which define $COMSPEC or $ComSpec use semicolons to separate
+# directories in TEXINPUTS -- except for Cygwin et al., where COMSPEC
+# might be inherited, but : is used.
+if test -n "$COMSPEC$ComSpec" \
+   && uname | $EGREP -iv 'cygwin|mingw|djgpp' >/dev/null; then
+  path_sep=";"
+else
+  path_sep=":"
+fi
+
+# Pacify verbose cds.
+CDPATH=${ZSH_VERSION+.}$path_sep
+
+# If $TEX is set to a directory, don't use it.
+test -n "$TEX" && test -d "$TEX" && unset TEX
+
+# \f
+## --------------------- ##
+## Auxiliary functions.  ##
+## --------------------- ##
+
+# In case `local' is not supported by the shell, provide a function
+# that simulates it by simply performing the assignments.  This means
+# that we must not expect `local' to work, i.e., we must not (i) rely
+# on it during recursion, and (ii) have two local declarations of the
+# same variable.  (ii) is easy to check statically, and our test suite
+# does make sure there is never twice a static local declaration of a
+# variable.  (i) cannot be checked easily, so just be careful.
+#
+# Note that since we might use a function simulating `local', we can
+# no longer rely on the fact that no IFS-splitting is performed.  So,
+# while
+#
+# foo=$bar
+#
+# is fine (no IFS-splitting), never write
+#
+# local foo=$bar
+#
+# but rather
+#
+# local foo="$bar"
+(
+  foo=bar
+  test_local () {
+    local foo=foo
+  }
+  test_local >/dev/null 2>&1
+  test $foo = bar
+) || eval '
+local () {
+  case $1 in
+    *=*) eval "$1";;
+  esac
+}
+'
+
+
+# cd_orig
+# -------
+# Return to the original directory.
+cd_orig ()
+{
+  # In case $orig_pwd is on a different drive (for DOS).
+  cd /
+
+  # Return to the original directory so that
+  # - the next file is processed in correct conditions
+  # - the temporary file can be removed
+  cd "$orig_pwd" || exit 1
+}
+
+# func_dirname FILE
+# -----------------
+# Return the directory part of FILE.
+func_dirname ()
+{
+  dirname "$1" 2>/dev/null \
+  || { echo "$1" | $SED 's!/[^/]*$!!;s!^$!.!'; }
+}
+
+
+# noexit FILE
+# -----------
+# Return FILE with one extension remove.  foo.bar.baz -> foo.bar.
+noext ()
+{
+  echo "$1" | $SED -e 's/\.[^/.][^/.]*$//'
+}
+
+
+# absolute NAME -> ABS-NAME
+# -------------------------
+# Return an absolute path to NAME.
+absolute ()
+{
+  case $1 in
+   [\\/]* | ?:[\\/]*)
+      # Absolute paths don't need to be expanded.
+      echo "$1"
+      ;;
+   *) local slashes
+      slashes=`echo "$1" | $SED -n 's,.*[^/]\(/*\)$,\1,p'`
+      local rel
+      rel=$orig_pwd/`func_dirname "$1"`
+      if test -d "$rel"; then
+        (cd "$rel" 2>/dev/null \
+         && local n
+         n=`pwd`/`basename "$1"`"$slashes"
+         echo "$n")
+      else
+        error 1 "not a directory: $rel"
+      fi
+      ;;
+  esac
+}
+
+
+# ensure_dir DIR1 DIR2...
+# -----------------------
+# Make sure the directories exist.
+ensure_dir ()
+{
+  for dir
+  do
+    # Beware that in parallel builds we may have several concurrent
+    # attempts to create the directory.  So fail only if "mkdir"
+    # failed *and* the directory still does not exist.
+    test -d "$dir" \
+      || mkdir "$dir" \
+      || test -d "$dir" \
+      || error 1 "cannot create directory: $dir"
+  done
+}
+
+
+# error EXIT_STATUS LINE1 LINE2...
+# --------------------------------
+# Report an error and exit with failure if EXIT_STATUS is non-null.
+error ()
+{
+  local s="$1"
+  shift
+  report "$@"
+  if test "$s" != 0; then
+    exit $s
+  fi
+}
+
+
+# findprog PROG
+# -------------
+# Return true if PROG is somewhere in PATH, else false.
+findprog ()
+{
+  local saveIFS="$IFS"
+  IFS=$path_sep  # break path components at the path separator
+  for dir in $PATH; do
+    IFS=$saveIFS
+    # The basic test for an executable is `test -f $f && test -x $f'.
+    # (`test -x' is not enough, because it can also be true for directories.)
+    # We have to try this both for $1 and $1.exe.
+    #
+    # Note: On Cygwin and DJGPP, `test -x' also looks for .exe.  On Cygwin,
+    # also `test -f' has this enhancement, but not on DJGPP.  (Both are
+    # design decisions, so there is little chance to make them consistent.)
+    # Thusly, it seems to be difficult to make use of these enhancements.
+    #
+    if   { test -f "$dir/$1"     && test -x "$dir/$1"; } \
+      || { test -f "$dir/$1.exe" && test -x "$dir/$1.exe"; }; then
+      return 0
+    fi
+  done
+  return 1
+}
+
+# report LINE1 LINE2...
+# ---------------------
+# Report some information on stderr.
+report ()
+{
+  for i in "$@"
+  do
+    echo >&2 "$0: $i"
+  done
+}
+
+
+# run COMMAND-LINE
+# ----------------
+# Run the COMMAND-LINE verbosely, and catching errors as failures.
+run ()
+{
+  verbose "Running $@"
+  "$@" 2>&5 1>&2 \
+  || error 1 "$1 failed"
+}
+
+
+# usage
+# -----
+# Display usage and exit successfully.
+usage ()
+{
+  # We used to simply have `echo "$usage"', but coping with the
+  # changing behavior of `echo' is much harder than simply using a
+  # here-doc.
+  #
+  #             echo '\noto'   echo '\\noto'   echo -e '\\noto'
+  # bash 3.1      \noto           \\noto          \noto
+  # bash 3.2       %oto           \noto           -e \noto
+  #
+  # where % denotes the eol character.
+  cat <<EOF
+Usage: $program [OPTION]... FILE...
+  or:  texi2pdf [OPTION]... FILE...
+  or:  pdftexi2dvi [OPTION]... FILE...
+
+Run each Texinfo or (La)TeX FILE through TeX in turn until all
+cross-references are resolved, building all indices.  The directory
+containing each FILE is searched for included files.  The suffix of FILE
+is used to determine its language ((La)TeX or Texinfo).  To process
+(e)plain TeX files, set the environment variable LATEX=tex.
+
+In order to make texi2dvi a drop-in replacement of TeX/LaTeX in AUC-TeX,
+the FILE may also be composed of the following simple TeX commands.
+  \`\\input{FILE}'     the actual file to compile
+  \`\\nonstopmode'     same as --batch
+
+When invoked as \`texi2pdf' or \`pdftexi2dvi', or given the option --pdf
+or --dvipdf, generate PDF output.  Otherwise, generate DVI.
+
+General options:
+  -b, --batch         no interaction
+  -D, --debug         turn on shell debugging (set -x)
+  -h, --help          display this help and exit successfully
+  -o, --output=OFILE  leave output in OFILE; only one input FILE is allowed
+  -q, --quiet         no output unless errors (implies --batch)
+  -s, --silent        same as --quiet
+  -v, --version       display version information and exit successfully
+  -V, --verbose       report on what is done
+
+Output format:
+      --dvi     output a DVI file [default]
+      --dvipdf  output a PDF file via DVI (using a dvi-to-pdf program)
+      --html    output an HTML file from LaTeX, using HeVeA
+      --info    output an Info file from LaTeX, using HeVeA
+  -p, --pdf     use pdftex or pdflatex for processing
+      --ps      output a PostScript file via DVI (using dvips)
+      --text    output a plain text file from LaTeX, using HeVeA
+
+TeX tuning:
+  -@                         use @input instead of \input for preloaded Texinfo
+  -e, -E, --expand           force macro expansion using makeinfo
+  -I DIR                     search DIR for Texinfo files
+  -l, --language=LANG        specify LANG for FILE, either latex or texinfo
+      --no-line-error        do not pass --file-line-error to TeX
+      --shell-escape         pass --shell-escape to TeX
+      --src-specials         pass --src-specials to TeX
+  -t, --command=CMD          insert CMD in copy of input file
+   or --texinfo=CMD          multiple values accumulate
+      --translate-file=FILE  use given charset translation file for TeX
+
+Build modes:
+  --build=MODE         specify the treatment of auxiliary files [$build_mode]
+      --tidy           same as --build=tidy
+  -c, --clean          same as --build=clean
+      --build-dir=DIR  specify where the tidy compilation is performed;
+                         implies --tidy;
+                         defaults to TEXI2DVI_BUILD_DIRECTORY [$build_dir]
+  --mostly-clean       remove the auxiliary files and directories
+                         but not the output
+  --max-iterations=N   don't process files more than N times [$max_iters]
+
+The MODE specifies where the TeX compilation takes place, and, as a
+consequence, how auxiliary files are treated.  The build mode
+can also be set using the environment variable TEXI2DVI_BUILD_MODE.
+
+Valid MODEs are:
+  \`local'      compile in the current directory, leaving all the auxiliary
+               files around.  This is the traditional TeX use.
+  \`tidy'       compile in a local *.t2d directory, where the auxiliary files
+               are left.  Output files are copied back to the original file.
+  \`clean'      same as \`tidy', but remove the auxiliary directory afterwards.
+               Every compilation therefore requires the full cycle.
+
+Using the \`tidy' mode brings several advantages:
+  - the current directory is not cluttered with plethora of temporary files.
+  - clutter can be even further reduced using --build-dir=dir: all the *.t2d
+    directories are stored there.
+  - clutter can be reduced to zero using, e.g., --build-dir=/tmp/\$USER.t2d
+    or --build-dir=\$HOME/.t2d.
+  - the output file is updated after every successful TeX run, for
+    sake of concurrent visualization of the output.  In a \`local' build
+    the viewer stops during the whole TeX run.
+  - if the compilation fails, the previous state of the output file
+    is preserved.
+  - PDF and DVI compilation are kept in separate subdirectories
+    preventing any possibility of auxiliary file incompatibility.
+
+On the other hand, because \`tidy' compilation takes place in another
+directory, occasionally TeX won't be able to find some files (e.g., when
+using \\graphicspath): in that case, use -I to specify the additional
+directories to consider.
+
+The values of the BIBER, BIBTEX, DVIPDF, DVIPS, HEVEA, LATEX, MAKEINDEX,
+MAKEINFO, PDFLATEX, PDFTEX, SED, T4HT, TEX, TEX4HT, TEXINDEX, and THUMBPDF_CMD
+environment variables are used to run those commands, if they are set.
+
+Regarding --dvipdf, if DVIPDF is not set in the environment, the
+following programs are looked for (in this order): dvipdfmx dvipdfm
+dvipdf dvi2pdf dvitopdf.
+
+Any CMD strings are added after @setfilename for Texinfo input, or in
+the first line for LaTeX input.
+
+Report bugs to bug-texinfo@gnu.org,
+general questions and discussion to help-texinfo@gnu.org.
+GNU Texinfo home page: <http://www.gnu.org/software/texinfo/>
+General help using GNU software: <http://www.gnu.org/gethelp/>
+EOF
+  exit 0
+}
+
+
+# verbose WORD1 WORD2
+# -------------------
+# Report some verbose information.
+verbose ()
+{
+  if $verb; then
+    echo >&2 "$0: $@"
+  fi
+}
+
+
+# version
+# -------
+# Display version info and exit successfully.
+version ()
+{
+  cat <<EOF
+texi2dvi (GNU Texinfo 5.2) $rcs_version
+
+Copyright (C) 2014 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.
+EOF
+  exit 0
+}
+
+
+## ---------------- ##
+## Handling lists.  ##
+## ---------------- ##
+
+
+# list_append LIST-NAME ELEM
+# --------------------------
+# Set LIST-NAME to its former contents, with ELEM appended.
+list_append ()
+{
+  local la_l="$1"
+  shift
+  eval set X \$$la_l "$@"
+  shift
+  eval $la_l=\""$@"\"
+}
+
+
+# list_concat_dirs LIST-NAME DIR-LIST
+# -----------------------------------
+# Append to LIST-NAME all the components (included empty) from
+# the $path_sep separated list DIR-LIST.  Make the paths absolute.
+list_concat_dirs ()
+{
+  local lcd_list="$1"
+  # Empty path components are meaningful to tex.  We rewrite them as
+  # `EMPTY' so they don't get lost when we split on $path_sep.
+  # Hopefully no one will have an actual directory named EMPTY.
+  local replace_EMPTY="-e 's/^$path_sep/EMPTY$path_sep/g' \
+                       -e 's/$path_sep\$/${path_sep}EMPTY/g' \
+                       -e 's/$path_sep$path_sep/${path_sep}EMPTY:/g'"
+  save_IFS=$IFS
+  IFS=$path_sep
+  set x `echo "$2" | eval $SED $replace_EMPTY`; shift
+  IFS=$save_IFS
+  local dir
+  for dir
+  do
+    case $dir in
+      EMPTY)
+       list_append $lcd_list ""
+       ;;
+      *)
+       if test -d $dir; then
+          dir=`absolute "$dir"`
+         list_append $lcd_list "$dir"
+       fi
+       ;;
+    esac
+  done
+}
+
+
+# list_prefix LIST-NAME SEP -> STRING
+# -----------------------------------
+# Return a string that is composed of the LIST-NAME with each item
+# preceded by SEP.
+list_prefix ()
+{
+  local lp_p="$2"
+  eval set X \$$1
+  shift
+  local lp_res
+  for i
+  do
+    lp_res="$lp_res \"$lp_p\" \"$i\""
+  done
+  echo "$lp_res"
+}
+
+# list_infix LIST-NAME SEP -> STRING
+# ----------------------------------
+# Same as list_prefix, but a separator.
+list_infix ()
+{
+  eval set X \$$1
+  shift
+  local la_IFS="$IFS"
+  IFS=$path_sep
+  echo "$*"
+  IFS=$la_IFS
+}
+
+# list_dir_to_abs LIST-NAME
+# -------------------------
+# Convert the list to using only absolute dir names.
+# Currently unused, but should replace absolute_filenames some day.
+list_dir_to_abs ()
+{
+  local ld_l="$1"
+  eval set X \$$ld_l
+  shift
+  local ld_res
+  for dir
+  do
+    dir=`absolute "$dir"`
+    test -d "$dir" || continue
+    ld_res="$ld_res \"$dir\""
+  done
+  set X $ld_res; shift
+  eval $ld_l=\"$@\"
+}
+
+
+## ------------------------------ ##
+## Language auxiliary functions.  ##
+## ------------------------------ ##
+
+
+# out_lang_set LANG
+# -----------------
+out_lang_set ()
+{
+  case $1 in
+    dvi|dvipdf|html|info|pdf|ps|text) out_lang=$1;;
+    *) error 1 "invalid output format: $1";;
+  esac
+}
+
+
+# out_lang_tex
+# ------------
+# Return the tex output language (DVI or PDF) for $OUT_LANG.
+out_lang_tex ()
+{
+  case $out_lang in
+    dvi | ps | dvipdf ) echo dvi;;
+    pdf ) echo $out_lang;;
+    html | info | text ) echo $out_lang;;
+    *)    error 1 "invalid out_lang: $1";;
+  esac
+}
+
+
+# out_lang_ext
+# ------------
+# Return the extension for $OUT_LANG.
+out_lang_ext ()
+{
+  case $out_lang in
+    dvipdf ) echo pdf;;
+    dvi | html | info | pdf | ps | text ) echo $out_lang;;
+    *)    error 1 "invalid out_lang: $1";;
+  esac
+}
+
+
+## ------------------------- ##
+## TeX auxiliary functions.  ##
+## ------------------------- ##
+
+# Save TEXINPUTS so we can construct a new TEXINPUTS path for each file.
+# Likewise for bibtex and makeindex.
+tex_envvars="BIBINPUTS BSTINPUTS DVIPSHEADERS INDEXSTYLE MFINPUTS MPINPUTS \
+TEXINPUTS TFMFONTS"
+for var in $tex_envvars; do
+  eval ${var}_orig=\$$var
+  export $var
+done
+
+
+# absolute_filenames TEX-PATH -> TEX-PATH
+# ---------------------------------------
+# Convert relative paths to absolute paths, so we can run in another
+# directory (e.g., in tidy build mode, or during the macro-support
+# detection).  Prepend ".".
+absolute_filenames ()
+{
+  # Empty path components are meaningful to tex.  We rewrite them as
+  # `EMPTY' so they don't get lost when we split on $path_sep.
+  # Hopefully no one will have an actual directory named EMPTY.
+  local replace_empty="-e 's/^$path_sep/EMPTY$path_sep/g' \
+                       -e 's/$path_sep\$/${path_sep}EMPTY/g' \
+                       -e 's/$path_sep$path_sep/${path_sep}EMPTY:/g'"
+  local res
+  res=`echo "$1" | eval $SED $replace_empty`
+  save_IFS=$IFS
+  IFS=$path_sep
+  set x $res; shift
+  res=.
+  for dir
+  do
+    case $dir in
+      EMPTY)
+        res=$res$path_sep
+        ;;
+      *)
+        if test -d "$dir"; then
+          res=$res$path_sep`absolute "$dir"`
+        else
+          # Even if $dir is not a directory, preserve it in the path.
+          # It might contain metacharacters that TeX will expand in
+          # turn, e.g., /some/path/{a,b,c}.  This will not get the
+          # implicit absolutification of the path, but we can't help that.
+          res=$res$path_sep$dir
+        fi
+        ;;
+    esac
+  done
+  echo "$res"
+}
+
+
+# output_base_name FILE
+# ---------------------
+# The name of FILE, possibly renamed to satisfy --output.
+# FILE is local, there is no directory part.
+output_base_name ()
+{
+  case $oname in
+    '') echo "$1";;
+     *) local out_noext
+        out_noext=`noext "$oname"`
+        local file_ext
+        file_ext=`echo "$1" | $SED 's/^.*\.//'`
+        echo "$out_noext.$file_ext"
+      ;;
+  esac
+}
+
+
+# destdir
+# -------
+# Return the name of the directory where the output is expected.
+destdir ()
+{
+  case $oname in
+    '')  echo "$orig_pwd";;
+    *)   dirname "$oname";;
+  esac
+}
+
+
+# move_to_dest FILE...
+# --------------------
+# Move FILE to the place where the user expects it.  Truly move it, that
+# is, it must not remain in its build location unless that is also the
+# output location.  (Otherwise it might appear as an extra file in make
+# distcheck.)
+#
+# FILE can be the principal output (in which case -o directly applies), or
+# an auxiliary file with the same base name.
+move_to_dest ()
+{
+#  echo "move_to_dest $*, tidy=$tidy, oname=$oname"
+
+  # If we built in place and have no output name, there is nothing to
+  # do, so just return.
+  case $tidy:$oname in
+    false:) return;;
+  esac
+
+  local destfile
+  local destdir
+  local destbase
+  local sourcedir
+  local sourcebase
+
+  for file
+  do
+    test -f "$file" \
+    || error 1 "no such file or directory: $file"
+    case $tidy:$oname in
+      true:)  destdir=$orig_pwd
+              destfile=$destdir/$file;;
+      true:*) destfile=`output_base_name "$file"`
+              destdir=`dirname "$destfile"`;;
+      false:*) destfile=$oname
+               destdir=`dirname "$destfile"`;;
+    esac
+    # We want to compare the source location and the output location,
+    # and if they are different, do the move.  But if they are the
+    # same, we must preserve the source.  Since we can't assume
+    # stat(1) or test -ef is available, resort to comparing the
+    # directory names, canonicalized with pwd.  We can't use cmp -s
+    # since the output file might not actually change from run to run;
+    # e.g., TeX DVI output is timestamped to only the nearest minute.
+    destdir=`cd "$destdir" && pwd`
+    destbase=`basename "$destfile"`
+
+    sourcedir=`dirname "$file"`
+    sourcedir=`cd "$sourcedir" && pwd`
+    sourcebase=`basename "$file"`
+
+    if test "$sourcedir/$sourcebase" != "$destdir/$destbase"; then
+      verbose "Moving $file to $destfile"
+      rm -f "$destfile"
+      mv "$file" "$destfile"
+    fi
+  done
+}
+
+
+## --------------------- ##
+## Managing xref files.  ##
+## --------------------- ##
+
+# aux_file_p FILE
+# ---------------
+# Return with success if FILE is an aux file.
+aux_file_p ()
+{
+  test -f "$1" || return 1
+  case $1 in
+    *.aux) return 0;;
+    *)     return 1;;
+  esac
+}
+
+# bibaux_file_p FILE
+# ------------------
+# Return with success if FILE is an aux file containing citation
+# requests.
+bibaux_file_p ()
+{
+  test -s "$1" || return 1
+  if (grep '^\\bibstyle[{]' "$1"   \
+      && grep '^\\bibdata[{]' "$1" \
+      ## The following line is suspicious: fails when there
+      ## are citations in sub aux files.  We need to be
+      ## smarter in this case.
+      ## && grep '^\\citation[{]' "$f"
+      ) >&6 2>&1;
+  then
+    return 0
+  fi
+  return 1
+}
+
+# index_file_p FILE
+# -----------------
+# Return with success if FILE is an index file.
+index_file_p ()
+{
+  test -f "$1" || return 1
+  case $in_lang:$latex2html:`out_lang_tex`:`$SED '1q' "$1"` in
+    # When working with TeX4HT, *.idx are created by LaTeX.  They must
+    # be processed to produce *.4ix, *.4dx files.  The *.4dx file is
+    # passed to makeindex to produce the *.ind file.  This sequence is
+    # handled by run_index, so we are only interested in the *.idx
+    # files, which have each "\indexentry" preceded by a
+    # "\beforeentry".
+    latex:tex4ht:html:"\\beforeentry {"*) return 0;;
+
+    # When index.sty is used, there is a space before the brace.
+    latex:*:*:"\\indexentry{"*|latex:*:*:"\\indexentry {"*) return 0;;
+
+    texinfo:*:*:"\\entry{"*) return 0;;
+
+    *) return 1;;
+  esac
+}
+
+# xref_file_p FILE
+# ----------------
+# Return with success if FILE is an xref file (indexes, tables and lists).
+xref_file_p ()
+{
+  test -f "$1" || return 1
+  # If the file is not suitable to be an index or xref file, don't
+  # process it.  It's suitable if the first character is a
+  # backslash or right quote or at, as long as the first line isn't
+  # \input texinfo.
+  case `$SED '1q' "$1"` in
+    "\\input texinfo"*) return 1;;
+    [\\''@]*)           return 0;;
+           *)           return 1;;
+  esac
+}
+
+
+# generated_files_get FILENAME-NOEXT [PREDICATE-FILTER]
+# -----------------------------------------------------
+# Return the list of files generated by the TeX compilation of FILENAME-NOEXT.
+generated_files_get ()
+{
+  local filter=true
+  if test -n "$2"; then
+    filter=$2
+  fi
+
+  # Gather the files created by TeX.
+  (
+    if test -f "$1.log"; then
+      $SED -n -e "s,^\\\\openout.* = \`\\(.*\\)'\\.,\\1,p" "$1.log"
+    fi
+    echo "$1.log"
+  ) |
+  # Depending on these files, infer outputs from other tools.
+  while read file; do
+    echo $file
+    case $in_lang in
+      texinfo)
+        # texindex: texinfo.cp -> texinfo.cps
+       if index_file_p $file; then
+         echo ${file}s
+       fi
+       ;;
+      latex)
+        if aux_file_p $file; then
+          # bibtex: *.aux -> *.bbl and *.blg.
+          echo $file | $SED 's/^\(.*\)\.aux$/\1.bbl/'
+          echo $file | $SED 's/^\(.*\)\.aux$/\1.blg/'
+          # -recorder: .fls
+          echo $file | $SED 's/^\(.*\)\.aux$/\1.fls/'
+       fi
+       ;;
+    esac
+  done |
+  # Filter existing files matching the criterion.
+  #
+  # With an input file name containing a space, this produces a
+  # "command not found" message (and filtering is ineffective).
+  # The situation with a newline is presumably even worse.
+  while read file; do
+    if $filter "$file"; then
+      echo $file
+    fi
+  done |
+  sort |
+  # Some files are opened several times, e.g., listings.sty's *.vrb.
+  uniq
+}
+
+
+# xref_files_save
+# ---------------
+# Save the xref files.
+xref_files_save ()
+{
+  # Save copies of auxiliary files for later comparison.
+  xref_files_orig=`generated_files_get "$in_noext" xref_file_p`
+  if test -n "$xref_files_orig"; then
+    verbose "Backing up xref files: $xref_files_orig"
+    # The following line improves `cp $xref_files_orig "$work_bak"'
+    # by preserving the directory parts.  Think of
+    # cp chap1/main.aux chap2/main.aux $work_bak.
+    #
+    # Users may have, e.g., --keep-old-files.  Don't let this interfere.
+    # (Don't use unset for the sake of ancient shells.)
+    TAR_OPTIONS=; export TAR_OPTIONS
+    tar cf - $xref_files_orig | (cd "$work_bak" && tar xf -)
+  fi
+}
+
+
+# xref_files_changed
+# ------------------
+# Whether the xref files were changed since the previous run.
+xref_files_changed ()
+{
+  # LaTeX (and the package changebar) report in the LOG file if it
+  # should be rerun.  This is needed for files included from
+  # subdirs, since texi2dvi does not try to compare xref files in
+  # subdirs.  Performing xref files test is still good since LaTeX
+  # does not report changes in xref files.
+  if grep "Rerun to get" "$in_noext.log" >&6 2>&1; then
+    return 0
+  fi
+  # biblatex report of whether rerunning is needed.
+  if grep "biblatex.*(re)run" "$in_noext.log" >&6 2>&1; then
+    return 0
+  fi
+
+  # If old and new lists don't have the same file list,
+  # then something has definitely changed.
+  xref_files_new=`generated_files_get "$in_noext" xref_file_p`
+  verbose "Original xref files = $xref_files_orig"
+  verbose "New xref files      = $xref_files_new"
+  if test "x$xref_files_orig" != "x$xref_files_new"; then
+    return 0
+  fi
+
+  # Compare each file until we find a difference.
+  for this_file in $xref_files_new; do
+    verbose "Comparing xref file `echo $this_file | $SED 's|\./||g'` ..."
+    # cmp -s returns nonzero exit status if files differ.
+    if cmp -s "$this_file" "$work_bak/$this_file"; then :; else
+      verbose "xref file `echo $this_file | $SED 's|\./||g'` differed ..."
+      if $debug; then
+        diff -u "$work_bak/$this_file" "$this_file"
+      fi
+      return 0
+    fi
+  done
+
+  # No change.
+  return 1
+}
+
+
+
+## ----------------------- ##
+## Running the TeX suite.  ##
+## ----------------------- ##
+
+
+
+# run_tex ()
+# ----------
+# Run TeX as "$tex $in_input", taking care of errors and logs.
+run_tex ()
+{
+  case $in_lang:$latex2html:`out_lang_tex` in
+    latex:*:dvi|latex:tex4ht:html)
+        tex=${LATEX:-latex};;
+    latex:*:pdf)
+        tex=${PDFLATEX:-pdflatex};;
+    texinfo:*:dvi)
+        # MetaPost also uses the TEX environment variable.  If the user
+        # has set TEX=latex for that reason, don't bomb out.
+        case $TEX in
+          *latex) tex=tex;; # don't bother trying to find etex
+               *) tex=$TEX
+        esac;;
+    texinfo:*:pdf) tex=$PDFTEX;;
+
+    *) error 1 "$out_lang not supported for $in_lang";;
+  esac
+
+  # do the special catcode trick for ~ in filenames only for Texinfo,
+  # not LaTeX.
+  if test x"$in_lang" = xtexinfo && test $catcode_special = maybe; then
+    catcode_special=true
+  else
+    catcode_special=false
+  fi
+
+  # Beware of aux files in subdirectories that require the
+  # subdirectory to exist.
+  case $in_lang:$tidy in
+    latex:true)
+       $SED -n 's|^[ ]*\\include{\(.*\)/.*}.*|\1|p' "$in_input" |
+       sort -u |
+       while read d
+       do
+         ensure_dir "$work_build/$d"
+       done
+       ;;
+  esac
+
+  # Note that this will be used via an eval: quote properly.
+  local cmd="$tex"
+
+  # If possible, make TeX report error locations in GNU format.
+  if $line_error; then
+    if test "${tex_help:+set}" != set; then
+      # Go to a temporary directory to try --help, since old versions that
+      # don't accept --help will generate a texput.log.
+      tex_help_dir=$t2ddir/tex_help
+      ensure_dir "$tex_help_dir"
+      tex_help=`cd "$tex_help_dir" >&6 && $tex --help </dev/null 2>&1 || true`
+    fi
+    # The mk program and perhaps others want to parse TeX's
+    # original error messages.
+    case $tex_help in
+      *file-line-error*) cmd="$cmd --file-line-error";;
+    esac
+  fi
+
+  # Tell TeX about TCX file, if specified.
+  test -n "$translate_file" && cmd="$cmd --translate-file=$translate_file"
+
+  # Tell TeX to make source specials (for backtracking from output to
+  # source, given a sufficiently smart editor), if specified.
+  test -n "$src_specials" && cmd="$cmd $src_specials"
+
+  # Tell TeX to allow running external executables
+  test -n "$shell_escape" && cmd="$cmd $shell_escape"
+
+  # Tell TeX to be batch if requested.
+  if $batch; then
+    # \batchmode does not show terminal output at all, so we don't
+    # want that.  And even in batch mode, TeX insists on having input
+    # from the user.  Close its stdin to make it impossible.
+    cmd="$cmd </dev/null '${escape}nonstopmode'"
+  fi
+
+  # we'd like to handle arbitrary input file names, especially
+  # foo~bar/a~b.tex, since Debian likes ~ characters.
+  if $catcode_special; then
+    # $normaltilde is just to reduce line length in this source file.
+    # The idea is to define \normaltilde as a catcode other ~ character,
+    # then make the active ~ be equivalent to that, instead of the plain
+    # TeX tie.  Then when the active ~ appears in the filename, it will
+    # be expanded to itself, as far as \input will see.  (This is the
+    # same thing that texinfo.tex does in general, BTW.)
+    normaltilde="${escape}catcode126=12 ${escape}def${escape}normaltilde{~}"
+    cmd="$cmd '$normaltilde${escape}catcode126=13 ${escape}let~\normaltilde '"
+  fi
+  # Other special (non-active) characters could be supported by
+  # resetting their catcodes to other on the command line and changing
+  # texinfo.tex to initialize everything to plain catcodes.  Maybe someday.
+
+  # append the \input command.
+  cmd="$cmd '${escape}input'"
+
+  # TeX's \input does not (easily or reliably) support whitespace
+  # characters or other special characters in file names.  Our intensive
+  # use of absolute file names makes this worse: the enclosing directory
+  # names may include white spaces.  Improve the situation using a
+  # symbolic link to the filename in the current directory, in tidy mode
+  # only.  Do not alter in_input.
+  #
+  # The filename is almost always tokenized using plain TeX conventions
+  # (the exception would be if the user made a texinfo.fmt file).  Not
+  # all the plain TeX special characters cause trouble, but there's no
+  # harm in making the link.
+  #
+  case $tidy:`func_dirname "$in_input"` in
+    true:*["$space$tab$newline\"#\$%\\^_{}~"]*)
+      _run_tex_file_name=`basename "$in_input"`
+      if test ! -f "$_run_tex_file_name"; then
+        # It might not be a file, clear it.
+        run rm -f "$_run_tex_file_name"
+        run ln -s "$in_input"
+      fi
+      cmd="$cmd '$_run_tex_file_name'"
+      ;;
+
+    *)
+      cmd="$cmd '$in_input'"
+      ;;
+  esac
+
+  verbose "$0: Running $cmd ..."
+  if eval "$cmd" >&5; then
+    case $out_lang in
+      dvi | pdf ) move_to_dest "$in_noext.$out_lang";;
+    esac
+  else
+    error 1 "$tex exited with bad status, quitting."
+  fi
+}
+
+# run_bibtex ()
+# -------------
+# Run bibtex on (or biber) current file.
+# - If its input (AUX) exists.
+# - If some citations are missing (LOG contains `Citation').
+#   or the LOG complains of a missing .bbl
+#
+# Don't try to be too smart:
+# 1. Running bibtex only if the bbl file exists and is older than
+# the LaTeX file is wrong, since the document might include files
+# that have changed.
+#
+# 3. Because there can be several AUX (if there are \include's),
+# but a single LOG, looking for missing citations in LOG is
+# easier, though we take the risk of matching false messages.
+run_bibtex ()
+{
+  case $in_lang in
+    latex)   bibtex=${BIBTEX:-bibtex};;
+    texinfo) return;;
+  esac
+
+  # "Citation undefined" is for LaTeX, "Undefined citation" for btxmac.tex.
+  # The no .aux && \bibdata test is also for btxmac, in case it was the
+  # first run of a bibtex-using document.  Otherwise, it's possible that
+  # bibtex would never be run.
+  if test -r "$in_noext.aux" \
+     && test -r "$in_noext.log" \
+     && ( (grep 'Warning:.*Citation.*undefined' "$in_noext.log" \
+          || grep '.*Undefined citation' "$in_noext.log" \
+          || grep 'No file .*\.bbl\.' "$in_noext.log") \
+          || (grep 'No \.aux file' "$in_noext.log" \
+              && grep '^\\bibdata' "$in_noext.aux") ) \
+        >&6 2>&1; \
+  then
+    bibtex_aux=`generated_files_get "$in_noext" bibaux_file_p`
+    for f in $bibtex_aux; do
+      run $bibtex "$f"
+    done
+  fi
+
+  # biber(+biblatex) check.
+  if test -r "$in_noext.bcf" \
+     && grep '</bcf:controlfile>' "$in_noext.bcf" >/dev/null; then
+    run ${BIBER:-biber} "$in_noext"
+  fi
+}
+
+# run_index ()
+# ------------
+# Run texindex (or makeindex or texindy) on current index files.  If
+# they already exist, and after running TeX a first time the index
+# files don't change, then there's no reason to run TeX again.  But we
+# won't know that if the index files are out of date or nonexistent.
+run_index ()
+{
+  local index_files
+  index_files=`generated_files_get $in_noext index_file_p`
+  test -n "$index_files" \
+  || return 0
+
+  : ${MAKEINDEX:=makeindex}
+  : ${TEXINDEX:=texindex}
+  : ${TEXINDY:=texindy}
+
+  local index_file
+  local index_noext
+  case $in_lang:$latex2html:`out_lang_tex` in
+    latex:tex4ht:html)
+      for index_file in $index_files
+      do
+        index_noext=`noext "$index_file"`
+        run tex \
+            '\def\filename{{'"$index_noext"'}{idx}{4dx}{ind}}
+             \input idxmake.4ht'
+        run $MAKEINDEX -o $index_noext.ind $index_noext.4dx
+      done
+      ;;
+
+    latex:*)
+      if $TEXINDY --version >&6 2>&1; then
+        run $TEXINDY $index_files
+      else
+        run $MAKEINDEX $index_files
+      fi
+      ;;
+
+    texinfo:*)
+      run $TEXINDEX $index_files
+      ;;
+  esac
+}
+
+
+# run_tex4ht ()
+# -------------
+# Run the last two phases of TeX4HT: tex4ht extracts the HTML from the
+# instrumented DVI file, and t4ht converts the figures and installs
+# the files when given -d.
+#
+# Because knowing exactly which files are created is complex (in
+# addition the names are not simple to compute), which makes it
+# difficult to install the output files in a second step, it is much
+# simpler to install directly the output files.
+run_tex4ht ()
+{
+  case $in_lang:$latex2html:`out_lang_tex` in
+    latex:tex4ht:html)
+      : ${TEX4HT:=tex4ht} ${T4HT:=t4ht}
+      run "$TEX4HT" "-f/$in_noext"
+      # Do not remove the / after the destdir.
+      run "$T4HT" "-d`destdir`/" "-f/$in_noext"
+      ;;
+  esac
+}
+
+
+# run_thumbpdf ()
+# ---------------
+run_thumbpdf ()
+{
+  if test `out_lang_tex` = pdf \
+     && test -r "$in_noext.log" \
+     && grep 'thumbpdf\.sty'  "$in_noext.log" >&6 2>&1; \
+  then
+    thumbpdf=${THUMBPDF_CMD:-thumbpdf}
+    thumbcmd="$thumbpdf $in_dir/$in_noext"
+    verbose "Running $thumbcmd ..."
+    if $thumbcmd >&5; then
+      run_tex
+    else
+      report "$thumbpdf exited with bad status." \
+             "Ignoring its output."
+    fi
+  fi
+}
+
+
+# run_dvipdf FILE.dvi
+# -------------------
+# Convert FILE.dvi to FILE.pdf.
+run_dvipdf ()
+{
+  # Find which dvi->pdf program is available.
+  if test -z "$dvipdf"; then
+    for i in "$DVIPDF" dvipdfmx dvipdfm dvipdf dvi2pdf dvitopdf; do
+      if findprog $i; then
+        dvipdf=$i
+      fi
+    done
+  fi
+  # These tools have varying interfaces, some 'input output', others
+  # 'input -o output'.  They all seem to accept 'input' only,
+  # outputting using the expected file name.
+  run $dvipdf "$1"
+  if test ! -f `echo "$1" | $SED -e 's/\.dvi$/.pdf/'`; then
+    error 1 "cannot find output file"
+  fi
+}
+
+# run_tex_suite ()
+# ----------------
+# Run the TeX tools until a fix point is reached.
+run_tex_suite ()
+{
+  # Move to the working directory.
+  if $tidy; then
+    verbose "cd $work_build"
+    cd "$work_build" || exit 1
+  fi
+
+  # Count the number of cycles.
+  local cycle=0
+
+  while :; do
+    # check for probably LaTeX loop (e.g. varioref)
+    if test $cycle -eq "$max_iters"; then
+      error 0 "Maximum of $max_iters cycles exceeded"
+      break
+    fi
 
-Copyright (C) 2003 Free Software Foundation, Inc.
-There is NO warranty.  You may redistribute this software
-under the terms of the GNU General Public License.
-For more information about these matters, see the files named COPYING."
+    # report progress
+    cycle=`expr $cycle + 1`
+    verbose "Cycle $cycle for $command_line_filename"
 
-usage="Usage: $program [OPTION]... FILE...
+    xref_files_save
 
-Run each Texinfo or LaTeX FILE through TeX in turn until all
-cross-references are resolved, building all indices.  The directory
-containing each FILE is searched for included files.  The suffix of FILE
-is used to determine its language (LaTeX or Texinfo).
+    # We run bibtex first, because it's more likely for the indexes
+    # to change after bibtex is run than the reverse, though either
+    # would be rare.
+    run_bibtex
+    run_index
+    run_core_conversion
 
-Makeinfo is used to perform Texinfo macro expansion before running TeX
-when needed.
+    xref_files_changed || break
+  done
 
-Operation modes:
-  -b, --batch         no interaction
-  -c, --clean         remove all auxiliary files
-  -D, --debug         turn on shell debugging (set -x)
-  -h, --help          display this help and exit successfully
-  -o, --output=OFILE  leave output in OFILE (implies --clean);
-                      Only one input FILE may be specified in this case
-  -q, --quiet         no output unless errors (implies --batch)
-  -s, --silent        same as --quiet
-  -v, --version       display version information and exit successfully
-  -V, --verbose       report on what is done
+  # If we were using thumbpdf and producing PDF, then run thumbpdf
+  # and TeX one last time.
+  run_thumbpdf
 
-TeX tuning:
-  -@                   use @input instead of \input; for preloaded Texinfo
-  -e, -E, --expand     force macro expansion using makeinfo
-  -I DIR               search DIR for Texinfo files
-  -l, --language=LANG  specify the LANG of FILE (LaTeX or Texinfo)
-  -p, --pdf            use pdftex or pdflatex for processing
-  -t, --texinfo=CMD    insert CMD after @setfilename in copy of input file
-                       multiple values accumulate
-
-The values of the BIBTEX, LATEX (or PDFLATEX), MAKEINDEX, MAKEINFO,
-TEX (or PDFTEX), and TEXINDEX environment variables are used to run
-those commands, if they are set.
-
-Email bug reports to <bug-texinfo@gnu.org>,
-general questions and discussion to <help-texinfo@gnu.org>.
-Texinfo home page: http://www.gnu.org/software/texinfo/"
+  # If we are using tex4ht, call it.
+  run_tex4ht
 
-# Initialize variables for option overriding and otherwise.
-# Don't use `unset' since old bourne shells don't have this command.
-# Instead, assign them an empty value.
-batch=false     # eval for batch mode
-clean=
-debug=
-escape='\'
-expand=         # t for expansion via makeinfo
-miincludes=     # makeinfo include path
-oformat=dvi
-oname=          # --output
-quiet=          # by default let the tools' message be displayed
-set_language=
-textra=
-tmpdir=${TMPDIR:-/tmp}/t2d$$  # avoid collisions on 8.3 filesystems.
-txincludes=     # TEXINPUTS extensions, with trailing colon
-txiprereq=19990129 # minimum texinfo.tex version to have macro expansion
-verbose=false   # echo for verbose mode
+  # Install the result if we didn't already (i.e., if the output is
+  # dvipdf or ps).
+  case $latex2html:$out_lang in
+    *:dvipdf)
+      run_dvipdf "$in_noext.`out_lang_tex`"
+      move_to_dest "$in_noext.`out_lang_ext`"
+      ;;
+    *:ps)
+      : ${DVIPS:=dvips}
+      run $DVIPS -o "$in_noext.`out_lang_ext`" "$in_noext.`out_lang_tex`"
+      move_to_dest "$in_noext.`out_lang_ext`"
+      ;;
+  esac
 
-orig_pwd=`pwd`
+  cd_orig
+}
 
-# Systems which define $COMSPEC or $ComSpec use semicolons to separate
-# directories in TEXINPUTS.
-if test -n "$COMSPEC$ComSpec"; then
-  path_sep=";"
-else
-  path_sep=":"
-fi
+## -------------------------------- ##
+## TeX processing auxiliary tools.  ##
+## -------------------------------- ##
 
-# Pacify verbose cds.
-CDPATH=${ZSH_VERSION+.}$path_sep
 
-# In case someone crazy insists on using grep -E.
-: ${EGREP=egrep}
+# A sed script that preprocesses Texinfo sources in order to keep the
+# iftex sections only.  We want to remove non-TeX sections, and comment
+# (with `@c _texi2dvi') TeX sections so that makeinfo does not try to
+# parse them.  Nevertheless, while commenting TeX sections, don't
+# comment @macro/@end macro so that makeinfo does propagate them.
+# Unfortunately makeinfo --iftex --no-ifinfo doesn't work well enough
+# (yet), makeinfo can't parse the TeX commands, so work around with sed.
+#
+# We assume that `@c _texi2dvi' starting a line is not present in the
+# document.
+#
+comment_iftex=\
+'/^@tex/,/^@end tex/{
+  s/^/@c _texi2dvi/
+}
+/^@iftex/,/^@end iftex/{
+  s/^/@c _texi2dvi/
+  /^@c _texi2dvi@macro/,/^@c _texi2dvi@end macro/{
+    s/^@c _texi2dvi//
+  }
+}
+/^@ifnottex/,/^@end ifnottex/{
+  s/^/@c (_texi2dvi)/
+}
+/^@ifinfo/,/^@end ifinfo/{
+  /^@node/p
+  /^@menu/,/^@end menu/p
+  t
+  s/^/@c (_texi2dvi)/
+}
+s/^@ifnotinfo/@c _texi2dvi@ifnotinfo/
+s/^@end ifnotinfo/@c _texi2dvi@end ifnotinfo/'
+
+# Uncommenting is simpler: remove any leading `@c texi2dvi'; repeated
+# copies can sneak in via macro invocations.
+uncomment_iftex='s/^@c _texi2dvi\(@c _texi2dvi\)*//'
+
+
+# run_makeinfo ()
+# ---------------
+# Expand macro commands in the original source file using Makeinfo.
+# Always use `end' footnote style, since the `separate' style
+# generates different output (arguably this is a bug in -E).  Discard
+# main info output, the user asked to run TeX, not makeinfo.
+run_makeinfo ()
+{
+  test $in_lang = texinfo \
+    || return 0
+
+  # Unless required by the user, makeinfo expansion is wanted only
+  # if texinfo.tex is too old.
+  if $expand; then
+    makeinfo=${MAKEINFO:-makeinfo}
+  else
+    # Check if texinfo.tex performs macro expansion by looking for
+    # its version.  The version is a date of the form YEAR-MO-DA.
+    # We don't need to use [0-9] to match the digits since anyway
+    # the comparison with $txiprereq, a number, will fail with non-digits.
+    # Run in a temporary directory to avoid leaving files.
+    version_test_dir=$t2ddir/version_test
+    ensure_dir "$version_test_dir"
+    if (
+       cd "$version_test_dir"
+       echo '\input texinfo.tex @bye' >txiversion.tex
+       # Be sure that if tex wants to fail, it is not interactive:
+       # close stdin.
+       $TEX txiversion.tex </dev/null >txiversion.out 2>txiversion.err
+    ); then :; else
+      report "texinfo.tex appears to be broken.
+This may be due to the environment variable TEX set to something
+other than (plain) tex, a corrupt texinfo.tex file, or 
+to tex itself simply not working."
+      cat "$version_test_dir/txiversion.out"
+      cat "$version_test_dir/txiversion.err" >&2
+      error 1 "quitting."
+    fi
+    eval `$SED -n 's/^.*\[\(.*\)version \(....\)-\(..\)-\(..\).*$/txiformat=\1 txiversion="\2\3\4"/p' "$version_test_dir/txiversion.out"`
+    verbose "texinfo.tex preloaded as \`$txiformat', version is \`$txiversion' ..."
+    if test "$txiprereq" -le "$txiversion" >&6 2>&1; then
+      makeinfo=
+    else
+      makeinfo=${MAKEINFO:-makeinfo}
+    fi
+    # If TeX is preloaded, offer the user this convenience:
+    if test "$txiformat" = Texinfo; then
+      escape=@
+    fi
+  fi
+
+  if test -n "$makeinfo"; then
+    # in_src: the file with macros expanded.
+    # Use the same basename to generate the same aux file names.
+    work_src=$workdir/src
+    ensure_dir "$work_src"
+    in_src=$work_src/$in_base
+    local miincludes
+    miincludes=`list_prefix includes -I`
+    verbose "Macro-expanding $command_line_filename to $in_src ..."
+    # eval $makeinfo because it might be defined as something complex
+    # (running missing) and then we end up with things like '"-I"',
+    # and "-I" (including the quotes) is not an option name.  This
+    # happens with gettext 0.14.5, at least.
+    $SED "$comment_iftex" "$command_line_filename" \
+      | eval $makeinfo --footnote-style=end -I "$in_dir" $miincludes \
+        -o /dev/null --macro-expand=- \
+      | $SED "$uncomment_iftex" >"$in_src"
+    # Continue only if everything succeeded.
+    if test $? -ne 0 \
+       || test ! -r "$in_src"; then
+      verbose "Expansion failed, ignored...";
+    else
+      in_input=$in_src
+    fi
+  fi
+}
+
+# insert_commands ()
+# ------------------
+# Used most commonly for @finalout, @smallbook, etc.
+insert_commands ()
+{
+  if test -n "$textra"; then
+    # _xtr.  The file with the user's extra commands.
+    work_xtr=$workdir/xtr
+    in_xtr=$work_xtr/$in_base
+    ensure_dir "$work_xtr"
+    verbose "Inserting extra commands: $textra"
+    local textra_cmd
+    case $in_lang in
+      latex)   textra_cmd=1i;;
+      texinfo) textra_cmd='/^@setfilename/a';;
+      *)       error 1 "internal error, unknown language: $in_lang";;
+    esac
+    $SED "$textra_cmd\\
+$textra" "$in_input" >"$in_xtr"
+    in_input=$in_xtr
+  fi
 
-# Save this so we can construct a new TEXINPUTS path for each file.
-TEXINPUTS_orig="$TEXINPUTS"
-# Unfortunately makeindex does not read TEXINPUTS.
-INDEXSTYLE_orig="$INDEXSTYLE"
-export TEXINPUTS INDEXSTYLE
+  case $in_lang:$latex2html:`out_lang_tex` in
+    latex:tex4ht:html)
+      # _tex4ht.  The file with the added \usepackage{tex4ht}.
+      work_tex4ht=$workdir/tex4ht
+      in_tex4ht=$work_tex4ht/$in_base
+      ensure_dir "$work_tex4ht"
+      verbose "Inserting \\usepackage{tex4ht}"
+      perl -pe 's<\\documentclass(?:\[.*\])?{.*}>
+                 <$&\\usepackage[xhtml]{tex4ht}>' \
+        "$in_input" >"$in_tex4ht"
+      in_input=$in_tex4ht
+      ;;
+  esac
+}
+
+# compute_language FILENAME
+# -------------------------
+# Return the short string describing the language in which FILENAME
+# is written: `texinfo' or `latex'.
+compute_language ()
+{
+  # If the user explicitly specified the language, use that.
+  # Otherwise, if the first line is \input texinfo, assume it's texinfo.
+  # Otherwise, guess from the file extension.
+  if test -n "$set_language"; then
+    echo $set_language
+  elif $SED 1q "$1" | grep 'input texinfo' >&6; then
+    echo texinfo
+  else
+    # Get the type of the file (latex or texinfo) from the given language
+    # we just guessed, or from the file extension if not set yet.
+    case $1 in
+      *.ltx | *.tex | *.drv | *.dtx) echo latex;;
+      *)                             echo texinfo;;
+    esac
+  fi
+}
+
+
+# run_hevea (MODE)
+# ----------------
+# Convert to HTML/INFO/TEXT.
+#
+# Don't pass `-noiso' to hevea: it's useless in HTML since anyway the
+# charset is set to latin1, and troublesome in other modes since
+# accented characters loose their accents.
+#
+# Don't pass `-o DEST' to hevea because in that case it leaves all its
+# auxiliary files there too...  Too bad, because it means we will need
+# to handle images some day.
+run_hevea ()
+{
+  local hevea="${HEVEA:-hevea}"
+  local run_hevea="$hevea"
+
+  case $1 in
+    html) ;;
+    text|info) run_hevea="$run_hevea -$1";;
+    *) error 1 "run_hevea: invalid argument: $1";;
+  esac
+
+  # Compiling to the tmp directory enables to preserve a previous
+  # successful compilation.
+  run_hevea="$run_hevea -fix -O -o '$out_base'"
+  run_hevea="$run_hevea `list_prefix includes -I` -I '$orig_pwd' "
+  run_hevea="$run_hevea '$in_input'"
+
+  if $debug; then
+    run_hevea="$run_hevea -v -v"
+  fi
+
+  verbose "running $run_hevea"
+  if eval "$run_hevea" >&5; then
+    # hevea leaves trailing white spaces, this is annoying.
+    case $1 in text|info)
+      perl -pi -e 's/[ \t]+$//g' "$out_base"*;;
+    esac
+    case $1 in
+    html|text) move_to_dest "$out_base";;
+    info) # There can be foo.info-1, foo.info-2 etc.
+               move_to_dest "$out_base"*;;
+    esac
+  else
+    error 1 "$hevea exited with bad status, quitting."
+  fi
+}
+
+
+# run_core_conversion ()
+# ----------------------
+# Run the TeX (or HeVeA).
+run_core_conversion ()
+{
+  case $in_lang:$latex2html:`out_lang_tex` in
+    *:dvi|*:pdf|latex:tex4ht:html)
+        run_tex;;
+    latex:*:html|latex:*:text|latex:*:info)
+        run_hevea $out_lang;;
+    *)
+        error 1 "invalid input/output combination: $in_lang/$out_lang";;
+  esac
+}
+
+
+# compile ()
+# ----------
+# Run the full compilation chain, from pre-processing to installation
+# of the output at its expected location.
+compile ()
+{
+  # Source file might include additional sources.
+  # We want `.:$orig_pwd' before anything else.  (We'll add `.:' later
+  # after all other directories have been turned into absolute paths.)
+  # `.' goes first to ensure that any old .aux, .cps,
+  # etc. files in ${directory} don't get used in preference to fresher
+  # files in `.'.  Include orig_pwd in case we are in clean build mode, where
+  # we have cd'd to a temp directory.
+  common="$orig_pwd$path_sep$in_dir$path_sep"
+  #
+  # If we have any includes, put those at the end.
+  # Keep a final path_sep to get the default (system) TeX directories included.
+  txincludes=`list_infix includes $path_sep`
+  test -n "$txincludes" && common="$common$txincludes$path_sep"
+  #
+  for var in $tex_envvars; do
+    eval val="\$common\$${var}_orig"
+    # Convert relative paths to absolute paths, so we can run in another
+    # directory (e.g., in clean build mode, or during the macro-support
+    # detection). ".:" is added here.
+    val=`absolute_filenames "$val"`
+    eval $var="\"$val\""
+    export $var
+    eval verbose \"$var=\'\$${var}\'\"
+  done
+
+  # --expand
+  run_makeinfo
+
+  # --command, --texinfo
+  insert_commands
+
+  # Run until a fix point is reached.
+  run_tex_suite
+}
+
+
+# remove FILES
+# ------------
+remove ()
+{
+  verbose "Removing" "$@"
+  rm -rf "$@"
+}
+
+
+# mostly_clean
+# ------------
+# Remove auxiliary files and directories.  Changes the current directory.
+mostly_clean ()
+{
+  cd_orig
+  set X "$t2ddir"
+  shift
+  $tidy || {
+    local log="$work_build/$in_noext.log"
+    set X ${1+"$@"} "$log" `generated_files_get "$work_build/$in_noext"`
+    shift
+  }
+  remove ${1+"$@"}
+}
+
+
+# cleanup ()
+# ----------
+# Remove what should be removed according to options.
+# Called at the end of each compilation cycle, and at the end of
+# the script.  Changes the current directory.
+cleanup ()
+{
+  case $build_mode in
+    local) cd_orig; remove "$t2ddir";;
+    clean) mostly_clean;;
+    tidy)  ;;
+  esac
+}
+
+
+
+## ---------------------- ##
+## Command line parsing.  ##
+## ---------------------- ##
 
 # Push a token among the arguments that will be used to notice when we
 # ended options/arguments parsing.
@@ -132,41 +1647,50 @@ while test x"$1" != x"$arg_sep"; do
   # Handle --option=value by splitting apart and putting back on argv.
   case "$1" in
     --*=*)
-      opt=`echo "$1" | sed -e 's/=.*//'`
-      val=`echo "$1" | sed -e 's/[^=]*=//'`
+      opt=`echo "$1" | $SED -e 's/=.*//'`
+      val=`echo "$1" | $SED -e 's/[^=]*=//'`
       shift
       set dummy "$opt" "$val" ${1+"$@"}; shift
       ;;
   esac
 
-  # This recognizes --quark as --quiet.  So what.
   case "$1" in
     -@ ) escape=@;;
+    -~ ) catcode_special=false;;
     # Silently and without documentation accept -b and --b[atch] as synonyms.
-    -b | --b*) batch=eval;;
-    -q | -s | --q* | --s*) quiet=t; batch=eval;;
-    -c | --c*) clean=t;;
-    -D | --d*) debug=t;;
-    -e | -E | --e*) expand=t;;
-    -h | --h*) echo "$usage"; exit 0;;
-    -I | --I*)
+    -b | --batch) batch=true;;
+         --build)      shift; build_mode=$1;;
+         --build-dir)  shift; build_dir=$1; build_mode=tidy;;
+    -c | --clean) build_mode=clean;;
+    -D | --debug) debug=true;;
+    -e | -E | --expand) expand=true;;
+    -h | --help) usage;;
+    -I)   shift; list_concat_dirs includes "$1";;
+    -l | --lang | --language) shift; set_language=$1;;
+    --mostly-clean) action=mostly-clean;;
+    --no-line-error) line_error=false;;
+    --max-iterations) shift; max_iters=$1;;
+    -o | --out  | --output)
       shift
-      miincludes="$miincludes -I $1"
-      txincludes="$txincludes$1$path_sep"
-      ;;
-    -l | --l*) shift; set_language=$1;;
-    -o | --o*)
-      shift
-      clean=t
-      case "$1" in
-        /* | ?:/*) oname=$1;;
-                *) oname="$orig_pwd/$1";;
-      esac;;
-    -p | --p*) oformat=pdf;;
-    -t | --t*) shift; textra="$textra\\
-$1";;
-    -v | --vers*) echo "$version"; exit 0;;
-    -V | --verb*) verbose=echo;;
+      # Make it absolute, just in case we also have --clean, or whatever.
+      oname=`absolute "$1"`;;
+
+    # Output formats.
+    -O|--output-format) shift; out_lang_set "$1";;
+       --dvi|--dvipdf|--html|--info|--pdf|--ps|--text)
+       out_lang_set `echo "x$1" | $SED 's/^x--//'`;;
+
+    -p) out_lang_set pdf;;
+    -q | -s | --quiet | --silent) quiet=true; batch=true;;
+    --src-specials) src_specials=--src-specials;;
+    --shell-escape) shell_escape=--shell-escape;;  
+    --tex4ht) latex2html=tex4ht;;
+    -t | --texinfo | --command ) shift; textra="$textra\\
+"`echo "$1" | $SED 's/\\\\/\\\\\\\\/g'`;;
+    --translate-file ) shift; translate_file="$1";;
+    --tidy) build_mode=tidy;;
+    -v | --vers*) version;;
+    -V | --verb*) verb=true;;
     --) # What remains are not options.
       shift
       while test x"$1" != x"$arg_sep"; do
@@ -175,9 +1699,9 @@ $1";;
       done
       break;;
     -*)
-      echo "$0: Unknown or ambiguous option \`$1'." >&2
-      echo "$0: Try \`--help' for more information." >&2
-      exit 1;;
+      error 1 "Unknown or ambiguous option \`$1'." \
+              "Try \`--help' for more information."
+      ;;
     *) set dummy ${1+"$@"} "$1"; shift;;
    esac
    shift
@@ -185,103 +1709,59 @@ done
 # Pop the token
 shift
 
+# $tidy:  compile in a t2d directory.
+# $clean: remove all the aux files.
+case $build_mode in
+  local) clean=false; tidy=false;;
+  tidy)  clean=false; tidy=true;;
+  clean) clean=true;  tidy=true;;
+      *) error 1 "invalid build mode: $build_mode";;
+esac
+
 # Interpret remaining command line args as filenames.
 case $# in
  0)
-  echo "$0: Missing file arguments." >&2
-  echo "$0: Try \`--help' for more information." >&2
-  exit 2
+  error 2 "Missing file arguments." "Try \`--help' for more information."
   ;;
  1) ;;
  *)
   if test -n "$oname"; then
-    echo "$0: Can't use option \`--output' with more than one argument." >&2
-    exit 2
+    error 2 "Can't use option \`--output' with more than one argument."
   fi
   ;;
 esac
 
-# Prepare the temporary directory.  Remove it at exit, unless debugging.
-if test -z "$debug"; then
-  trap "cd / && rm -rf $tmpdir" 0 1 2 15
-fi
 
-# Create the temporary directory with strict rights
-(umask 077 && mkdir $tmpdir) || exit 1
+# We can't do much without tex.
+#
+if findprog ${TEX:-tex}; then :; else cat <<EOM
+You don't have a working TeX binary (${TEX:-tex}) installed anywhere in
+your PATH, and texi2dvi cannot proceed without one.  If you want to use
+this script, you'll need to install TeX (if you don't have it) or change
+your PATH or TEX environment variable (if you do).  See the --help
+output for more details.
 
-# Prepare the tools we might need.  This may be extra work in some
-# cases, but improves the readibility of the script.
-utildir=$tmpdir/utils
-mkdir $utildir || exit 1
+For information about obtaining TeX, please see http://tug.org/texlive,
+or do a web search for TeX and your operating system or distro.
+EOM
+  exit 1
+fi
 
-# A sed script that preprocesses Texinfo sources in order to keep the
-# iftex sections only.  We want to remove non TeX sections, and
-# comment (with `@c texi2dvi') TeX sections so that makeinfo does not
-# try to parse them.  Nevertheless, while commenting TeX sections,
-# don't comment @macro/@end macro so that makeinfo does propagate
-# them.  Unfortunately makeinfo --iftex --no-ifhtml --no-ifinfo
-# doesn't work well enough (yet) to use that, so work around with sed.
-comment_iftex_sed=$utildir/comment.sed
-cat <<EOF >$comment_iftex_sed
-/^@tex/,/^@end tex/{
-  s/^/@c texi2dvi/
-}
-/^@iftex/,/^@end iftex/{
-  s/^/@c texi2dvi/
-  /^@c texi2dvi@macro/,/^@c texi2dvi@end macro/{
-    s/^@c texi2dvi//
-  }
-}
-/^@html/,/^@end html/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifhtml/,/^@end ifhtml/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifnottex/,/^@end ifnottex/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifinfo/,/^@end ifinfo/{
-  /^@node/p
-  /^@menu/,/^@end menu/p
-  t
-  s/^/@c (texi2dvi)/
-}
-s/^@ifnotinfo/@c texi2dvi@ifnotinfo/
-s/^@end ifnotinfo/@c texi2dvi@end ifnotinfo/
-EOF
-# Uncommenting is simple: Remove any leading `@c texi2dvi'.
-uncomment_iftex_sed=$utildir/uncomment.sed
-cat <<EOF >$uncomment_iftex_sed
-s/^@c texi2dvi//
-EOF
 
-# A shell script that computes the list of xref files.
-# Takes the filename (without extension) of which we look for xref
-# files as argument.  The index files must be reported last.
-get_xref_files=$utildir/get_xref.sh
-cat <<\EOF >$get_xref_files
-#! /bin/sh
+# We want to use etex (or pdftex) if they are available, and the user
+# didn't explicitly specify.  We don't check for elatex and pdfelatex
+# because (as of 2003), the LaTeX team has asked that new distributions
+# use etex by default anyway.
+#
+# End up with the TEX and PDFTEX variables set to what we are going to use.
+if test -z "$TEX"; then
+  if findprog etex; then TEX=etex; else TEX=tex; fi
+fi
+#
+if test -z "$PDFTEX"; then
+  if findprog pdfetex; then PDFTEX=pdfetex; else PDFTEX=pdftex; fi
+fi
 
-# Get list of xref files (indexes, tables and lists).
-# Find all files having root filename with a two-letter extension,
-# saves the ones that are really Texinfo-related files.  .?o? catches
-# many files: .toc, .log, LaTeX tables and lists, FiXme's .lox, maybe more.
-for this_file in "$1".?o? "$1".aux "$1".?? "$1".idx; do
-  # If file is empty, skip it.
-  test -s "$this_file" || continue
-  # If the file is not suitable to be an index or xref file, don't
-  # process it.  The file can't be if its first character is not a
-  # backslash or single quote.
-  first_character=`sed -n '1s/^\(.\).*$/\1/p;q' $this_file`
-  if test "x$first_character" = "x\\" \
-     || test "x$first_character" = "x'"; then
-    xref_files="$xref_files ./$this_file"
-  fi
-done
-echo "$xref_files"
-EOF
-chmod 500 $get_xref_files
 
 # File descriptor usage:
 # 0 standard input
@@ -290,369 +1770,175 @@ chmod 500 $get_xref_files
 # 3 some systems may open it to /dev/tty
 # 4 used on the Kubota Titan
 # 5 tools output (turned off by --quiet)
+# 6 tracing/debugging (set -x output, etc.)
+
 
-# Tools' output.  If quiet, discard, else redirect to the message flow.
-if test "$quiet" = t; then
+# Main tools' output (TeX, etc.) that TeX users are used to seeing.
+#
+# If quiet, discard, else redirect to the message flow.
+if $quiet; then
   exec 5>/dev/null
 else
   exec 5>&1
 fi
 
-# Enable tracing
-test "$debug" = t && set -x
+
+# Enable tracing, and auxiliary tools output.
+# 
+# This fd should be used where you'd typically use /dev/null to throw
+# output away.  But sometimes it is convenient to see that output (e.g.,
+# from a grep) to aid debugging.  Especially debugging at distance, via
+# the user.
+# 
+if $debug; then
+  exec 6>&1
+  set -vx
+else
+  exec 6>/dev/null
+fi
 
 # \f
-# TeXify files.
 
-for command_line_filename in ${1+"$@"}; do
-  $verbose "Processing $command_line_filename ..."
+# input_file_name_decode
+# ----------------------
+# Decode COMMAND_LINE_FILENAME, and compute:
+# - COMMAND_LINE_FILENAME clean of TeX commands
+# - IN_DIR
+#   The directory to the input file, possibly absolute if needed.
+# - IN_DIR_ABS
+#   The absolute directory of the input file.
+# - IN_BASE
+#   The input file base name (no directory part).
+# - IN_NOEXT
+#   The input file name without extensions (nor directory part).
+# - IN_INPUT
+#   Defaults to COMMAND_LINE_FILENAME, but might change if the
+#   input is preprocessed.  With directory, possibly absolute.
+input_file_name_decode ()
+{
+  # See if we are run from within AUC-Tex, in which case we are
+  # passed `\input{FOO.tex}' or even `\nonstopmode\input{FOO.tex}'.
+  case $command_line_filename in
+    *\\nonstopmode*)
+      batch=true;;
+  esac
+  case $command_line_filename in
+    *\\input{*}*)
+      # Let AUC-TeX error parser deal with line numbers.
+      line_error=false
+      command_line_filename=`\
+        expr X"$command_line_filename" : X'.*input{\([^}]*\)}'`
+      ;;
+  esac
 
   # If the COMMAND_LINE_FILENAME is not absolute (e.g., --debug.tex),
   # prepend `./' in order to avoid that the tools take it as an option.
-  echo "$command_line_filename" | $EGREP '^(/|[A-z]:/)' >/dev/null \
+  echo "$command_line_filename" | LC_ALL=C $EGREP '^(/|[A-Za-z]:/)' >&6 \
   || command_line_filename="./$command_line_filename"
 
   # See if the file exists.  If it doesn't we're in trouble since, even
   # though the user may be able to reenter a valid filename at the tex
   # prompt (assuming they're attending the terminal), this script won't
   # be able to find the right xref files and so forth.
-  if test ! -r "$command_line_filename"; then
-    echo "$0: Could not read $command_line_filename, skipping." >&2
-    continue
-  fi
+  test -r "$command_line_filename" \
+  || error 1 "cannot read $command_line_filename, skipping."
 
-  # Get the name of the current directory.  We want the full path
-  # because in clean mode we are in tmp, in which case a relative
-  # path has no meaning.
-  filename_dir=`echo $command_line_filename | sed 's!/[^/]*$!!;s!^$!.!'`
-  filename_dir=`cd "$filename_dir" >/dev/null && pwd`
+  # Get the name of the current directory.
+  in_dir=`func_dirname "$command_line_filename"`
+  in_dir_abs=`absolute "$in_dir"`
+  # In a clean build, we `cd', so get an absolute file name.
+  if $tidy; then
+    in_dir=$in_dir_abs
+  fi
 
   # Strip directory part but leave extension.
-  filename_ext=`basename "$command_line_filename"`
+  in_base=`basename "$command_line_filename"`
   # Strip extension.
-  filename_noext=`echo "$filename_ext" | sed 's/\.[^.]*$//'`
-  ext=`echo "$filename_ext" | sed 's/^.*\.//'`
-
-  # _src.  Use same basename since we want to generate aux files with
-  # the same basename as the manual.  If --expand, then output the
-  # macro-expanded file to here, else copy the original file.
-  tmpdir_src=$tmpdir/src
-  filename_src=$tmpdir_src/$filename_noext.$ext
-
-  # _xtr.  The file with the user's extra commands.
-  tmpdir_xtr=$tmpdir/xtr
-  filename_xtr=$tmpdir_xtr/$filename_noext.$ext
-
-  # _bak.  Copies of the previous xref files (another round is run if
-  # they differ from the new one).
-  tmpdir_bak=$tmpdir/bak
+  in_noext=`noext "$in_base"`
 
-  # Make all those directories and give up if we can't succeed.
-  mkdir $tmpdir_src $tmpdir_xtr $tmpdir_bak || exit 1
+  # The normalized file name to compile.  Must always point to the
+  # file to actually compile (in case of recoding, macro-expansion etc.).
+  in_input=$in_dir/$in_base
 
-  # Source file might include additional sources.
-  # We want `.:$orig_pwd' before anything else.  (We'll add `.:' later
-  # after all other directories have been turned into absolute paths.)
-  # `.' goes first to ensure that any old .aux, .cps,
-  # etc. files in ${directory} don't get used in preference to fresher
-  # files in `.'.  Include orig_pwd in case we are in clean mode, where
-  # we've cd'd to a temp directory.
-  common="$orig_pwd$path_sep$filename_dir$path_sep$txincludes"
-   TEXINPUTS="$common$TEXINPUTS_orig"
-  INDEXSTYLE="$common$INDEXSTYLE_orig"
-
-  # Convert relative paths to absolute paths, so we can run in another
-  # directory (e.g., in --clean mode, or during the macro-support
-  # detection.)
-  #
-  # Empty path components are meaningful to tex.  We rewrite them
-  # as `EMPTY' so they don't get lost when we split on $path_sep.
-   TEXINPUTS=`echo $TEXINPUTS  |sed 's/^:/EMPTY:/;s/:$/:EMPTY/;s/::/:EMPTY:/g'`
-  INDEXSTYLE=`echo $INDEXSTYLE |sed 's/^:/EMPTY:/;s/:$/:EMPTY/;s/::/:EMPTY:/g'`
-  save_IFS=$IFS
-  IFS=$path_sep
-  set x $TEXINPUTS; shift
-  TEXINPUTS=.
-  for dir
-  do
-    case $dir in
-      EMPTY)
-        TEXINPUTS=$TEXINPUTS$path_sep
-        ;;
-      [\\/]* | ?:[\\/]*)        # Absolute paths don't need to be expansed.
-        TEXINPUTS=$TEXINPUTS$path_sep$dir
-        ;;
-      *)
-        abs=`cd "$dir" && pwd` && TEXINPUTS=$TEXINPUTS$path_sep$abs
-        ;;
-    esac
-  done
-  set x $INDEXSTYLE; shift
-  INDEXSTYLE=.
-  for dir
-  do
-    case $dir in
-      EMPTY)
-        INDEXSTYLE=$INDEXSTYLE$path_sep
-        ;;
-      [\\/]* | ?:[\\/]*)        # Absolute paths don't need to be expansed.
-        INDEXSTYLE=$INDEXSTYLE$path_sep$dir
-        ;;
-      *)
-        abs=`cd "$dir" && pwd` && INDEXSTYLE=$INDEXSTYLE$path_sep$abs
-        ;;
-    esac
-  done
-  IFS=$save_IFS
 
-  # If the user explicitly specified the language, use that.
-  # Otherwise, if the first line is \input texinfo, assume it's texinfo.
-  # Otherwise, guess from the file extension.
-  if test -n "$set_language"; then
-    language=$set_language
-  elif sed 1q "$command_line_filename" | grep 'input texinfo' >/dev/null; then
-    language=texinfo
+  # Compute the output file name.
+  if test x"$oname" != x; then
+    out_name=$oname
   else
-    language=
-  fi
-
-  # Get the type of the file (latex or texinfo) from the given language
-  # we just guessed, or from the file extension if not set yet.
-  case ${language:-$filename_ext} in
-    [lL]a[tT]e[xX] | *.ltx | *.tex)
-      # Assume a LaTeX file.  LaTeX needs bibtex and uses latex for
-      # compilation.  No makeinfo.
-      bibtex=${BIBTEX:-bibtex}
-      makeinfo= # no point in running makeinfo on latex source.
-      texindex=${MAKEINDEX:-makeindex}
-      if test $oformat = dvi; then
-        tex=${LATEX:-latex}
-      else
-        tex=${PDFLATEX:-pdflatex}
-      fi
-      ;;
-
-    *)
-      # Assume a Texinfo file.  Texinfo files need makeinfo, texindex and tex.
-      bibtex=
-      texindex=${TEXINDEX:-texindex}
-      if test $oformat = dvi; then
-        tex=${TEX:-tex}
-      else
-        tex=${PDFTEX:-pdftex}
-      fi
-      # Unless required by the user, makeinfo expansion is wanted only
-      # if texinfo.tex is too old.
-      if test "$expand" = t; then
-        makeinfo=${MAKEINFO:-makeinfo}
-      else
-        # Check if texinfo.tex performs macro expansion by looking for
-        # its version.  The version is a date of the form YEAR-MO-DA.
-        # We don't need to use [0-9] to match the digits since anyway
-        # the comparison with $txiprereq, a number, will fail with non
-        # digits.
-        txiversion_tex=txiversion.tex
-        echo '\input texinfo.tex @bye' >$tmpdir/$txiversion_tex
-        # Run in the tmpdir to avoid leaving files.
-        eval `cd $tmpdir >/dev/null &&
-              $tex $txiversion_tex 2>/dev/null |
-              sed -n 's/^.*\[\(.*\)version \(....\)-\(..\)-\(..\).*$/txiformat=\1 txiversion="\2\3\4"/p'`
-        $verbose "texinfo.tex preloaded as \`$txiformat', version is \`$txiversion' ..."
-        if test "$txiprereq" -le "$txiversion" >/dev/null 2>&1; then
-          makeinfo=
-        else
-          makeinfo=${MAKEINFO:-makeinfo}
-        fi
-        # As long as we had to run TeX, offer the user this convenience
-        if test "$txiformat" = Texinfo; then
-          escape=@
-        fi
-      fi
-      ;;
-  esac
-
-  # Expand macro commands in the original source file using Makeinfo.
-  # Always use `end' footnote style, since the `separate' style
-  #   generates different output (arguably this is a bug in -E).
-  # Discard main info output, the user asked to run TeX, not makeinfo.
-  if test -n "$makeinfo"; then
-    $verbose "Macro-expanding $command_line_filename to $filename_src ..."
-    sed -f $comment_iftex_sed "$command_line_filename" \
-      | $makeinfo --footnote-style=end -I "$filename_dir" $miincludes \
-        -o /dev/null --macro-expand=- \
-      | sed -f $uncomment_iftex_sed >"$filename_src"
-    filename_input=$filename_src
-  fi
-
-  # If makeinfo failed (or was not even run), use the original file as input.
-  if test $? -ne 0 \
-     || test ! -r "$filename_src"; then
-    $verbose "Reverting to $command_line_filename ..."
-    filename_input=$filename_dir/$filename_ext
-  fi
-
-  # Used most commonly for @finalout, @smallbook, etc.
-  if test -n "$textra"; then
-    $verbose "Inserting extra commands: $textra"
-    sed '/^@setfilename/a\
-'"$textra" "$filename_input" >$filename_xtr
-    filename_input=$filename_xtr
+    out_name=$in_noext.`out_lang_ext`
   fi
+  out_dir=`func_dirname "$out_name"`
+  out_dir_abs=`absolute "$out_dir"`
+  out_base=`basename "$out_name"`
+  out_noext=`noext "$out_base"`
+}
 
-  # If clean mode was specified, then move to the temporary directory.
-  if test "$clean" = t; then
-    $verbose "cd $tmpdir_src"
-    cd "$tmpdir_src" || exit 1
-  fi
 
-  while :; do # will break out of loop below
-    orig_xref_files=`$get_xref_files "$filename_noext"`
+## -------------- ##
+## TeXify files.  ##
+## -------------- ##
 
-    # Save copies of originals for later comparison.
-    if test -n "$orig_xref_files"; then
-      $verbose "Backing up xref files: `echo $orig_xref_files | sed 's|\./||g'`"
-      cp $orig_xref_files $tmpdir_bak
-    fi
+for command_line_filename
+do
+  verbose "Processing $command_line_filename ..."
 
-    # Run bibtex on current file.
-    # - If its input (AUX) exists.
-    # - If AUX contains both `\bibdata' and `\bibstyle'.
-    # - If some citations are missing (LOG contains `Citation').
-    #   or the LOG complains of a missing .bbl
-    #
-    # We run bibtex first, because I can see reasons for the indexes
-    # to change after bibtex is run, but I see no reason for the
-    # converse.
-    #
-    # Don't try to be too smart.  Running bibtex only if the bbl file
-    # exists and is older than the LaTeX file is wrong, since the
-    # document might include files that have changed.  Because there
-    # can be several AUX (if there are \include's), but a single LOG,
-    # looking for missing citations in LOG is easier, though we take
-    # the risk to match false messages.
-    if test -n "$bibtex" \
-       && test -r "$filename_noext.aux" \
-       && test -r "$filename_noext.log" \
-       && (grep '^\\bibdata[{]'  "$filename_noext.aux" \
-           && grep '^\\bibstyle[{]' "$filename_noext.aux" \
-           && (grep 'Warning:.*Citation.*undefined' "$filename_noext.log" \
-               || grep 'No file .*\.bbl\.' "$filename_noext.log")) \
-          >/dev/null 2>&1; \
-    then
-      $verbose "Running $bibtex $filename_noext ..."
-      if $bibtex "$filename_noext" >&5; then :; else
-        echo "$0: $bibtex exited with bad status, quitting." >&2
-        exit 1
-      fi
-    fi
+  input_file_name_decode
 
-    # What we'll run texindex on -- exclude non-index files.
-    # Since we know index files are last, it is correct to remove everything
-    # before .aux and .?o?.  But don't really do <anything>o<anything>
-    # -- don't match whitespace as <anything>.
-    # Otherwise, if orig_xref_files contains something like
-    #   foo.xo foo.whatever
-    # the space after the o will get matched.
-    index_files=`echo "$orig_xref_files" \
-                 | sed "s!.*\.aux!!g;
-                        s!./$filename_noext\.[^ ]o[^ ]!!g;
-                        s/^[ ]*//;s/[ ]*$//"`
-    # Run texindex (or makeindex) on current index files.  If they
-    # already exist, and after running TeX a first time the index
-    # files don't change, then there's no reason to run TeX again.
-    # But we won't know that if the index files are out of date or
-    # nonexistent.
-    if test -n "$texindex" && test -n "$index_files"; then
-      $verbose "Running $texindex $index_files ..."
-      if $texindex $index_files 2>&5 1>&2; then :; else
-         echo "$0: $texindex exited with bad status, quitting." >&2
-         exit 1
-      fi
-    fi
+  # `texinfo' or `latex'?
+  in_lang=`compute_language "$command_line_filename"`
 
-    # Finally, run TeX.
-    # Prevent $ESCAPE from being interpreted by the shell if it happens
-    # to be `/'.
-    $batch tex_args="\\${escape}nonstopmode\ \\${escape}input"
-    cmd="$tex $tex_args $filename_input"
-    $verbose "Running $cmd ..."
-    if $cmd >&5; then :; else
-      echo "$0: $tex exited with bad status, quitting." >&2
-      echo "$0: see $filename_noext.log for errors." >&2
-      test "$clean" = t \
-        && cp "$filename_noext.log" "$orig_pwd"
-      exit 1
-    fi
+  # An auxiliary directory used for all the auxiliary tasks involved
+  # in compiling this document.
+  case $build_dir in
+      '' | . ) t2ddir=$out_noext.t2d ;;
+      *) # Avoid collisions between multiple occurrences of the same
+         # file, so depend on the output path.  Remove leading `./',
+         # at least to avoid creating a file starting with `.!', i.e.,
+         # an invisible file. The sed expression is fragile if the cwd
+         # has active characters.  Transform / into ! so that we don't
+         # need `mkdir -p'.  It might be something to reconsider.
+         t2ddir=$build_dir/`echo "$out_dir_abs/$out_noext.t2d" |
+             $SED "s,^$orig_pwd/,,;s,^\./,,;s,/,!,g"`
+  esac
+  # Remove it at exit if clean mode.
+  trap "cleanup" 0 1 2 15
 
+  ensure_dir "$build_dir" "$t2ddir"
 
-    # Decide if looping again is needed.
-    finished=t
+  # We will change directory, better work with an absolute path...
+  t2ddir=`absolute "$t2ddir"`
+  # Sometimes there are incompatibilities between auxiliary files for
+  # DVI and PDF.  The contents can also change whether we work on PDF
+  # and/or DVI.  So keep separate spaces for each.
+  workdir=$t2ddir/`out_lang_tex`
+  ensure_dir "$workdir"
 
-    # LaTeX (and the package changebar) report in the LOG file if it
-    # should be rerun.  This is needed for files included from
-    # subdirs, since texi2dvi does not try to compare xref files in
-    # subdirs.  Performing xref files test is still good since LaTeX
-    # does not report changes in xref files.
-    if grep "Rerun to get" "$filename_noext.log" >/dev/null 2>&1; then
-      finished=
-    fi
+  # _build.  In a tidy build, where the auxiliary files are output.
+  if $tidy; then
+    work_build=$workdir/build
+  else
+    work_build=.
+  fi
 
-    # Check if xref files changed.
-    new_xref_files=`$get_xref_files "$filename_noext"`
-    $verbose "Original xref files = `echo $orig_xref_files | sed 's|\./||g'`"
-    $verbose "New xref files      = `echo $new_xref_files | sed 's|\./||g'`"
-
-    # If old and new lists don't at least have the same file list,
-    # then one file or another has definitely changed.
-    test "x$orig_xref_files" != "x$new_xref_files" && finished=
-
-    # File list is the same.  We must compare each file until we find
-    # a difference.
-    if test -n "$finished"; then
-      for this_file in $new_xref_files; do
-        $verbose "Comparing xref file `echo $this_file | sed 's|\./||g'` ..."
-        # cmp -s returns nonzero exit status if files differ.
-        if cmp -s "$this_file" "$tmpdir_bak/$this_file"; then :; else
-          # We only need to keep comparing until we find one that
-          # differs, because we'll have to run texindex & tex again no
-          # matter how many more there might be.
-          finished=
-          $verbose "xref file `echo $this_file | sed 's|\./||g'` differed ..."
-          test "$debug" = t && diff -c "$tmpdir_bak/$this_file" "$this_file"
-          break
-        fi
-      done
-    fi
+  # _bak.  Copies of the previous auxiliary files (another round is
+  # run if they differ from the new ones).
+  work_bak=$workdir/bak
 
-    # If finished, exit the loop, else rerun the loop.
-    test -n "$finished" && break
-  done
+  # Make those directories.
+  ensure_dir "$work_build" "$work_bak"
 
-  # If we were in clean mode, compilation was in a tmp directory.
-  # Copy the DVI (or PDF) file into the directory where the compilation
-  # has been done.  (The temp dir is about to get removed anyway.)
-  # We also return to the original directory so that
-  # - the next file is processed in correct conditions
-  # - the temporary file can be removed
-  if test -n "$clean"; then
-    if test -n "$oname"; then
-       dest=$oname
-    else
-       dest=$orig_pwd
-    fi
-    $verbose "Copying $oformat file from `pwd` to $dest"
-    cp -p "./$filename_noext.$oformat" "$dest"
-    cd / # in case $orig_pwd is on a different drive (for DOS)
-    cd $orig_pwd || exit 1
-  fi
+  case $action in
+    compile)
+      # Compile the document.
+      compile
+      cleanup
+      ;;
 
-  # Remove temporary files.
-  if test "x$debug" = "x"; then
-    $verbose "Removing $tmpdir_src $tmpdir_xtr $tmpdir_bak ..."
-    cd /
-    rm -rf $tmpdir_src $tmpdir_xtr $tmpdir_bak
-  fi
+    mostly-clean)
+      mostly_clean
+      ;;
+  esac
 done
 
-$verbose "$0 done."
+verbose "done."
 exit 0 # exit successfully, not however we ended the loop.
index 70b665820353b5c3764b58e70b000f45e6b9f387..3f4d36dda9d337f1d38bba8e3d6957171458f4f5 100644 (file)
@@ -1,10 +1,10 @@
 @ignore
-Copyright (C) 1988-2014 Free Software Foundation, Inc. 
+Copyright (C) 1988-2015 Free Software Foundation, Inc. 
 @end ignore
 
-@set EDITION 6.3
-@set VERSION 6.3
-@set UPDATED 6 January 2014
-@set UPDATED-MONTH January 2014
+@set EDITION 6.4
+@set VERSION 6.4
+@set UPDATED 28 May 2015
+@set UPDATED-MONTH May 2015
 
-@set LASTCHANGE Mon Jan  6 16:26:51 EST 2014
+@set LASTCHANGE Thu May 28 16:58:07 EDT 2015
index 04399ce934e7c7e67a5c46352d0ada50a62a4860..2d8f94810fe6810192451865972517a0a0919d9c 100644 (file)
@@ -53,7 +53,7 @@ CPPFLAGS = @CPPFLAGS@
 
 INCLUDES = -I$(srcdir) -I$(top_srcdir) -I..
 
-CCFLAGS  = $(DEFS) $(LOCAL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(CFLAGS)
+CCFLAGS  = $(DEFS) $(LOCAL_CFLAGS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
 LDFLAGS = -g -L.. @LDFLAGS@
 
 PURIFY = @PURIFY@
@@ -68,16 +68,16 @@ TERMCAP_LIB = @TERMCAP_LIB@
        $(CC) $(CCFLAGS) -c $<
 
 SOURCES = excallback.c fileman.c histexamp.c manexamp.c rl-fgets.c rl.c \
-               rlcat.c rlevent.c rlptytest.c rltest.c rlversion.c \
+               rlbasic.c rlcat.c rlevent.c rlptytest.c rltest.c rlversion.c \
                rl-callbacktest.c hist_erasedups.c hist_purgecmd.c 
 
 EXECUTABLES = fileman$(EXEEXT) rltest$(EXEEXT) rl$(EXEEXT) rlcat$(EXEEXT) \
                rlevent$(EXEEXT) rlversion$(EXEEXT) histexamp$(EXEEXT) \
-               rl-callbacktest$(EXEEXT) \
+               rl-callbacktest$(EXEEXT) rlbasic$(EXEEXT) \
                hist_erasedups$(EXEEXT) hist_purgecmd$(EXEEXT)
 
 OBJECTS = fileman.o rltest.o rl.o rlevent.o rlcat.o rlversion.o histexamp.o \
-         rl-callbacktest.o hist_erasedups.o hist_purgecmd.o
+         rl-callbacktest.o rlbasic.o hist_erasedups.o hist_purgecmd.o
 
 OTHEREXE = rlptytest$(EXEEXT)
 OTHEROBJ = rlptytest.o
@@ -106,6 +106,9 @@ uninstall:
 rl$(EXEEXT): rl.o $(READLINE_LIB)
        $(PURIFY) $(CC) $(LDFLAGS) -o $@ rl.o $(READLINE_LIB) $(TERMCAP_LIB)
 
+rlbasic$(EXEEXT): rlbasic.o $(READLINE_LIB)
+       $(PURIFY) $(CC) $(LDFLAGS) -o $@ rlbasic.o $(READLINE_LIB) $(TERMCAP_LIB)
+
 rlcat$(EXEEXT): rlcat.o $(READLINE_LIB)
        $(PURIFY) $(CC) $(LDFLAGS) -o $@ rlcat.o $(READLINE_LIB) $(TERMCAP_LIB)
 
@@ -150,6 +153,7 @@ rlversion.o: rlversion.c
 histexamp.o: histexamp.c
 hist_erasedups.o: hist_erasedups.c
 hist_purgecmd.o: hist_purgecmd.c
+rlbasic.o: rlbasic.c
 rlcat.o: rlcat.c
 rlptytest.o: rlptytest.c
 rl-callbacktest.o: rl-callbacktest.c
@@ -161,6 +165,7 @@ rlversion.o: $(top_srcdir)/readline.h
 histexamp.o: $(top_srcdir)/history.h
 hist_erasedups.o: $(top_srcdir)/history.h
 hist_purgecmd.o: $(top_srcdir)/history.h
+rlbasic.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
 rlcat.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
 rlptytest.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
 rl-callbacktest.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
index 87a781dccab1e08d5aac395874de407ce5d8cbcc..0f00e57c564e6b98b58f920cde02333a25157d8c 100644 (file)
@@ -7,6 +7,7 @@
 #include <sys/types.h>
 #include <sys/select.h>
 
+#include <errno.h>
 #include <stdio.h>
 
 /* Standard readline include files. */
@@ -18,6 +19,8 @@
 #  include <readline/history.h>
 #endif
 
+extern int errno;
+
 static void cb_linehandler (char *);
 
 int running;
@@ -71,7 +74,7 @@ main (int c, char **v)
       FD_SET (fileno (rl_instream), &fds);    
 
       r = select (FD_SETSIZE, &fds, NULL, NULL, NULL);
-      if (r < 0)
+      if (r < 0 && errno != EINTR)
        {
          perror ("rltest: select");
          rl_callback_handler_remove ();
diff --git a/examples/rlbasic.c b/examples/rlbasic.c
new file mode 100644 (file)
index 0000000..8fc66ab
--- /dev/null
@@ -0,0 +1,28 @@
+#include <stdlib.h>
+#include <unistd.h>
+#include <stdio.h>
+
+#if defined (READLINE_LIBRARY)
+#  include "readline.h"
+#  include "history.h"
+#else
+#  include <readline/readline.h>
+#  include <readline/history.h>
+#endif
+
+int
+main (int c, char **v)
+{
+       char *input;
+
+       for (;;) {
+               input = readline ((char *)NULL);
+               if (input == 0)
+                       break;
+               printf ("%s\n", input);
+               if (strcmp (input, "exit") == 0)
+                       break;
+               free (input);
+       }
+       exit (0);
+}
index 363507b86778d8fb27b1b56b15194e61a28dd85f..62535bf21520ebe3339eaf28febd705a7678540c 100644 (file)
--- a/funmap.c
+++ b/funmap.c
@@ -68,6 +68,7 @@ static const FUNMAP default_funmap[] = {
   { "backward-word", rl_backward_word },
   { "beginning-of-history", rl_beginning_of_history },
   { "beginning-of-line", rl_beg_of_line },
+  { "bracketed-paste-begin", rl_bracketed_paste_begin },
   { "call-last-kbd-macro", rl_call_last_kbd_macro },
   { "capitalize-word", rl_capitalize_word },
   { "character-search", rl_char_search },
@@ -115,7 +116,7 @@ static const FUNMAP default_funmap[] = {
   { "non-incremental-reverse-search-history-again", rl_noninc_reverse_search_again },
   { "old-menu-complete", rl_old_menu_complete },
   { "overwrite-mode", rl_overwrite_mode },
-#ifdef __CYGWIN__
+#if defined (_WIN32)
   { "paste-from-clipboard", rl_paste_from_clipboard },
 #endif
   { "possible-completions", rl_possible_completions },
@@ -177,7 +178,7 @@ static const FUNMAP default_funmap[] = {
   { "vi-fword", rl_vi_fword },
   { "vi-goto-mark", rl_vi_goto_mark },
   { "vi-insert-beg", rl_vi_insert_beg },
-  { "vi-insertion-mode", rl_vi_insertion_mode },
+  { "vi-insertion-mode", rl_vi_insert_mode },
   { "vi-match", rl_vi_match },
   { "vi-movement-mode", rl_vi_movement_mode },
   { "vi-next-word", rl_vi_next_word },
@@ -194,6 +195,7 @@ static const FUNMAP default_funmap[] = {
   { "vi-subst", rl_vi_subst },
   { "vi-tilde-expand", rl_vi_tilde_expand },
   { "vi-yank-arg", rl_vi_yank_arg },
+  { "vi-yank-pop", rl_vi_yank_pop },
   { "vi-yank-to", rl_vi_yank_to },
 #endif /* VI_MODE */
 
index 4899b9d3a0e706e21df4e4cec1bdfef135b6977c..fc133036493d826d436c732b06ced22551202b29 100644 (file)
@@ -50,6 +50,7 @@
 
 #define HISTORY_WORD_DELIMITERS                " \t\n;&()|<>"
 #define HISTORY_QUOTE_CHARACTERS       "\"'`"
+#define HISTORY_EVENT_DELIMITERS       "^$*%-"
 
 #define slashify_in_quotes "\\`\"$"
 
@@ -62,6 +63,10 @@ static char *subst_rhs;
 static int subst_lhs_len;
 static int subst_rhs_len;
 
+/* Characters that delimit history event specifications and separate event
+   specifications from word designators.  Static for now */
+static char *history_event_delimiter_chars = HISTORY_EVENT_DELIMITERS;
+
 static char *get_history_word_specifier PARAMS((char *, char *, int *));
 static int history_tokenize_word PARAMS((const char *, int));
 static char **history_tokenize_internal PARAMS((const char *, int, int *));
@@ -112,7 +117,6 @@ rl_linebuf_func_t *history_inhibit_expansion_function;
 
 /* The last string searched for by a !?string? search. */
 static char *search_string;
-
 /* The last string matched by a !?string? search. */
 static char *search_match;
 
@@ -225,6 +229,7 @@ get_history_event (string, caller_index, delimiting_quote)
 
 #endif /* HANDLE_MULTIBYTE */
       if ((!substring_okay && (whitespace (c) || c == ':' ||
+          (history_event_delimiter_chars && member (c, history_event_delimiter_chars)) ||
          (history_search_delimiter_chars && member (c, history_search_delimiter_chars)) ||
          string[i] == delimiting_quote)) ||
          string[i] == '\n' ||
@@ -873,7 +878,7 @@ history_expand_internal (string, start, qc, end_index_ptr, ret_string, current_l
    1) If expansions did take place
    2) If the `p' modifier was given and the caller should print the result
 
-  If an error ocurred in expansion, then OUTPUT contains a descriptive
+  If an error occurred in expansion, then OUTPUT contains a descriptive
   error message. */
 
 #define ADD_STRING(s) \
@@ -991,6 +996,7 @@ history_expand (hstring, output)
             history expansion performed on it.
             Skip the rest of the line and break out of the loop. */
          if (history_comment_char && string[i] == history_comment_char &&
+             dquote == 0 &&
              (i == 0 || member (string[i - 1], history_word_delimiters)))
            {
              while (string[i])
@@ -1149,7 +1155,8 @@ history_expand (hstring, output)
          }
 
        case -2:                /* history_comment_char */
-         if (i == 0 || member (string[i - 1], history_word_delimiters))
+         if ((dquote == 0 || history_quotes_inhibit_expansion == 0) &&
+             (i == 0 || member (string[i - 1], history_word_delimiters)))
            {
              temp = (char *)xmalloc (l - i + 1);
              strcpy (temp, string + i);
index bb7431567ec6950e12d47914973b10919ec0e67a..8749886b6e37e68df38ab1f928a506390339c7e9 100644 (file)
@@ -1,6 +1,6 @@
 /* histfile.c - functions to manipulate the history file. */
 
-/* Copyright (C) 1989-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2015 Free Software Foundation, Inc.
 
    This file contains the GNU History Library (History), a set of
    routines for managing the text of previously typed lines.
 
 #include <stdio.h>
 
+#if defined (HAVE_LIMITS_H)
+#  include <limits.h>
+#endif
+
 #include <sys/types.h>
 #if ! defined (_MINIX) && defined (HAVE_SYS_FILE_H)
 #  include <sys/file.h>
@@ -99,12 +103,31 @@ extern int errno;
 #include "rlshell.h"
 #include "xmalloc.h"
 
+#if !defined (PATH_MAX)
+#  define PATH_MAX     1024    /* default */
+#endif
+
 /* If non-zero, we write timestamps to the history file in history_do_write() */
 int history_write_timestamps = 0;
 
+/* Immediately after a call to read_history() or read_history_range(), this
+   will return the number of lines just read from the history file in that
+   call. */
+int history_lines_read_from_file = 0;
+
+/* Immediately after a call to write_history() or history_do_write(), this
+   will return the number of lines just written to the history file in that
+   call.  This also works with history_truncate_file. */
+int history_lines_written_to_file = 0;
+
 /* Does S look like the beginning of a history timestamp entry?  Placeholder
    for more extensive tests. */
-#define HIST_TIMESTAMP_START(s)                (*(s) == history_comment_char && isdigit ((s)[1]) )
+#define HIST_TIMESTAMP_START(s)                (*(s) == history_comment_char && isdigit ((unsigned char)(s)[1]) )
+
+static char *history_backupfile PARAMS((const char *));
+static char *history_tempfile PARAMS((const char *));
+static int histfile_backup PARAMS((const char *, const char *));
+static int histfile_restore PARAMS((const char *, const char *));
 
 /* Return the string that should be used in the place of this
    filename.  This only matters when you don't specify the
@@ -123,6 +146,10 @@ history_filename (filename)
     return (return_val);
   
   home = sh_get_env_value ("HOME");
+#if defined (_WIN32)
+  if (home == 0)
+    home = sh_get_env_value ("APPDATA");
+#endif
 
   if (home == 0)
     return (NULL);
@@ -145,17 +172,71 @@ static char *
 history_backupfile (filename)
      const char *filename;
 {
-  char *ret;
+  const char *fn;
+  char *ret, linkbuf[PATH_MAX+1];
   size_t len;
-
-  len = strlen (filename);
+  ssize_t n;
+  struct stat fs;
+
+  fn = filename;  
+#if defined (HAVE_READLINK)
+  /* Follow symlink to avoid backing up symlink itself; call will fail if
+     not a symlink */
+  if ((n = readlink (filename, linkbuf, sizeof (linkbuf) - 1)) > 0)
+    {
+      linkbuf[n] = '\0';
+      fn = linkbuf;
+    }
+#endif
+      
+  len = strlen (fn);
   ret = xmalloc (len + 2);
-  strcpy (ret, filename);
+  strcpy (ret, fn);
   ret[len] = '-';
   ret[len+1] = '\0';
   return ret;
 }
   
+static char *
+history_tempfile (filename)
+     const char *filename;
+{
+  const char *fn;
+  char *ret, linkbuf[PATH_MAX+1];
+  size_t len;
+  ssize_t n;
+  struct stat fs;
+  int pid;
+
+  fn = filename;  
+#if defined (HAVE_READLINK)
+  /* Follow symlink so tempfile created in the same directory as any symlinked
+     history file; call will fail if not a symlink */
+  if ((n = readlink (filename, linkbuf, sizeof (linkbuf) - 1)) > 0)
+    {
+      linkbuf[n] = '\0';
+      fn = linkbuf;
+    }
+#endif
+      
+  len = strlen (fn);
+  ret = xmalloc (len + 11);
+  strcpy (ret, fn);
+
+  pid = (int)getpid ();
+
+  /* filename-PID.tmp */
+  ret[len] = '-';
+  ret[len+1] = (pid / 10000 % 10) + '0';
+  ret[len+2] = (pid / 1000 % 10) + '0';
+  ret[len+3] = (pid / 100 % 10) + '0';
+  ret[len+4] = (pid / 10 % 10) + '0';
+  ret[len+5] = (pid % 10) + '0';
+  strcpy (ret + len + 6, ".tmp");
+
+  return ret;
+}
+  
 /* Add the contents of FILENAME to the history list, a line at a time.
    If FILENAME is NULL, then read from ~/.history.  Returns 0 if
    successful, or errno if not. */
@@ -189,6 +270,8 @@ read_history_range (filename, from, to)
   int overflow_errno = EIO;
 #endif
 
+  history_lines_read_from_file = 0;
+
   buffer = last_ts = (char *)NULL;
   input = history_filename (filename);
   file = input ? open (input, O_RDONLY|O_BINARY, 0666) : -1;
@@ -301,6 +384,8 @@ read_history_range (filename, from, to)
        line_start = line_end + 1;
       }
 
+  history_lines_read_from_file = current_line;
+
   FREE (input);
 #ifndef HISTORY_USE_MMAP
   FREE (buffer);
@@ -311,23 +396,68 @@ read_history_range (filename, from, to)
   return (0);
 }
 
+/* Save FILENAME to BACK, handling case where FILENAME is a symlink
+   (e.g., ~/.bash_history -> .histfiles/.bash_history.$HOSTNAME) */
+static int
+histfile_backup (filename, back)
+     const char *filename;
+     const char *back;
+{
+#if defined (HAVE_READLINK)
+  char linkbuf[PATH_MAX+1];
+  ssize_t n;
+
+  /* Follow to target of symlink to avoid renaming symlink itself */
+  if ((n = readlink (filename, linkbuf, sizeof (linkbuf) - 1)) > 0)
+    {
+      linkbuf[n] = '\0';
+      return (rename (linkbuf, back));
+    }
+#endif
+  return (rename (filename, back));
+}
+
+/* Restore ORIG from BACKUP handling case where ORIG is a symlink
+   (e.g., ~/.bash_history -> .histfiles/.bash_history.$HOSTNAME) */
+static int
+histfile_restore (backup, orig)
+     const char *backup;
+     const char *orig;
+{
+#if defined (HAVE_READLINK)
+  char linkbuf[PATH_MAX+1];
+  ssize_t n;
+
+  /* Follow to target of symlink to avoid renaming symlink itself */
+  if ((n = readlink (orig, linkbuf, sizeof (linkbuf) - 1)) > 0)
+    {
+      linkbuf[n] = '\0';
+      return (rename (backup, linkbuf));
+    }
+#endif
+  return (rename (backup, orig));
+}
+
 /* Truncate the history file FNAME, leaving only LINES trailing lines.
-   If FNAME is NULL, then use ~/.history.  Returns 0 on success, errno
-   on failure. */
+   If FNAME is NULL, then use ~/.history.  Writes a new file and renames
+   it to the original name.  Returns 0 on success, errno on failure. */
 int
 history_truncate_file (fname, lines)
      const char *fname;
      int lines;
 {
-  char *buffer, *filename, *bp, *bp1;          /* bp1 == bp+1 */
-  int file, chars_read, rv;
+  char *buffer, *filename, *tempname, *bp, *bp1;               /* bp1 == bp+1 */
+  int file, chars_read, rv, orig_lines, exists;
   struct stat finfo;
   size_t file_size;
 
+  history_lines_written_to_file = 0;
+
   buffer = (char *)NULL;
   filename = history_filename (fname);
+  tempname = 0;
   file = filename ? open (filename, O_RDONLY|O_BINARY, 0666) : -1;
-  rv = 0;
+  rv = exists = 0;
 
   /* Don't try to truncate non-regular files. */
   if (file == -1 || fstat (file, &finfo) == -1)
@@ -337,6 +467,7 @@ history_truncate_file (fname, lines)
        close (file);
       goto truncate_exit;
     }
+  exists = 1;
 
   if (S_ISREG (finfo.st_mode) == 0)
     {
@@ -368,6 +499,7 @@ history_truncate_file (fname, lines)
   buffer = (char *)malloc (file_size + 1);
   if (buffer == 0)
     {
+      rv = errno;
       close (file);
       goto truncate_exit;
     }
@@ -381,6 +513,7 @@ history_truncate_file (fname, lines)
       goto truncate_exit;
     }
 
+  orig_lines = lines;
   /* Count backwards from the end of buffer until we have passed
      LINES lines.  bp1 is set funny initially.  But since bp[1] can't
      be a comment character (since it's off the end) and *bp can't be
@@ -409,29 +542,56 @@ history_truncate_file (fname, lines)
 
   /* Write only if there are more lines in the file than we want to
      truncate to. */
-  if (bp > buffer && ((file = open (filename, O_WRONLY|O_TRUNC|O_BINARY, 0600)) != -1))
+  if (bp <= buffer)
+    {
+      rv = 0;
+      /* No-op if LINES == 0 at this point */
+      history_lines_written_to_file = orig_lines - lines;
+      goto truncate_exit;
+    }
+
+  tempname = history_tempfile (filename);
+
+  if ((file = open (tempname, O_WRONLY|O_CREAT|O_TRUNC|O_BINARY, 0600)) != -1)
     {
       if (write (file, bp, chars_read - (bp - buffer)) < 0)
        rv = errno;
 
-#if defined (__BEOS__)
-      /* BeOS ignores O_TRUNC. */
-      ftruncate (file, chars_read - (bp - buffer));
-#endif
-
       if (close (file) < 0 && rv == 0)
        rv = errno;
     }
+  else
+    rv = errno;
 
  truncate_exit:
-
   FREE (buffer);
 
+  history_lines_written_to_file = orig_lines - lines;
+
+  if (rv == 0 && filename && tempname)
+    rv = histfile_restore (tempname, filename);
+
+  if (rv != 0)
+    {
+      if (tempname)
+       unlink (tempname);
+      history_lines_written_to_file = 0;
+    }
+
+  /* Make sure the new filename is owned by the same user as the old.  If one
+     user is running this, it's a no-op.  If the shell is running after sudo
+     with a shared history file, we don't want to leave the history file
+     owned by root. */
+  if (rv == 0 && exists)
+    chown (filename, finfo.st_uid, finfo.st_gid);
+
   xfree (filename);
+  FREE (tempname);
+
   return rv;
 }
 
-/* Workhorse function for writing history.  Writes NELEMENT entries
+/* Workhorse function for writing history.  Writes the last NELEMENT entries
    from the history list to FILENAME.  OVERWRITE is non-zero if you
    wish to replace FILENAME with the entries. */
 static int
@@ -440,20 +600,22 @@ history_do_write (filename, nelements, overwrite)
      int nelements, overwrite;
 {
   register int i;
-  char *output, *bakname;
-  int file, mode, rv;
+  char *output, *tempname, *histname;
+  int file, mode, rv, exists;
+  struct stat finfo;
 #ifdef HISTORY_USE_MMAP
   size_t cursize;
 
+  history_lines_written_to_file = 0;
+
   mode = overwrite ? O_RDWR|O_CREAT|O_TRUNC|O_BINARY : O_RDWR|O_APPEND|O_BINARY;
 #else
   mode = overwrite ? O_WRONLY|O_CREAT|O_TRUNC|O_BINARY : O_WRONLY|O_APPEND|O_BINARY;
 #endif
-  output = history_filename (filename);
-  bakname = (overwrite && output) ? history_backupfile (output) : 0;
-
-  if (output && bakname)
-    rename (output, bakname);
+  histname = history_filename (filename);
+  tempname = (overwrite && histname) ? history_tempfile (histname) : 0;
+  output = tempname ? tempname : histname;
+  exists = histname ? (stat (histname, &finfo) == 0) : 0;
 
   file = output ? open (output, mode, 0600) : -1;
   rv = 0;
@@ -461,10 +623,8 @@ history_do_write (filename, nelements, overwrite)
   if (file == -1)
     {
       rv = errno;
-      if (output && bakname)
-        rename (bakname, output);
-      FREE (output);
-      FREE (bakname);
+      FREE (histname);
+      FREE (tempname);
       return (rv);
     }
 
@@ -506,10 +666,10 @@ history_do_write (filename, nelements, overwrite)
 mmap_error:
        rv = errno;
        close (file);
-       if (output && bakname)
-         rename (bakname, output);
-       FREE (output);
-       FREE (bakname);
+       if (tempname)
+         unlink (tempname);
+       FREE (histname);
+       FREE (tempname);
        return rv;
       }
 #else    
@@ -518,10 +678,10 @@ mmap_error:
       {
        rv = errno;
        close (file);
-       if (output && bakname)
-         rename (bakname, output);
-       FREE (output);
-       FREE (bakname);
+       if (tempname)
+         unlink (tempname);
+       FREE (histname);
+       FREE (tempname);
        return rv;
       }
 #endif
@@ -540,7 +700,7 @@ mmap_error:
       }
 
 #ifdef HISTORY_USE_MMAP
-    if (msync (buffer, buffer_size, 0) != 0 || munmap (buffer, buffer_size) != 0)
+    if (msync (buffer, buffer_size, MS_ASYNC) != 0 || munmap (buffer, buffer_size) != 0)
       rv = errno;
 #else
     if (write (file, buffer, buffer_size) < 0)
@@ -549,16 +709,30 @@ mmap_error:
 #endif
   }
 
+  history_lines_written_to_file = nelements;
+
   if (close (file) < 0 && rv == 0)
     rv = errno;
 
-  if (rv != 0 && output && bakname)
-    rename (bakname, output);
-  else if (rv == 0 && bakname)
-    unlink (bakname);
+  if (rv == 0 && histname && tempname)
+    rv = histfile_restore (tempname, histname);
+
+  if (rv != 0)
+    {
+      if (tempname)
+       unlink (tempname);
+      history_lines_written_to_file = 0;
+    }
+
+  /* Make sure the new filename is owned by the same user as the old.  If one
+     user is running this, it's a no-op.  If the shell is running after sudo
+     with a shared history file, we don't want to leave the history file
+     owned by root. */
+  if (rv == 0 && exists)
+    chown (histname, finfo.st_uid, finfo.st_gid);
 
-  FREE (output);
-  FREE (bakname);
+  FREE (histname);
+  FREE (tempname);
 
   return (rv);
 }
index 1181e7ccf83bcb98dc0b801cd25fd3fd584cd555..14696934b843f9d9f7a2be6b6dc01b7c8ea1e1e7 100644 (file)
--- a/history.c
+++ b/history.c
@@ -48,6 +48,9 @@
 
 #include "xmalloc.h"
 
+/* How big to make the_history when we first allocate it. */
+#define DEFAULT_HISTORY_INITIAL_SIZE   502
+
 /* The number of slots to increase the_history by. */
 #define DEFAULT_HISTORY_GROW_SIZE 50
 
@@ -279,9 +282,14 @@ add_history (string)
       if (the_history[0])
        (void) free_history_entry (the_history[0]);
 
-      /* Copy the rest of the entries, moving down one slot. */
+      /* Copy the rest of the entries, moving down one slot.  Copy includes
+        trailing NULL.  */
+#if 0
       for (i = 0; i < history_length; i++)
        the_history[i] = the_history[i + 1];
+#else
+      memmove (the_history, the_history + 1, history_length * sizeof (HIST_ENTRY *));
+#endif
 
       history_base++;
     }
@@ -289,7 +297,10 @@ add_history (string)
     {
       if (history_size == 0)
        {
-         history_size = DEFAULT_HISTORY_GROW_SIZE;
+         if (history_stifled && history_max_entries > 0)
+           history_size = history_max_entries + 2;
+         else
+           history_size = DEFAULT_HISTORY_INITIAL_SIZE;
          the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof (HIST_ENTRY *));
          history_length = 1;
        }
index c8af47e5ad7202332ed254fbbf002e3dee636772..779a573c956005b97440d50596a2887ddf6d0b4a 100644 (file)
--- a/history.h
+++ b/history.h
@@ -241,6 +241,10 @@ extern char **history_tokenize PARAMS((const char *));
 extern int history_base;
 extern int history_length;
 extern int history_max_entries;
+
+extern int history_lines_read_from_file;
+extern int history_lines_written_to_file;
+
 extern char history_expansion_char;
 extern char history_subst_char;
 extern char *history_word_delimiters;
diff --git a/input.c b/input.c
index f3f6d593c59ed017cda98e490e2cbd899584dfdc..bbb39478f94544be28664b24e73b2e820f97352e 100644 (file)
--- a/input.c
+++ b/input.c
@@ -95,6 +95,22 @@ static int ibuffer_space PARAMS((void));
 static int rl_get_char PARAMS((int *));
 static int rl_gather_tyi PARAMS((void));
 
+/* Windows isatty returns true for every character device, including the null
+   device, so we need to perform additional checks. */
+#if defined (_WIN32) && !defined (__CYGWIN__)
+#include <io.h>
+#define WIN32_LEAN_AND_MEAN 1
+#include <windows.h>
+
+int
+win32_isatty (int fd)
+{
+  return (_isatty (fd) ? ((((long) (HANDLE) _get_osfhandle (fd)) & 3) == 3) : 0);
+}
+
+#define isatty(x)      win32_isatty(x)
+#endif
+
 /* **************************************************************** */
 /*                                                                 */
 /*                     Character Input Buffering                   */
@@ -185,6 +201,7 @@ rl_gather_tyi ()
 #endif
 
   chars_avail = 0;
+  input = 0;
   tty = fileno (rl_instream);
 
 #if defined (HAVE_SELECT)
@@ -204,6 +221,8 @@ rl_gather_tyi ()
   result = ioctl (tty, FIONREAD, &chars_avail);
   if (result == -1 && errno == EIO)
     return -1;
+  if (result == -1)
+    chars_avail = 0;
 #endif
 
 #if defined (O_NDELAY)
@@ -474,6 +493,10 @@ rl_getc (stream)
 {
   int result;
   unsigned char c;
+#if defined (HAVE_PSELECT)
+  sigset_t empty_set;
+  fd_set readfds;
+#endif
 
   while (1)
     {
@@ -483,9 +506,17 @@ rl_getc (stream)
 
 #if defined (__MINGW32__)
       if (isatty (fileno (stream)))
-       return (getch ());
+       return (_getch ());     /* "There is no error return." */
+#endif
+      result = 0;
+#if defined (HAVE_PSELECT)
+      sigemptyset (&empty_set);
+      FD_ZERO (&readfds);
+      FD_SET (fileno (stream), &readfds);
+      result = pselect (fileno (stream) + 1, &readfds, NULL, NULL, NULL, &empty_set);
 #endif
-      result = read (fileno (stream), &c, sizeof (unsigned char));
+      if (result >= 0)
+       result = read (fileno (stream), &c, sizeof (unsigned char));
 
       if (result == sizeof (unsigned char))
        return (c);
@@ -524,20 +555,24 @@ rl_getc (stream)
 
 /* fprintf(stderr, "rl_getc: result = %d errno = %d\n", result, errno); */
 
+handle_error:
       /* If the error that we received was EINTR, then try again,
         this is simply an interrupted system call to read ().  We allow
-        the read to be interrupted if we caught SIGHUP or SIGTERM (but
-        not SIGINT; let the signal handler deal with that), but if the
+        the read to be interrupted if we caught SIGHUP, SIGTERM, or any
+        of the other signals readline treats specially. If the
         application sets an event hook, call it for other signals.
         Otherwise (not EINTR), some error occurred, also signifying EOF. */
       if (errno != EINTR)
        return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+      /* fatal signals of interest */
       else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
        return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
       /* keyboard-generated signals of interest */
       else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
         RL_CHECK_SIGNALS ();
       /* non-keyboard-generated signals of interest */
+      else if (_rl_caught_signal == SIGWINCH)
+       RL_CHECK_SIGNALS ();
       else if (_rl_caught_signal == SIGALRM
 #if defined (SIGVTALRM)
                || _rl_caught_signal == SIGVTALRM
index 6f6a7a6583954940aee5e422a6e221c66c5d993a..5bcecc41574642769166e6b54f7e79d32321ebe7 100644 (file)
--- a/isearch.c
+++ b/isearch.c
@@ -66,7 +66,6 @@ static int rl_search_history PARAMS((int, int));
 
 static _rl_search_cxt *_rl_isearch_init PARAMS((int));
 static void _rl_isearch_fini PARAMS((_rl_search_cxt *));
-static int _rl_isearch_cleanup PARAMS((_rl_search_cxt *, int));
 
 /* Last line found by the current incremental search, so we don't `find'
    identical lines many times in a row.  Now part of isearch context. */
@@ -553,8 +552,16 @@ add_character:
         do until we have a real isearch-undo. */
       if (cxt->search_string_index == 0)
        rl_ding ();
-      else
+      else if (MB_CUR_MAX == 1 || rl_byte_oriented)
        cxt->search_string[--cxt->search_string_index] = '\0';
+      else
+       {
+         wstart = _rl_find_prev_mbchar (cxt->search_string, cxt->search_string_index, MB_FIND_NONZERO);
+         if (wstart >= 0)
+           cxt->search_string[cxt->search_string_index = wstart] = '\0';
+         else
+           rl_ding ();
+       }
       break;
 
     case -4:   /* C-G, abort */
@@ -716,7 +723,7 @@ add_character:
   return 1;
 }
 
-static int
+int
 _rl_isearch_cleanup (cxt, r)
      _rl_search_cxt *cxt;
      int r;
diff --git a/kill.c b/kill.c
index 1a78783f9aac29bc5c60b92d2ef6d217bd5ba0c1..166302cfa0d98e4f5a060bf0e097d2116ed4b987 100644 (file)
--- a/kill.c
+++ b/kill.c
@@ -278,7 +278,7 @@ rl_backward_kill_line (direction, ignore)
     return (rl_kill_line (1, ignore));
   else
     {
-      if (!rl_point)
+      if (rl_point == 0)
        rl_ding ();
       else
        {
@@ -506,7 +506,7 @@ rl_yank (count, ignore)
   if (rl_kill_ring == 0)
     {
       _rl_abort_internal ();
-      return -1;
+      return 1;
     }
 
   _rl_set_mark_at_pos (rl_point);
@@ -528,7 +528,7 @@ rl_yank_pop (count, key)
       !rl_kill_ring)
     {
       _rl_abort_internal ();
-      return -1;
+      return 1;
     }
 
   l = strlen (rl_kill_ring[rl_kill_index]);
@@ -546,10 +546,44 @@ rl_yank_pop (count, key)
   else
     {
       _rl_abort_internal ();
-      return -1;
+      return 1;
     }
 }
 
+#if defined (VI_MODE)
+int
+rl_vi_yank_pop (count, key)
+     int count, key;
+{
+  int l, n;
+
+  if (((rl_last_func != rl_vi_yank_pop) && (rl_last_func != rl_vi_put)) ||
+      !rl_kill_ring)
+    {
+      _rl_abort_internal ();
+      return 1;
+    }
+
+  l = strlen (rl_kill_ring[rl_kill_index]);
+  n = rl_point - l;
+  if (n >= 0 && STREQN (rl_line_buffer + n, rl_kill_ring[rl_kill_index], l))
+    {
+      rl_delete_text (n, rl_point);
+      rl_point = n;
+      rl_kill_index--;
+      if (rl_kill_index < 0)
+       rl_kill_index = rl_kill_ring_length - 1;
+      rl_vi_put (1, 'p');
+      return 0;
+    }
+  else
+    {
+      _rl_abort_internal ();
+      return 1;
+    }
+}
+#endif /* VI_MODE */
+
 /* Yank the COUNTh argument from the previous history line, skipping
    HISTORY_SKIP lines before looking for the `previous line'. */
 static int
@@ -575,7 +609,7 @@ rl_yank_nth_arg_internal (count, ignore, history_skip)
   if (entry == 0)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   arg = history_arg_extract (count, count, entry->line);
@@ -583,7 +617,7 @@ rl_yank_nth_arg_internal (count, ignore, history_skip)
     {
       rl_ding ();
       FREE (arg);
-      return -1;
+      return 1;
     }
 
   rl_begin_undo_group ();
@@ -656,8 +690,58 @@ rl_yank_last_arg (count, key)
   return retval;
 }
 
-/* A special paste command for users of Cygnus's cygwin32. */
-#if defined (__CYGWIN__)
+/* Having read the special escape sequence denoting the beginning of a
+   `bracketed paste' sequence, read the rest of the pasted input until the
+   closing sequence and insert the pasted text as a single unit without
+   interpretation. */
+int
+rl_bracketed_paste_begin (count, key)
+     int count, key;
+{
+  int retval, c;
+  size_t len, cap;
+  char *buf;
+
+  retval = 1;
+  len = 0;
+  buf = xmalloc (cap = 64);
+
+  RL_SETSTATE (RL_STATE_MOREINPUT);
+  while ((c = rl_read_key ()) >= 0)
+    {
+      if (RL_ISSTATE (RL_STATE_MACRODEF))
+       _rl_add_macro_char (c);
+
+      if (c == '\r')           /* XXX */
+       c = '\n';
+
+      if (len == cap)
+       buf = xrealloc (buf, cap *= 2);
+
+      buf[len++] = c;
+      if (len >= BRACK_PASTE_SLEN && c == BRACK_PASTE_LAST &&
+         STREQN (buf + len - BRACK_PASTE_SLEN, BRACK_PASTE_SUFF, BRACK_PASTE_SLEN))
+       {
+         len -= BRACK_PASTE_SLEN;
+         break;
+       }
+    }
+  RL_UNSETSTATE (RL_STATE_MOREINPUT);
+
+  if (c >= 0)
+    {
+      if (len == cap)
+       buf = xrealloc (buf, cap + 1);
+      buf[len] = '\0';
+      retval = rl_insert_text (buf);
+    }
+
+  xfree (buf);
+  return (retval);
+}
+
+/* A special paste command for Windows users.. */
+#if defined (_WIN32)
 #include <windows.h>
 
 int
@@ -691,4 +775,4 @@ rl_paste_from_clipboard (count, key)
     }
   return (0);
 }
-#endif /* __CYGWIN__ */
+#endif /* _WIN32 */
diff --git a/macro.c b/macro.c
index b99a1a69fe6920c712f2631b69dfef24f487b6e7..c7017cc6b3dab6303d9278031b557bcfd0862f02 100644 (file)
--- a/macro.c
+++ b/macro.c
@@ -219,7 +219,7 @@ rl_start_kbd_macro (ignore1, ignore2)
   if (RL_ISSTATE (RL_STATE_MACRODEF))
     {
       _rl_abort_internal ();
-      return -1;
+      return 1;
     }
 
   if (rl_explicit_arg)
@@ -244,7 +244,7 @@ rl_end_kbd_macro (count, ignore)
   if (RL_ISSTATE (RL_STATE_MACRODEF) == 0)
     {
       _rl_abort_internal ();
-      return -1;
+      return 1;
     }
 
   current_macro_index -= rl_key_sequence_length;
index 9c9848838fdfd6c38f22a8cace78308b54ac6b42..d77297e6b113e2aa1e5d45fe016528c42410c0db 100644 (file)
--- a/parens.c
+++ b/parens.c
@@ -57,11 +57,7 @@ static int find_matching_open PARAMS((char *, int, int));
 
 /* Non-zero means try to blink the matching open parenthesis when the
    close parenthesis is inserted. */
-#if defined (HAVE_SELECT)
-int rl_blink_matching_paren = 1;
-#else /* !HAVE_SELECT */
 int rl_blink_matching_paren = 0;
-#endif /* !HAVE_SELECT */
 
 static int _paren_blink_usec = 500000;
 
@@ -72,16 +68,32 @@ _rl_enable_paren_matching (on_or_off)
      int on_or_off;
 {
   if (on_or_off)
-    {  /* ([{ */
+    {
+      /* ([{ */
       rl_bind_key_in_map (')', rl_insert_close, emacs_standard_keymap);
       rl_bind_key_in_map (']', rl_insert_close, emacs_standard_keymap);
       rl_bind_key_in_map ('}', rl_insert_close, emacs_standard_keymap);
+
+#if defined (VI_MODE)
+      /* ([{ */
+      rl_bind_key_in_map (')', rl_insert_close, vi_insertion_keymap);
+      rl_bind_key_in_map (']', rl_insert_close, vi_insertion_keymap);
+      rl_bind_key_in_map ('}', rl_insert_close, vi_insertion_keymap);
+#endif
     }
   else
-    {  /* ([{ */
+    {
+      /* ([{ */
       rl_bind_key_in_map (')', rl_insert, emacs_standard_keymap);
       rl_bind_key_in_map (']', rl_insert, emacs_standard_keymap);
       rl_bind_key_in_map ('}', rl_insert, emacs_standard_keymap);
+
+#if defined (VI_MODE)
+      /* ([{ */
+      rl_bind_key_in_map (')', rl_insert, vi_insertion_keymap);
+      rl_bind_key_in_map (']', rl_insert, vi_insertion_keymap);
+      rl_bind_key_in_map ('}', rl_insert, vi_insertion_keymap);
+#endif
     }
 }
 
@@ -117,7 +129,7 @@ rl_insert_close (count, invoking_key)
 
       /* Emacs might message or ring the bell here, but I don't. */
       if (match_point < 0)
-       return -1;
+       return 1;
 
       FD_ZERO (&readfds);
       FD_SET (fileno (rl_instream), &readfds);
index 6c10f126a3ec0693ae873faa07e809054b8f6ece..d8c9df7e6bb19b63a7c7f1c4f192a91529e40699 100644 (file)
@@ -1,3 +1,3 @@
 # Do not edit -- exists only for use by patch
 
-8
+0
index 98cf7185ea1192d16e884aa2355baefc5e332bde..9c7e99ed42f01bb85482e7933a4d8431c9b313cb 100644 (file)
@@ -1,6 +1,6 @@
 /* posixjmp.h -- wrapper for setjmp.h with changes for POSIX systems. */
 
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
+/* Copyright (C) 1987,1991-2015 Free Software Foundation, Inc.
 
    This file is part of GNU Bash, the Bourne Again SHell.
 
 
 #if defined (HAVE_POSIX_SIGSETJMP)
 #  define procenv_t    sigjmp_buf
-#  if !defined (__OPENNT)
-#    undef setjmp
-#    define setjmp(x)  sigsetjmp((x), 1)
-#    define setjmp_nosigs(x)   sigsetjmp((x), 0)
-#    undef longjmp
-#    define longjmp(x, n)      siglongjmp((x), (n))
-#  endif /* !__OPENNT */
+
+#  define setjmp_nosigs(x)     sigsetjmp((x), 0)
+#  define setjmp_sigs(x)       sigsetjmp((x), 1)
+
+#  define _rl_longjmp(x, n)    siglongjmp((x), (n))
+#  define sh_longjmp(x, n)     siglongjmp((x), (n))
 #else
 #  define procenv_t    jmp_buf
-#  define setjmp_nosigs        setjmp
+
+#  define setjmp_nosigs                setjmp
+#  define setjmp_sigs          setjmp
+
+#  define _rl_longjmp(x, n)    longjmp((x), (n))
+#  define sh_longjmp(x, n)     longjmp((x), (n))
 #endif
 
 #endif /* _POSIXJMP_H_ */
index abb29a02843563c4b46c24bf0f45210603d5fa99..146330816dbd08662b8077428b245c1b8215e571 100644 (file)
@@ -94,6 +94,8 @@ static void readline_initialize_everything PARAMS((void));
 static void bind_arrow_keys_internal PARAMS((Keymap));
 static void bind_arrow_keys PARAMS((void));
 
+static void bind_bracketed_paste_prefix PARAMS((void));
+
 static void readline_default_bindings PARAMS((void));
 static void reset_default_bindings PARAMS((void));
 
@@ -306,6 +308,11 @@ int _rl_echo_control_chars = 1;
    the editing mode: @ for emacs, : for vi-command, + for vi-insert. */
 int _rl_show_mode_in_prompt = 0;
 
+/* Non-zero means to attempt to put the terminal in `bracketed paste mode',
+   where it will prefix pasted text with an escape sequence and send
+   another to mark the end of the paste. */
+int _rl_enable_bracketed_paste = 0;
+
 /* **************************************************************** */
 /*                                                                 */
 /*                     Top Level Functions                         */
@@ -525,10 +532,10 @@ readline_internal_charloop ()
   static int lastc, eof_found;
   int c, code, lk;
 
-  lastc = -1;
-  eof_found = 0;
+  lastc = EOF;
 
 #if !defined (READLINE_CALLBACKS)
+  eof_found = 0;
   while (rl_done == 0)
     {
 #endif
@@ -579,15 +586,36 @@ readline_internal_charloop ()
 #endif
        }
 
-      /* EOF typed to a non-blank line is a <NL>.  If we want to change this,
-        to force any existing line to be ignored when read(2) reads EOF,
-        for example, this is the place to change. */
+      /* EOF typed to a non-blank line is ^D the first time, EOF the second
+        time in a row.  This won't return any partial line read from the tty.
+        If we want to change this, to force any existing line to be returned
+        when read(2) reads EOF, for example, this is the place to change. */
       if (c == EOF && rl_end)
-       c = NEWLINE;
+       {
+         if (RL_SIG_RECEIVED ())
+           {
+             RL_CHECK_SIGNALS ();
+             if (rl_signal_event_hook)
+               (*rl_signal_event_hook) ();             /* XXX */
+           }
+
+         /* XXX - reading two consecutive EOFs returns EOF */
+         if (RL_ISSTATE (RL_STATE_TERMPREPPED))
+           {
+             if (lastc == _rl_eof_char || lastc == EOF)
+               rl_end = 0;
+             else
+               c = _rl_eof_char;
+           }
+         else
+           c = NEWLINE;
+       }
 
       /* The character _rl_eof_char typed to blank line, and not as the
-        previous character is interpreted as EOF. */
-      if (((c == _rl_eof_char && lastc != c) || c == EOF) && !rl_end)
+        previous character is interpreted as EOF.  This doesn't work when
+        READLINE_CALLBACKS is defined, so hitting a series of ^Ds will
+        erase all the chars on the line and then return EOF. */
+      if (((c == _rl_eof_char && lastc != c) || c == EOF) && rl_end == 0)
        {
 #if defined (READLINE_CALLBACKS)
          RL_SETSTATE(RL_STATE_DONE);
@@ -947,7 +975,7 @@ _rl_dispatch_subseq (key, map, got_subseq)
        }
       else
        {
-         _rl_abort_internal ();
+         _rl_abort_internal ();        /* XXX */
          return -1;
        }
       break;
@@ -995,11 +1023,13 @@ _rl_subseq_result (r, map, key, got_subseq)
       func = m[ANYOTHERKEY].function;
       if (type == ISFUNC && func == rl_do_lowercase_version)
        r = _rl_dispatch (_rl_to_lower (key), map);
-      else if (type == ISFUNC && func == rl_insert)
+      else if (type == ISFUNC)
        {
-         /* If the function that was shadowed was self-insert, we
-            somehow need a keymap with map[key].func == self-insert.
-            Let's use this one. */
+         /* If we shadowed a function, whatever it is, we somehow need a
+            keymap with map[key].func == shadowed-function.
+            Let's use this one.  Then we can dispatch using the original
+            key, since there are commands (e.g., in vi mode) for which it
+            matters. */
          nt = m[key].type;
          nf = m[key].function;
 
@@ -1010,6 +1040,7 @@ _rl_subseq_result (r, map, key, got_subseq)
          m[key].function = nf;
        }
       else
+       /* We probably shadowed a keymap, so keep going. */
        r = _rl_dispatch (ANYOTHERKEY, m);
     }
   else if (r && map[ANYOTHERKEY].function)
@@ -1179,13 +1210,17 @@ readline_initialize_everything ()
   /* Try to bind a common arrow key prefix, if not already bound. */
   bind_arrow_keys ();
 
+  /* Bind the bracketed paste prefix assuming that the user will enable
+     it on terminals that support it. */
+  bind_bracketed_paste_prefix ();
+
   /* If the completion parser's default word break characters haven't
      been set yet, then do so now. */
   if (rl_completer_word_break_characters == (char *)NULL)
     rl_completer_word_break_characters = (char *)rl_basic_word_break_characters;
 
 #if defined (COLOR_SUPPORT)
-  if (_rl_colored_stats)
+  if (_rl_colored_stats || _rl_colored_completion_prefix)
     _rl_parse_colors ();
 #endif
 
@@ -1289,6 +1324,22 @@ bind_arrow_keys ()
 #endif
 }
 
+static void
+bind_bracketed_paste_prefix ()
+{
+  Keymap xkeymap;
+
+  xkeymap = _rl_keymap;
+
+  _rl_keymap = emacs_standard_keymap;
+  rl_bind_keyseq_if_unbound (BRACK_PASTE_PREF, rl_bracketed_paste_begin);
+  
+  _rl_keymap = vi_insertion_keymap;
+  rl_bind_keyseq_if_unbound (BRACK_PASTE_PREF, rl_bracketed_paste_begin);
+
+  _rl_keymap = xkeymap;
+}
+  
 /* **************************************************************** */
 /*                                                                 */
 /*             Saving and Restoring Readline's state               */
@@ -1317,6 +1368,7 @@ rl_save_state (sp)
   sp->lastfunc = rl_last_func;
   sp->insmode = rl_insert_mode;
   sp->edmode = rl_editing_mode;
+  sp->kseq = rl_executing_keyseq;
   sp->kseqlen = rl_key_sequence_length;
   sp->inf = rl_instream;
   sp->outf = rl_outstream;
@@ -1326,6 +1378,12 @@ rl_save_state (sp)
   sp->catchsigs = rl_catch_signals;
   sp->catchsigwinch = rl_catch_sigwinch;
 
+  sp->entryfunc = rl_completion_entry_function;
+  sp->menuentryfunc = rl_menu_completion_entry_function;
+  sp->ignorefunc = rl_ignore_some_completions_function;
+  sp->attemptfunc = rl_attempted_completion_function;
+  sp->wordbreakchars = rl_completer_word_break_characters;
+
   return (0);
 }
 
@@ -1351,6 +1409,7 @@ rl_restore_state (sp)
   rl_last_func = sp->lastfunc;
   rl_insert_mode = sp->insmode;
   rl_editing_mode = sp->edmode;
+  rl_executing_keyseq = sp->kseq;
   rl_key_sequence_length = sp->kseqlen;
   rl_instream = sp->inf;
   rl_outstream = sp->outf;
@@ -1360,5 +1419,11 @@ rl_restore_state (sp)
   rl_catch_signals = sp->catchsigs;
   rl_catch_sigwinch = sp->catchsigwinch;
 
+  rl_completion_entry_function = sp->entryfunc;
+  rl_menu_completion_entry_function = sp->menuentryfunc;
+  rl_ignore_some_completions_function = sp->ignorefunc;
+  rl_attempted_completion_function = sp->attemptfunc;
+  rl_completer_word_break_characters = sp->wordbreakchars;
+
   return (0);
 }
index 08dcd2bec571d4ba8ee66e5e4676282f623c6eea..cac13d7b90cdf52fe9cea5276df3df4728a1fe68 100644 (file)
@@ -39,9 +39,9 @@ extern "C" {
 #endif
 
 /* Hex-encoded Readline version number. */
-#define RL_READLINE_VERSION    0x0603          /* Readline 6.3 */
-#define RL_VERSION_MAJOR       6
-#define RL_VERSION_MINOR       3
+#define RL_READLINE_VERSION    0x0700          /* Readline 7.0 */
+#define RL_VERSION_MAJOR       7
+#define RL_VERSION_MINOR       0
 
 /* Readline data structures. */
 
@@ -172,8 +172,9 @@ extern int rl_yank PARAMS((int, int));
 extern int rl_yank_pop PARAMS((int, int));
 extern int rl_yank_nth_arg PARAMS((int, int));
 extern int rl_yank_last_arg PARAMS((int, int));
-/* Not available unless __CYGWIN__ is defined. */
-#ifdef __CYGWIN__
+extern int rl_bracketed_paste_begin PARAMS((int, int));
+/* Not available unless _WIN32 is defined. */
+#if defined (_WIN32)
 extern int rl_paste_from_clipboard PARAMS((int, int));
 #endif
 
@@ -219,6 +220,7 @@ extern int rl_insert_close PARAMS((int, int));
 extern void rl_callback_handler_install PARAMS((const char *, rl_vcpfunc_t *));
 extern void rl_callback_read_char PARAMS((void));
 extern void rl_callback_handler_remove PARAMS((void));
+extern void rl_callback_sigcleanup PARAMS((void));
 
 /* Things for vi mode. Not available unless readline is compiled -DVI_MODE. */
 /* VI-mode bindable commands. */
@@ -247,6 +249,7 @@ extern int rl_vi_column PARAMS((int, int));
 extern int rl_vi_delete_to PARAMS((int, int));
 extern int rl_vi_change_to PARAMS((int, int));
 extern int rl_vi_yank_to PARAMS((int, int));
+extern int rl_vi_yank_pop PARAMS((int, int));
 extern int rl_vi_rubout PARAMS((int, int));
 extern int rl_vi_delete PARAMS((int, int));
 extern int rl_vi_back_to_indent PARAMS((int, int));
@@ -389,6 +392,7 @@ extern int rl_show_char PARAMS((int));
 
 /* Undocumented in texinfo manual. */
 extern int rl_character_len PARAMS((int, int));
+extern void rl_redraw_prompt_last_line PARAMS((void));
 
 /* Save and restore internal prompt redisplay information. */
 extern void rl_save_prompt PARAMS((void));
@@ -893,6 +897,7 @@ struct readline_state {
   rl_command_func_t *lastfunc;
   int insmode;
   int edmode;
+  char *kseq;
   int kseqlen;
   FILE *inf;
   FILE *outf;
@@ -906,9 +911,16 @@ struct readline_state {
   /* search state */
 
   /* completion state */
+  rl_compentry_func_t *entryfunc;
+  rl_compentry_func_t *menuentryfunc;
+  rl_compignore_func_t *ignorefunc;
+  rl_completion_func_t *attemptfunc;
+  char *wordbreakchars;
 
   /* options state */
 
+  /* hook state */
+  
   /* reserved for future expansion, so the struct size doesn't change */
   char reserved[64];
 };
diff --git a/readline.pc.in b/readline.pc.in
new file mode 100644 (file)
index 0000000..fbfca8a
--- /dev/null
@@ -0,0 +1,12 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Readline
+Description: Gnu Readline library for command line editing
+URL: http://tiswww.cwru.edu/php/chet/readline/rltop.html
+Version: @LIBVERSION@
+Requires.private: tinfo
+Libs: -L${libdir} -lreadline
+Cflags: -I${includedir}/readline
index 1a40afce029a5b83f98d86b0f09bff95cc50a837..fa528355cf00393890de1f665dd0ecc95eb462d0 100644 (file)
--- a/rlconf.h
+++ b/rlconf.h
    tty auditing system. */
 #define ENABLE_TTY_AUDIT_SUPPORT
 
+/* Defaults for the various editing mode indicators, inserted at the beginning
+   of the last (maybe only) line of the prompt if show-mode-in-prompt is on */
+#define RL_EMACS_MODESTR_DEFAULT       "@"
+#define RL_EMACS_MODESTR_DEFLEN                1
+
+#define RL_VI_INS_MODESTR_DEFAULT      "(ins)"
+#define RL_VI_INS_MODESTR_DEFLEN       5
+#define RL_VI_CMD_MODESTR_DEFAULT      "(cmd)"
+#define RL_VI_CMD_MODESTR_DEFLEN       5
+
 #endif /* _RLCONF_H_ */
index 06d85ab372fbe5d10260430a3ecbbd7afdff4413..f0ecfb44ac3697b0bc39952eb92a31a1158385d4 100644 (file)
@@ -123,13 +123,53 @@ extern int _rl_walphabetic PARAMS((wchar_t));
 #define MB_INVALIDCH(x)                ((x) == (size_t)-1 || (x) == (size_t)-2)
 #define MB_NULLWCH(x)          ((x) == 0)
 
+/* Try and shortcut the printable ascii characters to cut down the number of
+   calls to a libc wcwidth() */
+static inline int
+_rl_wcwidth (wc)
+     wchar_t wc;
+{
+  switch (wc)
+    {
+    case ' ': case '!': case '"': case '#': case '%':
+    case '&': case '\'': case '(': case ')': case '*':
+    case '+': case ',': case '-': case '.': case '/':
+    case '0': case '1': case '2': case '3': case '4':
+    case '5': case '6': case '7': case '8': case '9':
+    case ':': case ';': case '<': case '=': case '>':
+    case '?':
+    case 'A': case 'B': case 'C': case 'D': case 'E':
+    case 'F': case 'G': case 'H': case 'I': case 'J':
+    case 'K': case 'L': case 'M': case 'N': case 'O':
+    case 'P': case 'Q': case 'R': case 'S': case 'T':
+    case 'U': case 'V': case 'W': case 'X': case 'Y':
+    case 'Z':
+    case '[': case '\\': case ']': case '^': case '_':
+    case 'a': case 'b': case 'c': case 'd': case 'e':
+    case 'f': case 'g': case 'h': case 'i': case 'j':
+    case 'k': case 'l': case 'm': case 'n': case 'o':
+    case 'p': case 'q': case 'r': case 's': case 't':
+    case 'u': case 'v': case 'w': case 'x': case 'y':
+    case 'z': case '{': case '|': case '}': case '~':
+      return 1;
+    default:
+      return wcwidth (wc);
+    }
+}
+
 /* Unicode combining characters range from U+0300 to U+036F */
 #define UNICODE_COMBINING_CHAR(x) ((x) >= 768 && (x) <= 879)
 
 #if defined (WCWIDTH_BROKEN)
-#  define WCWIDTH(wc)  ((_rl_utf8locale && UNICODE_COMBINING_CHAR(wc)) ? 0 : wcwidth(wc))
+#  define WCWIDTH(wc)  ((_rl_utf8locale && UNICODE_COMBINING_CHAR(wc)) ? 0 : _rl_wcwidth(wc))
+#else
+#  define WCWIDTH(wc)  _rl_wcwidth(wc)
+#endif
+
+#if defined (WCWIDTH_BROKEN)
+#  define IS_COMBINING_CHAR(x) (WCWIDTH(x) == 0 && iswcntrl(x) == 0)
 #else
-#  define WCWIDTH(wc)  wcwidth(wc)
+#  define IS_COMBINING_CHAR(x) (WCWIDTH(x) == 0)
 #endif
 
 #else /* !HANDLE_MULTIBYTE */
index 14a370d20e22dd91e09969c1507ff480d501bf4e..9b859f995cb7a8d08f2a69c4c5c4f07e7d1f1081 100644 (file)
@@ -44,6 +44,7 @@
 
 #define RL_SIG_RECEIVED() (_rl_caught_signal != 0)
 #define RL_SIGINT_RECEIVED() (_rl_caught_signal == SIGINT)
+#define RL_SIGWINCH_RECEIVED() (_rl_caught_signal == SIGWINCH)
 
 #define CUSTOM_REDISPLAY_FUNC() (rl_redisplay_function != rl_redisplay)
 #define CUSTOM_INPUT_FUNC() (rl_getc_function != rl_getc)
@@ -185,6 +186,7 @@ extern int rl_visible_stats;
 #endif /* VISIBLE_STATS */
 #if defined (COLOR_SUPPORT)
 extern int _rl_colored_stats;
+extern int _rl_colored_completion_prefix;
 #endif
 
 /* readline.c */
@@ -290,9 +292,20 @@ extern void _rl_scxt_dispose PARAMS((_rl_search_cxt *, int));
 
 extern int _rl_isearch_dispatch PARAMS((_rl_search_cxt *, int));
 extern int _rl_isearch_callback PARAMS((_rl_search_cxt *));
+extern int _rl_isearch_cleanup PARAMS((_rl_search_cxt *, int));
 
 extern int _rl_search_getchar PARAMS((_rl_search_cxt *));
 
+/* kill.c */
+#define BRACK_PASTE_PREF       "\033[200~"
+#define BRACK_PASTE_SUFF       "\033[201~"
+
+#define BRACK_PASTE_LAST       '~'
+#define BRACK_PASTE_SLEN       6
+
+#define BRACK_PASTE_INIT       "\033[?2004h"
+#define BRACK_PASTE_FINI       "\033[?2004l"
+
 /* macro.c */
 extern void _rl_with_macro_input PARAMS((char *));
 extern int _rl_next_macro_key PARAMS((void));
@@ -334,6 +347,7 @@ extern int _rl_restore_tty_signals PARAMS((void));
 
 /* search.c */
 extern int _rl_nsearch_callback PARAMS((_rl_search_cxt *));
+extern int _rl_nsearch_cleanup PARAMS((_rl_search_cxt *, int));
 
 /* signals.c */
 extern void _rl_signal_handler PARAMS((int));
@@ -410,6 +424,7 @@ extern void _rl_vi_initialize_line PARAMS((void));
 extern void _rl_vi_reset_last PARAMS((void));
 extern void _rl_vi_set_last PARAMS((int, int, int));
 extern int _rl_vi_textmod_command PARAMS((int));
+extern int _rl_vi_motion_command PARAMS((int));
 extern void _rl_vi_done_inserting PARAMS((void));
 extern int _rl_vi_domove_callback PARAMS((_rl_vimotion_cxt *));
 
@@ -446,6 +461,13 @@ extern int _rl_last_c_pos;
 extern int _rl_suppress_redisplay;
 extern int _rl_want_redisplay;
 
+extern char *_rl_emacs_mode_str;
+extern int _rl_emacs_modestr_len;
+extern char *_rl_vi_ins_mode_str;
+extern int _rl_vi_ins_modestr_len;
+extern char *_rl_vi_cmd_mode_str;
+extern int _rl_vi_cmd_modestr_len;
+
 /* isearch.c */
 extern char *_rl_isearch_terminators;
 
@@ -475,6 +497,7 @@ extern int _rl_bind_stty_chars;
 extern int _rl_revert_all_at_newline;
 extern int _rl_echo_control_chars;
 extern int _rl_show_mode_in_prompt;
+extern int _rl_enable_bracketed_paste;
 extern char *_rl_comment_begin;
 extern unsigned char _rl_parsing_conditionalized_out;
 extern Keymap _rl_keymap;
@@ -524,6 +547,9 @@ extern int _rl_screenchars;
 extern int _rl_terminal_can_insert;
 extern int _rl_term_autowrap;
 
+/* text.c */
+extern int _rl_optimize_typeahead;
+
 /* undo.c */
 extern int _rl_doing_an_undo;
 extern int _rl_undo_group_level;
diff --git a/rltty.c b/rltty.c
index 908bae18c249809870984ffba88dfc7c65aded8a..3aff804993df6fe18b363286f748cd7c2ffc1ff5 100644 (file)
--- a/rltty.c
+++ b/rltty.c
@@ -4,7 +4,7 @@
 /* Copyright (C) 1992-2005 Free Software Foundation, Inc.
 
    This file is part of the GNU Readline Library (Readline), a library
-   for reading lines of text with interactive input and history editing.      
+   for reading lines of text with interactive input and history editing.
 
    Readline is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 #include "rldefs.h"
 
-#if defined (GWINSZ_IN_SYS_IOCTL)
-#  include <sys/ioctl.h>
-#endif /* GWINSZ_IN_SYS_IOCTL */
-
 #include "rltty.h"
+#if defined (HAVE_SYS_IOCTL_H)
+#  include <sys/ioctl.h>               /* include for declaration of ioctl */
+#endif
+
 #include "readline.h"
 #include "rlprivate.h"
 
@@ -60,7 +60,13 @@ static void set_winsize PARAMS((int));
 /*                                                                 */
 /* **************************************************************** */
 
-/* Non-zero means that the terminal is in a prepped state. */
+/* Non-zero means that the terminal is in a prepped state.  There are several
+   flags that are OR'd in to denote whether or not we have sent various
+   init strings to the terminal. */
+#define TPX_PREPPED    0x01
+#define TPX_BRACKPASTE 0x02
+#define TPX_METAKEY    0x04
+
 static int terminal_prepped;
 
 static _RL_TTY_CHARS _rl_tty_chars, _rl_last_tty_chars;
@@ -595,7 +601,7 @@ void
 rl_prep_terminal (meta_flag)
      int meta_flag;
 {
-  int tty;
+  int tty, nprep;
   TIOTYPE tio;
 
   if (terminal_prepped)
@@ -642,7 +648,7 @@ rl_prep_terminal (meta_flag)
       /* If editing in vi mode, make sure we set the bindings in the
         insertion keymap no matter what keymap we ended up in. */
       if (rl_editing_mode == vi_mode)
-       _rl_bind_tty_special_chars (vi_insertion_keymap, tio);  
+       _rl_bind_tty_special_chars (vi_insertion_keymap, tio);
       else
 #endif
        _rl_bind_tty_special_chars (_rl_keymap, tio);
@@ -659,8 +665,16 @@ rl_prep_terminal (meta_flag)
   if (_rl_enable_keypad)
     _rl_control_keypad (1);
 
+  nprep = TPX_PREPPED;
+
+  if (_rl_enable_bracketed_paste)
+    {
+      fprintf (rl_outstream, BRACK_PASTE_INIT);
+      nprep |= TPX_BRACKPASTE;
+    }
+
   fflush (rl_outstream);
-  terminal_prepped = 1;
+  terminal_prepped = nprep;
   RL_SETSTATE(RL_STATE_TERMPREPPED);
 
   _rl_release_sigint ();
@@ -672,7 +686,7 @@ rl_deprep_terminal ()
 {
   int tty;
 
-  if (!terminal_prepped)
+  if (terminal_prepped == 0)
     return;
 
   /* Try to keep this function from being interrupted. */
@@ -680,6 +694,9 @@ rl_deprep_terminal ()
 
   tty = rl_instream ? fileno (rl_instream) : fileno (stdin);
 
+  if (terminal_prepped & TPX_BRACKPASTE)
+    fprintf (rl_outstream, BRACK_PASTE_FINI);
+
   if (_rl_enable_keypad)
     _rl_control_keypad (0);
 
index 028c2505261aa23f2a604c9c4834f2d9f9002b07..c9bc6b1c3261a2284ff98fd9e14263bb4fbbe2b7 100644 (file)
--- a/search.c
+++ b/search.c
@@ -80,7 +80,6 @@ static int rl_history_search_internal PARAMS((int, int));
 static void rl_history_search_reinit PARAMS((int));
 
 static _rl_search_cxt *_rl_nsearch_init PARAMS((int, int));
-static int _rl_nsearch_cleanup PARAMS((_rl_search_cxt *, int));
 static void _rl_nsearch_abort PARAMS((_rl_search_cxt *));
 static int _rl_nsearch_dispatch PARAMS((_rl_search_cxt *, int));
 
@@ -224,7 +223,7 @@ _rl_nsearch_init (dir, pchar)
   return cxt;
 }
 
-static int
+int
 _rl_nsearch_cleanup (cxt, r)
      _rl_search_cxt *cxt;
      int r;
@@ -411,7 +410,7 @@ rl_noninc_forward_search_again (count, key)
   if (!noninc_search_string)
     {
       rl_ding ();
-      return (-1);
+      return (1);
     }
   r = noninc_dosearch (noninc_search_string, 1);
   return (r != 1);
@@ -428,7 +427,7 @@ rl_noninc_reverse_search_again (count, key)
   if (!noninc_search_string)
     {
       rl_ding ();
-      return (-1);
+      return (1);
     }
   r = noninc_dosearch (noninc_search_string, -1);
   return (r != 1);
index eb16211de0f86b5571f0678cf4df72af7e3e362b..8626eb2d95dce43f8c1a5638712e850b52148ce2 100644 (file)
@@ -107,7 +107,7 @@ SHLIB_MINOR=                .@SHLIB_MINOR@
 # For libraries which include headers from other libraries.
 INCLUDES = -I. -I.. -I$(topdir)
 
-CCFLAGS = $(DEFS) $(LOCAL_DEFS) $(CPPFLAGS) $(INCLUDES) $(LOCAL_CFLAGS) $(CFLAGS)
+CCFLAGS = $(DEFS) $(LOCAL_DEFS) $(INCLUDES) $(CPPFLAGS) $(LOCAL_CFLAGS) $(CFLAGS)
 
 .SUFFIXES:     .so
 
@@ -229,7 +229,8 @@ bind.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h $(topdir)/rlconf.h
 bind.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
 bind.so: $(topdir)/rltypedefs.h
 bind.so: $(topdir)/tilde.h $(topdir)/history.h
-compat.so: $(topdir)/rlstdc.h
+compat.so: ${BUILD_DIR}/config.h
+compat.so: $(topdir)/rlstdc.h $(topdir)/rltypedefs.h
 callback.so: $(topdir)/rlconf.h
 callback.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h
 callback.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
@@ -303,6 +304,7 @@ rltty.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h $(topdir)/rlconf.h
 rltty.so: $(topdir)/rltty.h $(topdir)/tilde.h
 rltty.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
 rltty.so: $(topdir)/rltypedefs.h
+savestring.so: ${BUILD_DIR}/config.h
 search.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h $(topdir)/rlconf.h
 search.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
 search.so: $(topdir)/ansi_stdlib.h $(topdir)/history.h $(topdir)/tilde.h
@@ -377,7 +379,7 @@ terminal.so: $(topdir)/rlprivate.h
 text.so: $(topdir)/rlprivate.h
 undo.so: $(topdir)/rlprivate.h
 util.so: $(topdir)/rlprivate.h
-vi_mode.so: $(topdir)/
+vi_mode.so: $(topdir)/rlprivate.h
 colors.so: $(topdir)/rlprivate.h
 parse-colors.so: $(topdir)/rlprivate.h
 
index 61f02f9f77603f5b01694b844087664f6f7f1d5f..61430459ce75181c3e15e48bfc53058f874d504b 100644 (file)
--- a/signals.c
+++ b/signals.c
@@ -213,15 +213,29 @@ _rl_handle_signal (sig)
     case SIGINT:
       _rl_reset_completion_state ();
       rl_free_line_state ();
+#if defined (READLINE_CALLBACKS)
+      rl_callback_sigcleanup ();
+#endif
+
       /* FALLTHROUGH */
 
-    case SIGTERM:
-    case SIGHUP:
 #if defined (SIGTSTP)
     case SIGTSTP:
-    case SIGTTOU:
     case SIGTTIN:
+#  if defined (HAVE_POSIX_SIGNALS)
+      /* Block SIGTTOU so we can restore the terminal settings to something
+        sane without stopping on SIGTTOU if we have been placed into the
+        background.  Even trying to get the current terminal pgrp with
+        tcgetpgrp() will generate SIGTTOU, so we don't bother.  Don't bother
+        doing this if we've been stopped on SIGTTOU; it's aready too late. */
+      sigemptyset (&set);
+      sigaddset (&set, SIGTTOU);
+      sigprocmask (SIG_BLOCK, &set, (sigset_t *)NULL);
+#  endif
+    case SIGTTOU:
 #endif /* SIGTSTP */
+    case SIGTERM:
+    case SIGHUP:
 #if defined (SIGALRM)
     case SIGALRM:
 #endif
@@ -232,6 +246,10 @@ _rl_handle_signal (sig)
       rl_cleanup_after_signal ();
 
 #if defined (HAVE_POSIX_SIGNALS)
+      /* Unblock SIGTTOU blocked above */
+      if (sig == SIGTTIN || sig == SIGTSTP)
+       sigprocmask (SIG_UNBLOCK, &set, (sigset_t *)NULL);
+
       sigemptyset (&set);
       sigprocmask (SIG_BLOCK, (sigset_t *)NULL, &set);
       sigdelset (&set, sig);
diff --git a/tcap.h b/tcap.h
index 9d09b7a9cfcd7f4bb8401cf7ca429ec2514e2c15..dbc1789a8cbe65102f85ca7692884e914e82219f 100644 (file)
--- a/tcap.h
+++ b/tcap.h
@@ -31,6 +31,8 @@
 #    include "rltty.h"
 #  endif
 #  include <termcap.h>
+#elif defined (HAVE_NCURSES_TERMCAP_H)
+#  include <ncurses/termcap.h>
 #else
 
 /* On Solaris2, sys/types.h #includes sys/reg.h, which #defines PC.
index 1212ec469a50521ff7905ec8d4ae29f7d6291c4f..495b87a840506c811b4870f0165eca006b6aa9e7 100644 (file)
 /* System-specific feature definitions and include files. */
 #include "rldefs.h"
 
-#if defined (GWINSZ_IN_SYS_IOCTL) && !defined (TIOCGWINSZ)
-#  include <sys/ioctl.h>
-#endif /* GWINSZ_IN_SYS_IOCTL && !TIOCGWINSZ */
-
 #ifdef __MSDOS__
 #  include <pc.h>
 #endif
 
 #include "rltty.h"
+#if defined (HAVE_SYS_IOCTL_H)
+#  include <sys/ioctl.h>               /* include for declaration of ioctl */
+#endif
 #include "tcap.h"
 
 /* Some standard library routines. */
diff --git a/text.c b/text.c
index f29adf8101c1d53ab8d4e813cab3eff442f784c8..f2bb22466c5ae3732f5d8f3e42730afc76216fd1 100644 (file)
--- a/text.c
+++ b/text.c
@@ -71,6 +71,8 @@ static int _rl_char_search_callback PARAMS((_rl_callback_generic_arg *));
    rl_insert_text.  Text blocks larger than this are divided. */
 #define TEXT_COUNT_MAX 1024
 
+int _rl_optimize_typeahead = 1;        /* rl_insert tries to read typeahead */
+
 /* **************************************************************** */
 /*                                                                 */
 /*                     Insert and Delete                           */
@@ -890,8 +892,42 @@ int
 rl_insert (count, c)
      int count, c;
 {
-  return (rl_insert_mode == RL_IM_INSERT ? _rl_insert_char (count, c)
-                                        : _rl_overwrite_char (count, c));
+  int r, n, x;
+
+  r = (rl_insert_mode == RL_IM_INSERT) ? _rl_insert_char (count, c) : _rl_overwrite_char (count, c);
+
+  /* XXX -- attempt to batch-insert pending input that maps to self-insert */
+  x = 0;
+  n = (unsigned short)-2;
+  while (_rl_optimize_typeahead &&
+        (RL_ISSTATE (RL_STATE_INPUTPENDING|RL_STATE_MACROINPUT) == 0) &&
+        _rl_pushed_input_available () == 0 &&
+        _rl_input_queued (0) &&
+        (n = rl_read_key ()) > 0 &&
+        _rl_keymap[(unsigned char)n].type == ISFUNC &&
+        _rl_keymap[(unsigned char)n].function == rl_insert)
+    {
+      r = (rl_insert_mode == RL_IM_INSERT) ? _rl_insert_char (1, n) : _rl_overwrite_char (1, n);
+      /* _rl_insert_char keeps its own set of pending characters to compose a
+        complete multibyte character, and only returns 1 if it sees a character
+        that's part of a multibyte character but too short to complete one.  We
+        can try to read another character in the hopes that we will get the
+        next one or just punt.  Right now we try to read another character.
+        We don't want to call rl_insert_next if _rl_insert_char has already
+        stored the character in the pending_bytes array because that will
+        result in doubled input. */
+      n = (unsigned short)-2;
+      x++;             /* count of bytes of typeahead read, currently unused */
+      if (r == 1)      /* read partial multibyte character */
+       continue;
+      if (rl_done || r != 0)
+       break;
+    }
+
+  if (n != (unsigned short)-2)         /* -2 = sentinel value for having inserted N */
+    r = rl_execute_next (n);
+
+  return r;
 }
 
 /* Insert the next typed character verbatim. */
@@ -906,7 +942,7 @@ _rl_insert_next (count)
   RL_UNSETSTATE(RL_STATE_MOREINPUT);
 
   if (c < 0)
-    return -1;
+    return 1;
 
   if (RL_ISSTATE (RL_STATE_MACRODEF))
     _rl_add_macro_char (c);
@@ -1066,7 +1102,7 @@ rl_rubout (count, key)
   if (!rl_point)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   if (rl_insert_mode == RL_IM_OVERWRITE)
@@ -1089,7 +1125,7 @@ _rl_rubout_char (count, key)
   if (rl_point == 0)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   orig_point = rl_point;
@@ -1103,7 +1139,7 @@ _rl_rubout_char (count, key)
       c = rl_line_buffer[--rl_point];
       rl_delete_text (rl_point, orig_point);
       /* The erase-at-end-of-line hack is of questionable merit now. */
-      if (rl_point == rl_end && ISPRINT (c) && _rl_last_c_pos)
+      if (rl_point == rl_end && ISPRINT ((unsigned char)c) && _rl_last_c_pos)
        {
          int l;
          l = rl_character_len (c, rl_point);
@@ -1133,7 +1169,7 @@ rl_delete (count, key)
   if (rl_point == rl_end)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   if (count > 1 || rl_explicit_arg)
@@ -1303,7 +1339,7 @@ rl_change_case (count, op)
   if (op != UpCase && op != DownCase && op != CapCase)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   if (count < 0)
@@ -1337,7 +1373,7 @@ rl_change_case (count, op)
        }
       else
        nop = op;
-      if (MB_CUR_MAX == 1 || rl_byte_oriented || isascii (c))
+      if (MB_CUR_MAX == 1 || rl_byte_oriented || isascii ((unsigned char)c))
        {
          nc = (nop == UpCase) ? _rl_to_upper (c) : _rl_to_lower (c);
          rl_line_buffer[start] = nc;
@@ -1403,7 +1439,7 @@ rl_transpose_words (count, key)
     {
       rl_ding ();
       rl_point = orig_point;
-      return -1;
+      return 1;
     }
 
   /* Get the text of the words. */
@@ -1456,7 +1492,7 @@ rl_transpose_chars (count, key)
   if (!rl_point || rl_end < 2)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   rl_begin_undo_group ();
@@ -1519,7 +1555,7 @@ _rl_char_search_internal (count, dir, schar)
 #endif
 
   if (dir == 0)
-    return -1;
+    return 1;
 
   pos = rl_point;
   inc = (dir < 0) ? -1 : 1;
@@ -1528,7 +1564,7 @@ _rl_char_search_internal (count, dir, schar)
       if ((dir < 0 && pos <= 0) || (dir > 0 && pos >= rl_end))
        {
          rl_ding ();
-         return -1;
+         return 1;
        }
 
 #if defined (HANDLE_MULTIBYTE)
@@ -1583,7 +1619,7 @@ _rl_char_search (count, fdir, bdir)
   mb_len = _rl_read_mbchar (mbchar, MB_LEN_MAX);
 
   if (mb_len <= 0)
-    return -1;
+    return 1;
 
   if (count < 0)
     return (_rl_char_search_internal (-count, bdir, mbchar, mb_len));
@@ -1602,7 +1638,7 @@ _rl_char_search (count, fdir, bdir)
   RL_UNSETSTATE(RL_STATE_MOREINPUT);
 
   if (c < 0)
-    return -1;
+    return 1;
 
   if (count < 0)
     return (_rl_char_search_internal (-count, bdir, c));
@@ -1671,7 +1707,7 @@ _rl_set_mark_at_pos (position)
      int position;
 {
   if (position > rl_end)
-    return -1;
+    return 1;
 
   rl_mark = position;
   return 0;
@@ -1696,7 +1732,7 @@ rl_exchange_point_and_mark (count, key)
   if (rl_mark == -1)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
   else
     SWAP (rl_point, rl_mark);
diff --git a/tilde.c b/tilde.c
index 1c53a457d46ba17e3215f65476e3771a129de8e0..3788eba628a8ee863e4b1a600b6125be3f1ddff5 100644 (file)
--- a/tilde.c
+++ b/tilde.c
@@ -360,6 +360,10 @@ tilde_expand_word (filename)
     {
       /* Prefix $HOME to the rest of the string. */
       expansion = sh_get_env_value ("HOME");
+#if defined (_WIN32)
+      if (expansion == 0)
+       expansion = sh_get_env_value ("APPDATA");
+#endif
 
       /* If there is no HOME variable, look up the directory in
         the password database. */
diff --git a/util.c b/util.c
index 58b55e276d824fd9c766cc061455a9ea8566e5c8..e75e25567ee61ab1e85e735135dbed1de4ea16ca 100644 (file)
--- a/util.c
+++ b/util.c
@@ -55,6 +55,7 @@
 
 #include "rlprivate.h"
 #include "xmalloc.h"
+#include "rlshell.h"
 
 /* **************************************************************** */
 /*                                                                 */
@@ -107,12 +108,11 @@ _rl_abort_internal ()
   while (rl_executing_macro)
     _rl_pop_executing_macro ();
 
+  RL_UNSETSTATE (RL_STATE_MULTIKEY);   /* XXX */
+
   rl_last_func = (rl_command_func_t *)NULL;
-#if defined (HAVE_POSIX_SIGSETJMP)
-  siglongjmp (_rl_top_level, 1);
-#else
-  longjmp (_rl_top_level, 1);
-#endif
+
+  _rl_longjmp (_rl_top_level, 1);
   return (0);
 }
 
@@ -512,11 +512,18 @@ _rl_trace (va_alist)
 int
 _rl_tropen ()
 {
-  char fnbuf[128];
+  char fnbuf[128], *x;
 
   if (_rl_tracefp)
     fclose (_rl_tracefp);
-  sprintf (fnbuf, "/var/tmp/rltrace.%ld", (long)getpid());
+#if defined (_WIN32) && !defined (__CYGWIN__)
+  x = sh_get_env_value ("TEMP");
+  if (x == 0)
+    x = ".";
+#else
+  x = "/var/tmp";
+#endif
+  sprintf (fnbuf, "%s/rltrace.%ld", x, (long)getpid());
   unlink(fnbuf);
   _rl_tracefp = fopen (fnbuf, "w+");
   return _rl_tracefp != 0;
index 0864192e3f4d5322d67c5fffee820a2012208658..cae80cac8c407191b3382b4e8065987bfa581b3a 100644 (file)
--- a/vi_mode.c
+++ b/vi_mode.c
@@ -192,6 +192,13 @@ _rl_vi_textmod_command (c)
   return (member (c, vi_textmod));
 }
 
+int
+_rl_vi_motion_command (c)
+     int c;
+{
+  return (member (c, vi_motion));
+}
+
 static void
 _rl_vi_replace_insert (count)
      int count;
@@ -464,7 +471,7 @@ rl_vi_end_word (count, key)
   if (count < 0)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   if (_rl_uppercase_p (key))
@@ -1534,7 +1541,7 @@ rl_vi_rubout (count, key)
   if (rl_point == 0)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   opoint = rl_point;
@@ -1565,7 +1572,7 @@ rl_vi_delete (count, key)
   if (rl_end == 0)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
@@ -1650,13 +1657,13 @@ rl_vi_char_search (count, key)
   if (key == ';' || key == ',')
     {
       if (_rl_cs_orig_dir == 0)
-       return -1;
+       return 1;
 #if defined (HANDLE_MULTIBYTE)
       if (_rl_vi_last_search_mblen == 0)
-       return -1;
+       return 1;
 #else
       if (_rl_vi_last_search_char == 0)
-       return -1;
+       return 1;
 #endif
       _rl_cs_dir = (key == ';') ? _rl_cs_orig_dir : -_rl_cs_orig_dir;
     }
@@ -1755,7 +1762,7 @@ rl_vi_match (ignore, key)
        {
          rl_point = pos;
          rl_ding ();
-         return -1;
+         return 1;
        }
     }
 
@@ -1785,7 +1792,7 @@ rl_vi_match (ignore, key)
          else
            {
              rl_ding ();
-             return -1;
+             return 1;
            }
        }
     }
@@ -1809,7 +1816,7 @@ rl_vi_match (ignore, key)
          else
            {
              rl_ding ();
-             return -1;
+             return 1;
            }
        }
     }
@@ -2083,7 +2090,7 @@ _rl_vi_set_mark ()
   if (ch < 0 || ch < 'a' || ch > 'z')  /* make test against 0 explicit */
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
   ch -= 'a';
   vi_mark_chars[ch] = rl_point;
@@ -2135,14 +2142,14 @@ _rl_vi_goto_mark ()
   else if (ch < 0 || ch < 'a' || ch > 'z')     /* make test against 0 explicit */
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
 
   ch -= 'a';
   if (vi_mark_chars[ch] == -1)
     {
       rl_ding ();
-      return -1;
+      return 1;
     }
   rl_point = vi_mark_chars[ch];
   return 0;