summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChet Ramey <chet.ramey@case.edu>2022-04-13 11:39:17 -0400
committerChet Ramey <chet.ramey@case.edu>2022-04-13 11:39:17 -0400
commitcf7f8ca5779284e422aa1fd297d8ca96cf792b69 (patch)
tree611385e7a6015c4eff5d57a7c75de2514a2b2521
parent21294bbcf2dde0eca5ab978fe4707eaa03000525 (diff)
downloadreadline-cf7f8ca5779284e422aa1fd297d8ca96cf792b69.tar.gz
readline-8.2-beta releasereadline-8.2-beta
-rw-r--r--CHANGELOG8
-rw-r--r--CHANGES27
-rw-r--r--CHANGES-8.2104
-rw-r--r--INSTALL42
-rw-r--r--NEWS18
-rw-r--r--NEWS-8.251
-rw-r--r--aclocal.m43
-rw-r--r--bind.c18
-rw-r--r--callback.c8
-rw-r--r--complete.c2
-rw-r--r--configure31
-rw-r--r--configure.ac18
-rw-r--r--display.c18
-rw-r--r--doc/Makefile.in11
-rw-r--r--doc/history.dvibin72252 -> 72256 bytes
-rw-r--r--doc/history.html3033
-rw-r--r--doc/history.info52
-rw-r--r--doc/history.pdfbin204488 -> 204492 bytes
-rw-r--r--doc/history.ps44
-rw-r--r--doc/history.texi2
-rw-r--r--doc/hstech.texi2
-rw-r--r--doc/hsuser.texi2
-rw-r--r--doc/readline.080
-rw-r--r--doc/readline.340
-rw-r--r--doc/readline.dvibin323600 -> 332440 bytes
-rw-r--r--doc/readline.html10355
-rw-r--r--doc/readline.info462
-rw-r--r--doc/readline.pdfbin398680 -> 405951 bytes
-rw-r--r--doc/readline.ps5668
-rw-r--r--doc/readline_3.ps1943
-rw-r--r--doc/rlman.texi2
-rw-r--r--doc/rltech.texi24
-rw-r--r--doc/rluser.texi42
-rw-r--r--doc/rluserman.dvibin114812 -> 118316 bytes
-rw-r--r--doc/rluserman.html4181
-rw-r--r--doc/rluserman.info123
-rw-r--r--doc/rluserman.pdfbin232909 -> 236784 bytes
-rw-r--r--doc/rluserman.ps3547
-rw-r--r--doc/rluserman.texi2
-rw-r--r--doc/version.texi13
-rw-r--r--histfile.c2
-rw-r--r--histlib.h3
-rw-r--r--history.c7
-rw-r--r--history.h4
-rw-r--r--histsearch.c2
-rw-r--r--isearch.c4
-rw-r--r--misc.c6
-rw-r--r--nls.c3
-rw-r--r--readline.c31
-rw-r--r--readline.h13
-rw-r--r--rlprivate.h11
-rw-r--r--rltty.c6
-rw-r--r--search.c72
-rw-r--r--terminal.c87
54 files changed, 14233 insertions, 15994 deletions
diff --git a/CHANGELOG b/CHANGELOG
index a18c96d..c025bcd 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1440,3 +1440,11 @@ history.pc.in
configure.ac,MANIFEST,Makefile.in
- support for creating history.pc
+
+ 3/29/2022
+ ---------
+configure.ac
+ - new option: --with-shared-termcap-library: use to force the shared
+ readline library to be linked against a shared termcap/curses library
+ that configure finds. If the argument begins with `-l', use that
+ library instead; updated INSTALL accordingly
diff --git a/CHANGES b/CHANGES
index dbba486..19afc53 100644
--- a/CHANGES
+++ b/CHANGES
@@ -45,6 +45,15 @@ m. Fixed a problem with line wrapping prompts when a group of invisible
n. Fixed a couple problems that could cause rl_end to be set incorrectly by
transpose-words.
+o. Prevent some display problems when running a command as the result of a
+ trap or one bound using `bind -x' and the command generates output.
+
+p. Fixed an issue with multi-line prompt strings that have one or more
+ invisible characters at the end of a physical line.
+
+q. Fixed an issue that caused a history line's undo list to be cleared when
+ it should not have been.
+
2. New Features in Readline
a. There is now an HS_HISTORY_VERSION containing the version number of the
@@ -77,13 +86,23 @@ g. There is a new option: `enable-active-region'. This separates control of
h. rl_completer_word_break_characters is now `const char *' like
rl_basic_word_break_characters.
-i. The non-incremental history searches now leave the current history offset
- at the position of the last matching history entry, like incremental search.
-
-j. Readline looks in $LS_COLORS for a custom filename extension
+i. Readline looks in $LS_COLORS for a custom filename extension
(*.readline-colored-completion-prefix) and uses that as the default color
for the common prefix displayed when `colored-completion-prefix' is set.
+j. Two new bindable string variables: active-region-start-color and
+ active-region-end-color. The first sets the color used to display the
+ active region; the second turns it off. If set, these are used in place
+ of terminal standout mode.
+
+k. New readline state (RL_STATE_EOF) and application-visible variable
+ (rl_eof_found) to allow applications to detect when readline reads EOF
+ before calling the deprep-terminal hook.
+
+l. There is a new configuration option: --with-shared-termcap-library, which
+ forces linking the shared readline library with the shared termcap (or
+ curses/ncurses/termlib) library so applications don't have to do it.
+
-------------------------------------------------------------------------------
This document details the changes between this version, readline-8.1, and
the previous version, readline-8.0.
diff --git a/CHANGES-8.2 b/CHANGES-8.2
new file mode 100644
index 0000000..cace80a
--- /dev/null
+++ b/CHANGES-8.2
@@ -0,0 +1,104 @@
+This document details the changes between this version, readline-8.2, and
+the previous version, readline-8.1.
+
+1. Changes to Readline
+
+a. Fixed a problem with cleaning up active marks when using callback mode.
+
+b. Fixed a problem with arithmetic comparison operators checking the version.
+
+c. Fixed a problem that could cause readline not to build on systems without
+ POSIX signal functions.
+
+d. Fixed a bug that could cause readline to crash if the application removed
+ the callback line handler before readline read all typeahead.
+
+e. Added additional checks for read errors in the middle of readline commands.
+
+f. Fixed a redisplay problem that occurred when switching from the digit-
+ argument prompt `(arg: N)' back to the regular prompt and the regular
+ prompt contained invisible characters.
+
+g. Fixed a problem with restoring the prompt when aborting an incremental
+ search.
+
+h. Fix a problem with characters > 128 not being displayed correctly in certain
+ single-byte encodings.
+
+i. Fixed a problem with unix-filename-rubout that caused it to delete too much
+ when applied to a pathname consisting only of one or more slashes.
+
+j. Fixed a display problem that caused the prompt to be wrapped incorrectly if
+ the screen changed dimensions during a call to readline() and the prompt
+ became longer than the screen width.
+
+k. Fixed a problem that caused the \r output by turning off bracketed paste
+ to overwrite the line if terminal echo was disabled.
+
+l. Fixed a bug that could cause colored-completion-prefix to not display if
+ completion-prefix-display-length was set.
+
+m. Fixed a problem with line wrapping prompts when a group of invisible
+ characters runs to the right edge of the screen and the prompt extends
+ longer then the screen width.
+
+n. Fixed a couple problems that could cause rl_end to be set incorrectly by
+ transpose-words.
+
+o. Prevent some display problems when running a command as the result of a
+ trap or one bound using `bind -x' and the command generates output.
+
+p. Fixed an issue with multi-line prompt strings that have one or more
+ invisible characters at the end of a physical line.
+
+q. Fixed an issue that caused a history line's undo list to be cleared when
+ it should not have been.
+
+2. New Features in Readline
+
+a. There is now an HS_HISTORY_VERSION containing the version number of the
+ history library for applications to use.
+
+b. History expansion better understands multiple history expansions that may
+ contain strings that would ordinarily inhibit history expansion (e.g.,
+ `abc!$!$').
+
+c. There is a new framework for readline timeouts, including new public
+ functions to set timeouts and query how much time is remaining before a
+ timeout hits, and a hook function that can trigger when readline times
+ out. There is a new state value to indicate a timeout.
+
+d. Automatically bind termcap key sequences for page-up and page-down to
+ history-search-backward and history-search-forward, respectively.
+
+e. There is a new `fetch-history' bindable command that retrieves the history
+ entry corresponding to its numeric argument. Negative arguments count back
+ from the end of the history.
+
+f. `vi-undo' is now a bindable command.
+
+g. There is a new option: `enable-active-region'. This separates control of
+ the active region and bracketed-paste. It has the same default value as
+ bracketed-paste, and enabling bracketed paste enables the active region.
+ Users can now turn off the active region while leaving bracketed paste
+ enabled.
+
+h. rl_completer_word_break_characters is now `const char *' like
+ rl_basic_word_break_characters.
+
+i. Readline looks in $LS_COLORS for a custom filename extension
+ (*.readline-colored-completion-prefix) and uses that as the default color
+ for the common prefix displayed when `colored-completion-prefix' is set.
+
+j. Two new bindable string variables: active-region-start-color and
+ active-region-end-color. The first sets the color used to display the
+ active region; the second turns it off. If set, these are used in place
+ of terminal standout mode.
+
+k. New readline state (RL_STATE_EOF) and application-visible variable
+ (rl_eof_found) to allow applications to detect when readline reads EOF
+ before calling the deprep-terminal hook.
+
+l. There is a new configuration option: --with-shared-termcap-library, which
+ forces linking the shared readline library with the shared termcap (or
+ curses/ncurses/termlib) library so applications don't have to do it.
diff --git a/INSTALL b/INSTALL
index 73960ee..293ef70 100644
--- a/INSTALL
+++ b/INSTALL
@@ -164,18 +164,40 @@ operates.
Optional Features
=================
-The readline `configure' recognizes a single `--with-PACKAGE' option:
+The readline `configure' recognizes two `--with-PACKAGE' options:
`--with-curses'
This tells readline that it can find the termcap library functions
(tgetent, et al.) in the curses library, rather than a separate
termcap library. Readline uses the termcap functions, but does not
- link with the termcap or curses library itself, allowing applications
- which link with readline the to choose an appropriate library.
- This option tells readline to link the example programs with the
- curses library rather than libtermcap.
+ usually link with the termcap or curses library itself, allowing
+ applications which link with readline the to choose an appropriate
+ library. This option tells readline to link the example programs with
+ the curses library rather than libtermcap.
+
+`--with-shared-termcap-library'
+ This tells the readline build process to link the shared version of
+ libreadline against a shared version of the curses or termcap library
+ (see the description of SHLIB_LIBS below under `Shared Libraries').
+ This relieves the application of having to link with curses or termcap
+ itself, but does not allow the application to choose which library to
+ use. This is only effective on systems that build shared libraries (see
+ below; the default for shared libraries is `yes').
+
+`configure' also recognizes several `--enable-FEATURE' options:
-`configure' also recognizes two `--enable-FEATURE' options:
+`--enable-bracketed-paste-default'
+ Enable bracketed paste by default, so the initial value of the
+ `enable-bracketed-paste' Readline variable is `on'. The default
+ is `yes'.
+
+`--enable-install-examples'
+ Install the readline example programs as part of `make install'.
+
+`--enable-multibyte'
+ Build with support for multibyte characters enabled on systems with the
+ necessary framework (locale definitions, C library functions, etc.). The
+ default is `yes'.
`--enable-shared'
Build the shared libraries by default on supported platforms. The
@@ -184,11 +206,6 @@ The readline `configure' recognizes a single `--with-PACKAGE' option:
`--enable-static'
Build the static libraries by default. The default is `yes'.
-`--enable-bracketed-paste-default'
- Enable bracketed paste by default, so the initial value of the
- `enable-bracketed-paste' Readline variable is `on'. The default
- is `yes'.
-
Shared Libraries
================
@@ -199,7 +216,8 @@ shared versions of the readline and history libraries to be built
on supported platforms.
If `configure' is given the `--enable-shared' option, it will attempt
-to build the shared libraries by default on supported platforms.
+to build the shared libraries by default on supported platforms. This
+option is enabled by default.
Configure calls the script support/shobj-conf to test whether or
not shared library creation is supported and to generate the values
diff --git a/NEWS b/NEWS
index 1b289ae..a8e06f8 100644
--- a/NEWS
+++ b/NEWS
@@ -33,13 +33,23 @@ g. There is a new option: `enable-active-region'. This separates control of
h. rl_completer_word_break_characters is now `const char *' like
rl_basic_word_break_characters.
-i. The non-incremental history searches now leave the current history offset
- at the position of the last matching history entry, like incremental search.
-
-j. Readline looks in $LS_COLORS for a custom filename extension
+i. Readline looks in $LS_COLORS for a custom filename extension
(*.readline-colored-completion-prefix) and uses that as the default color
for the common prefix displayed when `colored-completion-prefix' is set.
+j. Two new bindable string variables: active-region-start-color and
+ active-region-end-color. The first sets the color used to display the
+ active region; the second turns it off. If set, these are used in place
+ of terminal standout mode.
+
+k. New readline state (RL_STATE_EOF) and application-visible variable
+ (rl_eof_found) to allow applications to detect when readline reads EOF
+ before calling the deprep-terminal hook.
+
+l. There is a new configuration option: --with-shared-termcap-library, which
+ forces linking the shared readline library with the shared termcap (or
+ curses/ncurses/termlib) library so applications don't have to do it.
+
-------------------------------------------------------------------------------
This is a terse description of the new features added to readline-8.1 since
the release of readline-8.0.
diff --git a/NEWS-8.2 b/NEWS-8.2
new file mode 100644
index 0000000..234ec91
--- /dev/null
+++ b/NEWS-8.2
@@ -0,0 +1,51 @@
+This is a terse description of the new features added to readline-8.2 since
+the release of readline-8.1.
+
+New Features in Readline
+
+a. There is now an HS_HISTORY_VERSION containing the version number of the
+ history library for applications to use.
+
+b. History expansion better understands multiple history expansions that may
+ contain strings that would ordinarily inhibit history expansion (e.g.,
+ `abc!$!$').
+
+c. There is a new framework for readline timeouts, including new public
+ functions to set timeouts and query how much time is remaining before a
+ timeout hits, and a hook function that can trigger when readline times
+ out. There is a new state value to indicate a timeout.
+
+d. Automatically bind termcap key sequences for page-up and page-down to
+ history-search-backward and history-search-forward, respectively.
+
+e. There is a new `fetch-history' bindable command that retrieves the history
+ entry corresponding to its numeric argument. Negative arguments count back
+ from the end of the history.
+
+f. `vi-undo' is now a bindable command.
+
+g. There is a new option: `enable-active-region'. This separates control of
+ the active region and bracketed-paste. It has the same default value as
+ bracketed-paste, and enabling bracketed paste enables the active region.
+ Users can now turn off the active region while leaving bracketed paste
+ enabled.
+
+h. rl_completer_word_break_characters is now `const char *' like
+ rl_basic_word_break_characters.
+
+i. Readline looks in $LS_COLORS for a custom filename extension
+ (*.readline-colored-completion-prefix) and uses that as the default color
+ for the common prefix displayed when `colored-completion-prefix' is set.
+
+j. Two new bindable string variables: active-region-start-color and
+ active-region-end-color. The first sets the color used to display the
+ active region; the second turns it off. If set, these are used in place
+ of terminal standout mode.
+
+k. New readline state (RL_STATE_EOF) and application-visible variable
+ (rl_eof_found) to allow applications to detect when readline reads EOF
+ before calling the deprep-terminal hook.
+
+l. There is a new configuration option: --with-shared-termcap-library, which
+ forces linking the shared readline library with the shared termcap (or
+ curses/ncurses/termlib) library so applications don't have to do it.
diff --git a/aclocal.m4 b/aclocal.m4
index 15d9143..cc97bd4 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -990,7 +990,8 @@ elif test $bash_cv_termcap_lib = libc; then
TERMCAP_LIB=
TERMCAP_DEP=
else
-TERMCAP_LIB=-lcurses
+# we assume ncurses is installed somewhere the linker can find it
+TERMCAP_LIB=-lncurses
TERMCAP_DEP=
fi
])
diff --git a/bind.c b/bind.c
index b8a5deb..971116a 100644
--- a/bind.c
+++ b/bind.c
@@ -1,6 +1,6 @@
/* bind.c -- key binding and startup file support for the readline library. */
-/* Copyright (C) 1987-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2022 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.
@@ -1983,6 +1983,8 @@ typedef int _rl_sv_func_t (const char *);
#define V_INT 2
/* Forward declarations */
+static int sv_region_start_color (const char *);
+static int sv_region_end_color (const char *);
static int sv_bell_style (const char *);
static int sv_combegin (const char *);
static int sv_dispprefix (const char *);
@@ -2002,6 +2004,8 @@ static const struct {
int flags;
_rl_sv_func_t *set_func;
} string_varlist[] = {
+ { "active-region-end-color", V_STRING, sv_region_end_color },
+ { "active-region-start-color", V_STRING, sv_region_start_color },
{ "bell-style", V_STRING, sv_bell_style },
{ "comment-begin", V_STRING, sv_combegin },
{ "completion-display-width", V_INT, sv_compwidth },
@@ -2221,6 +2225,18 @@ sv_seqtimeout (const char *value)
}
static int
+sv_region_start_color (const char *value)
+{
+ return (_rl_reset_region_color (0, value));
+}
+
+static int
+sv_region_end_color (const char *value)
+{
+ return (_rl_reset_region_color (1, value));
+}
+
+static int
sv_bell_style (const char *value)
{
if (value == 0 || *value == '\0')
diff --git a/callback.c b/callback.c
index cfff650..1a3235f 100644
--- a/callback.c
+++ b/callback.c
@@ -1,6 +1,6 @@
/* callback.c -- functions to use readline as an X `callback' mechanism. */
-/* Copyright (C) 1987-2017 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2022 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.
@@ -136,6 +136,8 @@ rl_callback_read_char (void)
abort ();
}
+ eof = 0;
+
memcpy ((void *)olevel, (void *)_rl_top_level, sizeof (procenv_t));
#if defined (HAVE_POSIX_SIGSETJMP)
jcode = sigsetjmp (_rl_top_level, 0);
@@ -276,6 +278,10 @@ rl_callback_read_char (void)
_rl_want_redisplay = 0;
}
+ /* Make sure application hooks can see whether we saw EOF. */
+ if (rl_eof_found = eof)
+ RL_SETSTATE(RL_STATE_EOF);
+
if (rl_done)
{
line = readline_internal_teardown (eof);
diff --git a/complete.c b/complete.c
index 1e4dfa3..e5d224e 100644
--- a/complete.c
+++ b/complete.c
@@ -1981,7 +1981,7 @@ compare_match (char *text, const char *match)
{
temp = (*rl_filename_dequoting_function) (text, rl_completion_quote_character);
r = strcmp (temp, match);
- free (temp);
+ xfree (temp);
return r;
}
return (strcmp (text, match));
diff --git a/configure b/configure
index 9e36204..2e8cf11 100644
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.ac for Readline 8.2, version 2.95.
+# From configure.ac for Readline 8.2, version 2.96.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for readline 8.2.
#
@@ -752,6 +752,7 @@ ac_subst_files=''
ac_user_opts='
enable_option_checking
with_curses
+with_shared_termcap_library
enable_multibyte
enable_shared
enable_static
@@ -1405,6 +1406,9 @@ Optional Packages:
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-curses use the curses library instead of the termcap
library
+ --enable-shared-termcap-library
+ link the readline shared library against the
+ termcap/curses shared library [[default=NO]]
Some influential environment variables:
CC C compiler command
@@ -2986,6 +2990,7 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
opt_curses=no
+opt_shared_termcap_lib=no
# Check whether --with-curses was given.
@@ -2995,6 +3000,13 @@ then :
fi
+# Check whether --with-shared-termcap-library was given.
+if test ${with_shared_termcap_library+y}
+then :
+ withval=$with_shared_termcap_library; opt_shared_termcap_lib=$withval
+fi
+
+
if test "$opt_curses" = "yes"; then
prefer_curses=yes
fi
@@ -7297,7 +7309,8 @@ elif test $bash_cv_termcap_lib = libc; then
TERMCAP_LIB=
TERMCAP_DEP=
else
-TERMCAP_LIB=-lcurses
+# we assume ncurses is installed somewhere the linker can find it
+TERMCAP_LIB=-lncurses
TERMCAP_DEP=
fi
@@ -7318,6 +7331,10 @@ then :
fi
fi
+case "$opt_shared_termcap_lib" in
+[Yy][Ee][Ss]) SHARED_TERMCAP="$TERMCAP_LIB" ;;
+-l*) SHARED_TERMCAP="$opt_shared_termcap_lib" ;;
+esac
case "$TERMCAP_LIB" in
-ltinfo) TERMCAP_PKG_CONFIG_LIB=tinfo ;;
@@ -7810,10 +7827,12 @@ if test -f ${srcdir}/support/shobj-conf; then
printf %s "checking configuration for building shared libraries... " >&6; }
eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
-# case "$SHLIB_LIBS" in
-# *curses*|*termcap*|*termlib*) ;;
-# *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;;
-# esac
+ # SHARED_TERMCAP is set only if opt_shared_termcap_library is set
+ case "$SHLIB_LIBS" in
+ *curses*|*tinfo*) ;;
+ *termcap*|*termlib*) ;; # common aliases
+ *) SHLIB_LIBS="$SHLIB_LIBS $SHARED_TERMCAP" ;;
+ esac
diff --git a/configure.ac b/configure.ac
index 720cd10..0a83d5b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,7 +20,7 @@ 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 8.2, version 2.95])
+AC_REVISION([for Readline 8.2, version 2.96])
AC_INIT(readline, 8.2, bug-readline@gnu.org)
@@ -39,9 +39,11 @@ AC_CANONICAL_BUILD
dnl configure defaults
opt_curses=no
+opt_shared_termcap_lib=no
dnl arguments to configure
AC_ARG_WITH(curses, AS_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
+AC_ARG_WITH(shared-termcap-library, AS_HELP_STRING([--enable-shared-termcap-library], [link the readline shared library against the termcap/curses shared library [[default=NO]]]), opt_shared_termcap_lib=$withval)
if test "$opt_curses" = "yes"; then
prefer_curses=yes
@@ -210,6 +212,10 @@ fi
if test "$TERMCAP_LIB" = "-lncurses"; then
AC_CHECK_HEADERS(ncurses/termcap.h)
fi
+case "$opt_shared_termcap_lib" in
+[[Yy]][[Ee]][[Ss]]) SHARED_TERMCAP="$TERMCAP_LIB" ;;
+-l*) SHARED_TERMCAP="$opt_shared_termcap_lib" ;;
+esac
case "$TERMCAP_LIB" in
-ltinfo) TERMCAP_PKG_CONFIG_LIB=tinfo ;;
@@ -240,10 +246,12 @@ if test -f ${srcdir}/support/shobj-conf; then
AC_MSG_CHECKING(configuration for building shared libraries)
eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
-# case "$SHLIB_LIBS" in
-# *curses*|*termcap*|*termlib*) ;;
-# *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;;
-# esac
+ # SHARED_TERMCAP is set only if opt_shared_termcap_library is set
+ case "$SHLIB_LIBS" in
+ *curses*|*tinfo*) ;;
+ *termcap*|*termlib*) ;; # common aliases
+ *) SHLIB_LIBS="$SHLIB_LIBS $SHARED_TERMCAP" ;;
+ esac
AC_SUBST(SHOBJ_CC)
AC_SUBST(SHOBJ_CFLAGS)
diff --git a/display.c b/display.c
index e38bfce..c1135ec 100644
--- a/display.c
+++ b/display.c
@@ -1,6 +1,6 @@
/* display.c -- readline redisplay facility. */
-/* Copyright (C) 1987-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2022 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.
@@ -439,7 +439,15 @@ expand_prompt (char *pmt, int flags, int *lp, int *lip, int *niflp, int *vlp)
to add them, since update_line expects them to be counted before
wrapping the line. */
if (can_add_invis)
- local_prompt_newlines[newlines] = r - ret;
+ {
+ local_prompt_newlines[newlines] = r - ret;
+ /* If we're adding to the number of invisible characters on the
+ first line of the prompt, but we've already set the number of
+ invisible characters on that line, we need to adjust the
+ counter. */
+ if (invflset && newlines == 1)
+ invfl = ninvis;
+ }
if (p != (igstart + 1))
last = r - ret - 1;
continue;
@@ -528,7 +536,7 @@ expand_prompt (char *pmt, int flags, int *lp, int *lip, int *niflp, int *vlp)
*vlp = physchars;
if (nprompt != pmt)
- free (nprompt);
+ xfree (nprompt);
return ret;
}
@@ -1595,9 +1603,9 @@ putc_face (int c, int face, char *cur_face)
if (face != FACE_NORMAL && face != FACE_STANDOUT)
return;
if (face == FACE_STANDOUT && cf == FACE_NORMAL)
- _rl_standout_on ();
+ _rl_region_color_on ();
if (face == FACE_NORMAL && cf == FACE_STANDOUT)
- _rl_standout_off ();
+ _rl_region_color_off ();
*cur_face = face;
}
if (c != EOF)
diff --git a/doc/Makefile.in b/doc/Makefile.in
index a38bc9e..20a3618 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -154,15 +154,16 @@ history.ps: history.dvi
# This leaves readline.html and rlman.html -- rlman.html is for www.gnu.org
#
readline.html: ${RLSRC}
- $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rlman.texi
- sed -e 's:rlman.html:readline.html:g' rlman.html > readline.html
- $(RM) rlman.html
+ $(MAKEINFO) -o $@ --html --no-split -I$(TEXINPUTDIR) $(srcdir)/rlman.texi
+
+rlman.html: ${RLSRC}
+ $(MAKEINFO) -o $@ --html --no-split -I$(TEXINPUTDIR) $(srcdir)/rlman.texi
rluserman.html: ${RLSRC}
- $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rluserman.texi
+ $(MAKEINFO) --html --no-split -I$(TEXINPUTDIR) $(srcdir)/rluserman.texi
history.html: ${HISTSRC}
- $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/history.texi
+ $(MAKEINFO) --html --no-split -I$(TEXINPUTDIR) $(srcdir)/history.texi
readline.0: readline.3
diff --git a/doc/history.dvi b/doc/history.dvi
index 9734c24..c3435a1 100644
--- a/doc/history.dvi
+++ b/doc/history.dvi
Binary files differ
diff --git a/doc/history.html b/doc/history.html
index 3110cf3..28b5fd0 100644
--- a/doc/history.html
+++ b/doc/history.html
@@ -1,124 +1,172 @@
-<HTML>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on October, 30 2020 by texi2html 1.64 -->
-<!--
-Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
- Karl Berry <karl@freefriends.org>
- Olaf Bachmann <obachman@mathematik.uni-kl.de>
- and many others.
-Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
-
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Created by GNU Texinfo 6.8, https://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<!-- This document describes the GNU History library
+(version 8.2, 11 March 2022),
+a programming tool that provides a consistent user interface for
+recalling lines of previously typed input.
+
+Copyright (C) 1988-2022 Free Software Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+"GNU Free Documentation License".
+ -->
+<title>GNU History Library</title>
+
+<meta name="description" content="GNU History Library">
+<meta name="keywords" content="GNU History Library">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="#Top" rel="start" title="Top">
+<link href="#Concept-Index" rel="index" title="Concept Index">
+<link href="#SEC_Contents" rel="contents" title="Table of Contents">
+<link href="#Using-History-Interactively" rel="next" title="Using History Interactively">
+<style type="text/css">
+<!--
+a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em}
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+span:hover a.copiable-anchor {visibility: visible}
+ul.no-bullet {list-style: none}
-->
-<HEAD>
-<TITLE>GNU History Library: </TITLE>
+</style>
-<META NAME="description" CONTENT="GNU History Library: ">
-<META NAME="keywords" CONTENT="GNU History Library: ">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="texi2html 1.64">
-</HEAD>
+</head>
-<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
+<body lang="en">
+<h1 class="settitle" align="center">GNU History Library</h1>
-<A NAME="SEC_Top"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>GNU History Library</H1></P><P>
-This document describes the GNU History library, a programming tool that
+
+
+
+
+
+
+
+<div class="top" id="Top">
+<div class="header">
+<p>
+Next: <a href="#Using-History-Interactively" accesskey="n" rel="next">Using History Interactively</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="GNU-History-Library"></span><h1 class="top">GNU History Library</h1>
+
+<p>This document describes the GNU History library, a programming tool that
provides a consistent user interface for recalling lines of previously
typed input.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC1">1. Using History Interactively</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU History User's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC6">2. Programming with GNU History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU History Programmer's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC19">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC21">B. Concept Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of concepts described in this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC22">C. Function and Variable Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of externally visible functions
- and variables.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<HR SIZE=1>
-<A NAME="SEC1"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<A NAME="Using History Interactively"></A>
-<H1> 1. Using History Interactively </H1>
-<!--docid::SEC1::-->
-<P>
-
-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,
-see section <A HREF="history.html#SEC6">2. Programming with GNU History</A>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC2">1.1 History Expansion</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">What it feels like using History as a user.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="History Interaction"></A>
-<HR SIZE="6">
-<A NAME="SEC2"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC1"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC3"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.1 History Expansion </H2>
-<!--docid::SEC2::-->
-<P>
-
-The History library provides a history expansion feature that is similar
-to the history expansion provided by <CODE>csh</CODE>. This section
+</p>
+
+
+
+<div class="Contents_element" id="SEC_Contents">
+<h2 class="contents-heading">Table of Contents</h2>
+
+<div class="contents">
+
+<ul class="no-bullet">
+ <li><a id="toc-Using-History-Interactively-1" href="#Using-History-Interactively">1 Using History Interactively</a>
+ <ul class="no-bullet">
+ <li><a id="toc-History-Expansion-1" href="#History-Interaction">1.1 History Expansion</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Event-Designators-1" href="#Event-Designators">1.1.1 Event Designators</a></li>
+ <li><a id="toc-Word-Designators-1" href="#Word-Designators">1.1.2 Word Designators</a></li>
+ <li><a id="toc-Modifiers-1" href="#Modifiers">1.1.3 Modifiers</a></li>
+ </ul></li>
+ </ul></li>
+ <li><a id="toc-Programming-with-GNU-History-1" href="#Programming-with-GNU-History">2 Programming with GNU History</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Introduction-to-History-1" href="#Introduction-to-History">2.1 Introduction to History</a></li>
+ <li><a id="toc-History-Storage-1" href="#History-Storage">2.2 History Storage</a></li>
+ <li><a id="toc-History-Functions-1" href="#History-Functions">2.3 History Functions</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Initializing-History-and-State-Management-1" href="#Initializing-History-and-State-Management">2.3.1 Initializing History and State Management</a></li>
+ <li><a id="toc-History-List-Management-1" href="#History-List-Management">2.3.2 History List Management</a></li>
+ <li><a id="toc-Information-About-the-History-List-1" href="#Information-About-the-History-List">2.3.3 Information About the History List</a></li>
+ <li><a id="toc-Moving-Around-the-History-List-1" href="#Moving-Around-the-History-List">2.3.4 Moving Around the History List</a></li>
+ <li><a id="toc-Searching-the-History-List-1" href="#Searching-the-History-List">2.3.5 Searching the History List</a></li>
+ <li><a id="toc-Managing-the-History-File-1" href="#Managing-the-History-File">2.3.6 Managing the History File</a></li>
+ <li><a id="toc-History-Expansion-2" href="#History-Expansion">2.3.7 History Expansion</a></li>
+ </ul></li>
+ <li><a id="toc-History-Variables-1" href="#History-Variables">2.4 History Variables</a></li>
+ <li><a id="toc-History-Programming-Example-1" href="#History-Programming-Example">2.5 History Programming Example</a></li>
+ </ul></li>
+ <li><a id="toc-GNU-Free-Documentation-License-1" href="#GNU-Free-Documentation-License">Appendix A GNU Free Documentation License</a></li>
+ <li><a id="toc-Concept-Index-1" href="#Concept-Index" rel="index">Appendix B Concept Index</a></li>
+ <li><a id="toc-Function-and-Variable-Index-1" href="#Function-and-Variable-Index" rel="index">Appendix C Function and Variable Index</a></li>
+</ul>
+</div>
+</div>
+<hr>
+<div class="chapter" id="Using-History-Interactively">
+<div class="header">
+<p>
+Next: <a href="#Programming-with-GNU-History" accesskey="n" rel="next">Programming with GNU History</a>, Previous: <a href="#Top" accesskey="p" rel="prev">GNU History Library</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU History Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Using-History-Interactively-1"></span><h2 class="chapter">1 Using History Interactively</h2>
+
+
+<p>This chapter describes how to use the <small>GNU</small> History Library interactively,
+from a user&rsquo;s standpoint. It should be considered a user&rsquo;s guide. For
+information on using the <small>GNU</small> History Library in your own programs,
+see <a href="#Programming-with-GNU-History">Programming with GNU History</a>.
+</p>
+
+
+<ul class="section-toc">
+<li><a href="#History-Interaction" accesskey="1">History Expansion</a></li>
+</ul>
+<hr>
+<div class="section" id="History-Interaction">
+<div class="header">
+<p>
+Up: <a href="#Using-History-Interactively" accesskey="u" rel="up">Using History Interactively</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-Expansion-1"></span><h3 class="section">1.1 History Expansion</h3>
+<span id="index-history-expansion"></span>
+
+<p>The History library provides a history expansion feature that is similar
+to the history expansion provided by <code>csh</code>. This section
describes the syntax used to manipulate the history information.
-</P><P>
-
-History expansions introduce words from the history list into
+</p>
+<p>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 previous commands quickly.
-</P><P>
+</p>
-History expansion takes place in two parts. The first is to determine
+<p>History expansion takes place in two parts. The first is to 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
-<EM>event</EM>, and the portions of that line that are acted upon are
-called <EM>words</EM>. Various <EM>modifiers</EM> are available to manipulate
+<em>event</em>, and the portions of that line that are acted upon are
+called <em>words</em>. Various <em>modifiers</em> 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 <SAMP>`!'</SAMP> by default.
-</P><P>
-
-History expansion implements shell-like quoting conventions:
+history expansion character, which is &lsquo;<samp>!</samp>&rsquo; by default.
+</p>
+<p>History expansion implements shell-like quoting conventions:
a backslash can be used to remove the special handling for the next character;
single quotes enclose verbatim sequences of characters, and can be used to
inhibit history expansion;
@@ -126,396 +174,326 @@ and characters enclosed within double quotes may be subject to history
expansion, since backslash can escape the history expansion character,
but single quotes may not, since they are not treated specially within
double quotes.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC3">1.1.1 Event Designators</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to specify which history line to use.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC4">1.1.2 Word Designators</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Specifying which words are of interest.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC5">1.1.3 Modifiers</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Modifying the results of substitution.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Event Designators"></A>
-<HR SIZE="6">
-<A NAME="SEC3"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC4"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.1.1 Event Designators </H3>
-<!--docid::SEC3::-->
-<P>
-
-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.
-<A NAME="IDX1"></A>
-</P><P>
-
-<DL COMPACT>
+</p>
-<DT><CODE>!</CODE>
-<DD>Start a history substitution, except when followed by a space, tab,
-the end of the line, or <SAMP>`='</SAMP>.
-<P>
-<DT><CODE>!<VAR>n</VAR></CODE>
-<DD>Refer to command line <VAR>n</VAR>.
-<P>
-<DT><CODE>!-<VAR>n</VAR></CODE>
-<DD>Refer to the command <VAR>n</VAR> lines back.
-<P>
+<ul class="section-toc">
+<li><a href="#Event-Designators" accesskey="1">Event Designators</a></li>
+<li><a href="#Word-Designators" accesskey="2">Word Designators</a></li>
+<li><a href="#Modifiers" accesskey="3">Modifiers</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Event-Designators">
+<div class="header">
+<p>
+Next: <a href="#Word-Designators" accesskey="n" rel="next">Word Designators</a>, Up: <a href="#History-Interaction" accesskey="u" rel="up">History Expansion</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Event-Designators-1"></span><h4 class="subsection">1.1.1 Event Designators</h4>
+<span id="index-event-designators"></span>
-<DT><CODE>!!</CODE>
-<DD>Refer to the previous command. This is a synonym for <SAMP>`!-1'</SAMP>.
-<P>
-
-<DT><CODE>!<VAR>string</VAR></CODE>
-<DD>Refer to the most recent command
+<p>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.
+<span id="index-history-events"></span>
+</p>
+<dl compact="compact">
+<dt><span><code>!</code></span></dt>
+<dd><p>Start a history substitution, except when followed by a space, tab,
+the end of the line, or &lsquo;<samp>=</samp>&rsquo;.
+</p>
+</dd>
+<dt><span><code>!<var>n</var></code></span></dt>
+<dd><p>Refer to command line <var>n</var>.
+</p>
+</dd>
+<dt><span><code>!-<var>n</var></code></span></dt>
+<dd><p>Refer to the command <var>n</var> lines back.
+</p>
+</dd>
+<dt><span><code>!!</code></span></dt>
+<dd><p>Refer to the previous command. This is a synonym for &lsquo;<samp>!-1</samp>&rsquo;.
+</p>
+</dd>
+<dt><span><code>!<var>string</var></code></span></dt>
+<dd><p>Refer to the most recent command
preceding the current position in the history list
-starting with <VAR>string</VAR>.
-<P>
-
-<DT><CODE>!?<VAR>string</VAR>[?]</CODE>
-<DD>Refer to the most recent command
+starting with <var>string</var>.
+</p>
+</dd>
+<dt><span><code>!?<var>string</var>[?]</code></span></dt>
+<dd><p>Refer to the most recent command
preceding the current position in the history list
-containing <VAR>string</VAR>.
+containing <var>string</var>.
The trailing
-<SAMP>`?'</SAMP> may be omitted if the <VAR>string</VAR> is followed immediately by
+&lsquo;<samp>?</samp>&rsquo; may be omitted if the <var>string</var> is followed immediately by
a newline.
-If <VAR>string</VAR> is missing, the string from the most recent search is used;
+If <var>string</var> is missing, the string from the most recent search is used;
it is an error if there is no previous search string.
-<P>
-
-<DT><CODE>^<VAR>string1</VAR>^<VAR>string2</VAR>^</CODE>
-<DD>Quick Substitution. Repeat the last command, replacing <VAR>string1</VAR>
-with <VAR>string2</VAR>. Equivalent to
-<CODE>!!:s^<VAR>string1</VAR>^<VAR>string2</VAR>^</CODE>.
-<P>
-
-<DT><CODE>!#</CODE>
-<DD>The entire command line typed so far.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Word Designators"></A>
-<HR SIZE="6">
-<A NAME="SEC4"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC3"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC5"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC5"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.1.2 Word Designators </H3>
-<!--docid::SEC4::-->
-<P>
-
-Word designators are used to select desired words from the event.
-A <SAMP>`:'</SAMP> separates the event specification from the word designator. It
-may be omitted if the word designator begins with a <SAMP>`^'</SAMP>, <SAMP>`$'</SAMP>,
-<SAMP>`*'</SAMP>, <SAMP>`-'</SAMP>, or <SAMP>`%'</SAMP>. Words are numbered from the beginning
+</p>
+</dd>
+<dt><span><code>^<var>string1</var>^<var>string2</var>^</code></span></dt>
+<dd><p>Quick Substitution. Repeat the last command, replacing <var>string1</var>
+with <var>string2</var>. Equivalent to
+<code>!!:s^<var>string1</var>^<var>string2</var>^</code>.
+</p>
+</dd>
+<dt><span><code>!#</code></span></dt>
+<dd><p>The entire command line typed so far.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Word-Designators">
+<div class="header">
+<p>
+Next: <a href="#Modifiers" accesskey="n" rel="next">Modifiers</a>, Previous: <a href="#Event-Designators" accesskey="p" rel="prev">Event Designators</a>, Up: <a href="#History-Interaction" accesskey="u" rel="up">History Expansion</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Word-Designators-1"></span><h4 class="subsection">1.1.2 Word Designators</h4>
+
+<p>Word designators are used to select desired words from the event.
+A &lsquo;<samp>:</samp>&rsquo; separates the event specification from the word designator. It
+may be omitted if the word designator begins with a &lsquo;<samp>^</samp>&rsquo;, &lsquo;<samp>$</samp>&rsquo;,
+&lsquo;<samp>*</samp>&rsquo;, &lsquo;<samp>-</samp>&rsquo;, or &lsquo;<samp>%</samp>&rsquo;. 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.
-</P><P>
-
-For example,
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>!!</CODE>
-<DD>designates the preceding command. When you type this, the preceding
+</p>
+<p>For example,
+</p>
+<dl compact="compact">
+<dt><span><code>!!</code></span></dt>
+<dd><p>designates the preceding command. When you type this, the preceding
command is repeated in toto.
-<P>
-
-<DT><CODE>!!:$</CODE>
-<DD>designates the last argument of the preceding command. This may be
-shortened to <CODE>!$</CODE>.
-<P>
-
-<DT><CODE>!fi:2</CODE>
-<DD>designates the second argument of the most recent command starting with
-the letters <CODE>fi</CODE>.
-</DL>
-<P>
-
-Here are the word designators:
-
-<DL COMPACT>
-
-<DT><CODE>0 (zero)</CODE>
-<DD>The <CODE>0</CODE>th word. For many applications, this is the command word.
-<P>
-
-<DT><CODE><VAR>n</VAR></CODE>
-<DD>The <VAR>n</VAR>th word.
-<P>
-
-<DT><CODE>^</CODE>
-<DD>The first argument; that is, word 1.
-<P>
-
-<DT><CODE>$</CODE>
-<DD>The last argument.
-<P>
-
-<DT><CODE>%</CODE>
-<DD>The first word matched by the most recent <SAMP>`?<VAR>string</VAR>?'</SAMP> search,
+</p>
+</dd>
+<dt><span><code>!!:$</code></span></dt>
+<dd><p>designates the last argument of the preceding command. This may be
+shortened to <code>!$</code>.
+</p>
+</dd>
+<dt><span><code>!fi:2</code></span></dt>
+<dd><p>designates the second argument of the most recent command starting with
+the letters <code>fi</code>.
+</p></dd>
+</dl>
+
+<p>Here are the word designators:
+</p>
+<dl compact="compact">
+<dt><span><code>0 (zero)</code></span></dt>
+<dd><p>The <code>0</code>th word. For many applications, this is the command word.
+</p>
+</dd>
+<dt><span><code><var>n</var></code></span></dt>
+<dd><p>The <var>n</var>th word.
+</p>
+</dd>
+<dt><span><code>^</code></span></dt>
+<dd><p>The first argument; that is, word 1.
+</p>
+</dd>
+<dt><span><code>$</code></span></dt>
+<dd><p>The last argument.
+</p>
+</dd>
+<dt><span><code>%</code></span></dt>
+<dd><p>The first word matched by the most recent &lsquo;<samp>?<var>string</var>?</samp>&rsquo; search,
if the search string begins with a character that is part of a word.
-<P>
-
-<DT><CODE><VAR>x</VAR>-<VAR>y</VAR></CODE>
-<DD>A range of words; <SAMP>`-<VAR>y</VAR>'</SAMP> abbreviates <SAMP>`0-<VAR>y</VAR>'</SAMP>.
-<P>
-
-<DT><CODE>*</CODE>
-<DD>All of the words, except the <CODE>0</CODE>th. This is a synonym for <SAMP>`1-$'</SAMP>.
-It is not an error to use <SAMP>`*'</SAMP> if there is just one word in the event;
+</p>
+</dd>
+<dt><span><code><var>x</var>-<var>y</var></code></span></dt>
+<dd><p>A range of words; &lsquo;<samp>-<var>y</var></samp>&rsquo; abbreviates &lsquo;<samp>0-<var>y</var></samp>&rsquo;.
+</p>
+</dd>
+<dt><span><code>*</code></span></dt>
+<dd><p>All of the words, except the <code>0</code>th. This is a synonym for &lsquo;<samp>1-$</samp>&rsquo;.
+It is not an error to use &lsquo;<samp>*</samp>&rsquo; if there is just one word in the event;
the empty string is returned in that case.
-<P>
-
-<DT><CODE><VAR>x</VAR>*</CODE>
-<DD>Abbreviates <SAMP>`<VAR>x</VAR>-$'</SAMP>
-<P>
-
-<DT><CODE><VAR>x</VAR>-</CODE>
-<DD>Abbreviates <SAMP>`<VAR>x</VAR>-$'</SAMP> like <SAMP>`<VAR>x</VAR>*'</SAMP>, but omits the last word.
-If <SAMP>`x'</SAMP> is missing, it defaults to 0.
-<P>
-
-</DL>
-<P>
-
-If a word designator is supplied without an event specification, the
+</p>
+</dd>
+<dt><span><code><var>x</var>*</code></span></dt>
+<dd><p>Abbreviates &lsquo;<samp><var>x</var>-$</samp>&rsquo;
+</p>
+</dd>
+<dt><span><code><var>x</var>-</code></span></dt>
+<dd><p>Abbreviates &lsquo;<samp><var>x</var>-$</samp>&rsquo; like &lsquo;<samp><var>x</var>*</samp>&rsquo;, but omits the last word.
+If &lsquo;<samp>x</samp>&rsquo; is missing, it defaults to 0.
+</p>
+</dd>
+</dl>
+
+<p>If a word designator is supplied without an event specification, the
previous command is used as the event.
-</P><P>
-
-<A NAME="Modifiers"></A>
-<HR SIZE="6">
-<A NAME="SEC5"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC4"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.1.3 Modifiers </H3>
-<!--docid::SEC5::-->
-<P>
-
-After the optional word designator, you can add a sequence of one or more
-of the following modifiers, each preceded by a <SAMP>`:'</SAMP>.
+</p>
+<hr>
+</div>
+<div class="subsection" id="Modifiers">
+<div class="header">
+<p>
+Previous: <a href="#Word-Designators" accesskey="p" rel="prev">Word Designators</a>, Up: <a href="#History-Interaction" accesskey="u" rel="up">History Expansion</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Modifiers-1"></span><h4 class="subsection">1.1.3 Modifiers</h4>
+
+<p>After the optional word designator, you can add a sequence of one or more
+of the following modifiers, each preceded by a &lsquo;<samp>:</samp>&rsquo;.
These modify, or edit, the word or words selected from the history event.
-</P><P>
-
-<DL COMPACT>
-
-<DT><CODE>h</CODE>
-<DD>Remove a trailing pathname component, leaving only the head.
-<P>
-
-<DT><CODE>t</CODE>
-<DD>Remove all leading pathname components, leaving the tail.
-<P>
-
-<DT><CODE>r</CODE>
-<DD>Remove a trailing suffix of the form <SAMP>`.<VAR>suffix</VAR>'</SAMP>, leaving
+</p>
+<dl compact="compact">
+<dt><span><code>h</code></span></dt>
+<dd><p>Remove a trailing pathname component, leaving only the head.
+</p>
+</dd>
+<dt><span><code>t</code></span></dt>
+<dd><p>Remove all leading pathname components, leaving the tail.
+</p>
+</dd>
+<dt><span><code>r</code></span></dt>
+<dd><p>Remove a trailing suffix of the form &lsquo;<samp>.<var>suffix</var></samp>&rsquo;, leaving
the basename.
-<P>
-
-<DT><CODE>e</CODE>
-<DD>Remove all but the trailing suffix.
-<P>
-
-<DT><CODE>p</CODE>
-<DD>Print the new command but do not execute it.
-<P>
-
-<DT><CODE>s/<VAR>old</VAR>/<VAR>new</VAR>/</CODE>
-<DD>Substitute <VAR>new</VAR> for the first occurrence of <VAR>old</VAR> in the
+</p>
+</dd>
+<dt><span><code>e</code></span></dt>
+<dd><p>Remove all but the trailing suffix.
+</p>
+</dd>
+<dt><span><code>p</code></span></dt>
+<dd><p>Print the new command but do not execute it.
+</p>
+
+</dd>
+<dt><span><code>s/<var>old</var>/<var>new</var>/</code></span></dt>
+<dd><p>Substitute <var>new</var> for the first occurrence of <var>old</var> in the
event line.
-Any character may be used as the delimiter in place of <SAMP>`/'</SAMP>.
-The delimiter may be quoted in <VAR>old</VAR> and <VAR>new</VAR>
-with a single backslash. If <SAMP>`&#38;'</SAMP> appears in <VAR>new</VAR>,
-it is replaced by <VAR>old</VAR>. A single backslash will quote
-the <SAMP>`&#38;'</SAMP>.
-If <VAR>old</VAR> is null, it is set to the last <VAR>old</VAR>
+Any character may be used as the delimiter in place of &lsquo;<samp>/</samp>&rsquo;.
+The delimiter may be quoted in <var>old</var> and <var>new</var>
+with a single backslash. If &lsquo;<samp>&amp;</samp>&rsquo; appears in <var>new</var>,
+it is replaced by <var>old</var>. A single backslash will quote
+the &lsquo;<samp>&amp;</samp>&rsquo;.
+If <var>old</var> is null, it is set to the last <var>old</var>
substituted, or, if no previous history substitutions took place,
-the last <VAR>string</VAR>
-in a !?<VAR>string</VAR><CODE>[?]</CODE>
+the last <var>string</var>
+in a !?<var>string</var><code>[?]</code>
search.
-If <VAR>new</VAR> is is null, each matching <VAR>old</VAR> is deleted.
+If <var>new</var> is is null, each matching <var>old</var> is deleted.
The final delimiter is optional if it is the last
character on the input line.
-<P>
-
-<DT><CODE>&#38;</CODE>
-<DD>Repeat the previous substitution.
-<P>
-
-<DT><CODE>g</CODE>
-<DD><DT><CODE>a</CODE>
-<DD>Cause changes to be applied over the entire event line. Used in
-conjunction with <SAMP>`s'</SAMP>, as in <CODE>gs/<VAR>old</VAR>/<VAR>new</VAR>/</CODE>,
-or with <SAMP>`&#38;'</SAMP>.
-<P>
-
-<DT><CODE>G</CODE>
-<DD>Apply the following <SAMP>`s'</SAMP> or <SAMP>`&#38;'</SAMP> modifier once to each word
+</p>
+</dd>
+<dt><span><code>&amp;</code></span></dt>
+<dd><p>Repeat the previous substitution.
+</p>
+</dd>
+<dt><span><code>g</code></span></dt>
+<dt><span><code>a</code></span></dt>
+<dd><p>Cause changes to be applied over the entire event line. Used in
+conjunction with &lsquo;<samp>s</samp>&rsquo;, as in <code>gs/<var>old</var>/<var>new</var>/</code>,
+or with &lsquo;<samp>&amp;</samp>&rsquo;.
+</p>
+</dd>
+<dt><span><code>G</code></span></dt>
+<dd><p>Apply the following &lsquo;<samp>s</samp>&rsquo; or &lsquo;<samp>&amp;</samp>&rsquo; modifier once to each word
in the event.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Programming with GNU History"></A>
-<HR SIZE="6">
-<A NAME="SEC6"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC5"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC7"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> 2. Programming with GNU History </H1>
-<!--docid::SEC6::-->
-<P>
-
-This chapter describes how to interface programs that you write
-with the GNU History Library.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+</div>
+</div>
+<div class="chapter" id="Programming-with-GNU-History">
+<div class="header">
+<p>
+Next: <a href="#GNU-Free-Documentation-License" accesskey="n" rel="next">GNU Free Documentation License</a>, Previous: <a href="#Using-History-Interactively" accesskey="p" rel="prev">Using History Interactively</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU History Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Programming-with-GNU-History-1"></span><h2 class="chapter">2 Programming with GNU History</h2>
+
+<p>This chapter describes how to interface programs that you write
+with the <small>GNU</small> History Library.
It should be considered a technical guide.
-For information on the interactive use of GNU History, see section <A HREF="history.html#SEC1">1. Using History Interactively</A>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC7">2.1 Introduction to History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">What is the GNU History library for?</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC8">2.2 History Storage</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How information is stored.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC9">2.3 History Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that you can use.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC17">2.4 History Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables that control behaviour.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC18">2.5 History Programming Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Example of using the GNU History Library.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Introduction to History"></A>
-<HR SIZE="6">
-<A NAME="SEC7"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC8"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.1 Introduction to History </H2>
-<!--docid::SEC7::-->
-<P>
-
-Many programs read input from the user a line at a time. The GNU
+For information on the interactive use of <small>GNU</small> History, see <a href="#Using-History-Interactively">Using History Interactively</a>.
+</p>
+
+<ul class="section-toc">
+<li><a href="#Introduction-to-History" accesskey="1">Introduction to History</a></li>
+<li><a href="#History-Storage" accesskey="2">History Storage</a></li>
+<li><a href="#History-Functions" accesskey="3">History Functions</a></li>
+<li><a href="#History-Variables" accesskey="4">History Variables</a></li>
+<li><a href="#History-Programming-Example" accesskey="5">History Programming Example</a></li>
+</ul>
+<hr>
+<div class="section" id="Introduction-to-History">
+<div class="header">
+<p>
+Next: <a href="#History-Storage" accesskey="n" rel="next">History Storage</a>, Up: <a href="#Programming-with-GNU-History" accesskey="u" rel="up">Programming with GNU History</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Introduction-to-History-1"></span><h3 class="section">2.1 Introduction to History</h3>
+
+<p>Many programs read input from the user a line at a time. The <small>GNU</small>
History 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.
-</P><P>
-
-A programmer using the History library has available functions
+</p>
+<p>A 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 <EM>expansion</EM> function
+in the list directly. In addition, a history <em>expansion</em> function
is available which provides for a consistent user interface across
different programs.
-</P><P>
-
-The user using programs written with the History library has the
+</p>
+<p>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 <CODE>csh</CODE>.
-</P><P>
-
-The programmer can also use the Readline library, which
+the history substitution provided by <code>csh</code>.
+</p>
+<p>The programmer can also use the Readline library, which
includes some history manipulation by default, and has the added
advantage of command line editing.
-</P><P>
-
-Before declaring any functions using any functionality the History
+</p>
+<p>Before declaring any functions using any functionality the History
library provides in other code, an application writer should include
-the file <CODE>&#60;readline/history.h&#62;</CODE> 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 file <code>&lt;readline/history.h&gt;</code> in any file that uses the
+History library&rsquo;s features. It supplies extern declarations for all
+of the library&rsquo;s public functions and variables, and declares all of
the public data structures.
-</P><P>
-
-<A NAME="History Storage"></A>
-<HR SIZE="6">
-<A NAME="SEC8"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC7"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.2 History Storage </H2>
-<!--docid::SEC8::-->
-<P>
-
-The history list is an array of history entries. A history entry is
+</p>
+<hr>
+</div>
+<div class="section" id="History-Storage">
+<div class="header">
+<p>
+Next: <a href="#History-Functions" accesskey="n" rel="next">History Functions</a>, Previous: <a href="#Introduction-to-History" accesskey="p" rel="prev">Introduction to History</a>, Up: <a href="#Programming-with-GNU-History" accesskey="u" rel="up">Programming with GNU History</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-Storage-1"></span><h3 class="section">2.2 History Storage</h3>
+
+<p>The history list is an array of history entries. A history entry is
declared as follows:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>typedef void *histdata_t;
+</p>
+<div class="example">
+<pre class="example">typedef void *histdata_t;
typedef struct _hist_entry {
char *line;
char *timestamp;
histdata_t data;
} HIST_ENTRY;
-</pre></td></tr></table></P><P>
-
-The history list itself might therefore be declared as
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>HIST_ENTRY **the_history_list;
-</pre></td></tr></table></P><P>
-
-The state of the History library is encapsulated into a single structure:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/*
+</pre></div>
+
+<p>The history list itself might therefore be declared as
+</p>
+<div class="example">
+<pre class="example">HIST_ENTRY **the_history_list;
+</pre></div>
+
+<p>The state of the History library is encapsulated into a single structure:
+</p>
+<div class="example">
+<pre class="example">/*
* A structure used to pass around the current state of the history.
*/
typedef struct _hist_state {
@@ -525,714 +503,516 @@ typedef struct _hist_state {
int size; /* Number of slots allocated to this array. */
int flags;
} HISTORY_STATE;
-</pre></td></tr></table></P><P>
+</pre></div>
-If the flags member includes <CODE>HS_STIFLED</CODE>, the history has been
+<p>If the flags member includes <code>HS_STIFLED</code>, the history has been
stifled.
-</P><P>
-
-<A NAME="History Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC9"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC8"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC10"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.3 History Functions </H2>
-<!--docid::SEC9::-->
-<P>
-
-This section describes the calling sequence for the various functions
-exported by the GNU History library.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to call when you
- want to use history in a
- program.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions used to manage the list
- of history entries.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions returning information about
- the history list.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions used to change the position
- in the history list.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to search the history list
- for entries containing a string.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that read and write a file
- containing the history list.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to perform csh-like history
- expansion.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Initializing History and State Management"></A>
-<HR SIZE="6">
-<A NAME="SEC10"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC11"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.1 Initializing History and State Management </H3>
-<!--docid::SEC10::-->
-<P>
-
-This section describes functions used to initialize and manage
+</p>
+<hr>
+</div>
+<div class="section" id="History-Functions">
+<div class="header">
+<p>
+Next: <a href="#History-Variables" accesskey="n" rel="next">History Variables</a>, Previous: <a href="#History-Storage" accesskey="p" rel="prev">History Storage</a>, Up: <a href="#Programming-with-GNU-History" accesskey="u" rel="up">Programming with GNU History</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-Functions-1"></span><h3 class="section">2.3 History Functions</h3>
+
+<p>This section describes the calling sequence for the various functions
+exported by the <small>GNU</small> History library.
+</p>
+
+<ul class="section-toc">
+<li><a href="#Initializing-History-and-State-Management" accesskey="1">Initializing History and State Management</a></li>
+<li><a href="#History-List-Management" accesskey="2">History List Management</a></li>
+<li><a href="#Information-About-the-History-List" accesskey="3">Information About the History List</a></li>
+<li><a href="#Moving-Around-the-History-List" accesskey="4">Moving Around the History List</a></li>
+<li><a href="#Searching-the-History-List" accesskey="5">Searching the History List</a></li>
+<li><a href="#Managing-the-History-File" accesskey="6">Managing the History File</a></li>
+<li><a href="#History-Expansion" accesskey="7">History Expansion</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Initializing-History-and-State-Management">
+<div class="header">
+<p>
+Next: <a href="#History-List-Management" accesskey="n" rel="next">History List Management</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Initializing-History-and-State-Management-1"></span><h4 class="subsection">2.3.1 Initializing History and State Management</h4>
+
+<p>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.
-</P><P>
-
-<A NAME="IDX2"></A>
-<DL>
-<DT><U>Function:</U> void <B>using_history</B> <I>(void)</I>
-<DD>Begin a session in which the history functions might be used. This
+</p>
+<dl class="def">
+<dt id="index-using_005fhistory"><span class="category">Function: </span><span><em>void</em> <strong>using_history</strong> <em>(void)</em><a href='#index-using_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Begin a session in which the history functions might be used. This
initializes the interactive variables.
-</DL>
-</P><P>
-
-<A NAME="IDX3"></A>
-<DL>
-<DT><U>Function:</U> HISTORY_STATE * <B>history_get_history_state</B> <I>(void)</I>
-<DD>Return a structure describing the current state of the input history.
-</DL>
-</P><P>
-
-<A NAME="IDX4"></A>
-<DL>
-<DT><U>Function:</U> void <B>history_set_history_state</B> <I>(HISTORY_STATE *state)</I>
-<DD>Set the state of the history list according to <VAR>state</VAR>.
-</DL>
-</P><P>
-
-<A NAME="History List Management"></A>
-<HR SIZE="6">
-<A NAME="SEC11"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC10"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC12"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC12"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.2 History List Management </H3>
-<!--docid::SEC11::-->
-<P>
-
-These functions manage individual entries on the history list, or set
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fget_005fhistory_005fstate"><span class="category">Function: </span><span><em>HISTORY_STATE *</em> <strong>history_get_history_state</strong> <em>(void)</em><a href='#index-history_005fget_005fhistory_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a structure describing the current state of the input history.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fset_005fhistory_005fstate"><span class="category">Function: </span><span><em>void</em> <strong>history_set_history_state</strong> <em>(HISTORY_STATE *state)</em><a href='#index-history_005fset_005fhistory_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set the state of the history list according to <var>state</var>.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="History-List-Management">
+<div class="header">
+<p>
+Next: <a href="#Information-About-the-History-List" accesskey="n" rel="next">Information About the History List</a>, Previous: <a href="#Initializing-History-and-State-Management" accesskey="p" rel="prev">Initializing History and State Management</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-List-Management-1"></span><h4 class="subsection">2.3.2 History List Management</h4>
+
+<p>These functions manage individual entries on the history list, or set
parameters managing the list itself.
-</P><P>
-
-<A NAME="IDX5"></A>
-<DL>
-<DT><U>Function:</U> void <B>add_history</B> <I>(const char *string)</I>
-<DD>Place <VAR>string</VAR> at the end of the history list. The associated data
-field (if any) is set to <CODE>NULL</CODE>.
+</p>
+<dl class="def">
+<dt id="index-add_005fhistory"><span class="category">Function: </span><span><em>void</em> <strong>add_history</strong> <em>(const char *string)</em><a href='#index-add_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Place <var>string</var> at the end of the history list. The associated data
+field (if any) is set to <code>NULL</code>.
If the maximum number of history entries has been set using
-<CODE>stifle_history()</CODE>, and the new number of history entries would exceed
+<code>stifle_history()</code>, and the new number of history entries would exceed
that maximum, the oldest history entry is removed.
-</DL>
-</P><P>
-
-<A NAME="IDX6"></A>
-<DL>
-<DT><U>Function:</U> void <B>add_history_time</B> <I>(const char *string)</I>
-<DD>Change the time stamp associated with the most recent history entry to
-<VAR>string</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX7"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>remove_history</B> <I>(int which)</I>
-<DD>Remove history entry at offset <VAR>which</VAR> from the history. The
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-add_005fhistory_005ftime"><span class="category">Function: </span><span><em>void</em> <strong>add_history_time</strong> <em>(const char *string)</em><a href='#index-add_005fhistory_005ftime' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Change the time stamp associated with the most recent history entry to
+<var>string</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-remove_005fhistory"><span class="category">Function: </span><span><em>HIST_ENTRY *</em> <strong>remove_history</strong> <em>(int which)</em><a href='#index-remove_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Remove history entry at offset <var>which</var> from the history. The
removed element is returned so you can free the line, data,
and containing structure.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX8"></A>
-<DL>
-<DT><U>Function:</U> histdata_t <B>free_history_entry</B> <I>(HIST_ENTRY *histent)</I>
-<DD>Free the history entry <VAR>histent</VAR> and any history library private
+<dl class="def">
+<dt id="index-free_005fhistory_005fentry"><span class="category">Function: </span><span><em>histdata_t</em> <strong>free_history_entry</strong> <em>(HIST_ENTRY *histent)</em><a href='#index-free_005fhistory_005fentry' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Free the history entry <var>histent</var> and any history library private
data associated with it. Returns the application-specific data
so the caller can dispose of it.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX9"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>replace_history_entry</B> <I>(int which, const char *line, histdata_t data)</I>
-<DD>Make the history entry at offset <VAR>which</VAR> have <VAR>line</VAR> and <VAR>data</VAR>.
+<dl class="def">
+<dt id="index-replace_005fhistory_005fentry"><span class="category">Function: </span><span><em>HIST_ENTRY *</em> <strong>replace_history_entry</strong> <em>(int which, const char *line, histdata_t data)</em><a href='#index-replace_005fhistory_005fentry' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Make the history entry at offset <var>which</var> have <var>line</var> and <var>data</var>.
This returns the old entry so the caller can dispose of any
application-specific data. In the case
-of an invalid <VAR>which</VAR>, a <CODE>NULL</CODE> pointer is returned.
-</DL>
-</P><P>
-
-<A NAME="IDX10"></A>
-<DL>
-<DT><U>Function:</U> void <B>clear_history</B> <I>(void)</I>
-<DD>Clear the history list by deleting all the entries.
-</DL>
-</P><P>
-
-<A NAME="IDX11"></A>
-<DL>
-<DT><U>Function:</U> void <B>stifle_history</B> <I>(int max)</I>
-<DD>Stifle the history list, remembering only the last <VAR>max</VAR> entries.
-The history list will contain only <VAR>max</VAR> entries at a time.
-</DL>
-</P><P>
-
-<A NAME="IDX12"></A>
-<DL>
-<DT><U>Function:</U> int <B>unstifle_history</B> <I>(void)</I>
-<DD>Stop stifling the history. This returns the previously-set
-maximum number of history entries (as set by <CODE>stifle_history()</CODE>).
+of an invalid <var>which</var>, a <code>NULL</code> pointer is returned.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-clear_005fhistory"><span class="category">Function: </span><span><em>void</em> <strong>clear_history</strong> <em>(void)</em><a href='#index-clear_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the history list by deleting all the entries.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-stifle_005fhistory"><span class="category">Function: </span><span><em>void</em> <strong>stifle_history</strong> <em>(int max)</em><a href='#index-stifle_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Stifle the history list, remembering only the last <var>max</var> entries.
+The history list will contain only <var>max</var> entries at a time.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-unstifle_005fhistory"><span class="category">Function: </span><span><em>int</em> <strong>unstifle_history</strong> <em>(void)</em><a href='#index-unstifle_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Stop stifling the history. This returns the previously-set
+maximum number of history entries (as set by <code>stifle_history()</code>).
The value is positive if the history was
-stifled, negative if it wasn't.
-</DL>
-</P><P>
-
-<A NAME="IDX13"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_is_stifled</B> <I>(void)</I>
-<DD>Returns non-zero if the history is stifled, zero if it is not.
-</DL>
-</P><P>
-
-<A NAME="Information About the History List"></A>
-<HR SIZE="6">
-<A NAME="SEC12"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC11"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC13"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.3 Information About the History List </H3>
-<!--docid::SEC12::-->
-<P>
-
-These functions return information about the entire history list or
+stifled, negative if it wasn&rsquo;t.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fis_005fstifled"><span class="category">Function: </span><span><em>int</em> <strong>history_is_stifled</strong> <em>(void)</em><a href='#index-history_005fis_005fstifled' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns non-zero if the history is stifled, zero if it is not.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Information-About-the-History-List">
+<div class="header">
+<p>
+Next: <a href="#Moving-Around-the-History-List" accesskey="n" rel="next">Moving Around the History List</a>, Previous: <a href="#History-List-Management" accesskey="p" rel="prev">History List Management</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Information-About-the-History-List-1"></span><h4 class="subsection">2.3.3 Information About the History List</h4>
+
+<p>These functions return information about the entire history list or
individual list entries.
-</P><P>
-
-<A NAME="IDX14"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY ** <B>history_list</B> <I>(void)</I>
-<DD>Return a <CODE>NULL</CODE> terminated array of <CODE>HIST_ENTRY *</CODE> which is the
+</p>
+<dl class="def">
+<dt id="index-history_005flist"><span class="category">Function: </span><span><em>HIST_ENTRY **</em> <strong>history_list</strong> <em>(void)</em><a href='#index-history_005flist' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a <code>NULL</code> terminated array of <code>HIST_ENTRY *</code> which is the
current input history. Element 0 of this list is the beginning of time.
-If there is no history, return <CODE>NULL</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX15"></A>
-<DL>
-<DT><U>Function:</U> int <B>where_history</B> <I>(void)</I>
-<DD>Returns the offset of the current history element.
-</DL>
-</P><P>
-
-<A NAME="IDX16"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>current_history</B> <I>(void)</I>
-<DD>Return the history entry at the current position, as determined by
-<CODE>where_history()</CODE>. If there is no entry there, return a <CODE>NULL</CODE>
+If there is no history, return <code>NULL</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-where_005fhistory"><span class="category">Function: </span><span><em>int</em> <strong>where_history</strong> <em>(void)</em><a href='#index-where_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns the offset of the current history element.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-current_005fhistory"><span class="category">Function: </span><span><em>HIST_ENTRY *</em> <strong>current_history</strong> <em>(void)</em><a href='#index-current_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the history entry at the current position, as determined by
+<code>where_history()</code>. If there is no entry there, return a <code>NULL</code>
pointer.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX17"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>history_get</B> <I>(int offset)</I>
-<DD>Return the history entry at position <VAR>offset</VAR>.
+<dl class="def">
+<dt id="index-history_005fget"><span class="category">Function: </span><span><em>HIST_ENTRY *</em> <strong>history_get</strong> <em>(int offset)</em><a href='#index-history_005fget' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the history entry at position <var>offset</var>.
The range of valid
-values of <VAR>offset</VAR> starts at <CODE>history_base</CODE> and ends at
-<VAR>history_length</VAR> - 1 (see section <A HREF="history.html#SEC17">2.4 History Variables</A>).
-If there is no entry there, or if <VAR>offset</VAR> is outside the valid
-range, return a <CODE>NULL</CODE> pointer.
-</DL>
-</P><P>
-
-<A NAME="IDX18"></A>
-<DL>
-<DT><U>Function:</U> time_t <B>history_get_time</B> <I>(HIST_ENTRY *entry)</I>
-<DD>Return the time stamp associated with the history entry <VAR>entry</VAR>.
+values of <var>offset</var> starts at <code>history_base</code> and ends at
+<var>history_length</var> - 1 (see <a href="#History-Variables">History Variables</a>).
+If there is no entry there, or if <var>offset</var> is outside the valid
+range, return a <code>NULL</code> pointer.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fget_005ftime"><span class="category">Function: </span><span><em>time_t</em> <strong>history_get_time</strong> <em>(HIST_ENTRY *entry)</em><a href='#index-history_005fget_005ftime' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the time stamp associated with the history entry <var>entry</var>.
If the timestamp is missing or invalid, return 0.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX19"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_total_bytes</B> <I>(void)</I>
-<DD>Return the number of bytes that the primary history entries are using.
+<dl class="def">
+<dt id="index-history_005ftotal_005fbytes"><span class="category">Function: </span><span><em>int</em> <strong>history_total_bytes</strong> <em>(void)</em><a href='#index-history_005ftotal_005fbytes' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
-
-<A NAME="Moving Around the History List"></A>
-<HR SIZE="6">
-<A NAME="SEC13"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC12"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC14"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC14"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.4 Moving Around the History List </H3>
-<!--docid::SEC13::-->
-<P>
-
-These functions allow the current index into the history list to be
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Moving-Around-the-History-List">
+<div class="header">
+<p>
+Next: <a href="#Searching-the-History-List" accesskey="n" rel="next">Searching the History List</a>, Previous: <a href="#Information-About-the-History-List" accesskey="p" rel="prev">Information About the History List</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Moving-Around-the-History-List-1"></span><h4 class="subsection">2.3.4 Moving Around the History List</h4>
+
+<p>These functions allow the current index into the history list to be
set or changed.
-</P><P>
-
-<A NAME="IDX20"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_set_pos</B> <I>(int pos)</I>
-<DD>Set the current history offset to <VAR>pos</VAR>, an absolute index
+</p>
+<dl class="def">
+<dt id="index-history_005fset_005fpos"><span class="category">Function: </span><span><em>int</em> <strong>history_set_pos</strong> <em>(int pos)</em><a href='#index-history_005fset_005fpos' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set the current history offset to <var>pos</var>, an absolute index
into the list.
-Returns 1 on success, 0 if <VAR>pos</VAR> is less than zero or greater
+Returns 1 on success, 0 if <var>pos</var> is less than zero or greater
than the number of history entries.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX21"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>previous_history</B> <I>(void)</I>
-<DD>Back up the current history offset to the previous history entry, and
+<dl class="def">
+<dt id="index-previous_005fhistory"><span class="category">Function: </span><span><em>HIST_ENTRY *</em> <strong>previous_history</strong> <em>(void)</em><a href='#index-previous_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>NULL</CODE> pointer.
-</DL>
-</P><P>
-
-<A NAME="IDX22"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>next_history</B> <I>(void)</I>
-<DD>If the current history offset refers to a valid history entry,
+a <code>NULL</code> pointer.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-next_005fhistory"><span class="category">Function: </span><span><em>HIST_ENTRY *</em> <strong>next_history</strong> <em>(void)</em><a href='#index-next_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>
-
-<A NAME="Searching the History List"></A>
-<HR SIZE="6">
-<A NAME="SEC14"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC13"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC15"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC15"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.5 Searching the History List </H3>
-<!--docid::SEC14::-->
-<P>
-
-These functions allow searching of the history list for entries containing
+otherwise, return a <code>BNULL</code> pointer.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Searching-the-History-List">
+<div class="header">
+<p>
+Next: <a href="#Managing-the-History-File" accesskey="n" rel="next">Managing the History File</a>, Previous: <a href="#Moving-Around-the-History-List" accesskey="p" rel="prev">Moving Around the History List</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Searching-the-History-List-1"></span><h4 class="subsection">2.3.5 Searching the History List</h4>
+<span id="index-History-Searching"></span>
+
+<p>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 <EM>anchored</EM>,
+from the current history position. The search may be <em>anchored</em>,
meaning that the string must match at the beginning of the history entry.
-<A NAME="IDX23"></A>
-</P><P>
-
-<A NAME="IDX24"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_search</B> <I>(const char *string, int direction)</I>
-<DD>Search the history for <VAR>string</VAR>, starting at the current history offset.
-If <VAR>direction</VAR> is less than 0, then the search is through
+<span id="index-anchored-search"></span>
+</p>
+<dl class="def">
+<dt id="index-history_005fsearch"><span class="category">Function: </span><span><em>int</em> <strong>history_search</strong> <em>(const char *string, int direction)</em><a href='#index-history_005fsearch' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search the history for <var>string</var>, starting at the current history offset.
+If <var>direction</var> is less than 0, then the search is through
previous entries, otherwise through subsequent entries.
-If <VAR>string</VAR> is found, then
+If <var>string</var> 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
-<VAR>string</VAR> was found. Otherwise, nothing is changed, and a -1 is
+<var>string</var> was found. Otherwise, nothing is changed, and a -1 is
returned.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX25"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_search_prefix</B> <I>(const char *string, int direction)</I>
-<DD>Search the history for <VAR>string</VAR>, starting at the current history
+<dl class="def">
+<dt id="index-history_005fsearch_005fprefix"><span class="category">Function: </span><span><em>int</em> <strong>history_search_prefix</strong> <em>(const char *string, int direction)</em><a href='#index-history_005fsearch_005fprefix' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search the history for <var>string</var>, starting at the current history
offset. The search is anchored: matching lines must begin with
-<VAR>string</VAR>. If <VAR>direction</VAR> is less than 0, then the search is
+<var>string</var>. If <var>direction</var> is less than 0, then the search is
through previous entries, otherwise through subsequent entries.
-If <VAR>string</VAR> is found, then the
+If <var>string</var> 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.
-</DL>
-</P><P>
-
-<A NAME="IDX26"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_search_pos</B> <I>(const char *string, int direction, int pos)</I>
-<DD>Search for <VAR>string</VAR> in the history list, starting at <VAR>pos</VAR>, an
-absolute index into the list. If <VAR>direction</VAR> is negative, the search
-proceeds backward from <VAR>pos</VAR>, otherwise forward. Returns the absolute
-index of the history element where <VAR>string</VAR> was found, or -1 otherwise.
-</DL>
-</P><P>
-
-<A NAME="Managing the History File"></A>
-<HR SIZE="6">
-<A NAME="SEC15"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC14"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC16"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC16"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.6 Managing the History File </H3>
-<!--docid::SEC15::-->
-<P>
-
-The History library can read the history from and write it to a file.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fsearch_005fpos"><span class="category">Function: </span><span><em>int</em> <strong>history_search_pos</strong> <em>(const char *string, int direction, int pos)</em><a href='#index-history_005fsearch_005fpos' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search for <var>string</var> in the history list, starting at <var>pos</var>, an
+absolute index into the list. If <var>direction</var> is negative, the search
+proceeds backward from <var>pos</var>, otherwise forward. Returns the absolute
+index of the history element where <var>string</var> was found, or -1 otherwise.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Managing-the-History-File">
+<div class="header">
+<p>
+Next: <a href="#History-Expansion" accesskey="n" rel="next">History Expansion</a>, Previous: <a href="#Searching-the-History-List" accesskey="p" rel="prev">Searching the History List</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Managing-the-History-File-1"></span><h4 class="subsection">2.3.6 Managing the History File</h4>
+
+<p>The History library can read the history from and write it to a file.
This section documents the functions for managing a history file.
-</P><P>
-
-<A NAME="IDX27"></A>
-<DL>
-<DT><U>Function:</U> int <B>read_history</B> <I>(const char *filename)</I>
-<DD>Add the contents of <VAR>filename</VAR> to the history list, a line at a time.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then read from <TT>`~/.history'</TT>.
-Returns 0 if successful, or <CODE>errno</CODE> if not.
-</DL>
-</P><P>
-
-<A NAME="IDX28"></A>
-<DL>
-<DT><U>Function:</U> int <B>read_history_range</B> <I>(const char *filename, int from, int to)</I>
-<DD>Read a range of lines from <VAR>filename</VAR>, adding them to the history list.
-Start reading at line <VAR>from</VAR> and end at <VAR>to</VAR>.
-If <VAR>from</VAR> is zero, start at the beginning. If <VAR>to</VAR> is less than
-<VAR>from</VAR>, then read until the end of the file. If <VAR>filename</VAR> is
-<CODE>NULL</CODE>, then read from <TT>`~/.history'</TT>. Returns 0 if successful,
-or <CODE>errno</CODE> if not.
-</DL>
-</P><P>
-
-<A NAME="IDX29"></A>
-<DL>
-<DT><U>Function:</U> int <B>write_history</B> <I>(const char *filename)</I>
-<DD>Write the current history to <VAR>filename</VAR>, overwriting <VAR>filename</VAR>
+</p>
+<dl class="def">
+<dt id="index-read_005fhistory"><span class="category">Function: </span><span><em>int</em> <strong>read_history</strong> <em>(const char *filename)</em><a href='#index-read_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add the contents of <var>filename</var> to the history list, a line at a time.
+If <var>filename</var> is <code>NULL</code>, then read from <samp>~/.history</samp>.
+Returns 0 if successful, or <code>errno</code> if not.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-read_005fhistory_005frange"><span class="category">Function: </span><span><em>int</em> <strong>read_history_range</strong> <em>(const char *filename, int from, int to)</em><a href='#index-read_005fhistory_005frange' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Read a range of lines from <var>filename</var>, adding them to the history list.
+Start reading at line <var>from</var> and end at <var>to</var>.
+If <var>from</var> is zero, start at the beginning. If <var>to</var> is less than
+<var>from</var>, then read until the end of the file. If <var>filename</var> is
+<code>NULL</code>, then read from <samp>~/.history</samp>. Returns 0 if successful,
+or <code>errno</code> if not.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-write_005fhistory"><span class="category">Function: </span><span><em>int</em> <strong>write_history</strong> <em>(const char *filename)</em><a href='#index-write_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Write the current history to <var>filename</var>, overwriting <var>filename</var>
if necessary.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then write the history list to
-<TT>`~/.history'</TT>.
-Returns 0 on success, or <CODE>errno</CODE> on a read or write error.
-</DL>
-</P><P>
-
-<A NAME="IDX30"></A>
-<DL>
-<DT><U>Function:</U> int <B>append_history</B> <I>(int nelements, const char *filename)</I>
-<DD>Append the last <VAR>nelements</VAR> of the history list to <VAR>filename</VAR>.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then append to <TT>`~/.history'</TT>.
-Returns 0 on success, or <CODE>errno</CODE> on a read or write error.
-</DL>
-</P><P>
-
-<A NAME="IDX31"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_truncate_file</B> <I>(const char *filename, int nlines)</I>
-<DD>Truncate the history file <VAR>filename</VAR>, leaving only the last
-<VAR>nlines</VAR> lines.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then <TT>`~/.history'</TT> is truncated.
-Returns 0 on success, or <CODE>errno</CODE> on failure.
-</DL>
-</P><P>
-
-<A NAME="History Expansion"></A>
-<HR SIZE="6">
-<A NAME="SEC16"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC15"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.7 History Expansion </H3>
-<!--docid::SEC16::-->
-<P>
-
-These functions implement history expansion.
-</P><P>
-
-<A NAME="IDX32"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_expand</B> <I>(char *string, char **output)</I>
-<DD>Expand <VAR>string</VAR>, placing the result into <VAR>output</VAR>, a pointer
-to a string (see section <A HREF="history.html#SEC2">1.1 History Expansion</A>). Returns:
-<DL COMPACT>
-<DT><CODE>0</CODE>
-<DD>If no expansions took place (or, if the only change in
+If <var>filename</var> is <code>NULL</code>, then write the history list to
+<samp>~/.history</samp>.
+Returns 0 on success, or <code>errno</code> on a read or write error.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-append_005fhistory"><span class="category">Function: </span><span><em>int</em> <strong>append_history</strong> <em>(int nelements, const char *filename)</em><a href='#index-append_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Append the last <var>nelements</var> of the history list to <var>filename</var>.
+If <var>filename</var> is <code>NULL</code>, then append to <samp>~/.history</samp>.
+Returns 0 on success, or <code>errno</code> on a read or write error.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005ftruncate_005ffile"><span class="category">Function: </span><span><em>int</em> <strong>history_truncate_file</strong> <em>(const char *filename, int nlines)</em><a href='#index-history_005ftruncate_005ffile' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Truncate the history file <var>filename</var>, leaving only the last
+<var>nlines</var> lines.
+If <var>filename</var> is <code>NULL</code>, then <samp>~/.history</samp> is truncated.
+Returns 0 on success, or <code>errno</code> on failure.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="History-Expansion">
+<div class="header">
+<p>
+Previous: <a href="#Managing-the-History-File" accesskey="p" rel="prev">Managing the History File</a>, Up: <a href="#History-Functions" accesskey="u" rel="up">History Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-Expansion-2"></span><h4 class="subsection">2.3.7 History Expansion</h4>
+
+<p>These functions implement history expansion.
+</p>
+<dl class="def">
+<dt id="index-history_005fexpand"><span class="category">Function: </span><span><em>int</em> <strong>history_expand</strong> <em>(char *string, char **output)</em><a href='#index-history_005fexpand' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Expand <var>string</var>, placing the result into <var>output</var>, a pointer
+to a string (see <a href="#History-Interaction">History Expansion</a>). Returns:
+</p><dl compact="compact">
+<dt><span><code>0</code></span></dt>
+<dd><p>If no expansions took place (or, if the only change in
the text was the removal of escape characters preceding the history expansion
character);
-<DT><CODE>1</CODE>
-<DD>if expansions did take place;
-<DT><CODE>-1</CODE>
-<DD>if there was an error in expansion;
-<DT><CODE>2</CODE>
-<DD>if the returned line should be displayed, but not executed,
-as with the <CODE>:p</CODE> modifier (see section <A HREF="history.html#SEC5">1.1.3 Modifiers</A>).
-</DL>
-<P>
-
-If an error occurred in expansion, then <VAR>output</VAR> contains a descriptive
+</p></dd>
+<dt><span><code>1</code></span></dt>
+<dd><p>if expansions did take place;
+</p></dd>
+<dt><span><code>-1</code></span></dt>
+<dd><p>if there was an error in expansion;
+</p></dd>
+<dt><span><code>2</code></span></dt>
+<dd><p>if the returned line should be displayed, but not executed,
+as with the <code>:p</code> modifier (see <a href="#Modifiers">Modifiers</a>).
+</p></dd>
+</dl>
+
+<p>If an error occurred in expansion, then <var>output</var> contains a descriptive
error message.
-</DL>
-</P><P>
-
-<A NAME="IDX33"></A>
-<DL>
-<DT><U>Function:</U> char * <B>get_history_event</B> <I>(const char *string, int *cindex, int qchar)</I>
-<DD>Returns the text of the history event beginning at <VAR>string</VAR> +
-<VAR>*cindex</VAR>. <VAR>*cindex</VAR> is modified to point to after the event
-specifier. At function entry, <VAR>cindex</VAR> points to the index into
-<VAR>string</VAR> where the history event specification begins. <VAR>qchar</VAR>
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-get_005fhistory_005fevent"><span class="category">Function: </span><span><em>char *</em> <strong>get_history_event</strong> <em>(const char *string, int *cindex, int qchar)</em><a href='#index-get_005fhistory_005fevent' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns the text of the history event beginning at <var>string</var> +
+<var>*cindex</var>. <var>*cindex</var> is modified to point to after the event
+specifier. At function entry, <var>cindex</var> points to the index into
+<var>string</var> where the history event specification begins. <var>qchar</var>
is a character that is allowed to end the event specification in addition
-to the "normal" terminating characters.
-</DL>
-</P><P>
-
-<A NAME="IDX34"></A>
-<DL>
-<DT><U>Function:</U> char ** <B>history_tokenize</B> <I>(const char *string)</I>
-<DD>Return an array of tokens parsed out of <VAR>string</VAR>, much as the
+to the &ldquo;normal&rdquo; terminating characters.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005ftokenize"><span class="category">Function: </span><span><em>char **</em> <strong>history_tokenize</strong> <em>(const char *string)</em><a href='#index-history_005ftokenize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return an array of tokens parsed out of <var>string</var>, much as the
shell might. The tokens are split on the characters in the
-<VAR>history_word_delimiters</VAR> variable,
+<var>history_word_delimiters</var> variable,
and shell quoting conventions are obeyed as described below.
-</DL>
-</P><P>
-
-<A NAME="IDX35"></A>
-<DL>
-<DT><U>Function:</U> char * <B>history_arg_extract</B> <I>(int first, int last, const char *string)</I>
-<DD>Extract a string segment consisting of the <VAR>first</VAR> through <VAR>last</VAR>
-arguments present in <VAR>string</VAR>. Arguments are split using
-<CODE>history_tokenize</CODE>.
-</DL>
-</P><P>
-
-<A NAME="History Variables"></A>
-<HR SIZE="6">
-<A NAME="SEC17"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC16"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC18"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC18"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.4 History Variables </H2>
-<!--docid::SEC17::-->
-<P>
-
-This section describes the externally-visible variables exported by
-the GNU History Library.
-</P><P>
-
-<A NAME="IDX36"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_base</B>
-<DD>The logical offset of the first entry in the history list.
-</DL>
-</P><P>
-
-<A NAME="IDX37"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_length</B>
-<DD>The number of entries currently stored in the history list.
-</DL>
-</P><P>
-
-<A NAME="IDX38"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_max_entries</B>
-<DD>The maximum number of history entries. This must be changed using
-<CODE>stifle_history()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX39"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_write_timestamps</B>
-<DD>If non-zero, timestamps are written to the history file, so they can be
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005farg_005fextract"><span class="category">Function: </span><span><em>char *</em> <strong>history_arg_extract</strong> <em>(int first, int last, const char *string)</em><a href='#index-history_005farg_005fextract' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Extract a string segment consisting of the <var>first</var> through <var>last</var>
+arguments present in <var>string</var>. Arguments are split using
+<code>history_tokenize</code>.
+</p></dd></dl>
+
+<hr>
+</div>
+</div>
+<div class="section" id="History-Variables">
+<div class="header">
+<p>
+Next: <a href="#History-Programming-Example" accesskey="n" rel="next">History Programming Example</a>, Previous: <a href="#History-Functions" accesskey="p" rel="prev">History Functions</a>, Up: <a href="#Programming-with-GNU-History" accesskey="u" rel="up">Programming with GNU History</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-Variables-1"></span><h3 class="section">2.4 History Variables</h3>
+
+<p>This section describes the externally-visible variables exported by
+the <small>GNU</small> History Library.
+</p>
+<dl class="def">
+<dt id="index-history_005fbase"><span class="category">Variable: </span><span><em>int</em> <strong>history_base</strong><a href='#index-history_005fbase' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The logical offset of the first entry in the history list.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005flength"><span class="category">Variable: </span><span><em>int</em> <strong>history_length</strong><a href='#index-history_005flength' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The number of entries currently stored in the history list.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fmax_005fentries"><span class="category">Variable: </span><span><em>int</em> <strong>history_max_entries</strong><a href='#index-history_005fmax_005fentries' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The maximum number of history entries. This must be changed using
+<code>stifle_history()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fwrite_005ftimestamps"><span class="category">Variable: </span><span><em>int</em> <strong>history_write_timestamps</strong><a href='#index-history_005fwrite_005ftimestamps' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</P><P>
-
-The current timestamp format uses the value of <VAR>history_comment_char</VAR>
+</p>
+<p>The current timestamp format uses the value of <var>history_comment_char</var>
to delimit timestamp entries in the history file. If that variable does
not have a value (the default), timestamps will not be written.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX40"></A>
-<DL>
-<DT><U>Variable:</U> char <B>history_expansion_char</B>
-<DD>The character that introduces a history event. The default is <SAMP>`!'</SAMP>.
+<dl class="def">
+<dt id="index-history_005fexpansion_005fchar"><span class="category">Variable: </span><span><em>char</em> <strong>history_expansion_char</strong><a href='#index-history_005fexpansion_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The character that introduces a history event. The default is &lsquo;<samp>!</samp>&rsquo;.
Setting this to 0 inhibits history expansion.
-</DL>
-</P><P>
-
-<A NAME="IDX41"></A>
-<DL>
-<DT><U>Variable:</U> char <B>history_subst_char</B>
-<DD>The character that invokes word substitution if found at the start of
-a line. The default is <SAMP>`^'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX42"></A>
-<DL>
-<DT><U>Variable:</U> char <B>history_comment_char</B>
-<DD>During tokenization, if this character is seen as the first character
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fsubst_005fchar"><span class="category">Variable: </span><span><em>char</em> <strong>history_subst_char</strong><a href='#index-history_005fsubst_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The character that invokes word substitution if found at the start of
+a line. The default is &lsquo;<samp>^</samp>&rsquo;.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fcomment_005fchar"><span class="category">Variable: </span><span><em>char</em> <strong>history_comment_char</strong><a href='#index-history_005fcomment_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
-
-<A NAME="IDX43"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>history_word_delimiters</B>
-<DD>The characters that separate tokens for <CODE>history_tokenize()</CODE>.
-The default value is <CODE>" \t\n()<>;&|"</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX44"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>history_search_delimiter_chars</B>
-<DD>The list of additional characters which can delimit a history search
-string, in addition to space, TAB, <SAMP>`:'</SAMP> and <SAMP>`?'</SAMP> in the case of
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fword_005fdelimiters"><span class="category">Variable: </span><span><em>char *</em> <strong>history_word_delimiters</strong><a href='#index-history_005fword_005fdelimiters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The characters that separate tokens for <code>history_tokenize()</code>.
+The default value is <code>&quot; \t\n()&lt;&gt;;&amp;|&quot;</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fsearch_005fdelimiter_005fchars"><span class="category">Variable: </span><span><em>char *</em> <strong>history_search_delimiter_chars</strong><a href='#index-history_005fsearch_005fdelimiter_005fchars' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The list of additional characters which can delimit a history search
+string, in addition to space, TAB, &lsquo;<samp>:</samp>&rsquo; and &lsquo;<samp>?</samp>&rsquo; in the case of
a substring search. The default is empty.
-</DL>
-</P><P>
-
-<A NAME="IDX45"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>history_no_expand_chars</B>
-<DD>The list of characters which inhibit history expansion if found immediately
-following <VAR>history_expansion_char</VAR>. The default is space, tab, newline,
-carriage return, and <SAMP>`='</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX46"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_quotes_inhibit_expansion</B>
-<DD>If non-zero, the history expansion code implements shell-like quoting:
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fno_005fexpand_005fchars"><span class="category">Variable: </span><span><em>char *</em> <strong>history_no_expand_chars</strong><a href='#index-history_005fno_005fexpand_005fchars' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The list of characters which inhibit history expansion if found immediately
+following <var>history_expansion_char</var>. The default is space, tab, newline,
+carriage return, and &lsquo;<samp>=</samp>&rsquo;.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fquotes_005finhibit_005fexpansion"><span class="category">Variable: </span><span><em>int</em> <strong>history_quotes_inhibit_expansion</strong><a href='#index-history_005fquotes_005finhibit_005fexpansion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, the history expansion code implements shell-like quoting:
single-quoted words are not scanned for the history expansion
character or the history comment character, and double-quoted words may
have history expansion performed, since single quotes are not special
within double quotes.
The default value is 0.
-</DL>
-</P><P>
-
-<A NAME="IDX47"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_quoting_state</B>
-<DD>An application may set this variable to indicate that the current line
-being expanded is subject to existing quoting. If set to <SAMP>`''</SAMP>, the
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005fquoting_005fstate"><span class="category">Variable: </span><span><em>int</em> <strong>history_quoting_state</strong><a href='#index-history_005fquoting_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>An application may set this variable to indicate that the current line
+being expanded is subject to existing quoting. If set to &lsquo;<samp>'</samp>&rsquo;, the
history expansion function will assume that the line is single-quoted and
inhibit expansion until it reads an unquoted closing single quote; if set
-to <SAMP>`"'</SAMP>, history expansion will assume the line is double quoted until
+to &lsquo;<samp>&quot;</samp>&rsquo;, history expansion will assume the line is double quoted until
it reads an unquoted closing double quote. If set to zero, the default,
the history expansion function will assume the line is not quoted and
treat quote characters within the line as described above.
-This is only effective if <VAR>history_quotes_inhibit_expansion</VAR> is set.
-</DL>
-</P><P>
-
-<A NAME="IDX48"></A>
-<DL>
-<DT><U>Variable:</U> rl_linebuf_func_t * <B>history_inhibit_expansion_function</B>
-<DD>This should be set to the address of a function that takes two arguments:
-a <CODE>char *</CODE> (<VAR>string</VAR>)
-and an <CODE>int</CODE> index into that string (<VAR>i</VAR>).
+This is only effective if <var>history_quotes_inhibit_expansion</var> is set.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-history_005finhibit_005fexpansion_005ffunction"><span class="category">Variable: </span><span><em>rl_linebuf_func_t *</em> <strong>history_inhibit_expansion_function</strong><a href='#index-history_005finhibit_005fexpansion_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This should be set to the address of a function that takes two arguments:
+a <code>char *</code> (<var>string</var>)
+and an <code>int</code> index into that string (<var>i</var>).
It should return a non-zero value if the history expansion starting at
-<VAR>string[i]</VAR> should not be performed; zero if the expansion should
+<var>string[i]</var> 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 <CODE>NULL</CODE>.
-</DL>
-</P><P>
-
-<A NAME="History Programming Example"></A>
-<HR SIZE="6">
-<A NAME="SEC18"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.5 History Programming Example </H2>
-<!--docid::SEC18::-->
-<P>
-
-The following program demonstrates simple use of the GNU History Library.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>#include &#60;stdio.h&#62;
-#include &#60;readline/history.h&#62;
+By default, this variable is set to <code>NULL</code>.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="section" id="History-Programming-Example">
+<div class="header">
+<p>
+Previous: <a href="#History-Variables" accesskey="p" rel="prev">History Variables</a>, Up: <a href="#Programming-with-GNU-History" accesskey="u" rel="up">Programming with GNU History</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="History-Programming-Example-1"></span><h3 class="section">2.5 History Programming Example</h3>
+
+<p>The following program demonstrates simple use of the <small>GNU</small> History Library.
+</p>
+<div class="example">
+<pre class="example">#include &lt;stdio.h&gt;
+#include &lt;readline/history.h&gt;
main (argc, argv)
int argc;
@@ -1246,10 +1026,10 @@ main (argc, argv)
using_history ();
while (!done)
{
- printf ("history$ ");
+ printf (&quot;history$ &quot;);
fflush (stdout);
t = fgets (line, sizeof (line) - 1, stdin);
- if (t &#38;&#38; *t)
+ if (t &amp;&amp; *t)
{
len = strlen (t);
if (t[len - 1] == '\n')
@@ -1257,18 +1037,18 @@ main (argc, argv)
}
if (!t)
- strcpy (line, "quit");
+ strcpy (line, &quot;quit&quot;);
if (line[0])
{
char *expansion;
int result;
- result = history_expand (line, &#38;expansion);
+ result = history_expand (line, &amp;expansion);
if (result)
- fprintf (stderr, "%s\n", expansion);
+ fprintf (stderr, &quot;%s\n&quot;, expansion);
- if (result &#60; 0 || result == 2)
+ if (result &lt; 0 || result == 2)
{
free (expansion);
continue;
@@ -1279,13 +1059,13 @@ main (argc, argv)
free (expansion);
}
- if (strcmp (line, "quit") == 0)
+ if (strcmp (line, &quot;quit&quot;) == 0)
done = 1;
- else if (strcmp (line, "save") == 0)
- write_history ("history_file");
- else if (strcmp (line, "read") == 0)
- read_history ("history_file");
- else if (strcmp (line, "list") == 0)
+ else if (strcmp (line, &quot;save&quot;) == 0)
+ write_history (&quot;history_file&quot;);
+ else if (strcmp (line, &quot;read&quot;) == 0)
+ read_history (&quot;history_file&quot;);
+ else if (strcmp (line, &quot;list&quot;) == 0)
{
register HIST_ENTRY **the_list;
register int i;
@@ -1293,113 +1073,95 @@ main (argc, argv)
the_list = history_list ();
if (the_list)
for (i = 0; the_list[i]; i++)
- printf ("%d: %s\n", i + history_base, the_list[i]-&#62;line);
+ printf (&quot;%d: %s\n&quot;, i + history_base, the_list[i]-&gt;line);
}
- else if (strncmp (line, "delete", 6) == 0)
+ else if (strncmp (line, &quot;delete&quot;, 6) == 0)
{
int which;
- if ((sscanf (line + 6, "%d", &#38;which)) == 1)
+ if ((sscanf (line + 6, &quot;%d&quot;, &amp;which)) == 1)
{
HIST_ENTRY *entry = remove_history (which);
if (!entry)
- fprintf (stderr, "No such entry %d\n", which);
+ fprintf (stderr, &quot;No such entry %d\n&quot;, which);
else
{
- free (entry-&#62;line);
+ free (entry-&gt;line);
free (entry);
}
}
else
{
- fprintf (stderr, "non-numeric arg given to `delete'\n");
+ fprintf (stderr, &quot;non-numeric arg given to `delete'\n&quot;);
}
}
}
}
-</FONT></pre></td></tr></table></P><P>
-
-<A NAME="GNU Free Documentation License"></A>
-<HR SIZE="6">
-<A NAME="SEC19"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC18"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC19::-->
-<P>
-
-<center>
- Version 1.3, 3 November 2008
-</center>
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-<A HREF="http://fsf.org/">http://fsf.org/</A>
+</pre></div>
+
+<hr>
+</div>
+</div>
+<div class="appendix" id="GNU-Free-Documentation-License">
+<div class="header">
+<p>
+Next: <a href="#Concept-Index" accesskey="n" rel="next">Concept Index</a>, Previous: <a href="#Programming-with-GNU-History" accesskey="p" rel="prev">Programming with GNU History</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU History Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="GNU-Free-Documentation-License-1"></span><h2 class="appendix">Appendix A GNU Free Documentation License</h2>
+
+<div align="center">Version 1.3, 3 November 2008
+</div>
+
+<div class="display">
+<pre class="display">Copyright &copy; 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+<a href="http://fsf.org/">http://fsf.org/</a>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
-</pre></td></tr></table></P><P>
+</pre></div>
-<OL>
-<LI>
-PREAMBLE
-<P>
+<ol start="0">
+<li> PREAMBLE
-The purpose of this License is to make a manual, textbook, or other
-functional and useful document <EM>free</EM> in the sense of freedom: to
+<p>The purpose of this License is to make a manual, textbook, or other
+functional and useful document <em>free</em> in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it,
with or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible
for modifications made by others.
-</P><P>
-
-This License is a kind of "copyleft", which means that derivative
+</p>
+<p>This License is a kind of &ldquo;copyleft&rdquo;, which means that derivative
works of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft
license designed for free software.
-</P><P>
-
-We have designed this License in order to use it for manuals for free
+</p>
+<p>We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a 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 instruction or reference.
-</P><P>
+</p>
+</li><li> APPLICABILITY AND DEFINITIONS
-<LI>
-APPLICABILITY AND DEFINITIONS
-<P>
-
-This License applies to any manual or other work, in any medium, that
+<p>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 grants a
world-wide, royalty-free license, unlimited in duration, to use that
-work under the conditions stated herein. The "Document", below,
+work under the conditions stated herein. The &ldquo;Document&rdquo;, 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
+licensee, and is addressed as &ldquo;you&rdquo;. You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.
-</P><P>
-
-A "Modified Version" of the Document means any work containing the
+</p>
+<p>A &ldquo;Modified Version&rdquo; of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.
-</P><P>
-
-A "Secondary Section" is a named appendix or a front-matter section
+</p>
+<p>A &ldquo;Secondary Section&rdquo; is a named appendix or a front-matter section
of the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall
+publishers or authors of the Document to the Document&rsquo;s overall
subject (or to related matters) and contains nothing that could fall
directly within that overall subject. (Thus, if the Document is in
part a textbook of mathematics, a Secondary Section may not explain
@@ -1407,24 +1169,21 @@ any mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.
-</P><P>
-
-The "Invariant Sections" are certain Secondary Sections whose titles
+</p>
+<p>The &ldquo;Invariant Sections&rdquo; 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.
-</P><P>
-
-The "Cover Texts" are certain short passages of text that are listed,
+</p>
+<p>The &ldquo;Cover Texts&rdquo; are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License. A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.
-</P><P>
-
-A "Transparent" copy of the Document means a machine-readable copy,
+</p>
+<p>A &ldquo;Transparent&rdquo; 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
@@ -1435,57 +1194,49 @@ 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".
-</P><P>
-
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input
-format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
-<FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification. Examples
-of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
-<FONT SIZE="-1">JPG</FONT>. Opaque formats include proprietary formats that can be
-read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
-<FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
-not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
+of text. A copy that is not &ldquo;Transparent&rdquo; is called &ldquo;Opaque&rdquo;.
+</p>
+<p>Examples of suitable formats for Transparent copies include plain
+<small>ASCII</small> without markup, Texinfo input format, LaTeX input
+format, <acronym>SGML</acronym> or <acronym>XML</acronym> using a publicly available
+<acronym>DTD</acronym>, and standard-conforming simple <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> designed for human modification. Examples
+of transparent image formats include <acronym>PNG</acronym>, <acronym>XCF</acronym> and
+<acronym>JPG</acronym>. Opaque formats include proprietary formats that can be
+read and edited only by proprietary word processors, <acronym>SGML</acronym> or
+<acronym>XML</acronym> for which the <acronym>DTD</acronym> and/or processing tools are
+not generally available, and the machine-generated <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> produced by some word processors for
output purposes only.
-</P><P>
-
-The "Title Page" means, for a printed book, the title page itself,
+</p>
+<p>The &ldquo;Title Page&rdquo; means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
+formats which do not have any title page as such, &ldquo;Title Page&rdquo; means
+the text near the most prominent appearance of the work&rsquo;s title,
preceding the beginning of the body of the text.
-</P><P>
-
-The "publisher" means any person or entity that distributes copies
+</p>
+<p>The &ldquo;publisher&rdquo; means any person or entity that distributes copies
of the Document to the public.
-</P><P>
-
-A section "Entitled XYZ" means a named subunit of the Document whose
+</p>
+<p>A section &ldquo;Entitled XYZ&rdquo; means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
-specific section name mentioned below, such as "Acknowledgements",
-"Dedications", "Endorsements", or "History".) To "Preserve the Title"
+specific section name mentioned below, such as &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, &ldquo;Endorsements&rdquo;, or &ldquo;History&rdquo;.) To &ldquo;Preserve the Title&rdquo;
of such a section when you modify the Document means that it remains a
-section "Entitled XYZ" according to this definition.
-</P><P>
-
-The Document may include Warranty Disclaimers next to the notice which
+section &ldquo;Entitled XYZ&rdquo; according to this definition.
+</p>
+<p>The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.
-</P><P>
+</p>
+</li><li> VERBATIM COPYING
-<LI>
-VERBATIM COPYING
-<P>
-
-You may copy and distribute the Document in any medium, either
+<p>You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
@@ -1494,19 +1245,15 @@ 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.
-</P><P>
-
-You may also lend copies, under the same conditions stated above, and
+</p>
+<p>You may also lend copies, under the same conditions stated above, and
you may publicly display copies.
-</P><P>
+</p>
+</li><li> COPYING IN QUANTITY
-<LI>
-COPYING IN QUANTITY
-<P>
-
-If you publish printed copies (or copies in media that commonly have
+<p>If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
-Document's license notice requires Cover Texts, you must enclose the
+Document&rsquo;s license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all 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
@@ -1516,15 +1263,13 @@ 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.
-</P><P>
-
-If the required texts for either cover are too voluminous to fit
+</p>
+<p>If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.
-</P><P>
-
-If you publish or distribute Opaque copies of the Document numbering
+</p>
+<p>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
@@ -1536,135 +1281,98 @@ 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.
-</P><P>
-
-It is requested, but not required, that you contact the authors of the
+</p>
+<p>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.
-</P><P>
+</p>
+</li><li> MODIFICATIONS
-<LI>
-MODIFICATIONS
-<P>
-
-You may copy and distribute a Modified Version of the Document under
+<p>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:
-</P><P>
-
-<OL>
-<LI>
-Use in the Title Page (and on the covers, if any) a title distinct
+</p>
+<ol type="A" start="1">
+<li> 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.
-<P>
-<LI>
-List on the Title Page, as authors, one or more persons or entities
+</li><li> List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has fewer than five),
unless they release you from this requirement.
-<P>
-<LI>
-State on the Title page the name of the publisher of the
+</li><li> State on the Title page the name of the publisher of the
Modified Version, as the publisher.
-<P>
-<LI>
-Preserve all the copyright notices of the Document.
-<P>
+</li><li> Preserve all the copyright notices of the Document.
-<LI>
-Add an appropriate copyright notice for your modifications
+</li><li> Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
-<P>
-<LI>
-Include, immediately after the copyright notices, a license notice
+</li><li> Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
-<P>
-<LI>
-Preserve in that license notice the full lists of Invariant Sections
-and required Cover Texts given in the Document's license notice.
-<P>
+</li><li> Preserve in that license notice the full lists of Invariant Sections
+and required Cover Texts given in the Document&rsquo;s license notice.
-<LI>
-Include an unaltered copy of this License.
-<P>
+</li><li> Include an unaltered copy of this License.
-<LI>
-Preserve the section Entitled "History", Preserve its Title, and add
+</li><li> Preserve the section Entitled &ldquo;History&rdquo;, 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
+there is no section Entitled &ldquo;History&rdquo; 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.
-<P>
-<LI>
-Preserve the network location, if any, given in the Document for
+</li><li> 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.
+it was based on. These may be placed in the &ldquo;History&rdquo; 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.
-<P>
-<LI>
-For any section Entitled "Acknowledgements" or "Dedications", Preserve
+</li><li> For any section Entitled &ldquo;Acknowledgements&rdquo; or &ldquo;Dedications&rdquo;, 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.
-<P>
-<LI>
-Preserve all the Invariant Sections of the Document,
+</li><li> 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.
-<P>
-<LI>
-Delete any section Entitled "Endorsements". Such a section
+</li><li> Delete any section Entitled &ldquo;Endorsements&rdquo;. Such a section
may not be included in the Modified Version.
-<P>
-<LI>
-Do not retitle any existing section to be Entitled "Endorsements" or
+</li><li> Do not retitle any existing section to be Entitled &ldquo;Endorsements&rdquo; or
to conflict in title with any Invariant Section.
-<P>
-<LI>
-Preserve any Warranty Disclaimers.
-</OL>
-<P>
+</li><li> Preserve any Warranty Disclaimers.
+</li></ol>
-If the Modified Version includes new front-matter sections or
+<p>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.
+list of Invariant Sections in the Modified Version&rsquo;s license notice.
These titles must be distinct from any other section titles.
-</P><P>
-
-You may add a section Entitled "Endorsements", provided it contains
+</p>
+<p>You may add a section Entitled &ldquo;Endorsements&rdquo;, provided it contains
nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
+parties&mdash;for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.
-</P><P>
-
-You may add a passage of up to five words as a Front-Cover Text, and a
+</p>
+<p>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
@@ -1673,26 +1381,21 @@ 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.
-</P><P>
-
-The author(s) and publisher(s) of the Document do not by this License
+</p>
+<p>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 assert or
imply endorsement of any Modified Version.
-</P><P>
-
-<LI>
-COMBINING DOCUMENTS
-<P>
+</p>
+</li><li> COMBINING DOCUMENTS
-You may combine the Document with other documents released under this
+<p>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, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.
-</P><P>
-
-The combined work need only contain one copy of this License, and
+</p>
+<p>The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
@@ -1700,60 +1403,48 @@ adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.
-</P><P>
-
-In the combination, you must combine any sections Entitled "History"
+</p>
+<p>In the combination, you must combine any sections Entitled &ldquo;History&rdquo;
in the various original documents, forming one section Entitled
-"History"; likewise combine any sections Entitled "Acknowledgements",
-and any sections Entitled "Dedications". You must delete all
-sections Entitled "Endorsements."
-</P><P>
+&ldquo;History&rdquo;; likewise combine any sections Entitled &ldquo;Acknowledgements&rdquo;,
+and any sections Entitled &ldquo;Dedications&rdquo;. You must delete all
+sections Entitled &ldquo;Endorsements.&rdquo;
+</p>
+</li><li> COLLECTIONS OF DOCUMENTS
-<LI>
-COLLECTIONS OF DOCUMENTS
-<P>
-
-You may make a collection consisting of the Document and other documents
+<p>You may make a collection consisting of the Document and other 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.
-</P><P>
-
-You may extract a single document from such a collection, and distribute
+</p>
+<p>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.
-</P><P>
+</p>
+</li><li> AGGREGATION WITH INDEPENDENT WORKS
-<LI>
-AGGREGATION WITH INDEPENDENT WORKS
-<P>
-
-A compilation of the Document or its derivatives with other separate
+<p>A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
-distribution medium, is called an "aggregate" if the copyright
+distribution medium, is called an &ldquo;aggregate&rdquo; 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.
+of the compilation&rsquo;s users beyond what the individual works permit.
When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
-</P><P>
-
-If the Cover Text requirement of section 3 is applicable to these
+</p>
+<p>If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of
-the entire aggregate, the Document's Cover Texts may be placed on
+the entire aggregate, the Document&rsquo;s Cover Texts may be placed on
covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form.
Otherwise they must appear on printed covers that bracket the whole
aggregate.
-</P><P>
+</p>
+</li><li> TRANSLATION
-<LI>
-TRANSLATION
-<P>
-
-Translation is considered a kind of modification, so you may
+<p>Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special
permission from their copyright holders, but you may include
@@ -1765,586 +1456,296 @@ the original English version of this License and the original versions
of those notices and disclaimers. In case of a disagreement between
the translation and the original version of this License or a notice
or disclaimer, the original version will prevail.
-</P><P>
-
-If a section in the Document is Entitled "Acknowledgements",
-"Dedications", or "History", the requirement (section 4) to Preserve
+</p>
+<p>If a section in the Document is Entitled &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, or &ldquo;History&rdquo;, the requirement (section 4) to Preserve
its Title (section 1) will typically require changing the actual
title.
-</P><P>
+</p>
+</li><li> TERMINATION
-<LI>
-TERMINATION
-<P>
-
-You may not copy, modify, sublicense, or distribute the Document
+<p>You may not copy, modify, sublicense, or distribute the Document
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense, or distribute it is void, and
will automatically terminate your rights under this License.
-</P><P>
-
-However, if you cease all violation of this License, then your license
+</p>
+<p>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 copyright holder
fails to notify you of the violation by some reasonable means prior to
60 days after the cessation.
-</P><P>
-
-Moreover, your license from a particular copyright holder is
+</p>
+<p>Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
-</P><P>
-
-Termination of your rights under this section does not terminate the
+</p>
+<p>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.
-</P><P>
+</p>
+</li><li> FUTURE REVISIONS OF THIS LICENSE
-<LI>
-FUTURE REVISIONS OF THIS LICENSE
-<P>
-
-The Free Software Foundation may publish new, revised versions
+<p>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
-<A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
-</P><P>
-
-Each version of the License is given a distinguishing version number.
+<a href="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</a>.
+</p>
+<p>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
+License &ldquo;or any later version&rdquo; 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 proxy's public statement of acceptance of a
+License can be used, that proxy&rsquo;s public statement of acceptance of a
version permanently authorizes you to choose that version for the
Document.
-</P><P>
+</p>
+</li><li> RELICENSING
-<LI>
-RELICENSING
-<P>
-
-"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+<p>&ldquo;Massive Multiauthor Collaboration Site&rdquo; (or &ldquo;MMC Site&rdquo;) means any
World Wide Web server that publishes copyrightable works and also
provides prominent facilities for anybody to edit those works. A
public wiki that anybody can edit is an example of such a server. A
-"Massive Multiauthor Collaboration" (or "MMC") contained in the
+&ldquo;Massive Multiauthor Collaboration&rdquo; (or &ldquo;MMC&rdquo;) contained in the
site means any set of copyrightable works thus published on the MMC
site.
-</P><P>
-
-"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+</p>
+<p>&ldquo;CC-BY-SA&rdquo; means the Creative Commons Attribution-Share Alike 3.0
license published by Creative Commons Corporation, a not-for-profit
corporation with a principal place of business in San Francisco,
California, as well as future copyleft versions of that license
published by that same organization.
-</P><P>
-
-"Incorporate" means to publish or republish a Document, in whole or
+</p>
+<p>&ldquo;Incorporate&rdquo; means to publish or republish a Document, in whole or
in part, as part of another Document.
-</P><P>
-
-An MMC is "eligible for relicensing" if it is licensed under this
+</p>
+<p>An MMC is &ldquo;eligible for relicensing&rdquo; if it is licensed under this
License, and if all works that were first published under this License
somewhere other than this MMC, and subsequently incorporated in whole
or in part into the MMC, (1) had no cover texts or invariant sections,
and (2) were thus incorporated prior to November 1, 2008.
-</P><P>
-
-The operator of an MMC Site may republish an MMC contained in the site
+</p>
+<p>The operator of an MMC Site may republish an MMC contained in the site
under CC-BY-SA on the same site at any time before August 1, 2009,
provided the MMC is eligible for relicensing.
-</P><P>
-
-</OL>
-<P>
+</p>
+</li></ol>
-<A NAME="SEC20"></A>
-<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC20::-->
-<P>
+<span id="ADDENDUM_003a-How-to-use-this-License-for-your-documents"></span><h3 class="heading">ADDENDUM: How to use this License for your documents</h3>
-To use this License in a document you have written, include a copy of
+<p>To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and
license notices just after the title page:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre> Copyright (C) <VAR>year</VAR> <VAR>your name</VAR>.
+</p>
+<div class="example">
+<pre class="example"> Copyright (C) <var>year</var> <var>your name</var>.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the "with<small>...</small>Texts." line with this:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre> with the Invariant Sections being <VAR>list their titles</VAR>, with
- the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
- being <VAR>list</VAR>.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections without Cover Texts, or some other
+</pre></div>
+
+<p>If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
+replace the &ldquo;with&hellip;Texts.&rdquo; line with this:
+</p>
+<div class="example">
+<pre class="example"> with the Invariant Sections being <var>list their titles</var>, with
+ the Front-Cover Texts being <var>list</var>, and with the Back-Cover Texts
+ being <var>list</var>.
+</pre></div>
+
+<p>If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.
-</P><P>
-
-If your document contains nontrivial examples of program code, we
+</p>
+<p>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.
-</P><P>
-
-<A NAME="Concept Index"></A>
-<HR SIZE="6">
-<A NAME="SEC21"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC22"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> B. Concept Index </H1>
-<!--docid::SEC21::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="history.html#cp_A" style="text-decoration:none"><b>A</b></A>
- &nbsp;
-<A HREF="history.html#cp_E" style="text-decoration:none"><b>E</b></A>
+</p>
+
+
+<hr>
+</div>
+<div class="appendix" id="Concept-Index">
+<div class="header">
+<p>
+Next: <a href="#Function-and-Variable-Index" accesskey="n" rel="next">Function and Variable Index</a>, Previous: <a href="#GNU-Free-Documentation-License" accesskey="p" rel="prev">GNU Free Documentation License</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU History Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Concept-Index-1"></span><h2 class="appendix">Appendix B Concept Index</h2>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Concept-Index_cp_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="history.html#cp_H" style="text-decoration:none"><b>H</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-E"><b>E</b></a>
&nbsp;
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<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="cp_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX23">anchored search</A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#SEC3">event designators</A></TD><TD valign=top><A HREF="history.html#SEC3">1.1.1 Event Designators</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX1">history events</A></TD><TD valign=top><A HREF="history.html#SEC3">1.1.1 Event Designators</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#SEC2">history expansion</A></TD><TD valign=top><A HREF="history.html#SEC2">1.1 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#SEC14">History Searching</A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</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="history.html#cp_A" style="text-decoration:none"><b>A</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-H"><b>H</b></a>
&nbsp;
-<A HREF="history.html#cp_E" style="text-decoration:none"><b>E</b></A>
+</td></tr></table>
+<table class="index-cp" border="0">
+<tr><td></td><th align="left">Index Entry</th><td>&nbsp;</td><th align="left"> Section</th></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-A">A</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-anchored-search">anchored search</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Searching-the-History-List">Searching the History List</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-E">E</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-event-designators">event designators</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Event-Designators">Event Designators</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-H">H</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history-events">history events</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Event-Designators">Event Designators</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history-expansion">history expansion</a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Interaction">History Interaction</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-History-Searching">History Searching</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Searching-the-History-List">Searching the History List</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+</table>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Concept-Index_cp_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="history.html#cp_H" style="text-decoration:none"><b>H</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-E"><b>E</b></a>
&nbsp;
-</td></tr></table><br><P>
-
-<A NAME="Function and Variable Index"></A>
-<HR SIZE="6">
-<A NAME="SEC22"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> C. Function and Variable Index </H1>
-<!--docid::SEC22::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="history.html#vr_A" style="text-decoration:none"><b>A</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-H"><b>H</b></a>
&nbsp;
-<A HREF="history.html#vr_C" style="text-decoration:none"><b>C</b></A>
+</td></tr></table>
+
+<hr>
+</div>
+<div class="appendix" id="Function-and-Variable-Index">
+<div class="header">
+<p>
+Previous: <a href="#Concept-Index" accesskey="p" rel="prev">Concept Index</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU History Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Function-and-Variable-Index-1"></span><h2 class="appendix">Appendix C Function and Variable Index</h2>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="history.html#vr_F" style="text-decoration:none"><b>F</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-C"><b>C</b></a>
&nbsp;
-<A HREF="history.html#vr_G" style="text-decoration:none"><b>G</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-F"><b>F</b></a>
&nbsp;
-<A HREF="history.html#vr_H" style="text-decoration:none"><b>H</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-G"><b>G</b></a>
&nbsp;
-<A HREF="history.html#vr_N" style="text-decoration:none"><b>N</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-H"><b>H</b></a>
&nbsp;
-<A HREF="history.html#vr_P" style="text-decoration:none"><b>P</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-N"><b>N</b></a>
&nbsp;
-<A HREF="history.html#vr_R" style="text-decoration:none"><b>R</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-P"><b>P</b></a>
&nbsp;
-<A HREF="history.html#vr_S" style="text-decoration:none"><b>S</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-R"><b>R</b></a>
&nbsp;
-<A HREF="history.html#vr_U" style="text-decoration:none"><b>U</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-S"><b>S</b></a>
&nbsp;
-<A HREF="history.html#vr_W" style="text-decoration:none"><b>W</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-U"><b>U</b></a>
&nbsp;
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<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="vr_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX5"><CODE>add_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX6"><CODE>add_history_time</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX30"><CODE>append_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX10"><CODE>clear_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX16"><CODE>current_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_F"></A>F</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX8"><CODE>free_history_entry</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_G"></A>G</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX33"><CODE>get_history_event</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX35"><CODE>history_arg_extract</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX36"><CODE>history_base</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX42"><CODE>history_comment_char</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX32"><CODE>history_expand</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX40"><CODE>history_expansion_char</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX17"><CODE>history_get</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX3"><CODE>history_get_history_state</CODE></A></TD><TD valign=top><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX18"><CODE>history_get_time</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX48"><CODE>history_inhibit_expansion_function</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX13"><CODE>history_is_stifled</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX37"><CODE>history_length</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX14"><CODE>history_list</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX38"><CODE>history_max_entries</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX45"><CODE>history_no_expand_chars</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX46"><CODE>history_quotes_inhibit_expansion</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX47"><CODE>history_quoting_state</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX24"><CODE>history_search</CODE></A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX44"><CODE>history_search_delimiter_chars</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX26"><CODE>history_search_pos</CODE></A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX25"><CODE>history_search_prefix</CODE></A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX4"><CODE>history_set_history_state</CODE></A></TD><TD valign=top><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX20"><CODE>history_set_pos</CODE></A></TD><TD valign=top><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX41"><CODE>history_subst_char</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX34"><CODE>history_tokenize</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX19"><CODE>history_total_bytes</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX31"><CODE>history_truncate_file</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX43"><CODE>history_word_delimiters</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX39"><CODE>history_write_timestamps</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_N"></A>N</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX22"><CODE>next_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_P"></A>P</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX21"><CODE>previous_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX27"><CODE>read_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX28"><CODE>read_history_range</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX7"><CODE>remove_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX9"><CODE>replace_history_entry</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_S"></A>S</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX11"><CODE>stifle_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_U"></A>U</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX12"><CODE>unstifle_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX2"><CODE>using_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_W"></A>W</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX15"><CODE>where_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX29"><CODE>write_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</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="history.html#vr_A" style="text-decoration:none"><b>A</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-W"><b>W</b></a>
&nbsp;
-<A HREF="history.html#vr_C" style="text-decoration:none"><b>C</b></A>
+</td></tr></table>
+<table class="index-vr" border="0">
+<tr><td></td><th align="left">Index Entry</th><td>&nbsp;</td><th align="left"> Section</th></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-A">A</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-add_005fhistory"><code>add_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-add_005fhistory_005ftime"><code>add_history_time</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-append_005fhistory"><code>append_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Managing-the-History-File">Managing the History File</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-C">C</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-clear_005fhistory"><code>clear_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-current_005fhistory"><code>current_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Information-About-the-History-List">Information About the History List</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-F">F</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-free_005fhistory_005fentry"><code>free_history_entry</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-G">G</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-get_005fhistory_005fevent"><code>get_history_event</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Expansion">History Expansion</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-H">H</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005farg_005fextract"><code>history_arg_extract</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Expansion">History Expansion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fbase"><code>history_base</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fcomment_005fchar"><code>history_comment_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fexpand"><code>history_expand</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Expansion">History Expansion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fexpansion_005fchar"><code>history_expansion_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fget"><code>history_get</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Information-About-the-History-List">Information About the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fget_005fhistory_005fstate"><code>history_get_history_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Initializing-History-and-State-Management">Initializing History and State Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fget_005ftime"><code>history_get_time</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Information-About-the-History-List">Information About the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005finhibit_005fexpansion_005ffunction"><code>history_inhibit_expansion_function</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fis_005fstifled"><code>history_is_stifled</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005flength"><code>history_length</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005flist"><code>history_list</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Information-About-the-History-List">Information About the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fmax_005fentries"><code>history_max_entries</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fno_005fexpand_005fchars"><code>history_no_expand_chars</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fquotes_005finhibit_005fexpansion"><code>history_quotes_inhibit_expansion</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fquoting_005fstate"><code>history_quoting_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fsearch"><code>history_search</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Searching-the-History-List">Searching the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fsearch_005fdelimiter_005fchars"><code>history_search_delimiter_chars</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fsearch_005fpos"><code>history_search_pos</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Searching-the-History-List">Searching the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fsearch_005fprefix"><code>history_search_prefix</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Searching-the-History-List">Searching the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fset_005fhistory_005fstate"><code>history_set_history_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Initializing-History-and-State-Management">Initializing History and State Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fset_005fpos"><code>history_set_pos</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Moving-Around-the-History-List">Moving Around the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fsubst_005fchar"><code>history_subst_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005ftokenize"><code>history_tokenize</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Expansion">History Expansion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005ftotal_005fbytes"><code>history_total_bytes</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Information-About-the-History-List">Information About the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005ftruncate_005ffile"><code>history_truncate_file</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Managing-the-History-File">Managing the History File</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fword_005fdelimiters"><code>history_word_delimiters</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_005fwrite_005ftimestamps"><code>history_write_timestamps</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-Variables">History Variables</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-N">N</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-next_005fhistory"><code>next_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Moving-Around-the-History-List">Moving Around the History List</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-P">P</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-previous_005fhistory"><code>previous_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Moving-Around-the-History-List">Moving Around the History List</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-R">R</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-read_005fhistory"><code>read_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Managing-the-History-File">Managing the History File</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-read_005fhistory_005frange"><code>read_history_range</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Managing-the-History-File">Managing the History File</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-remove_005fhistory"><code>remove_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-replace_005fhistory_005fentry"><code>replace_history_entry</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-S">S</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-stifle_005fhistory"><code>stifle_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-U">U</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-unstifle_005fhistory"><code>unstifle_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#History-List-Management">History List Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-using_005fhistory"><code>using_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Initializing-History-and-State-Management">Initializing History and State Management</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_vr_letter-W">W</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-where_005fhistory"><code>where_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Information-About-the-History-List">Information About the History List</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-write_005fhistory"><code>write_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Managing-the-History-File">Managing the History File</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+</table>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="history.html#vr_F" style="text-decoration:none"><b>F</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-C"><b>C</b></a>
&nbsp;
-<A HREF="history.html#vr_G" style="text-decoration:none"><b>G</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-F"><b>F</b></a>
&nbsp;
-<A HREF="history.html#vr_H" style="text-decoration:none"><b>H</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-G"><b>G</b></a>
&nbsp;
-<A HREF="history.html#vr_N" style="text-decoration:none"><b>N</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-H"><b>H</b></a>
&nbsp;
-<A HREF="history.html#vr_P" style="text-decoration:none"><b>P</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-N"><b>N</b></a>
&nbsp;
-<A HREF="history.html#vr_R" style="text-decoration:none"><b>R</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-P"><b>P</b></a>
&nbsp;
-<A HREF="history.html#vr_S" style="text-decoration:none"><b>S</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-R"><b>R</b></a>
&nbsp;
-<A HREF="history.html#vr_U" style="text-decoration:none"><b>U</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-S"><b>S</b></a>
&nbsp;
-<A HREF="history.html#vr_W" style="text-decoration:none"><b>W</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-U"><b>U</b></a>
&nbsp;
-</td></tr></table><br><P>
-
-<HR SIZE="6">
-<A NAME="SEC_Contents"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Table of Contents</H1>
-<UL>
-<A NAME="TOC1" HREF="history.html#SEC1">1. Using History Interactively</A>
-<BR>
-<UL>
-<A NAME="TOC2" HREF="history.html#SEC2">1.1 History Expansion</A>
-<BR>
-<UL>
-<A NAME="TOC3" HREF="history.html#SEC3">1.1.1 Event Designators</A>
-<BR>
-<A NAME="TOC4" HREF="history.html#SEC4">1.1.2 Word Designators</A>
-<BR>
-<A NAME="TOC5" HREF="history.html#SEC5">1.1.3 Modifiers</A>
-<BR>
-</UL>
-</UL>
-<A NAME="TOC6" HREF="history.html#SEC6">2. Programming with GNU History</A>
-<BR>
-<UL>
-<A NAME="TOC7" HREF="history.html#SEC7">2.1 Introduction to History</A>
-<BR>
-<A NAME="TOC8" HREF="history.html#SEC8">2.2 History Storage</A>
-<BR>
-<A NAME="TOC9" HREF="history.html#SEC9">2.3 History Functions</A>
-<BR>
-<UL>
-<A NAME="TOC10" HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A>
-<BR>
-<A NAME="TOC11" HREF="history.html#SEC11">2.3.2 History List Management</A>
-<BR>
-<A NAME="TOC12" HREF="history.html#SEC12">2.3.3 Information About the History List</A>
-<BR>
-<A NAME="TOC13" HREF="history.html#SEC13">2.3.4 Moving Around the History List</A>
-<BR>
-<A NAME="TOC14" HREF="history.html#SEC14">2.3.5 Searching the History List</A>
-<BR>
-<A NAME="TOC15" HREF="history.html#SEC15">2.3.6 Managing the History File</A>
-<BR>
-<A NAME="TOC16" HREF="history.html#SEC16">2.3.7 History Expansion</A>
-<BR>
-</UL>
-<A NAME="TOC17" HREF="history.html#SEC17">2.4 History Variables</A>
-<BR>
-<A NAME="TOC18" HREF="history.html#SEC18">2.5 History Programming Example</A>
-<BR>
-</UL>
-<A NAME="TOC19" HREF="history.html#SEC19">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC21" HREF="history.html#SEC21">B. Concept Index</A>
-<BR>
-<A NAME="TOC22" HREF="history.html#SEC22">C. Function and Variable Index</A>
-<BR>
-</UL>
-<HR SIZE=1>
-<A NAME="SEC_OVERVIEW"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Short Table of Contents</H1>
-<BLOCKQUOTE>
-<A NAME="TOC1" HREF="history.html#SEC1">1. Using History Interactively</A>
-<BR>
-<A NAME="TOC6" HREF="history.html#SEC6">2. Programming with GNU History</A>
-<BR>
-<A NAME="TOC19" HREF="history.html#SEC19">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC21" HREF="history.html#SEC21">B. Concept Index</A>
-<BR>
-<A NAME="TOC22" HREF="history.html#SEC22">C. Function and Variable Index</A>
-<BR>
-
-</BLOCKQUOTE>
-<HR SIZE=1>
-<A NAME="SEC_About"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<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>October, 30 2020</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-<P></P>
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt; ] </TD>
-<TD ALIGN="CENTER">
-Back
-</TD>
-<TD>
-previous section in reading order
-</TD>
-<TD>
-1.2.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt; ] </TD>
-<TD ALIGN="CENTER">
-Forward
-</TD>
-<TD>
-next section in reading order
-</TD>
-<TD>
-1.2.4
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt;&lt; ] </TD>
-<TD ALIGN="CENTER">
-FastBack
-</TD>
-<TD>
-previous or up-and-previous section
-</TD>
-<TD>
-1.1
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ Up ] </TD>
-<TD ALIGN="CENTER">
-Up
-</TD>
-<TD>
-up section
-</TD>
-<TD>
-1.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt;&gt; ] </TD>
-<TD ALIGN="CENTER">
-FastForward
-</TD>
-<TD>
-next or up-and-next section
-</TD>
-<TD>
-1.3
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Top] </TD>
-<TD ALIGN="CENTER">
-Top
-</TD>
-<TD>
-cover (top) of document
-</TD>
-<TD>
+<a class="summary-letter" href="#Function-and-Variable-Index_vr_letter-W"><b>W</b></a>
&nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Contents] </TD>
-<TD ALIGN="CENTER">
-Contents
-</TD>
-<TD>
-table of contents
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Index] </TD>
-<TD ALIGN="CENTER">
-Index
-</TD>
-<TD>
-concept index
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ ? ] </TD>
-<TD ALIGN="CENTER">
-About
-</TD>
-<TD>
-this page
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of
-the following structure:
-<UL>
-<LI> 1. Section One </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-
-<HR SIZE=1>
-<BR>
-<FONT SIZE="-1">
-This document was generated
-by <I>Chet Ramey</I> on <I>October, 30 2020</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-
-</BODY>
-</HTML>
+</td></tr></table>
+
+</div>
+</div>
+
+
+
+</body>
+</html>
diff --git a/doc/history.info b/doc/history.info
index 749d53e..f1e7d4a 100644
--- a/doc/history.info
+++ b/doc/history.info
@@ -1,11 +1,11 @@
-This is history.info, produced by makeinfo version 6.7 from
+This is history.info, produced by makeinfo version 6.8 from
history.texi.
-This document describes the GNU History library (version 8.1, 29 October
-2020), a programming tool that provides a consistent user interface for
+This document describes the GNU History library (version 8.2, 11 March
+2022), a programming tool that provides a consistent user interface for
recalling lines of previously typed input.
- Copyright (C) 1988-2020 Free Software Foundation, Inc.
+ Copyright (C) 1988-2022 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
@@ -1395,28 +1395,28 @@ Appendix C Function and Variable Index

Tag Table:
-Node: Top848
-Node: Using History Interactively1493
-Node: History Interaction2001
-Node: Event Designators3899
-Node: Word Designators5173
-Node: Modifiers6933
-Node: Programming with GNU History8478
-Node: Introduction to History9222
-Node: History Storage10900
-Node: History Functions12035
-Node: Initializing History and State Management13024
-Node: History List Management13836
-Node: Information About the History List16130
-Node: Moving Around the History List17744
-Node: Searching the History List18837
-Node: Managing the History File20762
-Node: History Expansion22582
-Node: History Variables24511
-Node: History Programming Example28491
-Node: GNU Free Documentation License31168
-Node: Concept Index56340
-Node: Function and Variable Index57045
+Node: Top846
+Node: Using History Interactively1491
+Node: History Interaction1999
+Node: Event Designators3897
+Node: Word Designators5171
+Node: Modifiers6931
+Node: Programming with GNU History8476
+Node: Introduction to History9220
+Node: History Storage10898
+Node: History Functions12033
+Node: Initializing History and State Management13022
+Node: History List Management13834
+Node: Information About the History List16128
+Node: Moving Around the History List17742
+Node: Searching the History List18835
+Node: Managing the History File20760
+Node: History Expansion22580
+Node: History Variables24509
+Node: History Programming Example28489
+Node: GNU Free Documentation License31166
+Node: Concept Index56338
+Node: Function and Variable Index57043

End Tag Table
diff --git a/doc/history.pdf b/doc/history.pdf
index 949244f..a86cd5c 100644
--- a/doc/history.pdf
+++ b/doc/history.pdf
Binary files differ
diff --git a/doc/history.ps b/doc/history.ps
index 3e9c231..cfb37c1 100644
--- a/doc/history.ps
+++ b/doc/history.ps
@@ -1,7 +1,7 @@
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.999 Copyright 2019 Radical Eye Software
+%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
%%Title: history.dvi
-%%CreationDate: Fri Oct 30 14:07:46 2020
+%%CreationDate: Fri Apr 8 19:52:34 2022
%%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 2020.10.30:1007
+%DVIPSSource: TeX output 2022.04.08:1552
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -5240,29 +5240,29 @@ ifelse
%%EndSetup
%%Page: 1 1
TeXDict begin 1 0 bop 150 1318 a Fr(GNU)65 b(History)h(Library)p
-150 1418 3600 34 v 1920 1515 a Fq(Edition)31 b(8.1,)h(for)e
-Fp(History)e(Library)h Fq(V)-8 b(ersion)31 b(8.1.)3217
-1623 y(Octob)s(er)f(2020)150 4927 y Fo(Chet)45 b(Ramey)-11
+150 1418 3600 34 v 1920 1515 a Fq(Edition)31 b(8.2,)h(for)e
+Fp(History)e(Library)h Fq(V)-8 b(ersion)31 b(8.2.)3285
+1623 y(Marc)m(h)g(2022)150 4927 y Fo(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 Fq(This)35 b(do)s(cumen)m(t)g(describ)
-s(es)g(the)h(GNU)h(History)f(library)f(\(v)m(ersion)i(8.1,)h(29)f
-(Octob)s(er)f(2020\),)j(a)d(pro-)150 4523 y(gramming)23
-b(to)s(ol)g(that)g(pro)m(vides)f(a)h(consisten)m(t)h(user)d(in)m
-(terface)j(for)e(recalling)i(lines)f(of)f(previously)g(t)m(yp)s(ed)150
-4633 y(input.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577
-4767 y Fn(\015)30 b Fq(1988{2020)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 Fq(This)25 b(do)s(cumen)m(t)g(describ)
+s(es)g(the)g(GNU)h(History)h(library)e(\(v)m(ersion)h(8.2,)i(11)e(Marc)
+m(h)g(2022\),)j(a)d(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 Fn(\015)30
+b Fq(1988{2022)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
diff --git a/doc/history.texi b/doc/history.texi
index 7a3a476..721118b 100644
--- a/doc/history.texi
+++ b/doc/history.texi
@@ -12,7 +12,7 @@ This document describes the GNU History library
a programming tool that provides a consistent user interface for
recalling lines of previously typed input.
-Copyright @copyright{} 1988--2020 Free Software Foundation, Inc.
+Copyright @copyright{} 1988--2022 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
diff --git a/doc/hstech.texi b/doc/hstech.texi
index 7ac1195..da6417b 100644
--- a/doc/hstech.texi
+++ b/doc/hstech.texi
@@ -1,7 +1,7 @@
@ignore
This file documents the user interface to the GNU History library.
-Copyright (C) 1988-2020 Free Software Foundation, Inc.
+Copyright (C) 1988-2022 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
Permission is granted to make and distribute verbatim copies of this manual
diff --git a/doc/hsuser.texi b/doc/hsuser.texi
index 0a81c46..99351e3 100644
--- a/doc/hsuser.texi
+++ b/doc/hsuser.texi
@@ -1,7 +1,7 @@
@ignore
This file documents the user interface to the GNU History library.
-Copyright (C) 1988--2020 Free Software Foundation, Inc.
+Copyright (C) 1988--2022 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
Permission is granted to make and distribute verbatim copies of this manual
diff --git a/doc/readline.0 b/doc/readline.0
index d32329b..f96ec72 100644
--- a/doc/readline.0
+++ b/doc/readline.0
@@ -173,23 +173,49 @@ READLINE(3) Library Functions Manual READLINE(3)
sitive), and "1" are equivalent to On. All other values are equivalent
to Off. The variables and their default values are:
+ active-region-start-color
+ A string variable that controls the text color and background
+ when displaying the text in the active region (see the descrip-
+ tion of enable-active-region below). This string must not take
+ up any physical character positions on the display, so it should
+ consist only of terminal escape sequences. It is output to the
+ terminal before displaying the text in the active region. This
+ variable is reset to the default value whenever the terminal
+ type changes. The default value is the string that puts the
+ terminal in standout mode, as obtained from the terminal's ter-
+ minfo description. A sample value might be "\e[01;33m".
+ active-region-end-color
+ A string variable that "undoes" the effects of active-re-
+ gion-start-color and restores "normal" terminal display appear-
+ ance after displaying text in the active region. This string
+ must not take up any physical character positions on the dis-
+ play, so it should consist only of terminal escape sequences.
+ It is output to the terminal after displaying the text in the
+ active region. This variable is reset to the default value
+ whenever the terminal type changes. The default value is the
+ string that restores the terminal from standout mode, as ob-
+ tained from the terminal's terminfo description. A sample value
+ might be "\e[0m".
bell-style (audible)
- Controls what happens when readline wants to ring the terminal
+ 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
+ visible, readline uses a visible bell if one is available. If
set to audible, readline attempts to ring the terminal's bell.
bind-tty-special-chars (On)
- If set to On (the default), readline attempts to bind the con-
- trol characters treated specially by the kernel's terminal
+ If set to On (the default), readline attempts to bind the con-
+ trol characters treated specially by the kernel's terminal
driver to their readline equivalents.
blink-matching-paren (Off)
If set to On, readline attempts to briefly move the cursor to an
opening parenthesis when a closing parenthesis is inserted.
colored-completion-prefix (Off)
- If set to On, when listing completions, readline displays the
+ If set to On, 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 LS_COLORS environment variable.
+ ent color. The color definitions are taken from the value of
+ the LS_COLORS environment variable. If there is a color defini-
+ tion in $LS_COLORS for the custom suffix "readline-colored-com-
+ pletion-prefix", readline uses this color for the common prefix
+ instead of its default.
colored-stats (Off)
If set to On, readline displays possible completions using dif-
ferent colors to indicate their file type. The color defini-
@@ -254,13 +280,23 @@ READLINE(3) Library Functions Manual READLINE(3)
escapes to begin and end sequences of non-printing characters,
which can be used to embed a terminal control sequence into the
mode string.
+ enable-active-region (On)
+ The point is the current cursor position, and mark refers to a
+ saved cursor position. The text between the point and mark is
+ referred to as the region. When this variable is set to On,
+ readline allows certain commands to designate the region as ac-
+ tive. When the region is active, readline highlights the text
+ in the region using the value of the active-region-start-color,
+ which defaults to the string that enables the terminal's stand-
+ out mode. The active region shows the text inserted by brack-
+ eted-paste and any matching text found by incremental and non-
+ incremental history searches.
enable-bracketed-paste (On)
- 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 char-
- acter as if it had been read from the keyboard. This can pre-
- vent pasted characters from being interpreted as editing com-
- mands.
+ When set to On, readline configures the terminal 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 prevents readline from executing any editing
+ commands bound to key sequences appearing in the pasted text.
enable-keypad (Off)
When set to On, readline will try to enable the application key-
pad when it is called. Some systems need this to enable the ar-
@@ -576,6 +612,16 @@ READLINE(3) Library Functions Manual READLINE(3)
end-of-history (M->)
Move to the end of the input history, i.e., the line currently
being entered.
+ operate-and-get-next (C-o)
+ Accept the current line for return to the calling application as
+ if a newline had been entered, and fetch the next line relative
+ to the current line from the history for editing. A numeric ar-
+ gument, if supplied, specifies the history entry to use instead
+ of the current line.
+ fetch-history
+ With a numeric argument, fetch that entry from the history list
+ and make it the current line. Without an argument, move back to
+ the first entry in the history list.
reverse-search-history (C-r)
Search backward starting at the current line and moving `up'
through the history as necessary. This is an incremental
@@ -631,12 +677,6 @@ READLINE(3) Library Functions Manual READLINE(3)
(back or forward). The history expansion facilities are used to
extract the last argument, as if the "!$" history expansion had
been specified.
- operate-and-get-next (C-o)
- Accept the current line for return to the calling application as
- if a newline had been entered, and fetch the next line relative
- to the current line from the history for editing. A numeric ar-
- gument, if supplied, specifies the history entry to use instead
- of the current line.
Commands for Changing Text
end-of-file (usually C-d)
@@ -1127,4 +1167,4 @@ READLINE(3) Library Functions Manual READLINE(3)
-GNU Readline 8.1 2020 October 29 READLINE(3)
+GNU Readline 8.2 2022 March 11 READLINE(3)
diff --git a/doc/readline.3 b/doc/readline.3
index 92ee63d..912718d 100644
--- a/doc/readline.3
+++ b/doc/readline.3
@@ -6,9 +6,9 @@
.\" Case Western Reserve University
.\" chet.ramey@case.edu
.\"
-.\" Last Change: Mon Nov 15 17:06:54 EST 2021
+.\" Last Change: Fri Mar 11 10:14:10 EST 2022
.\"
-.TH READLINE 3 "2021 November 15" "GNU Readline 8.1"
+.TH READLINE 3 "2022 March 11" "GNU Readline 8.2"
.\"
.\" File Name macro. This used to be `.PN', for Path Name,
.\" but Sun doesn't seem to like that very much.
@@ -339,6 +339,30 @@ The variables and their default values are:
.PP
.PD 0
.TP
+.B active\-region\-start\-color
+A string variable that controls the text color and background when displaying
+the text in the active region (see the description of
+\fBenable\-active\-region\fP below).
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal before displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that puts the terminal in standout mode,
+as obtained from the terminal's terminfo description.
+A sample value might be \f(CW"\ee[01;33m"\fP.
+.TP
+.B active\-region\-end\-color
+A string variable that "undoes" the effects of \fBactive\-region\-start\-color\fP
+and restores "normal" terminal display appearance after displaying text
+in the active region.
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal after displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that restores the terminal from standout mode,
+as obtained from the terminal's terminfo description.
+A sample value might be \f(CW"\ee[0m\fP".
+.TP
.B bell\-style (audible)
Controls what happens when readline wants to ring the terminal bell.
If set to \fBnone\fP, readline never rings the bell. If set to
@@ -458,16 +482,18 @@ The text between the point and mark is referred to as the \fIregion\fP.
When this variable is set to \fIOn\fP, readline allows certain commands
to designate the region as \fIactive\fP.
When the region is active, readline highlights the text in the region using
+the value of the \fBactive\-region\-start\-color\fP, which defaults to the
+string that enables
the terminal's standout mode.
The active region shows the text inserted by bracketed-paste and any
matching text found by incremental and non-incremental history searches.
.TP
.B enable\-bracketed\-paste (On)
-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.
+When set to \fBOn\fP, readline configures the terminal 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 prevents readline from executing any editing commands bound to key
+sequences appearing in the pasted text.
.TP
.B enable\-keypad (Off)
When set to \fBOn\fP, readline will try to enable the application
diff --git a/doc/readline.dvi b/doc/readline.dvi
index 715e5ae..a0a9957 100644
--- a/doc/readline.dvi
+++ b/doc/readline.dvi
Binary files differ
diff --git a/doc/readline.html b/doc/readline.html
index 1dd7693..8389ea2 100644
--- a/doc/readline.html
+++ b/doc/readline.html
@@ -1,1274 +1,1266 @@
-<HTML>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on October, 30 2020 by texi2html 1.64 -->
-<!--
-Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
- Karl Berry <karl@freefriends.org>
- Olaf Bachmann <obachman@mathematik.uni-kl.de>
- and many others.
-Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
-
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Created by GNU Texinfo 6.8, https://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<!-- This manual describes the GNU Readline Library
+(version 8.2, 11 March 2022), a library which aids in the
+consistency of user interface across discrete programs which provide
+a command line interface.
+
+Copyright (C) 1988-2022 Free Software Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+"GNU Free Documentation License".
+ -->
+<title>GNU Readline Library</title>
+
+<meta name="description" content="GNU Readline Library">
+<meta name="keywords" content="GNU Readline Library">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="#Top" rel="start" title="Top">
+<link href="#Concept-Index" rel="index" title="Concept Index">
+<link href="#SEC_Contents" rel="contents" title="Table of Contents">
+<link href="#Command-Line-Editing" rel="next" title="Command Line Editing">
+<style type="text/css">
+<!--
+a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em}
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+span:hover a.copiable-anchor {visibility: visible}
+ul.no-bullet {list-style: none}
-->
-<HEAD>
-<TITLE>GNU Readline Library: </TITLE>
+</style>
-<META NAME="description" CONTENT="GNU Readline Library: ">
-<META NAME="keywords" CONTENT="GNU Readline Library: ">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="texi2html 1.64">
-</HEAD>
+</head>
-<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
+<body lang="en">
+<h1 class="settitle" align="center">GNU Readline Library</h1>
-<A NAME="SEC_Top"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>GNU Readline Library</H1></P><P>
-This document describes the GNU Readline Library, a utility which aids
+
+
+
+
+
+
+
+<div class="top" id="Top">
+<div class="header">
+<p>
+Next: <a href="#Command-Line-Editing" accesskey="n" rel="next">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="GNU-Readline-Library"></span><h1 class="top">GNU Readline Library</h1>
+
+<p>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 <A HREF="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</A>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC1">1. Command Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline User's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC23">2. Programming with GNU Readline</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline Programmer's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC50">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC52">Concept Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of concepts described in this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC53">Function and Variable Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of externally visible functions
- and variables.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<HR SIZE=1>
-<A NAME="SEC1"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC2"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<A NAME="Command Line Editing"></A>
-<H1> 1. Command Line Editing </H1>
-<!--docid::SEC1::-->
-<P>
-
-This chapter describes the basic features of the GNU
+The Readline home page is <a href="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</a>.
+</p>
+
+
+
+
+
+<div class="Contents_element" id="SEC_Contents">
+<h2 class="contents-heading">Table of Contents</h2>
+
+<div class="contents">
+
+<ul class="no-bullet">
+ <li><a id="toc-Command-Line-Editing-1" href="#Command-Line-Editing">1 Command Line Editing</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Introduction-to-Line-Editing" href="#Introduction-and-Notation">1.1 Introduction to Line Editing</a></li>
+ <li><a id="toc-Readline-Interaction-1" href="#Readline-Interaction">1.2 Readline Interaction</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Readline-Bare-Essentials-1" href="#Readline-Bare-Essentials">1.2.1 Readline Bare Essentials</a></li>
+ <li><a id="toc-Readline-Movement-Commands-1" href="#Readline-Movement-Commands">1.2.2 Readline Movement Commands</a></li>
+ <li><a id="toc-Readline-Killing-Commands-1" href="#Readline-Killing-Commands">1.2.3 Readline Killing Commands</a></li>
+ <li><a id="toc-Readline-Arguments-1" href="#Readline-Arguments">1.2.4 Readline Arguments</a></li>
+ <li><a id="toc-Searching-for-Commands-in-the-History" href="#Searching">1.2.5 Searching for Commands in the History</a></li>
+ </ul></li>
+ <li><a id="toc-Readline-Init-File-1" href="#Readline-Init-File">1.3 Readline Init File</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Readline-Init-File-Syntax-1" href="#Readline-Init-File-Syntax">1.3.1 Readline Init File Syntax</a></li>
+ <li><a id="toc-Conditional-Init-Constructs-1" href="#Conditional-Init-Constructs">1.3.2 Conditional Init Constructs</a></li>
+ <li><a id="toc-Sample-Init-File-1" href="#Sample-Init-File">1.3.3 Sample Init File</a></li>
+ </ul></li>
+ <li><a id="toc-Bindable-Readline-Commands-1" href="#Bindable-Readline-Commands">1.4 Bindable Readline Commands</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Commands-For-Moving-1" href="#Commands-For-Moving">1.4.1 Commands For Moving</a></li>
+ <li><a id="toc-Commands-For-Manipulating-The-History" href="#Commands-For-History">1.4.2 Commands For Manipulating The History</a></li>
+ <li><a id="toc-Commands-For-Changing-Text" href="#Commands-For-Text">1.4.3 Commands For Changing Text</a></li>
+ <li><a id="toc-Killing-And-Yanking" href="#Commands-For-Killing">1.4.4 Killing And Yanking</a></li>
+ <li><a id="toc-Specifying-Numeric-Arguments" href="#Numeric-Arguments">1.4.5 Specifying Numeric Arguments</a></li>
+ <li><a id="toc-Letting-Readline-Type-For-You" href="#Commands-For-Completion">1.4.6 Letting Readline Type For You</a></li>
+ <li><a id="toc-Keyboard-Macros-1" href="#Keyboard-Macros">1.4.7 Keyboard Macros</a></li>
+ <li><a id="toc-Some-Miscellaneous-Commands" href="#Miscellaneous-Commands">1.4.8 Some Miscellaneous Commands</a></li>
+ </ul></li>
+ <li><a id="toc-Readline-vi-Mode-1" href="#Readline-vi-Mode">1.5 Readline vi Mode</a></li>
+ </ul></li>
+ <li><a id="toc-Programming-with-GNU-Readline-1" href="#Programming-with-GNU-Readline">2 Programming with GNU Readline</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Basic-Behavior-1" href="#Basic-Behavior">2.1 Basic Behavior</a></li>
+ <li><a id="toc-Custom-Functions-1" href="#Custom-Functions">2.2 Custom Functions</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Readline-Typedefs-1" href="#Readline-Typedefs">2.2.1 Readline Typedefs</a></li>
+ <li><a id="toc-Writing-a-New-Function" href="#Function-Writing">2.2.2 Writing a New Function</a></li>
+ </ul></li>
+ <li><a id="toc-Readline-Variables-1" href="#Readline-Variables">2.3 Readline Variables</a></li>
+ <li><a id="toc-Readline-Convenience-Functions-1" href="#Readline-Convenience-Functions">2.4 Readline Convenience Functions</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Naming-a-Function" href="#Function-Naming">2.4.1 Naming a Function</a></li>
+ <li><a id="toc-Selecting-a-Keymap" href="#Keymaps">2.4.2 Selecting a Keymap</a></li>
+ <li><a id="toc-Binding-Keys-1" href="#Binding-Keys">2.4.3 Binding Keys</a></li>
+ <li><a id="toc-Associating-Function-Names-and-Bindings-1" href="#Associating-Function-Names-and-Bindings">2.4.4 Associating Function Names and Bindings</a></li>
+ <li><a id="toc-Allowing-Undoing-1" href="#Allowing-Undoing">2.4.5 Allowing Undoing</a></li>
+ <li><a id="toc-Redisplay-1" href="#Redisplay">2.4.6 Redisplay</a></li>
+ <li><a id="toc-Modifying-Text-1" href="#Modifying-Text">2.4.7 Modifying Text</a></li>
+ <li><a id="toc-Character-Input-1" href="#Character-Input">2.4.8 Character Input</a></li>
+ <li><a id="toc-Terminal-Management-1" href="#Terminal-Management">2.4.9 Terminal Management</a></li>
+ <li><a id="toc-Utility-Functions-1" href="#Utility-Functions">2.4.10 Utility Functions</a></li>
+ <li><a id="toc-Miscellaneous-Functions-1" href="#Miscellaneous-Functions">2.4.11 Miscellaneous Functions</a></li>
+ <li><a id="toc-Alternate-Interface-1" href="#Alternate-Interface">2.4.12 Alternate Interface</a></li>
+ <li><a id="toc-A-Readline-Example-1" href="#A-Readline-Example">2.4.13 A Readline Example</a></li>
+ <li><a id="toc-Alternate-Interface-Example-1" href="#Alternate-Interface-Example">2.4.14 Alternate Interface Example</a></li>
+ </ul></li>
+ <li><a id="toc-Readline-Signal-Handling-1" href="#Readline-Signal-Handling">2.5 Readline Signal Handling</a></li>
+ <li><a id="toc-Custom-Completers-1" href="#Custom-Completers">2.6 Custom Completers</a>
+ <ul class="no-bullet">
+ <li><a id="toc-How-Completing-Works-1" href="#How-Completing-Works">2.6.1 How Completing Works</a></li>
+ <li><a id="toc-Completion-Functions-1" href="#Completion-Functions">2.6.2 Completion Functions</a></li>
+ <li><a id="toc-Completion-Variables-1" href="#Completion-Variables">2.6.3 Completion Variables</a></li>
+ <li><a id="toc-A-Short-Completion-Example-1" href="#A-Short-Completion-Example">2.6.4 A Short Completion Example</a></li>
+ </ul></li>
+ </ul></li>
+ <li><a id="toc-GNU-Free-Documentation-License-1" href="#GNU-Free-Documentation-License">Appendix A GNU Free Documentation License</a></li>
+ <li><a id="toc-Concept-Index-1" href="#Concept-Index" rel="index">Concept Index</a></li>
+ <li><a id="toc-Function-and-Variable-Index-1" href="#Function-and-Variable-Index" rel="index">Function and Variable Index</a></li>
+</ul>
+</div>
+</div>
+<hr>
+<div class="chapter" id="Command-Line-Editing">
+<div class="header">
+<p>
+Next: <a href="#Programming-with-GNU-Readline" accesskey="n" rel="next">Programming with GNU Readline</a>, Previous: <a href="#Top" accesskey="p" rel="prev">GNU Readline Library</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Command-Line-Editing-1"></span><h2 class="chapter">1 Command Line Editing</h2>
+
+<p>This chapter describes the basic features of the <small>GNU</small>
command line editing interface.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC2">1.1 Introduction to Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Notation used in this text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC3">1.2 Readline Interaction</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The minimum set of commands for editing a line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC9">1.3 Readline Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Customizing Readline from a user's view.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC13">1.4 Bindable Readline Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A description of most of the Readline commands
- available for binding</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC22">1.5 Readline vi Mode</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A short description of how to make Readline
- behave like the vi editor.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Introduction and Notation"></A>
-<HR SIZE="6">
-<A NAME="SEC2"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.1 Introduction to Line Editing </H2>
-<!--docid::SEC2::-->
-<P>
-
-The following paragraphs describe the notation used to represent
+</p>
+
+<ul class="section-toc">
+<li><a href="#Introduction-and-Notation" accesskey="1">Introduction to Line Editing</a></li>
+<li><a href="#Readline-Interaction" accesskey="2">Readline Interaction</a></li>
+<li><a href="#Readline-Init-File" accesskey="3">Readline Init File</a></li>
+<li><a href="#Bindable-Readline-Commands" accesskey="4">Bindable Readline Commands</a></li>
+<li><a href="#Readline-vi-Mode" accesskey="5">Readline vi Mode</a></li>
+</ul>
+<hr>
+<div class="section" id="Introduction-and-Notation">
+<div class="header">
+<p>
+Next: <a href="#Readline-Interaction" accesskey="n" rel="next">Readline Interaction</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Introduction-to-Line-Editing"></span><h3 class="section">1.1 Introduction to Line Editing</h3>
+
+<p>The following paragraphs describe the notation used to represent
keystrokes.
-</P><P>
-
-The text <KBD>C-k</KBD> is read as `Control-K' and describes the character
-produced when the <KBD>k</KBD> key is pressed while the Control key
+</p>
+<p>The text <kbd>C-k</kbd> is read as &lsquo;Control-K&rsquo; and describes the character
+produced when the <tt class="key">k</tt> key is pressed while the Control key
is depressed.
-</P><P>
-
-The text <KBD>M-k</KBD> is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the <KBD>k</KBD>
+</p>
+<p>The text <kbd>M-k</kbd> is read as &lsquo;Meta-K&rsquo; and describes the character
+produced when the Meta key (if you have one) is depressed, and the <tt class="key">k</tt>
key is pressed.
-The Meta key is labeled <KBD>ALT</KBD> on many keyboards.
-On keyboards with two keys labeled <KBD>ALT</KBD> (usually to either side of
-the space bar), the <KBD>ALT</KBD> on the left side is generally set to
+The Meta key is labeled <tt class="key">ALT</tt> on many keyboards.
+On keyboards with two keys labeled <tt class="key">ALT</tt> (usually to either side of
+the space bar), the <tt class="key">ALT</tt> on the left side is generally set to
work as a Meta key.
-The <KBD>ALT</KBD> key on the right may also be configured to work as a
+The <tt class="key">ALT</tt> key on the right may also be configured to work as a
Meta key or may be configured as some other modifier, such as a
Compose key for typing accented characters.
-</P><P>
-
-If you do not have a Meta or <KBD>ALT</KBD> key, or another key working as
-a Meta key, the identical keystroke can be generated by typing <KBD>ESC</KBD>
-<EM>first</EM>, and then typing <KBD>k</KBD>.
-Either process is known as <EM>metafying</EM> the <KBD>k</KBD> key.
-</P><P>
-
-The text <KBD>M-C-k</KBD> is read as `Meta-Control-k' and describes the
-character produced by <EM>metafying</EM> <KBD>C-k</KBD>.
-</P><P>
-
-In addition, several keys have their own names. Specifically,
-<KBD>DEL</KBD>, <KBD>ESC</KBD>, <KBD>LFD</KBD>, <KBD>SPC</KBD>, <KBD>RET</KBD>, and <KBD>TAB</KBD> all
+</p>
+<p>If you do not have a Meta or <tt class="key">ALT</tt> key, or another key working as
+a Meta key, the identical keystroke can be generated by typing <tt class="key">ESC</tt>
+<em>first</em>, and then typing <tt class="key">k</tt>.
+Either process is known as <em>metafying</em> the <tt class="key">k</tt> key.
+</p>
+<p>The text <kbd>M-C-k</kbd> is read as &lsquo;Meta-Control-k&rsquo; and describes the
+character produced by <em>metafying</em> <kbd>C-k</kbd>.
+</p>
+<p>In addition, several keys have their own names. Specifically,
+<tt class="key">DEL</tt>, <tt class="key">ESC</tt>, <tt class="key">LFD</tt>, <tt class="key">SPC</tt>, <tt class="key">RET</tt>, and <tt class="key">TAB</tt> all
stand for themselves when seen in this text, or in an init file
-(see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-If your keyboard lacks a <KBD>LFD</KBD> key, typing <KBD>C-j</KBD> will
+(see <a href="#Readline-Init-File">Readline Init File</a>).
+If your keyboard lacks a <tt class="key">LFD</tt> key, typing <tt class="key">C-j</tt> will
produce the desired character.
-The <KBD>RET</KBD> key may be labeled <KBD>Return</KBD> or <KBD>Enter</KBD> on
+The <tt class="key">RET</tt> key may be labeled <tt class="key">Return</tt> or <tt class="key">Enter</tt> on
some keyboards.
-</P><P>
-
-<A NAME="Readline Interaction"></A>
-<HR SIZE="6">
-<A NAME="SEC3"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC2"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC4"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.2 Readline Interaction </H2>
-<!--docid::SEC3::-->
-<P>
-
-Often during an interactive session you type in a long line of text,
+</p>
+<hr>
+</div>
+<div class="section" id="Readline-Interaction">
+<div class="header">
+<p>
+Next: <a href="#Readline-Init-File" accesskey="n" rel="next">Readline Init File</a>, Previous: <a href="#Introduction-and-Notation" accesskey="p" rel="prev">Introduction to Line Editing</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Interaction-1"></span><h3 class="section">1.2 Readline Interaction</h3>
+<span id="index-interaction_002c-readline"></span>
+
+<p>Often during an interactive session you type in a long line of text,
only to notice that the first word on the line is misspelled. The
Readline library gives you a set of commands for manipulating the text
as you type it in, allowing you to just fix your typo, and not forcing
you to retype the majority of the line. Using these editing commands,
you move the cursor to the place that needs correction, and delete or
insert the text of the corrections. Then, when you are satisfied with
-the line, you simply press <KBD>RET</KBD>. You do not have to be at the
-end of the line to press <KBD>RET</KBD>; the entire line is accepted
+the line, you simply press <tt class="key">RET</tt>. You do not have to be at the
+end of the line to press <tt class="key">RET</tt>; the entire line is accepted
regardless of the location of the cursor within the line.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The least you need to know about Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC5">1.2.2 Readline Movement Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the input line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to delete text, and how to get it back!</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC7">1.2.4 Readline Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Giving numeric arguments to commands.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Searching through previous lines.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Bare Essentials"></A>
-<HR SIZE="6">
-<A NAME="SEC4"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC5"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.1 Readline Bare Essentials </H3>
-<!--docid::SEC4::-->
-<P>
-
-In order to enter characters into the line, simply type them. The typed
+</p>
+
+<ul class="section-toc">
+<li><a href="#Readline-Bare-Essentials" accesskey="1">Readline Bare Essentials</a></li>
+<li><a href="#Readline-Movement-Commands" accesskey="2">Readline Movement Commands</a></li>
+<li><a href="#Readline-Killing-Commands" accesskey="3">Readline Killing Commands</a></li>
+<li><a href="#Readline-Arguments" accesskey="4">Readline Arguments</a></li>
+<li><a href="#Searching" accesskey="5">Searching for Commands in the History</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Readline-Bare-Essentials">
+<div class="header">
+<p>
+Next: <a href="#Readline-Movement-Commands" accesskey="n" rel="next">Readline Movement Commands</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Bare-Essentials-1"></span><h4 class="subsection">1.2.1 Readline Bare Essentials</h4>
+<span id="index-notation_002c-readline"></span>
+<span id="index-command-editing"></span>
+<span id="index-editing-command-lines"></span>
+
+<p>In order to enter characters into the line, simply type them. The typed
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.
-</P><P>
-
-Sometimes you may mistype a character, and
+</p>
+<p>Sometimes you may mistype a character, and
not notice the error until you have typed several other characters. In
-that case, you can type <KBD>C-b</KBD> to move the cursor to the left, and then
+that case, you can type <kbd>C-b</kbd> to move the cursor to the left, and then
correct your mistake. Afterwards, you can move the cursor to the right
-with <KBD>C-f</KBD>.
-</P><P>
-
-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
+with <kbd>C-f</kbd>.
+</p>
+<p>When you add text in the middle of a line, you will notice that characters
+to the right of the cursor are &lsquo;pushed over&rsquo; 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
+characters to the right of the cursor are &lsquo;pulled back&rsquo; 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.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-b</KBD>
-<DD>Move back one character.
-<DT><KBD>C-f</KBD>
-<DD>Move forward one character.
-<DT><KBD>DEL</KBD> or <KBD>Backspace</KBD>
-<DD>Delete the character to the left of the cursor.
-<DT><KBD>C-d</KBD>
-<DD>Delete the character underneath the cursor.
-<DT>Printing characters
-<DD>Insert the character into the line at the cursor.
-<DT><KBD>C-_</KBD> or <KBD>C-x C-u</KBD>
-<DD>Undo the last editing command. You can undo all the way back to an
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-b</kbd></span></dt>
+<dd><p>Move back one character.
+</p></dd>
+<dt><span><kbd>C-f</kbd></span></dt>
+<dd><p>Move forward one character.
+</p></dd>
+<dt><span><tt class="key">DEL</tt> or <tt class="key">Backspace</tt></span></dt>
+<dd><p>Delete the character to the left of the cursor.
+</p></dd>
+<dt><span><kbd>C-d</kbd></span></dt>
+<dd><p>Delete the character underneath the cursor.
+</p></dd>
+<dt><span>Printing&nbsp;characters<!-- /@w --></span></dt>
+<dd><p>Insert the character into the line at the cursor.
+</p></dd>
+<dt><span><kbd>C-_</kbd> or <kbd>C-x C-u</kbd></span></dt>
+<dd><p>Undo the last editing command. You can undo all the way back to an
empty line.
-</DL>
-<P>
+</p></dd>
+</dl>
-(Depending on your configuration, the <KBD>Backspace</KBD> key be set to
-delete the character to the left of the cursor and the <KBD>DEL</KBD> key set
-to delete the character underneath the cursor, like <KBD>C-d</KBD>, rather
+<p>(Depending on your configuration, the <tt class="key">Backspace</tt> key be set to
+delete the character to the left of the cursor and the <tt class="key">DEL</tt> key set
+to delete the character underneath the cursor, like <kbd>C-d</kbd>, rather
than the character to the left of the cursor.)
-</P><P>
-
-<A NAME="Readline Movement Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC5"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC4"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC6"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC6"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.2 Readline Movement Commands </H3>
-<!--docid::SEC5::-->
-<P>
-
-The above table describes the most basic keystrokes that you need
+</p>
+<hr>
+</div>
+<div class="subsection" id="Readline-Movement-Commands">
+<div class="header">
+<p>
+Next: <a href="#Readline-Killing-Commands" accesskey="n" rel="next">Readline Killing Commands</a>, Previous: <a href="#Readline-Bare-Essentials" accesskey="p" rel="prev">Readline Bare Essentials</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Movement-Commands-1"></span><h4 class="subsection">1.2.2 Readline Movement Commands</h4>
+
+
+<p>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 <KBD>C-b</KBD>, <KBD>C-f</KBD>,
-<KBD>C-d</KBD>, and <KBD>DEL</KBD>. Here are some commands for moving more rapidly
+other commands have been added in addition to <kbd>C-b</kbd>, <kbd>C-f</kbd>,
+<kbd>C-d</kbd>, and <tt class="key">DEL</tt>. Here are some commands for moving more rapidly
about the line.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-a</KBD>
-<DD>Move to the start of the line.
-<DT><KBD>C-e</KBD>
-<DD>Move to the end of the line.
-<DT><KBD>M-f</KBD>
-<DD>Move forward a word, where a word is composed of letters and digits.
-<DT><KBD>M-b</KBD>
-<DD>Move backward a word.
-<DT><KBD>C-l</KBD>
-<DD>Clear the screen, reprinting the current line at the top.
-</DL>
-<P>
-
-Notice how <KBD>C-f</KBD> moves forward a character, while <KBD>M-f</KBD> moves
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-a</kbd></span></dt>
+<dd><p>Move to the start of the line.
+</p></dd>
+<dt><span><kbd>C-e</kbd></span></dt>
+<dd><p>Move to the end of the line.
+</p></dd>
+<dt><span><kbd>M-f</kbd></span></dt>
+<dd><p>Move forward a word, where a word is composed of letters and digits.
+</p></dd>
+<dt><span><kbd>M-b</kbd></span></dt>
+<dd><p>Move backward a word.
+</p></dd>
+<dt><span><kbd>C-l</kbd></span></dt>
+<dd><p>Clear the screen, reprinting the current line at the top.
+</p></dd>
+</dl>
+
+<p>Notice how <kbd>C-f</kbd> moves forward a character, while <kbd>M-f</kbd> moves
forward a word. It is a loose convention that control keystrokes
operate on characters while meta keystrokes operate on words.
-</P><P>
-
-<A NAME="Readline Killing Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC6"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC5"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC7"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC7"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.3 Readline Killing Commands </H3>
-<!--docid::SEC6::-->
-<P>
-
-<A NAME="IDX1"></A>
-<A NAME="IDX2"></A>
-</P><P>
-
-<EM>Killing</EM> text means to delete the text from the line, but to save
-it away for later use, usually by <EM>yanking</EM> (re-inserting)
+</p>
+<hr>
+</div>
+<div class="subsection" id="Readline-Killing-Commands">
+<div class="header">
+<p>
+Next: <a href="#Readline-Arguments" accesskey="n" rel="next">Readline Arguments</a>, Previous: <a href="#Readline-Movement-Commands" accesskey="p" rel="prev">Readline Movement Commands</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Killing-Commands-1"></span><h4 class="subsection">1.2.3 Readline Killing Commands</h4>
+
+<span id="index-killing-text"></span>
+<span id="index-yanking-text"></span>
+
+<p><em>Killing</em> text means to delete the text from the line, but to save
+it away for later use, usually by <em>yanking</em> (re-inserting)
it back into the line.
-(`Cut' and `paste' are more recent jargon for `kill' and `yank'.)
-</P><P>
-
-If the description for a command says that it `kills' text, then you can
+(&lsquo;Cut&rsquo; and &lsquo;paste&rsquo; are more recent jargon for &lsquo;kill&rsquo; and &lsquo;yank&rsquo;.)
+</p>
+<p>If the description for a command says that it &lsquo;kills&rsquo; text, then you can
be sure that you can get the text back in a different (or the same)
place later.
-</P><P>
-
-When you use a kill command, the text is saved in a <EM>kill-ring</EM>.
+</p>
+<p>When you use a kill command, the text is saved in a <em>kill-ring</em>.
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.
-<A NAME="IDX3"></A>
-</P><P>
-
-Here is the list of commands for killing text.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-k</KBD>
-<DD>Kill the text from the current cursor position to the end of the line.
-<P>
-
-<DT><KBD>M-d</KBD>
-<DD>Kill from the cursor to the end of the current word, or, if between
+<span id="index-kill-ring"></span>
+</p>
+<p>Here is the list of commands for killing text.
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-k</kbd></span></dt>
+<dd><p>Kill the text from the current cursor position to the end of the line.
+</p>
+</dd>
+<dt><span><kbd>M-d</kbd></span></dt>
+<dd><p>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 <KBD>M-f</KBD>.
-<P>
-
-<DT><KBD>M-<KBD>DEL</KBD></KBD>
-<DD>Kill from the cursor the start of the current word, or, if between
+Word boundaries are the same as those used by <kbd>M-f</kbd>.
+</p>
+</dd>
+<dt><span><kbd>M-<span class="key">DEL</span></kbd></span></dt>
+<dd><p>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 <KBD>M-b</KBD>.
-<P>
-
-<DT><KBD>C-w</KBD>
-<DD>Kill from the cursor to the previous whitespace. This is different than
-<KBD>M-<KBD>DEL</KBD></KBD> because the word boundaries differ.
-<P>
-
-</DL>
-<P>
-
-Here is how to <EM>yank</EM> the text back into the line. Yanking
+Word boundaries are the same as those used by <kbd>M-b</kbd>.
+</p>
+</dd>
+<dt><span><kbd>C-w</kbd></span></dt>
+<dd><p>Kill from the cursor to the previous whitespace. This is different than
+<kbd>M-<span class="key">DEL</span></kbd> because the word boundaries differ.
+</p>
+</dd>
+</dl>
+
+<p>Here is how to <em>yank</em> the text back into the line. Yanking
means to copy the most-recently-killed text from the kill buffer.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-y</KBD>
-<DD>Yank the most recently killed text back into the buffer at the cursor.
-<P>
-
-<DT><KBD>M-y</KBD>
-<DD>Rotate the kill-ring, and yank the new top. You can only do this if
-the prior command is <KBD>C-y</KBD> or <KBD>M-y</KBD>.
-</DL>
-<P>
-
-<A NAME="Readline Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC7"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC6"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC8"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC8"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.4 Readline Arguments </H3>
-<!--docid::SEC7::-->
-<P>
-
-You can pass numeric arguments to Readline commands. Sometimes the
-argument acts as a repeat count, other times it is the <I>sign</I> of the
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-y</kbd></span></dt>
+<dd><p>Yank the most recently killed text back into the buffer at the cursor.
+</p>
+</dd>
+<dt><span><kbd>M-y</kbd></span></dt>
+<dd><p>Rotate the kill-ring, and yank the new top. You can only do this if
+the prior command is <kbd>C-y</kbd> or <kbd>M-y</kbd>.
+</p></dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Readline-Arguments">
+<div class="header">
+<p>
+Next: <a href="#Searching" accesskey="n" rel="next">Searching for Commands in the History</a>, Previous: <a href="#Readline-Killing-Commands" accesskey="p" rel="prev">Readline Killing Commands</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Arguments-1"></span><h4 class="subsection">1.2.4 Readline Arguments</h4>
+
+<p>You can pass numeric arguments to Readline commands. Sometimes the
+argument acts as a repeat count, other times it is the <i>sign</i> 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 <SAMP>`M-- C-k'</SAMP>.
-</P><P>
-
-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 (<SAMP>`-'</SAMP>), then the sign of the argument will be negative. Once
+start of the line, you might type &lsquo;<samp>M-- C-k</samp>&rsquo;.
+</p>
+<p>The general way to pass numeric arguments to a command is to type meta
+digits before the command. If the first &lsquo;digit&rsquo; typed is a minus
+sign (&lsquo;<samp>-</samp>&rsquo;), 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 <KBD>C-d</KBD> command an argument of 10, you could type <SAMP>`M-1 0 C-d'</SAMP>,
+the <kbd>C-d</kbd> command an argument of 10, you could type &lsquo;<samp>M-1 0 C-d</samp>&rsquo;,
which will delete the next ten characters on the input line.
-</P><P>
-
-<A NAME="Searching"></A>
-<HR SIZE="6">
-<A NAME="SEC8"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC7"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.5 Searching for Commands in the History </H3>
-<!--docid::SEC8::-->
-<P>
-
-Readline provides commands for searching through the command history
+</p>
+<hr>
+</div>
+<div class="subsection" id="Searching">
+<div class="header">
+<p>
+Previous: <a href="#Readline-Arguments" accesskey="p" rel="prev">Readline Arguments</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Searching-for-Commands-in-the-History"></span><h4 class="subsection">1.2.5 Searching for Commands in the History</h4>
+
+<p>Readline provides commands for searching through the command history
for lines containing a specified string.
-There are two search modes: <EM>incremental</EM> and <EM>non-incremental</EM>.
-</P><P>
-
-Incremental searches begin before the user has finished typing the
+There are two search modes: <em>incremental</em> and <em>non-incremental</em>.
+</p>
+<p>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
-<KBD>C-r</KBD>. Typing <KBD>C-s</KBD> searches forward through the history.
-The characters present in the value of the <CODE>isearch-terminators</CODE> variable
+<kbd>C-r</kbd>. Typing <kbd>C-s</kbd> searches forward through the history.
+The characters present in the value of the <code>isearch-terminators</code> variable
are used to terminate an incremental search.
-If that variable has not been assigned a value, the <KBD>ESC</KBD> and
-<KBD>C-J</KBD> characters will terminate an incremental search.
-<KBD>C-g</KBD> will abort an incremental search and restore the original line.
+If that variable has not been assigned a value, the <tt class="key">ESC</tt> and
+<kbd>C-J</kbd> characters will terminate an incremental search.
+<kbd>C-g</kbd> 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.
-</P><P>
-
-To find other matching entries in the history list, type <KBD>C-r</KBD> or
-<KBD>C-s</KBD> as appropriate.
+</p>
+<p>To find other matching entries in the history list, type <kbd>C-r</kbd> or
+<kbd>C-s</kbd> 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 <KBD>RET</KBD> will terminate the search and accept
+For instance, a <tt class="key">RET</tt> 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.
-</P><P>
-
-Readline remembers the last incremental search string. If two
-<KBD>C-r</KBD>s are typed without any intervening characters defining a new
+</p>
+<p>Readline remembers the last incremental search string. If two
+<kbd>C-r</kbd>s are typed without any intervening characters defining a new
search string, any remembered search string is used.
-</P><P>
-
-Non-incremental searches read the entire search string before starting
+</p>
+<p>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.
-</P><P>
-
-<A NAME="Readline Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC9"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC8"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC10"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.3 Readline Init File </H2>
-<!--docid::SEC9::-->
-<P>
-
-Although the Readline library comes with a set of Emacs-like
+</p>
+<hr>
+</div>
+</div>
+<div class="section" id="Readline-Init-File">
+<div class="header">
+<p>
+Next: <a href="#Bindable-Readline-Commands" accesskey="n" rel="next">Bindable Readline Commands</a>, Previous: <a href="#Readline-Interaction" accesskey="p" rel="prev">Readline Interaction</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Init-File-1"></span><h3 class="section">1.3 Readline Init File</h3>
+<span id="index-initialization-file_002c-readline"></span>
+
+<p>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 <EM>inputrc</EM> file, conventionally in his home directory.
+commands in an <em>inputrc</em> file,
+conventionally in their home directory.
The name of this
-file is taken from the value of the environment variable <CODE>INPUTRC</CODE>. If
-that variable is unset, the default is <TT>`~/.inputrc'</TT>. If that
+file is taken from the value of the environment variable <code>INPUTRC</code>. If
+that variable is unset, the default is <samp>~/.inputrc</samp>. If that
file does not exist or cannot be read, the ultimate default is
-<TT>`/etc/inputrc'</TT>.
-</P><P>
-
-When a program which uses the Readline library starts up, the
+<samp>/etc/inputrc</samp>.
+</p>
+<p>When a program which uses the Readline library starts up, the
init file is read, and the key bindings are set.
-</P><P>
-
-In addition, the <CODE>C-x C-r</CODE> command re-reads this init file, thus
+</p>
+<p>In addition, the <code>C-x C-r</code> command re-reads this init file, thus
incorporating any changes that you might have made to it.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Syntax for the commands in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Conditional key bindings in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC12">1.3.3 Sample Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example inputrc file.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Init File Syntax"></A>
-<HR SIZE="6">
-<A NAME="SEC10"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC11"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.1 Readline Init File Syntax </H3>
-<!--docid::SEC10::-->
-<P>
-
-There are only a few basic constructs allowed in the
+</p>
+
+<ul class="section-toc">
+<li><a href="#Readline-Init-File-Syntax" accesskey="1">Readline Init File Syntax</a></li>
+<li><a href="#Conditional-Init-Constructs" accesskey="2">Conditional Init Constructs</a></li>
+<li><a href="#Sample-Init-File" accesskey="3">Sample Init File</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Readline-Init-File-Syntax">
+<div class="header">
+<p>
+Next: <a href="#Conditional-Init-Constructs" accesskey="n" rel="next">Conditional Init Constructs</a>, Up: <a href="#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Init-File-Syntax-1"></span><h4 class="subsection">1.3.1 Readline Init File Syntax</h4>
+
+<p>There are only a few basic constructs allowed in the
Readline init file. Blank lines are ignored.
-Lines beginning with a <SAMP>`#'</SAMP> are comments.
-Lines beginning with a <SAMP>`$'</SAMP> indicate conditional
-constructs (see section <A HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A>). Other lines
+Lines beginning with a &lsquo;<samp>#</samp>&rsquo; are comments.
+Lines beginning with a &lsquo;<samp>$</samp>&rsquo; indicate conditional
+constructs (see <a href="#Conditional-Init-Constructs">Conditional Init Constructs</a>). Other lines
denote variable settings and key bindings.
-</P><P>
-
-<DL COMPACT>
-<DT>Variable Settings
-<DD>You can modify the run-time behavior of Readline by
+</p>
+<dl compact="compact">
+<dt><span>Variable Settings</span></dt>
+<dd><p>You can modify the run-time behavior of Readline by
altering the values of variables in Readline
-using the <CODE>set</CODE> command within the init file.
+using the <code>set</code> command within the init file.
The syntax is simple:
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set <VAR>variable</VAR> <VAR>value</VAR>
-</pre></td></tr></table></P><P>
+</p>
+<div class="example">
+<pre class="example">set <var>variable</var> <var>value</var>
+</pre></div>
-Here, for example, is how to
+<p>Here, for example, is how to
change from the default Emacs-like key binding to use
-<CODE>vi</CODE> line editing commands:
-</P><P>
+<code>vi</code> line editing commands:
+</p>
+<div class="example">
+<pre class="example">set editing-mode vi
+</pre></div>
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set editing-mode vi
-</pre></td></tr></table></P><P>
-
-Variable names and values, where appropriate, are recognized without regard
+<p>Variable names and values, where appropriate, are recognized without regard
to case. Unrecognized variable names are ignored.
-</P><P>
-
-Boolean variables (those that can be set to on or off) are set to on if
-the value is null or empty, <VAR>on</VAR> (case-insensitive), or 1. Any other
+</p>
+<p>Boolean variables (those that can be set to on or off) are set to on if
+the value is null or empty, <var>on</var> (case-insensitive), or 1. Any other
value results in the variable being set to off.
-</P><P>
+</p>
-A great deal of run-time behavior is changeable with the following
+<p>A great deal of run-time behavior is changeable with the following
variables.
-</P><P>
-
-<A NAME="IDX4"></A>
-<DL COMPACT>
-
-<DT><CODE>bell-style</CODE>
-<DD><A NAME="IDX5"></A>
-Controls what happens when Readline wants to ring the terminal bell.
-If set to <SAMP>`none'</SAMP>, Readline never rings the bell. If set to
-<SAMP>`visible'</SAMP>, Readline uses a visible bell if one is available.
-If set to <SAMP>`audible'</SAMP> (the default), Readline attempts to ring
-the terminal's bell.
-<P>
-
-<DT><CODE>bind-tty-special-chars</CODE>
-<DD><A NAME="IDX6"></A>
-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
+</p>
+<span id="index-variables_002c-readline"></span>
+<dl compact="compact">
+<dt id='index-active_002dregion_002dstart_002dcolor'><span><code>active-region-start-color</code><a href='#index-active_002dregion_002dstart_002dcolor' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A string variable that controls the text color and background when displaying
+the text in the active region (see the description of
+<code>enable-active-region</code> below).
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal before displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that puts the terminal in standout mode,
+as obtained from the terminal&rsquo;s terminfo description.
+A sample value might be &lsquo;<samp>\e[01;33m</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-active_002dregion_002dend_002dcolor'><span><code>active-region-end-color</code><a href='#index-active_002dregion_002dend_002dcolor' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A string variable that &quot;undoes&quot; the effects of <code>active-region-start-color</code>
+and restores &quot;normal&quot; terminal display appearance after displaying text
+in the active region.
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal after displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that restores the terminal from standout mode,
+as obtained from the terminal&rsquo;s terminfo description.
+A sample value might be &lsquo;<samp>\e[0m</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-bell_002dstyle'><span><code>bell-style</code><a href='#index-bell_002dstyle' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Controls what happens when Readline wants to ring the terminal bell.
+If set to &lsquo;<samp>none</samp>&rsquo;, Readline never rings the bell. If set to
+&lsquo;<samp>visible</samp>&rsquo;, Readline uses a visible bell if one is available.
+If set to &lsquo;<samp>audible</samp>&rsquo; (the default), Readline attempts to ring
+the terminal&rsquo;s bell.
+</p>
+</dd>
+<dt id='index-bind_002dtty_002dspecial_002dchars'><span><code>bind-tty-special-chars</code><a href='#index-bind_002dtty_002dspecial_002dchars' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo; (the default), Readline attempts to bind the control
+characters treated specially by the kernel&rsquo;s terminal driver to their
Readline equivalents.
-<P>
-
-<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
+</p>
+</dd>
+<dt id='index-blink_002dmatching_002dparen'><span><code>blink-matching-paren</code><a href='#index-blink_002dmatching_002dparen' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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
+is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-colored_002dcompletion_002dprefix'><span><code>colored-completion-prefix</code><a href='#index-colored_002dcompletion_002dprefix' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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>
+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
+If there is a color definition in <code>LS_COLORS</code> for the custom suffix
+&lsquo;<samp>readline-colored-completion-prefix</samp>&rsquo;, Readline uses this color for
+the common prefix instead of its default.
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-colored_002dstats'><span><code>colored-stats</code><a href='#index-colored_002dstats' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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>
+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>comment-begin</CODE>
-<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="IDX11"></A>
-The number of screen columns used to display possible matches
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-comment_002dbegin'><span><code>comment-begin</code><a href='#index-comment_002dbegin' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The string to insert at the beginning of the line when the
+<code>insert-comment</code> command is executed. The default value
+is <code>&quot;#&quot;</code>.
+</p>
+</dd>
+<dt id='index-completion_002ddisplay_002dwidth'><span><code>completion-display-width</code><a href='#index-completion_002ddisplay_002dwidth' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX12"></A>
-If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
+</p>
+</dd>
+<dt id='index-completion_002dignore_002dcase'><span><code>completion-ignore-case</code><a href='#index-completion_002dignore_002dcase' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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="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
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-completion_002dmap_002dcase'><span><code>completion-map-case</code><a href='#index-completion_002dmap_002dcase' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, and <var>completion-ignore-case</var> is enabled, Readline
+treats hyphens (&lsquo;<samp>-</samp>&rsquo;) and underscores (&lsquo;<samp>_</samp>&rsquo;) as equivalent when
performing case-insensitive filename matching and completion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX14"></A>
-The length in characters of the common prefix of a list of possible
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-completion_002dprefix_002ddisplay_002dlength'><span><code>completion-prefix-display-length</code><a href='#index-completion_002dprefix_002ddisplay_002dlength' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX15"></A>
-The number of possible completions that determines when the user is
+</p>
+</dd>
+<dt id='index-completion_002dquery_002ditems'><span><code>completion-query-items</code><a href='#index-completion_002dquery_002ditems' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 or equal to this value,
Readline will ask whether or not the user 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 <CODE>100</CODE>.
-<P>
-
-<DT><CODE>convert-meta</CODE>
-<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
-meta-prefixed key sequence. The default value is <SAMP>`on'</SAMP>, but
-will be set to <SAMP>`off'</SAMP> if the locale is one that contains
+This variable must be set to an integer value greater than or equal to zero.
+A zero value means Readline should never ask; negative values are
+treated as zero.
+The default limit is <code>100</code>.
+</p>
+</dd>
+<dt id='index-convert_002dmeta'><span><code>convert-meta</code><a href='#index-convert_002dmeta' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, Readline will convert characters with the
+eighth bit set to an <small>ASCII</small> key sequence by stripping the eighth
+bit and prefixing an <tt class="key">ESC</tt> character, converting them to a
+meta-prefixed key sequence. The default value is &lsquo;<samp>on</samp>&rsquo;, but
+will be set to &lsquo;<samp>off</samp>&rsquo; if the locale is one that contains
eight-bit characters.
-<P>
-
-<DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX17"></A>
-If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
+</p>
+</dd>
+<dt id='index-disable_002dcompletion'><span><code>disable-completion</code><a href='#index-disable_002dcompletion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>On</samp>&rsquo;, 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>echo-control-characters</CODE>
-<DD><A NAME="IDX18"></A>
-When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
+been mapped to <code>self-insert</code>. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-echo_002dcontrol_002dcharacters'><span><code>echo-control-characters</code><a href='#index-echo_002dcontrol_002dcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When set to &lsquo;<samp>on</samp>&rsquo;, 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>editing-mode</CODE>
-<DD><A NAME="IDX19"></A>
-The <CODE>editing-mode</CODE> variable controls which default set of
+keyboard. The default is &lsquo;<samp>on</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-editing_002dmode'><span><code>editing-mode</code><a href='#index-editing_002dmode' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX20"></A>
-If the <VAR>show-mode-in-prompt</VAR> variable is enabled,
+set to either &lsquo;<samp>emacs</samp>&rsquo; or &lsquo;<samp>vi</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-emacs_002dmode_002dstring'><span><code>emacs-mode-string</code><a href='#index-emacs_002dmode_002dstring' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the <var>show-mode-in-prompt</var> variable is enabled,
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
+Use the &lsquo;<samp>\1</samp>&rsquo; and &lsquo;<samp>\2</samp>&rsquo; 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>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>`On'</SAMP>.
-<P>
-
-<DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX22"></A>
-When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
+The default is &lsquo;<samp>@</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-enable_002dactive_002dregion'><span><code>enable-active-region</code><a href='#index-enable_002dactive_002dregion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The <em>point</em> is the current cursor position, and <em>mark</em> refers
+to a saved cursor position (see <a href="#Commands-For-Moving">Commands For Moving</a>).
+The text between the point and mark is referred to as the <em>region</em>.
+When this variable is set to &lsquo;<samp>On</samp>&rsquo;, Readline allows certain commands
+to designate the region as <em>active</em>.
+When the region is active, Readline highlights the text in the region using
+the value of the <code>active-region-start-color</code>, which defaults to the
+string that enables
+the terminal&rsquo;s standout mode.
+The active region shows the text inserted by bracketed-paste and any
+matching text found by incremental and non-incremental history searches.
+The default is &lsquo;<samp>On</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-enable_002dbracketed_002dpaste'><span><code>enable-bracketed-paste</code><a href='#index-enable_002dbracketed_002dpaste' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When set to &lsquo;<samp>On</samp>&rsquo;, Readline configures the terminal 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 is called putting the terminal into <em>bracketed paste mode</em>;
+it prevents Readline from executing any editing commands bound to key
+sequences appearing in the pasted text.
+The default is &lsquo;<samp>On</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-enable_002dkeypad'><span><code>enable-keypad</code><a href='#index-enable_002dkeypad' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When set to &lsquo;<samp>on</samp>&rsquo;, 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>.
-<P>
-
-<DT><CODE>enable-meta-key</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, Readline will try to enable any meta modifier
+arrow keys. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt><span><code>enable-meta-key</code></span></dt>
+<dd><p>When set to &lsquo;<samp>on</samp>&rsquo;, 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 <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>expand-tilde</CODE>
-<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="IDX24"></A>
-If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
+The default is &lsquo;<samp>on</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-expand_002dtilde'><span><code>expand-tilde</code><a href='#index-expand_002dtilde' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, tilde expansion is performed when Readline
+attempts word completion. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-history_002dpreserve_002dpoint'><span><code>history-preserve-point</code><a href='#index-history_002dpreserve_002dpoint' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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>
-or <CODE>next-history</CODE>. The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>history-size</CODE>
-<DD><A NAME="IDX25"></A>
-Set the maximum number of history entries saved in the history list.
+same location on each history line retrieved with <code>previous-history</code>
+or <code>next-history</code>. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-history_002dsize'><span><code>history-size</code><a href='#index-history_002dsize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-If an attempt is made to set <VAR>history-size</VAR> to a non-numeric value,
+If an attempt is made to set <var>history-size</var> to a non-numeric value,
the maximum number of history entries will be set to 500.
-<P>
-
-<DT><CODE>horizontal-scroll-mode</CODE>
-<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
+</p>
+</dd>
+<dt id='index-horizontal_002dscroll_002dmode'><span><code>horizontal-scroll-mode</code><a href='#index-horizontal_002dscroll_002dmode' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable can be set to either &lsquo;<samp>on</samp>&rsquo; or &lsquo;<samp>off</samp>&rsquo;. Setting it
+to &lsquo;<samp>on</samp>&rsquo; 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.
-This variable is automatically set to <SAMP>`on'</SAMP> for terminals of height 1.
-By default, this variable is set to <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX27"></A>
-<A NAME="IDX28"></A>
-If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
+This variable is automatically set to &lsquo;<samp>on</samp>&rsquo; for terminals of height 1.
+By default, this variable is set to &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-input_002dmeta'><span><code>input-meta</code><a href='#index-input_002dmeta' class='copiable-anchor'> &para;</a></span></dt>
+<dd><span id="index-meta_002dflag"></span>
+<p>If set to &lsquo;<samp>on</samp>&rsquo;, 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 <SAMP>`off'</SAMP>, but Readline will set it to <SAMP>`on'</SAMP> if the
+default value is &lsquo;<samp>off</samp>&rsquo;, but Readline will set it to &lsquo;<samp>on</samp>&rsquo; if the
locale contains eight-bit characters.
-The name <CODE>meta-flag</CODE> is a synonym for this variable.
-<P>
-
-<DT><CODE>isearch-terminators</CODE>
-<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
-<KBD>C-J</KBD> will terminate an incremental search.
-<P>
-
-<DT><CODE>keymap</CODE>
-<DD><A NAME="IDX30"></A>
-Sets Readline's idea of the current keymap for key binding commands.
-Built-in <CODE>keymap</CODE> names are
-<CODE>emacs</CODE>,
-<CODE>emacs-standard</CODE>,
-<CODE>emacs-meta</CODE>,
-<CODE>emacs-ctlx</CODE>,
-<CODE>vi</CODE>,
-<CODE>vi-move</CODE>,
-<CODE>vi-command</CODE>, and
-<CODE>vi-insert</CODE>.
-<CODE>vi</CODE> is equivalent to <CODE>vi-command</CODE> (<CODE>vi-move</CODE> is also a
-synonym); <CODE>emacs</CODE> is equivalent to <CODE>emacs-standard</CODE>.
+The name <code>meta-flag</code> is a synonym for this variable.
+</p>
+</dd>
+<dt id='index-isearch_002dterminators'><span><code>isearch-terminators</code><a href='#index-isearch_002dterminators' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The string of characters that should terminate an incremental search without
+subsequently executing the character as a command (see <a href="#Searching">Searching for Commands in the History</a>).
+If this variable has not been given a value, the characters <tt class="key">ESC</tt> and
+<kbd>C-J</kbd> will terminate an incremental search.
+</p>
+</dd>
+<dt id='index-keymap'><span><code>keymap</code><a href='#index-keymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Sets Readline&rsquo;s idea of the current keymap for key binding commands.
+Built-in <code>keymap</code> names are
+<code>emacs</code>,
+<code>emacs-standard</code>,
+<code>emacs-meta</code>,
+<code>emacs-ctlx</code>,
+<code>vi</code>,
+<code>vi-move</code>,
+<code>vi-command</code>, and
+<code>vi-insert</code>.
+<code>vi</code> is equivalent to <code>vi-command</code> (<code>vi-move</code> is also a
+synonym); <code>emacs</code> is equivalent to <code>emacs-standard</code>.
Applications may add additional names.
-The default value is <CODE>emacs</CODE>.
-The value of the <CODE>editing-mode</CODE> variable also affects the
+The default value is <code>emacs</code>.
+The value of the <code>editing-mode</code> variable also affects the
default keymap.
-<P>
-
-<DT><CODE>keyseq-timeout</CODE>
-<DD>Specifies the duration Readline will wait for a character when reading an
+</p>
+</dd>
+<dt><span><code>keyseq-timeout</code></span></dt>
+<dd><p>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 (<CODE>rl_instream</CODE> by default).
+available on the current input source (<code>rl_instream</code> 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 <CODE>500</CODE>.
-<P>
-
-<DT><CODE>mark-directories</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
-appended. The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>mark-modified-lines</CODE>
-<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="IDX32"></A>
-If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
+The default value is <code>500</code>.
+</p>
+</dd>
+<dt><span><code>mark-directories</code></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, completed directory names have a slash
+appended. The default is &lsquo;<samp>on</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-mark_002dmodified_002dlines'><span><code>mark-modified-lines</code><a href='#index-mark_002dmodified_002dlines' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable, when set to &lsquo;<samp>on</samp>&rsquo;, causes Readline to display an
+asterisk (&lsquo;<samp>*</samp>&rsquo;) at the start of history lines which have been modified.
+This variable is &lsquo;<samp>off</samp>&rsquo; by default.
+</p>
+</dd>
+<dt id='index-mark_002dsymlinked_002ddirectories'><span><code>mark-symlinked-directories</code><a href='#index-mark_002dsymlinked_002ddirectories' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, completed names which are symbolic links
to directories have a slash appended (subject to the value of
-<CODE>mark-directories</CODE>).
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>match-hidden-files</CODE>
-<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
+<code>mark-directories</code>).
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-match_002dhidden_002dfiles'><span><code>match-hidden-files</code><a href='#index-match_002dhidden_002dfiles' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable, when set to &lsquo;<samp>on</samp>&rsquo;, causes Readline to match files whose
+names begin with a &lsquo;<samp>.</samp>&rsquo; (hidden files) when performing filename
completion.
-If set to <SAMP>`off'</SAMP>, the leading <SAMP>`.'</SAMP> must be
+If set to &lsquo;<samp>off</samp>&rsquo;, the leading &lsquo;<samp>.</samp>&rsquo; must be
supplied by the user in the filename to be completed.
-This variable is <SAMP>`on'</SAMP> by default.
-<P>
-
-<DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX34"></A>
-If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
+This variable is &lsquo;<samp>on</samp>&rsquo; by default.
+</p>
+</dd>
+<dt id='index-menu_002dcomplete_002ddisplay_002dprefix'><span><code>menu-complete-display-prefix</code><a href='#index-menu_002dcomplete_002ddisplay_002dprefix' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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="IDX35"></A>
-If set to <SAMP>`on'</SAMP>, Readline will display characters with the
+the list. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-output_002dmeta'><span><code>output-meta</code><a href='#index-output_002dmeta' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, Readline will display characters with the
eighth bit set directly rather than as a meta-prefixed escape
sequence.
-The default is <SAMP>`off'</SAMP>, but Readline will set it to <SAMP>`on'</SAMP> if the
+The default is &lsquo;<samp>off</samp>&rsquo;, but Readline will set it to &lsquo;<samp>on</samp>&rsquo; if the
locale contains eight-bit characters.
-<P>
-
-<DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX36"></A>
-If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
+</p>
+</dd>
+<dt id='index-page_002dcompletions'><span><code>page-completions</code><a href='#index-page_002dcompletions' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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.
-<P>
-
-<DT><CODE>print-completions-horizontally</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, Readline will display completions with matches
+This variable is &lsquo;<samp>on</samp>&rsquo; by default.
+</p>
+</dd>
+<dt><span><code>print-completions-horizontally</code></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, Readline will display completions with matches
sorted horizontally in alphabetical order, rather than down the screen.
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>revert-all-at-newline</CODE>
-<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,
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-revert_002dall_002dat_002dnewline'><span><code>revert-all-at-newline</code><a href='#index-revert_002dall_002dat_002dnewline' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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
-calls to <CODE>readline</CODE>. The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX38"></A>
-This alters the default behavior of the completion functions. If
-set to <SAMP>`on'</SAMP>,
+calls to <code>readline</code>. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-show_002dall_002dif_002dambiguous'><span><code>show-all-if-ambiguous</code><a href='#index-show_002dall_002dif_002dambiguous' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This alters the default behavior of the completion functions. If
+set to &lsquo;<samp>on</samp>&rsquo;,
words which have more than one possible completion cause the
matches to be listed immediately instead of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-unmodified</CODE>
-<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>,
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-show_002dall_002dif_002dunmodified'><span><code>show-all-if-unmodified</code><a href='#index-show_002dall_002dif_002dunmodified' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This alters the default behavior of the completion functions in
+a fashion similar to <var>show-all-if-ambiguous</var>.
+If set to &lsquo;<samp>on</samp>&rsquo;,
words which have more than one possible completion without any
-possible partial completion (the possible completions don't share
+possible partial completion (the possible completions don&rsquo;t share
a common prefix) cause the matches to be listed immediately instead
of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-mode-in-prompt</CODE>
-<DD><A NAME="IDX40"></A>
-If set to <SAMP>`on'</SAMP>, add a string to the beginning of the prompt
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-show_002dmode_002din_002dprompt'><span><code>show-mode-in-prompt</code><a href='#index-show_002dmode_002din_002dprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, add a string to the beginning of the prompt
indicating the editing mode: emacs, vi command, or vi insertion.
-The mode strings are user-settable (e.g., <VAR>emacs-mode-string</VAR>).
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>skip-completed-text</CODE>
-<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
+The mode strings are user-settable (e.g., <var>emacs-mode-string</var>).
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-skip_002dcompleted_002dtext'><span><code>skip-completed-text</code><a href='#index-skip_002dcompleted_002dtext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, this alters the default completion behavior when
+inserting a single match into the line. It&rsquo;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 <SAMP>`e'</SAMP> in <SAMP>`Makefile'</SAMP> will result in <SAMP>`Makefile'</SAMP>
-rather than <SAMP>`Makefilefile'</SAMP>, assuming there is a single possible
+is after the &lsquo;<samp>e</samp>&rsquo; in &lsquo;<samp>Makefile</samp>&rsquo; will result in &lsquo;<samp>Makefile</samp>&rsquo;
+rather than &lsquo;<samp>Makefilefile</samp>&rsquo;, assuming there is a single possible
completion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>vi-cmd-mode-string</CODE>
-<DD><A NAME="IDX42"></A>
-If the <VAR>show-mode-in-prompt</VAR> variable is enabled,
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-vi_002dcmd_002dmode_002dstring'><span><code>vi-cmd-mode-string</code><a href='#index-vi_002dcmd_002dmode_002dstring' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the <var>show-mode-in-prompt</var> variable is enabled,
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
+Use the &lsquo;<samp>\1</samp>&rsquo; and &lsquo;<samp>\2</samp>&rsquo; 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>
-If the <VAR>show-mode-in-prompt</VAR> variable is enabled,
+The default is &lsquo;<samp>(cmd)</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-vi_002dins_002dmode_002dstring'><span><code>vi-ins-mode-string</code><a href='#index-vi_002dins_002dmode_002dstring' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the <var>show-mode-in-prompt</var> variable is enabled,
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
+Use the &lsquo;<samp>\1</samp>&rsquo; and &lsquo;<samp>\2</samp>&rsquo; 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="IDX44"></A>
-If set to <SAMP>`on'</SAMP>, a character denoting a file's type
+The default is &lsquo;<samp>(ins)</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-visible_002dstats'><span><code>visible-stats</code><a href='#index-visible_002dstats' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, a character denoting a file&rsquo;s type
is appended to the filename when listing possible
-completions. The default is <SAMP>`off'</SAMP>.
-<P>
-
-</DL>
-<P>
-
-<DT>Key Bindings
-<DD>The syntax for controlling key bindings in the init file is
+completions. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+</dl>
+
+</dd>
+<dt><span>Key Bindings</span></dt>
+<dd><p>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.
-<P>
-
-Once you know the name of the command, simply place on a line
+</p>
+<p>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, a colon, and then the name of the
command.
-There can be no space between the key name and the colon -- that will be
+There can be no space between the key name and the colon &ndash; that will be
interpreted as part of the key name.
The name of the key can be expressed in different ways, depending on
what you find most comfortable.
-</P><P>
-
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a <VAR>macro</VAR>).
-</P><P>
-
-<DL COMPACT>
-<DT><VAR>keyname</VAR>: <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyname</VAR> is the name of a key spelled out in English. For example:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>Control-u: universal-argument
+</p>
+<p>In addition to command names, readline allows keys to be bound
+to a string that is inserted when the key is pressed (a <var>macro</var>).
+</p>
+
+<dl compact="compact">
+<dt><span><var>keyname</var>:&nbsp;<var><span class="nolinebreak">function-name</span></var>&nbsp;or&nbsp;<var>macro</var><!-- /@w --></span></dt>
+<dd><p><var>keyname</var> is the name of a key spelled out in English. For example:
+</p><div class="example">
+<pre class="example">Control-u: universal-argument
Meta-Rubout: backward-kill-word
-Control-o: "&#62; output"
-</pre></td></tr></table><P>
+Control-o: &quot;&gt; output&quot;
+</pre></div>
-In the example above, <KBD>C-u</KBD> is bound to the function
-<CODE>universal-argument</CODE>,
-<KBD>M-DEL</KBD> is bound to the function <CODE>backward-kill-word</CODE>, and
-<KBD>C-o</KBD> is bound to run the macro
+<p>In the example above, <kbd>C-u</kbd> is bound to the function
+<code>universal-argument</code>,
+<kbd>M-DEL</kbd> is bound to the function <code>backward-kill-word</code>, and
+<kbd>C-o</kbd> is bound to run the macro
expressed on the right hand side (that is, to insert the text
-<SAMP>`&#62; output'</SAMP> into the line).
-</P><P>
-
-A number of symbolic character names are recognized while
+&lsquo;<samp>&gt; output</samp>&rsquo; into the line).
+</p>
+<p>A number of symbolic character names are recognized while
processing this key binding syntax:
-<VAR>DEL</VAR>,
-<VAR>ESC</VAR>,
-<VAR>ESCAPE</VAR>,
-<VAR>LFD</VAR>,
-<VAR>NEWLINE</VAR>,
-<VAR>RET</VAR>,
-<VAR>RETURN</VAR>,
-<VAR>RUBOUT</VAR>,
-<VAR>SPACE</VAR>,
-<VAR>SPC</VAR>,
+<var>DEL</var>,
+<var>ESC</var>,
+<var>ESCAPE</var>,
+<var>LFD</var>,
+<var>NEWLINE</var>,
+<var>RET</var>,
+<var>RETURN</var>,
+<var>RUBOUT</var>,
+<var>SPACE</var>,
+<var>SPC</var>,
and
-<VAR>TAB</VAR>.
-</P><P>
-
-<DT>"<VAR>keyseq</VAR>": <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyseq</VAR> differs from <VAR>keyname</VAR> above in that strings
+<var>TAB</var>.
+</p>
+</dd>
+<dt><span>&quot;<var>keyseq</var>&quot;:&nbsp;<var><span class="nolinebreak">function-name</span></var>&nbsp;or&nbsp;<var>macro</var><!-- /@w --></span></dt>
+<dd><p><var>keyseq</var> differs from <var>keyname</var> 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
+the key sequence in double quotes. Some <small>GNU</small> Emacs style key
escapes can be used, as in the following example, but the
special character names are not recognized.
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-u": universal-argument
-"\C-x\C-r": re-read-init-file
-"\e[11~": "Function Key 1"
-</pre></td></tr></table></P><P>
-
-In the above example, <KBD>C-u</KBD> is again bound to the function
-<CODE>universal-argument</CODE> (just as it was in the first example),
-<SAMP>`<KBD>C-x</KBD> <KBD>C-r</KBD>'</SAMP> is bound to the function <CODE>re-read-init-file</CODE>,
-and <SAMP>`<KBD>ESC</KBD> <KBD>[</KBD> <KBD>1</KBD> <KBD>1</KBD> <KBD>~</KBD>'</SAMP> is bound to insert
-the text <SAMP>`Function Key 1'</SAMP>.
-</P><P>
-
-</DL>
-<P>
-
-The following GNU Emacs style escape sequences are available when
+</p>
+<div class="example">
+<pre class="example">&quot;\C-u&quot;: universal-argument
+&quot;\C-x\C-r&quot;: re-read-init-file
+&quot;\e[11~&quot;: &quot;Function Key 1&quot;
+</pre></div>
+
+<p>In the above example, <kbd>C-u</kbd> is again bound to the function
+<code>universal-argument</code> (just as it was in the first example),
+&lsquo;<samp><kbd>C-x</kbd> <kbd>C-r</kbd></samp>&rsquo; is bound to the function <code>re-read-init-file</code>,
+and &lsquo;<samp><span class="key">ESC</span> <span class="key">[</span> <span class="key">1</span> <span class="key">1</span> <span class="key">~</span></samp>&rsquo; is bound to insert
+the text &lsquo;<samp>Function Key 1</samp>&rsquo;.
+</p>
+</dd>
+</dl>
+
+<p>The following <small>GNU</small> Emacs style escape sequences are available when
specifying key sequences:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE><KBD>\C-</KBD></CODE>
-<DD>control prefix
-<DT><CODE><KBD>\M-</KBD></CODE>
-<DD>meta prefix
-<DT><CODE><KBD>\e</KBD></CODE>
-<DD>an escape character
-<DT><CODE><KBD>\\</KBD></CODE>
-<DD>backslash
-<DT><CODE><KBD>\"</KBD></CODE>
-<DD><KBD>"</KBD>, a double quotation mark
-<DT><CODE><KBD>\'</KBD></CODE>
-<DD><KBD>'</KBD>, a single quote or apostrophe
-</DL>
-<P>
-
-In addition to the GNU Emacs style escape sequences, a second
+</p>
+<dl compact="compact">
+<dt><span><code><kbd>\C-</kbd></code></span></dt>
+<dd><p>control prefix
+</p></dd>
+<dt><span><code><kbd>\M-</kbd></code></span></dt>
+<dd><p>meta prefix
+</p></dd>
+<dt><span><code><kbd>\e</kbd></code></span></dt>
+<dd><p>an escape character
+</p></dd>
+<dt><span><code><kbd>\\</kbd></code></span></dt>
+<dd><p>backslash
+</p></dd>
+<dt><span><code><kbd>\&quot;</kbd></code></span></dt>
+<dd><p><tt class="key">&quot;</tt>, a double quotation mark
+</p></dd>
+<dt><span><code><kbd>\'</kbd></code></span></dt>
+<dd><p><tt class="key">'</tt>, a single quote or apostrophe
+</p></dd>
+</dl>
+
+<p>In addition to the <small>GNU</small> Emacs style escape sequences, a second
set of backslash escapes is available:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>\a</CODE>
-<DD>alert (bell)
-<DT><CODE>\b</CODE>
-<DD>backspace
-<DT><CODE>\d</CODE>
-<DD>delete
-<DT><CODE>\f</CODE>
-<DD>form feed
-<DT><CODE>\n</CODE>
-<DD>newline
-<DT><CODE>\r</CODE>
-<DD>carriage return
-<DT><CODE>\t</CODE>
-<DD>horizontal tab
-<DT><CODE>\v</CODE>
-<DD>vertical tab
-<DT><CODE>\<VAR>nnn</VAR></CODE>
-<DD>the eight-bit character whose value is the octal value <VAR>nnn</VAR>
+</p>
+<dl compact="compact">
+<dt><span><code>\a</code></span></dt>
+<dd><p>alert (bell)
+</p></dd>
+<dt><span><code>\b</code></span></dt>
+<dd><p>backspace
+</p></dd>
+<dt><span><code>\d</code></span></dt>
+<dd><p>delete
+</p></dd>
+<dt><span><code>\f</code></span></dt>
+<dd><p>form feed
+</p></dd>
+<dt><span><code>\n</code></span></dt>
+<dd><p>newline
+</p></dd>
+<dt><span><code>\r</code></span></dt>
+<dd><p>carriage return
+</p></dd>
+<dt><span><code>\t</code></span></dt>
+<dd><p>horizontal tab
+</p></dd>
+<dt><span><code>\v</code></span></dt>
+<dd><p>vertical tab
+</p></dd>
+<dt><span><code>\<var>nnn</var></code></span></dt>
+<dd><p>the eight-bit character whose value is the octal value <var>nnn</var>
(one to three digits)
-<DT><CODE>\x<VAR>HH</VAR></CODE>
-<DD>the eight-bit character whose value is the hexadecimal value <VAR>HH</VAR>
+</p></dd>
+<dt><span><code>\x<var>HH</var></code></span></dt>
+<dd><p>the eight-bit character whose value is the hexadecimal value <var>HH</var>
(one or two hex digits)
-</DL>
-<P>
+</p></dd>
+</dl>
-When entering the text of a macro, single or double quotes must
+<p>When entering the text of a macro, single or double quotes must
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 <SAMP>`"'</SAMP> and <SAMP>`''</SAMP>.
-For example, the following binding will make <SAMP>`<KBD>C-x</KBD> \'</SAMP>
-insert a single <SAMP>`\'</SAMP> into the line:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-x\\": "\\"
-</pre></td></tr></table></P><P>
-
-</DL>
-<P>
-
-<A NAME="Conditional Init Constructs"></A>
-<HR SIZE="6">
-<A NAME="SEC11"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC10"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC12"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC12"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.2 Conditional Init Constructs </H3>
-<!--docid::SEC11::-->
-<P>
-
-Readline implements a facility similar in spirit to the conditional
+including &lsquo;<samp>&quot;</samp>&rsquo; and &lsquo;<samp>'</samp>&rsquo;.
+For example, the following binding will make &lsquo;<samp><kbd>C-x</kbd> \</samp>&rsquo;
+insert a single &lsquo;<samp>\</samp>&rsquo; into the line:
+</p><div class="example">
+<pre class="example">&quot;\C-x\\&quot;: &quot;\\&quot;
+</pre></div>
+
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Conditional-Init-Constructs">
+<div class="header">
+<p>
+Next: <a href="#Sample-Init-File" accesskey="n" rel="next">Sample Init File</a>, Previous: <a href="#Readline-Init-File-Syntax" accesskey="p" rel="prev">Readline Init File Syntax</a>, Up: <a href="#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Conditional-Init-Constructs-1"></span><h4 class="subsection">1.3.2 Conditional Init Constructs</h4>
+
+<p>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.
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>$if</CODE>
-<DD>The <CODE>$if</CODE> construct allows bindings to be made based on the
+</p>
+<dl compact="compact">
+<dt><span><code>$if</code></span></dt>
+<dd><p>The <code>$if</code> 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, after any comparison operator,
extends to the end of the line;
unless otherwise noted, no characters are required to isolate it.
-<P>
-
-<DL COMPACT>
-<DT><CODE>mode</CODE>
-<DD>The <CODE>mode=</CODE> form of the <CODE>$if</CODE> directive is used to test
-whether Readline is in <CODE>emacs</CODE> or <CODE>vi</CODE> mode.
+</p>
+<dl compact="compact">
+<dt><span><code>mode</code></span></dt>
+<dd><p>The <code>mode=</code> form of the <code>$if</code> directive is used to test
+whether Readline is in <code>emacs</code> or <code>vi</code> mode.
This may be used in conjunction
-with the <SAMP>`set keymap'</SAMP> command, for instance, to set bindings in
-the <CODE>emacs-standard</CODE> and <CODE>emacs-ctlx</CODE> keymaps only if
-Readline is starting out in <CODE>emacs</CODE> mode.
-<P>
-
-<DT><CODE>term</CODE>
-<DD>The <CODE>term=</CODE> form may be used to include terminal-specific
+with the &lsquo;<samp>set keymap</samp>&rsquo; command, for instance, to set bindings in
+the <code>emacs-standard</code> and <code>emacs-ctlx</code> keymaps only if
+Readline is starting out in <code>emacs</code> mode.
+</p>
+</dd>
+<dt><span><code>term</code></span></dt>
+<dd><p>The <code>term=</code> 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
-<SAMP>`='</SAMP> is tested against both the full name of the terminal and
-the portion of the terminal name before the first <SAMP>`-'</SAMP>. This
-allows <CODE>sun</CODE> to match both <CODE>sun</CODE> and <CODE>sun-cmd</CODE>,
+terminal&rsquo;s function keys. The word on the right side of the
+&lsquo;<samp>=</samp>&rsquo; is tested against both the full name of the terminal and
+the portion of the terminal name before the first &lsquo;<samp>-</samp>&rsquo;. This
+allows <code>sun</code> to match both <code>sun</code> and <code>sun-cmd</code>,
for instance.
-<P>
-
-<DT><CODE>version</CODE>
-<DD>The <CODE>version</CODE> test may be used to perform comparisons against
+</p>
+</dd>
+<dt><span><code>version</code></span></dt>
+<dd><p>The <code>version</code> test may be used to perform comparisons against
specific Readline versions.
-The <CODE>version</CODE> expands to the current Readline version.
+The <code>version</code> expands to the current Readline version.
The set of comparison operators includes
-<SAMP>`='</SAMP> (and <SAMP>`=='</SAMP>), <SAMP>`!='</SAMP>, <SAMP>`&#60;='</SAMP>, <SAMP>`&#62;='</SAMP>, <SAMP>`&#60;'</SAMP>,
-and <SAMP>`&#62;'</SAMP>.
+&lsquo;<samp>=</samp>&rsquo; (and &lsquo;<samp>==</samp>&rsquo;), &lsquo;<samp>!=</samp>&rsquo;, &lsquo;<samp>&lt;=</samp>&rsquo;, &lsquo;<samp>&gt;=</samp>&rsquo;, &lsquo;<samp>&lt;</samp>&rsquo;,
+and &lsquo;<samp>&gt;</samp>&rsquo;.
The version number supplied on the right side of the operator consists
of a major version number, an optional decimal point, and an optional
-minor version (e.g., <SAMP>`7.1'</SAMP>). If the minor version is omitted, it
-is assumed to be <SAMP>`0'</SAMP>.
-The operator may be separated from the string <CODE>version</CODE> and
+minor version (e.g., &lsquo;<samp>7.1</samp>&rsquo;). If the minor version is omitted, it
+is assumed to be &lsquo;<samp>0</samp>&rsquo;.
+The operator may be separated from the string <code>version</code> and
from the version number argument by whitespace.
The following example sets a variable if the Readline version being used
is 7.0 or newer:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if version &#62;= 7.0
+</p><div class="example">
+<pre class="example">$if version &gt;= 7.0
set show-mode-in-prompt on
$endif
-</pre></td></tr></table><P>
+</pre></div>
-<DT><CODE>application</CODE>
-<DD>The <VAR>application</VAR> construct is used to include
+</dd>
+<dt><span><code>application</code></span></dt>
+<dd><p>The <var>application</var> construct is used to include
application-specific settings. Each program using the Readline
-library sets the <VAR>application name</VAR>, and you can test for
+library sets the <var>application name</var>, and you 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 Bash:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if Bash
+</p><div class="example">
+<pre class="example">$if Bash
# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
+&quot;\C-xq&quot;: &quot;\eb\&quot;\ef\&quot;&quot;
$endif
-</pre></td></tr></table><P>
+</pre></div>
-<DT><CODE>variable</CODE>
-<DD>The <VAR>variable</VAR> construct provides simple equality tests for Readline
+</dd>
+<dt><span><code>variable</code></span></dt>
+<dd><p>The <var>variable</var> construct provides simple equality tests for Readline
variables and values.
-The permitted comparison operators are <SAMP>`='</SAMP>, <SAMP>`=='</SAMP>, and <SAMP>`!='</SAMP>.
+The permitted comparison operators are &lsquo;<samp>=</samp>&rsquo;, &lsquo;<samp>==</samp>&rsquo;, and &lsquo;<samp>!=</samp>&rsquo;.
The variable name must be separated from the comparison operator by
whitespace; the operator may be separated from the value on the right hand
side by whitespace.
Both string and boolean variables may be tested. Boolean variables must be
-tested against the values <VAR>on</VAR> and <VAR>off</VAR>.
-The following example is equivalent to the <CODE>mode=emacs</CODE> test described
+tested against the values <var>on</var> and <var>off</var>.
+The following example is equivalent to the <code>mode=emacs</code> test described
above:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if editing-mode == emacs
+</p><div class="example">
+<pre class="example">$if editing-mode == emacs
set show-mode-in-prompt on
$endif
-</pre></td></tr></table></DL>
-<P>
-
-<DT><CODE>$endif</CODE>
-<DD>This command, as seen in the previous example, terminates an
-<CODE>$if</CODE> command.
-<P>
-
-<DT><CODE>$else</CODE>
-<DD>Commands in this branch of the <CODE>$if</CODE> directive are executed if
+</pre></div>
+</dd>
+</dl>
+
+</dd>
+<dt><span><code>$endif</code></span></dt>
+<dd><p>This command, as seen in the previous example, terminates an
+<code>$if</code> command.
+</p>
+</dd>
+<dt><span><code>$else</code></span></dt>
+<dd><p>Commands in this branch of the <code>$if</code> directive are executed if
the test fails.
-<P>
-
-<DT><CODE>$include</CODE>
-<DD>This directive takes a single filename as an argument and reads commands
+</p>
+</dd>
+<dt><span><code>$include</code></span></dt>
+<dd><p>This directive takes a single filename as an argument and reads commands
and bindings from that file.
-For example, the following directive reads from <TT>`/etc/inputrc'</TT>:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$include /etc/inputrc
-</pre></td></tr></table></DL>
-<P>
-
-<A NAME="Sample Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC12"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC11"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.3 Sample Init File </H3>
-<!--docid::SEC12::-->
-<P>
-
-Here is an example of an <VAR>inputrc</VAR> file. This illustrates key
+For example, the following directive reads from <samp>/etc/inputrc</samp>:
+</p><div class="example">
+<pre class="example">$include /etc/inputrc
+</pre></div>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Sample-Init-File">
+<div class="header">
+<p>
+Previous: <a href="#Conditional-Init-Constructs" accesskey="p" rel="prev">Conditional Init Constructs</a>, Up: <a href="#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Sample-Init-File-1"></span><h4 class="subsection">1.3.3 Sample Init File</h4>
+
+<p>Here is an example of an <var>inputrc</var> file. This illustrates key
binding, variable assignment, and conditional syntax.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre># This file controls the behaviour of line input editing for
+</p>
+<div class="example">
+<pre class="example"># This file controls the behaviour of line input editing for
# programs that use the GNU Readline library. Existing
# programs include FTP, Bash, and GDB.
#
@@ -1291,31 +1283,31 @@ Meta-Control-h: backward-kill-word Text after the function name is ignored
#
# Arrow keys in keypad mode
#
-#"\M-OD": backward-char
-#"\M-OC": forward-char
-#"\M-OA": previous-history
-#"\M-OB": next-history
+#&quot;\M-OD&quot;: backward-char
+#&quot;\M-OC&quot;: forward-char
+#&quot;\M-OA&quot;: previous-history
+#&quot;\M-OB&quot;: next-history
#
# Arrow keys in ANSI mode
#
-"\M-[D": backward-char
-"\M-[C": forward-char
-"\M-[A": previous-history
-"\M-[B": next-history
+&quot;\M-[D&quot;: backward-char
+&quot;\M-[C&quot;: forward-char
+&quot;\M-[A&quot;: previous-history
+&quot;\M-[B&quot;: next-history
#
# Arrow keys in 8 bit keypad mode
#
-#"\M-\C-OD": backward-char
-#"\M-\C-OC": forward-char
-#"\M-\C-OA": previous-history
-#"\M-\C-OB": next-history
+#&quot;\M-\C-OD&quot;: backward-char
+#&quot;\M-\C-OC&quot;: forward-char
+#&quot;\M-\C-OA&quot;: previous-history
+#&quot;\M-\C-OB&quot;: next-history
#
# Arrow keys in 8 bit ANSI mode
#
-#"\M-\C-[D": backward-char
-#"\M-\C-[C": forward-char
-#"\M-\C-[A": previous-history
-#"\M-\C-[B": next-history
+#&quot;\M-\C-[D&quot;: backward-char
+#&quot;\M-\C-[C&quot;: forward-char
+#&quot;\M-\C-[A&quot;: previous-history
+#&quot;\M-\C-[B&quot;: next-history
C-q: quoted-insert
@@ -1327,20 +1319,20 @@ TAB: complete
# Macros that are convenient for shell interaction
$if Bash
# edit the path
-"\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
+&quot;\C-xp&quot;: &quot;PATH=${PATH}\e\C-e\C-a\ef\C-f&quot;
# prepare to type a quoted word --
# insert open and close double quotes
# and move to just after the open quote
-"\C-x\"": "\"\"\C-b"
+&quot;\C-x\&quot;&quot;: &quot;\&quot;\&quot;\C-b&quot;
# insert a backslash (testing backslash escapes
# in sequences and macros)
-"\C-x\\": "\\"
+&quot;\C-x\\&quot;: &quot;\\&quot;
# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
+&quot;\C-xq&quot;: &quot;\eb\&quot;\ef\&quot;&quot;
# Add a binding to refresh the line, which is unbound
-"\C-xr": redraw-current-line
+&quot;\C-xr&quot;: redraw-current-line
# Edit variable on current line.
-"\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
+&quot;\M-\C-v&quot;: &quot;\C-a\C-k$\C-y\M-\C-e\C-a\C-y=&quot;
$endif
# use a visible bell if one is available
@@ -1363,647 +1355,473 @@ set completion-query-items 150
# For FTP
$if Ftp
-"\C-xg": "get \M-?"
-"\C-xt": "put \M-?"
-"\M-.": yank-last-arg
+&quot;\C-xg&quot;: &quot;get \M-?&quot;
+&quot;\C-xt&quot;: &quot;put \M-?&quot;
+&quot;\M-.&quot;: yank-last-arg
$endif
-</pre></td></tr></table></P><P>
-
-<A NAME="Bindable Readline Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC13"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC12"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC14"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.4 Bindable Readline Commands </H2>
-<!--docid::SEC13::-->
-<P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting at previous lines.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for changing text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for killing and yanking.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Specifying numeric arguments, repeat counts.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting Readline to do the typing for you.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Saving and re-executing typed characters</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Other miscellaneous commands.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-This section describes Readline commands that may be bound to key
+</pre></div>
+
+<hr>
+</div>
+</div>
+<div class="section" id="Bindable-Readline-Commands">
+<div class="header">
+<p>
+Next: <a href="#Readline-vi-Mode" accesskey="n" rel="next">Readline vi Mode</a>, Previous: <a href="#Readline-Init-File" accesskey="p" rel="prev">Readline Init File</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Bindable-Readline-Commands-1"></span><h3 class="section">1.4 Bindable Readline Commands</h3>
+
+
+<p>This section describes Readline commands that may be bound to key
sequences.
Command names without an accompanying key sequence are unbound by default.
-</P><P>
-
-In the following descriptions, <EM>point</EM> refers to the current cursor
-position, and <EM>mark</EM> refers to a cursor position saved by the
-<CODE>set-mark</CODE> command.
-The text between the point and mark is referred to as the <EM>region</EM>.
-</P><P>
-
-<A NAME="Commands For Moving"></A>
-<HR SIZE="6">
-<A NAME="SEC14"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC15"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.1 Commands For Moving </H3>
-<!--docid::SEC14::-->
-<DL COMPACT>
-<A NAME="IDX45"></A>
-<DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX46"></A>
-Move to the start of the current line.
-<P>
-
-<A NAME="IDX47"></A>
-<DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX48"></A>
-Move to the end of the line.
-<P>
-
-<A NAME="IDX49"></A>
-<DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX50"></A>
-Move forward a character.
-<P>
-
-<A NAME="IDX51"></A>
-<DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX52"></A>
-Move back a character.
-<P>
-
-<A NAME="IDX53"></A>
-<DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX54"></A>
-Move forward to the end of the next word.
+</p>
+<p>In the following descriptions, <em>point</em> refers to the current cursor
+position, and <em>mark</em> refers to a cursor position saved by the
+<code>set-mark</code> command.
+The text between the point and mark is referred to as the <em>region</em>.
+</p>
+<ul class="section-toc">
+<li><a href="#Commands-For-Moving" accesskey="1">Commands For Moving</a></li>
+<li><a href="#Commands-For-History" accesskey="2">Commands For Manipulating The History</a></li>
+<li><a href="#Commands-For-Text" accesskey="3">Commands For Changing Text</a></li>
+<li><a href="#Commands-For-Killing" accesskey="4">Killing And Yanking</a></li>
+<li><a href="#Numeric-Arguments" accesskey="5">Specifying Numeric Arguments</a></li>
+<li><a href="#Commands-For-Completion" accesskey="6">Letting Readline Type For You</a></li>
+<li><a href="#Keyboard-Macros" accesskey="7">Keyboard Macros</a></li>
+<li><a href="#Miscellaneous-Commands" accesskey="8">Some Miscellaneous Commands</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Commands-For-Moving">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-History" accesskey="n" rel="next">Commands For Manipulating The History</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Commands-For-Moving-1"></span><h4 class="subsection">1.4.1 Commands For Moving</h4>
+<dl compact="compact">
+<dt id='index-beginning_002dof_002dline-_0028C_002da_0029'><span><code>beginning-of-line (C-a)</code><a href='#index-beginning_002dof_002dline-_0028C_002da_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the start of the current line.
+</p>
+</dd>
+<dt id='index-end_002dof_002dline-_0028C_002de_0029'><span><code>end-of-line (C-e)</code><a href='#index-end_002dof_002dline-_0028C_002de_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the end of the line.
+</p>
+</dd>
+<dt id='index-forward_002dchar-_0028C_002df_0029'><span><code>forward-char (C-f)</code><a href='#index-forward_002dchar-_0028C_002df_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move forward a character.
+</p>
+</dd>
+<dt id='index-backward_002dchar-_0028C_002db_0029'><span><code>backward-char (C-b)</code><a href='#index-backward_002dchar-_0028C_002db_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move back a character.
+</p>
+</dd>
+<dt id='index-forward_002dword-_0028M_002df_0029'><span><code>forward-word (M-f)</code><a href='#index-forward_002dword-_0028M_002df_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move forward to the end of the next word.
Words are composed of letters and digits.
-<P>
-
-<A NAME="IDX55"></A>
-<DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX56"></A>
-Move back to the start of the current or previous word.
+</p>
+</dd>
+<dt id='index-backward_002dword-_0028M_002db_0029'><span><code>backward-word (M-b)</code><a href='#index-backward_002dword-_0028M_002db_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move back to the start of the current or previous word.
Words are composed of letters and digits.
-<P>
+</p>
-<A NAME="IDX57"></A>
-<DT><CODE>previous-screen-line ()</CODE>
-<DD><A NAME="IDX58"></A>
-Attempt to move point to the same physical screen column on the previous
+</dd>
+<dt id='index-previous_002dscreen_002dline-_0028_0029'><span><code>previous-screen-line ()</code><a href='#index-previous_002dscreen_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Attempt to move point to the same physical screen column on the previous
physical screen line. This will not have the desired effect if the current
Readline line does not take up more than one physical line or if point is not
greater than the length of the prompt plus the screen width.
-<P>
-
-<A NAME="IDX59"></A>
-<DT><CODE>next-screen-line ()</CODE>
-<DD><A NAME="IDX60"></A>
-Attempt to move point to the same physical screen column on the next
+</p>
+</dd>
+<dt id='index-next_002dscreen_002dline-_0028_0029'><span><code>next-screen-line ()</code><a href='#index-next_002dscreen_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Attempt to move point to the same physical screen column on the next
physical screen line. This will not have the desired effect if the current
Readline line does not take up more than one physical line or if the length
of the current Readline line is not greater than the length of the prompt
plus the screen width.
-<P>
-
-<A NAME="IDX61"></A>
-<DT><CODE>clear-display (M-C-l)</CODE>
-<DD><A NAME="IDX62"></A>
-Clear the screen and, if possible, the terminal's scrollback buffer,
+</p>
+</dd>
+<dt id='index-clear_002ddisplay-_0028M_002dC_002dl_0029'><span><code>clear-display (M-C-l)</code><a href='#index-clear_002ddisplay-_0028M_002dC_002dl_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the screen and, if possible, the terminal&rsquo;s scrollback buffer,
then redraw the current line,
leaving the current line at the top of the screen.
-<P>
-
-<A NAME="IDX63"></A>
-<DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX64"></A>
-Clear the screen,
+</p>
+</dd>
+<dt id='index-clear_002dscreen-_0028C_002dl_0029'><span><code>clear-screen (C-l)</code><a href='#index-clear_002dscreen-_0028C_002dl_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the screen,
then redraw the current line,
leaving the current line at the top of the screen.
-<P>
-
-<A NAME="IDX65"></A>
-<DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX66"></A>
-Refresh the current line. By default, this is unbound.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For History"></A>
-<HR SIZE="6">
-<A NAME="SEC15"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC14"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC16"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC16"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.2 Commands For Manipulating The History </H3>
-<!--docid::SEC15::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX67"></A>
-<DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX68"></A>
-Accept the line regardless of where the cursor is.
+</p>
+</dd>
+<dt id='index-redraw_002dcurrent_002dline-_0028_0029'><span><code>redraw-current-line ()</code><a href='#index-redraw_002dcurrent_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Refresh the current line. By default, this is unbound.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-History">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-Text" accesskey="n" rel="next">Commands For Changing Text</a>, Previous: <a href="#Commands-For-Moving" accesskey="p" rel="prev">Commands For Moving</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Commands-For-Manipulating-The-History"></span><h4 class="subsection">1.4.2 Commands For Manipulating The History</h4>
+
+<dl compact="compact">
+<dt id='index-accept_002dline-_0028Newline-or-Return_0029'><span><code>accept-line (Newline or Return)</code><a href='#index-accept_002dline-_0028Newline-or-Return_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>add_history()</CODE>.
+<code>add_history()</code>.
If this line is a modified history line, the history line is restored
to its original state.
-<P>
-
-<A NAME="IDX69"></A>
-<DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX70"></A>
-Move `back' through the history list, fetching the previous command.
-<P>
-
-<A NAME="IDX71"></A>
-<DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX72"></A>
-Move `forward' through the history list, fetching the next command.
-<P>
-
-<A NAME="IDX73"></A>
-<DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX74"></A>
-Move to the first line in the history.
-<P>
-
-<A NAME="IDX75"></A>
-<DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX76"></A>
-Move to the end of the input history, i.e., the line currently
+</p>
+</dd>
+<dt id='index-previous_002dhistory-_0028C_002dp_0029'><span><code>previous-history (C-p)</code><a href='#index-previous_002dhistory-_0028C_002dp_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move &lsquo;back&rsquo; through the history list, fetching the previous command.
+</p>
+</dd>
+<dt id='index-next_002dhistory-_0028C_002dn_0029'><span><code>next-history (C-n)</code><a href='#index-next_002dhistory-_0028C_002dn_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move &lsquo;forward&rsquo; through the history list, fetching the next command.
+</p>
+</dd>
+<dt id='index-beginning_002dof_002dhistory-_0028M_002d_003c_0029'><span><code>beginning-of-history (M-&lt;)</code><a href='#index-beginning_002dof_002dhistory-_0028M_002d_003c_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the first line in the history.
+</p>
+</dd>
+<dt id='index-end_002dof_002dhistory-_0028M_002d_003e_0029'><span><code>end-of-history (M-&gt;)</code><a href='#index-end_002dof_002dhistory-_0028M_002d_003e_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the end of the input history, i.e., the line currently
being entered.
-<P>
-
-<A NAME="IDX77"></A>
-<DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX78"></A>
-Search backward starting at the current line and moving `up' through
+</p>
+</dd>
+<dt id='index-reverse_002dsearch_002dhistory-_0028C_002dr_0029'><span><code>reverse-search-history (C-r)</code><a href='#index-reverse_002dsearch_002dhistory-_0028C_002dr_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search backward starting at the current line and moving &lsquo;up&rsquo; through
the history as necessary. This is an incremental search.
This command sets the region to the matched text and activates the mark.
-<P>
-
-<A NAME="IDX79"></A>
-<DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX80"></A>
-Search forward starting at the current line and moving `down' through
+</p>
+</dd>
+<dt id='index-forward_002dsearch_002dhistory-_0028C_002ds_0029'><span><code>forward-search-history (C-s)</code><a href='#index-forward_002dsearch_002dhistory-_0028C_002ds_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search forward starting at the current line and moving &lsquo;down&rsquo; through
the history as necessary. This is an incremental search.
This command sets the region to the matched text and activates the mark.
-<P>
-
-<A NAME="IDX81"></A>
-<DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX82"></A>
-Search backward starting at the current line and moving `up'
+</p>
+</dd>
+<dt id='index-non_002dincremental_002dreverse_002dsearch_002dhistory-_0028M_002dp_0029'><span><code>non-incremental-reverse-search-history (M-p)</code><a href='#index-non_002dincremental_002dreverse_002dsearch_002dhistory-_0028M_002dp_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search backward starting at the current line and moving &lsquo;up&rsquo;
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="IDX83"></A>
-<DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX84"></A>
-Search forward starting at the current line and moving `down'
+</p>
+</dd>
+<dt id='index-non_002dincremental_002dforward_002dsearch_002dhistory-_0028M_002dn_0029'><span><code>non-incremental-forward-search-history (M-n)</code><a href='#index-non_002dincremental_002dforward_002dsearch_002dhistory-_0028M_002dn_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search forward starting at the current line and moving &lsquo;down&rsquo;
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="IDX85"></A>
-<DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX86"></A>
-Search forward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsearch_002dforward-_0028_0029'><span><code>history-search-forward ()</code><a href='#index-history_002dsearch_002dforward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX87"></A>
-<DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX88"></A>
-Search backward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsearch_002dbackward-_0028_0029'><span><code>history-search-backward ()</code><a href='#index-history_002dsearch_002dbackward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX89"></A>
-<DT><CODE>history-substring-search-forward ()</CODE>
-<DD><A NAME="IDX90"></A>
-Search forward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsubstring_002dsearch_002dforward-_0028_0029'><span><code>history-substring-search-forward ()</code><a href='#index-history_002dsubstring_002dsearch_002dforward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX91"></A>
-<DT><CODE>history-substring-search-backward ()</CODE>
-<DD><A NAME="IDX92"></A>
-Search backward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsubstring_002dsearch_002dbackward-_0028_0029'><span><code>history-substring-search-backward ()</code><a href='#index-history_002dsubstring_002dsearch_002dbackward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX93"></A>
-<DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX94"></A>
-Insert the first argument to the previous command (usually
+</p>
+</dd>
+<dt id='index-yank_002dnth_002darg-_0028M_002dC_002dy_0029'><span><code>yank-nth-arg (M-C-y)</code><a href='#index-yank_002dnth_002darg-_0028M_002dC_002dy_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert the first argument to the previous command (usually
the second word on the previous line) at point.
-With an argument <VAR>n</VAR>,
-insert the <VAR>n</VAR>th word from the previous command (the words
+With an argument <var>n</var>,
+insert the <var>n</var>th word from the previous command (the words
in the previous command begin with word 0). A negative argument
-inserts the <VAR>n</VAR>th word from the end of the previous command.
-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="IDX95"></A>
-<DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX96"></A>
-Insert last argument to the previous command (the last word of the
+inserts the <var>n</var>th word from the end of the previous command.
+Once the argument <var>n</var> is computed, the argument is extracted
+as if the &lsquo;<samp>!<var>n</var></samp>&rsquo; history expansion had been specified.
+</p>
+</dd>
+<dt id='index-yank_002dlast_002darg-_0028M_002d_002e-or-M_002d_005f_0029'><span><code>yank-last-arg (M-. or M-_)</code><a href='#index-yank_002dlast_002darg-_0028M_002d_002e-or-M_002d_005f_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>.
-Successive calls to <CODE>yank-last-arg</CODE> move back through the history
+With a numeric argument, behave exactly like <code>yank-nth-arg</code>.
+Successive calls to <code>yank-last-arg</code> 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 <SAMP>`!$'</SAMP> history expansion had been specified.
-<P>
-
-<A NAME="IDX97"></A>
-<DT><CODE>operate-and-get-next (C-o)</CODE>
-<DD><A NAME="IDX98"></A>
-Accept the current line for return to the calling application as if a
+as if the &lsquo;<samp>!$</samp>&rsquo; history expansion had been specified.
+</p>
+</dd>
+<dt id='index-operate_002dand_002dget_002dnext-_0028C_002do_0029'><span><code>operate-and-get-next (C-o)</code><a href='#index-operate_002dand_002dget_002dnext-_0028C_002do_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Accept the current line for return to the calling application as if a
newline had been entered,
and fetch the next line relative to the current line from the history
for editing.
A numeric argument, if supplied, specifies the history entry to use instead
of the current line.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Text"></A>
-<HR SIZE="6">
-<A NAME="SEC16"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC15"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC17"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.3 Commands For Changing Text </H3>
-<!--docid::SEC16::-->
-<P>
-
-<DL COMPACT>
-
-<A NAME="IDX99"></A>
-<DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
-<DD><A NAME="IDX100"></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
+</p>
+</dd>
+<dt id='index-fetch_002dhistory-_0028_0029'><span><code>fetch-history ()</code><a href='#index-fetch_002dhistory-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>With a numeric argument, fetch that entry from the history list
+and make it the current line.
+Without an argument, move back to the first entry in the history list.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-Text">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-Killing" accesskey="n" rel="next">Killing And Yanking</a>, Previous: <a href="#Commands-For-History" accesskey="p" rel="prev">Commands For Manipulating The History</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Commands-For-Changing-Text"></span><h4 class="subsection">1.4.3 Commands For Changing Text</h4>
+
+<dl compact="compact">
+<dt id='index-end_002dof_002dfile-_0028usually-C_002dd_0029'><span><code><i>end-of-file</i> (usually C-d)</code><a href='#index-end_002dof_002dfile-_0028usually-C_002dd_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX101"></A>
-<DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX102"></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>
+interprets it as the end of input and returns <small>EOF</small>.
+</p>
+</dd>
+<dt id='index-delete_002dchar-_0028C_002dd_0029'><span><code>delete-char (C-d)</code><a href='#index-delete_002dchar-_0028C_002dd_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete the character at point. If this function is bound to the
+same character as the tty <small>EOF</small> character, as <kbd>C-d</kbd>
commonly is, see above for the effects.
-<P>
-
-<A NAME="IDX103"></A>
-<DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX104"></A>
-Delete the character behind the cursor. A numeric argument means
+</p>
+</dd>
+<dt id='index-backward_002ddelete_002dchar-_0028Rubout_0029'><span><code>backward-delete-char (Rubout)</code><a href='#index-backward_002ddelete_002dchar-_0028Rubout_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete the character behind the cursor. A numeric argument means
to kill the characters instead of deleting them.
-<P>
-
-<A NAME="IDX105"></A>
-<DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX106"></A>
-Delete the character under the cursor, unless the cursor is at the
+</p>
+</dd>
+<dt id='index-forward_002dbackward_002ddelete_002dchar-_0028_0029'><span><code>forward-backward-delete-char ()</code><a href='#index-forward_002dbackward_002ddelete_002dchar-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX107"></A>
-<DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX108"></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="IDX109"></A>
-<DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX110"></A>
-Insert a tab character.
-<P>
-
-<A NAME="IDX111"></A>
-<DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX112"></A>
-Insert yourself.
-<P>
-
-<A NAME="IDX113"></A>
-<DT><CODE>bracketed-paste-begin ()</CODE>
-<DD><A NAME="IDX114"></A>
-This function is intended to be bound to the "bracketed paste" escape
+</p>
+</dd>
+<dt id='index-quoted_002dinsert-_0028C_002dq-or-C_002dv_0029'><span><code>quoted-insert (C-q or C-v)</code><a href='#index-quoted_002dinsert-_0028C_002dq-or-C_002dv_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add the next character typed to the line verbatim. This is
+how to insert key sequences like <kbd>C-q</kbd>, for example.
+</p>
+</dd>
+<dt id='index-tab_002dinsert-_0028M_002dTAB_0029'><span><code>tab-insert (M-<span class="key">TAB</span>)</code><a href='#index-tab_002dinsert-_0028M_002dTAB_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert a tab character.
+</p>
+</dd>
+<dt id='index-self_002dinsert-_0028a_002c-b_002c-A_002c-1_002c-_0021_002c-_2026_0029'><span><code>self-insert (a, b, A, 1, !, &hellip;)</code><a href='#index-self_002dinsert-_0028a_002c-b_002c-A_002c-1_002c-_0021_002c-_2026_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert yourself.
+</p>
+</dd>
+<dt id='index-bracketed_002dpaste_002dbegin-_0028_0029'><span><code>bracketed-paste-begin ()</code><a href='#index-bracketed_002dpaste_002dbegin-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This function is intended to be bound to the &quot;bracketed paste&quot; 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
+are inserted as if each one was bound to <code>self-insert</code> instead of
executing any editing commands.
-<P>
-
-Bracketed paste sets the region (the characters between point and the mark)
-to the inserted text. It uses the concept of an <EM>active mark</EM>: when the
-mark is active, Readline redisplay uses the terminal's standout mode to
+</p>
+<p>Bracketed paste sets the region (the characters between point and the mark)
+to the inserted text. It uses the concept of an <em>active mark</em>: when the
+mark is active, Readline redisplay uses the terminal&rsquo;s standout mode to
denote the region.
-</P><P>
-
-<A NAME="IDX115"></A>
-<DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX116"></A>
-Drag the character before the cursor forward over
+</p>
+</dd>
+<dt id='index-transpose_002dchars-_0028C_002dt_0029'><span><code>transpose-chars (C-t)</code><a href='#index-transpose_002dchars-_0028C_002dt_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX117"></A>
-<DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX118"></A>
-Drag the word before point past the word after point,
+</p>
+</dd>
+<dt id='index-transpose_002dwords-_0028M_002dt_0029'><span><code>transpose-words (M-t)</code><a href='#index-transpose_002dwords-_0028M_002dt_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX119"></A>
-<DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX120"></A>
-Uppercase the current (or following) word. With a negative argument,
+</p>
+</dd>
+<dt id='index-upcase_002dword-_0028M_002du_0029'><span><code>upcase-word (M-u)</code><a href='#index-upcase_002dword-_0028M_002du_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Uppercase the current (or following) word. With a negative argument,
uppercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX121"></A>
-<DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX122"></A>
-Lowercase the current (or following) word. With a negative argument,
+</p>
+</dd>
+<dt id='index-downcase_002dword-_0028M_002dl_0029'><span><code>downcase-word (M-l)</code><a href='#index-downcase_002dword-_0028M_002dl_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Lowercase the current (or following) word. With a negative argument,
lowercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX123"></A>
-<DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX124"></A>
-Capitalize the current (or following) word. With a negative argument,
+</p>
+</dd>
+<dt id='index-capitalize_002dword-_0028M_002dc_0029'><span><code>capitalize-word (M-c)</code><a href='#index-capitalize_002dword-_0028M_002dc_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Capitalize the current (or following) word. With a negative argument,
capitalize the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX125"></A>
-<DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX126"></A>
-Toggle overwrite mode. With an explicit positive numeric argument,
+</p>
+</dd>
+<dt id='index-overwrite_002dmode-_0028_0029'><span><code>overwrite-mode ()</code><a href='#index-overwrite_002dmode-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>emacs</CODE> mode; <CODE>vi</CODE> mode does overwrite differently.
-Each call to <CODE>readline()</CODE> starts in insert mode.
-<P>
-
-In overwrite mode, characters bound to <CODE>self-insert</CODE> replace
+<code>emacs</code> mode; <code>vi</code> mode does overwrite differently.
+Each call to <code>readline()</code> starts in insert mode.
+</p>
+<p>In overwrite mode, characters bound to <code>self-insert</code> replace
the text at point rather than pushing the text to the right.
-Characters bound to <CODE>backward-delete-char</CODE> replace the character
+Characters bound to <code>backward-delete-char</code> replace the character
before point with a space.
-</P><P>
-
-By default, this command is unbound.
-</P><P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Killing"></A>
-<HR SIZE="6">
-<A NAME="SEC17"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC16"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC18"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC18"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.4 Killing And Yanking </H3>
-<!--docid::SEC17::-->
-<P>
-
-<DL COMPACT>
-
-<A NAME="IDX127"></A>
-<DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX128"></A>
-Kill the text from point to the end of the line.
+</p>
+<p>By default, this command is unbound.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-Killing">
+<div class="header">
+<p>
+Next: <a href="#Numeric-Arguments" accesskey="n" rel="next">Specifying Numeric Arguments</a>, Previous: <a href="#Commands-For-Text" accesskey="p" rel="prev">Commands For Changing Text</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Killing-And-Yanking"></span><h4 class="subsection">1.4.4 Killing And Yanking</h4>
+
+<dl compact="compact">
+<dt id='index-kill_002dline-_0028C_002dk_0029'><span><code>kill-line (C-k)</code><a href='#index-kill_002dline-_0028C_002dk_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the text from point to the end of the line.
With a negative numeric argument, kill backward from the cursor to the
beginning of the current line.
-<P>
-
-<A NAME="IDX129"></A>
-<DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX130"></A>
-Kill backward from the cursor to the beginning of the current line.
+</p>
+</dd>
+<dt id='index-backward_002dkill_002dline-_0028C_002dx-Rubout_0029'><span><code>backward-kill-line (C-x Rubout)</code><a href='#index-backward_002dkill_002dline-_0028C_002dx-Rubout_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill backward from the cursor to the beginning of the current line.
With a negative numeric argument, kill forward from the cursor to the
end of the current line.
-<P>
-
-<A NAME="IDX131"></A>
-<DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX132"></A>
-Kill backward from the cursor to the beginning of the current line.
-<P>
-
-<A NAME="IDX133"></A>
-<DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX134"></A>
-Kill all characters on the current line, no matter where point is.
+</p>
+</dd>
+<dt id='index-unix_002dline_002ddiscard-_0028C_002du_0029'><span><code>unix-line-discard (C-u)</code><a href='#index-unix_002dline_002ddiscard-_0028C_002du_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill backward from the cursor to the beginning of the current line.
+</p>
+</dd>
+<dt id='index-kill_002dwhole_002dline-_0028_0029'><span><code>kill-whole-line ()</code><a href='#index-kill_002dwhole_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill all characters on the current line, no matter where point is.
By default, this is unbound.
-<P>
-
-<A NAME="IDX135"></A>
-<DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX136"></A>
-Kill from point to the end of the current word, or if between
+</p>
+</dd>
+<dt id='index-kill_002dword-_0028M_002dd_0029'><span><code>kill-word (M-d)</code><a href='#index-kill_002dword-_0028M_002dd_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX137"></A>
-<DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX138"></A>
-Kill the word behind point.
-Word boundaries are the same as <CODE>backward-word</CODE>.
-<P>
-
-<A NAME="IDX139"></A>
-<DT><CODE>shell-transpose-words (M-C-t)</CODE>
-<DD><A NAME="IDX140"></A>
-Drag the word before point past the word after point,
+Word boundaries are the same as <code>forward-word</code>.
+</p>
+</dd>
+<dt id='index-backward_002dkill_002dword-_0028M_002dDEL_0029'><span><code>backward-kill-word (M-<span class="key">DEL</span>)</code><a href='#index-backward_002dkill_002dword-_0028M_002dDEL_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the word behind point.
+Word boundaries are the same as <code>backward-word</code>.
+</p>
+
+</dd>
+<dt id='index-shell_002dtranspose_002dwords-_0028M_002dC_002dt_0029'><span><code>shell-transpose-words (M-C-t)</code><a href='#index-shell_002dtranspose_002dwords-_0028M_002dC_002dt_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-Word boundaries are the same as <CODE>shell-forward-word</CODE> and
-<CODE>shell-backward-word</CODE>.
-<P>
-
-<A NAME="IDX141"></A>
-<DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX142"></A>
-Kill the word behind point, using white space as a word boundary.
+Word boundaries are the same as <code>shell-forward-word</code> and
+<code>shell-backward-word</code>.
+</p>
+</dd>
+<dt id='index-unix_002dword_002drubout-_0028C_002dw_0029'><span><code>unix-word-rubout (C-w)</code><a href='#index-unix_002dword_002drubout-_0028C_002dw_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the word behind point, using white space as a word boundary.
The killed text is saved on the kill-ring.
-<P>
-
-<A NAME="IDX143"></A>
-<DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX144"></A>
-Kill the word behind point, using white space and the slash character
+</p>
+</dd>
+<dt id='index-unix_002dfilename_002drubout-_0028_0029'><span><code>unix-filename-rubout ()</code><a href='#index-unix_002dfilename_002drubout-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX145"></A>
-<DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX146"></A>
-Delete all spaces and tabs around point. By default, this is unbound.
-<P>
-
-<A NAME="IDX147"></A>
-<DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX148"></A>
-Kill the text in the current region.
+</p>
+</dd>
+<dt id='index-delete_002dhorizontal_002dspace-_0028_0029'><span><code>delete-horizontal-space ()</code><a href='#index-delete_002dhorizontal_002dspace-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete all spaces and tabs around point. By default, this is unbound.
+</p>
+</dd>
+<dt id='index-kill_002dregion-_0028_0029'><span><code>kill-region ()</code><a href='#index-kill_002dregion-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the text in the current region.
By default, this command is unbound.
-<P>
-
-<A NAME="IDX149"></A>
-<DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX150"></A>
-Copy the text in the region to the kill buffer, so it can be yanked
+</p>
+</dd>
+<dt id='index-copy_002dregion_002das_002dkill-_0028_0029'><span><code>copy-region-as-kill ()</code><a href='#index-copy_002dregion_002das_002dkill-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX151"></A>
-<DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX152"></A>
-Copy the word before point to the kill buffer.
-The word boundaries are the same as <CODE>backward-word</CODE>.
+</p>
+</dd>
+<dt id='index-copy_002dbackward_002dword-_0028_0029'><span><code>copy-backward-word ()</code><a href='#index-copy_002dbackward_002dword-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX153"></A>
-<DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX154"></A>
-Copy the word following point to the kill buffer.
-The word boundaries are the same as <CODE>forward-word</CODE>.
+</p>
+</dd>
+<dt id='index-copy_002dforward_002dword-_0028_0029'><span><code>copy-forward-word ()</code><a href='#index-copy_002dforward_002dword-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX155"></A>
-<DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX156"></A>
-Yank the top of the kill ring into the buffer at point.
-<P>
-
-<A NAME="IDX157"></A>
-<DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX158"></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>
-<P>
-
-<A NAME="Numeric Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC18"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC17"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC19"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC19"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.5 Specifying Numeric Arguments </H3>
-<!--docid::SEC18::-->
-<DL COMPACT>
-
-<A NAME="IDX159"></A>
-<DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX160"></A>
-Add this digit to the argument already accumulating, or start a new
-argument. <KBD>M--</KBD> starts a negative argument.
-<P>
-
-<A NAME="IDX161"></A>
-<DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX162"></A>
-This is another way to specify an argument.
+</p>
+</dd>
+<dt id='index-yank-_0028C_002dy_0029'><span><code>yank (C-y)</code><a href='#index-yank-_0028C_002dy_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Yank the top of the kill ring into the buffer at point.
+</p>
+</dd>
+<dt id='index-yank_002dpop-_0028M_002dy_0029'><span><code>yank-pop (M-y)</code><a href='#index-yank_002dpop-_0028M_002dy_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>.
+</p></dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Numeric-Arguments">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-Completion" accesskey="n" rel="next">Letting Readline Type For You</a>, Previous: <a href="#Commands-For-Killing" accesskey="p" rel="prev">Killing And Yanking</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Specifying-Numeric-Arguments"></span><h4 class="subsection">1.4.5 Specifying Numeric Arguments</h4>
+<dl compact="compact">
+<dt id='index-digit_002dargument-_0028M_002d0_002c-M_002d1_002c-_2026-M_002d_002d_0029'><span><code>digit-argument (<kbd>M-0</kbd>, <kbd>M-1</kbd>, &hellip; <kbd>M--</kbd>)</code><a href='#index-digit_002dargument-_0028M_002d0_002c-M_002d1_002c-_2026-M_002d_002d_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add this digit to the argument already accumulating, or start a new
+argument. <kbd>M--</kbd> starts a negative argument.
+</p>
+</dd>
+<dt id='index-universal_002dargument-_0028_0029'><span><code>universal-argument ()</code><a href='#index-universal_002dargument-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>
+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 nor minus sign, the argument count
@@ -2012,483 +1830,337 @@ 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.
-</DL>
-<P>
-
-<A NAME="Commands For Completion"></A>
-<HR SIZE="6">
-<A NAME="SEC19"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC18"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC20"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC20"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.6 Letting Readline Type For You </H3>
-<!--docid::SEC19::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX163"></A>
-<DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX164"></A>
-Attempt to perform completion on the text before point.
+</p></dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-Completion">
+<div class="header">
+<p>
+Next: <a href="#Keyboard-Macros" accesskey="n" rel="next">Keyboard Macros</a>, Previous: <a href="#Numeric-Arguments" accesskey="p" rel="prev">Specifying Numeric Arguments</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Letting-Readline-Type-For-You"></span><h4 class="subsection">1.4.6 Letting Readline Type For You</h4>
+
+<dl compact="compact">
+<dt id='index-complete-_0028TAB_0029'><span><code>complete (<span class="key">TAB</span>)</code><a href='#index-complete-_0028TAB_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Attempt to perform completion on the text before point.
The actual completion performed is application-specific.
The default is filename completion.
-<P>
-
-<A NAME="IDX165"></A>
-<DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX166"></A>
-List the possible completions of the text before point.
+</p>
+</dd>
+<dt id='index-possible_002dcompletions-_0028M_002d_003f_0029'><span><code>possible-completions (M-?)</code><a href='#index-possible_002dcompletions-_0028M_002d_003f_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX167"></A>
-<DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX168"></A>
-Insert all completions of the text before point that would have
-been generated by <CODE>possible-completions</CODE>.
-<P>
-
-<A NAME="IDX169"></A>
-<DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX170"></A>
-Similar to <CODE>complete</CODE>, but replaces the word to be completed
+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>
+</dd>
+<dt id='index-insert_002dcompletions-_0028M_002d_002a_0029'><span><code>insert-completions (M-*)</code><a href='#index-insert_002dcompletions-_0028M_002d_002a_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert all completions of the text before point that would have
+been generated by <code>possible-completions</code>.
+</p>
+</dd>
+<dt id='index-menu_002dcomplete-_0028_0029'><span><code>menu-complete ()</code><a href='#index-menu_002dcomplete-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
+Repeated execution of <code>menu-complete</code> 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 <CODE>bell-style</CODE>)
+(subject to the setting of <code>bell-style</code>)
and the original text is restored.
-An argument of <VAR>n</VAR> moves <VAR>n</VAR> positions forward in the list
+An argument of <var>n</var> moves <var>n</var> 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 <KBD>TAB</KBD>, but is unbound
+This command is intended to be bound to <tt class="key">TAB</tt>, but is unbound
by default.
-<P>
-
-<A NAME="IDX171"></A>
-<DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX172"></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
+</p>
+</dd>
+<dt id='index-menu_002dcomplete_002dbackward-_0028_0029'><span><code>menu-complete-backward ()</code><a href='#index-menu_002dcomplete_002dbackward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX173"></A>
-<DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX174"></A>
-Deletes the character under the cursor if not at the beginning or
-end of the line (like <CODE>delete-char</CODE>).
+</p>
+</dd>
+<dt id='index-delete_002dchar_002dor_002dlist-_0028_0029'><span><code>delete-char-or-list ()</code><a href='#index-delete_002dchar_002dor_002dlist-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>possible-completions</CODE>.
+<code>possible-completions</code>.
This command is unbound by default.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Keyboard Macros"></A>
-<HR SIZE="6">
-<A NAME="SEC20"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC19"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC21"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC21"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.7 Keyboard Macros </H3>
-<!--docid::SEC20::-->
-<DL COMPACT>
-
-<A NAME="IDX175"></A>
-<DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX176"></A>
-Begin saving the characters typed into the current keyboard macro.
-<P>
-
-<A NAME="IDX177"></A>
-<DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX178"></A>
-Stop saving the characters typed into the current keyboard macro
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Keyboard-Macros">
+<div class="header">
+<p>
+Next: <a href="#Miscellaneous-Commands" accesskey="n" rel="next">Some Miscellaneous Commands</a>, Previous: <a href="#Commands-For-Completion" accesskey="p" rel="prev">Letting Readline Type For You</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Keyboard-Macros-1"></span><h4 class="subsection">1.4.7 Keyboard Macros</h4>
+<dl compact="compact">
+<dt id='index-start_002dkbd_002dmacro-_0028C_002dx-_0028_0029'><span><code>start-kbd-macro (C-x ()</code><a href='#index-start_002dkbd_002dmacro-_0028C_002dx-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Begin saving the characters typed into the current keyboard macro.
+</p>
+</dd>
+<dt id='index-end_002dkbd_002dmacro-_0028C_002dx-_0029_0029'><span><code>end-kbd-macro (C-x ))</code><a href='#index-end_002dkbd_002dmacro-_0028C_002dx-_0029_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Stop saving the characters typed into the current keyboard macro
and save the definition.
-<P>
-
-<A NAME="IDX179"></A>
-<DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX180"></A>
-Re-execute the last keyboard macro defined, by making the characters
+</p>
+</dd>
+<dt id='index-call_002dlast_002dkbd_002dmacro-_0028C_002dx-e_0029'><span><code>call-last-kbd-macro (C-x e)</code><a href='#index-call_002dlast_002dkbd_002dmacro-_0028C_002dx-e_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
-<P>
-
-<A NAME="IDX181"></A>
-<DT><CODE>print-last-kbd-macro ()</CODE>
-<DD><A NAME="IDX182"></A>
-Print the last keboard macro defined in a format suitable for the
-<VAR>inputrc</VAR> file.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Miscellaneous Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC21"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC20"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.8 Some Miscellaneous Commands </H3>
-<!--docid::SEC21::-->
-<DL COMPACT>
-
-<A NAME="IDX183"></A>
-<DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX184"></A>
-Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
+</p>
+</dd>
+<dt id='index-print_002dlast_002dkbd_002dmacro-_0028_0029'><span><code>print-last-kbd-macro ()</code><a href='#index-print_002dlast_002dkbd_002dmacro-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Print the last keboard macro defined in a format suitable for the
+<var>inputrc</var> file.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Miscellaneous-Commands">
+<div class="header">
+<p>
+Previous: <a href="#Keyboard-Macros" accesskey="p" rel="prev">Keyboard Macros</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Some-Miscellaneous-Commands"></span><h4 class="subsection">1.4.8 Some Miscellaneous Commands</h4>
+<dl compact="compact">
+<dt id='index-re_002dread_002dinit_002dfile-_0028C_002dx-C_002dr_0029'><span><code>re-read-init-file (C-x C-r)</code><a href='#index-re_002dread_002dinit_002dfile-_0028C_002dx-C_002dr_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Read in the contents of the <var>inputrc</var> file, and incorporate
any bindings or variable assignments found there.
-<P>
-
-<A NAME="IDX185"></A>
-<DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX186"></A>
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-<CODE>bell-style</CODE>).
-<P>
-
-<A NAME="IDX187"></A>
-<DT><CODE>do-lowercase-version (M-A, M-B, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX188"></A>
-If the metafied character <VAR>x</VAR> is upper case, run the command
+</p>
+</dd>
+<dt id='index-abort-_0028C_002dg_0029'><span><code>abort (C-g)</code><a href='#index-abort-_0028C_002dg_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Abort the current editing command and
+ring the terminal&rsquo;s bell (subject to the setting of
+<code>bell-style</code>).
+</p>
+</dd>
+<dt id='index-do_002dlowercase_002dversion-_0028M_002dA_002c-M_002dB_002c-M_002dx_002c-_2026_0029'><span><code>do-lowercase-version (M-A, M-B, M-<var>x</var>, &hellip;)</code><a href='#index-do_002dlowercase_002dversion-_0028M_002dA_002c-M_002dB_002c-M_002dx_002c-_2026_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the metafied character <var>x</var> is upper case, run the command
that is bound to the corresponding metafied lower case character.
-The behavior is undefined if <VAR>x</VAR> is already lower case.
-<P>
-
-<A NAME="IDX189"></A>
-<DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX190"></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="IDX191"></A>
-<DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX192"></A>
-Incremental undo, separately remembered for each line.
-<P>
-
-<A NAME="IDX193"></A>
-<DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX194"></A>
-Undo all changes made to this line. This is like executing the <CODE>undo</CODE>
+The behavior is undefined if <var>x</var> is already lower case.
+</p>
+</dd>
+<dt id='index-prefix_002dmeta-_0028ESC_0029'><span><code>prefix-meta (<span class="key">ESC</span>)</code><a href='#index-prefix_002dmeta-_0028ESC_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Metafy the next character typed. This is for keyboards
+without a meta key. Typing &lsquo;<samp><span class="key">ESC</span> f</samp>&rsquo; is equivalent to typing
+<kbd>M-f</kbd>.
+</p>
+</dd>
+<dt id='index-undo-_0028C_002d_005f-or-C_002dx-C_002du_0029'><span><code>undo (C-_ or C-x C-u)</code><a href='#index-undo-_0028C_002d_005f-or-C_002dx-C_002du_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Incremental undo, separately remembered for each line.
+</p>
+</dd>
+<dt id='index-revert_002dline-_0028M_002dr_0029'><span><code>revert-line (M-r)</code><a href='#index-revert_002dline-_0028M_002dr_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX195"></A>
-<DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX196"></A>
-Perform tilde expansion on the current word.
-<P>
-
-<A NAME="IDX197"></A>
-<DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX198"></A>
-Set the mark to the point. If a
+</p>
+</dd>
+<dt id='index-tilde_002dexpand-_0028M_002d_007e_0029'><span><code>tilde-expand (M-~)</code><a href='#index-tilde_002dexpand-_0028M_002d_007e_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Perform tilde expansion on the current word.
+</p>
+</dd>
+<dt id='index-set_002dmark-_0028C_002d_0040_0029'><span><code>set-mark (C-@)</code><a href='#index-set_002dmark-_0028C_002d_0040_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set the mark to the point. If a
numeric argument is supplied, the mark is set to that position.
-<P>
-
-<A NAME="IDX199"></A>
-<DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX200"></A>
-Swap the point with the mark. The current cursor position is set to
+</p>
+</dd>
+<dt id='index-exchange_002dpoint_002dand_002dmark-_0028C_002dx-C_002dx_0029'><span><code>exchange-point-and-mark (C-x C-x)</code><a href='#index-exchange_002dpoint_002dand_002dmark-_0028C_002dx-C_002dx_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX201"></A>
-<DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX202"></A>
-A character is read and point is moved to the next occurrence of that
+</p>
+</dd>
+<dt id='index-character_002dsearch-_0028C_002d_005d_0029'><span><code>character-search (C-])</code><a href='#index-character_002dsearch-_0028C_002d_005d_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX203"></A>
-<DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX204"></A>
-A character is read and point is moved to the previous occurrence
+</p>
+</dd>
+<dt id='index-character_002dsearch_002dbackward-_0028M_002dC_002d_005d_0029'><span><code>character-search-backward (M-C-])</code><a href='#index-character_002dsearch_002dbackward-_0028M_002dC_002d_005d_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX205"></A>
-<DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX206"></A>
-Read enough characters to consume a multi-key sequence such as those
+</p>
+</dd>
+<dt id='index-skip_002dcsi_002dsequence-_0028_0029'><span><code>skip-csi-sequence ()</code><a href='#index-skip_002dcsi_002dsequence-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
+bound to &quot;\e[&quot;, 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-[.
-<P>
-
-<A NAME="IDX207"></A>
-<DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX208"></A>
-Without a numeric argument, the value of the <CODE>comment-begin</CODE>
+</p>
+</dd>
+<dt id='index-insert_002dcomment-_0028M_002d_0023_0029'><span><code>insert-comment (M-#)</code><a href='#index-insert_002dcomment-_0028M_002d_0023_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
the characters at the beginning of the line do not match the value
-of <CODE>comment-begin</CODE>, the value is inserted, otherwise
-the characters in <CODE>comment-begin</CODE> are deleted from the beginning of
+of <code>comment-begin</code>, the value is inserted, otherwise
+the characters in <code>comment-begin</code> are deleted from the beginning of
the line.
In either case, the line is accepted as if a newline had been typed.
-<P>
-
-<A NAME="IDX209"></A>
-<DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX210"></A>
-Print all of the functions and their key bindings to the
+</p>
+</dd>
+<dt id='index-dump_002dfunctions-_0028_0029'><span><code>dump-functions ()</code><a href='#index-dump_002dfunctions-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX211"></A>
-<DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX212"></A>
-Print all of the settable variables and their values to the
+of an <var>inputrc</var> file. This command is unbound by default.
+</p>
+</dd>
+<dt id='index-dump_002dvariables-_0028_0029'><span><code>dump-variables ()</code><a href='#index-dump_002dvariables-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX213"></A>
-<DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX214"></A>
-Print all of the Readline key sequences bound to macros and the
+of an <var>inputrc</var> file. This command is unbound by default.
+</p>
+</dd>
+<dt id='index-dump_002dmacros-_0028_0029'><span><code>dump-macros ()</code><a href='#index-dump_002dmacros-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>
+of an <var>inputrc</var> file. This command is unbound by default.
+</p>
-<A NAME="IDX215"></A>
-<DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX216"></A>
-When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
+</dd>
+<dt id='index-emacs_002dediting_002dmode-_0028C_002de_0029'><span><code>emacs-editing-mode (C-e)</code><a href='#index-emacs_002dediting_002dmode-_0028C_002de_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When in <code>vi</code> command mode, this causes a switch to <code>emacs</code>
editing mode.
-<P>
-
-<A NAME="IDX217"></A>
-<DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX218"></A>
-When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
+</p>
+</dd>
+<dt id='index-vi_002dediting_002dmode-_0028M_002dC_002dj_0029'><span><code>vi-editing-mode (M-C-j)</code><a href='#index-vi_002dediting_002dmode-_0028M_002dC_002dj_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When in <code>emacs</code> editing mode, this causes a switch to <code>vi</code>
editing mode.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Readline vi Mode"></A>
-<HR SIZE="6">
-<A NAME="SEC22"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC21"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.5 Readline vi Mode </H2>
-<!--docid::SEC22::-->
-<P>
-
-While the Readline library does not have a full set of <CODE>vi</CODE>
+</p>
+
+</dd>
+</dl>
+
+<hr>
+</div>
+</div>
+<div class="section" id="Readline-vi-Mode">
+<div class="header">
+<p>
+Previous: <a href="#Bindable-Readline-Commands" accesskey="p" rel="prev">Bindable Readline Commands</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-vi-Mode-1"></span><h3 class="section">1.5 Readline vi Mode</h3>
+
+<p>While the Readline library does not have a full set of <code>vi</code>
editing functions, it does contain enough to allow simple editing
-of the line. The Readline <CODE>vi</CODE> mode behaves as specified in
-the POSIX standard.
-</P><P>
-
-In order to switch interactively between <CODE>emacs</CODE> and <CODE>vi</CODE>
-editing modes, use the command <KBD>M-C-j</KBD> (bound to emacs-editing-mode
-when in <CODE>vi</CODE> mode and to vi-editing-mode in <CODE>emacs</CODE> mode).
-The Readline default is <CODE>emacs</CODE> mode.
-</P><P>
-
-When you enter a line in <CODE>vi</CODE> mode, you are already placed in
-`insertion' mode, as if you had typed an <SAMP>`i'</SAMP>. Pressing <KBD>ESC</KBD>
-switches you into `command' mode, where you can edit the text of the
-line with the standard <CODE>vi</CODE> movement keys, move to previous
-history lines with <SAMP>`k'</SAMP> and subsequent lines with <SAMP>`j'</SAMP>, and
+of the line. The Readline <code>vi</code> mode behaves as specified in
+the <small>POSIX</small> standard.
+</p>
+<p>In order to switch interactively between <code>emacs</code> and <code>vi</code>
+editing modes, use the command <kbd>M-C-j</kbd> (bound to emacs-editing-mode
+when in <code>vi</code> mode and to vi-editing-mode in <code>emacs</code> mode).
+The Readline default is <code>emacs</code> mode.
+</p>
+<p>When you enter a line in <code>vi</code> mode, you are already placed in
+&lsquo;insertion&rsquo; mode, as if you had typed an &lsquo;<samp>i</samp>&rsquo;. Pressing <tt class="key">ESC</tt>
+switches you into &lsquo;command&rsquo; mode, where you can edit the text of the
+line with the standard <code>vi</code> movement keys, move to previous
+history lines with &lsquo;<samp>k</samp>&rsquo; and subsequent lines with &lsquo;<samp>j</samp>&rsquo;, and
so forth.
-</P><P>
-
-This document describes the GNU Readline Library, a utility for aiding
-in the consistency of user interface across discrete programs that need
-to provide a command line interface.
-</P><P>
-
-Copyright (C) 1988--2020 Free Software Foundation, Inc.
-</P><P>
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-pare preserved on all copies.
-</P><P>
-
-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 permission
-notice identical to this one.
-</P><P>
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Foundation.
-</P><P>
-
-<A NAME="Programming with GNU Readline"></A>
-<HR SIZE="6">
-<A NAME="SEC23"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC24"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> 2. Programming with GNU Readline </H1>
-<!--docid::SEC23::-->
-<P>
-
-This chapter describes the interface between the GNU Readline Library and
+</p>
+
+
+<hr>
+</div>
+</div>
+<div class="chapter" id="Programming-with-GNU-Readline">
+<div class="header">
+<p>
+Next: <a href="#GNU-Free-Documentation-License" accesskey="n" rel="next">GNU Free Documentation License</a>, Previous: <a href="#Command-Line-Editing" accesskey="p" rel="prev">Command Line Editing</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Programming-with-GNU-Readline-1"></span><h2 class="chapter">2 Programming with GNU Readline</h2>
+
+<p>This chapter describes the interface between the <small>GNU</small> Readline Library and
other programs. If you are a programmer, and you wish to include the
-features found in GNU Readline
+features found in <small>GNU</small> Readline
such as completion, line editing, and interactive history manipulation
in your own programs, this section is for you.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Using the default behavior of Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC25">2.2 Custom Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Adding your own functions to Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables accessible to custom
- functions.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC29">2.4 Readline Convenience Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions which Readline supplies to
- aid in writing your own custom
- functions.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How Readline behaves when it receives signals.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC45">2.6 Custom Completers</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Supplanting or supplementing Readline's
- completion functions.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Basic Behavior"></A>
-<HR SIZE="6">
-<A NAME="SEC24"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.1 Basic Behavior </H2>
-<!--docid::SEC24::-->
-<P>
-
-Many programs provide a command line interface, such as <CODE>mail</CODE>,
-<CODE>ftp</CODE>, and <CODE>sh</CODE>. For such programs, the default behaviour of
+</p>
+
+<ul class="section-toc">
+<li><a href="#Basic-Behavior" accesskey="1">Basic Behavior</a></li>
+<li><a href="#Custom-Functions" accesskey="2">Custom Functions</a></li>
+<li><a href="#Readline-Variables" accesskey="3">Readline Variables</a></li>
+<li><a href="#Readline-Convenience-Functions" accesskey="4">Readline Convenience Functions</a></li>
+<li><a href="#Readline-Signal-Handling" accesskey="5">Readline Signal Handling</a></li>
+<li><a href="#Custom-Completers" accesskey="6">Custom Completers</a></li>
+</ul>
+<hr>
+<div class="section" id="Basic-Behavior">
+<div class="header">
+<p>
+Next: <a href="#Custom-Functions" accesskey="n" rel="next">Custom Functions</a>, Up: <a href="#Programming-with-GNU-Readline" accesskey="u" rel="up">Programming with GNU Readline</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Basic-Behavior-1"></span><h3 class="section">2.1 Basic Behavior</h3>
+
+<p>Many programs provide a command line interface, such as <code>mail</code>,
+<code>ftp</code>, and <code>sh</code>. 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
-<CODE>gets()</CODE> or <CODE>fgets()</CODE>.
-</P><P>
-
-<A NAME="IDX219"></A>
-<A NAME="IDX220"></A>
-</P><P>
+<code>gets()</code> or <code>fgets()</code>.
+</p>
+<span id="index-readline"></span>
+<span id="index-readline_002c-function"></span>
-The function <CODE>readline()</CODE> prints a prompt <VAR>prompt</VAR>
+<p>The function <code>readline()</code> prints a prompt <var>prompt</var>
and then reads and returns a single line of text from the user.
-If <VAR>prompt</VAR> is <CODE>NULL</CODE> or the empty string, no prompt is displayed.
-The line <CODE>readline</CODE> returns is allocated with <CODE>malloc()</CODE>;
-the caller should <CODE>free()</CODE> the line when it has finished with it.
-The declaration for <CODE>readline</CODE> in ANSI C is
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>char *readline (const char *<VAR>prompt</VAR>);</CODE>
-</pre></td></tr></table></P><P>
-
-So, one might say
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>char *line = readline ("Enter a line: ");</CODE>
-</pre></td></tr></table>in order to read a line of text from the user.
+If <var>prompt</var> is <code>NULL</code> or the empty string, no prompt is displayed.
+The line <code>readline</code> returns is allocated with <code>malloc()</code>;
+the caller should <code>free()</code> the line when it has finished with it.
+The declaration for <code>readline</code> in ANSI C is
+</p>
+<div class="example">
+<pre class="example"><code>char *readline (const char *<var>prompt</var>);</code>
+</pre></div>
+
+<p>So, one might say
+</p><div class="example">
+<pre class="example"><code>char *line = readline (&quot;Enter a line: &quot;);</code>
+</pre></div>
+<p>in order to read a line of text from the user.
The line returned has the final newline removed, so only the
text remains.
-</P><P>
-
-If <CODE>readline</CODE> encounters an <CODE>EOF</CODE> while reading the line, and the
-line is empty at that point, then <CODE>(char *)NULL</CODE> is returned.
+</p>
+<p>If <code>readline</code> encounters an <code>EOF</code> while reading the line, and the
+line is empty at that point, then <code>(char *)NULL</code> is returned.
Otherwise, the line is ended just as if a newline had been typed.
-</P><P>
-
-Readline performs some expansion on the <VAR>prompt</VAR> before it is
-displayed on the screen. See the description of <CODE>rl_expand_prompt</CODE>
-(see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A>) for additional details, especially if <VAR>prompt</VAR>
+</p>
+<p>Readline performs some expansion on the <var>prompt</var> before it is
+displayed on the screen. See the description of <code>rl_expand_prompt</code>
+(see <a href="#Redisplay">Redisplay</a>) for additional details, especially if <var>prompt</var>
will contain characters that do not consume physical screen space when
displayed.
-</P><P>
-
-If you want the user to be able to get at the line later, (with
-<KBD>C-p</KBD> for example), you must call <CODE>add_history()</CODE> to save the
-line away in a <EM>history</EM> list of such lines.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>add_history (line)</CODE>;
-</pre></td></tr></table></P><P>
-
-For full details on the GNU History Library, see the associated manual.
-</P><P>
-
-It is preferable to avoid saving empty lines on the history list, since
+</p>
+<p>If you want the user to be able to get at the line later, (with
+<tt class="key">C-p</tt> for example), you must call <code>add_history()</code> to save the
+line away in a <em>history</em> list of such lines.
+</p>
+<div class="example">
+<pre class="example"><code>add_history (line)</code>;
+</pre></div>
+
+<p>For full details on the GNU History Library, see the associated manual.
+</p>
+<p>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 <CODE>gets()</CODE> library
+a function which usefully replaces the standard <code>gets()</code> library
function, and has the advantage of no static buffer to overflow:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/* A static variable for holding the line. */
+</p>
+<div class="example">
+<pre class="example">/* A static variable for holding the line. */
static char *line_read = (char *)NULL;
/* Read a string, and return a pointer to it.
@@ -2505,225 +2177,156 @@ rl_gets ()
}
/* Get a line from the user. */
- line_read = readline ("");
+ line_read = readline (&quot;&quot;);
/* If the line has any text in it,
save it on the history. */
- if (line_read &#38;&#38; *line_read)
+ if (line_read &amp;&amp; *line_read)
add_history (line_read);
return (line_read);
}
-</pre></td></tr></table></P><P>
+</pre></div>
-This function gives the user the default behaviour of <KBD>TAB</KBD>
+<p>This function gives the user the default behaviour of <tt class="key">TAB</tt>
completion: completion on file names. If you do not want Readline to
-complete on filenames, you can change the binding of the <KBD>TAB</KBD> key
-with <CODE>rl_bind_key()</CODE>.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>int rl_bind_key (int <VAR>key</VAR>, rl_command_func_t *<VAR>function</VAR>);</CODE>
-</pre></td></tr></table></P><P>
-
-<CODE>rl_bind_key()</CODE> takes two arguments: <VAR>key</VAR> is the character that
-you want to bind, and <VAR>function</VAR> is the address of the function to
-call when <VAR>key</VAR> is pressed. Binding <KBD>TAB</KBD> to <CODE>rl_insert()</CODE>
-makes <KBD>TAB</KBD> insert itself.
-<CODE>rl_bind_key()</CODE> returns non-zero if <VAR>key</VAR> is not a valid
+complete on filenames, you can change the binding of the <tt class="key">TAB</tt> key
+with <code>rl_bind_key()</code>.
+</p>
+<div class="example">
+<pre class="example"><code>int rl_bind_key (int <var>key</var>, rl_command_func_t *<var>function</var>);</code>
+</pre></div>
+
+<p><code>rl_bind_key()</code> takes two arguments: <var>key</var> is the character that
+you want to bind, and <var>function</var> is the address of the function to
+call when <var>key</var> is pressed. Binding <tt class="key">TAB</tt> to <code>rl_insert()</code>
+makes <tt class="key">TAB</tt> insert itself.
+<code>rl_bind_key()</code> returns non-zero if <var>key</var> is not a valid
ASCII character code (between 0 and 255).
-</P><P>
-
-Thus, to disable the default <KBD>TAB</KBD> behavior, the following suffices:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>rl_bind_key ('\t', rl_insert);</CODE>
-</pre></td></tr></table></P><P>
-
-This code should be executed once at the start of your program; you
-might write a function called <CODE>initialize_readline()</CODE> which
+</p>
+<p>Thus, to disable the default <tt class="key">TAB</tt> behavior, the following suffices:
+</p><div class="example">
+<pre class="example"><code>rl_bind_key ('\t', rl_insert);</code>
+</pre></div>
+
+<p>This code should be executed once at the start of your program; you
+might write a function called <code>initialize_readline()</code> which
performs this and other desired initializations, such as installing
-custom completers (see section <A HREF="readline.html#SEC45">2.6 Custom Completers</A>).
-</P><P>
-
-<A NAME="Custom Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC25"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC24"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC26"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.2 Custom Functions </H2>
-<!--docid::SEC25::-->
-<P>
-
-Readline provides many functions for manipulating the text of
-the line, but it isn't possible to anticipate the needs of all
+custom completers (see <a href="#Custom-Completers">Custom Completers</a>).
+</p>
+<hr>
+</div>
+<div class="section" id="Custom-Functions">
+<div class="header">
+<p>
+Next: <a href="#Readline-Variables" accesskey="n" rel="next">Readline Variables</a>, Previous: <a href="#Basic-Behavior" accesskey="p" rel="prev">Basic Behavior</a>, Up: <a href="#Programming-with-GNU-Readline" accesskey="u" rel="up">Programming with GNU Readline</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Custom-Functions-1"></span><h3 class="section">2.2 Custom Functions</h3>
+
+<p>Readline provides many functions for manipulating the text of
+the line, but it isn&rsquo;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 functionality to Readline.
-</P><P>
-
-Before declaring any functions that customize Readline's behavior, or
+</p>
+<p>Before declaring any functions that customize Readline&rsquo;s behavior, or
using any functionality Readline provides in other code, an
-application writer should include the file <CODE>&#60;readline/readline.h&#62;</CODE>
-in any file that uses Readline's features. Since some of the definitions
-in <CODE>readline.h</CODE> use the <CODE>stdio</CODE> library, the file
-<CODE>&#60;stdio.h&#62;</CODE> should be included before <CODE>readline.h</CODE>.
-</P><P>
-
-<CODE>readline.h</CODE> defines a C preprocessor variable that should
-be treated as an integer, <CODE>RL_READLINE_VERSION</CODE>, which may
+application writer should include the file <code>&lt;readline/readline.h&gt;</code>
+in any file that uses Readline&rsquo;s features. Since some of the definitions
+in <code>readline.h</code> use the <code>stdio</code> library, the file
+<code>&lt;stdio.h&gt;</code> should be included before <code>readline.h</code>.
+</p>
+<p><code>readline.h</code> defines a C preprocessor variable that should
+be treated as an integer, <code>RL_READLINE_VERSION</code>, 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 0x<VAR>MMmm</VAR>. <VAR>MM</VAR> is the two-digit major
-version number; <VAR>mm</VAR> is the two-digit minor version number.
+of the form 0x<var>MMmm</var>. <var>MM</var> is the two-digit major
+version number; <var>mm</var> is the two-digit minor version number.
For Readline 4.2, for example, the value of
-<CODE>RL_READLINE_VERSION</CODE> would be <CODE>0x0402</CODE>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC26">2.2.1 Readline Typedefs</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">C declarations to make code readable.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC27">2.2.2 Writing a New Function</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables and calling conventions.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Typedefs"></A>
-<HR SIZE="6">
-<A NAME="SEC26"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC27"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.2.1 Readline Typedefs </H3>
-<!--docid::SEC26::-->
-<P>
-
-For readability, we declare a number of new object types, all pointers
+<code>RL_READLINE_VERSION</code> would be <code>0x0402</code>.
+</p>
+
+<ul class="section-toc">
+<li><a href="#Readline-Typedefs" accesskey="1">Readline Typedefs</a></li>
+<li><a href="#Function-Writing" accesskey="2">Writing a New Function</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Readline-Typedefs">
+<div class="header">
+<p>
+Next: <a href="#Function-Writing" accesskey="n" rel="next">Writing a New Function</a>, Up: <a href="#Custom-Functions" accesskey="u" rel="up">Custom Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Typedefs-1"></span><h4 class="subsection">2.2.1 Readline Typedefs</h4>
+
+<p>For readability, we declare a number of new object types, all pointers
to functions.
-</P><P>
-
-The reason for declaring these new types is to make it easier to write
+</p>
+<p>The reason for declaring these new types is to make it easier to write
code describing pointers to C functions with appropriately prototyped
arguments and return values.
-</P><P>
-
-For instance, say we want to declare a variable <VAR>func</VAR> as a pointer
-to a function which takes two <CODE>int</CODE> arguments and returns an
-<CODE>int</CODE> (this is the type of all of the Readline bindable functions).
+</p>
+<p>For instance, say we want to declare a variable <var>func</var> as a pointer
+to a function which takes two <code>int</code> arguments and returns an
+<code>int</code> (this is the type of all of the Readline bindable functions).
Instead of the classic C declaration
-</P><P>
-
-<CODE>int (*func)();</CODE>
-</P><P>
-
-or the ANSI-C style declaration
-</P><P>
-
-<CODE>int (*func)(int, int);</CODE>
-</P><P>
-
-we may write
-</P><P>
-
-<CODE>rl_command_func_t *func;</CODE>
-</P><P>
-
-The full list of function pointer types available is
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>typedef int rl_command_func_t (int, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char *rl_compentry_func_t (const char *, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char **rl_completion_func_t (const char *, int, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char *rl_quote_func_t (char *, int, char *);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char *rl_dequote_func_t (char *, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_compignore_func_t (char **);</CODE>
-<DD><P>
-
-<DT><CODE>typedef void rl_compdisp_func_t (char **, int, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_hook_func_t (void);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_getc_func_t (FILE *);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_linebuf_func_t (char *, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_intfunc_t (int);</CODE>
-<DD><DT><CODE>#define rl_ivoidfunc_t rl_hook_func_t</CODE>
-<DD><DT><CODE>typedef int rl_icpfunc_t (char *);</CODE>
-<DD><DT><CODE>typedef int rl_icppfunc_t (char **);</CODE>
-<DD><P>
-
-<DT><CODE>typedef void rl_voidfunc_t (void);</CODE>
-<DD><DT><CODE>typedef void rl_vintfunc_t (int);</CODE>
-<DD><DT><CODE>typedef void rl_vcpfunc_t (char *);</CODE>
-<DD><DT><CODE>typedef void rl_vcppfunc_t (char **);</CODE>
-<DD><P>
-
-</DL>
-<P>
-
-<A NAME="Function Writing"></A>
-<HR SIZE="6">
-<A NAME="SEC27"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC26"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.2.2 Writing a New Function </H3>
-<!--docid::SEC27::-->
-<P>
-
-In order to write new functions for Readline, you need to know the
+</p>
+<p><code>int (*func)();</code>
+</p>
+<p>or the ANSI-C style declaration
+</p>
+<p><code>int (*func)(int, int);</code>
+</p>
+<p>we may write
+</p>
+<p><code>rl_command_func_t *func;</code>
+</p>
+<p>The full list of function pointer types available is
+</p>
+<dl compact="compact">
+<dt><span><code>typedef int rl_command_func_t (int, int);</code></span></dt>
+<dt><span><code>typedef char *rl_compentry_func_t (const char *, int);</code></span></dt>
+<dt><span><code>typedef char **rl_completion_func_t (const char *, int, int);</code></span></dt>
+<dt><span><code>typedef char *rl_quote_func_t (char *, int, char *);</code></span></dt>
+<dt><span><code>typedef char *rl_dequote_func_t (char *, int);</code></span></dt>
+<dt><span><code>typedef int rl_compignore_func_t (char **);</code></span></dt>
+<dt><span><code>typedef void rl_compdisp_func_t (char **, int, int);</code></span></dt>
+<dt><span><code>typedef int rl_hook_func_t (void);</code></span></dt>
+<dt><span><code>typedef int rl_getc_func_t (FILE *);</code></span></dt>
+<dt><span><code>typedef int rl_linebuf_func_t (char *, int);</code></span></dt>
+<dt><span><code>typedef int rl_intfunc_t (int);</code></span></dt>
+<dt><span><code>#define rl_ivoidfunc_t rl_hook_func_t</code></span></dt>
+<dt><span><code>typedef int rl_icpfunc_t (char *);</code></span></dt>
+<dt><span><code>typedef int rl_icppfunc_t (char **);</code></span></dt>
+<dt><span><code>typedef void rl_voidfunc_t (void);</code></span></dt>
+<dt><span><code>typedef void rl_vintfunc_t (int);</code></span></dt>
+<dt><span><code>typedef void rl_vcpfunc_t (char *);</code></span></dt>
+<dt><span><code>typedef void rl_vcppfunc_t (char **);</code></span></dt>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Function-Writing">
+<div class="header">
+<p>
+Previous: <a href="#Readline-Typedefs" accesskey="p" rel="prev">Readline Typedefs</a>, Up: <a href="#Custom-Functions" accesskey="u" rel="up">Custom Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Writing-a-New-Function"></span><h4 class="subsection">2.2.2 Writing a New Function</h4>
+
+<p>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.
-</P><P>
-
-The calling sequence for a command <CODE>foo</CODE> looks like
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>int foo (int count, int key)</CODE>
-</pre></td></tr></table></P><P>
-
-where <VAR>count</VAR> is the numeric argument (or 1 if defaulted) and
-<VAR>key</VAR> is the key that invoked this function.
-</P><P>
-
-It is completely up to the function as to what should be done with the
+</p>
+<p>The calling sequence for a command <code>foo</code> looks like
+</p>
+<div class="example">
+<pre class="example"><code>int foo (int count, int key)</code>
+</pre></div>
+
+<p>where <var>count</var> is the numeric argument (or 1 if defaulted) and
+<var>key</var> is the key that invoked this function.
+</p>
+<p>It is completely up to the function as to what should be done with the
numeric argument. Some functions use it as a repeat count, some
as a flag, and others to choose alternate behavior (refreshing the current
line as opposed to refreshing the screen, for example). Some choose to
@@ -2732,1831 +2335,1471 @@ function uses the numeric argument as a repeat count, it should be able
to do something useful with both negative and positive arguments.
At the very least, it should be aware that it can be passed a
negative argument.
-</P><P>
-
-A command function should return 0 if its action completes successfully,
+</p>
+<p>A command function should return 0 if its action completes 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.
-</P><P>
-
-<A NAME="Readline Variables"></A>
-<HR SIZE="6">
-<A NAME="SEC28"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC27"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.3 Readline Variables </H2>
-<!--docid::SEC28::-->
-<P>
-
-These variables are available to function writers.
-</P><P>
-
-<A NAME="IDX221"></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
-contents of the line, but see <A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A>. The
-function <CODE>rl_extend_line_buffer</CODE> is available to increase
-the memory allocated to <CODE>rl_line_buffer</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX222"></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>
-(the <EM>point</EM>).
-</DL>
-</P><P>
-
-<A NAME="IDX223"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_end</B>
-<DD>The number of characters present in <CODE>rl_line_buffer</CODE>. When
-<CODE>rl_point</CODE> is at the end of the line, <CODE>rl_point</CODE> and
-<CODE>rl_end</CODE> are equal.
-</DL>
-</P><P>
-
-<A NAME="IDX224"></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
-and point define a <EM>region</EM>.
-</DL>
-</P><P>
-
-<A NAME="IDX225"></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
+</p>
+<hr>
+</div>
+</div>
+<div class="section" id="Readline-Variables">
+<div class="header">
+<p>
+Next: <a href="#Readline-Convenience-Functions" accesskey="n" rel="next">Readline Convenience Functions</a>, Previous: <a href="#Custom-Functions" accesskey="p" rel="prev">Custom Functions</a>, Up: <a href="#Programming-with-GNU-Readline" accesskey="u" rel="up">Programming with GNU Readline</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Variables-1"></span><h3 class="section">2.3 Readline Variables</h3>
+
+<p>These variables are available to function writers.
+</p>
+<dl class="def">
+<dt id="index-rl_005fline_005fbuffer"><span class="category">Variable: </span><span><em>char *</em> <strong>rl_line_buffer</strong><a href='#index-rl_005fline_005fbuffer' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This is the line gathered so far. You are welcome to modify the
+contents of the line, but see <a href="#Allowing-Undoing">Allowing Undoing</a>. The
+function <code>rl_extend_line_buffer</code> is available to increase
+the memory allocated to <code>rl_line_buffer</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fpoint"><span class="category">Variable: </span><span><em>int</em> <strong>rl_point</strong><a href='#index-rl_005fpoint' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The offset of the current cursor position in <code>rl_line_buffer</code>
+(the <em>point</em>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fend"><span class="category">Variable: </span><span><em>int</em> <strong>rl_end</strong><a href='#index-rl_005fend' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The number of characters present in <code>rl_line_buffer</code>. When
+<code>rl_point</code> is at the end of the line, <code>rl_point</code> and
+<code>rl_end</code> are equal.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fmark"><span class="category">Variable: </span><span><em>int</em> <strong>rl_mark</strong><a href='#index-rl_005fmark' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The <var>mark</var> (saved position) in the current line. If set, the mark
+and point define a <em>region</em>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdone"><span class="category">Variable: </span><span><em>int</em> <strong>rl_done</strong><a href='#index-rl_005fdone' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Setting this to a non-zero value causes Readline to return the current
line immediately.
-</DL>
-</P><P>
-
-<A NAME="IDX226"></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
+Readline will set this variable when it has read a key sequence bound
+to <code>accept-line</code> and is about to return the line to the caller.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005feof_005ffound"><span class="category">Variable: </span><span><em>int</em> <strong>rl_eof_found</strong><a href='#index-rl_005feof_005ffound' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Readline will set this variable when it has read an EOF character (e.g., the
+stty &lsquo;<samp>EOF</samp>&rsquo; character) on an empty line or encountered a read error and
+is about to return a NULL line to the caller.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fnum_005fchars_005fto_005fread"><span class="category">Variable: </span><span><em>int</em> <strong>rl_num_chars_to_read</strong><a href='#index-rl_005fnum_005fchars_005fto_005fread' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Setting this to a positive value before calling <code>readline()</code> causes
Readline to return after accepting that many characters, rather
-than reading up to a character bound to <CODE>accept-line</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX227"></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
+than reading up to a character bound to <code>accept-line</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fpending_005finput"><span class="category">Variable: </span><span><em>int</em> <strong>rl_pending_input</strong><a href='#index-rl_005fpending_005finput' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Setting this to a value makes it the next keystroke read. This is a
way to stuff a single character into the input stream.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX228"></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;
+<dl class="def">
+<dt id="index-rl_005fdispatching"><span class="category">Variable: </span><span><em>int</em> <strong>rl_dispatching</strong><a href='#index-rl_005fdispatching' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set to a non-zero value if a function is being called from a key binding;
zero otherwise. Application functions can test this to discover whether
-they were called directly or by Readline's dispatching mechanism.
-</DL>
-</P><P>
-
-<A NAME="IDX229"></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
+they were called directly or by Readline&rsquo;s dispatching mechanism.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ferase_005fempty_005fline"><span class="category">Variable: </span><span><em>int</em> <strong>rl_erase_empty_line</strong><a href='#index-rl_005ferase_005fempty_005fline' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
-
-<A NAME="IDX230"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>rl_prompt</B>
-<DD>The prompt Readline uses. This is set from the argument to
-<CODE>readline()</CODE>, and should not be assigned to directly.
-The <CODE>rl_set_prompt()</CODE> function (see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A>) may
-be used to modify the prompt string after calling <CODE>readline()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX231"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>rl_display_prompt</B>
-<DD>The string displayed as the prompt. This is usually identical to
-<VAR>rl_prompt</VAR>, but may be changed temporarily by functions that
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fprompt"><span class="category">Variable: </span><span><em>char *</em> <strong>rl_prompt</strong><a href='#index-rl_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The prompt Readline uses. This is set from the argument to
+<code>readline()</code>, and should not be assigned to directly.
+The <code>rl_set_prompt()</code> function (see <a href="#Redisplay">Redisplay</a>) may
+be used to modify the prompt string after calling <code>readline()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdisplay_005fprompt"><span class="category">Variable: </span><span><em>char *</em> <strong>rl_display_prompt</strong><a href='#index-rl_005fdisplay_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The string displayed as the prompt. This is usually identical to
+<var>rl_prompt</var>, but may be changed temporarily by functions that
use the prompt string as a message area, such as incremental search.
-</DL>
-</P><P>
-
-<A NAME="IDX232"></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
-Readline do it the first time <CODE>readline()</CODE> is called, it should set
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005falready_005fprompted"><span class="category">Variable: </span><span><em>int</em> <strong>rl_already_prompted</strong><a href='#index-rl_005falready_005fprompted' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If an application wishes to display the prompt itself, rather than have
+Readline do it the first time <code>readline()</code> 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 <CODE>readline()</CODE> so
+The prompt must also be passed as the argument to <code>readline()</code> so
the redisplay functions can update the display properly.
The calling application is responsible for managing the value; Readline
never sets it.
-</DL>
-</P><P>
-
-<A NAME="IDX233"></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="IDX234"></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
-of the form 0x<VAR>MMmm</VAR>, where <VAR>MM</VAR> is the two-digit major version
-number, and <VAR>mm</VAR> is the two-digit minor version number.
-For example, for Readline-4.2, <CODE>rl_readline_version</CODE> would have the
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005flibrary_005fversion"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_library_version</strong><a href='#index-rl_005flibrary_005fversion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The version number of this revision of the library.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freadline_005fversion"><span class="category">Variable: </span><span><em>int</em> <strong>rl_readline_version</strong><a href='#index-rl_005freadline_005fversion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>An integer encoding the current version of the library. The encoding is
+of the form 0x<var>MMmm</var>, where <var>MM</var> is the two-digit major version
+number, and <var>mm</var> is the two-digit minor version number.
+For example, for Readline-4.2, <code>rl_readline_version</code> would have the
value 0x0402.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX235"></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
+<dl class="def">
+<dt id="index-rl_005fgnu_005freadline_005fp"><span class="category">Variable: </span><span><em>int</em> <strong>rl_gnu_readline_p</strong><a href='#index-rl_005fgnu_005freadline_005fp' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Always set to 1, denoting that this is <small>GNU</small> readline rather than some
emulation.
-</DL>
-</P><P>
-
-<A NAME="IDX236"></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,
-Readline sets this to the value of the <CODE>TERM</CODE> environment variable
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fterminal_005fname"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_terminal_name</strong><a href='#index-rl_005fterminal_005fname' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The terminal type, used for initialization. If not set by the application,
+Readline sets this to the value of the <code>TERM</code> environment variable
the first time it is called.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX237"></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.
+<dl class="def">
+<dt id="index-rl_005freadline_005fname"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_readline_name</strong><a href='#index-rl_005freadline_005fname' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable is set to a unique name by each application using Readline.
The value allows conditional parsing of the inputrc file
-(see section <A HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX238"></A>
-<DL>
-<DT><U>Variable:</U> FILE * <B>rl_instream</B>
-<DD>The stdio stream from which Readline reads input.
-If <CODE>NULL</CODE>, Readline defaults to <VAR>stdin</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX239"></A>
-<DL>
-<DT><U>Variable:</U> FILE * <B>rl_outstream</B>
-<DD>The stdio stream to which Readline performs output.
-If <CODE>NULL</CODE>, Readline defaults to <VAR>stdout</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX240"></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
-<CODE>COLUMNS</CODE> environment variables greater precedence than values fetched
+(see <a href="#Conditional-Init-Constructs">Conditional Init Constructs</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finstream"><span class="category">Variable: </span><span><em>FILE *</em> <strong>rl_instream</strong><a href='#index-rl_005finstream' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The stdio stream from which Readline reads input.
+If <code>NULL</code>, Readline defaults to <var>stdin</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005foutstream"><span class="category">Variable: </span><span><em>FILE *</em> <strong>rl_outstream</strong><a href='#index-rl_005foutstream' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The stdio stream to which Readline performs output.
+If <code>NULL</code>, Readline defaults to <var>stdout</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fprefer_005fenv_005fwinsize"><span class="category">Variable: </span><span><em>int</em> <strong>rl_prefer_env_winsize</strong><a href='#index-rl_005fprefer_005fenv_005fwinsize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, Readline gives values found in the <code>LINES</code> and
+<code>COLUMNS</code> environment variables greater precedence than values fetched
from the kernel when computing the screen dimensions.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX241"></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
+<dl class="def">
+<dt id="index-rl_005flast_005ffunc"><span class="category">Variable: </span><span><em>rl_command_func_t *</em> <strong>rl_last_func</strong><a href='#index-rl_005flast_005ffunc' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
-
-<A NAME="IDX242"></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
-before <CODE>readline</CODE> prints the first prompt.
-</DL>
-</P><P>
-
-<A NAME="IDX243"></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
-the first prompt has been printed and just before <CODE>readline</CODE>
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fstartup_005fhook"><span class="category">Variable: </span><span><em>rl_hook_func_t *</em> <strong>rl_startup_hook</strong><a href='#index-rl_005fstartup_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, this is the address of a function to call just
+before <code>readline</code> prints the first prompt.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fpre_005finput_005fhook"><span class="category">Variable: </span><span><em>rl_hook_func_t *</em> <strong>rl_pre_input_hook</strong><a href='#index-rl_005fpre_005finput_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, this is the address of a function to call after
+the first prompt has been printed and just before <code>readline</code>
starts reading input characters.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX244"></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
+<dl class="def">
+<dt id="index-rl_005fevent_005fhook"><span class="category">Variable: </span><span><em>rl_hook_func_t *</em> <strong>rl_event_hook</strong><a href='#index-rl_005fevent_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX245"></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
+<dl class="def">
+<dt id="index-rl_005fgetc_005ffunction"><span class="category">Variable: </span><span><em>rl_getc_func_t *</em> <strong>rl_getc_function</strong><a href='#index-rl_005fgetc_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, Readline will call indirectly through this pointer
to get a character from the input stream. By default, it is set to
-<CODE>rl_getc</CODE>, the default Readline character input function
-(see section <A HREF="readline.html#SEC37">2.4.8 Character Input</A>).
-In general, an application that sets <VAR>rl_getc_function</VAR> should consider
-setting <VAR>rl_input_available_hook</VAR> as well.
-</DL>
-</P><P>
-
-<A NAME="IDX246"></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
+<code>rl_getc</code>, the default Readline character input function
+(see <a href="#Character-Input">Character Input</a>).
+In general, an application that sets <var>rl_getc_function</var> should consider
+setting <var>rl_input_available_hook</var> as well.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fsignal_005fevent_005fhook"><span class="category">Variable: </span><span><em>rl_hook_func_t *</em> <strong>rl_signal_event_hook</strong><a href='#index-rl_005fsignal_005fevent_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX247"></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
+<dl class="def">
+<dt id="index-rl_005ftimeout_005fevent_005fhook"><span class="category">Variable: </span><span><em>rl_hook_func_t *</em> <strong>rl_timeout_event_hook</strong><a href='#index-rl_005ftimeout_005fevent_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, this is the address of a function to call if Readline times
+out while reading input.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finput_005favailable_005fhook"><span class="category">Variable: </span><span><em>rl_hook_func_t *</em> <strong>rl_input_available_hook</strong><a href='#index-rl_005finput_005favailable_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, Readline will use this function&rsquo;s return value when it needs
to determine whether or not there is available input on the current input
source.
-The default hook checks <CODE>rl_instream</CODE>; if an application is using a
+The default hook checks <code>rl_instream</code>; 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 <CODE>rl_set_keyboard_input_timeout()</CODE>
-or the value of the user-settable <VAR>keyseq-timeout</VAR> variable.
-This is designed for use by applications using Readline's callback interface
-(see section <A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>), which may not use the traditional
-<CODE>read(2)</CODE> and file descriptor interface, or other applications using
+Readline uses the value passed to <code>rl_set_keyboard_input_timeout()</code>
+or the value of the user-settable <var>keyseq-timeout</var> variable.
+This is designed for use by applications using Readline&rsquo;s callback interface
+(see <a href="#Alternate-Interface">Alternate Interface</a>), which may not use the traditional
+<code>read(2)</code> 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 <VAR>keyseq-timeout</VAR>, it should increase the timeout or set
+the value of <var>keyseq-timeout</var>, it should increase the timeout or set
this hook appropriately even when not using the callback interface.
-In general, an application that sets <VAR>rl_getc_function</VAR> should consider
-setting <VAR>rl_input_available_hook</VAR> as well.
-</DL>
-</P><P>
-
-<A NAME="IDX248"></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
+In general, an application that sets <var>rl_getc_function</var> should consider
+setting <var>rl_input_available_hook</var> as well.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fredisplay_005ffunction"><span class="category">Variable: </span><span><em>rl_voidfunc_t *</em> <strong>rl_redisplay_function</strong><a href='#index-rl_005fredisplay_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>rl_redisplay</CODE>, the default Readline
-redisplay function (see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX249"></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
+By default, it is set to <code>rl_redisplay</code>, the default Readline
+redisplay function (see <a href="#Redisplay">Redisplay</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fprep_005fterm_005ffunction"><span class="category">Variable: </span><span><em>rl_vintfunc_t *</em> <strong>rl_prep_term_function</strong><a href='#index-rl_005fprep_005fterm_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, Readline will call indirectly through this pointer
to initialize the terminal. The function takes a single argument, an
-<CODE>int</CODE> flag that says whether or not to use eight-bit characters.
-By default, this is set to <CODE>rl_prep_terminal</CODE>
-(see section <A HREF="readline.html#SEC38">2.4.9 Terminal Management</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX250"></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
+<code>int</code> flag that says whether or not to use eight-bit characters.
+By default, this is set to <code>rl_prep_terminal</code>
+(see <a href="#Terminal-Management">Terminal Management</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdeprep_005fterm_005ffunction"><span class="category">Variable: </span><span><em>rl_voidfunc_t *</em> <strong>rl_deprep_term_function</strong><a href='#index-rl_005fdeprep_005fterm_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, Readline will call indirectly through this pointer
to reset the terminal. This function should undo the effects of
-<CODE>rl_prep_term_function</CODE>.
-By default, this is set to <CODE>rl_deprep_terminal</CODE>
-(see section <A HREF="readline.html#SEC38">2.4.9 Terminal Management</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX251"></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
+<code>rl_prep_term_function</code>.
+By default, this is set to <code>rl_deprep_terminal</code>
+(see <a href="#Terminal-Management">Terminal Management</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexecuting_005fkeymap"><span class="category">Variable: </span><span><em>Keymap</em> <strong>rl_executing_keymap</strong><a href='#index-rl_005fexecuting_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable is set to the keymap (see <a href="#Keymaps">Selecting a Keymap</a>) in which the
currently executing readline function was found.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX252"></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
+<dl class="def">
+<dt id="index-rl_005fbinding_005fkeymap"><span class="category">Variable: </span><span><em>Keymap</em> <strong>rl_binding_keymap</strong><a href='#index-rl_005fbinding_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable is set to the keymap (see <a href="#Keymaps">Selecting a Keymap</a>) in which the
last key binding occurred.
-</DL>
-</P><P>
-
-<A NAME="IDX253"></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="IDX254"></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="IDX255"></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
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexecuting_005fmacro"><span class="category">Variable: </span><span><em>char *</em> <strong>rl_executing_macro</strong><a href='#index-rl_005fexecuting_005fmacro' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable is set to the text of any currently-executing macro.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexecuting_005fkey"><span class="category">Variable: </span><span><em>int</em> <strong>rl_executing_key</strong><a href='#index-rl_005fexecuting_005fkey' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The key that caused the dispatch to the currently-executing Readline function.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexecuting_005fkeyseq"><span class="category">Variable: </span><span><em>char *</em> <strong>rl_executing_keyseq</strong><a href='#index-rl_005fexecuting_005fkeyseq' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The full key sequence that caused the dispatch to the currently-executing
Readline function.
-</DL>
-</P><P>
-
-<A NAME="IDX256"></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="IDX257"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_readline_state</B>
-<DD>A variable with bit values that encapsulate the current Readline state.
-A bit is set with the <CODE>RL_SETSTATE</CODE> macro, and unset with the
-<CODE>RL_UNSETSTATE</CODE> macro. Use the <CODE>RL_ISSTATE</CODE> macro to test
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fkey_005fsequence_005flength"><span class="category">Variable: </span><span><em>int</em> <strong>rl_key_sequence_length</strong><a href='#index-rl_005fkey_005fsequence_005flength' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The number of characters in <var>rl_executing_keyseq</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freadline_005fstate"><span class="category">Variable: </span><span><em>int</em> <strong>rl_readline_state</strong><a href='#index-rl_005freadline_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A variable with bit values that encapsulate the current Readline state.
+A bit is set with the <code>RL_SETSTATE</code> macro, and unset with the
+<code>RL_UNSETSTATE</code> macro. Use the <code>RL_ISSTATE</code> macro to test
whether a particular state bit is set. Current state bits include:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>RL_STATE_NONE</CODE>
-<DD>Readline has not yet been called, nor has it begun to initialize.
-<DT><CODE>RL_STATE_INITIALIZING</CODE>
-<DD>Readline is initializing its internal data structures.
-<DT><CODE>RL_STATE_INITIALIZED</CODE>
-<DD>Readline has completed its initialization.
-<DT><CODE>RL_STATE_TERMPREPPED</CODE>
-<DD>Readline has modified the terminal modes to do its own input and redisplay.
-<DT><CODE>RL_STATE_READCMD</CODE>
-<DD>Readline is reading a command from the keyboard.
-<DT><CODE>RL_STATE_METANEXT</CODE>
-<DD>Readline is reading more input after reading the meta-prefix character.
-<DT><CODE>RL_STATE_DISPATCHING</CODE>
-<DD>Readline is dispatching to a command.
-<DT><CODE>RL_STATE_MOREINPUT</CODE>
-<DD>Readline is reading more input while executing an editing command.
-<DT><CODE>RL_STATE_ISEARCH</CODE>
-<DD>Readline is performing an incremental history search.
-<DT><CODE>RL_STATE_NSEARCH</CODE>
-<DD>Readline is performing a non-incremental history search.
-<DT><CODE>RL_STATE_SEARCH</CODE>
-<DD>Readline is searching backward or forward through the history for a string.
-<DT><CODE>RL_STATE_NUMERICARG</CODE>
-<DD>Readline is reading a numeric argument.
-<DT><CODE>RL_STATE_MACROINPUT</CODE>
-<DD>Readline is currently getting its input from a previously-defined keyboard
+</p>
+<dl compact="compact">
+<dt><span><code>RL_STATE_NONE</code></span></dt>
+<dd><p>Readline has not yet been called, nor has it begun to initialize.
+</p></dd>
+<dt><span><code>RL_STATE_INITIALIZING</code></span></dt>
+<dd><p>Readline is initializing its internal data structures.
+</p></dd>
+<dt><span><code>RL_STATE_INITIALIZED</code></span></dt>
+<dd><p>Readline has completed its initialization.
+</p></dd>
+<dt><span><code>RL_STATE_TERMPREPPED</code></span></dt>
+<dd><p>Readline has modified the terminal modes to do its own input and redisplay.
+</p></dd>
+<dt><span><code>RL_STATE_READCMD</code></span></dt>
+<dd><p>Readline is reading a command from the keyboard.
+</p></dd>
+<dt><span><code>RL_STATE_METANEXT</code></span></dt>
+<dd><p>Readline is reading more input after reading the meta-prefix character.
+</p></dd>
+<dt><span><code>RL_STATE_DISPATCHING</code></span></dt>
+<dd><p>Readline is dispatching to a command.
+</p></dd>
+<dt><span><code>RL_STATE_MOREINPUT</code></span></dt>
+<dd><p>Readline is reading more input while executing an editing command.
+</p></dd>
+<dt><span><code>RL_STATE_ISEARCH</code></span></dt>
+<dd><p>Readline is performing an incremental history search.
+</p></dd>
+<dt><span><code>RL_STATE_NSEARCH</code></span></dt>
+<dd><p>Readline is performing a non-incremental history search.
+</p></dd>
+<dt><span><code>RL_STATE_SEARCH</code></span></dt>
+<dd><p>Readline is searching backward or forward through the history for a string.
+</p></dd>
+<dt><span><code>RL_STATE_NUMERICARG</code></span></dt>
+<dd><p>Readline is reading a numeric argument.
+</p></dd>
+<dt><span><code>RL_STATE_MACROINPUT</code></span></dt>
+<dd><p>Readline is currently getting its input from a previously-defined keyboard
macro.
-<DT><CODE>RL_STATE_MACRODEF</CODE>
-<DD>Readline is currently reading characters defining a keyboard macro.
-<DT><CODE>RL_STATE_OVERWRITE</CODE>
-<DD>Readline is in overwrite mode.
-<DT><CODE>RL_STATE_COMPLETING</CODE>
-<DD>Readline is performing word completion.
-<DT><CODE>RL_STATE_SIGHANDLER</CODE>
-<DD>Readline is currently executing the readline signal handler.
-<DT><CODE>RL_STATE_UNDOING</CODE>
-<DD>Readline is performing an undo.
-<DT><CODE>RL_STATE_INPUTPENDING</CODE>
-<DD>Readline has input pending due to a call to <CODE>rl_execute_next()</CODE>.
-<DT><CODE>RL_STATE_TTYCSAVED</CODE>
-<DD>Readline has saved the values of the terminal's special characters.
-<DT><CODE>RL_STATE_CALLBACK</CODE>
-<DD>Readline is currently using the alternate (callback) interface
-(see section <A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>).
-<DT><CODE>RL_STATE_VIMOTION</CODE>
-<DD>Readline is reading the argument to a vi-mode "motion" command.
-<DT><CODE>RL_STATE_MULTIKEY</CODE>
-<DD>Readline is reading a multiple-keystroke command.
-<DT><CODE>RL_STATE_VICMDONCE</CODE>
-<DD>Readline has entered vi command (movement) mode at least one time during
-the current call to <CODE>readline()</CODE>.
-<DT><CODE>RL_STATE_DONE</CODE>
-<DD>Readline has read a key sequence bound to <CODE>accept-line</CODE>
+</p></dd>
+<dt><span><code>RL_STATE_MACRODEF</code></span></dt>
+<dd><p>Readline is currently reading characters defining a keyboard macro.
+</p></dd>
+<dt><span><code>RL_STATE_OVERWRITE</code></span></dt>
+<dd><p>Readline is in overwrite mode.
+</p></dd>
+<dt><span><code>RL_STATE_COMPLETING</code></span></dt>
+<dd><p>Readline is performing word completion.
+</p></dd>
+<dt><span><code>RL_STATE_SIGHANDLER</code></span></dt>
+<dd><p>Readline is currently executing the readline signal handler.
+</p></dd>
+<dt><span><code>RL_STATE_UNDOING</code></span></dt>
+<dd><p>Readline is performing an undo.
+</p></dd>
+<dt><span><code>RL_STATE_INPUTPENDING</code></span></dt>
+<dd><p>Readline has input pending due to a call to <code>rl_execute_next()</code>.
+</p></dd>
+<dt><span><code>RL_STATE_TTYCSAVED</code></span></dt>
+<dd><p>Readline has saved the values of the terminal&rsquo;s special characters.
+</p></dd>
+<dt><span><code>RL_STATE_CALLBACK</code></span></dt>
+<dd><p>Readline is currently using the alternate (callback) interface
+(see <a href="#Alternate-Interface">Alternate Interface</a>).
+</p></dd>
+<dt><span><code>RL_STATE_VIMOTION</code></span></dt>
+<dd><p>Readline is reading the argument to a vi-mode &quot;motion&quot; command.
+</p></dd>
+<dt><span><code>RL_STATE_MULTIKEY</code></span></dt>
+<dd><p>Readline is reading a multiple-keystroke command.
+</p></dd>
+<dt><span><code>RL_STATE_VICMDONCE</code></span></dt>
+<dd><p>Readline has entered vi command (movement) mode at least one time during
+the current call to <code>readline()</code>.
+</p></dd>
+<dt><span><code>RL_STATE_DONE</code></span></dt>
+<dd><p>Readline has read a key sequence bound to <code>accept-line</code>
and is about to return the line to the caller.
-</DL>
-<P>
-
-</DL>
-</P><P>
-
-<A NAME="IDX258"></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
+</p></dd>
+<dt><span><code>RL_STATE_TIMEOUT</code></span></dt>
+<dd><p>Readline has timed out (it did not receive a line or specified number of
+characters before the timeout duration specified by <code>rl_set_timeout</code>
+elapsed) and is returning that status to the caller.
+</p></dd>
+<dt><span><code>RL_STATE_EOF</code></span></dt>
+<dd><p>Readline has read an EOF character (e.g., the stty &lsquo;<samp>EOF</samp>&rsquo; character)
+or encountered a read error and is about to return a NULL line to the caller.
+</p></dd>
+</dl>
+
+</dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexplicit_005farg"><span class="category">Variable: </span><span><em>int</em> <strong>rl_explicit_arg</strong><a href='#index-rl_005fexplicit_005farg' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set to a non-zero value if an explicit numeric argument was specified by
the user. Only valid in a bindable command function.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX259"></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
+<dl class="def">
+<dt id="index-rl_005fnumeric_005farg"><span class="category">Variable: </span><span><em>int</em> <strong>rl_numeric_arg</strong><a href='#index-rl_005fnumeric_005farg' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set to the value of any numeric argument explicitly specified by the user
before executing the current Readline function. Only valid in a bindable
command function.
-</DL>
-</P><P>
-
-<A NAME="IDX260"></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
-<VAR>1</VAR> means Readline is currently in emacs mode; <VAR>0</VAR>
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fediting_005fmode"><span class="category">Variable: </span><span><em>int</em> <strong>rl_editing_mode</strong><a href='#index-rl_005fediting_005fmode' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set to a value denoting Readline&rsquo;s current editing mode. A value of
+<var>1</var> means Readline is currently in emacs mode; <var>0</var>
means that vi mode is active.
-</DL>
-</P><P>
-
-<A NAME="Readline Convenience Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC29"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC30"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.4 Readline Convenience Functions </H2>
-<!--docid::SEC29::-->
-<P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC30">2.4.1 Naming a Function</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to give a function you write a name.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Making keymaps.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Changing Keymaps.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Translate function names to
- key sequences.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to make your functions undoable.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to control line display.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to modify <CODE>rl_line_buffer</CODE>.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to read keyboard input.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to manage terminal settings.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Generally useful functions and hooks.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that don't fall into any category.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Using Readline in a `callback' fashion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC42">2.4.13 A Readline Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example Readline function.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC43">2.4.14 Alternate Interface Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example program using the alternate interface.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Function Naming"></A>
-<HR SIZE="6">
-<A NAME="SEC30"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.1 Naming a Function </H3>
-<!--docid::SEC30::-->
-<P>
-
-The user can dynamically change the bindings of keys while using
+</p></dd></dl>
+
+
+<hr>
+</div>
+<div class="section" id="Readline-Convenience-Functions">
+<div class="header">
+<p>
+Next: <a href="#Readline-Signal-Handling" accesskey="n" rel="next">Readline Signal Handling</a>, Previous: <a href="#Readline-Variables" accesskey="p" rel="prev">Readline Variables</a>, Up: <a href="#Programming-with-GNU-Readline" accesskey="u" rel="up">Programming with GNU Readline</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Convenience-Functions-1"></span><h3 class="section">2.4 Readline Convenience Functions</h3>
+
+
+<ul class="section-toc">
+<li><a href="#Function-Naming" accesskey="1">Naming a Function</a></li>
+<li><a href="#Keymaps" accesskey="2">Selecting a Keymap</a></li>
+<li><a href="#Binding-Keys" accesskey="3">Binding Keys</a></li>
+<li><a href="#Associating-Function-Names-and-Bindings" accesskey="4">Associating Function Names and Bindings</a></li>
+<li><a href="#Allowing-Undoing" accesskey="5">Allowing Undoing</a></li>
+<li><a href="#Redisplay" accesskey="6">Redisplay</a></li>
+<li><a href="#Modifying-Text" accesskey="7">Modifying Text</a></li>
+<li><a href="#Character-Input" accesskey="8">Character Input</a></li>
+<li><a href="#Terminal-Management" accesskey="9">Terminal Management</a></li>
+<li><a href="#Utility-Functions">Utility Functions</a></li>
+<li><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></li>
+<li><a href="#Alternate-Interface">Alternate Interface</a></li>
+<li><a href="#A-Readline-Example">A Readline Example</a></li>
+<li><a href="#Alternate-Interface-Example">Alternate Interface Example</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Function-Naming">
+<div class="header">
+<p>
+Next: <a href="#Keymaps" accesskey="n" rel="next">Selecting a Keymap</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Naming-a-Function"></span><h4 class="subsection">2.4.1 Naming a Function</h4>
+
+<p>The user can dynamically change the bindings of keys while using
Readline. This is done by representing the function with a descriptive
name. The user is able to type the descriptive name when referring to
the function. Thus, in an init file, one might find
-</P><P>
+</p>
+<div class="example">
+<pre class="example">Meta-Rubout: backward-kill-word
+</pre></div>
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>Meta-Rubout: backward-kill-word
-</pre></td></tr></table></P><P>
-
-This binds the keystroke <KBD>Meta-Rubout</KBD> to the function
-<EM>descriptively</EM> named <CODE>backward-kill-word</CODE>. You, as the
+<p>This binds the keystroke <tt class="key">Meta-Rubout</tt> to the function
+<em>descriptively</em> named <code>backward-kill-word</code>. You, as the
programmer, should bind the functions you write to descriptive names as
well. Readline provides a function for doing that:
-</P><P>
-
-<A NAME="IDX261"></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
-the function that gets called. If <VAR>key</VAR> is not -1, then bind it to
-<VAR>function</VAR> using <CODE>rl_bind_key()</CODE>.
-</DL>
-</P><P>
-
-Using this function alone is sufficient for most applications.
+</p>
+<dl class="def">
+<dt id="index-rl_005fadd_005fdefun"><span class="category">Function: </span><span><em>int</em> <strong>rl_add_defun</strong> <em>(const char *name, rl_command_func_t *function, int key)</em><a href='#index-rl_005fadd_005fdefun' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add <var>name</var> to the list of named functions. Make <var>function</var> be
+the function that gets called. If <var>key</var> is not -1, then bind it to
+<var>function</var> using <code>rl_bind_key()</code>.
+</p></dd></dl>
+
+<p>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.
-</P><P>
-
-<A NAME="Keymaps"></A>
-<HR SIZE="6">
-<A NAME="SEC31"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC30"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.2 Selecting a Keymap </H3>
-<!--docid::SEC31::-->
-<P>
-
-Key bindings take place on a <EM>keymap</EM>. The keymap is the
+</p>
+<hr>
+</div>
+<div class="subsection" id="Keymaps">
+<div class="header">
+<p>
+Next: <a href="#Binding-Keys" accesskey="n" rel="next">Binding Keys</a>, Previous: <a href="#Function-Naming" accesskey="p" rel="prev">Naming a Function</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Selecting-a-Keymap"></span><h4 class="subsection">2.4.2 Selecting a Keymap</h4>
+
+<p>Key bindings take place on a <em>keymap</em>. The keymap is the
association between the keys that the user types and the functions that
get run. You can make your own keymaps, copy existing keymaps, and tell
Readline which keymap to use.
-</P><P>
-
-<A NAME="IDX262"></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
-<CODE>malloc()</CODE>; the caller should free it by calling
-<CODE>rl_free_keymap()</CODE> when done.
-</DL>
-</P><P>
-
-<A NAME="IDX263"></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="IDX264"></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,
+</p>
+<dl class="def">
+<dt id="index-rl_005fmake_005fbare_005fkeymap"><span class="category">Function: </span><span><em>Keymap</em> <strong>rl_make_bare_keymap</strong> <em>(void)</em><a href='#index-rl_005fmake_005fbare_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns a new, empty keymap. The space for the keymap is allocated with
+<code>malloc()</code>; the caller should free it by calling
+<code>rl_free_keymap()</code> when done.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcopy_005fkeymap"><span class="category">Function: </span><span><em>Keymap</em> <strong>rl_copy_keymap</strong> <em>(Keymap map)</em><a href='#index-rl_005fcopy_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a new keymap which is a copy of <var>map</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fmake_005fkeymap"><span class="category">Function: </span><span><em>Keymap</em> <strong>rl_make_keymap</strong> <em>(void)</em><a href='#index-rl_005fmake_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a new keymap with the printing characters bound to rl_insert,
the lowercase Meta characters bound to run their equivalents, and
the Meta digits bound to produce numeric arguments.
-</DL>
-</P><P>
-
-<A NAME="IDX265"></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>.
-The caller should free <VAR>keymap</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX266"></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
-<CODE>rl_discard_keymap</CODE> to free subordindate keymaps and macros.
-</DL>
-</P><P>
-
-<A NAME="IDX267"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_empty_keymap</B> <I>(Keymap keymap)</I>
-<DD>Return non-zero if there are no keys bound to functions in <VAR>keymap</VAR>;
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdiscard_005fkeymap"><span class="category">Function: </span><span><em>void</em> <strong>rl_discard_keymap</strong> <em>(Keymap keymap)</em><a href='#index-rl_005fdiscard_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Free the storage associated with the data in <var>keymap</var>.
+The caller should free <var>keymap</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffree_005fkeymap"><span class="category">Function: </span><span><em>void</em> <strong>rl_free_keymap</strong> <em>(Keymap keymap)</em><a href='#index-rl_005ffree_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Free all storage associated with <var>keymap</var>. This calls
+<code>rl_discard_keymap</code> to free subordindate keymaps and macros.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fempty_005fkeymap"><span class="category">Function: </span><span><em>int</em> <strong>rl_empty_keymap</strong> <em>(Keymap keymap)</em><a href='#index-rl_005fempty_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return non-zero if there are no keys bound to functions in <var>keymap</var>;
zero if there are any keys bound.
-</DL>
-</P><P>
+</p></dd></dl>
-Readline has several internal keymaps. These functions allow you to
+<p>Readline has several internal keymaps. These functions allow you to
change which keymap is active.
-</P><P>
-
-<A NAME="IDX268"></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="IDX269"></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="IDX270"></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
-be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX271"></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
-be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX272"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_set_keymap_name</B> <I>(const char *name, Keymap keymap)</I>
-<DD>Set the name of <VAR>keymap</VAR>. This name will then be "registered" and
-available for use in a <CODE>set keymap</CODE> inputrc directive
-see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-The <VAR>name</VAR> may not be one of Readline's builtin keymap names;
-you may not add a different name for one of Readline's builtin keymaps.
+</p>
+<dl class="def">
+<dt id="index-rl_005fget_005fkeymap"><span class="category">Function: </span><span><em>Keymap</em> <strong>rl_get_keymap</strong> <em>(void)</em><a href='#index-rl_005fget_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns the currently active keymap.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fkeymap"><span class="category">Function: </span><span><em>void</em> <strong>rl_set_keymap</strong> <em>(Keymap keymap)</em><a href='#index-rl_005fset_005fkeymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Makes <var>keymap</var> the currently active keymap.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fget_005fkeymap_005fby_005fname"><span class="category">Function: </span><span><em>Keymap</em> <strong>rl_get_keymap_by_name</strong> <em>(const char *name)</em><a href='#index-rl_005fget_005fkeymap_005fby_005fname' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the keymap matching <var>name</var>. <var>name</var> is one which would
+be supplied in a <code>set keymap</code> inputrc line (see <a href="#Readline-Init-File">Readline Init File</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fget_005fkeymap_005fname"><span class="category">Function: </span><span><em>char *</em> <strong>rl_get_keymap_name</strong> <em>(Keymap keymap)</em><a href='#index-rl_005fget_005fkeymap_005fname' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the name matching <var>keymap</var>. <var>name</var> is one which would
+be supplied in a <code>set keymap</code> inputrc line (see <a href="#Readline-Init-File">Readline Init File</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fkeymap_005fname"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_keymap_name</strong> <em>(const char *name, Keymap keymap)</em><a href='#index-rl_005fset_005fkeymap_005fname' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set the name of <var>keymap</var>. This name will then be &quot;registered&quot; and
+available for use in a <code>set keymap</code> inputrc directive
+see <a href="#Readline-Init-File">Readline Init File</a>).
+The <var>name</var> may not be one of Readline&rsquo;s builtin keymap names;
+you may not add a different name for one of Readline&rsquo;s builtin keymaps.
You may replace the name associated with a given keymap by calling this
-function more than once with the same <VAR>keymap</VAR> argument.
-You may associate a registered <VAR>name</VAR> with a new keymap by calling this
-function more than once with the same <VAR>name</VAR> argument.
+function more than once with the same <var>keymap</var> argument.
+You may associate a registered <var>name</var> with a new keymap by calling this
+function more than once with the same <var>name</var> argument.
There is no way to remove a named keymap once the name has been
registered.
-Readline will make a copy of <VAR>name</VAR>.
-The return value is greater than zero unless <VAR>name</VAR> is one of
-Readline's builtin keymap names or <VAR>keymap</VAR> is one of Readline's
+Readline will make a copy of <var>name</var>.
+The return value is greater than zero unless <var>name</var> is one of
+Readline&rsquo;s builtin keymap names or <var>keymap</var> is one of Readline&rsquo;s
builtin keymaps.
-</DL>
-</P><P>
-
-<A NAME="Binding Keys"></A>
-<HR SIZE="6">
-<A NAME="SEC32"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.3 Binding Keys </H3>
-<!--docid::SEC32::-->
-<P>
-
-Key sequences are associate with functions through the keymap.
-Readline has several internal keymaps: <CODE>emacs_standard_keymap</CODE>,
-<CODE>emacs_meta_keymap</CODE>, <CODE>emacs_ctlx_keymap</CODE>,
-<CODE>vi_movement_keymap</CODE>, and <CODE>vi_insertion_keymap</CODE>.
-<CODE>emacs_standard_keymap</CODE> is the default, and the examples in
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Binding-Keys">
+<div class="header">
+<p>
+Next: <a href="#Associating-Function-Names-and-Bindings" accesskey="n" rel="next">Associating Function Names and Bindings</a>, Previous: <a href="#Keymaps" accesskey="p" rel="prev">Selecting a Keymap</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Binding-Keys-1"></span><h4 class="subsection">2.4.3 Binding Keys</h4>
+
+<p>Key sequences are associate with functions through the keymap.
+Readline has several internal keymaps: <code>emacs_standard_keymap</code>,
+<code>emacs_meta_keymap</code>, <code>emacs_ctlx_keymap</code>,
+<code>vi_movement_keymap</code>, and <code>vi_insertion_keymap</code>.
+<code>emacs_standard_keymap</code> is the default, and the examples in
this manual assume that.
-</P><P>
-
-Since <CODE>readline()</CODE> installs a set of default key bindings the first
+</p>
+<p>Since <code>readline()</code> 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 <CODE>readline()</CODE> will be overridden.
+installed before the first call to <code>readline()</code> will be overridden.
An alternate mechanism is to install custom key bindings in an
-initialization function assigned to the <CODE>rl_startup_hook</CODE> variable
-(see section <A HREF="readline.html#SEC28">2.3 Readline Variables</A>).
-</P><P>
-
-These functions manage key bindings.
-</P><P>
-
-<A NAME="IDX273"></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.
-Returns non-zero in the case of an invalid <VAR>key</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX274"></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>.
-Returns non-zero in the case of an invalid <VAR>key</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX275"></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
+initialization function assigned to the <code>rl_startup_hook</code> variable
+(see <a href="#Readline-Variables">Readline Variables</a>).
+</p>
+<p>These functions manage key bindings.
+</p>
+<dl class="def">
+<dt id="index-rl_005fbind_005fkey"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_key</strong> <em>(int key, rl_command_func_t *function)</em><a href='#index-rl_005fbind_005fkey' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Binds <var>key</var> to <var>function</var> in the currently active keymap.
+Returns non-zero in the case of an invalid <var>key</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkey_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_key_in_map</strong> <em>(int key, rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005fbind_005fkey_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind <var>key</var> to <var>function</var> in <var>map</var>.
+Returns non-zero in the case of an invalid <var>key</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkey_005fif_005funbound"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_key_if_unbound</strong> <em>(int key, rl_command_func_t *function)</em><a href='#index-rl_005fbind_005fkey_005fif_005funbound' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Binds <var>key</var> to <var>function</var> if it is not already bound in the
currently active keymap.
-Returns non-zero in the case of an invalid <VAR>key</VAR> or if <VAR>key</VAR> is
+Returns non-zero in the case of an invalid <var>key</var> or if <var>key</var> is
already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX276"></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>.
-Returns non-zero in the case of an invalid <VAR>key</VAR> or if <VAR>key</VAR> is
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkey_005fif_005funbound_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_key_if_unbound_in_map</strong> <em>(int key, rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005fbind_005fkey_005fif_005funbound_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Binds <var>key</var> to <var>function</var> if it is not already bound in <var>map</var>.
+Returns non-zero in the case of an invalid <var>key</var> or if <var>key</var> is
already bound.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX277"></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.
+<dl class="def">
+<dt id="index-rl_005funbind_005fkey"><span class="category">Function: </span><span><em>int</em> <strong>rl_unbind_key</strong> <em>(int key)</em><a href='#index-rl_005funbind_005fkey' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind <var>key</var> to the null function in the currently active keymap.
Returns non-zero in case of error.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX278"></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>.
+<dl class="def">
+<dt id="index-rl_005funbind_005fkey_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_unbind_key_in_map</strong> <em>(int key, Keymap map)</em><a href='#index-rl_005funbind_005fkey_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind <var>key</var> to the null function in <var>map</var>.
Returns non-zero in case of error.
-</DL>
-</P><P>
-
-<A NAME="IDX279"></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="IDX280"></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="IDX281"></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
-<VAR>function</VAR>, beginning in the current keymap.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005funbind_005ffunction_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_unbind_function_in_map</strong> <em>(rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005funbind_005ffunction_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Unbind all keys that execute <var>function</var> in <var>map</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005funbind_005fcommand_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_unbind_command_in_map</strong> <em>(const char *command, Keymap map)</em><a href='#index-rl_005funbind_005fcommand_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Unbind all keys that are bound to <var>command</var> in <var>map</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkeyseq"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_keyseq</strong> <em>(const char *keyseq, rl_command_func_t *function)</em><a href='#index-rl_005fbind_005fkeyseq' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind the key sequence represented by the string <var>keyseq</var> to the function
+<var>function</var>, beginning in the current keymap.
This makes new keymaps as necessary.
-The return value is non-zero if <VAR>keyseq</VAR> is invalid.
-</DL>
-</P><P>
-
-<A NAME="IDX282"></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
-<VAR>function</VAR>. This makes new keymaps as necessary.
-Initial bindings are performed in <VAR>map</VAR>.
-The return value is non-zero if <VAR>keyseq</VAR> is invalid.
-</DL>
-</P><P>
-
-<A NAME="IDX283"></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="IDX284"></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
+The return value is non-zero if <var>keyseq</var> is invalid.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkeyseq_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_keyseq_in_map</strong> <em>(const char *keyseq, rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005fbind_005fkeyseq_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind the key sequence represented by the string <var>keyseq</var> to the function
+<var>function</var>. This makes new keymaps as necessary.
+Initial bindings are performed in <var>map</var>.
+The return value is non-zero if <var>keyseq</var> is invalid.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fkey"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_key</strong> <em>(const char *keyseq, rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005fset_005fkey' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Equivalent to <code>rl_bind_keyseq_in_map</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkeyseq_005fif_005funbound"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_keyseq_if_unbound</strong> <em>(const char *keyseq, rl_command_func_t *function)</em><a href='#index-rl_005fbind_005fkeyseq_005fif_005funbound' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Binds <var>keyseq</var> to <var>function</var> if it is not already bound in the
currently active keymap.
-Returns non-zero in the case of an invalid <VAR>keyseq</VAR> or if <VAR>keyseq</VAR> is
+Returns non-zero in the case of an invalid <var>keyseq</var> or if <var>keyseq</var> is
already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX285"></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>.
-Returns non-zero in the case of an invalid <VAR>keyseq</VAR> or if <VAR>keyseq</VAR> is
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbind_005fkeyseq_005fif_005funbound_005fin_005fmap"><span class="category">Function: </span><span><em>int</em> <strong>rl_bind_keyseq_if_unbound_in_map</strong> <em>(const char *keyseq, rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005fbind_005fkeyseq_005fif_005funbound_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Binds <var>keyseq</var> to <var>function</var> if it is not already bound in <var>map</var>.
+Returns non-zero in the case of an invalid <var>keyseq</var> or if <var>keyseq</var> is
already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX286"></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
-pointer <VAR>data</VAR>. <VAR>type</VAR> says what kind of data is pointed to by
-<VAR>data</VAR>; this can be a function (<CODE>ISFUNC</CODE>), a macro
-(<CODE>ISMACR</CODE>), or a keymap (<CODE>ISKMAP</CODE>). This makes new keymaps as
-necessary. The initial keymap in which to do bindings is <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX287"></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
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fgeneric_005fbind"><span class="category">Function: </span><span><em>int</em> <strong>rl_generic_bind</strong> <em>(int type, const char *keyseq, char *data, Keymap map)</em><a href='#index-rl_005fgeneric_005fbind' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind the key sequence represented by the string <var>keyseq</var> to the arbitrary
+pointer <var>data</var>. <var>type</var> says what kind of data is pointed to by
+<var>data</var>; this can be a function (<code>ISFUNC</code>), a macro
+(<code>ISMACR</code>), or a keymap (<code>ISKMAP</code>). This makes new keymaps as
+necessary. The initial keymap in which to do bindings is <var>map</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fparse_005fand_005fbind"><span class="category">Function: </span><span><em>int</em> <strong>rl_parse_and_bind</strong> <em>(char *line)</em><a href='#index-rl_005fparse_005fand_005fbind' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Parse <var>line</var> as if it had been read from the <code>inputrc</code> file and
perform any key bindings and variable assignments found
-(see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX288"></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>
-(see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="Associating Function Names and Bindings"></A>
-<HR SIZE="6">
-<A NAME="SEC33"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.4 Associating Function Names and Bindings </H3>
-<!--docid::SEC33::-->
-<P>
-
-These functions allow you to find out what keys invoke named functions
+(see <a href="#Readline-Init-File">Readline Init File</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fread_005finit_005ffile"><span class="category">Function: </span><span><em>int</em> <strong>rl_read_init_file</strong> <em>(const char *filename)</em><a href='#index-rl_005fread_005finit_005ffile' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Read keybindings and variable assignments from <var>filename</var>
+(see <a href="#Readline-Init-File">Readline Init File</a>).
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Associating-Function-Names-and-Bindings">
+<div class="header">
+<p>
+Next: <a href="#Allowing-Undoing" accesskey="n" rel="next">Allowing Undoing</a>, Previous: <a href="#Binding-Keys" accesskey="p" rel="prev">Binding Keys</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Associating-Function-Names-and-Bindings-1"></span><h4 class="subsection">2.4.4 Associating Function Names and Bindings</h4>
+
+<p>These functions allow you to find out what keys invoke named functions
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="IDX289"></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="IDX290"></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>.
-If <VAR>map</VAR> is <CODE>NULL</CODE>, the current keymap is used. If <VAR>type</VAR> is
-not <CODE>NULL</CODE>, the type of the object is returned in the <CODE>int</CODE> variable
-it points to (one of <CODE>ISFUNC</CODE>, <CODE>ISKMAP</CODE>, or <CODE>ISMACR</CODE>).
-It takes a "translated" key sequence and should not be used if the key sequence
+</p>
+<dl class="def">
+<dt id="index-rl_005fnamed_005ffunction"><span class="category">Function: </span><span><em>rl_command_func_t *</em> <strong>rl_named_function</strong> <em>(const char *name)</em><a href='#index-rl_005fnamed_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the function with name <var>name</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffunction_005fof_005fkeyseq"><span class="category">Function: </span><span><em>rl_command_func_t *</em> <strong>rl_function_of_keyseq</strong> <em>(const char *keyseq, Keymap map, int *type)</em><a href='#index-rl_005ffunction_005fof_005fkeyseq' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the function invoked by <var>keyseq</var> in keymap <var>map</var>.
+If <var>map</var> is <code>NULL</code>, the current keymap is used. If <var>type</var> is
+not <code>NULL</code>, the type of the object is returned in the <code>int</code> variable
+it points to (one of <code>ISFUNC</code>, <code>ISKMAP</code>, or <code>ISMACR</code>).
+It takes a &quot;translated&quot; key sequence and should not be used if the key sequence
can include NUL.
-</DL>
-</P><P>
-
-<A NAME="IDX291"></A>
-<DL>
-<DT><U>Function:</U> rl_command_func_t * <B>rl_function_of_keyseq_len</B> <I>(const char *keyseq, size_t len, Keymap map, int *type)</I>
-<DD>Return the function invoked by <VAR>keyseq</VAR> of length <VAR>len</VAR>
-in keymap <VAR>map</VAR>. Equivalent to <CODE>rl_function_of_keyseq</CODE> with the
-addition of the <VAR>len</VAR> parameter.
-It takes a "translated" key sequence and should be used if the key sequence
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffunction_005fof_005fkeyseq_005flen"><span class="category">Function: </span><span><em>rl_command_func_t *</em> <strong>rl_function_of_keyseq_len</strong> <em>(const char *keyseq, size_t len, Keymap map, int *type)</em><a href='#index-rl_005ffunction_005fof_005fkeyseq_005flen' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the function invoked by <var>keyseq</var> of length <var>len</var>
+in keymap <var>map</var>. Equivalent to <code>rl_function_of_keyseq</code> with the
+addition of the <var>len</var> parameter.
+It takes a &quot;translated&quot; key sequence and should be used if the key sequence
can include NUL.
-</DL>
-</P><P>
-
-<A NAME="IDX292"></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
-invoke <VAR>function</VAR> in the current keymap.
-</DL>
-</P><P>
-
-<A NAME="IDX293"></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
-invoke <VAR>function</VAR> in the keymap <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX294"></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
-bound to them to <CODE>rl_outstream</CODE>. If <VAR>readable</VAR> is non-zero,
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ftrim_005farg_005ffrom_005fkeyseq"><span class="category">Function: </span><span><em>int</em> <strong>rl_trim_arg_from_keyseq</strong> <em>(const char *keyseq, size_t len, Keymap map)</em><a href='#index-rl_005ftrim_005farg_005ffrom_005fkeyseq' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If there is a numeric argument at the beginning of <var>keyseq</var>, possibly
+including digits, return the index of the first character in <var>keyseq</var>
+following the numeric argument.
+This can be used to skip over the numeric argument (which is available as
+<code>rl_numeric_arg</code> while traversing the key sequence that invoked the
+current command.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finvoking_005fkeyseqs"><span class="category">Function: </span><span><em>char **</em> <strong>rl_invoking_keyseqs</strong> <em>(rl_command_func_t *function)</em><a href='#index-rl_005finvoking_005fkeyseqs' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return an array of strings representing the key sequences used to
+invoke <var>function</var> in the current keymap.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finvoking_005fkeyseqs_005fin_005fmap"><span class="category">Function: </span><span><em>char **</em> <strong>rl_invoking_keyseqs_in_map</strong> <em>(rl_command_func_t *function, Keymap map)</em><a href='#index-rl_005finvoking_005fkeyseqs_005fin_005fmap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return an array of strings representing the key sequences used to
+invoke <var>function</var> in the keymap <var>map</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffunction_005fdumper"><span class="category">Function: </span><span><em>void</em> <strong>rl_function_dumper</strong> <em>(int readable)</em><a href='#index-rl_005ffunction_005fdumper' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Print the readline function names and the key sequences currently
+bound to them to <code>rl_outstream</code>. If <var>readable</var> is non-zero,
the list is formatted in such a way that it can be made part of an
-<CODE>inputrc</CODE> file and re-read.
-</DL>
-</P><P>
-
-<A NAME="IDX295"></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="IDX296"></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
+<code>inputrc</code> file and re-read.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005flist_005ffunmap_005fnames"><span class="category">Function: </span><span><em>void</em> <strong>rl_list_funmap_names</strong> <em>(void)</em><a href='#index-rl_005flist_005ffunmap_005fnames' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Print the names of all bindable Readline functions to <code>rl_outstream</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffunmap_005fnames"><span class="category">Function: </span><span><em>const char **</em> <strong>rl_funmap_names</strong> <em>(void)</em><a href='#index-rl_005ffunmap_005fnames' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>free</CODE> or
-<CODE>rl_free</CODE> when you are done.
-</DL>
-</P><P>
-
-<A NAME="IDX297"></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
-<VAR>function</VAR> the function to be called when <VAR>name</VAR> is invoked.
-</DL>
-</P><P>
-
-<A NAME="Allowing Undoing"></A>
-<HR SIZE="6">
-<A NAME="SEC34"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.5 Allowing Undoing </H3>
-<!--docid::SEC34::-->
-<P>
-
-Supporting the undo command is a painless thing, and makes your
+should free the array, but not the pointers, using <code>free</code> or
+<code>rl_free</code> when you are done.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fadd_005ffunmap_005fentry"><span class="category">Function: </span><span><em>int</em> <strong>rl_add_funmap_entry</strong> <em>(const char *name, rl_command_func_t *function)</em><a href='#index-rl_005fadd_005ffunmap_005fentry' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add <var>name</var> to the list of bindable Readline command names, and make
+<var>function</var> the function to be called when <var>name</var> is invoked.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Allowing-Undoing">
+<div class="header">
+<p>
+Next: <a href="#Redisplay" accesskey="n" rel="next">Redisplay</a>, Previous: <a href="#Associating-Function-Names-and-Bindings" accesskey="p" rel="prev">Associating Function Names and Bindings</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Allowing-Undoing-1"></span><h4 class="subsection">2.4.5 Allowing Undoing</h4>
+
+<p>Supporting the undo command is a painless thing, and makes your
functions much more useful. It is certainly easy to try
something if you know you can undo it.
-</P><P>
-
-If your function simply inserts text once, or deletes text once, and
-uses <CODE>rl_insert_text()</CODE> or <CODE>rl_delete_text()</CODE> to do it, then
+</p>
+<p>If your function simply inserts text once, or deletes text once, and
+uses <code>rl_insert_text()</code> or <code>rl_delete_text()</code> to do it, then
undoing is already done for you automatically.
-</P><P>
-
-If you do multiple insertions or multiple deletions, or any combination
+</p>
+<p>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 <CODE>rl_begin_undo_group()</CODE> and
-<CODE>rl_end_undo_group()</CODE>.
-</P><P>
-
-The types of events that can be undone are:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>enum undo_code { UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END };
-</FONT></pre></td></tr></table></P><P>
-
-Notice that <CODE>UNDO_DELETE</CODE> means to insert some text, and
-<CODE>UNDO_INSERT</CODE> means to delete some text. That is, the undo code
-tells what to undo, not how to undo it. <CODE>UNDO_BEGIN</CODE> and
-<CODE>UNDO_END</CODE> are tags added by <CODE>rl_begin_undo_group()</CODE> and
-<CODE>rl_end_undo_group()</CODE>.
-</P><P>
-
-<A NAME="IDX298"></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
-information usually comes from calls to <CODE>rl_insert_text()</CODE> and
-<CODE>rl_delete_text()</CODE>, but could be the result of calls to
-<CODE>rl_add_undo()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX299"></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
-()</CODE>. There should be one call to <CODE>rl_end_undo_group()</CODE>
-for each call to <CODE>rl_begin_undo_group()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX300"></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
-text runs from <VAR>start</VAR> to <VAR>end</VAR>, and encompasses <VAR>text</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX301"></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="IDX302"></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
+This is done with <code>rl_begin_undo_group()</code> and
+<code>rl_end_undo_group()</code>.
+</p>
+<p>The types of events that can be undone are:
+</p>
+<div class="example">
+<pre class="example">enum undo_code { UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END };
+</pre></div>
+
+<p>Notice that <code>UNDO_DELETE</code> means to insert some text, and
+<code>UNDO_INSERT</code> means to delete some text. That is, the undo code
+tells what to undo, not how to undo it. <code>UNDO_BEGIN</code> and
+<code>UNDO_END</code> are tags added by <code>rl_begin_undo_group()</code> and
+<code>rl_end_undo_group()</code>.
+</p>
+<dl class="def">
+<dt id="index-rl_005fbegin_005fundo_005fgroup"><span class="category">Function: </span><span><em>int</em> <strong>rl_begin_undo_group</strong> <em>(void)</em><a href='#index-rl_005fbegin_005fundo_005fgroup' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Begins saving undo information in a group construct. The undo
+information usually comes from calls to <code>rl_insert_text()</code> and
+<code>rl_delete_text()</code>, but could be the result of calls to
+<code>rl_add_undo()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fend_005fundo_005fgroup"><span class="category">Function: </span><span><em>int</em> <strong>rl_end_undo_group</strong> <em>(void)</em><a href='#index-rl_005fend_005fundo_005fgroup' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Closes the current undo group started with <code>rl_begin_undo_group
+()</code>. There should be one call to <code>rl_end_undo_group()</code>
+for each call to <code>rl_begin_undo_group()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fadd_005fundo"><span class="category">Function: </span><span><em>void</em> <strong>rl_add_undo</strong> <em>(enum undo_code what, int start, int end, char *text)</em><a href='#index-rl_005fadd_005fundo' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Remember how to undo an event (according to <var>what</var>). The affected
+text runs from <var>start</var> to <var>end</var>, and encompasses <var>text</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffree_005fundo_005flist"><span class="category">Function: </span><span><em>void</em> <strong>rl_free_undo_list</strong> <em>(void)</em><a href='#index-rl_005ffree_005fundo_005flist' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Free the existing undo list.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdo_005fundo"><span class="category">Function: </span><span><em>int</em> <strong>rl_do_undo</strong> <em>(void)</em><a href='#index-rl_005fdo_005fundo' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Undo the first thing on the undo list. Returns <code>0</code> if there was
nothing to undo, non-zero if something was undone.
-</DL>
-</P><P>
+</p></dd></dl>
-Finally, if you neither insert nor delete text, but directly modify the
-existing text (e.g., change its case), call <CODE>rl_modifying()</CODE>
+<p>Finally, if you neither insert nor delete text, but directly modify the
+existing text (e.g., change its case), call <code>rl_modifying()</code>
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="IDX303"></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
+</p>
+<dl class="def">
+<dt id="index-rl_005fmodifying"><span class="category">Function: </span><span><em>int</em> <strong>rl_modifying</strong> <em>(int start, int end)</em><a href='#index-rl_005fmodifying' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Tell Readline to save the text between <var>start</var> and <var>end</var> as a
single undo unit. It is assumed that you will subsequently modify
that text.
-</DL>
-</P><P>
-
-<A NAME="Redisplay"></A>
-<HR SIZE="6">
-<A NAME="SEC35"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.6 Redisplay </H3>
-<!--docid::SEC35::-->
-<P>
-
-<A NAME="IDX304"></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
-of <CODE>rl_line_buffer</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX305"></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
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Redisplay">
+<div class="header">
+<p>
+Next: <a href="#Modifying-Text" accesskey="n" rel="next">Modifying Text</a>, Previous: <a href="#Allowing-Undoing" accesskey="p" rel="prev">Allowing Undoing</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Redisplay-1"></span><h4 class="subsection">2.4.6 Redisplay</h4>
+
+<dl class="def">
+<dt id="index-rl_005fredisplay"><span class="category">Function: </span><span><em>void</em> <strong>rl_redisplay</strong> <em>(void)</em><a href='#index-rl_005fredisplay' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Change what&rsquo;s displayed on the screen to reflect the current contents
+of <code>rl_line_buffer</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fforced_005fupdate_005fdisplay"><span class="category">Function: </span><span><em>int</em> <strong>rl_forced_update_display</strong> <em>(void)</em><a href='#index-rl_005fforced_005fupdate_005fdisplay' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Force the line to be updated and redisplayed, whether or not
Readline thinks the screen display is correct.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX306"></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,
+<dl class="def">
+<dt id="index-rl_005fon_005fnew_005fline"><span class="category">Function: </span><span><em>int</em> <strong>rl_on_new_line</strong> <em>(void)</em><a href='#index-rl_005fon_005fnew_005fline' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Tell the update functions that we have moved onto a new (empty) line,
usually after outputting a newline.
-</DL>
-</P><P>
-
-<A NAME="IDX307"></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
-<VAR>rl_prompt</VAR> already displayed.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fon_005fnew_005fline_005fwith_005fprompt"><span class="category">Function: </span><span><em>int</em> <strong>rl_on_new_line_with_prompt</strong> <em>(void)</em><a href='#index-rl_005fon_005fnew_005fline_005fwith_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Tell the update functions that we have moved onto a new line, with
+<var>rl_prompt</var> 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 <VAR>rl_already_prompted</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX308"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_clear_visible_line</B> <I>(void)</I>
-<DD>Clear the screen lines corresponding to the current line's contents.
-</DL>
-</P><P>
-
-<A NAME="IDX309"></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
+It should be used after setting <var>rl_already_prompted</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fclear_005fvisible_005fline"><span class="category">Function: </span><span><em>int</em> <strong>rl_clear_visible_line</strong> <em>(void)</em><a href='#index-rl_005fclear_005fvisible_005fline' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the screen lines corresponding to the current line&rsquo;s contents.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freset_005fline_005fstate"><span class="category">Function: </span><span><em>int</em> <strong>rl_reset_line_state</strong> <em>(void)</em><a href='#index-rl_005freset_005fline_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Reset the display state to a clean state and redisplay the current line
starting on a new line.
-</DL>
-</P><P>
-
-<A NAME="IDX310"></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="IDX311"></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>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcrlf"><span class="category">Function: </span><span><em>int</em> <strong>rl_crlf</strong> <em>(void)</em><a href='#index-rl_005fcrlf' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move the cursor to the start of the next screen line.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fshow_005fchar"><span class="category">Function: </span><span><em>int</em> <strong>rl_show_char</strong> <em>(int c)</em><a href='#index-rl_005fshow_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Display character <var>c</var> on <code>rl_outstream</code>.
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.
-</DL>
-</P><P>
-
-<A NAME="IDX312"></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>,
-possibly containing conversion specifications such as <SAMP>`%d'</SAMP>, and
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fmessage"><span class="category">Function: </span><span><em>int</em> <strong>rl_message</strong> <em>(const char *, &hellip;)</em><a href='#index-rl_005fmessage' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The arguments are a format string as would be supplied to <code>printf</code>,
+possibly containing conversion specifications such as &lsquo;<samp>%d</samp>&rsquo;, and
any additional arguments necessary to satisfy the conversion specifications.
-The resulting string is displayed in the <EM>echo area</EM>. The echo area
+The resulting string is displayed in the <em>echo area</em>. The echo area
is also used to display numeric arguments and search strings.
-You should call <CODE>rl_save_prompt</CODE> to save the prompt information
+You should call <code>rl_save_prompt</code> to save the prompt information
before calling this function.
-</DL>
-</P><P>
-
-<A NAME="IDX313"></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
-<CODE>rl_save_prompt</CODE> before the last call to <CODE>rl_message</CODE>,
-call <CODE>rl_restore_prompt</CODE> before calling this function.
-</DL>
-</P><P>
-
-<A NAME="IDX314"></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
-displaying a new message in the message area with <CODE>rl_message()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX315"></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
-recent call to <CODE>rl_save_prompt</CODE>.
-if <CODE>rl_save_prompt</CODE> was called to save the prompt before a call
-to <CODE>rl_message</CODE>, this function should be called before the
-corresponding call to <CODE>rl_clear_message</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX316"></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
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fclear_005fmessage"><span class="category">Function: </span><span><em>int</em> <strong>rl_clear_message</strong> <em>(void)</em><a href='#index-rl_005fclear_005fmessage' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the message in the echo area. If the prompt was saved with a call to
+<code>rl_save_prompt</code> before the last call to <code>rl_message</code>,
+call <code>rl_restore_prompt</code> before calling this function.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fsave_005fprompt"><span class="category">Function: </span><span><em>void</em> <strong>rl_save_prompt</strong> <em>(void)</em><a href='#index-rl_005fsave_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Save the local Readline prompt display state in preparation for
+displaying a new message in the message area with <code>rl_message()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005frestore_005fprompt"><span class="category">Function: </span><span><em>void</em> <strong>rl_restore_prompt</strong> <em>(void)</em><a href='#index-rl_005frestore_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Restore the local Readline prompt display state saved by the most
+recent call to <code>rl_save_prompt</code>.
+if <code>rl_save_prompt</code> was called to save the prompt before a call
+to <code>rl_message</code>, this function should be called before the
+corresponding call to <code>rl_clear_message</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexpand_005fprompt"><span class="category">Function: </span><span><em>int</em> <strong>rl_expand_prompt</strong> <em>(char *prompt)</em><a href='#index-rl_005fexpand_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Expand any special character sequences in <var>prompt</var> and set up the
local Readline prompt redisplay variables.
-This function is called by <CODE>readline()</CODE>. It may also be called to
-expand the primary prompt if the <CODE>rl_on_new_line_with_prompt()</CODE>
-function or <CODE>rl_already_prompted</CODE> variable is used.
+This function is called by <code>readline()</code>. It may also be called to
+expand the primary prompt if the <code>rl_on_new_line_with_prompt()</code>
+function or <code>rl_already_prompted</code> 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 <CODE>RL_PROMPT_START_IGNORE</CODE>
-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="IDX317"></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
-<CODE>rl_expand_prompt()</CODE> to expand the prompt and sets <CODE>rl_prompt</CODE>
+such characters with the special markers <code>RL_PROMPT_START_IGNORE</code>
+and <code>RL_PROMPT_END_IGNORE</code> (declared in <samp>readline.h</samp> as
+&lsquo;<samp>\001</samp>&rsquo; and &lsquo;<samp>\002</samp>&rsquo;, respectively).
+This may be used to embed terminal-specific escape sequences in prompts.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fprompt"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_prompt</strong> <em>(const char *prompt)</em><a href='#index-rl_005fset_005fprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Make Readline use <var>prompt</var> for subsequent redisplay. This calls
+<code>rl_expand_prompt()</code> to expand the prompt and sets <code>rl_prompt</code>
to the result.
-</DL>
-</P><P>
-
-<A NAME="Modifying Text"></A>
-<HR SIZE="6">
-<A NAME="SEC36"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.7 Modifying Text </H3>
-<!--docid::SEC36::-->
-<P>
-
-<A NAME="IDX318"></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.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Modifying-Text">
+<div class="header">
+<p>
+Next: <a href="#Character-Input" accesskey="n" rel="next">Character Input</a>, Previous: <a href="#Redisplay" accesskey="p" rel="prev">Redisplay</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Modifying-Text-1"></span><h4 class="subsection">2.4.7 Modifying Text</h4>
+
+<dl class="def">
+<dt id="index-rl_005finsert_005ftext"><span class="category">Function: </span><span><em>int</em> <strong>rl_insert_text</strong> <em>(const char *text)</em><a href='#index-rl_005finsert_005ftext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert <var>text</var> into the line at the current cursor position.
Returns the number of characters inserted.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX319"></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.
+<dl class="def">
+<dt id="index-rl_005fdelete_005ftext"><span class="category">Function: </span><span><em>int</em> <strong>rl_delete_text</strong> <em>(int start, int end)</em><a href='#index-rl_005fdelete_005ftext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete the text between <var>start</var> and <var>end</var> in the current line.
Returns the number of characters deleted.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX320"></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
+<dl class="def">
+<dt id="index-rl_005fcopy_005ftext"><span class="category">Function: </span><span><em>char *</em> <strong>rl_copy_text</strong> <em>(int start, int end)</em><a href='#index-rl_005fcopy_005ftext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a copy of the text between <var>start</var> and <var>end</var> in
the current line.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX321"></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
+<dl class="def">
+<dt id="index-rl_005fkill_005ftext"><span class="category">Function: </span><span><em>int</em> <strong>rl_kill_text</strong> <em>(int start, int end)</em><a href='#index-rl_005fkill_005ftext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Copy the text between <var>start</var> and <var>end</var> 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 <VAR>start</VAR> is less than <VAR>end</VAR>,
+If <var>start</var> is less than <var>end</var>,
the text is appended, otherwise prepended. If the last command was
not a kill, a new kill ring slot is used.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX322"></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
+<dl class="def">
+<dt id="index-rl_005fpush_005fmacro_005finput"><span class="category">Function: </span><span><em>int</em> <strong>rl_push_macro_input</strong> <em>(char *macro)</em><a href='#index-rl_005fpush_005fmacro_005finput' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Cause <var>macro</var> to be inserted into the line, as if it had been invoked
by a key bound to a macro. Not especially useful; use
-<CODE>rl_insert_text()</CODE> instead.
-</DL>
-</P><P>
-
-<A NAME="Character Input"></A>
-<HR SIZE="6">
-<A NAME="SEC37"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.8 Character Input </H3>
-<!--docid::SEC37::-->
-<P>
-
-<A NAME="IDX323"></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.
+<code>rl_insert_text()</code> instead.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Character-Input">
+<div class="header">
+<p>
+Next: <a href="#Terminal-Management" accesskey="n" rel="next">Terminal Management</a>, Previous: <a href="#Modifying-Text" accesskey="p" rel="prev">Modifying Text</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Character-Input-1"></span><h4 class="subsection">2.4.8 Character Input</h4>
+
+<dl class="def">
+<dt id="index-rl_005fread_005fkey"><span class="category">Function: </span><span><em>int</em> <strong>rl_read_key</strong> <em>(void)</em><a href='#index-rl_005fread_005fkey' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the next character available from Readline&rsquo;s current input stream.
This handles input inserted into
-the input stream via <VAR>rl_pending_input</VAR> (see section <A HREF="readline.html#SEC28">2.3 Readline Variables</A>)
-and <CODE>rl_stuff_char()</CODE>, macros, and characters read from the keyboard.
+the input stream via <var>rl_pending_input</var> (see <a href="#Readline-Variables">Readline Variables</a>)
+and <code>rl_stuff_char()</code>, macros, and characters read from the keyboard.
While waiting for input, this function will call any function assigned to
-the <CODE>rl_event_hook</CODE> variable.
-</DL>
-</P><P>
-
-<A NAME="IDX324"></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
+the <code>rl_event_hook</code> variable.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fgetc"><span class="category">Function: </span><span><em>int</em> <strong>rl_getc</strong> <em>(FILE *stream)</em><a href='#index-rl_005fgetc' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the next character available from <var>stream</var>, which is assumed to
be the keyboard.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX325"></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"
+<dl class="def">
+<dt id="index-rl_005fstuff_005fchar"><span class="category">Function: </span><span><em>int</em> <strong>rl_stuff_char</strong> <em>(int c)</em><a href='#index-rl_005fstuff_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert <var>c</var> into the Readline input stream. It will be &quot;read&quot;
before Readline attempts to read characters from the terminal with
-<CODE>rl_read_key()</CODE>. Up to 512 characters may be pushed back.
-<CODE>rl_stuff_char</CODE> returns 1 if the character was successfully inserted;
+<code>rl_read_key()</code>. Up to 512 characters may be pushed back.
+<code>rl_stuff_char</code> returns 1 if the character was successfully inserted;
0 otherwise.
-</DL>
-</P><P>
-
-<A NAME="IDX326"></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>
-is called. This sets <VAR>rl_pending_input</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX327"></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
-previous call to <CODE>rl_execute_next()</CODE>. This works only if the
-pending input has not already been read with <CODE>rl_read_key()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX328"></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
-wait for <VAR>u</VAR> microseconds for input before calling any function
-assigned to <CODE>rl_event_hook</CODE>. <VAR>u</VAR> must be greater than or equal
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fexecute_005fnext"><span class="category">Function: </span><span><em>int</em> <strong>rl_execute_next</strong> <em>(int c)</em><a href='#index-rl_005fexecute_005fnext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Make <var>c</var> be the next command to be executed when <code>rl_read_key()</code>
+is called. This sets <var>rl_pending_input</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fclear_005fpending_005finput"><span class="category">Function: </span><span><em>int</em> <strong>rl_clear_pending_input</strong> <em>(void)</em><a href='#index-rl_005fclear_005fpending_005finput' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Unset <var>rl_pending_input</var>, effectively negating the effect of any
+previous call to <code>rl_execute_next()</code>. This works only if the
+pending input has not already been read with <code>rl_read_key()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fkeyboard_005finput_005ftimeout"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_keyboard_input_timeout</strong> <em>(int u)</em><a href='#index-rl_005fset_005fkeyboard_005finput_005ftimeout' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>While waiting for keyboard input in <code>rl_read_key()</code>, Readline will
+wait for <var>u</var> microseconds for input before calling any function
+assigned to <code>rl_event_hook</code>. <var>u</var> 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.
-</DL>
-</P><P>
-
-<A NAME="Terminal Management"></A>
-<HR SIZE="6">
-<A NAME="SEC38"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC39"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.9 Terminal Management </H3>
-<!--docid::SEC38::-->
-<P>
-
-<A NAME="IDX329"></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>
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005ftimeout"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_timeout</strong> <em>(unsigned int secs, unsigned int usecs)</em><a href='#index-rl_005fset_005ftimeout' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set a timeout for subsequent calls to <code>readline()</code>. If Readline does
+not read a complete line, or the number of characters specified by
+<code>rl_num_chars_to_read</code>, before the duration specfied by <var>secs</var>
+(in seconds) and <var>usecs</var> (microseconds), it returns and sets
+<code>RL_STATE_TIMEOUT</code> in <code>rl_readline_state</code>.
+Passing 0 for <code>secs</code> and <code>usecs</code> cancels any previously set
+timeout; the convenience macro <code>rl_clear_timeout()</code> is shorthand
+for this.
+Returns 0 if the timeout is set successfully.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ftimeout_005fremaining"><span class="category">Function: </span><span><em>int</em> <strong>rl_timeout_remaining</strong> <em>(unsigned int *secs, unsigned int *usecs)</em><a href='#index-rl_005ftimeout_005fremaining' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the number of seconds and microseconds remaining in the current
+timeout duration in <var>*secs</var> and <var>*usecs</var>, respectively.
+Both <var>*secs</var> and <var>*usecs</var> must be non-NULL to return any values.
+The return value is -1 on error or when there is no timeout set,
+0 when the timeout has expired (leaving <var>*secs</var> and <var>*usecs</var>
+unchanged),
+and 1 if the timeout has not expired.
+If either of <var>secs</var> and <var>usecs</var> is <code>NULL</code>,
+the return value indicates whether the timeout has expired.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Terminal-Management">
+<div class="header">
+<p>
+Next: <a href="#Utility-Functions" accesskey="n" rel="next">Utility Functions</a>, Previous: <a href="#Character-Input" accesskey="p" rel="prev">Character Input</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Terminal-Management-1"></span><h4 class="subsection">2.4.9 Terminal Management</h4>
+
+<dl class="def">
+<dt id="index-rl_005fprep_005fterminal"><span class="category">Function: </span><span><em>void</em> <strong>rl_prep_terminal</strong> <em>(int meta_flag)</em><a href='#index-rl_005fprep_005fterminal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Modify the terminal settings for Readline&rsquo;s use, so <code>readline()</code>
can read a single character at a time from the keyboard.
-The <VAR>meta_flag</VAR> argument should be non-zero if Readline should
+The <var>meta_flag</var> argument should be non-zero if Readline should
read eight-bit input.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX330"></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
+<dl class="def">
+<dt id="index-rl_005fdeprep_005fterminal"><span class="category">Function: </span><span><em>void</em> <strong>rl_deprep_terminal</strong> <em>(void)</em><a href='#index-rl_005fdeprep_005fterminal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Undo the effects of <code>rl_prep_terminal()</code>, leaving the terminal in
the state in which it was before the most recent call to
-<CODE>rl_prep_terminal()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX331"></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
-displayed by <CODE>stty</CODE>) to their Readline equivalents.
-The bindings are performed in <VAR>kmap</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX332"></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
-that the terminal editing characters are bound to <CODE>rl_insert</CODE>.
-The bindings are performed in <VAR>kmap</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX333"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_tty_set_echoing</B> <I>(int value)</I>
-<DD>Set Readline's idea of whether or not it is echoing output to its output
-stream (<VAR>rl_outstream</VAR>). If <VAR>value</VAR> is 0, Readline does not display
-output to <VAR>rl_outstream</VAR>; any other value enables output. The initial
+<code>rl_prep_terminal()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ftty_005fset_005fdefault_005fbindings"><span class="category">Function: </span><span><em>void</em> <strong>rl_tty_set_default_bindings</strong> <em>(Keymap kmap)</em><a href='#index-rl_005ftty_005fset_005fdefault_005fbindings' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Read the operating system&rsquo;s terminal editing characters (as would be
+displayed by <code>stty</code>) to their Readline equivalents.
+The bindings are performed in <var>kmap</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ftty_005funset_005fdefault_005fbindings"><span class="category">Function: </span><span><em>void</em> <strong>rl_tty_unset_default_bindings</strong> <em>(Keymap kmap)</em><a href='#index-rl_005ftty_005funset_005fdefault_005fbindings' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Reset the bindings manipulated by <code>rl_tty_set_default_bindings</code> so
+that the terminal editing characters are bound to <code>rl_insert</code>.
+The bindings are performed in <var>kmap</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ftty_005fset_005fechoing"><span class="category">Function: </span><span><em>int</em> <strong>rl_tty_set_echoing</strong> <em>(int value)</em><a href='#index-rl_005ftty_005fset_005fechoing' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set Readline&rsquo;s idea of whether or not it is echoing output to its output
+stream (<var>rl_outstream</var>). If <var>value</var> is 0, Readline does not display
+output to <var>rl_outstream</var>; any other value enables output. The initial
value is set when Readline initializes the terminal settings.
This function returns the previous value.
-</DL>
-</P><P>
-
-<A NAME="IDX334"></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
-<VAR>terminal_name</VAR> as the terminal type (e.g., <CODE>vt100</CODE>).
-If <VAR>terminal_name</VAR> is <CODE>NULL</CODE>, the value of the <CODE>TERM</CODE>
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freset_005fterminal"><span class="category">Function: </span><span><em>int</em> <strong>rl_reset_terminal</strong> <em>(const char *terminal_name)</em><a href='#index-rl_005freset_005fterminal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Reinitialize Readline&rsquo;s idea of the terminal settings using
+<var>terminal_name</var> as the terminal type (e.g., <code>vt100</code>).
+If <var>terminal_name</var> is <code>NULL</code>, the value of the <code>TERM</code>
environment variable is used.
-</DL>
-</P><P>
-
-<A NAME="Utility Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC39"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC40"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.10 Utility Functions </H3>
-<!--docid::SEC39::-->
-<P>
-
-<A NAME="IDX335"></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>.
-The contents of the <VAR>readline_state</VAR> structure are documented
-in <TT>`readline.h'</TT>.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Utility-Functions">
+<div class="header">
+<p>
+Next: <a href="#Miscellaneous-Functions" accesskey="n" rel="next">Miscellaneous Functions</a>, Previous: <a href="#Terminal-Management" accesskey="p" rel="prev">Terminal Management</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Utility-Functions-1"></span><h4 class="subsection">2.4.10 Utility Functions</h4>
+
+<dl class="def">
+<dt id="index-rl_005fsave_005fstate"><span class="category">Function: </span><span><em>int</em> <strong>rl_save_state</strong> <em>(struct readline_state *sp)</em><a href='#index-rl_005fsave_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Save a snapshot of Readline&rsquo;s internal state to <var>sp</var>.
+The contents of the <var>readline_state</var> structure are documented
+in <samp>readline.h</samp>.
The caller is responsible for allocating the structure.
-</DL>
-</P><P>
-
-<A NAME="IDX336"></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
-have been saved by a call to <CODE>rl_save_state</CODE>.
-The contents of the <VAR>readline_state</VAR> structure are documented
-in <TT>`readline.h'</TT>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005frestore_005fstate"><span class="category">Function: </span><span><em>int</em> <strong>rl_restore_state</strong> <em>(struct readline_state *sp)</em><a href='#index-rl_005frestore_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Restore Readline&rsquo;s internal state to that stored in <var>sp</var>, which must
+have been saved by a call to <code>rl_save_state</code>.
+The contents of the <var>readline_state</var> structure are documented
+in <samp>readline.h</samp>.
The caller is responsible for freeing the structure.
-</DL>
-</P><P>
-
-<A NAME="IDX337"></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
-allocated by <CODE>malloc</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX338"></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>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffree"><span class="category">Function: </span><span><em>void</em> <strong>rl_free</strong> <em>(void *mem)</em><a href='#index-rl_005ffree' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Deallocate the memory pointed to by <var>mem</var>. <var>mem</var> must have been
+allocated by <code>malloc</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freplace_005fline"><span class="category">Function: </span><span><em>void</em> <strong>rl_replace_line</strong> <em>(const char *text, int clear_undo)</em><a href='#index-rl_005freplace_005fline' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Replace the contents of <code>rl_line_buffer</code> with <var>text</var>.
The point and mark are preserved, if possible.
-If <VAR>clear_undo</VAR> is non-zero, the undo list associated with the
+If <var>clear_undo</var> is non-zero, the undo list associated with the
current line is cleared.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX339"></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>
+<dl class="def">
+<dt id="index-rl_005fextend_005fline_005fbuffer"><span class="category">Function: </span><span><em>void</em> <strong>rl_extend_line_buffer</strong> <em>(int len)</em><a href='#index-rl_005fextend_005fline_005fbuffer' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Ensure that <code>rl_line_buffer</code> has enough space to hold <var>len</var>
characters, possibly reallocating it if necessary.
-</DL>
-</P><P>
-
-<A NAME="IDX340"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_initialize</B> <I>(void)</I>
-<DD>Initialize or re-initialize Readline's internal state.
-It's not strictly necessary to call this; <CODE>readline()</CODE> calls it before
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finitialize"><span class="category">Function: </span><span><em>int</em> <strong>rl_initialize</strong> <em>(void)</em><a href='#index-rl_005finitialize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Initialize or re-initialize Readline&rsquo;s internal state.
+It&rsquo;s not strictly necessary to call this; <code>readline()</code> calls it before
reading any input.
-</DL>
-</P><P>
-
-<A NAME="IDX341"></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="IDX342"></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="IDX343"></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
-columnar format on Readline's output stream. <CODE>matches</CODE> is the list
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fding"><span class="category">Function: </span><span><em>int</em> <strong>rl_ding</strong> <em>(void)</em><a href='#index-rl_005fding' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Ring the terminal bell, obeying the setting of <code>bell-style</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005falphabetic"><span class="category">Function: </span><span><em>int</em> <strong>rl_alphabetic</strong> <em>(int c)</em><a href='#index-rl_005falphabetic' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return 1 if <var>c</var> is an alphabetic character.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdisplay_005fmatch_005flist"><span class="category">Function: </span><span><em>void</em> <strong>rl_display_match_list</strong> <em>(char **matches, int len, int max)</em><a href='#index-rl_005fdisplay_005fmatch_005flist' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A convenience function for displaying a list of strings in
+columnar format on Readline&rsquo;s output stream. <code>matches</code> is the list
of strings, in argv format, such as a list of completion matches.
-<CODE>len</CODE> is the number of strings in <CODE>matches</CODE>, and <CODE>max</CODE>
-is the length of the longest string in <CODE>matches</CODE>. This function uses
-the setting of <CODE>print-completions-horizontally</CODE> to select how the
-matches are displayed (see section <A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A>).
+<code>len</code> is the number of strings in <code>matches</code>, and <code>max</code>
+is the length of the longest string in <code>matches</code>. This function uses
+the setting of <code>print-completions-horizontally</code> to select how the
+matches are displayed (see <a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a>).
When displaying completions, this function 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.
-</DL>
-</P><P>
+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></dd></dl>
-The following are implemented as macros, defined in <CODE>chardefs.h</CODE>.
+<p>The following are implemented as macros, defined in <code>chardefs.h</code>.
Applications should refrain from using them.
-</P><P>
-
-<A NAME="IDX344"></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="IDX345"></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="IDX346"></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="IDX347"></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
+</p>
+<dl class="def">
+<dt id="index-_005frl_005fuppercase_005fp"><span class="category">Function: </span><span><em>int</em> <strong>_rl_uppercase_p</strong> <em>(int c)</em><a href='#index-_005frl_005fuppercase_005fp' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return 1 if <var>c</var> is an uppercase alphabetic character.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-_005frl_005flowercase_005fp"><span class="category">Function: </span><span><em>int</em> <strong>_rl_lowercase_p</strong> <em>(int c)</em><a href='#index-_005frl_005flowercase_005fp' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return 1 if <var>c</var> is a lowercase alphabetic character.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-_005frl_005fdigit_005fp"><span class="category">Function: </span><span><em>int</em> <strong>_rl_digit_p</strong> <em>(int c)</em><a href='#index-_005frl_005fdigit_005fp' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return 1 if <var>c</var> is a numeric character.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-_005frl_005fto_005fupper"><span class="category">Function: </span><span><em>int</em> <strong>_rl_to_upper</strong> <em>(int c)</em><a href='#index-_005frl_005fto_005fupper' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If <var>c</var> is a lowercase alphabetic character, return the corresponding
uppercase character.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX348"></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
+<dl class="def">
+<dt id="index-_005frl_005fto_005flower"><span class="category">Function: </span><span><em>int</em> <strong>_rl_to_lower</strong> <em>(int c)</em><a href='#index-_005frl_005fto_005flower' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If <var>c</var> is an uppercase alphabetic character, return the corresponding
lowercase character.
-</DL>
-</P><P>
-
-<A NAME="IDX349"></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.
-</DL>
-</P><P>
-
-<A NAME="Miscellaneous Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC40"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC39"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC41"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.11 Miscellaneous Functions </H3>
-<!--docid::SEC40::-->
-<P>
-
-<A NAME="IDX350"></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>.
-The binding is performed in <VAR>map</VAR>. When <VAR>keyseq</VAR> is invoked, the
-<VAR>macro</VAR> will be inserted into the line. This function is deprecated;
-use <CODE>rl_generic_bind()</CODE> instead.
-</DL>
-</P><P>
-
-<A NAME="IDX351"></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
-the current keymap, to <CODE>rl_outstream</CODE>.
-If <VAR>readable</VAR> is non-zero, the list is formatted in such a way
-that it can be made part of an <CODE>inputrc</CODE> file and re-read.
-</DL>
-</P><P>
-
-<A NAME="IDX352"></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>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-_005frl_005fdigit_005fvalue"><span class="category">Function: </span><span><em>int</em> <strong>_rl_digit_value</strong> <em>(int c)</em><a href='#index-_005frl_005fdigit_005fvalue' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If <var>c</var> is a number, return the value it represents.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Miscellaneous-Functions">
+<div class="header">
+<p>
+Next: <a href="#Alternate-Interface" accesskey="n" rel="next">Alternate Interface</a>, Previous: <a href="#Utility-Functions" accesskey="p" rel="prev">Utility Functions</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Miscellaneous-Functions-1"></span><h4 class="subsection">2.4.11 Miscellaneous Functions</h4>
+
+<dl class="def">
+<dt id="index-rl_005fmacro_005fbind"><span class="category">Function: </span><span><em>int</em> <strong>rl_macro_bind</strong> <em>(const char *keyseq, const char *macro, Keymap map)</em><a href='#index-rl_005fmacro_005fbind' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Bind the key sequence <var>keyseq</var> to invoke the macro <var>macro</var>.
+The binding is performed in <var>map</var>. When <var>keyseq</var> is invoked, the
+<var>macro</var> will be inserted into the line. This function is deprecated;
+use <code>rl_generic_bind()</code> instead.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fmacro_005fdumper"><span class="category">Function: </span><span><em>void</em> <strong>rl_macro_dumper</strong> <em>(int readable)</em><a href='#index-rl_005fmacro_005fdumper' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Print the key sequences bound to macros and their values, using
+the current keymap, to <code>rl_outstream</code>.
+If <var>readable</var> is non-zero, the list is formatted in such a way
+that it can be made part of an <code>inputrc</code> file and re-read.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fvariable_005fbind"><span class="category">Function: </span><span><em>int</em> <strong>rl_variable_bind</strong> <em>(const char *variable, const char *value)</em><a href='#index-rl_005fvariable_005fbind' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Make the Readline variable <var>variable</var> have <var>value</var>.
This behaves as if the readline command
-<SAMP>`set <VAR>variable</VAR> <VAR>value</VAR>'</SAMP> had been executed in an <CODE>inputrc</CODE>
-file (see section <A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX353"></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>.
-For boolean variables, this string is either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX354"></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
-to <CODE>rl_outstream</CODE>.
-If <VAR>readable</VAR> is non-zero, the list is formatted in such a way
-that it can be made part of an <CODE>inputrc</CODE> file and re-read.
-</DL>
-</P><P>
-
-<A NAME="IDX355"></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
-a balancing character when <CODE>blink-matching-paren</CODE> has been enabled.
-</DL>
-</P><P>
-
-<A NAME="IDX356"></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>.
+&lsquo;<samp>set <var>variable</var> <var>value</var></samp>&rsquo; had been executed in an <code>inputrc</code>
+file (see <a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fvariable_005fvalue"><span class="category">Function: </span><span><em>char *</em> <strong>rl_variable_value</strong> <em>(const char *variable)</em><a href='#index-rl_005fvariable_005fvalue' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a string representing the value of the Readline variable <var>variable</var>.
+For boolean variables, this string is either &lsquo;<samp>on</samp>&rsquo; or &lsquo;<samp>off</samp>&rsquo;.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fvariable_005fdumper"><span class="category">Function: </span><span><em>void</em> <strong>rl_variable_dumper</strong> <em>(int readable)</em><a href='#index-rl_005fvariable_005fdumper' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Print the readline variable names and their current values
+to <code>rl_outstream</code>.
+If <var>readable</var> is non-zero, the list is formatted in such a way
+that it can be made part of an <code>inputrc</code> file and re-read.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fparen_005fblink_005ftimeout"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_paren_blink_timeout</strong> <em>(int u)</em><a href='#index-rl_005fset_005fparen_005fblink_005ftimeout' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set the time interval (in microseconds) that Readline waits when showing
+a balancing character when <code>blink-matching-paren</code> has been enabled.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fget_005ftermcap"><span class="category">Function: </span><span><em>char *</em> <strong>rl_get_termcap</strong> <em>(const char *cap)</em><a href='#index-rl_005fget_005ftermcap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Retrieve the string value of the termcap capability <var>cap</var>.
Readline fetches the termcap entry for the current terminal name and
uses those capabilities to move around the screen line and perform other
terminal-specific operations, like erasing a line. Readline does not
-use all of a terminal's capabilities, and this function will return
+use all of a terminal&rsquo;s capabilities, and this function will return
values for only those capabilities Readline uses.
-</DL>
-</P><P>
-
-<A NAME="IDX357"></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
-as the History library's <CODE>clear_history()</CODE> function.
-This differs from <CODE>clear_history</CODE> because it frees private data
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fclear_005fhistory"><span class="category">Function: </span><span><em>void</em> <strong>rl_clear_history</strong> <em>(void)</em><a href='#index-rl_005fclear_005fhistory' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the history list by deleting all of the entries, in the same manner
+as the History library&rsquo;s <code>clear_history()</code> function.
+This differs from <code>clear_history</code> because it frees private data
Readline saves in the history list.
-</DL>
-</P><P>
-
-<A NAME="IDX358"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_activate_mark</B> <I>(void)</I>
-<DD>Enable an <EM>active</EM> mark.
-When this is enabled, the text between point and mark (the <VAR>region</VAR>) is
-displayed in the terminal's standout mode (a <VAR>face</VAR>).
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005factivate_005fmark"><span class="category">Function: </span><span><em>void</em> <strong>rl_activate_mark</strong> <em>(void)</em><a href='#index-rl_005factivate_005fmark' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Enable an <em>active</em> mark.
+When this is enabled, the text between point and mark (the <var>region</var>) is
+displayed in the terminal&rsquo;s standout mode (a <var>face</var>).
This is called by various readline functions that set the mark and insert
text, and is available for applications to call.
-</DL>
-</P><P>
-
-<A NAME="IDX359"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_deactivate_mark</B> <I>(void)</I>
-<DD>Turn off the active mark.
-</DL>
-</P><P>
-
-<A NAME="IDX360"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_keep_mark_active</B> <I>(void)</I>
-<DD>Indicate that the mark should remain active when the current readline function
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fdeactivate_005fmark"><span class="category">Function: </span><span><em>void</em> <strong>rl_deactivate_mark</strong> <em>(void)</em><a href='#index-rl_005fdeactivate_005fmark' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Turn off the active mark.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fkeep_005fmark_005factive"><span class="category">Function: </span><span><em>void</em> <strong>rl_keep_mark_active</strong> <em>(void)</em><a href='#index-rl_005fkeep_005fmark_005factive' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Indicate that the mark should remain active when the current readline function
completes and after redisplay occurs.
In most cases, the mark remains active for only the duration of a single
bindable readline function.
-</DL>
-</P><P>
-
-<A NAME="IDX361"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_mark_active_p</B> <I>(void)</I>
-<DD>Return a non-zero value if the mark is currently active; zero otherwise.
-</DL>
-</P><P>
-
-<A NAME="Alternate Interface"></A>
-<HR SIZE="6">
-<A NAME="SEC41"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC40"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC42"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.12 Alternate Interface </H3>
-<!--docid::SEC41::-->
-<P>
-
-An alternate interface is available to plain <CODE>readline()</CODE>. Some
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fmark_005factive_005fp"><span class="category">Function: </span><span><em>int</em> <strong>rl_mark_active_p</strong> <em>(void)</em><a href='#index-rl_005fmark_005factive_005fp' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return a non-zero value if the mark is currently active; zero otherwise.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Alternate-Interface">
+<div class="header">
+<p>
+Next: <a href="#A-Readline-Example" accesskey="n" rel="next">A Readline Example</a>, Previous: <a href="#Miscellaneous-Functions" accesskey="p" rel="prev">Miscellaneous Functions</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Alternate-Interface-1"></span><h4 class="subsection">2.4.12 Alternate Interface</h4>
+
+<p>An alternate interface is available to plain <code>readline()</code>. Some
applications need to interleave keyboard I/O with file, device, or
-window system I/O, typically by using a main loop to <CODE>select()</CODE>
+window system I/O, typically by using a main loop to <code>select()</code>
on various file descriptors. To accommodate this need, readline can
-also be invoked as a `callback' function from an event loop. There
+also be invoked as a &lsquo;callback&rsquo; function from an event loop. There
are functions available to make this easy.
-</P><P>
-
-<A NAME="IDX362"></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
-expanded value of <VAR>prompt</VAR>. Save the value of <VAR>lhandler</VAR> to
+</p>
+<dl class="def">
+<dt id="index-rl_005fcallback_005fhandler_005finstall"><span class="category">Function: </span><span><em>void</em> <strong>rl_callback_handler_install</strong> <em>(const char *prompt, rl_vcpfunc_t *lhandler)</em><a href='#index-rl_005fcallback_005fhandler_005finstall' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set up the terminal for readline I/O and display the initial
+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
+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="IDX363"></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
-should call <CODE>rl_callback_read_char()</CODE>, which will read the next
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcallback_005fread_005fchar"><span class="category">Function: </span><span><em>void</em> <strong>rl_callback_read_char</strong> <em>(void)</em><a href='#index-rl_005fcallback_005fread_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Whenever an application determines that keyboard input is available, it
+should call <code>rl_callback_read_char()</code>, which will read the next
character from the current input source.
-If that character completes the line, <CODE>rl_callback_read_char</CODE> will
-invoke the <VAR>lhandler</VAR> function installed by
-<CODE>rl_callback_handler_install</CODE> to process the line.
-Before calling the <VAR>lhandler</VAR> function, the terminal settings are
+If that character completes the line, <code>rl_callback_read_char</code> will
+invoke the <var>lhandler</var> function installed by
+<code>rl_callback_handler_install</code> to process the line.
+Before calling the <var>lhandler</var> function, the terminal settings are
reset to the values they had before calling
-<CODE>rl_callback_handler_install</CODE>.
-If the <VAR>lhandler</VAR> function returns,
+<code>rl_callback_handler_install</code>.
+If the <var>lhandler</var> function returns,
and the line handler remains installed,
-the terminal settings are modified for Readline's use again.
-<CODE>EOF</CODE> is indicated by calling <VAR>lhandler</VAR> with a
-<CODE>NULL</CODE> line.
-</DL>
-</P><P>
-
-<A NAME="IDX364"></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
+the terminal settings are modified for Readline&rsquo;s use again.
+<code>EOF</code> is indicated by calling <var>lhandler</var> with a
+<code>NULL</code> line.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcallback_005fsigcleanup"><span class="category">Function: </span><span><em>void</em> <strong>rl_callback_sigcleanup</strong> <em>(void)</em><a href='#index-rl_005fcallback_005fsigcleanup' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
+wish to perform their own signal handling; Readline&rsquo;s internal signal handler
calls this when appropriate.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX365"></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.
+<dl class="def">
+<dt id="index-rl_005fcallback_005fhandler_005fremove"><span class="category">Function: </span><span><em>void</em> <strong>rl_callback_handler_remove</strong> <em>(void)</em><a href='#index-rl_005fcallback_005fhandler_005fremove' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Restore the terminal to its initial state and remove the line handler.
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>
+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
+to by the value of <code>rl_deprep_term_function</code> should be called before
the program exits to reset the terminal settings.
-</DL>
-</P><P>
-
-<A NAME="A Readline Example"></A>
-<HR SIZE="6">
-<A NAME="SEC42"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC41"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.13 A Readline Example </H3>
-<!--docid::SEC42::-->
-<P>
-
-Here is a function which changes lowercase characters to their uppercase
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="A-Readline-Example">
+<div class="header">
+<p>
+Next: <a href="#Alternate-Interface-Example" accesskey="n" rel="next">Alternate Interface Example</a>, Previous: <a href="#Alternate-Interface" accesskey="p" rel="prev">Alternate Interface</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="A-Readline-Example-1"></span><h4 class="subsection">2.4.13 A Readline Example</h4>
+
+<p>Here is a function which changes lowercase characters to their uppercase
equivalents, and uppercase characters to lowercase. If
-this function was bound to <SAMP>`M-c'</SAMP>, then typing <SAMP>`M-c'</SAMP> would
-change the case of the character under point. Typing <SAMP>`M-1 0 M-c'</SAMP>
+this function was bound to &lsquo;<samp>M-c</samp>&rsquo;, then typing &lsquo;<samp>M-c</samp>&rsquo; would
+change the case of the character under point. Typing &lsquo;<samp>M-1 0 M-c</samp>&rsquo;
would change the case of the following 10 characters, leaving the cursor on
the last character changed.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/* Invert the case of the COUNT following characters. */
+</p>
+<div class="example">
+<pre class="example">/* Invert the case of the COUNT following characters. */
int
invert_case_line (count, key)
int count, key;
@@ -4565,10 +3808,10 @@ invert_case_line (count, key)
start = rl_point;
- if (rl_point &#62;= rl_end)
+ if (rl_point &gt;= rl_end)
return (0);
- if (count &#60; 0)
+ if (count &lt; 0)
{
direction = -1;
count = -count;
@@ -4580,15 +3823,15 @@ invert_case_line (count, key)
end = start + (count * direction);
/* Force it to be within range. */
- if (end &#62; rl_end)
+ if (end &gt; rl_end)
end = rl_end;
- else if (end &#60; 0)
+ else if (end &lt; 0)
end = 0;
if (start == end)
return (0);
- if (start &#62; end)
+ if (start &gt; end)
{
int temp = start;
start = end;
@@ -4610,56 +3853,47 @@ invert_case_line (count, key)
rl_point = (direction == 1) ? end - 1 : start;
return (0);
}
-</pre></td></tr></table></P><P>
-
-<A NAME="Alternate Interface Example"></A>
-<HR SIZE="6">
-<A NAME="SEC43"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC42"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.14 Alternate Interface Example </H3>
-<!--docid::SEC43::-->
-<P>
-
-Here is a complete program that illustrates Readline's alternate interface.
+</pre></div>
+
+<hr>
+</div>
+<div class="subsection" id="Alternate-Interface-Example">
+<div class="header">
+<p>
+Previous: <a href="#A-Readline-Example" accesskey="p" rel="prev">A Readline Example</a>, Up: <a href="#Readline-Convenience-Functions" accesskey="u" rel="up">Readline Convenience Functions</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Alternate-Interface-Example-1"></span><h4 class="subsection">2.4.14 Alternate Interface Example</h4>
+
+<p>Here is a complete program that illustrates Readline&rsquo;s alternate interface.
It reads lines from the terminal and displays them, providing the
standard history and TAB completion functions.
-It understands the EOF character or "exit" to exit the program.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/* Standard include files. stdio.h is required. */
-#include &#60;stdlib.h&#62;
-#include &#60;string.h&#62;
-#include &#60;unistd.h&#62;
-#include &#60;locale.h&#62;
+It understands the EOF character or &quot;exit&quot; to exit the program.
+</p>
+<div class="example">
+<pre class="example">/* Standard include files. stdio.h is required. */
+#include &lt;stdlib.h&gt;
+#include &lt;string.h&gt;
+#include &lt;unistd.h&gt;
+#include &lt;locale.h&gt;
/* Used for select(2) */
-#include &#60;sys/types.h&#62;
-#include &#60;sys/select.h&#62;
+#include &lt;sys/types.h&gt;
+#include &lt;sys/select.h&gt;
-#include &#60;signal.h&#62;
+#include &lt;signal.h&gt;
-#include &#60;stdio.h&#62;
+#include &lt;stdio.h&gt;
/* Standard readline include files. */
-#include &#60;readline/readline.h&#62;
-#include &#60;readline/history.h&#62;
+#include &lt;readline/readline.h&gt;
+#include &lt;readline/history.h&gt;
static void cb_linehandler (char *);
static void sighandler (int);
int running;
int sigwinch_received;
-const char *prompt = "rltest$ ";
+const char *prompt = &quot;rltest$ &quot;;
/* Handle SIGWINCH and window size changes when readline is not active and
reading a character. */
@@ -4676,11 +3910,11 @@ static void
cb_linehandler (char *line)
{
/* Can use ^D (stty eof) or `exit' to exit. */
- if (line == NULL || strcmp (line, "exit") == 0)
+ if (line == NULL || strcmp (line, &quot;exit&quot;) == 0)
{
if (line == 0)
- printf ("\n");
- printf ("exit\n");
+ printf (&quot;\n&quot;);
+ printf (&quot;exit\n&quot;);
/* This function needs to be called to reset the terminal settings,
and calling it from the line handler keeps one extra prompt from
being displayed. */
@@ -4692,7 +3926,7 @@ cb_linehandler (char *line)
{
if (*line)
add_history (line);
- printf ("input line: %s\n", line);
+ printf (&quot;input line: %s\n&quot;, line);
free (line);
}
}
@@ -4704,7 +3938,7 @@ main (int c, char **v)
int r;
/* Set the default locale values according to environment variables. */
- setlocale (LC_ALL, "");
+ setlocale (LC_ALL, &quot;&quot;);
/* Handle window size changes when readline is not active and reading
characters. */
@@ -4720,13 +3954,13 @@ main (int c, char **v)
running = 1;
while (running)
{
- FD_ZERO (&#38;fds);
- FD_SET (fileno (rl_instream), &#38;fds);
+ FD_ZERO (&amp;fds);
+ FD_SET (fileno (rl_instream), &amp;fds);
- r = select (FD_SETSIZE, &#38;fds, NULL, NULL, NULL);
- if (r &#60; 0 &#38;&#38; errno != EINTR)
+ r = select (FD_SETSIZE, &amp;fds, NULL, NULL, NULL);
+ if (r &lt; 0 &amp;&amp; errno != EINTR)
{
- perror ("rltest: select");
+ perror (&quot;rltest: select&quot;);
rl_callback_handler_remove ();
break;
}
@@ -4735,348 +3969,273 @@ main (int c, char **v)
rl_resize_terminal ();
sigwinch_received = 0;
}
- if (r &#60; 0)
+ if (r &lt; 0)
continue;
- if (FD_ISSET (fileno (rl_instream), &#38;fds))
+ if (FD_ISSET (fileno (rl_instream), &amp;fds))
rl_callback_read_char ();
}
- printf ("rltest: Event loop has exited\n");
+ printf (&quot;rltest: Event loop has exited\n&quot;);
return 0;
}
-</pre></td></tr></table></P><P>
-
-<A NAME="Readline Signal Handling"></A>
-<HR SIZE="6">
-<A NAME="SEC44"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.5 Readline Signal Handling </H2>
-<!--docid::SEC44::-->
-<P>
-
-Signals are asynchronous events sent to a process by the Unix kernel,
+</pre></div>
+
+<hr>
+</div>
+</div>
+<div class="section" id="Readline-Signal-Handling">
+<div class="header">
+<p>
+Next: <a href="#Custom-Completers" accesskey="n" rel="next">Custom Completers</a>, Previous: <a href="#Readline-Convenience-Functions" accesskey="p" rel="prev">Readline Convenience Functions</a>, Up: <a href="#Programming-with-GNU-Readline" accesskey="u" rel="up">Programming with GNU Readline</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Readline-Signal-Handling-1"></span><h3 class="section">2.5 Readline Signal Handling</h3>
+
+<p>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,
+exceptional events, like a user pressing the terminal&rsquo;s interrupt key,
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 received in order to
restore the terminal to a sane state, or provide application writers with
functions to do so manually.
-</P><P>
-
-Readline contains an internal signal handler that is installed for a
-number of signals (<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>,
-<CODE>SIGHUP</CODE>,
-<CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>, and <CODE>SIGTTOU</CODE>).
+</p>
+<p>Readline contains an internal signal handler that is installed for a
+number of signals (<code>SIGINT</code>, <code>SIGQUIT</code>, <code>SIGTERM</code>,
+<code>SIGHUP</code>,
+<code>SIGALRM</code>, <code>SIGTSTP</code>, <code>SIGTTIN</code>, and <code>SIGTTOU</code>).
When one of these signals is received, the signal handler
will reset the terminal attributes to those that were in effect before
-<CODE>readline()</CODE> was called, reset the signal handling to what it was
-before <CODE>readline()</CODE> was called, and resend the signal to the calling
+<code>readline()</code> was called, reset the signal handling to what it was
+before <code>readline()</code> was called, and resend the signal to the calling
application.
-If and when the calling application's signal handler returns, Readline
+If and when the calling application&rsquo;s signal handler returns, Readline
will reinitialize the terminal and continue to accept input.
-When a <CODE>SIGINT</CODE> is received, the Readline signal handler performs
+When a <code>SIGINT</code> is received, the Readline signal handler performs
some additional work, which will cause any partially-entered line to be
-aborted (see the description of <CODE>rl_free_line_state()</CODE> below).
-</P><P>
-
-There is an additional Readline signal handler, for <CODE>SIGWINCH</CODE>, which
-the kernel sends to a process whenever the terminal's size changes (for
-example, if a user resizes an <CODE>xterm</CODE>). The Readline <CODE>SIGWINCH</CODE>
-handler updates Readline's internal screen size information, and then calls
-any <CODE>SIGWINCH</CODE> signal handler the calling application has installed.
-Readline calls the application's <CODE>SIGWINCH</CODE> signal handler without
-resetting the terminal to its original state. If the application's signal
+aborted (see the description of <code>rl_free_line_state()</code> below).
+</p>
+<p>There is an additional Readline signal handler, for <code>SIGWINCH</code>, which
+the kernel sends to a process whenever the terminal&rsquo;s size changes (for
+example, if a user resizes an <code>xterm</code>). The Readline <code>SIGWINCH</code>
+handler updates Readline&rsquo;s internal screen size information, and then calls
+any <code>SIGWINCH</code> signal handler the calling application has installed.
+Readline calls the application&rsquo;s <code>SIGWINCH</code> signal handler without
+resetting the terminal to its original state. If the application&rsquo;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
+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.
-</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
+</p>
+<p>When an application is using the callback interface
+(see <a href="#Alternate-Interface">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&rsquo;s
state if they wish to handle the signal before the line handler completes
and restores the terminal state.
-</P><P>
-
-If an application using the callback interface wishes to have Readline
+</p>
+<p>If an application using the callback interface wishes to have Readline
install its signal handlers at the time the application calls
-<CODE>rl_callback_handler_install</CODE> and remove them only when a complete
+<code>rl_callback_handler_install</code> and remove them only when a complete
line of input has been read, it should set the
-<CODE>rl_persistent_signal_handlers</CODE> variable to a non-zero value.
+<code>rl_persistent_signal_handlers</code> variable to a non-zero value.
This allows an application to defer all of the handling of the signals
Readline catches to Readline.
Applications should use this variable with care; it can result in Readline
catching signals and not acting on them (or allowing the application to react
-to them) until the application calls <CODE>rl_callback_read_char</CODE>. This
+to them) until the application calls <code>rl_callback_read_char</code>. This
can result in an application becoming less responsive to keyboard signals
like SIGINT.
If an application does not want or need to perform any signal handling, or
-does not need to do any processing between calls to <CODE>rl_callback_read_char</CODE>,
+does not need to do any processing between calls to <code>rl_callback_read_char</code>,
setting this variable may be desirable.
-</P><P>
-
-Readline provides two variables that allow application writers to
+</p>
+<p>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 <CODE>readline()</CODE>, not in
-a signal handler, so Readline's internal signal state is not corrupted.
-</P><P>
-
-<A NAME="IDX366"></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
-<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>, <CODE>SIGHUP</CODE>, <CODE>SIGALRM</CODE>,
-<CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>, and <CODE>SIGTTOU</CODE>.
-</P><P>
-
-The default value of <CODE>rl_catch_signals</CODE> is 1.
-</DL>
-</P><P>
-
-<A NAME="IDX367"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_catch_sigwinch</B>
-<DD>If this variable is set to a non-zero value,
-Readline will install a signal handler for <CODE>SIGWINCH</CODE>.
-</P><P>
-
-The default value of <CODE>rl_catch_sigwinch</CODE> is 1.
-</DL>
-</P><P>
-
-<A NAME="IDX368"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_persistent_signal_handlers</B>
-<DD>If an application using the callback interface wishes Readline's signal
+values of these variables only when calling <code>readline()</code>, not in
+a signal handler, so Readline&rsquo;s internal signal state is not corrupted.
+</p>
+<dl class="def">
+<dt id="index-rl_005fcatch_005fsignals"><span class="category">Variable: </span><span><em>int</em> <strong>rl_catch_signals</strong><a href='#index-rl_005fcatch_005fsignals' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If this variable is non-zero, Readline will install signal handlers for
+<code>SIGINT</code>, <code>SIGQUIT</code>, <code>SIGTERM</code>, <code>SIGHUP</code>, <code>SIGALRM</code>,
+<code>SIGTSTP</code>, <code>SIGTTIN</code>, and <code>SIGTTOU</code>.
+</p>
+<p>The default value of <code>rl_catch_signals</code> is 1.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcatch_005fsigwinch"><span class="category">Variable: </span><span><em>int</em> <strong>rl_catch_sigwinch</strong><a href='#index-rl_005fcatch_005fsigwinch' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If this variable is set to a non-zero value,
+Readline will install a signal handler for <code>SIGWINCH</code>.
+</p>
+<p>The default value of <code>rl_catch_sigwinch</code> is 1.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fpersistent_005fsignal_005fhandlers"><span class="category">Variable: </span><span><em>int</em> <strong>rl_persistent_signal_handlers</strong><a href='#index-rl_005fpersistent_005fsignal_005fhandlers' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If an application using the callback interface wishes Readline&rsquo;s signal
handlers to be installed and active during the set of calls to
-<CODE>rl_callback_read_char</CODE> that constitutes an entire single line,
+<code>rl_callback_read_char</code> that constitutes an entire single line,
it should set this variable to a non-zero value.
-</P><P>
-
-The default value of <CODE>rl_persistent_signal_handlers</CODE> is 0.
-</DL>
-</P><P>
-
-<A NAME="IDX369"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_change_environment</B>
-<DD>If this variable is set to a non-zero value,
-and Readline is handling <CODE>SIGWINCH</CODE>, Readline will modify the
-<VAR>LINES</VAR> and <VAR>COLUMNS</VAR> environment variables upon receipt of a
-<CODE>SIGWINCH</CODE>
-</P><P>
-
-The default value of <CODE>rl_change_environment</CODE> is 1.
-</DL>
-</P><P>
-
-If an application does not wish to have Readline catch any signals, or
-to handle signals other than those Readline catches (<CODE>SIGHUP</CODE>,
+</p>
+<p>The default value of <code>rl_persistent_signal_handlers</code> is 0.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fchange_005fenvironment"><span class="category">Variable: </span><span><em>int</em> <strong>rl_change_environment</strong><a href='#index-rl_005fchange_005fenvironment' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If this variable is set to a non-zero value,
+and Readline is handling <code>SIGWINCH</code>, Readline will modify the
+<var>LINES</var> and <var>COLUMNS</var> environment variables upon receipt of a
+<code>SIGWINCH</code>
+</p>
+<p>The default value of <code>rl_change_environment</code> is 1.
+</p></dd></dl>
+
+<p>If an application does not wish to have Readline catch any signals, or
+to handle signals other than those Readline catches (<code>SIGHUP</code>,
for example),
Readline provides convenience functions to do the necessary terminal
and internal state cleanup upon receipt of a signal.
-</P><P>
-
-<A NAME="IDX370"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_pending_signal</B> <I>(void)</I>
-<DD>Return the signal number of the most recent signal Readline received but
+</p>
+<dl class="def">
+<dt id="index-rl_005fpending_005fsignal"><span class="category">Function: </span><span><em>int</em> <strong>rl_pending_signal</strong> <em>(void)</em><a href='#index-rl_005fpending_005fsignal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return the signal number of the most recent signal Readline received but
has not yet handled, or 0 if there is no pending signal.
-</DL>
-</P><P>
-
-<A NAME="IDX371"></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
-<CODE>readline()</CODE> was called, and remove the Readline signal handlers for
-all signals, depending on the values of <CODE>rl_catch_signals</CODE> and
-<CODE>rl_catch_sigwinch</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX372"></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
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcleanup_005fafter_005fsignal"><span class="category">Function: </span><span><em>void</em> <strong>rl_cleanup_after_signal</strong> <em>(void)</em><a href='#index-rl_005fcleanup_005fafter_005fsignal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This function will reset the state of the terminal to what it was before
+<code>readline()</code> was called, and remove the Readline signal handlers for
+all signals, depending on the values of <code>rl_catch_signals</code> and
+<code>rl_catch_sigwinch</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffree_005fline_005fstate"><span class="category">Function: </span><span><em>void</em> <strong>rl_free_line_state</strong> <em>(void)</em><a href='#index-rl_005ffree_005fline_005fstate' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>rl_cleanup_after_signal()</CODE>. The
-Readline signal handler for <CODE>SIGINT</CODE> calls this to abort the
+should be called before <code>rl_cleanup_after_signal()</code>. The
+Readline signal handler for <code>SIGINT</code> calls this to abort the
current input line.
-</DL>
-</P><P>
-
-<A NAME="IDX373"></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
-handlers, depending on the values of <CODE>rl_catch_signals</CODE> and
-<CODE>rl_catch_sigwinch</CODE>.
-</DL>
-</P><P>
-
-If an application wants to force Readline to handle any signals that
-have arrived while it has been executing, <CODE>rl_check_signals()</CODE>
-will call Readline's internal signal handler if there are any pending
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freset_005fafter_005fsignal"><span class="category">Function: </span><span><em>void</em> <strong>rl_reset_after_signal</strong> <em>(void)</em><a href='#index-rl_005freset_005fafter_005fsignal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This will reinitialize the terminal and reinstall any Readline signal
+handlers, depending on the values of <code>rl_catch_signals</code> and
+<code>rl_catch_sigwinch</code>.
+</p></dd></dl>
+
+<p>If an application wants to force Readline to handle any signals that
+have arrived while it has been executing, <code>rl_check_signals()</code>
+will call Readline&rsquo;s internal signal handler if there are any pending
signals. This is primarily intended for those applications that use
-a custom <CODE>rl_getc_function</CODE> (see section <A HREF="readline.html#SEC28">2.3 Readline Variables</A>) and wish
+a custom <code>rl_getc_function</code> (see <a href="#Readline-Variables">Readline Variables</a>) and wish
to handle signals received while waiting for input.
-</P><P>
-
-<A NAME="IDX374"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_check_signals</B> <I>(void)</I>
-<DD>If there are any pending signals, call Readline's internal signal handling
-functions to process them. <CODE>rl_pending_signal()</CODE> can be used independently
+</p>
+<dl class="def">
+<dt id="index-rl_005fcheck_005fsignals"><span class="category">Function: </span><span><em>void</em> <strong>rl_check_signals</strong> <em>(void)</em><a href='#index-rl_005fcheck_005fsignals' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If there are any pending signals, call Readline&rsquo;s internal signal handling
+functions to process them. <code>rl_pending_signal()</code> can be used independently
to determine whether or not there are any pending signals.
-</DL>
-</P><P>
+</p></dd></dl>
-If an application does not wish Readline to catch <CODE>SIGWINCH</CODE>, it may
-call <CODE>rl_resize_terminal()</CODE> or <CODE>rl_set_screen_size()</CODE> to force
+<p>If an application does not wish Readline to catch <code>SIGWINCH</code>, it may
+call <code>rl_resize_terminal()</code> or <code>rl_set_screen_size()</code> to force
Readline to update its idea of the terminal size when it receives
-a <CODE>SIGWINCH</CODE>.
-</P><P>
-
-<A NAME="IDX375"></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
+a <code>SIGWINCH</code>.
+</p>
+<dl class="def">
+<dt id="index-rl_005fecho_005fsignal_005fchar"><span class="category">Function: </span><span><em>void</em> <strong>rl_echo_signal_char</strong> <em>(int sig)</em><a href='#index-rl_005fecho_005fsignal_005fchar' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If an application wishes to install its own signal handlers, but still
have readline display characters that generate signals, calling this
-function with <VAR>sig</VAR> set to <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, or
-<CODE>SIGTSTP</CODE> will display the character generating that signal.
-</DL>
-</P><P>
-
-<A NAME="IDX376"></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="IDX377"></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
-<VAR>cols</VAR> columns. If either <VAR>rows</VAR> or <VAR>columns</VAR> is less than
-or equal to 0, Readline's idea of that terminal dimension is unchanged.
+function with <var>sig</var> set to <code>SIGINT</code>, <code>SIGQUIT</code>, or
+<code>SIGTSTP</code> will display the character generating that signal.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fresize_005fterminal"><span class="category">Function: </span><span><em>void</em> <strong>rl_resize_terminal</strong> <em>(void)</em><a href='#index-rl_005fresize_005fterminal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Update Readline&rsquo;s internal screen size by reading values from the kernel.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fset_005fscreen_005fsize"><span class="category">Function: </span><span><em>void</em> <strong>rl_set_screen_size</strong> <em>(int rows, int cols)</em><a href='#index-rl_005fset_005fscreen_005fsize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set Readline&rsquo;s idea of the terminal size to <var>rows</var> rows and
+<var>cols</var> columns. If either <var>rows</var> or <var>columns</var> is less than
+or equal to 0, Readline&rsquo;s idea of that terminal dimension is unchanged.
This is intended to tell Readline the physical dimensions of the terminal,
and is used internally to calculate the maximum number of characters that
may appear on a single line and on the screen.
-</DL>
-</P><P>
+</p></dd></dl>
-If an application does not want to install a <CODE>SIGWINCH</CODE> handler, but
-is still interested in the screen dimensions, it may query Readline's idea
+<p>If an application does not want to install a <code>SIGWINCH</code> handler, but
+is still interested in the screen dimensions, it may query Readline&rsquo;s idea
of the screen size.
-</P><P>
-
-<A NAME="IDX378"></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
+</p>
+<dl class="def">
+<dt id="index-rl_005fget_005fscreen_005fsize"><span class="category">Function: </span><span><em>void</em> <strong>rl_get_screen_size</strong> <em>(int *rows, int *cols)</em><a href='#index-rl_005fget_005fscreen_005fsize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Return Readline&rsquo;s idea of the terminal&rsquo;s size in the
variables pointed to by the arguments.
-</DL>
-</P><P>
-
-<A NAME="IDX379"></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.
-</DL>
-</P><P>
-
-The following functions install and remove Readline's signal handlers.
-</P><P>
-
-<A NAME="IDX380"></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>,
-<CODE>SIGTERM</CODE>, <CODE>SIGHUP</CODE>, <CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>,
-<CODE>SIGTTOU</CODE>, and <CODE>SIGWINCH</CODE>, depending on the values of
-<CODE>rl_catch_signals</CODE> and <CODE>rl_catch_sigwinch</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX381"></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
-<CODE>rl_set_signals()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="Custom Completers"></A>
-<HR SIZE="6">
-<A NAME="SEC45"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.6 Custom Completers </H2>
-<!--docid::SEC45::-->
-<P>
-
-Typically, a program that reads commands from the user has a way of
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005freset_005fscreen_005fsize"><span class="category">Function: </span><span><em>void</em> <strong>rl_reset_screen_size</strong> <em>(void)</em><a href='#index-rl_005freset_005fscreen_005fsize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Cause Readline to reobtain the screen size and recalculate its dimensions.
+</p></dd></dl>
+
+<p>The following functions install and remove Readline&rsquo;s signal handlers.
+</p>
+<dl class="def">
+<dt id="index-rl_005fset_005fsignals"><span class="category">Function: </span><span><em>int</em> <strong>rl_set_signals</strong> <em>(void)</em><a href='#index-rl_005fset_005fsignals' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Install Readline&rsquo;s signal handler for <code>SIGINT</code>, <code>SIGQUIT</code>,
+<code>SIGTERM</code>, <code>SIGHUP</code>, <code>SIGALRM</code>, <code>SIGTSTP</code>, <code>SIGTTIN</code>,
+<code>SIGTTOU</code>, and <code>SIGWINCH</code>, depending on the values of
+<code>rl_catch_signals</code> and <code>rl_catch_sigwinch</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fclear_005fsignals"><span class="category">Function: </span><span><em>int</em> <strong>rl_clear_signals</strong> <em>(void)</em><a href='#index-rl_005fclear_005fsignals' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Remove all of the Readline signal handlers installed by
+<code>rl_set_signals()</code>.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="section" id="Custom-Completers">
+<div class="header">
+<p>
+Previous: <a href="#Readline-Signal-Handling" accesskey="p" rel="prev">Readline Signal Handling</a>, Up: <a href="#Programming-with-GNU-Readline" accesskey="u" rel="up">Programming with GNU Readline</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Custom-Completers-1"></span><h3 class="section">2.6 Custom Completers</h3>
+<span id="index-application_002dspecific-completion-functions"></span>
+
+<p>Typically, a program that reads commands from the user has a way of
disambiguating commands and data. If your program is one of these, then
it can provide completion for commands, data, or both.
The following sections describe how your program and Readline
cooperate to provide this service.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The logic used to do completion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions provided by Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables which control completion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC49">2.6.4 A Short Completion Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example of writing completer subroutines.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="How Completing Works"></A>
-<HR SIZE="6">
-<A NAME="SEC46"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.1 How Completing Works </H3>
-<!--docid::SEC46::-->
-<P>
-
-In order to complete some text, the full list of possible completions
+</p>
+
+<ul class="section-toc">
+<li><a href="#How-Completing-Works" accesskey="1">How Completing Works</a></li>
+<li><a href="#Completion-Functions" accesskey="2">Completion Functions</a></li>
+<li><a href="#Completion-Variables" accesskey="3">Completion Variables</a></li>
+<li><a href="#A-Short-Completion-Example" accesskey="4">A Short Completion Example</a></li>
+</ul>
+<hr>
+<div class="subsection" id="How-Completing-Works">
+<div class="header">
+<p>
+Next: <a href="#Completion-Functions" accesskey="n" rel="next">Completion Functions</a>, Up: <a href="#Custom-Completers" accesskey="u" rel="up">Custom Completers</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="How-Completing-Works-1"></span><h4 class="subsection">2.6.1 How Completing Works</h4>
+
+<p>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
@@ -5084,296 +4243,234 @@ the user interface to 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.
-</P><P>
-
-There are three major functions used to perform completion:
-</P><P>
-
-<OL>
-<LI>
-The user-interface function <CODE>rl_complete()</CODE>. This function is
+</p>
+<p>There are three major functions used to perform completion:
+</p>
+<ol>
+<li> The user-interface function <code>rl_complete()</code>. This function is
called with the same arguments as other bindable Readline functions:
-<VAR>count</VAR> and <VAR>invoking_key</VAR>.
+<var>count</var> and <var>invoking_key</var>.
It isolates the word to be completed and calls
-<CODE>rl_completion_matches()</CODE> to generate a list of possible completions.
+<code>rl_completion_matches()</code> 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.
-<P>
-<LI>
-The internal function <CODE>rl_completion_matches()</CODE> uses an
-application-supplied <EM>generator</EM> function to generate the list of
+</li><li> The internal function <code>rl_completion_matches()</code> uses an
+application-supplied <em>generator</em> 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
-<CODE>rl_completion_entry_function</CODE>.
-<P>
-
-<LI>
-The generator function is called repeatedly from
-<CODE>rl_completion_matches()</CODE>, returning a string each time. The
-arguments to the generator function are <VAR>text</VAR> and <VAR>state</VAR>.
-<VAR>text</VAR> is the partial word to be completed. <VAR>state</VAR> is zero the
+<code>rl_completion_entry_function</code>.
+
+</li><li> The generator function is called repeatedly from
+<code>rl_completion_matches()</code>, returning a string each time. The
+arguments to the generator function are <var>text</var> and <var>state</var>.
+<var>text</var> is the partial word to be completed. <var>state</var> 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
-<CODE>(char *)NULL</CODE> to inform <CODE>rl_completion_matches()</CODE> that there are
+<code>(char *)NULL</code> to inform <code>rl_completion_matches()</code> that there are
no more possibilities left. Usually the generator function computes the
-list of possible completions when <VAR>state</VAR> is zero, and returns them
+list of possible completions when <var>state</var> 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 <CODE>malloc()</CODE>; Readline
+returns as a match must be allocated with <code>malloc()</code>; Readline
frees the strings when it has finished with them.
Such a generator function is referred to as an
-<EM>application-specific completion function</EM>.
-<P>
+<em>application-specific completion function</em>.
-</OL>
-<P>
+</li></ol>
-<A NAME="IDX382"></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
+<dl class="def">
+<dt id="index-rl_005fcomplete"><span class="category">Function: </span><span><em>int</em> <strong>rl_complete</strong> <em>(int ignore, int invoking_key)</em><a href='#index-rl_005fcomplete' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Complete the word at or before point. You have supplied the function
that does the initial simple matching selection algorithm (see
-<CODE>rl_completion_matches()</CODE>). The default is to do filename completion.
-</DL>
-</P><P>
-
-<A NAME="IDX383"></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
-<CODE>rl_completion_matches()</CODE>.
-If the value of <CODE>rl_completion_entry_function</CODE> is
-<CODE>NULL</CODE> then the default filename generator
-function, <CODE>rl_filename_completion_function()</CODE>, is used.
-An <EM>application-specific completion function</EM> is a function whose
-address is assigned to <CODE>rl_completion_entry_function</CODE> and whose
+<code>rl_completion_matches()</code>). The default is to do filename completion.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fentry_005ffunction"><span class="category">Variable: </span><span><em>rl_compentry_func_t *</em> <strong>rl_completion_entry_function</strong><a href='#index-rl_005fcompletion_005fentry_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This is a pointer to the generator function for
+<code>rl_completion_matches()</code>.
+If the value of <code>rl_completion_entry_function</code> is
+<code>NULL</code> then the default filename generator
+function, <code>rl_filename_completion_function()</code>, is used.
+An <em>application-specific completion function</em> is a function whose
+address is assigned to <code>rl_completion_entry_function</code> and whose
return values are used to generate possible completions.
-</DL>
-</P><P>
-
-<A NAME="Completion Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC47"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.2 Completion Functions </H3>
-<!--docid::SEC47::-->
-<P>
-
-Here is the complete list of callable completion functions present in
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Completion-Functions">
+<div class="header">
+<p>
+Next: <a href="#Completion-Variables" accesskey="n" rel="next">Completion Variables</a>, Previous: <a href="#How-Completing-Works" accesskey="p" rel="prev">How Completing Works</a>, Up: <a href="#Custom-Completers" accesskey="u" rel="up">Custom Completers</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Completion-Functions-1"></span><h4 class="subsection">2.6.2 Completion Functions</h4>
+
+<p>Here is the complete list of callable completion functions present in
Readline.
-</P><P>
-
-<A NAME="IDX384"></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
-with the completion. A value of <SAMP>`?'</SAMP> means list the possible
-completions. <SAMP>`TAB'</SAMP> means do standard completion. <SAMP>`*'</SAMP> means
-insert all of the possible completions. <SAMP>`!'</SAMP> means to display
+</p>
+<dl class="def">
+<dt id="index-rl_005fcomplete_005finternal"><span class="category">Function: </span><span><em>int</em> <strong>rl_complete_internal</strong> <em>(int what_to_do)</em><a href='#index-rl_005fcomplete_005finternal' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Complete the word at or before point. <var>what_to_do</var> says what to do
+with the completion. A value of &lsquo;<samp>?</samp>&rsquo; means list the possible
+completions. &lsquo;<samp>TAB</samp>&rsquo; means do standard completion. &lsquo;<samp>*</samp>&rsquo; means
+insert all of the possible completions. &lsquo;<samp>!</samp>&rsquo; means to display
all of the possible completions, if there is more than one, as well as
-performing partial completion. <SAMP>`@'</SAMP> is similar to <SAMP>`!'</SAMP>, but
+performing partial completion. &lsquo;<samp>@</samp>&rsquo; is similar to &lsquo;<samp>!</samp>&rsquo;, but
possible completions are not listed if the possible completions share
a common prefix.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX385"></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
+<dl class="def">
+<dt id="index-rl_005fcomplete-1"><span class="category">Function: </span><span><em>int</em> <strong>rl_complete</strong> <em>(int ignore, int invoking_key)</em><a href='#index-rl_005fcomplete-1' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Complete the word at or before point. You have supplied the function
that does the initial simple matching selection algorithm (see
-<CODE>rl_completion_matches()</CODE> and <CODE>rl_completion_entry_function</CODE>).
+<code>rl_completion_matches()</code> and <code>rl_completion_entry_function</code>).
The default is to do filename
-completion. This calls <CODE>rl_complete_internal()</CODE> with an
-argument depending on <VAR>invoking_key</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX386"></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
-()</CODE>. This calls <CODE>rl_complete_internal()</CODE> with an argument of
-<SAMP>`?'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX387"></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
-partially-completed word. See description of <CODE>rl_complete()</CODE>.
-This calls <CODE>rl_complete_internal()</CODE> with an argument of <SAMP>`*'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX388"></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>
-depending on whether <VAR>cfunc</VAR> was called twice in succession and
-the values of the <CODE>show-all-if-ambiguous</CODE> and
-<CODE>show-all-if-unmodified</CODE> variables.
+completion. This calls <code>rl_complete_internal()</code> with an
+argument depending on <var>invoking_key</var>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fpossible_005fcompletions"><span class="category">Function: </span><span><em>int</em> <strong>rl_possible_completions</strong> <em>(int count, int invoking_key)</em><a href='#index-rl_005fpossible_005fcompletions' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>List the possible completions. See description of <code>rl_complete
+()</code>. This calls <code>rl_complete_internal()</code> with an argument of
+&lsquo;<samp>?</samp>&rsquo;.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finsert_005fcompletions"><span class="category">Function: </span><span><em>int</em> <strong>rl_insert_completions</strong> <em>(int count, int invoking_key)</em><a href='#index-rl_005finsert_005fcompletions' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert the list of possible completions into the line, deleting the
+partially-completed word. See description of <code>rl_complete()</code>.
+This calls <code>rl_complete_internal()</code> with an argument of &lsquo;<samp>*</samp>&rsquo;.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fmode"><span class="category">Function: </span><span><em>int</em> <strong>rl_completion_mode</strong> <em>(rl_command_func_t *cfunc)</em><a href='#index-rl_005fcompletion_005fmode' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns the appropriate value to pass to <code>rl_complete_internal()</code>
+depending on whether <var>cfunc</var> was called twice in succession and
+the values of the <code>show-all-if-ambiguous</code> and
+<code>show-all-if-unmodified</code> variables.
Application-specific completion functions may use this function to present
-the same interface as <CODE>rl_complete()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX389"></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
-<VAR>text</VAR>. If there are no completions, returns <CODE>NULL</CODE>.
-The first entry in the returned array is the substitution for <VAR>text</VAR>.
+the same interface as <code>rl_complete()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fmatches"><span class="category">Function: </span><span><em>char **</em> <strong>rl_completion_matches</strong> <em>(const char *text, rl_compentry_func_t *entry_func)</em><a href='#index-rl_005fcompletion_005fmatches' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Returns an array of strings which is a list of completions for
+<var>text</var>. If there are no completions, returns <code>NULL</code>.
+The first entry in the returned array is the substitution for <var>text</var>.
The remaining entries are the possible completions. The array is
-terminated with a <CODE>NULL</CODE> pointer.
-</P><P>
-
-<VAR>entry_func</VAR> is a function of two args, and returns a
-<CODE>char *</CODE>. The first argument is <VAR>text</VAR>. The second is a
+terminated with a <code>NULL</code> pointer.
+</p>
+<p><var>entry_func</var> is a function of two args, and returns a
+<code>char *</code>. The first argument is <var>text</var>. The second is a
state argument; it is zero on the first call, and non-zero on subsequent
-calls. <VAR>entry_func</VAR> returns a <CODE>NULL</CODE> pointer to the caller
+calls. <var>entry_func</var> returns a <code>NULL</code> pointer to the caller
when there are no more matches.
-</DL>
-</P><P>
-
-<A NAME="IDX390"></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.
-<VAR>text</VAR> is a partial filename.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffilename_005fcompletion_005ffunction"><span class="category">Function: </span><span><em>char *</em> <strong>rl_filename_completion_function</strong> <em>(const char *text, int state)</em><a href='#index-rl_005ffilename_005fcompletion_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A generator function for filename completion in the general case.
+<var>text</var> is a partial filename.
The Bash source is a useful reference for writing application-specific
completion functions (the Bash completion functions call this and other
Readline functions).
-</DL>
-</P><P>
-
-<A NAME="IDX391"></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
-username preceded by a random character (usually <SAMP>`~'</SAMP>). As with all
-completion generators, <VAR>state</VAR> is zero on the first call and non-zero
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fusername_005fcompletion_005ffunction"><span class="category">Function: </span><span><em>char *</em> <strong>rl_username_completion_function</strong> <em>(const char *text, int state)</em><a href='#index-rl_005fusername_005fcompletion_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A completion generator for usernames. <var>text</var> contains a partial
+username preceded by a random character (usually &lsquo;<samp>~</samp>&rsquo;). As with all
+completion generators, <var>state</var> is zero on the first call and non-zero
for subsequent calls.
-</DL>
-</P><P>
-
-<A NAME="Completion Variables"></A>
-<HR SIZE="6">
-<A NAME="SEC48"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.3 Completion Variables </H3>
-<!--docid::SEC48::-->
-<P>
-
-<A NAME="IDX392"></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>.
-<CODE>NULL</CODE> means to use <CODE>rl_filename_completion_function()</CODE>,
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="Completion-Variables">
+<div class="header">
+<p>
+Next: <a href="#A-Short-Completion-Example" accesskey="n" rel="next">A Short Completion Example</a>, Previous: <a href="#Completion-Functions" accesskey="p" rel="prev">Completion Functions</a>, Up: <a href="#Custom-Completers" accesskey="u" rel="up">Custom Completers</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Completion-Variables-1"></span><h4 class="subsection">2.6.3 Completion Variables</h4>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fentry_005ffunction-1"><span class="category">Variable: </span><span><em>rl_compentry_func_t *</em> <strong>rl_completion_entry_function</strong><a href='#index-rl_005fcompletion_005fentry_005ffunction-1' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A pointer to the generator function for <code>rl_completion_matches()</code>.
+<code>NULL</code> means to use <code>rl_filename_completion_function()</code>,
the default filename completer.
-</DL>
-</P><P>
-
-<A NAME="IDX393"></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.
-The function is called with <VAR>text</VAR>, <VAR>start</VAR>, and <VAR>end</VAR>.
-<VAR>start</VAR> and <VAR>end</VAR> are indices in <CODE>rl_line_buffer</CODE> defining
-the boundaries of <VAR>text</VAR>, which is a character string.
-If this function exists and returns <CODE>NULL</CODE>, or if this variable is
-set to <CODE>NULL</CODE>, then <CODE>rl_complete()</CODE> will call the value of
-<CODE>rl_completion_entry_function</CODE> to generate matches, otherwise the
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fattempted_005fcompletion_005ffunction"><span class="category">Variable: </span><span><em>rl_completion_func_t *</em> <strong>rl_attempted_completion_function</strong><a href='#index-rl_005fattempted_005fcompletion_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A pointer to an alternative function to create matches.
+The function is called with <var>text</var>, <var>start</var>, and <var>end</var>.
+<var>start</var> and <var>end</var> are indices in <code>rl_line_buffer</code> defining
+the boundaries of <var>text</var>, which is a character string.
+If this function exists and returns <code>NULL</code>, or if this variable is
+set to <code>NULL</code>, then <code>rl_complete()</code> will call the value of
+<code>rl_completion_entry_function</code> to generate matches, otherwise the
array of strings returned will be used.
-If this function sets the <CODE>rl_attempted_completion_over</CODE>
+If this function sets the <code>rl_attempted_completion_over</code>
variable to a non-zero value, Readline will not perform its default
completion even if this function returns no matches.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX394"></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
+<dl class="def">
+<dt id="index-rl_005ffilename_005fquoting_005ffunction"><span class="category">Variable: </span><span><em>rl_quote_func_t *</em> <strong>rl_filename_quoting_function</strong><a href='#index-rl_005ffilename_005fquoting_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>rl_filename_quote_characters</CODE>
+attempted and one of the characters in <code>rl_filename_quote_characters</code>
appears in a completed filename. The function is called with
-<VAR>text</VAR>, <VAR>match_type</VAR>, and <VAR>quote_pointer</VAR>. The <VAR>text</VAR>
-is the filename to be quoted. The <VAR>match_type</VAR> is either
-<CODE>SINGLE_MATCH</CODE>, if there is only one completion match, or
-<CODE>MULT_MATCH</CODE>. Some functions use this to decide whether or not to
-insert a closing quote character. The <VAR>quote_pointer</VAR> is a pointer
+<var>text</var>, <var>match_type</var>, and <var>quote_pointer</var>. The <var>text</var>
+is the filename to be quoted. The <var>match_type</var> is either
+<code>SINGLE_MATCH</code>, if there is only one completion match, or
+<code>MULT_MATCH</code>. Some functions use this to decide whether or not to
+insert a closing quote character. The <var>quote_pointer</var> is a pointer
to any opening quote character the user typed. Some functions choose
to reset this character.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX395"></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
+<dl class="def">
+<dt id="index-rl_005ffilename_005fdequoting_005ffunction"><span class="category">Variable: </span><span><em>rl_dequote_func_t *</em> <strong>rl_filename_dequoting_function</strong><a href='#index-rl_005ffilename_005fdequoting_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <VAR>text</VAR>, the text of the word
-to be dequoted, and <VAR>quote_char</VAR>, which is the quoting character
-that delimits the filename (usually <SAMP>`''</SAMP> or <SAMP>`"'</SAMP>). If
-<VAR>quote_char</VAR> is zero, the filename was not in an embedded string.
-</DL>
-</P><P>
-
-<A NAME="IDX396"></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
+the filesystem. It is called with <var>text</var>, the text of the word
+to be dequoted, and <var>quote_char</var>, which is the quoting character
+that delimits the filename (usually &lsquo;<samp>'</samp>&rsquo; or &lsquo;<samp>&quot;</samp>&rsquo;). If
+<var>quote_char</var> is zero, the filename was not in an embedded string.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fchar_005fis_005fquoted_005fp"><span class="category">Variable: </span><span><em>rl_linebuf_func_t *</em> <strong>rl_char_is_quoted_p</strong><a href='#index-rl_005fchar_005fis_005fquoted_005fp' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A pointer to a function to call that determines whether or not a specific
character in the line buffer is quoted, according to whatever quoting
mechanism the program calling Readline uses. The function is called with
-two arguments: <VAR>text</VAR>, the text of the line, and <VAR>index</VAR>, the
+two arguments: <var>text</var>, the text of the line, and <var>index</var>, the
index of the character in the line. It is used to decide whether a
-character found in <CODE>rl_completer_word_break_characters</CODE> should be
+character found in <code>rl_completer_word_break_characters</code> should be
used to break words for the completer.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX397"></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
+<dl class="def">
+<dt id="index-rl_005fignore_005fsome_005fcompletions_005ffunction"><span class="category">Variable: </span><span><em>rl_compignore_func_t *</em> <strong>rl_ignore_some_completions_function</strong><a href='#index-rl_005fignore_005fsome_005fcompletions_005ffunction' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>NULL</CODE> terminated array of matches.
-The first element (<CODE>matches[0]</CODE>) is the
+It is passed a <code>NULL</code> terminated array of matches.
+The first element (<code>matches[0]</code>) 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.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX398"></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
+<dl class="def">
+<dt id="index-rl_005fdirectory_005fcompletion_005fhook"><span class="category">Variable: </span><span><em>rl_icppfunc_t *</em> <strong>rl_directory_completion_hook</strong><a href='#index-rl_005fdirectory_005fcompletion_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
@@ -5384,384 +4481,320 @@ 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 <CODE>opendir()</CODE>.
-</P><P>
-
-The directory completion hook returns an integer that should be non-zero if
+be passed directly to <code>opendir()</code>.
+</p>
+<p>The directory completion hook returns an integer that should be non-zero if
the function modifies its directory argument.
The function should not modify the directory argument if it returns 0.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX399"></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
+<dl class="def">
+<dt id="index-rl_005fdirectory_005frewrite_005fhook_003b"><span class="category">Variable: </span><span><em>rl_icppfunc_t *</em> <strong>rl_directory_rewrite_hook;</strong><a href='#index-rl_005fdirectory_005frewrite_005fhook_003b' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>rl_directory_completion_hook</CODE>,
-it only modifies the directory name used in <CODE>opendir</CODE>, not what is
+to be modified as an argument. Unlike <code>rl_directory_completion_hook</code>,
+it only modifies the directory name used in <code>opendir</code>, 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 <CODE>opendir()</CODE>.
-</P><P>
-
-The directory rewrite hook returns an integer that should be non-zero if
+be passed directly to <code>opendir()</code>.
+</p>
+<p>The directory rewrite hook returns an integer that should be non-zero if
the function modifies its directory argument.
The function should not modify the directory argument if it returns 0.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX400"></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
+<dl class="def">
+<dt id="index-rl_005ffilename_005fstat_005fhook"><span class="category">Variable: </span><span><em>rl_icppfunc_t *</em> <strong>rl_filename_stat_hook</strong><a href='#index-rl_005ffilename_005fstat_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>stat()</CODE> to determine the file's type and characteristics.
+is passed to <code>stat()</code> to determine the file&rsquo;s type and characteristics.
This function does not need to remove quote characters from the filename.
-</P><P>
-
-The stat hook returns an integer that should be non-zero if
+</p>
+<p>The stat hook returns an integer that should be non-zero if
the function modifies its directory argument.
The function should not modify the directory argument if it returns 0.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX401"></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
+<dl class="def">
+<dt id="index-rl_005ffilename_005frewrite_005fhook"><span class="category">Variable: </span><span><em>rl_dequote_func_t *</em> <strong>rl_filename_rewrite_hook</strong><a href='#index-rl_005ffilename_005frewrite_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, this is the address of a function called when reading
directory entries from the filesystem for completion and comparing
them to the partial word to be completed. The function should
perform any necessary application or system-specific conversion on
the filename, such as converting between character sets or converting
from a filesystem format to a character input format.
-The function takes two arguments: <VAR>fname</VAR>, the filename to be converted,
-and <VAR>fnlen</VAR>, its length in bytes.
+The function takes two arguments: <var>fname</var>, the filename to be converted,
+and <var>fnlen</var>, its length in bytes.
It must either return its first argument (if no conversion takes place)
or the converted filename in newly-allocated memory. The converted
form is used to compare against the word to be completed, and, if it
matches, is added to the list of matches. Readline will free the
allocated string.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX402"></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
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fdisplay_005fmatches_005fhook"><span class="category">Variable: </span><span><em>rl_compdisp_func_t *</em> <strong>rl_completion_display_matches_hook</strong><a href='#index-rl_005fcompletion_005fdisplay_005fmatches_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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:
-(<CODE>char **</CODE><VAR>matches</VAR>, <CODE>int</CODE> <VAR>num_matches</VAR>, <CODE>int</CODE> <VAR>max_length</VAR>)
-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.
+(<code>char **</code><var>matches</var>, <code>int</code> <var>num_matches</var>, <code>int</code> <var>max_length</var>)
+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&rsquo;s output stream.
You may call that function from this hook.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX403"></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
+<dl class="def">
+<dt id="index-rl_005fbasic_005fword_005fbreak_005fcharacters"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_basic_word_break_characters</strong><a href='#index-rl_005fbasic_005fword_005fbreak_005fcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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:
-<CODE>" \t\n\"\\'`@$>&#60;=;|&#38;{("</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX404"></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="IDX405"></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
-<CODE>rl_complete_internal()</CODE>. The default list is the value of
-<CODE>rl_basic_word_break_characters</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX406"></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
+<code>&quot; \t\n\&quot;\\'`@$&gt;&lt;=;|&amp;{(&quot;</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fbasic_005fquote_005fcharacters"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_basic_quote_characters</strong><a href='#index-rl_005fbasic_005fquote_005fcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A list of quote characters which can cause a word break.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompleter_005fword_005fbreak_005fcharacters"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_completer_word_break_characters</strong><a href='#index-rl_005fcompleter_005fword_005fbreak_005fcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The list of characters that signal a break between words for
+<code>rl_complete_internal()</code>. The default list is the value of
+<code>rl_basic_word_break_characters</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fword_005fbreak_005fhook"><span class="category">Variable: </span><span><em>rl_cpvfunc_t *</em> <strong>rl_completion_word_break_hook</strong><a href='#index-rl_005fcompletion_005fword_005fbreak_005fhook' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 <CODE>rl_completer_word_break_characters</CODE> to be
+a character string like <code>rl_completer_word_break_characters</code> to be
used to perform the current completion. The function may choose to set
-<CODE>rl_completer_word_break_characters</CODE> itself. If the function
-returns <CODE>NULL</CODE>, <CODE>rl_completer_word_break_characters</CODE> is used.
-</DL>
-</P><P>
-
-<A NAME="IDX407"></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.
+<code>rl_completer_word_break_characters</code> itself. If the function
+returns <code>NULL</code>, <code>rl_completer_word_break_characters</code> is used.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompleter_005fquote_005fcharacters"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_completer_quote_characters</strong><a href='#index-rl_005fcompleter_005fquote_005fcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>rl_completer_word_break_characters</CODE> are treated as any other character,
+<code>rl_completer_word_break_characters</code> are treated as any other character,
unless they also appear within this list.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX408"></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
+<dl class="def">
+<dt id="index-rl_005ffilename_005fquote_005fcharacters"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_filename_quote_characters</strong><a href='#index-rl_005ffilename_005fquote_005fcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
-
-<A NAME="IDX409"></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
-left in <VAR>text</VAR> when it is passed to the completion function.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fspecial_005fprefixes"><span class="category">Variable: </span><span><em>const char *</em> <strong>rl_special_prefixes</strong><a href='#index-rl_005fspecial_005fprefixes' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The list of characters that are word break characters, but should be
+left in <var>text</var> when it is passed to the completion function.
Programs can use this to help determine what kind of completing to do.
-For instance, Bash sets this variable to "$@" so that it can complete
+For instance, Bash sets this variable to &quot;$@&quot; so that it can complete
shell variables and hostnames.
-</DL>
-</P><P>
-
-<A NAME="IDX410"></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
-possible-completions call. After that, readline asks the user if she is sure
-she wants to see them all. The default value is 100. A negative value
-indicates that Readline should never ask the user.
-</DL>
-</P><P>
-
-<A NAME="IDX411"></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
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fquery_005fitems"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_query_items</strong><a href='#index-rl_005fcompletion_005fquery_005fitems' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Up to this many items will be displayed in response to a
+possible-completions call. After that, readline asks the user for
+confirmation before displaying them.
+The default value is 100. A negative value
+indicates that Readline should never ask for confirmation.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fappend_005fcharacter"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_append_character</strong><a href='#index-rl_005fcompletion_005fappend_005fcharacter' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 (<SAMP>` '</SAMP>). Setting this to the null
-character (<SAMP>`\0'</SAMP>) prevents anything being appended automatically.
+default is a space character (&lsquo;<samp> </samp>&rsquo;). Setting this to the null
+character (&lsquo;<samp>\0</samp>&rsquo;) prevents anything being appended automatically.
This can be changed in application-specific completion functions to
-provide the "most sensible word separator character" according to
+provide the &ldquo;most sensible word separator character&rdquo; according to
an application-specific command line syntax specification.
It is set to the default before any application-specific completion function
is called, and may only be changed within such a function.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX412"></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
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fsuppress_005fappend"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_suppress_append</strong><a href='#index-rl_005fcompletion_005fsuppress_005fappend' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, <var>rl_completion_append_character</var> is not appended to
matches at the end of the command line, as described above.
It is set to 0 before any application-specific completion function
is called, and may only be changed within such a function.
-</DL>
-</P><P>
-
-<A NAME="IDX413"></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
-characters in <VAR>rl_completer_quote_characters</VAR>, it sets this variable
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fquote_005fcharacter"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_quote_character</strong><a href='#index-rl_005fcompletion_005fquote_005fcharacter' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When Readline is completing quoted text, as delimited by one of the
+characters in <var>rl_completer_quote_characters</var>, it sets this variable
to the quoting character found.
This is set before any application-specific completion function is called.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX414"></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
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fsuppress_005fquote"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_suppress_quote</strong><a href='#index-rl_005fcompletion_005fsuppress_005fquote' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, Readline does not append a matching quote character when
performing completion on a quoted string.
It is set to 0 before any application-specific completion function
is called, and may only be changed within such a function.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX415"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_found_quote</B>
-<DD>When Readline is completing quoted text, it sets this variable
+<dl class="def">
+<dt id="index-rl_005fcompletion_005ffound_005fquote"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_found_quote</strong><a href='#index-rl_005fcompletion_005ffound_005fquote' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-</DL>
-</P><P>
+</p></dd></dl>
-<A NAME="IDX416"></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
+<dl class="def">
+<dt id="index-rl_005fcompletion_005fmark_005fsymlink_005fdirs"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_mark_symlink_dirs</strong><a href='#index-rl_005fcompletion_005fmark_005fsymlink_005fdirs' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, a slash will be appended to completed filenames that are
symbolic links to directory names, subject to the value of the
-user-settable <VAR>mark-directories</VAR> variable.
+user-settable <var>mark-directories</var> variable.
This variable exists so that application-specific completion functions
-can override the user's global preference (set via the
-<VAR>mark-symlinked-directories</VAR> Readline variable) if appropriate.
-This variable is set to the user's preference before any
+can override the user&rsquo;s global preference (set via the
+<var>mark-symlinked-directories</var> Readline variable) if appropriate.
+This variable is set to the user&rsquo;s preference before any
application-specific completion function is called, so unless that
-function modifies the value, the user's preferences are honored.
-</DL>
-</P><P>
-
-<A NAME="IDX417"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_ignore_completion_duplicates</B>
-<DD>If non-zero, then duplicates in the matches are removed.
+function modifies the value, the user&rsquo;s preferences are honored.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fignore_005fcompletion_005fduplicates"><span class="category">Variable: </span><span><em>int</em> <strong>rl_ignore_completion_duplicates</strong><a href='#index-rl_005fignore_005fcompletion_005fduplicates' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If non-zero, then duplicates in the matches are removed.
The default is 1.
-</DL>
-</P><P>
-
-<A NAME="IDX418"></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
-filenames. This is <EM>always</EM> zero when completion is attempted,
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffilename_005fcompletion_005fdesired"><span class="category">Variable: </span><span><em>int</em> <strong>rl_filename_completion_desired</strong><a href='#index-rl_005ffilename_005fcompletion_005fdesired' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Non-zero means that the results of the matches are to be treated as
+filenames. This is <em>always</em> 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 <CODE>rl_filename_quote_characters</CODE> and
-<CODE>rl_filename_quoting_desired</CODE> is set to a non-zero value.
-</DL>
-</P><P>
-
-<A NAME="IDX419"></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
+characters in <code>rl_filename_quote_characters</code> and
+<code>rl_filename_quoting_desired</code> is set to a non-zero value.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005ffilename_005fquoting_005fdesired"><span class="category">Variable: </span><span><em>int</em> <strong>rl_filename_quoting_desired</strong><a href='#index-rl_005ffilename_005fquoting_005fdesired' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>rl_filename_quote_chars</CODE>. This is <EM>always</EM> non-zero
+<code>rl_filename_quote_chars</code>. This is <em>always</em> 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 <CODE>rl_filename_quoting_function</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX420"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_attempted_completion_over</B>
-<DD>If an application-specific completion function assigned to
-<CODE>rl_attempted_completion_function</CODE> sets this variable to a non-zero
+by <code>rl_filename_quoting_function</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fattempted_005fcompletion_005fover"><span class="category">Variable: </span><span><em>int</em> <strong>rl_attempted_completion_over</strong><a href='#index-rl_005fattempted_005fcompletion_005fover' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If an application-specific completion function assigned to
+<code>rl_attempted_completion_function</code> 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.
-</DL>
-</P><P>
-
-<A NAME="IDX421"></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
+if the application&rsquo;s completion function returns no matches.
+It should be set only by an application&rsquo;s completion function.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fsort_005fcompletion_005fmatches"><span class="category">Variable: </span><span><em>int</em> <strong>rl_sort_completion_matches</strong><a href='#index-rl_005fsort_005fcompletion_005fmatches' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If an application sets this variable to 0, Readline will not sort 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
-<CODE>rl_ignore_completion_duplicates</CODE>, will attempt to remove duplicate
+<code>rl_ignore_completion_duplicates</code>, will attempt to remove duplicate
matches.
-</DL>
-</P><P>
-
-<A NAME="IDX422"></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
-attempting; see the description of <CODE>rl_complete_internal()</CODE>
-(see section <A HREF="readline.html#SEC47">2.6.2 Completion Functions</A>) for the list of characters.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005ftype"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_type</strong><a href='#index-rl_005fcompletion_005ftype' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set to a character describing the type of completion Readline is currently
+attempting; see the description of <code>rl_complete_internal()</code>
+(see <a href="#Completion-Functions">Completion Functions</a>) 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 <CODE>rl_complete()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX423"></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
-completion functions that call <CODE>rl_complete_internal()</CODE>. This is
+the same interface as <code>rl_complete()</code>.
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005fcompletion_005finvoking_005fkey"><span class="category">Variable: </span><span><em>int</em> <strong>rl_completion_invoking_key</strong><a href='#index-rl_005fcompletion_005finvoking_005fkey' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set to the final character in the key sequence that invoked one of the
+completion functions that call <code>rl_complete_internal()</code>. This is
set to the appropriate value before any application-specific completion
function is called.
-</DL>
-</P><P>
-
-<A NAME="IDX424"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_inhibit_completion</B>
-<DD>If this variable is non-zero, completion is inhibited. The completion
-character will be inserted as any other bound to <CODE>self-insert</CODE>.
-</DL>
-</P><P>
-
-<A NAME="A Short Completion Example"></A>
-<HR SIZE="6">
-<A NAME="SEC49"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.4 A Short Completion Example </H3>
-<!--docid::SEC49::-->
-<P>
-
-Here is a small application demonstrating the use of the GNU Readline
-library. It is called <CODE>fileman</CODE>, and the source code resides in
-<TT>`examples/fileman.c'</TT>. This sample application provides
+</p></dd></dl>
+
+<dl class="def">
+<dt id="index-rl_005finhibit_005fcompletion"><span class="category">Variable: </span><span><em>int</em> <strong>rl_inhibit_completion</strong><a href='#index-rl_005finhibit_005fcompletion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If this variable is non-zero, completion is inhibited. The completion
+character will be inserted as any other bound to <code>self-insert</code>.
+</p></dd></dl>
+
+<hr>
+</div>
+<div class="subsection" id="A-Short-Completion-Example">
+<div class="header">
+<p>
+Previous: <a href="#Completion-Variables" accesskey="p" rel="prev">Completion Variables</a>, Up: <a href="#Custom-Completers" accesskey="u" rel="up">Custom Completers</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="A-Short-Completion-Example-1"></span><h4 class="subsection">2.6.4 A Short Completion Example</h4>
+
+<p>Here is a small application demonstrating the use of the GNU Readline
+library. It is called <code>fileman</code>, and the source code resides in
+<samp>examples/fileman.c</samp>. This sample application provides
completion of command names, line editing features, and access to the
history list.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>/* fileman.c -- A tiny application which demonstrates how to use the
+</p>
+<div class="example">
+<pre class="example">/* fileman.c -- A tiny application which demonstrates how to use the
GNU Readline library. This application interactively allows users
to manipulate files and their modes. */
#ifdef HAVE_CONFIG_H
-# include &#60;config.h&#62;
+# include &lt;config.h&gt;
#endif
-#include &#60;sys/types.h&#62;
+#include &lt;sys/types.h&gt;
#ifdef HAVE_SYS_FILE_H
-# include &#60;sys/file.h&#62;
+# include &lt;sys/file.h&gt;
#endif
-#include &#60;sys/stat.h&#62;
+#include &lt;sys/stat.h&gt;
#ifdef HAVE_UNISTD_H
-# include &#60;unistd.h&#62;
+# include &lt;unistd.h&gt;
#endif
-#include &#60;fcntl.h&#62;
-#include &#60;stdio.h&#62;
-#include &#60;errno.h&#62;
+#include &lt;fcntl.h&gt;
+#include &lt;stdio.h&gt;
+#include &lt;errno.h&gt;
#if defined (HAVE_STRING_H)
-# include &#60;string.h&#62;
+# include &lt;string.h&gt;
#else /* !HAVE_STRING_H */
-# include &#60;strings.h&#62;
+# include &lt;strings.h&gt;
#endif /* !HAVE_STRING_H */
#ifdef HAVE_STDLIB_H
-# include &#60;stdlib.h&#62;
+# include &lt;stdlib.h&gt;
#endif
-#include &#60;time.h&#62;
+#include &lt;time.h&gt;
-#include &#60;readline/readline.h&#62;
-#include &#60;readline/history.h&#62;
+#include &lt;readline/readline.h&gt;
+#include &lt;readline/history.h&gt;
extern char *xmalloc PARAMS((size_t));
@@ -5786,17 +4819,17 @@ typedef struct {
} COMMAND;
COMMAND commands[] = {
- { "cd", com_cd, "Change to directory DIR" },
- { "delete", com_delete, "Delete FILE" },
- { "help", com_help, "Display this text" },
- { "?", com_help, "Synonym for `help'" },
- { "list", com_list, "List files in DIR" },
- { "ls", com_list, "Synonym for `list'" },
- { "pwd", com_pwd, "Print the current working directory" },
- { "quit", com_quit, "Quit using Fileman" },
- { "rename", com_rename, "Rename FILE to NEWNAME" },
- { "stat", com_stat, "Print out statistics on FILE" },
- { "view", com_view, "View the contents of FILE" },
+ { &quot;cd&quot;, com_cd, &quot;Change to directory DIR&quot; },
+ { &quot;delete&quot;, com_delete, &quot;Delete FILE&quot; },
+ { &quot;help&quot;, com_help, &quot;Display this text&quot; },
+ { &quot;?&quot;, com_help, &quot;Synonym for `help'&quot; },
+ { &quot;list&quot;, com_list, &quot;List files in DIR&quot; },
+ { &quot;ls&quot;, com_list, &quot;Synonym for `list'&quot; },
+ { &quot;pwd&quot;, com_pwd, &quot;Print the current working directory&quot; },
+ { &quot;quit&quot;, com_quit, &quot;Quit using Fileman&quot; },
+ { &quot;rename&quot;, com_rename, &quot;Rename FILE to NEWNAME&quot; },
+ { &quot;stat&quot;, com_stat, &quot;Print out statistics on FILE&quot; },
+ { &quot;view&quot;, com_view, &quot;View the contents of FILE&quot; },
{ (char *)NULL, (rl_icpfunc_t *)NULL, (char *)NULL }
};
@@ -5834,7 +4867,7 @@ main (argc, argv)
/* Loop reading and executing lines until the user quits. */
for ( ; done == 0; )
{
- line = readline ("FileMan: ");
+ line = readline (&quot;FileMan: &quot;);
if (!line)
break;
@@ -5866,11 +4899,11 @@ execute_line (line)
/* Isolate the command word. */
i = 0;
- while (line[i] &#38;&#38; whitespace (line[i]))
+ while (line[i] &amp;&amp; whitespace (line[i]))
i++;
word = line + i;
- while (line[i] &#38;&#38; !whitespace (line[i]))
+ while (line[i] &amp;&amp; !whitespace (line[i]))
i++;
if (line[i])
@@ -5880,7 +4913,7 @@ execute_line (line)
if (!command)
{
- fprintf (stderr, "%s: No such command for FileMan.\n", word);
+ fprintf (stderr, &quot;%s: No such command for FileMan.\n&quot;, word);
return (-1);
}
@@ -5891,7 +4924,7 @@ execute_line (line)
word = line + i;
/* Call the function. */
- return ((*(command-&#62;func)) (word));
+ return ((*(command-&gt;func)) (word));
}
/* Look up NAME as the name of a command, and return a pointer to that
@@ -5904,7 +4937,7 @@ find_command (name)
for (i = 0; commands[i].name; i++)
if (strcmp (name, commands[i].name) == 0)
- return (&#38;commands[i]);
+ return (&amp;commands[i]);
return ((COMMAND *)NULL);
}
@@ -5924,7 +4957,7 @@ stripwhite (string)
return (s);
t = s + strlen (s) - 1;
- while (t &#62; s &#38;&#38; whitespace (*t))
+ while (t &gt; s &amp;&amp; whitespace (*t))
t--;
*++t = '\0';
@@ -5946,7 +4979,7 @@ char **fileman_completion PARAMS((const char *, int, int));
initialize_readline ()
{
/* Allow conditional parsing of the ~/.inputrc file. */
- rl_readline_name = "FileMan";
+ rl_readline_name = &quot;FileMan&quot;;
/* Tell the completer that we want a crack first. */
rl_attempted_completion_function = fileman_completion;
@@ -6023,23 +5056,23 @@ com_list (arg)
char *arg;
{
if (!arg)
- arg = "";
+ arg = &quot;&quot;;
- sprintf (syscom, "ls -FClg %s", arg);
+ sprintf (syscom, &quot;ls -FClg %s&quot;, arg);
return (system (syscom));
}
com_view (arg)
char *arg;
{
- if (!valid_argument ("view", arg))
+ if (!valid_argument (&quot;view&quot;, arg))
return 1;
#if defined (__MSDOS__)
/* more.com doesn't grok slashes in pathnames */
- sprintf (syscom, "less %s", arg);
+ sprintf (syscom, &quot;less %s&quot;, arg);
#else
- sprintf (syscom, "more %s", arg);
+ sprintf (syscom, &quot;more %s&quot;, arg);
#endif
return (system (syscom));
}
@@ -6047,7 +5080,7 @@ com_view (arg)
com_rename (arg)
char *arg;
{
- too_dangerous ("rename");
+ too_dangerous (&quot;rename&quot;);
return (1);
}
@@ -6056,33 +5089,33 @@ com_stat (arg)
{
struct stat finfo;
- if (!valid_argument ("stat", arg))
+ if (!valid_argument (&quot;stat&quot;, arg))
return (1);
- if (stat (arg, &#38;finfo) == -1)
+ if (stat (arg, &amp;finfo) == -1)
{
perror (arg);
return (1);
}
- printf ("Statistics for `%s':\n", arg);
+ printf (&quot;Statistics for `%s':\n&quot;, arg);
- printf ("%s has %d link%s, and is %d byte%s in length.\n",
+ printf (&quot;%s has %d link%s, and is %d byte%s in length.\n&quot;,
arg,
finfo.st_nlink,
- (finfo.st_nlink == 1) ? "" : "s",
+ (finfo.st_nlink == 1) ? &quot;&quot; : &quot;s&quot;,
finfo.st_size,
- (finfo.st_size == 1) ? "" : "s");
- printf ("Inode Last Change at: %s", ctime (&#38;finfo.st_ctime));
- printf (" Last access at: %s", ctime (&#38;finfo.st_atime));
- printf (" Last modified at: %s", ctime (&#38;finfo.st_mtime));
+ (finfo.st_size == 1) ? &quot;&quot; : &quot;s&quot;);
+ printf (&quot;Inode Last Change at: %s&quot;, ctime (&amp;finfo.st_ctime));
+ printf (&quot; Last access at: %s&quot;, ctime (&amp;finfo.st_atime));
+ printf (&quot; Last modified at: %s&quot;, ctime (&amp;finfo.st_mtime));
return (0);
}
com_delete (arg)
char *arg;
{
- too_dangerous ("delete");
+ too_dangerous (&quot;delete&quot;);
return (1);
}
@@ -6098,14 +5131,14 @@ com_help (arg)
{
if (!*arg || (strcmp (arg, commands[i].name) == 0))
{
- printf ("%s\t\t%s.\n", commands[i].name, commands[i].doc);
+ printf (&quot;%s\t\t%s.\n&quot;, commands[i].name, commands[i].doc);
printed++;
}
}
if (!printed)
{
- printf ("No commands match `%s'. Possibilities are:\n", arg);
+ printf (&quot;No commands match `%s'. Possibilities are:\n&quot;, arg);
for (i = 0; commands[i].name; i++)
{
@@ -6113,15 +5146,15 @@ com_help (arg)
if (printed == 6)
{
printed = 0;
- printf ("\n");
+ printf (&quot;\n&quot;);
}
- printf ("%s\t", commands[i].name);
+ printf (&quot;%s\t&quot;, commands[i].name);
printed++;
}
if (printed)
- printf ("\n");
+ printf (&quot;\n&quot;);
}
return (0);
}
@@ -6136,7 +5169,7 @@ com_cd (arg)
return 1;
}
- com_pwd ("");
+ com_pwd (&quot;&quot;);
return (0);
}
@@ -6149,11 +5182,11 @@ com_pwd (ignore)
s = getcwd (dir, sizeof(dir) - 1);
if (s == 0)
{
- printf ("Error getting pwd: %s\n", dir);
+ printf (&quot;Error getting pwd: %s\n&quot;, dir);
return 1;
}
- printf ("Current directory is %s\n", dir);
+ printf (&quot;Current directory is %s\n&quot;, dir);
return 0;
}
@@ -6170,7 +5203,7 @@ too_dangerous (caller)
char *caller;
{
fprintf (stderr,
- "%s: Too dangerous for me to distribute. Write it yourself.\n",
+ &quot;%s: Too dangerous for me to distribute. Write it yourself.\n&quot;,
caller);
}
@@ -6182,96 +5215,79 @@ valid_argument (caller, arg)
{
if (!arg || !*arg)
{
- fprintf (stderr, "%s: Argument required.\n", caller);
+ fprintf (stderr, &quot;%s: Argument required.\n&quot;, caller);
return (0);
}
return (1);
}
-</FONT></pre></td></tr></table></P><P>
-
-<A NAME="GNU Free Documentation License"></A>
-<HR SIZE="6">
-<A NAME="SEC50"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC50::-->
-<P>
-
-<center>
- Version 1.3, 3 November 2008
-</center>
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-<A HREF="http://fsf.org/">http://fsf.org/</A>
+</pre></div>
+
+<hr>
+</div>
+</div>
+</div>
+<div class="appendix" id="GNU-Free-Documentation-License">
+<div class="header">
+<p>
+Next: <a href="#Concept-Index" accesskey="n" rel="next">Concept Index</a>, Previous: <a href="#Programming-with-GNU-Readline" accesskey="p" rel="prev">Programming with GNU Readline</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="GNU-Free-Documentation-License-1"></span><h2 class="appendix">Appendix A GNU Free Documentation License</h2>
+
+<div align="center">Version 1.3, 3 November 2008
+</div>
+
+<div class="display">
+<pre class="display">Copyright &copy; 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+<a href="http://fsf.org/">http://fsf.org/</a>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
-</pre></td></tr></table></P><P>
+</pre></div>
-<OL>
-<LI>
-PREAMBLE
-<P>
+<ol start="0">
+<li> PREAMBLE
-The purpose of this License is to make a manual, textbook, or other
-functional and useful document <EM>free</EM> in the sense of freedom: to
+<p>The purpose of this License is to make a manual, textbook, or other
+functional and useful document <em>free</em> in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it,
with or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible
for modifications made by others.
-</P><P>
-
-This License is a kind of "copyleft", which means that derivative
+</p>
+<p>This License is a kind of &ldquo;copyleft&rdquo;, which means that derivative
works of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft
license designed for free software.
-</P><P>
-
-We have designed this License in order to use it for manuals for free
+</p>
+<p>We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a 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 instruction or reference.
-</P><P>
-
-<LI>
-APPLICABILITY AND DEFINITIONS
-<P>
+</p>
+</li><li> APPLICABILITY AND DEFINITIONS
-This License applies to any manual or other work, in any medium, that
+<p>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 grants a
world-wide, royalty-free license, unlimited in duration, to use that
-work under the conditions stated herein. The "Document", below,
+work under the conditions stated herein. The &ldquo;Document&rdquo;, 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
+licensee, and is addressed as &ldquo;you&rdquo;. You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.
-</P><P>
-
-A "Modified Version" of the Document means any work containing the
+</p>
+<p>A &ldquo;Modified Version&rdquo; of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.
-</P><P>
-
-A "Secondary Section" is a named appendix or a front-matter section
+</p>
+<p>A &ldquo;Secondary Section&rdquo; is a named appendix or a front-matter section
of the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall
+publishers or authors of the Document to the Document&rsquo;s overall
subject (or to related matters) and contains nothing that could fall
directly within that overall subject. (Thus, if the Document is in
part a textbook of mathematics, a Secondary Section may not explain
@@ -6279,24 +5295,21 @@ any mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.
-</P><P>
-
-The "Invariant Sections" are certain Secondary Sections whose titles
+</p>
+<p>The &ldquo;Invariant Sections&rdquo; 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.
-</P><P>
-
-The "Cover Texts" are certain short passages of text that are listed,
+</p>
+<p>The &ldquo;Cover Texts&rdquo; are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License. A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.
-</P><P>
-
-A "Transparent" copy of the Document means a machine-readable copy,
+</p>
+<p>A &ldquo;Transparent&rdquo; 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
@@ -6307,57 +5320,49 @@ 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".
-</P><P>
-
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input
-format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
-<FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification. Examples
-of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
-<FONT SIZE="-1">JPG</FONT>. Opaque formats include proprietary formats that can be
-read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
-<FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
-not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
+of text. A copy that is not &ldquo;Transparent&rdquo; is called &ldquo;Opaque&rdquo;.
+</p>
+<p>Examples of suitable formats for Transparent copies include plain
+<small>ASCII</small> without markup, Texinfo input format, LaTeX input
+format, <acronym>SGML</acronym> or <acronym>XML</acronym> using a publicly available
+<acronym>DTD</acronym>, and standard-conforming simple <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> designed for human modification. Examples
+of transparent image formats include <acronym>PNG</acronym>, <acronym>XCF</acronym> and
+<acronym>JPG</acronym>. Opaque formats include proprietary formats that can be
+read and edited only by proprietary word processors, <acronym>SGML</acronym> or
+<acronym>XML</acronym> for which the <acronym>DTD</acronym> and/or processing tools are
+not generally available, and the machine-generated <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> produced by some word processors for
output purposes only.
-</P><P>
-
-The "Title Page" means, for a printed book, the title page itself,
+</p>
+<p>The &ldquo;Title Page&rdquo; means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
+formats which do not have any title page as such, &ldquo;Title Page&rdquo; means
+the text near the most prominent appearance of the work&rsquo;s title,
preceding the beginning of the body of the text.
-</P><P>
-
-The "publisher" means any person or entity that distributes copies
+</p>
+<p>The &ldquo;publisher&rdquo; means any person or entity that distributes copies
of the Document to the public.
-</P><P>
-
-A section "Entitled XYZ" means a named subunit of the Document whose
+</p>
+<p>A section &ldquo;Entitled XYZ&rdquo; means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
-specific section name mentioned below, such as "Acknowledgements",
-"Dedications", "Endorsements", or "History".) To "Preserve the Title"
+specific section name mentioned below, such as &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, &ldquo;Endorsements&rdquo;, or &ldquo;History&rdquo;.) To &ldquo;Preserve the Title&rdquo;
of such a section when you modify the Document means that it remains a
-section "Entitled XYZ" according to this definition.
-</P><P>
-
-The Document may include Warranty Disclaimers next to the notice which
+section &ldquo;Entitled XYZ&rdquo; according to this definition.
+</p>
+<p>The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.
-</P><P>
-
-<LI>
-VERBATIM COPYING
-<P>
+</p>
+</li><li> VERBATIM COPYING
-You may copy and distribute the Document in any medium, either
+<p>You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
@@ -6366,19 +5371,15 @@ 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.
-</P><P>
-
-You may also lend copies, under the same conditions stated above, and
+</p>
+<p>You may also lend copies, under the same conditions stated above, and
you may publicly display copies.
-</P><P>
-
-<LI>
-COPYING IN QUANTITY
-<P>
+</p>
+</li><li> COPYING IN QUANTITY
-If you publish printed copies (or copies in media that commonly have
+<p>If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
-Document's license notice requires Cover Texts, you must enclose the
+Document&rsquo;s license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all 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
@@ -6388,15 +5389,13 @@ 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.
-</P><P>
-
-If the required texts for either cover are too voluminous to fit
+</p>
+<p>If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.
-</P><P>
-
-If you publish or distribute Opaque copies of the Document numbering
+</p>
+<p>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
@@ -6408,135 +5407,98 @@ 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.
-</P><P>
-
-It is requested, but not required, that you contact the authors of the
+</p>
+<p>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.
-</P><P>
+</p>
+</li><li> MODIFICATIONS
-<LI>
-MODIFICATIONS
-<P>
-
-You may copy and distribute a Modified Version of the Document under
+<p>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:
-</P><P>
-
-<OL>
-<LI>
-Use in the Title Page (and on the covers, if any) a title distinct
+</p>
+<ol type="A" start="1">
+<li> 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.
-<P>
-<LI>
-List on the Title Page, as authors, one or more persons or entities
+</li><li> List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has fewer than five),
unless they release you from this requirement.
-<P>
-<LI>
-State on the Title page the name of the publisher of the
+</li><li> State on the Title page the name of the publisher of the
Modified Version, as the publisher.
-<P>
-<LI>
-Preserve all the copyright notices of the Document.
-<P>
+</li><li> Preserve all the copyright notices of the Document.
-<LI>
-Add an appropriate copyright notice for your modifications
+</li><li> Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
-<P>
-<LI>
-Include, immediately after the copyright notices, a license notice
+</li><li> Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
-<P>
-<LI>
-Preserve in that license notice the full lists of Invariant Sections
-and required Cover Texts given in the Document's license notice.
-<P>
+</li><li> Preserve in that license notice the full lists of Invariant Sections
+and required Cover Texts given in the Document&rsquo;s license notice.
-<LI>
-Include an unaltered copy of this License.
-<P>
+</li><li> Include an unaltered copy of this License.
-<LI>
-Preserve the section Entitled "History", Preserve its Title, and add
+</li><li> Preserve the section Entitled &ldquo;History&rdquo;, 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
+there is no section Entitled &ldquo;History&rdquo; 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.
-<P>
-<LI>
-Preserve the network location, if any, given in the Document for
+</li><li> 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.
+it was based on. These may be placed in the &ldquo;History&rdquo; 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.
-<P>
-<LI>
-For any section Entitled "Acknowledgements" or "Dedications", Preserve
+</li><li> For any section Entitled &ldquo;Acknowledgements&rdquo; or &ldquo;Dedications&rdquo;, 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.
-<P>
-<LI>
-Preserve all the Invariant Sections of the Document,
+</li><li> 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.
-<P>
-<LI>
-Delete any section Entitled "Endorsements". Such a section
+</li><li> Delete any section Entitled &ldquo;Endorsements&rdquo;. Such a section
may not be included in the Modified Version.
-<P>
-<LI>
-Do not retitle any existing section to be Entitled "Endorsements" or
+</li><li> Do not retitle any existing section to be Entitled &ldquo;Endorsements&rdquo; or
to conflict in title with any Invariant Section.
-<P>
-<LI>
-Preserve any Warranty Disclaimers.
-</OL>
-<P>
+</li><li> Preserve any Warranty Disclaimers.
+</li></ol>
-If the Modified Version includes new front-matter sections or
+<p>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.
+list of Invariant Sections in the Modified Version&rsquo;s license notice.
These titles must be distinct from any other section titles.
-</P><P>
-
-You may add a section Entitled "Endorsements", provided it contains
+</p>
+<p>You may add a section Entitled &ldquo;Endorsements&rdquo;, provided it contains
nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
+parties&mdash;for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.
-</P><P>
-
-You may add a passage of up to five words as a Front-Cover Text, and a
+</p>
+<p>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
@@ -6545,26 +5507,21 @@ 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.
-</P><P>
-
-The author(s) and publisher(s) of the Document do not by this License
+</p>
+<p>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 assert or
imply endorsement of any Modified Version.
-</P><P>
-
-<LI>
-COMBINING DOCUMENTS
-<P>
+</p>
+</li><li> COMBINING DOCUMENTS
-You may combine the Document with other documents released under this
+<p>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, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.
-</P><P>
-
-The combined work need only contain one copy of this License, and
+</p>
+<p>The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
@@ -6572,60 +5529,48 @@ adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.
-</P><P>
-
-In the combination, you must combine any sections Entitled "History"
+</p>
+<p>In the combination, you must combine any sections Entitled &ldquo;History&rdquo;
in the various original documents, forming one section Entitled
-"History"; likewise combine any sections Entitled "Acknowledgements",
-and any sections Entitled "Dedications". You must delete all
-sections Entitled "Endorsements."
-</P><P>
-
-<LI>
-COLLECTIONS OF DOCUMENTS
-<P>
+&ldquo;History&rdquo;; likewise combine any sections Entitled &ldquo;Acknowledgements&rdquo;,
+and any sections Entitled &ldquo;Dedications&rdquo;. You must delete all
+sections Entitled &ldquo;Endorsements.&rdquo;
+</p>
+</li><li> COLLECTIONS OF DOCUMENTS
-You may make a collection consisting of the Document and other documents
+<p>You may make a collection consisting of the Document and other 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.
-</P><P>
-
-You may extract a single document from such a collection, and distribute
+</p>
+<p>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.
-</P><P>
-
-<LI>
-AGGREGATION WITH INDEPENDENT WORKS
-<P>
+</p>
+</li><li> AGGREGATION WITH INDEPENDENT WORKS
-A compilation of the Document or its derivatives with other separate
+<p>A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
-distribution medium, is called an "aggregate" if the copyright
+distribution medium, is called an &ldquo;aggregate&rdquo; 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.
+of the compilation&rsquo;s users beyond what the individual works permit.
When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
-</P><P>
-
-If the Cover Text requirement of section 3 is applicable to these
+</p>
+<p>If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of
-the entire aggregate, the Document's Cover Texts may be placed on
+the entire aggregate, the Document&rsquo;s Cover Texts may be placed on
covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form.
Otherwise they must appear on printed covers that bracket the whole
aggregate.
-</P><P>
+</p>
+</li><li> TRANSLATION
-<LI>
-TRANSLATION
-<P>
-
-Translation is considered a kind of modification, so you may
+<p>Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special
permission from their copyright holders, but you may include
@@ -6637,1133 +5582,695 @@ the original English version of this License and the original versions
of those notices and disclaimers. In case of a disagreement between
the translation and the original version of this License or a notice
or disclaimer, the original version will prevail.
-</P><P>
-
-If a section in the Document is Entitled "Acknowledgements",
-"Dedications", or "History", the requirement (section 4) to Preserve
+</p>
+<p>If a section in the Document is Entitled &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, or &ldquo;History&rdquo;, the requirement (section 4) to Preserve
its Title (section 1) will typically require changing the actual
title.
-</P><P>
+</p>
+</li><li> TERMINATION
-<LI>
-TERMINATION
-<P>
-
-You may not copy, modify, sublicense, or distribute the Document
+<p>You may not copy, modify, sublicense, or distribute the Document
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense, or distribute it is void, and
will automatically terminate your rights under this License.
-</P><P>
-
-However, if you cease all violation of this License, then your license
+</p>
+<p>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 copyright holder
fails to notify you of the violation by some reasonable means prior to
60 days after the cessation.
-</P><P>
-
-Moreover, your license from a particular copyright holder is
+</p>
+<p>Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
-</P><P>
-
-Termination of your rights under this section does not terminate the
+</p>
+<p>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.
-</P><P>
-
-<LI>
-FUTURE REVISIONS OF THIS LICENSE
-<P>
+</p>
+</li><li> FUTURE REVISIONS OF THIS LICENSE
-The Free Software Foundation may publish new, revised versions
+<p>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
-<A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
-</P><P>
-
-Each version of the License is given a distinguishing version number.
+<a href="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</a>.
+</p>
+<p>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
+License &ldquo;or any later version&rdquo; 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 proxy's public statement of acceptance of a
+License can be used, that proxy&rsquo;s public statement of acceptance of a
version permanently authorizes you to choose that version for the
Document.
-</P><P>
-
-<LI>
-RELICENSING
-<P>
+</p>
+</li><li> RELICENSING
-"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+<p>&ldquo;Massive Multiauthor Collaboration Site&rdquo; (or &ldquo;MMC Site&rdquo;) means any
World Wide Web server that publishes copyrightable works and also
provides prominent facilities for anybody to edit those works. A
public wiki that anybody can edit is an example of such a server. A
-"Massive Multiauthor Collaboration" (or "MMC") contained in the
+&ldquo;Massive Multiauthor Collaboration&rdquo; (or &ldquo;MMC&rdquo;) contained in the
site means any set of copyrightable works thus published on the MMC
site.
-</P><P>
-
-"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+</p>
+<p>&ldquo;CC-BY-SA&rdquo; means the Creative Commons Attribution-Share Alike 3.0
license published by Creative Commons Corporation, a not-for-profit
corporation with a principal place of business in San Francisco,
California, as well as future copyleft versions of that license
published by that same organization.
-</P><P>
-
-"Incorporate" means to publish or republish a Document, in whole or
+</p>
+<p>&ldquo;Incorporate&rdquo; means to publish or republish a Document, in whole or
in part, as part of another Document.
-</P><P>
-
-An MMC is "eligible for relicensing" if it is licensed under this
+</p>
+<p>An MMC is &ldquo;eligible for relicensing&rdquo; if it is licensed under this
License, and if all works that were first published under this License
somewhere other than this MMC, and subsequently incorporated in whole
or in part into the MMC, (1) had no cover texts or invariant sections,
and (2) were thus incorporated prior to November 1, 2008.
-</P><P>
-
-The operator of an MMC Site may republish an MMC contained in the site
+</p>
+<p>The operator of an MMC Site may republish an MMC contained in the site
under CC-BY-SA on the same site at any time before August 1, 2009,
provided the MMC is eligible for relicensing.
-</P><P>
-
-</OL>
-<P>
+</p>
+</li></ol>
-<A NAME="SEC51"></A>
-<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC51::-->
-<P>
+<span id="ADDENDUM_003a-How-to-use-this-License-for-your-documents"></span><h3 class="heading">ADDENDUM: How to use this License for your documents</h3>
-To use this License in a document you have written, include a copy of
+<p>To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and
license notices just after the title page:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre> Copyright (C) <VAR>year</VAR> <VAR>your name</VAR>.
+</p>
+<div class="example">
+<pre class="example"> Copyright (C) <var>year</var> <var>your name</var>.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the "with<small>...</small>Texts." line with this:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre> with the Invariant Sections being <VAR>list their titles</VAR>, with
- the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
- being <VAR>list</VAR>.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections without Cover Texts, or some other
+</pre></div>
+
+<p>If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
+replace the &ldquo;with&hellip;Texts.&rdquo; line with this:
+</p>
+<div class="example">
+<pre class="example"> with the Invariant Sections being <var>list their titles</var>, with
+ the Front-Cover Texts being <var>list</var>, and with the Back-Cover Texts
+ being <var>list</var>.
+</pre></div>
+
+<p>If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.
-</P><P>
-
-If your document contains nontrivial examples of program code, we
+</p>
+<p>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.
-</P><P>
-
-<A NAME="Concept Index"></A>
-<HR SIZE="6">
-<A NAME="SEC52"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC53"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> Concept Index </H1>
-<!--docid::SEC52::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#cp_A" style="text-decoration:none"><b>A</b></A>
- &nbsp;
-<A HREF="readline.html#cp_C" style="text-decoration:none"><b>C</b></A>
+</p>
+
+
+<hr>
+</div>
+<div class="unnumbered" id="Concept-Index">
+<div class="header">
+<p>
+Next: <a href="#Function-and-Variable-Index" accesskey="n" rel="next">Function and Variable Index</a>, Previous: <a href="#GNU-Free-Documentation-License" accesskey="p" rel="prev">GNU Free Documentation License</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Concept-Index-1"></span><h2 class="unnumbered">Concept Index</h2>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Concept-Index_cp_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="readline.html#cp_E" style="text-decoration:none"><b>E</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-C"><b>C</b></a>
&nbsp;
-<A HREF="readline.html#cp_I" style="text-decoration:none"><b>I</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-E"><b>E</b></a>
&nbsp;
-<A HREF="readline.html#cp_K" style="text-decoration:none"><b>K</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-I"><b>I</b></a>
&nbsp;
-<A HREF="readline.html#cp_N" style="text-decoration:none"><b>N</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-K"><b>K</b></a>
&nbsp;
-<A HREF="readline.html#cp_R" style="text-decoration:none"><b>R</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-N"><b>N</b></a>
&nbsp;
-<A HREF="readline.html#cp_V" style="text-decoration:none"><b>V</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-R"><b>R</b></a>
&nbsp;
-<A HREF="readline.html#cp_Y" style="text-decoration:none"><b>Y</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-V"><b>V</b></a>
&nbsp;
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<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="cp_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC45">application-specific completion functions</A></TD><TD valign=top><A HREF="readline.html#SEC45">2.6 Custom Completers</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">command editing</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_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">editing command lines</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_I"></A>I</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC9">initialization file, readline</A></TD><TD valign=top><A HREF="readline.html#SEC9">1.3 Readline Init File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC3">interaction, readline</A></TD><TD valign=top><A HREF="readline.html#SEC3">1.2 Readline Interaction</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_K"></A>K</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX3">kill ring</A></TD><TD valign=top><A HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX1">killing text</A></TD><TD valign=top><A HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_N"></A>N</TH><TD></TD><TD></TD></TR>
-<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#IDX220">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>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_Y"></A>Y</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX2">yanking text</A></TD><TD valign=top><A HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</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#cp_A" style="text-decoration:none"><b>A</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-Y"><b>Y</b></a>
&nbsp;
-<A HREF="readline.html#cp_C" style="text-decoration:none"><b>C</b></A>
+</td></tr></table>
+<table class="index-cp" border="0">
+<tr><td></td><th align="left">Index Entry</th><td>&nbsp;</td><th align="left"> Section</th></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-A">A</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-application_002dspecific-completion-functions">application-specific completion functions</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Custom-Completers">Custom Completers</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-C">C</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-command-editing">command editing</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Bare-Essentials">Readline Bare Essentials</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-E">E</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-editing-command-lines">editing command lines</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Bare-Essentials">Readline Bare Essentials</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-I">I</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-initialization-file_002c-readline">initialization file, readline</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File">Readline Init File</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-interaction_002c-readline">interaction, readline</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Interaction">Readline Interaction</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-K">K</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-kill-ring">kill ring</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Killing-Commands">Readline Killing Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-killing-text">killing text</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Killing-Commands">Readline Killing Commands</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-N">N</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-notation_002c-readline">notation, readline</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Bare-Essentials">Readline Bare Essentials</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-R">R</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-readline_002c-function">readline, function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Basic-Behavior">Basic Behavior</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-V">V</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-variables_002c-readline">variables, readline</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Concept-Index_cp_letter-Y">Y</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-yanking-text">yanking text</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Killing-Commands">Readline Killing Commands</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+</table>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Concept-Index_cp_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="readline.html#cp_E" style="text-decoration:none"><b>E</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-C"><b>C</b></a>
&nbsp;
-<A HREF="readline.html#cp_I" style="text-decoration:none"><b>I</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-E"><b>E</b></a>
&nbsp;
-<A HREF="readline.html#cp_K" style="text-decoration:none"><b>K</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-I"><b>I</b></a>
&nbsp;
-<A HREF="readline.html#cp_N" style="text-decoration:none"><b>N</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-K"><b>K</b></a>
&nbsp;
-<A HREF="readline.html#cp_R" style="text-decoration:none"><b>R</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-N"><b>N</b></a>
&nbsp;
-<A HREF="readline.html#cp_V" style="text-decoration:none"><b>V</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-R"><b>R</b></a>
&nbsp;
-<A HREF="readline.html#cp_Y" style="text-decoration:none"><b>Y</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-V"><b>V</b></a>
&nbsp;
-</td></tr></table><br><P>
-
-<A NAME="Function and Variable Index"></A>
-<HR SIZE="6">
-<A NAME="SEC53"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> Function and Variable Index </H1>
-<!--docid::SEC53::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#fn__" style="text-decoration:none"><b>_</b></A>
+<a class="summary-letter" href="#Concept-Index_cp_letter-Y"><b>Y</b></a>
&nbsp;
-<BR>
-<A HREF="readline.html#fn_A" style="text-decoration:none"><b>A</b></A>
+</td></tr></table>
+
+<hr>
+</div>
+<div class="unnumbered" id="Function-and-Variable-Index">
+<div class="header">
+<p>
+Previous: <a href="#Concept-Index" accesskey="p" rel="prev">Concept Index</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+</div>
+<span id="Function-and-Variable-Index-1"></span><h2 class="unnumbered">Function and Variable Index</h2>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Function-and-Variable-Index_fn_symbol-1"><b>_</b></a>
&nbsp;
-<A HREF="readline.html#fn_B" style="text-decoration:none"><b>B</b></A>
- &nbsp;
-<A HREF="readline.html#fn_C" style="text-decoration:none"><b>C</b></A>
- &nbsp;
-<A HREF="readline.html#fn_D" style="text-decoration:none"><b>D</b></A>
- &nbsp;
-<A HREF="readline.html#fn_E" style="text-decoration:none"><b>E</b></A>
+<br>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="readline.html#fn_F" style="text-decoration:none"><b>F</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-B"><b>B</b></a>
&nbsp;
-<A HREF="readline.html#fn_H" style="text-decoration:none"><b>H</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-C"><b>C</b></a>
&nbsp;
-<A HREF="readline.html#fn_I" style="text-decoration:none"><b>I</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-D"><b>D</b></a>
&nbsp;
-<A HREF="readline.html#fn_K" style="text-decoration:none"><b>K</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-E"><b>E</b></a>
&nbsp;
-<A HREF="readline.html#fn_M" style="text-decoration:none"><b>M</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-F"><b>F</b></a>
&nbsp;
-<A HREF="readline.html#fn_N" style="text-decoration:none"><b>N</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-H"><b>H</b></a>
&nbsp;
-<A HREF="readline.html#fn_O" style="text-decoration:none"><b>O</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-I"><b>I</b></a>
&nbsp;
-<A HREF="readline.html#fn_P" style="text-decoration:none"><b>P</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-K"><b>K</b></a>
&nbsp;
-<A HREF="readline.html#fn_Q" style="text-decoration:none"><b>Q</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-M"><b>M</b></a>
&nbsp;
-<A HREF="readline.html#fn_R" style="text-decoration:none"><b>R</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-N"><b>N</b></a>
&nbsp;
-<A HREF="readline.html#fn_S" style="text-decoration:none"><b>S</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-O"><b>O</b></a>
&nbsp;
-<A HREF="readline.html#fn_T" style="text-decoration:none"><b>T</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-P"><b>P</b></a>
&nbsp;
-<A HREF="readline.html#fn_U" style="text-decoration:none"><b>U</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-Q"><b>Q</b></a>
&nbsp;
-<A HREF="readline.html#fn_V" style="text-decoration:none"><b>V</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-R"><b>R</b></a>
&nbsp;
-<A HREF="readline.html#fn_Y" style="text-decoration:none"><b>Y</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-S"><b>S</b></a>
&nbsp;
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<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#IDX346"><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#IDX349"><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#IDX345"><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#IDX348"><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#IDX347"><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#IDX344"><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#IDX185"><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#IDX186"><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#IDX67"><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#IDX68"><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#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#IDX103"><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#IDX104"><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#IDX129"><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#IDX130"><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#IDX137"><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#IDX138"><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#IDX73"><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#IDX74"><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#IDX113"><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#IDX114"><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#IDX179"><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#IDX180"><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#IDX123"><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#IDX124"><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#IDX201"><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#IDX202"><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#IDX203"><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#IDX204"><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#IDX61"><CODE>clear-display (M-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#IDX62"><CODE>clear-display (M-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#IDX63"><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#IDX64"><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#IDX163"><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#IDX164"><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#IDX151"><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#IDX152"><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#IDX153"><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#IDX154"><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#IDX149"><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#IDX150"><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#IDX101"><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#IDX102"><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#IDX173"><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#IDX174"><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#IDX145"><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#IDX146"><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#IDX159"><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#IDX160"><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#IDX187"><CODE>do-lowercase-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#IDX188"><CODE>do-lowercase-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#IDX121"><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#IDX122"><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#IDX209"><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#IDX210"><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#IDX213"><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#IDX214"><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#IDX211"><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#IDX212"><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#IDX18">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#IDX19">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#IDX215"><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#IDX216"><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#IDX20">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#IDX177"><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#IDX178"><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#IDX99"><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#IDX100"><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#IDX75"><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#IDX76"><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#IDX199"><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#IDX200"><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#IDX105"><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#IDX106"><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#IDX79"><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#IDX80"><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#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#IDX87"><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#IDX88"><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#IDX85"><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#IDX86"><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#IDX91"><CODE>history-substring-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#IDX92"><CODE>history-substring-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#IDX89"><CODE>history-substring-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#IDX90"><CODE>history-substring-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#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#IDX207"><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#IDX208"><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#IDX167"><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#IDX168"><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#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#IDX127"><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-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#IDX147"><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#IDX148"><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#IDX133"><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#IDX134"><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#IDX135"><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#IDX136"><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#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#IDX169"><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#IDX170"><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#IDX171"><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#IDX172"><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#IDX71"><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#IDX72"><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-screen-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>next-screen-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#IDX83"><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#IDX84"><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#IDX81"><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#IDX82"><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#IDX97"><CODE>operate-and-get-next (C-o)</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#IDX98"><CODE>operate-and-get-next (C-o)</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#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#IDX125"><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#IDX126"><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#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#IDX165"><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#IDX166"><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#IDX189"><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#IDX190"><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#IDX69"><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#IDX70"><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-screen-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#IDX58"><CODE>previous-screen-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#IDX181"><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#IDX182"><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#IDX107"><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#IDX108"><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#IDX183"><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#IDX184"><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#IDX219"><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#IDX65"><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#IDX66"><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#IDX77"><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#IDX78"><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#IDX193"><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#IDX194"><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#IDX358"><CODE>rl_activate_mark</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#IDX261"><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#IDX297"><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#IDX300"><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#IDX342"><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#IDX232">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#IDX393">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#IDX420">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#IDX404">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#IDX403">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#IDX298"><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#IDX273"><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#IDX275"><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#IDX276"><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#IDX274"><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#IDX281"><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#IDX284"><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#IDX285"><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#IDX282"><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#IDX252">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#IDX362"><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#IDX365"><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#IDX363"><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#IDX364"><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#IDX366">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#IDX367">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#IDX369">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#IDX396">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#IDX374"><CODE>rl_check_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#IDX371"><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#IDX357"><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#IDX313"><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#IDX327"><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#IDX381"><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#IDX308"><CODE>rl_clear_visible_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#IDX382"><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#IDX385"><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#IDX384"><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#IDX407">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#IDX405">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#IDX411">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#IDX402">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#IDX383">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#IDX392">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#IDX415">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#IDX423">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#IDX416">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#IDX389"><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#IDX388"><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#IDX410">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#IDX413">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#IDX412">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#IDX414">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#IDX422">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#IDX406">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#IDX263"><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#IDX320"><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#IDX310"><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#IDX359"><CODE>rl_deactivate_mark</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#IDX319"><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#IDX250">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#IDX330"><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#IDX341"><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#IDX398">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#IDX399">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#IDX265"><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#IDX228">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#IDX343"><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#IDX231">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#IDX302"><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#IDX225">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#IDX375"><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#IDX260">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#IDX267"><CODE>rl_empty_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#IDX223">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#IDX299"><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#IDX229">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#IDX244">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#IDX326"><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#IDX254">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#IDX251">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#IDX255">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#IDX253">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#IDX316"><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#IDX258">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#IDX339"><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#IDX418">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#IDX390"><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#IDX395">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#IDX408">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#IDX419">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#IDX394">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#IDX401">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#IDX400">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#IDX305"><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#IDX337"><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#IDX266"><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#IDX372"><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#IDX301"><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#IDX294"><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#IDX290"><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#IDX291"><CODE>rl_function_of_keyseq_len</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#IDX296"><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#IDX286"><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#IDX268"><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#IDX270"><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#IDX271"><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#IDX378"><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#IDX356"><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#IDX324"><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#IDX245">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#IDX235">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#IDX417">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#IDX397">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#IDX424">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#IDX340"><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#IDX247">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#IDX387"><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#IDX318"><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#IDX238">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#IDX292"><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#IDX293"><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#IDX360"><CODE>rl_keep_mark_active</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#IDX256">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#IDX321"><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#IDX241">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#IDX233">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#IDX221">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#IDX295"><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#IDX350"><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#IDX351"><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#IDX262"><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#IDX264"><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#IDX224">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#IDX361"><CODE>rl_mark_active_p</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#IDX312"><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#IDX303"><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#IDX289"><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#IDX226">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#IDX259">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#IDX306"><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#IDX307"><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#IDX239">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#IDX287"><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#IDX227">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#IDX370"><CODE>rl_pending_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#IDX368">rl_persistent_signal_handlers</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#IDX222">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#IDX386"><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#IDX243">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#IDX240">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#IDX249">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#IDX329"><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#IDX230">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#IDX322"><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#IDX288"><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#IDX323"><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#IDX237">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#IDX257">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#IDX234">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#IDX304"><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#IDX248">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#IDX338"><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#IDX373"><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#IDX309"><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#IDX379"><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#IDX334"><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#IDX376"><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#IDX315"><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#IDX336"><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#IDX314"><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#IDX335"><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#IDX283"><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#IDX328"><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#IDX269"><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#IDX272"><CODE>rl_set_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#IDX355"><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#IDX317"><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#IDX377"><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#IDX380"><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#IDX311"><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#IDX246">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#IDX421">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#IDX409">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#IDX242">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#IDX325"><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#IDX236">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#IDX331"><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#IDX333"><CODE>rl_tty_set_echoing</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#IDX332"><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#IDX280"><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#IDX279"><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#IDX277"><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#IDX278"><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#IDX391"><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#IDX352"><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#IDX354"><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#IDX353"><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#IDX111"><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#IDX112"><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#IDX197"><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#IDX198"><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#IDX139"><CODE>shell-transpose-words (M-C-t)</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>shell-transpose-words (M-C-t)</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#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#IDX205"><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#IDX206"><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#IDX175"><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#IDX176"><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#IDX109"><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#IDX110"><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#IDX195"><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#IDX196"><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#IDX115"><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#IDX116"><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#IDX117"><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#IDX118"><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#IDX191"><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#IDX192"><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#IDX161"><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#IDX162"><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>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#IDX144"><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#IDX131"><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#IDX132"><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#IDX141"><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#IDX142"><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#IDX119"><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#IDX120"><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#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#IDX217"><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#IDX218"><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#IDX155"><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#IDX156"><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#IDX95"><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#IDX96"><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#IDX93"><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#IDX94"><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#IDX157"><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#IDX158"><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>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-T"><b>T</b></a>
&nbsp;
-<BR>
-<A HREF="readline.html#fn_A" style="text-decoration:none"><b>A</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-U"><b>U</b></a>
&nbsp;
-<A HREF="readline.html#fn_B" style="text-decoration:none"><b>B</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-V"><b>V</b></a>
&nbsp;
-<A HREF="readline.html#fn_C" style="text-decoration:none"><b>C</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-Y"><b>Y</b></a>
&nbsp;
-<A HREF="readline.html#fn_D" style="text-decoration:none"><b>D</b></A>
+</td></tr></table>
+<table class="index-fn" border="0">
+<tr><td></td><th align="left">Index Entry</th><td>&nbsp;</td><th align="left"> Section</th></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_symbol-1">_</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005frl_005fdigit_005fp"><code>_rl_digit_p</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005frl_005fdigit_005fvalue"><code>_rl_digit_value</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005frl_005flowercase_005fp"><code>_rl_lowercase_p</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005frl_005fto_005flower"><code>_rl_to_lower</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005frl_005fto_005fupper"><code>_rl_to_upper</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005frl_005fuppercase_005fp"><code>_rl_uppercase_p</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-A">A</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-abort-_0028C_002dg_0029"><code>abort (C-g)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-accept_002dline-_0028Newline-or-Return_0029"><code>accept-line (Newline or Return)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-active_002dregion_002dend_002dcolor">active-region-end-color</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-active_002dregion_002dstart_002dcolor">active-region-start-color</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-B">B</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-backward_002dchar-_0028C_002db_0029"><code>backward-char (C-b)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-backward_002ddelete_002dchar-_0028Rubout_0029"><code>backward-delete-char (Rubout)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-backward_002dkill_002dline-_0028C_002dx-Rubout_0029"><code>backward-kill-line (C-x Rubout)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-backward_002dkill_002dword-_0028M_002dDEL_0029"><code>backward-kill-word (M-<span class="key">DEL</span>)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-backward_002dword-_0028M_002db_0029"><code>backward-word (M-b)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-beginning_002dof_002dhistory-_0028M_002d_003c_0029"><code>beginning-of-history (M-&lt;)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-beginning_002dof_002dline-_0028C_002da_0029"><code>beginning-of-line (C-a)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bell_002dstyle">bell-style</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bind_002dtty_002dspecial_002dchars">bind-tty-special-chars</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-blink_002dmatching_002dparen">blink-matching-paren</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bracketed_002dpaste_002dbegin-_0028_0029"><code>bracketed-paste-begin ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-C">C</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-call_002dlast_002dkbd_002dmacro-_0028C_002dx-e_0029"><code>call-last-kbd-macro (C-x e)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keyboard-Macros">Keyboard Macros</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-capitalize_002dword-_0028M_002dc_0029"><code>capitalize-word (M-c)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-character_002dsearch-_0028C_002d_005d_0029"><code>character-search (C-])</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-character_002dsearch_002dbackward-_0028M_002dC_002d_005d_0029"><code>character-search-backward (M-C-])</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-clear_002ddisplay-_0028M_002dC_002dl_0029"><code>clear-display (M-C-l)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-clear_002dscreen-_0028C_002dl_0029"><code>clear-screen (C-l)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-colored_002dcompletion_002dprefix">colored-completion-prefix</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-colored_002dstats">colored-stats</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-comment_002dbegin">comment-begin</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-complete-_0028TAB_0029"><code>complete (<span class="key">TAB</span>)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Completion">Commands For Completion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-completion_002ddisplay_002dwidth">completion-display-width</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-completion_002dignore_002dcase">completion-ignore-case</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-completion_002dmap_002dcase">completion-map-case</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-completion_002dprefix_002ddisplay_002dlength">completion-prefix-display-length</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-completion_002dquery_002ditems">completion-query-items</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-convert_002dmeta">convert-meta</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-copy_002dbackward_002dword-_0028_0029"><code>copy-backward-word ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-copy_002dforward_002dword-_0028_0029"><code>copy-forward-word ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-copy_002dregion_002das_002dkill-_0028_0029"><code>copy-region-as-kill ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-D">D</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-delete_002dchar-_0028C_002dd_0029"><code>delete-char (C-d)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-delete_002dchar_002dor_002dlist-_0028_0029"><code>delete-char-or-list ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Completion">Commands For Completion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-delete_002dhorizontal_002dspace-_0028_0029"><code>delete-horizontal-space ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-digit_002dargument-_0028M_002d0_002c-M_002d1_002c-_2026-M_002d_002d_0029"><code>digit-argument (<kbd>M-0</kbd>, <kbd>M-1</kbd>, &hellip; <kbd>M--</kbd>)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Numeric-Arguments">Numeric Arguments</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-disable_002dcompletion">disable-completion</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-do_002dlowercase_002dversion-_0028M_002dA_002c-M_002dB_002c-M_002dx_002c-_2026_0029"><code>do-lowercase-version (M-A, M-B, M-<var>x</var>, &hellip;)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-downcase_002dword-_0028M_002dl_0029"><code>downcase-word (M-l)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-dump_002dfunctions-_0028_0029"><code>dump-functions ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-dump_002dmacros-_0028_0029"><code>dump-macros ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-dump_002dvariables-_0028_0029"><code>dump-variables ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-E">E</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-echo_002dcontrol_002dcharacters">echo-control-characters</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-editing_002dmode">editing-mode</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-emacs_002dediting_002dmode-_0028C_002de_0029"><code>emacs-editing-mode (C-e)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-emacs_002dmode_002dstring">emacs-mode-string</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-enable_002dactive_002dregion">enable-active-region</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-enable_002dbracketed_002dpaste">enable-bracketed-paste</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-enable_002dkeypad">enable-keypad</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-end_002dkbd_002dmacro-_0028C_002dx-_0029_0029"><code>end-kbd-macro (C-x ))</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keyboard-Macros">Keyboard Macros</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-end_002dof_002dfile-_0028usually-C_002dd_0029"><code><i>end-of-file</i> (usually C-d)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-end_002dof_002dhistory-_0028M_002d_003e_0029"><code>end-of-history (M-&gt;)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-end_002dof_002dline-_0028C_002de_0029"><code>end-of-line (C-e)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-exchange_002dpoint_002dand_002dmark-_0028C_002dx-C_002dx_0029"><code>exchange-point-and-mark (C-x C-x)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-expand_002dtilde">expand-tilde</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-F">F</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-fetch_002dhistory-_0028_0029"><code>fetch-history ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-forward_002dbackward_002ddelete_002dchar-_0028_0029"><code>forward-backward-delete-char ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-forward_002dchar-_0028C_002df_0029"><code>forward-char (C-f)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-forward_002dsearch_002dhistory-_0028C_002ds_0029"><code>forward-search-history (C-s)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-forward_002dword-_0028M_002df_0029"><code>forward-word (M-f)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-H">H</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_002dpreserve_002dpoint">history-preserve-point</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_002dsearch_002dbackward-_0028_0029"><code>history-search-backward ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_002dsearch_002dforward-_0028_0029"><code>history-search-forward ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_002dsize">history-size</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_002dsubstring_002dsearch_002dbackward-_0028_0029"><code>history-substring-search-backward ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-history_002dsubstring_002dsearch_002dforward-_0028_0029"><code>history-substring-search-forward ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-horizontal_002dscroll_002dmode">horizontal-scroll-mode</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-I">I</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-input_002dmeta">input-meta</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-insert_002dcomment-_0028M_002d_0023_0029"><code>insert-comment (M-#)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-insert_002dcompletions-_0028M_002d_002a_0029"><code>insert-completions (M-*)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Completion">Commands For Completion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-isearch_002dterminators">isearch-terminators</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-K">K</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-keymap">keymap</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-kill_002dline-_0028C_002dk_0029"><code>kill-line (C-k)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-kill_002dregion-_0028_0029"><code>kill-region ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-kill_002dwhole_002dline-_0028_0029"><code>kill-whole-line ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-kill_002dword-_0028M_002dd_0029"><code>kill-word (M-d)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-M">M</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mark_002dmodified_002dlines">mark-modified-lines</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-mark_002dsymlinked_002ddirectories">mark-symlinked-directories</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-match_002dhidden_002dfiles">match-hidden-files</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002dcomplete-_0028_0029"><code>menu-complete ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Completion">Commands For Completion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002dcomplete_002dbackward-_0028_0029"><code>menu-complete-backward ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Completion">Commands For Completion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002dcomplete_002ddisplay_002dprefix">menu-complete-display-prefix</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-meta_002dflag">meta-flag</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-N">N</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-next_002dhistory-_0028C_002dn_0029"><code>next-history (C-n)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-next_002dscreen_002dline-_0028_0029"><code>next-screen-line ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-non_002dincremental_002dforward_002dsearch_002dhistory-_0028M_002dn_0029"><code>non-incremental-forward-search-history (M-n)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-non_002dincremental_002dreverse_002dsearch_002dhistory-_0028M_002dp_0029"><code>non-incremental-reverse-search-history (M-p)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-O">O</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-operate_002dand_002dget_002dnext-_0028C_002do_0029"><code>operate-and-get-next (C-o)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-output_002dmeta">output-meta</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-overwrite_002dmode-_0028_0029"><code>overwrite-mode ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-P">P</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-page_002dcompletions">page-completions</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-possible_002dcompletions-_0028M_002d_003f_0029"><code>possible-completions (M-?)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Completion">Commands For Completion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-prefix_002dmeta-_0028ESC_0029"><code>prefix-meta (<span class="key">ESC</span>)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-previous_002dhistory-_0028C_002dp_0029"><code>previous-history (C-p)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-previous_002dscreen_002dline-_0028_0029"><code>previous-screen-line ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-print_002dlast_002dkbd_002dmacro-_0028_0029"><code>print-last-kbd-macro ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keyboard-Macros">Keyboard Macros</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-Q">Q</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-quoted_002dinsert-_0028C_002dq-or-C_002dv_0029"><code>quoted-insert (C-q or C-v)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-R">R</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-re_002dread_002dinit_002dfile-_0028C_002dx-C_002dr_0029"><code>re-read-init-file (C-x C-r)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-readline"><code>readline</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Basic-Behavior">Basic Behavior</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-redraw_002dcurrent_002dline-_0028_0029"><code>redraw-current-line ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Moving">Commands For Moving</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-reverse_002dsearch_002dhistory-_0028C_002dr_0029"><code>reverse-search-history (C-r)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-revert_002dall_002dat_002dnewline">revert-all-at-newline</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-revert_002dline-_0028M_002dr_0029"><code>revert-line (M-r)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005factivate_005fmark"><code>rl_activate_mark</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fadd_005fdefun"><code>rl_add_defun</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Function-Naming">Function Naming</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fadd_005ffunmap_005fentry"><code>rl_add_funmap_entry</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fadd_005fundo"><code>rl_add_undo</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Allowing-Undoing">Allowing Undoing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005falphabetic"><code>rl_alphabetic</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005falready_005fprompted">rl_already_prompted</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fattempted_005fcompletion_005ffunction">rl_attempted_completion_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fattempted_005fcompletion_005fover">rl_attempted_completion_over</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbasic_005fquote_005fcharacters">rl_basic_quote_characters</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbasic_005fword_005fbreak_005fcharacters">rl_basic_word_break_characters</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbegin_005fundo_005fgroup"><code>rl_begin_undo_group</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Allowing-Undoing">Allowing Undoing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbinding_005fkeymap">rl_binding_keymap</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkey"><code>rl_bind_key</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkeyseq"><code>rl_bind_keyseq</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkeyseq_005fif_005funbound"><code>rl_bind_keyseq_if_unbound</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkeyseq_005fif_005funbound_005fin_005fmap"><code>rl_bind_keyseq_if_unbound_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkeyseq_005fin_005fmap"><code>rl_bind_keyseq_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkey_005fif_005funbound"><code>rl_bind_key_if_unbound</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkey_005fif_005funbound_005fin_005fmap"><code>rl_bind_key_if_unbound_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fbind_005fkey_005fin_005fmap"><code>rl_bind_key_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcallback_005fhandler_005finstall"><code>rl_callback_handler_install</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Alternate-Interface">Alternate Interface</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcallback_005fhandler_005fremove"><code>rl_callback_handler_remove</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Alternate-Interface">Alternate Interface</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcallback_005fread_005fchar"><code>rl_callback_read_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Alternate-Interface">Alternate Interface</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcallback_005fsigcleanup"><code>rl_callback_sigcleanup</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Alternate-Interface">Alternate Interface</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcatch_005fsignals">rl_catch_signals</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcatch_005fsigwinch">rl_catch_sigwinch</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fchange_005fenvironment">rl_change_environment</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fchar_005fis_005fquoted_005fp">rl_char_is_quoted_p</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcheck_005fsignals"><code>rl_check_signals</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcleanup_005fafter_005fsignal"><code>rl_cleanup_after_signal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fclear_005fhistory"><code>rl_clear_history</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fclear_005fmessage"><code>rl_clear_message</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fclear_005fpending_005finput"><code>rl_clear_pending_input</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fclear_005fsignals"><code>rl_clear_signals</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fclear_005fvisible_005fline"><code>rl_clear_visible_line</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcomplete"><code>rl_complete</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#How-Completing-Works">How Completing Works</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcomplete-1"><code>rl_complete</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompleter_005fquote_005fcharacters">rl_completer_quote_characters</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompleter_005fword_005fbreak_005fcharacters">rl_completer_word_break_characters</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcomplete_005finternal"><code>rl_complete_internal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fappend_005fcharacter">rl_completion_append_character</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fdisplay_005fmatches_005fhook">rl_completion_display_matches_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fentry_005ffunction">rl_completion_entry_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#How-Completing-Works">How Completing Works</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fentry_005ffunction-1">rl_completion_entry_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005ffound_005fquote">rl_completion_found_quote</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005finvoking_005fkey">rl_completion_invoking_key</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fmark_005fsymlink_005fdirs">rl_completion_mark_symlink_dirs</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fmatches"><code>rl_completion_matches</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fmode"><code>rl_completion_mode</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fquery_005fitems">rl_completion_query_items</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fquote_005fcharacter">rl_completion_quote_character</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fsuppress_005fappend">rl_completion_suppress_append</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fsuppress_005fquote">rl_completion_suppress_quote</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005ftype">rl_completion_type</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcompletion_005fword_005fbreak_005fhook">rl_completion_word_break_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcopy_005fkeymap"><code>rl_copy_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcopy_005ftext"><code>rl_copy_text</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Modifying-Text">Modifying Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fcrlf"><code>rl_crlf</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdeactivate_005fmark"><code>rl_deactivate_mark</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdelete_005ftext"><code>rl_delete_text</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Modifying-Text">Modifying Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdeprep_005fterminal"><code>rl_deprep_terminal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Terminal-Management">Terminal Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdeprep_005fterm_005ffunction">rl_deprep_term_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fding"><code>rl_ding</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdirectory_005fcompletion_005fhook">rl_directory_completion_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdirectory_005frewrite_005fhook_003b">rl_directory_rewrite_hook;</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdiscard_005fkeymap"><code>rl_discard_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdispatching">rl_dispatching</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdisplay_005fmatch_005flist"><code>rl_display_match_list</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdisplay_005fprompt">rl_display_prompt</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdone">rl_done</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fdo_005fundo"><code>rl_do_undo</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Allowing-Undoing">Allowing Undoing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fecho_005fsignal_005fchar"><code>rl_echo_signal_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fediting_005fmode">rl_editing_mode</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fempty_005fkeymap"><code>rl_empty_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fend">rl_end</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fend_005fundo_005fgroup"><code>rl_end_undo_group</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Allowing-Undoing">Allowing Undoing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005feof_005ffound">rl_eof_found</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ferase_005fempty_005fline">rl_erase_empty_line</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fevent_005fhook">rl_event_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexecute_005fnext"><code>rl_execute_next</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexecuting_005fkey">rl_executing_key</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexecuting_005fkeymap">rl_executing_keymap</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexecuting_005fkeyseq">rl_executing_keyseq</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexecuting_005fmacro">rl_executing_macro</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexpand_005fprompt"><code>rl_expand_prompt</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fexplicit_005farg">rl_explicit_arg</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fextend_005fline_005fbuffer"><code>rl_extend_line_buffer</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fcompletion_005fdesired">rl_filename_completion_desired</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fcompletion_005ffunction"><code>rl_filename_completion_function</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fdequoting_005ffunction">rl_filename_dequoting_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fquote_005fcharacters">rl_filename_quote_characters</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fquoting_005fdesired">rl_filename_quoting_desired</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fquoting_005ffunction">rl_filename_quoting_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005frewrite_005fhook">rl_filename_rewrite_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffilename_005fstat_005fhook">rl_filename_stat_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fforced_005fupdate_005fdisplay"><code>rl_forced_update_display</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffree"><code>rl_free</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffree_005fkeymap"><code>rl_free_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffree_005fline_005fstate"><code>rl_free_line_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffree_005fundo_005flist"><code>rl_free_undo_list</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Allowing-Undoing">Allowing Undoing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffunction_005fdumper"><code>rl_function_dumper</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffunction_005fof_005fkeyseq"><code>rl_function_of_keyseq</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffunction_005fof_005fkeyseq_005flen"><code>rl_function_of_keyseq_len</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ffunmap_005fnames"><code>rl_funmap_names</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fgeneric_005fbind"><code>rl_generic_bind</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fgetc"><code>rl_getc</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fgetc_005ffunction">rl_getc_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fget_005fkeymap"><code>rl_get_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fget_005fkeymap_005fby_005fname"><code>rl_get_keymap_by_name</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fget_005fkeymap_005fname"><code>rl_get_keymap_name</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fget_005fscreen_005fsize"><code>rl_get_screen_size</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fget_005ftermcap"><code>rl_get_termcap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fgnu_005freadline_005fp">rl_gnu_readline_p</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fignore_005fcompletion_005fduplicates">rl_ignore_completion_duplicates</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fignore_005fsome_005fcompletions_005ffunction">rl_ignore_some_completions_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finhibit_005fcompletion">rl_inhibit_completion</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finitialize"><code>rl_initialize</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finput_005favailable_005fhook">rl_input_available_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finsert_005fcompletions"><code>rl_insert_completions</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finsert_005ftext"><code>rl_insert_text</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Modifying-Text">Modifying Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finstream">rl_instream</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finvoking_005fkeyseqs"><code>rl_invoking_keyseqs</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005finvoking_005fkeyseqs_005fin_005fmap"><code>rl_invoking_keyseqs_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fkeep_005fmark_005factive"><code>rl_keep_mark_active</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fkey_005fsequence_005flength">rl_key_sequence_length</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fkill_005ftext"><code>rl_kill_text</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Modifying-Text">Modifying Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005flast_005ffunc">rl_last_func</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005flibrary_005fversion">rl_library_version</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fline_005fbuffer">rl_line_buffer</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005flist_005ffunmap_005fnames"><code>rl_list_funmap_names</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmacro_005fbind"><code>rl_macro_bind</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmacro_005fdumper"><code>rl_macro_dumper</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmake_005fbare_005fkeymap"><code>rl_make_bare_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmake_005fkeymap"><code>rl_make_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmark">rl_mark</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmark_005factive_005fp"><code>rl_mark_active_p</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmessage"><code>rl_message</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fmodifying"><code>rl_modifying</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Allowing-Undoing">Allowing Undoing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fnamed_005ffunction"><code>rl_named_function</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fnumeric_005farg">rl_numeric_arg</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fnum_005fchars_005fto_005fread">rl_num_chars_to_read</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fon_005fnew_005fline"><code>rl_on_new_line</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fon_005fnew_005fline_005fwith_005fprompt"><code>rl_on_new_line_with_prompt</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005foutstream">rl_outstream</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fparse_005fand_005fbind"><code>rl_parse_and_bind</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpending_005finput">rl_pending_input</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpending_005fsignal"><code>rl_pending_signal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpersistent_005fsignal_005fhandlers">rl_persistent_signal_handlers</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpoint">rl_point</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpossible_005fcompletions"><code>rl_possible_completions</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fprefer_005fenv_005fwinsize">rl_prefer_env_winsize</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fprep_005fterminal"><code>rl_prep_terminal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Terminal-Management">Terminal Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fprep_005fterm_005ffunction">rl_prep_term_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpre_005finput_005fhook">rl_pre_input_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fprompt">rl_prompt</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fpush_005fmacro_005finput"><code>rl_push_macro_input</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Modifying-Text">Modifying Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freadline_005fname">rl_readline_name</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freadline_005fstate">rl_readline_state</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freadline_005fversion">rl_readline_version</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fread_005finit_005ffile"><code>rl_read_init_file</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fread_005fkey"><code>rl_read_key</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fredisplay"><code>rl_redisplay</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fredisplay_005ffunction">rl_redisplay_function</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freplace_005fline"><code>rl_replace_line</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freset_005fafter_005fsignal"><code>rl_reset_after_signal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freset_005fline_005fstate"><code>rl_reset_line_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freset_005fscreen_005fsize"><code>rl_reset_screen_size</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005freset_005fterminal"><code>rl_reset_terminal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Terminal-Management">Terminal Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fresize_005fterminal"><code>rl_resize_terminal</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005frestore_005fprompt"><code>rl_restore_prompt</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005frestore_005fstate"><code>rl_restore_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fsave_005fprompt"><code>rl_save_prompt</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fsave_005fstate"><code>rl_save_state</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Utility-Functions">Utility Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fkey"><code>rl_set_key</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fkeyboard_005finput_005ftimeout"><code>rl_set_keyboard_input_timeout</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fkeymap"><code>rl_set_keymap</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fkeymap_005fname"><code>rl_set_keymap_name</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keymaps">Keymaps</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fparen_005fblink_005ftimeout"><code>rl_set_paren_blink_timeout</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fprompt"><code>rl_set_prompt</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fscreen_005fsize"><code>rl_set_screen_size</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005fsignals"><code>rl_set_signals</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Signal-Handling">Readline Signal Handling</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fset_005ftimeout"><code>rl_set_timeout</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fshow_005fchar"><code>rl_show_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Redisplay">Redisplay</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fsignal_005fevent_005fhook">rl_signal_event_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fsort_005fcompletion_005fmatches">rl_sort_completion_matches</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fspecial_005fprefixes">rl_special_prefixes</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Variables">Completion Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fstartup_005fhook">rl_startup_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fstuff_005fchar"><code>rl_stuff_char</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fterminal_005fname">rl_terminal_name</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ftimeout_005fevent_005fhook">rl_timeout_event_hook</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Variables">Readline Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ftimeout_005fremaining"><code>rl_timeout_remaining</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Character-Input">Character Input</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ftrim_005farg_005ffrom_005fkeyseq"><code>rl_trim_arg_from_keyseq</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Associating-Function-Names-and-Bindings">Associating Function Names and Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ftty_005fset_005fdefault_005fbindings"><code>rl_tty_set_default_bindings</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Terminal-Management">Terminal Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ftty_005fset_005fechoing"><code>rl_tty_set_echoing</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Terminal-Management">Terminal Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005ftty_005funset_005fdefault_005fbindings"><code>rl_tty_unset_default_bindings</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Terminal-Management">Terminal Management</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005funbind_005fcommand_005fin_005fmap"><code>rl_unbind_command_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005funbind_005ffunction_005fin_005fmap"><code>rl_unbind_function_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005funbind_005fkey"><code>rl_unbind_key</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005funbind_005fkey_005fin_005fmap"><code>rl_unbind_key_in_map</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Binding-Keys">Binding Keys</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fusername_005fcompletion_005ffunction"><code>rl_username_completion_function</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Completion-Functions">Completion Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fvariable_005fbind"><code>rl_variable_bind</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fvariable_005fdumper"><code>rl_variable_dumper</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rl_005fvariable_005fvalue"><code>rl_variable_value</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Functions">Miscellaneous Functions</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-S">S</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-self_002dinsert-_0028a_002c-b_002c-A_002c-1_002c-_0021_002c-_2026_0029"><code>self-insert (a, b, A, 1, !, &hellip;)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-set_002dmark-_0028C_002d_0040_0029"><code>set-mark (C-@)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-shell_002dtranspose_002dwords-_0028M_002dC_002dt_0029"><code>shell-transpose-words (M-C-t)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-show_002dall_002dif_002dambiguous">show-all-if-ambiguous</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-show_002dall_002dif_002dunmodified">show-all-if-unmodified</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-show_002dmode_002din_002dprompt">show-mode-in-prompt</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-skip_002dcompleted_002dtext">skip-completed-text</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-skip_002dcsi_002dsequence-_0028_0029"><code>skip-csi-sequence ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-start_002dkbd_002dmacro-_0028C_002dx-_0028_0029"><code>start-kbd-macro (C-x ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Keyboard-Macros">Keyboard Macros</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-T">T</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-tab_002dinsert-_0028M_002dTAB_0029"><code>tab-insert (M-<span class="key">TAB</span>)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-tilde_002dexpand-_0028M_002d_007e_0029"><code>tilde-expand (M-~)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-transpose_002dchars-_0028C_002dt_0029"><code>transpose-chars (C-t)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-transpose_002dwords-_0028M_002dt_0029"><code>transpose-words (M-t)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-U">U</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-undo-_0028C_002d_005f-or-C_002dx-C_002du_0029"><code>undo (C-_ or C-x C-u)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-universal_002dargument-_0028_0029"><code>universal-argument ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Numeric-Arguments">Numeric Arguments</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-unix_002dfilename_002drubout-_0028_0029"><code>unix-filename-rubout ()</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-unix_002dline_002ddiscard-_0028C_002du_0029"><code>unix-line-discard (C-u)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-unix_002dword_002drubout-_0028C_002dw_0029"><code>unix-word-rubout (C-w)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-upcase_002dword-_0028M_002du_0029"><code>upcase-word (M-u)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Text">Commands For Text</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-V">V</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-vi_002dcmd_002dmode_002dstring">vi-cmd-mode-string</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-vi_002dediting_002dmode-_0028M_002dC_002dj_0029"><code>vi-editing-mode (M-C-j)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Miscellaneous-Commands">Miscellaneous Commands</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-vi_002dins_002dmode_002dstring">vi-ins-mode-string</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-visible_002dstats">visible-stats</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+<tr><th id="Function-and-Variable-Index_fn_letter-Y">Y</th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-yank-_0028C_002dy_0029"><code>yank (C-y)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-yank_002dlast_002darg-_0028M_002d_002e-or-M_002d_005f_0029"><code>yank-last-arg (M-. or M-_)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-yank_002dnth_002darg-_0028M_002dC_002dy_0029"><code>yank-nth-arg (M-C-y)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-History">Commands For History</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-yank_002dpop-_0028M_002dy_0029"><code>yank-pop (M-y)</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Commands-For-Killing">Commands For Killing</a></td></tr>
+<tr><td colspan="4"> <hr></td></tr>
+</table>
+<table><tr><th valign="top">Jump to: &nbsp; </th><td><a class="summary-letter" href="#Function-and-Variable-Index_fn_symbol-1"><b>_</b></a>
&nbsp;
-<A HREF="readline.html#fn_E" style="text-decoration:none"><b>E</b></A>
+<br>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-A"><b>A</b></a>
&nbsp;
-<A HREF="readline.html#fn_F" style="text-decoration:none"><b>F</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-B"><b>B</b></a>
&nbsp;
-<A HREF="readline.html#fn_H" style="text-decoration:none"><b>H</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-C"><b>C</b></a>
&nbsp;
-<A HREF="readline.html#fn_I" style="text-decoration:none"><b>I</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-D"><b>D</b></a>
&nbsp;
-<A HREF="readline.html#fn_K" style="text-decoration:none"><b>K</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-E"><b>E</b></a>
&nbsp;
-<A HREF="readline.html#fn_M" style="text-decoration:none"><b>M</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-F"><b>F</b></a>
&nbsp;
-<A HREF="readline.html#fn_N" style="text-decoration:none"><b>N</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-H"><b>H</b></a>
&nbsp;
-<A HREF="readline.html#fn_O" style="text-decoration:none"><b>O</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-I"><b>I</b></a>
&nbsp;
-<A HREF="readline.html#fn_P" style="text-decoration:none"><b>P</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-K"><b>K</b></a>
&nbsp;
-<A HREF="readline.html#fn_Q" style="text-decoration:none"><b>Q</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-M"><b>M</b></a>
&nbsp;
-<A HREF="readline.html#fn_R" style="text-decoration:none"><b>R</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-N"><b>N</b></a>
&nbsp;
-<A HREF="readline.html#fn_S" style="text-decoration:none"><b>S</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-O"><b>O</b></a>
&nbsp;
-<A HREF="readline.html#fn_T" style="text-decoration:none"><b>T</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-P"><b>P</b></a>
&nbsp;
-<A HREF="readline.html#fn_U" style="text-decoration:none"><b>U</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-Q"><b>Q</b></a>
&nbsp;
-<A HREF="readline.html#fn_V" style="text-decoration:none"><b>V</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-R"><b>R</b></a>
&nbsp;
-<A HREF="readline.html#fn_Y" style="text-decoration:none"><b>Y</b></A>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-S"><b>S</b></a>
&nbsp;
-</td></tr></table><br><P>
-
-<HR SIZE="6">
-<A NAME="SEC_Contents"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Table of Contents</H1>
-<UL>
-<A NAME="TOC1" HREF="readline.html#SEC1">1. Command Line Editing</A>
-<BR>
-<UL>
-<A NAME="TOC2" HREF="readline.html#SEC2">1.1 Introduction to Line Editing</A>
-<BR>
-<A NAME="TOC3" HREF="readline.html#SEC3">1.2 Readline Interaction</A>
-<BR>
-<UL>
-<A NAME="TOC4" HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A>
-<BR>
-<A NAME="TOC5" HREF="readline.html#SEC5">1.2.2 Readline Movement Commands</A>
-<BR>
-<A NAME="TOC6" HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</A>
-<BR>
-<A NAME="TOC7" HREF="readline.html#SEC7">1.2.4 Readline Arguments</A>
-<BR>
-<A NAME="TOC8" HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A>
-<BR>
-</UL>
-<A NAME="TOC9" HREF="readline.html#SEC9">1.3 Readline Init File</A>
-<BR>
-<UL>
-<A NAME="TOC10" HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A>
-<BR>
-<A NAME="TOC11" HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A>
-<BR>
-<A NAME="TOC12" HREF="readline.html#SEC12">1.3.3 Sample Init File</A>
-<BR>
-</UL>
-<A NAME="TOC13" HREF="readline.html#SEC13">1.4 Bindable Readline Commands</A>
-<BR>
-<UL>
-<A NAME="TOC14" HREF="readline.html#SEC14">1.4.1 Commands For Moving</A>
-<BR>
-<A NAME="TOC15" HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A>
-<BR>
-<A NAME="TOC16" HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A>
-<BR>
-<A NAME="TOC17" HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A>
-<BR>
-<A NAME="TOC18" HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A>
-<BR>
-<A NAME="TOC19" HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A>
-<BR>
-<A NAME="TOC20" HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A>
-<BR>
-<A NAME="TOC21" HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A>
-<BR>
-</UL>
-<A NAME="TOC22" HREF="readline.html#SEC22">1.5 Readline vi Mode</A>
-<BR>
-</UL>
-<A NAME="TOC23" HREF="readline.html#SEC23">2. Programming with GNU Readline</A>
-<BR>
-<UL>
-<A NAME="TOC24" HREF="readline.html#SEC24">2.1 Basic Behavior</A>
-<BR>
-<A NAME="TOC25" HREF="readline.html#SEC25">2.2 Custom Functions</A>
-<BR>
-<UL>
-<A NAME="TOC26" HREF="readline.html#SEC26">2.2.1 Readline Typedefs</A>
-<BR>
-<A NAME="TOC27" HREF="readline.html#SEC27">2.2.2 Writing a New Function</A>
-<BR>
-</UL>
-<A NAME="TOC28" HREF="readline.html#SEC28">2.3 Readline Variables</A>
-<BR>
-<A NAME="TOC29" HREF="readline.html#SEC29">2.4 Readline Convenience Functions</A>
-<BR>
-<UL>
-<A NAME="TOC30" HREF="readline.html#SEC30">2.4.1 Naming a Function</A>
-<BR>
-<A NAME="TOC31" HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>
-<BR>
-<A NAME="TOC32" HREF="readline.html#SEC32">2.4.3 Binding Keys</A>
-<BR>
-<A NAME="TOC33" HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A>
-<BR>
-<A NAME="TOC34" HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A>
-<BR>
-<A NAME="TOC35" HREF="readline.html#SEC35">2.4.6 Redisplay</A>
-<BR>
-<A NAME="TOC36" HREF="readline.html#SEC36">2.4.7 Modifying Text</A>
-<BR>
-<A NAME="TOC37" HREF="readline.html#SEC37">2.4.8 Character Input</A>
-<BR>
-<A NAME="TOC38" HREF="readline.html#SEC38">2.4.9 Terminal Management</A>
-<BR>
-<A NAME="TOC39" HREF="readline.html#SEC39">2.4.10 Utility Functions</A>
-<BR>
-<A NAME="TOC40" HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A>
-<BR>
-<A NAME="TOC41" HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>
-<BR>
-<A NAME="TOC42" HREF="readline.html#SEC42">2.4.13 A Readline Example</A>
-<BR>
-<A NAME="TOC43" HREF="readline.html#SEC43">2.4.14 Alternate Interface Example</A>
-<BR>
-</UL>
-<A NAME="TOC44" HREF="readline.html#SEC44">2.5 Readline Signal Handling</A>
-<BR>
-<A NAME="TOC45" HREF="readline.html#SEC45">2.6 Custom Completers</A>
-<BR>
-<UL>
-<A NAME="TOC46" HREF="readline.html#SEC46">2.6.1 How Completing Works</A>
-<BR>
-<A NAME="TOC47" HREF="readline.html#SEC47">2.6.2 Completion Functions</A>
-<BR>
-<A NAME="TOC48" HREF="readline.html#SEC48">2.6.3 Completion Variables</A>
-<BR>
-<A NAME="TOC49" HREF="readline.html#SEC49">2.6.4 A Short Completion Example</A>
-<BR>
-</UL>
-</UL>
-<A NAME="TOC50" HREF="readline.html#SEC50">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC52" HREF="readline.html#SEC52">Concept Index</A>
-<BR>
-<A NAME="TOC53" HREF="readline.html#SEC53">Function and Variable Index</A>
-<BR>
-</UL>
-<HR SIZE=1>
-<A NAME="SEC_OVERVIEW"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Short Table of Contents</H1>
-<BLOCKQUOTE>
-<A NAME="TOC1" HREF="readline.html#SEC1">1. Command Line Editing</A>
-<BR>
-<A NAME="TOC23" HREF="readline.html#SEC23">2. Programming with GNU Readline</A>
-<BR>
-<A NAME="TOC50" HREF="readline.html#SEC50">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC52" HREF="readline.html#SEC52">Concept Index</A>
-<BR>
-<A NAME="TOC53" HREF="readline.html#SEC53">Function and Variable Index</A>
-<BR>
-
-</BLOCKQUOTE>
-<HR SIZE=1>
-<A NAME="SEC_About"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
-<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>October, 30 2020</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-<P></P>
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt; ] </TD>
-<TD ALIGN="CENTER">
-Back
-</TD>
-<TD>
-previous section in reading order
-</TD>
-<TD>
-1.2.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt; ] </TD>
-<TD ALIGN="CENTER">
-Forward
-</TD>
-<TD>
-next section in reading order
-</TD>
-<TD>
-1.2.4
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt;&lt; ] </TD>
-<TD ALIGN="CENTER">
-FastBack
-</TD>
-<TD>
-previous or up-and-previous section
-</TD>
-<TD>
-1.1
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ Up ] </TD>
-<TD ALIGN="CENTER">
-Up
-</TD>
-<TD>
-up section
-</TD>
-<TD>
-1.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt;&gt; ] </TD>
-<TD ALIGN="CENTER">
-FastForward
-</TD>
-<TD>
-next or up-and-next section
-</TD>
-<TD>
-1.3
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Top] </TD>
-<TD ALIGN="CENTER">
-Top
-</TD>
-<TD>
-cover (top) of document
-</TD>
-<TD>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-T"><b>T</b></a>
&nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Contents] </TD>
-<TD ALIGN="CENTER">
-Contents
-</TD>
-<TD>
-table of contents
-</TD>
-<TD>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-U"><b>U</b></a>
&nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Index] </TD>
-<TD ALIGN="CENTER">
-Index
-</TD>
-<TD>
-concept index
-</TD>
-<TD>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-V"><b>V</b></a>
&nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ ? ] </TD>
-<TD ALIGN="CENTER">
-About
-</TD>
-<TD>
-this page
-</TD>
-<TD>
+<a class="summary-letter" href="#Function-and-Variable-Index_fn_letter-Y"><b>Y</b></a>
&nbsp;
-</TD>
-</TR>
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of
-the following structure:
-<UL>
-<LI> 1. Section One </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-
-<HR SIZE=1>
-<BR>
-<FONT SIZE="-1">
-This document was generated
-by <I>Chet Ramey</I> on <I>October, 30 2020</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-
-</BODY>
-</HTML>
+</td></tr></table>
+
+</div>
+</div>
+
+
+
+</body>
+</html>
diff --git a/doc/readline.info b/doc/readline.info
index 93d54dc..73b6a97 100644
--- a/doc/readline.info
+++ b/doc/readline.info
@@ -1,10 +1,10 @@
-This is readline.info, produced by makeinfo version 6.7 from rlman.texi.
+This is readline.info, produced by makeinfo version 6.8 from rlman.texi.
-This manual describes the GNU Readline Library (version 8.1, 29 October
-2020), a library which aids in the consistency of user interface across
+This manual describes the GNU Readline Library (version 8.2, 11 March
+2022), a library which aids in the consistency of user interface across
discrete programs which provide a command line interface.
- Copyright (C) 1988-2020 Free Software Foundation, Inc.
+ Copyright (C) 1988-2022 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
@@ -309,7 +309,7 @@ File: readline.info, Node: Readline Init File, Next: Bindable Readline Command
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
+putting commands in an "inputrc" file, conventionally in their 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
@@ -363,6 +363,32 @@ Variable Settings
A great deal of run-time behavior is changeable with the following
variables.
+ 'active-region-start-color'
+ A string variable that controls the text color and background
+ when displaying the text in the active region (see the
+ description of 'enable-active-region' below). This string
+ must not take up any physical character positions on the
+ display, so it should consist only of terminal escape
+ sequences. It is output to the terminal before displaying the
+ text in the active region. This variable is reset to the
+ default value whenever the terminal type changes. The default
+ value is the string that puts the terminal in standout mode,
+ as obtained from the terminal's terminfo description. A
+ sample value might be '\e[01;33m'.
+
+ 'active-region-end-color'
+ A string variable that "undoes" the effects of
+ 'active-region-start-color' and restores "normal" terminal
+ display appearance after displaying text in the active region.
+ This string must not take up any physical character positions
+ on the display, so it should consist only of terminal escape
+ sequences. It is output to the terminal after displaying the
+ text in the active region. This variable is reset to the
+ default value whenever the terminal type changes. The default
+ value is the string that restores the terminal from standout
+ mode, as obtained from the terminal's terminfo description. A
+ sample value might be '\e[0m'.
+
'bell-style'
Controls what happens when Readline wants to ring the terminal
bell. If set to 'none', Readline never rings the bell. If
@@ -384,7 +410,10 @@ Variable Settings
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
+ value of the 'LS_COLORS' environment variable. If there is a
+ color definition in 'LS_COLORS' for the custom suffix
+ 'readline-colored-completion-prefix', Readline uses this color
+ for the common prefix instead of its default. The default is
'off'.
'colored-stats'
@@ -430,8 +459,9 @@ Variable Settings
than or equal to this value, Readline will ask whether or not
the user 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'.
+ than or equal to zero. A zero value means Readline should
+ never ask; negative values are treated as zero. The default
+ limit is '100'.
'convert-meta'
If set to 'on', Readline will convert characters with the
@@ -467,13 +497,27 @@ Variable Settings
non-printing characters, which can be used to embed a terminal
control sequence into the mode string. The default is '@'.
+ 'enable-active-region'
+ The "point" is the current cursor position, and "mark" refers
+ to a saved cursor position (*note Commands For Moving::). The
+ text between the point and mark is referred to as the
+ "region". When this variable is set to 'On', Readline allows
+ certain commands to designate the region as "active". When
+ the region is active, Readline highlights the text in the
+ region using the value of the 'active-region-start-color',
+ which defaults to the string that enables the terminal's
+ standout mode. The active region shows the text inserted by
+ bracketed-paste and any matching text found by incremental and
+ non-incremental history searches. 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 'On'.
+ When set to 'On', Readline configures the terminal 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 is called putting the
+ terminal into "bracketed paste mode"; it prevents Readline
+ from executing any editing commands bound to key sequences
+ appearing in the pasted text. The default is 'On'.
'enable-keypad'
When set to 'on', Readline will try to enable the application
@@ -1145,6 +1189,11 @@ File: readline.info, Node: Commands For History, Next: Commands For Text, Pre
supplied, specifies the history entry to use instead of the current
line.
+'fetch-history ()'
+ With a numeric argument, fetch that entry from the history list and
+ make it the current line. Without an argument, move back to the
+ first entry in the history list.
+

File: readline.info, Node: Commands For Text, Next: Commands For Killing, Prev: Commands For History, Up: Bindable Readline Commands
@@ -1519,7 +1568,7 @@ and subsequent lines with 'j', and so forth.
aiding in the consistency of user interface across discrete programs
that need to provide a command line interface.
- Copyright (C) 1988-2020 Free Software Foundation, Inc.
+ Copyright (C) 1988-2022 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice pare
@@ -1807,7 +1856,14 @@ These variables are available to function writers.
-- Variable: int rl_done
Setting this to a non-zero value causes Readline to return the
- current line immediately.
+ current line immediately. Readline will set this variable when it
+ has read a key sequence bound to 'accept-line' and is about to
+ return the line to the caller.
+
+ -- Variable: int rl_eof_found
+ Readline will set this variable when it has read an EOF character
+ (e.g., the stty 'EOF' character) on an empty line or encountered a
+ read error and is about to return a NULL line to the caller.
-- Variable: int rl_num_chars_to_read
Setting this to a positive value before calling 'readline()' causes
@@ -1918,6 +1974,10 @@ These variables are available to function writers.
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_timeout_event_hook
+ If non-zero, this is the address of a function to call if Readline
+ times out while reading 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
@@ -2049,6 +2109,15 @@ These variables are available to function writers.
'RL_STATE_DONE'
Readline has read a key sequence bound to 'accept-line' and is
about to return the line to the caller.
+ 'RL_STATE_TIMEOUT'
+ Readline has timed out (it did not receive a line or specified
+ number of characters before the timeout duration specified by
+ 'rl_set_timeout' elapsed) and is returning that status to the
+ caller.
+ 'RL_STATE_EOF'
+ Readline has read an EOF character (e.g., the stty 'EOF'
+ character) or encountered a read error and is about to return
+ a NULL line to the caller.
-- Variable: int rl_explicit_arg
Set to a non-zero value if an explicit numeric argument was
@@ -2322,6 +2391,14 @@ associate a new function name with an arbitrary function.
parameter. It takes a "translated" key sequence and should be used
if the key sequence can include NUL.
+ -- Function: int rl_trim_arg_from_keyseq (const char *keyseq, size_t
+ len, Keymap map)
+ If there is a numeric argument at the beginning of KEYSEQ, possibly
+ including digits, return the index of the first character in KEYSEQ
+ following the numeric argument. This can be used to skip over the
+ numeric argument (which is available as 'rl_numeric_arg' while
+ traversing the key sequence that invoked the current command.
+
-- Function: char ** rl_invoking_keyseqs (rl_command_func_t *function)
Return an array of strings representing the key sequences used to
invoke FUNCTION in the current keymap.
@@ -2490,8 +2567,8 @@ File: readline.info, Node: Redisplay, Next: Modifying Text, Prev: Allowing Un
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
- sequences in prompts.
+ 'readline.h' as '\001' and '\002', respectively). 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
@@ -2570,6 +2647,26 @@ File: readline.info, Node: Character Input, Next: Terminal Management, Prev:
waiting period is one-tenth of a second. Returns the old timeout
value.
+ -- Function: int rl_set_timeout (unsigned int secs, unsigned int usecs)
+ Set a timeout for subsequent calls to 'readline()'. If Readline
+ does not read a complete line, or the number of characters
+ specified by 'rl_num_chars_to_read', before the duration specfied
+ by SECS (in seconds) and USECS (microseconds), it returns and sets
+ 'RL_STATE_TIMEOUT' in 'rl_readline_state'. Passing 0 for 'secs'
+ and 'usecs' cancels any previously set timeout; the convenience
+ macro 'rl_clear_timeout()' is shorthand for this. Returns 0 if the
+ timeout is set successfully.
+
+ -- Function: int rl_timeout_remaining (unsigned int *secs, unsigned int
+ *usecs)
+ Return the number of seconds and microseconds remaining in the
+ current timeout duration in *SECS and *USECS, respectively. Both
+ *SECS and *USECS must be non-NULL to return any values. The return
+ value is -1 on error or when there is no timeout set, 0 when the
+ timeout has expired (leaving *SECS and *USECS unchanged), and 1 if
+ the timeout has not expired. If either of SECS and USECS is
+ 'NULL', the return value indicates whether the timeout has expired.
+

File: readline.info, Node: Terminal Management, Next: Utility Functions, Prev: Character Input, Up: Readline Convenience Functions
@@ -3011,13 +3108,13 @@ File: readline.info, Node: Readline Signal Handling, Next: Custom Completers,
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
-received in order to restore the terminal to a sane state, or provide
-application writers with functions to do so manually.
+exceptional events, like a user pressing the terminal's interrupt key,
+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 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',
@@ -3520,9 +3617,10 @@ File: readline.info, Node: Completion Variables, Next: A Short Completion Exam
-- Variable: int rl_completion_query_items
Up to this many items will be displayed in response to a
- possible-completions call. After that, readline asks the user if
- she is sure she wants to see them all. The default value is 100.
- A negative value indicates that Readline should never ask the user.
+ possible-completions call. After that, readline asks the user for
+ confirmation before displaying them. The default value is 100. A
+ negative value indicates that Readline should never ask for
+ confirmation.
-- Variable: int rl_completion_append_character
When a single completion alternative matches at the end of the
@@ -4633,6 +4731,10 @@ Function and Variable Index
(line 10)
* accept-line (Newline or Return): Commands For History.
(line 6)
+* active-region-end-color: Readline Init File Syntax.
+ (line 48)
+* active-region-start-color: Readline Init File Syntax.
+ (line 35)
* backward-char (C-b): Commands For Moving. (line 15)
* backward-delete-char (Rubout): Commands For Text. (line 17)
* backward-kill-line (C-x Rubout): Commands For Killing.
@@ -4644,11 +4746,11 @@ Function and Variable Index
(line 19)
* beginning-of-line (C-a): Commands For Moving. (line 6)
* bell-style: Readline Init File Syntax.
- (line 35)
+ (line 61)
* bind-tty-special-chars: Readline Init File Syntax.
- (line 42)
+ (line 68)
* blink-matching-paren: Readline Init File Syntax.
- (line 47)
+ (line 73)
* 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 69)
@@ -4659,25 +4761,25 @@ Function and Variable Index
* clear-display (M-C-l): Commands For Moving. (line 40)
* clear-screen (C-l): Commands For Moving. (line 45)
* colored-completion-prefix: Readline Init File Syntax.
- (line 52)
+ (line 78)
* colored-stats: Readline Init File Syntax.
- (line 59)
+ (line 88)
* comment-begin: Readline Init File Syntax.
- (line 65)
+ (line 94)
* complete (<TAB>): Commands For Completion.
(line 6)
* completion-display-width: Readline Init File Syntax.
- (line 70)
+ (line 99)
* completion-ignore-case: Readline Init File Syntax.
- (line 77)
+ (line 106)
* completion-map-case: Readline Init File Syntax.
- (line 82)
+ (line 111)
* completion-prefix-display-length: Readline Init File Syntax.
- (line 88)
+ (line 117)
* completion-query-items: Readline Init File Syntax.
- (line 95)
+ (line 124)
* convert-meta: Readline Init File Syntax.
- (line 105)
+ (line 135)
* copy-backward-word (): Commands For Killing.
(line 60)
* copy-forward-word (): Commands For Killing.
@@ -4691,7 +4793,7 @@ Function and Variable Index
(line 48)
* digit-argument (M-0, M-1, ... M--): Numeric Arguments. (line 6)
* disable-completion: Readline Init File Syntax.
- (line 113)
+ (line 143)
* do-lowercase-version (M-A, M-B, M-X, ...): Miscellaneous Commands.
(line 14)
* downcase-word (M-l): Commands For Text. (line 65)
@@ -4702,17 +4804,19 @@ Function and Variable Index
* dump-variables (): Miscellaneous Commands.
(line 76)
* echo-control-characters: Readline Init File Syntax.
- (line 118)
+ (line 148)
* editing-mode: Readline Init File Syntax.
- (line 123)
+ (line 153)
* emacs-editing-mode (C-e): Miscellaneous Commands.
(line 88)
* emacs-mode-string: Readline Init File Syntax.
- (line 129)
+ (line 159)
+* enable-active-region: Readline Init File Syntax.
+ (line 169)
* enable-bracketed-paste: Readline Init File Syntax.
- (line 139)
+ (line 182)
* enable-keypad: Readline Init File Syntax.
- (line 147)
+ (line 191)
* 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.
@@ -4721,36 +4825,38 @@ Function and Variable Index
* exchange-point-and-mark (C-x C-x): Miscellaneous Commands.
(line 37)
* expand-tilde: Readline Init File Syntax.
- (line 158)
+ (line 202)
+* fetch-history (): Commands For History.
+ (line 102)
* 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 32)
* forward-word (M-f): Commands For Moving. (line 18)
* history-preserve-point: Readline Init File Syntax.
- (line 162)
+ (line 206)
* history-search-backward (): Commands For History.
(line 56)
* history-search-forward (): Commands For History.
(line 50)
* history-size: Readline Init File Syntax.
- (line 168)
+ (line 212)
* history-substring-search-backward (): Commands For History.
(line 68)
* history-substring-search-forward (): Commands For History.
(line 62)
* horizontal-scroll-mode: Readline Init File Syntax.
- (line 177)
+ (line 221)
* input-meta: Readline Init File Syntax.
- (line 186)
+ (line 230)
* insert-comment (M-#): Miscellaneous Commands.
(line 61)
* insert-completions (M-*): Commands For Completion.
(line 18)
* isearch-terminators: Readline Init File Syntax.
- (line 194)
+ (line 238)
* keymap: Readline Init File Syntax.
- (line 201)
+ (line 245)
* kill-line (C-k): Commands For Killing.
(line 6)
* kill-region (): Commands For Killing.
@@ -4760,19 +4866,19 @@ Function and Variable Index
* kill-word (M-d): Commands For Killing.
(line 23)
* mark-modified-lines: Readline Init File Syntax.
- (line 231)
+ (line 275)
* mark-symlinked-directories: Readline Init File Syntax.
- (line 236)
+ (line 280)
* match-hidden-files: Readline Init File Syntax.
- (line 241)
+ (line 285)
* menu-complete (): Commands For Completion.
(line 22)
* menu-complete-backward (): Commands For Completion.
(line 34)
* menu-complete-display-prefix: Readline Init File Syntax.
- (line 248)
+ (line 292)
* meta-flag: Readline Init File Syntax.
- (line 186)
+ (line 230)
* next-history (C-n): Commands For History.
(line 16)
* next-screen-line (): Commands For Moving. (line 33)
@@ -4783,10 +4889,10 @@ Function and Variable Index
* operate-and-get-next (C-o): Commands For History.
(line 95)
* output-meta: Readline Init File Syntax.
- (line 253)
+ (line 297)
* overwrite-mode (): Commands For Text. (line 73)
* page-completions: Readline Init File Syntax.
- (line 259)
+ (line 303)
* possible-completions (M-?): Commands For Completion.
(line 11)
* prefix-meta (<ESC>): Miscellaneous Commands.
@@ -4803,27 +4909,27 @@ Function and Variable Index
* reverse-search-history (C-r): Commands For History.
(line 26)
* revert-all-at-newline: Readline Init File Syntax.
- (line 269)
+ (line 313)
* revert-line (M-r): Miscellaneous Commands.
(line 26)
* rl_activate_mark: Miscellaneous Functions.
(line 55)
* rl_add_defun: Function Naming. (line 18)
* rl_add_funmap_entry: Associating Function Names and Bindings.
- (line 54)
+ (line 62)
* rl_add_undo: Allowing Undoing. (line 39)
* rl_alphabetic: Utility Functions. (line 38)
-* rl_already_prompted: Readline Variables. (line 63)
+* rl_already_prompted: Readline Variables. (line 70)
* rl_attempted_completion_function: Completion Variables.
(line 11)
* rl_attempted_completion_over: Completion Variables.
- (line 255)
+ (line 256)
* rl_basic_quote_characters: Completion Variables.
(line 143)
* rl_basic_word_break_characters: Completion Variables.
(line 137)
* rl_begin_undo_group: Allowing Undoing. (line 28)
-* rl_binding_keymap: Readline Variables. (line 184)
+* rl_binding_keymap: Readline Variables. (line 195)
* rl_bind_key: Binding Keys. (line 21)
* rl_bind_keyseq: Binding Keys. (line 57)
* rl_bind_keyseq_if_unbound: Binding Keys. (line 75)
@@ -4866,7 +4972,7 @@ Function and Variable Index
* rl_complete_internal: Completion Functions.
(line 9)
* rl_completion_append_character: Completion Variables.
- (line 184)
+ (line 185)
* rl_completion_display_matches_hook: Completion Variables.
(line 124)
* rl_completion_entry_function: How Completing Works.
@@ -4874,11 +4980,11 @@ Function and Variable Index
* rl_completion_entry_function <1>: Completion Variables.
(line 6)
* rl_completion_found_quote: Completion Variables.
- (line 214)
+ (line 215)
* rl_completion_invoking_key: Completion Variables.
- (line 278)
+ (line 279)
* rl_completion_mark_symlink_dirs: Completion Variables.
- (line 220)
+ (line 221)
* rl_completion_matches: Completion Functions.
(line 43)
* rl_completion_mode: Completion Functions.
@@ -4886,13 +4992,13 @@ Function and Variable Index
* rl_completion_query_items: Completion Variables.
(line 178)
* rl_completion_quote_character: Completion Variables.
- (line 202)
+ (line 203)
* rl_completion_suppress_append: Completion Variables.
- (line 196)
+ (line 197)
* rl_completion_suppress_quote: Completion Variables.
- (line 208)
+ (line 209)
* rl_completion_type: Completion Variables.
- (line 270)
+ (line 271)
* rl_completion_word_break_hook: Completion Variables.
(line 151)
* rl_copy_keymap: Keymaps. (line 16)
@@ -4902,36 +5008,37 @@ Function and Variable Index
(line 62)
* rl_delete_text: Modifying Text. (line 10)
* rl_deprep_terminal: Terminal Management. (line 12)
-* rl_deprep_term_function: Readline Variables. (line 174)
+* rl_deprep_term_function: Readline Variables. (line 185)
* rl_ding: Utility Functions. (line 35)
* rl_directory_completion_hook: Completion Variables.
(line 63)
* rl_directory_rewrite_hook;: Completion Variables.
(line 81)
* rl_discard_keymap: Keymaps. (line 25)
-* rl_dispatching: Readline Variables. (line 40)
+* rl_dispatching: Readline Variables. (line 47)
* rl_display_match_list: Utility Functions. (line 41)
-* rl_display_prompt: Readline Variables. (line 58)
+* rl_display_prompt: Readline Variables. (line 65)
* rl_done: Readline Variables. (line 27)
* rl_do_undo: Allowing Undoing. (line 47)
* rl_echo_signal_char: Readline Signal Handling.
(line 143)
-* rl_editing_mode: Readline Variables. (line 281)
+* rl_editing_mode: Readline Variables. (line 301)
* rl_empty_keymap: Keymaps. (line 33)
* 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_eof_found: Readline Variables. (line 33)
+* rl_erase_empty_line: Readline Variables. (line 53)
+* rl_event_hook: Readline Variables. (line 130)
* 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_executing_key: Readline Variables. (line 202)
+* rl_executing_keymap: Readline Variables. (line 191)
+* rl_executing_keyseq: Readline Variables. (line 206)
+* rl_executing_macro: Readline Variables. (line 199)
* rl_expand_prompt: Redisplay. (line 66)
-* rl_explicit_arg: Readline Variables. (line 272)
+* rl_explicit_arg: Readline Variables. (line 292)
* rl_extend_line_buffer: Utility Functions. (line 26)
* rl_filename_completion_desired: Completion Variables.
- (line 235)
+ (line 236)
* rl_filename_completion_function: Completion Functions.
(line 57)
* rl_filename_dequoting_function: Completion Variables.
@@ -4939,7 +5046,7 @@ Function and Variable Index
* rl_filename_quote_characters: Completion Variables.
(line 166)
* rl_filename_quoting_desired: Completion Variables.
- (line 245)
+ (line 246)
* rl_filename_quoting_function: Completion Variables.
(line 23)
* rl_filename_rewrite_hook: Completion Variables.
@@ -4953,16 +5060,16 @@ Function and Variable Index
(line 113)
* rl_free_undo_list: Allowing Undoing. (line 44)
* rl_function_dumper: Associating Function Names and Bindings.
- (line 38)
+ (line 46)
* rl_function_of_keyseq: Associating Function Names and Bindings.
(line 13)
* rl_function_of_keyseq_len: Associating Function Names and Bindings.
(line 22)
* rl_funmap_names: Associating Function Names and Bindings.
- (line 48)
+ (line 56)
* rl_generic_bind: Binding Keys. (line 87)
* rl_getc: Character Input. (line 14)
-* rl_getc_function: Readline Variables. (line 128)
+* rl_getc_function: Readline Variables. (line 135)
* rl_get_keymap: Keymaps. (line 40)
* rl_get_keymap_by_name: Keymaps. (line 46)
* rl_get_keymap_name: Keymaps. (line 51)
@@ -4970,32 +5077,32 @@ Function and Variable Index
(line 165)
* rl_get_termcap: Miscellaneous Functions.
(line 41)
-* rl_gnu_readline_p: Readline Variables. (line 82)
+* rl_gnu_readline_p: Readline Variables. (line 89)
* rl_ignore_completion_duplicates: Completion Variables.
- (line 231)
+ (line 232)
* rl_ignore_some_completions_function: Completion Variables.
(line 55)
* rl_inhibit_completion: Completion Variables.
- (line 284)
+ (line 285)
* rl_initialize: Utility Functions. (line 30)
-* rl_input_available_hook: Readline Variables. (line 140)
+* rl_input_available_hook: Readline Variables. (line 151)
* rl_insert_completions: Completion Functions.
(line 31)
* rl_insert_text: Modifying Text. (line 6)
-* rl_instream: Readline Variables. (line 96)
+* rl_instream: Readline Variables. (line 103)
* rl_invoking_keyseqs: Associating Function Names and Bindings.
- (line 29)
+ (line 37)
* rl_invoking_keyseqs_in_map: Associating Function Names and Bindings.
- (line 33)
+ (line 41)
* rl_keep_mark_active: Miscellaneous Functions.
(line 65)
-* rl_key_sequence_length: Readline Variables. (line 199)
+* rl_key_sequence_length: Readline Variables. (line 210)
* rl_kill_text: Modifying Text. (line 18)
-* rl_last_func: Readline Variables. (line 109)
-* rl_library_version: Readline Variables. (line 72)
+* rl_last_func: Readline Variables. (line 116)
+* rl_library_version: Readline Variables. (line 79)
* rl_line_buffer: Readline Variables. (line 8)
* rl_list_funmap_names: Associating Function Names and Bindings.
- (line 44)
+ (line 52)
* rl_macro_bind: Miscellaneous Functions.
(line 6)
* rl_macro_dumper: Miscellaneous Functions.
@@ -5009,13 +5116,13 @@ Function and Variable Index
* rl_modifying: Allowing Undoing. (line 56)
* rl_named_function: Associating Function Names and Bindings.
(line 10)
-* rl_numeric_arg: Readline Variables. (line 276)
-* rl_num_chars_to_read: Readline Variables. (line 31)
+* rl_numeric_arg: Readline Variables. (line 296)
+* rl_num_chars_to_read: Readline Variables. (line 38)
* rl_on_new_line: Redisplay. (line 14)
* rl_on_new_line_with_prompt: Redisplay. (line 18)
-* rl_outstream: Readline Variables. (line 100)
+* rl_outstream: Readline Variables. (line 107)
* rl_parse_and_bind: Binding Keys. (line 95)
-* rl_pending_input: Readline Variables. (line 36)
+* rl_pending_input: Readline Variables. (line 43)
* rl_pending_signal: Readline Signal Handling.
(line 102)
* rl_persistent_signal_handlers: Readline Signal Handling.
@@ -5023,19 +5130,19 @@ Function and Variable Index
* rl_point: Readline Variables. (line 14)
* rl_possible_completions: Completion Functions.
(line 27)
-* rl_prefer_env_winsize: Readline Variables. (line 104)
+* rl_prefer_env_winsize: Readline Variables. (line 111)
* 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_prep_term_function: Readline Variables. (line 178)
+* rl_pre_input_hook: Readline Variables. (line 125)
+* rl_prompt: Readline Variables. (line 59)
* 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_readline_name: Readline Variables. (line 98)
+* rl_readline_state: Readline Variables. (line 213)
+* rl_readline_version: Readline Variables. (line 82)
* 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_redisplay_function: Readline Variables. (line 172)
* rl_replace_line: Utility Functions. (line 21)
* rl_reset_after_signal: Readline Signal Handling.
(line 121)
@@ -5060,15 +5167,20 @@ Function and Variable Index
(line 153)
* rl_set_signals: Readline Signal Handling.
(line 176)
+* rl_set_timeout: Character Input. (line 42)
* rl_show_char: Redisplay. (line 36)
-* rl_signal_event_hook: Readline Variables. (line 136)
+* rl_signal_event_hook: Readline Variables. (line 143)
* rl_sort_completion_matches: Completion Variables.
- (line 262)
+ (line 263)
* rl_special_prefixes: Completion Variables.
(line 171)
-* rl_startup_hook: Readline Variables. (line 114)
+* rl_startup_hook: Readline Variables. (line 121)
* rl_stuff_char: Character Input. (line 18)
-* rl_terminal_name: Readline Variables. (line 86)
+* rl_terminal_name: Readline Variables. (line 93)
+* rl_timeout_event_hook: Readline Variables. (line 147)
+* rl_timeout_remaining: Character Input. (line 52)
+* rl_trim_arg_from_keyseq: Associating Function Names and Bindings.
+ (line 29)
* rl_tty_set_default_bindings: Terminal Management. (line 17)
* rl_tty_set_echoing: Terminal Management. (line 27)
* rl_tty_unset_default_bindings: Terminal Management. (line 22)
@@ -5090,13 +5202,13 @@ Function and Variable Index
* shell-transpose-words (M-C-t): Commands For Killing.
(line 32)
* show-all-if-ambiguous: Readline Init File Syntax.
- (line 275)
+ (line 319)
* show-all-if-unmodified: Readline Init File Syntax.
- (line 281)
+ (line 325)
* show-mode-in-prompt: Readline Init File Syntax.
- (line 290)
+ (line 334)
* skip-completed-text: Readline Init File Syntax.
- (line 296)
+ (line 340)
* skip-csi-sequence (): Miscellaneous Commands.
(line 52)
* start-kbd-macro (C-x (): Keyboard Macros. (line 6)
@@ -5116,13 +5228,13 @@ Function and Variable Index
(line 39)
* upcase-word (M-u): Commands For Text. (line 61)
* vi-cmd-mode-string: Readline Init File Syntax.
- (line 309)
+ (line 353)
* vi-editing-mode (M-C-j): Miscellaneous Commands.
(line 92)
* vi-ins-mode-string: Readline Init File Syntax.
- (line 320)
+ (line 364)
* visible-stats: Readline Init File Syntax.
- (line 331)
+ (line 375)
* yank (C-y): Commands For Killing.
(line 70)
* yank-last-arg (M-. or M-_): Commands For History.
@@ -5135,59 +5247,59 @@ Function and Variable Index

Tag Table:
-Node: Top864
-Node: Command Line Editing1589
-Node: Introduction and Notation2241
-Node: Readline Interaction3865
-Node: Readline Bare Essentials5057
-Node: Readline Movement Commands6841
-Node: Readline Killing Commands7802
-Node: Readline Arguments9721
-Node: Searching10766
-Node: Readline Init File12919
+Node: Top862
+Node: Command Line Editing1587
+Node: Introduction and Notation2239
+Node: Readline Interaction3863
+Node: Readline Bare Essentials5055
+Node: Readline Movement Commands6839
+Node: Readline Killing Commands7800
+Node: Readline Arguments9719
+Node: Searching10764
+Node: Readline Init File12917
Node: Readline Init File Syntax14073
-Node: Conditional Init Constructs34331
-Node: Sample Init File38528
-Node: Bindable Readline Commands41653
-Node: Commands For Moving42708
-Node: Commands For History44467
-Node: Commands For Text49230
-Node: Commands For Killing52933
-Node: Numeric Arguments55647
-Node: Commands For Completion56787
-Node: Keyboard Macros58756
-Node: Miscellaneous Commands59444
-Node: Readline vi Mode63366
-Node: Programming with GNU Readline65183
-Node: Basic Behavior66169
-Node: Custom Functions69852
-Node: Readline Typedefs71335
-Node: Function Writing72969
-Node: Readline Variables74283
-Node: Readline Convenience Functions86955
-Node: Function Naming88027
-Node: Keymaps89289
-Node: Binding Keys92368
-Node: Associating Function Names and Bindings96916
-Node: Allowing Undoing99695
-Node: Redisplay102245
-Node: Modifying Text106269
-Node: Character Input107516
-Node: Terminal Management109414
-Node: Utility Functions111237
-Node: Miscellaneous Functions114565
-Node: Alternate Interface117984
-Node: A Readline Example120726
-Node: Alternate Interface Example122665
-Node: Readline Signal Handling126197
-Node: Custom Completers135456
-Node: How Completing Works136176
-Node: Completion Functions139483
-Node: Completion Variables143057
-Node: A Short Completion Example158850
-Node: GNU Free Documentation License171630
-Node: Concept Index196804
-Node: Function and Variable Index198325
+Node: Conditional Init Constructs36992
+Node: Sample Init File41189
+Node: Bindable Readline Commands44314
+Node: Commands For Moving45369
+Node: Commands For History47128
+Node: Commands For Text52092
+Node: Commands For Killing55795
+Node: Numeric Arguments58509
+Node: Commands For Completion59649
+Node: Keyboard Macros61618
+Node: Miscellaneous Commands62306
+Node: Readline vi Mode66228
+Node: Programming with GNU Readline68045
+Node: Basic Behavior69031
+Node: Custom Functions72714
+Node: Readline Typedefs74197
+Node: Function Writing75831
+Node: Readline Variables77145
+Node: Readline Convenience Functions90820
+Node: Function Naming91892
+Node: Keymaps93154
+Node: Binding Keys96233
+Node: Associating Function Names and Bindings100781
+Node: Allowing Undoing104011
+Node: Redisplay106561
+Node: Modifying Text110620
+Node: Character Input111867
+Node: Terminal Management114947
+Node: Utility Functions116770
+Node: Miscellaneous Functions120098
+Node: Alternate Interface123517
+Node: A Readline Example126259
+Node: Alternate Interface Example128198
+Node: Readline Signal Handling131730
+Node: Custom Completers140983
+Node: How Completing Works141703
+Node: Completion Functions145010
+Node: Completion Variables148584
+Node: A Short Completion Example164390
+Node: GNU Free Documentation License177170
+Node: Concept Index202344
+Node: Function and Variable Index203865

End Tag Table
diff --git a/doc/readline.pdf b/doc/readline.pdf
index 8723e98..1c2b843 100644
--- a/doc/readline.pdf
+++ b/doc/readline.pdf
Binary files differ
diff --git a/doc/readline.ps b/doc/readline.ps
index 229f63f..00d1f5b 100644
--- a/doc/readline.ps
+++ b/doc/readline.ps
@@ -1,8 +1,8 @@
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.999 Copyright 2019 Radical Eye Software
+%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
%%Title: readline.dvi
-%%CreationDate: Fri Oct 30 14:07:46 2020
-%%Pages: 82
+%%CreationDate: Fri Apr 8 19:52:34 2022
+%%Pages: 85
%%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 2020.10.30:1007
+%DVIPSSource: TeX output 2022.04.08:1552
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -6638,37 +6638,37 @@ rf /Ff 133[44 53 53 72 53 55 39 39 39 53 55 50 55 83
109.091 /CMBX12 rf /Fj 133[40 48 48 66 48 51 35 36 36
48 51 45 51 76 25 48 1[25 51 45 28 40 51 40 51 45 9[93
1[68 66 51 67 1[62 71 68 83 57 71 1[33 68 1[59 62 69
-66 64 68 15[45 45 2[30 31[51 51 53 11[{}50 90.9091 /CMSL10
-rf /Fk 134[44 1[60 42 49 30 37 38 1[46 46 51 74 23 42
-1[28 1[42 1[42 46 42 1[46 84[51 12[{}20 90.9091 /CMTI10
-rf /Fl 134[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 1[48 2[48 14[48 48 1[48
-1[48 2[48 48 48 17[48 48 2[48 5[48 39[{}37 90.9091 /CMSLTT10
-rf /Fm 135[56 2[56 1[42 2[51 58 56 4[27 1[58 49 51 1[54
-1[56 97[{}12 90.9091 /CMCSC10 rf /Fn 197[25 58[{}1 90.9091
-/CMMI10 rf /Fo 197[33 58[{}1 119.552 /CMMI12 rf /Fp 135[85
-117 1[90 63 64 66 1[90 81 90 134 45 2[45 90 81 49 74
-90 72 90 78 10[122 124 112 1[120 1[110 1[126 1[97 2[60
-1[127 101 106 124 117 1[122 14[81 81 49[{}36 143.462
-/CMBX12 rf /Fq 242[91 13[{}1 90.9091 /CMSY10 rf /Fr 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
-2[67 67 67 67 67 67 67 2[37 1[37 44[{}55 119.552 /CMBX12
-rf /Fs 129[48 48 48 48 48 48 48 48 48 48 48 48 48 48
+66 64 68 15[45 45 2[30 2[45 28[51 51 53 11[{}51 90.9091
+/CMSL10 rf /Fk 134[44 1[60 42 49 30 37 38 1[46 46 51
+74 23 42 1[28 1[42 1[42 46 42 1[46 84[51 12[{}20 90.9091
+/CMTI10 rf /Fl 134[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 1[48 2[48 14[48
+48 1[48 1[48 2[48 48 48 17[48 48 2[48 5[48 39[{}37 90.9091
+/CMSLTT10 rf /Fm 135[56 2[56 1[42 2[51 58 56 4[27 1[58
+49 51 1[54 1[56 97[{}12 90.9091 /CMCSC10 rf /Fn 197[25
+58[{}1 90.9091 /CMMI10 rf /Fo 197[33 58[{}1 119.552 /CMMI12
+rf /Fp 135[85 117 1[90 63 64 66 1[90 81 90 134 45 2[45
+90 81 49 74 90 72 90 78 10[122 124 112 1[120 1[110 1[126
+1[97 2[60 1[127 101 106 124 117 1[122 14[81 81 49[{}36
+143.462 /CMBX12 rf /Fq 242[91 13[{}1 90.9091 /CMSY10
+rf /Fr 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 67 67 67 67 67 67 67 67 2[37 1[37 44[{}57
+119.552 /CMBX12 rf /Fs 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 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 33[{}91 90.9091 /CMTT10 rf /Ft 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 /Fu 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
+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 33[{}91 90.9091 /CMTT10
+rf /Ft 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 /Fu 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
%%Feature: *Resolution 600dpi
@@ -6683,20 +6683,20 @@ ifelse
%%EndSetup
%%Page: 1 1
TeXDict begin 1 0 bop 150 1318 a Fu(GNU)65 b(Readline)g(Library)p
-150 1418 3600 34 v 1873 1515 a Ft(Edition)30 b(8.1,)i(for)e
-Fs(Readline)e(Library)h Ft(V)-8 b(ersion)31 b(8.1.)3217
-1623 y(Octob)s(er)f(2020)150 4927 y Fr(Chet)45 b(Ramey)-11
+150 1418 3600 34 v 1873 1515 a Ft(Edition)30 b(8.2,)i(for)e
+Fs(Readline)e(Library)h Ft(V)-8 b(ersion)31 b(8.2.)3285
+1623 y(Marc)m(h)g(2022)150 4927 y Fr(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 Ft(This)28 b(man)m(ual)i(describ)s(es)
-e(the)i(GNU)f(Readline)h(Library)e(\(v)m(ersion)i(8.1,)h(29)f(Octob)s
-(er)f(2020\),)j(a)d(library)150 4523 y(whic)m(h)39 b(aids)g(in)g(the)g
+TeXDict begin 2 1 bop 150 4413 a Ft(This)33 b(man)m(ual)i(describ)s(es)
+f(the)g(GNU)h(Readline)g(Library)e(\(v)m(ersion)i(8.2,)i(11)e(Marc)m(h)
+g(2022\),)j(a)c(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 Fq(\015)f Ft(1988{2020)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)
+4767 y Fq(\015)f Ft(1988{2022)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
@@ -6746,143 +6746,143 @@ b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
39 b Ft(4)399 1773 y(1.3.2)93 b(Conditional)31 b(Init)f(Constructs)16
b Fn(:)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(:)29
-b Ft(12)399 1882 y(1.3.3)93 b(Sample)30 b(Init)g(File)22
+b Ft(13)399 1882 y(1.3.3)93 b(Sample)30 b(Init)g(File)22
b Fn(:)17 b(:)f(:)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(:)35 b Ft(13)275 1992 y(1.4)92
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)35 b Ft(14)275 1992 y(1.4)92
b(Bindable)30 b(Readline)h(Commands)22 b Fn(:)15 b(:)g(:)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(:)35 b Ft(16)399 2101
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)35 b Ft(17)399 2101
y(1.4.1)93 b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)18
b Fn(:)f(:)f(:)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
-(:)31 b Ft(16)399 2211 y(1.4.2)93 b(Commands)29 b(F)-8
+(:)31 b Ft(17)399 2211 y(1.4.2)93 b(Commands)29 b(F)-8
b(or)31 b(Manipulating)g(The)f(History)f Fn(:)15 b(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Ft(17)399
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Ft(18)399
2320 y(1.4.3)93 b(Commands)29 b(F)-8 b(or)31 b(Changing)f(T)-8
b(ext)12 b Fn(:)17 b(:)e(:)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(:)25
-b Ft(18)399 2430 y(1.4.4)93 b(Killing)31 b(And)e(Y)-8
+b Ft(19)399 2430 y(1.4.4)93 b(Killing)31 b(And)e(Y)-8
b(anking)13 b Fn(:)k(:)e(:)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(:)26 b Ft(20)399 2540 y(1.4.5)93
+(:)f(:)g(:)h(:)f(:)h(:)f(:)26 b Ft(21)399 2540 y(1.4.5)93
b(Sp)s(ecifying)30 b(Numeric)g(Argumen)m(ts)e Fn(:)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(:)41 b Ft(21)399 2649
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b Ft(22)399 2649
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)22 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)35
-b Ft(21)399 2759 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)11
+b Ft(22)399 2759 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)11
b Fn(:)17 b(:)e(:)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(:)f(:)g(:)h(:)24 b Ft(22)399 2868 y(1.4.8)93
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)24 b Ft(23)399 2868 y(1.4.8)93
b(Some)30 b(Miscellaneous)j(Commands)16 b Fn(:)e(:)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(:)29 b Ft(22)275 2978 y(1.5)92 b(Readline)31
+(:)h(:)f(:)29 b Ft(23)275 2978 y(1.5)92 b(Readline)31
b(vi)f(Mo)s(de)10 b Fn(:)16 b(:)f(:)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(:)f(:)g(:)h(:)23
-b Ft(24)150 3229 y Fr(2)135 b(Programming)46 b(with)f(GNU)g(Readline)37
+b Ft(25)150 3229 y Fr(2)135 b(Programming)46 b(with)f(GNU)g(Readline)37
b Fo(:)19 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)48
-b Fr(25)275 3366 y Ft(2.1)92 b(Basic)31 b(Beha)m(vior)23
+b Fr(26)275 3366 y Ft(2.1)92 b(Basic)31 b(Beha)m(vior)23
b Fn(:)17 b(:)f(:)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(:)36
-b Ft(25)275 3475 y(2.2)92 b(Custom)29 b(F)-8 b(unctions)19
+b Ft(26)275 3475 y(2.2)92 b(Custom)29 b(F)-8 b(unctions)19
b Fn(:)d(:)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(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)32 b Ft(26)399
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)32 b Ft(27)399
3585 y(2.2.1)93 b(Readline)31 b(T)m(yp)s(edefs)17 b Fn(:)e(:)g(:)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
-(:)30 b Ft(27)399 3694 y(2.2.2)93 b(W)-8 b(riting)31
+(:)30 b Ft(28)399 3694 y(2.2.2)93 b(W)-8 b(riting)31
b(a)g(New)g(F)-8 b(unction)24 b Fn(:)16 b(:)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(:)37 b Ft(27)275 3804 y(2.3)92
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)37 b Ft(28)275 3804 y(2.3)92
b(Readline)31 b(V)-8 b(ariables)11 b Fn(:)17 b(:)e(:)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(:)24 b Ft(28)275 3914 y(2.4)92 b(Readline)31
+(:)h(:)f(:)24 b Ft(29)275 3914 y(2.4)92 b(Readline)31
b(Con)m(v)m(enience)g(F)-8 b(unctions)22 b Fn(:)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(:)35 b Ft(33)399 4023 y(2.4.1)93
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)35 b Ft(34)399 4023 y(2.4.1)93
b(Naming)31 b(a)g(F)-8 b(unction)21 b Fn(:)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(:)34
-b Ft(33)399 4133 y(2.4.2)93 b(Selecting)32 b(a)e(Keymap)9
+b Ft(34)399 4133 y(2.4.2)93 b(Selecting)32 b(a)e(Keymap)9
b Fn(:)16 b(:)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(:)22 b Ft(34)399 4242 y(2.4.3)93 b(Binding)30
+f(:)h(:)f(:)g(:)h(:)22 b Ft(35)399 4242 y(2.4.3)93 b(Binding)30
b(Keys)15 b Fn(:)g(:)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(:)f(:)g(:)28
-b Ft(35)399 4352 y(2.4.4)93 b(Asso)s(ciating)32 b(F)-8
+b Ft(36)399 4352 y(2.4.4)93 b(Asso)s(ciating)32 b(F)-8
b(unction)31 b(Names)g(and)e(Bindings)d Fn(:)16 b(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39 b Ft(36)399
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39 b Ft(38)399
4462 y(2.4.5)93 b(Allo)m(wing)32 b(Undoing)26 b Fn(:)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(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)40 b Ft(37)399 4571 y(2.4.6)93 b(Redispla)m(y)10
+f(:)g(:)h(:)f(:)40 b Ft(39)399 4571 y(2.4.6)93 b(Redispla)m(y)10
b Fn(:)15 b(:)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(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)23
-b Ft(38)399 4681 y(2.4.7)93 b(Mo)s(difying)30 b(T)-8
+b Ft(40)399 4681 y(2.4.7)93 b(Mo)s(difying)30 b(T)-8
b(ext)16 b Fn(:)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(:)h(:)28 b Ft(40)399
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)28 b Ft(41)399
4790 y(2.4.8)93 b(Character)31 b(Input)22 b Fn(:)13 b(:)j(:)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(:)35 b Ft(40)399 4900 y(2.4.9)93 b(T)-8 b(erminal)30
+(:)g(:)35 b Ft(42)399 4900 y(2.4.9)93 b(T)-8 b(erminal)30
b(Managemen)m(t)17 b Fn(:)h(:)d(:)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(:)30 b Ft(41)399 5010 y(2.4.10)93
+g(:)h(:)f(:)h(:)f(:)g(:)30 b Ft(43)399 5010 y(2.4.10)93
b(Utilit)m(y)33 b(F)-8 b(unctions)24 b Fn(:)15 b(:)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(:)f(:)g(:)h(:)f(:)h(:)36
-b Ft(41)399 5119 y(2.4.11)93 b(Miscellaneous)33 b(F)-8
+b Ft(43)399 5119 y(2.4.11)93 b(Miscellaneous)33 b(F)-8
b(unctions)23 b Fn(:)16 b(:)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(:)36 b Ft(43)399 5229 y(2.4.12)93 b(Alternate)32
+f(:)h(:)f(:)36 b Ft(45)399 5229 y(2.4.12)93 b(Alternate)32
b(In)m(terface)27 b Fn(:)15 b(:)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(:)38 b Ft(44)399 5338
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Ft(46)399 5338
y(2.4.13)93 b(A)31 b(Readline)g(Example)12 b Fn(:)j(:)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(:)25
-b Ft(45)p eop end
+b Ft(46)p eop end
%%Page: -2 4
TeXDict begin -2 3 bop 3699 -116 a Ft(ii)399 83 y(2.4.14)93
b(Alternate)32 b(In)m(terface)g(Example)18 b Fn(:)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(:)31 b Ft(46)275 193 y(2.5)92 b(Readline)31
+f(:)g(:)h(:)f(:)h(:)31 b Ft(48)275 193 y(2.5)92 b(Readline)31
b(Signal)f(Handling)18 b Fn(:)e(:)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(:)31 b Ft(48)275 302
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)31 b Ft(50)275 302
y(2.6)92 b(Custom)29 b(Completers)e Fn(:)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(:)g
-(:)40 b Ft(51)399 412 y(2.6.1)93 b(Ho)m(w)31 b(Completing)g(W)-8
+(:)40 b Ft(53)399 412 y(2.6.1)93 b(Ho)m(w)31 b(Completing)g(W)-8
b(orks)11 b Fn(:)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(:)24 b Ft(51)399 521 y(2.6.2)93 b(Completion)31
+g(:)h(:)f(:)h(:)24 b Ft(53)399 521 y(2.6.2)93 b(Completion)31
b(F)-8 b(unctions)28 b Fn(:)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(:)40 b Ft(52)399 631 y(2.6.3)93
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b Ft(54)399 631 y(2.6.3)93
b(Completion)31 b(V)-8 b(ariables)18 b Fn(:)e(:)g(:)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(:)31 b
-Ft(53)399 741 y(2.6.4)93 b(A)30 b(Short)g(Completion)h(Example)15
+Ft(55)399 741 y(2.6.4)93 b(A)30 b(Short)g(Completion)h(Example)15
b Fn(:)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(:)28 b
-Ft(58)150 991 y Fr(App)t(endix)44 b(A)119 b(GNU)39 b(F)-11
+Ft(60)150 991 y Fr(App)t(endix)44 b(A)119 b(GNU)39 b(F)-11
b(ree)38 b(Do)t(cumen)l(tation)i(License)25 b Fo(:)20
-b(:)32 b Fr(67)150 1269 y(Concept)45 b(Index)36 b Fo(:)19
+b(:)32 b Fr(69)150 1269 y(Concept)45 b(Index)36 b Fo(:)19
b(:)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(:)g(:)
-h(:)49 b Fr(75)150 1548 y(F)-11 b(unction)44 b(and)h(V)-11
+h(:)49 b Fr(77)150 1548 y(F)-11 b(unction)44 b(and)h(V)-11
b(ariable)45 b(Index)20 b Fo(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fr(76)p
+f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fr(78)p
eop end
%%Page: 1 5
TeXDict begin 1 4 bop 3705 -116 a Ft(1)150 299 y Fp(1)80
@@ -7156,9 +7156,9 @@ y Ft(Although)f(the)g(Readline)g(library)f(comes)i(with)e(a)h(set)h(of)
f(Emacs-lik)m(e)h(k)m(eybindings)f(installed)g(b)m(y)150
1896 y(default,)26 b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)
m(t)f(set)g(of)g(k)m(eybindings.)38 b(An)m(y)25 b(user)f(can)h
-(customize)h(programs)150 2005 y(that)45 b(use)f(Readline)h(b)m(y)f
-(putting)g(commands)g(in)g(an)g Fj(inputrc)49 b Ft(\014le,)g(con)m(v)m
-(en)m(tionally)e(in)d(his)g(home)150 2115 y(directory)-8
+(customize)h(programs)150 2005 y(that)39 b(use)g(Readline)g(b)m(y)f
+(putting)h(commands)f(in)g(an)h Fj(inputrc)k Ft(\014le,)e(con)m(v)m(en)
+m(tionally)h(in)c(their)h(home)150 2115 y(directory)-8
b(.)39 b(The)23 b(name)h(of)f(this)h(\014le)f(is)g(tak)m(en)i(from)e
(the)g(v)-5 b(alue)24 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5
b(ariable)25 b Fs(INPUTRC)p Ft(.)150 2224 y(If)30 b(that)g(v)-5
@@ -7178,7 +7178,7 @@ b(lines)h(are)150 3322 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
(a)g(`)p Fs(#)p Ft(')g(are)h(commen)m(ts.)73 b(Lines)41
b(b)s(eginning)f(with)g(a)i(`)p Fs($)p Ft(')f(indicate)150
3431 y(conditional)i(constructs)e(\(see)i(Section)f(1.3.2)h
-([Conditional)f(Init)f(Constructs],)j(page)f(12\).)74
+([Conditional)f(Init)f(Constructs],)j(page)f(13\).)74
b(Other)150 3541 y(lines)31 b(denote)g(v)-5 b(ariable)31
b(settings)g(and)f(k)m(ey)h(bindings.)150 3722 y(V)-8
b(ariable)32 b(Settings)630 3832 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
@@ -7205,600 +7205,673 @@ b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
eop end
%%Page: 5 9
TeXDict begin 5 8 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(5)630 299 y Fs(bell-style)1110
-408 y Ft(Con)m(trols)44 b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)
-m(ts)f(to)h(ring)e(the)h(termi-)1110 518 y(nal)37 b(b)s(ell.)61
+b(Command)29 b(Line)i(Editing)2153 b(5)630 299 y Fs
+(active-region-start-colo)o(r)1110 408 y Ft(A)27 b(string)f(v)-5
+b(ariable)27 b(that)g(con)m(trols)h(the)f(text)g(color)h(and)e(bac)m
+(kground)g(when)1110 518 y(displa)m(ying)50 b(the)f(text)h(in)f(the)h
+(activ)m(e)h(region)f(\(see)g(the)g(description)f(of)1110
+628 y Fs(enable-active-region)25 b Ft(b)s(elo)m(w\).)43
+b(This)30 b(string)h(m)m(ust)f(not)h(tak)m(e)i(up)d(an)m(y)1110
+737 y(ph)m(ysical)25 b(c)m(haracter)h(p)s(ositions)f(on)g(the)f(displa)
+m(y)-8 b(,)27 b(so)e(it)g(should)f(consist)h(only)1110
+847 y(of)37 b(terminal)g(escap)s(e)g(sequences.)61 b(It)36
+b(is)h(output)g(to)g(the)g(terminal)g(b)s(efore)1110
+956 y(displa)m(ying)h(the)f(text)i(in)e(the)h(activ)m(e)h(region.)63
+b(This)37 b(v)-5 b(ariable)38 b(is)f(reset)h(to)1110
+1066 y(the)29 b(default)g(v)-5 b(alue)29 b(whenev)m(er)f(the)h
+(terminal)g(t)m(yp)s(e)g(c)m(hanges.)41 b(The)28 b(default)1110
+1176 y(v)-5 b(alue)30 b(is)f(the)g(string)g(that)h(puts)e(the)i
+(terminal)f(in)g(standout)g(mo)s(de,)g(as)h(ob-)1110
+1285 y(tained)40 b(from)f(the)h(terminal's)g(terminfo)g(description.)68
+b(A)40 b(sample)f(v)-5 b(alue)1110 1395 y(migh)m(t)31
+b(b)s(e)f(`)p Fs(\\e[01;33m)p Ft('.)630 1570 y Fs
+(active-region-end-color)1110 1680 y Ft(A)48 b(string)g(v)-5
+b(ariable)48 b(that)h Fs(")p Ft(undo)s(es)p Fs(")d Ft(the)i(e\013ects)h
+(of)f Fs(active-region-)1110 1789 y(start-color)36 b
+Ft(and)i(restores)h Fs(")p Ft(normal)p Fs(")f Ft(terminal)h(displa)m(y)
+g(app)s(earance)1110 1899 y(after)26 b(displa)m(ying)h(text)f(in)g(the)
+g(activ)m(e)i(region.)40 b(This)25 b(string)h(m)m(ust)f(not)h(tak)m(e)
+1110 2008 y(up)e(an)m(y)h(ph)m(ysical)h(c)m(haracter)h(p)s(ositions)d
+(on)h(the)h(displa)m(y)-8 b(,)27 b(so)e(it)g(should)f(con-)1110
+2118 y(sist)29 b(only)h(of)f(terminal)h(escap)s(e)f(sequences.)41
+b(It)29 b(is)g(output)g(to)h(the)f(terminal)1110 2228
+y(after)36 b(displa)m(ying)g(the)g(text)h(in)e(the)h(activ)m(e)i
+(region.)58 b(This)34 b(v)-5 b(ariable)37 b(is)f(re-)1110
+2337 y(set)e(to)g(the)g(default)g(v)-5 b(alue)34 b(whenev)m(er)f(the)h
+(terminal)g(t)m(yp)s(e)f(c)m(hanges.)51 b(The)1110 2447
+y(default)38 b(v)-5 b(alue)39 b(is)f(the)h(string)f(that)h(restores)f
+(the)h(terminal)f(from)g(stand-)1110 2556 y(out)30 b(mo)s(de,)f(as)g
+(obtained)h(from)f(the)g(terminal's)h(terminfo)f(description.)41
+b(A)1110 2666 y(sample)31 b(v)-5 b(alue)30 b(migh)m(t)h(b)s(e)f(`)p
+Fs(\\e[0m)p Ft('.)630 2841 y Fs(bell-style)1110 2951
+y Ft(Con)m(trols)44 b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)m
+(ts)f(to)h(ring)e(the)h(termi-)1110 3061 y(nal)37 b(b)s(ell.)61
b(If)37 b(set)h(to)g(`)p Fs(none)p Ft(',)g(Readline)g(nev)m(er)g(rings)
-e(the)i(b)s(ell.)61 b(If)36 b(set)i(to)1110 628 y(`)p
+e(the)i(b)s(ell.)61 b(If)36 b(set)i(to)1110 3170 y(`)p
Fs(visible)p Ft(',)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
-737 y(`)p Fs(audible)p Ft(')j(\(the)i(default\),)i(Readline)e(attempts)
-g(to)h(ring)e(the)g(terminal's)1110 847 y(b)s(ell.)630
-1005 y Fs(bind-tty-special-chars)1110 1115 y Ft(If)e(set)g(to)h(`)p
+3280 y(`)p Fs(audible)p Ft(')j(\(the)i(default\),)i(Readline)e
+(attempts)g(to)h(ring)e(the)g(terminal's)1110 3389 y(b)s(ell.)630
+3565 y Fs(bind-tty-special-chars)1110 3674 y Ft(If)e(set)g(to)h(`)p
Fs(on)p Ft(')f(\(the)g(default\),)i(Readline)f(attempts)g(to)g(bind)d
-(the)i(con)m(trol)1110 1224 y(c)m(haracters)30 b(treated)g(sp)s
+(the)i(con)m(trol)1110 3784 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 1334 y(Readline)h(equiv)-5 b(alen)m(ts.)630
-1492 y Fs(blink-matching-paren)1110 1602 y Ft(If)36 b(set)g(to)h(`)p
+(their)1110 3893 y(Readline)h(equiv)-5 b(alen)m(ts.)630
+4069 y Fs(blink-matching-paren)1110 4178 y Ft(If)36 b(set)g(to)h(`)p
Fs(on)p Ft(',)h(Readline)f(attempts)g(to)g(brie\015y)e(mo)m(v)m(e)j
-(the)f(cursor)e(to)i(an)1110 1711 y(op)s(ening)k(paren)m(thesis)h(when)
+(the)f(cursor)e(to)i(an)1110 4288 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
-1821 y(default)31 b(is)f(`)p Fs(off)p Ft('.)630 1979
-y Fs(colored-completion-prefi)o(x)1110 2089 y Ft(If)f(set)h(to)g(`)p
+4398 y(default)31 b(is)f(`)p Fs(off)p Ft('.)630 4573
+y Fs(colored-completion-prefi)o(x)1110 4682 y Ft(If)f(set)h(to)g(`)p
Fs(on)p Ft(',)g(when)e(listing)i(completions,)h(Readline)f(displa)m(ys)
-g(the)f(com-)1110 2198 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s
+g(the)f(com-)1110 4792 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
-2308 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 Fs(LS_COLORS)1110 2418 y
-Ft(en)m(vironmen)m(t)31 b(v)-5 b(ariable.)41 b(The)30
-b(default)h(is)f(`)p Fs(off)p Ft('.)630 2576 y Fs(colored-stats)1110
-2685 y Ft(If)c(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(displa)m(ys)g
-(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
-2795 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+4902 y(The)f(color)h(de\014nitions)f(are)h(tak)m(en)g(from)f(the)g(v)-5
+b(alue)26 b(of)g(the)f Fs(LS_COLORS)e Ft(en-)1110 5011
+y(vironmen)m(t)34 b(v)-5 b(ariable.)50 b(If)33 b(there)h(is)g(a)f
+(color)i(de\014nition)e(in)g Fs(LS_COLORS)e Ft(for)1110
+5121 y(the)22 b(custom)g(su\016x)f(`)p Fs(readline-colored-complet)o
+(ion)o(-pre)o(fix)p Ft(',)c(Read-)1110 5230 y(line)24
+b(uses)e(this)i(color)g(for)f(the)h(common)f(pre\014x)f(instead)i(of)f
+(its)h(default.)38 b(The)1110 5340 y(default)31 b(is)f(`)p
+Fs(off)p Ft('.)p eop end
+%%Page: 6 10
+TeXDict begin 6 9 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(6)630 299 y Fs(colored-stats)1110
+408 y Ft(If)26 b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(displa)m(ys)
+g(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
+518 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
-2905 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fs(LS_COLORS)d
+628 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fs(LS_COLORS)d
Ft(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
-3014 y(is)30 b(`)p Fs(off)p Ft('.)630 3173 y Fs(comment-begin)1110
-3282 y Ft(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 3392 y Fs(insert-comment)26
+737 y(is)30 b(`)p Fs(off)p Ft('.)630 941 y Fs(comment-begin)1110
+1050 y Ft(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 1160 y Fs(insert-comment)26
b Ft(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)f Fs("#")p Ft(.)630 3550 y Fs(completion-display-width)
-1110 3660 y Ft(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 3769
+b(alue)31 b(is)f Fs("#")p Ft(.)630 1363 y Fs(completion-display-width)
+1110 1473 y Ft(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 1583
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
-3879 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
+1692 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
-3988 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
+1802 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
-4147 y Fs(completion-ignore-case)1110 4256 y Ft(If)d(set)h(to)g(`)p
+2005 y Fs(completion-ignore-case)1110 2115 y Ft(If)d(set)h(to)g(`)p
Fs(on)p Ft(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
-(and)e(completion)1110 4366 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
+(and)e(completion)1110 2225 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 Fs(off)p
-Ft('.)630 4524 y Fs(completion-map-case)1110 4634 y Ft(If)22
+Ft('.)630 2428 y Fs(completion-map-case)1110 2538 y Ft(If)22
b(set)g(to)h(`)p Fs(on)p Ft(',)h(and)e Fj(completion-ignore-case)31
-b Ft(is)22 b(enabled,)i(Readline)f(treats)1110 4743 y(h)m(yphens)29
+b Ft(is)22 b(enabled,)i(Readline)f(treats)1110 2647 y(h)m(yphens)29
b(\(`)p Fs(-)p Ft('\))j(and)e(underscores)g(\(`)p Fs(_)p
Ft('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
-4853 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
-(completion.)85 b(The)44 b(default)1110 4963 y(v)-5 b(alue)31
-b(is)f(`)p Fs(off)p Ft('.)630 5121 y Fs(completion-prefix-displa)o
-(y-le)o(ngth)1110 5230 y Ft(The)h(length)g(in)g(c)m(haracters)i(of)f
+2757 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
+(completion.)85 b(The)44 b(default)1110 2866 y(v)-5 b(alue)31
+b(is)f(`)p Fs(off)p Ft('.)630 3070 y Fs(completion-prefix-displa)o
+(y-le)o(ngth)1110 3180 y Ft(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
-5340 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)p eop end
-%%Page: 6 10
-TeXDict begin 6 9 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(6)1110 299 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 408 y(replaced)k(with)f(an)g
-(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)f(completions.)630
-565 y Fs(completion-query-items)1110 675 y Ft(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 784 y(is)43 b(ask)m(ed)g(whether)f(the)g(list)h(of)g(p)s
-(ossibilities)g(should)f(b)s(e)g(displa)m(y)m(ed.)77
-b(If)1110 894 y(the)29 b(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g
-(completions)h(is)f(greater)h(than)f(or)g(equal)g(to)h(this)1110
-1003 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g(whether)f(or)h(not)g
-(the)g(user)f(wishes)g(to)i(view)1110 1113 y(them;)33
-b(otherwise,)f(they)g(are)g(simply)g(listed.)45 b(This)31
-b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110 1223
-y(to)39 b(an)f(in)m(teger)i(v)-5 b(alue)39 b(greater)g(than)f(or)h
-(equal)g(to)g(0.)65 b(A)38 b(negativ)m(e)i(v)-5 b(alue)1110
-1332 y(means)30 b(Readline)h(should)f(nev)m(er)g(ask.)41
-b(The)30 b(default)h(limit)g(is)f Fs(100)p Ft(.)630 1489
-y Fs(convert-meta)1110 1598 y Ft(If)22 b(set)g(to)h(`)p
-Fs(on)p Ft(',)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 1708 y(to)33 b(an)e
-Fm(asci)r(i)h Ft(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 1817 y(an)24 b Fs(ESC)g
-Ft(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 1927 y(The)i(default)h(v)-5
-b(alue)28 b(is)f(`)p Fs(on)p Ft(',)i(but)d(will)i(b)s(e)f(set)h(to)g(`)
-p Fs(off)p Ft(')g(if)f(the)h(lo)s(cale)h(is)f(one)1110
-2037 y(that)j(con)m(tains)h(eigh)m(t-bit)g(c)m(haracters.)630
-2193 y Fs(disable-completion)1110 2303 y Ft(If)k(set)h(to)h(`)p
-Fs(On)p Ft(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h(completion.)60
-b(Completion)1110 2412 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
-2522 y(to)31 b Fs(self-insert)p Ft(.)38 b(The)30 b(default)g(is)h(`)p
-Fs(off)p Ft('.)630 2679 y Fs(echo-control-characters)1110
-2788 y Ft(When)f(set)h(to)g(`)p Fs(on)p Ft(',)f(on)g(op)s(erating)h
-(systems)f(that)h(indicate)g(they)g(supp)s(ort)1110 2898
+3289 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 3399
+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 3508
+y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
+f(completions.)630 3712 y Fs(completion-query-items)1110
+3821 y Ft(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 3931 y(is)43
+b(ask)m(ed)g(whether)f(the)g(list)h(of)g(p)s(ossibilities)g(should)f(b)
+s(e)g(displa)m(y)m(ed.)77 b(If)1110 4041 y(the)29 b(n)m(um)m(b)s(er)f
+(of)h(p)s(ossible)g(completions)h(is)f(greater)h(than)f(or)g(equal)g
+(to)h(this)1110 4150 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g
+(whether)f(or)h(not)g(the)g(user)f(wishes)g(to)i(view)1110
+4260 y(them;)33 b(otherwise,)f(they)g(are)g(simply)g(listed.)45
+b(This)31 b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110
+4369 y(to)43 b(an)e(in)m(teger)j(v)-5 b(alue)42 b(greater)h(than)f(or)g
+(equal)g(to)h(zero.)76 b(A)42 b(zero)g(v)-5 b(alue)1110
+4479 y(means)40 b(Readline)h(should)f(nev)m(er)g(ask;)46
+b(negativ)m(e)d(v)-5 b(alues)41 b(are)f(treated)i(as)1110
+4589 y(zero.)g(The)29 b(default)i(limit)g(is)g Fs(100)p
+Ft(.)630 4792 y Fs(convert-meta)1110 4902 y Ft(If)22
+b(set)g(to)h(`)p Fs(on)p Ft(',)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
+5011 y(to)33 b(an)e Fm(asci)r(i)h Ft(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
+5121 y(an)24 b Fs(ESC)g Ft(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 5230
+y(The)i(default)h(v)-5 b(alue)28 b(is)f(`)p Fs(on)p Ft(',)i(but)d(will)
+i(b)s(e)f(set)h(to)g(`)p Fs(off)p Ft(')g(if)f(the)h(lo)s(cale)h(is)f
+(one)1110 5340 y(that)j(con)m(tains)h(eigh)m(t-bit)g(c)m(haracters.)p
+eop end
+%%Page: 7 11
+TeXDict begin 7 10 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fs(disable-completion)
+1110 408 y Ft(If)36 b(set)h(to)h(`)p Fs(On)p Ft(',)g(Readline)f(will)g
+(inhibit)f(w)m(ord)h(completion.)60 b(Completion)1110
+518 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
+628 y(to)31 b Fs(self-insert)p Ft(.)38 b(The)30 b(default)g(is)h(`)p
+Fs(off)p Ft('.)630 774 y Fs(echo-control-characters)1110
+883 y Ft(When)f(set)h(to)g(`)p Fs(on)p Ft(',)f(on)g(op)s(erating)h
+(systems)f(that)h(indicate)g(they)g(supp)s(ort)1110 993
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 3007 y(from)e(the)g(k)m(eyb)s(oard.)
-41 b(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630 3164
-y Fs(editing-mode)1110 3273 y Ft(The)d Fs(editing-mode)e
+(to)j(a)f(signal)g(generated)1110 1103 y(from)e(the)g(k)m(eyb)s(oard.)
+41 b(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630 1249
+y Fs(editing-mode)1110 1358 y Ft(The)d Fs(editing-mode)e
Ft(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 3383 y(ings)25 b(is)g(used.)38 b(By)26
+m(ey)i(bind-)1110 1468 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 3493 y(where)j(the)g(k)m(eystrok)m(es)i(are)e(most)h(similar)f(to)
+1110 1577 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
-3602 y(b)s(e)g(set)h(to)g(either)g(`)p Fs(emacs)p Ft(')e(or)h(`)p
-Fs(vi)p Ft('.)630 3759 y Fs(emacs-mode-string)1110 3868
+1687 y(b)s(e)g(set)h(to)g(either)g(`)p Fs(emacs)p Ft(')e(or)h(`)p
+Fs(vi)p Ft('.)630 1833 y Fs(emacs-mode-string)1110 1943
y Ft(If)j(the)h Fj(sho)m(w-mo)s(de-in-prompt)h Ft(v)-5
b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
-3978 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
-(of)h(the)f(primary)f(prompt)g(when)1110 4088 y(emacs)g(editing)h(mo)s
+2052 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
+(of)h(the)f(primary)f(prompt)g(when)1110 2162 y(emacs)g(editing)h(mo)s
(de)e(is)h(activ)m(e.)40 b(The)21 b(v)-5 b(alue)22 b(is)g(expanded)f
-(lik)m(e)h(a)h(k)m(ey)f(bind-)1110 4197 y(ing,)27 b(so)f(the)f
+(lik)m(e)h(a)h(k)m(ey)f(bind-)1110 2271 y(ing,)27 b(so)f(the)f
(standard)g(set)h(of)f(meta-)i(and)e(con)m(trol)i(pre\014xes)d(and)h
-(bac)m(kslash)1110 4307 y(escap)s(e)f(sequences)h(is)e(a)m(v)-5
+(bac)m(kslash)1110 2381 y(escap)s(e)f(sequences)h(is)e(a)m(v)-5
b(ailable.)41 b(Use)25 b(the)f(`)p Fs(\\1)p Ft(')f(and)h(`)p
-Fs(\\2)p Ft(')g(escap)s(es)g(to)g(b)s(egin)1110 4416
+Fs(\\2)p Ft(')g(escap)s(es)g(to)g(b)s(egin)1110 2491
y(and)37 b(end)g(sequences)h(of)f(non-prin)m(ting)h(c)m(haracters,)j
-(whic)m(h)c(can)h(b)s(e)f(used)1110 4526 y(to)h(em)m(b)s(ed)f(a)g
+(whic)m(h)c(can)h(b)s(e)f(used)1110 2600 y(to)h(em)m(b)s(ed)f(a)g
(terminal)h(con)m(trol)h(sequence)f(in)m(to)g(the)f(mo)s(de)g(string.)
-61 b(The)1110 4635 y(default)31 b(is)f(`)p Fs(@)p Ft('.)630
-4792 y Fs(enable-bracketed-paste)1110 4902 y Ft(When)24
-b(set)h(to)h(`)p Fs(On)p Ft(',)g(Readline)f(will)g(con\014gure)f(the)h
-(terminal)g(in)f(a)h(w)m(a)m(y)g(that)1110 5011 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 5121 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
-5230 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
-5340 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 Fs(On)p Ft('.)p eop end
-%%Page: 7 11
-TeXDict begin 7 10 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fs(enable-keypad)1110
-408 y Ft(When)23 b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(will)g
-(try)f(to)h(enable)g(the)f(application)i(k)m(eypad)1110
-518 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 628 y(The)j(default)g(is)
-h(`)p Fs(off)p Ft('.)630 784 y Fs(enable-meta-key)1110
-894 y Ft(When)40 b(set)g(to)g(`)p Fs(on)p Ft(',)j(Readline)d(will)g
-(try)g(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110
-1003 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 1113 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 1223 y(default)31 b(is)f(`)p Fs(on)p Ft('.)630
-1379 y Fs(expand-tilde)1110 1489 y Ft(If)d(set)h(to)h(`)p
+61 b(The)1110 2710 y(default)31 b(is)f(`)p Fs(@)p Ft('.)630
+2856 y Fs(enable-active-region)1110 2966 y Ft(The)46
+b Fj(p)s(oin)m(t)j Ft(is)e(the)g(curren)m(t)f(cursor)g(p)s(osition,)52
+b(and)46 b Fj(mark)52 b Ft(refers)46 b(to)i(a)1110 3075
+y(sa)m(v)m(ed)37 b(cursor)f(p)s(osition)g(\(see)i(Section)f(1.4.1)h
+([Commands)d(F)-8 b(or)37 b(Mo)m(ving],)1110 3185 y(page)25
+b(17\).)40 b(The)24 b(text)h(b)s(et)m(w)m(een)g(the)g(p)s(oin)m(t)f
+(and)g(mark)g(is)g(referred)g(to)h(as)g(the)1110 3294
+y Fj(region)p Ft(.)62 b(When)37 b(this)g(v)-5 b(ariable)38
+b(is)f(set)h(to)g(`)p Fs(On)p Ft(',)h(Readline)f(allo)m(ws)g(certain)
+1110 3404 y(commands)f(to)h(designate)h(the)e(region)h(as)g
+Fj(activ)m(e)p Ft(.)64 b(When)37 b(the)h(region)g(is)1110
+3513 y(activ)m(e,)43 b(Readline)38 b(highligh)m(ts)h(the)g(text)g(in)e
+(the)i(region)g(using)e(the)h(v)-5 b(alue)1110 3623 y(of)35
+b(the)g Fs(active-region-start-color)p Ft(,)30 b(whic)m(h)35
+b(defaults)g(to)h(the)f(string)1110 3733 y(that)23 b(enables)f(the)g
+(terminal's)h(standout)e(mo)s(de.)38 b(The)21 b(activ)m(e)k(region)d
+(sho)m(ws)1110 3842 y(the)32 b(text)h(inserted)f(b)m(y)g(brac)m(k)m
+(eted-paste)i(and)e(an)m(y)g(matc)m(hing)h(text)g(found)1110
+3952 y(b)m(y)f(incremen)m(tal)i(and)e(non-incremen)m(tal)i(history)e
+(searc)m(hes.)48 b(The)32 b(default)1110 4061 y(is)e(`)p
+Fs(On)p Ft('.)630 4208 y Fs(enable-bracketed-paste)1110
+4317 y Ft(When)36 b(set)h(to)g(`)p Fs(On)p Ft(',)h(Readline)f
+(con\014gures)f(the)h(terminal)f(to)i(insert)e(eac)m(h)1110
+4427 y(paste)27 b(in)m(to)g(the)f(editing)h(bu\013er)e(as)h(a)h(single)
+g(string)f(of)g(c)m(haracters,)j(instead)1110 4536 y(of)d(treating)i
+(eac)m(h)g(c)m(haracter)f(as)g(if)f(it)h(had)f(b)s(een)f(read)i(from)e
+(the)i(k)m(eyb)s(oard.)1110 4646 y(This)36 b(is)h(called)h(putting)f
+(the)h(terminal)f(in)m(to)h Fj(brac)m(k)m(eted)h(paste)e(mo)s(de)5
+b Ft(;)40 b(it)1110 4756 y(prev)m(en)m(ts)30 b(Readline)h(from)e
+(executing)i(an)m(y)f(editing)h(commands)e(b)s(ound)f(to)1110
+4865 y(k)m(ey)j(sequences)g(app)s(earing)f(in)g(the)g(pasted)h(text.)42
+b(The)29 b(default)i(is)f(`)p Fs(On)p Ft('.)630 5011
+y Fs(enable-keypad)1110 5121 y Ft(When)23 b(set)h(to)g(`)p
+Fs(on)p Ft(',)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 Fs(off)p Ft('.)p
+eop end
+%%Page: 8 12
+TeXDict begin 8 11 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(8)630 299 y Fs(enable-meta-key)
+1110 408 y Ft(When)40 b(set)g(to)g(`)p Fs(on)p Ft(',)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 Fs(on)p Ft('.)630
+894 y Fs(expand-tilde)1110 1003 y Ft(If)d(set)h(to)h(`)p
Fs(on)p Ft(',)f(tilde)g(expansion)g(is)f(p)s(erformed)f(when)h
-(Readline)h(attempts)1110 1598 y(w)m(ord)i(completion.)42
-b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630 1755
-y Fs(history-preserve-point)1110 1864 y Ft(If)41 b(set)h(to)h(`)p
+(Readline)h(attempts)1110 1113 y(w)m(ord)i(completion.)42
+b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630 1270
+y Fs(history-preserve-point)1110 1379 y Ft(If)41 b(set)h(to)h(`)p
Fs(on)p Ft(',)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 1974 y(curren)m(t)35 b(cursor)g(p)s
+(p)s(oin)m(t)f(\(the)1110 1489 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 2084 y(retriev)m(ed)h(with)f Fs(previous-history)c
+(line)1110 1598 y(retriev)m(ed)h(with)f Fs(previous-history)c
Ft(or)37 b Fs(next-history)p Ft(.)55 b(The)36 b(default)1110
-2193 y(is)30 b(`)p Fs(off)p Ft('.)630 2350 y Fs(history-size)1110
-2459 y Ft(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 2569
+1708 y(is)30 b(`)p Fs(off)p Ft('.)630 1864 y Fs(history-size)1110
+1974 y Ft(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 2084
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 2679 y(new)e(en)m(tries)i
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 2193 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
-2788 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
+2303 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
-2898 y(en)m(tries)j(is)f(not)g(limited.)49 b(If)32 b(an)h(attempt)h(is)
-f(made)g(to)h(set)f Fj(history-size)39 b Ft(to)1110 3007
+2412 y(en)m(tries)j(is)f(not)g(limited.)49 b(If)32 b(an)h(attempt)h(is)
+f(made)g(to)h(set)f Fj(history-size)39 b Ft(to)1110 2522
y(a)34 b(non-n)m(umeric)f(v)-5 b(alue,)34 b(the)g(maxim)m(um)f(n)m(um)m
-(b)s(er)f(of)h(history)h(en)m(tries)g(will)1110 3117
-y(b)s(e)c(set)h(to)g(500.)630 3273 y Fs(horizontal-scroll-mode)1110
-3383 y Ft(This)k(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
+(b)s(er)f(of)h(history)h(en)m(tries)g(will)1110 2632
+y(b)s(e)c(set)h(to)g(500.)630 2788 y Fs(horizontal-scroll-mode)1110
+2898 y Ft(This)k(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
(`)p Fs(on)p Ft(')g(or)g(`)p Fs(off)p Ft('.)57 b(Setting)36
-b(it)g(to)h(`)p Fs(on)p Ft(')1110 3493 y(means)26 b(that)h(the)f(text)h
+b(it)g(to)h(`)p Fs(on)p Ft(')1110 3007 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 3602 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 3712
+(tally)1110 3117 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 3226
y(screen,)c(instead)g(of)f(wrapping)f(on)m(to)i(a)g(new)e(screen)i
-(line.)40 b(This)26 b(v)-5 b(ariable)28 b(is)1110 3821
+(line.)40 b(This)26 b(v)-5 b(ariable)28 b(is)1110 3336
y(automatically)k(set)e(to)g(`)p Fs(on)p Ft(')f(for)g(terminals)g(of)h
-(heigh)m(t)g(1.)41 b(By)29 b(default,)h(this)1110 3931
+(heigh)m(t)g(1.)41 b(By)29 b(default,)h(this)1110 3446
y(v)-5 b(ariable)31 b(is)g(set)f(to)i(`)p Fs(off)p Ft('.)630
-4088 y Fs(input-meta)1110 4197 y Ft(If)f(set)g(to)h(`)p
+3602 y Fs(input-meta)1110 3712 y Ft(If)f(set)g(to)h(`)p
Fs(on)p Ft(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
-i(will)f(not)h(clear)1110 4307 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
+i(will)f(not)h(clear)1110 3821 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
-4416 y(terminal)k(claims)h(it)f(can)g(supp)s(ort.)79
+3931 y(terminal)k(claims)h(it)f(can)g(supp)s(ort.)79
b(The)44 b(default)g(v)-5 b(alue)44 b(is)g(`)p Fs(off)p
-Ft(',)j(but)1110 4526 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p
+Ft(',)j(but)1110 4041 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p
Fs(on)p Ft(')e(if)h(the)g(lo)s(cale)i(con)m(tains)f(eigh)m(t-bit)g(c)m
-(haracters.)1110 4635 y(The)30 b(name)g Fs(meta-flag)e
+(haracters.)1110 4150 y(The)30 b(name)g Fs(meta-flag)e
Ft(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5 b(ariable.)630
-4792 y Fs(isearch-terminators)1110 4902 y Ft(The)51 b(string)h(of)g(c)m
+4307 y Fs(isearch-terminators)1110 4416 y Ft(The)51 b(string)h(of)g(c)m
(haracters)h(that)f(should)e(terminate)j(an)f(incremen)m(tal)1110
-5011 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 5121 y(\(see)45 b(Section)h(1.2.5)g
+4526 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 4635 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 5230 y(b)s(een)35 b(giv)m(en)h(a)g(v)-5
+b(ariable)45 b(has)g(not)1110 4745 y(b)s(een)35 b(giv)m(en)h(a)g(v)-5
b(alue,)37 b(the)f(c)m(haracters)h Fs(ESC)d Ft(and)h
-Fl(C-J)g Ft(will)h(terminate)g(an)1110 5340 y(incremen)m(tal)c(searc)m
-(h.)p eop end
-%%Page: 8 12
-TeXDict begin 8 11 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(8)630 299 y Fs(keymap)192
-b Ft(Sets)64 b(Readline's)i(idea)f(of)f(the)h(curren)m(t)f(k)m(eymap)h
-(for)f(k)m(ey)h(binding)1110 408 y(commands.)71 b(Built-in)41
-b Fs(keymap)e Ft(names)h(are)h Fs(emacs)p Ft(,)h Fs(emacs-standard)p
-Ft(,)1110 518 y Fs(emacs-meta)p Ft(,)99 b Fs(emacs-ctlx)p
-Ft(,)f Fs(vi)p Ft(,)j Fs(vi-move)p Ft(,)f Fs(vi-command)p
-Ft(,)f(and)1110 628 y Fs(vi-insert)p Ft(.)81 b Fs(vi)44
-b Ft(is)h(equiv)-5 b(alen)m(t)46 b(to)g Fs(vi-command)c
-Ft(\()p Fs(vi-move)h Ft(is)i(also)h(a)1110 737 y(synon)m(ym\);)41
+Fl(C-J)g Ft(will)h(terminate)g(an)1110 4855 y(incremen)m(tal)c(searc)m
+(h.)630 5011 y Fs(keymap)192 b Ft(Sets)64 b(Readline's)i(idea)f(of)f
+(the)h(curren)m(t)f(k)m(eymap)h(for)f(k)m(ey)h(binding)1110
+5121 y(commands.)71 b(Built-in)41 b Fs(keymap)e Ft(names)h(are)h
+Fs(emacs)p Ft(,)h Fs(emacs-standard)p Ft(,)1110 5230
+y Fs(emacs-meta)p Ft(,)99 b Fs(emacs-ctlx)p Ft(,)f Fs(vi)p
+Ft(,)j Fs(vi-move)p Ft(,)f Fs(vi-command)p Ft(,)f(and)1110
+5340 y Fs(vi-insert)p Ft(.)81 b Fs(vi)44 b Ft(is)h(equiv)-5
+b(alen)m(t)46 b(to)g Fs(vi-command)c Ft(\()p Fs(vi-move)h
+Ft(is)i(also)h(a)p eop end
+%%Page: 9 13
+TeXDict begin 9 12 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(9)1110 299 y(synon)m(ym\);)41
b Fs(emacs)c Ft(is)h(equiv)-5 b(alen)m(t)39 b(to)f Fs(emacs-standard)p
-Ft(.)59 b(Applications)1110 847 y(ma)m(y)32 b(add)e(additional)i
+Ft(.)59 b(Applications)1110 408 y(ma)m(y)32 b(add)e(additional)i
(names.)43 b(The)30 b(default)h(v)-5 b(alue)32 b(is)f
-Fs(emacs)p Ft(.)41 b(The)30 b(v)-5 b(alue)1110 956 y(of)31
+Fs(emacs)p Ft(.)41 b(The)30 b(v)-5 b(alue)1110 518 y(of)31
b(the)f Fs(editing-mode)d Ft(v)-5 b(ariable)31 b(also)h(a\013ects)f
-(the)g(default)g(k)m(eymap.)630 1113 y Fs(keyseq-timeout)1110
-1223 y Ft(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 1332
+(the)g(default)g(k)m(eymap.)630 706 y Fs(keyseq-timeout)1110
+816 y Ft(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 925
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 1442 y(sequence)j(using)e(the)i
+(form)g(a)g(complete)h(k)m(ey)1110 1035 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 1551 y(to)g(complete)g(a)f(longer)h(k)m(ey)f(sequence\).)49
+1110 1144 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
-1661 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 1771 y(quence.)c(Readline)26
+1254 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 1363 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 1880 y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m
+(input)1110 1473 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 Fs(rl_instream)d Ft(b)m(y)i(default\).)1110
-1990 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
+1583 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 2099 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
+1110 1692 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 2209 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
+b(is)1110 1802 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 2318 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
+b(alue,)1110 1911 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
-2428 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)g Fs(500)p Ft(.)630 2585 y Fs(mark-directories)1110
-2694 y Ft(If)38 b(set)g(to)h(`)p Fs(on)p Ft(',)i(completed)e(directory)
+2021 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)g Fs(500)p Ft(.)630 2209 y Fs(mark-directories)1110
+2318 y Ft(If)38 b(set)g(to)h(`)p Fs(on)p Ft(',)i(completed)e(directory)
f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
-2804 y(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630
-2960 y Fs(mark-modified-lines)1110 3070 y Ft(This)k(v)-5
+2428 y(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630
+2616 y Fs(mark-modified-lines)1110 2725 y Ft(This)k(v)-5
b(ariable,)38 b(when)d(set)h(to)h(`)p Fs(on)p Ft(',)g(causes)g
-(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 3180 y(terisk)f(\(`)p
+(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 2835 y(terisk)f(\(`)p
Fs(*)p Ft('\))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 3289 y(This)d(v)-5
+(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 2945 y(This)d(v)-5
b(ariable)31 b(is)f(`)p Fs(off)p Ft(')g(b)m(y)g(default.)630
-3446 y Fs(mark-symlinked-directori)o(es)1110 3555 y Ft(If)59
+3133 y Fs(mark-symlinked-directori)o(es)1110 3242 y Ft(If)59
b(set)h(to)g(`)p Fs(on)p Ft(',)67 b(completed)60 b(names)f(whic)m(h)g
-(are)h(sym)m(b)s(olic)g(links)f(to)1110 3665 y(directories)71
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 3352 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 3774 y Fs(mark-directories)p
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 3461 y Fs(mark-directories)p
Ft(\).)37 b(The)30 b(default)g(is)g(`)p Fs(off)p Ft('.)630
-3931 y Fs(match-hidden-files)1110 4041 y Ft(This)21 b(v)-5
+3649 y Fs(match-hidden-files)1110 3759 y Ft(This)21 b(v)-5
b(ariable,)25 b(when)d(set)g(to)h(`)p Fs(on)p Ft(',)h(causes)f
-(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 4150
+(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 3868
y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fs(.)p Ft(')g(\(hidden)f
-(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 4260
+(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 3978
y(completion.)75 b(If)41 b(set)g(to)h(`)p Fs(off)p Ft(',)i(the)e
(leading)g(`)p Fs(.)p Ft(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
-4369 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
+4088 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 Fs(on)p Ft(')g(b)m(y)1110
-4479 y(default.)630 4635 y Fs(menu-complete-display-pr)o(efix)1110
-4745 y Ft(If)f(set)h(to)g(`)p Fs(on)p Ft(',)h(men)m(u)e(completion)i
+4197 y(default.)630 4385 y Fs(menu-complete-display-pr)o(efix)1110
+4495 y Ft(If)f(set)h(to)g(`)p Fs(on)p Ft(',)h(men)m(u)e(completion)i
(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
-4855 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 4964 y(through)30
+4604 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 4714 y(through)30
b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fs(off)p
-Ft('.)630 5121 y Fs(output-meta)1110 5230 y Ft(If)35
+Ft('.)630 4902 y Fs(output-meta)1110 5011 y Ft(If)35
b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(will)g(displa)m(y)f(c)m
-(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 5340 y(set)h(directly)g
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 5121 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)p eop end
-%%Page: 9 13
-TeXDict begin 9 12 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(9)1110 299 y(default)26
-b(is)f(`)p Fs(off)p Ft(',)i(but)e(Readline)h(will)g(set)g(it)g(to)h(`)p
-Fs(on)p Ft(')e(if)h(the)f(lo)s(cale)j(con)m(tains)1110
-408 y(eigh)m(t-bit)k(c)m(haracters.)630 581 y Fs(page-completions)1110
-690 y Ft(If)h(set)i(to)f(`)p Fs(on)p Ft(',)h(Readline)g(uses)e(an)h(in)
-m(ternal)h Fs(more)p Ft(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
-800 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 Fs(on)p Ft(')1110
-909 y(b)m(y)e(default.)630 1082 y Fs(print-completions-horizo)o(ntal)o
-(ly)1110 1191 y Ft(If)23 b(set)i(to)g(`)p Fs(on)p Ft(',)g(Readline)g
-(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
-1301 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 1410 y(The)30 b(default)g(is)h(`)p
-Fs(off)p Ft('.)630 1583 y Fs(revert-all-at-newline)1110
-1692 y Ft(If)e(set)h(to)g(`)p Fs(on)p Ft(',)g(Readline)g(will)g(undo)f
-(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
-1802 y(returning)f(when)f Fs(accept-line)f Ft(is)j(executed.)41
-b(By)29 b(default,)g(history)g(lines)1110 1911 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 2021 y Fs(readline)p Ft(.)38
-b(The)30 b(default)h(is)f(`)p Fs(off)p Ft('.)630 2193
-y Fs(show-all-if-ambiguous)1110 2303 y Ft(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 2412 y(to)f(`)p Fs(on)p Ft(',)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 2522 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 2632 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fs(off)p Ft('.)630
-2804 y Fs(show-all-if-unmodified)1110 2913 y Ft(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 3023 y(fashion)25 b(similar)h(to)g
-Fj(sho)m(w-all-if-am)m(biguous)p Ft(.)41 b(If)25 b(set)h(to)h(`)p
-Fs(on)p Ft(',)f(w)m(ords)f(whic)m(h)1110 3133 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 3242 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
-f(completions)h(don't)f(share)g(a)h(common)1110 3352
-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 3461 y(ing)g(the)f(b)s(ell.)41
+b(The)1110 5230 y(default)26 b(is)f(`)p Fs(off)p Ft(',)i(but)e
+(Readline)h(will)g(set)g(it)g(to)h(`)p Fs(on)p Ft(')e(if)h(the)f(lo)s
+(cale)j(con)m(tains)1110 5340 y(eigh)m(t-bit)k(c)m(haracters.)p
+eop end
+%%Page: 10 14
+TeXDict begin 10 13 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(10)630 299 y Fs(page-completions)
+1110 408 y Ft(If)33 b(set)i(to)f(`)p Fs(on)p Ft(',)h(Readline)g(uses)e
+(an)h(in)m(ternal)h Fs(more)p Ft(-lik)m(e)f(pager)g(to)h(displa)m(y)
+1110 518 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 Fs(on)p
+Ft(')1110 628 y(b)m(y)e(default.)630 784 y Fs(print-completions-horizo)
+o(ntal)o(ly)1110 894 y Ft(If)23 b(set)i(to)g(`)p Fs(on)p
+Ft(',)g(Readline)g(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)
+h(sorted)1110 1003 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
+1113 y(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630
+1270 y Fs(revert-all-at-newline)1110 1379 y Ft(If)e(set)h(to)g(`)p
+Fs(on)p Ft(',)g(Readline)g(will)g(undo)f(all)h(c)m(hanges)h(to)f
+(history)g(lines)f(b)s(efore)1110 1489 y(returning)f(when)f
+Fs(accept-line)f Ft(is)j(executed.)41 b(By)29 b(default,)g(history)g
+(lines)1110 1598 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
+1708 y Fs(readline)p Ft(.)38 b(The)30 b(default)h(is)f(`)p
+Fs(off)p Ft('.)630 1864 y Fs(show-all-if-ambiguous)1110
+1974 y Ft(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 2084 y(to)f(`)p
+Fs(on)p Ft(',)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 2193 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 2303 y(The)30 b(default)g(v)-5
+b(alue)31 b(is)g(`)p Fs(off)p Ft('.)630 2459 y Fs
+(show-all-if-unmodified)1110 2569 y Ft(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 2679 y(fashion)25 b(similar)h(to)g Fj(sho)m(w-all-if-am)m(biguous)
+p Ft(.)41 b(If)25 b(set)h(to)h(`)p Fs(on)p Ft(',)f(w)m(ords)f(whic)m(h)
+1110 2788 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
+2898 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
+(don't)f(share)g(a)h(common)1110 3007 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 3117 y(ing)g(the)f(b)s(ell.)41
b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fs(off)p
-Ft('.)630 3634 y Fs(show-mode-in-prompt)1110 3743 y Ft(If)24
+Ft('.)630 3273 y Fs(show-mode-in-prompt)1110 3383 y Ft(If)24
b(set)h(to)g(`)p Fs(on)p Ft(',)g(add)f(a)h(string)f(to)h(the)f(b)s
-(eginning)g(of)g(the)h(prompt)e(indicating)1110 3853
+(eginning)g(of)g(the)h(prompt)e(indicating)1110 3493
y(the)33 b(editing)h(mo)s(de:)46 b(emacs,)35 b(vi)e(command,)h(or)f(vi)
-h(insertion.)49 b(The)32 b(mo)s(de)1110 3962 y(strings)45
+h(insertion.)49 b(The)32 b(mo)s(de)1110 3602 y(strings)45
b(are)h(user-settable)g(\(e.g.,)51 b Fj(emacs-mo)s(de-string)8
-b Ft(\).)87 b(The)45 b(default)1110 4072 y(v)-5 b(alue)31
-b(is)f(`)p Fs(off)p Ft('.)630 4244 y Fs(skip-completed-text)1110
-4354 y Ft(If)i(set)i(to)f(`)p Fs(on)p Ft(',)h(this)f(alters)g(the)g
+b Ft(\).)87 b(The)45 b(default)1110 3712 y(v)-5 b(alue)31
+b(is)f(`)p Fs(off)p Ft('.)630 3868 y Fs(skip-completed-text)1110
+3978 y Ft(If)i(set)i(to)f(`)p Fs(on)p Ft(',)h(this)f(alters)g(the)g
(default)g(completion)h(b)s(eha)m(vior)f(when)f(in-)1110
-4463 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
+4088 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
-4573 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 4682 y(not)41
+4197 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 4307 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 4792 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
+(c)m(haracters)1110 4416 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
-4902 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
+4526 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
-5011 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Fs(e)p Ft(')f(in)1110 5121 y(`)p Fs(Makefile)p
+4635 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(`)p Fs(e)p Ft(')f(in)1110 4745 y(`)p Fs(Makefile)p
Ft(')c(will)i(result)f(in)g(`)p Fs(Makefile)p Ft(')f(rather)h(than)h(`)
-p Fs(Makefilefile)p Ft(',)1110 5230 y(assuming)d(there)g(is)h(a)f
+p Fs(Makefilefile)p Ft(',)1110 4855 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 5340 y(is)30 b(`)p Fs(off)p Ft('.)p eop end
-%%Page: 10 14
-TeXDict begin 10 13 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(10)630 299 y Fs
-(vi-cmd-mode-string)1110 408 y Ft(If)33 b(the)h Fj(sho)m(w-mo)s
+b(alue)1110 4964 y(is)30 b(`)p Fs(off)p Ft('.)630 5121
+y Fs(vi-cmd-mode-string)1110 5230 y Ft(If)j(the)h Fj(sho)m(w-mo)s
(de-in-prompt)h Ft(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
-(is)h(dis-)1110 518 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g
-(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
-628 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)g
-(mo)s(de.)46 b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110
-737 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f
-(standard)f(set)h(of)g(meta-)h(and)e(con)m(trol)1110
-847 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is)g
-(a)m(v)-5 b(ailable.)57 b(Use)35 b(the)g(`)p Fs(\\1)p
-Ft(')1110 956 y(and)23 b(`)p Fs(\\2)p Ft(')h(escap)s(es)h(to)f(b)s
-(egin)g(and)f(end)g(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110
-1066 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)
-h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 1176
+(is)h(dis-)1110 5340 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
+g(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)p
+eop end
+%%Page: 11 15
+TeXDict begin 11 14 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(11)1110 299 y(vi)32
+b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)g(mo)s(de.)46
+b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110 408 y(panded)26
+b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
+(meta-)h(and)e(con)m(trol)1110 518 y(pre\014xes)34 b(and)g(bac)m
+(kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
+b(Use)35 b(the)g(`)p Fs(\\1)p Ft(')1110 628 y(and)23
+b(`)p Fs(\\2)p Ft(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
+(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 737
+y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h
+(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 847
y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
-Fs(\(cmd\))p Ft('.)630 1340 y Fs(vi-ins-mode-string)1110
-1450 y Ft(If)j(the)h Fj(sho)m(w-mo)s(de-in-prompt)h Ft(v)-5
+Fs(\(cmd\))p Ft('.)630 1007 y Fs(vi-ins-mode-string)1110
+1117 y Ft(If)j(the)h Fj(sho)m(w-mo)s(de-in-prompt)h Ft(v)-5
b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
-1559 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
-(of)h(the)f(primary)f(prompt)g(when)1110 1669 y(vi)35
+1226 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
+(of)h(the)f(primary)f(prompt)g(when)1110 1336 y(vi)35
b(editing)h(mo)s(de)e(is)i(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)
-54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 1778 y(panded)26
+54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 1445 y(panded)26
b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
-(meta-)h(and)e(con)m(trol)1110 1888 y(pre\014xes)34 b(and)g(bac)m
+(meta-)h(and)e(con)m(trol)1110 1555 y(pre\014xes)34 b(and)g(bac)m
(kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
-b(Use)35 b(the)g(`)p Fs(\\1)p Ft(')1110 1998 y(and)23
+b(Use)35 b(the)g(`)p Fs(\\1)p Ft(')1110 1665 y(and)23
b(`)p Fs(\\2)p Ft(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
-(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 2107
+(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 1774
y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h
-(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 2217
+(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 1884
y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
-Fs(\(ins\))p Ft('.)630 2381 y Fs(visible-stats)1110 2491
+Fs(\(ins\))p Ft('.)630 2044 y Fs(visible-stats)1110 2153
y Ft(If)h(set)i(to)f(`)p Fs(on)p Ft(',)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
-2600 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42
-b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)150 2765
-y(Key)f(Bindings)630 2874 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h
+2263 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42
+b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)150 2423
+y(Key)f(Bindings)630 2533 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 2984 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)
+b(First)43 b(y)m(ou)630 2642 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 3093 y(sections)37 b(con)m(tain)g(tables)g
+b(The)27 b(follo)m(wing)630 2752 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 3203 y(and)30 b(a)h(short)f(description)g(of)h(what)f
-(the)g(command)h(do)s(es.)630 3340 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g
+m(y)-8 b(,)630 2862 y(and)30 b(a)h(short)f(description)g(of)h(what)f
+(the)g(command)h(do)s(es.)630 2996 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 3450 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m
+(the)g(init)630 3106 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 3559 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+630 3216 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 3669 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
+(and)630 3325 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 3778 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
+b(The)40 b(name)h(of)630 3435 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 3888 y(comfortable.)630
-4025 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 3544 y(comfortable.)630
+3679 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
-4134 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
-(\(a)h Fj(macro)5 b Ft(\).)630 4299 y Fj(k)m(eyname)g
+3789 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
+(\(a)h Fj(macro)5 b Ft(\).)630 3949 y Fj(k)m(eyname)g
Ft(:)42 b Fj(function-name)35 b Ft(or)c Fj(macro)1110
-4408 y(k)m(eyname)k Ft(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+4059 y(k)m(eyname)k Ft(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
-4545 y Fs(Control-u:)45 b(universal-argument)1350 4655
-y(Meta-Rubout:)f(backward-kill-word)1350 4765 y(Control-o:)h(">)i
-(output")1110 4902 y Ft(In)94 b(the)g(example)h(ab)s(o)m(v)m(e,)112
+4194 y Fs(Control-u:)45 b(universal-argument)1350 4303
+y(Meta-Rubout:)f(backward-kill-word)1350 4413 y(Control-o:)h(">)i
+(output")1110 4548 y Ft(In)94 b(the)g(example)h(ab)s(o)m(v)m(e,)112
b Fl(C-u)94 b Ft(is)g(b)s(ound)f(to)i(the)f(function)1110
-5011 y Fs(universal-argument)p Ft(,)124 b Fl(M-DEL)107
-b Ft(is)i(b)s(ound)e(to)j(the)f(function)1110 5121 y
+4657 y Fs(universal-argument)p Ft(,)124 b Fl(M-DEL)107
+b Ft(is)i(b)s(ound)e(to)j(the)f(function)1110 4767 y
Fs(backward-kill-word)p Ft(,)75 b(and)69 b Fl(C-o)g Ft(is)h(b)s(ound)e
-(to)j(run)d(the)i(macro)1110 5230 y(expressed)45 b(on)h(the)g(righ)m(t)
+(to)j(run)d(the)i(macro)1110 4876 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
-Fs(>)1110 5340 y(output)p Ft(')29 b(in)m(to)i(the)g(line\).)p
+Fs(>)1110 4986 y(output)p Ft(')29 b(in)m(to)i(the)g(line\).)1110
+5121 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 5230 y(pro)s(cessing)40
+b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fj(DEL)p
+Ft(,)42 b Fj(ESC)p Ft(,)g Fj(ESCAPE)p Ft(,)f Fj(LFD)p
+Ft(,)1110 5340 y Fj(NEWLINE)p Ft(,)31 b Fj(RET)p Ft(,)f
+Fj(RETURN)p Ft(,)g Fj(R)m(UBOUT)p Ft(,)h Fj(SP)-8 b(A)m(CE)p
+Ft(,)31 b Fj(SPC)p Ft(,)e(and)h Fj(T)-8 b(AB)p Ft(.)p
eop end
-%%Page: 11 15
-TeXDict begin 11 14 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(11)1110 299 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 408 y(pro)s(cessing)40 b(this)f(k)m(ey)i
-(binding)e(syn)m(tax:)60 b Fj(DEL)p Ft(,)42 b Fj(ESC)p
-Ft(,)g Fj(ESCAPE)p Ft(,)f Fj(LFD)p Ft(,)1110 518 y Fj(NEWLINE)p
-Ft(,)31 b Fj(RET)p Ft(,)f Fj(RETURN)p Ft(,)g Fj(R)m(UBOUT)p
-Ft(,)h Fj(SP)-8 b(A)m(CE)p Ft(,)31 b Fj(SPC)p Ft(,)e(and)h
-Fj(T)-8 b(AB)p Ft(.)630 677 y Fs(")p Fj(k)m(eyseq)r Fs(")p
-Ft(:)41 b Fj(function-name)36 b Ft(or)30 b Fj(macro)1110
-787 y(k)m(eyseq)k Ft(di\013ers)d(from)f Fj(k)m(eyname)37
-b Ft(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f(denoting)g(an)g(en-)1110
-896 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 1006 y(double)29
-b(quotes.)41 b(Some)29 b Fm(gnu)h Ft(Emacs)f(st)m(yle)i(k)m(ey)f(escap)
-s(es)g(can)g(b)s(e)f(used,)g(as)1110 1115 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 1225 y(recognized.)1350 1359 y Fs("\\C-u":)46 b
-(universal-argument)1350 1469 y("\\C-x\\C-r":)f(re-read-init-file)1350
-1578 y("\\e[11~":)g("Function)h(Key)g(1")1110 1713 y
-Ft(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74 b Fl(C-u)64
-b Ft(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
-1822 y Fs(universal-argument)39 b Ft(\(just)k(as)h(it)g(w)m(as)g(in)g
-(the)f(\014rst)g(example\),)49 b(`)p Fl(C-x)1110 1932
+%%Page: 12 16
+TeXDict begin 12 15 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(12)630 299 y Fs(")p
+Fj(k)m(eyseq)r Fs(")p Ft(:)41 b Fj(function-name)36 b
+Ft(or)30 b Fj(macro)1110 408 y(k)m(eyseq)k Ft(di\013ers)d(from)f
+Fj(k)m(eyname)37 b Ft(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
+(denoting)g(an)g(en-)1110 518 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
+628 y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h Ft(Emacs)f(st)m(yle)i
+(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)1110
+737 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 847 y(recognized.)1350
+981 y Fs("\\C-u":)46 b(universal-argument)1350 1091 y("\\C-x\\C-r":)f
+(re-read-init-file)1350 1200 y("\\e[11~":)g("Function)h(Key)g(1")1110
+1334 y Ft(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
+b Fl(C-u)64 b Ft(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
+1444 y Fs(universal-argument)39 b Ft(\(just)k(as)h(it)g(w)m(as)g(in)g
+(the)f(\014rst)g(example\),)49 b(`)p Fl(C-x)1110 1554
y(C-r)p Ft(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
Fs(re-read-init-file)p Ft(,)c(and)j(`)p Fs(ESC)h([)g(1)g(1)1110
-2041 y(~)p Ft(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Fs(Function)e(Key)g(1)p Ft('.)630 2200 y(The)g(follo)m(wing)i
+1663 y(~)p Ft(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Fs(Function)e(Key)g(1)p Ft('.)630 1822 y(The)g(follo)m(wing)i
Fm(gnu)f Ft(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 2310 y(k)m(ey)i(sequences:)630
-2469 y Fl(\\C-)336 b Ft(con)m(trol)32 b(pre\014x)630
-2628 y Fl(\\M-)336 b Ft(meta)31 b(pre\014x)630 2787 y
+b(ailable)32 b(when)d(sp)s(ecifying)630 1932 y(k)m(ey)i(sequences:)630
+2091 y Fl(\\C-)336 b Ft(con)m(trol)32 b(pre\014x)630
+2250 y Fl(\\M-)336 b Ft(meta)31 b(pre\014x)630 2408 y
Fl(\\e)384 b Ft(an)30 b(escap)s(e)h(c)m(haracter)630
-2945 y Fl(\\\\)384 b Ft(bac)m(kslash)630 3104 y Fl(\\)p
+2567 y Fl(\\\\)384 b Ft(bac)m(kslash)630 2726 y Fl(\\)p
Fs(")g(")p Ft(,)30 b(a)h(double)f(quotation)i(mark)630
-3263 y Fl(\\')384 b Fs(')p Ft(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 3422 y(In)d(addition)h(to)g(the)g Fm(gnu)f
+2885 y Fl(\\')384 b Fs(')p Ft(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 3044 y(In)d(addition)h(to)g(the)g Fm(gnu)f
Ft(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
-(bac)m(kslash)630 3532 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-3691 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 3850
-y Fs(\\b)384 b Ft(bac)m(kspace)630 4008 y Fs(\\d)g Ft(delete)630
-4167 y Fs(\\f)g Ft(form)30 b(feed)630 4326 y Fs(\\n)384
-b Ft(newline)630 4485 y Fs(\\r)g Ft(carriage)32 b(return)630
-4644 y Fs(\\t)384 b Ft(horizon)m(tal)32 b(tab)630 4803
-y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 4962 y Fs(\\)p
+(bac)m(kslash)630 3154 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+3313 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 3471
+y Fs(\\b)384 b Ft(bac)m(kspace)630 3630 y Fs(\\d)g Ft(delete)630
+3789 y Fs(\\f)g Ft(form)30 b(feed)630 3948 y Fs(\\n)384
+b Ft(newline)630 4107 y Fs(\\r)g Ft(carriage)32 b(return)630
+4266 y Fs(\\t)384 b Ft(horizon)m(tal)32 b(tab)630 4425
+y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 4584 y Fs(\\)p
Fl(nnn)288 b Ft(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 Fj(nnn)e
-Ft(\(one)i(to)1110 5071 y(three)c(digits\))630 5230 y
+Ft(\(one)i(to)1110 4693 y(three)c(digits\))630 4852 y
Fs(\\x)p Fl(HH)288 b Ft(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 Fj(HH)1110 5340 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))p
-eop end
-%%Page: 12 16
-TeXDict begin 12 15 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(12)630 299 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 408 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 518 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
-628 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 Fs(")p Ft(')h(and)g(`)p Fs(')p
-Ft('.)69 b(F)-8 b(or)630 737 y(example,)28 b(the)e(follo)m(wing)h
-(binding)d(will)i(mak)m(e)h(`)p Fl(C-x)j Fs(\\)p Ft(')c(insert)f(a)h
-(single)h(`)p Fs(\\)p Ft(')f(in)m(to)g(the)g(line:)870
-873 y Fs("\\C-x\\\\":)45 b("\\\\")150 1073 y Fi(1.3.2)63
-b(Conditional)41 b(Init)g(Constructs)150 1220 y Ft(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 1330 y(the)31
-b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g(bindings)d(and)
-h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s(erformed)f(as)i(the)
-150 1440 y(result)f(of)h(tests.)41 b(There)30 b(are)h(four)f(parser)f
-(directiv)m(es)j(used.)150 1601 y Fs($if)336 b Ft(The)31
-b Fs($if)f Ft(construct)i(allo)m(ws)h(bindings)d(to)i(b)s(e)e(made)i
-(based)f(on)g(the)g(editing)h(mo)s(de,)g(the)630 1711
-y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h(application)g(using)f
-(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)630
-1821 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f(to)h
-(the)g(end)f(of)h(the)f(line;)i(unless)e(otherwise)630
-1930 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
-(it.)630 2091 y Fs(mode)288 b Ft(The)30 b Fs(mode=)e
+b Fj(HH)1110 4962 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+5121 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
+5230 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 5340 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)p eop end
+%%Page: 13 17
+TeXDict begin 13 16 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(13)630 299 y(will)40
+b(quote)h(an)m(y)f(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k
+(including)39 b(`)p Fs(")p Ft(')h(and)g(`)p Fs(')p Ft('.)69
+b(F)-8 b(or)630 408 y(example,)28 b(the)e(follo)m(wing)h(binding)d
+(will)i(mak)m(e)h(`)p Fl(C-x)j Fs(\\)p Ft(')c(insert)f(a)h(single)h(`)p
+Fs(\\)p Ft(')f(in)m(to)g(the)g(line:)870 542 y Fs("\\C-x\\\\":)45
+b("\\\\")150 740 y Fi(1.3.2)63 b(Conditional)41 b(Init)g(Constructs)150
+887 y Ft(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
+996 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
+(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
+(erformed)f(as)i(the)150 1106 y(result)f(of)h(tests.)41
+b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
+1264 y Fs($if)336 b Ft(The)31 b Fs($if)f Ft(construct)i(allo)m(ws)h
+(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
+(the)630 1373 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h
+(application)g(using)f(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)
+630 1483 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f
+(to)h(the)g(end)f(of)h(the)f(line;)i(unless)e(otherwise)630
+1592 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
+(it.)630 1750 y Fs(mode)288 b Ft(The)30 b Fs(mode=)e
Ft(form)i(of)g(the)h Fs($if)e Ft(directiv)m(e)j(is)e(used)f(to)i(test)g
-(whether)e(Read-)1110 2201 y(line)44 b(is)f(in)g Fs(emacs)f
+(whether)e(Read-)1110 1860 y(line)44 b(is)f(in)g Fs(emacs)f
Ft(or)h Fs(vi)g Ft(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g
-(conjunction)1110 2311 y(with)c(the)h(`)p Fs(set)29 b(keymap)p
+(conjunction)1110 1969 y(with)c(the)h(`)p Fs(set)29 b(keymap)p
Ft(')38 b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
-2420 y(the)32 b Fs(emacs-standard)c Ft(and)j Fs(emacs-ctlx)d
-Ft(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 2530 y(starting)f(out)g
-(in)f Fs(emacs)f Ft(mo)s(de.)630 2691 y Fs(term)288 b
+2079 y(the)32 b Fs(emacs-standard)c Ft(and)j Fs(emacs-ctlx)d
+Ft(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 2188 y(starting)f(out)g
+(in)f Fs(emacs)f Ft(mo)s(de.)630 2346 y Fs(term)288 b
Ft(The)26 b Fs(term=)g Ft(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
-(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 2800 y(ings,)38
+(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 2456 y(ings,)38
b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
-(the)g(terminal's)1110 2910 y(function)24 b(k)m(eys.)39
+(the)g(terminal's)1110 2565 y(function)24 b(k)m(eys.)39
b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
-Fs(=)p Ft(')g(is)g(tested)h(against)1110 3020 y(b)s(oth)k(the)h(full)g
+Fs(=)p Ft(')g(is)g(tested)h(against)1110 2675 y(b)s(oth)k(the)h(full)g
(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
-(terminal)1110 3129 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
+(terminal)1110 2785 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
Fs(-)p Ft('.)50 b(This)33 b(allo)m(ws)i Fs(sun)e Ft(to)h(matc)m(h)g(b)s
-(oth)f Fs(sun)g Ft(and)1110 3239 y Fs(sun-cmd)p Ft(,)c(for)h(instance.)
-630 3400 y Fs(version)144 b Ft(The)44 b Fs(version)f
+(oth)f Fs(sun)g Ft(and)1110 2894 y Fs(sun-cmd)p Ft(,)c(for)h(instance.)
+630 3052 y Fs(version)144 b Ft(The)44 b Fs(version)f
Ft(test)i(ma)m(y)h(b)s(e)e(used)f(to)j(p)s(erform)d(comparisons)i
-(against)1110 3509 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74
+(against)1110 3161 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74
b(The)42 b Fs(version)d Ft(expands)i(to)h(the)g(curren)m(t)1110
-3619 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h
+3271 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h
(op)s(erators)f(includes)f(`)p Fs(=)p Ft(')h(\(and)1110
-3729 y(`)p Fs(==)p Ft('\),)33 b(`)p Fs(!=)p Ft(',)f(`)p
+3381 y(`)p Fs(==)p Ft('\),)33 b(`)p Fs(!=)p Ft(',)f(`)p
Fs(<=)p Ft(',)h(`)p Fs(>=)p Ft(',)f(`)p Fs(<)p Ft(',)h(and)e(`)p
Fs(>)p Ft('.)46 b(The)31 b(v)m(ersion)i(n)m(um)m(b)s(er)d(supplied)h
-(on)1110 3838 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g
+(on)1110 3490 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g
(consists)h(of)f(a)g(ma)5 b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)1110
-3948 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
-b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 4057
+3600 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
+b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 3709
y(`)p Fs(7.1)p Ft('\).)40 b(If)27 b(the)h(minor)f(v)m(ersion)h(is)g
(omitted,)h(it)f(is)g(assumed)f(to)h(b)s(e)f(`)p Fs(0)p
-Ft('.)40 b(The)1110 4167 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
+Ft('.)40 b(The)1110 3819 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
g(from)g(the)h(string)f Fs(version)f Ft(and)h(from)g(the)1110
-4276 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
+3929 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
(whitespace.)67 b(The)38 b(follo)m(wing)i(example)1110
-4386 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
+4038 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
(ersion)f(b)s(eing)g(used)g(is)g(7.0)i(or)e(new)m(er:)1350
-4521 y Fs($if)47 b(version)f(>=)h(7.0)1350 4631 y(set)g
-(show-mode-in-prompt)42 b(on)1350 4741 y($endif)630 4902
-y(application)1110 5011 y Ft(The)21 b Fj(application)j
+4172 y Fs($if)47 b(version)f(>=)h(7.0)1350 4281 y(set)g
+(show-mode-in-prompt)42 b(on)1350 4391 y($endif)630 4549
+y(application)1110 4658 y Ft(The)21 b Fj(application)j
Ft(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
-(set-)1110 5121 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
+(set-)1110 4768 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
(Readline)g(library)g(sets)g(the)g Fj(application)1110
-5230 y(name)p Ft(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
+4878 y(name)p Ft(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
-5340 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
-(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)p eop end
-%%Page: 13 17
-TeXDict begin 13 16 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(13)1110 299 y(instance,)35
-b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f(sequence)h(that)f
-(quotes)1110 408 y(the)e(curren)m(t)f(or)g(previous)g(w)m(ord)g(in)g
-(Bash:)1350 543 y Fs($if)47 b(Bash)1350 653 y(#)g(Quote)g(the)g
-(current)f(or)h(previous)e(word)1350 762 y("\\C-xq":)h
-("\\eb\\"\\ef\\"")1350 872 y($endif)630 1031 y(variable)96
-b Ft(The)33 b Fj(v)-5 b(ariable)39 b Ft(construct)33
-b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g(Readline)1110
-1141 y(v)-5 b(ariables)32 b(and)f(v)-5 b(alues.)45 b(The)32
-b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i(`)p
-Fs(=)p Ft(',)1110 1250 y(`)p Fs(==)p Ft(',)49 b(and)44
+4987 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
+(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 5097
+y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
+(sequence)h(that)f(quotes)1110 5206 y(the)e(curren)m(t)f(or)g(previous)
+g(w)m(ord)g(in)g(Bash:)1350 5340 y Fs($if)47 b(Bash)p
+eop end
+%%Page: 14 18
+TeXDict begin 14 17 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(14)1350 299 y Fs(#)47
+b(Quote)g(the)g(current)f(or)h(previous)e(word)1350 408
+y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 518 y($endif)630
+677 y(variable)96 b Ft(The)33 b Fj(v)-5 b(ariable)39
+b Ft(construct)33 b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g
+(Readline)1110 787 y(v)-5 b(ariables)32 b(and)f(v)-5
+b(alues.)45 b(The)32 b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i
+(`)p Fs(=)p Ft(',)1110 897 y(`)p Fs(==)p Ft(',)49 b(and)44
b(`)p Fs(!=)p Ft('.)85 b(The)44 b(v)-5 b(ariable)46 b(name)f(m)m(ust)g
-(b)s(e)g(separated)g(from)g(the)1110 1360 y(comparison)25
+(b)s(e)g(separated)g(from)g(the)1110 1006 y(comparison)25
b(op)s(erator)g(b)m(y)g(whitespace;)j(the)d(op)s(erator)g(ma)m(y)g(b)s
-(e)f(separated)1110 1469 y(from)33 b(the)h(v)-5 b(alue)35
+(e)f(separated)1110 1116 y(from)33 b(the)h(v)-5 b(alue)35
b(on)f(the)g(righ)m(t)g(hand)f(side)h(b)m(y)f(whitespace.)52
-b(Both)35 b(string)1110 1579 y(and)i(b)s(o)s(olean)g(v)-5
+b(Both)35 b(string)1110 1225 y(and)i(b)s(o)s(olean)g(v)-5
b(ariables)38 b(ma)m(y)h(b)s(e)d(tested.)63 b(Bo)s(olean)39
-b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 1689 y(tested)46
+b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 1335 y(tested)46
b(against)g(the)f(v)-5 b(alues)46 b Fj(on)f Ft(and)f
Fj(o\013)p Ft(.)85 b(The)45 b(follo)m(wing)h(example)g(is)1110
-1798 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Fs(mode=emacs)e
-Ft(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 1933 y
-Fs($if)47 b(editing-mode)d(==)k(emacs)1350 2042 y(set)f
-(show-mode-in-prompt)42 b(on)1350 2152 y($endif)150 2311
+1445 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Fs(mode=emacs)e
+Ft(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 1579 y
+Fs($if)47 b(editing-mode)d(==)k(emacs)1350 1689 y(set)f
+(show-mode-in-prompt)42 b(on)1350 1798 y($endif)150 1958
y($endif)192 b Ft(This)29 b(command,)i(as)f(seen)h(in)f(the)g(previous)
g(example,)h(terminates)g(an)g Fs($if)e Ft(command.)150
-2471 y Fs($else)240 b Ft(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
+2117 y Fs($else)240 b Ft(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
(the)f Fs($if)g Ft(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
-(fails.)150 2630 y Fs($include)96 b Ft(This)43 b(directiv)m(e)i(tak)m
+(fails.)150 2276 y Fs($include)96 b Ft(This)43 b(directiv)m(e)i(tak)m
(es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g
-(commands)630 2740 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
+(commands)630 2386 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
-(from)630 2849 y Fs(/etc/inputrc)p Ft(:)870 2984 y Fs($include)46
-b(/etc/inputrc)150 3183 y Fi(1.3.3)63 b(Sample)41 b(Init)g(File)150
-3330 y Ft(Here)27 b(is)f(an)h(example)g(of)f(an)h Fj(inputrc)k
+(from)630 2496 y Fs(/etc/inputrc)p Ft(:)870 2630 y Fs($include)46
+b(/etc/inputrc)150 2829 y Fi(1.3.3)63 b(Sample)41 b(Init)g(File)150
+2976 y Ft(Here)27 b(is)f(an)h(example)g(of)f(an)h Fj(inputrc)k
Ft(\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 3440 y(conditional)j(syn)m
+b(ariable)27 b(assignmen)m(t,)i(and)150 3086 y(conditional)j(syn)m
(tax.)p eop end
-%%Page: 14 18
-TeXDict begin 14 17 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(14)390 408 y Fs(#)47
+%%Page: 15 19
+TeXDict begin 15 18 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(15)390 408 y Fs(#)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)
@@ -7827,9 +7900,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: 15 19
-TeXDict begin 15 18 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(15)390 299 y Fs(#"\\M-\\C-[A":)331
+%%Page: 16 20
+TeXDict begin 16 19 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(16)390 299 y Fs(#"\\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)
@@ -7862,9 +7935,9 @@ y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
g(for)i(a)g(word,)390 5121 y(#)g(ask)g(whether)f(or)h(not)g(the)g(user)
g(wants)f(to)h(see)g(all)g(of)g(them)390 5230 y(set)g
(completion-query-items)42 b(150)p eop end
-%%Page: 16 20
-TeXDict begin 16 19 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(16)390 299 y Fs(#)47
+%%Page: 17 21
+TeXDict begin 17 20 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(17)390 299 y Fs(#)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 1089 y Fr(1.4)68 b(Bindable)45 b(Readline)i(Commands)
@@ -7915,9 +7988,9 @@ y(not)k(tak)m(e)i(up)e(more)g(than)g(one)g(ph)m(ysical)h(line)g(or)f
(redra)m(w)630 5340 y(the)f(curren)m(t)f(line,)h(lea)m(ving)h(the)e
(curren)m(t)h(line)f(at)h(the)g(top)g(of)f(the)h(screen.)p
eop end
-%%Page: 17 21
-TeXDict begin 17 20 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fs(clear-screen)27
+%%Page: 18 22
+TeXDict begin 18 21 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fs(clear-screen)27
b(\(C-l\))630 408 y Ft(Clear)35 b(the)f(screen,)i(then)e(redra)m(w)g
(the)h(curren)m(t)f(line,)i(lea)m(ving)g(the)f(curren)m(t)f(line)h(at)g
(the)630 518 y(top)c(of)f(the)h(screen.)150 665 y Fs
@@ -7983,445 +8056,449 @@ y Ft(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
5340 y(start)g(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)p
eop end
-%%Page: 18 22
-TeXDict begin 18 21 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(18)630 299 y(b)s(eginning)32
+%%Page: 19 23
+TeXDict begin 19 22 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(19)630 299 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 408 y(command)d(is)h(un)m
-(b)s(ound.)150 581 y Fs(history-substring-search)o(-for)o(ward)24
-b(\(\))630 690 y Ft(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i
+(b)s(ound.)150 566 y Fs(history-substring-search)o(-for)o(ward)24
+b(\(\))630 676 y Ft(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 800 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)
+(the)630 785 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)
s(oin)m(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m
-(ywhere)630 910 y(in)i(a)h(history)g(line.)47 b(This)32
+(ywhere)630 895 y(in)i(a)h(history)g(line.)47 b(This)32
b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)47 b(By)33
-b(default,)h(this)e(command)630 1019 y(is)e(un)m(b)s(ound.)150
-1192 y Fs(history-substring-search)o(-bac)o(kwar)o(d)24
-b(\(\))630 1301 y Ft(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h
+b(default,)h(this)e(command)630 1005 y(is)e(un)m(b)s(ound.)150
+1162 y Fs(history-substring-search)o(-bac)o(kwar)o(d)24
+b(\(\))630 1272 y Ft(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h
(history)g(for)g(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g
-(the)630 1411 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h
+(the)630 1381 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h
(p)s(oin)m(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h
-(an)m(ywhere)630 1520 y(in)i(a)h(history)g(line.)47 b(This)32
+(an)m(ywhere)630 1491 y(in)i(a)h(history)g(line.)47 b(This)32
b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)47 b(By)33
-b(default,)h(this)e(command)630 1630 y(is)e(un)m(b)s(ound.)150
-1802 y Fs(yank-nth-arg)d(\(M-C-y\))630 1912 y Ft(Insert)37
+b(default,)h(this)e(command)630 1601 y(is)e(un)m(b)s(ound.)150
+1758 y Fs(yank-nth-arg)d(\(M-C-y\))630 1868 y Ft(Insert)37
b(the)g(\014rst)f(argumen)m(t)i(to)f(the)h(previous)e(command)h
-(\(usually)g(the)g(second)g(w)m(ord)630 2021 y(on)32
+(\(usually)g(the)g(second)g(w)m(ord)630 1978 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 Fj(n)p Ft(,)g(insert)g(the)g Fj(n)p
-Ft(th)f(w)m(ord)g(from)630 2131 y(the)k(previous)f(command)h(\(the)g(w)
+Ft(th)f(w)m(ord)g(from)630 2087 y(the)k(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
-2241 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
+2197 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
Fj(n)p Ft(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
-2350 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fj(n)e
+2306 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fj(n)e
Ft(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
-2460 y(the)e(`)p Fs(!)p Fl(n)p Ft(')f(history)g(expansion)g(had)g(b)s
-(een)g(sp)s(eci\014ed.)150 2632 y Fs(yank-last-arg)d(\(M-.)i(or)h
-(M-_\))630 2742 y Ft(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
+2416 y(the)e(`)p Fs(!)p Fl(n)p Ft(')f(history)g(expansion)g(had)g(b)s
+(een)g(sp)s(eci\014ed.)150 2574 y Fs(yank-last-arg)d(\(M-.)i(or)h
+(M-_\))630 2683 y Ft(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
-2851 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+2793 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 Fs(yank-nth-arg)p
-Ft(.)630 2961 y(Successiv)m(e)26 b(calls)g(to)f Fs(yank-last-arg)c
+Ft(.)630 2902 y(Successiv)m(e)26 b(calls)g(to)f Fs(yank-last-arg)c
Ft(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
-(inserting)630 3070 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+(inserting)630 3012 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 3180 y(in)36 b(turn.)58 b(An)m(y)36
+(of)f(eac)m(h)h(line)630 3122 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 3290 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(calls)h(determines)630 3231 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 3399 y(direction)23 b(through)g(the)g(history)f
+(switc)m(hes)h(the)630 3341 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 3509 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
+(facilities)630 3450 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 Fs(!$)p Ft(')f(history)g(expansion)
-h(had)f(b)s(een)630 3618 y(sp)s(eci\014ed.)150 3791 y
-Fs(operate-and-get-next)e(\(C-o\))630 3900 y Ft(Accept)30
+h(had)f(b)s(een)630 3560 y(sp)s(eci\014ed.)150 3718 y
+Fs(operate-and-get-next)e(\(C-o\))630 3827 y Ft(Accept)30
b(the)g(curren)m(t)e(line)i(for)f(return)f(to)h(the)h(calling)g
-(application)h(as)e(if)g(a)h(newline)f(had)630 4010 y(b)s(een)22
+(application)h(as)e(if)g(a)h(newline)f(had)630 3937 y(b)s(een)22
b(en)m(tered,)k(and)d(fetc)m(h)h(the)f(next)g(line)h(relativ)m(e)h(to)f
-(the)f(curren)m(t)g(line)h(from)f(the)g(history)630 4120
+(the)f(curren)m(t)g(line)h(from)f(the)g(history)630 4046
y(for)31 b(editing.)43 b(A)31 b(n)m(umeric)f(argumen)m(t,)i(if)f
(supplied,)f(sp)s(eci\014es)h(the)g(history)f(en)m(try)i(to)f(use)630
-4229 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 4441
-y Fi(1.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
-b(ext)150 4620 y Fl(end-of-file)27 b Fs(\(usually)h(C-d\))630
-4729 y Ft(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
-(for)f(example,)i(b)m(y)e Fs(stty)p Ft(.)39 b(If)25 b(this)h(c)m
-(harac-)630 4839 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 4948 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 Fm(eof)p
-Ft(.)150 5121 y Fs(delete-char)e(\(C-d\))630 5230 y Ft(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 5340
-y(as)e(the)f(tt)m(y)i Fm(eof)d Ft(c)m(haracter,)j(as)f
-Fl(C-d)e Ft(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
-(e\013ects.)p eop end
-%%Page: 19 23
-TeXDict begin 19 22 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fs
-(backward-delete-char)25 b(\(Rubout\))630 408 y Ft(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
-518 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-669 y Fs(forward-backward-delete-)o(char)24 b(\(\))630
-779 y Ft(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+4156 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 4314
+y Fs(fetch-history)d(\(\))630 4423 y Ft(With)e(a)f(n)m(umeric)g
+(argumen)m(t,)i(fetc)m(h)f(that)g(en)m(try)f(from)g(the)g(history)g
+(list)h(and)e(mak)m(e)i(it)g(the)630 4533 y(curren)m(t)30
+b(line.)41 b(Without)30 b(an)g(argumen)m(t,)h(mo)m(v)m(e)g(bac)m(k)g
+(to)f(the)g(\014rst)f(en)m(try)h(in)g(the)g(history)630
+4643 y(list.)150 4840 y Fi(1.4.3)63 b(Commands)42 b(F)-10
+b(or)41 b(Changing)g(T)-10 b(ext)150 5011 y Fl(end-of-file)27
+b Fs(\(usually)h(C-d\))630 5121 y Ft(The)e(c)m(haracter)h(indicating)h
+(end-of-\014le)e(as)h(set,)g(for)f(example,)i(b)m(y)e
+Fs(stty)p Ft(.)39 b(If)25 b(this)h(c)m(harac-)630 5230
+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
+5340 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 Fm(eof)p Ft(.)p eop
+end
+%%Page: 20 24
+TeXDict begin 20 23 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fs(delete-char)27
+b(\(C-d\))630 408 y Ft(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 518 y(as)e(the)f(tt)m(y)i Fm(eof)d Ft(c)m(haracter,)j
+(as)f Fl(C-d)e Ft(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
+(e\013ects.)150 669 y Fs(backward-delete-char)25 b(\(Rubout\))630
+779 y Ft(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
+889 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
+1040 y Fs(forward-backward-delete-)o(char)24 b(\(\))630
+1149 y Ft(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
-889 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
-998 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-1149 y Fs(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 1259
+1259 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
+1369 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+1520 y Fs(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 1630
y Ft(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
-1369 y(sequences)d(lik)m(e)g Fl(C-q)p Ft(,)f(for)g(example.)150
-1520 y Fs(tab-insert)e(\(M-TAB\))630 1630 y Ft(Insert)i(a)h(tab)f(c)m
-(haracter.)150 1781 y Fs(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
-(\))630 1891 y Ft(Insert)g(y)m(ourself.)150 2042 y Fs
-(bracketed-paste-begin)25 b(\(\))630 2151 y Ft(This)f(function)h(is)f
+1739 y(sequences)d(lik)m(e)g Fl(C-q)p Ft(,)f(for)g(example.)150
+1891 y Fs(tab-insert)e(\(M-TAB\))630 2000 y Ft(Insert)i(a)h(tab)f(c)m
+(haracter.)150 2151 y Fs(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
+(\))630 2261 y Ft(Insert)g(y)m(ourself.)150 2412 y Fs
+(bracketed-paste-begin)25 b(\(\))630 2522 y Ft(This)f(function)h(is)f
(in)m(tended)h(to)h(b)s(e)e(b)s(ound)f(to)i(the)g Fs(")p
Ft(brac)m(k)m(eted)h(paste)p Fs(")f Ft(escap)s(e)h(sequence)630
-2261 y(sen)m(t)38 b(b)m(y)f(some)h(terminals,)i(and)d(suc)m(h)g(a)h
+2632 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 2371 y(Readline)33 b(to)g(insert)g(the)f(pasted)h(text)
+b(allo)m(ws)630 2741 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
-2480 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h(from)f(the)h(k)
+2851 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
-2590 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e(to)j
+2960 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e(to)j
Fs(self-insert)c Ft(instead)j(of)h(executing)g(an)m(y)f(editing)630
-2699 y(commands.)630 2830 y(Brac)m(k)m(eted)38 b(paste)f(sets)f(the)h
+3070 y(commands.)630 3200 y(Brac)m(k)m(eted)38 b(paste)f(sets)f(the)h
(region)f(\(the)h(c)m(haracters)g(b)s(et)m(w)m(een)g(p)s(oin)m(t)f(and)
-g(the)g(mark\))630 2939 y(to)j(the)g(inserted)f(text.)65
+g(the)g(mark\))630 3310 y(to)j(the)g(inserted)f(text.)65
b(It)39 b(uses)f(the)g(concept)h(of)g(an)f Fk(active)i(mark)10
-b Ft(:)57 b(when)38 b(the)g(mark)630 3049 y(is)d(activ)m(e,)k(Readline)
+b Ft(:)57 b(when)38 b(the)g(mark)630 3420 y(is)d(activ)m(e,)k(Readline)
c(redispla)m(y)h(uses)e(the)h(terminal's)h(standout)f(mo)s(de)f(to)i
-(denote)g(the)630 3159 y(region.)150 3310 y Fs(transpose-chars)26
-b(\(C-t\))630 3420 y Ft(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)
+(denote)g(the)630 3529 y(region.)150 3680 y Fs(transpose-chars)26
+b(\(C-t\))630 3790 y Ft(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 3529 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
+(cursor,)630 3900 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 3639 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
+g(of)h(the)630 4009 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 3748 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)150 3900 y Fs(transpose-words)c(\(M-t\))630
-4009 y Ft(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
+b(Negativ)m(e)25 b(argumen)m(ts)630 4119 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)150 4270 y Fs(transpose-words)c(\(M-t\))630
+4380 y Ft(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 4119 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
+g(that)630 4489 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 4228 y(last)j(t)m(w)m(o)h(w)m
-(ords)e(on)g(the)h(line.)150 4380 y Fs(upcase-word)c(\(M-u\))630
-4489 y Ft(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+(line,)i(this)e(transp)s(oses)g(the)630 4599 y(last)j(t)m(w)m(o)h(w)m
+(ords)e(on)g(the)h(line.)150 4750 y Fs(upcase-word)c(\(M-u\))630
+4860 y Ft(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
-4599 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 4750 y Fs(downcase-word)d(\(M-l\))630
-4860 y Ft(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+4969 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 5121 y Fs(downcase-word)d(\(M-l\))630
+5230 y Ft(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 4969 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 5121 y Fs(capitalize-word)26
-b(\(M-c\))630 5230 y Ft(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(ercase)630 5340 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.)p eop end
+%%Page: 21 25
+TeXDict begin 21 24 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fs(capitalize-word)26
+b(\(M-c\))630 408 y Ft(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 5340 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.)p eop end
-%%Page: 20 24
-TeXDict begin 20 23 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fs(overwrite-mode)26
-b(\(\))630 408 y Ft(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(capitalize)630 518 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 678 y Fs(overwrite-mode)26
+b(\(\))630 788 y Ft(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 518 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
+h(switc)m(hes)630 897 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 628 y(insert)30 b(mo)s(de.)41
+(t,)i(switc)m(hes)e(to)630 1007 y(insert)30 b(mo)s(de.)41
b(This)30 b(command)h(a\013ects)h(only)e Fs(emacs)f Ft(mo)s(de;)i
-Fs(vi)f Ft(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 737
+Fs(vi)f Ft(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 1116
y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
Fs(readline\(\))c Ft(starts)k(in)f(insert)g(mo)s(de.)630
-877 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 Fs(self-insert)c Ft(replace)k(the)g(text)g(at)630
-986 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 1096
-y Fs(backward-delete-char)25 b Ft(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 1236 y(By)g(default,)f
-(this)h(command)f(is)g(un)m(b)s(ound.)150 1445 y Fi(1.4.4)63
-b(Killing)42 b(And)e(Y)-10 b(anking)150 1622 y Fs(kill-line)28
-b(\(C-k\))630 1732 y Ft(Kill)k(the)f(text)i(from)d(p)s(oin)m(t)i(to)g
-(the)f(end)g(of)g(the)h(line.)44 b(With)31 b(a)h(negativ)m(e)i(n)m
-(umeric)d(argu-)630 1841 y(men)m(t,)g(kill)g(bac)m(kw)m(ard)g(from)f
-(the)g(cursor)g(to)h(the)g(b)s(eginning)e(of)i(the)g(curren)m(t)f
-(line.)150 2011 y Fs(backward-kill-line)25 b(\(C-x)30
-b(Rubout\))630 2120 y Ft(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h
-(cursor)g(to)g(the)g(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70
-b(With)41 b(a)630 2230 y(negativ)m(e)47 b(n)m(umeric)e(argumen)m(t,)50
+1251 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 Fs(self-insert)c Ft(replace)k(the)g(text)g(at)630
+1361 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
+1470 y Fs(backward-delete-char)25 b Ft(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 1605
+y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
+1805 y Fi(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+1977 y Fs(kill-line)28 b(\(C-k\))630 2087 y Ft(Kill)k(the)f(text)i
+(from)d(p)s(oin)m(t)i(to)g(the)f(end)g(of)g(the)h(line.)44
+b(With)31 b(a)h(negativ)m(e)i(n)m(umeric)d(argu-)630
+2197 y(men)m(t,)g(kill)g(bac)m(kw)m(ard)g(from)f(the)g(cursor)g(to)h
+(the)g(b)s(eginning)e(of)i(the)g(curren)m(t)f(line.)150
+2357 y Fs(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+2466 y Ft(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h(cursor)g(to)g(the)g
+(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70 b(With)41
+b(a)630 2576 y(negativ)m(e)47 b(n)m(umeric)e(argumen)m(t,)50
b(kill)c(forw)m(ard)e(from)h(the)g(cursor)g(to)h(the)f(end)f(of)i(the)
-630 2339 y(curren)m(t)30 b(line.)150 2509 y Fs(unix-line-discard)c
-(\(C-u\))630 2619 y Ft(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f
+630 2685 y(curren)m(t)30 b(line.)150 2845 y Fs(unix-line-discard)c
+(\(C-u\))630 2955 y Ft(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
-2788 y Fs(kill-whole-line)c(\(\))630 2898 y Ft(Kill)37
+3115 y Fs(kill-whole-line)c(\(\))630 3225 y Ft(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
-3007 y(this)30 b(is)h(un)m(b)s(ound.)150 3177 y Fs(kill-word)d(\(M-d\))
-630 3287 y Ft(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
+3334 y(this)30 b(is)h(un)m(b)s(ound.)150 3494 y Fs(kill-word)d(\(M-d\))
+630 3604 y Ft(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 3396 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
+(the)g(end)630 3713 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 Fs(forward-word)p
-Ft(.)150 3566 y Fs(backward-kill-word)25 b(\(M-DEL\))630
-3675 y Ft(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
+Ft(.)150 3874 y Fs(backward-kill-word)25 b(\(M-DEL\))630
+3983 y Ft(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
-Fs(backward-word)p Ft(.)150 3845 y Fs(shell-transpose-words)c
-(\(M-C-t\))630 3955 y Ft(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)
+Fs(backward-word)p Ft(.)150 4143 y Fs(shell-transpose-words)c
+(\(M-C-t\))630 4253 y Ft(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 4064 y(w)m(ord)c(as)h(w)m(ell.)41
+(oin)m(t)f(past)g(that)630 4362 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 4174 y(last)j(t)m(w)m(o)h
+(the)f(line,)i(this)e(transp)s(oses)g(the)630 4472 y(last)j(t)m(w)m(o)h
(w)m(ords)d(on)i(the)f(line.)41 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h
-(the)h(same)f(as)h Fs(shell-forward-)630 4283 y(word)e
-Ft(and)h Fs(shell-backward-word)p Ft(.)150 4453 y Fs(unix-word-rubout)c
-(\(C-w\))630 4562 y Ft(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m
+(the)h(same)f(as)h Fs(shell-forward-)630 4582 y(word)e
+Ft(and)h Fs(shell-backward-word)p Ft(.)150 4742 y Fs(unix-word-rubout)c
+(\(C-w\))630 4851 y Ft(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 4672 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)
-f(kill-ring.)150 4842 y Fs(unix-filename-rubout)25 b(\(\))630
-4951 y Ft(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e
+b(.)43 b(The)31 b(killed)630 4961 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)
+f(kill-ring.)150 5121 y Fs(unix-filename-rubout)25 b(\(\))630
+5230 y Ft(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
-5061 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 5230 y Fs
-(delete-horizontal-space)24 b(\(\))630 5340 y Ft(Delete)33
+5340 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.)p eop end
+%%Page: 22 26
+TeXDict begin 22 25 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(22)150 299 y Fs
+(delete-horizontal-space)24 b(\(\))630 408 y Ft(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.)p eop
-end
-%%Page: 21 25
-TeXDict begin 21 24 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fs(kill-region)27
-b(\(\))630 408 y Ft(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 554 y Fs(copy-region-as-kill)25 b(\(\))630 663 y
-Ft(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 773 y(By)31 b(default,)f(this)h(command)f(is)g(un)m
-(b)s(ound.)150 918 y Fs(copy-backward-word)25 b(\(\))630
-1028 y Ft(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(to)i
+b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 564
+y Fs(kill-region)d(\(\))630 673 y Ft(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 829 y Fs(copy-region-as-kill)25 b(\(\))630
+938 y Ft(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 1048 y(By)31 b(default,)f(this)h(command)f(is)g(un)m
+(b)s(ound.)150 1203 y Fs(copy-backward-word)25 b(\(\))630
+1313 y Ft(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 1138 y(same)31 b(as)f Fs(backward-word)p Ft(.)38
+(the)630 1422 y(same)31 b(as)f Fs(backward-word)p Ft(.)38
b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
-1283 y Fs(copy-forward-word)26 b(\(\))630 1393 y Ft(Cop)m(y)31
+1578 y Fs(copy-forward-word)26 b(\(\))630 1687 y Ft(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
-1502 y(same)f(as)f Fs(forward-word)p Ft(.)38 b(By)30
+1797 y(same)f(as)f Fs(forward-word)p Ft(.)38 b(By)30
b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
-1647 y Fs(yank)f(\(C-y\))630 1757 y Ft(Y)-8 b(ank)31
+1952 y Fs(yank)f(\(C-y\))630 2062 y Ft(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 1902 y Fs(yank-pop)d(\(M-y\))630 2012
+(p)s(oin)m(t.)150 2217 y Fs(yank-pop)d(\(M-y\))630 2327
y Ft(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
-2122 y(command)30 b(is)h Fs(yank)e Ft(or)h Fs(yank-pop)p
-Ft(.)150 2307 y Fi(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
-(ts)150 2472 y Fs(digit-argument)26 b(\()p Fl(M-0)p Fs(,)j
-Fl(M-1)p Fs(,)h(...)f Fl(M--)p Fs(\))630 2581 y Ft(Add)d(this)h(digit)g
+2436 y(command)30 b(is)h Fs(yank)e Ft(or)h Fs(yank-pop)p
+Ft(.)150 2631 y Fi(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 2801 y Fs(digit-argument)26 b(\()p Fl(M-0)p Fs(,)j
+Fl(M-1)p Fs(,)h(...)f Fl(M--)p Fs(\))630 2911 y Ft(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 2691 y Fl(M--)j Ft(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 2836 y Fs(universal-argument)25 b(\(\))630
-2946 y Ft(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 3020 y Fl(M--)j Ft(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 3176 y Fs(universal-argument)25 b(\(\))630
+3285 y Ft(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 3055 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
+(y)f(one)630 3395 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
-3165 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+3505 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 Fs(universal-argument)630
-3275 y Ft(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+3614 y Ft(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
-3384 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+3724 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
-3494 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
+3833 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
-3603 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
+3943 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
-3713 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
+4053 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
-3822 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(.)150 4008 y Fi(1.4.6)63
+4162 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(.)150 4357 y Fi(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 4173 y Fs(complete)28 b(\(TAB\))630
-4282 y Ft(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
+b(Y)-10 b(ou)150 4527 y Fs(complete)28 b(\(TAB\))630
+4637 y Ft(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
-4392 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
+4746 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
-4537 y Fs(possible-completions)25 b(\(M-?\))630 4647
+4902 y Fs(possible-completions)25 b(\(M-?\))630 5011
y Ft(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
-4756 y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i
+5121 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 4866 y Fs(completion-display-width)o
+b(alue)33 b(of)630 5230 y Fs(completion-display-width)o
Ft(,)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 Fs(COLUMNS)p Ft(,)630 4975 y(or)30 b(the)h(screen)f
-(width,)g(in)g(that)h(order.)150 5121 y Fs(insert-completions)25
-b(\(M-*\))630 5230 y Ft(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 5340 y(b)m(y)g Fs(possible-completions)p
-Ft(.)p eop end
-%%Page: 22 26
-TeXDict begin 22 25 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(22)150 299 y Fs(menu-complete)27
-b(\(\))630 408 y Ft(Similar)d(to)g Fs(complete)p Ft(,)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 518 y(from)37 b(the)h(list)h(of)f(p)s(ossible)f(completions.)64
+b(ariable)38 b Fs(COLUMNS)p Ft(,)630 5340 y(or)30 b(the)h(screen)f
+(width,)g(in)g(that)h(order.)p eop end
+%%Page: 23 27
+TeXDict begin 23 26 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(23)150 299 y Fs
+(insert-completions)25 b(\(M-*\))630 408 y Ft(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 518
+y(b)m(y)g Fs(possible-completions)p Ft(.)150 673 y Fs(menu-complete)d
+(\(\))630 783 y Ft(Similar)d(to)g Fs(complete)p Ft(,)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 893 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 Fs(menu-complete)630
-628 y Ft(steps)i(through)g(the)g(list)h(of)f(p)s(ossible)g
+1002 y Ft(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
-737 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g(of)g(completions,)i(the)e
+1112 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
-847 y(of)f Fs(bell-style)p Ft(\))e(and)h(the)h(original)i(text)f(is)f
+1221 y(of)f Fs(bell-style)p Ft(\))e(and)h(the)h(original)i(text)f(is)f
(restored.)57 b(An)36 b(argumen)m(t)h(of)f Fj(n)f Ft(mo)m(v)m(es)i
-Fj(n)630 956 y Ft(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+Fj(n)630 1331 y Ft(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 1066 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
+(used)g(to)630 1441 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 1176 y Fs(TAB)p Ft(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
-(y)i(default.)150 1331 y Fs(menu-complete-backward)24
-b(\(\))630 1441 y Ft(Iden)m(tical)36 b(to)g Fs(menu-complete)p
+(ound)e(to)630 1550 y Fs(TAB)p Ft(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 1705 y Fs(menu-complete-backward)24
+b(\(\))630 1815 y Ft(Iden)m(tical)36 b(to)g Fs(menu-complete)p
Ft(,)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 1550 y(completions,)d(as)e(if)h Fs(menu-complete)26
+(p)s(ossible)630 1925 y(completions,)d(as)e(if)h Fs(menu-complete)26
b Ft(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
-1705 y Fs(delete-char-or-list)25 b(\(\))630 1815 y Ft(Deletes)41
+2080 y Fs(delete-char-or-list)25 b(\(\))630 2190 y Ft(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 1925 y(line)50 b(\(lik)m(e)h
+(eginning)e(or)h(end)f(of)h(the)630 2299 y(line)50 b(\(lik)m(e)h
Fs(delete-char)p Ft(\).)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 2034
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 2409
y Fs(possible-completions)p Ft(.)35 b(This)30 b(command)g(is)g(un)m(b)s
-(ound)e(b)m(y)i(default.)150 2229 y Fi(1.4.7)63 b(Keyb)s(oard)41
-b(Macros)150 2399 y Fs(start-kbd-macro)26 b(\(C-x)j(\(\))630
-2509 y Ft(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 2604 y Fi(1.4.7)63 b(Keyb)s(oard)41
+b(Macros)150 2774 y Fs(start-kbd-macro)26 b(\(C-x)j(\(\))630
+2883 y Ft(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
-2664 y Fs(end-kbd-macro)d(\(C-x)i(\)\))630 2774 y Ft(Stop)e(sa)m(ving)h
+3039 y Fs(end-kbd-macro)d(\(C-x)i(\)\))630 3148 y Ft(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 2883
-y(de\014nition.)150 3039 y Fs(call-last-kbd-macro)c(\(C-x)k(e\))630
-3148 y Ft(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 3258
+y(de\014nition.)150 3413 y Fs(call-last-kbd-macro)c(\(C-x)k(e\))630
+3523 y Ft(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
-3258 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 3413 y Fs(print-last-kbd-macro)25 b(\(\))630
-3523 y Ft(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
+3632 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 3788 y Fs(print-last-kbd-macro)25 b(\(\))630
+3897 y Ft(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 Fj(inputrc)k
-Ft(\014le.)150 3718 y Fi(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
-150 3888 y Fs(re-read-init-file)26 b(\(C-x)j(C-r\))630
-3997 y Ft(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
+Ft(\014le.)150 4092 y Fi(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
+150 4262 y Fs(re-read-init-file)26 b(\(C-x)j(C-r\))630
+4372 y Ft(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
Fj(inputrc)27 b Ft(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
-(or)i(v)-5 b(ariable)630 4107 y(assignmen)m(ts)31 b(found)e(there.)150
-4262 y Fs(abort)g(\(C-g\))630 4372 y Ft(Ab)s(ort)d(the)h(curren)m(t)f
+(or)i(v)-5 b(ariable)630 4481 y(assignmen)m(ts)31 b(found)e(there.)150
+4637 y Fs(abort)g(\(C-g\))630 4746 y Ft(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 4481 y(setting)j(of)g Fs(bell-style)p
-Ft(\).)150 4637 y Fs(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p
-Fl(x)p Fs(,)g(...)o(\))630 4746 y Ft(If)35 b(the)g(meta\014ed)g(c)m
+b(ject)26 b(to)i(the)630 4856 y(setting)j(of)g Fs(bell-style)p
+Ft(\).)150 5011 y Fs(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p
+Fl(x)p Fs(,)g(...)o(\))630 5121 y Ft(If)35 b(the)g(meta\014ed)g(c)m
(haracter)i Fj(x)k Ft(is)35 b(upp)s(er)e(case,)k(run)d(the)h(command)g
-(that)g(is)g(b)s(ound)e(to)630 4856 y(the)g(corresp)s(onding)f
+(that)g(is)g(b)s(ound)e(to)630 5230 y(the)g(corresp)s(onding)f
(meta\014ed)h(lo)m(w)m(er)i(case)f(c)m(haracter.)50 b(The)32
-b(b)s(eha)m(vior)h(is)g(unde\014ned)e(if)630 4965 y Fj(x)37
-b Ft(is)30 b(already)h(lo)m(w)m(er)h(case.)150 5121 y
-Fs(prefix-meta)27 b(\(ESC\))630 5230 y Ft(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 5340 y(T)m(yping)30
-b(`)p Fs(ESC)g(f)p Ft(')g(is)h(equiv)-5 b(alen)m(t)31
-b(to)g(t)m(yping)g Fl(M-f)p Ft(.)p eop end
-%%Page: 23 27
-TeXDict begin 23 26 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(23)150 299 y Fs(undo)29
-b(\(C-_)g(or)h(C-x)g(C-u\))630 408 y Ft(Incremen)m(tal)h(undo,)f
-(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-584 y Fs(revert-line)27 b(\(M-r\))630 693 y Ft(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 Fs(undo)f Ft(command)630
-803 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 978 y Fs(tilde-expand)d(\(M-~\))630 1088 y Ft(P)m(erform)j(tilde)h
-(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 1263
-y Fs(set-mark)d(\(C-@\))630 1373 y Ft(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 1482 y(to)f(that)g(p)s(osition.)
-150 1658 y Fs(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
-1767 y Ft(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 1877 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 2052
-y Fs(character-search)26 b(\(C-]\))630 2162 y Ft(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 2271 y(A)30
+b(b)s(eha)m(vior)h(is)g(unde\014ned)e(if)630 5340 y Fj(x)37
+b Ft(is)30 b(already)h(lo)m(w)m(er)h(case.)p eop end
+%%Page: 24 28
+TeXDict begin 24 27 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(24)150 299 y Fs(prefix-meta)27
+b(\(ESC\))630 408 y Ft(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 518 y(T)m(yping)30 b(`)p Fs(ESC)g(f)p
+Ft(')g(is)h(equiv)-5 b(alen)m(t)31 b(to)g(t)m(yping)g
+Fl(M-f)p Ft(.)150 704 y Fs(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630
+814 y Ft(Incremen)m(tal)h(undo,)f(separately)h(remem)m(b)s(ered)f(for)g
+(eac)m(h)i(line.)150 1000 y Fs(revert-line)27 b(\(M-r\))630
+1110 y Ft(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 Fs(undo)f
+Ft(command)630 1219 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f
+(b)s(eginning.)150 1406 y Fs(tilde-expand)d(\(M-~\))630
+1515 y Ft(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m
+(ord.)150 1702 y Fs(set-mark)d(\(C-@\))630 1811 y Ft(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
+1921 y(to)f(that)g(p)s(osition.)150 2107 y Fs(exchange-point-and-mark)
+24 b(\(C-x)29 b(C-x\))630 2217 y Ft(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 2326 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
+2513 y Fs(character-search)26 b(\(C-]\))630 2622 y Ft(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 2732 y(A)30
b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 2447 y Fs(character-search-backwar)o(d)24
-b(\(M-C-]\))630 2556 y Ft(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 2918 y Fs(character-search-backwar)o(d)24
+b(\(M-C-]\))630 3028 y Ft(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 2666 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
+g(that)630 3137 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
-2841 y Fs(skip-csi-sequence)d(\(\))630 2951 y Ft(Read)i(enough)f(c)m
+3324 y Fs(skip-csi-sequence)d(\(\))630 3433 y Ft(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 3061 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
+(as)g(those)h(de\014ned)630 3543 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 3170 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
+(trol)g(Sequence)630 3652 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 Fs("\\)p
-Ft(e[)p Fs(")p Ft(,)g(k)m(eys)f(pro-)630 3280 y(ducing)31
+Ft(e[)p Fs(")p Ft(,)g(k)m(eys)f(pro-)630 3762 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 3389 y(command,)f
+(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 3871 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 3499 y(un)m(b)s(ound)d(b)m
+(editing)h(bu\013er.)44 b(This)31 b(is)630 3981 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
-3674 y Fs(insert-comment)26 b(\(M-#\))630 3784 y Ft(Without)36
+4167 y Fs(insert-comment)26 b(\(M-#\))630 4277 y Ft(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 Fs(comment-begin)c Ft(v)-5 b(ariable)36
-b(is)g(in-)630 3893 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
+b(is)g(in-)630 4387 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 4003 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
+(supplied,)630 4496 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 4113 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
+(line)630 4606 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
b(alue)31 b(of)f Fs(comment-begin)p Ft(,)e(the)i(v)-5
-b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4222
+b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4715
y(c)m(haracters)42 b(in)d Fs(comment-begin)e Ft(are)j(deleted)h(from)f
-(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4332
+(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4825
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 4507 y Fs(dump-functions)d
-(\(\))630 4617 y Ft(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
+(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 5011 y Fs(dump-functions)d
+(\(\))630 5121 y Ft(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
-4726 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
+5230 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
-4836 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fj(inputrc)k
+5340 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fj(inputrc)k
Ft(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
-(default.)150 5011 y Fs(dump-variables)26 b(\(\))630
-5121 y Ft(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+(default.)p eop end
+%%Page: 25 29
+TeXDict begin 25 28 bop 150 -116 a Ft(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(25)150 299 y Fs(dump-variables)26
+b(\(\))630 408 y Ft(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 5230 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
+(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
Fj(inputrc)k Ft(\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: 24 28
-TeXDict begin 24 27 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(24)150 299 y Fs(dump-macros)27
-b(\(\))630 408 y Ft(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
-518 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 787 y Fs(dump-macros)c(\(\))630
+897 y Ft(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
(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
-628 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
+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
Fj(inputrc)35 b Ft(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
-d(b)m(y)630 737 y(default.)150 897 y Fs(emacs-editing-mode)e(\(C-e\))
-630 1006 y Ft(When)30 b(in)g Fs(vi)g Ft(command)g(mo)s(de,)g(this)h
+d(b)m(y)630 1225 y(default.)150 1385 y Fs(emacs-editing-mode)e(\(C-e\))
+630 1494 y Ft(When)30 b(in)g Fs(vi)g Ft(command)g(mo)s(de,)g(this)h
(causes)f(a)h(switc)m(h)g(to)g Fs(emacs)e Ft(editing)i(mo)s(de.)150
-1166 y Fs(vi-editing-mode)26 b(\(M-C-j\))630 1275 y Ft(When)k(in)g
+1654 y Fs(vi-editing-mode)26 b(\(M-C-j\))630 1763 y Ft(When)k(in)g
Fs(emacs)f Ft(editing)i(mo)s(de,)f(this)h(causes)f(a)h(switc)m(h)g(to)g
-Fs(vi)f Ft(editing)h(mo)s(de.)150 1516 y Fr(1.5)68 b(Readline)47
-b(vi)e(Mo)t(de)150 1675 y Ft(While)32 b(the)g(Readline)g(library)f(do)s
+Fs(vi)f Ft(editing)h(mo)s(de.)150 2004 y Fr(1.5)68 b(Readline)47
+b(vi)e(Mo)t(de)150 2164 y Ft(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 Fs(vi)f
Ft(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
-1785 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+2273 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 Fs(vi)g Ft(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f(sp)s
-(eci\014ed)f(in)150 1895 y(the)e Fm(posix)e Ft(standard.)275
-2029 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 2383 y(the)e Fm(posix)e Ft(standard.)275
+2517 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 Fs(emacs)f Ft(and)g Fs(vi)h Ft(editing)g(mo)s(des,)g(use)g(the)g
-(command)150 2139 y Fl(M-C-j)36 b Ft(\(b)s(ound)h(to)h
+(command)150 2627 y Fl(M-C-j)36 b Ft(\(b)s(ound)h(to)h
(emacs-editing-mo)s(de)i(when)d(in)g Fs(vi)h Ft(mo)s(de)f(and)g(to)i
-(vi-editing-mo)s(de)g(in)e Fs(emacs)150 2248 y Ft(mo)s(de\).)k(The)30
+(vi-editing-mo)s(de)g(in)e Fs(emacs)150 2736 y Ft(mo)s(de\).)k(The)30
b(Readline)h(default)f(is)g Fs(emacs)f Ft(mo)s(de.)275
-2383 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fs(vi)f
+2871 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fs(vi)f
Ft(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 2492 y(had)f(t)m(yp)s(ed)g(an)g(`)p
+(de,)g(as)h(if)f(y)m(ou)150 2980 y(had)f(t)m(yp)s(ed)g(an)g(`)p
Fs(i)p Ft('.)41 b(Pressing)29 b Fs(ESC)f Ft(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
-2602 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
+3090 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
Fs(vi)g Ft(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 2711 y(`)p Fs(k)p Ft(')d(and)e(subsequen)m
+(history)f(lines)h(with)150 3200 y(`)p Fs(k)p Ft(')d(and)e(subsequen)m
(t)h(lines)h(with)f(`)p Fs(j)p Ft(',)g(and)g(so)h(forth.)p
eop end
-%%Page: 25 29
-TeXDict begin 25 28 bop 3659 -116 a Ft(25)150 299 y Fp(2)80
+%%Page: 26 30
+TeXDict begin 26 29 bop 3659 -116 a Ft(26)150 299 y Fp(2)80
b(Programming)54 b(with)f(GNU)h(Readline)150 543 y Ft(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 Fm(gnu)f Ft(Readline)i(Library)e(and)g(other)h(programs.)150
@@ -8463,7 +8540,7 @@ b(the)f(line)h(is)f(ended)g(just)g(as)g(if)h(a)f(newline)h(had)150
b(p)s(erforms)e(some)j(expansion)e(on)h(the)g Fj(prompt)h
Ft(b)s(efore)f(it)g(is)g(displa)m(y)m(ed)h(on)f(the)g(screen.)38
b(See)150 3336 y(the)27 b(description)g(of)h Fs(rl_expand_prompt)22
-b Ft(\(see)28 b(Section)g(2.4.6)h([Redispla)m(y],)g(page)f(38\))g(for)f
+b Ft(\(see)28 b(Section)g(2.4.6)h([Redispla)m(y],)g(page)f(40\))g(for)f
(additional)150 3446 y(details,)41 b(esp)s(ecially)f(if)e
Fj(prompt)i Ft(will)e(con)m(tain)i(c)m(haracters)f(that)g(do)f(not)h
(consume)f(ph)m(ysical)h(screen)150 3556 y(space)31 b(when)e(displa)m
@@ -8487,9 +8564,9 @@ b(of)d(no)g(static)i(bu\013er)e(to)h(o)m(v)m(er\015o)m(w:)390
4902 y(/*)g(Read)g(a)g(string,)f(and)h(return)f(a)i(pointer)d(to)j(it.)
533 5011 y(Returns)e(NULL)h(on)g(EOF.)f(*/)390 5121 y(char)h(*)390
5230 y(rl_gets)f(\(\))390 5340 y({)p eop end
-%%Page: 26 30
-TeXDict begin 26 29 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(26)485
+%%Page: 27 31
+TeXDict begin 27 30 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(27)485
299 y Fs(/*)48 b(If)f(the)g(buffer)f(has)h(already)f(been)g(allocated,)
629 408 y(return)g(the)h(memory)f(to)h(the)g(free)f(pool.)h(*/)485
518 y(if)h(\(line_read\))581 628 y({)676 737 y(free)f(\(line_read\);)
@@ -8526,7 +8603,7 @@ g(func-)150 3663 y(tion)33 b(called)h Fs(initialize_readline\(\))27
b Ft(whic)m(h)33 b(p)s(erforms)e(this)h(and)h(other)g(desired)f
(initializations,)150 3773 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
-(51\).)150 4023 y Fr(2.2)68 b(Custom)45 b(F)-11 b(unctions)150
+(53\).)150 4023 y Fr(2.2)68 b(Custom)45 b(F)-11 b(unctions)150
4182 y Ft(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 4292 y(to)37 b(an)m(ticipate)i(the)e(needs)f(of)h(all)g
@@ -8549,9 +8626,9 @@ g(v)-5 b(ariable)31 b(that)g(should)f(b)s(e)g(treated)h(as)g(an)g(in)m
(teger,)h Fs(RL_)150 5340 y(READLINE_VERSION)p Ft(,)20
b(whic)m(h)h(ma)m(y)i(b)s(e)f(used)f(to)i(conditionally)h(compile)f
(application)g(co)s(de)f(dep)s(ending)p eop end
-%%Page: 27 31
-TeXDict begin 27 30 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(27)150
+%%Page: 28 32
+TeXDict begin 28 31 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(28)150
299 y(on)35 b(the)g(installed)h(Readline)f(v)m(ersion.)56
b(The)34 b(v)-5 b(alue)35 b(is)h(a)f(hexadecimal)h(enco)s(ding)f(of)g
(the)h(ma)5 b(jor)35 b(and)150 408 y(minor)f(v)m(ersion)g(n)m(um)m(b)s
@@ -8611,2200 +8688,2274 @@ y(of)h(the)f(line)h(read)f(so)h(far.)275 5196 y(The)e(calling)j
(sequence)f(for)f(a)h(command)f Fs(foo)g Ft(lo)s(oks)g(lik)m(e)390
5340 y Fs(int)47 b(foo)g(\(int)f(count,)h(int)f(key\))p
eop end
-%%Page: 28 32
-TeXDict begin 28 31 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(28)150
+%%Page: 29 33
+TeXDict begin 29 32 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(29)150
299 y(where)35 b Fj(coun)m(t)k Ft(is)d(the)g(n)m(umeric)g(argumen)m(t)g
(\(or)g(1)g(if)g(defaulted\))h(and)e Fj(k)m(ey)44 b Ft(is)36
b(the)g(k)m(ey)h(that)f(in)m(v)m(ok)m(ed)150 408 y(this)30
-b(function.)275 551 y(It)23 b(is)g(completely)h(up)e(to)i(the)f
+b(function.)275 541 y(It)23 b(is)g(completely)h(up)e(to)i(the)f
(function)g(as)g(to)h(what)f(should)f(b)s(e)h(done)f(with)h(the)g(n)m
-(umeric)g(argumen)m(t.)150 661 y(Some)40 b(functions)g(use)f(it)i(as)f
+(umeric)g(argumen)m(t.)150 650 y(Some)40 b(functions)g(use)f(it)i(as)f
(a)g(rep)s(eat)h(coun)m(t,)i(some)d(as)h(a)f(\015ag,)j(and)c(others)h
-(to)h(c)m(ho)s(ose)g(alternate)150 770 y(b)s(eha)m(vior)i(\(refreshing)
+(to)h(c)m(ho)s(ose)g(alternate)150 760 y(b)s(eha)m(vior)i(\(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\).)150 880 y(Some)33 b(c)m(ho)s(ose)h(to)g
+(screen,)j(for)c(example\).)150 870 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 989
+(n)m(umeric)g(argumen)m(t)h(as)f(a)h(rep)s(eat)150 979
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 1099 y(A)m(t)i(the)g(v)m(ery)g(least,)h(it)e(should)
+(argumen)m(ts.)150 1089 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 1242 y(A)38 b(command)f(function)h(should)f
+m(e)j(argumen)m(t.)275 1221 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 1351 y(greater)34
+b(,)41 b(and)c(a)h(v)-5 b(alue)150 1331 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 1461 y(Readline)e(bindable)f(command)g(functions.)
-150 1714 y Fr(2.3)68 b(Readline)47 b(V)-11 b(ariables)150
-1873 y Ft(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 2074 y([V)-8
+(the)g(builtin)150 1440 y(Readline)e(bindable)f(command)g(functions.)
+150 1677 y Fr(2.3)68 b(Readline)47 b(V)-11 b(ariables)150
+1836 y Ft(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 2014 y([V)-8
b(ariable])-3598 b Fh(char)54 b(*)e(rl_line_buffer)390
-2183 y Ft(This)30 b(is)i(the)f(line)g(gathered)h(so)f(far.)43
+2123 y Ft(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 2293 y(but)k(see)h(Section)g(2.4.5)h([Allo)m
-(wing)h(Undoing],)f(page)f(37.)57 b(The)35 b(function)g
-Fs(rl_extend_line_)390 2402 y(buffer)29 b Ft(is)h(a)m(v)-5
+(ts)i(of)e(the)g(line,)390 2233 y(but)k(see)h(Section)g(2.4.5)h([Allo)m
+(wing)h(Undoing],)f(page)f(39.)57 b(The)35 b(function)g
+Fs(rl_extend_line_)390 2342 y(buffer)29 b Ft(is)h(a)m(v)-5
b(ailable)33 b(to)e(increase)g(the)g(memory)f(allo)s(cated)i(to)f
-Fs(rl_line_buffer)p Ft(.)3371 2603 y([V)-8 b(ariable])-3598
-b Fh(int)53 b(rl_point)390 2712 y Ft(The)30 b(o\013set)h(of)g(the)f
+Fs(rl_line_buffer)p Ft(.)3371 2520 y([V)-8 b(ariable])-3598
+b Fh(int)53 b(rl_point)390 2630 y Ft(The)30 b(o\013set)h(of)g(the)f
(curren)m(t)h(cursor)e(p)s(osition)i(in)f Fs(rl_line_buffer)c
-Ft(\(the)31 b Fk(p)-5 b(oint)9 b Ft(\).)3371 2913 y([V)-8
-b(ariable])-3598 b Fh(int)53 b(rl_end)390 3022 y Ft(The)27
+Ft(\(the)31 b Fk(p)-5 b(oint)9 b Ft(\).)3371 2808 y([V)-8
+b(ariable])-3598 b Fh(int)53 b(rl_end)390 2917 y Ft(The)27
b(n)m(um)m(b)s(er)g(of)h(c)m(haracters)h(presen)m(t)f(in)g
Fs(rl_line_buffer)p Ft(.)36 b(When)27 b Fs(rl_point)f
-Ft(is)i(at)h(the)f(end)390 3132 y(of)j(the)f(line,)h
+Ft(is)i(at)h(the)f(end)390 3027 y(of)j(the)f(line,)h
Fs(rl_point)d Ft(and)i Fs(rl_end)f Ft(are)h(equal.)3371
-3333 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_mark)390
-3442 y Ft(The)36 b Fj(mark)42 b Ft(\(sa)m(v)m(ed)d(p)s(osition\))e(in)g
+3204 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_mark)390
+3314 y Ft(The)36 b Fj(mark)42 b Ft(\(sa)m(v)m(ed)d(p)s(osition\))e(in)g
(the)g(curren)m(t)f(line.)61 b(If)36 b(set,)k(the)d(mark)f(and)h(p)s
-(oin)m(t)f(de\014ne)h(a)390 3552 y Fk(r)-5 b(e)g(gion)p
-Ft(.)3371 3752 y([V)d(ariable])-3598 b Fh(int)53 b(rl_done)390
-3862 y Ft(Setting)22 b(this)g(to)g(a)g(non-zero)g(v)-5
+(oin)m(t)f(de\014ne)h(a)390 3424 y Fk(r)-5 b(e)g(gion)p
+Ft(.)3371 3601 y([V)d(ariable])-3598 b Fh(int)53 b(rl_done)390
+3711 y Ft(Setting)22 b(this)g(to)g(a)g(non-zero)g(v)-5
b(alue)23 b(causes)f(Readline)g(to)g(return)f(the)h(curren)m(t)f(line)h
-(immediately)-8 b(.)3371 4062 y([V)g(ariable])-3598 b
-Fh(int)53 b(rl_num_chars_to_read)390 4172 y Ft(Setting)34
+(immediately)-8 b(.)390 3820 y(Readline)26 b(will)f(set)h(this)f(v)-5
+b(ariable)26 b(when)e(it)i(has)f(read)g(a)g(k)m(ey)h(sequence)g(b)s
+(ound)d(to)j Fs(accept-line)390 3930 y Ft(and)k(is)g(ab)s(out)g(to)h
+(return)f(the)g(line)h(to)g(the)g(caller.)3371 4108 y([V)-8
+b(ariable])-3598 b Fh(int)53 b(rl_eof_found)390 4217
+y Ft(Readline)28 b(will)g(set)g(this)f(v)-5 b(ariable)28
+b(when)e(it)i(has)f(read)g(an)h(EOF)f(c)m(haracter)i(\(e.g.,)h(the)d
+(stt)m(y)h(`)p Fs(EOF)p Ft(')390 4327 y(c)m(haracter\))42
+b(on)e(an)f(empt)m(y)i(line)f(or)g(encoun)m(tered)g(a)g(read)g(error)f
+(and)h(is)g(ab)s(out)f(to)i(return)e(a)390 4437 y(NULL)30
+b(line)h(to)g(the)g(caller.)3371 4614 y([V)-8 b(ariable])-3598
+b Fh(int)53 b(rl_num_chars_to_read)390 4724 y Ft(Setting)34
b(this)e(to)i(a)f(p)s(ositiv)m(e)h(v)-5 b(alue)34 b(b)s(efore)e
(calling)i Fs(readline\(\))d Ft(causes)i(Readline)g(to)h(return)390
-4281 y(after)i(accepting)h(that)g(man)m(y)e(c)m(haracters,)k(rather)d
+4833 y(after)i(accepting)h(that)g(man)m(y)e(c)m(haracters,)k(rather)d
(than)f(reading)h(up)e(to)j(a)f(c)m(haracter)h(b)s(ound)390
-4391 y(to)31 b Fs(accept-line)p Ft(.)3371 4592 y([V)-8
-b(ariable])-3598 b Fh(int)53 b(rl_pending_input)390 4701
+4943 y(to)31 b Fs(accept-line)p Ft(.)3371 5121 y([V)-8
+b(ariable])-3598 b Fh(int)53 b(rl_pending_input)390 5230
y Ft(Setting)26 b(this)f(to)h(a)f(v)-5 b(alue)26 b(mak)m(es)g(it)g(the)
f(next)g(k)m(eystrok)m(e)i(read.)39 b(This)24 b(is)i(a)f(w)m(a)m(y)h
-(to)g(stu\013)f(a)g(single)390 4811 y(c)m(haracter)32
-b(in)m(to)f(the)g(input)e(stream.)3371 5011 y([V)-8 b(ariable])-3598
-b Fh(int)53 b(rl_dispatching)390 5121 y Ft(Set)24 b(to)h(a)g(non-zero)g
-(v)-5 b(alue)24 b(if)h(a)f(function)g(is)g(b)s(eing)g(called)i(from)d
-(a)i(k)m(ey)g(binding;)g(zero)g(otherwise.)390 5230 y(Application)37
+(to)g(stu\013)f(a)g(single)390 5340 y(c)m(haracter)32
+b(in)m(to)f(the)g(input)e(stream.)p eop end
+%%Page: 30 34
+TeXDict begin 30 33 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(30)3371
+299 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_dispatching)390
+408 y Ft(Set)24 b(to)h(a)g(non-zero)g(v)-5 b(alue)24
+b(if)h(a)f(function)g(is)g(b)s(eing)g(called)i(from)d(a)i(k)m(ey)g
+(binding;)g(zero)g(otherwise.)390 518 y(Application)37
b(functions)e(can)h(test)h(this)e(to)i(disco)m(v)m(er)g(whether)e(they)
-h(w)m(ere)g(called)h(directly)f(or)390 5340 y(b)m(y)30
-b(Readline's)h(dispatc)m(hing)g(mec)m(hanism.)p eop end
-%%Page: 29 33
-TeXDict begin 29 32 bop 150 -116 a Ft(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 Fh(int)53 b(rl_erase_empty_line)390
-408 y Ft(Setting)47 b(this)e(to)i(a)f(non-zero)h(v)-5
+h(w)m(ere)g(called)h(directly)f(or)390 628 y(b)m(y)30
+b(Readline's)h(dispatc)m(hing)g(mec)m(hanism.)3371 835
+y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_erase_empty_line)390
+944 y Ft(Setting)47 b(this)e(to)i(a)f(non-zero)h(v)-5
b(alue)46 b(causes)h(Readline)f(to)h(completely)g(erase)g(the)f(curren)
-m(t)390 518 y(line,)f(including)c(an)m(y)g(prompt,)j(an)m(y)d(time)h(a)
-g(newline)f(is)h(t)m(yp)s(ed)f(as)g(the)h(only)f(c)m(haracter)i(on)390
-628 y(an)36 b(otherwise-empt)m(y)i(line.)58 b(The)36
+m(t)390 1054 y(line,)f(including)c(an)m(y)g(prompt,)j(an)m(y)d(time)h
+(a)g(newline)f(is)h(t)m(yp)s(ed)f(as)g(the)h(only)f(c)m(haracter)i(on)
+390 1163 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 737 y(line.)3371 913 y([V)-8 b(ariable])-3598
-b Fh(char)54 b(*)e(rl_prompt)390 1022 y Ft(The)26 b(prompt)f(Readline)i
+(newly-blank)390 1273 y(line.)3371 1480 y([V)-8 b(ariable])-3598
+b Fh(char)54 b(*)e(rl_prompt)390 1590 y Ft(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
-Fs(readline\(\))p Ft(,)d(and)i(should)390 1132 y(not)h(b)s(e)f
+Fs(readline\(\))p Ft(,)d(and)i(should)390 1699 y(not)h(b)s(e)f
(assigned)h(to)h(directly)-8 b(.)41 b(The)26 b Fs(rl_set_prompt\(\))d
-Ft(function)j(\(see)i(Section)g(2.4.6)h([Redis-)390 1241
-y(pla)m(y],)i(page)h(38\))f(ma)m(y)g(b)s(e)f(used)f(to)j(mo)s(dify)d
+Ft(function)j(\(see)i(Section)g(2.4.6)h([Redis-)390 1809
+y(pla)m(y],)i(page)h(40\))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 Fs(readline\(\))p
-Ft(.)3371 1417 y([V)-8 b(ariable])-3598 b Fh(char)54
-b(*)e(rl_display_prompt)390 1526 y Ft(The)31 b(string)h(displa)m(y)m
+Ft(.)3371 2016 y([V)-8 b(ariable])-3598 b Fh(char)54
+b(*)e(rl_display_prompt)390 2125 y Ft(The)31 b(string)h(displa)m(y)m
(ed)g(as)g(the)g(prompt.)44 b(This)31 b(is)h(usually)f(iden)m(tical)j
-(to)e Fj(rl)p 3031 1526 28 4 v 40 w(prompt)p Ft(,)f(but)g(ma)m(y)390
-1636 y(b)s(e)j(c)m(hanged)g(temp)s(orarily)h(b)m(y)f(functions)g(that)g
+(to)e Fj(rl)p 3031 2125 28 4 v 40 w(prompt)p Ft(,)f(but)g(ma)m(y)390
+2235 y(b)s(e)j(c)m(hanged)g(temp)s(orarily)h(b)m(y)f(functions)g(that)g
(use)g(the)h(prompt)e(string)h(as)h(a)f(message)i(area,)390
-1745 y(suc)m(h)30 b(as)h(incremen)m(tal)g(searc)m(h.)3371
-1921 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_already_prompted)390
-2030 y Ft(If)36 b(an)g(application)i(wishes)d(to)i(displa)m(y)g(the)f
+2345 y(suc)m(h)30 b(as)h(incremen)m(tal)g(searc)m(h.)3371
+2552 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_already_prompted)390
+2661 y Ft(If)36 b(an)g(application)i(wishes)d(to)i(displa)m(y)g(the)f
(prompt)g(itself,)i(rather)f(than)f(ha)m(v)m(e)h(Readline)g(do)390
-2140 y(it)c(the)g(\014rst)f(time)i Fs(readline\(\))c
+2771 y(it)c(the)g(\014rst)f(time)i Fs(readline\(\))c
Ft(is)i(called,)j(it)e(should)f(set)h(this)g(v)-5 b(ariable)34
-b(to)f(a)g(non-zero)g(v)-5 b(alue)390 2250 y(after)38
+b(to)f(a)g(non-zero)g(v)-5 b(alue)390 2880 y(after)38
b(displa)m(ying)h(the)f(prompt.)63 b(The)37 b(prompt)g(m)m(ust)h(also)h
-(b)s(e)e(passed)g(as)i(the)f(argumen)m(t)g(to)390 2359
+(b)s(e)e(passed)g(as)i(the)f(argumen)m(t)g(to)390 2990
y Fs(readline\(\))30 b Ft(so)j(the)h(redispla)m(y)f(functions)f(can)i
(up)s(date)e(the)h(displa)m(y)g(prop)s(erly)-8 b(.)48
-b(The)32 b(calling)390 2469 y(application)g(is)e(resp)s(onsible)g(for)g
+b(The)32 b(calling)390 3099 y(application)g(is)e(resp)s(onsible)g(for)g
(managing)h(the)f(v)-5 b(alue;)31 b(Readline)g(nev)m(er)g(sets)g(it.)
-3371 2644 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_library_version)390 2754 y Ft(The)30 b(v)m(ersion)h(n)m(um)m(b)s
+3371 3306 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_library_version)390 3416 y Ft(The)30 b(v)m(ersion)h(n)m(um)m(b)s
(er)e(of)h(this)h(revision)f(of)h(the)f(library)-8 b(.)3371
-2929 y([V)g(ariable])-3598 b Fh(int)53 b(rl_readline_version)390
-3039 y Ft(An)34 b(in)m(teger)h(enco)s(ding)f(the)g(curren)m(t)g(v)m
+3623 y([V)g(ariable])-3598 b Fh(int)53 b(rl_readline_version)390
+3733 y Ft(An)34 b(in)m(teger)h(enco)s(ding)f(the)g(curren)m(t)g(v)m
(ersion)h(of)f(the)g(library)-8 b(.)52 b(The)34 b(enco)s(ding)g(is)g
-(of)g(the)g(form)390 3148 y(0x)p Fj(MMmm)p Ft(,)39 b(where)d
+(of)g(the)g(form)390 3842 y(0x)p Fj(MMmm)p Ft(,)39 b(where)d
Fj(MM)47 b Ft(is)36 b(the)h(t)m(w)m(o-digit)i(ma)5 b(jor)36
b(v)m(ersion)h(n)m(um)m(b)s(er,)g(and)f Fj(mm)g Ft(is)h(the)f(t)m(w)m
-(o-)390 3258 y(digit)i(minor)f(v)m(ersion)h(n)m(um)m(b)s(er.)60
+(o-)390 3952 y(digit)i(minor)f(v)m(ersion)h(n)m(um)m(b)s(er.)60
b(F)-8 b(or)38 b(example,)i(for)d(Readline-4.2,)k Fs
-(rl_readline_version)390 3367 y Ft(w)m(ould)30 b(ha)m(v)m(e)i(the)e(v)
--5 b(alue)31 b(0x0402.)3371 3543 y([V)-8 b(ariable])-3598
-b Fh(int)53 b(rl_gnu_readline_p)390 3652 y Ft(Alw)m(a)m(ys)32
+(rl_readline_version)390 4061 y Ft(w)m(ould)30 b(ha)m(v)m(e)i(the)e(v)
+-5 b(alue)31 b(0x0402.)3371 4268 y([V)-8 b(ariable])-3598
+b Fh(int)53 b(rl_gnu_readline_p)390 4378 y Ft(Alw)m(a)m(ys)32
b(set)f(to)g(1,)g(denoting)f(that)h(this)g(is)f Fm(gnu)g
Ft(readline)h(rather)f(than)g(some)h(em)m(ulation.)3371
-3828 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_terminal_name)390 3937 y Ft(The)28 b(terminal)g(t)m(yp)s(e,)h(used)
+4585 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_terminal_name)390 4695 y Ft(The)28 b(terminal)g(t)m(yp)s(e,)h(used)
e(for)h(initialization.)43 b(If)28 b(not)g(set)h(b)m(y)e(the)i
-(application,)h(Readline)f(sets)390 4047 y(this)h(to)h(the)g(v)-5
+(application,)h(Readline)f(sets)390 4804 y(this)h(to)h(the)g(v)-5
b(alue)31 b(of)f(the)h Fs(TERM)e Ft(en)m(vironmen)m(t)i(v)-5
b(ariable)31 b(the)g(\014rst)e(time)j(it)e(is)h(called.)3371
-4222 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_readline_name)390 4332 y Ft(This)30 b(v)-5 b(ariable)32
+5011 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_readline_name)390 5121 y Ft(This)30 b(v)-5 b(ariable)32
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 4441
+(using)f(Readline.)44 b(The)30 b(v)-5 b(alue)390 5230
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
-4551 y(structs],)j(page)g(12\).)3371 4726 y([V)-8 b(ariable])-3598
-b Fh(FILE)54 b(*)e(rl_instream)390 4836 y Ft(The)40 b(stdio)i(stream)f
-(from)g(whic)m(h)f(Readline)i(reads)f(input.)71 b(If)41
-b Fs(NULL)p Ft(,)i(Readline)e(defaults)g(to)390 4945
-y Fj(stdin)p Ft(.)3371 5121 y([V)-8 b(ariable])-3598
-b Fh(FILE)54 b(*)e(rl_outstream)390 5230 y Ft(The)34
-b(stdio)h(stream)f(to)i(whic)m(h)e(Readline)h(p)s(erforms)e(output.)52
+5340 y(structs],)j(page)g(13\).)p eop end
+%%Page: 31 35
+TeXDict begin 31 34 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(31)3371
+299 y([V)-8 b(ariable])-3598 b Fh(FILE)54 b(*)e(rl_instream)390
+408 y Ft(The)40 b(stdio)i(stream)f(from)g(whic)m(h)f(Readline)i(reads)f
+(input.)71 b(If)41 b Fs(NULL)p Ft(,)i(Readline)e(defaults)g(to)390
+518 y Fj(stdin)p Ft(.)3371 704 y([V)-8 b(ariable])-3598
+b Fh(FILE)54 b(*)e(rl_outstream)390 814 y Ft(The)34 b(stdio)h(stream)f
+(to)i(whic)m(h)e(Readline)h(p)s(erforms)e(output.)52
b(If)34 b Fs(NULL)p Ft(,)h(Readline)g(defaults)f(to)390
-5340 y Fj(stdout)p Ft(.)p eop end
-%%Page: 30 34
-TeXDict begin 30 33 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(30)3371
-299 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_prefer_env_winsize)390
-408 y Ft(If)28 b(non-zero,)h(Readline)g(giv)m(es)h(v)-5
-b(alues)29 b(found)e(in)h(the)g Fs(LINES)f Ft(and)h Fs(COLUMNS)e
-Ft(en)m(vironmen)m(t)j(v)-5 b(ari-)390 518 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 628 y(screen)30
-b(dimensions.)3371 847 y([V)-8 b(ariable])-3598 b Fh(rl_command_func_t)
-57 b(*)c(rl_last_func)390 956 y Ft(The)34 b(address)g(of)h(the)g(last)h
-(command)e(function)g(Readline)i(executed.)55 b(Ma)m(y)35
-b(b)s(e)g(used)f(to)h(test)390 1066 y(whether)30 b(or)g(not)h(a)f
-(function)h(is)f(b)s(eing)g(executed)h(t)m(wice)h(in)e(succession,)h
-(for)f(example.)3371 1285 y([V)-8 b(ariable])-3598 b
-Fh(rl_hook_func_t)57 b(*)52 b(rl_startup_hook)390 1395
-y Ft(If)34 b(non-zero,)i(this)e(is)h(the)f(address)f(of)i(a)g(function)
-f(to)h(call)g(just)f(b)s(efore)g Fs(readline)e Ft(prin)m(ts)i(the)390
-1504 y(\014rst)c(prompt.)3371 1724 y([V)-8 b(ariable])-3598
-b Fh(rl_hook_func_t)57 b(*)52 b(rl_pre_input_hook)390
-1833 y Ft(If)35 b(non-zero,)j(this)d(is)g(the)h(address)f(of)g(a)h
-(function)f(to)i(call)f(after)g(the)g(\014rst)f(prompt)f(has)i(b)s(een)
-390 1943 y(prin)m(ted)30 b(and)g(just)f(b)s(efore)h Fs(readline)f
-Ft(starts)h(reading)h(input)e(c)m(haracters.)3371 2162
+924 y Fj(stdout)p Ft(.)3371 1110 y([V)-8 b(ariable])-3598
+b Fh(int)53 b(rl_prefer_env_winsize)390 1219 y Ft(If)28
+b(non-zero,)h(Readline)g(giv)m(es)h(v)-5 b(alues)29 b(found)e(in)h(the)
+g Fs(LINES)f Ft(and)h Fs(COLUMNS)e Ft(en)m(vironmen)m(t)j(v)-5
+b(ari-)390 1329 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 1439 y(screen)30 b(dimensions.)3371 1625 y([V)-8
+b(ariable])-3598 b Fh(rl_command_func_t)57 b(*)c(rl_last_func)390
+1734 y Ft(The)34 b(address)g(of)h(the)g(last)h(command)e(function)g
+(Readline)i(executed.)55 b(Ma)m(y)35 b(b)s(e)g(used)f(to)h(test)390
+1844 y(whether)30 b(or)g(not)h(a)f(function)h(is)f(b)s(eing)g(executed)
+h(t)m(wice)h(in)e(succession,)h(for)f(example.)3371 2030
y([V)-8 b(ariable])-3598 b Fh(rl_hook_func_t)57 b(*)52
-b(rl_event_hook)390 2271 y Ft(If)40 b(non-zero,)k(this)d(is)f(the)h
-(address)f(of)h(a)g(function)f(to)h(call)h(p)s(erio)s(dically)f(when)f
-(Readline)h(is)390 2381 y(w)m(aiting)30 b(for)f(terminal)h(input.)39
-b(By)30 b(default,)g(this)f(will)g(b)s(e)g(called)h(at)g(most)f(ten)h
-(times)f(a)h(second)390 2491 y(if)g(there)h(is)f(no)h(k)m(eyb)s(oard)f
-(input.)3371 2710 y([V)-8 b(ariable])-3598 b Fh(rl_getc_func_t)57
-b(*)52 b(rl_getc_function)390 2819 y Ft(If)30 b(non-zero,)h(Readline)g
+b(rl_startup_hook)390 2140 y Ft(If)34 b(non-zero,)i(this)e(is)h(the)f
+(address)f(of)i(a)g(function)f(to)h(call)g(just)f(b)s(efore)g
+Fs(readline)e Ft(prin)m(ts)i(the)390 2250 y(\014rst)c(prompt.)3371
+2436 y([V)-8 b(ariable])-3598 b Fh(rl_hook_func_t)57
+b(*)52 b(rl_pre_input_hook)390 2545 y Ft(If)35 b(non-zero,)j(this)d(is)
+g(the)h(address)f(of)g(a)h(function)f(to)i(call)f(after)g(the)g
+(\014rst)f(prompt)f(has)i(b)s(een)390 2655 y(prin)m(ted)30
+b(and)g(just)f(b)s(efore)h Fs(readline)f Ft(starts)h(reading)h(input)e
+(c)m(haracters.)3371 2841 y([V)-8 b(ariable])-3598 b
+Fh(rl_hook_func_t)57 b(*)52 b(rl_event_hook)390 2951
+y Ft(If)40 b(non-zero,)k(this)d(is)f(the)h(address)f(of)h(a)g(function)
+f(to)h(call)h(p)s(erio)s(dically)f(when)f(Readline)h(is)390
+3061 y(w)m(aiting)30 b(for)f(terminal)h(input.)39 b(By)30
+b(default,)g(this)f(will)g(b)s(e)g(called)h(at)g(most)f(ten)h(times)f
+(a)h(second)390 3170 y(if)g(there)h(is)f(no)h(k)m(eyb)s(oard)f(input.)
+3371 3356 y([V)-8 b(ariable])-3598 b Fh(rl_getc_func_t)57
+b(*)52 b(rl_getc_function)390 3466 y Ft(If)30 b(non-zero,)h(Readline)g
(will)g(call)h(indirectly)e(through)g(this)h(p)s(oin)m(ter)f(to)h(get)h
-(a)e(c)m(haracter)i(from)390 2929 y(the)21 b(input)g(stream.)38
+(a)e(c)m(haracter)i(from)390 3576 y(the)21 b(input)g(stream.)38
b(By)21 b(default,)j(it)e(is)f(set)h(to)g Fs(rl_getc)p
Ft(,)f(the)h(default)f(Readline)h(c)m(haracter)h(input)390
-3039 y(function)f(\(see)i(Section)g(2.4.8)g([Character)g(Input],)f
-(page)h(40\).)39 b(In)22 b(general,)k(an)c(application)i(that)390
-3148 y(sets)31 b Fj(rl)p 635 3148 28 4 v 40 w(getc)p
-835 3148 V 41 w(function)f Ft(should)g(consider)g(setting)h
-Fj(rl)p 2234 3148 V 40 w(input)p 2487 3148 V 39 w(a)m(v)-5
-b(ailable)p 2867 3148 V 43 w(ho)s(ok)36 b Ft(as)30 b(w)m(ell.)3371
-3367 y([V)-8 b(ariable])-3598 b Fh(rl_hook_func_t)57
-b(*)52 b(rl_signal_event_hook)390 3477 y Ft(If)27 b(non-zero,)h(this)f
+3685 y(function)f(\(see)i(Section)g(2.4.8)g([Character)g(Input],)f
+(page)h(42\).)39 b(In)22 b(general,)k(an)c(application)i(that)390
+3795 y(sets)31 b Fj(rl)p 635 3795 28 4 v 40 w(getc)p
+835 3795 V 41 w(function)f Ft(should)g(consider)g(setting)h
+Fj(rl)p 2234 3795 V 40 w(input)p 2487 3795 V 39 w(a)m(v)-5
+b(ailable)p 2867 3795 V 43 w(ho)s(ok)36 b Ft(as)30 b(w)m(ell.)3371
+3981 y([V)-8 b(ariable])-3598 b Fh(rl_hook_func_t)57
+b(*)52 b(rl_signal_event_hook)390 4091 y Ft(If)27 b(non-zero,)h(this)f
(is)g(the)g(address)f(of)i(a)f(function)g(to)g(call)i(if)e(a)g(read)g
-(system)g(call)h(is)g(in)m(terrupted)390 3587 y(when)h(Readline)i(is)g
-(reading)f(terminal)h(input.)3371 3806 y([V)-8 b(ariable])-3598
+(system)g(call)h(is)g(in)m(terrupted)390 4200 y(when)h(Readline)i(is)g
+(reading)f(terminal)h(input.)3371 4387 y([V)-8 b(ariable])-3598
+b Fh(rl_hook_func_t)57 b(*)52 b(rl_timeout_event_hook)390
+4496 y Ft(If)25 b(non-zero,)i(this)e(is)g(the)h(address)e(of)h(a)h
+(function)f(to)h(call)g(if)g(Readline)f(times)h(out)g(while)f(reading)
+390 4606 y(input.)3371 4792 y([V)-8 b(ariable])-3598
b Fh(rl_hook_func_t)57 b(*)52 b(rl_input_available_ho)q(ok)390
-3915 y Ft(If)28 b(non-zero,)j(Readline)e(will)g(use)g(this)g
+4902 y Ft(If)28 b(non-zero,)j(Readline)e(will)g(use)g(this)g
(function's)g(return)f(v)-5 b(alue)29 b(when)f(it)i(needs)e(to)i
-(determine)390 4025 y(whether)42 b(or)g(not)h(there)f(is)h(a)m(v)-5
+(determine)390 5011 y(whether)42 b(or)g(not)h(there)f(is)h(a)m(v)-5
b(ailable)45 b(input)c(on)i(the)f(curren)m(t)g(input)g(source.)77
-b(The)42 b(default)390 4134 y(ho)s(ok)25 b(c)m(hec)m(ks)i
+b(The)42 b(default)390 5121 y(ho)s(ok)25 b(c)m(hec)m(ks)i
Fs(rl_instream)p Ft(;)d(if)i(an)f(application)i(is)e(using)g(a)h
-(di\013eren)m(t)g(input)e(source,)j(it)f(should)390 4244
+(di\013eren)m(t)g(input)e(source,)j(it)f(should)390 5230
y(set)34 b(the)f(ho)s(ok)h(appropriately)-8 b(.)50 b(Readline)34
b(queries)f(for)h(a)m(v)-5 b(ailable)35 b(input)e(when)f(implemen)m
-(ting)390 4354 y(in)m(tra-k)m(ey-sequence)f(timeouts)e(during)e(input)g
-(and)h(incremen)m(tal)h(searc)m(hes.)41 b(This)27 b(ma)m(y)i(use)f(an)
-390 4463 y(application-sp)s(eci\014c)22 b(timeout)g(b)s(efore)f
-(returning)f(a)h(v)-5 b(alue;)25 b(Readline)c(uses)f(the)i(v)-5
-b(alue)21 b(passed)f(to)390 4573 y Fs(rl_set_keyboard_input_ti)o(meou)o
-(t\(\))e Ft(or)24 b(the)g(v)-5 b(alue)25 b(of)g(the)f(user-settable)i
-Fj(k)m(eyseq-timeout)390 4682 y Ft(v)-5 b(ariable.)48
+(ting)390 5340 y(in)m(tra-k)m(ey-sequence)f(timeouts)e(during)e(input)g
+(and)h(incremen)m(tal)h(searc)m(hes.)41 b(This)27 b(ma)m(y)i(use)f(an)p
+eop end
+%%Page: 32 36
+TeXDict begin 32 35 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(32)390
+299 y(application-sp)s(eci\014c)22 b(timeout)g(b)s(efore)f(returning)f
+(a)h(v)-5 b(alue;)25 b(Readline)c(uses)f(the)i(v)-5 b(alue)21
+b(passed)f(to)390 408 y Fs(rl_set_keyboard_input_ti)o(meou)o(t\(\))e
+Ft(or)24 b(the)g(v)-5 b(alue)25 b(of)g(the)f(user-settable)i
+Fj(k)m(eyseq-timeout)390 518 y Ft(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 4792 y(\(see)d(Section)f
-(2.4.12)i([Alternate)f(In)m(terface],)h(page)e(44\),)i(whic)m(h)d(ma)m
-(y)h(not)g(use)g(the)g(traditional)390 4902 y Fs(read\(2\))39
+(Readline's)h(callbac)m(k)h(in)m(terface)390 628 y(\(see)d(Section)f
+(2.4.12)i([Alternate)f(In)m(terface],)h(page)e(46\),)i(whic)m(h)d(ma)m
+(y)h(not)g(use)g(the)g(traditional)390 737 y Fs(read\(2\))39
b Ft(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
-5011 y(mec)m(hanism.)k(If)31 b(an)g(application)i(uses)e(an)h(input)e
+847 y(mec)m(hanism.)k(If)31 b(an)g(application)i(uses)e(an)h(input)e
(mec)m(hanism)i(or)g(ho)s(ok)f(that)h(can)g(p)s(oten)m(tially)390
-5121 y(exceed)38 b(the)e(v)-5 b(alue)37 b(of)g Fj(k)m(eyseq-timeout)p
+956 y(exceed)38 b(the)e(v)-5 b(alue)37 b(of)g Fj(k)m(eyseq-timeout)p
Ft(,)k(it)c(should)e(increase)j(the)e(timeout)i(or)f(set)g(this)f(ho)s
-(ok)390 5230 y(appropriately)d(ev)m(en)g(when)e(not)h(using)g(the)h
+(ok)390 1066 y(appropriately)d(ev)m(en)g(when)e(not)h(using)g(the)h
(callbac)m(k)h(in)m(terface.)48 b(In)31 b(general,)j(an)f(application)
-390 5340 y(that)e(sets)g Fj(rl)p 832 5340 V 40 w(getc)p
-1032 5340 V 41 w(function)f Ft(should)g(consider)g(setting)h
-Fj(rl)p 2431 5340 V 40 w(input)p 2684 5340 V 39 w(a)m(v)-5
-b(ailable)p 3064 5340 V 43 w(ho)s(ok)36 b Ft(as)30 b(w)m(ell.)p
-eop end
-%%Page: 31 35
-TeXDict begin 31 34 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(31)3371
-299 y([V)-8 b(ariable])-3598 b Fh(rl_voidfunc_t)56 b(*)d
-(rl_redisplay_function)390 408 y Ft(If)36 b(non-zero,)i(Readline)e
+390 1176 y(that)e(sets)g Fj(rl)p 832 1176 28 4 v 40 w(getc)p
+1032 1176 V 41 w(function)f Ft(should)g(consider)g(setting)h
+Fj(rl)p 2431 1176 V 40 w(input)p 2684 1176 V 39 w(a)m(v)-5
+b(ailable)p 3064 1176 V 43 w(ho)s(ok)36 b Ft(as)30 b(w)m(ell.)3371
+1362 y([V)-8 b(ariable])-3598 b Fh(rl_voidfunc_t)56 b(*)d
+(rl_redisplay_function)390 1471 y Ft(If)36 b(non-zero,)i(Readline)e
(will)h(call)g(indirectly)f(through)g(this)g(p)s(oin)m(ter)g(to)g(up)s
-(date)g(the)g(displa)m(y)390 518 y(with)27 b(the)g(curren)m(t)g(con)m
+(date)g(the)g(displa)m(y)390 1581 y(with)27 b(the)g(curren)m(t)g(con)m
(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 Fs(rl_redisplay)p Ft(,)390
-628 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(38\).)3371
-817 y([V)-8 b(ariable])-3598 b Fh(rl_vintfunc_t)56 b(*)d
-(rl_prep_term_function)390 927 y Ft(If)24 b(non-zero,)i(Readline)e
+1691 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(40\).)3371
+1877 y([V)-8 b(ariable])-3598 b Fh(rl_vintfunc_t)56 b(*)d
+(rl_prep_term_function)390 1987 y Ft(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
-(initialize)h(the)e(terminal.)390 1036 y(The)37 b(function)f(tak)m(es)j
+(initialize)h(the)e(terminal.)390 2096 y(The)37 b(function)f(tak)m(es)j
(a)e(single)h(argumen)m(t,)i(an)d Fs(int)f Ft(\015ag)h(that)h(sa)m(ys)g
-(whether)e(or)h(not)g(to)h(use)390 1146 y(eigh)m(t-bit)e(c)m
+(whether)e(or)h(not)g(to)h(use)390 2206 y(eigh)m(t-bit)e(c)m
(haracters.)53 b(By)35 b(default,)g(this)f(is)g(set)h(to)g
Fs(rl_prep_terminal)29 b Ft(\(see)35 b(Section)g(2.4.9)390
-1255 y([T)-8 b(erminal)31 b(Managemen)m(t],)i(page)e(41\).)3371
-1445 y([V)-8 b(ariable])-3598 b Fh(rl_voidfunc_t)56 b(*)d
-(rl_deprep_term_functio)q(n)390 1554 y Ft(If)36 b(non-zero,)j(Readline)
+2315 y([T)-8 b(erminal)31 b(Managemen)m(t],)i(page)e(43\).)3371
+2502 y([V)-8 b(ariable])-3598 b Fh(rl_voidfunc_t)56 b(*)d
+(rl_deprep_term_functio)q(n)390 2611 y Ft(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 1664 y(This)d(function)h(should)f(undo)g
+(reset)g(the)g(terminal.)390 2721 y(This)d(function)h(should)f(undo)g
(the)h(e\013ects)h(of)f Fs(rl_prep_term_function)p Ft(.)49
-b(By)35 b(default,)i(this)390 1774 y(is)30 b(set)h(to)g
+b(By)35 b(default,)i(this)390 2830 y(is)30 b(set)h(to)g
Fs(rl_deprep_terminal)26 b Ft(\(see)31 b(Section)g(2.4.9)i([T)-8
-b(erminal)30 b(Managemen)m(t],)j(page)e(41\).)3371 1963
+b(erminal)30 b(Managemen)m(t],)j(page)e(43\).)3371 3017
y([V)-8 b(ariable])-3598 b Fh(Keymap)54 b(rl_executing_keymap)390
-2073 y Ft(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(34\))i(in)d
-(whic)m(h)390 2182 y(the)c(curren)m(tly)f(executing)i(readline)e
-(function)g(w)m(as)h(found.)3371 2372 y([V)-8 b(ariable])-3598
-b Fh(Keymap)54 b(rl_binding_keymap)390 2481 y Ft(This)35
+3126 y Ft(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(35\))i(in)d
+(whic)m(h)390 3236 y(the)c(curren)m(tly)f(executing)i(readline)e
+(function)g(w)m(as)h(found.)3371 3422 y([V)-8 b(ariable])-3598
+b Fh(Keymap)54 b(rl_binding_keymap)390 3532 y Ft(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(34\))i(in)d(whic)m(h)390
-2591 y(the)c(last)g(k)m(ey)g(binding)e(o)s(ccurred.)3371
-2780 y([V)-8 b(ariable])-3598 b Fh(char)54 b(*)e(rl_executing_macro)390
-2890 y Ft(This)30 b(v)-5 b(ariable)31 b(is)f(set)h(to)g(the)g(text)g
-(of)g(an)m(y)f(curren)m(tly-executing)i(macro.)3371 3079
+(Section)f(2.4.2)i([Keymaps],)g(page)e(35\))i(in)d(whic)m(h)390
+3641 y(the)c(last)g(k)m(ey)g(binding)e(o)s(ccurred.)3371
+3828 y([V)-8 b(ariable])-3598 b Fh(char)54 b(*)e(rl_executing_macro)390
+3937 y Ft(This)30 b(v)-5 b(ariable)31 b(is)f(set)h(to)g(the)g(text)g
+(of)g(an)m(y)f(curren)m(tly-executing)i(macro.)3371 4124
y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_executing_key)390
-3189 y Ft(The)30 b(k)m(ey)h(that)g(caused)f(the)h(dispatc)m(h)g(to)g
+4233 y Ft(The)30 b(k)m(ey)h(that)g(caused)f(the)h(dispatc)m(h)g(to)g
(the)f(curren)m(tly-executing)i(Readline)f(function.)3371
-3378 y([V)-8 b(ariable])-3598 b Fh(char)54 b(*)e(rl_executing_keyseq)
-390 3488 y Ft(The)35 b(full)g(k)m(ey)h(sequence)g(that)g(caused)g(the)g
+4419 y([V)-8 b(ariable])-3598 b Fh(char)54 b(*)e(rl_executing_keyseq)
+390 4529 y Ft(The)35 b(full)g(k)m(ey)h(sequence)g(that)g(caused)g(the)g
(dispatc)m(h)f(to)i(the)e(curren)m(tly-executing)i(Readline)390
-3597 y(function.)3371 3787 y([V)-8 b(ariable])-3598 b
-Fh(int)53 b(rl_key_sequence_lengt)q(h)390 3896 y Ft(The)30
+4639 y(function.)3371 4825 y([V)-8 b(ariable])-3598 b
+Fh(int)53 b(rl_key_sequence_lengt)q(h)390 4934 y Ft(The)30
b(n)m(um)m(b)s(er)f(of)h(c)m(haracters)i(in)e Fj(rl)p
-1617 3896 28 4 v 40 w(executing)p 2032 3896 V 41 w(k)m(eyseq)p
-Ft(.)3371 4086 y([V)-8 b(ariable])-3598 b Fh(int)53 b
-(rl_readline_state)390 4195 y Ft(A)35 b(v)-5 b(ariable)35
+1617 4934 V 40 w(executing)p 2032 4934 V 41 w(k)m(eyseq)p
+Ft(.)3371 5121 y([V)-8 b(ariable])-3598 b Fh(int)53 b
+(rl_readline_state)390 5230 y Ft(A)35 b(v)-5 b(ariable)35
b(with)f(bit)g(v)-5 b(alues)35 b(that)g(encapsulate)h(the)e(curren)m(t)
-h(Readline)g(state.)54 b(A)34 b(bit)h(is)f(set)390 4305
+h(Readline)g(state.)54 b(A)34 b(bit)h(is)f(set)390 5340
y(with)k(the)g Fs(RL_SETSTATE)c Ft(macro,)41 b(and)c(unset)h(with)f
-(the)h Fs(RL_UNSETSTATE)d Ft(macro.)63 b(Use)39 b(the)390
-4414 y Fs(RL_ISSTATE)34 b Ft(macro)k(to)g(test)g(whether)f(a)h
+(the)h Fs(RL_UNSETSTATE)d Ft(macro.)63 b(Use)39 b(the)p
+eop end
+%%Page: 33 37
+TeXDict begin 33 36 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(33)390
+299 y Fs(RL_ISSTATE)34 b Ft(macro)k(to)g(test)g(whether)f(a)h
(particular)f(state)i(bit)e(is)g(set.)62 b(Curren)m(t)36
-b(state)j(bits)390 4524 y(include:)390 4687 y Fs(RL_STATE_NONE)870
-4797 y Ft(Readline)31 b(has)f(not)h(y)m(et)g(b)s(een)f(called,)i(nor)e
-(has)g(it)h(b)s(egun)e(to)i(initialize.)390 4959 y Fs
-(RL_STATE_INITIALIZING)870 5068 y Ft(Readline)g(is)f(initializing)j
-(its)e(in)m(ternal)g(data)g(structures.)390 5230 y Fs
-(RL_STATE_INITIALIZED)870 5340 y Ft(Readline)g(has)f(completed)h(its)g
-(initialization.)p eop end
-%%Page: 32 36
-TeXDict begin 32 35 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(32)390
-299 y Fs(RL_STATE_TERMPREPPED)870 408 y Ft(Readline)29
-b(has)g(mo)s(di\014ed)e(the)i(terminal)g(mo)s(des)f(to)i(do)e(its)i(o)m
-(wn)e(input)g(and)g(redis-)870 518 y(pla)m(y)-8 b(.)390
-679 y Fs(RL_STATE_READCMD)870 789 y Ft(Readline)31 b(is)f(reading)h(a)g
-(command)f(from)g(the)g(k)m(eyb)s(oard.)390 950 y Fs(RL_STATE_METANEXT)
-870 1060 y Ft(Readline)h(is)f(reading)h(more)f(input)g(after)h(reading)
-f(the)h(meta-pre\014x)f(c)m(haracter.)390 1221 y Fs
-(RL_STATE_DISPATCHING)870 1330 y Ft(Readline)h(is)f(dispatc)m(hing)h
-(to)g(a)g(command.)390 1491 y Fs(RL_STATE_MOREINPUT)870
-1601 y Ft(Readline)g(is)f(reading)h(more)f(input)g(while)g(executing)i
-(an)e(editing)h(command.)390 1762 y Fs(RL_STATE_ISEARCH)870
-1872 y Ft(Readline)g(is)f(p)s(erforming)g(an)g(incremen)m(tal)i
-(history)e(searc)m(h.)390 2033 y Fs(RL_STATE_NSEARCH)870
-2143 y Ft(Readline)h(is)f(p)s(erforming)g(a)g(non-incremen)m(tal)i
-(history)e(searc)m(h.)390 2304 y Fs(RL_STATE_SEARCH)870
-2413 y Ft(Readline)21 b(is)f(searc)m(hing)i(bac)m(kw)m(ard)e(or)h(forw)
+b(state)j(bits)390 408 y(include:)390 561 y Fs(RL_STATE_NONE)870
+670 y Ft(Readline)31 b(has)f(not)h(y)m(et)g(b)s(een)f(called,)i(nor)e
+(has)g(it)h(b)s(egun)e(to)i(initialize.)390 822 y Fs
+(RL_STATE_INITIALIZING)870 932 y Ft(Readline)g(is)f(initializing)j(its)
+e(in)m(ternal)g(data)g(structures.)390 1084 y Fs(RL_STATE_INITIALIZED)
+870 1194 y Ft(Readline)g(has)f(completed)h(its)g(initialization.)390
+1346 y Fs(RL_STATE_TERMPREPPED)870 1456 y Ft(Readline)e(has)g(mo)s
+(di\014ed)e(the)i(terminal)g(mo)s(des)f(to)i(do)e(its)i(o)m(wn)e(input)
+g(and)g(redis-)870 1565 y(pla)m(y)-8 b(.)390 1717 y Fs
+(RL_STATE_READCMD)870 1827 y Ft(Readline)31 b(is)f(reading)h(a)g
+(command)f(from)g(the)g(k)m(eyb)s(oard.)390 1979 y Fs
+(RL_STATE_METANEXT)870 2089 y Ft(Readline)h(is)f(reading)h(more)f
+(input)g(after)h(reading)f(the)h(meta-pre\014x)f(c)m(haracter.)390
+2241 y Fs(RL_STATE_DISPATCHING)870 2351 y Ft(Readline)h(is)f(dispatc)m
+(hing)h(to)g(a)g(command.)390 2503 y Fs(RL_STATE_MOREINPUT)870
+2612 y Ft(Readline)g(is)f(reading)h(more)f(input)g(while)g(executing)i
+(an)e(editing)h(command.)390 2765 y Fs(RL_STATE_ISEARCH)870
+2874 y Ft(Readline)g(is)f(p)s(erforming)g(an)g(incremen)m(tal)i
+(history)e(searc)m(h.)390 3026 y Fs(RL_STATE_NSEARCH)870
+3136 y Ft(Readline)h(is)f(p)s(erforming)g(a)g(non-incremen)m(tal)i
+(history)e(searc)m(h.)390 3288 y Fs(RL_STATE_SEARCH)870
+3398 y Ft(Readline)21 b(is)f(searc)m(hing)i(bac)m(kw)m(ard)e(or)h(forw)
m(ard)e(through)h(the)h(history)f(for)g(a)h(string.)390
-2574 y Fs(RL_STATE_NUMERICARG)870 2684 y Ft(Readline)31
-b(is)f(reading)h(a)g(n)m(umeric)f(argumen)m(t.)390 2845
-y Fs(RL_STATE_MACROINPUT)870 2955 y Ft(Readline)25 b(is)f(curren)m(tly)
+3550 y Fs(RL_STATE_NUMERICARG)870 3660 y Ft(Readline)31
+b(is)f(reading)h(a)g(n)m(umeric)f(argumen)m(t.)390 3812
+y Fs(RL_STATE_MACROINPUT)870 3921 y Ft(Readline)25 b(is)f(curren)m(tly)
g(getting)i(its)f(input)e(from)h(a)g(previously-de\014ned)f(k)m(eyb)s
-(oard)870 3064 y(macro.)390 3226 y Fs(RL_STATE_MACRODEF)870
-3335 y Ft(Readline)31 b(is)f(curren)m(tly)h(reading)f(c)m(haracters)i
-(de\014ning)e(a)g(k)m(eyb)s(oard)h(macro.)390 3496 y
-Fs(RL_STATE_OVERWRITE)870 3606 y Ft(Readline)g(is)f(in)g(o)m(v)m
-(erwrite)i(mo)s(de.)390 3767 y Fs(RL_STATE_COMPLETING)870
-3877 y Ft(Readline)f(is)f(p)s(erforming)g(w)m(ord)g(completion.)390
-4038 y Fs(RL_STATE_SIGHANDLER)870 4147 y Ft(Readline)h(is)f(curren)m
+(oard)870 4031 y(macro.)390 4183 y Fs(RL_STATE_MACRODEF)870
+4293 y Ft(Readline)31 b(is)f(curren)m(tly)h(reading)f(c)m(haracters)i
+(de\014ning)e(a)g(k)m(eyb)s(oard)h(macro.)390 4445 y
+Fs(RL_STATE_OVERWRITE)870 4555 y Ft(Readline)g(is)f(in)g(o)m(v)m
+(erwrite)i(mo)s(de.)390 4707 y Fs(RL_STATE_COMPLETING)870
+4816 y Ft(Readline)f(is)f(p)s(erforming)g(w)m(ord)g(completion.)390
+4969 y Fs(RL_STATE_SIGHANDLER)870 5078 y Ft(Readline)h(is)f(curren)m
(tly)h(executing)g(the)g(readline)g(signal)g(handler.)390
-4309 y Fs(RL_STATE_UNDOING)870 4418 y Ft(Readline)g(is)f(p)s(erforming)
-g(an)g(undo.)390 4579 y Fs(RL_STATE_INPUTPENDING)870
-4689 y Ft(Readline)h(has)f(input)g(p)s(ending)f(due)g(to)i(a)g(call)h
-(to)f Fs(rl_execute_next\(\))p Ft(.)390 4850 y Fs(RL_STATE_TTYCSAVED)
-870 4960 y Ft(Readline)g(has)f(sa)m(v)m(ed)i(the)e(v)-5
-b(alues)31 b(of)f(the)h(terminal's)g(sp)s(ecial)g(c)m(haracters.)390
-5121 y Fs(RL_STATE_CALLBACK)870 5230 y Ft(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 5340 y(tion)31 b(2.4.12)h([Alternate)h(In)m
-(terface],)f(page)f(44\).)p eop end
-%%Page: 33 37
-TeXDict begin 33 36 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(33)390
-299 y Fs(RL_STATE_VIMOTION)870 408 y Ft(Readline)31 b(is)f(reading)h
-(the)f(argumen)m(t)h(to)g(a)g(vi-mo)s(de)g Fs(")p Ft(motion)p
-Fs(")f Ft(command.)390 589 y Fs(RL_STATE_MULTIKEY)870
-699 y Ft(Readline)h(is)f(reading)h(a)g(m)m(ultiple-k)m(eystrok)m(e)i
-(command.)390 879 y Fs(RL_STATE_VICMDONCE)870 989 y Ft(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 1098 y(during)29 b(the)i(curren)m(t)f
-(call)i(to)f Fs(readline\(\))p Ft(.)390 1279 y Fs(RL_STATE_DONE)870
-1389 y Ft(Readline)d(has)g(read)f(a)i(k)m(ey)f(sequence)g(b)s(ound)e
-(to)i Fs(accept-line)d Ft(and)i(is)h(ab)s(out)f(to)870
-1498 y(return)i(the)i(line)g(to)g(the)f(caller.)3371
-1725 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_explicit_arg)390
-1834 y Ft(Set)39 b(to)g(a)h(non-zero)f(v)-5 b(alue)39
+5230 y Fs(RL_STATE_UNDOING)870 5340 y Ft(Readline)g(is)f(p)s(erforming)
+g(an)g(undo.)p eop end
+%%Page: 34 38
+TeXDict begin 34 37 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(34)390
+299 y Fs(RL_STATE_INPUTPENDING)870 408 y Ft(Readline)31
+b(has)f(input)g(p)s(ending)f(due)g(to)i(a)g(call)h(to)f
+Fs(rl_execute_next\(\))p Ft(.)390 557 y Fs(RL_STATE_TTYCSAVED)870
+666 y Ft(Readline)g(has)f(sa)m(v)m(ed)i(the)e(v)-5 b(alues)31
+b(of)f(the)h(terminal's)g(sp)s(ecial)g(c)m(haracters.)390
+814 y Fs(RL_STATE_CALLBACK)870 924 y Ft(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 1033 y(tion)31 b(2.4.12)h([Alternate)h(In)m
+(terface],)f(page)f(46\).)390 1182 y Fs(RL_STATE_VIMOTION)870
+1291 y Ft(Readline)g(is)f(reading)h(the)f(argumen)m(t)h(to)g(a)g(vi-mo)
+s(de)g Fs(")p Ft(motion)p Fs(")f Ft(command.)390 1439
+y Fs(RL_STATE_MULTIKEY)870 1549 y Ft(Readline)h(is)f(reading)h(a)g(m)m
+(ultiple-k)m(eystrok)m(e)i(command.)390 1697 y Fs(RL_STATE_VICMDONCE)
+870 1807 y Ft(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
+1916 y(during)29 b(the)i(curren)m(t)f(call)i(to)f Fs(readline\(\))p
+Ft(.)390 2064 y Fs(RL_STATE_DONE)870 2174 y Ft(Readline)d(has)g(read)f
+(a)i(k)m(ey)f(sequence)g(b)s(ound)e(to)i Fs(accept-line)d
+Ft(and)i(is)h(ab)s(out)f(to)870 2284 y(return)i(the)i(line)g(to)g(the)f
+(caller.)390 2432 y Fs(RL_STATE_TIMEOUT)870 2541 y Ft(Readline)44
+b(has)f(timed)g(out)h(\(it)g(did)f(not)g(receiv)m(e)i(a)f(line)f(or)h
+(sp)s(eci\014ed)e(n)m(um)m(b)s(er)870 2651 y(of)36 b(c)m(haracters)i(b)
+s(efore)d(the)i(timeout)g(duration)e(sp)s(eci\014ed)h(b)m(y)g
+Fs(rl_set_timeout)870 2760 y Ft(elapsed\))31 b(and)f(is)g(returning)g
+(that)h(status)f(to)h(the)g(caller.)390 2909 y Fs(RL_STATE_EOF)870
+3018 y Ft(Readline)39 b(has)f(read)h(an)f(EOF)h(c)m(haracter)h(\(e.g.,)
+i(the)d(stt)m(y)g(`)p Fs(EOF)p Ft(')f(c)m(haracter\))j(or)870
+3128 y(encoun)m(tered)k(a)h(read)e(error)h(and)f(is)h(ab)s(out)g(to)g
+(return)f(a)h(NULL)g(line)g(to)h(the)870 3237 y(caller.)3371
+3405 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_explicit_arg)390
+3514 y Ft(Set)39 b(to)g(a)h(non-zero)f(v)-5 b(alue)39
b(if)g(an)g(explicit)h(n)m(umeric)e(argumen)m(t)i(w)m(as)f(sp)s
-(eci\014ed)f(b)m(y)g(the)h(user.)390 1944 y(Only)30 b(v)-5
+(eci\014ed)f(b)m(y)g(the)h(user.)390 3624 y(Only)30 b(v)-5
b(alid)30 b(in)h(a)f(bindable)g(command)g(function.)3371
-2171 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_numeric_arg)390
-2280 y Ft(Set)45 b(to)h(the)g(v)-5 b(alue)46 b(of)f(an)m(y)h(n)m
+3791 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_numeric_arg)390
+3901 y Ft(Set)45 b(to)h(the)g(v)-5 b(alue)46 b(of)f(an)m(y)h(n)m
(umeric)f(argumen)m(t)h(explicitly)h(sp)s(eci\014ed)d(b)m(y)h(the)h
-(user)e(b)s(efore)390 2390 y(executing)27 b(the)f(curren)m(t)g
+(user)e(b)s(efore)390 4010 y(executing)27 b(the)f(curren)m(t)g
(Readline)h(function.)38 b(Only)26 b(v)-5 b(alid)26 b(in)g(a)g
-(bindable)f(command)h(function.)3371 2617 y([V)-8 b(ariable])-3598
-b Fh(int)53 b(rl_editing_mode)390 2726 y Ft(Set)25 b(to)h(a)g(v)-5
+(bindable)f(command)h(function.)3371 4178 y([V)-8 b(ariable])-3598
+b Fh(int)53 b(rl_editing_mode)390 4287 y Ft(Set)25 b(to)h(a)g(v)-5
b(alue)25 b(denoting)h(Readline's)f(curren)m(t)g(editing)h(mo)s(de.)39
b(A)25 b(v)-5 b(alue)25 b(of)h Fj(1)32 b Ft(means)25
-b(Readline)390 2836 y(is)30 b(curren)m(tly)h(in)f(emacs)h(mo)s(de;)f
+b(Readline)390 4397 y(is)30 b(curren)m(tly)h(in)f(emacs)h(mo)s(de;)f
Fj(0)38 b Ft(means)31 b(that)f(vi)h(mo)s(de)f(is)g(activ)m(e.)150
-3108 y Fr(2.4)68 b(Readline)47 b(Con)l(v)l(enience)f(F)-11
-b(unctions)150 3332 y Fi(2.4.1)63 b(Naming)41 b(a)g(F)-10
-b(unction)150 3479 y Ft(The)24 b(user)h(can)g(dynamically)g(c)m(hange)h
+4626 y Fr(2.4)68 b(Readline)47 b(Con)l(v)l(enience)f(F)-11
+b(unctions)150 4845 y Fi(2.4.1)63 b(Naming)41 b(a)g(F)-10
+b(unction)150 4992 y Ft(The)24 b(user)h(can)g(dynamically)g(c)m(hange)h
(the)f(bindings)f(of)h(k)m(eys)h(while)e(using)h(Readline.)39
-b(This)24 b(is)h(done)g(b)m(y)150 3589 y(represen)m(ting)30
+b(This)24 b(is)h(done)g(b)m(y)150 5102 y(represen)m(ting)30
b(the)h(function)f(with)g(a)g(descriptiv)m(e)h(name.)41
b(The)30 b(user)f(is)i(able)f(to)h(t)m(yp)s(e)g(the)f(descriptiv)m(e)
-150 3699 y(name)g(when)g(referring)g(to)h(the)f(function.)41
+150 5211 y(name)g(when)g(referring)g(to)h(the)f(function.)41
b(Th)m(us,)29 b(in)h(an)h(init)f(\014le,)h(one)g(migh)m(t)g(\014nd)390
-3854 y Fs(Meta-Rubout:)92 b(backward-kill-word)275 4010
-y Ft(This)84 b(binds)h(the)g(k)m(eystrok)m(e)j Fs(Meta-Rubout)82
+5340 y Fs(Meta-Rubout:)92 b(backward-kill-word)p eop
+end
+%%Page: 35 39
+TeXDict begin 35 38 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(35)275
+299 y(This)84 b(binds)h(the)g(k)m(eystrok)m(e)j Fs(Meta-Rubout)82
b Ft(to)87 b(the)e(function)h Fk(descriptively)94 b Ft(named)150
-4120 y Fs(backward-kill-word)p Ft(.)63 b(Y)-8 b(ou,)43
+408 y Fs(backward-kill-word)p Ft(.)63 b(Y)-8 b(ou,)43
b(as)d(the)g(programmer,)i(should)c(bind)g(the)i(functions)f(y)m(ou)h
-(write)g(to)150 4229 y(descriptiv)m(e)31 b(names)g(as)f(w)m(ell.)42
+(write)g(to)150 518 y(descriptiv)m(e)31 b(names)g(as)f(w)m(ell.)42
b(Readline)31 b(pro)m(vides)f(a)h(function)f(for)g(doing)h(that:)3350
-4456 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_add_defun)c
-Fg(\()p Ff(const)34 b(c)m(har)g(*name,)f(rl)p 1964 4456
-30 5 v 43 w(command)p 2427 4456 V 45 w(func)p 2656 4456
-V 45 w(t)g(*function,)565 4565 y(in)m(t)g(k)m(ey)p Fg(\))390
-4675 y Ft(Add)h Fj(name)41 b Ft(to)36 b(the)f(list)h(of)g(named)e
+706 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_add_defun)c
+Fg(\()p Ff(const)34 b(c)m(har)g(*name,)f(rl)p 1964 706
+30 5 v 43 w(command)p 2427 706 V 45 w(func)p 2656 706
+V 45 w(t)g(*function,)565 815 y(in)m(t)g(k)m(ey)p Fg(\))390
+925 y Ft(Add)h Fj(name)41 b Ft(to)36 b(the)f(list)h(of)g(named)e
(functions.)55 b(Mak)m(e)37 b Fj(function)e Ft(b)s(e)g(the)g(function)g
-(that)h(gets)390 4785 y(called.)42 b(If)30 b Fj(k)m(ey)39
+(that)h(gets)390 1034 y(called.)42 b(If)30 b Fj(k)m(ey)39
b Ft(is)30 b(not)h(-1,)g(then)f(bind)f(it)i(to)g Fj(function)f
-Ft(using)g Fs(rl_bind_key\(\))p Ft(.)275 5011 y(Using)g(this)g
+Ft(using)g Fs(rl_bind_key\(\))p Ft(.)275 1222 y(Using)g(this)g
(function)g(alone)h(is)f(su\016cien)m(t)g(for)g(most)h(applications.)42
-b(It)30 b(is)g(the)g(recommended)g(w)m(a)m(y)150 5121
+b(It)30 b(is)g(the)g(recommended)g(w)m(a)m(y)150 1332
y(to)e(add)e(a)h(few)g(functions)g(to)g(the)g(default)h(functions)e
(that)i(Readline)f(has)g(built)g(in.)39 b(If)26 b(y)m(ou)i(need)e(to)i
-(do)150 5230 y(something)34 b(other)g(than)f(adding)h(a)g(function)f
+(do)150 1441 y(something)34 b(other)g(than)f(adding)h(a)g(function)f
(to)h(Readline,)i(y)m(ou)e(ma)m(y)g(need)f(to)i(use)e(the)h(underlying)
-150 5340 y(functions)c(describ)s(ed)f(b)s(elo)m(w.)p
-eop end
-%%Page: 34 38
-TeXDict begin 34 37 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(34)150
-299 y Fi(2.4.2)63 b(Selecting)41 b(a)f(Keymap)150 446
+150 1551 y(functions)c(describ)s(ed)f(b)s(elo)m(w.)150
+1752 y Fi(2.4.2)63 b(Selecting)41 b(a)f(Keymap)150 1899
y Ft(Key)f(bindings)e(tak)m(e)j(place)g(on)f(a)g Fj(k)m(eymap)p
Ft(.)66 b(The)38 b(k)m(eymap)h(is)g(the)g(asso)s(ciation)h(b)s(et)m(w)m
-(een)f(the)g(k)m(eys)150 555 y(that)29 b(the)g(user)e(t)m(yp)s(es)i
+(een)f(the)g(k)m(eys)150 2008 y(that)29 b(the)g(user)e(t)m(yp)s(es)i
(and)f(the)g(functions)g(that)h(get)h(run.)39 b(Y)-8
b(ou)29 b(can)f(mak)m(e)i(y)m(our)e(o)m(wn)h(k)m(eymaps,)g(cop)m(y)150
-665 y(existing)i(k)m(eymaps,)g(and)f(tell)i(Readline)f(whic)m(h)f(k)m
-(eymap)h(to)g(use.)3350 854 y([F)-8 b(unction])-3599
+2118 y(existing)i(k)m(eymaps,)g(and)f(tell)i(Readline)f(whic)m(h)f(k)m
+(eymap)h(to)g(use.)3350 2305 y([F)-8 b(unction])-3599
b Fh(Keymap)54 b(rl_make_bare_keymap)d Fg(\()p Ff(v)m(oid)p
-Fg(\))390 963 y Ft(Returns)23 b(a)i(new,)g(empt)m(y)f(k)m(eymap.)40
+Fg(\))390 2415 y Ft(Returns)23 b(a)i(new,)g(empt)m(y)f(k)m(eymap.)40
b(The)23 b(space)i(for)f(the)g(k)m(eymap)h(is)f(allo)s(cated)i(with)e
-Fs(malloc\(\))p Ft(;)390 1073 y(the)31 b(caller)g(should)f(free)g(it)h
+Fs(malloc\(\))p Ft(;)390 2524 y(the)31 b(caller)g(should)f(free)g(it)h
(b)m(y)f(calling)i Fs(rl_free_keymap\(\))26 b Ft(when)j(done.)3350
-1262 y([F)-8 b(unction])-3599 b Fh(Keymap)54 b(rl_copy_keymap)c
-Fg(\()p Ff(Keymap)34 b(map)p Fg(\))390 1371 y Ft(Return)c(a)g(new)g(k)m
+2712 y([F)-8 b(unction])-3599 b Fh(Keymap)54 b(rl_copy_keymap)c
+Fg(\()p Ff(Keymap)34 b(map)p Fg(\))390 2822 y Ft(Return)c(a)g(new)g(k)m
(eymap)h(whic)m(h)f(is)h(a)f(cop)m(y)h(of)g Fj(map)p
-Ft(.)3350 1560 y([F)-8 b(unction])-3599 b Fh(Keymap)54
-b(rl_make_keymap)c Fg(\()p Ff(v)m(oid)p Fg(\))390 1669
+Ft(.)3350 3009 y([F)-8 b(unction])-3599 b Fh(Keymap)54
+b(rl_make_keymap)c Fg(\()p Ff(v)m(oid)p Fg(\))390 3119
y Ft(Return)31 b(a)g(new)g(k)m(eymap)h(with)f(the)h(prin)m(ting)f(c)m
-(haracters)i(b)s(ound)c(to)j(rl)p 2909 1669 28 4 v 40
-w(insert,)g(the)g(lo)m(w)m(ercase)390 1779 y(Meta)24
+(haracters)i(b)s(ound)c(to)j(rl)p 2909 3119 28 4 v 40
+w(insert,)g(the)g(lo)m(w)m(ercase)390 3228 y(Meta)24
b(c)m(haracters)g(b)s(ound)d(to)i(run)e(their)i(equiv)-5
b(alen)m(ts,)25 b(and)d(the)h(Meta)h(digits)f(b)s(ound)e(to)i(pro)s
-(duce)390 1889 y(n)m(umeric)30 b(argumen)m(ts.)3350 2077
+(duce)390 3338 y(n)m(umeric)30 b(argumen)m(ts.)3350 3525
y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_discard_keymap)c
-Fg(\()p Ff(Keymap)34 b(k)m(eymap)p Fg(\))390 2187 y Ft(F)-8
+Fg(\()p Ff(Keymap)34 b(k)m(eymap)p Fg(\))390 3635 y Ft(F)-8
b(ree)30 b(the)g(storage)h(asso)s(ciated)g(with)e(the)g(data)h(in)f
Fj(k)m(eymap)p Ft(.)41 b(The)29 b(caller)h(should)f(free)g
-Fj(k)m(eymap)p Ft(.)3350 2375 y([F)-8 b(unction])-3599
+Fj(k)m(eymap)p Ft(.)3350 3823 y([F)-8 b(unction])-3599
b Fh(void)54 b(rl_free_keymap)49 b Fg(\()p Ff(Keymap)34
-b(k)m(eymap)p Fg(\))390 2485 y Ft(F)-8 b(ree)32 b(all)g(storage)g(asso)
+b(k)m(eymap)p Fg(\))390 3932 y Ft(F)-8 b(ree)32 b(all)g(storage)g(asso)
s(ciated)g(with)f Fj(k)m(eymap)p Ft(.)42 b(This)30 b(calls)i
Fs(rl_discard_keymap)26 b Ft(to)32 b(free)f(sub-)390
-2595 y(ordindate)f(k)m(eymaps)h(and)f(macros.)3350 2783
+4042 y(ordindate)f(k)m(eymaps)h(and)f(macros.)3350 4229
y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_empty_keymap)d
-Fg(\()p Ff(Keymap)34 b(k)m(eymap)p Fg(\))390 2893 y Ft(Return)c
+Fg(\()p Ff(Keymap)34 b(k)m(eymap)p Fg(\))390 4339 y Ft(Return)c
(non-zero)h(if)g(there)g(are)g(no)f(k)m(eys)i(b)s(ound)c(to)k
(functions)e(in)g Fj(k)m(eymap)s Ft(;)i(zero)f(if)g(there)g(are)390
-3002 y(an)m(y)g(k)m(eys)g(b)s(ound.)275 3191 y(Readline)45
+4449 y(an)m(y)g(k)m(eys)g(b)s(ound.)275 4636 y(Readline)45
b(has)g(sev)m(eral)i(in)m(ternal)f(k)m(eymaps.)86 b(These)45
b(functions)g(allo)m(w)h(y)m(ou)g(to)g(c)m(hange)g(whic)m(h)150
-3301 y(k)m(eymap)31 b(is)f(activ)m(e.)3350 3489 y([F)-8
+4746 y(k)m(eymap)31 b(is)f(activ)m(e.)3350 4933 y([F)-8
b(unction])-3599 b Fh(Keymap)54 b(rl_get_keymap)c Fg(\()p
-Ff(v)m(oid)p Fg(\))390 3599 y Ft(Returns)29 b(the)i(curren)m(tly)f
-(activ)m(e)j(k)m(eymap.)3350 3788 y([F)-8 b(unction])-3599
+Ff(v)m(oid)p Fg(\))390 5043 y Ft(Returns)29 b(the)i(curren)m(tly)f
+(activ)m(e)j(k)m(eymap.)3350 5230 y([F)-8 b(unction])-3599
b Fh(void)54 b(rl_set_keymap)49 b Fg(\()p Ff(Keymap)34
-b(k)m(eymap)p Fg(\))390 3897 y Ft(Mak)m(es)e Fj(k)m(eymap)h
-Ft(the)e(curren)m(tly)f(activ)m(e)j(k)m(eymap.)3350 4086
-y([F)-8 b(unction])-3599 b Fh(Keymap)54 b(rl_get_keymap_by_name)e
-Fg(\()p Ff(const)34 b(c)m(har)g(*name)p Fg(\))390 4196
+b(k)m(eymap)p Fg(\))390 5340 y Ft(Mak)m(es)e Fj(k)m(eymap)h
+Ft(the)e(curren)m(tly)f(activ)m(e)j(k)m(eymap.)p eop
+end
+%%Page: 36 40
+TeXDict begin 36 39 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(36)3350
+299 y([F)-8 b(unction])-3599 b Fh(Keymap)54 b(rl_get_keymap_by_name)e
+Fg(\()p Ff(const)34 b(c)m(har)g(*name)p Fg(\))390 408
y Ft(Return)e(the)i(k)m(eymap)f(matc)m(hing)i Fj(name)p
Ft(.)49 b Fj(name)38 b Ft(is)c(one)f(whic)m(h)g(w)m(ould)g(b)s(e)f
-(supplied)g(in)h(a)h Fs(set)390 4305 y(keymap)29 b Ft(inputrc)g(line)i
+(supplied)g(in)h(a)h Fs(set)390 518 y(keymap)29 b Ft(inputrc)g(line)i
(\(see)g(Section)g(1.3)h([Readline)f(Init)f(File],)i(page)f(4\).)3350
-4494 y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_get_keymap_name)f
-Fg(\()p Ff(Keymap)34 b(k)m(eymap)p Fg(\))390 4603 y Ft(Return)e(the)i
+692 y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_get_keymap_name)f
+Fg(\()p Ff(Keymap)34 b(k)m(eymap)p Fg(\))390 801 y Ft(Return)e(the)i
(name)f(matc)m(hing)h Fj(k)m(eymap)p Ft(.)50 b Fj(name)38
b Ft(is)c(one)f(whic)m(h)g(w)m(ould)g(b)s(e)f(supplied)g(in)h(a)h
-Fs(set)390 4713 y(keymap)29 b Ft(inputrc)g(line)i(\(see)g(Section)g
-(1.3)h([Readline)f(Init)f(File],)i(page)f(4\).)3350 4902
-y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_set_keymap_name)e
-Fg(\()p Ff(const)34 b(c)m(har)g(*name,)f(Keymap)h(k)m(eymap)p
-Fg(\))390 5011 y Ft(Set)g(the)f(name)h(of)g Fj(k)m(eymap)p
+Fs(set)390 911 y(keymap)29 b Ft(inputrc)g(line)i(\(see)g(Section)g(1.3)
+h([Readline)f(Init)f(File],)i(page)f(4\).)3350 1085 y([F)-8
+b(unction])-3599 b Fh(int)53 b(rl_set_keymap_name)e Fg(\()p
+Ff(const)34 b(c)m(har)g(*name,)f(Keymap)h(k)m(eymap)p
+Fg(\))390 1194 y Ft(Set)g(the)f(name)h(of)g Fj(k)m(eymap)p
Ft(.)50 b(This)33 b(name)h(will)f(then)h(b)s(e)e Fs(")p
Ft(registered)p Fs(")i Ft(and)f(a)m(v)-5 b(ailable)36
-b(for)d(use)390 5121 y(in)i(a)g Fs(set)29 b(keymap)k
+b(for)d(use)390 1304 y(in)i(a)g Fs(set)29 b(keymap)k
Ft(inputrc)h(directiv)m(e)j(see)e(Section)h(1.3)g([Readline)g(Init)e
-(File],)k(page)e(4\).)54 b(The)390 5230 y Fj(name)27
+(File],)k(page)e(4\).)54 b(The)390 1414 y Fj(name)27
b Ft(ma)m(y)c(not)g(b)s(e)e(one)i(of)f(Readline's)h(builtin)f(k)m
(eymap)g(names;)j(y)m(ou)e(ma)m(y)g(not)f(add)g(a)g(di\013eren)m(t)390
-5340 y(name)36 b(for)g(one)g(of)g(Readline's)h(builtin)e(k)m(eymaps.)58
-b(Y)-8 b(ou)37 b(ma)m(y)f(replace)h(the)f(name)g(asso)s(ciated)p
-eop end
-%%Page: 35 39
-TeXDict begin 35 38 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(35)390
-299 y(with)31 b(a)g(giv)m(en)h(k)m(eymap)g(b)m(y)f(calling)h(this)f
+1523 y(name)36 b(for)g(one)g(of)g(Readline's)h(builtin)e(k)m(eymaps.)58
+b(Y)-8 b(ou)37 b(ma)m(y)f(replace)h(the)f(name)g(asso)s(ciated)390
+1633 y(with)31 b(a)g(giv)m(en)h(k)m(eymap)g(b)m(y)f(calling)h(this)f
(function)g(more)h(than)e(once)i(with)f(the)g(same)h
-Fj(k)m(eymap)390 408 y Ft(argumen)m(t.)50 b(Y)-8 b(ou)34
+Fj(k)m(eymap)390 1742 y Ft(argumen)m(t.)50 b(Y)-8 b(ou)34
b(ma)m(y)h(asso)s(ciate)g(a)f(registered)g Fj(name)39
b Ft(with)33 b(a)h(new)f(k)m(eymap)h(b)m(y)f(calling)i(this)390
-518 y(function)c(more)h(than)f(once)i(with)e(the)h(same)g
+1852 y(function)c(more)h(than)f(once)i(with)e(the)h(same)g
Fj(name)k Ft(argumen)m(t.)45 b(There)31 b(is)h(no)g(w)m(a)m(y)g(to)g
-(remo)m(v)m(e)390 628 y(a)k(named)e(k)m(eymap)i(once)g(the)f(name)g
+(remo)m(v)m(e)390 1962 y(a)k(named)e(k)m(eymap)i(once)g(the)f(name)g
(has)g(b)s(een)g(registered.)56 b(Readline)36 b(will)f(mak)m(e)h(a)g
-(cop)m(y)g(of)390 737 y Fj(name)p Ft(.)41 b(The)30 b(return)f(v)-5
+(cop)m(y)g(of)390 2071 y Fj(name)p Ft(.)41 b(The)30 b(return)f(v)-5
b(alue)31 b(is)g(greater)g(than)g(zero)g(unless)f Fj(name)35
-b Ft(is)c(one)g(of)f(Readline's)h(builtin)390 847 y(k)m(eymap)g(names)f
-(or)h Fj(k)m(eymap)i Ft(is)e(one)f(of)h(Readline's)g(builtin)f(k)m
-(eymaps.)150 1056 y Fi(2.4.3)63 b(Binding)42 b(Keys)150
-1203 y Ft(Key)34 b(sequences)g(are)h(asso)s(ciate)h(with)e(functions)f
+b Ft(is)c(one)g(of)f(Readline's)h(builtin)390 2181 y(k)m(eymap)g(names)
+f(or)h Fj(k)m(eymap)i Ft(is)e(one)f(of)h(Readline's)g(builtin)f(k)m
+(eymaps.)150 2373 y Fi(2.4.3)63 b(Binding)42 b(Keys)150
+2520 y Ft(Key)34 b(sequences)g(are)h(asso)s(ciate)h(with)e(functions)f
(through)h(the)g(k)m(eymap.)52 b(Readline)35 b(has)f(sev)m(eral)h(in-)
-150 1313 y(ternal)30 b(k)m(eymaps:)40 b Fs(emacs_standard_keymap)p
+150 2629 y(ternal)30 b(k)m(eymaps:)40 b Fs(emacs_standard_keymap)p
Ft(,)24 b Fs(emacs_meta_keymap)p Ft(,)h Fs(emacs_ctlx_keymap)p
-Ft(,)g Fs(vi_)150 1423 y(movement_keymap)p Ft(,)41 b(and)h
+Ft(,)g Fs(vi_)150 2739 y(movement_keymap)p Ft(,)41 b(and)h
Fs(vi_insertion_keymap)p Ft(.)71 b Fs(emacs_standard_keymap)37
-b Ft(is)42 b(the)g(default,)150 1532 y(and)30 b(the)g(examples)h(in)f
-(this)h(man)m(ual)f(assume)g(that.)275 1677 y(Since)d
+b Ft(is)42 b(the)g(default,)150 2849 y(and)30 b(the)g(examples)h(in)f
+(this)h(man)m(ual)f(assume)g(that.)275 2980 y(Since)d
Fs(readline\(\))e Ft(installs)j(a)g(set)g(of)g(default)g(k)m(ey)g
(bindings)f(the)h(\014rst)e(time)j(it)f(is)f(called,)j(there)e(is)150
-1787 y(alw)m(a)m(ys)34 b(the)f(danger)f(that)i(a)f(custom)g(binding)e
+3089 y(alw)m(a)m(ys)34 b(the)f(danger)f(that)i(a)f(custom)g(binding)e
(installed)j(b)s(efore)e(the)h(\014rst)e(call)j(to)g
-Fs(readline\(\))c Ft(will)150 1896 y(b)s(e)25 b(o)m(v)m(erridden.)39
+Fs(readline\(\))c Ft(will)150 3199 y(b)s(e)25 b(o)m(v)m(erridden.)39
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 2006 y(function)37
+(ey)g(bindings)f(in)g(an)h(initialization)150 3308 y(function)37
b(assigned)g(to)h(the)f Fs(rl_startup_hook)c Ft(v)-5
b(ariable)38 b(\(see)g(Section)g(2.3)g([Readline)g(V)-8
-b(ariables],)150 2115 y(page)31 b(28\).)275 2260 y(These)f(functions)g
-(manage)h(k)m(ey)g(bindings.)3350 2465 y([F)-8 b(unction])-3599
+b(ariables],)150 3418 y(page)31 b(29\).)275 3549 y(These)f(functions)g
+(manage)h(k)m(ey)g(bindings.)3350 3723 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_bind_key)c Fg(\()p Ff(in)m(t)34 b(k)m(ey)-8
-b(,)32 b(rl)p 1441 2465 30 5 v 43 w(command)p 1904 2465
-V 45 w(func)p 2133 2465 V 45 w(t)h(*function)p Fg(\))390
-2575 y Ft(Binds)f Fj(k)m(ey)42 b Ft(to)34 b Fj(function)e
+b(,)32 b(rl)p 1441 3723 30 5 v 43 w(command)p 1904 3723
+V 45 w(func)p 2133 3723 V 45 w(t)h(*function)p Fg(\))390
+3832 y Ft(Binds)f Fj(k)m(ey)42 b Ft(to)34 b Fj(function)e
Ft(in)h(the)g(curren)m(tly)g(activ)m(e)i(k)m(eymap.)49
-b(Returns)32 b(non-zero)i(in)f(the)g(case)390 2685 y(of)e(an)f(in)m(v)
--5 b(alid)31 b Fj(k)m(ey)p Ft(.)3350 2890 y([F)-8 b(unction])-3599
+b(Returns)32 b(non-zero)i(in)f(the)g(case)390 3942 y(of)e(an)f(in)m(v)
+-5 b(alid)31 b Fj(k)m(ey)p Ft(.)3350 4116 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_bind_key_in_map)e Fg(\()p Ff(in)m(t)34
-b(k)m(ey)-8 b(,)32 b(rl)p 1807 2890 V 43 w(command)p
-2270 2890 V 45 w(func)p 2499 2890 V 45 w(t)h(*function,)565
-2999 y(Keymap)h(map)p Fg(\))390 3109 y Ft(Bind)c Fj(k)m(ey)39
+b(k)m(ey)-8 b(,)32 b(rl)p 1807 4116 V 43 w(command)p
+2270 4116 V 45 w(func)p 2499 4116 V 45 w(t)h(*function,)565
+4225 y(Keymap)h(map)p Fg(\))390 4335 y Ft(Bind)c Fj(k)m(ey)39
b Ft(to)31 b Fj(function)f Ft(in)g Fj(map)p Ft(.)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 Fj(k)m(ey)p Ft(.)3350 3314 y([F)-8 b(unction])-3599
+b Fj(k)m(ey)p Ft(.)3350 4509 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_bind_key_if_unboun)q(d)e Fg(\()p Ff(in)m(t)34
-b(k)m(ey)-8 b(,)32 b(rl)p 2016 3314 V 44 w(command)p
-2480 3314 V 44 w(func)p 2708 3314 V 45 w(t)565 3424 y(*function)p
-Fg(\))390 3533 y Ft(Binds)43 b Fj(k)m(ey)53 b Ft(to)45
+b(k)m(ey)-8 b(,)32 b(rl)p 2016 4509 V 44 w(command)p
+2480 4509 V 44 w(func)p 2708 4509 V 45 w(t)565 4618 y(*function)p
+Fg(\))390 4728 y Ft(Binds)43 b Fj(k)m(ey)53 b Ft(to)45
b Fj(function)e Ft(if)h(it)h(is)f(not)g(already)g(b)s(ound)e(in)i(the)g
-(curren)m(tly)g(activ)m(e)i(k)m(eymap.)390 3643 y(Returns)29
+(curren)m(tly)g(activ)m(e)i(k)m(eymap.)390 4837 y(Returns)29
b(non-zero)i(in)f(the)h(case)g(of)g(an)f(in)m(v)-5 b(alid)31
b Fj(k)m(ey)39 b Ft(or)30 b(if)h Fj(k)m(ey)39 b Ft(is)30
-b(already)h(b)s(ound.)3350 3848 y([F)-8 b(unction])-3599
+b(already)h(b)s(ound.)3350 5011 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_bind_key_if_unboun)q(d_in)q(_ma)q(p)e
-Fg(\()p Ff(in)m(t)34 b(k)m(ey)-8 b(,)32 b(rl)p 2382 3848
-V 44 w(command)p 2846 3848 V 44 w(func)p 3074 3848 V
-46 w(t)565 3958 y(*function,)i(Keymap)g(map)p Fg(\))390
-4067 y Ft(Binds)27 b Fj(k)m(ey)36 b Ft(to)28 b Fj(function)f
+Fg(\()p Ff(in)m(t)34 b(k)m(ey)-8 b(,)32 b(rl)p 2382 5011
+V 44 w(command)p 2846 5011 V 44 w(func)p 3074 5011 V
+46 w(t)565 5121 y(*function,)i(Keymap)g(map)p Fg(\))390
+5230 y Ft(Binds)27 b Fj(k)m(ey)36 b Ft(to)28 b Fj(function)f
Ft(if)g(it)h(is)f(not)h(already)g(b)s(ound)d(in)i Fj(map)p
Ft(.)39 b(Returns)27 b(non-zero)g(in)g(the)h(case)390
-4177 y(of)j(an)f(in)m(v)-5 b(alid)31 b Fj(k)m(ey)39 b
-Ft(or)30 b(if)g Fj(k)m(ey)39 b Ft(is)31 b(already)g(b)s(ound.)3350
-4382 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_unbind_key)d
-Fg(\()p Ff(in)m(t)33 b(k)m(ey)p Fg(\))390 4491 y Ft(Bind)j
+5340 y(of)j(an)f(in)m(v)-5 b(alid)31 b Fj(k)m(ey)39 b
+Ft(or)30 b(if)g Fj(k)m(ey)39 b Ft(is)31 b(already)g(b)s(ound.)p
+eop end
+%%Page: 37 41
+TeXDict begin 37 40 bop 150 -116 a Ft(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 Fh(int)53 b(rl_unbind_key)d
+Fg(\()p Ff(in)m(t)33 b(k)m(ey)p Fg(\))390 408 y Ft(Bind)j
Fj(k)m(ey)45 b Ft(to)37 b(the)f(n)m(ull)g(function)g(in)g(the)h(curren)
m(tly)f(activ)m(e)i(k)m(eymap.)59 b(Returns)35 b(non-zero)i(in)390
-4601 y(case)31 b(of)g(error.)3350 4806 y([F)-8 b(unction])-3599
+518 y(case)31 b(of)g(error.)3350 693 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_unbind_key_in_map)f Fg(\()p Ff(in)m(t)33
-b(k)m(ey)-8 b(,)33 b(Keymap)g(map)p Fg(\))390 4916 y
-Ft(Bind)d Fj(k)m(ey)39 b Ft(to)31 b(the)g(n)m(ull)f(function)g(in)g
+b(k)m(ey)-8 b(,)33 b(Keymap)g(map)p Fg(\))390 803 y Ft(Bind)d
+Fj(k)m(ey)39 b Ft(to)31 b(the)g(n)m(ull)f(function)g(in)g
Fj(map)p Ft(.)40 b(Returns)30 b(non-zero)h(in)f(case)h(of)g(error.)3350
-5121 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_unbind_function_in)q
-(_map)f Fg(\()p Ff(rl)p 1821 5121 V 44 w(command)p 2285
-5121 V 45 w(func)p 2514 5121 V 45 w(t)33 b(*function,)565
-5230 y(Keymap)h(map)p Fg(\))390 5340 y Ft(Un)m(bind)29
+978 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_unbind_function_in)q
+(_map)f Fg(\()p Ff(rl)p 1821 978 30 5 v 44 w(command)p
+2285 978 V 45 w(func)p 2514 978 V 45 w(t)33 b(*function,)565
+1088 y(Keymap)h(map)p Fg(\))390 1198 y Ft(Un)m(bind)29
b(all)i(k)m(eys)g(that)g(execute)h Fj(function)e Ft(in)g
-Fj(map)p Ft(.)p eop end
-%%Page: 36 40
-TeXDict begin 36 39 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(36)3350
-299 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_unbind_command_in_)q(map)
-f Fg(\()p Ff(const)34 b(c)m(har)g(*command,)f(Keymap)565
-408 y(map)p Fg(\))390 518 y Ft(Un)m(bind)c(all)i(k)m(eys)g(that)g(are)g
-(b)s(ound)e(to)i Fj(command)i Ft(in)d Fj(map)p Ft(.)3350
-707 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_bind_keyseq)d
-Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)e(rl)p 2119
-707 30 5 v 44 w(command)p 2583 707 V 44 w(func)p 2811
-707 V 46 w(t)565 817 y(*function)p Fg(\))390 927 y Ft(Bind)43
+Fj(map)p Ft(.)3350 1373 y([F)-8 b(unction])-3599 b Fh(int)53
+b(rl_unbind_command_in_)q(map)f Fg(\()p Ff(const)34 b(c)m(har)g
+(*command,)f(Keymap)565 1482 y(map)p Fg(\))390 1592 y
+Ft(Un)m(bind)c(all)i(k)m(eys)g(that)g(are)g(b)s(ound)e(to)i
+Fj(command)i Ft(in)d Fj(map)p Ft(.)3350 1767 y([F)-8
+b(unction])-3599 b Fh(int)53 b(rl_bind_keyseq)d Fg(\()p
+Ff(const)34 b(c)m(har)g(*k)m(eyseq,)e(rl)p 2119 1767
+V 44 w(command)p 2583 1767 V 44 w(func)p 2811 1767 V
+46 w(t)565 1877 y(*function)p Fg(\))390 1987 y Ft(Bind)43
b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g(the)g(string)g
Fj(k)m(eyseq)j Ft(to)e(the)f(function)g Fj(function)p
-Ft(,)390 1036 y(b)s(eginning)27 b(in)h(the)h(curren)m(t)f(k)m(eymap.)40
+Ft(,)390 2096 y(b)s(eginning)27 b(in)h(the)h(curren)m(t)f(k)m(eymap.)40
b(This)28 b(mak)m(es)h(new)e(k)m(eymaps)i(as)f(necessary)-8
-b(.)41 b(The)28 b(return)390 1146 y(v)-5 b(alue)31 b(is)f(non-zero)h
-(if)g Fj(k)m(eyseq)i Ft(is)d(in)m(v)-5 b(alid.)3350 1335
+b(.)41 b(The)28 b(return)390 2206 y(v)-5 b(alue)31 b(is)f(non-zero)h
+(if)g Fj(k)m(eyseq)i Ft(is)d(in)m(v)-5 b(alid.)3350 2381
y([F)d(unction])-3599 b Fh(int)53 b(rl_bind_keyseq_in_map)f
-Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)565 1445
-y(rl)p 639 1445 V 44 w(command)p 1103 1445 V 44 w(func)p
-1331 1445 V 45 w(t)f(*function,)h(Keymap)g(map)p Fg(\))390
-1554 y Ft(Bind)25 b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g
+Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)565 2491
+y(rl)p 639 2491 V 44 w(command)p 1103 2491 V 44 w(func)p
+1331 2491 V 45 w(t)f(*function,)h(Keymap)g(map)p Fg(\))390
+2600 y Ft(Bind)25 b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g
(the)g(string)g Fj(k)m(eyseq)j Ft(to)e(the)f(function)g
-Fj(function)p Ft(.)39 b(This)390 1664 y(mak)m(es)30 b(new)f(k)m(eymaps)
+Fj(function)p Ft(.)39 b(This)390 2710 y(mak)m(es)30 b(new)f(k)m(eymaps)
g(as)g(necessary)-8 b(.)42 b(Initial)30 b(bindings)d(are)j(p)s
(erformed)e(in)g Fj(map)p Ft(.)40 b(The)29 b(return)390
-1773 y(v)-5 b(alue)31 b(is)f(non-zero)h(if)g Fj(k)m(eyseq)i
-Ft(is)d(in)m(v)-5 b(alid.)3350 1963 y([F)d(unction])-3599
+2819 y(v)-5 b(alue)31 b(is)f(non-zero)h(if)g Fj(k)m(eyseq)i
+Ft(is)d(in)m(v)-5 b(alid.)3350 2995 y([F)d(unction])-3599
b Fh(int)53 b(rl_set_key)c Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)
-e(rl)p 1910 1963 V 44 w(command)p 2374 1963 V 44 w(func)p
-2602 1963 V 45 w(t)h(*function,)565 2072 y(Keymap)h(map)p
-Fg(\))390 2182 y Ft(Equiv)-5 b(alen)m(t)31 b(to)g Fs
-(rl_bind_keyseq_in_map)p Ft(.)3350 2371 y([F)-8 b(unction])-3599
+e(rl)p 1910 2995 V 44 w(command)p 2374 2995 V 44 w(func)p
+2602 2995 V 45 w(t)h(*function,)565 3104 y(Keymap)h(map)p
+Fg(\))390 3214 y Ft(Equiv)-5 b(alen)m(t)31 b(to)g Fs
+(rl_bind_keyseq_in_map)p Ft(.)3350 3389 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_bind_keyseq_if_unb)q(ound)f Fg(\()p
-Ff(const)34 b(c)m(har)g(*k)m(eyseq,)565 2481 y(rl)p 639
-2481 V 44 w(command)p 1103 2481 V 44 w(func)p 1331 2481
-V 45 w(t)f(*function)p Fg(\))390 2590 y Ft(Binds)i Fj(k)m(eyseq)k
+Ff(const)34 b(c)m(har)g(*k)m(eyseq,)565 3499 y(rl)p 639
+3499 V 44 w(command)p 1103 3499 V 44 w(func)p 1331 3499
+V 45 w(t)f(*function)p Fg(\))390 3608 y Ft(Binds)i Fj(k)m(eyseq)k
Ft(to)d Fj(function)f Ft(if)g(it)h(is)g(not)g(already)g(b)s(ound)d(in)i
-(the)h(curren)m(tly)f(activ)m(e)j(k)m(eymap.)390 2700
+(the)h(curren)m(tly)f(activ)m(e)j(k)m(eymap.)390 3718
y(Returns)29 b(non-zero)i(in)f(the)h(case)g(of)g(an)f(in)m(v)-5
b(alid)31 b Fj(k)m(eyseq)j Ft(or)c(if)g Fj(k)m(eyseq)k
-Ft(is)c(already)h(b)s(ound.)3350 2889 y([F)-8 b(unction])-3599
+Ft(is)c(already)h(b)s(ound.)3350 3893 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_bind_keyseq_if_unb)q(ound)q(_in)q(_ma)q(p)e
-Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)565 2999
-y(rl)p 639 2999 V 44 w(command)p 1103 2999 V 44 w(func)p
-1331 2999 V 45 w(t)f(*function,)h(Keymap)g(map)p Fg(\))390
-3108 y Ft(Binds)d Fj(k)m(eyseq)k Ft(to)e Fj(function)f
+Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)565 4003
+y(rl)p 639 4003 V 44 w(command)p 1103 4003 V 44 w(func)p
+1331 4003 V 45 w(t)f(*function,)h(Keymap)g(map)p Fg(\))390
+4113 y Ft(Binds)d Fj(k)m(eyseq)k Ft(to)e Fj(function)f
Ft(if)g(it)g(is)g(not)g(already)h(b)s(ound)d(in)h Fj(map)p
-Ft(.)46 b(Returns)31 b(non-zero)h(in)g(the)390 3218 y(case)f(of)g(an)f
+Ft(.)46 b(Returns)31 b(non-zero)h(in)g(the)390 4222 y(case)f(of)g(an)f
(in)m(v)-5 b(alid)31 b Fj(k)m(eyseq)j Ft(or)c(if)g Fj(k)m(eyseq)k
-Ft(is)c(already)h(b)s(ound.)3350 3407 y([F)-8 b(unction])-3599
+Ft(is)c(already)h(b)s(ound.)3350 4398 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_generic_bind)d Fg(\()p Ff(in)m(t)34
b(t)m(yp)s(e,)f(const)g(c)m(har)h(*k)m(eyseq,)f(c)m(har)h(*data,)565
-3517 y(Keymap)g(map)p Fg(\))390 3626 y Ft(Bind)27 b(the)g(k)m(ey)h
+4507 y(Keymap)g(map)p Fg(\))390 4617 y Ft(Bind)27 b(the)g(k)m(ey)h
(sequence)f(represen)m(ted)g(b)m(y)g(the)g(string)g Fj(k)m(eyseq)j
Ft(to)e(the)f(arbitrary)g(p)s(oin)m(ter)g Fj(data)p Ft(.)390
-3736 y Fj(t)m(yp)s(e)34 b Ft(sa)m(ys)29 b(what)f(kind)g(of)g(data)h(is)
+4726 y Fj(t)m(yp)s(e)34 b Ft(sa)m(ys)29 b(what)f(kind)g(of)g(data)h(is)
g(p)s(oin)m(ted)f(to)h(b)m(y)g Fj(data)p Ft(;)h(this)e(can)h(b)s(e)f(a)
-g(function)g(\()p Fs(ISFUNC)p Ft(\),)h(a)390 3846 y(macro)h(\()p
+g(function)g(\()p Fs(ISFUNC)p Ft(\),)h(a)390 4836 y(macro)h(\()p
Fs(ISMACR)p Ft(\),)f(or)g(a)h(k)m(eymap)g(\()p Fs(ISKMAP)p
Ft(\).)40 b(This)28 b(mak)m(es)j(new)e(k)m(eymaps)g(as)h(necessary)-8
-b(.)41 b(The)390 3955 y(initial)32 b(k)m(eymap)e(in)h(whic)m(h)f(to)h
-(do)f(bindings)f(is)i Fj(map)p Ft(.)3350 4144 y([F)-8
+b(.)41 b(The)390 4945 y(initial)32 b(k)m(eymap)e(in)h(whic)m(h)f(to)h
+(do)f(bindings)f(is)i Fj(map)p Ft(.)3350 5121 y([F)-8
b(unction])-3599 b Fh(int)53 b(rl_parse_and_bind)e Fg(\()p
-Ff(c)m(har)34 b(*line)p Fg(\))390 4254 y Ft(P)m(arse)c
+Ff(c)m(har)34 b(*line)p Fg(\))390 5230 y Ft(P)m(arse)c
Fj(line)35 b Ft(as)29 b(if)h(it)g(had)e(b)s(een)h(read)g(from)g(the)h
Fs(inputrc)d Ft(\014le)j(and)e(p)s(erform)g(an)m(y)i(k)m(ey)g(bindings)
-390 4364 y(and)g(v)-5 b(ariable)31 b(assignmen)m(ts)g(found)e(\(see)i
-(Section)h(1.3)f([Readline)g(Init)f(File],)j(page)e(4\).)3350
-4553 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_read_init_file)e
+390 5340 y(and)g(v)-5 b(ariable)31 b(assignmen)m(ts)g(found)e(\(see)i
+(Section)h(1.3)f([Readline)g(Init)f(File],)j(page)e(4\).)p
+eop end
+%%Page: 38 42
+TeXDict begin 38 41 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(38)3350
+299 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_read_init_file)e
Fg(\()p Ff(const)34 b(c)m(har)g(*\014lename)p Fg(\))390
-4663 y Ft(Read)e(k)m(eybindings)f(and)g(v)-5 b(ariable)32
+408 y Ft(Read)e(k)m(eybindings)f(and)g(v)-5 b(ariable)32
b(assignmen)m(ts)g(from)f Fj(\014lename)37 b Ft(\(see)32
-b(Section)g(1.3)h([Readline)390 4772 y(Init)d(File],)i(page)f(4\).)150
-4974 y Fi(2.4.4)63 b(Asso)s(ciating)41 b(F)-10 b(unction)42
-b(Names)f(and)g(Bindings)150 5121 y Ft(These)30 b(functions)g(allo)m(w)
-h(y)m(ou)g(to)f(\014nd)f(out)h(what)g(k)m(eys)h(in)m(v)m(ok)m(e)h
-(named)e(functions)g(and)f(the)h(functions)150 5230 y(in)m(v)m(ok)m(ed)
-f(b)m(y)e(a)h(particular)g(k)m(ey)g(sequence.)40 b(Y)-8
-b(ou)28 b(ma)m(y)g(also)h(asso)s(ciate)g(a)f(new)f(function)g(name)h
-(with)f(an)150 5340 y(arbitrary)j(function.)p eop end
-%%Page: 37 41
-TeXDict begin 37 40 bop 150 -116 a Ft(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 Fh(rl_command_func_t)57
-b(*)c(rl_named_function)e Fg(\()p Ff(const)34 b(c)m(har)g(*name)p
-Fg(\))390 408 y Ft(Return)c(the)g(function)g(with)g(name)h
-Fj(name)p Ft(.)3350 607 y([F)-8 b(unction])-3599 b Fh
-(rl_command_func_t)57 b(*)c(rl_function_of_keyseq)f Fg(\()p
-Ff(const)34 b(c)m(har)565 716 y(*k)m(eyseq,)f(Keymap)g(map,)g(in)m(t)h
-(*t)m(yp)s(e)p Fg(\))390 826 y Ft(Return)e(the)g(function)h(in)m(v)m
-(ok)m(ed)h(b)m(y)e Fj(k)m(eyseq)k Ft(in)c(k)m(eymap)h
+b(Section)g(1.3)h([Readline)390 518 y(Init)d(File],)i(page)f(4\).)150
+726 y Fi(2.4.4)63 b(Asso)s(ciating)41 b(F)-10 b(unction)42
+b(Names)f(and)g(Bindings)150 873 y Ft(These)30 b(functions)g(allo)m(w)h
+(y)m(ou)g(to)f(\014nd)f(out)h(what)g(k)m(eys)h(in)m(v)m(ok)m(e)h(named)
+e(functions)g(and)f(the)h(functions)150 983 y(in)m(v)m(ok)m(ed)f(b)m(y)
+e(a)h(particular)g(k)m(ey)g(sequence.)40 b(Y)-8 b(ou)28
+b(ma)m(y)g(also)h(asso)s(ciate)g(a)f(new)f(function)g(name)h(with)f(an)
+150 1092 y(arbitrary)j(function.)3350 1295 y([F)-8 b(unction])-3599
+b Fh(rl_command_func_t)57 b(*)c(rl_named_function)e Fg(\()p
+Ff(const)34 b(c)m(har)g(*name)p Fg(\))390 1404 y Ft(Return)c(the)g
+(function)g(with)g(name)h Fj(name)p Ft(.)3350 1606 y([F)-8
+b(unction])-3599 b Fh(rl_command_func_t)57 b(*)c(rl_function_of_keyseq)
+f Fg(\()p Ff(const)34 b(c)m(har)565 1716 y(*k)m(eyseq,)f(Keymap)g(map,)
+g(in)m(t)h(*t)m(yp)s(e)p Fg(\))390 1826 y Ft(Return)e(the)g(function)h
+(in)m(v)m(ok)m(ed)h(b)m(y)e Fj(k)m(eyseq)k Ft(in)c(k)m(eymap)h
Fj(map)p Ft(.)47 b(If)32 b Fj(map)j Ft(is)d Fs(NULL)p
-Ft(,)g(the)h(curren)m(t)390 936 y(k)m(eymap)k(is)g(used.)60
+Ft(,)g(the)h(curren)m(t)390 1935 y(k)m(eymap)k(is)g(used.)60
b(If)37 b Fj(t)m(yp)s(e)42 b Ft(is)37 b(not)g Fs(NULL)p
Ft(,)h(the)f(t)m(yp)s(e)g(of)g(the)g(ob)5 b(ject)38 b(is)f(returned)f
-(in)h(the)g Fs(int)390 1045 y Ft(v)-5 b(ariable)30 b(it)g(p)s(oin)m(ts)
+(in)h(the)g Fs(int)390 2045 y Ft(v)-5 b(ariable)30 b(it)g(p)s(oin)m(ts)
g(to)g(\(one)g(of)g Fs(ISFUNC)p Ft(,)e Fs(ISKMAP)p Ft(,)g(or)i
Fs(ISMACR)p Ft(\).)39 b(It)30 b(tak)m(es)h(a)f Fs(")p
-Ft(translated)p Fs(")f Ft(k)m(ey)390 1155 y(sequence)i(and)f(should)f
+Ft(translated)p Fs(")f Ft(k)m(ey)390 2154 y(sequence)i(and)f(should)f
(not)i(b)s(e)e(used)h(if)g(the)h(k)m(ey)g(sequence)g(can)f(include)g
-(NUL.)3350 1353 y([F)-8 b(unction])-3599 b Fh(rl_command_func_t)57
+(NUL.)3350 2356 y([F)-8 b(unction])-3599 b Fh(rl_command_func_t)57
b(*)c(rl_function_of_keyseq_)q(len)f Fg(\()p Ff(const)34
-b(c)m(har)565 1463 y(*k)m(eyseq,)f(size)p 1121 1463 30
+b(c)m(har)565 2466 y(*k)m(eyseq,)f(size)p 1121 2466 30
5 v 44 w(t)g(len,)g(Keymap)h(map,)f(in)m(t)g(*t)m(yp)s(e)p
-Fg(\))390 1572 y Ft(Return)20 b(the)h(function)g(in)m(v)m(ok)m(ed)i(b)m
+Fg(\))390 2576 y Ft(Return)20 b(the)h(function)g(in)m(v)m(ok)m(ed)i(b)m
(y)e Fj(k)m(eyseq)j Ft(of)d(length)g Fj(len)h Ft(in)e(k)m(eymap)i
Fj(map)p Ft(.)37 b(Equiv)-5 b(alen)m(t)22 b(to)g Fs(rl_)390
-1682 y(function_of_keyseq)g Ft(with)28 b(the)f(addition)h(of)f(the)h
+2685 y(function_of_keyseq)g Ft(with)28 b(the)f(addition)h(of)f(the)h
Fj(len)f Ft(parameter.)41 b(It)27 b(tak)m(es)i(a)f Fs(")p
-Ft(translated)p Fs(")390 1792 y Ft(k)m(ey)j(sequence)g(and)f(should)f
+Ft(translated)p Fs(")390 2795 y Ft(k)m(ey)j(sequence)g(and)f(should)f
(b)s(e)h(used)f(if)i(the)f(k)m(ey)h(sequence)g(can)g(include)f(NUL.)
-3350 1990 y([F)-8 b(unction])-3599 b Fh(char)54 b(**)e
-(rl_invoking_keyseqs)g Fg(\()p Ff(rl)p 1717 1990 V 44
-w(command)p 2181 1990 V 44 w(func)p 2409 1990 V 45 w(t)33
-b(*function)p Fg(\))390 2100 y Ft(Return)d(an)i(arra)m(y)f(of)h
+3350 2997 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_trim_arg_from_keys)
+q(eq)f Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)e(size)p
+2678 2997 V 44 w(t)h(len,)565 3107 y(Keymap)h(map)p Fg(\))390
+3216 y Ft(If)e(there)h(is)f(a)h(n)m(umeric)g(argumen)m(t)g(at)g(the)g
+(b)s(eginning)e(of)i Fj(k)m(eyseq)p Ft(,)h(p)s(ossibly)e(including)g
+(digits,)390 3326 y(return)24 b(the)h(index)f(of)i(the)f(\014rst)f(c)m
+(haracter)i(in)f Fj(k)m(eyseq)j Ft(follo)m(wing)e(the)g(n)m(umeric)e
+(argumen)m(t.)40 b(This)390 3435 y(can)24 b(b)s(e)g(used)f(to)h(skip)g
+(o)m(v)m(er)h(the)f(n)m(umeric)g(argumen)m(t)g(\(whic)m(h)g(is)g(a)m(v)
+-5 b(ailable)27 b(as)d Fs(rl_numeric_arg)390 3545 y Ft(while)30
+b(tra)m(v)m(ersing)i(the)f(k)m(ey)g(sequence)g(that)g(in)m(v)m(ok)m(ed)
+g(the)g(curren)m(t)f(command.)3350 3747 y([F)-8 b(unction])-3599
+b Fh(char)54 b(**)e(rl_invoking_keyseqs)g Fg(\()p Ff(rl)p
+1717 3747 V 44 w(command)p 2181 3747 V 44 w(func)p 2409
+3747 V 45 w(t)33 b(*function)p Fg(\))390 3857 y Ft(Return)d(an)i(arra)m
+(y)f(of)h(strings)f(represen)m(ting)g(the)g(k)m(ey)h(sequences)g(used)e
+(to)i(in)m(v)m(ok)m(e)h Fj(function)e Ft(in)390 3966
+y(the)g(curren)m(t)f(k)m(eymap.)3350 4168 y([F)-8 b(unction])-3599
+b Fh(char)54 b(**)e(rl_invoking_keyseqs_i)q(n_m)q(ap)g
+Fg(\()p Ff(rl)p 2083 4168 V 44 w(command)p 2547 4168
+V 44 w(func)p 2775 4168 V 45 w(t)565 4278 y(*function,)34
+b(Keymap)g(map)p Fg(\))390 4388 y Ft(Return)c(an)i(arra)m(y)f(of)h
(strings)f(represen)m(ting)g(the)g(k)m(ey)h(sequences)g(used)e(to)i(in)
-m(v)m(ok)m(e)h Fj(function)e Ft(in)390 2209 y(the)g(curren)m(t)f(k)m
-(eymap.)3350 2408 y([F)-8 b(unction])-3599 b Fh(char)54
-b(**)e(rl_invoking_keyseqs_i)q(n_m)q(ap)g Fg(\()p Ff(rl)p
-2083 2408 V 44 w(command)p 2547 2408 V 44 w(func)p 2775
-2408 V 45 w(t)565 2517 y(*function,)34 b(Keymap)g(map)p
-Fg(\))390 2627 y Ft(Return)c(an)i(arra)m(y)f(of)h(strings)f(represen)m
-(ting)g(the)g(k)m(ey)h(sequences)g(used)e(to)i(in)m(v)m(ok)m(e)h
-Fj(function)e Ft(in)390 2736 y(the)g(k)m(eymap)f Fj(map)p
-Ft(.)3350 2935 y([F)-8 b(unction])-3599 b Fh(void)54
+m(v)m(ok)m(e)h Fj(function)e Ft(in)390 4497 y(the)g(k)m(eymap)f
+Fj(map)p Ft(.)3350 4699 y([F)-8 b(unction])-3599 b Fh(void)54
b(rl_function_dumper)c Fg(\()p Ff(in)m(t)34 b(readable)p
-Fg(\))390 3044 y Ft(Prin)m(t)29 b(the)h(readline)f(function)g(names)g
+Fg(\))390 4809 y Ft(Prin)m(t)29 b(the)h(readline)f(function)g(names)g
(and)g(the)g(k)m(ey)h(sequences)g(curren)m(tly)f(b)s(ound)e(to)j(them)f
-(to)390 3154 y Fs(rl_outstream)p Ft(.)36 b(If)27 b Fj(readable)33
+(to)390 4919 y Fs(rl_outstream)p Ft(.)36 b(If)27 b Fj(readable)33
b Ft(is)28 b(non-zero,)h(the)e(list)i(is)e(formatted)h(in)f(suc)m(h)g
-(a)h(w)m(a)m(y)h(that)f(it)g(can)390 3264 y(b)s(e)i(made)g(part)g(of)h
-(an)f Fs(inputrc)f Ft(\014le)h(and)g(re-read.)3350 3462
+(a)h(w)m(a)m(y)h(that)f(it)g(can)390 5028 y(b)s(e)i(made)g(part)g(of)h
+(an)f Fs(inputrc)f Ft(\014le)h(and)g(re-read.)3350 5230
y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_list_funmap_names)d
-Fg(\()p Ff(v)m(oid)p Fg(\))390 3572 y Ft(Prin)m(t)30
+Fg(\()p Ff(v)m(oid)p Fg(\))390 5340 y Ft(Prin)m(t)30
b(the)h(names)f(of)h(all)g(bindable)f(Readline)h(functions)f(to)h
-Fs(rl_outstream)p Ft(.)3350 3770 y([F)-8 b(unction])-3599
-b Fh(const)54 b(char)f(**)g(rl_funmap_names)d Fg(\()p
-Ff(v)m(oid)p Fg(\))390 3880 y Ft(Return)25 b(a)i(NULL)f(terminated)g
-(arra)m(y)h(of)f(kno)m(wn)f(function)h(names.)39 b(The)26
-b(arra)m(y)g(is)g(sorted.)39 b(The)390 3989 y(arra)m(y)28
-b(itself)h(is)f(allo)s(cated,)j(but)c(not)h(the)h(strings)e(inside.)40
-b(Y)-8 b(ou)29 b(should)e(free)h(the)g(arra)m(y)-8 b(,)29
-b(but)f(not)390 4099 y(the)j(p)s(oin)m(ters,)f(using)g
-Fs(free)f Ft(or)i Fs(rl_free)d Ft(when)h(y)m(ou)i(are)g(done.)3350
-4297 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_add_funmap_entry)e
-Fg(\()p Ff(const)34 b(c)m(har)g(*name,)g(rl)p 2331 4297
-V 43 w(command)p 2794 4297 V 45 w(func)p 3023 4297 V
-45 w(t)565 4407 y(*function)p Fg(\))390 4516 y Ft(Add)e
+Fs(rl_outstream)p Ft(.)p eop end
+%%Page: 39 43
+TeXDict begin 39 42 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(39)3350
+299 y([F)-8 b(unction])-3599 b Fh(const)54 b(char)f(**)g
+(rl_funmap_names)d Fg(\()p Ff(v)m(oid)p Fg(\))390 408
+y Ft(Return)25 b(a)i(NULL)f(terminated)g(arra)m(y)h(of)f(kno)m(wn)f
+(function)h(names.)39 b(The)26 b(arra)m(y)g(is)g(sorted.)39
+b(The)390 518 y(arra)m(y)28 b(itself)h(is)f(allo)s(cated,)j(but)c(not)h
+(the)h(strings)e(inside.)40 b(Y)-8 b(ou)29 b(should)e(free)h(the)g
+(arra)m(y)-8 b(,)29 b(but)f(not)390 628 y(the)j(p)s(oin)m(ters,)f
+(using)g Fs(free)f Ft(or)i Fs(rl_free)d Ft(when)h(y)m(ou)i(are)g(done.)
+3350 813 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_add_funmap_entry)e
+Fg(\()p Ff(const)34 b(c)m(har)g(*name,)g(rl)p 2331 813
+30 5 v 43 w(command)p 2794 813 V 45 w(func)p 3023 813
+V 45 w(t)565 923 y(*function)p Fg(\))390 1033 y Ft(Add)e
Fj(name)38 b Ft(to)33 b(the)g(list)h(of)f(bindable)f(Readline)h
(command)g(names,)g(and)f(mak)m(e)i Fj(function)f Ft(the)390
-4626 y(function)d(to)h(b)s(e)f(called)h(when)f Fj(name)35
-b Ft(is)c(in)m(v)m(ok)m(ed.)150 4832 y Fi(2.4.5)63 b(Allo)m(wing)41
-b(Undoing)150 4979 y Ft(Supp)s(orting)34 b(the)i(undo)e(command)i(is)g
+1142 y(function)d(to)h(b)s(e)f(called)h(when)f Fj(name)35
+b Ft(is)c(in)m(v)m(ok)m(ed.)150 1342 y Fi(2.4.5)63 b(Allo)m(wing)41
+b(Undoing)150 1489 y Ft(Supp)s(orting)34 b(the)i(undo)e(command)i(is)g
(a)g(painless)g(thing,)h(and)e(mak)m(es)i(y)m(our)f(functions)f(m)m(uc)
-m(h)h(more)150 5089 y(useful.)k(It)30 b(is)h(certainly)g(easy)g(to)g
+m(h)h(more)150 1599 y(useful.)k(It)30 b(is)h(certainly)g(easy)g(to)g
(try)g(something)g(if)f(y)m(ou)h(kno)m(w)f(y)m(ou)h(can)f(undo)g(it.)
-275 5230 y(If)40 b(y)m(our)h(function)f(simply)g(inserts)h(text)h
+275 1734 y(If)40 b(y)m(our)h(function)f(simply)g(inserts)h(text)h
(once,)i(or)d(deletes)h(text)g(once,)i(and)c(uses)h Fs(rl_insert_)150
-5340 y(text\(\))26 b Ft(or)i Fs(rl_delete_text\(\))23
+1844 y(text\(\))26 b Ft(or)i Fs(rl_delete_text\(\))23
b Ft(to)29 b(do)f(it,)h(then)f(undoing)f(is)g(already)i(done)f(for)f(y)
-m(ou)h(automatically)-8 b(.)p eop end
-%%Page: 38 42
-TeXDict begin 38 41 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(38)275
-299 y(If)20 b(y)m(ou)g(do)h(m)m(ultiple)g(insertions)f(or)h(m)m
-(ultiple)g(deletions,)j(or)c(an)m(y)h(com)m(bination)h(of)e(these)h(op)
-s(erations,)150 408 y(y)m(ou)38 b(should)f(group)h(them)g(together)h
-(in)m(to)g(one)f(op)s(eration.)64 b(This)37 b(is)h(done)g(with)g
-Fs(rl_begin_undo_)150 518 y(group\(\))28 b Ft(and)i Fs
-(rl_end_undo_group\(\))p Ft(.)275 649 y(The)f(t)m(yp)s(es)i(of)f(ev)m
-(en)m(ts)i(that)f(can)g(b)s(e)e(undone)h(are:)390 757
-y Fe(enum)40 b(undo_code)h({)f(UNDO_DELETE,)i(UNDO_INSERT,)g
-(UNDO_BEGIN,)g(UNDO_END)f(};)275 887 y Ft(Notice)32 b(that)f
-Fs(UNDO_DELETE)c Ft(means)j(to)h(insert)f(some)h(text,)h(and)d
-Fs(UNDO_INSERT)e Ft(means)k(to)g(delete)150 997 y(some)d(text.)41
-b(That)27 b(is,)i(the)e(undo)g(co)s(de)h(tells)g(what)g(to)g(undo,)f
-(not)h(ho)m(w)g(to)g(undo)e(it.)41 b Fs(UNDO_BEGIN)25
-b Ft(and)150 1106 y Fs(UNDO_END)j Ft(are)j(tags)g(added)f(b)m(y)g
-Fs(rl_begin_undo_group\(\))25 b Ft(and)30 b Fs(rl_end_undo_group\(\))p
-Ft(.)3350 1279 y([F)-8 b(unction])-3599 b Fh(int)53 b
-(rl_begin_undo_group)e Fg(\()p Ff(v)m(oid)p Fg(\))390
-1388 y Ft(Begins)32 b(sa)m(ving)g(undo)d(information)j(in)e(a)i(group)e
-(construct.)43 b(The)30 b(undo)g(information)h(usually)390
-1498 y(comes)42 b(from)f(calls)i(to)f Fs(rl_insert_text\(\))37
-b Ft(and)k Fs(rl_delete_text\(\))p Ft(,)f(but)h(could)h(b)s(e)f(the)390
-1608 y(result)30 b(of)h(calls)g(to)g Fs(rl_add_undo\(\))p
-Ft(.)3350 1780 y([F)-8 b(unction])-3599 b Fh(int)53 b
-(rl_end_undo_group)e Fg(\()p Ff(v)m(oid)p Fg(\))390 1890
-y Ft(Closes)29 b(the)h(curren)m(t)e(undo)g(group)h(started)g(with)g
-Fs(rl_begin_undo_group)c(\(\))p Ft(.)39 b(There)29 b(should)390
-1999 y(b)s(e)h(one)g(call)i(to)f Fs(rl_end_undo_group\(\))25
-b Ft(for)30 b(eac)m(h)i(call)g(to)f Fs(rl_begin_undo_group\(\))p
-Ft(.)3350 2172 y([F)-8 b(unction])-3599 b Fh(void)54
-b(rl_add_undo)48 b Fg(\()p Ff(en)m(um)35 b(undo)p 1558
-2172 30 5 v 45 w(co)s(de)e(what,)g(in)m(t)g(start,)g(in)m(t)g(end,)h(c)
-m(har)565 2281 y(*text)p Fg(\))390 2391 y Ft(Remem)m(b)s(er)g(ho)m(w)g
-(to)h(undo)d(an)i(ev)m(en)m(t)i(\(according)f(to)g Fj(what)r
-Ft(\).)52 b(The)33 b(a\013ected)j(text)f(runs)d(from)390
-2500 y Fj(start)h Ft(to)e Fj(end)p Ft(,)f(and)g(encompasses)h
-Fj(text)p Ft(.)3350 2673 y([F)-8 b(unction])-3599 b Fh(void)54
+m(ou)h(automatically)-8 b(.)275 1979 y(If)20 b(y)m(ou)g(do)h(m)m
+(ultiple)g(insertions)f(or)h(m)m(ultiple)g(deletions,)j(or)c(an)m(y)h
+(com)m(bination)h(of)e(these)h(op)s(erations,)150 2088
+y(y)m(ou)38 b(should)f(group)h(them)g(together)h(in)m(to)g(one)f(op)s
+(eration.)64 b(This)37 b(is)h(done)g(with)g Fs(rl_begin_undo_)150
+2198 y(group\(\))28 b Ft(and)i Fs(rl_end_undo_group\(\))p
+Ft(.)275 2333 y(The)f(t)m(yp)s(es)i(of)f(ev)m(en)m(ts)i(that)f(can)g(b)
+s(e)e(undone)h(are:)390 2446 y Fe(enum)40 b(undo_code)h({)f
+(UNDO_DELETE,)i(UNDO_INSERT,)g(UNDO_BEGIN,)g(UNDO_END)f(};)275
+2581 y Ft(Notice)32 b(that)f Fs(UNDO_DELETE)c Ft(means)j(to)h(insert)f
+(some)h(text,)h(and)d Fs(UNDO_INSERT)e Ft(means)k(to)g(delete)150
+2691 y(some)d(text.)41 b(That)27 b(is,)i(the)e(undo)g(co)s(de)h(tells)g
+(what)g(to)g(undo,)f(not)h(ho)m(w)g(to)g(undo)e(it.)41
+b Fs(UNDO_BEGIN)25 b Ft(and)150 2800 y Fs(UNDO_END)j
+Ft(are)j(tags)g(added)f(b)m(y)g Fs(rl_begin_undo_group\(\))25
+b Ft(and)30 b Fs(rl_end_undo_group\(\))p Ft(.)3350 2986
+y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_begin_undo_group)e
+Fg(\()p Ff(v)m(oid)p Fg(\))390 3096 y Ft(Begins)32 b(sa)m(ving)g(undo)d
+(information)j(in)e(a)i(group)e(construct.)43 b(The)30
+b(undo)g(information)h(usually)390 3205 y(comes)42 b(from)f(calls)i(to)
+f Fs(rl_insert_text\(\))37 b Ft(and)k Fs(rl_delete_text\(\))p
+Ft(,)f(but)h(could)h(b)s(e)f(the)390 3315 y(result)30
+b(of)h(calls)g(to)g Fs(rl_add_undo\(\))p Ft(.)3350 3501
+y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_end_undo_group)e
+Fg(\()p Ff(v)m(oid)p Fg(\))390 3610 y Ft(Closes)29 b(the)h(curren)m(t)e
+(undo)g(group)h(started)g(with)g Fs(rl_begin_undo_group)c(\(\))p
+Ft(.)39 b(There)29 b(should)390 3720 y(b)s(e)h(one)g(call)i(to)f
+Fs(rl_end_undo_group\(\))25 b Ft(for)30 b(eac)m(h)i(call)g(to)f
+Fs(rl_begin_undo_group\(\))p Ft(.)3350 3906 y([F)-8 b(unction])-3599
+b Fh(void)54 b(rl_add_undo)48 b Fg(\()p Ff(en)m(um)35
+b(undo)p 1558 3906 V 45 w(co)s(de)e(what,)g(in)m(t)g(start,)g(in)m(t)g
+(end,)h(c)m(har)565 4015 y(*text)p Fg(\))390 4125 y Ft(Remem)m(b)s(er)g
+(ho)m(w)g(to)h(undo)d(an)i(ev)m(en)m(t)i(\(according)f(to)g
+Fj(what)r Ft(\).)52 b(The)33 b(a\013ected)j(text)f(runs)d(from)390
+4235 y Fj(start)h Ft(to)e Fj(end)p Ft(,)f(and)g(encompasses)h
+Fj(text)p Ft(.)3350 4420 y([F)-8 b(unction])-3599 b Fh(void)54
b(rl_free_undo_list)c Fg(\()p Ff(v)m(oid)p Fg(\))390
-2783 y Ft(F)-8 b(ree)31 b(the)g(existing)g(undo)f(list.)3350
-2955 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_do_undo)c
-Fg(\()p Ff(v)m(oid)p Fg(\))390 3065 y Ft(Undo)22 b(the)h(\014rst)g
+4530 y Ft(F)-8 b(ree)31 b(the)g(existing)g(undo)f(list.)3350
+4716 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_do_undo)c
+Fg(\()p Ff(v)m(oid)p Fg(\))390 4825 y Ft(Undo)22 b(the)h(\014rst)g
(thing)f(on)h(the)g(undo)f(list.)39 b(Returns)22 b Fs(0)g
Ft(if)h(there)g(w)m(as)g(nothing)g(to)h(undo,)f(non-zero)390
-3174 y(if)30 b(something)h(w)m(as)g(undone.)275 3347
+4935 y(if)30 b(something)h(w)m(as)g(undone.)275 5121
y(Finally)-8 b(,)32 b(if)f(y)m(ou)h(neither)f(insert)g(nor)f(delete)j
(text,)f(but)f(directly)g(mo)s(dify)g(the)g(existing)h(text)g(\(e.g.,)
-150 3456 y(c)m(hange)40 b(its)f(case\),)j(call)e Fs(rl_modifying\(\))35
+150 5230 y(c)m(hange)40 b(its)f(case\),)j(call)e Fs(rl_modifying\(\))35
b Ft(once,)42 b(just)c(b)s(efore)g(y)m(ou)h(mo)s(dify)f(the)h(text.)67
-b(Y)-8 b(ou)39 b(m)m(ust)150 3566 y(supply)29 b(the)h(indices)h(of)f
+b(Y)-8 b(ou)39 b(m)m(ust)150 5340 y(supply)29 b(the)h(indices)h(of)f
(the)h(text)g(range)g(that)g(y)m(ou)g(are)g(going)g(to)g(mo)s(dify)-8
-b(.)3350 3738 y([F)g(unction])-3599 b Fh(int)53 b(rl_modifying)c
+b(.)p eop end
+%%Page: 40 44
+TeXDict begin 40 43 bop 150 -116 a Ft(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 Fh(int)53 b(rl_modifying)c
Fg(\()p Ff(in)m(t)34 b(start,)e(in)m(t)i(end)p Fg(\))390
-3848 y Ft(T)-8 b(ell)41 b(Readline)g(to)g(sa)m(v)m(e)g(the)g(text)g(b)s
+408 y Ft(T)-8 b(ell)41 b(Readline)g(to)g(sa)m(v)m(e)g(the)g(text)g(b)s
(et)m(w)m(een)g Fj(start)i Ft(and)c Fj(end)k Ft(as)e(a)f(single)h(undo)
-e(unit.)70 b(It)40 b(is)390 3957 y(assumed)30 b(that)h(y)m(ou)f(will)h
-(subsequen)m(tly)f(mo)s(dify)f(that)i(text.)150 4149
-y Fi(2.4.6)63 b(Redispla)m(y)3350 4338 y Ft([F)-8 b(unction])-3599
+e(unit.)70 b(It)40 b(is)390 518 y(assumed)30 b(that)h(y)m(ou)f(will)h
+(subsequen)m(tly)f(mo)s(dify)f(that)i(text.)150 712 y
+Fi(2.4.6)63 b(Redispla)m(y)3350 903 y Ft([F)-8 b(unction])-3599
b Fh(void)54 b(rl_redisplay)49 b Fg(\()p Ff(v)m(oid)p
-Fg(\))390 4447 y Ft(Change)38 b(what's)f(displa)m(y)m(ed)i(on)e(the)h
+Fg(\))390 1013 y Ft(Change)38 b(what's)f(displa)m(y)m(ed)i(on)e(the)h
(screen)g(to)h(re\015ect)f(the)g(curren)m(t)g(con)m(ten)m(ts)h(of)f
-Fs(rl_line_)390 4557 y(buffer)p Ft(.)3350 4729 y([F)-8
+Fs(rl_line_)390 1123 y(buffer)p Ft(.)3350 1299 y([F)-8
b(unction])-3599 b Fh(int)53 b(rl_forced_update_disp)q(lay)f
-Fg(\()p Ff(v)m(oid)p Fg(\))390 4839 y Ft(F)-8 b(orce)41
+Fg(\()p Ff(v)m(oid)p Fg(\))390 1409 y Ft(F)-8 b(orce)41
b(the)f(line)g(to)h(b)s(e)e(up)s(dated)f(and)h(redispla)m(y)m(ed,)k
-(whether)c(or)g(not)h(Readline)h(thinks)e(the)390 4948
-y(screen)30 b(displa)m(y)h(is)f(correct.)3350 5121 y([F)-8
+(whether)c(or)g(not)h(Readline)h(thinks)e(the)390 1518
+y(screen)30 b(displa)m(y)h(is)f(correct.)3350 1695 y([F)-8
b(unction])-3599 b Fh(int)53 b(rl_on_new_line)d Fg(\()p
-Ff(v)m(oid)p Fg(\))390 5230 y Ft(T)-8 b(ell)31 b(the)f(up)s(date)f
+Ff(v)m(oid)p Fg(\))390 1804 y Ft(T)-8 b(ell)31 b(the)f(up)s(date)f
(functions)g(that)i(w)m(e)f(ha)m(v)m(e)h(mo)m(v)m(ed)g(on)m(to)g(a)f
-(new)f(\(empt)m(y\))i(line,)g(usually)e(after)390 5340
-y(outputting)i(a)f(newline.)p eop end
-%%Page: 39 43
-TeXDict begin 39 42 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(39)3350
-299 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_on_new_line_with_p)q
-(romp)q(t)f Fg(\()p Ff(v)m(oid)p Fg(\))390 408 y Ft(T)-8
-b(ell)25 b(the)f(up)s(date)f(functions)h(that)h(w)m(e)f(ha)m(v)m(e)h
-(mo)m(v)m(ed)g(on)m(to)h(a)e(new)g(line,)i(with)d Fj(rl)p
-3106 408 28 4 v 40 w(prompt)i Ft(already)390 518 y(displa)m(y)m(ed.)41
-b(This)28 b(could)g(b)s(e)g(used)g(b)m(y)g(applications)i(that)f(w)m
-(an)m(t)h(to)f(output)f(the)h(prompt)f(string)390 628
-y(themselv)m(es,)h(but)e(still)h(need)g(Readline)g(to)g(kno)m(w)f(the)h
-(prompt)e(string)h(length)h(for)f(redispla)m(y)-8 b(.)41
-b(It)390 737 y(should)29 b(b)s(e)h(used)g(after)h(setting)g
-Fj(rl)p 1590 737 V 40 w(already)p 1920 737 V 41 w(prompted)p
-Ft(.)3350 920 y([F)-8 b(unction])-3599 b Fh(int)53 b
-(rl_clear_visible_line)f Fg(\()p Ff(v)m(oid)p Fg(\))390
-1029 y Ft(Clear)31 b(the)f(screen)h(lines)f(corresp)s(onding)g(to)h
-(the)f(curren)m(t)g(line's)h(con)m(ten)m(ts.)3350 1212
-y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_reset_line_state)e
-Fg(\()p Ff(v)m(oid)p Fg(\))390 1322 y Ft(Reset)36 b(the)e(displa)m(y)h
+(new)f(\(empt)m(y\))i(line,)g(usually)e(after)390 1914
+y(outputting)i(a)f(newline.)3350 2090 y([F)-8 b(unction])-3599
+b Fh(int)53 b(rl_on_new_line_with_p)q(romp)q(t)f Fg(\()p
+Ff(v)m(oid)p Fg(\))390 2200 y Ft(T)-8 b(ell)25 b(the)f(up)s(date)f
+(functions)h(that)h(w)m(e)f(ha)m(v)m(e)h(mo)m(v)m(ed)g(on)m(to)h(a)e
+(new)g(line,)i(with)d Fj(rl)p 3106 2200 28 4 v 40 w(prompt)i
+Ft(already)390 2309 y(displa)m(y)m(ed.)41 b(This)28 b(could)g(b)s(e)g
+(used)g(b)m(y)g(applications)i(that)f(w)m(an)m(t)h(to)f(output)f(the)h
+(prompt)f(string)390 2419 y(themselv)m(es,)h(but)e(still)h(need)g
+(Readline)g(to)g(kno)m(w)f(the)h(prompt)e(string)h(length)h(for)f
+(redispla)m(y)-8 b(.)41 b(It)390 2528 y(should)29 b(b)s(e)h(used)g
+(after)h(setting)g Fj(rl)p 1590 2528 V 40 w(already)p
+1920 2528 V 41 w(prompted)p Ft(.)3350 2705 y([F)-8 b(unction])-3599
+b Fh(int)53 b(rl_clear_visible_line)f Fg(\()p Ff(v)m(oid)p
+Fg(\))390 2814 y Ft(Clear)31 b(the)f(screen)h(lines)f(corresp)s(onding)
+g(to)h(the)f(curren)m(t)g(line's)h(con)m(ten)m(ts.)3350
+2991 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_reset_line_state)e
+Fg(\()p Ff(v)m(oid)p Fg(\))390 3100 y Ft(Reset)36 b(the)e(displa)m(y)h
(state)h(to)g(a)f(clean)g(state)h(and)e(redispla)m(y)h(the)g(curren)m
-(t)g(line)g(starting)g(on)g(a)390 1431 y(new)30 b(line.)3350
-1614 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_crlf)48
-b Fg(\()p Ff(v)m(oid)p Fg(\))390 1724 y Ft(Mo)m(v)m(e)32
+(t)g(line)g(starting)g(on)g(a)390 3210 y(new)30 b(line.)3350
+3386 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_crlf)48
+b Fg(\()p Ff(v)m(oid)p Fg(\))390 3496 y Ft(Mo)m(v)m(e)32
b(the)f(cursor)f(to)h(the)f(start)h(of)g(the)f(next)h(screen)f(line.)
-3350 1906 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_show_char)c
-Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 2016 y Ft(Displa)m(y)g(c)m
+3350 3672 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_show_char)c
+Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 3782 y Ft(Displa)m(y)g(c)m
(haracter)g Fj(c)k Ft(on)32 b Fs(rl_outstream)p Ft(.)44
b(If)32 b(Readline)h(has)g(not)f(b)s(een)g(set)h(to)g(displa)m(y)g
-(meta)390 2125 y(c)m(haracters)27 b(directly)-8 b(,)29
+(meta)390 3891 y(c)m(haracters)27 b(directly)-8 b(,)29
b(this)c(will)i(con)m(v)m(ert)g(meta)g(c)m(haracters)h(to)e(a)h
-(meta-pre\014xed)f(k)m(ey)g(sequence.)390 2235 y(This)k(is)g(in)m
+(meta-pre\014xed)f(k)m(ey)g(sequence.)390 4001 y(This)k(is)g(in)m
(tended)g(for)g(use)g(b)m(y)h(applications)g(whic)m(h)f(wish)g(to)h(do)
-f(their)h(o)m(wn)f(redispla)m(y)-8 b(.)3350 2418 y([F)g(unction])-3599
+f(their)h(o)m(wn)f(redispla)m(y)-8 b(.)3350 4177 y([F)g(unction])-3599
b Fh(int)53 b(rl_message)c Fg(\()p Ff(const)34 b(c)m(har)g(*,)k(.)24
-b(.)g(.)12 b Fg(\))390 2527 y Ft(The)20 b(argumen)m(ts)h(are)g(a)g
+b(.)g(.)12 b Fg(\))390 4287 y Ft(The)20 b(argumen)m(ts)h(are)g(a)g
(format)g(string)g(as)f(w)m(ould)h(b)s(e)f(supplied)f(to)j
-Fs(printf)p Ft(,)f(p)s(ossibly)e(con)m(taining)390 2637
+Fs(printf)p Ft(,)f(p)s(ossibly)e(con)m(taining)390 4396
y(con)m(v)m(ersion)45 b(sp)s(eci\014cations)g(suc)m(h)f(as)g(`)p
Fs(\045d)p Ft(',)k(and)c(an)m(y)g(additional)h(argumen)m(ts)g
-(necessary)f(to)390 2746 y(satisfy)e(the)f(con)m(v)m(ersion)i(sp)s
+(necessary)f(to)390 4506 y(satisfy)e(the)f(con)m(v)m(ersion)i(sp)s
(eci\014cations.)74 b(The)41 b(resulting)h(string)f(is)g(displa)m(y)m
-(ed)h(in)f(the)h Fj(ec)m(ho)390 2856 y(area)p Ft(.)63
+(ed)h(in)f(the)h Fj(ec)m(ho)390 4616 y(area)p Ft(.)63
b(The)37 b(ec)m(ho)i(area)f(is)g(also)g(used)f(to)h(displa)m(y)g(n)m
(umeric)f(argumen)m(ts)h(and)f(searc)m(h)h(strings.)390
-2966 y(Y)-8 b(ou)34 b(should)e(call)j Fs(rl_save_prompt)29
+4725 y(Y)-8 b(ou)34 b(should)e(call)j Fs(rl_save_prompt)29
b Ft(to)34 b(sa)m(v)m(e)h(the)f(prompt)e(information)i(b)s(efore)f
-(calling)i(this)390 3075 y(function.)3350 3258 y([F)-8
+(calling)i(this)390 4835 y(function.)3350 5011 y([F)-8
b(unction])-3599 b Fh(int)53 b(rl_clear_message)e Fg(\()p
-Ff(v)m(oid)p Fg(\))390 3367 y Ft(Clear)29 b(the)g(message)h(in)f(the)g
+Ff(v)m(oid)p Fg(\))390 5121 y Ft(Clear)29 b(the)g(message)h(in)f(the)g
(ec)m(ho)h(area.)41 b(If)29 b(the)g(prompt)f(w)m(as)h(sa)m(v)m(ed)h
-(with)f(a)g(call)i(to)e Fs(rl_save_)390 3477 y(prompt)38
+(with)f(a)g(call)i(to)e Fs(rl_save_)390 5230 y(prompt)38
b Ft(b)s(efore)h(the)g(last)h(call)h(to)f Fs(rl_message)p
Ft(,)f(call)i Fs(rl_restore_prompt)34 b Ft(b)s(efore)39
-b(calling)390 3587 y(this)30 b(function.)3350 3769 y([F)-8
-b(unction])-3599 b Fh(void)54 b(rl_save_prompt)49 b Fg(\()p
-Ff(v)m(oid)p Fg(\))390 3879 y Ft(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 3988 y(message)31 b(in)g(the)f(message)i
-(area)f(with)f Fs(rl_message\(\))p Ft(.)3350 4171 y([F)-8
-b(unction])-3599 b Fh(void)54 b(rl_restore_prompt)c Fg(\()p
-Ff(v)m(oid)p Fg(\))390 4281 y Ft(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
-(most)h(recen)m(t)h(call)g(to)390 4390 y Fs(rl_save_prompt)p
-Ft(.)69 b(if)41 b Fs(rl_save_prompt)d Ft(w)m(as)j(called)i(to)f(sa)m(v)
-m(e)h(the)e(prompt)f(b)s(efore)h(a)h(call)390 4500 y(to)37
-b Fs(rl_message)p Ft(,)f(this)h(function)f(should)g(b)s(e)g(called)i(b)
-s(efore)f(the)g(corresp)s(onding)e(call)j(to)g Fs(rl_)390
-4609 y(clear_message)p Ft(.)3350 4792 y([F)-8 b(unction])-3599
-b Fh(int)53 b(rl_expand_prompt)e Fg(\()p Ff(c)m(har)34
-b(*prompt)p Fg(\))390 4902 y Ft(Expand)41 b(an)m(y)j(sp)s(ecial)f(c)m
-(haracter)h(sequences)f(in)g Fj(prompt)g Ft(and)f(set)i(up)d(the)i(lo)s
-(cal)h(Readline)390 5011 y(prompt)35 b(redispla)m(y)h(v)-5
-b(ariables.)57 b(This)35 b(function)h(is)g(called)h(b)m(y)e
-Fs(readline\(\))p Ft(.)55 b(It)35 b(ma)m(y)i(also)g(b)s(e)390
-5121 y(called)22 b(to)g(expand)f(the)g(primary)f(prompt)g(if)i(the)f
-Fs(rl_on_new_line_with_prom)o(pt\()o(\))15 b Ft(function)390
-5230 y(or)25 b Fs(rl_already_prompted)c Ft(v)-5 b(ariable)26
+b(calling)390 5340 y(this)30 b(function.)p eop end
+%%Page: 41 45
+TeXDict begin 41 44 bop 150 -116 a Ft(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 Fh(void)54 b(rl_save_prompt)49
+b Fg(\()p Ff(v)m(oid)p Fg(\))390 408 y Ft(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 518
+y(message)31 b(in)g(the)f(message)i(area)f(with)f Fs(rl_message\(\))p
+Ft(.)3350 722 y([F)-8 b(unction])-3599 b Fh(void)54 b
+(rl_restore_prompt)c Fg(\()p Ff(v)m(oid)p Fg(\))390 832
+y Ft(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(most)h(recen)m(t)h(call)g(to)390
+941 y Fs(rl_save_prompt)p Ft(.)69 b(if)41 b Fs(rl_save_prompt)d
+Ft(w)m(as)j(called)i(to)f(sa)m(v)m(e)h(the)e(prompt)f(b)s(efore)h(a)h
+(call)390 1051 y(to)37 b Fs(rl_message)p Ft(,)f(this)h(function)f
+(should)g(b)s(e)g(called)i(b)s(efore)f(the)g(corresp)s(onding)e(call)j
+(to)g Fs(rl_)390 1161 y(clear_message)p Ft(.)3350 1365
+y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_expand_prompt)e
+Fg(\()p Ff(c)m(har)34 b(*prompt)p Fg(\))390 1474 y Ft(Expand)41
+b(an)m(y)j(sp)s(ecial)f(c)m(haracter)h(sequences)f(in)g
+Fj(prompt)g Ft(and)f(set)i(up)d(the)i(lo)s(cal)h(Readline)390
+1584 y(prompt)35 b(redispla)m(y)h(v)-5 b(ariables.)57
+b(This)35 b(function)h(is)g(called)h(b)m(y)e Fs(readline\(\))p
+Ft(.)55 b(It)35 b(ma)m(y)i(also)g(b)s(e)390 1694 y(called)22
+b(to)g(expand)f(the)g(primary)f(prompt)g(if)i(the)f Fs
+(rl_on_new_line_with_prom)o(pt\()o(\))15 b Ft(function)390
+1803 y(or)25 b Fs(rl_already_prompted)c Ft(v)-5 b(ariable)26
b(is)f(used.)39 b(It)25 b(returns)f(the)i(n)m(um)m(b)s(er)e(of)i
-(visible)f(c)m(haracters)390 5340 y(on)34 b(the)g(last)g(line)g(of)g
+(visible)f(c)m(haracters)390 1913 y(on)34 b(the)g(last)g(line)g(of)g
(the)g(\(p)s(ossibly)f(m)m(ulti-line\))j(prompt.)50 b(Applications)34
-b(ma)m(y)h(indicate)f(that)p eop end
-%%Page: 40 44
-TeXDict begin 40 43 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(40)390
-299 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
-408 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 Fs(RL_PROMPT_)390
-518 y(START_IGNORE)29 b Ft(and)j Fs(RL_PROMPT_END_IGNORE)26
-b Ft(\(declared)33 b(in)f Fs(readline.h)p Ft(\).)44 b(This)32
-b(ma)m(y)h(b)s(e)390 628 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
-824 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_set_prompt)d
-Fg(\()p Ff(const)34 b(c)m(har)g(*prompt)p Fg(\))390 934
+b(ma)m(y)h(indicate)f(that)390 2022 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 2132 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 Fs(RL_PROMPT_)390 2242 y(START_IGNORE)34
+b Ft(and)j Fs(RL_PROMPT_END_IGNORE)32 b Ft(\(declared)39
+b(in)e Fs(readline.h)e Ft(as)j(`)p Fs(\\001)p Ft(')f(and)390
+2351 y(`)p Fs(\\002)p Ft(',)31 b(resp)s(ectiv)m(ely\).)46
+b(This)31 b(ma)m(y)h(b)s(e)f(used)f(to)j(em)m(b)s(ed)e(terminal-sp)s
+(eci\014c)h(escap)s(e)g(sequences)390 2461 y(in)e(prompts.)3350
+2665 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_set_prompt)d
+Fg(\()p Ff(const)34 b(c)m(har)g(*prompt)p Fg(\))390 2775
y Ft(Mak)m(e)28 b(Readline)g(use)f Fj(prompt)h Ft(for)e(subsequen)m(t)h
(redispla)m(y)-8 b(.)40 b(This)26 b(calls)i Fs(rl_expand_prompt\(\))390
-1043 y Ft(to)j(expand)f(the)g(prompt)g(and)g(sets)g Fs(rl_prompt)e
-Ft(to)j(the)g(result.)150 1249 y Fi(2.4.7)63 b(Mo)s(difying)43
-b(T)-10 b(ext)3350 1452 y Ft([F)i(unction])-3599 b Fh(int)53
+2884 y Ft(to)j(expand)f(the)g(prompt)g(and)g(sets)g Fs(rl_prompt)e
+Ft(to)j(the)g(result.)150 3093 y Fi(2.4.7)63 b(Mo)s(difying)43
+b(T)-10 b(ext)3350 3300 y Ft([F)i(unction])-3599 b Fh(int)53
b(rl_insert_text)d Fg(\()p Ff(const)34 b(c)m(har)g(*text)p
-Fg(\))390 1561 y Ft(Insert)d Fj(text)k Ft(in)m(to)d(the)g(line)g(at)g
+Fg(\))390 3410 y Ft(Insert)d Fj(text)k Ft(in)m(to)d(the)g(line)g(at)g
(the)g(curren)m(t)f(cursor)g(p)s(osition.)45 b(Returns)30
-b(the)i(n)m(um)m(b)s(er)f(of)g(c)m(har-)390 1671 y(acters)g(inserted.)
-3350 1867 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_delete_text)d
+b(the)i(n)m(um)m(b)s(er)f(of)g(c)m(har-)390 3519 y(acters)g(inserted.)
+3350 3723 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_delete_text)d
Fg(\()p Ff(in)m(t)33 b(start,)g(in)m(t)g(end)p Fg(\))390
-1977 y Ft(Delete)40 b(the)e(text)h(b)s(et)m(w)m(een)f
+3833 y Ft(Delete)40 b(the)e(text)h(b)s(et)m(w)m(een)f
Fj(start)i Ft(and)d Fj(end)k Ft(in)c(the)h(curren)m(t)g(line.)63
-b(Returns)36 b(the)i(n)m(um)m(b)s(er)f(of)390 2086 y(c)m(haracters)32
-b(deleted.)3350 2283 y([F)-8 b(unction])-3599 b Fh(char)54
+b(Returns)36 b(the)i(n)m(um)m(b)s(er)f(of)390 3943 y(c)m(haracters)32
+b(deleted.)3350 4147 y([F)-8 b(unction])-3599 b Fh(char)54
b(*)e(rl_copy_text)d Fg(\()p Ff(in)m(t)34 b(start,)e(in)m(t)h(end)p
-Fg(\))390 2392 y Ft(Return)d(a)g(cop)m(y)h(of)g(the)g(text)g(b)s(et)m
+Fg(\))390 4256 y Ft(Return)d(a)g(cop)m(y)h(of)g(the)g(text)g(b)s(et)m
(w)m(een)g Fj(start)i Ft(and)d Fj(end)j Ft(in)d(the)h(curren)m(t)f
-(line.)3350 2589 y([F)-8 b(unction])-3599 b Fh(int)53
+(line.)3350 4461 y([F)-8 b(unction])-3599 b Fh(int)53
b(rl_kill_text)c Fg(\()p Ff(in)m(t)34 b(start,)e(in)m(t)i(end)p
-Fg(\))390 2698 y Ft(Cop)m(y)g(the)g(text)i(b)s(et)m(w)m(een)e
+Fg(\))390 4570 y Ft(Cop)m(y)g(the)g(text)i(b)s(et)m(w)m(een)e
Fj(start)j Ft(and)d Fj(end)j Ft(in)d(the)g(curren)m(t)g(line)g(to)h
-(the)f(kill)h(ring,)g(app)s(ending)390 2808 y(or)f(prep)s(ending)e(to)j
+(the)f(kill)h(ring,)g(app)s(ending)390 4680 y(or)f(prep)s(ending)e(to)j
(the)f(last)h(kill)f(if)g(the)g(last)h(command)f(w)m(as)g(a)h(kill)f
-(command.)51 b(The)34 b(text)h(is)390 2918 y(deleted.)51
+(command.)51 b(The)34 b(text)h(is)390 4789 y(deleted.)51
b(If)33 b Fj(start)j Ft(is)e(less)g(than)f Fj(end)p Ft(,)h(the)g(text)g
(is)g(app)s(ended,)f(otherwise)h(prep)s(ended.)48 b(If)33
-b(the)390 3027 y(last)e(command)f(w)m(as)h(not)g(a)f(kill,)i(a)f(new)e
-(kill)i(ring)g(slot)g(is)f(used.)3350 3224 y([F)-8 b(unction])-3599
+b(the)390 4899 y(last)e(command)f(w)m(as)h(not)g(a)f(kill,)i(a)f(new)e
+(kill)i(ring)g(slot)g(is)f(used.)3350 5103 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_push_macro_input)e Fg(\()p Ff(c)m(har)35
-b(*macro)p Fg(\))390 3333 y Ft(Cause)28 b Fj(macro)33
+b(*macro)p Fg(\))390 5213 y Ft(Cause)28 b Fj(macro)33
b Ft(to)c(b)s(e)f(inserted)g(in)m(to)h(the)g(line,)g(as)f(if)h(it)f
(had)g(b)s(een)g(in)m(v)m(ok)m(ed)h(b)m(y)f(a)h(k)m(ey)g(b)s(ound)d(to)
-390 3443 y(a)31 b(macro.)41 b(Not)31 b(esp)s(ecially)h(useful;)e(use)g
-Fs(rl_insert_text\(\))c Ft(instead.)150 3648 y Fi(2.4.8)63
-b(Character)39 b(Input)3350 3851 y Ft([F)-8 b(unction])-3599
-b Fh(int)53 b(rl_read_key)c Fg(\()p Ff(v)m(oid)p Fg(\))390
-3961 y Ft(Return)29 b(the)g(next)h(c)m(haracter)h(a)m(v)-5
-b(ailable)32 b(from)d(Readline's)h(curren)m(t)f(input)g(stream.)41
-b(This)28 b(han-)390 4070 y(dles)e(input)g(inserted)g(in)m(to)i(the)e
-(input)g(stream)h(via)g Fj(rl)p 2226 4070 28 4 v 40 w(p)s(ending)p
-2583 4070 V 38 w(input)h Ft(\(see)f(Section)h(2.3)f([Read-)390
-4180 y(line)40 b(V)-8 b(ariables],)43 b(page)d(28\))g(and)f
+390 5322 y(a)31 b(macro.)41 b(Not)31 b(esp)s(ecially)h(useful;)e(use)g
+Fs(rl_insert_text\(\))c Ft(instead.)p eop end
+%%Page: 42 46
+TeXDict begin 42 45 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(42)150
+299 y Fi(2.4.8)63 b(Character)39 b(Input)3350 505 y Ft([F)-8
+b(unction])-3599 b Fh(int)53 b(rl_read_key)c Fg(\()p
+Ff(v)m(oid)p Fg(\))390 615 y Ft(Return)29 b(the)g(next)h(c)m(haracter)h
+(a)m(v)-5 b(ailable)32 b(from)d(Readline's)h(curren)m(t)f(input)g
+(stream.)41 b(This)28 b(han-)390 724 y(dles)e(input)g(inserted)g(in)m
+(to)i(the)e(input)g(stream)h(via)g Fj(rl)p 2226 724 28
+4 v 40 w(p)s(ending)p 2583 724 V 38 w(input)h Ft(\(see)f(Section)h(2.3)
+f([Read-)390 834 y(line)40 b(V)-8 b(ariables],)43 b(page)d(29\))g(and)f
Fs(rl_stuff_char\(\))p Ft(,)f(macros,)k(and)d(c)m(haracters)h(read)f
-(from)390 4289 y(the)34 b(k)m(eyb)s(oard.)52 b(While)35
+(from)390 943 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 4399 y(to)d(the)g Fs(rl_event_hook)26
-b Ft(v)-5 b(ariable.)3350 4596 y([F)d(unction])-3599
+(function)g(assigned)390 1053 y(to)d(the)g Fs(rl_event_hook)26
+b Ft(v)-5 b(ariable.)3350 1256 y([F)d(unction])-3599
b Fh(int)53 b(rl_getc)48 b Fg(\()p Ff(FILE)33 b(*stream)p
-Fg(\))390 4705 y Ft(Return)20 b(the)i(next)f(c)m(haracter)i(a)m(v)-5
+Fg(\))390 1365 y Ft(Return)20 b(the)i(next)f(c)m(haracter)i(a)m(v)-5
b(ailable)24 b(from)c Fj(stream)p Ft(,)k(whic)m(h)d(is)g(assumed)g(to)h
-(b)s(e)e(the)i(k)m(eyb)s(oard.)3350 4902 y([F)-8 b(unction])-3599
+(b)s(e)e(the)i(k)m(eyb)s(oard.)3350 1568 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_stuff_char)d Fg(\()p Ff(in)m(t)33 b(c)p
-Fg(\))390 5011 y Ft(Insert)f Fj(c)39 b Ft(in)m(to)34
+Fg(\))390 1678 y Ft(Insert)f Fj(c)39 b Ft(in)m(to)34
b(the)f(Readline)g(input)f(stream.)49 b(It)33 b(will)g(b)s(e)f
Fs(")p Ft(read)p Fs(")g Ft(b)s(efore)h(Readline)g(attempts)390
-5121 y(to)27 b(read)g(c)m(haracters)h(from)f(the)g(terminal)g(with)f
+1787 y(to)27 b(read)g(c)m(haracters)h(from)f(the)g(terminal)g(with)f
Fs(rl_read_key\(\))p Ft(.)36 b(Up)27 b(to)g(512)h(c)m(haracters)g(ma)m
-(y)390 5230 y(b)s(e)i(pushed)f(bac)m(k.)42 b Fs(rl_stuff_char)27
+(y)390 1897 y(b)s(e)i(pushed)f(bac)m(k.)42 b Fs(rl_stuff_char)27
b Ft(returns)i(1)i(if)f(the)h(c)m(haracter)h(w)m(as)f(successfully)g
-(inserted;)390 5340 y(0)g(otherwise.)p eop end
-%%Page: 41 45
-TeXDict begin 41 44 bop 150 -116 a Ft(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 Fh(int)53 b(rl_execute_next)d
-Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 408 y Ft(Mak)m(e)j
-Fj(c)42 b Ft(b)s(e)35 b(the)h(next)f(command)h(to)g(b)s(e)f(executed)i
-(when)d Fs(rl_read_key\(\))e Ft(is)k(called.)58 b(This)390
-518 y(sets)31 b Fj(rl)p 635 518 28 4 v 40 w(p)s(ending)p
-992 518 V 38 w(input)p Ft(.)3350 680 y([F)-8 b(unction])-3599
+(inserted;)390 2007 y(0)g(otherwise.)3350 2209 y([F)-8
+b(unction])-3599 b Fh(int)53 b(rl_execute_next)d Fg(\()p
+Ff(in)m(t)34 b(c)p Fg(\))390 2319 y Ft(Mak)m(e)j Fj(c)42
+b Ft(b)s(e)35 b(the)h(next)f(command)h(to)g(b)s(e)f(executed)i(when)d
+Fs(rl_read_key\(\))e Ft(is)k(called.)58 b(This)390 2429
+y(sets)31 b Fj(rl)p 635 2429 V 40 w(p)s(ending)p 992
+2429 V 38 w(input)p Ft(.)3350 2631 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_clear_pending_inpu)q(t)e Fg(\()p Ff(v)m(oid)p
-Fg(\))390 789 y Ft(Unset)42 b Fj(rl)p 729 789 V 40 w(p)s(ending)p
-1086 789 V 38 w(input)p Ft(,)i(e\013ectiv)m(ely)h(negating)e(the)f
-(e\013ect)h(of)f(an)m(y)g(previous)f(call)i(to)g Fs(rl_)390
-899 y(execute_next\(\))p Ft(.)59 b(This)36 b(w)m(orks)i(only)g(if)f
-(the)h(p)s(ending)e(input)h(has)g(not)h(already)g(b)s(een)f(read)390
-1008 y(with)30 b Fs(rl_read_key\(\))p Ft(.)3350 1170
-y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_set_keyboard_input)q(_tim)q
-(eou)q(t)e Fg(\()p Ff(in)m(t)34 b(u)p Fg(\))390 1280
-y Ft(While)41 b(w)m(aiting)g(for)f(k)m(eyb)s(oard)g(input)f(in)h
-Fs(rl_read_key\(\))p Ft(,)f(Readline)i(will)f(w)m(ait)h(for)f
-Fj(u)g Ft(mi-)390 1389 y(croseconds)31 b(for)g(input)f(b)s(efore)g
-(calling)j(an)m(y)e(function)f(assigned)i(to)f Fs(rl_event_hook)p
-Ft(.)39 b Fj(u)30 b Ft(m)m(ust)390 1499 y(b)s(e)h(greater)i(than)f(or)g
-(equal)g(to)h(zero)f(\(a)h(zero-length)g(timeout)g(is)f(equiv)-5
-b(alen)m(t)33 b(to)g(a)f(p)s(oll\).)45 b(The)390 1608
-y(default)31 b(w)m(aiting)g(p)s(erio)s(d)e(is)i(one-ten)m(th)g(of)g(a)g
-(second.)40 b(Returns)30 b(the)g(old)h(timeout)g(v)-5
-b(alue.)150 1793 y Fi(2.4.9)63 b(T)-10 b(erminal)41 b(Managemen)m(t)
-3350 1974 y Ft([F)-8 b(unction])-3599 b Fh(void)54 b(rl_prep_terminal)c
-Fg(\()p Ff(in)m(t)33 b(meta)p 1704 1974 30 5 v 44 w(\015ag)p
-Fg(\))390 2084 y Ft(Mo)s(dify)42 b(the)h(terminal)g(settings)g(for)f
+Fg(\))390 2741 y Ft(Unset)42 b Fj(rl)p 729 2741 V 40
+w(p)s(ending)p 1086 2741 V 38 w(input)p Ft(,)i(e\013ectiv)m(ely)h
+(negating)e(the)f(e\013ect)h(of)f(an)m(y)g(previous)f(call)i(to)g
+Fs(rl_)390 2851 y(execute_next\(\))p Ft(.)59 b(This)36
+b(w)m(orks)i(only)g(if)f(the)h(p)s(ending)e(input)h(has)g(not)h
+(already)g(b)s(een)f(read)390 2960 y(with)30 b Fs(rl_read_key\(\))p
+Ft(.)3350 3163 y([F)-8 b(unction])-3599 b Fh(int)53 b
+(rl_set_keyboard_input)q(_tim)q(eou)q(t)e Fg(\()p Ff(in)m(t)34
+b(u)p Fg(\))390 3273 y Ft(While)41 b(w)m(aiting)g(for)f(k)m(eyb)s(oard)
+g(input)f(in)h Fs(rl_read_key\(\))p Ft(,)f(Readline)i(will)f(w)m(ait)h
+(for)f Fj(u)g Ft(mi-)390 3382 y(croseconds)31 b(for)g(input)f(b)s
+(efore)g(calling)j(an)m(y)e(function)f(assigned)i(to)f
+Fs(rl_event_hook)p Ft(.)39 b Fj(u)30 b Ft(m)m(ust)390
+3492 y(b)s(e)h(greater)i(than)f(or)g(equal)g(to)h(zero)f(\(a)h
+(zero-length)g(timeout)g(is)f(equiv)-5 b(alen)m(t)33
+b(to)g(a)f(p)s(oll\).)45 b(The)390 3601 y(default)31
+b(w)m(aiting)g(p)s(erio)s(d)e(is)i(one-ten)m(th)g(of)g(a)g(second.)40
+b(Returns)30 b(the)g(old)h(timeout)g(v)-5 b(alue.)3350
+3804 y([F)d(unction])-3599 b Fh(int)53 b(rl_set_timeout)d
+Fg(\()p Ff(unsigned)35 b(in)m(t)e(secs,)h(unsigned)h(in)m(t)e(usecs)p
+Fg(\))390 3914 y Ft(Set)f(a)g(timeout)h(for)f(subsequen)m(t)f(calls)j
+(to)e Fs(readline\(\))p Ft(.)43 b(If)31 b(Readline)i(do)s(es)f(not)g
+(read)g(a)g(com-)390 4024 y(plete)37 b(line,)h(or)e(the)g(n)m(um)m(b)s
+(er)f(of)h(c)m(haracters)i(sp)s(eci\014ed)d(b)m(y)h Fs
+(rl_num_chars_to_read)p Ft(,)c(b)s(efore)390 4133 y(the)k(duration)e
+(sp)s(ec\014ed)h(b)m(y)g Fj(secs)40 b Ft(\(in)35 b(seconds\))h(and)e
+Fj(usecs)40 b Ft(\(microseconds\),)e(it)d(returns)g(and)390
+4243 y(sets)22 b Fs(RL_STATE_TIMEOUT)17 b Ft(in)k Fs(rl_readline_state)
+p Ft(.)33 b(P)m(assing)22 b(0)g(for)f Fs(secs)g Ft(and)g
+Fs(usecs)f Ft(cancels)390 4352 y(an)m(y)k(previously)f(set)h(timeout;)j
+(the)d(con)m(v)m(enience)h(macro)f Fs(rl_clear_timeout\(\))19
+b Ft(is)k(shorthand)390 4462 y(for)30 b(this.)41 b(Returns)29
+b(0)i(if)f(the)h(timeout)g(is)g(set)g(successfully)-8
+b(.)3350 4665 y([F)g(unction])-3599 b Fh(int)53 b(rl_timeout_remaining)
+f Fg(\()p Ff(unsigned)33 b(in)m(t)f(*secs,)h(unsigned)g(in)m(t)f
+(*usecs)p Fg(\))390 4774 y Ft(Return)38 b(the)h(n)m(um)m(b)s(er)e(of)i
+(seconds)f(and)g(microseconds)h(remaining)g(in)f(the)h(curren)m(t)f
+(timeout)390 4884 y(duration)26 b(in)g Fj(*secs)31 b
+Ft(and)26 b Fj(*usecs)p Ft(,)i(resp)s(ectiv)m(ely)-8
+b(.)41 b(Both)27 b Fj(*secs)k Ft(and)26 b Fj(*usecs)k
+Ft(m)m(ust)c(b)s(e)g(non-NULL)390 4994 y(to)j(return)f(an)m(y)h(v)-5
+b(alues.)40 b(The)29 b(return)e(v)-5 b(alue)29 b(is)g(-1)g(on)g(error)f
+(or)h(when)e(there)i(is)g(no)f(timeout)i(set,)390 5103
+y(0)35 b(when)e(the)i(timeout)h(has)e(expired)g(\(lea)m(ving)j
+Fj(*secs)i Ft(and)34 b Fj(*usecs)39 b Ft(unc)m(hanged\),)c(and)f(1)h
+(if)g(the)390 5213 y(timeout)27 b(has)e(not)h(expired.)38
+b(If)26 b(either)g(of)f Fj(secs)30 b Ft(and)25 b Fj(usecs)k
+Ft(is)d Fs(NULL)p Ft(,)g(the)f(return)g(v)-5 b(alue)26
+b(indicates)390 5322 y(whether)k(the)g(timeout)i(has)e(expired.)p
+eop end
+%%Page: 43 47
+TeXDict begin 43 46 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(43)150
+299 y Fi(2.4.9)63 b(T)-10 b(erminal)41 b(Managemen)m(t)3350
+496 y Ft([F)-8 b(unction])-3599 b Fh(void)54 b(rl_prep_terminal)c
+Fg(\()p Ff(in)m(t)33 b(meta)p 1704 496 30 5 v 44 w(\015ag)p
+Fg(\))390 606 y Ft(Mo)s(dify)42 b(the)h(terminal)g(settings)g(for)f
(Readline's)i(use,)h(so)e Fs(readline\(\))c Ft(can)k(read)f(a)h(single)
-390 2193 y(c)m(haracter)32 b(at)g(a)f(time)h(from)e(the)h(k)m(eyb)s
-(oard.)43 b(The)30 b Fj(meta)p 2376 2193 28 4 v 41 w(\015ag)39
-b Ft(argumen)m(t)31 b(should)f(b)s(e)g(non-zero)390 2303
+390 716 y(c)m(haracter)32 b(at)g(a)f(time)h(from)e(the)h(k)m(eyb)s
+(oard.)43 b(The)30 b Fj(meta)p 2376 716 28 4 v 41 w(\015ag)39
+b Ft(argumen)m(t)31 b(should)f(b)s(e)g(non-zero)390 825
y(if)g(Readline)h(should)f(read)g(eigh)m(t-bit)i(input.)3350
-2465 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_deprep_terminal)c
-Fg(\()p Ff(v)m(oid)p Fg(\))390 2574 y Ft(Undo)31 b(the)h(e\013ects)h
+1011 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_deprep_terminal)c
+Fg(\()p Ff(v)m(oid)p Fg(\))390 1121 y Ft(Undo)31 b(the)h(e\013ects)h
(of)f Fs(rl_prep_terminal\(\))p Ft(,)27 b(lea)m(ving)33
b(the)f(terminal)g(in)f(the)h(state)h(in)e(whic)m(h)390
-2684 y(it)g(w)m(as)g(b)s(efore)f(the)g(most)h(recen)m(t)g(call)h(to)f
-Fs(rl_prep_terminal\(\))p Ft(.)3350 2845 y([F)-8 b(unction])-3599
+1230 y(it)g(w)m(as)g(b)s(efore)f(the)g(most)h(recen)m(t)g(call)h(to)f
+Fs(rl_prep_terminal\(\))p Ft(.)3350 1416 y([F)-8 b(unction])-3599
b Fh(void)54 b(rl_tty_set_default_bindi)q(ngs)e Fg(\()p
-Ff(Keymap)34 b(kmap)p Fg(\))390 2955 y Ft(Read)j(the)g(op)s(erating)h
+Ff(Keymap)34 b(kmap)p Fg(\))390 1526 y Ft(Read)j(the)g(op)s(erating)h
(system's)f(terminal)g(editing)h(c)m(haracters)g(\(as)g(w)m(ould)e(b)s
-(e)h(displa)m(y)m(ed)g(b)m(y)390 3065 y Fs(stty)p Ft(\))30
+(e)h(displa)m(y)m(ed)g(b)m(y)390 1635 y Fs(stty)p Ft(\))30
b(to)h(their)f(Readline)h(equiv)-5 b(alen)m(ts.)42 b(The)30
b(bindings)f(are)i(p)s(erformed)e(in)h Fj(kmap)p Ft(.)3350
-3226 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_tty_unset_default_bin)q
-(din)q(gs)e Fg(\()p Ff(Keymap)34 b(kmap)p Fg(\))390 3336
+1821 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_tty_unset_default_bin)q
+(din)q(gs)e Fg(\()p Ff(Keymap)34 b(kmap)p Fg(\))390 1931
y Ft(Reset)f(the)f(bindings)e(manipulated)i(b)m(y)g Fs
(rl_tty_set_default_bind)o(ing)o(s)26 b Ft(so)32 b(that)g(the)g(ter-)
-390 3445 y(minal)40 b(editing)g(c)m(haracters)h(are)f(b)s(ound)e(to)i
+390 2040 y(minal)40 b(editing)g(c)m(haracters)h(are)f(b)s(ound)e(to)i
Fs(rl_insert)p Ft(.)66 b(The)39 b(bindings)f(are)i(p)s(erformed)e(in)
-390 3555 y Fj(kmap)p Ft(.)3350 3717 y([F)-8 b(unction])-3599
+390 2150 y Fj(kmap)p Ft(.)3350 2336 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_tty_set_echoing)e Fg(\()p Ff(in)m(t)34
-b(v)-6 b(alue)p Fg(\))390 3826 y Ft(Set)48 b(Readline's)g(idea)g(of)g
+b(v)-6 b(alue)p Fg(\))390 2445 y Ft(Set)48 b(Readline's)g(idea)g(of)g
(whether)f(or)g(not)h(it)g(is)f(ec)m(hoing)i(output)e(to)i(its)e
-(output)h(stream)390 3936 y(\()p Fj(rl)p 492 3936 V 40
+(output)h(stream)390 2555 y(\()p Fj(rl)p 492 2555 V 40
w(outstream)p Ft(\).)j(If)32 b Fj(v)-5 b(alue)39 b Ft(is)34
b(0,)g(Readline)g(do)s(es)f(not)h(displa)m(y)f(output)g(to)h
-Fj(rl)p 3115 3936 V 40 w(outstream)p Ft(;)i(an)m(y)390
-4045 y(other)43 b(v)-5 b(alue)43 b(enables)h(output.)77
+Fj(rl)p 3115 2555 V 40 w(outstream)p Ft(;)i(an)m(y)390
+2665 y(other)43 b(v)-5 b(alue)43 b(enables)h(output.)77
b(The)43 b(initial)h(v)-5 b(alue)43 b(is)g(set)g(when)f(Readline)i
-(initializes)h(the)390 4155 y(terminal)31 b(settings.)42
+(initializes)h(the)390 2774 y(terminal)31 b(settings.)42
b(This)29 b(function)h(returns)f(the)i(previous)f(v)-5
-b(alue.)3350 4317 y([F)d(unction])-3599 b Fh(int)53 b
+b(alue.)3350 2960 y([F)d(unction])-3599 b Fh(int)53 b
(rl_reset_terminal)e Fg(\()p Ff(const)34 b(c)m(har)g(*terminal)p
-2232 4317 30 5 v 43 w(name)p Fg(\))390 4426 y Ft(Reinitialize)26
+2232 2960 30 5 v 43 w(name)p Fg(\))390 3070 y Ft(Reinitialize)26
b(Readline's)f(idea)f(of)g(the)g(terminal)h(settings)f(using)g
-Fj(terminal)p 2977 4426 28 4 v 40 w(name)29 b Ft(as)24
-b(the)g(termi-)390 4536 y(nal)32 b(t)m(yp)s(e)g(\(e.g.,)i
-Fs(vt100)p Ft(\).)44 b(If)31 b Fj(terminal)p 1753 4536
+Fj(terminal)p 2977 3070 28 4 v 40 w(name)29 b Ft(as)24
+b(the)g(termi-)390 3179 y(nal)32 b(t)m(yp)s(e)g(\(e.g.,)i
+Fs(vt100)p Ft(\).)44 b(If)31 b Fj(terminal)p 1753 3179
V 41 w(name)37 b Ft(is)31 b Fs(NULL)p Ft(,)h(the)g(v)-5
b(alue)32 b(of)g(the)g Fs(TERM)e Ft(en)m(vironmen)m(t)390
-4645 y(v)-5 b(ariable)31 b(is)g(used.)150 4830 y Fi(2.4.10)63
-b(Utilit)m(y)40 b(F)-10 b(unctions)3350 5011 y Ft([F)i(unction])-3599
+3289 y(v)-5 b(ariable)31 b(is)g(used.)150 3489 y Fi(2.4.10)63
+b(Utilit)m(y)40 b(F)-10 b(unctions)3350 3686 y Ft([F)i(unction])-3599
b Fh(int)53 b(rl_save_state)d Fg(\()p Ff(struct)34 b(readline)p
-1759 5011 30 5 v 44 w(state)f(*sp)p Fg(\))390 5121 y
+1759 3686 30 5 v 44 w(state)f(*sp)p Fg(\))390 3796 y
Ft(Sa)m(v)m(e)d(a)f(snapshot)e(of)i(Readline's)g(in)m(ternal)g(state)h
(to)f Fj(sp)p Ft(.)40 b(The)28 b(con)m(ten)m(ts)i(of)e(the)h
-Fj(readline)p 3518 5121 28 4 v 40 w(state)390 5230 y
+Fj(readline)p 3518 3796 28 4 v 40 w(state)390 3906 y
Ft(structure)g(are)g(do)s(cumen)m(ted)g(in)g Fs(readline.h)p
Ft(.)38 b(The)28 b(caller)j(is)e(resp)s(onsible)f(for)h(allo)s(cating)j
-(the)390 5340 y(structure.)p eop end
-%%Page: 42 46
-TeXDict begin 42 45 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(42)3350
-299 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_restore_state)e
-Fg(\()p Ff(struct)34 b(readline)p 1916 299 30 5 v 44
-w(state)f(*sp)p Fg(\))390 408 y Ft(Restore)23 b(Readline's)g(in)m
-(ternal)g(state)g(to)g(that)g(stored)f(in)g Fj(sp)p Ft(,)i(whic)m(h)d
-(m)m(ust)h(ha)m(v)m(e)i(b)s(een)d(sa)m(v)m(ed)i(b)m(y)g(a)390
-518 y(call)30 b(to)g Fs(rl_save_state)p Ft(.)37 b(The)28
-b(con)m(ten)m(ts)j(of)e(the)g Fj(readline)p 2470 518
-28 4 v 41 w(state)35 b Ft(structure)29 b(are)g(do)s(cumen)m(ted)390
-628 y(in)h Fs(readline.h)p Ft(.)38 b(The)30 b(caller)i(is)e(resp)s
-(onsible)f(for)i(freeing)f(the)h(structure.)3350 810
-y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_free)47 b
-Fg(\()p Ff(v)m(oid)33 b(*mem)p Fg(\))390 920 y Ft(Deallo)s(cate)25
-b(the)c(memory)g(p)s(oin)m(ted)g(to)h(b)m(y)f Fj(mem)p
-Ft(.)38 b Fj(mem)21 b Ft(m)m(ust)g(ha)m(v)m(e)i(b)s(een)d(allo)s(cated)
-j(b)m(y)e Fs(malloc)p Ft(.)3350 1103 y([F)-8 b(unction])-3599
-b Fh(void)54 b(rl_replace_line)c Fg(\()p Ff(const)34
-b(c)m(har)f(*text,)g(in)m(t)g(clear)p 2406 1103 30 5
-v 44 w(undo)p Fg(\))390 1212 y Ft(Replace)41 b(the)e(con)m(ten)m(ts)i
-(of)f Fs(rl_line_buffer)35 b Ft(with)k Fj(text)p Ft(.)69
-b(The)39 b(p)s(oin)m(t)h(and)e(mark)h(are)h(pre-)390
-1322 y(serv)m(ed,)27 b(if)e(p)s(ossible.)39 b(If)25 b
-Fj(clear)p 1422 1322 28 4 v 41 w(undo)k Ft(is)d(non-zero,)h(the)f(undo)
-e(list)i(asso)s(ciated)h(with)e(the)h(curren)m(t)390
-1431 y(line)31 b(is)f(cleared.)3350 1614 y([F)-8 b(unction])-3599
-b Fh(void)54 b(rl_extend_line_buffer)d Fg(\()p Ff(in)m(t)34
-b(len)p Fg(\))390 1724 y Ft(Ensure)29 b(that)h Fs(rl_line_buffer)d
-Ft(has)j(enough)f(space)i(to)g(hold)f Fj(len)g Ft(c)m(haracters,)i(p)s
-(ossibly)d(real-)390 1833 y(lo)s(cating)j(it)f(if)f(necessary)-8
-b(.)3350 2016 y([F)g(unction])-3599 b Fh(int)53 b(rl_initialize)d
-Fg(\()p Ff(v)m(oid)p Fg(\))390 2125 y Ft(Initialize)39
-b(or)e(re-initialize)i(Readline's)f(in)m(ternal)f(state.)62
-b(It's)37 b(not)g(strictly)h(necessary)f(to)h(call)390
-2235 y(this;)31 b Fs(readline\(\))c Ft(calls)32 b(it)f(b)s(efore)f
-(reading)g(an)m(y)h(input.)3350 2418 y([F)-8 b(unction])-3599
-b Fh(int)53 b(rl_ding)48 b Fg(\()p Ff(v)m(oid)p Fg(\))390
-2527 y Ft(Ring)30 b(the)h(terminal)g(b)s(ell,)f(ob)s(eying)h(the)f
-(setting)i(of)e Fs(bell-style)p Ft(.)3350 2710 y([F)-8
-b(unction])-3599 b Fh(int)53 b(rl_alphabetic)d Fg(\()p
-Ff(in)m(t)33 b(c)p Fg(\))390 2819 y Ft(Return)d(1)g(if)h
+(the)390 4015 y(structure.)3350 4201 y([F)-8 b(unction])-3599
+b Fh(int)53 b(rl_restore_state)e Fg(\()p Ff(struct)34
+b(readline)p 1916 4201 30 5 v 44 w(state)f(*sp)p Fg(\))390
+4311 y Ft(Restore)23 b(Readline's)g(in)m(ternal)g(state)g(to)g(that)g
+(stored)f(in)g Fj(sp)p Ft(,)i(whic)m(h)d(m)m(ust)h(ha)m(v)m(e)i(b)s
+(een)d(sa)m(v)m(ed)i(b)m(y)g(a)390 4420 y(call)30 b(to)g
+Fs(rl_save_state)p Ft(.)37 b(The)28 b(con)m(ten)m(ts)j(of)e(the)g
+Fj(readline)p 2470 4420 28 4 v 41 w(state)35 b Ft(structure)29
+b(are)g(do)s(cumen)m(ted)390 4530 y(in)h Fs(readline.h)p
+Ft(.)38 b(The)30 b(caller)i(is)e(resp)s(onsible)f(for)i(freeing)f(the)h
+(structure.)3350 4716 y([F)-8 b(unction])-3599 b Fh(void)54
+b(rl_free)47 b Fg(\()p Ff(v)m(oid)33 b(*mem)p Fg(\))390
+4825 y Ft(Deallo)s(cate)25 b(the)c(memory)g(p)s(oin)m(ted)g(to)h(b)m(y)
+f Fj(mem)p Ft(.)38 b Fj(mem)21 b Ft(m)m(ust)g(ha)m(v)m(e)i(b)s(een)d
+(allo)s(cated)j(b)m(y)e Fs(malloc)p Ft(.)3350 5011 y([F)-8
+b(unction])-3599 b Fh(void)54 b(rl_replace_line)c Fg(\()p
+Ff(const)34 b(c)m(har)f(*text,)g(in)m(t)g(clear)p 2406
+5011 30 5 v 44 w(undo)p Fg(\))390 5121 y Ft(Replace)41
+b(the)e(con)m(ten)m(ts)i(of)f Fs(rl_line_buffer)35 b
+Ft(with)k Fj(text)p Ft(.)69 b(The)39 b(p)s(oin)m(t)h(and)e(mark)h(are)h
+(pre-)390 5230 y(serv)m(ed,)27 b(if)e(p)s(ossible.)39
+b(If)25 b Fj(clear)p 1422 5230 28 4 v 41 w(undo)k Ft(is)d(non-zero,)h
+(the)f(undo)e(list)i(asso)s(ciated)h(with)e(the)h(curren)m(t)390
+5340 y(line)31 b(is)f(cleared.)p eop end
+%%Page: 44 48
+TeXDict begin 44 47 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(44)3350
+299 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_extend_line_buffer)d
+Fg(\()p Ff(in)m(t)34 b(len)p Fg(\))390 408 y Ft(Ensure)29
+b(that)h Fs(rl_line_buffer)d Ft(has)j(enough)f(space)i(to)g(hold)f
+Fj(len)g Ft(c)m(haracters,)i(p)s(ossibly)d(real-)390
+518 y(lo)s(cating)j(it)f(if)f(necessary)-8 b(.)3350 756
+y([F)g(unction])-3599 b Fh(int)53 b(rl_initialize)d Fg(\()p
+Ff(v)m(oid)p Fg(\))390 865 y Ft(Initialize)39 b(or)e(re-initialize)i
+(Readline's)f(in)m(ternal)f(state.)62 b(It's)37 b(not)g(strictly)h
+(necessary)f(to)h(call)390 975 y(this;)31 b Fs(readline\(\))c
+Ft(calls)32 b(it)f(b)s(efore)f(reading)g(an)m(y)h(input.)3350
+1212 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_ding)48
+b Fg(\()p Ff(v)m(oid)p Fg(\))390 1322 y Ft(Ring)30 b(the)h(terminal)g
+(b)s(ell,)f(ob)s(eying)h(the)f(setting)i(of)e Fs(bell-style)p
+Ft(.)3350 1559 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_alphabetic)d
+Fg(\()p Ff(in)m(t)33 b(c)p Fg(\))390 1669 y Ft(Return)d(1)g(if)h
Fj(c)36 b Ft(is)30 b(an)h(alphab)s(etic)g(c)m(haracter.)3350
-3002 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_display_match_list)d
+1906 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_display_match_list)d
Fg(\()p Ff(c)m(har)35 b(**matc)m(hes,)e(in)m(t)g(len,)h(in)m(t)f(max)p
-Fg(\))390 3112 y Ft(A)i(con)m(v)m(enience)h(function)e(for)g(displa)m
+Fg(\))390 2016 y Ft(A)i(con)m(v)m(enience)h(function)e(for)g(displa)m
(ying)h(a)g(list)g(of)g(strings)f(in)g(columnar)g(format)h(on)f(Read-)
-390 3221 y(line's)g(output)f(stream.)51 b Fs(matches)31
+390 2126 y(line's)g(output)f(stream.)51 b Fs(matches)31
b Ft(is)j(the)f(list)i(of)e(strings,)i(in)e(argv)h(format,)h(suc)m(h)e
-(as)h(a)g(list)g(of)390 3331 y(completion)26 b(matc)m(hes.)39
+(as)h(a)g(list)g(of)390 2235 y(completion)26 b(matc)m(hes.)39
b Fs(len)24 b Ft(is)g(the)g(n)m(um)m(b)s(er)f(of)i(strings)f(in)g
Fs(matches)p Ft(,)f(and)h Fs(max)f Ft(is)i(the)f(length)h(of)390
-3440 y(the)h(longest)i(string)e(in)g Fs(matches)p Ft(.)37
+2345 y(the)h(longest)i(string)e(in)g Fs(matches)p Ft(.)37
b(This)25 b(function)h(uses)g(the)g(setting)i(of)e Fs
-(print-completions-)390 3550 y(horizontally)33 b Ft(to)k(select)h(ho)m
+(print-completions-)390 2454 y(horizontally)33 b Ft(to)k(select)h(ho)m
(w)e(the)g(matc)m(hes)i(are)e(displa)m(y)m(ed)h(\(see)g(Section)g
-(1.3.1)h([Readline)390 3660 y(Init)30 b(File)h(Syn)m(tax],)g(page)g
+(1.3.1)h([Readline)390 2564 y(Init)30 b(File)h(Syn)m(tax],)g(page)g
(4\).)42 b(When)29 b(displa)m(ying)i(completions,)h(this)e(function)g
-(sets)g(the)g(n)m(um-)390 3769 y(b)s(er)23 b(of)g(columns)g(used)g(for)
+(sets)g(the)g(n)m(um-)390 2674 y(b)s(er)23 b(of)g(columns)g(used)g(for)
h(displa)m(y)f(to)i(the)e(v)-5 b(alue)24 b(of)g Fs
(completion-display-width)p Ft(,)19 b(the)k(v)-5 b(alue)390
-3879 y(of)31 b(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)31
+2783 y(of)31 b(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)31
b Fs(COLUMNS)p Ft(,)e(or)h(the)h(screen)f(width,)g(in)g(that)h(order.)
-275 4061 y(The)g(follo)m(wing)j(are)e(implemen)m(ted)h(as)f(macros,)h
+275 3021 y(The)g(follo)m(wing)j(are)e(implemen)m(ted)h(as)f(macros,)h
(de\014ned)e(in)h Fs(chardefs.h)p Ft(.)43 b(Applications)33
-b(should)150 4171 y(refrain)d(from)g(using)g(them.)3350
-4354 y([F)-8 b(unction])-3599 b Fh(int)53 b(_rl_uppercase_p)d
-Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 4463 y Ft(Return)c(1)g(if)h
+b(should)150 3130 y(refrain)d(from)g(using)g(them.)3350
+3368 y([F)-8 b(unction])-3599 b Fh(int)53 b(_rl_uppercase_p)d
+Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 3477 y Ft(Return)c(1)g(if)h
Fj(c)36 b Ft(is)30 b(an)h(upp)s(ercase)e(alphab)s(etic)i(c)m(haracter.)
-3350 4646 y([F)-8 b(unction])-3599 b Fh(int)53 b(_rl_lowercase_p)d
-Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 4756 y Ft(Return)c(1)g(if)h
+3350 3715 y([F)-8 b(unction])-3599 b Fh(int)53 b(_rl_lowercase_p)d
+Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 3824 y Ft(Return)c(1)g(if)h
Fj(c)36 b Ft(is)30 b(a)h(lo)m(w)m(ercase)i(alphab)s(etic)e(c)m
-(haracter.)3350 4938 y([F)-8 b(unction])-3599 b Fh(int)53
+(haracter.)3350 4062 y([F)-8 b(unction])-3599 b Fh(int)53
b(_rl_digit_p)c Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390
-5048 y Ft(Return)c(1)g(if)h Fj(c)36 b Ft(is)30 b(a)h(n)m(umeric)f(c)m
-(haracter.)3350 5230 y([F)-8 b(unction])-3599 b Fh(int)53
+4171 y Ft(Return)c(1)g(if)h Fj(c)36 b Ft(is)30 b(a)h(n)m(umeric)f(c)m
+(haracter.)3350 4409 y([F)-8 b(unction])-3599 b Fh(int)53
b(_rl_to_upper)c Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390
-5340 y Ft(If)23 b Fj(c)30 b Ft(is)24 b(a)g(lo)m(w)m(ercase)i(alphab)s
+4519 y Ft(If)23 b Fj(c)30 b Ft(is)24 b(a)g(lo)m(w)m(ercase)i(alphab)s
(etic)e(c)m(haracter,)j(return)c(the)h(corresp)s(onding)e(upp)s(ercase)
-h(c)m(haracter.)p eop end
-%%Page: 43 47
-TeXDict begin 43 46 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(43)3350
-299 y([F)-8 b(unction])-3599 b Fh(int)53 b(_rl_to_lower)c
-Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390 408 y Ft(If)28 b
-Fj(c)35 b Ft(is)29 b(an)g(upp)s(ercase)f(alphab)s(etic)h(c)m(haracter,)
-i(return)d(the)h(corresp)s(onding)f(lo)m(w)m(ercase)j(c)m(harac-)390
-518 y(ter.)3350 714 y([F)-8 b(unction])-3599 b Fh(int)53
-b(_rl_digit_value)d Fg(\()p Ff(in)m(t)34 b(c)p Fg(\))390
-823 y Ft(If)c Fj(c)36 b Ft(is)31 b(a)f(n)m(um)m(b)s(er,)g(return)f(the)
-h(v)-5 b(alue)31 b(it)g(represen)m(ts.)150 1028 y Fi(2.4.11)63
-b(Miscellaneous)42 b(F)-10 b(unctions)3350 1231 y Ft([F)i(unction])
--3599 b Fh(int)53 b(rl_macro_bind)d Fg(\()p Ff(const)34
-b(c)m(har)g(*k)m(eyseq,)e(const)i(c)m(har)g(*macro,)565
-1340 y(Keymap)g(map)p Fg(\))390 1450 y Ft(Bind)23 b(the)g(k)m(ey)h
-(sequence)g Fj(k)m(eyseq)i Ft(to)e(in)m(v)m(ok)m(e)h(the)f(macro)f
-Fj(macro)p Ft(.)39 b(The)23 b(binding)f(is)i(p)s(erformed)d(in)390
-1559 y Fj(map)p Ft(.)39 b(When)28 b Fj(k)m(eyseq)i Ft(is)e(in)m(v)m(ok)
-m(ed,)i(the)d Fj(macro)33 b Ft(will)28 b(b)s(e)f(inserted)g(in)m(to)i
-(the)e(line.)41 b(This)26 b(function)390 1669 y(is)k(deprecated;)i(use)
-e Fs(rl_generic_bind\(\))25 b Ft(instead.)3350 1865 y([F)-8
+h(c)m(haracter.)3350 4756 y([F)-8 b(unction])-3599 b
+Fh(int)53 b(_rl_to_lower)c Fg(\()p Ff(in)m(t)34 b(c)p
+Fg(\))390 4866 y Ft(If)28 b Fj(c)35 b Ft(is)29 b(an)g(upp)s(ercase)f
+(alphab)s(etic)h(c)m(haracter,)i(return)d(the)h(corresp)s(onding)f(lo)m
+(w)m(ercase)j(c)m(harac-)390 4975 y(ter.)3350 5213 y([F)-8
+b(unction])-3599 b Fh(int)53 b(_rl_digit_value)d Fg(\()p
+Ff(in)m(t)34 b(c)p Fg(\))390 5322 y Ft(If)c Fj(c)36 b
+Ft(is)31 b(a)f(n)m(um)m(b)s(er,)g(return)f(the)h(v)-5
+b(alue)31 b(it)g(represen)m(ts.)p eop end
+%%Page: 45 49
+TeXDict begin 45 48 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(45)150
+299 y Fi(2.4.11)63 b(Miscellaneous)42 b(F)-10 b(unctions)3350
+489 y Ft([F)i(unction])-3599 b Fh(int)53 b(rl_macro_bind)d
+Fg(\()p Ff(const)34 b(c)m(har)g(*k)m(eyseq,)e(const)i(c)m(har)g
+(*macro,)565 598 y(Keymap)g(map)p Fg(\))390 708 y Ft(Bind)23
+b(the)g(k)m(ey)h(sequence)g Fj(k)m(eyseq)i Ft(to)e(in)m(v)m(ok)m(e)h
+(the)f(macro)f Fj(macro)p Ft(.)39 b(The)23 b(binding)f(is)i(p)s
+(erformed)d(in)390 817 y Fj(map)p Ft(.)39 b(When)28 b
+Fj(k)m(eyseq)i Ft(is)e(in)m(v)m(ok)m(ed,)i(the)d Fj(macro)33
+b Ft(will)28 b(b)s(e)f(inserted)g(in)m(to)i(the)e(line.)41
+b(This)26 b(function)390 927 y(is)k(deprecated;)i(use)e
+Fs(rl_generic_bind\(\))25 b Ft(instead.)3350 1101 y([F)-8
b(unction])-3599 b Fh(void)54 b(rl_macro_dumper)c Fg(\()p
-Ff(in)m(t)33 b(readable)p Fg(\))390 1974 y Ft(Prin)m(t)27
+Ff(in)m(t)33 b(readable)p Fg(\))390 1210 y Ft(Prin)m(t)27
b(the)g(k)m(ey)h(sequences)g(b)s(ound)d(to)j(macros)f(and)g(their)g(v)
-5 b(alues,)28 b(using)f(the)g(curren)m(t)g(k)m(eymap,)390
-2084 y(to)32 b Fs(rl_outstream)p Ft(.)40 b(If)31 b Fj(readable)36
+1320 y(to)32 b Fs(rl_outstream)p Ft(.)40 b(If)31 b Fj(readable)36
b Ft(is)c(non-zero,)g(the)f(list)h(is)f(formatted)h(in)f(suc)m(h)g(a)g
-(w)m(a)m(y)i(that)e(it)390 2193 y(can)g(b)s(e)e(made)i(part)f(of)h(an)f
-Fs(inputrc)e Ft(\014le)j(and)e(re-read.)3350 2389 y([F)-8
+(w)m(a)m(y)i(that)e(it)390 1429 y(can)g(b)s(e)e(made)i(part)f(of)h(an)f
+Fs(inputrc)e Ft(\014le)j(and)e(re-read.)3350 1603 y([F)-8
b(unction])-3599 b Fh(int)53 b(rl_variable_bind)e Fg(\()p
Ff(const)34 b(c)m(har)f(*v)-6 b(ariable,)33 b(const)h(c)m(har)f(*v)-6
-b(alue)p Fg(\))390 2499 y Ft(Mak)m(e)31 b(the)e(Readline)g(v)-5
+b(alue)p Fg(\))390 1713 y Ft(Mak)m(e)31 b(the)e(Readline)g(v)-5
b(ariable)30 b Fj(v)-5 b(ariable)35 b Ft(ha)m(v)m(e)30
b Fj(v)-5 b(alue)p Ft(.)41 b(This)28 b(b)s(eha)m(v)m(es)h(as)h(if)f
-(the)g(readline)g(com-)390 2608 y(mand)h(`)p Fs(set)g
+(the)g(readline)g(com-)390 1822 y(mand)h(`)p Fs(set)g
Fl(variable)e(value)p Ft(')h(had)h(b)s(een)h(executed)g(in)g(an)f
Fs(inputrc)f Ft(\014le)i(\(see)h(Section)f(1.3.1)390
-2718 y([Readline)g(Init)f(File)i(Syn)m(tax],)f(page)g(4\).)3350
-2914 y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_variable_value)f
+1932 y([Readline)g(Init)f(File)i(Syn)m(tax],)f(page)g(4\).)3350
+2106 y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_variable_value)f
Fg(\()p Ff(const)34 b(c)m(har)g(*v)-6 b(ariable)p Fg(\))390
-3023 y Ft(Return)28 b(a)i(string)f(represen)m(ting)h(the)f(v)-5
+2215 y Ft(Return)28 b(a)i(string)f(represen)m(ting)h(the)f(v)-5
b(alue)30 b(of)f(the)h(Readline)g(v)-5 b(ariable)30 b
Fj(v)-5 b(ariable)p Ft(.)41 b(F)-8 b(or)30 b(b)s(o)s(olean)390
-3133 y(v)-5 b(ariables,)31 b(this)g(string)f(is)g(either)h(`)p
-Fs(on)p Ft(')f(or)h(`)p Fs(off)p Ft('.)3350 3328 y([F)-8
+2325 y(v)-5 b(ariables,)31 b(this)g(string)f(is)g(either)h(`)p
+Fs(on)p Ft(')f(or)h(`)p Fs(off)p Ft('.)3350 2499 y([F)-8
b(unction])-3599 b Fh(void)54 b(rl_variable_dumper)c
-Fg(\()p Ff(in)m(t)34 b(readable)p Fg(\))390 3438 y Ft(Prin)m(t)29
+Fg(\()p Ff(in)m(t)34 b(readable)p Fg(\))390 2608 y Ft(Prin)m(t)29
b(the)f(readline)h(v)-5 b(ariable)30 b(names)e(and)g(their)h(curren)m
(t)f(v)-5 b(alues)29 b(to)h Fs(rl_outstream)p Ft(.)37
-b(If)28 b Fj(read-)390 3548 y(able)40 b Ft(is)34 b(non-zero,)i(the)e
+b(If)28 b Fj(read-)390 2718 y(able)40 b Ft(is)34 b(non-zero,)i(the)e
(list)g(is)g(formatted)h(in)f(suc)m(h)g(a)g(w)m(a)m(y)h(that)g(it)f
-(can)g(b)s(e)g(made)g(part)g(of)g(an)390 3657 y Fs(inputrc)28
-b Ft(\014le)j(and)f(re-read.)3350 3853 y([F)-8 b(unction])-3599
+(can)g(b)s(e)g(made)g(part)g(of)g(an)390 2827 y Fs(inputrc)28
+b Ft(\014le)j(and)f(re-read.)3350 3001 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_set_paren_blink_ti)q(meou)q(t)f Fg(\()p
-Ff(in)m(t)33 b(u)p Fg(\))390 3962 y Ft(Set)25 b(the)h(time)f(in)m(terv)
+Ff(in)m(t)33 b(u)p Fg(\))390 3111 y Ft(Set)25 b(the)h(time)f(in)m(terv)
-5 b(al)27 b(\(in)e(microseconds\))h(that)g(Readline)f(w)m(aits)h(when)
-e(sho)m(wing)i(a)f(balancing)390 4072 y(c)m(haracter)32
+e(sho)m(wing)i(a)f(balancing)390 3220 y(c)m(haracter)32
b(when)d Fs(blink-matching-paren)c Ft(has)30 b(b)s(een)g(enabled.)3350
-4268 y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_get_termcap)e
-Fg(\()p Ff(const)34 b(c)m(har)g(*cap)p Fg(\))390 4377
+3394 y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_get_termcap)e
+Fg(\()p Ff(const)34 b(c)m(har)g(*cap)p Fg(\))390 3504
y Ft(Retriev)m(e)29 b(the)e(string)g(v)-5 b(alue)27 b(of)g(the)h
(termcap)f(capabilit)m(y)i Fj(cap)p Ft(.)40 b(Readline)27
-b(fetc)m(hes)h(the)g(termcap)390 4487 y(en)m(try)34 b(for)f(the)h
+b(fetc)m(hes)h(the)g(termcap)390 3613 y(en)m(try)34 b(for)f(the)h
(curren)m(t)f(terminal)h(name)g(and)f(uses)g(those)h(capabilities)h(to)
-f(mo)m(v)m(e)h(around)e(the)390 4596 y(screen)21 b(line)h(and)e(p)s
+f(mo)m(v)m(e)h(around)e(the)390 3723 y(screen)21 b(line)h(and)e(p)s
(erform)g(other)h(terminal-sp)s(eci\014c)h(op)s(erations,)h(lik)m(e)f
-(erasing)g(a)f(line.)38 b(Readline)390 4706 y(do)s(es)d(not)g(use)g
+(erasing)g(a)f(line.)38 b(Readline)390 3832 y(do)s(es)d(not)g(use)g
(all)g(of)h(a)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 4816 y(only)30
-b(those)h(capabilities)i(Readline)e(uses.)3350 5011 y([F)-8
+(will)g(return)f(v)-5 b(alues)35 b(for)390 3942 y(only)30
+b(those)h(capabilities)i(Readline)e(uses.)3350 4116 y([F)-8
b(unction])-3599 b Fh(void)54 b(rl_clear_history)c Fg(\()p
-Ff(v)m(oid)p Fg(\))390 5121 y Ft(Clear)27 b(the)h(history)f(list)h(b)m
+Ff(v)m(oid)p Fg(\))390 4225 y Ft(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(same)f
-(manner)g(as)g(the)g(History)390 5230 y(library's)42
+(manner)g(as)g(the)g(History)390 4335 y(library's)42
b Fs(clear_history\(\))d Ft(function.)78 b(This)42 b(di\013ers)g(from)g
-Fs(clear_history)e Ft(b)s(ecause)i(it)390 5340 y(frees)30
+Fs(clear_history)e Ft(b)s(ecause)i(it)390 4445 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.)p eop end
-%%Page: 44 48
-TeXDict begin 44 47 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(44)3350
-299 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_activate_mark)c
-Fg(\()p Ff(v)m(oid)p Fg(\))390 408 y Ft(Enable)30 b(an)f
-Fk(active)37 b Ft(mark.)j(When)30 b(this)f(is)h(enabled,)g(the)g(text)h
-(b)s(et)m(w)m(een)f(p)s(oin)m(t)g(and)f(mark)g(\(the)390
-518 y Fj(region)p Ft(\))c(is)f(displa)m(y)m(ed)h(in)f(the)g(terminal's)
-h(standout)f(mo)s(de)f(\(a)i Fj(face)5 b Ft(\).)40 b(This)24
-b(is)g(called)h(b)m(y)f(v)-5 b(arious)390 628 y(readline)30
-b(functions)f(that)i(set)f(the)g(mark)g(and)f(insert)h(text,)h(and)e
-(is)h(a)m(v)-5 b(ailable)32 b(for)e(applications)390
-737 y(to)h(call.)3350 951 y([F)-8 b(unction])-3599 b
-Fh(void)54 b(rl_deactivate_mark)c Fg(\()p Ff(v)m(oid)p
-Fg(\))390 1061 y Ft(T)-8 b(urn)29 b(o\013)i(the)f(activ)m(e)j(mark.)
-3350 1274 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_keep_mark_active)d
-Fg(\()p Ff(v)m(oid)p Fg(\))390 1384 y Ft(Indicate)28
-b(that)g(the)g(mark)f(should)f(remain)h(activ)m(e)j(when)d(the)g
-(curren)m(t)g(readline)h(function)f(com-)390 1494 y(pletes)h(and)f
-(after)h(redispla)m(y)f(o)s(ccurs.)40 b(In)27 b(most)g(cases,)i(the)f
-(mark)f(remains)g(activ)m(e)j(for)d(only)h(the)390 1603
-y(duration)i(of)g(a)h(single)g(bindable)f(readline)h(function.)3350
-1817 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_mark_active_p)e
-Fg(\()p Ff(v)m(oid)p Fg(\))390 1927 y Ft(Return)30 b(a)g(non-zero)h(v)
--5 b(alue)31 b(if)f(the)h(mark)f(is)h(curren)m(tly)f(activ)m(e;)j(zero)
-e(otherwise.)150 2141 y Fi(2.4.12)63 b(Alternate)40 b(In)m(terface)150
-2288 y Ft(An)21 b(alternate)j(in)m(terface)f(is)f(a)m(v)-5
+(history)f(list.)3350 4618 y([F)-8 b(unction])-3599 b
+Fh(void)54 b(rl_activate_mark)c Fg(\()p Ff(v)m(oid)p
+Fg(\))390 4728 y Ft(Enable)30 b(an)f Fk(active)37 b Ft(mark.)j(When)30
+b(this)f(is)h(enabled,)g(the)g(text)h(b)s(et)m(w)m(een)f(p)s(oin)m(t)g
+(and)f(mark)g(\(the)390 4837 y Fj(region)p Ft(\))c(is)f(displa)m(y)m
+(ed)h(in)f(the)g(terminal's)h(standout)f(mo)s(de)f(\(a)i
+Fj(face)5 b Ft(\).)40 b(This)24 b(is)g(called)h(b)m(y)f(v)-5
+b(arious)390 4947 y(readline)30 b(functions)f(that)i(set)f(the)g(mark)g
+(and)f(insert)h(text,)h(and)e(is)h(a)m(v)-5 b(ailable)32
+b(for)e(applications)390 5057 y(to)h(call.)3350 5230
+y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_deactivate_mark)c
+Fg(\()p Ff(v)m(oid)p Fg(\))390 5340 y Ft(T)-8 b(urn)29
+b(o\013)i(the)f(activ)m(e)j(mark.)p eop end
+%%Page: 46 50
+TeXDict begin 46 49 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(46)3350
+299 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_keep_mark_active)d
+Fg(\()p Ff(v)m(oid)p Fg(\))390 408 y Ft(Indicate)28 b(that)g(the)g
+(mark)f(should)f(remain)h(activ)m(e)j(when)d(the)g(curren)m(t)g
+(readline)h(function)f(com-)390 518 y(pletes)h(and)f(after)h(redispla)m
+(y)f(o)s(ccurs.)40 b(In)27 b(most)g(cases,)i(the)f(mark)f(remains)g
+(activ)m(e)j(for)d(only)h(the)390 628 y(duration)i(of)g(a)h(single)g
+(bindable)f(readline)h(function.)3350 799 y([F)-8 b(unction])-3599
+b Fh(int)53 b(rl_mark_active_p)e Fg(\()p Ff(v)m(oid)p
+Fg(\))390 909 y Ft(Return)30 b(a)g(non-zero)h(v)-5 b(alue)31
+b(if)f(the)h(mark)f(is)h(curren)m(tly)f(activ)m(e;)j(zero)e(otherwise.)
+150 1100 y Fi(2.4.12)63 b(Alternate)40 b(In)m(terface)150
+1247 y Ft(An)21 b(alternate)j(in)m(terface)f(is)f(a)m(v)-5
b(ailable)24 b(to)e(plain)g Fs(readline\(\))p Ft(.)35
b(Some)21 b(applications)i(need)f(to)g(in)m(terlea)m(v)m(e)150
-2397 y(k)m(eyb)s(oard)35 b(I/O)h(with)f(\014le,)i(device,)h(or)e(windo)
+1356 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 2507 y Fs(select\(\))42 b Ft(on)i(v)-5 b(arious)45
+(op)f(to)150 1466 y Fs(select\(\))42 b Ft(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 2616 y(in)m(v)m(ok)m(ed)33
+(need,)k(readline)d(can)f(also)i(b)s(e)150 1576 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 2726 y(this)e(easy)-8 b(.)3350 2940
+b(to)f(mak)m(e)150 1685 y(this)e(easy)-8 b(.)3350 1857
y([F)g(unction])-3599 b Fh(void)54 b(rl_callback_handler_inst)q(all)e
-Fg(\()p Ff(const)34 b(c)m(har)g(*prompt,)565 3049 y(rl)p
-639 3049 30 5 v 44 w(v)m(cpfunc)p 1016 3049 V 45 w(t)f(*lhandler)p
-Fg(\))390 3159 y Ft(Set)25 b(up)f(the)h(terminal)g(for)f(readline)i
+Fg(\()p Ff(const)34 b(c)m(har)g(*prompt,)565 1966 y(rl)p
+639 1966 30 5 v 44 w(v)m(cpfunc)p 1016 1966 V 45 w(t)f(*lhandler)p
+Fg(\))390 2076 y Ft(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 Fj(prompt)p Ft(.)390 3269 y(Sa)m(v)m(e)34
+b(alue)26 b(of)f Fj(prompt)p Ft(.)390 2186 y(Sa)m(v)m(e)34
b(the)f(v)-5 b(alue)33 b(of)g Fj(lhandler)39 b Ft(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 3378 y(of)h(input)f(has)g(b)s(een)g(en)m(tered.)57
+(line)390 2295 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 3488 y(argumen)m(t.)k(As)29 b(with)f
+(line)g(as)g(an)390 2405 y(argumen)m(t.)k(As)29 b(with)f
Fs(readline\(\))p Ft(,)e(the)j(handler)e(function)h(should)g
-Fs(free)f Ft(the)h(line)h(when)e(it)i(it)390 3597 y(\014nished)g(with)h
-(it.)3350 3811 y([F)-8 b(unction])-3599 b Fh(void)54
+Fs(free)f Ft(the)h(line)h(when)e(it)i(it)390 2514 y(\014nished)g(with)h
+(it.)3350 2686 y([F)-8 b(unction])-3599 b Fh(void)54
b(rl_callback_read_char)d Fg(\()p Ff(v)m(oid)p Fg(\))390
-3921 y Ft(Whenev)m(er)34 b(an)g(application)h(determines)e(that)i(k)m
+2796 y Ft(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 4030 y Fs(rl_callback_read_char\(\))p Ft(,)17 b(whic)m(h)22
+390 2905 y Fs(rl_callback_read_char\(\))p Ft(,)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 4140 y(source.)40 b(If)27 b(that)i(c)m(haracter)g(completes)
+(input)390 3015 y(source.)40 b(If)27 b(that)i(c)m(haracter)g(completes)
h(the)e(line,)h Fs(rl_callback_read_char)22 b Ft(will)28
-b(in)m(v)m(ok)m(e)i(the)390 4249 y Fj(lhandler)47 b Ft(function)40
+b(in)m(v)m(ok)m(e)i(the)390 3124 y Fj(lhandler)47 b Ft(function)40
b(installed)i(b)m(y)e Fs(rl_callback_handler_insta)o(ll)35
-b Ft(to)41 b(pro)s(cess)f(the)h(line.)390 4359 y(Before)j(calling)h
+b Ft(to)41 b(pro)s(cess)f(the)h(line.)390 3234 y(Before)j(calling)h
(the)e Fj(lhandler)49 b Ft(function,)e(the)c(terminal)h(settings)g(are)
-g(reset)f(to)h(the)g(v)-5 b(alues)390 4469 y(they)44
+g(reset)f(to)h(the)g(v)-5 b(alues)390 3344 y(they)44
b(had)e(b)s(efore)h(calling)i Fs(rl_callback_handler_insta)o(ll)p
Ft(.)73 b(If)43 b(the)h Fj(lhandler)49 b Ft(function)390
-4578 y(returns,)27 b(and)h(the)g(line)g(handler)f(remains)h(installed,)
+3453 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
-4688 y(Readline's)k(use)f(again.)42 b Fs(EOF)29 b Ft(is)i(indicated)g
+3563 y(Readline's)k(use)f(again.)42 b Fs(EOF)29 b Ft(is)i(indicated)g
(b)m(y)f(calling)i Fj(lhandler)k Ft(with)30 b(a)h Fs(NULL)e
-Ft(line.)3350 4902 y([F)-8 b(unction])-3599 b Fh(void)54
+Ft(line.)3350 3735 y([F)-8 b(unction])-3599 b Fh(void)54
b(rl_callback_sigcleanup)e Fg(\()p Ff(v)m(oid)p Fg(\))390
-5011 y Ft(Clean)26 b(up)e(an)m(y)i(in)m(ternal)g(state)h(the)e(callbac)
+3844 y Ft(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 5121 y(to)35 b(rl)p 572 5121 28 4 v
-40 w(callbac)m(k)p 928 5121 V 42 w(read)p 1142 5121 V
+(een)f(calls)390 3954 y(to)35 b(rl)p 572 3954 28 4 v
+40 w(callbac)m(k)p 928 3954 V 42 w(read)p 1142 3954 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
-5230 y(in)m(tended)f(to)h(b)s(e)e(used)g(b)m(y)h(applications)h(that)g
+4063 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
-5340 y(Readline's)f(in)m(ternal)g(signal)g(handler)f(calls)h(this)g
-(when)e(appropriate.)p eop end
-%%Page: 45 49
-TeXDict begin 45 48 bop 150 -116 a Ft(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 Fh(void)54 b(rl_callback_handler_remo)q
-(ve)e Fg(\()p Ff(v)m(oid)p Fg(\))390 408 y Ft(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
-518 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
-Fj(lhandler)31 b Ft(installed)390 628 y(b)m(y)25 b Fs
-(rl_callback_handler_insta)o(ll)19 b Ft(do)s(es)25 b(not)h(exit)g(the)g
-(program,)g(either)g(this)f(function)g(or)390 737 y(the)32
-b(function)f(referred)f(to)i(b)m(y)g(the)f(v)-5 b(alue)32
-b(of)g Fs(rl_deprep_term_function)25 b Ft(should)30 b(b)s(e)h(called)
-390 847 y(b)s(efore)f(the)h(program)f(exits)h(to)g(reset)g(the)f
-(terminal)h(settings.)150 1080 y Fi(2.4.13)63 b(A)41
-b(Readline)f(Example)150 1227 y Ft(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 1336 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 Fs(M-c)p Ft(',)h(then)e(t)m(yping)g(`)p
-Fs(M-c)p Ft(')150 1446 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 Fs(M-1)f(0)g(M-c)p Ft(')h(w)m(ould)g(c)m(hange)i(the)150
-1555 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
-1724 y Fs(/*)47 b(Invert)f(the)h(case)g(of)g(the)g(COUNT)f(following)g
-(characters.)e(*/)390 1833 y(int)390 1943 y(invert_case_line)f
-(\(count,)j(key\))629 2052 y(int)h(count,)f(key;)390
-2162 y({)485 2271 y(register)g(int)h(start,)f(end,)h(i;)485
-2491 y(start)g(=)g(rl_point;)485 2710 y(if)h(\(rl_point)d(>=)i
-(rl_end\))581 2819 y(return)f(\(0\);)485 3039 y(if)i(\(count)e(<)h(0\))
-581 3148 y({)676 3258 y(direction)f(=)h(-1;)676 3367
-y(count)g(=)g(-count;)581 3477 y(})485 3587 y(else)581
-3696 y(direction)e(=)j(1;)485 3915 y(/*)g(Find)e(the)h(end)g(of)g(the)g
-(range)g(to)g(modify.)f(*/)485 4025 y(end)h(=)h(start)e(+)i(\(count)e
-(*)h(direction\);)485 4244 y(/*)h(Force)e(it)h(to)g(be)h(within)e
-(range.)g(*/)485 4354 y(if)i(\(end)e(>)i(rl_end\))581
-4463 y(end)f(=)g(rl_end;)485 4573 y(else)g(if)g(\(end)g(<)g(0\))581
-4682 y(end)g(=)g(0;)485 4902 y(if)h(\(start)e(==)h(end\))581
-5011 y(return)f(\(0\);)485 5230 y(if)i(\(start)e(>)h(end\))581
-5340 y({)p eop end
-%%Page: 46 50
-TeXDict begin 46 49 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(46)676
-299 y Fs(int)47 b(temp)g(=)g(start;)676 408 y(start)g(=)g(end;)676
-518 y(end)g(=)h(temp;)581 628 y(})485 847 y(/*)g(Tell)e(readline)g
-(that)g(we)i(are)f(modifying)e(the)i(line,)629 956 y(so)g(it)g(will)g
-(save)f(the)h(undo)g(information.)d(*/)485 1066 y(rl_modifying)h
-(\(start,)h(end\);)485 1285 y(for)h(\(i)h(=)f(start;)f(i)i(!=)f(end;)f
-(i++\))581 1395 y({)676 1504 y(if)i(\(_rl_uppercase_p)43
-b(\(rl_line_buffer[i]\)\))772 1614 y(rl_line_buffer[i])g(=)k
-(_rl_to_lower)e(\(rl_line_buffer[i]\);)676 1724 y(else)i(if)g
-(\(_rl_lowercase_p)d(\(rl_line_buffer[i]\)\))772 1833
-y(rl_line_buffer[i])f(=)k(_rl_to_upper)e(\(rl_line_buffer[i]\);)581
-1943 y(})485 2052 y(/*)j(Move)e(point)h(to)g(on)g(top)g(of)g(the)g
-(last)g(character)e(changed.)g(*/)485 2162 y(rl_point)h(=)h
-(\(direction)e(==)j(1\))f(?)g(end)g(-)h(1)f(:)h(start;)485
-2271 y(return)f(\(0\);)390 2381 y(})150 2614 y Fi(2.4.14)63
-b(Alternate)40 b(In)m(terface)g(Example)150 2761 y Ft(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 2870 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
-2980 y(functions.)40 b(It)31 b(understands)d(the)j(EOF)f(c)m(haracter)i
-(or)e Fs(")p Ft(exit)p Fs(")h Ft(to)g(exit)g(the)g(program.)390
-3148 y Fs(/*)47 b(Standard)f(include)g(files.)g(stdio.h)f(is)j
-(required.)d(*/)390 3258 y(#include)h(<stdlib.h>)390
-3367 y(#include)g(<string.h>)390 3477 y(#include)g(<unistd.h>)390
-3587 y(#include)g(<locale.h>)390 3806 y(/*)h(Used)g(for)g(select\(2\))e
-(*/)390 3915 y(#include)h(<sys/types.h>)390 4025 y(#include)g
-(<sys/select.h>)390 4244 y(#include)g(<signal.h>)390
-4463 y(#include)g(<stdio.h>)390 4682 y(/*)h(Standard)f(readline)f
-(include)h(files.)g(*/)390 4792 y(#include)g(<readline/readline.h>)390
-4902 y(#include)g(<readline/history.h>)390 5121 y(static)g(void)h
-(cb_linehandler)d(\(char)i(*\);)390 5230 y(static)g(void)h(sighandler)e
-(\(int\);)p eop end
+4173 y(Readline's)f(in)m(ternal)g(signal)g(handler)f(calls)h(this)g
+(when)e(appropriate.)3350 4345 y([F)-8 b(unction])-3599
+b Fh(void)54 b(rl_callback_handler_remo)q(ve)e Fg(\()p
+Ff(v)m(oid)p Fg(\))390 4454 y Ft(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 4564 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 Fj(lhandler)31 b Ft(installed)390
+4673 y(b)m(y)25 b Fs(rl_callback_handler_insta)o(ll)19
+b Ft(do)s(es)25 b(not)h(exit)g(the)g(program,)g(either)g(this)f
+(function)g(or)390 4783 y(the)32 b(function)f(referred)f(to)i(b)m(y)g
+(the)f(v)-5 b(alue)32 b(of)g Fs(rl_deprep_term_function)25
+b Ft(should)30 b(b)s(e)h(called)390 4893 y(b)s(efore)f(the)h(program)f
+(exits)h(to)g(reset)g(the)f(terminal)h(settings.)150
+5083 y Fi(2.4.13)63 b(A)41 b(Readline)f(Example)150 5230
+y Ft(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 5340 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 Fs(M-c)p Ft(',)h(then)e(t)m(yping)g(`)p Fs(M-c)p
+Ft(')p eop end
%%Page: 47 51
TeXDict begin 47 50 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(47)390
-299 y Fs(int)47 b(running;)390 408 y(int)g(sigwinch_received;)390
-518 y(const)f(char)h(*prompt)f(=)h("rltest$)f(";)390
-737 y(/*)h(Handle)f(SIGWINCH)g(and)h(window)f(size)g(changes)g(when)h
-(readline)e(is)j(not)f(active)f(and)p 3922 757 42 84
-v 533 847 a(reading)g(a)h(character.)e(*/)390 956 y(static)h(void)390
-1066 y(sighandler)f(\(int)i(sig\))390 1176 y({)485 1285
-y(sigwinch_received)d(=)j(1;)390 1395 y(})390 1614 y(/*)g(Callback)f
-(function)f(called)h(for)h(each)g(line)g(when)f(accept-line)f
-(executed,)g(EOF)533 1724 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
-1833 y(also)g(call)f(exit\(3\).)g(*/)390 1943 y(static)g(void)390
-2052 y(cb_linehandler)e(\(char)i(*line\))390 2162 y({)485
-2271 y(/*)i(Can)f(use)f(^D)i(\(stty)e(eof\))h(or)g(`exit')f(to)h(exit.)
-f(*/)485 2381 y(if)i(\(line)e(==)h(NULL)g(||)g(strcmp)f(\(line,)g
-("exit"\))g(==)h(0\))581 2491 y({)676 2600 y(if)h(\(line)e(==)h(0\))772
-2710 y(printf)f(\("\\n"\);)676 2819 y(printf)g(\("exit\\n"\);)676
-2929 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 2949 V 820 3039 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 3059 42 76 v 820 3148 a(being)g(displayed.)f(*/)676
-3258 y(rl_callback_handler_remove)c(\(\);)676 3477 y(running)46
-b(=)i(0;)581 3587 y(})485 3696 y(else)581 3806 y({)676
-3915 y(if)g(\(*line\))772 4025 y(add_history)d(\(line\);)676
-4134 y(printf)h(\("input)g(line:)h(\045s\\n",)f(line\);)676
-4244 y(free)h(\(line\);)581 4354 y(})390 4463 y(})390
-4682 y(int)390 4792 y(main)g(\(int)f(c,)h(char)g(**v\))390
-4902 y({)485 5011 y(fd_set)g(fds;)485 5121 y(int)g(r;)485
-5340 y(/*)h(Set)f(the)f(default)g(locale)g(values)g(according)g(to)h
-(environment)e(variables.)g(*/)p 3874 5360 42 84 v eop
-end
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(47)150
+299 y(w)m(ould)31 b(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 Fs(M-1)f(0)g(M-c)p
+Ft(')h(w)m(ould)g(c)m(hange)i(the)150 408 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 628 y Fs(/*)47
+b(Invert)f(the)h(case)g(of)g(the)g(COUNT)f(following)g(characters.)e
+(*/)390 737 y(int)390 847 y(invert_case_line)f(\(count,)j(key\))629
+956 y(int)h(count,)f(key;)390 1066 y({)485 1176 y(register)g(int)h
+(start,)f(end,)h(i;)485 1395 y(start)g(=)g(rl_point;)485
+1614 y(if)h(\(rl_point)d(>=)i(rl_end\))581 1724 y(return)f(\(0\);)485
+1943 y(if)i(\(count)e(<)h(0\))581 2052 y({)676 2162 y(direction)f(=)h
+(-1;)676 2271 y(count)g(=)g(-count;)581 2381 y(})485
+2491 y(else)581 2600 y(direction)e(=)j(1;)485 2819 y(/*)g(Find)e(the)h
+(end)g(of)g(the)g(range)g(to)g(modify.)f(*/)485 2929
+y(end)h(=)h(start)e(+)i(\(count)e(*)h(direction\);)485
+3148 y(/*)h(Force)e(it)h(to)g(be)h(within)e(range.)g(*/)485
+3258 y(if)i(\(end)e(>)i(rl_end\))581 3367 y(end)f(=)g(rl_end;)485
+3477 y(else)g(if)g(\(end)g(<)g(0\))581 3587 y(end)g(=)g(0;)485
+3806 y(if)h(\(start)e(==)h(end\))581 3915 y(return)f(\(0\);)485
+4134 y(if)i(\(start)e(>)h(end\))581 4244 y({)676 4354
+y(int)g(temp)g(=)g(start;)676 4463 y(start)g(=)g(end;)676
+4573 y(end)g(=)h(temp;)581 4682 y(})485 4902 y(/*)g(Tell)e(readline)g
+(that)g(we)i(are)f(modifying)e(the)i(line,)629 5011 y(so)g(it)g(will)g
+(save)f(the)h(undo)g(information.)d(*/)485 5121 y(rl_modifying)h
+(\(start,)h(end\);)485 5340 y(for)h(\(i)h(=)f(start;)f(i)i(!=)f(end;)f
+(i++\))p eop end
%%Page: 48 52
TeXDict begin 48 51 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(48)485
-299 y Fs(setlocale)46 b(\(LC_ALL,)f(""\);)485 518 y(/*)j(Handle)e
-(window)g(size)g(changes)g(when)h(readline)e(is)j(not)f(active)f(and)h
-(reading)629 628 y(characters.)d(*/)485 737 y(signal)j(\(SIGWINCH,)e
-(sighandler\);)485 956 y(/*)j(Install)d(the)i(line)g(handler.)f(*/)485
-1066 y(rl_callback_handler_instal)o(l)c(\(prompt,)j(cb_linehandler\);)
-485 1285 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
-1395 y(to)g(read)f(on)i(readline's)d(input)h(stream)g(\(defaults)f(to)j
-(standard)d(input\))h(and)629 1504 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
-1614 y(have)g(to)h(modify)g(the)f(user's)h(terminal)e(settings.)g(*/)
-485 1724 y(running)h(=)i(1;)485 1833 y(while)f(\(running\))581
-1943 y({)676 2052 y(FD_ZERO)f(\(&fds\);)676 2162 y(FD_SET)g(\(fileno)g
-(\(rl_instream\),)e(&fds\);)676 2381 y(r)k(=)f(select)f(\(FD_SETSIZE,)f
-(&fds,)h(NULL,)h(NULL,)f(NULL\);)676 2491 y(if)i(\(r)f(<)g(0)h(&&)f
-(errno)f(!=)h(EINTR\))772 2600 y({)867 2710 y(perror)f(\("rltest:)g
-(select"\);)867 2819 y(rl_callback_handler_remov)o(e)c(\(\);)867
-2929 y(break;)772 3039 y(})676 3148 y(if)48 b(\(sigwinch_received\))390
-3258 y({)485 3367 y(rl_resize_terminal)43 b(\(\);)485
-3477 y(sigwinch_received)h(=)j(0;)390 3587 y(})676 3696
-y(if)h(\(r)f(<)g(0\))390 3806 y(continue;)676 4025 y(if)h(\(FD_ISSET)d
-(\(fileno)h(\(rl_instream\),)e(&fds\)\))772 4134 y
-(rl_callback_read_char)e(\(\);)581 4244 y(})485 4463
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(48)581
+299 y Fs({)676 408 y(if)48 b(\(_rl_uppercase_p)43 b
+(\(rl_line_buffer[i]\)\))772 518 y(rl_line_buffer[i])g(=)k
+(_rl_to_lower)e(\(rl_line_buffer[i]\);)676 628 y(else)i(if)g
+(\(_rl_lowercase_p)d(\(rl_line_buffer[i]\)\))772 737
+y(rl_line_buffer[i])f(=)k(_rl_to_upper)e(\(rl_line_buffer[i]\);)581
+847 y(})485 956 y(/*)j(Move)e(point)h(to)g(on)g(top)g(of)g(the)g(last)g
+(character)e(changed.)g(*/)485 1066 y(rl_point)h(=)h(\(direction)e(==)j
+(1\))f(?)g(end)g(-)h(1)f(:)h(start;)485 1176 y(return)f(\(0\);)390
+1285 y(})150 1518 y Fi(2.4.14)63 b(Alternate)40 b(In)m(terface)g
+(Example)150 1665 y Ft(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 1775 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 1884 y(functions.)40 b(It)31
+b(understands)d(the)j(EOF)f(c)m(haracter)i(or)e Fs(")p
+Ft(exit)p Fs(")h Ft(to)g(exit)g(the)g(program.)390 2052
+y Fs(/*)47 b(Standard)f(include)g(files.)g(stdio.h)f(is)j(required.)d
+(*/)390 2162 y(#include)h(<stdlib.h>)390 2271 y(#include)g(<string.h>)
+390 2381 y(#include)g(<unistd.h>)390 2491 y(#include)g(<locale.h>)390
+2710 y(/*)h(Used)g(for)g(select\(2\))e(*/)390 2819 y(#include)h
+(<sys/types.h>)390 2929 y(#include)g(<sys/select.h>)390
+3148 y(#include)g(<signal.h>)390 3367 y(#include)g(<stdio.h>)390
+3587 y(/*)h(Standard)f(readline)f(include)h(files.)g(*/)390
+3696 y(#include)g(<readline/readline.h>)390 3806 y(#include)g
+(<readline/history.h>)390 4025 y(static)g(void)h(cb_linehandler)d
+(\(char)i(*\);)390 4134 y(static)g(void)h(sighandler)e(\(int\);)390
+4354 y(int)i(running;)390 4463 y(int)g(sigwinch_received;)390
+4573 y(const)f(char)h(*prompt)f(=)h("rltest$)f(";)390
+4792 y(/*)h(Handle)f(SIGWINCH)g(and)h(window)f(size)g(changes)g(when)h
+(readline)e(is)j(not)f(active)f(and)p 3922 4812 42 84
+v 533 4902 a(reading)g(a)h(character.)e(*/)390 5011 y(static)h(void)390
+5121 y(sighandler)f(\(int)i(sig\))390 5230 y({)485 5340
+y(sigwinch_received)d(=)j(1;)p eop end
+%%Page: 49 53
+TeXDict begin 49 52 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(49)390
+299 y Fs(})390 518 y(/*)47 b(Callback)f(function)f(called)h(for)h(each)
+g(line)g(when)f(accept-line)f(executed,)g(EOF)533 628
+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 737 y(also)g(call)f(exit\(3\).)g(*/)
+390 847 y(static)g(void)390 956 y(cb_linehandler)e(\(char)i(*line\))390
+1066 y({)485 1176 y(/*)i(Can)f(use)f(^D)i(\(stty)e(eof\))h(or)g(`exit')
+f(to)h(exit.)f(*/)485 1285 y(if)i(\(line)e(==)h(NULL)g(||)g(strcmp)f
+(\(line,)g("exit"\))g(==)h(0\))581 1395 y({)676 1504
+y(if)h(\(line)e(==)h(0\))772 1614 y(printf)f(\("\\n"\);)676
+1724 y(printf)g(\("exit\\n"\);)676 1833 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 1853 42 84 v 820 1943 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
+1963 42 76 v 820 2052 a(being)g(displayed.)f(*/)676 2162
+y(rl_callback_handler_remove)c(\(\);)676 2381 y(running)46
+b(=)i(0;)581 2491 y(})485 2600 y(else)581 2710 y({)676
+2819 y(if)g(\(*line\))772 2929 y(add_history)d(\(line\);)676
+3039 y(printf)h(\("input)g(line:)h(\045s\\n",)f(line\);)676
+3148 y(free)h(\(line\);)581 3258 y(})390 3367 y(})390
+3587 y(int)390 3696 y(main)g(\(int)f(c,)h(char)g(**v\))390
+3806 y({)485 3915 y(fd_set)g(fds;)485 4025 y(int)g(r;)485
+4244 y(/*)h(Set)f(the)f(default)g(locale)g(values)g(according)g(to)h
+(environment)e(variables.)g(*/)p 3874 4264 42 84 v 485
+4354 a(setlocale)h(\(LC_ALL,)f(""\);)485 4573 y(/*)j(Handle)e(window)g
+(size)g(changes)g(when)h(readline)e(is)j(not)f(active)f(and)h(reading)
+629 4682 y(characters.)d(*/)485 4792 y(signal)j(\(SIGWINCH,)e
+(sighandler\);)485 5011 y(/*)j(Install)d(the)i(line)g(handler.)f(*/)485
+5121 y(rl_callback_handler_instal)o(l)c(\(prompt,)j(cb_linehandler\);)
+485 5340 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)p
+eop end
+%%Page: 50 54
+TeXDict begin 50 53 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(50)629
+299 y Fs(to)47 b(read)f(on)i(readline's)d(input)h(stream)g(\(defaults)f
+(to)j(standard)d(input\))h(and)629 408 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 518 y(have)g(to)h(modify)g(the)f(user's)h(terminal)e
+(settings.)g(*/)485 628 y(running)h(=)i(1;)485 737 y(while)f
+(\(running\))581 847 y({)676 956 y(FD_ZERO)f(\(&fds\);)676
+1066 y(FD_SET)g(\(fileno)g(\(rl_instream\),)e(&fds\);)676
+1285 y(r)k(=)f(select)f(\(FD_SETSIZE,)f(&fds,)h(NULL,)h(NULL,)f
+(NULL\);)676 1395 y(if)i(\(r)f(<)g(0)h(&&)f(errno)f(!=)h(EINTR\))772
+1504 y({)867 1614 y(perror)f(\("rltest:)g(select"\);)867
+1724 y(rl_callback_handler_remov)o(e)c(\(\);)867 1833
+y(break;)772 1943 y(})676 2052 y(if)48 b(\(sigwinch_received\))390
+2162 y({)485 2271 y(rl_resize_terminal)43 b(\(\);)485
+2381 y(sigwinch_received)h(=)j(0;)390 2491 y(})676 2600
+y(if)h(\(r)f(<)g(0\))390 2710 y(continue;)676 2929 y(if)h(\(FD_ISSET)d
+(\(fileno)h(\(rl_instream\),)e(&fds\)\))772 3039 y
+(rl_callback_read_char)e(\(\);)581 3148 y(})485 3367
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 Fr(2.5)68
-b(Readline)47 b(Signal)e(Handling)150 5121 y Ft(Signals)31
+3477 y(return)g(0;)390 3587 y(})150 3835 y Fr(2.5)68
+b(Readline)47 b(Signal)e(Handling)150 3995 y Ft(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 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: 49 53
-TeXDict begin 49 52 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(49)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
-(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
-(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
-(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
-(with)g(functions)g(to)h(do)g(so)f(man)m(ually)-8 b(.)275
-775 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
-885 y(\()p Fs(SIGINT)p Ft(,)e Fs(SIGQUIT)p Ft(,)f Fs(SIGTERM)p
+4104 y(of)24 b(another)f(pro)s(cess.)38 b(They)23 b(are)h(in)m(tended)f
+(to)h(indicate)h(exceptional)g(ev)m(en)m(ts,)i(lik)m(e)d(a)g(user)f
+(pressing)g(the)150 4214 y(terminal's)33 b(in)m(terrupt)f(k)m(ey)-8
+b(,)34 b(or)e(a)g(net)m(w)m(ork)h(connection)h(b)s(eing)e(brok)m(en.)46
+b(There)31 b(is)h(a)h(class)g(of)f(signals)150 4323 y(that)f(can)g(b)s
+(e)e(sen)m(t)i(to)g(the)g(pro)s(cess)f(curren)m(tly)g(reading)h(input)e
+(from)h(the)g(k)m(eyb)s(oard.)41 b(Since)30 b(Readline)150
+4433 y(c)m(hanges)41 b(the)e(terminal)i(attributes)f(when)f(it)h(is)f
+(called,)44 b(it)c(needs)f(to)i(p)s(erform)d(sp)s(ecial)i(pro)s
+(cessing)150 4543 y(when)33 b(suc)m(h)h(a)h(signal)g(is)f(receiv)m(ed)i
+(in)e(order)g(to)h(restore)f(the)h(terminal)g(to)g(a)f(sane)h(state,)i
+(or)d(pro)m(vide)150 4652 y(application)e(writers)e(with)g(functions)g
+(to)h(do)f(so)h(man)m(ually)-8 b(.)275 4792 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
+4902 y(\()p Fs(SIGINT)p Ft(,)e Fs(SIGQUIT)p Ft(,)f Fs(SIGTERM)p
Ft(,)g Fs(SIGHUP)p Ft(,)g Fs(SIGALRM)p Ft(,)g Fs(SIGTSTP)p
Ft(,)g Fs(SIGTTIN)p Ft(,)g(and)g Fs(SIGTTOU)p Ft(\).)59
-b(When)150 994 y(one)27 b(of)g(these)g(signals)g(is)g(receiv)m(ed,)i
+b(When)150 5011 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 1104 y(that)33 b(w)m(ere)g(in)f(e\013ect)h(b)s(efore)f
+(to)g(those)150 5121 y(that)33 b(w)m(ere)g(in)f(e\013ect)h(b)s(efore)f
Fs(readline\(\))e Ft(w)m(as)i(called,)j(reset)d(the)h(signal)g
-(handling)f(to)h(what)f(it)h(w)m(as)150 1214 y(b)s(efore)26
+(handling)f(to)h(what)f(it)h(w)m(as)150 5230 y(b)s(efore)26
b Fs(readline\(\))e Ft(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
-1323 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
-1433 y(con)m(tin)m(ue)29 b(to)g(accept)h(input.)39 b(When)28
+5340 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)p
+eop end
+%%Page: 51 55
+TeXDict begin 51 54 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(51)150
+299 y(con)m(tin)m(ue)29 b(to)g(accept)h(input.)39 b(When)28
b(a)h Fs(SIGINT)d Ft(is)j(receiv)m(ed,)h(the)e(Readline)h(signal)g
-(handler)f(p)s(erforms)150 1542 y(some)39 b(additional)h(w)m(ork,)h
+(handler)f(p)s(erforms)150 408 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 1652 y(description)30
+(b)s(e)e(ab)s(orted)g(\(see)i(the)150 518 y(description)30
b(of)h Fs(rl_free_line_state\(\))25 b Ft(b)s(elo)m(w\).)275
-1800 y(There)e(is)i(an)f(additional)h(Readline)g(signal)g(handler,)g
+656 y(There)e(is)i(an)f(additional)h(Readline)g(signal)g(handler,)g
(for)f Fs(SIGWINCH)p Ft(,)g(whic)m(h)g(the)g(k)m(ernel)h(sends)e(to)j
-(a)150 1909 y(pro)s(cess)i(whenev)m(er)h(the)g(terminal's)g(size)h(c)m
+(a)150 765 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
-Fs(xterm)p Ft(\).)39 b(The)150 2019 y(Readline)d Fs(SIGWINCH)e
+Fs(xterm)p Ft(\).)39 b(The)150 875 y(Readline)d Fs(SIGWINCH)e
Ft(handler)g(up)s(dates)h(Readline's)h(in)m(ternal)h(screen)e(size)i
-(information,)g(and)e(then)150 2128 y(calls)g(an)m(y)f
+(information,)g(and)e(then)150 984 y(calls)g(an)m(y)f
Fs(SIGWINCH)e Ft(signal)i(handler)f(the)h(calling)h(application)g(has)f
-(installed.)51 b(Readline)35 b(calls)g(the)150 2238 y(application's)i
+(installed.)51 b(Readline)35 b(calls)g(the)150 1094 y(application's)i
Fs(SIGWINCH)c Ft(signal)i(handler)g(without)g(resetting)h(the)g
-(terminal)f(to)h(its)g(original)g(state.)150 2347 y(If)31
+(terminal)f(to)h(its)g(original)g(state.)150 1204 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
-2457 y(return)28 b(\(for)i(example,)h(a)f Fs(longjmp)d
+1313 y(return)28 b(\(for)i(example,)h(a)f Fs(longjmp)d
Ft(bac)m(k)k(to)f(a)g(main)g(pro)s(cessing)f(lo)s(op\),)h(it)g
-Fk(must)39 b Ft(call)31 b Fs(rl_cleanup_)150 2567 y(after_signal\(\))26
+Fk(must)39 b Ft(call)31 b Fs(rl_cleanup_)150 1423 y(after_signal\(\))26
b Ft(\(describ)s(ed)k(b)s(elo)m(w\),)h(to)g(restore)g(the)g(terminal)g
-(state.)275 2714 y(When)38 b(an)h(application)h(is)f(using)g(the)g
+(state.)275 1560 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 2824 y(terface],)48 b(page)c(44\),)j(Readline)c(installs)h
+(In-)150 1670 y(terface],)48 b(page)c(46\),)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 2933 y Fs(rl_callback_read_char)p Ft(.)c(Applications)33
+(to)150 1779 y Fs(rl_callback_read_char)p Ft(.)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 3043 y(clean)d(up)d(Readline's)j(state)g(if)e(they)h(wish)f
+g(to)150 1889 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 3153 y(and)k(restores)h(the)f(terminal)h(state.)275
-3300 y(If)k(an)g(application)i(using)f(the)g(callbac)m(k)h(in)m
+(completes)150 1999 y(and)k(restores)h(the)f(terminal)h(state.)275
+2136 y(If)k(an)g(application)i(using)f(the)g(callbac)m(k)h(in)m
(terface)h(wishes)d(to)h(ha)m(v)m(e)h(Readline)g(install)f(its)g
-(signal)150 3410 y(handlers)22 b(at)h(the)g(time)h(the)e(application)j
+(signal)150 2246 y(handlers)22 b(at)h(the)g(time)h(the)e(application)j
(calls)e Fs(rl_callback_handler_instal)o(l)17 b Ft(and)22
-b(remo)m(v)m(e)i(them)150 3519 y(only)f(when)g(a)g(complete)i(line)f
+b(remo)m(v)m(e)i(them)150 2355 y(only)f(when)g(a)g(complete)i(line)f
(of)f(input)f(has)h(b)s(een)g(read,)i(it)e(should)g(set)g(the)h
-Fs(rl_persistent_signal_)150 3629 y(handlers)c Ft(v)-5
+Fs(rl_persistent_signal_)150 2465 y(handlers)c Ft(v)-5
b(ariable)23 b(to)f(a)h(non-zero)f(v)-5 b(alue.)39 b(This)21
b(allo)m(ws)i(an)f(application)i(to)f(defer)e(all)i(of)f(the)h
-(handling)150 3738 y(of)j(the)h(signals)f(Readline)h(catc)m(hes)h(to)f
+(handling)150 2575 y(of)j(the)h(signals)f(Readline)h(catc)m(hes)h(to)f
(Readline.)39 b(Applications)27 b(should)f(use)f(this)h(v)-5
-b(ariable)27 b(with)f(care;)150 3848 y(it)d(can)g(result)g(in)f
+b(ariable)27 b(with)f(care;)150 2684 y(it)d(can)g(result)g(in)f
(Readline)h(catc)m(hing)i(signals)e(and)f(not)h(acting)h(on)f(them)f
-(\(or)h(allo)m(wing)i(the)e(application)150 3958 y(to)36
+(\(or)h(allo)m(wing)i(the)e(application)150 2794 y(to)36
b(react)g(to)g(them\))g(un)m(til)f(the)h(application)g(calls)h
Fs(rl_callback_read_char)p Ft(.)49 b(This)35 b(can)g(result)g(in)150
-4067 y(an)30 b(application)h(b)s(ecoming)f(less)g(resp)s(onsiv)m(e)f
+2903 y(an)30 b(application)h(b)s(ecoming)f(less)g(resp)s(onsiv)m(e)f
(to)i(k)m(eyb)s(oard)e(signals)h(lik)m(e)h(SIGINT.)f(If)f(an)h
-(application)150 4177 y(do)s(es)24 b(not)g(w)m(an)m(t)h(or)g(need)f(to)
+(application)150 3013 y(do)s(es)24 b(not)g(w)m(an)m(t)h(or)g(need)f(to)
h(p)s(erform)d(an)m(y)j(signal)g(handling,)g(or)f(do)s(es)g(not)h(need)
-f(to)g(do)h(an)m(y)f(pro)s(cessing)150 4286 y(b)s(et)m(w)m(een)31
+f(to)g(do)h(an)m(y)f(pro)s(cessing)150 3123 y(b)s(et)m(w)m(een)31
b(calls)h(to)f Fs(rl_callback_read_char)p Ft(,)24 b(setting)32
b(this)e(v)-5 b(ariable)31 b(ma)m(y)g(b)s(e)f(desirable.)275
-4434 y(Readline)f(pro)m(vides)f(t)m(w)m(o)i(v)-5 b(ariables)29
+3260 y(Readline)f(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 4544 y(it)34 b(will)f(catc)m(h)i(certain)f(signals)f(and)
+(or)h(not)150 3370 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 4653 y(applications)38
+b(It)33 b(is)g(imp)s(ortan)m(t)g(that)150 3479 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 Fs(readline\(\))p
-Ft(,)d(not)i(in)g(a)150 4763 y(signal)31 b(handler,)f(so)g(Readline's)i
+Ft(,)d(not)i(in)g(a)150 3589 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
-4973 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_catch_signals)390
-5083 y Ft(If)28 b(this)h(v)-5 b(ariable)30 b(is)f(non-zero,)h(Readline)
+3779 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_catch_signals)390
+3889 y Ft(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 Fs(SIGINT)p
-Ft(,)f Fs(SIGQUIT)p Ft(,)390 5192 y Fs(SIGTERM)p Ft(,)h
+Ft(,)f Fs(SIGQUIT)p Ft(,)390 3998 y Fs(SIGTERM)p Ft(,)h
Fs(SIGHUP)p Ft(,)g Fs(SIGALRM)p Ft(,)f Fs(SIGTSTP)p Ft(,)h
-Fs(SIGTTIN)p Ft(,)f(and)i Fs(SIGTTOU)p Ft(.)390 5340
+Fs(SIGTTIN)p Ft(,)f(and)i Fs(SIGTTOU)p Ft(.)390 4136
y(The)g(default)g(v)-5 b(alue)31 b(of)g Fs(rl_catch_signals)26
-b Ft(is)k(1.)p eop end
-%%Page: 50 54
-TeXDict begin 50 53 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(50)3371
-299 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_catch_sigwinch)390
-408 y Ft(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 518 y Fs(SIGWINCH)p Ft(.)390 646 y(The)30
-b(default)g(v)-5 b(alue)31 b(of)g Fs(rl_catch_sigwinch)25
-b Ft(is)31 b(1.)3371 810 y([V)-8 b(ariable])-3598 b Fh(int)53
-b(rl_persistent_signal_)q(hand)q(ler)q(s)390 920 y Ft(If)31
-b(an)h(application)g(using)g(the)f(callbac)m(k)j(in)m(terface)f(wishes)
-e(Readline's)h(signal)h(handlers)d(to)j(b)s(e)390 1029
-y(installed)21 b(and)f(activ)m(e)j(during)d(the)h(set)g(of)f(calls)i
-(to)g Fs(rl_callback_read_char)14 b Ft(that)22 b(constitutes)390
-1139 y(an)30 b(en)m(tire)i(single)f(line,)g(it)f(should)g(set)h(this)f
-(v)-5 b(ariable)31 b(to)g(a)g(non-zero)g(v)-5 b(alue.)390
-1267 y(The)30 b(default)g(v)-5 b(alue)31 b(of)g Fs
-(rl_persistent_signal_han)o(dle)o(rs)24 b Ft(is)31 b(0.)3371
-1431 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_change_environment)390
-1541 y Ft(If)31 b(this)g(v)-5 b(ariable)32 b(is)f(set)h(to)g(a)g
+b Ft(is)k(1.)3371 4326 y([V)-8 b(ariable])-3598 b Fh(int)53
+b(rl_catch_sigwinch)390 4436 y Ft(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
+4546 y Fs(SIGWINCH)p Ft(.)390 4683 y(The)30 b(default)g(v)-5
+b(alue)31 b(of)g Fs(rl_catch_sigwinch)25 b Ft(is)31 b(1.)3371
+4874 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_persistent_signal_)q
+(hand)q(ler)q(s)390 4983 y Ft(If)31 b(an)h(application)g(using)g(the)f
+(callbac)m(k)j(in)m(terface)f(wishes)e(Readline's)h(signal)h(handlers)d
+(to)j(b)s(e)390 5093 y(installed)21 b(and)f(activ)m(e)j(during)d(the)h
+(set)g(of)f(calls)i(to)g Fs(rl_callback_read_char)14
+b Ft(that)22 b(constitutes)390 5202 y(an)30 b(en)m(tire)i(single)f
+(line,)g(it)f(should)g(set)h(this)f(v)-5 b(ariable)31
+b(to)g(a)g(non-zero)g(v)-5 b(alue.)390 5340 y(The)30
+b(default)g(v)-5 b(alue)31 b(of)g Fs(rl_persistent_signal_han)o(dle)o
+(rs)24 b Ft(is)31 b(0.)p eop end
+%%Page: 52 56
+TeXDict begin 52 55 bop 150 -116 a Ft(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 Fh(int)53 b(rl_change_environment)390
+408 y Ft(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
-Fs(SIGWINCH)p Ft(,)e(Read-)390 1650 y(line)h(will)h(mo)s(dify)e(the)h
+Fs(SIGWINCH)p Ft(,)e(Read-)390 518 y(line)h(will)h(mo)s(dify)e(the)h
Fj(LINES)35 b Ft(and)29 b Fj(COLUMNS)35 b Ft(en)m(vironmen)m(t)30
b(v)-5 b(ariables)31 b(up)s(on)d(receipt)j(of)g(a)390
-1760 y Fs(SIGWINCH)390 1888 y Ft(The)f(default)g(v)-5
-b(alue)31 b(of)g Fs(rl_change_environment)24 b Ft(is)31
-b(1.)275 2052 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 2162 y(other)39 b(than)f(those)h(Readline)h(catc)m(hes)g
-(\()p Fs(SIGHUP)p Ft(,)g(for)e(example\),)k(Readline)d(pro)m(vides)g
-(con)m(v)m(enience)150 2271 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 2436 y([F)-8 b(unction])-3599
+628 y Fs(SIGWINCH)390 766 y Ft(The)f(default)g(v)-5 b(alue)31
+b(of)g Fs(rl_change_environment)24 b Ft(is)31 b(1.)275
+957 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 1067 y(other)39 b(than)f(those)h(Readline)h(catc)m(hes)g(\()p
+Fs(SIGHUP)p Ft(,)g(for)e(example\),)k(Readline)d(pro)m(vides)g(con)m(v)
+m(enience)150 1177 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 1368 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_pending_signal)e Fg(\()p Ff(v)m(oid)p
-Fg(\))390 2545 y Ft(Return)27 b(the)g(signal)h(n)m(um)m(b)s(er)e(of)i
+Fg(\))390 1478 y Ft(Return)27 b(the)g(signal)h(n)m(um)m(b)s(er)e(of)i
(the)f(most)h(recen)m(t)h(signal)f(Readline)g(receiv)m(ed)g(but)f(has)g
-(not)h(y)m(et)390 2655 y(handled,)i(or)g(0)h(if)f(there)h(is)f(no)g(p)s
-(ending)f(signal.)3350 2819 y([F)-8 b(unction])-3599
+(not)h(y)m(et)390 1587 y(handled,)i(or)g(0)h(if)f(there)h(is)f(no)g(p)s
+(ending)f(signal.)3350 1779 y([F)-8 b(unction])-3599
b Fh(void)54 b(rl_cleanup_after_signal)e Fg(\()p Ff(v)m(oid)p
-Fg(\))390 2929 y Ft(This)33 b(function)h(will)g(reset)g(the)g(state)i
+Fg(\))390 1889 y Ft(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
-Fs(readline\(\))390 3039 y Ft(w)m(as)c(called,)h(and)d(remo)m(v)m(e)j
+Fs(readline\(\))390 1998 y Ft(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 3148 y(v)-5 b(alues)31 b(of)f
+(ending)d(on)h(the)390 2108 y(v)-5 b(alues)31 b(of)f
Fs(rl_catch_signals)c Ft(and)k Fs(rl_catch_sigwinch)p
-Ft(.)3350 3313 y([F)-8 b(unction])-3599 b Fh(void)54
+Ft(.)3350 2300 y([F)-8 b(unction])-3599 b Fh(void)54
b(rl_free_line_state)c Fg(\()p Ff(v)m(oid)p Fg(\))390
-3422 y Ft(This)38 b(will)i(free)f(an)m(y)h(partial)g(state)g(asso)s
+2409 y Ft(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
-3532 y(mation,)46 b(an)m(y)d(partial)h(history)e(en)m(try)-8
+2519 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 3641 y(partially-en)m(tered)50
+b(and)42 b(an)m(y)390 2628 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 Fs(rl_cleanup_)390 3751 y(after_signal\(\))p
+(b)s(efore)e Fs(rl_cleanup_)390 2738 y(after_signal\(\))p
Ft(.)74 b(The)42 b(Readline)h(signal)g(handler)f(for)h
Fs(SIGINT)e Ft(calls)i(this)g(to)g(ab)s(ort)g(the)390
-3861 y(curren)m(t)30 b(input)g(line.)3350 4025 y([F)-8
+2847 y(curren)m(t)30 b(input)g(line.)3350 3039 y([F)-8
b(unction])-3599 b Fh(void)54 b(rl_reset_after_signal)d
-Fg(\()p Ff(v)m(oid)p Fg(\))390 4134 y Ft(This)28 b(will)g(reinitialize)
+Fg(\()p Ff(v)m(oid)p Fg(\))390 3149 y Ft(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 4244 y(ing)j(on)f(the)g(v)-5
+(handlers,)f(dep)s(end-)390 3258 y(ing)j(on)f(the)g(v)-5
b(alues)31 b(of)g Fs(rl_catch_signals)26 b Ft(and)j Fs
-(rl_catch_sigwinch)p Ft(.)275 4408 y(If)j(an)g(application)i(w)m(an)m
+(rl_catch_sigwinch)p Ft(.)275 3450 y(If)j(an)g(application)i(w)m(an)m
(ts)g(to)f(force)g(Readline)h(to)f(handle)g(an)m(y)g(signals)g(that)g
-(ha)m(v)m(e)h(arriv)m(ed)f(while)150 4518 y(it)j(has)g(b)s(een)f
+(ha)m(v)m(e)h(arriv)m(ed)f(while)150 3560 y(it)j(has)g(b)s(een)f
(executing,)j Fs(rl_check_signals\(\))31 b Ft(will)36
b(call)h(Readline's)g(in)m(ternal)g(signal)f(handler)f(if)150
-4628 y(there)i(are)g(an)m(y)g(p)s(ending)e(signals.)61
+3669 y(there)i(are)g(an)m(y)g(p)s(ending)e(signals.)61
b(This)36 b(is)g(primarily)h(in)m(tended)f(for)h(those)g(applications)h
-(that)f(use)150 4737 y(a)h(custom)g Fs(rl_getc_function)33
+(that)f(use)150 3779 y(a)h(custom)g Fs(rl_getc_function)33
b Ft(\(see)39 b(Section)g(2.3)g([Readline)f(V)-8 b(ariables],)42
-b(page)c(28\))h(and)e(wish)g(to)150 4847 y(handle)30
+b(page)c(29\))h(and)e(wish)g(to)150 3888 y(handle)30
b(signals)h(receiv)m(ed)h(while)e(w)m(aiting)i(for)e(input.)3350
-5011 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_check_signals)c
-Fg(\()p Ff(v)m(oid)p Fg(\))390 5121 y Ft(If)40 b(there)h(are)g(an)m(y)g
+4080 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_check_signals)c
+Fg(\()p Ff(v)m(oid)p Fg(\))390 4190 y Ft(If)40 b(there)h(are)g(an)m(y)g
(p)s(ending)e(signals,)44 b(call)e(Readline's)g(in)m(ternal)f(signal)g
-(handling)f(functions)390 5230 y(to)j(pro)s(cess)g(them.)77
+(handling)f(functions)390 4299 y(to)j(pro)s(cess)g(them.)77
b Fs(rl_pending_signal\(\))38 b Ft(can)43 b(b)s(e)f(used)g(indep)s
-(enden)m(tly)f(to)j(determine)390 5340 y(whether)30 b(or)g(not)h(there)
-f(are)h(an)m(y)g(p)s(ending)e(signals.)p eop end
-%%Page: 51 55
-TeXDict begin 51 54 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(51)275
-299 y(If)38 b(an)i(application)g(do)s(es)f(not)h(wish)f(Readline)h(to)g
-(catc)m(h)h Fs(SIGWINCH)p Ft(,)e(it)h(ma)m(y)g(call)h
-Fs(rl_resize_)150 408 y(terminal\(\))24 b Ft(or)j Fs
-(rl_set_screen_size\(\))22 b Ft(to)28 b(force)g(Readline)f(to)h(up)s
-(date)f(its)g(idea)h(of)f(the)g(terminal)150 518 y(size)k(when)f(it)h
-(receiv)m(es)h(a)e Fs(SIGWINCH)p Ft(.)3350 703 y([F)-8
-b(unction])-3599 b Fh(void)54 b(rl_echo_signal_char)d
-Fg(\()p Ff(in)m(t)33 b(sig)p Fg(\))390 813 y Ft(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
-922 y(displa)m(y)31 b(c)m(haracters)h(that)f(generate)h(signals,)f
-(calling)h(this)e(function)g(with)g Fj(sig)39 b Ft(set)31
-b(to)g Fs(SIGINT)p Ft(,)390 1032 y Fs(SIGQUIT)p Ft(,)e(or)h
-Fs(SIGTSTP)e Ft(will)j(displa)m(y)g(the)f(c)m(haracter)i(generating)g
-(that)f(signal.)3350 1217 y([F)-8 b(unction])-3599 b
-Fh(void)54 b(rl_resize_terminal)c Fg(\()p Ff(v)m(oid)p
-Fg(\))390 1326 y Ft(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 1511 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_set_screen_size)c
+(enden)m(tly)f(to)j(determine)390 4409 y(whether)30 b(or)g(not)h(there)
+f(are)h(an)m(y)g(p)s(ending)e(signals.)275 4600 y(If)38
+b(an)i(application)g(do)s(es)f(not)h(wish)f(Readline)h(to)g(catc)m(h)h
+Fs(SIGWINCH)p Ft(,)e(it)h(ma)m(y)g(call)h Fs(rl_resize_)150
+4710 y(terminal\(\))24 b Ft(or)j Fs(rl_set_screen_size\(\))22
+b Ft(to)28 b(force)g(Readline)f(to)h(up)s(date)f(its)g(idea)h(of)f(the)
+g(terminal)150 4820 y(size)k(when)f(it)h(receiv)m(es)h(a)e
+Fs(SIGWINCH)p Ft(.)3350 5011 y([F)-8 b(unction])-3599
+b Fh(void)54 b(rl_echo_signal_char)d Fg(\()p Ff(in)m(t)33
+b(sig)p Fg(\))390 5121 y Ft(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 5230 y(displa)m(y)31 b(c)m(haracters)h(that)f
+(generate)h(signals,)f(calling)h(this)e(function)g(with)g
+Fj(sig)39 b Ft(set)31 b(to)g Fs(SIGINT)p Ft(,)390 5340
+y Fs(SIGQUIT)p Ft(,)e(or)h Fs(SIGTSTP)e Ft(will)j(displa)m(y)g(the)f(c)
+m(haracter)i(generating)g(that)f(signal.)p eop end
+%%Page: 53 57
+TeXDict begin 53 56 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(53)3350
+299 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_resize_terminal)c
+Fg(\()p Ff(v)m(oid)p Fg(\))390 408 y Ft(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 592 y([F)-8
+b(unction])-3599 b Fh(void)54 b(rl_set_screen_size)c
Fg(\()p Ff(in)m(t)34 b(ro)m(ws,)f(in)m(t)g(cols)p Fg(\))390
-1621 y Ft(Set)28 b(Readline's)h(idea)f(of)g(the)g(terminal)g(size)h(to)
-g Fj(ro)m(ws)i Ft(ro)m(ws)d(and)f Fj(cols)33 b Ft(columns.)40
-b(If)27 b(either)h Fj(ro)m(ws)390 1730 y Ft(or)35 b Fj(columns)k
+702 y Ft(Set)28 b(Readline's)h(idea)f(of)g(the)g(terminal)g(size)h(to)g
+Fj(ro)m(ws)i Ft(ro)m(ws)d(and)f Fj(cols)33 b Ft(columns.)40
+b(If)27 b(either)h Fj(ro)m(ws)390 811 y Ft(or)35 b Fj(columns)k
Ft(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 1840 y(unc)m(hanged.)k(This)27
+(that)h(terminal)f(dimension)g(is)390 921 y(unc)m(hanged.)k(This)27
b(is)h(in)m(tended)g(to)g(tell)h(Readline)f(the)g(ph)m(ysical)g
-(dimensions)f(of)h(the)g(terminal,)390 1949 y(and)44
+(dimensions)f(of)h(the)g(terminal,)390 1031 y(and)44
b(is)h(used)f(in)m(ternally)i(to)f(calculate)j(the)d(maxim)m(um)f(n)m
(um)m(b)s(er)g(of)h(c)m(haracters)h(that)f(ma)m(y)390
-2059 y(app)s(ear)30 b(on)g(a)h(single)g(line)g(and)e(on)i(the)f
-(screen.)275 2244 y(If)i(an)i(application)g(do)s(es)f(not)h(w)m(an)m(t)
+1140 y(app)s(ear)30 b(on)g(a)h(single)g(line)g(and)e(on)i(the)f
+(screen.)275 1324 y(If)i(an)i(application)g(do)s(es)f(not)h(w)m(an)m(t)
g(to)g(install)g(a)g Fs(SIGWINCH)d Ft(handler,)j(but)e(is)i(still)g(in)
-m(terested)g(in)150 2353 y(the)d(screen)f(dimensions,)g(it)h(ma)m(y)g
+m(terested)g(in)150 1434 y(the)d(screen)f(dimensions,)g(it)h(ma)m(y)g
(query)f(Readline's)h(idea)g(of)f(the)h(screen)f(size.)3350
-2538 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_get_screen_size)c
+1618 y([F)-8 b(unction])-3599 b Fh(void)54 b(rl_get_screen_size)c
Fg(\()p Ff(in)m(t)34 b(*ro)m(ws,)f(in)m(t)g(*cols)p Fg(\))390
-2648 y Ft(Return)c(Readline's)i(idea)g(of)f(the)g(terminal's)h(size)g
+1727 y Ft(Return)c(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 2758 y(men)m(ts.)3350 2942 y([F)-8 b(unction])-3599
+(argu-)390 1837 y(men)m(ts.)3350 2021 y([F)-8 b(unction])-3599
b Fh(void)54 b(rl_reset_screen_size)d Fg(\()p Ff(v)m(oid)p
-Fg(\))390 3052 y Ft(Cause)30 b(Readline)h(to)g(reobtain)g(the)g(screen)
-f(size)h(and)f(recalculate)j(its)e(dimensions.)275 3237
+Fg(\))390 2130 y Ft(Cause)30 b(Readline)h(to)g(reobtain)g(the)g(screen)
+f(size)h(and)f(recalculate)j(its)e(dimensions.)275 2314
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 3422 y([F)-8 b(unction])-3599
+(Readline's)f(signal)g(handlers.)3350 2498 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_set_signals)d Fg(\()p Ff(v)m(oid)p Fg(\))390
-3531 y Ft(Install)40 b(Readline's)h(signal)f(handler)f(for)h
+2607 y Ft(Install)40 b(Readline's)h(signal)f(handler)f(for)h
Fs(SIGINT)p Ft(,)h Fs(SIGQUIT)p Ft(,)f Fs(SIGTERM)p Ft(,)h
-Fs(SIGHUP)p Ft(,)g Fs(SIGALRM)p Ft(,)390 3641 y Fs(SIGTSTP)p
+Fs(SIGHUP)p Ft(,)g Fs(SIGALRM)p Ft(,)390 2717 y Fs(SIGTSTP)p
Ft(,)35 b Fs(SIGTTIN)p Ft(,)f Fs(SIGTTOU)p Ft(,)h(and)g
Fs(SIGWINCH)p Ft(,)f(dep)s(ending)g(on)h(the)g(v)-5 b(alues)36
-b(of)f Fs(rl_catch_)390 3750 y(signals)28 b Ft(and)i
-Fs(rl_catch_sigwinch)p Ft(.)3350 3935 y([F)-8 b(unction])-3599
+b(of)f Fs(rl_catch_)390 2827 y(signals)28 b Ft(and)i
+Fs(rl_catch_sigwinch)p Ft(.)3350 3010 y([F)-8 b(unction])-3599
b Fh(int)53 b(rl_clear_signals)e Fg(\()p Ff(v)m(oid)p
-Fg(\))390 4045 y Ft(Remo)m(v)m(e)32 b(all)f(of)g(the)g(Readline)g
+Fg(\))390 3120 y Ft(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 Fs(rl_set_signals\(\))p
-Ft(.)150 4286 y Fr(2.6)68 b(Custom)45 b(Completers)150
-4446 y Ft(T)m(ypically)-8 b(,)47 b(a)c(program)g(that)g(reads)f
+Ft(.)150 3361 y Fr(2.6)68 b(Custom)45 b(Completers)150
+3520 y Ft(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 4555 y(commands)35 b(and)g(data.)56 b(If)35
+(biguating)150 3630 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 4665 y(commands,)29 b(data,)i(or)e(b)s
+(vide)f(completion)i(for)150 3739 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 4774 y(co)s(op)s(erate)j(to)h(pro)
-m(vide)e(this)g(service.)150 4974 y Fi(2.6.1)63 b(Ho)m(w)40
-b(Completing)i(W)-10 b(orks)150 5121 y Ft(In)26 b(order)f(to)i
+m(our)f(program)g(and)f(Readline)150 3849 y(co)s(op)s(erate)j(to)h(pro)
+m(vide)e(this)g(service.)150 4048 y Fi(2.6.1)63 b(Ho)m(w)40
+b(Completing)i(W)-10 b(orks)150 4195 y Ft(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 5230 y(is,)28 b(it)f(is)g(not)g(p)s(ossible)g(to)g
+b(That)150 4304 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 5340 y(w)m(ords)33
+(all)f(of)g(the)g(p)s(ossible)150 4414 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)p eop end
-%%Page: 52 56
-TeXDict begin 52 55 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(52)150
-299 y(to)29 b(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
-408 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 518 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
-644 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 771 y(1.)61 b(The)43 b(user-in)m(terface)h
-(function)f Fs(rl_complete\(\))p Ft(.)76 b(This)43 b(function)g(is)g
-(called)i(with)e(the)h(same)330 880 y(argumen)m(ts)36
-b(as)g(other)g(bindable)f(Readline)h(functions:)51 b
-Fj(coun)m(t)38 b Ft(and)d Fj(in)m(v)m(oking)p 3107 880
-28 4 v 41 w(k)m(ey)p Ft(.)57 b(It)36 b(isolates)330 990
-y(the)i(w)m(ord)f(to)h(b)s(e)f(completed)i(and)d(calls)j
-Fs(rl_completion_matches\(\))31 b Ft(to)39 b(generate)g(a)f(list)g(of)
-330 1100 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 1209 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 1319 y(desired.)199 1445 y(2.)61 b(The)33
-b(in)m(ternal)h(function)g Fs(rl_completion_matches\(\))27
-b Ft(uses)33 b(an)g(application-supplied)h Fj(gener-)330
-1555 y(ator)44 b Ft(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
-1664 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 Fs(rl_)330
-1774 y(completion_entry_functio)o(n)p Ft(.)199 1900 y(3.)61
+(terface)150 4523 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 4633 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 4743 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 4877 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
+5011 y(1.)61 b(The)43 b(user-in)m(terface)h(function)f
+Fs(rl_complete\(\))p Ft(.)76 b(This)43 b(function)g(is)g(called)i(with)
+e(the)h(same)330 5121 y(argumen)m(ts)36 b(as)g(other)g(bindable)f
+(Readline)h(functions:)51 b Fj(coun)m(t)38 b Ft(and)d
+Fj(in)m(v)m(oking)p 3107 5121 28 4 v 41 w(k)m(ey)p Ft(.)57
+b(It)36 b(isolates)330 5230 y(the)i(w)m(ord)f(to)h(b)s(e)f(completed)i
+(and)d(calls)j Fs(rl_completion_matches\(\))31 b Ft(to)39
+b(generate)g(a)f(list)g(of)330 5340 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)p eop end
+%%Page: 54 58
+TeXDict begin 54 57 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(54)330
+299 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 408 y(desired.)199 552 y(2.)61 b(The)33 b(in)m(ternal)h
+(function)g Fs(rl_completion_matches\(\))27 b Ft(uses)33
+b(an)g(application-supplied)h Fj(gener-)330 662 y(ator)44
+b Ft(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
+771 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 Fs(rl_)330
+881 y(completion_entry_functio)o(n)p Ft(.)199 1024 y(3.)61
b(The)22 b(generator)i(function)f(is)g(called)h(rep)s(eatedly)f(from)g
-Fs(rl_completion_matches\(\))o Ft(,)c(returning)330 2010
+Fs(rl_completion_matches\(\))o Ft(,)c(returning)330 1134
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 Fj(text)j Ft(and)c
-Fj(state)p Ft(.)49 b Fj(text)330 2119 y Ft(is)32 b(the)g(partial)h(w)m
+Fj(state)p Ft(.)49 b Fj(text)330 1244 y Ft(is)32 b(the)g(partial)h(w)m
(ord)f(to)h(b)s(e)e(completed.)47 b Fj(state)38 b Ft(is)32
b(zero)h(the)f(\014rst)g(time)g(the)h(function)e(is)h(called,)330
-2229 y(allo)m(wing)46 b(the)e(generator)h(to)f(p)s(erform)f(an)m(y)h
+1353 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 2339 y(zero)30 b(in)m(teger)h(for)d(eac)m(h)j(subsequen)m(t)d
+330 1463 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
-Fs(\(char)h(*\)NULL)e Ft(to)330 2448 y(inform)37 b Fs
+Fs(\(char)h(*\)NULL)e Ft(to)330 1572 y(inform)37 b Fs
(rl_completion_matches\(\))32 b Ft(that)39 b(there)f(are)g(no)g(more)g
-(p)s(ossibilities)h(left.)65 b(Usually)330 2558 y(the)39
+(p)s(ossibilities)h(left.)65 b(Usually)330 1682 y(the)39
b(generator)h(function)e(computes)h(the)g(list)g(of)g(p)s(ossible)f
(completions)i(when)e Fj(state)45 b Ft(is)39 b(zero,)330
-2667 y(and)25 b(returns)f(them)i(one)f(at)i(a)f(time)g(on)f(subsequen)m
+1792 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
-2777 y(returns)31 b(as)h(a)g(matc)m(h)h(m)m(ust)f(b)s(e)f(allo)s(cated)
+1901 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 Fs(malloc\(\))p Ft(;)g(Readline)h(frees)g(the)g(strings)g
-(when)330 2887 y(it)i(has)g(\014nished)e(with)i(them.)51
+(when)330 2011 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 Fj(application-)330 2996 y(sp)s(eci\014c)d(completion)i(function)p
-Ft(.)3350 3156 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_complete)c
+e Fj(application-)330 2120 y(sp)s(eci\014c)d(completion)i(function)p
+Ft(.)3350 2341 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_complete)c
Fg(\()p Ff(in)m(t)34 b(ignore,)e(in)m(t)i(in)m(v)m(oking)p
-2020 3156 30 5 v 43 w(k)m(ey)p Fg(\))390 3266 y Ft(Complete)d(the)g(w)m
+2020 2341 30 5 v 43 w(k)m(ey)p Fg(\))390 2451 y Ft(Complete)d(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
-3375 y(initial)42 b(simple)f(matc)m(hing)i(selection)f(algorithm)h
+2560 y(initial)42 b(simple)f(matc)m(hing)i(selection)f(algorithm)h
(\(see)f Fs(rl_completion_matches\(\))o Ft(\).)67 b(The)390
-3485 y(default)31 b(is)f(to)h(do)f(\014lename)h(completion.)3371
-3645 y([V)-8 b(ariable])-3598 b Fh(rl_compentry_func_t)58
-b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 3754
+2670 y(default)31 b(is)f(to)h(do)f(\014lename)h(completion.)3371
+2890 y([V)-8 b(ariable])-3598 b Fh(rl_compentry_func_t)58
+b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 3000
y Ft(This)39 b(is)h(a)g(p)s(oin)m(ter)g(to)h(the)f(generator)h
(function)f(for)f Fs(rl_completion_matches\(\))p Ft(.)63
-b(If)40 b(the)390 3864 y(v)-5 b(alue)24 b(of)g Fs
+b(If)40 b(the)390 3110 y(v)-5 b(alue)24 b(of)g Fs
(rl_completion_entry_funct)o(ion)17 b Ft(is)24 b Fs(NULL)f
Ft(then)g(the)h(default)g(\014lename)g(generator)390
-3973 y(function,)49 b Fs(rl_filename_completion_)o(fun)o(ctio)o(n\(\))p
+3219 y(function,)49 b Fs(rl_filename_completion_)o(fun)o(ctio)o(n\(\))p
Ft(,)42 b(is)j(used.)84 b(An)44 b Fj(application-sp)s(eci\014c)390
-4083 y(completion)22 b(function)f Ft(is)g(a)h(function)e(whose)h
+3329 y(completion)22 b(function)f Ft(is)g(a)h(function)e(whose)h
(address)f(is)h(assigned)h(to)f Fs(rl_completion_entry_)390
-4193 y(function)28 b Ft(and)i(whose)g(return)f(v)-5 b(alues)31
+3438 y(function)28 b Ft(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
-4376 y Fi(2.6.2)63 b(Completion)41 b(F)-10 b(unctions)150
-4523 y Ft(Here)31 b(is)f(the)h(complete)h(list)f(of)f(callable)j
+3656 y Fi(2.6.2)63 b(Completion)41 b(F)-10 b(unctions)150
+3803 y Ft(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
-4682 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_complete_internal)f
-Fg(\()p Ff(in)m(t)33 b(what)p 1861 4682 V 44 w(to)p 1994
-4682 V 43 w(do)p Fg(\))390 4792 y Ft(Complete)k(the)g(w)m(ord)f(at)i
-(or)e(b)s(efore)g(p)s(oin)m(t.)60 b Fj(what)p 2208 4792
-28 4 v 40 w(to)p 2328 4792 V 41 w(do)41 b Ft(sa)m(ys)c(what)f(to)i(do)e
-(with)g(the)h(com-)390 4902 y(pletion.)44 b(A)31 b(v)-5
+4023 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_complete_internal)f
+Fg(\()p Ff(in)m(t)33 b(what)p 1861 4023 V 44 w(to)p 1994
+4023 V 43 w(do)p Fg(\))390 4133 y Ft(Complete)k(the)g(w)m(ord)f(at)i
+(or)e(b)s(efore)g(p)s(oin)m(t.)60 b Fj(what)p 2208 4133
+28 4 v 40 w(to)p 2328 4133 V 41 w(do)41 b Ft(sa)m(ys)c(what)f(to)i(do)e
+(with)g(the)h(com-)390 4243 y(pletion.)44 b(A)31 b(v)-5
b(alue)32 b(of)f(`)p Fs(?)p Ft(')g(means)h(list)f(the)h(p)s(ossible)e
(completions.)45 b(`)p Fs(TAB)p Ft(')31 b(means)g(do)g(standard)390
-5011 y(completion.)44 b(`)p Fs(*)p Ft(')32 b(means)f(insert)g(all)h(of)
+4352 y(completion.)44 b(`)p Fs(*)p Ft(')32 b(means)f(insert)g(all)h(of)
f(the)g(p)s(ossible)g(completions.)44 b(`)p Fs(!)p Ft(')32
-b(means)f(to)h(displa)m(y)f(all)390 5121 y(of)k(the)f(p)s(ossible)g
+b(means)f(to)h(displa)m(y)f(all)390 4462 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 5230 y(completion.)41
+(as)g(p)s(erforming)e(partial)390 4571 y(completion.)41
b(`)p Fs(@)p Ft(')27 b(is)h(similar)f(to)h(`)p Fs(!)p
Ft(',)h(but)d(p)s(ossible)h(completions)i(are)e(not)h(listed)g(if)f
-(the)g(p)s(ossible)390 5340 y(completions)32 b(share)e(a)g(common)h
-(pre\014x.)p eop end
-%%Page: 53 57
-TeXDict begin 53 56 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(53)3350
-299 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_complete)c
-Fg(\()p Ff(in)m(t)34 b(ignore,)e(in)m(t)i(in)m(v)m(oking)p
-2020 299 30 5 v 43 w(k)m(ey)p Fg(\))390 408 y Ft(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 518 y(the)33 b(initial)h(simple)f(matc)m(hing)h(selection)h
+(the)g(p)s(ossible)390 4681 y(completions)32 b(share)e(a)g(common)h
+(pre\014x.)3350 4902 y([F)-8 b(unction])-3599 b Fh(int)53
+b(rl_complete)c Fg(\()p Ff(in)m(t)34 b(ignore,)e(in)m(t)i(in)m(v)m
+(oking)p 2020 4902 30 5 v 43 w(k)m(ey)p Fg(\))390 5011
+y Ft(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 5121 y(the)33 b(initial)h(simple)f(matc)m(hing)h(selection)h
(algorithm)f(\(see)g Fs(rl_completion_matches\(\))27
-b Ft(and)390 628 y Fs(rl_completion_entry_func)o(tion)o
+b Ft(and)390 5230 y Fs(rl_completion_entry_func)o(tion)o
Ft(\).)52 b(The)35 b(default)h(is)g(to)h(do)e(\014lename)h(completion.)
-59 b(This)390 737 y(calls)32 b Fs(rl_complete_internal\(\))24
+59 b(This)390 5340 y(calls)32 b Fs(rl_complete_internal\(\))24
b Ft(with)30 b(an)g(argumen)m(t)h(dep)s(ending)e(on)h
-Fj(in)m(v)m(oking)p 3314 737 28 4 v 41 w(k)m(ey)p Ft(.)3350
-923 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_possible_completio)q(ns)f
+Fj(in)m(v)m(oking)p 3314 5340 28 4 v 41 w(k)m(ey)p Ft(.)p
+eop end
+%%Page: 55 59
+TeXDict begin 55 58 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(55)3350
+299 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_possible_completio)q(ns)f
Fg(\()p Ff(in)m(t)33 b(coun)m(t,)h(in)m(t)f(in)m(v)m(oking)p
-2622 923 30 5 v 43 w(k)m(ey)p Fg(\))390 1032 y Ft(List)41
+2622 299 30 5 v 43 w(k)m(ey)p Fg(\))390 408 y Ft(List)41
b(the)f(p)s(ossible)g(completions.)73 b(See)40 b(description)h(of)g
Fs(rl_complete)27 b(\(\))p Ft(.)70 b(This)40 b(calls)i
-Fs(rl_)390 1142 y(complete_internal\(\))25 b Ft(with)30
-b(an)g(argumen)m(t)h(of)g(`)p Fs(?)p Ft('.)3350 1327
-y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_insert_completions)f
+Fs(rl_)390 518 y(complete_internal\(\))25 b Ft(with)30
+b(an)g(argumen)m(t)h(of)g(`)p Fs(?)p Ft('.)3350 718 y([F)-8
+b(unction])-3599 b Fh(int)53 b(rl_insert_completions)f
Fg(\()p Ff(in)m(t)34 b(coun)m(t,)f(in)m(t)g(in)m(v)m(oking)p
-2517 1327 V 44 w(k)m(ey)p Fg(\))390 1437 y Ft(Insert)g(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 1546 y(w)m(ord.)44 b(See)32
-b(description)g(of)g Fs(rl_complete\(\))p Ft(.)41 b(This)31
-b(calls)i Fs(rl_complete_internal\(\))25 b Ft(with)390
-1656 y(an)30 b(argumen)m(t)h(of)g(`)p Fs(*)p Ft('.)3350
-1841 y([F)-8 b(unction])-3599 b Fh(int)53 b(rl_completion_mode)e
-Fg(\()p Ff(rl)p 1455 1841 V 44 w(command)p 1919 1841
-V 44 w(func)p 2147 1841 V 46 w(t)33 b(*cfunc)p Fg(\))390
-1951 y Ft(Returns)40 b(the)i(appropriate)g(v)-5 b(alue)41
-b(to)i(pass)e(to)h Fs(rl_complete_internal\(\))35 b Ft(dep)s(ending)40
-b(on)390 2060 y(whether)g Fj(cfunc)46 b Ft(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 Fs(show-all-if-)390 2170 y(ambiguous)25
-b Ft(and)i Fs(show-all-if-unmodified)21 b Ft(v)-5 b(ariables.)41
-b(Application-sp)s(eci\014c)29 b(completion)390 2279
-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 Fs(rl_complete\(\))p Ft(.)3350
-2465 y([F)-8 b(unction])-3599 b Fh(char)54 b(**)e
-(rl_completion_matches)g Fg(\()p Ff(const)34 b(c)m(har)g(*text,)565
-2574 y(rl)p 639 2574 V 44 w(comp)s(en)m(try)p 1145 2574
-V 44 w(func)p 1373 2574 V 45 w(t)f(*en)m(try)p 1767 2574
-V 44 w(func)p Fg(\))390 2684 y Ft(Returns)k(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
-Fj(text)p Ft(.)64 b(If)38 b(there)g(are)g(no)390 2794
+2517 718 V 44 w(k)m(ey)p Fg(\))390 828 y Ft(Insert)g(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 937 y(w)m(ord.)44 b(See)32 b(description)g(of)
+g Fs(rl_complete\(\))p Ft(.)41 b(This)31 b(calls)i Fs
+(rl_complete_internal\(\))25 b Ft(with)390 1047 y(an)30
+b(argumen)m(t)h(of)g(`)p Fs(*)p Ft('.)3350 1247 y([F)-8
+b(unction])-3599 b Fh(int)53 b(rl_completion_mode)e Fg(\()p
+Ff(rl)p 1455 1247 V 44 w(command)p 1919 1247 V 44 w(func)p
+2147 1247 V 46 w(t)33 b(*cfunc)p Fg(\))390 1356 y Ft(Returns)40
+b(the)i(appropriate)g(v)-5 b(alue)41 b(to)i(pass)e(to)h
+Fs(rl_complete_internal\(\))35 b Ft(dep)s(ending)40 b(on)390
+1466 y(whether)g Fj(cfunc)46 b Ft(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
+Fs(show-all-if-)390 1575 y(ambiguous)25 b Ft(and)i Fs
+(show-all-if-unmodified)21 b Ft(v)-5 b(ariables.)41 b(Application-sp)s
+(eci\014c)29 b(completion)390 1685 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
+Fs(rl_complete\(\))p Ft(.)3350 1885 y([F)-8 b(unction])-3599
+b Fh(char)54 b(**)e(rl_completion_matches)g Fg(\()p Ff(const)34
+b(c)m(har)g(*text,)565 1995 y(rl)p 639 1995 V 44 w(comp)s(en)m(try)p
+1145 1995 V 44 w(func)p 1373 1995 V 45 w(t)f(*en)m(try)p
+1767 1995 V 44 w(func)p Fg(\))390 2104 y Ft(Returns)k(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
+Fj(text)p Ft(.)64 b(If)38 b(there)g(are)g(no)390 2214
y(completions,)f(returns)c Fs(NULL)p Ft(.)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 2903 y(for)26 b Fj(text)p Ft(.)40 b(The)26
+(substitution)390 2323 y(for)26 b Fj(text)p Ft(.)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 3013 y(with)k(a)h
-Fs(NULL)e Ft(p)s(oin)m(ter.)390 3148 y Fj(en)m(try)p
-603 3148 28 4 v 40 w(func)44 b Ft(is)c(a)g(function)f(of)h(t)m(w)m(o)g
+b(The)26 b(arra)m(y)h(is)f(terminated)390 2433 y(with)k(a)h
+Fs(NULL)e Ft(p)s(oin)m(ter.)390 2575 y Fj(en)m(try)p
+603 2575 28 4 v 40 w(func)44 b Ft(is)c(a)g(function)f(of)h(t)m(w)m(o)g
(args,)j(and)38 b(returns)h(a)g Fs(char)30 b(*)p Ft(.)67
-b(The)39 b(\014rst)g(argumen)m(t)h(is)390 3257 y Fj(text)p
+b(The)39 b(\014rst)g(argumen)m(t)h(is)390 2685 y Fj(text)p
Ft(.)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
-3367 y(subsequen)m(t)33 b(calls.)52 b Fj(en)m(try)p 1320
-3367 V 41 w(func)38 b Ft(returns)33 b(a)h Fs(NULL)f Ft(p)s(oin)m(ter)g
-(to)i(the)f(caller)h(when)e(there)h(are)g(no)390 3476
-y(more)d(matc)m(hes.)3350 3662 y([F)-8 b(unction])-3599
+2794 y(subsequen)m(t)33 b(calls.)52 b Fj(en)m(try)p 1320
+2794 V 41 w(func)38 b Ft(returns)33 b(a)h Fs(NULL)f Ft(p)s(oin)m(ter)g
+(to)i(the)f(caller)h(when)e(there)h(are)g(no)390 2904
+y(more)d(matc)m(hes.)3350 3104 y([F)-8 b(unction])-3599
b Fh(char)54 b(*)e(rl_filename_completion)q(_fu)q(nct)q(ion)g
-Fg(\()p Ff(const)34 b(c)m(har)g(*text,)e(in)m(t)565 3771
-y(state)p Fg(\))390 3881 y Ft(A)26 b(generator)h(function)e(for)g
+Fg(\()p Ff(const)34 b(c)m(har)g(*text,)e(in)m(t)565 3213
+y(state)p Fg(\))390 3323 y Ft(A)26 b(generator)h(function)e(for)g
(\014lename)h(completion)h(in)e(the)h(general)h(case.)40
-b Fj(text)28 b Ft(is)e(a)g(partial)h(\014le-)390 3991
+b Fj(text)28 b Ft(is)e(a)g(partial)h(\014le-)390 3433
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
-4100 y(functions)30 b(\(the)h(Bash)f(completion)i(functions)e(call)i
-(this)e(and)g(other)g(Readline)h(functions\).)3350 4285
+3542 y(functions)30 b(\(the)h(Bash)f(completion)i(functions)e(call)i
+(this)e(and)g(other)g(Readline)h(functions\).)3350 3742
y([F)-8 b(unction])-3599 b Fh(char)54 b(*)e(rl_username_completion)q
(_fu)q(nct)q(ion)g Fg(\()p Ff(const)34 b(c)m(har)g(*text,)e(in)m(t)565
-4395 y(state)p Fg(\))390 4505 y Ft(A)d(completion)g(generator)h(for)e
+3852 y(state)p Fg(\))390 3961 y Ft(A)d(completion)g(generator)h(for)e
(usernames.)40 b Fj(text)31 b Ft(con)m(tains)f(a)f(partial)g(username)f
-(preceded)g(b)m(y)390 4614 y(a)j(random)f(c)m(haracter)i(\(usually)e(`)
+(preceded)g(b)m(y)390 4071 y(a)j(random)f(c)m(haracter)i(\(usually)e(`)
p Fs(~)p Ft('\).)42 b(As)31 b(with)f(all)h(completion)h(generators,)g
-Fj(state)37 b Ft(is)31 b(zero)g(on)390 4724 y(the)g(\014rst)e(call)j
-(and)e(non-zero)h(for)f(subsequen)m(t)f(calls.)150 4924
+Fj(state)37 b Ft(is)31 b(zero)g(on)390 4180 y(the)g(\014rst)e(call)j
+(and)e(non-zero)h(for)f(subsequen)m(t)f(calls.)150 4388
y Fi(2.6.3)63 b(Completion)41 b(V)-10 b(ariables)3371
-5121 y Ft([V)i(ariable])-3598 b Fh(rl_compentry_func_t)58
-b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 5230
+4592 y Ft([V)i(ariable])-3598 b Fh(rl_compentry_func_t)58
+b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 4702
y Ft(A)34 b(p)s(oin)m(ter)f(to)h(the)g(generator)h(function)e(for)g
Fs(rl_completion_matches\(\))p Ft(.)44 b Fs(NULL)32 b
-Ft(means)h(to)390 5340 y(use)d Fs(rl_filename_completion_fu)o(nct)o
-(ion\()o(\))p Ft(,)25 b(the)30 b(default)h(\014lename)f(completer.)p
-eop end
-%%Page: 54 58
-TeXDict begin 54 57 bop 150 -116 a Ft(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 Fh(rl_completion_func_t)58
+Ft(means)h(to)390 4811 y(use)d Fs(rl_filename_completion_fu)o(nct)o
+(ion\()o(\))p Ft(,)25 b(the)30 b(default)h(\014lename)f(completer.)3371
+5011 y([V)-8 b(ariable])-3598 b Fh(rl_completion_func_t)58
b(*)53 b(rl_attempted_completio)q(n_f)q(unct)q(ion)390
-408 y Ft(A)35 b(p)s(oin)m(ter)g(to)g(an)g(alternativ)m(e)i(function)d
+5121 y Ft(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 518 y Fj(text)p Ft(,)26 b Fj(start)p Ft(,)f(and)d
+390 5230 y Fj(text)p Ft(,)26 b Fj(start)p Ft(,)f(and)d
Fj(end)p Ft(.)38 b Fj(start)25 b Ft(and)e Fj(end)j Ft(are)d(indices)g
(in)g Fs(rl_line_buffer)c Ft(de\014ning)j(the)h(b)s(ound-)390
-628 y(aries)j(of)h Fj(text)p Ft(,)h(whic)m(h)d(is)h(a)h(c)m(haracter)g
+5340 y(aries)j(of)h Fj(text)p Ft(,)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
-Fs(NULL)p Ft(,)h(or)g(if)390 737 y(this)c(v)-5 b(ariable)22
-b(is)g(set)h(to)f Fs(NULL)p Ft(,)h(then)f Fs(rl_complete\(\))c
-Ft(will)k(call)h(the)f(v)-5 b(alue)23 b(of)f Fs(rl_completion_)390
-847 y(entry_function)i Ft(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
-956 y(used.)37 b(If)22 b(this)g(function)g(sets)h(the)g
-Fs(rl_attempted_completion)o(_ove)o(r)16 b Ft(v)-5 b(ariable)24
-b(to)f(a)f(non-zero)390 1066 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 1176 y(no)d(matc)m(hes.)3371
-1351 y([V)-8 b(ariable])-3598 b Fh(rl_quote_func_t)57
-b(*)52 b(rl_filename_quoting_)q(func)q(tio)q(n)390 1461
-y Ft(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
-1570 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
-1680 y(in)33 b Fs(rl_filename_quote_charac)o(ter)o(s)27
+Fs(NULL)p Ft(,)h(or)g(if)p eop end
+%%Page: 56 60
+TeXDict begin 56 59 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(56)390
+299 y(this)22 b(v)-5 b(ariable)22 b(is)g(set)h(to)f Fs(NULL)p
+Ft(,)h(then)f Fs(rl_complete\(\))c Ft(will)k(call)h(the)f(v)-5
+b(alue)23 b(of)f Fs(rl_completion_)390 408 y(entry_function)i
+Ft(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 518 y(used.)37
+b(If)22 b(this)g(function)g(sets)h(the)g Fs(rl_attempted_completion)o
+(_ove)o(r)16 b Ft(v)-5 b(ariable)24 b(to)f(a)f(non-zero)390
+628 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
+737 y(no)d(matc)m(hes.)3371 913 y([V)-8 b(ariable])-3598
+b Fh(rl_quote_func_t)57 b(*)52 b(rl_filename_quoting_)q(func)q(tio)q(n)
+390 1022 y Ft(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 1132 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
+1241 y(in)33 b Fs(rl_filename_quote_charac)o(ter)o(s)27
b Ft(app)s(ears)33 b(in)g(a)g(completed)h(\014lename.)50
-b(The)32 b(function)390 1789 y(is)37 b(called)h(with)e
-Fj(text)p Ft(,)k Fj(matc)m(h)p 1438 1789 28 4 v 41 w(t)m(yp)s(e)p
-Ft(,)f(and)d Fj(quote)p 2119 1789 V 41 w(p)s(oin)m(ter)p
+b(The)32 b(function)390 1351 y(is)37 b(called)h(with)e
+Fj(text)p Ft(,)k Fj(matc)m(h)p 1438 1351 28 4 v 41 w(t)m(yp)s(e)p
+Ft(,)f(and)d Fj(quote)p 2119 1351 V 41 w(p)s(oin)m(ter)p
Ft(.)60 b(The)36 b Fj(text)k Ft(is)d(the)g(\014lename)g(to)h(b)s(e)390
-1899 y(quoted.)76 b(The)42 b Fj(matc)m(h)p 1210 1899
+1461 y(quoted.)76 b(The)42 b Fj(matc)m(h)p 1210 1461
V 41 w(t)m(yp)s(e)48 b Ft(is)42 b(either)h Fs(SINGLE_MATCH)p
Ft(,)f(if)g(there)g(is)h(only)f(one)h(completion)390
-2008 y(matc)m(h,)33 b(or)e Fs(MULT_MATCH)p Ft(.)41 b(Some)31
+1570 y(matc)m(h,)33 b(or)e Fs(MULT_MATCH)p Ft(.)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 2118 y(closing)22 b(quote)f(c)m(haracter.)40
-b(The)20 b Fj(quote)p 1751 2118 V 41 w(p)s(oin)m(ter)27
+(insert)g(a)390 1680 y(closing)22 b(quote)f(c)m(haracter.)40
+b(The)20 b Fj(quote)p 1751 1680 V 41 w(p)s(oin)m(ter)27
b Ft(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 2228 y(the)31 b(user)e(t)m(yp)s(ed.)41
+(haracter)390 1789 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 2403 y([V)-8 b(ariable])-3598 b Fh(rl_dequote_func_t)57
-b(*)c(rl_filename_dequoting_)q(fun)q(cti)q(on)390 2513
+(haracter.)3371 1965 y([V)-8 b(ariable])-3598 b Fh(rl_dequote_func_t)57
+b(*)c(rl_filename_dequoting_)q(fun)q(cti)q(on)390 2074
y Ft(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
-2622 y(a)i(\014lename)g(b)s(efore)f(completion)h(is)g(attempted,)h(so)f
+2184 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
-2732 y(matc)m(hing)39 b(the)f(text)i(against)f(names)f(in)g(the)g
+2293 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 Fj(text)p
-Ft(,)42 b(the)c(text)390 2841 y(of)k(the)h(w)m(ord)f(to)g(b)s(e)g
-(dequoted,)j(and)d Fj(quote)p 2014 2841 V 41 w(c)m(har)p
+Ft(,)42 b(the)c(text)390 2403 y(of)k(the)h(w)m(ord)f(to)g(b)s(e)g
+(dequoted,)j(and)d Fj(quote)p 2014 2403 V 41 w(c)m(har)p
Ft(,)j(whic)m(h)d(is)h(the)f(quoting)h(c)m(haracter)g(that)390
-2951 y(delimits)33 b(the)f(\014lename)g(\(usually)h(`)p
+2513 y(delimits)33 b(the)f(\014lename)g(\(usually)h(`)p
Fs(')p Ft(')f(or)g(`)p Fs(")p Ft('\).)46 b(If)32 b Fj(quote)p
-2368 2951 V 41 w(c)m(har)39 b Ft(is)32 b(zero,)i(the)e(\014lename)g(w)m
-(as)h(not)390 3061 y(in)d(an)g(em)m(b)s(edded)g(string.)3371
-3236 y([V)-8 b(ariable])-3598 b Fh(rl_linebuf_func_t)57
-b(*)c(rl_char_is_quoted_p)390 3345 y Ft(A)37 b(p)s(oin)m(ter)g(to)g(a)g
+2368 2513 V 41 w(c)m(har)39 b Ft(is)32 b(zero,)i(the)e(\014lename)g(w)m
+(as)h(not)390 2622 y(in)d(an)g(em)m(b)s(edded)g(string.)3371
+2798 y([V)-8 b(ariable])-3598 b Fh(rl_linebuf_func_t)57
+b(*)c(rl_char_is_quoted_p)390 2907 y Ft(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 3455 y(in)e(the)h(line)f(bu\013er)g
+(sp)s(eci\014c)f(c)m(haracter)390 3017 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 3565 y(calling)26 b(Readline)g(uses.)38
+(the)f(program)390 3126 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 Fj(text)p Ft(,)27 b(the)e(text)h(of)f(the)390 3674
+b Fj(text)p Ft(,)27 b(the)e(text)h(of)f(the)390 3236
y(line,)31 b(and)g Fj(index)p Ft(,)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 3784 y(c)m(haracter)h(found)d(in)g Fs
+(whether)g(a)390 3345 y(c)m(haracter)h(found)d(in)g Fs
(rl_completer_word_break_ch)o(ara)o(cter)o(s)24 b Ft(should)29
-b(b)s(e)h(used)f(to)i(break)390 3893 y(w)m(ords)f(for)g(the)h
-(completer.)3371 4069 y([V)-8 b(ariable])-3598 b Fh
+b(b)s(e)h(used)f(to)i(break)390 3455 y(w)m(ords)f(for)g(the)h
+(completer.)3371 3630 y([V)-8 b(ariable])-3598 b Fh
(rl_compignore_func_t)58 b(*)53 b(rl_ignore_some_complet)q(ion)q(s_fu)q
-(nct)q(ion)390 4178 y Ft(This)37 b(function,)i(if)f(de\014ned,)g(is)g
+(nct)q(ion)390 3740 y Ft(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 4288 y(is)c(done,)h(after)f(all)h(the)g(matc)m(hing)g
+(completion)390 3850 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 Fs(NULL)d Ft(ter-)390 4398 y(minated)f(arra)m(y)g
+b(is)g(passed)f(a)i Fs(NULL)d Ft(ter-)390 3959 y(minated)f(arra)m(y)g
(of)g(matc)m(hes.)43 b(The)31 b(\014rst)f(elemen)m(t)i(\()p
Fs(matches[0])p Ft(\))d(is)h(the)h(maximal)h(substring)390
-4507 y(common)d(to)g(all)h(matc)m(hes.)41 b(This)28 b(function)h(can)g
+4069 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
-4617 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 4792 y([V)-8 b(ariable])-3598
+4178 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 4354 y([V)-8 b(ariable])-3598
b Fh(rl_icppfunc_t)56 b(*)d(rl_directory_completio)q(n_ho)q(ok)390
-4902 y Ft(This)44 b(function,)49 b(if)d(de\014ned,)i(is)d(allo)m(w)m
+4463 y Ft(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 5011 y(Readline)35 b(completes.)56 b(It)35 b(could)g(b)s(e)f(used)g
+390 4573 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 5121 y(pathnames.)70 b(It)41 b(is)f(called)h
+b(ariables)35 b(in)390 4682 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 5230 y(as)d(an)f(argumen)m(t,)j(and)d(ma)m(y)i
+(directory)h(name\))390 4792 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 5340 y(string,)j(the)d(old)h(v)-5
+(with)f(a)h(new)390 4902 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)p eop end
-%%Page: 55 59
-TeXDict begin 55 58 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(55)390
-299 y(trailing)36 b(slash.)54 b(The)35 b(mo)s(di\014ed)e(v)-5
+(directory)i(name)f(should)g(ha)m(v)m(e)i(a)390 5011
+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 408 y(the)32 b(directory)g(p)s(ortion)f(of)h(the)g
+(replacing)390 5121 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 518 y(expansion)j(is)h(p)s(erformed,)f
+(ev)m(en)g(if)e(no)h(other)390 5230 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 628 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 Fs(opendir\(\))p
-Ft(.)390 768 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 878 y(tion)35 b(mo)s(di\014es)e(its)i(directory)f(argumen)m(t.)53
+(haracters)h(from)e(the)390 5340 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
+Fs(opendir\(\))p Ft(.)p eop end
+%%Page: 57 61
+TeXDict begin 57 60 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(57)390
+299 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
+408 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
-987 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371 1183
-y([V)-8 b(ariable])-3598 b Fh(rl_icppfunc_t)56 b(*)d
-(rl_directory_rewrite_h)q(ook;)390 1293 y Ft(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 1402 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 1512 y(Unlik)m(e)40
-b Fs(rl_directory_completion_h)o(ook)p Ft(,)35 b(it)40
-b(only)f(mo)s(di\014es)f(the)i(directory)f(name)h(used)390
-1622 y(in)35 b Fs(opendir)p Ft(,)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 1731 y(serted.)k(It)27 b(is)f(called)h(b)s(efore)f(rl)p
-1463 1731 28 4 v 40 w(directory)p 1859 1731 V 41 w(completion)p
-2333 1731 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 1841 y(expansion)35 b(is)h(p)s(erformed,)f(this)h
+518 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371 720 y([V)-8
+b(ariable])-3598 b Fh(rl_icppfunc_t)56 b(*)d(rl_directory_rewrite_h)q
+(ook;)390 830 y Ft(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 939 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 1049 y(Unlik)m(e)40 b Fs(rl_directory_completion_h)o(ook)p
+Ft(,)35 b(it)40 b(only)f(mo)s(di\014es)f(the)i(directory)f(name)h(used)
+390 1159 y(in)35 b Fs(opendir)p Ft(,)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 1268 y(serted.)k(It)27 b(is)f(called)h(b)s(efore)f(rl)p
+1463 1268 28 4 v 40 w(directory)p 1859 1268 V 41 w(completion)p
+2333 1268 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 1378 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 1950 y(directory)c(name,)g(b)s(ecause)f(its)h(result)f
+(from)e(the)390 1487 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 Fs(opendir\(\))p
-Ft(.)390 2091 y(The)37 b(directory)i(rewrite)f(ho)s(ok)f(returns)g(an)h
+Ft(.)390 1631 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
-2200 y(tion)c(mo)s(di\014es)e(its)i(directory)f(argumen)m(t.)53
+1740 y(tion)c(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
-2310 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371 2506
+1850 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371 2052
y([V)-8 b(ariable])-3598 b Fh(rl_icppfunc_t)56 b(*)d
-(rl_filename_stat_hook)390 2616 y Ft(If)30 b(non-zero,)h(this)f(is)g
+(rl_filename_stat_hook)390 2162 y Ft(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 2725 y(whic)m(h)g(c)m(haracter)i(to)e(app)s
+g(b)s(efore)f(deciding)390 2271 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 2835 y(name)36 b(argumen)m(t,)h(and)e
+(di\014es)f(its)i(\014lename)390 2381 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
Fs(stat\(\))e Ft(to)i(determine)g(the)g(\014le's)390
-2944 y(t)m(yp)s(e)41 b(and)f(c)m(haracteristics.)73 b(This)40
+2491 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 3054 y(from)30 b(the)g(\014lename.)390
-3194 y(The)40 b(stat)h(ho)s(ok)f(returns)f(an)h(in)m(teger)h(that)g
+(haracters)390 2600 y(from)30 b(the)g(\014lename.)390
+2744 y(The)40 b(stat)h(ho)s(ok)f(returns)f(an)h(in)m(teger)h(that)g
(should)e(b)s(e)h(non-zero)g(if)h(the)f(function)g(mo)s(di\014es)390
-3304 y(its)32 b(directory)f(argumen)m(t.)44 b(The)31
+2853 y(its)32 b(directory)f(argumen)m(t.)44 b(The)31
b(function)f(should)h(not)g(mo)s(dify)g(the)g(directory)h(argumen)m(t)f
-(if)g(it)390 3414 y(returns)e(0.)3371 3610 y([V)-8 b(ariable])-3598
+(if)g(it)390 2963 y(returns)e(0.)3371 3165 y([V)-8 b(ariable])-3598
b Fh(rl_dequote_func_t)57 b(*)c(rl_filename_rewrite_ho)q(ok)390
-3719 y Ft(If)39 b(non-zero,)k(this)d(is)f(the)h(address)f(of)h(a)g
+3275 y Ft(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
-3829 y(from)f(the)h(\014lesystem)g(for)g(completion)h(and)e(comparing)i
+3384 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
-3938 y(completed.)g(The)26 b(function)h(should)f(p)s(erform)f(an)m(y)j
+3494 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
-4048 y(con)m(v)m(ersion)35 b(on)g(the)f(\014lename,)i(suc)m(h)d(as)i
+3603 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 4158 y(from)f(a)g(\014lesystem)h(format)g(to)g(a)f(c)m
+(v)m(erting)390 3713 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 4267 y(men)m(ts:)49 b Fj(fname)p Ft(,)36
+(o)g(argu-)390 3823 y(men)m(ts:)49 b Fj(fname)p Ft(,)36
b(the)e(\014lename)h(to)g(b)s(e)f(con)m(v)m(erted,)j(and)d
Fj(fnlen)p Ft(,)h(its)g(length)g(in)f(b)m(ytes.)53 b(It)35
-b(m)m(ust)390 4377 y(either)24 b(return)e(its)h(\014rst)g(argumen)m(t)g
+b(m)m(ust)390 3932 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 4486 y(in)j(newly-allo)s(cated)i(memory)-8
+(v)m(erted)i(\014lename)390 4042 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 4596 y(to)g(b)s(e)e(completed,)j(and,)f
+(against)i(the)e(w)m(ord)390 4151 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 4706 y(the)j(allo)s(cated)h
-(string.)3371 4902 y([V)-8 b(ariable])-3598 b Fh(rl_compdisp_func_t)58
+(hes.)41 b(Readline)27 b(will)h(free)390 4261 y(the)j(allo)s(cated)h
+(string.)3371 4463 y([V)-8 b(ariable])-3598 b Fh(rl_compdisp_func_t)58
b(*)52 b(rl_completion_display)q(_ma)q(tch)q(es_h)q(ook)390
-5011 y Ft(If)22 b(non-zero,)i(then)e(this)g(is)g(the)g(address)f(of)h
+4573 y Ft(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 5121 y(normally)h(displa)m(y)h(the)f(list)h(of)f(p)s(ossible)g
+390 4682 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 5230 y(displa)m(ying)37 b(the)h(list.)61
+(Readline)390 4792 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
Fs(char)30 b(**)p Fj(matc)m(hes)p Ft(,)39 b Fs(int)d
-Fj(n)m(um)p 3370 5230 V 40 w(matc)m(hes)p Ft(,)390 5340
-y Fs(int)26 b Fj(max)p 735 5340 V 40 w(length)p Ft(\))h(where)f
+Fj(n)m(um)p 3370 4792 V 40 w(matc)m(hes)p Ft(,)390 4902
+y Fs(int)26 b Fj(max)p 735 4902 V 40 w(length)p Ft(\))h(where)f
Fj(matc)m(hes)31 b Ft(is)c(the)f(arra)m(y)h(of)g(matc)m(hing)g
-(strings,)h Fj(n)m(um)p 3152 5340 V 39 w(matc)m(hes)j
-Ft(is)c(the)p eop end
-%%Page: 56 60
-TeXDict begin 56 59 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(56)390
-299 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 Fj(max)p 2073 299 28 4 v 40 w(length)h
+(strings,)h Fj(n)m(um)p 3152 4902 V 39 w(matc)m(hes)j
+Ft(is)c(the)390 5011 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 Fj(max)p 2073 5011 V 40 w(length)h
Ft(is)g(the)f(length)h(of)g(the)f(longest)i(string)390
-408 y(in)f(that)i(arra)m(y)-8 b(.)63 b(Readline)39 b(pro)m(vides)e(a)h
+5121 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 Fs(rl_display_match_list)p
-Ft(,)390 518 y(that)33 b(tak)m(es)g(care)g(of)f(doing)g(the)g(displa)m
+Ft(,)390 5230 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 628 y(function)d(from)g(this)g(ho)s(ok.)3371
-810 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_basic_word_break_ch)q(ara)q(cter)q(s)390 920 y Ft(The)44
+b(ma)m(y)f(call)h(that)390 5340 y(function)d(from)g(this)g(ho)s(ok.)p
+eop end
+%%Page: 58 62
+TeXDict begin 58 61 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(58)3371
+299 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_basic_word_break_ch)q(ara)q(cter)q(s)390 408 y Ft(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
-1029 y(routine.)61 b(The)37 b(default)g(v)-5 b(alue)37
+518 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 1139 y(completion)c(in)e(Bash:)41
-b Fs(")30 b(\\t\\n\\"\\\\'`@$><=;|&{\(")p Ft(.)3371 1322
+(break)g(w)m(ords)f(for)390 628 y(completion)c(in)e(Bash:)41
+b Fs(")30 b(\\t\\n\\"\\\\'`@$><=;|&{\(")p Ft(.)3371 819
y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_basic_quote_charact)q(ers)390 1431 y Ft(A)30 b(list)i(of)e(quote)h
+(rl_basic_quote_charact)q(ers)390 929 y Ft(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
-1614 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_completer_word_brea)q(k_c)q(hara)q(cte)q(rs)390 1724
+1121 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_completer_word_brea)q(k_c)q(hara)q(cte)q(rs)390 1230
y Ft(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 Fs(rl_complete_)390
-1833 y(internal\(\))p Ft(.)38 b(The)30 b(default)g(list)h(is)g(the)f(v)
+1340 y(internal\(\))p Ft(.)38 b(The)30 b(default)g(list)h(is)g(the)f(v)
-5 b(alue)31 b(of)g Fs(rl_basic_word_break_cha)o(ract)o(ers)p
-Ft(.)3371 2016 y([V)-8 b(ariable])-3598 b Fh(rl_cpvfunc_t)56
-b(*)d(rl_completion_word_brea)q(k_ho)q(ok)390 2125 y
+Ft(.)3371 1532 y([V)-8 b(ariable])-3598 b Fh(rl_cpvfunc_t)56
+b(*)d(rl_completion_word_brea)q(k_ho)q(ok)390 1641 y
Ft(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
-2235 y(to)k(separate)g(w)m(ords)f(for)g(w)m(ord)g(completion.)54
+1751 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
-Fs(rl_)390 2345 y(completer_word_break_cha)o(ract)o(ers)26
+Fs(rl_)390 1861 y(completer_word_break_cha)o(ract)o(ers)26
b Ft(to)34 b(b)s(e)e(used)g(to)i(p)s(erform)e(the)h(curren)m(t)f
-(completion.)390 2454 y(The)24 b(function)h(ma)m(y)g(c)m(ho)s(ose)h(to)
+(completion.)390 1970 y(The)24 b(function)h(ma)m(y)g(c)m(ho)s(ose)h(to)
f(set)g Fs(rl_completer_word_break_ch)o(arac)o(ter)o(s)19
-b Ft(itself.)39 b(If)25 b(the)390 2564 y(function)30
+b Ft(itself.)39 b(If)25 b(the)390 2080 y(function)30
b(returns)f Fs(NULL)p Ft(,)h Fs(rl_completer_word_break)o(_cha)o(rac)o
-(ters)24 b Ft(is)30 b(used.)3371 2746 y([V)-8 b(ariable])-3598
+(ters)24 b Ft(is)30 b(used.)3371 2271 y([V)-8 b(ariable])-3598
b Fh(const)54 b(char)f(*)g(rl_completer_quote_cha)q(rac)q(ters)390
-2856 y Ft(A)34 b(list)g(of)g(c)m(haracters)h(whic)m(h)e(can)h(b)s(e)g
+2381 y Ft(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 2966 y(o)s(ccurs)26 b(on)g(the)g(en)m(tire)i
+b(Completion)390 2491 y(o)s(ccurs)26 b(on)g(the)g(en)m(tire)i
(substring,)e(and)f(within)h(the)g(substring)g Fs
-(rl_completer_word_break)o(_)390 3075 y(characters)32
+(rl_completer_word_break)o(_)390 2600 y(characters)32
b Ft(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 3185 y(list.)3371
-3367 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_filename_quote_char)q(act)q(ers)390 3477 y Ft(A)34
+(they)g(also)h(app)s(ear)e(within)h(this)390 2710 y(list.)3371
+2902 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_filename_quote_char)q(act)q(ers)390 3011 y Ft(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
-3587 y(app)s(ear)d(in)g(a)h(completed)g(\014lename.)41
+3121 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
-3769 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
-(rl_special_prefixes)390 3879 y Ft(The)27 b(list)i(of)e(c)m(haracters)j
+3313 y([V)-8 b(ariable])-3598 b Fh(const)54 b(char)f(*)g
+(rl_special_prefixes)390 3422 y Ft(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 Fj(text)k Ft(when)390 3988 y(it)25 b(is)g(passed)f(to)h
+(left)i(in)e Fj(text)k Ft(when)390 3532 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)390 4098 y(kind)i(of)h(completing)h(to)f(do.)
+g(help)f(determine)h(what)390 3641 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 Fs(")p Ft($@)p Fs(")e Ft(so)h(that)g(it)h(can)390
-4208 y(complete)j(shell)e(v)-5 b(ariables)31 b(and)f(hostnames.)3371
-4390 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_query_i)q
-(tems)390 4500 y Ft(Up)36 b(to)h(this)f(man)m(y)g(items)h(will)f(b)s(e)
+3751 y(complete)j(shell)e(v)-5 b(ariables)31 b(and)f(hostnames.)3371
+3943 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_query_i)q
+(tems)390 4052 y Ft(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 4609 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 4719 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 4902 y([V)-8 b(ariable])-3598 b Fh(int)53
-b(rl_completion_append_)q(char)q(act)q(er)390 5011 y
-Ft(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
-5121 y(c)m(haracter)23 b(is)e(app)s(ended)f(to)i(the)g(inserted)f
+(ossible-completions)h(call.)390 4162 y(After)e(that,)i(readline)e
+(asks)g(the)g(user)f(for)h(con\014rmation)g(b)s(efore)f(displa)m(ying)h
+(them.)54 b(The)35 b(de-)390 4271 y(fault)42 b(v)-5 b(alue)43
+b(is)f(100.)77 b(A)42 b(negativ)m(e)i(v)-5 b(alue)42
+b(indicates)h(that)g(Readline)g(should)e(nev)m(er)h(ask)g(for)390
+4381 y(con\014rmation.)3371 4573 y([V)-8 b(ariable])-3598
+b Fh(int)53 b(rl_completion_append_)q(char)q(act)q(er)390
+4682 y Ft(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
+4792 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 5230 y(\(`)31 b('\).)40 b(Setting)27 b(this)g(to)g(the)g
+(haracter)390 4902 y(\(`)31 b('\).)40 b(Setting)27 b(this)g(to)g(the)g
(n)m(ull)f(c)m(haracter)j(\(`)p Fs(\\0)p Ft('\))e(prev)m(en)m(ts)g(an)m
-(ything)g(b)s(eing)f(app)s(ended)f(auto-)390 5340 y(matically)-8
+(ything)g(b)s(eing)f(app)s(ended)f(auto-)390 5011 y(matically)-8
b(.)41 b(This)22 b(can)i(b)s(e)f(c)m(hanged)h(in)f(application-sp)s
-(eci\014c)h(completion)h(functions)e(to)h(pro)m(vide)p
-eop end
-%%Page: 57 61
-TeXDict begin 57 60 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(57)390
-299 y(the)21 b(\\most)i(sensible)e(w)m(ord)g(separator)h(c)m(haracter")
-h(according)f(to)g(an)f(application-sp)s(eci\014c)i(com-)390
-408 y(mand)28 b(line)i(syn)m(tax)f(sp)s(eci\014cation.)42
+(eci\014c)h(completion)h(functions)e(to)h(pro)m(vide)390
+5121 y(the)d(\\most)i(sensible)e(w)m(ord)g(separator)h(c)m(haracter")h
+(according)f(to)g(an)f(application-sp)s(eci\014c)i(com-)390
+5230 y(mand)28 b(line)i(syn)m(tax)f(sp)s(eci\014cation.)42
b(It)29 b(is)g(set)h(to)g(the)f(default)g(b)s(efore)g(an)m(y)g
-(application-sp)s(eci\014c)390 518 y(completion)j(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 682 y([V)-8 b(ariable])-3598 b Fh(int)53
-b(rl_completion_suppres)q(s_ap)q(pen)q(d)390 792 y Ft(If)33
-b(non-zero,)i Fj(rl)p 949 792 28 4 v 39 w(completion)p
-1421 792 V 42 w(app)s(end)p 1755 792 V 38 w(c)m(haracter)42
-b Ft(is)33 b(not)g(app)s(ended)f(to)i(matc)m(hes)g(at)g(the)g(end)390
-902 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 1011 y(completion)32 b(function)e(is)g
+(application-sp)s(eci\014c)390 5340 y(completion)j(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 1176 y([V)-8 b(ariable])-3598 b
-Fh(int)53 b(rl_completion_quote_c)q(hara)q(cte)q(r)390
-1285 y Ft(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
-1395 y Fj(rl)p 457 1395 V 40 w(completer)p 885 1395 V
-41 w(quote)p 1145 1395 V 41 w(c)m(haracters)p Ft(,)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 1504 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
-1669 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_suppres)q
-(s_qu)q(ote)390 1778 y Ft(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 1888 y(completion)25 b(on)e(a)h(quoted)g(string.)38
+g(a)h(function.)p eop end
+%%Page: 59 63
+TeXDict begin 59 62 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(59)3371
+299 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_suppres)q
+(s_ap)q(pen)q(d)390 408 y Ft(If)33 b(non-zero,)i Fj(rl)p
+949 408 28 4 v 39 w(completion)p 1421 408 V 42 w(app)s(end)p
+1755 408 V 38 w(c)m(haracter)42 b Ft(is)33 b(not)g(app)s(ended)f(to)i
+(matc)m(hes)g(at)g(the)g(end)390 518 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 628
+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
+847 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_quote_c)q
+(hara)q(cte)q(r)390 956 y Ft(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 1066 y Fj(rl)p 457 1066 V 40 w(completer)p
+885 1066 V 41 w(quote)p 1145 1066 V 41 w(c)m(haracters)p
+Ft(,)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 1176 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 1395 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_suppres)
+q(s_qu)q(ote)390 1504 y Ft(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 1614 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 1998 y(function)30 b(is)g(called,)i(and)e
+(eci\014c)h(completion)390 1724 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 2162 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_found_q)
-q(uote)390 2271 y Ft(When)31 b(Readline)i(is)e(completing)i(quoted)f
+3371 1943 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_completion_found_q)
+q(uote)390 2052 y Ft(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 2381 y(the)21 b(w)m(ord)g(b)s(eing)g(completed)h
+-5 b(alue)32 b(if)390 2162 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 2491 y(bac)m(kslashes.)42
+(haracters,)i(including)390 2271 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 2655 y([V)-8
+(completion)g(function)e(is)g(called.)3371 2491 y([V)-8
b(ariable])-3598 b Fh(int)53 b(rl_completion_mark_sy)q(mlin)q(k_d)q
-(irs)390 2765 y Ft(If)31 b(non-zero,)i(a)f(slash)g(will)g(b)s(e)f(app)s
+(irs)390 2600 y Ft(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 2874 y(to)25 b(directory)g(names,)g(sub)5
+(links)390 2710 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
-Fj(mark-directories)k Ft(v)-5 b(ariable.)390 2984 y(This)27
+Fj(mark-directories)k Ft(v)-5 b(ariable.)390 2819 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
-3093 y(user's)42 b(global)h(preference)g(\(set)g(via)g(the)f
+2929 y(user's)42 b(global)h(preference)g(\(set)g(via)g(the)f
Fj(mark-symlink)m(ed-directories)48 b Ft(Readline)43
-b(v)-5 b(ariable\))390 3203 y(if)38 b(appropriate.)62
+b(v)-5 b(ariable\))390 3039 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 3313
+(preference)g(b)s(efore)g(an)m(y)h(application-)390 3148
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 3422 y(user's)d(preferences)g(are)h(honored.)3371
-3587 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_ignore_completion_)q
-(dupl)q(ica)q(tes)390 3696 y Ft(If)30 b(non-zero,)h(then)f(duplicates)h
+b(alue,)33 b(the)390 3258 y(user's)d(preferences)g(are)h(honored.)3371
+3477 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_ignore_completion_)q
+(dupl)q(ica)q(tes)390 3587 y Ft(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.)3371 3861 y([V)-8 b(ariable])-3598
+b(default)i(is)f(1.)3371 3806 y([V)-8 b(ariable])-3598
b Fh(int)53 b(rl_filename_completio)q(n_de)q(sir)q(ed)390
-3970 y Ft(Non-zero)33 b(means)f(that)g(the)g(results)f(of)h(the)g(matc)
+3915 y Ft(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 4080 y(is)40 b Fk(always)49 b Ft(zero)41 b(when)e
+b(This)390 4025 y(is)40 b Fk(always)49 b Ft(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 4189 y(application-sp)s(eci\014c)i(completion)g
+(within)e(an)390 4134 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 4299 y(function,)24
+b(alue)40 b(b)m(y)f(suc)m(h)h(a)390 4244 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 4408 y(pleted)35
+(Readline)h(attempts)g(to)g(quote)g(com-)390 4354 y(pleted)35
b(\014lenames)g(if)g(they)h(con)m(tain)g(an)m(y)f(c)m(haracters)i(in)e
-Fs(rl_filename_quote_chara)o(cter)o(s)390 4518 y Ft(and)30
+Fs(rl_filename_quote_chara)o(cter)o(s)390 4463 y Ft(and)30
b Fs(rl_filename_quoting_des)o(ired)24 b Ft(is)30 b(set)h(to)g(a)g
(non-zero)g(v)-5 b(alue.)3371 4682 y([V)d(ariable])-3598
b Fh(int)53 b(rl_filename_quoting_d)q(esir)q(ed)390 4792
@@ -10820,9 +10971,9 @@ b(when)f(comple-)390 5121 y(tion)h(is)g(attempted,)h(and)e(can)h(only)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 Fs(rl_filename_)390 5340 y(quoting_function)p
Ft(.)p eop end
-%%Page: 58 62
-TeXDict begin 58 61 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(58)3371
+%%Page: 60 64
+TeXDict begin 60 63 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(60)3371
299 y([V)-8 b(ariable])-3598 b Fh(int)53 b(rl_attempted_completi)q
(on_o)q(ver)390 408 y Ft(If)93 b(an)h(application-sp)s(eci\014c)i
(completion)f(function)f(assigned)g(to)h Fs(rl_attempted_)390
@@ -10848,7 +10999,7 @@ b(rl_completion_type)390 1654 y Ft(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 1763 y(ing;)f(see)f(the)g(description)f
(of)g Fs(rl_complete_internal\(\))28 b Ft(\(see)34 b(Section)g(2.6.2)h
-([Completion)390 1873 y(F)-8 b(unctions],)39 b(page)f(52\))f(for)g(the)
+([Completion)390 1873 y(F)-8 b(unctions],)39 b(page)f(54\))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 1983 y(b)s(efore)31 b(an)m(y)h
(application-sp)s(eci\014c)h(completion)g(function)f(is)f(called,)j
@@ -10874,9 +11025,9 @@ b(is)f(a)g(small)h(application)g(demonstrating)f(the)h(use)e(of)i(the)f
150 3574 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: 59 63
-TeXDict begin 59 62 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(59)390
+%%Page: 61 65
+TeXDict begin 61 64 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(61)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)
@@ -10912,9 +11063,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: 60 64
-TeXDict begin 60 63 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(60)390
+%%Page: 62 66
+TeXDict begin 62 65 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(62)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
@@ -10950,9 +11101,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: 61 65
-TeXDict begin 61 64 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(61)625
+%%Page: 63 67
+TeXDict begin 63 66 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(63)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
@@ -10979,9 +11130,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: 62 66
-TeXDict begin 62 65 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(62)468
+%%Page: 64 68
+TeXDict begin 64 67 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(64)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
@@ -11022,9 +11173,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: 63 67
-TeXDict begin 63 66 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(63)390
+%%Page: 65 69
+TeXDict begin 65 68 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(65)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
@@ -11063,9 +11214,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: 64 68
-TeXDict begin 64 67 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(64)390
+%%Page: 66 70
+TeXDict begin 66 69 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(66)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
@@ -11093,9 +11244,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: 65 69
-TeXDict begin 65 68 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(65)468
+%%Page: 67 71
+TeXDict begin 67 70 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(67)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\)\);)
@@ -11124,9 +11275,9 @@ b(Possibilities)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: 66 70
-TeXDict begin 66 69 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(66)625
+%%Page: 68 72
+TeXDict begin 68 71 bop 150 -116 a Ft(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(68)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
@@ -11155,8 +11306,8 @@ 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: 67 71
-TeXDict begin 67 70 bop 3659 -116 a Ft(67)150 299 y Fp(App)t(endix)52
+%%Page: 69 73
+TeXDict begin 69 72 bop 3659 -116 a Ft(69)150 299 y Fp(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 Ft(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 Fq(\015)e
@@ -11237,10 +11388,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: 68 72
-TeXDict begin 68 71 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 70 74
+TeXDict begin 70 73 bop 150 -116 a Ft(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)330 299 y(under)26 b(this)i(License.)40 b(If)27
+b(70)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
@@ -11331,10 +11482,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: 69 73
-TeXDict begin 69 72 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 71 75
+TeXDict begin 71 74 bop 150 -116 a Ft(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(69)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(71)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
@@ -11424,10 +11575,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: 70 74
-TeXDict begin 70 73 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 72 76
+TeXDict begin 72 75 bop 150 -116 a Ft(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(70)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+b(72)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
@@ -11506,10 +11657,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: 71 75
-TeXDict begin 71 74 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 73 77
+TeXDict begin 73 76 bop 150 -116 a Ft(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(71)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(73)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
@@ -11594,10 +11745,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: 72 76
-TeXDict begin 72 75 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 74 78
+TeXDict begin 74 77 bop 150 -116 a Ft(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(72)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+b(74)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
@@ -11682,10 +11833,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: 73 77
-TeXDict begin 73 76 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 75 79
+TeXDict begin 75 78 bop 150 -116 a Ft(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(73)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
+b(75)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
@@ -11749,10 +11900,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: 74 78
-TeXDict begin 74 77 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 76 80
+TeXDict begin 76 79 bop 150 -116 a Ft(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(74)150 299 y Fr(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+b(76)150 299 y Fr(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 Ft(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
@@ -11787,11 +11938,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: 75 79
-TeXDict begin 75 78 bop 150 -116 a Ft(Concept)31 b(Index)2927
-b(75)150 100 y Fp(Concept)52 b(Index)146 434 y Fr(A)150
+%%Page: 77 81
+TeXDict begin 77 80 bop 150 -116 a Ft(Concept)31 b(Index)2927
+b(77)150 100 y Fp(Concept)52 b(Index)146 434 y Fr(A)150
550 y Fb(application-sp)r(eci\014c)27 b(completion)f(functions)e
-Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)37 b Fb(51)146 796 y
+Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)37 b Fb(53)146 796 y
Fr(C)150 913 y Fb(command)26 b(editing)6 b Fa(:)14 b(:)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(:)h(:)f(:)21 b Fb(1)146 1159
@@ -11815,653 +11966,676 @@ g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
32 b Fb(1)2021 970 y Fr(R)2025 1102 y Fb(readline,)26
b(function)18 b Fa(:)c(:)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(:)33
-b Fb(25)2021 1507 y Fr(V)2025 1639 y Fb(v)l(ariables,)27
+b Fb(26)2021 1507 y Fr(V)2025 1639 y Fb(v)l(ariables,)27
b(readline)11 b Fa(:)j(:)f(:)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(:)
26 b Fb(4)2021 2043 y Fr(Y)2025 2176 y Fb(y)n(anking)f(text)17
b Fa(:)12 b(:)h(:)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(:)32 b Fb(2)p eop end
-%%Page: 76 80
-TeXDict begin 76 79 bop 3659 -116 a Ft(76)150 299 y Fp(F)-13
+%%Page: 78 82
+TeXDict begin 78 81 bop 3659 -116 a Ft(78)150 299 y Fp(F)-13
b(unction)52 b(and)h(V)-13 b(ariable)53 b(Index)p 156
-740 41 6 v 150 862 a Fe(_rl_digit_p)10 b Fa(:)16 b(:)d(:)g(:)g(:)h(:)f
+740 41 6 v 150 860 a Fe(_rl_digit_p)10 b Fa(:)16 b(:)d(:)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(:)25 b Fb(42)150
-951 y Fe(_rl_digit_value)17 b Fa(:)g(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(44)150
+948 y Fe(_rl_digit_value)17 b Fa(:)g(:)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(:)32 b Fb(43)150 1041 y Fe(_rl_lowercase_p)17
+(:)g(:)g(:)32 b Fb(44)150 1036 y Fe(_rl_lowercase_p)17
b Fa(:)g(:)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(:)32
-b Fb(42)150 1130 y Fe(_rl_to_lower)8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)
+b Fb(44)150 1125 y Fe(_rl_to_lower)8 b Fa(:)16 b(:)d(:)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(:)22 b Fb(43)150
-1219 y Fe(_rl_to_upper)8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(44)150
+1213 y Fe(_rl_to_upper)8 b Fa(:)16 b(:)d(:)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(:)22 b Fb(42)150 1306 y Fe(_rl_uppercase_p)17
+(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(44)150 1300 y Fe(_rl_uppercase_p)17
b Fa(:)g(:)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(:)32
-b Fb(42)146 1593 y Fr(A)150 1715 y Fe(abort)27 b(\(C-g\))17
+b Fb(44)146 1569 y Fr(A)150 1689 y Fe(abort)27 b(\(C-g\))17
b Fa(:)d(:)f(:)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
-(:)31 b Fb(22)150 1802 y Fe(accept-line)d(\(Newline)g(or)e(Return\))14
+(:)31 b Fb(23)150 1777 y Fe(accept-line)d(\(Newline)g(or)e(Return\))14
b Fa(:)g(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
-b Fb(17)146 2088 y Fr(B)150 2211 y Fe(backward-char)h(\(C-b\))14
+b Fb(18)150 1866 y(activ)n(e-region-end-color)20 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(:)34 b Fb(5)150 1953 y(activ)n
+(e-region-start-color)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)31
+b Fb(5)146 2220 y Fr(B)150 2339 y Fe(backward-char)e(\(C-b\))14
b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28 b Fb(16)150 2300
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28 b Fb(17)150 2428
y Fe(backward-delete-char)i(\(Rubout\))24 b Fa(:)14 b(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(19)150 2389
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(20)150 2516
y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))7 b Fa(:)15
b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)21 b
-Fb(20)150 2478 y Fe(backward-kill-word)30 b(\(M-DEL\))13
+Fb(21)150 2604 y Fe(backward-kill-word)30 b(\(M-DEL\))13
b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)27 b Fb(20)150 2567 y Fe(backward-word)i(\(M-b\))14
+h(:)27 b Fb(21)150 2693 y Fe(backward-word)i(\(M-b\))14
b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28 b Fb(16)150 2656
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28 b Fb(17)150 2781
y Fe(beginning-of-history)i(\(M-<\))13 b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(17)150
-2746 y Fe(beginning-of-line)i(\(C-a\))22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(18)150
+2869 y Fe(beginning-of-line)i(\(C-a\))22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(16)150 2835 y(b)r(ell-st)n(yle)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fb(17)150 2958 y(b)r(ell-st)n(yle)9 b Fa(:)14 b(:)f(:)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(:)h(:)f(:)24
-b Fb(5)150 2924 y(bind-tt)n(y-sp)r(ecial-c)n(hars)c Fa(:)13
+b Fb(5)150 3046 y(bind-tt)n(y-sp)r(ecial-c)n(hars)c 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(:)36 b Fb(5)150 3013
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(5)150 3134
y(blink-matc)n(hing-paren)6 b Fa(:)12 b(:)i(:)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(:)21 b Fb(5)150 3100 y Fe(bracketed-paste-begin)30
+g(:)21 b Fb(5)150 3222 y Fe(bracketed-paste-begin)30
b(\(\))18 b Fa(:)c(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(19)146 3387 y Fr(C)150
-3509 y Fe(call-last-kbd-macro)d(\(C-x)c(e\))17 b Fa(:)d(:)f(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(22)150
-3598 y Fe(capitalize-word)d(\(M-c\))9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(20)146 3491 y Fr(C)150
+3610 y Fe(call-last-kbd-macro)d(\(C-x)c(e\))17 b Fa(:)d(:)f(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(23)150
+3699 y Fe(capitalize-word)d(\(M-c\))9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-23 b Fb(19)150 3687 y Fe(character-search)29 b(\(C-]\))6
+23 b Fb(21)150 3787 y Fe(character-search)29 b(\(C-]\))6
b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(23)150 3777 y Fe
+(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(24)150 3875 y Fe
(character-search-backward)31 b(\(M-C-]\))12 b Fa(:)j(:)e(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)27 b Fb(23)150 3866 y Fe(clear-display)i(\(M-C-l\))9
+(:)g(:)g(:)g(:)g(:)27 b Fb(24)150 3964 y Fe(clear-display)i(\(M-C-l\))9
b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23 b Fb(16)150 3955 y
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23 b Fb(17)150 4052 y
Fe(clear-screen)28 b(\(C-l\))16 b Fa(:)f(:)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
-(:)31 b Fb(17)150 4044 y(colored-completion-pre\014x)9
+(:)31 b Fb(18)150 4140 y(colored-completion-pre\014x)9
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)24 b Fb(5)150 4133 y(colored-stats)17
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)24 b Fb(5)150 4229 y(colored-stats)17
b Fa(:)d(:)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(:)31 b Fb(5)150 4222 y(commen)n(t-b)r(egin)6 b Fa(:)14
+(:)h(:)31 b Fb(6)150 4317 y(commen)n(t-b)r(egin)6 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(:)f(:)21
-b Fb(5)150 4312 y Fe(complete)27 b(\(TAB\))10 b Fa(:)k(:)f(:)g(:)h(:)f
+b Fb(6)150 4405 y Fe(complete)27 b(\(TAB\))10 b Fa(:)k(:)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(:)24 b Fb(21)150 4401
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(22)150 4494
y(completion-displa)n(y-width)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(:)25
-b Fb(5)150 4490 y(completion-ignore-case)c Fa(:)13 b(:)g(:)g(:)g(:)h(:)
+b Fb(6)150 4582 y(completion-ignore-case)c 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(:)34 b Fb(5)150 4579 y(completion-map-case)15
+(:)g(:)g(:)34 b Fb(6)150 4670 y(completion-map-case)15
b Fa(:)f(:)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(:)30 b Fb(5)150
-4668 y(completion-pre\014x-displa)n(y-length)14 b Fa(:)e(:)h(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)30 b Fb(6)150
+4759 y(completion-pre\014x-displa)n(y-length)14 b Fa(:)e(:)h(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)28 b
-Fb(5)150 4758 y(completion-query-items)6 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
+Fb(6)150 4847 y(completion-query-items)6 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(:)21 b Fb(6)150 4847 y(con)n(v)n(ert-meta)9
+(:)g(:)g(:)21 b Fb(6)150 4936 y(con)n(v)n(ert-meta)9
b Fa(:)k(:)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(:)24 b Fb(6)150 4936 y Fe(copy-backward-word)30
+(:)h(:)24 b Fb(6)150 5024 y Fe(copy-backward-word)30
b(\(\))9 b Fa(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23 b Fb(21)150
-5025 y Fe(copy-forward-word)29 b(\(\))11 b Fa(:)j(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23 b Fb(22)150
+5112 y Fe(copy-forward-word)29 b(\(\))11 b Fa(:)j(:)f(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)26 b Fb(21)150 5112 y Fe(copy-region-as-kill)k(\(\))6
+g(:)26 b Fb(22)150 5199 y Fe(copy-region-as-kill)k(\(\))6
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(21)2021 817 y Fr(D)2025
-935 y Fe(delete-char)28 b(\(C-d\))20 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
+(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(22)2021 817 y Fr(D)2025
+933 y Fe(delete-char)28 b(\(C-d\))20 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(:)34 b Fb(18)2025 1023 y Fe(delete-char-or-list)c(\(\))6
+(:)g(:)g(:)g(:)34 b Fb(20)2025 1020 y Fe(delete-char-or-list)c(\(\))6
b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(22)2025 1111 y Fe
+(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(23)2025 1108 y Fe
(delete-horizontal-space)31 b(\(\))13 b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)28 b Fb(20)2025
-1200 y Fe(digit-argument)h(\()p Fc(M-0)p Fe(,)d Fc(M-1)p
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)28 b Fb(22)2025
+1195 y Fe(digit-argument)h(\()p Fc(M-0)p Fe(,)d Fc(M-1)p
Fe(,)h(...)f Fc(M--)p Fe(\))13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)28 b Fb(21)2025 1288 y(disable-completion)20 b Fa(:)13
+(:)28 b Fb(22)2025 1282 y(disable-completion)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(:)g(:)h(:)f(:)g(:)34 b Fb(6)2025
-1376 y Fe(do-lowercase-version)c(\(M-A,)d(M-B,)f(M-)p
-Fc(x)p Fe(,)h(...\))12 b Fa(:)i(:)27 b Fb(22)2025 1464
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(7)2025
+1370 y Fe(do-lowercase-version)c(\(M-A,)d(M-B,)f(M-)p
+Fc(x)p Fe(,)h(...\))12 b Fa(:)i(:)27 b Fb(23)2025 1457
y Fe(downcase-word)h(\(M-l\))14 b Fa(:)g(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)28
-b Fb(19)2025 1552 y Fe(dump-functions)h(\(\))19 b Fa(:)13
+b Fb(20)2025 1544 y Fe(dump-functions)h(\(\))19 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(:)34 b Fb(23)2025
-1640 y Fe(dump-macros)28 b(\(\))10 b Fa(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(24)2025
+1631 y Fe(dump-macros)28 b(\(\))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(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)24 b Fb(24)2025 1727 y Fe(dump-variables)29
+g(:)g(:)h(:)f(:)g(:)g(:)24 b Fb(25)2025 1719 y Fe(dump-variables)29
b(\(\))19 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(:)34
-b Fb(23)2021 1989 y Fr(E)2025 2108 y Fb(ec)n(ho-con)n(trol-c)n
+b Fb(25)2021 1965 y Fr(E)2025 2081 y Fb(ec)n(ho-con)n(trol-c)n
(haracters)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(:)29
-b Fb(6)2025 2196 y(editing-mo)r(de)10 b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)h
+b Fb(7)2025 2169 y(editing-mo)r(de)10 b Fa(:)j(:)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(:)25 b Fb(6)2025
-2284 y Fe(emacs-editing-mode)k(\(C-e\))18 b Fa(:)d(:)e(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25 b Fb(7)2025
+2256 y Fe(emacs-editing-mode)k(\(C-e\))18 b Fa(:)d(:)e(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33
-b Fb(24)2025 2372 y(emacs-mo)r(de-string)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)
+b Fb(25)2025 2343 y(emacs-mo)r(de-string)18 b Fa(:)c(:)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(:)33 b Fb(6)2025 2460 y(enable-brac)n(k)n
-(eted-paste)18 b Fa(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33
-b Fb(6)2025 2548 y(enable-k)n(eypad)7 b Fa(:)12 b(:)h(:)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(:)23 b Fb(7)2025
-2636 y Fe(end-kbd-macro)28 b(\(C-x)f(\)\))16 b Fa(:)d(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)30 b Fb(22)2025 2724 y Fc(end-of-file)e Fe(\(usually)f(C-d\))d
+(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fb(7)2025 2431 y(enable-activ)n
+(e-region)15 b Fa(:)f(:)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(:)30
+b Fb(7)2025 2518 y(enable-brac)n(k)n(eted-paste)18 b
+Fa(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33 b Fb(7)2025
+2605 y(enable-k)n(eypad)7 b Fa(:)12 b(:)h(:)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(:)23 b Fb(7)2025 2692 y
+Fe(end-kbd-macro)28 b(\(C-x)f(\)\))16 b Fa(:)d(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30
+b Fb(23)2025 2780 y Fc(end-of-file)e Fe(\(usually)f(C-d\))d
Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)37 b Fb(18)2025 2812 y Fe(end-of-history)29
+(:)g(:)g(:)37 b Fb(19)2025 2867 y Fe(end-of-history)29
b(\(M->\))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(:)26 b Fb(17)2025
-2900 y Fe(end-of-line)i(\(C-e\))20 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(18)2025
+2954 y Fe(end-of-line)i(\(C-e\))20 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(:)34 b Fb(16)2025 2988 y Fe(exchange-point-and-mark)d(\(C-x)
+g(:)g(:)g(:)34 b Fb(17)2025 3042 y Fe(exchange-point-and-mark)d(\(C-x)
26 b(C-x\))20 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
-b Fb(23)2025 3076 y(expand-tilde)19 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(24)2025 3129 y(expand-tilde)19 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fb(7)2021
-3336 y Fr(F)2025 3455 y Fe(forward-backward-delete-char)d(\(\))17
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fb(8)2021
+3373 y Fr(F)2025 3490 y Fe(fetch-history)28 b(\(\))22
+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(:)36
+b Fb(19)2025 3577 y Fe(forward-backward-delete-char)c(\(\))17
b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)32
-b Fb(19)2025 3543 y Fe(forward-char)c(\(C-f\))16 b Fa(:)f(:)e(:)g(:)g
+b Fb(20)2025 3664 y Fe(forward-char)c(\(C-f\))16 b Fa(:)f(:)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(:)31 b Fb(16)2025 3631 y Fe(forward-search-history)f
+h(:)f(:)g(:)g(:)g(:)31 b Fb(17)2025 3751 y Fe(forward-search-history)f
(\(C-s\))8 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)23 b Fb(17)2025 3718 y Fe(forward-word)28
+(:)g(:)g(:)23 b Fb(18)2025 3839 y Fe(forward-word)28
b(\(M-f\))16 b Fa(:)f(:)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(:)31
-b Fb(16)2021 3970 y Fr(H)2025 4089 y Fb(history-preserv)n(e-p)r(oin)n
+b Fb(17)2021 4075 y Fr(H)2025 4191 y Fb(history-preserv)n(e-p)r(oin)n
(t)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(:)30 b Fb(7)2025
-4177 y Fe(history-search-backward)h(\(\))13 b Fa(:)g(:)g(:)h(:)f(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)30 b Fb(8)2025
+4278 y Fe(history-search-backward)h(\(\))13 b Fa(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)28 b
-Fb(17)2025 4265 y Fe(history-search-forward)i(\(\))16
+Fb(18)2025 4366 y Fe(history-search-forward)i(\(\))16
b Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)30 b Fb(17)2025 4353 y(history-size)22 b Fa(:)13
+f(:)g(:)30 b Fb(18)2025 4453 y(history-size)22 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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)37 b Fb(7)2025 4441 y Fe(history-substring-search-backw)q(ard)32
-b(\(\))22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)36 b Fb(18)2025
-4529 y Fe(history-substring-search-forwa)q(rd)c(\(\))7
-b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)22 b Fb(18)2025
-4616 y(horizon)n(tal-scroll-mo)r(de)10 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g
+g(:)37 b Fb(8)2025 4540 y Fe(history-substring-search-backw)q(ard)32
+b(\(\))22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)36 b Fb(19)2025
+4628 y Fe(history-substring-search-forwa)q(rd)c(\(\))7
+b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)22 b Fb(19)2025
+4715 y(horizon)n(tal-scroll-mo)r(de)10 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)25 b Fb(7)2021 4867 y Fr(I)2025 4986 y Fb(input-meta)9
+g(:)g(:)h(:)25 b Fb(8)2021 4950 y Fr(I)2025 5066 y Fb(input-meta)9
b Fa(:)j(:)h(:)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
-(:)g(:)g(:)g(:)24 b Fb(7)2025 5074 y Fe(insert-comment)29
+(:)g(:)g(:)g(:)24 b Fb(8)2025 5154 y Fe(insert-comment)29
b(\(M-#\))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(:)26 b Fb(23)2025
-5162 y Fe(insert-completions)j(\(M-*\))18 b Fa(:)d(:)e(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(24)2025
+5241 y Fe(insert-completions)j(\(M-*\))18 b Fa(:)d(:)e(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33
-b Fb(21)2025 5249 y(isearc)n(h-terminators)9 b Fa(:)14
+b Fb(23)2025 5328 y(isearc)n(h-terminators)9 b Fa(:)14
b(:)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(:)24 b Fb(7)p
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)24 b Fb(8)p
eop end
-%%Page: 77 81
-TeXDict begin 77 80 bop 150 -116 a Ft(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(77)146 294 y
+%%Page: 79 83
+TeXDict begin 79 82 bop 150 -116 a Ft(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(79)146 294 y
Fr(K)150 423 y Fb(k)n(eymap)14 b Fa(:)e(:)h(:)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(:)f(:)g(:)g(:)g(:)g(:)29
b Fb(8)150 514 y Fe(kill-line)f(\(C-k\))7 b Fa(:)14 b(:)f(:)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(:)21 b Fb(20)150 605 y
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(21)150 605 y
Fe(kill-region)28 b(\(\))10 b Fa(:)j(:)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(:)24 b Fb(21)150 697 y Fe(kill-whole-line)29
+(:)f(:)g(:)g(:)g(:)24 b Fb(22)150 697 y Fe(kill-whole-line)29
b(\(\))16 b Fa(:)e(:)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(:)31
-b Fb(20)150 784 y Fe(kill-word)d(\(M-d\))7 b Fa(:)14
+b Fb(21)150 784 y Fe(kill-word)d(\(M-d\))7 b Fa(:)14
b(:)f(:)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(:)21
-b Fb(20)146 1106 y Fr(M)150 1235 y Fb(mark-mo)r(di\014ed-lines)c
+b Fb(21)146 1106 y Fr(M)150 1235 y Fb(mark-mo)r(di\014ed-lines)c
Fa(:)c(:)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(:)32 b Fb(8)150
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(9)150
1326 y(mark-symlink)n(ed-directories)14 b Fa(:)f(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
-b Fb(8)150 1417 y(matc)n(h-hidden-\014les)7 b Fa(:)12
+b Fb(9)150 1417 y(matc)n(h-hidden-\014les)7 b Fa(:)12
b(:)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(:)g(:)h(:)f(:)g(:)22
-b Fb(8)150 1509 y Fe(menu-complete)29 b(\(\))22 b Fa(:)13
+b Fb(9)150 1509 y Fe(menu-complete)29 b(\(\))22 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(:)g(:)g(:)g(:)36 b Fb(22)150
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(23)150
1600 y Fe(menu-complete-backward)31 b(\(\))16 b Fa(:)d(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)30
-b Fb(22)150 1692 y(men)n(u-complete-displa)n(y-pre\014x)10
+b Fb(23)150 1692 y(men)n(u-complete-displa)n(y-pre\014x)10
b Fa(:)h(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)25 b Fb(8)150 1779 y(meta-\015ag)d Fa(:)13
+h(:)f(:)g(:)25 b Fb(9)150 1779 y(meta-\015ag)d 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(:)g(:)
-h(:)f(:)g(:)36 b Fb(7)146 2109 y Fr(N)150 2238 y Fe(next-history)28
+h(:)f(:)g(:)36 b Fb(8)146 2109 y Fr(N)150 2238 y Fe(next-history)28
b(\(C-n\))16 b Fa(:)f(:)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(:)31
-b Fb(17)150 2329 y Fe(next-screen-line)e(\(\))14 b Fa(:)g(:)f(:)g(:)g
+b Fb(18)150 2329 y Fe(next-screen-line)e(\(\))14 b Fa(:)g(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)28 b Fb(16)150 2401 y Fe(non-incremental-forward-)227
+g(:)h(:)f(:)g(:)28 b Fb(17)150 2401 y Fe(non-incremental-forward-)227
2488 y(search-history)h(\(M-n\))7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21
-b Fb(17)150 2576 y Fe(non-incremental-reverse-)227 2663
+b Fb(18)150 2576 y Fe(non-incremental-reverse-)227 2663
y(search-history)29 b(\(M-p\))7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21
-b Fb(17)146 3004 y Fr(O)150 3133 y Fe(operate-and-get-next)30
+b Fb(18)146 3004 y Fr(O)150 3133 y Fe(operate-and-get-next)30
b(\(C-o\))13 b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)27 b Fb(18)150 3224 y(output-meta)18
+(:)g(:)g(:)g(:)h(:)27 b Fb(19)150 3224 y(output-meta)18
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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)34 b Fb(8)150 3311 y Fe(overwrite-mode)29 b(\(\))19
+g(:)g(:)34 b Fb(9)150 3311 y Fe(overwrite-mode)29 b(\(\))19
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(:)33 b Fb(20)146
-3633 y Fr(P)150 3762 y Fb(page-completions)8 b Fa(:)15
-b(:)e(:)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(:)23
-b Fb(9)150 3853 y Fe(possible-completions)30 b(\(M-?\))13
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(21)146
+3633 y Fr(P)150 3762 y Fb(page-completions)6 b Fa(:)15
+b(:)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(:)20
+b Fb(10)150 3853 y Fe(possible-completions)30 b(\(M-?\))13
b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)27 b Fb(21)150 3945 y Fe(prefix-meta)h(\(ESC\))20
+h(:)27 b Fb(22)150 3945 y Fe(prefix-meta)h(\(ESC\))20
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(:)33 b Fb(22)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(24)150
4036 y Fe(previous-history)c(\(C-p\))6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(17)150 4128 y Fe(previous-screen-line)30 b(\(\))21
+b Fb(18)150 4128 y Fe(previous-screen-line)30 b(\(\))21
b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)35 b Fb(16)150 4215 y Fe(print-last-kbd-macro)30
+(:)h(:)f(:)g(:)g(:)35 b Fb(17)150 4215 y Fe(print-last-kbd-macro)30
b(\(\))21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(22)146 4547 y
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(23)146 4547 y
Fr(Q)150 4672 y Fe(quoted-insert)29 b(\(C-q)d(or)g(C-v\))10
b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)24 b Fb(19)2021 294 y Fr(R)2025 410 y Fe(re-read-init-file)29
+g(:)g(:)24 b Fb(20)2021 294 y Fr(R)2025 410 y Fe(re-read-init-file)29
b(\(C-x)e(C-r\))17 b Fa(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)32 b Fb(22)2025 498 y Fe(readline)18
+(:)f(:)g(:)g(:)g(:)32 b Fb(23)2025 498 y Fe(readline)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(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)33 b Fb(25)2025 585 y Fe(redraw-current-line)d(\(\))6
+(:)g(:)g(:)g(:)33 b Fb(26)2025 585 y Fe(redraw-current-line)d(\(\))6
b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(17)2025 672 y Fe
+(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(18)2025 672 y Fe
(reverse-search-history)30 b(\(C-r\))8 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(17)2025
-760 y(rev)n(ert-all-at-newline)10 b Fa(:)k(:)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(:)26 b Fb(9)2025 847 y Fe(revert-line)i(\(M-r\))20
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(18)2025
+760 y(rev)n(ert-all-at-newline)8 b Fa(:)14 b(:)f(:)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(:)23 b Fb(10)2025 847 y Fe(revert-line)28 b(\(M-r\))20
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(:)34 b Fb(23)2025
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(24)2025
935 y Fe(rl_activate_mark)15 b Fa(:)h(:)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(:)29 b Fb(44)2025 1022 y Fe(rl_add_defun)8 b Fa(:)15
+h(:)f(:)29 b Fb(45)2025 1022 y Fe(rl_add_defun)8 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(:)22
-b Fb(33)2025 1109 y Fe(rl_add_funmap_entry)7 b Fa(:)17
+b Fb(35)2025 1109 y Fe(rl_add_funmap_entry)7 b Fa(:)17
b(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(37)2025 1197 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(39)2025 1197 y
Fe(rl_add_undo)10 b Fa(:)16 b(:)d(:)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(:)25 b Fb(38)2025 1284 y Fe(rl_alphabetic)g
+g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(39)2025 1284 y Fe(rl_alphabetic)g
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(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fb(42)2025 1371 y Fe(rl_begin_undo_group)7 b Fa(:)17
+b Fb(44)2025 1371 y Fe(rl_begin_undo_group)7 b Fa(:)17
b(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(38)2025 1459 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(39)2025 1459 y
Fe(rl_bind_key)10 b Fa(:)16 b(:)d(:)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(:)25 b Fb(35)2025 1546 y Fe
+g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(36)2025 1546 y Fe
(rl_bind_key_if_unbound)16 b Fa(:)i(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)31
-b Fb(35)2025 1633 y Fe(rl_bind_key_if_unbound_in_map)16
+b Fb(36)2025 1633 y Fe(rl_bind_key_if_unbound_in_map)16
b Fa(:)j(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)30
-b Fb(35)2025 1721 y Fe(rl_bind_key_in_map)10 b Fa(:)17
+b Fb(36)2025 1721 y Fe(rl_bind_key_in_map)10 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(:)24 b Fb(35)2025 1808
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(36)2025 1808
y Fe(rl_bind_keyseq)f 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(:)
-h(:)f(:)34 b Fb(36)2025 1896 y Fe(rl_bind_keyseq_if_unbound)9
+h(:)f(:)34 b Fb(37)2025 1896 y Fe(rl_bind_keyseq_if_unbound)9
b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)23 b Fb(36)2025 1983 y Fe(rl_bind_keyseq_if_unbound_in_m)q
+(:)g(:)h(:)23 b Fb(37)2025 1983 y Fe(rl_bind_keyseq_if_unbound_in_m)q
(ap)8 b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)23
-b Fb(36)2025 2070 y Fe(rl_bind_keyseq_in_map)h Fa(:)13
+b Fb(37)2025 2070 y Fe(rl_bind_keyseq_in_map)h Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)34 b Fb(36)2025 2158 y Fe
+(:)g(:)g(:)g(:)g(:)34 b Fb(37)2025 2158 y Fe
(rl_callback_handler_install)27 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(44)2025 2245 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(46)2025 2245 y
Fe(rl_callback_handler_remove)6 b Fa(:)19 b(:)13 b(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(45)2025
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(46)2025
2332 y Fe(rl_callback_read_char)j Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
-b Fb(44)2025 2420 y Fe(rl_callback_sigcleanup)16 b Fa(:)i(:)13
+b Fb(46)2025 2420 y Fe(rl_callback_sigcleanup)16 b Fa(:)i(:)13
b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)31 b Fb(44)2025 2507 y Fe(rl_check_signals)15
+(:)g(:)g(:)31 b Fb(46)2025 2507 y Fe(rl_check_signals)15
b Fa(:)h(:)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(:)29 b
-Fb(50)2025 2595 y Fe(rl_cleanup_after_signal)14 b Fa(:)k(:)13
+Fb(52)2025 2595 y Fe(rl_cleanup_after_signal)14 b Fa(:)k(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)28 b Fb(50)2025 2682 y Fe(rl_clear_history)15
+(:)h(:)28 b Fb(52)2025 2682 y Fe(rl_clear_history)15
b Fa(:)h(:)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(:)29 b
-Fb(43)2025 2769 y Fe(rl_clear_message)15 b Fa(:)h(:)d(:)g(:)h(:)f(:)g
+Fb(45)2025 2769 y Fe(rl_clear_message)15 b Fa(:)h(:)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(:)29 b Fb(39)2025 2857 y Fe(rl_clear_pending_input)16
+g(:)g(:)g(:)h(:)f(:)29 b Fb(40)2025 2857 y Fe(rl_clear_pending_input)16
b Fa(:)i(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)31 b Fb(41)2025 2944 y Fe(rl_clear_signals)15
+(:)g(:)h(:)f(:)g(:)g(:)31 b Fb(42)2025 2944 y Fe(rl_clear_signals)15
b Fa(:)h(:)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(:)29 b
-Fb(51)2025 3031 y Fe(rl_clear_visible_line)24 b Fa(:)13
+Fb(53)2025 3031 y Fe(rl_clear_visible_line)24 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(:)34 b Fb(39)2025 3119 y Fe(rl_complete)17
-b Fa(:)e(:)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(:)31
-b Fb(52,)c(53)2025 3206 y Fe(rl_complete_internal)f 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(:)36 b Fb(52)2025 3293 y Fe(rl_completion_matches)
-24 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(:)34 b Fb(53)2025 3381 y
-Fe(rl_completion_mode)10 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(:)24
-b Fb(53)2025 3468 y Fe(rl_copy_keymap)f 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(:)h(:)f(:)34 b Fb(34)2025 3556 y Fe(rl_copy_text)8
-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(:)
-22 b Fb(40)2025 3643 y Fe(rl_crlf)g Fa(:)13 b(:)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(:)35
-b Fb(39)2025 3730 y Fe(rl_deactivate_mark)10 b Fa(:)17
+(:)g(:)g(:)g(:)g(:)34 b Fb(40)2025 3119 y Fe(rl_complete)10
+b Fa(:)16 b(:)d(:)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(:)25 b Fb(54)2025 3206 y Fe(rl_complete_internal)h
+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(:)36 b Fb(54)2025 3293 y
+Fe(rl_completion_matches)24 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(:)34
+b Fb(55)2025 3381 y Fe(rl_completion_mode)10 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(:)24 b Fb(55)2025 3468
+y Fe(rl_copy_keymap)f 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(:)
+h(:)f(:)34 b Fb(35)2025 3556 y Fe(rl_copy_text)8 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(:)22
+b Fb(41)2025 3643 y Fe(rl_crlf)g Fa(:)13 b(:)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(:)35
+b Fb(40)2025 3730 y Fe(rl_deactivate_mark)10 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(:)24 b Fb(44)2025 3818
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(45)2025 3818
y Fe(rl_delete_text)f 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(:)
-h(:)f(:)34 b Fb(40)2025 3905 y Fe(rl_deprep_terminal)10
+h(:)f(:)34 b Fb(41)2025 3905 y Fe(rl_deprep_terminal)10
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(:)24 b Fb(41)2025
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(43)2025
3992 y Fe(rl_ding)e Fa(:)13 b(:)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(:)35 b Fb(42)2025
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(44)2025
4080 y Fe(rl_discard_keymap)12 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(:)27 b Fb(34)2025 4167 y Fe(rl_display_match_list)d
+g(:)g(:)27 b Fb(35)2025 4167 y Fe(rl_display_match_list)d
Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(42)2025 4255 y Fe(rl_do_undo)13
+(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(44)2025 4255 y Fe(rl_do_undo)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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)27 b Fb(38)2025 4342 y Fe(rl_echo_signal_char)7
+(:)h(:)27 b Fb(39)2025 4342 y Fe(rl_echo_signal_char)7
b Fa(:)17 b(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(51)2025
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(52)2025
4429 y Fe(rl_empty_keymap)17 b Fa(:)g(:)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(:)32 b Fb(34)2025 4517 y Fe(rl_end_undo_group)12
+g(:)g(:)g(:)32 b Fb(35)2025 4517 y Fe(rl_end_undo_group)12
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(:)27 b Fb(38)2025
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)27 b Fb(39)2025
4604 y Fe(rl_execute_next)17 b Fa(:)g(:)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(:)32 b Fb(41)2025 4691 y Fe(rl_expand_prompt)15
+g(:)g(:)g(:)32 b Fb(42)2025 4691 y Fe(rl_expand_prompt)15
b Fa(:)h(:)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(:)29 b
-Fb(39)2025 4779 y Fe(rl_extend_line_buffer)24 b Fa(:)13
+Fb(41)2025 4779 y Fe(rl_extend_line_buffer)24 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(:)34 b Fb(42)2025 4866 y Fe
+(:)g(:)g(:)g(:)g(:)34 b Fb(44)2025 4866 y Fe
(rl_filename_completion_functio)q(n)11 b Fa(:)19 b(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(53)2025
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(55)2025
4954 y Fe(rl_forced_update_display)11 b Fa(:)19 b(:)13
b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)26 b Fb(38)2025 5041 y Fe(rl_free)c Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
+(:)26 b Fb(40)2025 5041 y Fe(rl_free)c Fa(:)13 b(:)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(:)35
-b Fb(42)2025 5128 y Fe(rl_free_keymap)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
+b Fb(43)2025 5128 y Fe(rl_free_keymap)23 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(:)h(:)f(:)34 b Fb(34)p eop end
-%%Page: 78 82
-TeXDict begin 78 81 bop 150 -116 a Ft(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(78)150 260 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fb(35)p eop end
+%%Page: 80 84
+TeXDict begin 80 83 bop 150 -116 a Ft(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(80)150 260 y
Fe(rl_free_line_state)10 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
-b Fb(50)150 347 y Fe(rl_free_undo_list)12 b Fa(:)17 b(:)c(:)g(:)h(:)f
+b Fb(52)150 348 y Fe(rl_free_undo_list)12 b Fa(:)17 b(:)c(:)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(:)26 b Fb(38)150 434 y Fe(rl_function_dumper)10
+g(:)g(:)g(:)g(:)h(:)26 b Fb(39)150 437 y Fe(rl_function_dumper)10
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(37)150
-521 y Fe(rl_function_of_keyseq)g Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(38)150
+525 y Fe(rl_function_of_keyseq)g Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
-b Fb(37)150 609 y Fe(rl_function_of_keyseq_len)9 b Fa(:)19
+b Fb(38)150 614 y Fe(rl_function_of_keyseq_len)9 b Fa(:)19
b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)23 b Fb(37)150 696 y Fe(rl_funmap_names)17 b Fa(:)g(:)c(:)g(:)g(:)g
+g(:)23 b Fb(38)150 702 y Fe(rl_funmap_names)17 b Fa(:)g(:)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(:)32 b Fb(37)150 783 y Fe(rl_generic_bind)17
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(39)150 791 y Fe(rl_generic_bind)17
b Fa(:)g(:)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(:)32
-b Fb(36)150 870 y Fe(rl_get_keymap)25 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+b Fb(37)150 879 y Fe(rl_get_keymap)25 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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(34)150 957 y
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(35)150 968 y
Fe(rl_get_keymap_by_name)24 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(:)33
-b Fb(34)150 1045 y Fe(rl_get_keymap_name)10 b Fa(:)17
+b Fb(36)150 1057 y Fe(rl_get_keymap_name)10 b Fa(:)17
b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(34)150 1132
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(36)150 1145
y Fe(rl_get_screen_size)10 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-24 b Fb(51)150 1219 y Fe(rl_get_termcap)f Fa(:)13 b(:)g(:)g(:)g(:)h(:)f
+24 b Fb(53)150 1234 y Fe(rl_get_termcap)f 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(:)h(:)f(:)g(:)g(:)34 b Fb(43)150 1306 y Fe(rl_getc)22
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(45)150 1322 y Fe(rl_getc)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(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)35 b Fb(40)150 1393 y Fe(rl_initialize)25
+h(:)f(:)g(:)g(:)g(:)35 b Fb(42)150 1411 y Fe(rl_initialize)25
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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
-b Fb(42)150 1481 y Fe(rl_insert_completions)24 b Fa(:)13
+b Fb(44)150 1499 y Fe(rl_insert_completions)24 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(:)33 b Fb(53)150 1568 y Fe(rl_insert_text)23
+(:)g(:)g(:)h(:)f(:)33 b Fb(55)150 1588 y Fe(rl_insert_text)23
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(:)h(:)f(:)g(:)g(:)34
-b Fb(40)150 1655 y Fe(rl_invoking_keyseqs)7 b Fa(:)17
+b Fb(41)150 1676 y Fe(rl_invoking_keyseqs)7 b Fa(:)17
b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(37)150 1742 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(38)150 1765 y
Fe(rl_invoking_keyseqs_in_map)7 b Fa(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(37)150
-1829 y Fe(rl_keep_mark_active)7 b Fa(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(38)150
+1853 y Fe(rl_keep_mark_active)7 b Fa(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-21 b Fb(44)150 1917 y Fe(rl_kill_text)8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g
+21 b Fb(46)150 1942 y Fe(rl_kill_text)8 b Fa(:)16 b(:)d(:)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(:)22 b Fb(40)150
-2004 y Fe(rl_list_funmap_names)k Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(41)150
+2030 y Fe(rl_list_funmap_names)k 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(:)36
-b Fb(37)150 2091 y Fe(rl_macro_bind)25 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+b Fb(38)150 2119 y Fe(rl_macro_bind)25 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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(43)150 2178 y
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(45)150 2207 y
Fe(rl_macro_dumper)17 b Fa(:)g(:)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(:)32 b Fb(43)150 2265 y Fe(rl_make_bare_keymap)7 b
+g(:)32 b Fb(45)150 2296 y Fe(rl_make_bare_keymap)7 b
Fa(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(34)150
-2353 y Fe(rl_make_keymap)i Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(35)150
+2384 y Fe(rl_make_keymap)i 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(:)h
-(:)f(:)g(:)g(:)34 b Fb(34)150 2440 y Fe(rl_mark_active_p)15
+(:)f(:)g(:)g(:)34 b Fb(35)150 2473 y Fe(rl_mark_active_p)15
b Fa(:)h(:)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(:)29 b
-Fb(44)150 2527 y Fe(rl_message)13 b Fa(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g
+Fb(46)150 2561 y Fe(rl_message)13 b Fa(:)i(:)e(:)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(:)27 b Fb(39)150
-2614 y Fe(rl_modifying)8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(40)150
+2650 y Fe(rl_modifying)8 b Fa(:)16 b(:)d(:)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(:)22 b Fb(38)150 2701 y Fe(rl_named_function)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(40)150 2738 y Fe(rl_named_function)
12 b Fa(:)17 b(:)c(:)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(:)26
-b Fb(37)150 2789 y Fe(rl_on_new_line)d Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
+b Fb(38)150 2827 y Fe(rl_on_new_line)d 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(:)h(:)f(:)g(:)g(:)34 b Fb(38)150 2876 y Fe
+(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(40)150 2915 y Fe
(rl_on_new_line_with_prompt)7 b Fa(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(39)150
-2963 y Fe(rl_parse_and_bind)12 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(40)150
+3004 y Fe(rl_parse_and_bind)12 b Fa(:)17 b(:)c(:)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(:)26 b Fb(36)150 3050 y Fe(rl_pending_signal)12
+g(:)h(:)26 b Fb(37)150 3092 y Fe(rl_pending_signal)12
b Fa(:)17 b(:)c(:)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(:)26 b Fb(50)150
-3137 y Fe(rl_possible_completions)14 b Fa(:)k(:)13 b(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(52)150
+3181 y Fe(rl_possible_completions)14 b Fa(:)k(:)13 b(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28
-b Fb(53)150 3225 y Fe(rl_prep_terminal)15 b Fa(:)h(:)e(:)f(:)g(:)g(:)g
+b Fb(55)150 3269 y Fe(rl_prep_terminal)15 b Fa(:)h(:)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(:)29 b Fb(41)150 3312 y Fe(rl_push_macro_input)7
+g(:)h(:)f(:)g(:)g(:)29 b Fb(43)150 3358 y Fe(rl_push_macro_input)7
b Fa(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(40)150
-3399 y Fe(rl_read_init_file)12 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(41)150
+3446 y Fe(rl_read_init_file)12 b Fa(:)17 b(:)c(:)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(:)26 b Fb(36)150 3486 y Fe(rl_read_key)10 b Fa(:)16
+g(:)h(:)26 b Fb(38)150 3535 y Fe(rl_read_key)10 b Fa(:)16
b(:)d(:)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(:)25
-b Fb(40)150 3573 y Fe(rl_redisplay)8 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)
+b Fb(42)150 3623 y Fe(rl_redisplay)8 b Fa(:)16 b(:)d(:)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(:)22 b Fb(38)150
-3661 y Fe(rl_replace_line)17 b Fa(:)g(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(40)150
+3712 y Fe(rl_replace_line)17 b Fa(:)g(:)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(:)32 b Fb(42)150 3748 y Fe(rl_reset_after_signal)24
+g(:)g(:)g(:)32 b Fb(43)150 3801 y Fe(rl_reset_after_signal)24
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(:)33 b Fb(50)150 3835 y Fe
+(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(52)150 3889 y Fe
(rl_reset_line_state)7 b Fa(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21
-b Fb(39)150 3922 y Fe(rl_reset_screen_size)26 b Fa(:)13
+b Fb(40)150 3978 y Fe(rl_reset_screen_size)26 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(:)36 b Fb(51)150 4009 y Fe(rl_reset_terminal)12
+(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(53)150 4066 y Fe(rl_reset_terminal)12
b Fa(:)17 b(:)c(:)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(:)26 b Fb(41)150
-4097 y Fe(rl_resize_terminal)10 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(43)150
+4155 y Fe(rl_resize_terminal)10 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)24 b Fb(51)150 4184 y Fe(rl_restore_prompt)12 b Fa(:)17
+g(:)24 b Fb(53)150 4243 y Fe(rl_restore_prompt)12 b Fa(:)17
b(:)c(:)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(:)26 b Fb(39)150
-4271 y Fe(rl_restore_state)15 b Fa(:)h(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(41)150
+4332 y Fe(rl_restore_state)15 b Fa(:)h(:)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(:)29 b Fb(42)150 4358 y Fe(rl_save_prompt)23 b
+g(:)g(:)29 b Fb(43)150 4420 y Fe(rl_save_prompt)23 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(:)h(:)f(:)g(:)g(:)34
-b Fb(39)150 4445 y Fe(rl_save_state)25 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+b Fb(41)150 4509 y Fe(rl_save_state)25 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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(41)150 4533 y
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(43)150 4597 y
Fe(rl_set_key)13 b Fa(:)i(:)e(:)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(:)27 b Fb(36)150 4620 y Fe
+g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(37)150 4686 y Fe
(rl_set_keyboard_input_timeout)17 b Fa(:)h(:)c(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(41)150 4707 y Fe(rl_set_keymap)25
+(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(42)150 4774 y Fe(rl_set_keymap)25
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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
-b Fb(34)150 4794 y Fe(rl_set_keymap_name)10 b Fa(:)17
+b Fb(35)150 4863 y Fe(rl_set_keymap_name)10 b Fa(:)17
b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(34)150 4881
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(36)150 4951
y Fe(rl_set_paren_blink_timeout)7 b Fa(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(43)150
-4969 y Fe(rl_set_prompt)k Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(45)150
+5040 y Fe(rl_set_prompt)k 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(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)37 b Fb(40)150 5056 y Fe(rl_set_screen_size)10
+g(:)g(:)g(:)g(:)37 b Fb(41)150 5128 y Fe(rl_set_screen_size)10
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(51)150
-5143 y Fe(rl_set_signals)f 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(:)h
-(:)f(:)g(:)g(:)34 b Fb(51)2025 260 y Fe(rl_show_char)8
-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(:)
-22 b Fb(39)2025 348 y Fe(rl_stuff_char)j 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(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(40)2025 436 y
-Fe(rl_tty_set_default_bindings)27 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(41)2025 524
-y Fe(rl_tty_set_echoing)10 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(:)
-24 b Fb(41)2025 613 y Fe(rl_tty_unset_default_bindings)16
-b Fa(:)j(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)30
-b Fb(41)2025 701 y Fe(rl_unbind_command_in_map)11 b Fa(:)19
-b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)26 b Fb(36)2025 789 y Fe(rl_unbind_function_in_map)9
-b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)23 b Fb(35)2025 877 y Fe(rl_unbind_key)i 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(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fb(35)2025 965 y Fe(rl_unbind_key_in_map)26 b Fa(:)13
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(53)2025
+260 y Fe(rl_set_signals)f 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(:)h(:)f(:)34 b Fb(53)2025 349 y Fe(rl_set_timeout)23
+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(:)h(:)f(:)34
+b Fb(42)2025 438 y Fe(rl_show_char)8 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(:)22 b Fb(40)2025
+527 y Fe(rl_stuff_char)j 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(:)g(:)h(:)
+f(:)g(:)g(:)g(:)37 b Fb(42)2025 615 y Fe(rl_timeout_remaining)26
+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(:)36 b Fb(42)2025 704 y
+Fe(rl_trim_arg_from_keyseq)14 b Fa(:)k(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)28
+b Fb(38)2025 793 y Fe(rl_tty_set_default_bindings)f Fa(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
+b Fb(43)2025 882 y Fe(rl_tty_set_echoing)10 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(:)24 b Fb(43)2025 971
+y Fe(rl_tty_unset_default_bindings)16 b Fa(:)j(:)13 b(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)30 b Fb(43)2025 1060 y
+Fe(rl_unbind_command_in_map)11 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26
+b Fb(37)2025 1149 y Fe(rl_unbind_function_in_map)9 b
+Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)23 b Fb(37)2025 1238 y Fe(rl_unbind_key)i
+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(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(37)2025 1326 y Fe(rl_unbind_key_in_map)26 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(:)36 b Fb(35)2025 1053 y Fe
+(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(37)2025 1415 y Fe
(rl_username_completion_functio)q(n)11 b Fa(:)19 b(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(53)2025
-1142 y Fe(rl_variable_bind)15 b Fa(:)h(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(55)2025
+1504 y Fe(rl_variable_bind)15 b Fa(:)h(:)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(:)29 b Fb(43)2025 1230 y Fe(rl_variable_dumper)10
+h(:)f(:)29 b Fb(45)2025 1593 y Fe(rl_variable_dumper)10
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(:)24 b Fb(43)2025
-1317 y Fe(rl_variable_value)12 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(45)2025
+1680 y Fe(rl_variable_value)12 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(:)27 b Fb(43)2021 1573 y Fr(S)2025 1692 y Fe(self-insert)h(\(a,)e
+g(:)g(:)27 b Fb(45)2021 1951 y Fr(S)2025 2072 y Fe(self-insert)h(\(a,)e
(b,)g(A,)g(1,)g(!,)g(...)q(\))15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)29 b Fb(19)2025 1780 y Fe(set-mark)e(\(C-@\))10
+(:)g(:)g(:)h(:)f(:)29 b Fb(20)2025 2161 y Fe(set-mark)e(\(C-@\))10
b Fa(:)k(:)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(:)h(:)f(:)g(:)g(:)24
-b Fb(23)2025 1868 y Fe(shell-transpose-words)30 b(\(M-C-t\))24
+b Fb(24)2025 2250 y Fe(shell-transpose-words)30 b(\(M-C-t\))24
b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
-b Fb(20)2025 1957 y(sho)n(w-all-if-am)n(biguous)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(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(9)2025
-2045 y(sho)n(w-all-if-unmo)r(di\014ed)11 b Fa(:)j(:)f(:)g(:)g(:)h(:)f
+b Fb(21)2025 2339 y(sho)n(w-all-if-am)n(biguous)18 b
+Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(10)2025 2428
+y(sho)n(w-all-if-unmo)r(di\014ed)9 b Fa(:)14 b(:)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(:)27 b Fb(9)2025 2133 y(sho)n(w-mo)r(de-in-prompt)15
-b Fa(:)d(:)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(:)30 b Fb(9)2025
-2221 y(skip-completed-text)17 b Fa(:)11 b(:)j(:)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(:)32 b Fb(9)2025 2309 y Fe(skip-csi-sequence)d(\(\))11
+g(:)24 b Fb(10)2025 2517 y(sho)n(w-mo)r(de-in-prompt)12
+b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)27 b Fb(10)2025 2606
+y(skip-completed-text)15 b Fa(:)c(:)i(:)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(:)
+29 b Fb(10)2025 2695 y Fe(skip-csi-sequence)g(\(\))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(:)26 b Fb(23)2025 2397
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(24)2025 2782
y Fe(start-kbd-macro)j(\(C-x)d(\(\))10 b Fa(:)k(:)f(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25
-b Fb(22)2021 2652 y Fr(T)2025 2771 y Fe(tab-insert)j(\(M-TAB\))16
+b Fb(23)2021 3052 y Fr(T)2025 3173 y Fe(tab-insert)j(\(M-TAB\))16
b Fa(:)f(:)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(:)31 b Fb(19)2025
-2859 y Fe(tilde-expand)d(\(M-~\))16 b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)31 b Fb(20)2025
+3262 y Fe(tilde-expand)d(\(M-~\))16 b Fa(:)f(:)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(:)31 b Fb(23)2025 2947 y Fe(transpose-chars)e(\(C-t\))9
+(:)g(:)31 b Fb(24)2025 3351 y Fe(transpose-chars)e(\(C-t\))9
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)23 b Fb(19)2025 3034 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)23 b Fb(20)2025 3438 y
Fe(transpose-words)29 b(\(M-t\))9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)23
-b Fb(19)2021 3300 y Fr(U)2025 3419 y Fe(undo)j(\(C-_)h(or)f(C-x)g
+b Fb(20)2021 3718 y Fr(U)2025 3839 y Fe(undo)j(\(C-_)h(or)f(C-x)g
(C-u\))12 b Fa(:)i(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)27 b Fb(23)2025
-3507 y Fe(universal-argument)i(\(\))9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)27 b Fb(24)2025
+3928 y Fe(universal-argument)i(\(\))9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-23 b Fb(21)2025 3595 y Fe(unix-filename-rubout)30 b(\(\))21
+23 b Fb(22)2025 4017 y Fe(unix-filename-rubout)30 b(\(\))21
b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)35 b Fb(20)2025 3683 y Fe(unix-line-discard)29
+(:)g(:)g(:)h(:)f(:)35 b Fb(21)2025 4106 y Fe(unix-line-discard)29
b(\(C-u\))22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(20)2025 3771
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(21)2025 4195
y Fe(unix-word-rubout)29 b(\(C-w\))6 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(:)21
-b Fb(20)2025 3859 y Fe(upcase-word)28 b(\(M-u\))20 b
+b Fb(21)2025 4282 y Fe(upcase-word)28 b(\(M-u\))20 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(:)34 b Fb(19)2021
-4124 y Fr(V)2025 4243 y Fb(vi-cmd-mo)r(de-string)18 b
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(20)2021
+4562 y Fr(V)2025 4683 y Fb(vi-cmd-mo)r(de-string)18 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(:)g(:)h(:)33 b Fb(10)2025
-4331 y Fe(vi-editing-mode)c(\(M-C-j\))22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)
+4772 y Fe(vi-editing-mode)c(\(M-C-j\))22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
-b Fb(24)2025 4419 y(vi-ins-mo)r(de-string)8 b Fa(:)13
+b Fb(25)2025 4861 y(vi-ins-mo)r(de-string)8 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(:)23 b Fb(10)2025
-4506 y(visible-stats)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(11)2025
+4948 y(visible-stats)11 b Fa(:)j(:)f(:)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(:)26 b Fb(10)2021 4760 y
-Fr(Y)2025 4879 y Fe(yank)g(\(C-y\))21 b Fa(:)13 b(:)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(:)f(:)34 b
-Fb(21)2025 4968 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))10
-b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)24 b Fb(18)2025 5056 y Fe(yank-nth-arg)k(\(M-C-y\))11
-b Fa(:)k(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(18)2025 5143
-y Fe(yank-pop)h(\(M-y\))10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(11)p eop end
+%%Page: 81 85
+TeXDict begin 81 84 bop 150 -116 a Ft(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(81)146 294 y
+Fr(Y)150 410 y Fe(yank)27 b(\(C-y\))20 b Fa(:)13 b(:)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(:)24 b Fb(21)p eop end
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b
+Fb(22)150 497 y Fe(yank-last-arg)29 b(\(M-.)d(or)g(M-_\))10
+b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)24 b Fb(19)150 584 y Fe(yank-nth-arg)k(\(M-C-y\))11
+b Fa(:)k(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(19)150 671 y
+Fe(yank-pop)h(\(M-y\))10 b Fa(:)k(:)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(:)24 b Fb(22)p eop end
%%Trailer
userdict /end-hook known{end-hook}if
diff --git a/doc/readline_3.ps b/doc/readline_3.ps
index 0870adc..842b4e0 100644
--- a/doc/readline_3.ps
+++ b/doc/readline_3.ps
@@ -1,6 +1,6 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.22.4
-%%CreationDate: Fri Oct 30 10:07:47 2020
+%%CreationDate: Fri Apr 8 15:52:34 2022
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
@@ -344,8 +344,8 @@ 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 8.1)72 768 Q(2020 October 29)125.685 E(1)195.395 E 0
-Cg EP
+-.18 E(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(1)198.45 E 0 Cg
+EP
%%Page: 2 2
%%BeginPageSetup
BP
@@ -441,7 +441,7 @@ 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 8.1)72 768 Q(2020 October 29)125.685 E(2)195.395 E 0 Cg EP
+(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(2)198.45 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
@@ -480,1225 +480,1286 @@ E 5.043(.A)-.55 G -.25(va)-2.5 G .043(riable may be set in the).25 F F2
(ll other v)-5.468 F .468(alues are equi)-.25 F -.25(va)-.25 G .468
(lent to).25 F F1(Off)2.968 E F0 5.468(.T)C .467(he v)-5.468 F .467
(ariables and their def)-.25 F(ault)-.1 E -.25(va)108 247.2 S(lues are:)
-.25 E F1(bell\255style \(audible\))108 264 Q F0 .01
-(Controls what happens when readline w)144 276 R .011
+.25 E F1(acti)108 264 Q -.1(ve)-.1 G<ad72>.1 E(egion\255start\255color)
+-.18 E F0 2.729(As)144 276 S .229(tring v)-2.729 F .229
+(ariable that controls the te)-.25 F .229
+(xt color and background when displaying the te)-.15 F .23
+(xt in the acti)-.15 F -.15(ve)-.25 G(re)144 288 Q 1.527
+(gion \(see the description of)-.15 F F1(enable\255acti)4.026 E -.1(ve)
+-.1 G<ad72>.1 E(egion)-.18 E F0(belo)4.026 E 4.026(w\). This)-.25 F
+1.526(string must not tak)4.026 F 4.026(eu)-.1 G 4.026(pa)-4.026 G -.15
+(ny)-4.026 G(ph)144 300 Q .283
+(ysical character positions on the display)-.05 F 2.783(,s)-.65 G 2.784
+(oi)-2.783 G 2.784(ts)-2.784 G .284
+(hould consist only of terminal escape sequences.)-2.784 F .45
+(It is output to the terminal before displaying the te)144 312 R .45
+(xt in the acti)-.15 F .75 -.15(ve r)-.25 H -.15(eg).15 G 2.95
+(ion. This).15 F -.25(va)2.95 G .45(riable is reset to).25 F .378
+(the def)144 324 R .378(ault v)-.1 F .378(alue whene)-.25 F -.15(ve)-.25
+G 2.878(rt).15 G .379(he terminal type changes.)-2.878 F .379(The def)
+5.379 F .379(ault v)-.1 F .379(alue is the string that puts the)-.25 F
+.655(terminal in standout mode, as obtained from the terminal')144 336 R
+3.154(st)-.55 G .654(erminfo description.)-3.154 F 3.154(As)5.654 G .654
+(ample v)-3.154 F(alue)-.25 E(might be)144 348 Q/F3 10/Courier@0 SF
+("\\e[01;33m")2.5 E F0(.)A F1(acti)108 360 Q -.1(ve)-.1 G<ad72>.1 E
+(egion\255end\255color)-.18 E F0 3.908(As)144 372 S 1.408(tring v)-3.908
+F 1.408(ariable that "undoes" the ef)-.25 F 1.408(fects of)-.25 F F1
+(acti)3.908 E -.1(ve)-.1 G<ad72>.1 E(egion\255start\255color)-.18 E F0
+1.409(and restores "normal")3.908 F .216
+(terminal display appearance after displaying te)144 384 R .216
+(xt in the acti)-.15 F .516 -.15(ve r)-.25 H -.15(eg).15 G 2.716
+(ion. This).15 F .216(string must not tak)2.716 F 2.716(eu)-.1 G(p)
+-2.716 E(an)144 396 Q 3.737(yp)-.15 G -.05(hy)-3.737 G 1.237
+(sical character positions on the display).05 F 3.737(,s)-.65 G 3.737
+(oi)-3.737 G 3.737(ts)-3.737 G 1.238
+(hould consist only of terminal escape se-)-3.737 F 2.928(quences. It)
+144 408 R .428(is output to the terminal after displaying the te)2.928 F
+.427(xt in the acti)-.15 F .727 -.15(ve r)-.25 H -.15(eg).15 G 2.927
+(ion. This).15 F -.25(va)2.927 G .427(riable is).25 F .518
+(reset to the def)144 420 R .518(ault v)-.1 F .518(alue whene)-.25 F
+-.15(ve)-.25 G 3.018(rt).15 G .518(he terminal type changes.)-3.018 F
+.518(The def)5.518 F .518(ault v)-.1 F .518(alue is the string that)-.25
+F .252(restores the terminal from standout mode, as obtained from the t\
+erminal')144 432 R 2.751(st)-.55 G .251(erminfo description.)-2.751 F(A)
+5.251 E(sample v)144 444 Q(alue might be)-.25 E F3("\\e[0m)2.5 E F0(".)A
+F1(bell\255style \(audible\))108 456 Q F0 .01
+(Controls what happens when readline w)144 468 R .011
(ants to ring the terminal bell.)-.1 F .011(If set to)5.011 F F1(none)
2.511 E F0 2.511(,r)C .011(eadline ne)-2.511 F -.15(ve)-.25 G(r).15 E
-.94(rings the bell.)144 288 R .94(If set to)5.94 F F1(visible)3.44 E F0
+.94(rings the bell.)144 480 R .94(If set to)5.94 F F1(visible)3.44 E F0
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 .333
-(If set to)144 324 R F1(On)2.833 E F0 .334(\(the def)2.833 F .334
+(readline attempts to ring the terminal')144 492 Q 2.5(sb)-.55 G(ell.)
+-2.5 E F1(bind\255tty\255special\255chars \(On\))108 504 Q F0 .333
+(If set to)144 516 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)
+(treated specially by the)7.834 F -.1(ke)144 528 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
+(blink\255matching\255par)108 540 Q(en \(Off\))-.18 E F0 .21(If set to)
+144 552 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
+(parenthesis is inserted.)144 564 Q F1(color)108 576 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\
+144 588 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)
+(completions using a dif)144 600 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
+(en from the v)-.1 F 2.935(alue of the)-.25 F F1(LS_COLORS)144 612 Q F0
+(en)3.076 E .577(vironment v)-.4 F 3.077(ariable. If)-.25 F .577
+(there is a color de\214nition in)3.077 F F1($LS_COLORS)3.077 E F0 .577
+(for the cus-)3.077 F .135(tom suf)144 624 R .135(\214x "readline-color\
+ed-completion-pre\214x", readline uses this color for the common pre\
+\214x in-)-.25 F(stead of its def)144 636 Q(ault.)-.1 E F1(color)108 648
+Q(ed\255stats \(Off\))-.18 E F0 1.579(If set to)144 660 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
+(type. The)144 672 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
+(ariable.)-.25 E F1(comment\255begin \(`)108 684 Q(`#')-.63 E('\))-.63 E
+F0 .062(The string that is inserted in)144 696 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 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 \(\2551\))108 504 Q F0 1.453(The number\
- of screen columns used to display possible matches when performing com\
-pletion.)144 516 R .194(The v)144 528 R .193(alue is ignored if it is l\
-ess than 0 or greater than the terminal screen width.)-.25 F 2.693(Av)
+E(mand is bound to)144 708 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(GNU Readline 8.2)72 768 Q
+(2022 March 11)128.74 E(3)198.45 E 0 Cg EP
+%%Page: 4 4
+%%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
+(completion\255display\255width \(\2551\))108 84 Q F0 1.453(The number \
+of screen columns used to display possible matches when performing comp\
+letion.)144 96 R .194(The v)144 108 R .193(alue is ignored if it is les\
+s 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 \2551.)-.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
+(cause matches to be displayed one per line.)144 120 Q(The def)5 E
+(ault v)-.1 E(alue is \2551.)-.25 E F1(completion\255ignor)108 132 Q
+(e\255case \(Off\))-.18 E F0(If set to)144 144 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 576 Q F0 .093(If set to)144 588 R
+(completion\255map\255case \(Off\))108 156 Q F0 .093(If set to)144 168 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 .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 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 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 660 Q F0 .53
-(This determines when the user is queried about vie)144 672 R .529
+(yphens \()-.05 F/F2 10/Times-Italic@0 SF<ad>A F0 2.593(\)a)C .094
+(nd underscores)-2.593 F(\()144 180 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 192 Q(e\214x\255display\255length \(0\))-.18 E F0
+.829(The length in characters of the common pre\214x of a list of possi\
+ble completions that is displayed)144 204 R 1.274
+(without modi\214cation.)144 216 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 228 S(lue are replaced with an \
+ellipsis when displaying possible completions.).25 E F1
+(completion\255query\255items \(100\))108 240 Q F0 .53
+(This determines when the user is queried about vie)144 252 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
+144 264 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
+-.15 F .561(alue greater than or)-.25 F .783(equal to zero.)144 276 R
.783(If the number of possible completions is greater than or equal to \
-the v)5.783 F .782(alue of this)-.25 F -.25(va)144 708 S .367
+the v)5.783 F .782(alue of this)-.25 F -.25(va)144 288 S .367
(riable, readline will ask whether or not the user wishes to vie).25 F
2.868(wt)-.25 G .368(hem; otherwise the)-2.868 F 2.868(ya)-.15 G .368
-(re simply)-2.868 F(listed on the terminal.)144 720 Q 2.5(An)5 G -2.25
+(re simply)-2.868 F(listed on the terminal.)144 300 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
-(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(3)195.395 E 0 Cg EP
-%%Page: 4 4
-%%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
-(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 .503(meta pr)
-144 120 R(e\214x)-.37 E F0 3.003(\). The)B(def)3.003 E .503(ault is)-.1
-F F2(On)3.003 E F0 3.003(,b)C .503(ut readline will set it to)-3.203 F
-F2(Of)3.003 E(f)-.18 E F0 .502(if the locale contains eight-bit char)
-3.003 F(-)-.2 E(acters.)144 132 Q F1(disable\255completion \(Off\))108
-144 Q F0 .038(If set to)144 156 R F1(On)2.538 E F0 2.538(,r)C .038
+F1(con)108 312 Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .613(If set to)
+144 324 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 ei\
+ghth bit and pre\214xing it with an escape character \(in ef)144 336 R
+1.316(fect, using escape as the)-.25 F F2 .503(meta pr)144 348 R(e\214x)
+-.37 E F0 3.003(\). The)B(def)3.003 E .503(ault is)-.1 F F2(On)3.003 E
+F0 3.003(,b)C .503(ut readline will set it to)-3.203 F F2(Of)3.003 E(f)
+-.18 E F0 .502(if the locale contains eight-bit char)3.003 F(-)-.2 E
+(acters.)144 360 Q F1(disable\255completion \(Off\))108 372 Q F0 .038
+(If set to)144 384 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 168 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
-(.)A F1(echo\255contr)108 180 Q(ol\255characters \(On\))-.18 E F0 1.211
-(When set to)144 192 R F1(On)3.711 E F0 3.711(,o)C 3.711(no)-3.711 G
+144 396 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
+(.)A F1(echo\255contr)108 408 Q(ol\255characters \(On\))-.18 E F0 1.211
+(When set to)144 420 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 204 Q -.15(ey)-.1 G
-(board.).15 E F1(editing\255mode \(emacs\))108 216 Q F0 .141
-(Controls whether readline be)144 228 R .141(gins with a set of k)-.15 F
+(corresponding to a signal generated from the k)144 432 Q -.15(ey)-.1 G
+(board.).15 E F1(editing\255mode \(emacs\))108 444 Q F0 .141
+(Controls whether readline be)144 456 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 240 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E
-F0(.)A F1(emacs\255mode\255string \(@\))108 252 Q F0 .518(If the)144 264
+(can be set to either)144 468 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E
+F0(.)A F1(emacs\255mode\255string \(@\))108 480 Q F0 .518(If the)144 492
R F2(show\255mode\255in\255pr)3.018 E(ompt)-.45 E F0 -.25(va)3.018 G
.517(riable is enabled, this string is displayed immediately before the)
.25 F .622
-(last line of the primary prompt when emacs editing mode is acti)144 276
+(last line of the primary prompt when emacs editing mode is acti)144 504
R -.15(ve)-.25 G 5.622(.T).15 G .622(he v)-5.622 F .622(alue is e)-.25 F
-.622(xpanded lik)-.15 F 3.122(ea)-.1 G -.1(ke)144 288 S 3.34(yb)-.05 G
+.622(xpanded lik)-.15 F 3.122(ea)-.1 G -.1(ke)144 516 S 3.34(yb)-.05 G
.839(inding, so the standard set of meta- and control pre\214x)-3.34 F
-.839(es and backslash escape sequences is)-.15 F -.2(av)144 300 S 2.798
+.839(es and backslash escape sequences is)-.15 F -.2(av)144 528 S 2.798
(ailable. Use)-.05 F .298(the \\1 and \\2 escapes to be)2.798 F .298
(gin and end sequences of non-printing characters, which)-.15 F
(can be used to embed a terminal control sequence into the mode string.)
-144 312 Q F1(enable\255brack)108 324 Q(eted\255paste \(On\))-.1 E F0
-1.222(When set to)144 336 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 348 R(uf)-.2 E .353(fer as a single strin\
-g of characters, instead of treating each character as if)-.25 F .544
-(it had been read from the k)144 360 R -.15(ey)-.1 G 3.043(board. This)
-.15 F .543(can pre)3.043 F -.15(ve)-.25 G .543
-(nt pasted characters from being interpreted as).15 F(editing commands.)
-144 372 Q F1(enable\255k)108 384 Q(eypad \(Off\))-.1 E F0 .892
-(When set to)144 396 R F1(On)3.393 E F0 3.393(,r)C .893
+144 540 Q F1(enable\255acti)108 552 Q -.1(ve)-.1 G<ad72>.1 E
+(egion \(On\))-.18 E F0(The)144 564 Q F2(point)3.246 E F0 .746
+(is the current cursor position, and)3.246 F F2(mark)3.246 E F0 .746
+(refers to a sa)3.246 F -.15(ve)-.2 G 3.246(dc).15 G .746
+(ursor position.)-3.246 F .745(The te)5.746 F .745(xt be-)-.15 F .344
+(tween the point and mark is referred to as the)144 576 R F2 -.37(re)
+2.844 G(gion)-.03 E F0 5.344(.W)C .344(hen this v)-5.344 F .344
+(ariable is set to)-.25 F F2(On)2.845 E F0 2.845(,r)C .345(eadline al-)
+-2.845 F(lo)144 588 Q .098(ws certain commands to designate the re)-.25
+F .098(gion as)-.15 F F2(active)2.598 E F0 5.098(.W)C .098(hen the re)
+-5.098 F .098(gion is acti)-.15 F -.15(ve)-.25 G 2.598(,r).15 G .098
+(eadline high-)-2.598 F .97(lights the te)144 600 R .97(xt in the re)
+-.15 F .971(gion using the v)-.15 F .971(alue of the)-.25 F F1(acti)
+3.471 E -.1(ve)-.1 G<ad72>.1 E(egion\255start\255color)-.18 E F0 3.471
+(,w)C .971(hich def)-3.471 F .971(aults to)-.1 F .485
+(the string that enables the terminal')144 612 R 2.985(ss)-.55 G .485
+(tandout mode.)-2.985 F .485(The acti)5.485 F .785 -.15(ve r)-.25 H -.15
+(eg).15 G .484(ion sho).15 F .484(ws the te)-.25 F .484(xt inserted by)
+-.15 F(brack)144 624 Q(eted-paste and an)-.1 E 2.5(ym)-.15 G(atching te)
+-2.5 E(xt found by incremental and non-incremental history searches.)
+-.15 E F1(enable\255brack)108 636 Q(eted\255paste \(On\))-.1 E F0 .84
+(When set to)144 648 R F1(On)3.34 E F0 3.34(,r)C .841(eadline con\214gu\
+res the terminal to insert each paste into the editing b)-3.34 F(uf)-.2
+E .841(fer as a)-.25 F .799(single string of characters, instead of tre\
+ating each character as if it had been read from the k)144 660 R -.15
+(ey)-.1 G(-).15 E 3.158(board. This)144 672 R(pre)3.158 E -.15(ve)-.25 G
+.658(nts readline from e).15 F -.15(xe)-.15 G .658(cuting an).15 F 3.158
+(ye)-.15 G .659(diting commands bound to k)-3.158 F .959 -.15(ey s)-.1 H
+.659(equences ap-).15 F(pearing in the pasted te)144 684 Q(xt.)-.15 E F1
+(enable\255k)108 696 Q(eypad \(Off\))-.1 E F0 .893(When set to)144 708 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 .893(Some sys-)5.893 F
-(tems need this to enable the arro)144 408 Q 2.5(wk)-.25 G -.15(ey)-2.6
-G(s.).15 E F1(enable\255meta\255k)108 420 Q(ey \(On\))-.1 E F0 .64
-(When set to)144 432 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 444 Q
+.893(pad when it is called.).15 F .892(Some sys-)5.893 F
+(tems need this to enable the arro)144 720 Q 2.5(wk)-.25 G -.15(ey)-2.6
+G(s.).15 E(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(4)198.45 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/F1 10/Times-Bold@0 SF
+(enable\255meta\255k)108 84 Q(ey \(On\))-.1 E F0 .64(When set to)144 96
+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 108 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 456 Q F0(If set to)144 468 Q F1(On)2.5 E F0
+(expand\255tilde \(Off\))108 120 Q F0(If set to)144 132 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 480 Q(eser)-.18 E -.1
-(ve)-.1 G(\255point \(Off\)).1 E F0 .552(If set to)144 492 R F1(On)3.052
+-.15 E(ord completion.)-.1 E F1(history\255pr)108 144 Q(eser)-.18 E -.1
+(ve)-.1 G(\255point \(Off\)).1 E F0 .553(If set to)144 156 R F1(On)3.052
E F0 3.052(,t)C .552(he history code attempts to place point at the sam\
-e location on each history line re-)-3.052 F(trie)144 504 Q -.15(ve)-.25
+e location on each history line re-)-3.052 F(trie)144 168 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 \(unset\))
-108 516 Q F0 .949(Set the maximum number of history entries sa)144 528 R
+108 180 Q F0 .948(Set the maximum number of history entries sa)144 192 R
-.15(ve)-.2 G 3.448(di).15 G 3.448(nt)-3.448 G .948(he history list.)
--3.448 F .948(If set to zero, an)5.948 F 3.448(ye)-.15 G(xisting)-3.598
-E .482(history entries are deleted and no ne)144 540 R 2.982(we)-.25 G
-.483(ntries are sa)-2.982 F -.15(ve)-.2 G 2.983(d. If).15 F .483
-(set to a v)2.983 F .483(alue less than zero, the num-)-.25 F .356
-(ber of history entries is not limited.)144 552 R .356(By def)5.356 F
-.355(ault, the number of history entries is not limited.)-.1 F .355
-(If an)5.355 F .82(attempt is made to set)144 564 R F2(history\255size)
-3.32 E F0 .821(to a non-numeric v)3.321 F .821
-(alue, the maximum number of history en-)-.25 F
-(tries will be set to 500.)144 576 Q F1(horizontal\255scr)108 588 Q
-(oll\255mode \(Off\))-.18 E F0 .449(When set to)144 600 R F1(On)2.949 E
-F0 2.949(,m)C(ak)-2.949 E .448
-(es readline use a single line for display)-.1 F 2.948(,s)-.65 G .448
+-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 204 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 .355
+(ber of history entries is not limited.)144 216 R .355(By def)5.355 F
+.356(ault, the number of history entries is not limited.)-.1 F .356
+(If an)5.356 F .821(attempt is made to set)144 228 R/F2 10
+/Times-Italic@0 SF(history\255size)3.321 E F0 .821(to a non-numeric v)
+3.321 F .82(alue, the maximum number of history en-)-.25 F
+(tries will be set to 500.)144 240 Q F1(horizontal\255scr)108 252 Q
+(oll\255mode \(Off\))-.18 E F0 .448(When set to)144 264 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 612 R(w)-.25 E 2.5(line. This)144 624 R
+ ne)144 276 R(w)-.25 E 2.5(line. This)144 288 R
(setting is automatically enabled for terminals of height 1.)2.5 E F1
-(input\255meta \(Off\))108 636 Q F0 .367(If set to)144 648 R F1(On)2.867
+(input\255meta \(Off\))108 300 Q F0 .367(If set to)144 312 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 .956
-(acters it reads\), re)144 660 R -.05(ga)-.15 G .956
-(rdless of what the terminal claims it can support.).05 F .957(The name)
-5.956 F F1(meta\255\215ag)3.457 E F0 .957(is a)3.457 F(synon)144 672 Q
+will not clear the eighth bit in the char)-2.867 F(-)-.2 E .957
+(acters it reads\), re)144 324 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 336 Q
.77(ym for this v)-.15 F 3.27(ariable. The)-.25 F(def)3.27 E .77
(ault is)-.1 F F2(Of)3.27 E(f)-.18 E F0 3.27(,b)C .77
(ut readline will set it to)-3.47 F F2(On)3.27 E F0 .77
-(if the locale contains)3.27 F(eight-bit characters.)144 684 Q F1(isear)
-108 696 Q(ch\255terminators \(`)-.18 E(`C\255[ C\255J')-.63 E('\))-.63 E
+(if the locale contains)3.27 F(eight-bit characters.)144 348 Q F1(isear)
+108 360 Q(ch\255terminators \(`)-.18 E(`C\255[ C\255J')-.63 E('\))-.63 E
F0 .439(The string of characters that should terminate an incremental s\
-earch without subsequently e)144 708 R -.15(xe)-.15 G(cut-).15 E .935
-(ing the character as a command.)144 720 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(GNU Readline 8.1)72 768
-Q(2020 October 29)125.685 E(4)195.395 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(and)144 84 Q/F1 10
-/Times-Italic@0 SF(C\255J)2.5 E F0
-(will terminate an incremental search.)2.5 E/F2 10/Times-Bold@0 SF -.1
-(ke)108 96 S(ymap \(emacs\)).1 E F0 2.323(Set the current readline k)144
-108 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 F1
-2.324(emacs, emacs-standar)4.823 F(d,)-.37 E .782
-(emacs-meta, emacs-ctlx, vi, vi-mo)144 120 R(ve)-.1 E 3.282(,v)-.1 G
-(i-command)-3.282 E F0 3.282(,a)C(nd)-3.282 E F1(vi-insert)3.572 E F0(.)
-.68 E F1(vi)5.782 E F0 .782(is equi)3.282 F -.25(va)-.25 G .781(lent to)
-.25 F F1(vi-command)3.281 E F0(;)A F1(emacs)144 132 Q F0 .682(is equi)
-3.182 F -.25(va)-.25 G .682(lent to).25 F F1(emacs-standar)3.182 E(d)
+earch without subsequently e)144 372 R -.15(xe)-.15 G(cut-).15 E .934
+(ing the character as a command.)144 384 R .935(If this v)5.935 F .935
+(ariable has not been gi)-.25 F -.15(ve)-.25 G 3.435(nav).15 G .935
+(alue, the characters)-3.685 F F2(ESC)3.435 E F0(and)144 396 Q F2
+(C\255J)2.5 E F0(will terminate an incremental search.)2.5 E F1 -.1(ke)
+108 408 S(ymap \(emacs\)).1 E F0 2.323(Set the current readline k)144
+420 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.323(emacs, emacs-standar)4.823 F(d,)-.37 E .781
+(emacs-meta, emacs-ctlx, vi, vi-mo)144 432 R(ve)-.1 E 3.282(,v)-.1 G
+(i-command)-3.282 E F0 3.282(,a)C(nd)-3.282 E F2(vi-insert)3.572 E F0(.)
+.68 E F2(vi)5.782 E F0 .782(is equi)3.282 F -.25(va)-.25 G .782(lent to)
+.25 F F2(vi-command)3.282 E F0(;)A F2(emacs)144 444 Q F0 .683(is equi)
+3.183 F -.25(va)-.25 G .683(lent to).25 F F2(emacs-standar)3.183 E(d)
-.37 E F0 5.682(.T)C .682(he def)-5.682 F .682(ault v)-.1 F .682
-(alue is)-.25 F F1(emacs)3.372 E F0 5.683(.T).27 G .683(he v)-5.683 F
-.683(alue of)-.25 F F2(editing\255mode)3.183 E F0(also af)144 144 Q
-(fects the def)-.25 E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F2 -.1(ke)
-108 156 S(yseq\255timeout \(500\)).1 E F0 .368(Speci\214es the duration)
-144 168 R F1 -.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 .524(\(one that can form a complete k)144 180 R .824
+(alue is)-.25 F F2(emacs)3.372 E F0 5.682(.T).27 G .682(he v)-5.682 F
+.682(alue of)-.25 F F1(editing\255mode)3.182 E F0(also af)144 456 Q
+(fects the def)-.25 E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1 -.1(ke)
+108 468 S(yseq\255timeout \(500\)).1 E F0 .367(Speci\214es the duration)
+144 480 R F2 -.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 .668 -.15(ey s)
+-.1 H(equence).15 E .525(\(one that can form a complete k)144 492 R .825
-.15(ey s)-.1 H .524(equence using the input read so f).15 F(ar)-.1 E
-3.025(,o)-.4 G 3.025(rc)-3.025 G .525(an tak)-3.025 F 3.025(ea)-.1 G
-.525(dditional in-)-3.025 F .807(put to complete a longer k)144 192 R
+3.024(,o)-.4 G 3.024(rc)-3.024 G .524(an tak)-3.024 F 3.024(ea)-.1 G
+.524(dditional in-)-3.024 F .806(put to complete a longer k)144 504 R
1.106 -.15(ey s)-.1 H 3.306(equence\). If).15 F .806(no input is recei)
-3.306 F -.15(ve)-.25 G 3.306(dw).15 G .806(ithin the timeout,)-3.306 F
-F1 -.37(re)3.306 G(adline).37 E F0(will)3.306 E .906(use the shorter b)
-144 204 R .907(ut complete k)-.2 F 1.207 -.15(ey s)-.1 H 3.407
+3.306 F -.15(ve)-.25 G 3.306(dw).15 G .807(ithin the timeout,)-3.306 F
+F2 -.37(re)3.307 G(adline).37 E F0(will)3.307 E .907(use the shorter b)
+144 516 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 216 R F1 -.37(re)2.55 G(adline).37 E F0 .05
+(lue is speci\214ed in milliseconds, so a v).25 F .906(alue of)-.25 F
+.05(1000 means that)144 528 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 228 R(alue,)-.25
-E F1 -.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 240 Q .3 -.15(ey s)-.1 H
-(equence to complete.).15 E F2(mark\255dir)108 252 Q(ectories \(On\))
--.18 E F0(If set to)144 264 Q F2(On)2.5 E F0 2.5(,c)C
+(less than or equal to zero, or to a non-numeric v)144 540 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 .351 -.15(ey i)-.1 H 2.551(sp).15 G(ressed)
+-2.551 E(to decide which k)144 552 Q .3 -.15(ey s)-.1 H
+(equence to complete.).15 E F1(mark\255dir)108 564 Q(ectories \(On\))
+-.18 E F0(If set to)144 576 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 F2(mark\255modi\214ed\255lines \(Off\))108 276 Q F0(If set to)144
-288 Q F2(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 F2
-(*)A F0(\).)A F2(mark\255symlink)108 300 Q(ed\255dir)-.1 E
-(ectories \(Off\))-.18 E F0 .175(If set to)144 312 R F2(On)2.675 E F0
+.15 E F1(mark\255modi\214ed\255lines \(Off\))108 588 Q F0(If set to)144
+600 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 612 Q(ed\255dir)-.1 E
+(ectories \(Off\))-.18 E F0 .175(If set to)144 624 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 324
-Q(alue of)-.25 E F2(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A F2
-(match\255hidden\255\214les \(On\))108 336 Q F0 .192(This v)144 348 R
-.192(ariable, when set to)-.25 F F2(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 360 R .456
-(If set to)5.456 F F2(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 372 Q F2
-(menu\255complete\255display\255pr)108 384 Q(e\214x \(Off\))-.18 E F0
-1.585(If set to)144 396 R F2(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
+-.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 636
+Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A F1
+(match\255hidden\255\214les \(On\))108 648 Q F0 .193(This v)144 660 R
+.193(ariable, when set to)-.25 F F1(On)2.693 E F0 2.693(,c)C .192
+(auses readline to match \214les whose names be)-2.693 F .192
+(gin with a `.)-.15 F 2.692('\()-.7 G(hidden)-2.692 E .456
+(\214les\) when performing \214lename completion.)144 672 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 .457(ust be supplied by the)-2.956 F
+(user in the \214lename to be completed.)144 684 Q F1
+(menu\255complete\255display\255pr)108 696 Q(e\214x \(Off\))-.18 E F0
+1.586(If set to)144 708 R F1(On)4.086 E F0 4.086(,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 408 Q
-(ycling through the list.)-.15 E F2(output\255meta \(Off\))108 420 Q F0
-.507(If set to)144 432 R F2(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 444 Q .884(ed escape sequence.)-.15 F .884
-(The def)5.884 F .884(ault is)-.1 F F1(Of)3.384 E(f)-.18 E F0 3.384(,b)C
-.884(ut readline will set it to)-3.584 F F1(On)3.384 E F0 .885
-(if the locale contains)3.384 F(eight-bit characters.)144 456 Q F2
-(page\255completions \(On\))108 468 Q F0 .809(If set to)144 480 R F2(On)
-3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F F1(mor)
+-4.086 F(\(which may be empty\) before c)144 720 Q
+(ycling through the list.)-.15 E(GNU Readline 8.2)72 768 Q
+(2022 March 11)128.74 E(5)198.45 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
+(output\255meta \(Off\))108 84 Q F0 .506(If set to)144 96 R F1(On)3.006
+E F0 3.006(,r)C .507(eadline will display characters with the eighth bi\
+t set directly rather than as a meta-)-3.006 F(pre\214x)144 108 Q .885
+(ed escape sequence.)-.15 F .884(The def)5.884 F .884(ault is)-.1 F/F2
+10/Times-Italic@0 SF(Of)3.384 E(f)-.18 E F0 3.384(,b)C .884
+(ut readline will set it to)-3.584 F F2(On)3.384 E F0 .884
+(if the locale contains)3.384 F(eight-bit characters.)144 120 Q F1
+(page\255completions \(On\))108 132 Q F0 .808(If set to)144 144 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 492 Q F2
-(print\255completions\255horizontally \(Off\))108 504 Q F0 .227
-(If set to)144 516 R F2(On)2.727 E F0 2.727(,r)C .227(eadline will disp\
+(tions at a time.)144 156 Q F1
+(print\255completions\255horizontally \(Off\))108 168 Q F0 .228
+(If set to)144 180 R F1(On)2.727 E F0 2.727(,r)C .227(eadline will disp\
lay completions with matches sorted horizontally in alphabetical or)
--2.727 F(-)-.2 E(der)144 528 Q 2.5(,r)-.4 G(ather than do)-2.5 E
-(wn the screen.)-.25 E F2 -2.29 -.18(re v)108 540 T
-(ert\255all\255at\255newline \(Off\)).08 E F0 .699(If set to)144 552 R
-F2(On)3.199 E F0 3.199(,r)C .699
+-2.727 F(-)-.2 E(der)144 192 Q 2.5(,r)-.4 G(ather than do)-2.5 E
+(wn the screen.)-.25 E F1 -2.29 -.18(re v)108 204 T
+(ert\255all\255at\255newline \(Off\)).08 E F0 .698(If set to)144 216 R
+F1(On)3.198 E F0 3.198(,r)C .699
(eadline will undo all changes to history lines before returning when)
--3.199 F F2(accept\255line)3.198 E F0(is)3.198 E -.15(exe)144 564 S
+-3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 228 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 F2 -.18(re)144 576 S(adline)
-.18 E F0(.)A F2(sho)108 588 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
-F0 .304(This alters the def)144 600 R .304(ault beha)-.1 F .304
-(vior of the completion functions.)-.2 F .304(If set to)5.304 F F2(On)
-2.804 E F0 2.803(,w)C .303(ords which ha)-2.903 F .603 -.15(ve m)-.2 H
+(vidual undo lists across calls to)-.25 F F1 -.18(re)144 240 S(adline)
+.18 E F0(.)A F1(sho)108 252 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
+F0 .303(This alters the def)144 264 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 612 R(bell.)144 624 Q F2
-(sho)108 636 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.346
-(This alters the def)144 648 R 5.346(ault beha)-.1 F 5.345
-(vior of the completion functions in a f)-.2 F 5.345(ashion similar to)
--.1 F F2(sho)144 660 Q(w\255all\255if\255ambiguous)-.1 E F0 6.69(.I)C
-4.19(fs)-6.69 G 1.691(et to)-4.19 F F2(On)4.191 E F0 4.191(,w)C 1.691
+isted immediately instead of ringing the)144 276 R(bell.)144 288 Q F1
+(sho)108 300 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
+(This alters the def)144 312 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 324 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.04(without an)144 672 R 3.54
+(ore than one possible completion).15 F 1.039(without an)144 336 R 3.539
(yp)-.15 G 1.039
-(ossible partial completion \(the possible completions don')-3.54 F
-3.539(ts)-.18 G 1.039(hare a common pre\214x\))-3.539 F(cause the match\
-es to be listed immediately instead of ringing the bell.)144 684 Q F2
-(sho)108 696 Q(w\255mode\255in\255pr)-.1 E(ompt \(Off\))-.18 E F0 1.021
-(If set to)144 708 R F2(On)3.521 E F0 3.521(,a)C 1.022
-(dd a string to the be)-3.521 F 1.022
+(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 348 Q F1
+(sho)108 360 Q(w\255mode\255in\255pr)-.1 E(ompt \(Off\))-.18 E F0 1.022
+(If set to)144 372 R F1(On)3.522 E F0 3.522(,a)C 1.022
+(dd a string to the be)-3.522 F 1.021
(ginning of the prompt indicating the editing mode: emacs, vi)-.15 F
-(command, or vi insertion.)144 720 Q(The mode strings are user)5 E
-(-settable \(e.g.,)-.2 E F1(emacs\255mode\255string)2.5 E F0(\).)A
-(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(5)195.395 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
-(skip\255completed\255text \(Off\))108 84 Q F0 .095(If set to)144 96 R
-F1(On)2.595 E F0 2.595(,t)C .095(his alters the def)-2.595 F .095
-(ault completion beha)-.1 F .094
-(vior when inserting a single match into the line.)-.2 F(It')144 108 Q
-2.545(so)-.55 G .045(nly acti)-2.545 F .345 -.15(ve w)-.25 H .046
-(hen performing completion in the middle of a w).15 F 2.546(ord. If)-.1
-F .046(enabled, readline does not)2.546 F 1.394(insert characters from \
-the completion that match characters after point in the w)144 120 R
-1.394(ord being com-)-.1 F(pleted, so portions of the w)144 132 Q
+(command, or vi insertion.)144 384 Q(The mode strings are user)5 E
+(-settable \(e.g.,)-.2 E F2(emacs\255mode\255string)2.5 E F0(\).)A F1
+(skip\255completed\255text \(Off\))108 396 Q F0 .094(If set to)144 408 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 420 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 432 R
+1.395(ord being com-)-.1 F(pleted, so portions of the w)144 444 Q
(ord follo)-.1 E(wing the cursor are not duplicated.)-.25 E F1
-(vi\255cmd\255mode\255string \(\(cmd\)\))108 144 Q F0 .517(If the)144
-156 R/F2 10/Times-Italic@0 SF(show\255mode\255in\255pr)3.017 E(ompt)-.45
-E F0 -.25(va)3.017 G .518
-(riable is enabled, this string is displayed immediately before the).25
-F .475(last line of the primary prompt when vi editing mode is acti)144
-168 R .775 -.15(ve a)-.25 H .475(nd in command mode.).15 F .475(The v)
-5.475 F(alue)-.25 E .33(is e)144 180 R .33(xpanded lik)-.15 F 2.83(eak)
--.1 G .63 -.15(ey b)-2.93 H .33
+(vi\255cmd\255mode\255string \(\(cmd\)\))108 456 Q F0 .518(If the)144
+468 R F2(show\255mode\255in\255pr)3.018 E(ompt)-.45 E F0 -.25(va)3.018 G
+.517(riable is enabled, this string is displayed immediately before the)
+.25 F .475(last line of the primary prompt when vi editing mode is acti)
+144 480 R .775 -.15(ve a)-.25 H .476(nd in command mode.).15 F .476
+(The v)5.476 F(alue)-.25 E .33(is e)144 492 R .33(xpanded lik)-.15 F
+2.83(eak)-.1 G .63 -.15(ey b)-2.93 H .33
(inding, so the standard set of meta- and control pre\214x).15 F .33
-(es and backslash es-)-.15 F .245(cape sequences is a)144 192 R -.25(va)
--.2 G 2.745(ilable. Use).25 F .244(the \\1 and \\2 escapes to be)2.745 F
-.244(gin and end sequences of non-printing)-.15 F(characters, which can\
+(es and backslash es-)-.15 F .244(cape sequences is a)144 504 R -.25(va)
+-.2 G 2.744(ilable. Use).25 F .244(the \\1 and \\2 escapes to be)2.744 F
+.245(gin and end sequences of non-printing)-.15 F(characters, which can\
be used to embed a terminal control sequence into the mode string.)144
-204 Q F1(vi\255ins\255mode\255string \(\(ins\)\))108 216 Q F0 .517
-(If the)144 228 R F2(show\255mode\255in\255pr)3.017 E(ompt)-.45 E F0
--.25(va)3.017 G .518
+516 Q F1(vi\255ins\255mode\255string \(\(ins\)\))108 528 Q F0 .518
+(If the)144 540 R F2(show\255mode\255in\255pr)3.018 E(ompt)-.45 E F0
+-.25(va)3.018 G .517
(riable is enabled, this string is displayed immediately before the).25
F .186(last line of the primary prompt when vi editing mode is acti)144
-240 R .486 -.15(ve a)-.25 H .186(nd in insertion mode.).15 F .186(The v)
-5.186 F .186(alue is)-.25 F -.15(ex)144 252 S .923(panded lik).15 F
-3.423(eak)-.1 G 1.223 -.15(ey b)-3.523 H .924
-(inding, so the standard set of meta- and control pre\214x).15 F .924
-(es and backslash es-)-.15 F .245(cape sequences is a)144 264 R -.25(va)
--.2 G 2.745(ilable. Use).25 F .244(the \\1 and \\2 escapes to be)2.745 F
-.244(gin and end sequences of non-printing)-.15 F(characters, which can\
+552 R .486 -.15(ve a)-.25 H .186(nd in insertion mode.).15 F .187(The v)
+5.186 F .187(alue is)-.25 F -.15(ex)144 564 S .924(panded lik).15 F
+3.424(eak)-.1 G 1.224 -.15(ey b)-3.524 H .924
+(inding, so the standard set of meta- and control pre\214x).15 F .923
+(es and backslash es-)-.15 F .244(cape sequences is a)144 576 R -.25(va)
+-.2 G 2.744(ilable. Use).25 F .244(the \\1 and \\2 escapes to be)2.744 F
+.245(gin and end sequences of non-printing)-.15 F(characters, which can\
be used to embed a terminal control sequence into the mode string.)144
-276 Q F1(visible\255stats \(Off\))108 288 Q F0 .846(If set to)144 300 R
+588 Q F1(visible\255stats \(Off\))108 600 Q F0 .847(If set to)144 612 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 312 Q F1(Conditional Constructs)
-87 328.8 Q F0 .05(Readline implements a f)108 340.8 R .05(acility simil\
+(when listing possible completions.)144 624 Q F1(Conditional Constructs)
+87 640.8 Q F0 .05(Readline implements a f)108 652.8 R .05(acility simil\
ar in spirit to the conditional compilation features of the C preproces\
-sor)-.1 F .096(which allo)108 352.8 R .096(ws k)-.25 F .396 -.15(ey b)
+sor)-.1 F .097(which allo)108 664.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 .097
-(There are four parser)5.096 F(directi)108 364.8 Q -.15(ve)-.25 G 2.5
-(su).15 G(sed.)-2.5 E F1($if)108 381.6 Q F0(The)144 381.6 Q F1($if)2.963
-E F0 .463(construct allo)2.963 F .462(ws bindings to be made based on t\
-he editing mode, the terminal being used,)-.25 F .961
-(or the application using readline.)144 393.6 R .961(The te)5.961 F .961
-(xt of the test, after an)-.15 F 3.462(yc)-.15 G .962
-(omparison operator)-3.462 F 3.462(,e)-.4 G .962(xtends to)-3.612 F(the\
+(ariable settings to be performed as the result of tests.)-.25 F .096
+(There are four parser)5.096 F(directi)108 676.8 Q -.15(ve)-.25 G 2.5
+(su).15 G(sed.)-2.5 E F1($if)108 693.6 Q F0(The)144 693.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 .962
+(or the application using readline.)144 705.6 R .961(The te)5.962 F .961
+(xt of the test, after an)-.15 F 3.461(yc)-.15 G .961
+(omparison operator)-3.461 F 3.461(,e)-.4 G .961(xtends to)-3.611 F(the\
end of the line; unless otherwise noted, no characters are required to\
- isolate it.)144 405.6 Q F1(mode)144 422.4 Q F0(The)180 422.4 Q F1
-(mode=)3.712 E F0 1.212(form of the)3.712 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 434.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 .03(set bindings in the)180 446.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 458.4
-Q F1(term)144 475.2 Q F0(The)180 475.2 Q F1(term=)3.196 E F0 .696
-(form may be used to include terminal-speci\214c k)3.196 F .996 -.15
-(ey b)-.1 H .697(indings, perhaps to bind).15 F .654(the k)180 487.2 R
+ isolate it.)144 717.6 Q(GNU Readline 8.2)72 768 Q(2022 March 11)128.74
+E(6)198.45 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/F1 10/Times-Bold@0 SF
+(mode)144 84 Q F0(The)180 84 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 96 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 108 R/F2 10/Times-Italic@0 SF
+(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 120 Q F1(term)144 136.8 Q F0(The)180 136.8 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 148.8 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(the)180 499.2 Q F1(=)3.003
-E F0 .503(is tested ag)3.003 F .504(ainst the full name of the terminal\
+(wo)3.154 G .654(rd on the right side of).1 F(the)180 160.8 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
-511.2 Q F1<ad>2.5 E F0 5(.T)C(his allo)-5 E(ws)-.25 E F2(sun)2.84 E F0
+172.8 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.84 E
-F0 2.5(,f).77 G(or instance.)-2.5 E F1 -.1(ve)144 528 S(rsion).1 E F0
-(The)180 540 Q F1 -.1(ve)3.109 G(rsion).1 E F0 .608
-(test may be used to perform comparisons ag)3.109 F .608
-(ainst speci\214c readline v)-.05 F(ersions.)-.15 E(The)180 552 Q F1 -.1
-(ve)2.771 G(rsion).1 E F0 -.15(ex)2.771 G .271
-(pands to the current readline v).15 F 2.772(ersion. The)-.15 F .272
-(set of comparison operators in-)2.772 F(cludes)180 564 Q F1(=)3.064 E
-F0 3.064(,\()C(and)-3.064 E F1(==)3.064 E F0(\),)A F1(!=)3.064 E F0(,)A
-F1(<=)3.064 E F0(,)A F1(>=)3.064 E F0(,)A F1(<)3.064 E F0 3.064(,a)C(nd)
--3.064 E F1(>)3.064 E F0 5.563(.T)C .563(he v)-5.563 F .563
+F0 2.5(,f).77 G(or instance.)-2.5 E F1 -.1(ve)144 189.6 S(rsion).1 E F0
+(The)180 201.6 Q F1 -.1(ve)3.108 G(rsion).1 E F0 .608
+(test may be used to perform comparisons ag)3.108 F .609
+(ainst speci\214c readline v)-.05 F(ersions.)-.15 E(The)180 213.6 Q F1
+-.1(ve)2.772 G(rsion).1 E F0 -.15(ex)2.772 G .272
+(pands to the current readline v).15 F 2.771(ersion. The)-.15 F .271
+(set of comparison operators in-)2.771 F(cludes)180 225.6 Q F1(=)3.063 E
+F0 3.063(,\()C(and)-3.063 E F1(==)3.063 E F0(\),)A F1(!=)3.063 E F0(,)A
+F1(<=)3.063 E F0(,)A F1(>=)3.063 E F0(,)A F1(<)3.063 E F0 3.063(,a)C(nd)
+-3.063 E F1(>)3.064 E F0 5.564(.T)C .564(he v)-5.564 F .564
(ersion number supplied on the right side)-.15 F .318
-(of the operator consists of a major v)180 576 R .318(ersion number)-.15
-F 2.818(,a)-.4 G 2.818(no)-2.818 G .318
-(ptional decimal point, and an op-)-2.818 F .101(tional minor v)180 588
-R .101(ersion \(e.g.,)-.15 F F1(7.1)2.601 E F0 .101(\). If the minor v)B
-.1(ersion is omitted, it is assumed to be)-.15 F F1(0)2.6 E F0 5.1(.T)C
-(he)-5.1 E .06(operator may be separated from the string)180 600 R F1
--.1(ve)2.56 G(rsion).1 E F0 .06(and from the v)2.56 F .06
-(ersion number ar)-.15 F(gument)-.18 E(by whitespace.)180 612 Q F1
-(application)144 628.8 Q F0(The)180 640.8 Q F1(application)3.003 E F0
+(of the operator consists of a major v)180 237.6 R .318(ersion number)
+-.15 F 2.818(,a)-.4 G 2.818(no)-2.818 G .318
+(ptional decimal point, and an op-)-2.818 F .1(tional minor v)180 249.6
+R .1(ersion \(e.g.,)-.15 F F1(7.1)2.6 E F0 .1(\). If the minor v)B .101
+(ersion is omitted, it is assumed to be)-.15 F F1(0)2.601 E F0 5.101(.T)
+C(he)-5.101 E .06(operator may be separated from the string)180 261.6 R
+F1 -.1(ve)2.56 G(rsion).1 E F0 .06(and from the v)2.56 F .06
+(ersion number ar)-.15 F(gument)-.18 E(by whitespace.)180 273.6 Q F1
+(application)144 290.4 Q F0(The)180 302.4 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
-652.8 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 .501(particular v)
-180 664.8 R 3.001(alue. This)-.25 F .501(could be used to bind k)3.001 F
-.801 -.15(ey s)-.1 H .5(equences to functions useful for a spe-).15 F
-.396(ci\214c program.)180 676.8 R -.15(Fo)5.396 G 2.896(ri).15 G .396
+314.4 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
+326.4 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 338.4 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 .397(equence that quotes the).15 F(current or pre)180 688.8
-Q(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 712.8 Q F0
-(Bash)2.5 E 2.5(#Q)180 724.8 S(uote the current or pre)-2.5 E(vious w)
--.25 E(ord)-.1 E(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(6)
-195.395 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
-("\\C-xq": "\\eb\\"\\ef\\"")180 84 Q/F1 10/Times-Bold@0 SF($endif)180 96
-Q/F2 10/Times-Italic@0 SF(variable)144 112.8 Q F0(The)180 124.8 Q F2
-(variable)3.777 E F0 1.277(construct pro)3.777 F 1.276
-(vides simple equality tests for readline v)-.15 F 1.276(ariables and v)
--.25 F(alues.)-.25 E .079(The permitted comparison operators are)180
-136.8 R F2(=)2.579 E F0(,)A F2(==)2.579 E F0 2.579(,a)C(nd)-2.579 E F2
-(!=)2.579 E F0 5.079(.T)C .079(he v)-5.079 F .08
+(ey s)-.1 H .396(equence that quotes the).15 F(current or pre)180 350.4
+Q(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 374.4 Q F0
+(Bash)2.5 E 2.5(#Q)180 386.4 S(uote the current or pre)-2.5 E(vious w)
+-.25 E(ord)-.1 E("\\C-xq": "\\eb\\"\\ef\\"")180 398.4 Q F1($endif)180
+410.4 Q F2(variable)144 427.2 Q F0(The)180 439.2 Q F2(variable)3.776 E
+F0 1.276(construct pro)3.776 F 1.276
+(vides simple equality tests for readline v)-.15 F 1.277(ariables and v)
+-.25 F(alues.)-.25 E .08(The permitted comparison operators are)180
+451.2 R F2(=)2.579 E F0(,)A F2(==)2.579 E F0 2.579(,a)C(nd)-2.579 E F2
+(!=)2.579 E F0 5.079(.T)C .079(he v)-5.079 F .079
(ariable name must be sepa-)-.25 F .98(rated from the comparison operat\
-or by whitespace; the operator may be separated from)180 148.8 R .129
-(the v)180 160.8 R .129(alue on the right hand side by whitespace.)-.25
-F .13(Both string and boolean v)5.129 F .13(ariables may be)-.25 F
-(tested. Boolean v)180 172.8 Q(ariables must be tested ag)-.25 E
+or by whitespace; the operator may be separated from)180 463.2 R .13
+(the v)180 475.2 R .13(alue on the right hand side by whitespace.)-.25 F
+.129(Both string and boolean v)5.129 F .129(ariables may be)-.25 F
+(tested. Boolean v)180 487.2 Q(ariables must be tested ag)-.25 E
(ainst the v)-.05 E(alues)-.25 E F2(on)2.5 E F0(and)2.5 E F2(of)2.5 E(f)
--.18 E F0(.)A F1($endif)108 189.6 Q F0(This command, as seen in the pre)
-144 189.6 Q(vious e)-.25 E(xample, terminates an)-.15 E F1($if)2.5 E F0
-(command.)2.5 E F1($else)108 206.4 Q F0(Commands in this branch of the)
-144 206.4 Q F1($if)2.5 E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E
+-.18 E F0(.)A F1($endif)108 504 Q F0(This command, as seen in the pre)
+144 504 Q(vious e)-.25 E(xample, terminates an)-.15 E F1($if)2.5 E F0
+(command.)2.5 E F1($else)108 520.8 Q F0(Commands in this branch of the)
+144 520.8 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
-223.2 Q F0 .357(This directi)144 235.2 R .657 -.15(ve t)-.25 H(ak).15 E
-.357(es a single \214lename as an ar)-.1 F .356
+537.6 Q F0 .356(This directi)144 549.6 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 247.2 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
+144 561.6 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 271.2 Q F2(/etc/inputr)5.833 E(c)-.37 E/F3 10.95
-/Times-Bold@0 SF(SEARCHING)72 288 Q F0 1.003(Readline pro)108 300 R
+($include)144 585.6 Q F2(/etc/inputr)5.833 E(c)-.37 E/F3 10.95
+/Times-Bold@0 SF(SEARCHING)72 602.4 Q F0 1.004(Readline pro)108 614.4 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 312 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.86 E(emental)-.37 E F0(.).51 E .698
-(Incremental searches be)108 328.8 R .698
+s containing a speci\214ed)-.15 F 2.5(string. There)108 626.4 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.86 E(emental)-.37 E F0(.).51 E .697
+(Incremental searches be)108 643.2 R .697
(gin before the user has \214nished typing the search string.)-.15 F
-.697(As each character of the)5.697 F .112
-(search string is typed, readline displays the ne)108 340.8 R .112
+.698(As each character of the)5.698 F .113
+(search string is typed, readline displays the ne)108 655.2 R .112
(xt entry from the history matching the string typed so f)-.15 F(ar)-.1
-E 5.113(.A)-.55 G(n)-5.113 E .545
-(incremental search requires only as man)108 352.8 R 3.045(yc)-.15 G
-.544(haracters as needed to \214nd the desired history entry)-3.045 F
-5.544(.T)-.65 G 3.044(os)-6.344 G(earch)-3.044 E(backw)108 364.8 Q .18
+E 5.112(.A)-.55 G(n)-5.112 E .544
+(incremental search requires only as man)108 667.2 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 679.2 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.681 E F0 .181(searches forw)
-2.681 F .181(ard through the history)-.1 F(.)-.65 E .354
-(The characters present in the v)108 376.8 R .354(alue of the)-.25 F F1
+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 691.2 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
-388.8 R .6(If that v)5.6 F .6(ariable has not been assigned a v)-.25 F
+703.2 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 .123(incremental search.)108 400.8 R
-F1(C\255G)5.123 E F0 .123
-(will abort an incremental search and restore the original line.)2.623 F
-.122(When the search is)5.122 F(terminated, the history entry containin\
-g the search string becomes the current line.)108 412.8 Q 2.406 -.8
-(To \214)108 429.6 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
-.807(This will search back-)5.806 F -.1(wa)108 441.6 S .536(rd or forw)
-.1 F .536(ard in the history for the ne)-.1 F .535
-(xt line matching the search string typed so f)-.15 F(ar)-.1 E 5.535(.A)
--.55 G .835 -.15(ny o)-5.535 H .535(ther k).15 F .835 -.15(ey s)-.1 H
-(e-).15 E .384
+(characters will terminate an)3.1 F .122(incremental search.)108 715.2 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 727.2 Q
+(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(7)198.45 E 0 Cg EP
+%%Page: 8 8
+%%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.407 -.8(To \214)108 84
+T .806(nd other matching entries in the history list, type).8 F/F1 10
+/Times-Bold@0 SF(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
+96 S .535(rd or forw).1 F .535(ard in the history for the ne)-.1 F .536
+(xt line matching the search string typed so f)-.15 F(ar)-.1 E 5.536(.A)
+-.55 G .836 -.15(ny o)-5.536 H .536(ther k).15 F .836 -.15(ey s)-.1 H
+(e-).15 E .385
(quence bound to a readline command will terminate the search and e)108
-453.6 R -.15(xe)-.15 G .385(cute that command.).15 F -.15(Fo)5.385 G
-2.885(ri).15 G .385(nstance, a)-2.885 F(ne)108 465.6 Q .338
+108 R -.15(xe)-.15 G .384(cute that command.).15 F -.15(Fo)5.384 G 2.884
+(ri).15 G .384(nstance, a)-2.884 F(ne)108 120 Q .337
(wline will terminate the search and accept the line, thereby e)-.25 F
--.15(xe)-.15 G .337(cuting the command from the history list.).15 F
-2.997(Am)108 477.6 S -.15(ove)-2.997 G .497
+-.15(xe)-.15 G .338(cuting the command from the history list.).15 F
+2.998(Am)108 132 S -.15(ove)-2.998 G .497
(ment command will terminate the search, mak).15 F 2.997(et)-.1 G .497
-(he last line found the current line, and be)-2.997 F .498(gin edit-)
--.15 F(ing.)108 489.6 Q .567(Non-incremental searches read the entire s\
-earch string before starting to search for matching history lines.)108
-506.4 R(The search string may be typed by the user or be part of the co\
-ntents of the current line.)108 518.4 Q F3(EDITING COMMANDS)72 535.2 Q
-F0 1.391(The follo)108 547.2 R 1.391
+(he last line found the current line, and be)-2.997 F .497(gin edit-)
+-.15 F(ing.)108 144 Q .567(Non-incremental searches read the entire sea\
+rch string before starting to search for matching history lines.)108
+160.8 R(The search string may be typed by the user or be part of the co\
+ntents of the current line.)108 172.8 Q/F2 10.95/Times-Bold@0 SF
+(EDITING COMMANDS)72 189.6 Q F0 1.392(The follo)108 201.6 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.892(ya)-.15 G(re)-3.892 E 2.5(bound. Command)108 559.2 R
+3.891(ya)-.15 G(re)-3.891 E 2.5(bound. Command)108 213.6 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 .055(In the follo)108 576
-R .055(wing descriptions,)-.25 F F2(point)2.555 E F0 .055
-(refers to the current cursor position, and)2.555 F F2(mark)2.555 E F0
-.054(refers to a cursor position)2.554 F(sa)108 588 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 604.8 Q(or Mo)-.25 E(ving)-.1
-E(beginning\255of\255line \(C\255a\))108 616.8 Q F0(Mo)144 628.8 Q .3
+(equence are unbound by def).15 E(ault.)-.1 E .054(In the follo)108
+230.4 R .054(wing descriptions,)-.25 F/F3 10/Times-Italic@0 SF(point)
+2.554 E F0 .055(refers to the current cursor position, and)2.554 F F3
+(mark)2.555 E F0 .055(refers to a cursor position)2.555 F(sa)108 242.4 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 F3 -.37(re)
+2.5 G(gion)-.03 E F0(.)A F1(Commands f)87 259.2 Q(or Mo)-.25 E(ving)-.1
+E(beginning\255of\255line \(C\255a\))108 271.2 Q F0(Mo)144 283.2 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 640.8 Q F0(Mo)144 652.8 Q .3 -.15
+(end\255of\255line \(C\255e\))108 295.2 Q F0(Mo)144 307.2 Q .3 -.15
(ve t)-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E F1 -.25(fo)108
-664.8 S(rward\255char \(C\255f\)).25 E F0(Mo)144 676.8 Q .3 -.15(ve f)
+319.2 S(rward\255char \(C\255f\)).25 E F0(Mo)144 331.2 Q .3 -.15(ve f)
-.15 H(orw).15 E(ard a character)-.1 E(.)-.55 E F1
-(backward\255char \(C\255b\))108 688.8 Q F0(Mo)144 700.8 Q .3 -.15(ve b)
--.15 H(ack a character).15 E(.)-.55 E(GNU Readline 8.1)72 768 Q
-(2020 October 29)125.685 E(7)195.395 E 0 Cg EP
-%%Page: 8 8
-%%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
--.25(fo)108 84 S(rward\255w).25 E(ord \(M\255f\))-.1 E F0(Mo)144 96 Q
-.822 -.15(ve f)-.15 H(orw).15 E .522(ard to the end of the ne)-.1 F .523
-(xt w)-.15 F 3.023(ord. W)-.1 F .523
-(ords are composed of alphanumeric characters \(let-)-.8 F
-(ters and digits\).)144 108 Q F1(backward\255w)108 120 Q(ord \(M\255b\))
--.1 E F0(Mo)144 132 Q 1.71 -.15(ve b)-.15 H 1.41
+(backward\255char \(C\255b\))108 343.2 Q F0(Mo)144 355.2 Q .3 -.15(ve b)
+-.15 H(ack a character).15 E(.)-.55 E F1 -.25(fo)108 367.2 S(rward\255w)
+.25 E(ord \(M\255f\))-.1 E F0(Mo)144 379.2 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 391.2 Q F1(backward\255w)108 403.2 Q
+(ord \(M\255b\))-.1 E F0(Mo)144 415.2 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 144 Q F1(pr)108 156 Q -.15(ev)
--.18 G(ious\255scr).15 E(een\255line)-.18 E F0 .89(Attempt to mo)144 168
-R 1.19 -.15(ve p)-.15 H .89(oint to the same ph).15 F .891
-(ysical screen column on the pre)-.05 F .891(vious ph)-.25 F .891
-(ysical screen line.)-.05 F .87(This will not ha)144 180 R 1.17 -.15
+(characters \(letters and digits\).)144 427.2 Q F1(pr)108 439.2 Q -.15
+(ev)-.18 G(ious\255scr).15 E(een\255line)-.18 E F0 .891(Attempt to mo)
+144 451.2 R 1.191 -.15(ve p)-.15 H .891(oint to the same ph).15 F .891
+(ysical screen column on the pre)-.05 F .89(vious ph)-.25 F .89
+(ysical screen line.)-.05 F .87(This will not ha)144 463.2 R 1.17 -.15
(ve t)-.2 H .87(he desired ef).15 F .87
(fect if the current Readline line does not tak)-.25 F 3.37(eu)-.1 G
-3.37(pm)-3.37 G .87(ore than one)-3.37 F(ph)144 192 Q(ysical line or if\
- point is not greater than the length of the prompt plus the screen wid\
-th.)-.05 E F1(next\255scr)108 204 Q(een\255line)-.18 E F0 .637
-(Attempt to mo)144 216 R .937 -.15(ve p)-.15 H .637(oint to the same ph)
-.15 F .638(ysical screen column on the ne)-.05 F .638(xt ph)-.15 F .638
-(ysical screen line. This)-.05 F .009(will not ha)144 228 R .309 -.15
-(ve t)-.2 H .009(he desired ef).15 F .009
+3.37(pm)-3.37 G .87(ore than one)-3.37 F(ph)144 475.2 Q(ysical line or \
+if point is not greater than the length of the prompt plus the screen w\
+idth.)-.05 E F1(next\255scr)108 487.2 Q(een\255line)-.18 E F0 .638
+(Attempt to mo)144 499.2 R .938 -.15(ve p)-.15 H .638
+(oint to the same ph).15 F .637(ysical screen column on the ne)-.05 F
+.637(xt ph)-.15 F .637(ysical screen line. This)-.05 F .008(will not ha)
+144 511.2 R .309 -.15(ve t)-.2 H .009(he desired ef).15 F .009
(fect if the current Readline line does not tak)-.25 F 2.509(eu)-.1 G
-2.509(pm)-2.509 G .008(ore than one ph)-2.509 F(ysical)-.05 E .772(line\
+2.509(pm)-2.509 G .009(ore than one ph)-2.509 F(ysical)-.05 E .772(line\
or if the length of the current Readline line is not greater than the \
-length of the prompt plus)144 240 R(the screen width.)144 252 Q F1
-(clear\255display \(M\255C\255l\))108 264 Q F0 1.499
-(Clear the screen and, if possible, the terminal')144 276 R 3.999(ss)
--.55 G 1.498(crollback b)-3.999 F(uf)-.2 E(fer)-.25 E 3.998(,t)-.4 G
-1.498(hen redra)-3.998 F 3.998(wt)-.15 G 1.498(he current line,)-3.998 F
-(lea)144 288 Q(ving the current line at the top of the screen.)-.2 E F1
-(clear\255scr)108 300 Q(een \(C\255l\))-.18 E F0 1.36
-(Clear the screen, then redra)144 312 R 3.86(wt)-.15 G 1.36
+length of the prompt plus)144 523.2 R(the screen width.)144 535.2 Q F1
+(clear\255display \(M\255C\255l\))108 547.2 Q F0 1.498
+(Clear the screen and, if possible, the terminal')144 559.2 R 3.999(ss)
+-.55 G 1.499(crollback b)-3.999 F(uf)-.2 E(fer)-.25 E 3.999(,t)-.4 G
+1.499(hen redra)-3.999 F 3.999(wt)-.15 G 1.499(he current line,)-3.999 F
+(lea)144 571.2 Q(ving the current line at the top of the screen.)-.2 E
+F1(clear\255scr)108 583.2 Q(een \(C\255l\))-.18 E F0 1.36
+(Clear the screen, then redra)144 595.2 R 3.86(wt)-.15 G 1.36
(he current line, lea)-3.86 F 1.36
-(ving the current line at the top of the screen.)-.2 F -.4(Wi)144 324 S
-(th an ar).4 E
+(ving the current line at the top of the screen.)-.2 F -.4(Wi)144 607.2
+S(th an ar).4 E
(gument, refresh the current line without clearing the screen.)-.18 E F1
--.18(re)108 336 S(draw\255curr).18 E(ent\255line)-.18 E F0
-(Refresh the current line.)144 348 Q F1(Commands f)87 364.8 Q
+-.18(re)108 619.2 S(draw\255curr).18 E(ent\255line)-.18 E F0
+(Refresh the current line.)144 631.2 Q F1(Commands f)87 648 Q
(or Manipulating the History)-.25 E(accept\255line \(Newline, Retur)108
-376.8 Q(n\))-.15 E F0 .365(Accept the line re)144 388.8 R -.05(ga)-.15 G
+660 Q(n\))-.15 E F0 .364(Accept the line re)144 672 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
-.364(ay be added to the)-2.864 F .74
-(history list for future recall with)144 400.8 R F1(add_history\(\))3.24
-E F0 5.741(.I)C 3.241(ft)-5.741 G .741
+.365(ay be added to the)-2.864 F .741
+(history list for future recall with)144 684 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 412.8 Q F1(pr)108 424.8 Q
--.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0(Fetch the pre)144
-436.8 Q(vious command from the history list, mo)-.25 E
-(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 448.8 Q
-F0(Fetch the ne)144 460.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 472.8 Q F0(Mo)144 484.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 496.8 Q F0(Mo)144 508.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 520.8 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0
-1.471(Search backw)144 532.8 R 1.471
-(ard starting at the current line and mo)-.1 F 1.47
-(ving `up' through the history as necessary)-.15 F(.)-.65 E
-(This is an incremental search.)144 544.8 Q F1 -.25(fo)108 556.8 S
-(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.131
-(Search forw)144 568.8 R 1.131(ard starting at the current line and mo)
--.1 F 1.132(ving `do)-.15 F 1.132(wn' through the history as necessary)
--.25 F(.)-.65 E(This is an incremental search.)144 580.8 Q F1
-(non\255incr)108 592.8 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H
-(rse\255sear).15 E(ch\255history \(M\255p\))-.18 E F0 .165(Search backw)
-144 604.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 616.8 S
-(tring supplied by the user)-2.5 E(.)-.55 E F1(non\255incr)108 628.8 Q
-(emental\255f)-.18 E(orward\255sear)-.25 E(ch\255history \(M\255n\))-.18
-E F0 1.353(Search forw)144 640.8 R 1.354(ard through the history using \
-a non-incremental search for a string supplied by the)-.1 F(user)144
-652.8 Q(.)-.55 E F1(history\255sear)108 664.8 Q(ch\255backward)-.18 E F0
-.951(Search backw)144 676.8 R .951(ard through the history for the stri\
-ng of characters between the start of the current)-.1 F .12
-(line and the current cursor position \(the)144 688.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 700.8 Q(This is a non-incremental search.)5 E
-(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(8)195.395 E 0 Cg EP
+(line is restored to its original state.)144 696 Q(GNU Readline 8.2)72
+768 Q(2022 March 11)128.74 E(8)198.45 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
-(history\255sear)108 84 Q(ch\255f)-.18 E(orward)-.25 E F0 .249
-(Search forw)144 96 R .249(ard through the history for the string of ch\
-aracters between the start of the current line)-.1 F .035
-(and the point.)144 108 R .035(The search string must match at the be)
+(pr)108 84 Q -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0
+(Fetch the pre)144 96 Q(vious command from the history list, mo)-.25 E
+(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 108 Q
+F0(Fetch the ne)144 120 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 132 Q F0(Mo)144 144 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 156 Q F0(Mo)144 168 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
+(operate\255and\255get\255next \(C\255o\))108 180 Q F0 .733(Accept the \
+current line for return to the calling application as if a ne)144 192 R
+.733(wline had been entered, and)-.25 F .368(fetch the ne)144 204 R .367
+(xt line relati)-.15 F .667 -.15(ve t)-.25 H 2.867(ot).15 G .367
+(he current line from the history for editing.)-2.867 F 2.867(An)5.367 G
+.367(umeric ar)-2.867 F .367(gument, if)-.18 F(supplied, speci\214es th\
+e history entry to use instead of the current line.)144 216 Q F1
+(fetch\255history)108 228 Q F0 -.4(Wi)144 240 S .256(th a numeric ar).4
+F .256(gument, fetch that entry from the history list and mak)-.18 F
+2.757(ei)-.1 G 2.757(tt)-2.757 G .257(he current line.)-2.757 F -.4(Wi)
+5.257 G(th-).4 E(out an ar)144 252 Q(gument, mo)-.18 E .3 -.15(ve b)-.15
+H(ack to the \214rst entry in the history list.).15 E F1 -2.29 -.18
+(re v)108 264 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0
+1.471(Search backw)144 276 R 1.471
+(ard starting at the current line and mo)-.1 F 1.47
+(ving `up' through the history as necessary)-.15 F(.)-.65 E
+(This is an incremental search.)144 288 Q F1 -.25(fo)108 300 S
+(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.131
+(Search forw)144 312 R 1.131(ard starting at the current line and mo)-.1
+F 1.132(ving `do)-.15 F 1.132(wn' through the history as necessary)-.25
+F(.)-.65 E(This is an incremental search.)144 324 Q F1(non\255incr)108
+336 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H(rse\255sear).15 E
+(ch\255history \(M\255p\))-.18 E F0 .165(Search backw)144 348 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 360 S(tring supplied by the user)-2.5 E
+(.)-.55 E F1(non\255incr)108 372 Q(emental\255f)-.18 E(orward\255sear)
+-.25 E(ch\255history \(M\255n\))-.18 E F0 1.353(Search forw)144 384 R
+1.354(ard through the history using a non-incremental search for a stri\
+ng supplied by the)-.1 F(user)144 396 Q(.)-.55 E F1(history\255sear)108
+408 Q(ch\255backward)-.18 E F0 .951(Search backw)144 420 R .951(ard thr\
+ough the history for the string of characters between the start of the \
+current)-.1 F .12(line and the current cursor position \(the)144 432 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 444 Q(This is a non-incremental search.)5 E F1
+(history\255sear)108 456 Q(ch\255f)-.18 E(orward)-.25 E F0 .249
+(Search forw)144 468 R .249(ard through the history for the string of c\
+haracters between the start of the current line)-.1 F .035
+(and the point.)144 480 R .035(The search string must match at the be)
5.035 F .036(ginning of a history line.)-.15 F .036
-(This is a non-incre-)5.036 F(mental search.)144 120 Q F1
-(history\255substring\255sear)108 132 Q(ch\255backward)-.18 E F0 .951
-(Search backw)144 144 R .951(ard through the history for the string of \
+(This is a non-incre-)5.036 F(mental search.)144 492 Q F1
+(history\255substring\255sear)108 504 Q(ch\255backward)-.18 E F0 .951
+(Search backw)144 516 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 156 R/F2 10
-/Times-Italic@0 SF(point)2.507 E F0 2.507(\). The)B .007
-(search string may match an)2.507 F .007(ywhere in a history)-.15 F 2.5
-(line. This)144 168 R(is a non-incremental search.)2.5 E F1
-(history\255substring\255sear)108 180 Q(ch\255f)-.18 E(orward)-.25 E F0
-.249(Search forw)144 192 R .249(ard through the history for the string \
-of characters between the start of the current line)-.1 F .318
-(and the point.)144 204 R .319(The search string may match an)5.318 F
-.319(ywhere in a history line.)-.15 F .319(This is a non-incremental)
-5.319 F(search.)144 216 Q F1(yank\255nth\255ar)108 228 Q 2.5(g\()-.1 G
-<4dad43ad7929>-2.5 E F0 .622(Insert the \214rst ar)144 240 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 .772(at point.)144
-252 R -.4(Wi)5.773 G .773(th an ar).4 F(gument)-.18 E F2(n)3.633 E F0
-3.273(,i).24 G .773(nsert the)-3.273 F F2(n)3.273 E F0 .773(th w)B .773
-(ord from the pre)-.1 F .773(vious command \(the w)-.25 F .773
-(ords in the)-.1 F(pre)144 264 Q .292(vious command be)-.25 F .292
-(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 .291
-(ord from the end of)-.1 F .281(the pre)144 276 R .281(vious command.)
--.25 F .281(Once the ar)5.281 F(gument)-.18 E F2(n)2.781 E F0 .281
-(is computed, the ar)2.781 F .281(gument is e)-.18 F .282
-(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 288 Q
-(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 300 Q
+(line and the current cursor position \(the)144 528 R F2(point)2.507 E
+F0 2.507(\). The)B .007(search string may match an)2.507 F .007
+(ywhere in a history)-.15 F 2.5(line. This)144 540 R
+(is a non-incremental search.)2.5 E F1(history\255substring\255sear)108
+552 Q(ch\255f)-.18 E(orward)-.25 E F0 .249(Search forw)144 564 R .249(a\
+rd through the history for the string of characters between the start o\
+f the current line)-.1 F .318(and the point.)144 576 R .319
+(The search string may match an)5.318 F .319(ywhere in a history line.)
+-.15 F .319(This is a non-incremental)5.319 F(search.)144 588 Q F1
+(yank\255nth\255ar)108 600 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622
+(Insert the \214rst ar)144 612 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 .772(at point.)144 624 R -.4(Wi)5.773 G .773
+(th an ar).4 F(gument)-.18 E F2(n)3.633 E F0 3.273(,i).24 G .773
+(nsert the)-3.273 F F2(n)3.273 E F0 .773(th w)B .773(ord from the pre)
+-.1 F .773(vious command \(the w)-.25 F .773(ords in the)-.1 F(pre)144
+636 Q .292(vious command be)-.25 F .292(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 .291(ord from the end of)-.1 F .281(the pre)144 648 R .281
+(vious command.)-.25 F .281(Once the ar)5.281 F(gument)-.18 E F2(n)2.781
+E F0 .281(is computed, the ar)2.781 F .281(gument is e)-.18 F .282
+(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 660 Q
+(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 672 Q
2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.308
-(Insert the last ar)144 312 R 1.308(gument to the pre)-.18 F 1.307
+(Insert the last ar)144 684 R 1.308(gument to the pre)-.18 F 1.307
(vious command \(the last w)-.25 F 1.307(ord of the pre)-.1 F 1.307
-(vious history entry\).)-.25 F -.4(Wi)144 324 S .203(th a numeric ar).4
+(vious history entry\).)-.25 F -.4(Wi)144 696 S .203(th a numeric ar).4
F .203(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.204(.S)C(uccessi)-5.204
E .504 -.15(ve c)-.25 H .204(alls to).15 F F1(yank\255last\255ar)2.704 E
-(g)-.1 E F0(mo)144 336 Q .807 -.15(ve b)-.15 H .507
+(g)-.1 E F0(mo)144 708 Q .807 -.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
-.416(to the \214rst call\) of each line in turn.)144 348 R(An)5.416 E
-2.916(yn)-.15 G .416(umeric ar)-2.916 F .416
-(gument supplied to these successi)-.18 F .716 -.15(ve c)-.25 H .416
-(alls de-).15 F 1.218(termines the direction to mo)144 360 R 1.518 -.15
-(ve t)-.15 H 1.218(hrough the history).15 F 6.218(.A)-.65 G(ne)-2.5 E
--.05(ga)-.15 G(ti).05 E 1.517 -.15(ve a)-.25 H -.18(rg).15 G 1.217
+1.396(to the \214rst call\) of each line in turn.)144 720 R(An)6.396 E
+3.896(yn)-.15 G 1.396(umeric ar)-3.896 F 1.397
+(gument supplied to these successi)-.18 F 1.697 -.15(ve c)-.25 H(alls)
+.15 E(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(9)198.45 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 .492
+(determines the direction to mo)144 84 R .792 -.15(ve t)-.15 H .492
+(hrough the history).15 F 5.491(.A)-.65 G(ne)-2.5 E -.05(ga)-.15 G(ti)
+.05 E .791 -.15(ve a)-.25 H -.18(rg).15 G .491
(ument switches the direction).18 F .494
-(through the history \(back or forw)144 372 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 384 Q
+(through the history \(back or forw)144 96 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 108 Q
(gument, as if the "!$" history e)-.18 E(xpansion had been speci\214ed.)
--.15 E F1(operate\255and\255get\255next \(C\255o\))108 396 Q F0 .733(Ac\
-cept the current line for return to the calling application as if a ne)
-144 408 R .733(wline had been entered, and)-.25 F .367(fetch the ne)144
-420 R .367(xt line relati)-.15 F .667 -.15(ve t)-.25 H 2.867(ot).15 G
-.367(he current line from the history for editing.)-2.867 F 2.867(An)
-5.367 G .367(umeric ar)-2.867 F .368(gument, if)-.18 F(supplied, speci\
-\214es the history entry to use instead of the current line.)144 432 Q
-F1(Commands f)87 448.8 Q(or Changing T)-.25 E(ext)-.92 E F2
-(end\255of\255\214le)108 460.8 Q F1(\(usually C\255d\))2.5 E F0 .799
-(The character indicating end-of-\214le as set, for e)144 472.8 R .799
+-.15 E/F1 10/Times-Bold@0 SF(Commands f)87 124.8 Q(or Changing T)-.25 E
+(ext)-.92 E/F2 10/Times-Italic@0 SF(end\255of\255\214le)108 136.8 Q F1
+(\(usually C\255d\))2.5 E F0 .799
+(The character indicating end-of-\214le as set, for e)144 148.8 R .799
(xample, by)-.15 F/F3 10/Courier@0 SF(stty)3.299 E F0 5.799(.I)C 3.298
(ft)-5.799 G .798(his character is read when)-3.298 F .592
-(there are no characters on the line, and point is at the be)144 484.8 R
+(there are no characters on the line, and point is at the be)144 160.8 R
.593(ginning of the line, Readline interprets it)-.15 F
-(as the end of input and returns)144 496.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 508.8 Q
-F0 .442(Delete the character at point.)144 520.8 R .442
+(as the end of input and returns)144 172.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 184.8 Q
+F0 .442(Delete the character at point.)144 196.8 R .442
(If this function is bound to the same character as the tty)5.442 F F1
-(EOF)2.941 E F0(char)2.941 E(-)-.2 E(acter)144 532.8 Q 2.5(,a)-.4 G(s)
+(EOF)2.941 E F0(char)2.941 E(-)-.2 E(acter)144 208.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 544.8 Q F0 .552(Delete the character behind the cursor)144 556.8 R
+108 220.8 Q F0 .552(Delete the character behind the cursor)144 232.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 .553(gument, sa)-.18 F .853 -.15(ve t)-.2 H .553
-(he deleted te).15 F .553(xt on)-.15 F(the kill ring.)144 568.8 Q F1
--.25(fo)108 580.8 S(rward\255backward\255delete\255char).25 E F0 .474
-(Delete the character under the cursor)144 592.8 R 2.974(,u)-.4 G .474
+(he deleted te).15 F .553(xt on)-.15 F(the kill ring.)144 244.8 Q F1
+-.25(fo)108 256.8 S(rward\255backward\255delete\255char).25 E F0 .474
+(Delete the character under the cursor)144 268.8 R 2.974(,u)-.4 G .474
(nless the cursor is at the end of the line, in which case the)-2.974 F
-(character behind the cursor is deleted.)144 604.8 Q F1
-(quoted\255insert \(C\255q, C\255v\))108 616.8 Q F0 1.228(Add the ne)144
-628.8 R 1.228(xt character that you type to the line v)-.15 F 3.728
+(character behind the cursor is deleted.)144 280.8 Q F1
+(quoted\255insert \(C\255q, C\255v\))108 292.8 Q F0 1.228(Add the ne)144
+304.8 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.729(wt)-.25 G 3.729(oi)
--3.729 G 1.229(nsert characters lik)-3.729 F(e)-.1 E F1(C\255q)144 640.8
+-3.729 G 1.229(nsert characters lik)-3.729 F(e)-.1 E F1(C\255q)144 316.8
Q F0 2.5(,f)C(or e)-2.5 E(xample.)-.15 E F1(tab\255insert \(M-T)108
-652.8 Q(AB\))-.9 E F0(Insert a tab character)144 664.8 Q(.)-.55 E F1
-(self\255insert \(a, b, A, 1, !, ...\))108 676.8 Q F0
-(Insert the character typed.)144 688.8 Q F1
-(transpose\255chars \(C\255t\))108 700.8 Q F0 .322
-(Drag the character before point forw)144 712.8 R .321(ard o)-.1 F -.15
+328.8 Q(AB\))-.9 E F0(Insert a tab character)144 340.8 Q(.)-.55 E F1
+(self\255insert \(a, b, A, 1, !, ...\))108 352.8 Q F0
+(Insert the character typed.)144 364.8 Q F1
+(transpose\255chars \(C\255t\))108 376.8 Q F0 .322
+(Drag the character before point forw)144 388.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 .321
-(ving point forw)-.15 F .321(ard as well.)-.1 F 1.182
+(ving point forw)-.15 F .321(ard as well.)-.1 F .372
(If point is at the end of the line, then this transposes the tw)144
-724.8 R 3.683(oc)-.1 G 1.183(haracters before point.)-3.683 F(Ne)6.183 E
--.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(GNU Readline 8.1)72 768 Q
-(2020 October 29)125.685 E(9)195.395 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(ar)144 84 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 10
-/Times-Bold@0 SF(transpose\255w)108 96 Q(ords \(M\255t\))-.1 E F0 .024
-(Drag the w)144 108 R .024(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.523
-(rt).15 G .023(hat w)-2.523 F .023(ord as well.)-.1 F .023(If point)
-5.023 F(is at the end of the line, this transposes the last tw)144 120 Q
-2.5(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 132 Q
-(ord \(M\255u\))-.1 E F0 1.698(Uppercase the current \(or follo)144 144
-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.999 -.15(ve a)-.25 H -.18(rg).15 G 1.699
-(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 156 S(rd, b).1 E
-(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 168 Q
-(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 180 Q 1.648
+400.8 R 2.872(oc)-.1 G .373(haracters before point.)-2.872 F(Ne)5.373 E
+-.05(ga)-.15 G(ti).05 E .673 -.15(ve a)-.25 H -.2(r-).15 G(guments ha)
+144 412.8 Q .3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
+(transpose\255w)108 424.8 Q(ords \(M\255t\))-.1 E F0 .024(Drag the w)144
+436.8 R .024(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.523(rt).15 G .023(hat w)
+-2.523 F .023(ord as well.)-.1 F .023(If point)5.023 F
+(is at the end of the line, this transposes the last tw)144 448.8 Q 2.5
+(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 460.8 Q
+(ord \(M\255u\))-.1 E F0 1.698(Uppercase the current \(or follo)144
+472.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.999 -.15(ve a)-.25 H -.18(rg).15 G 1.699
+(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 484.8 S(rd, b).1
+E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 496.8 Q
+(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 508.8 Q 1.648
(wercase the current \(or follo)-.25 F 1.648(wing\) w)-.25 F 4.148
(ord. W)-.1 F 1.647(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.947 -.15
(ve a)-.25 H -.18(rg).15 G 1.647(ument, lo).18 F 1.647(wercase the pre)
--.25 F(vious)-.25 E -.1(wo)144 192 S(rd, b).1 E(ut do not mo)-.2 E .3
--.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 204 Q
-(ord \(M\255c\))-.1 E F0 1.974(Capitalize the current \(or follo)144 216
-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.975
-(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 228 S(rd, b).1
-E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108 240
-S(rwrite\255mode).1 E F0 -.8(To)144 252 S .438(ggle o).8 F -.15(ve)-.15
-G .438(rwrite mode.).15 F -.4(Wi)5.438 G .438(th an e).4 F .438
+-.25 F(vious)-.25 E -.1(wo)144 520.8 S(rd, b).1 E(ut do not mo)-.2 E .3
+-.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 532.8 Q
+(ord \(M\255c\))-.1 E F0 1.974(Capitalize the current \(or follo)144
+544.8 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.975
+(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 556.8 S(rd, b)
+.1 E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108
+568.8 S(rwrite\255mode).1 E F0 -.8(To)144 580.8 S .438(ggle o).8 F -.15
+(ve)-.15 G .438(rwrite mode.).15 F -.4(Wi)5.438 G .438(th an e).4 F .438
(xplicit positi)-.15 F .737 -.15(ve n)-.25 H .437(umeric ar).15 F .437
(gument, switches to o)-.18 F -.15(ve)-.15 G .437(rwrite mode.).15 F -.4
-(Wi)144 264 S .78(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 .781(This command af)5.781 F(fects)-.25 E(only)144 276 Q F1
-(emacs)4.395 E F0(mode;)4.395 E F1(vi)4.395 E F0 1.894(mode does o)4.395
-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.394 G
-(adline\(\)).37 E F0 1.894(starts in insert)4.394 F 3.968(mode. In)144
-288 R -.15(ove)3.968 G 1.468(rwrite mode, characters bound to).15 F F1
-(self\255insert)3.969 E F0 1.469(replace the te)3.969 F 1.469
-(xt at point rather than)-.15 F .958(pushing the te)144 300 R .958
-(xt to the right.)-.15 F .957(Characters bound to)5.958 F F1
-(backward\255delete\255char)3.457 E F0 .957(replace the character)3.457
-F(before point with a space.)144 312 Q(By def)5 E
-(ault, this command is unbound.)-.1 E F1(Killing and Y)87 328.8 Q
-(anking)-.85 E(kill\255line \(C\255k\))108 340.8 Q F0(Kill the te)144
-352.8 Q(xt from point to the end of the line.)-.15 E F1
-(backward\255kill\255line \(C\255x Rubout\))108 364.8 Q F0(Kill backw)
-144 376.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
-(unix\255line\255discard \(C\255u\))108 388.8 Q F0(Kill backw)144 400.8
-Q(ard from point to the be)-.1 E(ginning of the line.)-.15 E
+(Wi)144 592.8 S .78(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 .781(This command af)5.781 F
+(fects)-.25 E(only)144 604.8 Q F1(emacs)4.395 E F0(mode;)4.395 E F1(vi)
+4.395 E F0 1.894(mode does o)4.395 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 -.37(re)
+4.394 G(adline\(\)).37 E F0 1.894(starts in insert)4.394 F 3.968
+(mode. In)144 616.8 R -.15(ove)3.968 G 1.468
+(rwrite mode, characters bound to).15 F F1(self\255insert)3.969 E F0
+1.469(replace the te)3.969 F 1.469(xt at point rather than)-.15 F .958
+(pushing the te)144 628.8 R .958(xt to the right.)-.15 F .957
+(Characters bound to)5.958 F F1(backward\255delete\255char)3.457 E F0
+.957(replace the character)3.457 F(before point with a space.)144 640.8
+Q(By def)5 E(ault, this command is unbound.)-.1 E F1(Killing and Y)87
+657.6 Q(anking)-.85 E(kill\255line \(C\255k\))108 669.6 Q F0
+(Kill the te)144 681.6 Q(xt from point to the end of the line.)-.15 E F1
+(backward\255kill\255line \(C\255x Rubout\))108 693.6 Q F0(Kill backw)
+144 705.6 Q(ard to the be)-.1 E(ginning of the line.)-.15 E
+(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(10)193.45 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
+(unix\255line\255discard \(C\255u\))108 84 Q F0(Kill backw)144 96 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 412.8 Q F0
+-2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 108 Q F0
(Kill all characters on the current line, no matter where point is.)144
-424.8 Q F1(kill\255w)108 436.8 Q(ord \(M\255d\))-.1 E F0 1.308
-(Kill from point the end of the current w)144 448.8 R 1.308
+120 Q F1(kill\255w)108 132 Q(ord \(M\255d\))-.1 E F0 1.308
+(Kill from point the end of the current w)144 144 R 1.308
(ord, or if between w)-.1 F 1.308(ords, to the end of the ne)-.1 F 1.308
-(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 460.8 S
+(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 156 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 472.8 Q
-(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 484.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 496.8 Q
-(ord\255rubout \(C\255w\))-.1 E F0 .365(Kill the w)144 508.8 R .365
+(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 168 Q
+(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 180 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 192 Q
+(ord\255rubout \(C\255w\))-.1 E F0 .365(Kill the w)144 204 R .365
(ord behind point, using white space as a w)-.1 F .364(ord boundary)-.1
F 5.364(.T)-.65 G .364(he killed te)-5.364 F .364(xt is sa)-.15 F -.15
(ve)-.2 G 2.864(do).15 G 2.864(nt)-2.864 G(he)-2.864 E(kill-ring.)144
-520.8 Q F1(unix\255\214lename\255rubout)108 532.8 Q F0 .166(Kill the w)
-144 544.8 R .166
+216 Q F1(unix\255\214lename\255rubout)108 228 Q F0 .166(Kill the w)144
+240 R .166
(ord behind point, using white space and the slash character as the w)
--.1 F .167(ord boundaries.)-.1 F(The)5.167 E(killed te)144 556.8 Q
+-.1 F .167(ord boundaries.)-.1 F(The)5.167 E(killed te)144 252 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 568.8 Q F0
-(Delete all spaces and tabs around point.)144 580.8 Q F1(kill\255r)108
-592.8 Q(egion)-.18 E F0 .302(Kill the te)144 604.8 R .301
-(xt between the point and)-.15 F F2(mark)2.801 E F0(\(sa)2.801 E -.15
-(ve)-.2 G 2.801(dc).15 G .301(ursor position\).)-2.801 F .301(This te)
-5.301 F .301(xt is referred to as the)-.15 F F2 -.37(re)2.801 G(-).37 E
-(gion)144 616.8 Q F0(.)A F1(copy\255r)108 628.8 Q(egion\255as\255kill)
--.18 E F0(Cop)144 640.8 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 652.8 Q(ord)-.1 E F0(Cop)144 664.8 Q 4.8(yt)
--.1 G 2.3(he w)-4.8 F 2.3(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.301
-(ord boundaries are the same as)-.1 F F1(back-)4.801 E(ward\255w)144
-676.8 Q(ord)-.1 E F0(.)A F1(copy\255f)108 688.8 Q(orward\255w)-.25 E
-(ord)-.1 E F0(Cop)144 700.8 Q 4.508(yt)-.1 G 2.008(he w)-4.508 F 2.008
-(ord follo)-.1 F 2.008(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25
-E 7.007(.T)-.55 G 2.007(he w)-7.007 F 2.007
-(ord boundaries are the same as)-.1 F F1 -.25(fo)4.507 G -.37(r-).25 G
-(ward\255w)144 712.8 Q(ord)-.1 E F0(.)A(GNU Readline 8.1)72 768 Q
-(2020 October 29)125.685 E(10)190.395 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
-(yank \(C\255y\))108 84 Q F0 -1(Ya)144 96 S
+-2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 264 Q F0
+(Delete all spaces and tabs around point.)144 276 Q F1(kill\255r)108 288
+Q(egion)-.18 E F0 .302(Kill the te)144 300 R .301
+(xt between the point and)-.15 F/F2 10/Times-Italic@0 SF(mark)2.801 E F0
+(\(sa)2.801 E -.15(ve)-.2 G 2.801(dc).15 G .301(ursor position\).)-2.801
+F .301(This te)5.301 F .301(xt is referred to as the)-.15 F F2 -.37(re)
+2.801 G(-).37 E(gion)144 312 Q F0(.)A F1(copy\255r)108 324 Q
+(egion\255as\255kill)-.18 E F0(Cop)144 336 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 348 Q(ord)-.1 E F0(Cop)144 360 Q 4.8
+(yt)-.1 G 2.3(he w)-4.8 F 2.3(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.301
+(ord boundaries are the same as)-.1 F F1(back-)4.801 E(ward\255w)144 372
+Q(ord)-.1 E F0(.)A F1(copy\255f)108 384 Q(orward\255w)-.25 E(ord)-.1 E
+F0(Cop)144 396 Q 4.508(yt)-.1 G 2.008(he w)-4.508 F 2.008(ord follo)-.1
+F 2.008(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.007(.T)
+-.55 G 2.007(he w)-7.007 F 2.007(ord boundaries are the same as)-.1 F F1
+-.25(fo)4.507 G -.37(r-).25 G(ward\255w)144 408 Q(ord)-.1 E F0(.)A F1
+(yank \(C\255y\))108 420 Q F0 -1(Ya)144 432 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 108 Q F0
-(Rotate the kill ring, and yank the ne)144 120 Q 2.5(wt)-.25 G 2.5
+E F1(yank\255pop \(M\255y\))108 444 Q F0
+(Rotate the kill ring, and yank the ne)144 456 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 136.8 Q
-(guments)-.1 E(digit\255ar)108 148.8 Q
+F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 472.8 Q
+(guments)-.1 E(digit\255ar)108 484.8 Q
(gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .367
-(Add this digit to the ar)144 160.8 R .367
+(Add this digit to the ar)144 496.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 .367(starts a ne)2.867 F -.05
-(ga)-.15 G(-).05 E(ti)144 172.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G
-(ument.).18 E F1(uni)108 184.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1
-E F0 .779(This is another w)144 196.8 R .779(ay to specify an ar)-.1 F
+(ga)-.15 G(-).05 E(ti)144 508.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G
+(ument.).18 E F1(uni)108 520.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1
+E F0 .779(This is another w)144 532.8 R .779(ay to specify an ar)-.1 F
3.279(gument. If)-.18 F .779(this command is follo)3.279 F .778
(wed by one or more digits,)-.25 F 1.376
(optionally with a leading minus sign, those digits de\214ne the ar)144
-208.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
-220.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F1(uni)
+544.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
+556.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 .898(wise ignored.)144 232.8 R .898
+-.2 F(-)-.2 E .898(wise ignored.)144 568.8 R .898
(As a special case, if this command is immediately follo)5.898 F .898
(wed by a character that is)-.25 F .243
-(neither a digit or minus sign, the ar)144 244.8 R .243
+(neither a digit or minus sign, the ar)144 580.8 R .243
(gument count for the ne)-.18 F .243(xt command is multiplied by four)
--.15 F 5.242(.T)-.55 G(he)-5.242 E(ar)144 256.8 Q .378
+-.15 F 5.242(.T)-.55 G(he)-5.242 E(ar)144 592.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 268.8 Q 2.5(,as)-.4 G(econd time mak)
+.378(gument count)-.18 F(four)144 604.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 285.6 Q(complete \(T)108 297.6 Q(AB\))-.9 E F0 .682
-(Attempt to perform completion on the te)144 309.6 R .681
+(Completing)87 621.6 Q(complete \(T)108 633.6 Q(AB\))-.9 E F0 .682
+(Attempt to perform completion on the te)144 645.6 R .681
(xt before point.)-.15 F .681(The actual completion performed is ap-)
-5.681 F(plication-speci\214c.)144 321.6 Q F1(Bash)6.243 E F0 3.743(,f)C
+5.681 F(plication-speci\214c.)144 657.6 Q F1(Bash)6.243 E F0 3.743(,f)C
1.244(or instance, attempts completion treating the te)-3.743 F 1.244
-(xt as a v)-.15 F 1.244(ariable \(if the)-.25 F(te)144 333.6 Q .657
+(xt as a v)-.15 F 1.244(ariable \(if the)-.25 F(te)144 669.6 Q .657
(xt be)-.15 F .657(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.156 E F0 .656(\), or)B .929
-(command \(including aliases and functions\) in turn.)144 345.6 R .93
+(command \(including aliases and functions\) in turn.)144 681.6 R .93
(If none of these produces a match, \214lename)5.929 F 1.274
-(completion is attempted.)144 357.6 R F1(Gdb)6.273 E F0 3.773(,o)C 3.773
+(completion is attempted.)144 693.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 369.6 S(riab\
+(ws completion of program functions and)-.25 F -.25(va)144 705.6 S(riab\
les, and only attempts \214lename completion under certain circumstance\
-s.).25 E F1(possible\255completions \(M\255?\))108 381.6 Q F0 .261
-(List the possible completions of the te)144 393.6 R .262
-(xt before point.)-.15 F .262
-(When displaying completions, readline sets)5.262 F 1.002
-(the number of columns used for display to the v)144 405.6 R 1.002
+s.).25 E(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(11)193.45 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/F1 10/Times-Bold@0 SF
+(possible\255completions \(M\255?\))108 84 Q F0 .261
+(List the possible completions of the te)144 96 R .262(xt before point.)
+-.15 F .262(When displaying completions, readline sets)5.262 F 1.002
+(the number of columns used for display to the v)144 108 R 1.002
(alue of)-.25 F F1(completion-display-width)3.502 E F0 3.502(,t)C 1.002
-(he v)-3.502 F 1.002(alue of)-.25 F(the en)144 417.6 Q(vironment v)-.4 E
+(he v)-3.502 F 1.002(alue of)-.25 F(the en)144 120 Q(vironment v)-.4 E
(ariable)-.25 E/F2 9/Times-Bold@0 SF(COLUMNS)2.5 E/F3 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 429.6 Q F0 .783
-(Insert all completions of the te)144 441.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.283 E(pletions)144
-453.6 Q F0(.)A F1(menu\255complete)108 465.6 Q F0 .929(Similar to)144
-477.6 R F1(complete)3.429 E F0 3.429(,b)C .929(ut replaces the w)-3.629
-F .929(ord to be completed with a single match from the list of)-.1 F
-1.193(possible completions.)144 489.6 R 1.193(Repeated e)6.193 F -.15
-(xe)-.15 G 1.193(cution of).15 F F1(menu\255complete)3.694 E F0 1.194
+(insert\255completions \(M\255*\))108 132 Q F0 .783
+(Insert all completions of the te)144 144 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.283 E(pletions)144 156 Q F0(.)A F1
+(menu\255complete)108 168 Q F0 .929(Similar to)144 180 R F1(complete)
+3.429 E F0 3.429(,b)C .929(ut replaces the w)-3.629 F .929
+(ord to be completed with a single match from the list of)-.1 F 1.193
+(possible completions.)144 192 R 1.193(Repeated e)6.193 F -.15(xe)-.15 G
+1.193(cution of).15 F F1(menu\255complete)3.694 E F0 1.194
(steps through the list of possible)3.694 F .829
-(completions, inserting each match in turn.)144 501.6 R .828
+(completions, inserting each match in turn.)144 204 R .828
(At the end of the list of completions, the bell is rung)5.828 F .727
-(\(subject to the setting of)144 513.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.228 E F0 1.73
-(positions forw)144 525.6 R 1.73(ard in the list of matches; a ne)-.1 F
+(\(subject to the setting of)144 216 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.228 E F0 1.73
+(positions forw)144 228 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 537.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 F1(menu\255complete\255backward)108 549.6 Q F0 .82
-(Identical to)144 561.6 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
+E(through the list.)144 240 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 252 Q F0 .82(Identical to)144
+264 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 573.6 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 585.6 Q F0 .374
-(Deletes the character under the cursor if not at the be)144 597.6 R
-.373(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete-char)
-2.873 E F0(\).)A(If at the end of the line, beha)144 609.6 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 626.4 S(yboard Macr).25 E(os)-.18 E(start\255kbd\255macr)
-108 638.4 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833 E F0(Be)144 650.4 Q
+(menu\255complete)144 276 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 288 Q F0 .374
+(Deletes the character under the cursor if not at the be)144 300 R .373
+(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete-char)2.873 E
+F0(\).)A(If at the end of the line, beha)144 312 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 328.8 S(yboard Macr).25 E(os)-.18 E(start\255kbd\255macr)108
+340.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833 E F0(Be)144 352.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 662.4 Q 2.5(o\()
--.18 G(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 674.4 Q
+(ey)-.1 G(board macro.).15 E F1(end\255kbd\255macr)108 364.8 Q 2.5(o\()
+-.18 G(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 376.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 686.4 Q 2.5(o\()-.18 G(C\255x e\))-2.5
-E F0(Re-e)144 698.4 Q -.15(xe)-.15 G .999(cute the last k).15 F -.15(ey)
+(call\255last\255kbd\255macr)108 388.8 Q 2.5(o\()-.18 G(C\255x e\))-2.5
+E F0(Re-e)144 400.8 Q -.15(xe)-.15 G .999(cute the last k).15 F -.15(ey)
-.1 G .999(board macro de\214ned, by making the characters in the macro\
- appear as if).15 F(typed at the k)144 710.4 Q -.15(ey)-.1 G(board.).15
-E(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(11)190.395 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/F1 10/Times-Bold@0 SF
-(print\255last\255kbd\255macr)108 84 Q 2.5(o\()-.18 G(\))-2.5 E F0
-(Print the last k)144 96 Q -.15(ey)-.1 G
-(board macro de\214ned in a format suitable for the).15 E/F2 10
-/Times-Italic@0 SF(inputr)2.5 E(c)-.37 E F0(\214le.)2.5 E F1
-(Miscellaneous)87 112.8 Q -.18(re)108 124.8 S<ad72>.18 E
-(ead\255init\255\214le \(C\255x C\255r\))-.18 E F0 1.777
-(Read in the contents of the)144 136.8 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
+ appear as if).15 F(typed at the k)144 412.8 Q -.15(ey)-.1 G(board.).15
+E F1(print\255last\255kbd\255macr)108 424.8 Q 2.5(o\()-.18 G(\))-2.5 E
+F0(Print the last k)144 436.8 Q -.15(ey)-.1 G
+(board macro de\214ned in a format suitable for the).15 E F4(inputr)2.5
+E(c)-.37 E F0(\214le.)2.5 E F1(Miscellaneous)87 453.6 Q -.18(re)108
+465.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 477.6 R F4(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
-148.8 Q F1(abort \(C\255g\))108 160.8 Q F0 3.248
-(Abort the current editing command and ring the terminal')144 172.8 R
+489.6 Q F1(abort \(C\255g\))108 501.6 Q F0 3.248
+(Abort the current editing command and ring the terminal')144 513.6 R
5.749(sb)-.55 G 3.249(ell \(subject to the setting of)-5.749 F F1
-(bell\255style)144 184.8 Q F0(\).)A F1(do\255lo)108 196.8 Q(wer)-.1 E
-(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.739(If the meta\214ed character)144 208.8 R F2(x)
+(bell\255style)144 525.6 Q F0(\).)A F1(do\255lo)108 537.6 Q(wer)-.1 E
+(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.739(If the meta\214ed character)144 549.6 R F4(x)
4.239 E F0 1.739
(is uppercase, run the command that is bound to the corresponding)4.239
-F(meta\214ed lo)144 220.8 Q(wercase character)-.25 E 5(.T)-.55 G
-(he beha)-5 E(vior is unde\214ned if)-.2 E F2(x)2.5 E F0(is already lo)
-2.5 E(wercase.)-.25 E F1(pr)108 232.8 Q(e\214x\255meta \(ESC\))-.18 E F0
-(Metafy the ne)144 244.8 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 256.8 Q F0
-(Incremental undo, separately remembered for each line.)144 268.8 Q F1
--2.29 -.18(re v)108 280.8 T(ert\255line \(M\255r\)).08 E F0 .23
-(Undo all changes made to this line.)144 292.8 R .231(This is lik)5.23 F
+F(meta\214ed lo)144 561.6 Q(wercase character)-.25 E 5(.T)-.55 G
+(he beha)-5 E(vior is unde\214ned if)-.2 E F4(x)2.5 E F0(is already lo)
+2.5 E(wercase.)-.25 E F1(pr)108 573.6 Q(e\214x\255meta \(ESC\))-.18 E F0
+(Metafy the ne)144 585.6 Q(xt character typed.)-.15 E F2(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 597.6 Q F0
+(Incremental undo, separately remembered for each line.)144 609.6 Q F1
+-2.29 -.18(re v)108 621.6 T(ert\255line \(M\255r\)).08 E F0 .23
+(Undo all changes made to this line.)144 633.6 R .231(This is lik)5.23 F
2.731(ee)-.1 G -.15(xe)-2.881 G .231(cuting the).15 F F1(undo)2.731 E F0
.231(command enough times to re-)2.731 F
-(turn the line to its initial state.)144 304.8 Q F1
-(tilde\255expand \(M\255&\))108 316.8 Q F0(Perform tilde e)144 328.8 Q
+(turn the line to its initial state.)144 645.6 Q F1
+(tilde\255expand \(M\255&\))108 657.6 Q F0(Perform tilde e)144 669.6 Q
(xpansion on the current w)-.15 E(ord.)-.1 E F1
-(set\255mark \(C\255@, M\255<space>\))108 340.8 Q F0
-(Set the mark to the point.)144 352.8 Q(If a numeric ar)5 E
+(set\255mark \(C\255@, M\255<space>\))108 681.6 Q F0
+(Set the mark to the point.)144 693.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 364.8 Q F0(Sw)
-144 376.8 Q .283(ap the point with the mark.)-.1 F .283
+(exchange\255point\255and\255mark \(C\255x C\255x\))108 705.6 Q F0(Sw)
+144 717.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 388.8 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 400.8 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144
-412.8 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 729.6 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E
+(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(12)193.45 E 0 Cg EP
+%%Page: 13 13
+%%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
+(character\255sear)108 84 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144 96 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 424.8 Q(vious occurrences.)-.25 E F1(character\255sear)108 436.8 Q
-(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 448.8 S 1.044
+144 108 Q(vious occurrences.)-.25 E F1(character\255sear)108 120 Q
+(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 132 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 460.8 Q F1
-(skip\255csi\255sequence)108 472.8 Q F0 1.826
-(Read enough characters to consume a multi-k)144 484.8 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 496.8 R
-.791(Such sequences be)5.791 F .791
+(count searches for subsequent occurrences.)144 144 Q F1
+(skip\255csi\255sequence)108 156 Q F0 1.826
+(Read enough characters to consume a multi-k)144 168 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 180 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 508.8 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 520.8 R(uf)-.2 E(fer)-.25 E
-5.026(.T)-.55 G(his)-5.026 E(is unbound by def)144 532.8 Q(ault, b)-.1 E
+.331(If this sequence is bound to "\\[", k)144 192 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 204 R(uf)-.2 E(fer)-.25 E 5.026(.T)
+-.55 G(his)-5.026 E(is unbound by def)144 216 Q(ault, b)-.1 E
(ut usually bound to ESC\255[.)-.2 E F1(insert\255comment \(M\255#\))108
-544.8 Q F0 -.4(Wi)144 556.8 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 568.8 Q .245
+228 Q F0 -.4(Wi)144 240 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 252 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 .321
-(the characters at the be)144 580.8 R .321
+(the characters at the be)144 264 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 592.8 R F1
+-.25 F 1.014(inserted, otherwise the characters in)144 276 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 604.8 R 1.468
+(In either case, the line is accepted as if a ne)144 288 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 616.8 Q F0(mak)
+1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 300 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 628.8 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
-640.8 Q F0 .626(Print all of the functions and their k)144 652.8 R .926
--.15(ey b)-.1 H .627(indings to the readline output stream.).15 F .627
+(character to be remo)144 312 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 324
+Q F0 .626(Print all of the functions and their k)144 336 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 664.8 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\255v)108 676.8 Q(ariables)-.1 E F0 .283
-(Print all of the settable v)144 688.8 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 700.8 Q
+(ment is supplied, the output is formatted in such a w)144 348 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 360 Q(ariables)-.1 E F0
+.283(Print all of the settable v)144 372 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 384 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(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(12)
-190.395 E 0 Cg EP
-%%Page: 13 13
-%%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
-(dump\255macr)108 84 Q(os)-.18 E F0 .592(Print all of the readline k)144
-96 R .892 -.15(ey s)-.1 H .592
+(\214le.)2.5 E F1(dump\255macr)108 396 Q(os)-.18 E F0 .592
+(Print all of the readline k)144 408 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 108 Q
+3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 420 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/F2 10/Times-Italic@0 SF(inputr)
-3.027 E(c)-.37 E F0(\214le.)144 120 Q F1
-(emacs\255editing\255mode \(C\255e\))108 132 Q F0(When in)144 144 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 156
-Q F0(When in)144 168 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/F3 10.95/Times-Bold@0 SF(DEF)72 184.8 Q -.548(AU)
+(ay that it can be made part of an)-.1 F F2(inputr)3.027 E(c)-.37 E F0
+(\214le.)144 432 Q F1(emacs\255editing\255mode \(C\255e\))108 444 Q F0
+(When in)144 456 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 468 Q F0(When in)144 480 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/F3 10.95/Times-Bold@0 SF(DEF)72 496.8 Q -.548(AU)
-.986 G 2.014 -1.007(LT K).548 H(EY BINDINGS)1.007 E F0 .064(The follo)
-108 196.8 R .064(wing is a list of the def)-.25 F .064
+108 508.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 208.8 R F2(meta\214ed)
+(M\255<character>, and are referred to as)108 520.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 220.8 R F1
+(in the list of emacs standard bindings are bound to the)108 532.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
-232.8 R .945(In vi insertion mode, all characters not speci\214cally me\
-ntioned are bound to)5.945 F F1(self\255insert)108 244.8 Q F0 5.337(.C)C
+544.8 R .945(In vi insertion mode, all characters not speci\214cally me\
+ntioned are bound to)5.945 F F1(self\255insert)108 556.8 Q F0 5.337(.C)C
.337(haracters assigned to signal generation by)-5.337 F F2(stty)3.177 E
F0 .338(\(1\) or the terminal dri).32 F -.15(ve)-.25 G 1.138 -.4(r, s)
-.15 H .338(uch as C-Z or C-C,).4 F .188(retain that function.)108 256.8
+.15 H .338(uch as C-Z or C-C,).4 F .188(retain that function.)108 568.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 268.8 R
+nd to the same function in the emacs)-.25 F .304(mode meta k)108 580.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 280.8 Q F1(bell\255style)2.5 E F0 -.25(va)2.5
-G(riable\).).25 E F1(Emacs Mode)87 297.6 Q F0(Emacs Standard bindings)
-151.2 309.6 Q 2.5("C-@" set-mark)151.2 333.6 R 2.5("C-A" be)151.2 345.6
-R(ginning-of-line)-.15 E 2.5("C-B" backw)151.2 357.6 R(ard-char)-.1 E
-2.5("C-D" delete-char)151.2 369.6 R 2.5("C-E" end-of-line)151.2 381.6 R
-2.5("C-F" forw)151.2 393.6 R(ard-char)-.1 E 2.5("C-G" abort)151.2 405.6
-R 2.5("C-H" backw)151.2 417.6 R(ard-delete-char)-.1 E 2.5
-("C-I" complete)151.2 429.6 R 2.5("C-J" accept-line)151.2 441.6 R 2.5
-("C-K" kill-line)151.2 453.6 R 2.5("C-L" clear)151.2 465.6 R(-screen)-.2
-E 2.5("C-M" accept-line)151.2 477.6 R 2.5("C-N" ne)151.2 489.6 R
-(xt-history)-.15 E 2.5("C-P" pre)151.2 501.6 R(vious-history)-.25 E 2.5
-("C-Q" quoted-insert)151.2 513.6 R 2.5("C-R" re)151.2 525.6 R -.15(ve)
--.25 G(rse-search-history).15 E 2.5("C-S" forw)151.2 537.6 R
-(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 549.6 R 2.5
-("C-U" unix-line-discard)151.2 561.6 R 2.5("C-V" quoted-insert)151.2
-573.6 R 2.5("C-W" unix-w)151.2 585.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)
-151.2 597.6 R 2.5("C-]" character)151.2 609.6 R(-search)-.2 E 2.5
-("C-_" undo)151.2 621.6 R 3.333("")151.2 633.6 S(to "/")-.833 E
-(self-insert)5 E 2.5("0" to)151.2 645.6 R 2.5("9" self-insert)2.5 F 2.5
-(":" to)151.2 657.6 R 2.5("~" self-insert)2.5 F 2.5("C-?" backw)151.2
-669.6 R(ard-delete-char)-.1 E(Emacs Meta bindings)151.2 686.4 Q 2.5
-("M-C-G" abort)151.2 710.4 R 2.5("M-C-H" backw)151.2 722.4 R(ard-kill-w)
--.1 E(ord)-.1 E(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(13)
-190.395 E 0 Cg EP
+(to the setting of the)108 592.8 Q F1(bell\255style)2.5 E F0 -.25(va)2.5
+G(riable\).).25 E F1(Emacs Mode)87 609.6 Q F0(Emacs Standard bindings)
+151.2 621.6 Q 2.5("C-@" set-mark)151.2 645.6 R 2.5("C-A" be)151.2 657.6
+R(ginning-of-line)-.15 E 2.5("C-B" backw)151.2 669.6 R(ard-char)-.1 E
+2.5("C-D" delete-char)151.2 681.6 R 2.5("C-E" end-of-line)151.2 693.6 R
+2.5("C-F" forw)151.2 705.6 R(ard-char)-.1 E 2.5("C-G" abort)151.2 717.6
+R 2.5("C-H" backw)151.2 729.6 R(ard-delete-char)-.1 E(GNU Readline 8.2)
+72 768 Q(2022 March 11)128.74 E(13)193.45 E 0 Cg EP
%%Page: 14 14
%%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("M-C-I" tab-insert)
-151.2 84 R 2.5("M-C-J" vi-editing-mode)151.2 96 R 2.5("M-C-L" clear)
-151.2 108 R(-display)-.2 E 2.5("M-C-M" vi-editing-mode)151.2 120 R 2.5
-("M-C-R" re)151.2 132 R -.15(ve)-.25 G(rt-line).15 E 2.5
-("M-C-Y" yank-nth-ar)151.2 144 R(g)-.18 E 2.5("M-C-[" complete)151.2 156
-R 2.5("M-C-]" character)151.2 168 R(-search-backw)-.2 E(ard)-.1 E 2.5
-("M-space" set-mark)151.2 180 R 2.5("M-#" insert-comment)151.2 192 R 2.5
-("M-&" tilde-e)151.2 204 R(xpand)-.15 E 2.5("M-*" insert-completions)
-151.2 216 R 2.5("M--" digit-ar)151.2 228 R(gument)-.18 E 2.5
-("M-." yank-last-ar)151.2 240 R(g)-.18 E 2.5("M-0" digit-ar)151.2 252 R
-(gument)-.18 E 2.5("M-1" digit-ar)151.2 264 R(gument)-.18 E 2.5
-("M-2" digit-ar)151.2 276 R(gument)-.18 E 2.5("M-3" digit-ar)151.2 288 R
-(gument)-.18 E 2.5("M-4" digit-ar)151.2 300 R(gument)-.18 E 2.5
-("M-5" digit-ar)151.2 312 R(gument)-.18 E 2.5("M-6" digit-ar)151.2 324 R
-(gument)-.18 E 2.5("M-7" digit-ar)151.2 336 R(gument)-.18 E 2.5
-("M-8" digit-ar)151.2 348 R(gument)-.18 E 2.5("M-9" digit-ar)151.2 360 R
-(gument)-.18 E 2.5("M-<" be)151.2 372 R(ginning-of-history)-.15 E 2.5
-("M-=" possible-completions)151.2 384 R 2.5("M->" end-of-history)151.2
-396 R 2.5("M-?" possible-completions)151.2 408 R 2.5("M-B" backw)151.2
-420 R(ard-w)-.1 E(ord)-.1 E 2.5("M-C" capitalize-w)151.2 432 R(ord)-.1 E
-2.5("M-D" kill-w)151.2 444 R(ord)-.1 E 2.5("M-F" forw)151.2 456 R(ard-w)
--.1 E(ord)-.1 E 2.5("M-L" do)151.2 468 R(wncase-w)-.25 E(ord)-.1 E 2.5
-("M-N" non-incremental-forw)151.2 480 R(ard-search-history)-.1 E 2.5
-("M-P" non-incremental-re)151.2 492 R -.15(ve)-.25 G(rse-search-history)
-.15 E 2.5("M-R" re)151.2 504 R -.15(ve)-.25 G(rt-line).15 E 2.5
-("M-T" transpose-w)151.2 516 R(ords)-.1 E 2.5("M-U" upcase-w)151.2 528 R
-(ord)-.1 E 2.5("M-Y" yank-pop)151.2 540 R 2.5
-("M-\\" delete-horizontal-space)151.2 552 R 2.5("M-~" tilde-e)151.2 564
-R(xpand)-.15 E 2.5("M-C-?" backw)151.2 576 R(ard-kill-w)-.1 E(ord)-.1 E
-2.5("M-_" yank-last-ar)151.2 588 R(g)-.18 E(Emacs Control-X bindings)
-151.2 604.8 Q 2.5("C-XC-G" abort)151.2 628.8 R 2.5
-("C-XC-R" re-read-init-\214le)151.2 640.8 R 2.5("C-XC-U" undo)151.2
-652.8 R 2.5("C-XC-X" e)151.2 664.8 R(xchange-point-and-mark)-.15 E 2.5
-("C-X\(" start-kbd-macro)151.2 676.8 R 2.5("C-X\)" end-kbd-macro)151.2
-688.8 R 2.5("C-XE" call-last-kbd-macro)151.2 700.8 R 2.5("C-XC-?" backw)
-151.2 712.8 R(ard-kill-line)-.1 E(GNU Readline 8.1)72 768 Q
-(2020 October 29)125.685 E(14)190.395 E 0 Cg EP
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("C-I" complete)151.2
+84 R 2.5("C-J" accept-line)151.2 96 R 2.5("C-K" kill-line)151.2 108 R
+2.5("C-L" clear)151.2 120 R(-screen)-.2 E 2.5("C-M" accept-line)151.2
+132 R 2.5("C-N" ne)151.2 144 R(xt-history)-.15 E 2.5("C-P" pre)151.2 156
+R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 168 R 2.5("C-R" re)
+151.2 180 R -.15(ve)-.25 G(rse-search-history).15 E 2.5("C-S" forw)151.2
+192 R(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 204 R 2.5
+("C-U" unix-line-discard)151.2 216 R 2.5("C-V" quoted-insert)151.2 228 R
+2.5("C-W" unix-w)151.2 240 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 252 R
+2.5("C-]" character)151.2 264 R(-search)-.2 E 2.5("C-_" undo)151.2 276 R
+3.333("")151.2 288 S(to "/")-.833 E(self-insert)5 E 2.5("0" to)151.2 300
+R 2.5("9" self-insert)2.5 F 2.5(":" to)151.2 312 R 2.5("~" self-insert)
+2.5 F 2.5("C-?" backw)151.2 324 R(ard-delete-char)-.1 E
+(Emacs Meta bindings)151.2 340.8 Q 2.5("M-C-G" abort)151.2 364.8 R 2.5
+("M-C-H" backw)151.2 376.8 R(ard-kill-w)-.1 E(ord)-.1 E 2.5
+("M-C-I" tab-insert)151.2 388.8 R 2.5("M-C-J" vi-editing-mode)151.2
+400.8 R 2.5("M-C-L" clear)151.2 412.8 R(-display)-.2 E 2.5
+("M-C-M" vi-editing-mode)151.2 424.8 R 2.5("M-C-R" re)151.2 436.8 R -.15
+(ve)-.25 G(rt-line).15 E 2.5("M-C-Y" yank-nth-ar)151.2 448.8 R(g)-.18 E
+2.5("M-C-[" complete)151.2 460.8 R 2.5("M-C-]" character)151.2 472.8 R
+(-search-backw)-.2 E(ard)-.1 E 2.5("M-space" set-mark)151.2 484.8 R 2.5
+("M-#" insert-comment)151.2 496.8 R 2.5("M-&" tilde-e)151.2 508.8 R
+(xpand)-.15 E 2.5("M-*" insert-completions)151.2 520.8 R 2.5
+("M--" digit-ar)151.2 532.8 R(gument)-.18 E 2.5("M-." yank-last-ar)151.2
+544.8 R(g)-.18 E 2.5("M-0" digit-ar)151.2 556.8 R(gument)-.18 E 2.5
+("M-1" digit-ar)151.2 568.8 R(gument)-.18 E 2.5("M-2" digit-ar)151.2
+580.8 R(gument)-.18 E 2.5("M-3" digit-ar)151.2 592.8 R(gument)-.18 E 2.5
+("M-4" digit-ar)151.2 604.8 R(gument)-.18 E 2.5("M-5" digit-ar)151.2
+616.8 R(gument)-.18 E 2.5("M-6" digit-ar)151.2 628.8 R(gument)-.18 E 2.5
+("M-7" digit-ar)151.2 640.8 R(gument)-.18 E 2.5("M-8" digit-ar)151.2
+652.8 R(gument)-.18 E 2.5("M-9" digit-ar)151.2 664.8 R(gument)-.18 E 2.5
+("M-<" be)151.2 676.8 R(ginning-of-history)-.15 E 2.5
+("M-=" possible-completions)151.2 688.8 R 2.5("M->" end-of-history)151.2
+700.8 R 2.5("M-?" possible-completions)151.2 712.8 R 2.5("M-B" backw)
+151.2 724.8 R(ard-w)-.1 E(ord)-.1 E(GNU Readline 8.2)72 768 Q
+(2022 March 11)128.74 E(14)193.45 E 0 Cg EP
%%Page: 15 15
%%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 Mode bindings)87 84 Q F0(VI Insert Mode functions)151.2 96 Q 2.5
-("C-D" vi-eof-maybe)151.2 120 R 2.5("C-H" backw)151.2 132 R
-(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 144 R 2.5
-("C-J" accept-line)151.2 156 R 2.5("C-M" accept-line)151.2 168 R 2.5
-("C-R" re)151.2 180 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
-("C-S" forw)151.2 192 R(ard-search-history)-.1 E 2.5
-("C-T" transpose-chars)151.2 204 R 2.5("C-U" unix-line-discard)151.2 216
-R 2.5("C-V" quoted-insert)151.2 228 R 2.5("C-W" unix-w)151.2 240 R
-(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 252 R 2.5("C-[" vi-mo)151.2 264 R
--.15(ve)-.15 G(ment-mode).15 E 2.5("C-_" undo)151.2 276 R 3.333("")151.2
-288 S(to "~")-.833 E(self-insert)5 E 2.5("C-?" backw)151.2 300 R
-(ard-delete-char)-.1 E(VI Command Mode functions)151.2 316.8 Q 2.5
-("C-D" vi-eof-maybe)151.2 340.8 R 2.5("C-E" emacs-editing-mode)151.2
-352.8 R 2.5("C-G" abort)151.2 364.8 R 2.5("C-H" backw)151.2 376.8 R
-(ard-char)-.1 E 2.5("C-J" accept-line)151.2 388.8 R 2.5("C-K" kill-line)
-151.2 400.8 R 2.5("C-L" clear)151.2 412.8 R(-screen)-.2 E 2.5
-("C-M" accept-line)151.2 424.8 R 2.5("C-N" ne)151.2 436.8 R(xt-history)
--.15 E 2.5("C-P" pre)151.2 448.8 R(vious-history)-.25 E 2.5
-("C-Q" quoted-insert)151.2 460.8 R 2.5("C-R" re)151.2 472.8 R -.15(ve)
--.25 G(rse-search-history).15 E 2.5("C-S" forw)151.2 484.8 R
-(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 496.8 R 2.5
-("C-U" unix-line-discard)151.2 508.8 R 2.5("C-V" quoted-insert)151.2
-520.8 R 2.5("C-W" unix-w)151.2 532.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)
-151.2 544.8 R 2.5("C-_" vi-undo)151.2 556.8 R -4.166 3.333("" f)151.2
-568.8 T(orw)-3.333 E(ard-char)-.1 E 2.5("#" insert-comment)151.2 580.8 R
-2.5("$" end-of-line)151.2 592.8 R 2.5("%" vi-match)151.2 604.8 R 2.5
-("&" vi-tilde-e)151.2 616.8 R(xpand)-.15 E 2.5("*" vi-complete)151.2
-628.8 R 2.5("+" ne)151.2 640.8 R(xt-history)-.15 E 2.5("," vi-char)151.2
-652.8 R(-search)-.2 E 2.5("-" pre)151.2 664.8 R(vious-history)-.25 E 2.5
-("." vi-redo)151.2 676.8 R 2.5("/" vi-search)151.2 688.8 R 2.5("0" be)
-151.2 700.8 R(ginning-of-line)-.15 E("1" to "9")151.2 712.8 Q(vi-ar)5 E
-(g-digit)-.18 E 2.5(";" vi-char)151.2 724.8 R(-search)-.2 E
-(GNU Readline 8.1)72 768 Q(2020 October 29)125.685 E(15)190.395 E 0 Cg
-EP
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("M-C" capitalize-w)
+151.2 84 R(ord)-.1 E 2.5("M-D" kill-w)151.2 96 R(ord)-.1 E 2.5
+("M-F" forw)151.2 108 R(ard-w)-.1 E(ord)-.1 E 2.5("M-L" do)151.2 120 R
+(wncase-w)-.25 E(ord)-.1 E 2.5("M-N" non-incremental-forw)151.2 132 R
+(ard-search-history)-.1 E 2.5("M-P" non-incremental-re)151.2 144 R -.15
+(ve)-.25 G(rse-search-history).15 E 2.5("M-R" re)151.2 156 R -.15(ve)
+-.25 G(rt-line).15 E 2.5("M-T" transpose-w)151.2 168 R(ords)-.1 E 2.5
+("M-U" upcase-w)151.2 180 R(ord)-.1 E 2.5("M-Y" yank-pop)151.2 192 R 2.5
+("M-\\" delete-horizontal-space)151.2 204 R 2.5("M-~" tilde-e)151.2 216
+R(xpand)-.15 E 2.5("M-C-?" backw)151.2 228 R(ard-kill-w)-.1 E(ord)-.1 E
+2.5("M-_" yank-last-ar)151.2 240 R(g)-.18 E(Emacs Control-X bindings)
+151.2 256.8 Q 2.5("C-XC-G" abort)151.2 280.8 R 2.5
+("C-XC-R" re-read-init-\214le)151.2 292.8 R 2.5("C-XC-U" undo)151.2
+304.8 R 2.5("C-XC-X" e)151.2 316.8 R(xchange-point-and-mark)-.15 E 2.5
+("C-X\(" start-kbd-macro)151.2 328.8 R 2.5("C-X\)" end-kbd-macro)151.2
+340.8 R 2.5("C-XE" call-last-kbd-macro)151.2 352.8 R 2.5("C-XC-?" backw)
+151.2 364.8 R(ard-kill-line)-.1 E/F1 10/Times-Bold@0 SF
+(VI Mode bindings)87 393.6 Q F0(VI Insert Mode functions)151.2 405.6 Q
+2.5("C-D" vi-eof-maybe)151.2 429.6 R 2.5("C-H" backw)151.2 441.6 R
+(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 453.6 R 2.5
+("C-J" accept-line)151.2 465.6 R 2.5("C-M" accept-line)151.2 477.6 R 2.5
+("C-R" re)151.2 489.6 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
+("C-S" forw)151.2 501.6 R(ard-search-history)-.1 E 2.5
+("C-T" transpose-chars)151.2 513.6 R 2.5("C-U" unix-line-discard)151.2
+525.6 R 2.5("C-V" quoted-insert)151.2 537.6 R 2.5("C-W" unix-w)151.2
+549.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 561.6 R 2.5("C-[" vi-mo)
+151.2 573.6 R -.15(ve)-.15 G(ment-mode).15 E 2.5("C-_" undo)151.2 585.6
+R 3.333("")151.2 597.6 S(to "~")-.833 E(self-insert)5 E 2.5("C-?" backw)
+151.2 609.6 R(ard-delete-char)-.1 E(VI Command Mode functions)151.2
+626.4 Q 2.5("C-D" vi-eof-maybe)151.2 650.4 R 2.5
+("C-E" emacs-editing-mode)151.2 662.4 R 2.5("C-G" abort)151.2 674.4 R
+2.5("C-H" backw)151.2 686.4 R(ard-char)-.1 E 2.5("C-J" accept-line)151.2
+698.4 R 2.5("C-K" kill-line)151.2 710.4 R 2.5("C-L" clear)151.2 722.4 R
+(-screen)-.2 E(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(15)
+193.45 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-complete)
-151.2 84 R 2.5("?" vi-search)151.2 96 R 2.5("A" vi-append-eol)151.2 108
-R 2.5("B" vi-pre)151.2 120 R(v-w)-.25 E(ord)-.1 E 2.5("C" vi-change-to)
-151.2 132 R 2.5("D" vi-delete-to)151.2 144 R 2.5("E" vi-end-w)151.2 156
-R(ord)-.1 E 2.5("F" vi-char)151.2 168 R(-search)-.2 E 2.5
-("G" vi-fetch-history)151.2 180 R 2.5("I" vi-insert-be)151.2 192 R(g)
--.15 E 2.5("N" vi-search-ag)151.2 204 R(ain)-.05 E 2.5("P" vi-put)151.2
-216 R 2.5("R" vi-replace)151.2 228 R 2.5("S" vi-subst)151.2 240 R 2.5
-("T" vi-char)151.2 252 R(-search)-.2 E 2.5("U" re)151.2 264 R -.15(ve)
--.25 G(rt-line).15 E 2.5("W" vi-ne)151.2 276 R(xt-w)-.15 E(ord)-.1 E 2.5
-("X" backw)151.2 288 R(ard-delete-char)-.1 E 2.5("Y" vi-yank-to)151.2
-300 R 2.5("\\" vi-complete)151.2 312 R 2.5("^" vi-\214rst-print)151.2
-324 R 2.5("_" vi-yank-ar)151.2 336 R(g)-.18 E 2.5("`" vi-goto-mark)151.2
-348 R 2.5("a" vi-append-mode)151.2 360 R 2.5("b" vi-pre)151.2 372 R(v-w)
--.25 E(ord)-.1 E 2.5("c" vi-change-to)151.2 384 R 2.5("d" vi-delete-to)
-151.2 396 R 2.5("e" vi-end-w)151.2 408 R(ord)-.1 E 2.5("f" vi-char)151.2
-420 R(-search)-.2 E 2.5("h" backw)151.2 432 R(ard-char)-.1 E 2.5
-("i" vi-insertion-mode)151.2 444 R 2.5("j" ne)151.2 456 R(xt-history)
--.15 E 2.5("k" pre)151.2 468 R(v-history)-.25 E 2.5("l" forw)151.2 480 R
-(ard-char)-.1 E 2.5("m" vi-set-mark)151.2 492 R 2.5("n" vi-search-ag)
-151.2 504 R(ain)-.05 E 2.5("p" vi-put)151.2 516 R 2.5
-("r" vi-change-char)151.2 528 R 2.5("s" vi-subst)151.2 540 R 2.5
-("t" vi-char)151.2 552 R(-search)-.2 E 2.5("u" vi-undo)151.2 564 R 2.5
-("w" vi-ne)151.2 576 R(xt-w)-.15 E(ord)-.1 E 2.5("x" vi-delete)151.2 588
-R 2.5("y" vi-yank-to)151.2 600 R 2.5("|" vi-column)151.2 612 R 2.5
-("~" vi-change-case)151.2 624 R/F1 10.95/Times-Bold@0 SF(SEE ALSO)72
-640.8 Q/F2 10/Times-Italic@0 SF(The Gnu Readline Libr)108 652.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 664.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 676.8 Q F0(\(1\))A F1
-(FILES)72 693.6 Q F2(~/.inputr)109.666 705.6 Q(c)-.37 E F0(Indi)144
-717.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(GNU Readline 8.1)72 768 Q
-(2020 October 29)125.685 E(16)190.395 E 0 Cg EP
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("C-M" accept-line)
+151.2 84 R 2.5("C-N" ne)151.2 96 R(xt-history)-.15 E 2.5("C-P" pre)151.2
+108 R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 120 R 2.5
+("C-R" re)151.2 132 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
+("C-S" forw)151.2 144 R(ard-search-history)-.1 E 2.5
+("C-T" transpose-chars)151.2 156 R 2.5("C-U" unix-line-discard)151.2 168
+R 2.5("C-V" quoted-insert)151.2 180 R 2.5("C-W" unix-w)151.2 192 R
+(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 204 R 2.5("C-_" vi-undo)151.2 216
+R -4.166 3.333("" f)151.2 228 T(orw)-3.333 E(ard-char)-.1 E 2.5
+("#" insert-comment)151.2 240 R 2.5("$" end-of-line)151.2 252 R 2.5
+("%" vi-match)151.2 264 R 2.5("&" vi-tilde-e)151.2 276 R(xpand)-.15 E
+2.5("*" vi-complete)151.2 288 R 2.5("+" ne)151.2 300 R(xt-history)-.15 E
+2.5("," vi-char)151.2 312 R(-search)-.2 E 2.5("-" pre)151.2 324 R
+(vious-history)-.25 E 2.5("." vi-redo)151.2 336 R 2.5("/" vi-search)
+151.2 348 R 2.5("0" be)151.2 360 R(ginning-of-line)-.15 E("1" to "9")
+151.2 372 Q(vi-ar)5 E(g-digit)-.18 E 2.5(";" vi-char)151.2 384 R
+(-search)-.2 E 2.5("=" vi-complete)151.2 396 R 2.5("?" vi-search)151.2
+408 R 2.5("A" vi-append-eol)151.2 420 R 2.5("B" vi-pre)151.2 432 R(v-w)
+-.25 E(ord)-.1 E 2.5("C" vi-change-to)151.2 444 R 2.5("D" vi-delete-to)
+151.2 456 R 2.5("E" vi-end-w)151.2 468 R(ord)-.1 E 2.5("F" vi-char)151.2
+480 R(-search)-.2 E 2.5("G" vi-fetch-history)151.2 492 R 2.5
+("I" vi-insert-be)151.2 504 R(g)-.15 E 2.5("N" vi-search-ag)151.2 516 R
+(ain)-.05 E 2.5("P" vi-put)151.2 528 R 2.5("R" vi-replace)151.2 540 R
+2.5("S" vi-subst)151.2 552 R 2.5("T" vi-char)151.2 564 R(-search)-.2 E
+2.5("U" re)151.2 576 R -.15(ve)-.25 G(rt-line).15 E 2.5("W" vi-ne)151.2
+588 R(xt-w)-.15 E(ord)-.1 E 2.5("X" backw)151.2 600 R(ard-delete-char)
+-.1 E 2.5("Y" vi-yank-to)151.2 612 R 2.5("\\" vi-complete)151.2 624 R
+2.5("^" vi-\214rst-print)151.2 636 R 2.5("_" vi-yank-ar)151.2 648 R(g)
+-.18 E 2.5("`" vi-goto-mark)151.2 660 R 2.5("a" vi-append-mode)151.2 672
+R 2.5("b" vi-pre)151.2 684 R(v-w)-.25 E(ord)-.1 E 2.5("c" vi-change-to)
+151.2 696 R 2.5("d" vi-delete-to)151.2 708 R 2.5("e" vi-end-w)151.2 720
+R(ord)-.1 E(GNU Readline 8.2)72 768 Q(2022 March 11)128.74 E(16)193.45 E
+0 Cg EP
%%Page: 17 17
%%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.95/Times-Bold@0 SF
--.548(AU)72 84 S(THORS).548 E F0(Brian F)108 96 Q(ox, Free Softw)-.15 E
-(are F)-.1 E(oundation)-.15 E(bfox@gnu.or)108 108 Q(g)-.18 E(Chet Rame)
-108 124.8 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 136.8 Q
-(y@case.edu)-.15 E F1 -.11(BU)72 153.6 S 2.738(GR).11 G(EPOR)-2.738 E
-(TS)-.438 E F0 .691(If you \214nd a b)108 165.6 R .691(ug in)-.2 F/F2 10
-/Times-Bold@0 SF -.18(re)3.191 G(adline,).18 E F0 .691
+(Functions Manual)2.5 E(READLINE\(3\))119.855 E 2.5("f" vi-char)151.2 84
+R(-search)-.2 E 2.5("h" backw)151.2 96 R(ard-char)-.1 E 2.5
+("i" vi-insertion-mode)151.2 108 R 2.5("j" ne)151.2 120 R(xt-history)
+-.15 E 2.5("k" pre)151.2 132 R(v-history)-.25 E 2.5("l" forw)151.2 144 R
+(ard-char)-.1 E 2.5("m" vi-set-mark)151.2 156 R 2.5("n" vi-search-ag)
+151.2 168 R(ain)-.05 E 2.5("p" vi-put)151.2 180 R 2.5
+("r" vi-change-char)151.2 192 R 2.5("s" vi-subst)151.2 204 R 2.5
+("t" vi-char)151.2 216 R(-search)-.2 E 2.5("u" vi-undo)151.2 228 R 2.5
+("w" vi-ne)151.2 240 R(xt-w)-.15 E(ord)-.1 E 2.5("x" vi-delete)151.2 252
+R 2.5("y" vi-yank-to)151.2 264 R 2.5("|" vi-column)151.2 276 R 2.5
+("~" vi-change-case)151.2 288 R/F1 10.95/Times-Bold@0 SF(SEE ALSO)72
+304.8 Q/F2 10/Times-Italic@0 SF(The Gnu Readline Libr)108 316.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 328.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 340.8 Q F0(\(1\))A F1
+(FILES)72 357.6 Q F2(~/.inputr)109.666 369.6 Q(c)-.37 E F0(Indi)144
+381.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 398.4 S(THORS).548 E F0
+(Brian F)108 410.4 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
+(bfox@gnu.or)108 422.4 Q(g)-.18 E(Chet Rame)108 439.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 451.2 Q(y@case.edu)-.15 E F1 -.11(BU)72
+468 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .691(If you \214nd a b)
+108 480 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 177.6 Q(ersion of the)-.15 E F2
+(and that it appears in the latest v)108 492 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 194.4 R 1.004 -.15(ve d)-.2 H .704
+.15 E .704(Once you ha)108 508.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/F3 10/Times-Italic@0 SF -.2(bu)3.205 G
-(g\255r).2 E(eadline)-.37 E F0(@)A F3(gnu.or)A(g)-.37 E F0 5.705(.I)C
-3.205(fy)-5.705 G(ou)-3.205 E(ha)108 206.4 Q 1.81 -.15(ve a \214)-.2 H
-1.51(x, you are welcome to mail that as well!).15 F 1.509
+-.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 520.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 218.4 Q F3 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F3
-(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 235.2 Q
-(ug reports concerning this manual page should be directed to)-.2 E F3
+(mailed to)108 532.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 549.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
-F1 -.11(BU)72 252 S(GS).11 E F0(It')108 264 Q 2.5(st)-.55 G
-(oo big and too slo)-2.5 E -.65(w.)-.25 G(GNU Readline 8.1)72 768 Q
-(2020 October 29)125.685 E(17)190.395 E 0 Cg EP
+F1 -.11(BU)72 566.4 S(GS).11 E F0(It')108 578.4 Q 2.5(st)-.55 G
+(oo big and too slo)-2.5 E -.65(w.)-.25 G(GNU Readline 8.2)72 768 Q
+(2022 March 11)128.74 E(17)193.45 E 0 Cg EP
%%Trailer
end
%%EOF
diff --git a/doc/rlman.texi b/doc/rlman.texi
index ec7487b..d046b87 100644
--- a/doc/rlman.texi
+++ b/doc/rlman.texi
@@ -13,7 +13,7 @@ This manual describes the GNU Readline Library
consistency of user interface across discrete programs which provide
a command line interface.
-Copyright @copyright{} 1988--2020 Free Software Foundation, Inc.
+Copyright @copyright{} 1988--2022 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
diff --git a/doc/rltech.texi b/doc/rltech.texi
index 8c4814e..6f7ffb9 100644
--- a/doc/rltech.texi
+++ b/doc/rltech.texi
@@ -7,7 +7,7 @@ This document describes the GNU Readline Library, a utility for aiding
in the consistency of user interface across discrete programs that need
to provide a command line interface.
-Copyright (C) 1988--2020 Free Software Foundation, Inc.
+Copyright (C) 1988--2022 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -323,6 +323,14 @@ and point define a @emph{region}.
@deftypevar int rl_done
Setting this to a non-zero value causes Readline to return the current
line immediately.
+Readline will set this variable when it has read a key sequence bound
+to @code{accept-line} and is about to return the line to the caller.
+@end deftypevar
+
+@deftypevar int rl_eof_found
+Readline will set this variable when it has read an EOF character (e.g., the
+stty @samp{EOF} character) on an empty line or encountered a read error and
+is about to return a NULL line to the caller.
@end deftypevar
@deftypevar int rl_num_chars_to_read
@@ -597,6 +605,9 @@ and is about to return the line to the caller.
Readline has timed out (it did not receive a line or specified number of
characters before the timeout duration specified by @code{rl_set_timeout}
elapsed) and is returning that status to the caller.
+@item RL_STATE_EOF
+Readline has read an EOF character (e.g., the stty @samp{EOF} character)
+or encountered a read error and is about to return a NULL line to the caller.
@end table
@end deftypevar
@@ -1184,10 +1195,13 @@ Returns 0 if the timeout is set successfully.
@deftypefun int rl_timeout_remaining (unsigned int *secs, unsigned int *usecs)
Return the number of seconds and microseconds remaining in the current
-timeout duration in @code{*secs} and @code{*usecs}, respectively.
-Returns -1 on error or when there is no timeout set, 0 when the timeout has
-expired (leaving @code{*secs} and @code{*usecs} unchanged), and 1 if the
-timeout has not expired. If @code{secs} and @code{usecs} are @code{NULL},
+timeout duration in @var{*secs} and @var{*usecs}, respectively.
+Both @var{*secs} and @var{*usecs} must be non-NULL to return any values.
+The return value is -1 on error or when there is no timeout set,
+0 when the timeout has expired (leaving @var{*secs} and @var{*usecs}
+unchanged),
+and 1 if the timeout has not expired.
+If either of @var{secs} and @var{usecs} is @code{NULL},
the return value indicates whether the timeout has expired.
@end deftypefun
diff --git a/doc/rluser.texi b/doc/rluser.texi
index 505225b..0921d24 100644
--- a/doc/rluser.texi
+++ b/doc/rluser.texi
@@ -9,7 +9,7 @@ use these features. There is a document entitled "readline.texinfo"
which contains both end-user and programmer documentation for the
GNU Readline Library.
-Copyright (C) 1988--2020 Free Software Foundation, Inc.
+Copyright (C) 1988--2022 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
@@ -419,6 +419,32 @@ variables.
@cindex variables, readline
@table @code
+@item active-region-start-color
+@vindex active-region-start-color
+A string variable that controls the text color and background when displaying
+the text in the active region (see the description of
+@code{enable-active-region} below).
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal before displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that puts the terminal in standout mode,
+as obtained from the terminal's terminfo description.
+A sample value might be @samp{\e[01;33m}.
+
+@item active-region-end-color
+@vindex active-region-end-color
+A string variable that "undoes" the effects of @code{active-region-start-color}
+and restores "normal" terminal display appearance after displaying text
+in the active region.
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal after displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that restores the terminal from standout mode,
+as obtained from the terminal's terminfo description.
+A sample value might be @samp{\e[0m}.
+
@item bell-style
@vindex bell-style
Controls what happens when Readline wants to ring the terminal bell.
@@ -553,6 +579,8 @@ The text between the point and mark is referred to as the @dfn{region}.
When this variable is set to @samp{On}, Readline allows certain commands
to designate the region as @dfn{active}.
When the region is active, Readline highlights the text in the region using
+the value of the @code{active-region-start-color}, which defaults to the
+string that enables
the terminal's standout mode.
The active region shows the text inserted by bracketed-paste and any
matching text found by incremental and non-incremental history searches.
@@ -560,11 +588,13 @@ 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{On}.
+When set to @samp{On}, Readline configures the terminal 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 is called putting the terminal into @dfn{bracketed paste mode};
+it prevents Readline from executing any editing commands bound to key
+sequences appearing in the pasted text.
+The default is @samp{On}.
@item enable-keypad
@vindex enable-keypad
diff --git a/doc/rluserman.dvi b/doc/rluserman.dvi
index 4c0b142..2664534 100644
--- a/doc/rluserman.dvi
+++ b/doc/rluserman.dvi
Binary files differ
diff --git a/doc/rluserman.html b/doc/rluserman.html
index ab522ac..1323303 100644
--- a/doc/rluserman.html
+++ b/doc/rluserman.html
@@ -1,1270 +1,1228 @@
-<HTML>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on October, 30 2020 by texi2html 1.64 -->
-<!--
-Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
- Karl Berry <karl@freefriends.org>
- Olaf Bachmann <obachman@mathematik.uni-kl.de>
- and many others.
-Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
-
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Created by GNU Texinfo 6.8, https://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<!-- This manual describes the end user interface of the GNU Readline Library
+(version 8.2, 11 March 2022), a library which aids in the
+consistency of user interface across discrete programs which provide
+a command line interface.
+
+Copyright (C) 1988-2022 Free Software Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+"GNU Free Documentation License".
+ -->
+<title>GNU Readline Library</title>
+
+<meta name="description" content="GNU Readline Library">
+<meta name="keywords" content="GNU Readline Library">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="#Top" rel="start" title="Top">
+<link href="#SEC_Contents" rel="contents" title="Table of Contents">
+<link href="#Command-Line-Editing" rel="next" title="Command Line Editing">
+<style type="text/css">
+<!--
+a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em}
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+span:hover a.copiable-anchor {visibility: visible}
+ul.no-bullet {list-style: none}
-->
-<HEAD>
-<TITLE>GNU Readline Library: </TITLE>
+</style>
-<META NAME="description" CONTENT="GNU Readline Library: ">
-<META NAME="keywords" CONTENT="GNU Readline Library: ">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="texi2html 1.64">
-</HEAD>
+</head>
-<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
+<body lang="en">
+<h1 class="settitle" align="center">GNU Readline Library</h1>
-<A NAME="SEC_Top"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>GNU Readline Library</H1></P><P>
-This document describes the end user interface of the GNU Readline Library,
+
+
+
+
+
+
+
+<div class="top" id="Top">
+<div class="header">
+<p>
+Next: <a href="#Command-Line-Editing" accesskey="n" rel="next">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="GNU-Readline-Library"></span><h1 class="top">GNU Readline Library</h1>
+
+<p>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 <A HREF="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</A>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC1">1. Command Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline User's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<HR SIZE=1>
-<A NAME="SEC1"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC2"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<A NAME="Command Line Editing"></A>
-<H1> 1. Command Line Editing </H1>
-<!--docid::SEC1::-->
-<P>
-
-This chapter describes the basic features of the GNU
+The Readline home page is <a href="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</a>.
+</p>
+
+
+
+
+
+<div class="Contents_element" id="SEC_Contents">
+<h2 class="contents-heading">Table of Contents</h2>
+
+<div class="contents">
+
+<ul class="no-bullet">
+ <li><a id="toc-Command-Line-Editing-1" href="#Command-Line-Editing">1 Command Line Editing</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Introduction-to-Line-Editing" href="#Introduction-and-Notation">1.1 Introduction to Line Editing</a></li>
+ <li><a id="toc-Readline-Interaction-1" href="#Readline-Interaction">1.2 Readline Interaction</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Readline-Bare-Essentials-1" href="#Readline-Bare-Essentials">1.2.1 Readline Bare Essentials</a></li>
+ <li><a id="toc-Readline-Movement-Commands-1" href="#Readline-Movement-Commands">1.2.2 Readline Movement Commands</a></li>
+ <li><a id="toc-Readline-Killing-Commands-1" href="#Readline-Killing-Commands">1.2.3 Readline Killing Commands</a></li>
+ <li><a id="toc-Readline-Arguments-1" href="#Readline-Arguments">1.2.4 Readline Arguments</a></li>
+ <li><a id="toc-Searching-for-Commands-in-the-History" href="#Searching">1.2.5 Searching for Commands in the History</a></li>
+ </ul></li>
+ <li><a id="toc-Readline-Init-File-1" href="#Readline-Init-File">1.3 Readline Init File</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Readline-Init-File-Syntax-1" href="#Readline-Init-File-Syntax">1.3.1 Readline Init File Syntax</a></li>
+ <li><a id="toc-Conditional-Init-Constructs-1" href="#Conditional-Init-Constructs">1.3.2 Conditional Init Constructs</a></li>
+ <li><a id="toc-Sample-Init-File-1" href="#Sample-Init-File">1.3.3 Sample Init File</a></li>
+ </ul></li>
+ <li><a id="toc-Bindable-Readline-Commands-1" href="#Bindable-Readline-Commands">1.4 Bindable Readline Commands</a>
+ <ul class="no-bullet">
+ <li><a id="toc-Commands-For-Moving-1" href="#Commands-For-Moving">1.4.1 Commands For Moving</a></li>
+ <li><a id="toc-Commands-For-Manipulating-The-History" href="#Commands-For-History">1.4.2 Commands For Manipulating The History</a></li>
+ <li><a id="toc-Commands-For-Changing-Text" href="#Commands-For-Text">1.4.3 Commands For Changing Text</a></li>
+ <li><a id="toc-Killing-And-Yanking" href="#Commands-For-Killing">1.4.4 Killing And Yanking</a></li>
+ <li><a id="toc-Specifying-Numeric-Arguments" href="#Numeric-Arguments">1.4.5 Specifying Numeric Arguments</a></li>
+ <li><a id="toc-Letting-Readline-Type-For-You" href="#Commands-For-Completion">1.4.6 Letting Readline Type For You</a></li>
+ <li><a id="toc-Keyboard-Macros-1" href="#Keyboard-Macros">1.4.7 Keyboard Macros</a></li>
+ <li><a id="toc-Some-Miscellaneous-Commands" href="#Miscellaneous-Commands">1.4.8 Some Miscellaneous Commands</a></li>
+ </ul></li>
+ <li><a id="toc-Readline-vi-Mode-1" href="#Readline-vi-Mode">1.5 Readline vi Mode</a></li>
+ </ul></li>
+ <li><a id="toc-GNU-Free-Documentation-License-1" href="#GNU-Free-Documentation-License">Appendix A GNU Free Documentation License</a></li>
+</ul>
+</div>
+</div>
+<hr>
+<div class="chapter" id="Command-Line-Editing">
+<div class="header">
+<p>
+Next: <a href="#GNU-Free-Documentation-License" accesskey="n" rel="next">GNU Free Documentation License</a>, Previous: <a href="#Top" accesskey="p" rel="prev">GNU Readline Library</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Command-Line-Editing-1"></span><h2 class="chapter">1 Command Line Editing</h2>
+
+<p>This chapter describes the basic features of the <small>GNU</small>
command line editing interface.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC2">1.1 Introduction to Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Notation used in this text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC3">1.2 Readline Interaction</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The minimum set of commands for editing a line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC9">1.3 Readline Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Customizing Readline from a user's view.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC13">1.4 Bindable Readline Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A description of most of the Readline commands
- available for binding</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC22">1.5 Readline vi Mode</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A short description of how to make Readline
- behave like the vi editor.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Introduction and Notation"></A>
-<HR SIZE="6">
-<A NAME="SEC2"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.1 Introduction to Line Editing </H2>
-<!--docid::SEC2::-->
-<P>
-
-The following paragraphs describe the notation used to represent
+</p>
+
+<ul class="section-toc">
+<li><a href="#Introduction-and-Notation" accesskey="1">Introduction to Line Editing</a></li>
+<li><a href="#Readline-Interaction" accesskey="2">Readline Interaction</a></li>
+<li><a href="#Readline-Init-File" accesskey="3">Readline Init File</a></li>
+<li><a href="#Bindable-Readline-Commands" accesskey="4">Bindable Readline Commands</a></li>
+<li><a href="#Readline-vi-Mode" accesskey="5">Readline vi Mode</a></li>
+</ul>
+<hr>
+<div class="section" id="Introduction-and-Notation">
+<div class="header">
+<p>
+Next: <a href="#Readline-Interaction" accesskey="n" rel="next">Readline Interaction</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Introduction-to-Line-Editing"></span><h3 class="section">1.1 Introduction to Line Editing</h3>
+
+<p>The following paragraphs describe the notation used to represent
keystrokes.
-</P><P>
-
-The text <KBD>C-k</KBD> is read as `Control-K' and describes the character
-produced when the <KBD>k</KBD> key is pressed while the Control key
+</p>
+<p>The text <kbd>C-k</kbd> is read as &lsquo;Control-K&rsquo; and describes the character
+produced when the <tt class="key">k</tt> key is pressed while the Control key
is depressed.
-</P><P>
-
-The text <KBD>M-k</KBD> is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the <KBD>k</KBD>
+</p>
+<p>The text <kbd>M-k</kbd> is read as &lsquo;Meta-K&rsquo; and describes the character
+produced when the Meta key (if you have one) is depressed, and the <tt class="key">k</tt>
key is pressed.
-The Meta key is labeled <KBD>ALT</KBD> on many keyboards.
-On keyboards with two keys labeled <KBD>ALT</KBD> (usually to either side of
-the space bar), the <KBD>ALT</KBD> on the left side is generally set to
+The Meta key is labeled <tt class="key">ALT</tt> on many keyboards.
+On keyboards with two keys labeled <tt class="key">ALT</tt> (usually to either side of
+the space bar), the <tt class="key">ALT</tt> on the left side is generally set to
work as a Meta key.
-The <KBD>ALT</KBD> key on the right may also be configured to work as a
+The <tt class="key">ALT</tt> key on the right may also be configured to work as a
Meta key or may be configured as some other modifier, such as a
Compose key for typing accented characters.
-</P><P>
-
-If you do not have a Meta or <KBD>ALT</KBD> key, or another key working as
-a Meta key, the identical keystroke can be generated by typing <KBD>ESC</KBD>
-<EM>first</EM>, and then typing <KBD>k</KBD>.
-Either process is known as <EM>metafying</EM> the <KBD>k</KBD> key.
-</P><P>
-
-The text <KBD>M-C-k</KBD> is read as `Meta-Control-k' and describes the
-character produced by <EM>metafying</EM> <KBD>C-k</KBD>.
-</P><P>
-
-In addition, several keys have their own names. Specifically,
-<KBD>DEL</KBD>, <KBD>ESC</KBD>, <KBD>LFD</KBD>, <KBD>SPC</KBD>, <KBD>RET</KBD>, and <KBD>TAB</KBD> all
+</p>
+<p>If you do not have a Meta or <tt class="key">ALT</tt> key, or another key working as
+a Meta key, the identical keystroke can be generated by typing <tt class="key">ESC</tt>
+<em>first</em>, and then typing <tt class="key">k</tt>.
+Either process is known as <em>metafying</em> the <tt class="key">k</tt> key.
+</p>
+<p>The text <kbd>M-C-k</kbd> is read as &lsquo;Meta-Control-k&rsquo; and describes the
+character produced by <em>metafying</em> <kbd>C-k</kbd>.
+</p>
+<p>In addition, several keys have their own names. Specifically,
+<tt class="key">DEL</tt>, <tt class="key">ESC</tt>, <tt class="key">LFD</tt>, <tt class="key">SPC</tt>, <tt class="key">RET</tt>, and <tt class="key">TAB</tt> all
stand for themselves when seen in this text, or in an init file
-(see section <A HREF="rluserman.html#SEC9">1.3 Readline Init File</A>).
-If your keyboard lacks a <KBD>LFD</KBD> key, typing <KBD>C-j</KBD> will
+(see <a href="#Readline-Init-File">Readline Init File</a>).
+If your keyboard lacks a <tt class="key">LFD</tt> key, typing <tt class="key">C-j</tt> will
produce the desired character.
-The <KBD>RET</KBD> key may be labeled <KBD>Return</KBD> or <KBD>Enter</KBD> on
+The <tt class="key">RET</tt> key may be labeled <tt class="key">Return</tt> or <tt class="key">Enter</tt> on
some keyboards.
-</P><P>
-
-<A NAME="Readline Interaction"></A>
-<HR SIZE="6">
-<A NAME="SEC3"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC2"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC4"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.2 Readline Interaction </H2>
-<!--docid::SEC3::-->
-<P>
-
-Often during an interactive session you type in a long line of text,
+</p>
+<hr>
+</div>
+<div class="section" id="Readline-Interaction">
+<div class="header">
+<p>
+Next: <a href="#Readline-Init-File" accesskey="n" rel="next">Readline Init File</a>, Previous: <a href="#Introduction-and-Notation" accesskey="p" rel="prev">Introduction to Line Editing</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Interaction-1"></span><h3 class="section">1.2 Readline Interaction</h3>
+<span id="index-interaction_002c-readline"></span>
+
+<p>Often during an interactive session you type in a long line of text,
only to notice that the first word on the line is misspelled. The
Readline library gives you a set of commands for manipulating the text
as you type it in, allowing you to just fix your typo, and not forcing
you to retype the majority of the line. Using these editing commands,
you move the cursor to the place that needs correction, and delete or
insert the text of the corrections. Then, when you are satisfied with
-the line, you simply press <KBD>RET</KBD>. You do not have to be at the
-end of the line to press <KBD>RET</KBD>; the entire line is accepted
+the line, you simply press <tt class="key">RET</tt>. You do not have to be at the
+end of the line to press <tt class="key">RET</tt>; the entire line is accepted
regardless of the location of the cursor within the line.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC4">1.2.1 Readline Bare Essentials</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The least you need to know about Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC5">1.2.2 Readline Movement Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the input line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC6">1.2.3 Readline Killing Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to delete text, and how to get it back!</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC7">1.2.4 Readline Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Giving numeric arguments to commands.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Searching through previous lines.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Bare Essentials"></A>
-<HR SIZE="6">
-<A NAME="SEC4"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC5"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.1 Readline Bare Essentials </H3>
-<!--docid::SEC4::-->
-<P>
-
-In order to enter characters into the line, simply type them. The typed
+</p>
+
+<ul class="section-toc">
+<li><a href="#Readline-Bare-Essentials" accesskey="1">Readline Bare Essentials</a></li>
+<li><a href="#Readline-Movement-Commands" accesskey="2">Readline Movement Commands</a></li>
+<li><a href="#Readline-Killing-Commands" accesskey="3">Readline Killing Commands</a></li>
+<li><a href="#Readline-Arguments" accesskey="4">Readline Arguments</a></li>
+<li><a href="#Searching" accesskey="5">Searching for Commands in the History</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Readline-Bare-Essentials">
+<div class="header">
+<p>
+Next: <a href="#Readline-Movement-Commands" accesskey="n" rel="next">Readline Movement Commands</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Bare-Essentials-1"></span><h4 class="subsection">1.2.1 Readline Bare Essentials</h4>
+<span id="index-notation_002c-readline"></span>
+<span id="index-command-editing"></span>
+<span id="index-editing-command-lines"></span>
+
+<p>In order to enter characters into the line, simply type them. The typed
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.
-</P><P>
-
-Sometimes you may mistype a character, and
+</p>
+<p>Sometimes you may mistype a character, and
not notice the error until you have typed several other characters. In
-that case, you can type <KBD>C-b</KBD> to move the cursor to the left, and then
+that case, you can type <kbd>C-b</kbd> to move the cursor to the left, and then
correct your mistake. Afterwards, you can move the cursor to the right
-with <KBD>C-f</KBD>.
-</P><P>
-
-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
+with <kbd>C-f</kbd>.
+</p>
+<p>When you add text in the middle of a line, you will notice that characters
+to the right of the cursor are &lsquo;pushed over&rsquo; 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
+characters to the right of the cursor are &lsquo;pulled back&rsquo; 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.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-b</KBD>
-<DD>Move back one character.
-<DT><KBD>C-f</KBD>
-<DD>Move forward one character.
-<DT><KBD>DEL</KBD> or <KBD>Backspace</KBD>
-<DD>Delete the character to the left of the cursor.
-<DT><KBD>C-d</KBD>
-<DD>Delete the character underneath the cursor.
-<DT>Printing characters
-<DD>Insert the character into the line at the cursor.
-<DT><KBD>C-_</KBD> or <KBD>C-x C-u</KBD>
-<DD>Undo the last editing command. You can undo all the way back to an
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-b</kbd></span></dt>
+<dd><p>Move back one character.
+</p></dd>
+<dt><span><kbd>C-f</kbd></span></dt>
+<dd><p>Move forward one character.
+</p></dd>
+<dt><span><tt class="key">DEL</tt> or <tt class="key">Backspace</tt></span></dt>
+<dd><p>Delete the character to the left of the cursor.
+</p></dd>
+<dt><span><kbd>C-d</kbd></span></dt>
+<dd><p>Delete the character underneath the cursor.
+</p></dd>
+<dt><span>Printing&nbsp;characters<!-- /@w --></span></dt>
+<dd><p>Insert the character into the line at the cursor.
+</p></dd>
+<dt><span><kbd>C-_</kbd> or <kbd>C-x C-u</kbd></span></dt>
+<dd><p>Undo the last editing command. You can undo all the way back to an
empty line.
-</DL>
-<P>
+</p></dd>
+</dl>
-(Depending on your configuration, the <KBD>Backspace</KBD> key be set to
-delete the character to the left of the cursor and the <KBD>DEL</KBD> key set
-to delete the character underneath the cursor, like <KBD>C-d</KBD>, rather
+<p>(Depending on your configuration, the <tt class="key">Backspace</tt> key be set to
+delete the character to the left of the cursor and the <tt class="key">DEL</tt> key set
+to delete the character underneath the cursor, like <kbd>C-d</kbd>, rather
than the character to the left of the cursor.)
-</P><P>
-
-<A NAME="Readline Movement Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC5"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC4"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.2 Readline Movement Commands </H3>
-<!--docid::SEC5::-->
-<P>
-
-The above table describes the most basic keystrokes that you need
+</p>
+<hr>
+</div>
+<div class="subsection" id="Readline-Movement-Commands">
+<div class="header">
+<p>
+Next: <a href="#Readline-Killing-Commands" accesskey="n" rel="next">Readline Killing Commands</a>, Previous: <a href="#Readline-Bare-Essentials" accesskey="p" rel="prev">Readline Bare Essentials</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Movement-Commands-1"></span><h4 class="subsection">1.2.2 Readline Movement Commands</h4>
+
+
+<p>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 <KBD>C-b</KBD>, <KBD>C-f</KBD>,
-<KBD>C-d</KBD>, and <KBD>DEL</KBD>. Here are some commands for moving more rapidly
+other commands have been added in addition to <kbd>C-b</kbd>, <kbd>C-f</kbd>,
+<kbd>C-d</kbd>, and <tt class="key">DEL</tt>. Here are some commands for moving more rapidly
about the line.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-a</KBD>
-<DD>Move to the start of the line.
-<DT><KBD>C-e</KBD>
-<DD>Move to the end of the line.
-<DT><KBD>M-f</KBD>
-<DD>Move forward a word, where a word is composed of letters and digits.
-<DT><KBD>M-b</KBD>
-<DD>Move backward a word.
-<DT><KBD>C-l</KBD>
-<DD>Clear the screen, reprinting the current line at the top.
-</DL>
-<P>
-
-Notice how <KBD>C-f</KBD> moves forward a character, while <KBD>M-f</KBD> moves
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-a</kbd></span></dt>
+<dd><p>Move to the start of the line.
+</p></dd>
+<dt><span><kbd>C-e</kbd></span></dt>
+<dd><p>Move to the end of the line.
+</p></dd>
+<dt><span><kbd>M-f</kbd></span></dt>
+<dd><p>Move forward a word, where a word is composed of letters and digits.
+</p></dd>
+<dt><span><kbd>M-b</kbd></span></dt>
+<dd><p>Move backward a word.
+</p></dd>
+<dt><span><kbd>C-l</kbd></span></dt>
+<dd><p>Clear the screen, reprinting the current line at the top.
+</p></dd>
+</dl>
+
+<p>Notice how <kbd>C-f</kbd> moves forward a character, while <kbd>M-f</kbd> moves
forward a word. It is a loose convention that control keystrokes
operate on characters while meta keystrokes operate on words.
-</P><P>
-
-<A NAME="Readline Killing Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC6"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC5"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.3 Readline Killing Commands </H3>
-<!--docid::SEC6::-->
-<P>
-
-<A NAME="IDX1"></A>
-<A NAME="IDX2"></A>
-</P><P>
-
-<EM>Killing</EM> text means to delete the text from the line, but to save
-it away for later use, usually by <EM>yanking</EM> (re-inserting)
+</p>
+<hr>
+</div>
+<div class="subsection" id="Readline-Killing-Commands">
+<div class="header">
+<p>
+Next: <a href="#Readline-Arguments" accesskey="n" rel="next">Readline Arguments</a>, Previous: <a href="#Readline-Movement-Commands" accesskey="p" rel="prev">Readline Movement Commands</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Killing-Commands-1"></span><h4 class="subsection">1.2.3 Readline Killing Commands</h4>
+
+<span id="index-killing-text"></span>
+<span id="index-yanking-text"></span>
+
+<p><em>Killing</em> text means to delete the text from the line, but to save
+it away for later use, usually by <em>yanking</em> (re-inserting)
it back into the line.
-(`Cut' and `paste' are more recent jargon for `kill' and `yank'.)
-</P><P>
-
-If the description for a command says that it `kills' text, then you can
+(&lsquo;Cut&rsquo; and &lsquo;paste&rsquo; are more recent jargon for &lsquo;kill&rsquo; and &lsquo;yank&rsquo;.)
+</p>
+<p>If the description for a command says that it &lsquo;kills&rsquo; text, then you can
be sure that you can get the text back in a different (or the same)
place later.
-</P><P>
-
-When you use a kill command, the text is saved in a <EM>kill-ring</EM>.
+</p>
+<p>When you use a kill command, the text is saved in a <em>kill-ring</em>.
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.
-<A NAME="IDX3"></A>
-</P><P>
-
-Here is the list of commands for killing text.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-k</KBD>
-<DD>Kill the text from the current cursor position to the end of the line.
-<P>
-
-<DT><KBD>M-d</KBD>
-<DD>Kill from the cursor to the end of the current word, or, if between
+<span id="index-kill-ring"></span>
+</p>
+<p>Here is the list of commands for killing text.
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-k</kbd></span></dt>
+<dd><p>Kill the text from the current cursor position to the end of the line.
+</p>
+</dd>
+<dt><span><kbd>M-d</kbd></span></dt>
+<dd><p>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 <KBD>M-f</KBD>.
-<P>
-
-<DT><KBD>M-<KBD>DEL</KBD></KBD>
-<DD>Kill from the cursor the start of the current word, or, if between
+Word boundaries are the same as those used by <kbd>M-f</kbd>.
+</p>
+</dd>
+<dt><span><kbd>M-<span class="key">DEL</span></kbd></span></dt>
+<dd><p>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 <KBD>M-b</KBD>.
-<P>
-
-<DT><KBD>C-w</KBD>
-<DD>Kill from the cursor to the previous whitespace. This is different than
-<KBD>M-<KBD>DEL</KBD></KBD> because the word boundaries differ.
-<P>
-
-</DL>
-<P>
-
-Here is how to <EM>yank</EM> the text back into the line. Yanking
+Word boundaries are the same as those used by <kbd>M-b</kbd>.
+</p>
+</dd>
+<dt><span><kbd>C-w</kbd></span></dt>
+<dd><p>Kill from the cursor to the previous whitespace. This is different than
+<kbd>M-<span class="key">DEL</span></kbd> because the word boundaries differ.
+</p>
+</dd>
+</dl>
+
+<p>Here is how to <em>yank</em> the text back into the line. Yanking
means to copy the most-recently-killed text from the kill buffer.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-y</KBD>
-<DD>Yank the most recently killed text back into the buffer at the cursor.
-<P>
-
-<DT><KBD>M-y</KBD>
-<DD>Rotate the kill-ring, and yank the new top. You can only do this if
-the prior command is <KBD>C-y</KBD> or <KBD>M-y</KBD>.
-</DL>
-<P>
-
-<A NAME="Readline Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC7"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.4 Readline Arguments </H3>
-<!--docid::SEC7::-->
-<P>
-
-You can pass numeric arguments to Readline commands. Sometimes the
-argument acts as a repeat count, other times it is the <I>sign</I> of the
+</p>
+<dl compact="compact">
+<dt><span><kbd>C-y</kbd></span></dt>
+<dd><p>Yank the most recently killed text back into the buffer at the cursor.
+</p>
+</dd>
+<dt><span><kbd>M-y</kbd></span></dt>
+<dd><p>Rotate the kill-ring, and yank the new top. You can only do this if
+the prior command is <kbd>C-y</kbd> or <kbd>M-y</kbd>.
+</p></dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Readline-Arguments">
+<div class="header">
+<p>
+Next: <a href="#Searching" accesskey="n" rel="next">Searching for Commands in the History</a>, Previous: <a href="#Readline-Killing-Commands" accesskey="p" rel="prev">Readline Killing Commands</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Arguments-1"></span><h4 class="subsection">1.2.4 Readline Arguments</h4>
+
+<p>You can pass numeric arguments to Readline commands. Sometimes the
+argument acts as a repeat count, other times it is the <i>sign</i> 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 <SAMP>`M-- C-k'</SAMP>.
-</P><P>
-
-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 (<SAMP>`-'</SAMP>), then the sign of the argument will be negative. Once
+start of the line, you might type &lsquo;<samp>M-- C-k</samp>&rsquo;.
+</p>
+<p>The general way to pass numeric arguments to a command is to type meta
+digits before the command. If the first &lsquo;digit&rsquo; typed is a minus
+sign (&lsquo;<samp>-</samp>&rsquo;), 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 <KBD>C-d</KBD> command an argument of 10, you could type <SAMP>`M-1 0 C-d'</SAMP>,
+the <kbd>C-d</kbd> command an argument of 10, you could type &lsquo;<samp>M-1 0 C-d</samp>&rsquo;,
which will delete the next ten characters on the input line.
-</P><P>
-
-<A NAME="Searching"></A>
-<HR SIZE="6">
-<A NAME="SEC8"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.5 Searching for Commands in the History </H3>
-<!--docid::SEC8::-->
-<P>
-
-Readline provides commands for searching through the command history
+</p>
+<hr>
+</div>
+<div class="subsection" id="Searching">
+<div class="header">
+<p>
+Previous: <a href="#Readline-Arguments" accesskey="p" rel="prev">Readline Arguments</a>, Up: <a href="#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Searching-for-Commands-in-the-History"></span><h4 class="subsection">1.2.5 Searching for Commands in the History</h4>
+
+<p>Readline provides commands for searching through the command history
for lines containing a specified string.
-There are two search modes: <EM>incremental</EM> and <EM>non-incremental</EM>.
-</P><P>
-
-Incremental searches begin before the user has finished typing the
+There are two search modes: <em>incremental</em> and <em>non-incremental</em>.
+</p>
+<p>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
-<KBD>C-r</KBD>. Typing <KBD>C-s</KBD> searches forward through the history.
-The characters present in the value of the <CODE>isearch-terminators</CODE> variable
+<kbd>C-r</kbd>. Typing <kbd>C-s</kbd> searches forward through the history.
+The characters present in the value of the <code>isearch-terminators</code> variable
are used to terminate an incremental search.
-If that variable has not been assigned a value, the <KBD>ESC</KBD> and
-<KBD>C-J</KBD> characters will terminate an incremental search.
-<KBD>C-g</KBD> will abort an incremental search and restore the original line.
+If that variable has not been assigned a value, the <tt class="key">ESC</tt> and
+<kbd>C-J</kbd> characters will terminate an incremental search.
+<kbd>C-g</kbd> 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.
-</P><P>
-
-To find other matching entries in the history list, type <KBD>C-r</KBD> or
-<KBD>C-s</KBD> as appropriate.
+</p>
+<p>To find other matching entries in the history list, type <kbd>C-r</kbd> or
+<kbd>C-s</kbd> 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 <KBD>RET</KBD> will terminate the search and accept
+For instance, a <tt class="key">RET</tt> 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.
-</P><P>
-
-Readline remembers the last incremental search string. If two
-<KBD>C-r</KBD>s are typed without any intervening characters defining a new
+</p>
+<p>Readline remembers the last incremental search string. If two
+<kbd>C-r</kbd>s are typed without any intervening characters defining a new
search string, any remembered search string is used.
-</P><P>
-
-Non-incremental searches read the entire search string before starting
+</p>
+<p>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.
-</P><P>
-
-<A NAME="Readline Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC9"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC10"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.3 Readline Init File </H2>
-<!--docid::SEC9::-->
-<P>
-
-Although the Readline library comes with a set of Emacs-like
+</p>
+<hr>
+</div>
+</div>
+<div class="section" id="Readline-Init-File">
+<div class="header">
+<p>
+Next: <a href="#Bindable-Readline-Commands" accesskey="n" rel="next">Bindable Readline Commands</a>, Previous: <a href="#Readline-Interaction" accesskey="p" rel="prev">Readline Interaction</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Init-File-1"></span><h3 class="section">1.3 Readline Init File</h3>
+<span id="index-initialization-file_002c-readline"></span>
+
+<p>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 <EM>inputrc</EM> file, conventionally in his home directory.
+commands in an <em>inputrc</em> file,
+conventionally in their home directory.
The name of this
-file is taken from the value of the environment variable <CODE>INPUTRC</CODE>. If
-that variable is unset, the default is <TT>`~/.inputrc'</TT>. If that
+file is taken from the value of the environment variable <code>INPUTRC</code>. If
+that variable is unset, the default is <samp>~/.inputrc</samp>. If that
file does not exist or cannot be read, the ultimate default is
-<TT>`/etc/inputrc'</TT>.
-</P><P>
-
-When a program which uses the Readline library starts up, the
+<samp>/etc/inputrc</samp>.
+</p>
+<p>When a program which uses the Readline library starts up, the
init file is read, and the key bindings are set.
-</P><P>
-
-In addition, the <CODE>C-x C-r</CODE> command re-reads this init file, thus
+</p>
+<p>In addition, the <code>C-x C-r</code> command re-reads this init file, thus
incorporating any changes that you might have made to it.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Syntax for the commands in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Conditional key bindings in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC12">1.3.3 Sample Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example inputrc file.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Init File Syntax"></A>
-<HR SIZE="6">
-<A NAME="SEC10"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC11"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.1 Readline Init File Syntax </H3>
-<!--docid::SEC10::-->
-<P>
-
-There are only a few basic constructs allowed in the
+</p>
+
+<ul class="section-toc">
+<li><a href="#Readline-Init-File-Syntax" accesskey="1">Readline Init File Syntax</a></li>
+<li><a href="#Conditional-Init-Constructs" accesskey="2">Conditional Init Constructs</a></li>
+<li><a href="#Sample-Init-File" accesskey="3">Sample Init File</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Readline-Init-File-Syntax">
+<div class="header">
+<p>
+Next: <a href="#Conditional-Init-Constructs" accesskey="n" rel="next">Conditional Init Constructs</a>, Up: <a href="#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-Init-File-Syntax-1"></span><h4 class="subsection">1.3.1 Readline Init File Syntax</h4>
+
+<p>There are only a few basic constructs allowed in the
Readline init file. Blank lines are ignored.
-Lines beginning with a <SAMP>`#'</SAMP> are comments.
-Lines beginning with a <SAMP>`$'</SAMP> indicate conditional
-constructs (see section <A HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A>). Other lines
+Lines beginning with a &lsquo;<samp>#</samp>&rsquo; are comments.
+Lines beginning with a &lsquo;<samp>$</samp>&rsquo; indicate conditional
+constructs (see <a href="#Conditional-Init-Constructs">Conditional Init Constructs</a>). Other lines
denote variable settings and key bindings.
-</P><P>
-
-<DL COMPACT>
-<DT>Variable Settings
-<DD>You can modify the run-time behavior of Readline by
+</p>
+<dl compact="compact">
+<dt><span>Variable Settings</span></dt>
+<dd><p>You can modify the run-time behavior of Readline by
altering the values of variables in Readline
-using the <CODE>set</CODE> command within the init file.
+using the <code>set</code> command within the init file.
The syntax is simple:
-<P>
+</p>
+<div class="example">
+<pre class="example">set <var>variable</var> <var>value</var>
+</pre></div>
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set <VAR>variable</VAR> <VAR>value</VAR>
-</pre></td></tr></table></P><P>
-
-Here, for example, is how to
+<p>Here, for example, is how to
change from the default Emacs-like key binding to use
-<CODE>vi</CODE> line editing commands:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set editing-mode vi
-</pre></td></tr></table></P><P>
+<code>vi</code> line editing commands:
+</p>
+<div class="example">
+<pre class="example">set editing-mode vi
+</pre></div>
-Variable names and values, where appropriate, are recognized without regard
+<p>Variable names and values, where appropriate, are recognized without regard
to case. Unrecognized variable names are ignored.
-</P><P>
-
-Boolean variables (those that can be set to on or off) are set to on if
-the value is null or empty, <VAR>on</VAR> (case-insensitive), or 1. Any other
+</p>
+<p>Boolean variables (those that can be set to on or off) are set to on if
+the value is null or empty, <var>on</var> (case-insensitive), or 1. Any other
value results in the variable being set to off.
-</P><P>
+</p>
-A great deal of run-time behavior is changeable with the following
+<p>A great deal of run-time behavior is changeable with the following
variables.
-</P><P>
-
-<A NAME="IDX4"></A>
-<DL COMPACT>
-
-<DT><CODE>bell-style</CODE>
-<DD><A NAME="IDX5"></A>
-Controls what happens when Readline wants to ring the terminal bell.
-If set to <SAMP>`none'</SAMP>, Readline never rings the bell. If set to
-<SAMP>`visible'</SAMP>, Readline uses a visible bell if one is available.
-If set to <SAMP>`audible'</SAMP> (the default), Readline attempts to ring
-the terminal's bell.
-<P>
-
-<DT><CODE>bind-tty-special-chars</CODE>
-<DD><A NAME="IDX6"></A>
-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
+</p>
+<span id="index-variables_002c-readline"></span>
+<dl compact="compact">
+<dt id='index-active_002dregion_002dstart_002dcolor'><span><code>active-region-start-color</code><a href='#index-active_002dregion_002dstart_002dcolor' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A string variable that controls the text color and background when displaying
+the text in the active region (see the description of
+<code>enable-active-region</code> below).
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal before displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that puts the terminal in standout mode,
+as obtained from the terminal&rsquo;s terminfo description.
+A sample value might be &lsquo;<samp>\e[01;33m</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-active_002dregion_002dend_002dcolor'><span><code>active-region-end-color</code><a href='#index-active_002dregion_002dend_002dcolor' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>A string variable that &quot;undoes&quot; the effects of <code>active-region-start-color</code>
+and restores &quot;normal&quot; terminal display appearance after displaying text
+in the active region.
+This string must not take up any physical character positions on the display,
+so it should consist only of terminal escape sequences.
+It is output to the terminal after displaying the text in the active region.
+This variable is reset to the default value whenever the terminal type changes.
+The default value is the string that restores the terminal from standout mode,
+as obtained from the terminal&rsquo;s terminfo description.
+A sample value might be &lsquo;<samp>\e[0m</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-bell_002dstyle'><span><code>bell-style</code><a href='#index-bell_002dstyle' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Controls what happens when Readline wants to ring the terminal bell.
+If set to &lsquo;<samp>none</samp>&rsquo;, Readline never rings the bell. If set to
+&lsquo;<samp>visible</samp>&rsquo;, Readline uses a visible bell if one is available.
+If set to &lsquo;<samp>audible</samp>&rsquo; (the default), Readline attempts to ring
+the terminal&rsquo;s bell.
+</p>
+</dd>
+<dt id='index-bind_002dtty_002dspecial_002dchars'><span><code>bind-tty-special-chars</code><a href='#index-bind_002dtty_002dspecial_002dchars' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo; (the default), Readline attempts to bind the control
+characters treated specially by the kernel&rsquo;s terminal driver to their
Readline equivalents.
-<P>
-
-<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
+</p>
+</dd>
+<dt id='index-blink_002dmatching_002dparen'><span><code>blink-matching-paren</code><a href='#index-blink_002dmatching_002dparen' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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
+is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-colored_002dcompletion_002dprefix'><span><code>colored-completion-prefix</code><a href='#index-colored_002dcompletion_002dprefix' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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>
+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
+If there is a color definition in <code>LS_COLORS</code> for the custom suffix
+&lsquo;<samp>readline-colored-completion-prefix</samp>&rsquo;, Readline uses this color for
+the common prefix instead of its default.
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-colored_002dstats'><span><code>colored-stats</code><a href='#index-colored_002dstats' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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>
+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>comment-begin</CODE>
-<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="IDX11"></A>
-The number of screen columns used to display possible matches
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-comment_002dbegin'><span><code>comment-begin</code><a href='#index-comment_002dbegin' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The string to insert at the beginning of the line when the
+<code>insert-comment</code> command is executed. The default value
+is <code>&quot;#&quot;</code>.
+</p>
+</dd>
+<dt id='index-completion_002ddisplay_002dwidth'><span><code>completion-display-width</code><a href='#index-completion_002ddisplay_002dwidth' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX12"></A>
-If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
+</p>
+</dd>
+<dt id='index-completion_002dignore_002dcase'><span><code>completion-ignore-case</code><a href='#index-completion_002dignore_002dcase' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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="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
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-completion_002dmap_002dcase'><span><code>completion-map-case</code><a href='#index-completion_002dmap_002dcase' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, and <var>completion-ignore-case</var> is enabled, Readline
+treats hyphens (&lsquo;<samp>-</samp>&rsquo;) and underscores (&lsquo;<samp>_</samp>&rsquo;) as equivalent when
performing case-insensitive filename matching and completion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX14"></A>
-The length in characters of the common prefix of a list of possible
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-completion_002dprefix_002ddisplay_002dlength'><span><code>completion-prefix-display-length</code><a href='#index-completion_002dprefix_002ddisplay_002dlength' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX15"></A>
-The number of possible completions that determines when the user is
+</p>
+</dd>
+<dt id='index-completion_002dquery_002ditems'><span><code>completion-query-items</code><a href='#index-completion_002dquery_002ditems' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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 or equal to this value,
Readline will ask whether or not the user 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 <CODE>100</CODE>.
-<P>
-
-<DT><CODE>convert-meta</CODE>
-<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
-meta-prefixed key sequence. The default value is <SAMP>`on'</SAMP>, but
-will be set to <SAMP>`off'</SAMP> if the locale is one that contains
+This variable must be set to an integer value greater than or equal to zero.
+A zero value means Readline should never ask; negative values are
+treated as zero.
+The default limit is <code>100</code>.
+</p>
+</dd>
+<dt id='index-convert_002dmeta'><span><code>convert-meta</code><a href='#index-convert_002dmeta' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, Readline will convert characters with the
+eighth bit set to an <small>ASCII</small> key sequence by stripping the eighth
+bit and prefixing an <tt class="key">ESC</tt> character, converting them to a
+meta-prefixed key sequence. The default value is &lsquo;<samp>on</samp>&rsquo;, but
+will be set to &lsquo;<samp>off</samp>&rsquo; if the locale is one that contains
eight-bit characters.
-<P>
-
-<DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX17"></A>
-If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
+</p>
+</dd>
+<dt id='index-disable_002dcompletion'><span><code>disable-completion</code><a href='#index-disable_002dcompletion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>On</samp>&rsquo;, 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>echo-control-characters</CODE>
-<DD><A NAME="IDX18"></A>
-When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
+been mapped to <code>self-insert</code>. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-echo_002dcontrol_002dcharacters'><span><code>echo-control-characters</code><a href='#index-echo_002dcontrol_002dcharacters' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When set to &lsquo;<samp>on</samp>&rsquo;, 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>editing-mode</CODE>
-<DD><A NAME="IDX19"></A>
-The <CODE>editing-mode</CODE> variable controls which default set of
+keyboard. The default is &lsquo;<samp>on</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-editing_002dmode'><span><code>editing-mode</code><a href='#index-editing_002dmode' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX20"></A>
-If the <VAR>show-mode-in-prompt</VAR> variable is enabled,
+set to either &lsquo;<samp>emacs</samp>&rsquo; or &lsquo;<samp>vi</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-emacs_002dmode_002dstring'><span><code>emacs-mode-string</code><a href='#index-emacs_002dmode_002dstring' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the <var>show-mode-in-prompt</var> variable is enabled,
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
+Use the &lsquo;<samp>\1</samp>&rsquo; and &lsquo;<samp>\2</samp>&rsquo; 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>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>`On'</SAMP>.
-<P>
-
-<DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX22"></A>
-When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
+The default is &lsquo;<samp>@</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-enable_002dactive_002dregion'><span><code>enable-active-region</code><a href='#index-enable_002dactive_002dregion' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The <em>point</em> is the current cursor position, and <em>mark</em> refers
+to a saved cursor position (see <a href="#Commands-For-Moving">Commands For Moving</a>).
+The text between the point and mark is referred to as the <em>region</em>.
+When this variable is set to &lsquo;<samp>On</samp>&rsquo;, Readline allows certain commands
+to designate the region as <em>active</em>.
+When the region is active, Readline highlights the text in the region using
+the value of the <code>active-region-start-color</code>, which defaults to the
+string that enables
+the terminal&rsquo;s standout mode.
+The active region shows the text inserted by bracketed-paste and any
+matching text found by incremental and non-incremental history searches.
+The default is &lsquo;<samp>On</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-enable_002dbracketed_002dpaste'><span><code>enable-bracketed-paste</code><a href='#index-enable_002dbracketed_002dpaste' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When set to &lsquo;<samp>On</samp>&rsquo;, Readline configures the terminal 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 is called putting the terminal into <em>bracketed paste mode</em>;
+it prevents Readline from executing any editing commands bound to key
+sequences appearing in the pasted text.
+The default is &lsquo;<samp>On</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-enable_002dkeypad'><span><code>enable-keypad</code><a href='#index-enable_002dkeypad' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When set to &lsquo;<samp>on</samp>&rsquo;, 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>.
-<P>
-
-<DT><CODE>enable-meta-key</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, Readline will try to enable any meta modifier
+arrow keys. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt><span><code>enable-meta-key</code></span></dt>
+<dd><p>When set to &lsquo;<samp>on</samp>&rsquo;, 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 <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>expand-tilde</CODE>
-<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="IDX24"></A>
-If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
+The default is &lsquo;<samp>on</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-expand_002dtilde'><span><code>expand-tilde</code><a href='#index-expand_002dtilde' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, tilde expansion is performed when Readline
+attempts word completion. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-history_002dpreserve_002dpoint'><span><code>history-preserve-point</code><a href='#index-history_002dpreserve_002dpoint' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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>
-or <CODE>next-history</CODE>. The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>history-size</CODE>
-<DD><A NAME="IDX25"></A>
-Set the maximum number of history entries saved in the history list.
+same location on each history line retrieved with <code>previous-history</code>
+or <code>next-history</code>. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-history_002dsize'><span><code>history-size</code><a href='#index-history_002dsize' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-If an attempt is made to set <VAR>history-size</VAR> to a non-numeric value,
+If an attempt is made to set <var>history-size</var> to a non-numeric value,
the maximum number of history entries will be set to 500.
-<P>
-
-<DT><CODE>horizontal-scroll-mode</CODE>
-<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
+</p>
+</dd>
+<dt id='index-horizontal_002dscroll_002dmode'><span><code>horizontal-scroll-mode</code><a href='#index-horizontal_002dscroll_002dmode' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable can be set to either &lsquo;<samp>on</samp>&rsquo; or &lsquo;<samp>off</samp>&rsquo;. Setting it
+to &lsquo;<samp>on</samp>&rsquo; 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.
-This variable is automatically set to <SAMP>`on'</SAMP> for terminals of height 1.
-By default, this variable is set to <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX27"></A>
-<A NAME="IDX28"></A>
-If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
+This variable is automatically set to &lsquo;<samp>on</samp>&rsquo; for terminals of height 1.
+By default, this variable is set to &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-input_002dmeta'><span><code>input-meta</code><a href='#index-input_002dmeta' class='copiable-anchor'> &para;</a></span></dt>
+<dd><span id="index-meta_002dflag"></span>
+<p>If set to &lsquo;<samp>on</samp>&rsquo;, 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 <SAMP>`off'</SAMP>, but Readline will set it to <SAMP>`on'</SAMP> if the
+default value is &lsquo;<samp>off</samp>&rsquo;, but Readline will set it to &lsquo;<samp>on</samp>&rsquo; if the
locale contains eight-bit characters.
-The name <CODE>meta-flag</CODE> is a synonym for this variable.
-<P>
-
-<DT><CODE>isearch-terminators</CODE>
-<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
-<KBD>C-J</KBD> will terminate an incremental search.
-<P>
-
-<DT><CODE>keymap</CODE>
-<DD><A NAME="IDX30"></A>
-Sets Readline's idea of the current keymap for key binding commands.
-Built-in <CODE>keymap</CODE> names are
-<CODE>emacs</CODE>,
-<CODE>emacs-standard</CODE>,
-<CODE>emacs-meta</CODE>,
-<CODE>emacs-ctlx</CODE>,
-<CODE>vi</CODE>,
-<CODE>vi-move</CODE>,
-<CODE>vi-command</CODE>, and
-<CODE>vi-insert</CODE>.
-<CODE>vi</CODE> is equivalent to <CODE>vi-command</CODE> (<CODE>vi-move</CODE> is also a
-synonym); <CODE>emacs</CODE> is equivalent to <CODE>emacs-standard</CODE>.
+The name <code>meta-flag</code> is a synonym for this variable.
+</p>
+</dd>
+<dt id='index-isearch_002dterminators'><span><code>isearch-terminators</code><a href='#index-isearch_002dterminators' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>The string of characters that should terminate an incremental search without
+subsequently executing the character as a command (see <a href="#Searching">Searching for Commands in the History</a>).
+If this variable has not been given a value, the characters <tt class="key">ESC</tt> and
+<kbd>C-J</kbd> will terminate an incremental search.
+</p>
+</dd>
+<dt id='index-keymap'><span><code>keymap</code><a href='#index-keymap' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Sets Readline&rsquo;s idea of the current keymap for key binding commands.
+Built-in <code>keymap</code> names are
+<code>emacs</code>,
+<code>emacs-standard</code>,
+<code>emacs-meta</code>,
+<code>emacs-ctlx</code>,
+<code>vi</code>,
+<code>vi-move</code>,
+<code>vi-command</code>, and
+<code>vi-insert</code>.
+<code>vi</code> is equivalent to <code>vi-command</code> (<code>vi-move</code> is also a
+synonym); <code>emacs</code> is equivalent to <code>emacs-standard</code>.
Applications may add additional names.
-The default value is <CODE>emacs</CODE>.
-The value of the <CODE>editing-mode</CODE> variable also affects the
+The default value is <code>emacs</code>.
+The value of the <code>editing-mode</code> variable also affects the
default keymap.
-<P>
-
-<DT><CODE>keyseq-timeout</CODE>
-<DD>Specifies the duration Readline will wait for a character when reading an
+</p>
+</dd>
+<dt><span><code>keyseq-timeout</code></span></dt>
+<dd><p>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 (<CODE>rl_instream</CODE> by default).
+available on the current input source (<code>rl_instream</code> 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 <CODE>500</CODE>.
-<P>
-
-<DT><CODE>mark-directories</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
-appended. The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>mark-modified-lines</CODE>
-<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="IDX32"></A>
-If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
+The default value is <code>500</code>.
+</p>
+</dd>
+<dt><span><code>mark-directories</code></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, completed directory names have a slash
+appended. The default is &lsquo;<samp>on</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-mark_002dmodified_002dlines'><span><code>mark-modified-lines</code><a href='#index-mark_002dmodified_002dlines' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable, when set to &lsquo;<samp>on</samp>&rsquo;, causes Readline to display an
+asterisk (&lsquo;<samp>*</samp>&rsquo;) at the start of history lines which have been modified.
+This variable is &lsquo;<samp>off</samp>&rsquo; by default.
+</p>
+</dd>
+<dt id='index-mark_002dsymlinked_002ddirectories'><span><code>mark-symlinked-directories</code><a href='#index-mark_002dsymlinked_002ddirectories' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, completed names which are symbolic links
to directories have a slash appended (subject to the value of
-<CODE>mark-directories</CODE>).
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>match-hidden-files</CODE>
-<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
+<code>mark-directories</code>).
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-match_002dhidden_002dfiles'><span><code>match-hidden-files</code><a href='#index-match_002dhidden_002dfiles' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This variable, when set to &lsquo;<samp>on</samp>&rsquo;, causes Readline to match files whose
+names begin with a &lsquo;<samp>.</samp>&rsquo; (hidden files) when performing filename
completion.
-If set to <SAMP>`off'</SAMP>, the leading <SAMP>`.'</SAMP> must be
+If set to &lsquo;<samp>off</samp>&rsquo;, the leading &lsquo;<samp>.</samp>&rsquo; must be
supplied by the user in the filename to be completed.
-This variable is <SAMP>`on'</SAMP> by default.
-<P>
-
-<DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX34"></A>
-If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
+This variable is &lsquo;<samp>on</samp>&rsquo; by default.
+</p>
+</dd>
+<dt id='index-menu_002dcomplete_002ddisplay_002dprefix'><span><code>menu-complete-display-prefix</code><a href='#index-menu_002dcomplete_002ddisplay_002dprefix' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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="IDX35"></A>
-If set to <SAMP>`on'</SAMP>, Readline will display characters with the
+the list. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-output_002dmeta'><span><code>output-meta</code><a href='#index-output_002dmeta' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, Readline will display characters with the
eighth bit set directly rather than as a meta-prefixed escape
sequence.
-The default is <SAMP>`off'</SAMP>, but Readline will set it to <SAMP>`on'</SAMP> if the
+The default is &lsquo;<samp>off</samp>&rsquo;, but Readline will set it to &lsquo;<samp>on</samp>&rsquo; if the
locale contains eight-bit characters.
-<P>
-
-<DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX36"></A>
-If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
+</p>
+</dd>
+<dt id='index-page_002dcompletions'><span><code>page-completions</code><a href='#index-page_002dcompletions' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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.
-<P>
-
-<DT><CODE>print-completions-horizontally</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, Readline will display completions with matches
+This variable is &lsquo;<samp>on</samp>&rsquo; by default.
+</p>
+</dd>
+<dt><span><code>print-completions-horizontally</code></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, Readline will display completions with matches
sorted horizontally in alphabetical order, rather than down the screen.
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>revert-all-at-newline</CODE>
-<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,
+The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-revert_002dall_002dat_002dnewline'><span><code>revert-all-at-newline</code><a href='#index-revert_002dall_002dat_002dnewline' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, 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
-calls to <CODE>readline</CODE>. The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX38"></A>
-This alters the default behavior of the completion functions. If
-set to <SAMP>`on'</SAMP>,
+calls to <code>readline</code>. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-show_002dall_002dif_002dambiguous'><span><code>show-all-if-ambiguous</code><a href='#index-show_002dall_002dif_002dambiguous' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This alters the default behavior of the completion functions. If
+set to &lsquo;<samp>on</samp>&rsquo;,
words which have more than one possible completion cause the
matches to be listed immediately instead of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-unmodified</CODE>
-<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>,
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-show_002dall_002dif_002dunmodified'><span><code>show-all-if-unmodified</code><a href='#index-show_002dall_002dif_002dunmodified' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This alters the default behavior of the completion functions in
+a fashion similar to <var>show-all-if-ambiguous</var>.
+If set to &lsquo;<samp>on</samp>&rsquo;,
words which have more than one possible completion without any
-possible partial completion (the possible completions don't share
+possible partial completion (the possible completions don&rsquo;t share
a common prefix) cause the matches to be listed immediately instead
of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-mode-in-prompt</CODE>
-<DD><A NAME="IDX40"></A>
-If set to <SAMP>`on'</SAMP>, add a string to the beginning of the prompt
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-show_002dmode_002din_002dprompt'><span><code>show-mode-in-prompt</code><a href='#index-show_002dmode_002din_002dprompt' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, add a string to the beginning of the prompt
indicating the editing mode: emacs, vi command, or vi insertion.
-The mode strings are user-settable (e.g., <VAR>emacs-mode-string</VAR>).
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>skip-completed-text</CODE>
-<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
+The mode strings are user-settable (e.g., <var>emacs-mode-string</var>).
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-skip_002dcompleted_002dtext'><span><code>skip-completed-text</code><a href='#index-skip_002dcompleted_002dtext' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, this alters the default completion behavior when
+inserting a single match into the line. It&rsquo;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 <SAMP>`e'</SAMP> in <SAMP>`Makefile'</SAMP> will result in <SAMP>`Makefile'</SAMP>
-rather than <SAMP>`Makefilefile'</SAMP>, assuming there is a single possible
+is after the &lsquo;<samp>e</samp>&rsquo; in &lsquo;<samp>Makefile</samp>&rsquo; will result in &lsquo;<samp>Makefile</samp>&rsquo;
+rather than &lsquo;<samp>Makefilefile</samp>&rsquo;, assuming there is a single possible
completion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>vi-cmd-mode-string</CODE>
-<DD><A NAME="IDX42"></A>
-If the <VAR>show-mode-in-prompt</VAR> variable is enabled,
+The default value is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-vi_002dcmd_002dmode_002dstring'><span><code>vi-cmd-mode-string</code><a href='#index-vi_002dcmd_002dmode_002dstring' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the <var>show-mode-in-prompt</var> variable is enabled,
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
+Use the &lsquo;<samp>\1</samp>&rsquo; and &lsquo;<samp>\2</samp>&rsquo; 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>
-If the <VAR>show-mode-in-prompt</VAR> variable is enabled,
+The default is &lsquo;<samp>(cmd)</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-vi_002dins_002dmode_002dstring'><span><code>vi-ins-mode-string</code><a href='#index-vi_002dins_002dmode_002dstring' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the <var>show-mode-in-prompt</var> variable is enabled,
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
+Use the &lsquo;<samp>\1</samp>&rsquo; and &lsquo;<samp>\2</samp>&rsquo; 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="IDX44"></A>
-If set to <SAMP>`on'</SAMP>, a character denoting a file's type
+The default is &lsquo;<samp>(ins)</samp>&rsquo;.
+</p>
+</dd>
+<dt id='index-visible_002dstats'><span><code>visible-stats</code><a href='#index-visible_002dstats' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If set to &lsquo;<samp>on</samp>&rsquo;, a character denoting a file&rsquo;s type
is appended to the filename when listing possible
-completions. The default is <SAMP>`off'</SAMP>.
-<P>
-
-</DL>
-<P>
-
-<DT>Key Bindings
-<DD>The syntax for controlling key bindings in the init file is
+completions. The default is &lsquo;<samp>off</samp>&rsquo;.
+</p>
+</dd>
+</dl>
+
+</dd>
+<dt><span>Key Bindings</span></dt>
+<dd><p>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.
-<P>
-
-Once you know the name of the command, simply place on a line
+</p>
+<p>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, a colon, and then the name of the
command.
-There can be no space between the key name and the colon -- that will be
+There can be no space between the key name and the colon &ndash; that will be
interpreted as part of the key name.
The name of the key can be expressed in different ways, depending on
what you find most comfortable.
-</P><P>
-
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a <VAR>macro</VAR>).
-</P><P>
-
-<DL COMPACT>
-<DT><VAR>keyname</VAR>: <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyname</VAR> is the name of a key spelled out in English. For example:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>Control-u: universal-argument
+</p>
+<p>In addition to command names, readline allows keys to be bound
+to a string that is inserted when the key is pressed (a <var>macro</var>).
+</p>
+
+<dl compact="compact">
+<dt><span><var>keyname</var>:&nbsp;<var><span class="nolinebreak">function-name</span></var>&nbsp;or&nbsp;<var>macro</var><!-- /@w --></span></dt>
+<dd><p><var>keyname</var> is the name of a key spelled out in English. For example:
+</p><div class="example">
+<pre class="example">Control-u: universal-argument
Meta-Rubout: backward-kill-word
-Control-o: "&#62; output"
-</pre></td></tr></table><P>
+Control-o: &quot;&gt; output&quot;
+</pre></div>
-In the example above, <KBD>C-u</KBD> is bound to the function
-<CODE>universal-argument</CODE>,
-<KBD>M-DEL</KBD> is bound to the function <CODE>backward-kill-word</CODE>, and
-<KBD>C-o</KBD> is bound to run the macro
+<p>In the example above, <kbd>C-u</kbd> is bound to the function
+<code>universal-argument</code>,
+<kbd>M-DEL</kbd> is bound to the function <code>backward-kill-word</code>, and
+<kbd>C-o</kbd> is bound to run the macro
expressed on the right hand side (that is, to insert the text
-<SAMP>`&#62; output'</SAMP> into the line).
-</P><P>
-
-A number of symbolic character names are recognized while
+&lsquo;<samp>&gt; output</samp>&rsquo; into the line).
+</p>
+<p>A number of symbolic character names are recognized while
processing this key binding syntax:
-<VAR>DEL</VAR>,
-<VAR>ESC</VAR>,
-<VAR>ESCAPE</VAR>,
-<VAR>LFD</VAR>,
-<VAR>NEWLINE</VAR>,
-<VAR>RET</VAR>,
-<VAR>RETURN</VAR>,
-<VAR>RUBOUT</VAR>,
-<VAR>SPACE</VAR>,
-<VAR>SPC</VAR>,
+<var>DEL</var>,
+<var>ESC</var>,
+<var>ESCAPE</var>,
+<var>LFD</var>,
+<var>NEWLINE</var>,
+<var>RET</var>,
+<var>RETURN</var>,
+<var>RUBOUT</var>,
+<var>SPACE</var>,
+<var>SPC</var>,
and
-<VAR>TAB</VAR>.
-</P><P>
-
-<DT>"<VAR>keyseq</VAR>": <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyseq</VAR> differs from <VAR>keyname</VAR> above in that strings
+<var>TAB</var>.
+</p>
+</dd>
+<dt><span>&quot;<var>keyseq</var>&quot;:&nbsp;<var><span class="nolinebreak">function-name</span></var>&nbsp;or&nbsp;<var>macro</var><!-- /@w --></span></dt>
+<dd><p><var>keyseq</var> differs from <var>keyname</var> 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
+the key sequence in double quotes. Some <small>GNU</small> Emacs style key
escapes can be used, as in the following example, but the
special character names are not recognized.
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-u": universal-argument
-"\C-x\C-r": re-read-init-file
-"\e[11~": "Function Key 1"
-</pre></td></tr></table></P><P>
-
-In the above example, <KBD>C-u</KBD> is again bound to the function
-<CODE>universal-argument</CODE> (just as it was in the first example),
-<SAMP>`<KBD>C-x</KBD> <KBD>C-r</KBD>'</SAMP> is bound to the function <CODE>re-read-init-file</CODE>,
-and <SAMP>`<KBD>ESC</KBD> <KBD>[</KBD> <KBD>1</KBD> <KBD>1</KBD> <KBD>~</KBD>'</SAMP> is bound to insert
-the text <SAMP>`Function Key 1'</SAMP>.
-</P><P>
-
-</DL>
-<P>
-
-The following GNU Emacs style escape sequences are available when
+</p>
+<div class="example">
+<pre class="example">&quot;\C-u&quot;: universal-argument
+&quot;\C-x\C-r&quot;: re-read-init-file
+&quot;\e[11~&quot;: &quot;Function Key 1&quot;
+</pre></div>
+
+<p>In the above example, <kbd>C-u</kbd> is again bound to the function
+<code>universal-argument</code> (just as it was in the first example),
+&lsquo;<samp><kbd>C-x</kbd> <kbd>C-r</kbd></samp>&rsquo; is bound to the function <code>re-read-init-file</code>,
+and &lsquo;<samp><span class="key">ESC</span> <span class="key">[</span> <span class="key">1</span> <span class="key">1</span> <span class="key">~</span></samp>&rsquo; is bound to insert
+the text &lsquo;<samp>Function Key 1</samp>&rsquo;.
+</p>
+</dd>
+</dl>
+
+<p>The following <small>GNU</small> Emacs style escape sequences are available when
specifying key sequences:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE><KBD>\C-</KBD></CODE>
-<DD>control prefix
-<DT><CODE><KBD>\M-</KBD></CODE>
-<DD>meta prefix
-<DT><CODE><KBD>\e</KBD></CODE>
-<DD>an escape character
-<DT><CODE><KBD>\\</KBD></CODE>
-<DD>backslash
-<DT><CODE><KBD>\"</KBD></CODE>
-<DD><KBD>"</KBD>, a double quotation mark
-<DT><CODE><KBD>\'</KBD></CODE>
-<DD><KBD>'</KBD>, a single quote or apostrophe
-</DL>
-<P>
-
-In addition to the GNU Emacs style escape sequences, a second
+</p>
+<dl compact="compact">
+<dt><span><code><kbd>\C-</kbd></code></span></dt>
+<dd><p>control prefix
+</p></dd>
+<dt><span><code><kbd>\M-</kbd></code></span></dt>
+<dd><p>meta prefix
+</p></dd>
+<dt><span><code><kbd>\e</kbd></code></span></dt>
+<dd><p>an escape character
+</p></dd>
+<dt><span><code><kbd>\\</kbd></code></span></dt>
+<dd><p>backslash
+</p></dd>
+<dt><span><code><kbd>\&quot;</kbd></code></span></dt>
+<dd><p><tt class="key">&quot;</tt>, a double quotation mark
+</p></dd>
+<dt><span><code><kbd>\'</kbd></code></span></dt>
+<dd><p><tt class="key">'</tt>, a single quote or apostrophe
+</p></dd>
+</dl>
+
+<p>In addition to the <small>GNU</small> Emacs style escape sequences, a second
set of backslash escapes is available:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>\a</CODE>
-<DD>alert (bell)
-<DT><CODE>\b</CODE>
-<DD>backspace
-<DT><CODE>\d</CODE>
-<DD>delete
-<DT><CODE>\f</CODE>
-<DD>form feed
-<DT><CODE>\n</CODE>
-<DD>newline
-<DT><CODE>\r</CODE>
-<DD>carriage return
-<DT><CODE>\t</CODE>
-<DD>horizontal tab
-<DT><CODE>\v</CODE>
-<DD>vertical tab
-<DT><CODE>\<VAR>nnn</VAR></CODE>
-<DD>the eight-bit character whose value is the octal value <VAR>nnn</VAR>
+</p>
+<dl compact="compact">
+<dt><span><code>\a</code></span></dt>
+<dd><p>alert (bell)
+</p></dd>
+<dt><span><code>\b</code></span></dt>
+<dd><p>backspace
+</p></dd>
+<dt><span><code>\d</code></span></dt>
+<dd><p>delete
+</p></dd>
+<dt><span><code>\f</code></span></dt>
+<dd><p>form feed
+</p></dd>
+<dt><span><code>\n</code></span></dt>
+<dd><p>newline
+</p></dd>
+<dt><span><code>\r</code></span></dt>
+<dd><p>carriage return
+</p></dd>
+<dt><span><code>\t</code></span></dt>
+<dd><p>horizontal tab
+</p></dd>
+<dt><span><code>\v</code></span></dt>
+<dd><p>vertical tab
+</p></dd>
+<dt><span><code>\<var>nnn</var></code></span></dt>
+<dd><p>the eight-bit character whose value is the octal value <var>nnn</var>
(one to three digits)
-<DT><CODE>\x<VAR>HH</VAR></CODE>
-<DD>the eight-bit character whose value is the hexadecimal value <VAR>HH</VAR>
+</p></dd>
+<dt><span><code>\x<var>HH</var></code></span></dt>
+<dd><p>the eight-bit character whose value is the hexadecimal value <var>HH</var>
(one or two hex digits)
-</DL>
-<P>
+</p></dd>
+</dl>
-When entering the text of a macro, single or double quotes must
+<p>When entering the text of a macro, single or double quotes must
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 <SAMP>`"'</SAMP> and <SAMP>`''</SAMP>.
-For example, the following binding will make <SAMP>`<KBD>C-x</KBD> \'</SAMP>
-insert a single <SAMP>`\'</SAMP> into the line:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-x\\": "\\"
-</pre></td></tr></table></P><P>
-
-</DL>
-<P>
-
-<A NAME="Conditional Init Constructs"></A>
-<HR SIZE="6">
-<A NAME="SEC11"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC10"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.2 Conditional Init Constructs </H3>
-<!--docid::SEC11::-->
-<P>
-
-Readline implements a facility similar in spirit to the conditional
+including &lsquo;<samp>&quot;</samp>&rsquo; and &lsquo;<samp>'</samp>&rsquo;.
+For example, the following binding will make &lsquo;<samp><kbd>C-x</kbd> \</samp>&rsquo;
+insert a single &lsquo;<samp>\</samp>&rsquo; into the line:
+</p><div class="example">
+<pre class="example">&quot;\C-x\\&quot;: &quot;\\&quot;
+</pre></div>
+
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Conditional-Init-Constructs">
+<div class="header">
+<p>
+Next: <a href="#Sample-Init-File" accesskey="n" rel="next">Sample Init File</a>, Previous: <a href="#Readline-Init-File-Syntax" accesskey="p" rel="prev">Readline Init File Syntax</a>, Up: <a href="#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Conditional-Init-Constructs-1"></span><h4 class="subsection">1.3.2 Conditional Init Constructs</h4>
+
+<p>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.
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>$if</CODE>
-<DD>The <CODE>$if</CODE> construct allows bindings to be made based on the
+</p>
+<dl compact="compact">
+<dt><span><code>$if</code></span></dt>
+<dd><p>The <code>$if</code> 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, after any comparison operator,
extends to the end of the line;
unless otherwise noted, no characters are required to isolate it.
-<P>
-
-<DL COMPACT>
-<DT><CODE>mode</CODE>
-<DD>The <CODE>mode=</CODE> form of the <CODE>$if</CODE> directive is used to test
-whether Readline is in <CODE>emacs</CODE> or <CODE>vi</CODE> mode.
+</p>
+<dl compact="compact">
+<dt><span><code>mode</code></span></dt>
+<dd><p>The <code>mode=</code> form of the <code>$if</code> directive is used to test
+whether Readline is in <code>emacs</code> or <code>vi</code> mode.
This may be used in conjunction
-with the <SAMP>`set keymap'</SAMP> command, for instance, to set bindings in
-the <CODE>emacs-standard</CODE> and <CODE>emacs-ctlx</CODE> keymaps only if
-Readline is starting out in <CODE>emacs</CODE> mode.
-<P>
-
-<DT><CODE>term</CODE>
-<DD>The <CODE>term=</CODE> form may be used to include terminal-specific
+with the &lsquo;<samp>set keymap</samp>&rsquo; command, for instance, to set bindings in
+the <code>emacs-standard</code> and <code>emacs-ctlx</code> keymaps only if
+Readline is starting out in <code>emacs</code> mode.
+</p>
+</dd>
+<dt><span><code>term</code></span></dt>
+<dd><p>The <code>term=</code> 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
-<SAMP>`='</SAMP> is tested against both the full name of the terminal and
-the portion of the terminal name before the first <SAMP>`-'</SAMP>. This
-allows <CODE>sun</CODE> to match both <CODE>sun</CODE> and <CODE>sun-cmd</CODE>,
+terminal&rsquo;s function keys. The word on the right side of the
+&lsquo;<samp>=</samp>&rsquo; is tested against both the full name of the terminal and
+the portion of the terminal name before the first &lsquo;<samp>-</samp>&rsquo;. This
+allows <code>sun</code> to match both <code>sun</code> and <code>sun-cmd</code>,
for instance.
-<P>
-
-<DT><CODE>version</CODE>
-<DD>The <CODE>version</CODE> test may be used to perform comparisons against
+</p>
+</dd>
+<dt><span><code>version</code></span></dt>
+<dd><p>The <code>version</code> test may be used to perform comparisons against
specific Readline versions.
-The <CODE>version</CODE> expands to the current Readline version.
+The <code>version</code> expands to the current Readline version.
The set of comparison operators includes
-<SAMP>`='</SAMP> (and <SAMP>`=='</SAMP>), <SAMP>`!='</SAMP>, <SAMP>`&#60;='</SAMP>, <SAMP>`&#62;='</SAMP>, <SAMP>`&#60;'</SAMP>,
-and <SAMP>`&#62;'</SAMP>.
+&lsquo;<samp>=</samp>&rsquo; (and &lsquo;<samp>==</samp>&rsquo;), &lsquo;<samp>!=</samp>&rsquo;, &lsquo;<samp>&lt;=</samp>&rsquo;, &lsquo;<samp>&gt;=</samp>&rsquo;, &lsquo;<samp>&lt;</samp>&rsquo;,
+and &lsquo;<samp>&gt;</samp>&rsquo;.
The version number supplied on the right side of the operator consists
of a major version number, an optional decimal point, and an optional
-minor version (e.g., <SAMP>`7.1'</SAMP>). If the minor version is omitted, it
-is assumed to be <SAMP>`0'</SAMP>.
-The operator may be separated from the string <CODE>version</CODE> and
+minor version (e.g., &lsquo;<samp>7.1</samp>&rsquo;). If the minor version is omitted, it
+is assumed to be &lsquo;<samp>0</samp>&rsquo;.
+The operator may be separated from the string <code>version</code> and
from the version number argument by whitespace.
The following example sets a variable if the Readline version being used
is 7.0 or newer:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if version &#62;= 7.0
+</p><div class="example">
+<pre class="example">$if version &gt;= 7.0
set show-mode-in-prompt on
$endif
-</pre></td></tr></table><P>
+</pre></div>
-<DT><CODE>application</CODE>
-<DD>The <VAR>application</VAR> construct is used to include
+</dd>
+<dt><span><code>application</code></span></dt>
+<dd><p>The <var>application</var> construct is used to include
application-specific settings. Each program using the Readline
-library sets the <VAR>application name</VAR>, and you can test for
+library sets the <var>application name</var>, and you 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 Bash:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if Bash
+</p><div class="example">
+<pre class="example">$if Bash
# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
+&quot;\C-xq&quot;: &quot;\eb\&quot;\ef\&quot;&quot;
$endif
-</pre></td></tr></table><P>
+</pre></div>
-<DT><CODE>variable</CODE>
-<DD>The <VAR>variable</VAR> construct provides simple equality tests for Readline
+</dd>
+<dt><span><code>variable</code></span></dt>
+<dd><p>The <var>variable</var> construct provides simple equality tests for Readline
variables and values.
-The permitted comparison operators are <SAMP>`='</SAMP>, <SAMP>`=='</SAMP>, and <SAMP>`!='</SAMP>.
+The permitted comparison operators are &lsquo;<samp>=</samp>&rsquo;, &lsquo;<samp>==</samp>&rsquo;, and &lsquo;<samp>!=</samp>&rsquo;.
The variable name must be separated from the comparison operator by
whitespace; the operator may be separated from the value on the right hand
side by whitespace.
Both string and boolean variables may be tested. Boolean variables must be
-tested against the values <VAR>on</VAR> and <VAR>off</VAR>.
-The following example is equivalent to the <CODE>mode=emacs</CODE> test described
+tested against the values <var>on</var> and <var>off</var>.
+The following example is equivalent to the <code>mode=emacs</code> test described
above:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if editing-mode == emacs
+</p><div class="example">
+<pre class="example">$if editing-mode == emacs
set show-mode-in-prompt on
$endif
-</pre></td></tr></table></DL>
-<P>
-
-<DT><CODE>$endif</CODE>
-<DD>This command, as seen in the previous example, terminates an
-<CODE>$if</CODE> command.
-<P>
-
-<DT><CODE>$else</CODE>
-<DD>Commands in this branch of the <CODE>$if</CODE> directive are executed if
+</pre></div>
+</dd>
+</dl>
+
+</dd>
+<dt><span><code>$endif</code></span></dt>
+<dd><p>This command, as seen in the previous example, terminates an
+<code>$if</code> command.
+</p>
+</dd>
+<dt><span><code>$else</code></span></dt>
+<dd><p>Commands in this branch of the <code>$if</code> directive are executed if
the test fails.
-<P>
-
-<DT><CODE>$include</CODE>
-<DD>This directive takes a single filename as an argument and reads commands
+</p>
+</dd>
+<dt><span><code>$include</code></span></dt>
+<dd><p>This directive takes a single filename as an argument and reads commands
and bindings from that file.
-For example, the following directive reads from <TT>`/etc/inputrc'</TT>:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$include /etc/inputrc
-</pre></td></tr></table></DL>
-<P>
-
-<A NAME="Sample Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC12"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC11"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.3 Sample Init File </H3>
-<!--docid::SEC12::-->
-<P>
-
-Here is an example of an <VAR>inputrc</VAR> file. This illustrates key
+For example, the following directive reads from <samp>/etc/inputrc</samp>:
+</p><div class="example">
+<pre class="example">$include /etc/inputrc
+</pre></div>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Sample-Init-File">
+<div class="header">
+<p>
+Previous: <a href="#Conditional-Init-Constructs" accesskey="p" rel="prev">Conditional Init Constructs</a>, Up: <a href="#Readline-Init-File" accesskey="u" rel="up">Readline Init File</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Sample-Init-File-1"></span><h4 class="subsection">1.3.3 Sample Init File</h4>
+
+<p>Here is an example of an <var>inputrc</var> file. This illustrates key
binding, variable assignment, and conditional syntax.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre># This file controls the behaviour of line input editing for
+</p>
+<div class="example">
+<pre class="example"># This file controls the behaviour of line input editing for
# programs that use the GNU Readline library. Existing
# programs include FTP, Bash, and GDB.
#
@@ -1287,31 +1245,31 @@ Meta-Control-h: backward-kill-word Text after the function name is ignored
#
# Arrow keys in keypad mode
#
-#"\M-OD": backward-char
-#"\M-OC": forward-char
-#"\M-OA": previous-history
-#"\M-OB": next-history
+#&quot;\M-OD&quot;: backward-char
+#&quot;\M-OC&quot;: forward-char
+#&quot;\M-OA&quot;: previous-history
+#&quot;\M-OB&quot;: next-history
#
# Arrow keys in ANSI mode
#
-"\M-[D": backward-char
-"\M-[C": forward-char
-"\M-[A": previous-history
-"\M-[B": next-history
+&quot;\M-[D&quot;: backward-char
+&quot;\M-[C&quot;: forward-char
+&quot;\M-[A&quot;: previous-history
+&quot;\M-[B&quot;: next-history
#
# Arrow keys in 8 bit keypad mode
#
-#"\M-\C-OD": backward-char
-#"\M-\C-OC": forward-char
-#"\M-\C-OA": previous-history
-#"\M-\C-OB": next-history
+#&quot;\M-\C-OD&quot;: backward-char
+#&quot;\M-\C-OC&quot;: forward-char
+#&quot;\M-\C-OA&quot;: previous-history
+#&quot;\M-\C-OB&quot;: next-history
#
# Arrow keys in 8 bit ANSI mode
#
-#"\M-\C-[D": backward-char
-#"\M-\C-[C": forward-char
-#"\M-\C-[A": previous-history
-#"\M-\C-[B": next-history
+#&quot;\M-\C-[D&quot;: backward-char
+#&quot;\M-\C-[C&quot;: forward-char
+#&quot;\M-\C-[A&quot;: previous-history
+#&quot;\M-\C-[B&quot;: next-history
C-q: quoted-insert
@@ -1323,20 +1281,20 @@ TAB: complete
# Macros that are convenient for shell interaction
$if Bash
# edit the path
-"\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
+&quot;\C-xp&quot;: &quot;PATH=${PATH}\e\C-e\C-a\ef\C-f&quot;
# prepare to type a quoted word --
# insert open and close double quotes
# and move to just after the open quote
-"\C-x\"": "\"\"\C-b"
+&quot;\C-x\&quot;&quot;: &quot;\&quot;\&quot;\C-b&quot;
# insert a backslash (testing backslash escapes
# in sequences and macros)
-"\C-x\\": "\\"
+&quot;\C-x\\&quot;: &quot;\\&quot;
# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
+&quot;\C-xq&quot;: &quot;\eb\&quot;\ef\&quot;&quot;
# Add a binding to refresh the line, which is unbound
-"\C-xr": redraw-current-line
+&quot;\C-xr&quot;: redraw-current-line
# Edit variable on current line.
-"\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
+&quot;\M-\C-v&quot;: &quot;\C-a\C-k$\C-y\M-\C-e\C-a\C-y=&quot;
$endif
# use a visible bell if one is available
@@ -1359,647 +1317,473 @@ set completion-query-items 150
# For FTP
$if Ftp
-"\C-xg": "get \M-?"
-"\C-xt": "put \M-?"
-"\M-.": yank-last-arg
+&quot;\C-xg&quot;: &quot;get \M-?&quot;
+&quot;\C-xt&quot;: &quot;put \M-?&quot;
+&quot;\M-.&quot;: yank-last-arg
$endif
-</pre></td></tr></table></P><P>
-
-<A NAME="Bindable Readline Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC13"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC14"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.4 Bindable Readline Commands </H2>
-<!--docid::SEC13::-->
-<P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC14">1.4.1 Commands For Moving</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting at previous lines.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC16">1.4.3 Commands For Changing Text</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for changing text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC17">1.4.4 Killing And Yanking</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for killing and yanking.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Specifying numeric arguments, repeat counts.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting Readline to do the typing for you.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC20">1.4.7 Keyboard Macros</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Saving and re-executing typed characters</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Other miscellaneous commands.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-This section describes Readline commands that may be bound to key
+</pre></div>
+
+<hr>
+</div>
+</div>
+<div class="section" id="Bindable-Readline-Commands">
+<div class="header">
+<p>
+Next: <a href="#Readline-vi-Mode" accesskey="n" rel="next">Readline vi Mode</a>, Previous: <a href="#Readline-Init-File" accesskey="p" rel="prev">Readline Init File</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Bindable-Readline-Commands-1"></span><h3 class="section">1.4 Bindable Readline Commands</h3>
+
+
+<p>This section describes Readline commands that may be bound to key
sequences.
Command names without an accompanying key sequence are unbound by default.
-</P><P>
-
-In the following descriptions, <EM>point</EM> refers to the current cursor
-position, and <EM>mark</EM> refers to a cursor position saved by the
-<CODE>set-mark</CODE> command.
-The text between the point and mark is referred to as the <EM>region</EM>.
-</P><P>
-
-<A NAME="Commands For Moving"></A>
-<HR SIZE="6">
-<A NAME="SEC14"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC15"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.1 Commands For Moving </H3>
-<!--docid::SEC14::-->
-<DL COMPACT>
-<A NAME="IDX45"></A>
-<DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX46"></A>
-Move to the start of the current line.
-<P>
-
-<A NAME="IDX47"></A>
-<DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX48"></A>
-Move to the end of the line.
-<P>
-
-<A NAME="IDX49"></A>
-<DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX50"></A>
-Move forward a character.
-<P>
-
-<A NAME="IDX51"></A>
-<DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX52"></A>
-Move back a character.
-<P>
-
-<A NAME="IDX53"></A>
-<DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX54"></A>
-Move forward to the end of the next word.
+</p>
+<p>In the following descriptions, <em>point</em> refers to the current cursor
+position, and <em>mark</em> refers to a cursor position saved by the
+<code>set-mark</code> command.
+The text between the point and mark is referred to as the <em>region</em>.
+</p>
+<ul class="section-toc">
+<li><a href="#Commands-For-Moving" accesskey="1">Commands For Moving</a></li>
+<li><a href="#Commands-For-History" accesskey="2">Commands For Manipulating The History</a></li>
+<li><a href="#Commands-For-Text" accesskey="3">Commands For Changing Text</a></li>
+<li><a href="#Commands-For-Killing" accesskey="4">Killing And Yanking</a></li>
+<li><a href="#Numeric-Arguments" accesskey="5">Specifying Numeric Arguments</a></li>
+<li><a href="#Commands-For-Completion" accesskey="6">Letting Readline Type For You</a></li>
+<li><a href="#Keyboard-Macros" accesskey="7">Keyboard Macros</a></li>
+<li><a href="#Miscellaneous-Commands" accesskey="8">Some Miscellaneous Commands</a></li>
+</ul>
+<hr>
+<div class="subsection" id="Commands-For-Moving">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-History" accesskey="n" rel="next">Commands For Manipulating The History</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Commands-For-Moving-1"></span><h4 class="subsection">1.4.1 Commands For Moving</h4>
+<dl compact="compact">
+<dt id='index-beginning_002dof_002dline-_0028C_002da_0029'><span><code>beginning-of-line (C-a)</code><a href='#index-beginning_002dof_002dline-_0028C_002da_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the start of the current line.
+</p>
+</dd>
+<dt id='index-end_002dof_002dline-_0028C_002de_0029'><span><code>end-of-line (C-e)</code><a href='#index-end_002dof_002dline-_0028C_002de_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the end of the line.
+</p>
+</dd>
+<dt id='index-forward_002dchar-_0028C_002df_0029'><span><code>forward-char (C-f)</code><a href='#index-forward_002dchar-_0028C_002df_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move forward a character.
+</p>
+</dd>
+<dt id='index-backward_002dchar-_0028C_002db_0029'><span><code>backward-char (C-b)</code><a href='#index-backward_002dchar-_0028C_002db_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move back a character.
+</p>
+</dd>
+<dt id='index-forward_002dword-_0028M_002df_0029'><span><code>forward-word (M-f)</code><a href='#index-forward_002dword-_0028M_002df_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move forward to the end of the next word.
Words are composed of letters and digits.
-<P>
-
-<A NAME="IDX55"></A>
-<DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX56"></A>
-Move back to the start of the current or previous word.
+</p>
+</dd>
+<dt id='index-backward_002dword-_0028M_002db_0029'><span><code>backward-word (M-b)</code><a href='#index-backward_002dword-_0028M_002db_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move back to the start of the current or previous word.
Words are composed of letters and digits.
-<P>
+</p>
-<A NAME="IDX57"></A>
-<DT><CODE>previous-screen-line ()</CODE>
-<DD><A NAME="IDX58"></A>
-Attempt to move point to the same physical screen column on the previous
+</dd>
+<dt id='index-previous_002dscreen_002dline-_0028_0029'><span><code>previous-screen-line ()</code><a href='#index-previous_002dscreen_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Attempt to move point to the same physical screen column on the previous
physical screen line. This will not have the desired effect if the current
Readline line does not take up more than one physical line or if point is not
greater than the length of the prompt plus the screen width.
-<P>
-
-<A NAME="IDX59"></A>
-<DT><CODE>next-screen-line ()</CODE>
-<DD><A NAME="IDX60"></A>
-Attempt to move point to the same physical screen column on the next
+</p>
+</dd>
+<dt id='index-next_002dscreen_002dline-_0028_0029'><span><code>next-screen-line ()</code><a href='#index-next_002dscreen_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Attempt to move point to the same physical screen column on the next
physical screen line. This will not have the desired effect if the current
Readline line does not take up more than one physical line or if the length
of the current Readline line is not greater than the length of the prompt
plus the screen width.
-<P>
-
-<A NAME="IDX61"></A>
-<DT><CODE>clear-display (M-C-l)</CODE>
-<DD><A NAME="IDX62"></A>
-Clear the screen and, if possible, the terminal's scrollback buffer,
+</p>
+</dd>
+<dt id='index-clear_002ddisplay-_0028M_002dC_002dl_0029'><span><code>clear-display (M-C-l)</code><a href='#index-clear_002ddisplay-_0028M_002dC_002dl_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the screen and, if possible, the terminal&rsquo;s scrollback buffer,
then redraw the current line,
leaving the current line at the top of the screen.
-<P>
-
-<A NAME="IDX63"></A>
-<DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX64"></A>
-Clear the screen,
+</p>
+</dd>
+<dt id='index-clear_002dscreen-_0028C_002dl_0029'><span><code>clear-screen (C-l)</code><a href='#index-clear_002dscreen-_0028C_002dl_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Clear the screen,
then redraw the current line,
leaving the current line at the top of the screen.
-<P>
-
-<A NAME="IDX65"></A>
-<DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX66"></A>
-Refresh the current line. By default, this is unbound.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For History"></A>
-<HR SIZE="6">
-<A NAME="SEC15"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC14"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.2 Commands For Manipulating The History </H3>
-<!--docid::SEC15::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX67"></A>
-<DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX68"></A>
-Accept the line regardless of where the cursor is.
+</p>
+</dd>
+<dt id='index-redraw_002dcurrent_002dline-_0028_0029'><span><code>redraw-current-line ()</code><a href='#index-redraw_002dcurrent_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Refresh the current line. By default, this is unbound.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-History">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-Text" accesskey="n" rel="next">Commands For Changing Text</a>, Previous: <a href="#Commands-For-Moving" accesskey="p" rel="prev">Commands For Moving</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Commands-For-Manipulating-The-History"></span><h4 class="subsection">1.4.2 Commands For Manipulating The History</h4>
+
+<dl compact="compact">
+<dt id='index-accept_002dline-_0028Newline-or-Return_0029'><span><code>accept-line (Newline or Return)</code><a href='#index-accept_002dline-_0028Newline-or-Return_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>add_history()</CODE>.
+<code>add_history()</code>.
If this line is a modified history line, the history line is restored
to its original state.
-<P>
-
-<A NAME="IDX69"></A>
-<DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX70"></A>
-Move `back' through the history list, fetching the previous command.
-<P>
-
-<A NAME="IDX71"></A>
-<DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX72"></A>
-Move `forward' through the history list, fetching the next command.
-<P>
-
-<A NAME="IDX73"></A>
-<DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX74"></A>
-Move to the first line in the history.
-<P>
-
-<A NAME="IDX75"></A>
-<DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX76"></A>
-Move to the end of the input history, i.e., the line currently
+</p>
+</dd>
+<dt id='index-previous_002dhistory-_0028C_002dp_0029'><span><code>previous-history (C-p)</code><a href='#index-previous_002dhistory-_0028C_002dp_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move &lsquo;back&rsquo; through the history list, fetching the previous command.
+</p>
+</dd>
+<dt id='index-next_002dhistory-_0028C_002dn_0029'><span><code>next-history (C-n)</code><a href='#index-next_002dhistory-_0028C_002dn_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move &lsquo;forward&rsquo; through the history list, fetching the next command.
+</p>
+</dd>
+<dt id='index-beginning_002dof_002dhistory-_0028M_002d_003c_0029'><span><code>beginning-of-history (M-&lt;)</code><a href='#index-beginning_002dof_002dhistory-_0028M_002d_003c_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the first line in the history.
+</p>
+</dd>
+<dt id='index-end_002dof_002dhistory-_0028M_002d_003e_0029'><span><code>end-of-history (M-&gt;)</code><a href='#index-end_002dof_002dhistory-_0028M_002d_003e_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Move to the end of the input history, i.e., the line currently
being entered.
-<P>
-
-<A NAME="IDX77"></A>
-<DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX78"></A>
-Search backward starting at the current line and moving `up' through
+</p>
+</dd>
+<dt id='index-reverse_002dsearch_002dhistory-_0028C_002dr_0029'><span><code>reverse-search-history (C-r)</code><a href='#index-reverse_002dsearch_002dhistory-_0028C_002dr_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search backward starting at the current line and moving &lsquo;up&rsquo; through
the history as necessary. This is an incremental search.
This command sets the region to the matched text and activates the mark.
-<P>
-
-<A NAME="IDX79"></A>
-<DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX80"></A>
-Search forward starting at the current line and moving `down' through
+</p>
+</dd>
+<dt id='index-forward_002dsearch_002dhistory-_0028C_002ds_0029'><span><code>forward-search-history (C-s)</code><a href='#index-forward_002dsearch_002dhistory-_0028C_002ds_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search forward starting at the current line and moving &lsquo;down&rsquo; through
the history as necessary. This is an incremental search.
This command sets the region to the matched text and activates the mark.
-<P>
-
-<A NAME="IDX81"></A>
-<DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX82"></A>
-Search backward starting at the current line and moving `up'
+</p>
+</dd>
+<dt id='index-non_002dincremental_002dreverse_002dsearch_002dhistory-_0028M_002dp_0029'><span><code>non-incremental-reverse-search-history (M-p)</code><a href='#index-non_002dincremental_002dreverse_002dsearch_002dhistory-_0028M_002dp_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search backward starting at the current line and moving &lsquo;up&rsquo;
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="IDX83"></A>
-<DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX84"></A>
-Search forward starting at the current line and moving `down'
+</p>
+</dd>
+<dt id='index-non_002dincremental_002dforward_002dsearch_002dhistory-_0028M_002dn_0029'><span><code>non-incremental-forward-search-history (M-n)</code><a href='#index-non_002dincremental_002dforward_002dsearch_002dhistory-_0028M_002dn_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Search forward starting at the current line and moving &lsquo;down&rsquo;
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="IDX85"></A>
-<DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX86"></A>
-Search forward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsearch_002dforward-_0028_0029'><span><code>history-search-forward ()</code><a href='#index-history_002dsearch_002dforward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX87"></A>
-<DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX88"></A>
-Search backward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsearch_002dbackward-_0028_0029'><span><code>history-search-backward ()</code><a href='#index-history_002dsearch_002dbackward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX89"></A>
-<DT><CODE>history-substring-search-forward ()</CODE>
-<DD><A NAME="IDX90"></A>
-Search forward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsubstring_002dsearch_002dforward-_0028_0029'><span><code>history-substring-search-forward ()</code><a href='#index-history_002dsubstring_002dsearch_002dforward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX91"></A>
-<DT><CODE>history-substring-search-backward ()</CODE>
-<DD><A NAME="IDX92"></A>
-Search backward through the history for the string of characters
+</p>
+</dd>
+<dt id='index-history_002dsubstring_002dsearch_002dbackward-_0028_0029'><span><code>history-substring-search-backward ()</code><a href='#index-history_002dsubstring_002dsearch_002dbackward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX93"></A>
-<DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX94"></A>
-Insert the first argument to the previous command (usually
+</p>
+</dd>
+<dt id='index-yank_002dnth_002darg-_0028M_002dC_002dy_0029'><span><code>yank-nth-arg (M-C-y)</code><a href='#index-yank_002dnth_002darg-_0028M_002dC_002dy_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert the first argument to the previous command (usually
the second word on the previous line) at point.
-With an argument <VAR>n</VAR>,
-insert the <VAR>n</VAR>th word from the previous command (the words
+With an argument <var>n</var>,
+insert the <var>n</var>th word from the previous command (the words
in the previous command begin with word 0). A negative argument
-inserts the <VAR>n</VAR>th word from the end of the previous command.
-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="IDX95"></A>
-<DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX96"></A>
-Insert last argument to the previous command (the last word of the
+inserts the <var>n</var>th word from the end of the previous command.
+Once the argument <var>n</var> is computed, the argument is extracted
+as if the &lsquo;<samp>!<var>n</var></samp>&rsquo; history expansion had been specified.
+</p>
+</dd>
+<dt id='index-yank_002dlast_002darg-_0028M_002d_002e-or-M_002d_005f_0029'><span><code>yank-last-arg (M-. or M-_)</code><a href='#index-yank_002dlast_002darg-_0028M_002d_002e-or-M_002d_005f_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>.
-Successive calls to <CODE>yank-last-arg</CODE> move back through the history
+With a numeric argument, behave exactly like <code>yank-nth-arg</code>.
+Successive calls to <code>yank-last-arg</code> 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 <SAMP>`!$'</SAMP> history expansion had been specified.
-<P>
-
-<A NAME="IDX97"></A>
-<DT><CODE>operate-and-get-next (C-o)</CODE>
-<DD><A NAME="IDX98"></A>
-Accept the current line for return to the calling application as if a
+as if the &lsquo;<samp>!$</samp>&rsquo; history expansion had been specified.
+</p>
+</dd>
+<dt id='index-operate_002dand_002dget_002dnext-_0028C_002do_0029'><span><code>operate-and-get-next (C-o)</code><a href='#index-operate_002dand_002dget_002dnext-_0028C_002do_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Accept the current line for return to the calling application as if a
newline had been entered,
and fetch the next line relative to the current line from the history
for editing.
A numeric argument, if supplied, specifies the history entry to use instead
of the current line.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Text"></A>
-<HR SIZE="6">
-<A NAME="SEC16"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC15"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.3 Commands For Changing Text </H3>
-<!--docid::SEC16::-->
-<P>
-
-<DL COMPACT>
-
-<A NAME="IDX99"></A>
-<DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
-<DD><A NAME="IDX100"></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
+</p>
+</dd>
+<dt id='index-fetch_002dhistory-_0028_0029'><span><code>fetch-history ()</code><a href='#index-fetch_002dhistory-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>With a numeric argument, fetch that entry from the history list
+and make it the current line.
+Without an argument, move back to the first entry in the history list.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-Text">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-Killing" accesskey="n" rel="next">Killing And Yanking</a>, Previous: <a href="#Commands-For-History" accesskey="p" rel="prev">Commands For Manipulating The History</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Commands-For-Changing-Text"></span><h4 class="subsection">1.4.3 Commands For Changing Text</h4>
+
+<dl compact="compact">
+<dt id='index-end_002dof_002dfile-_0028usually-C_002dd_0029'><span><code><i>end-of-file</i> (usually C-d)</code><a href='#index-end_002dof_002dfile-_0028usually-C_002dd_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX101"></A>
-<DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX102"></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>
+interprets it as the end of input and returns <small>EOF</small>.
+</p>
+</dd>
+<dt id='index-delete_002dchar-_0028C_002dd_0029'><span><code>delete-char (C-d)</code><a href='#index-delete_002dchar-_0028C_002dd_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete the character at point. If this function is bound to the
+same character as the tty <small>EOF</small> character, as <kbd>C-d</kbd>
commonly is, see above for the effects.
-<P>
-
-<A NAME="IDX103"></A>
-<DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX104"></A>
-Delete the character behind the cursor. A numeric argument means
+</p>
+</dd>
+<dt id='index-backward_002ddelete_002dchar-_0028Rubout_0029'><span><code>backward-delete-char (Rubout)</code><a href='#index-backward_002ddelete_002dchar-_0028Rubout_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete the character behind the cursor. A numeric argument means
to kill the characters instead of deleting them.
-<P>
-
-<A NAME="IDX105"></A>
-<DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX106"></A>
-Delete the character under the cursor, unless the cursor is at the
+</p>
+</dd>
+<dt id='index-forward_002dbackward_002ddelete_002dchar-_0028_0029'><span><code>forward-backward-delete-char ()</code><a href='#index-forward_002dbackward_002ddelete_002dchar-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX107"></A>
-<DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX108"></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="IDX109"></A>
-<DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX110"></A>
-Insert a tab character.
-<P>
-
-<A NAME="IDX111"></A>
-<DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX112"></A>
-Insert yourself.
-<P>
-
-<A NAME="IDX113"></A>
-<DT><CODE>bracketed-paste-begin ()</CODE>
-<DD><A NAME="IDX114"></A>
-This function is intended to be bound to the "bracketed paste" escape
+</p>
+</dd>
+<dt id='index-quoted_002dinsert-_0028C_002dq-or-C_002dv_0029'><span><code>quoted-insert (C-q or C-v)</code><a href='#index-quoted_002dinsert-_0028C_002dq-or-C_002dv_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add the next character typed to the line verbatim. This is
+how to insert key sequences like <kbd>C-q</kbd>, for example.
+</p>
+</dd>
+<dt id='index-tab_002dinsert-_0028M_002dTAB_0029'><span><code>tab-insert (M-<span class="key">TAB</span>)</code><a href='#index-tab_002dinsert-_0028M_002dTAB_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert a tab character.
+</p>
+</dd>
+<dt id='index-self_002dinsert-_0028a_002c-b_002c-A_002c-1_002c-_0021_002c-_2026_0029'><span><code>self-insert (a, b, A, 1, !, &hellip;)</code><a href='#index-self_002dinsert-_0028a_002c-b_002c-A_002c-1_002c-_0021_002c-_2026_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert yourself.
+</p>
+</dd>
+<dt id='index-bracketed_002dpaste_002dbegin-_0028_0029'><span><code>bracketed-paste-begin ()</code><a href='#index-bracketed_002dpaste_002dbegin-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>This function is intended to be bound to the &quot;bracketed paste&quot; 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
+are inserted as if each one was bound to <code>self-insert</code> instead of
executing any editing commands.
-<P>
-
-Bracketed paste sets the region (the characters between point and the mark)
-to the inserted text. It uses the concept of an <EM>active mark</EM>: when the
-mark is active, Readline redisplay uses the terminal's standout mode to
+</p>
+<p>Bracketed paste sets the region (the characters between point and the mark)
+to the inserted text. It uses the concept of an <em>active mark</em>: when the
+mark is active, Readline redisplay uses the terminal&rsquo;s standout mode to
denote the region.
-</P><P>
-
-<A NAME="IDX115"></A>
-<DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX116"></A>
-Drag the character before the cursor forward over
+</p>
+</dd>
+<dt id='index-transpose_002dchars-_0028C_002dt_0029'><span><code>transpose-chars (C-t)</code><a href='#index-transpose_002dchars-_0028C_002dt_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-<P>
-
-<A NAME="IDX117"></A>
-<DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX118"></A>
-Drag the word before point past the word after point,
+</p>
+</dd>
+<dt id='index-transpose_002dwords-_0028M_002dt_0029'><span><code>transpose-words (M-t)</code><a href='#index-transpose_002dwords-_0028M_002dt_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX119"></A>
-<DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX120"></A>
-Uppercase the current (or following) word. With a negative argument,
+</p>
+</dd>
+<dt id='index-upcase_002dword-_0028M_002du_0029'><span><code>upcase-word (M-u)</code><a href='#index-upcase_002dword-_0028M_002du_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Uppercase the current (or following) word. With a negative argument,
uppercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX121"></A>
-<DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX122"></A>
-Lowercase the current (or following) word. With a negative argument,
+</p>
+</dd>
+<dt id='index-downcase_002dword-_0028M_002dl_0029'><span><code>downcase-word (M-l)</code><a href='#index-downcase_002dword-_0028M_002dl_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Lowercase the current (or following) word. With a negative argument,
lowercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX123"></A>
-<DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX124"></A>
-Capitalize the current (or following) word. With a negative argument,
+</p>
+</dd>
+<dt id='index-capitalize_002dword-_0028M_002dc_0029'><span><code>capitalize-word (M-c)</code><a href='#index-capitalize_002dword-_0028M_002dc_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Capitalize the current (or following) word. With a negative argument,
capitalize the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX125"></A>
-<DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX126"></A>
-Toggle overwrite mode. With an explicit positive numeric argument,
+</p>
+</dd>
+<dt id='index-overwrite_002dmode-_0028_0029'><span><code>overwrite-mode ()</code><a href='#index-overwrite_002dmode-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>emacs</CODE> mode; <CODE>vi</CODE> mode does overwrite differently.
-Each call to <CODE>readline()</CODE> starts in insert mode.
-<P>
-
-In overwrite mode, characters bound to <CODE>self-insert</CODE> replace
+<code>emacs</code> mode; <code>vi</code> mode does overwrite differently.
+Each call to <code>readline()</code> starts in insert mode.
+</p>
+<p>In overwrite mode, characters bound to <code>self-insert</code> replace
the text at point rather than pushing the text to the right.
-Characters bound to <CODE>backward-delete-char</CODE> replace the character
+Characters bound to <code>backward-delete-char</code> replace the character
before point with a space.
-</P><P>
-
-By default, this command is unbound.
-</P><P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Killing"></A>
-<HR SIZE="6">
-<A NAME="SEC17"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.4 Killing And Yanking </H3>
-<!--docid::SEC17::-->
-<P>
-
-<DL COMPACT>
-
-<A NAME="IDX127"></A>
-<DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX128"></A>
-Kill the text from point to the end of the line.
+</p>
+<p>By default, this command is unbound.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-Killing">
+<div class="header">
+<p>
+Next: <a href="#Numeric-Arguments" accesskey="n" rel="next">Specifying Numeric Arguments</a>, Previous: <a href="#Commands-For-Text" accesskey="p" rel="prev">Commands For Changing Text</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Killing-And-Yanking"></span><h4 class="subsection">1.4.4 Killing And Yanking</h4>
+
+<dl compact="compact">
+<dt id='index-kill_002dline-_0028C_002dk_0029'><span><code>kill-line (C-k)</code><a href='#index-kill_002dline-_0028C_002dk_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the text from point to the end of the line.
With a negative numeric argument, kill backward from the cursor to the
beginning of the current line.
-<P>
-
-<A NAME="IDX129"></A>
-<DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX130"></A>
-Kill backward from the cursor to the beginning of the current line.
+</p>
+</dd>
+<dt id='index-backward_002dkill_002dline-_0028C_002dx-Rubout_0029'><span><code>backward-kill-line (C-x Rubout)</code><a href='#index-backward_002dkill_002dline-_0028C_002dx-Rubout_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill backward from the cursor to the beginning of the current line.
With a negative numeric argument, kill forward from the cursor to the
end of the current line.
-<P>
-
-<A NAME="IDX131"></A>
-<DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX132"></A>
-Kill backward from the cursor to the beginning of the current line.
-<P>
-
-<A NAME="IDX133"></A>
-<DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX134"></A>
-Kill all characters on the current line, no matter where point is.
+</p>
+</dd>
+<dt id='index-unix_002dline_002ddiscard-_0028C_002du_0029'><span><code>unix-line-discard (C-u)</code><a href='#index-unix_002dline_002ddiscard-_0028C_002du_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill backward from the cursor to the beginning of the current line.
+</p>
+</dd>
+<dt id='index-kill_002dwhole_002dline-_0028_0029'><span><code>kill-whole-line ()</code><a href='#index-kill_002dwhole_002dline-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill all characters on the current line, no matter where point is.
By default, this is unbound.
-<P>
-
-<A NAME="IDX135"></A>
-<DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX136"></A>
-Kill from point to the end of the current word, or if between
+</p>
+</dd>
+<dt id='index-kill_002dword-_0028M_002dd_0029'><span><code>kill-word (M-d)</code><a href='#index-kill_002dword-_0028M_002dd_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX137"></A>
-<DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX138"></A>
-Kill the word behind point.
-Word boundaries are the same as <CODE>backward-word</CODE>.
-<P>
-
-<A NAME="IDX139"></A>
-<DT><CODE>shell-transpose-words (M-C-t)</CODE>
-<DD><A NAME="IDX140"></A>
-Drag the word before point past the word after point,
+Word boundaries are the same as <code>forward-word</code>.
+</p>
+</dd>
+<dt id='index-backward_002dkill_002dword-_0028M_002dDEL_0029'><span><code>backward-kill-word (M-<span class="key">DEL</span>)</code><a href='#index-backward_002dkill_002dword-_0028M_002dDEL_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the word behind point.
+Word boundaries are the same as <code>backward-word</code>.
+</p>
+
+</dd>
+<dt id='index-shell_002dtranspose_002dwords-_0028M_002dC_002dt_0029'><span><code>shell-transpose-words (M-C-t)</code><a href='#index-shell_002dtranspose_002dwords-_0028M_002dC_002dt_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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.
-Word boundaries are the same as <CODE>shell-forward-word</CODE> and
-<CODE>shell-backward-word</CODE>.
-<P>
-
-<A NAME="IDX141"></A>
-<DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX142"></A>
-Kill the word behind point, using white space as a word boundary.
+Word boundaries are the same as <code>shell-forward-word</code> and
+<code>shell-backward-word</code>.
+</p>
+</dd>
+<dt id='index-unix_002dword_002drubout-_0028C_002dw_0029'><span><code>unix-word-rubout (C-w)</code><a href='#index-unix_002dword_002drubout-_0028C_002dw_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the word behind point, using white space as a word boundary.
The killed text is saved on the kill-ring.
-<P>
-
-<A NAME="IDX143"></A>
-<DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX144"></A>
-Kill the word behind point, using white space and the slash character
+</p>
+</dd>
+<dt id='index-unix_002dfilename_002drubout-_0028_0029'><span><code>unix-filename-rubout ()</code><a href='#index-unix_002dfilename_002drubout-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX145"></A>
-<DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX146"></A>
-Delete all spaces and tabs around point. By default, this is unbound.
-<P>
-
-<A NAME="IDX147"></A>
-<DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX148"></A>
-Kill the text in the current region.
+</p>
+</dd>
+<dt id='index-delete_002dhorizontal_002dspace-_0028_0029'><span><code>delete-horizontal-space ()</code><a href='#index-delete_002dhorizontal_002dspace-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Delete all spaces and tabs around point. By default, this is unbound.
+</p>
+</dd>
+<dt id='index-kill_002dregion-_0028_0029'><span><code>kill-region ()</code><a href='#index-kill_002dregion-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Kill the text in the current region.
By default, this command is unbound.
-<P>
-
-<A NAME="IDX149"></A>
-<DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX150"></A>
-Copy the text in the region to the kill buffer, so it can be yanked
+</p>
+</dd>
+<dt id='index-copy_002dregion_002das_002dkill-_0028_0029'><span><code>copy-region-as-kill ()</code><a href='#index-copy_002dregion_002das_002dkill-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX151"></A>
-<DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX152"></A>
-Copy the word before point to the kill buffer.
-The word boundaries are the same as <CODE>backward-word</CODE>.
+</p>
+</dd>
+<dt id='index-copy_002dbackward_002dword-_0028_0029'><span><code>copy-backward-word ()</code><a href='#index-copy_002dbackward_002dword-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX153"></A>
-<DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX154"></A>
-Copy the word following point to the kill buffer.
-The word boundaries are the same as <CODE>forward-word</CODE>.
+</p>
+</dd>
+<dt id='index-copy_002dforward_002dword-_0028_0029'><span><code>copy-forward-word ()</code><a href='#index-copy_002dforward_002dword-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX155"></A>
-<DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX156"></A>
-Yank the top of the kill ring into the buffer at point.
-<P>
-
-<A NAME="IDX157"></A>
-<DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX158"></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>
-<P>
-
-<A NAME="Numeric Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC18"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.5 Specifying Numeric Arguments </H3>
-<!--docid::SEC18::-->
-<DL COMPACT>
-
-<A NAME="IDX159"></A>
-<DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX160"></A>
-Add this digit to the argument already accumulating, or start a new
-argument. <KBD>M--</KBD> starts a negative argument.
-<P>
-
-<A NAME="IDX161"></A>
-<DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX162"></A>
-This is another way to specify an argument.
+</p>
+</dd>
+<dt id='index-yank-_0028C_002dy_0029'><span><code>yank (C-y)</code><a href='#index-yank-_0028C_002dy_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Yank the top of the kill ring into the buffer at point.
+</p>
+</dd>
+<dt id='index-yank_002dpop-_0028M_002dy_0029'><span><code>yank-pop (M-y)</code><a href='#index-yank_002dpop-_0028M_002dy_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>.
+</p></dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Numeric-Arguments">
+<div class="header">
+<p>
+Next: <a href="#Commands-For-Completion" accesskey="n" rel="next">Letting Readline Type For You</a>, Previous: <a href="#Commands-For-Killing" accesskey="p" rel="prev">Killing And Yanking</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Specifying-Numeric-Arguments"></span><h4 class="subsection">1.4.5 Specifying Numeric Arguments</h4>
+<dl compact="compact">
+<dt id='index-digit_002dargument-_0028M_002d0_002c-M_002d1_002c-_2026-M_002d_002d_0029'><span><code>digit-argument (<kbd>M-0</kbd>, <kbd>M-1</kbd>, &hellip; <kbd>M--</kbd>)</code><a href='#index-digit_002dargument-_0028M_002d0_002c-M_002d1_002c-_2026-M_002d_002d_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Add this digit to the argument already accumulating, or start a new
+argument. <kbd>M--</kbd> starts a negative argument.
+</p>
+</dd>
+<dt id='index-universal_002dargument-_0028_0029'><span><code>universal-argument ()</code><a href='#index-universal_002dargument-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>
+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 nor minus sign, the argument count
@@ -2008,424 +1792,312 @@ 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.
-</DL>
-<P>
-
-<A NAME="Commands For Completion"></A>
-<HR SIZE="6">
-<A NAME="SEC19"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.6 Letting Readline Type For You </H3>
-<!--docid::SEC19::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX163"></A>
-<DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX164"></A>
-Attempt to perform completion on the text before point.
+</p></dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Commands-For-Completion">
+<div class="header">
+<p>
+Next: <a href="#Keyboard-Macros" accesskey="n" rel="next">Keyboard Macros</a>, Previous: <a href="#Numeric-Arguments" accesskey="p" rel="prev">Specifying Numeric Arguments</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Letting-Readline-Type-For-You"></span><h4 class="subsection">1.4.6 Letting Readline Type For You</h4>
+
+<dl compact="compact">
+<dt id='index-complete-_0028TAB_0029'><span><code>complete (<span class="key">TAB</span>)</code><a href='#index-complete-_0028TAB_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Attempt to perform completion on the text before point.
The actual completion performed is application-specific.
The default is filename completion.
-<P>
-
-<A NAME="IDX165"></A>
-<DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX166"></A>
-List the possible completions of the text before point.
+</p>
+</dd>
+<dt id='index-possible_002dcompletions-_0028M_002d_003f_0029'><span><code>possible-completions (M-?)</code><a href='#index-possible_002dcompletions-_0028M_002d_003f_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX167"></A>
-<DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX168"></A>
-Insert all completions of the text before point that would have
-been generated by <CODE>possible-completions</CODE>.
-<P>
-
-<A NAME="IDX169"></A>
-<DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX170"></A>
-Similar to <CODE>complete</CODE>, but replaces the word to be completed
+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>
+</dd>
+<dt id='index-insert_002dcompletions-_0028M_002d_002a_0029'><span><code>insert-completions (M-*)</code><a href='#index-insert_002dcompletions-_0028M_002d_002a_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Insert all completions of the text before point that would have
+been generated by <code>possible-completions</code>.
+</p>
+</dd>
+<dt id='index-menu_002dcomplete-_0028_0029'><span><code>menu-complete ()</code><a href='#index-menu_002dcomplete-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
+Repeated execution of <code>menu-complete</code> 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 <CODE>bell-style</CODE>)
+(subject to the setting of <code>bell-style</code>)
and the original text is restored.
-An argument of <VAR>n</VAR> moves <VAR>n</VAR> positions forward in the list
+An argument of <var>n</var> moves <var>n</var> 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 <KBD>TAB</KBD>, but is unbound
+This command is intended to be bound to <tt class="key">TAB</tt>, but is unbound
by default.
-<P>
-
-<A NAME="IDX171"></A>
-<DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX172"></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
+</p>
+</dd>
+<dt id='index-menu_002dcomplete_002dbackward-_0028_0029'><span><code>menu-complete-backward ()</code><a href='#index-menu_002dcomplete_002dbackward-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX173"></A>
-<DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX174"></A>
-Deletes the character under the cursor if not at the beginning or
-end of the line (like <CODE>delete-char</CODE>).
+</p>
+</dd>
+<dt id='index-delete_002dchar_002dor_002dlist-_0028_0029'><span><code>delete-char-or-list ()</code><a href='#index-delete_002dchar_002dor_002dlist-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
-<CODE>possible-completions</CODE>.
+<code>possible-completions</code>.
This command is unbound by default.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Keyboard Macros"></A>
-<HR SIZE="6">
-<A NAME="SEC20"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.7 Keyboard Macros </H3>
-<!--docid::SEC20::-->
-<DL COMPACT>
-
-<A NAME="IDX175"></A>
-<DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX176"></A>
-Begin saving the characters typed into the current keyboard macro.
-<P>
-
-<A NAME="IDX177"></A>
-<DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX178"></A>
-Stop saving the characters typed into the current keyboard macro
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Keyboard-Macros">
+<div class="header">
+<p>
+Next: <a href="#Miscellaneous-Commands" accesskey="n" rel="next">Some Miscellaneous Commands</a>, Previous: <a href="#Commands-For-Completion" accesskey="p" rel="prev">Letting Readline Type For You</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Keyboard-Macros-1"></span><h4 class="subsection">1.4.7 Keyboard Macros</h4>
+<dl compact="compact">
+<dt id='index-start_002dkbd_002dmacro-_0028C_002dx-_0028_0029'><span><code>start-kbd-macro (C-x ()</code><a href='#index-start_002dkbd_002dmacro-_0028C_002dx-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Begin saving the characters typed into the current keyboard macro.
+</p>
+</dd>
+<dt id='index-end_002dkbd_002dmacro-_0028C_002dx-_0029_0029'><span><code>end-kbd-macro (C-x ))</code><a href='#index-end_002dkbd_002dmacro-_0028C_002dx-_0029_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Stop saving the characters typed into the current keyboard macro
and save the definition.
-<P>
-
-<A NAME="IDX179"></A>
-<DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX180"></A>
-Re-execute the last keyboard macro defined, by making the characters
+</p>
+</dd>
+<dt id='index-call_002dlast_002dkbd_002dmacro-_0028C_002dx-e_0029'><span><code>call-last-kbd-macro (C-x e)</code><a href='#index-call_002dlast_002dkbd_002dmacro-_0028C_002dx-e_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
-<P>
-
-<A NAME="IDX181"></A>
-<DT><CODE>print-last-kbd-macro ()</CODE>
-<DD><A NAME="IDX182"></A>
-Print the last keboard macro defined in a format suitable for the
-<VAR>inputrc</VAR> file.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Miscellaneous Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC21"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.8 Some Miscellaneous Commands </H3>
-<!--docid::SEC21::-->
-<DL COMPACT>
-
-<A NAME="IDX183"></A>
-<DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX184"></A>
-Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
+</p>
+</dd>
+<dt id='index-print_002dlast_002dkbd_002dmacro-_0028_0029'><span><code>print-last-kbd-macro ()</code><a href='#index-print_002dlast_002dkbd_002dmacro-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Print the last keboard macro defined in a format suitable for the
+<var>inputrc</var> file.
+</p>
+</dd>
+</dl>
+
+<hr>
+</div>
+<div class="subsection" id="Miscellaneous-Commands">
+<div class="header">
+<p>
+Previous: <a href="#Keyboard-Macros" accesskey="p" rel="prev">Keyboard Macros</a>, Up: <a href="#Bindable-Readline-Commands" accesskey="u" rel="up">Bindable Readline Commands</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Some-Miscellaneous-Commands"></span><h4 class="subsection">1.4.8 Some Miscellaneous Commands</h4>
+<dl compact="compact">
+<dt id='index-re_002dread_002dinit_002dfile-_0028C_002dx-C_002dr_0029'><span><code>re-read-init-file (C-x C-r)</code><a href='#index-re_002dread_002dinit_002dfile-_0028C_002dx-C_002dr_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Read in the contents of the <var>inputrc</var> file, and incorporate
any bindings or variable assignments found there.
-<P>
-
-<A NAME="IDX185"></A>
-<DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX186"></A>
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-<CODE>bell-style</CODE>).
-<P>
-
-<A NAME="IDX187"></A>
-<DT><CODE>do-lowercase-version (M-A, M-B, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX188"></A>
-If the metafied character <VAR>x</VAR> is upper case, run the command
+</p>
+</dd>
+<dt id='index-abort-_0028C_002dg_0029'><span><code>abort (C-g)</code><a href='#index-abort-_0028C_002dg_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Abort the current editing command and
+ring the terminal&rsquo;s bell (subject to the setting of
+<code>bell-style</code>).
+</p>
+</dd>
+<dt id='index-do_002dlowercase_002dversion-_0028M_002dA_002c-M_002dB_002c-M_002dx_002c-_2026_0029'><span><code>do-lowercase-version (M-A, M-B, M-<var>x</var>, &hellip;)</code><a href='#index-do_002dlowercase_002dversion-_0028M_002dA_002c-M_002dB_002c-M_002dx_002c-_2026_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>If the metafied character <var>x</var> is upper case, run the command
that is bound to the corresponding metafied lower case character.
-The behavior is undefined if <VAR>x</VAR> is already lower case.
-<P>
-
-<A NAME="IDX189"></A>
-<DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX190"></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="IDX191"></A>
-<DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX192"></A>
-Incremental undo, separately remembered for each line.
-<P>
-
-<A NAME="IDX193"></A>
-<DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX194"></A>
-Undo all changes made to this line. This is like executing the <CODE>undo</CODE>
+The behavior is undefined if <var>x</var> is already lower case.
+</p>
+</dd>
+<dt id='index-prefix_002dmeta-_0028ESC_0029'><span><code>prefix-meta (<span class="key">ESC</span>)</code><a href='#index-prefix_002dmeta-_0028ESC_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Metafy the next character typed. This is for keyboards
+without a meta key. Typing &lsquo;<samp><span class="key">ESC</span> f</samp>&rsquo; is equivalent to typing
+<kbd>M-f</kbd>.
+</p>
+</dd>
+<dt id='index-undo-_0028C_002d_005f-or-C_002dx-C_002du_0029'><span><code>undo (C-_ or C-x C-u)</code><a href='#index-undo-_0028C_002d_005f-or-C_002dx-C_002du_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Incremental undo, separately remembered for each line.
+</p>
+</dd>
+<dt id='index-revert_002dline-_0028M_002dr_0029'><span><code>revert-line (M-r)</code><a href='#index-revert_002dline-_0028M_002dr_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX195"></A>
-<DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX196"></A>
-Perform tilde expansion on the current word.
-<P>
-
-<A NAME="IDX197"></A>
-<DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX198"></A>
-Set the mark to the point. If a
+</p>
+</dd>
+<dt id='index-tilde_002dexpand-_0028M_002d_007e_0029'><span><code>tilde-expand (M-~)</code><a href='#index-tilde_002dexpand-_0028M_002d_007e_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Perform tilde expansion on the current word.
+</p>
+</dd>
+<dt id='index-set_002dmark-_0028C_002d_0040_0029'><span><code>set-mark (C-@)</code><a href='#index-set_002dmark-_0028C_002d_0040_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>Set the mark to the point. If a
numeric argument is supplied, the mark is set to that position.
-<P>
-
-<A NAME="IDX199"></A>
-<DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX200"></A>
-Swap the point with the mark. The current cursor position is set to
+</p>
+</dd>
+<dt id='index-exchange_002dpoint_002dand_002dmark-_0028C_002dx-C_002dx_0029'><span><code>exchange-point-and-mark (C-x C-x)</code><a href='#index-exchange_002dpoint_002dand_002dmark-_0028C_002dx-C_002dx_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX201"></A>
-<DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX202"></A>
-A character is read and point is moved to the next occurrence of that
+</p>
+</dd>
+<dt id='index-character_002dsearch-_0028C_002d_005d_0029'><span><code>character-search (C-])</code><a href='#index-character_002dsearch-_0028C_002d_005d_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX203"></A>
-<DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX204"></A>
-A character is read and point is moved to the previous occurrence
+</p>
+</dd>
+<dt id='index-character_002dsearch_002dbackward-_0028M_002dC_002d_005d_0029'><span><code>character-search-backward (M-C-])</code><a href='#index-character_002dsearch_002dbackward-_0028M_002dC_002d_005d_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX205"></A>
-<DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX206"></A>
-Read enough characters to consume a multi-key sequence such as those
+</p>
+</dd>
+<dt id='index-skip_002dcsi_002dsequence-_0028_0029'><span><code>skip-csi-sequence ()</code><a href='#index-skip_002dcsi_002dsequence-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
+bound to &quot;\e[&quot;, 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-[.
-<P>
-
-<A NAME="IDX207"></A>
-<DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX208"></A>
-Without a numeric argument, the value of the <CODE>comment-begin</CODE>
+</p>
+</dd>
+<dt id='index-insert_002dcomment-_0028M_002d_0023_0029'><span><code>insert-comment (M-#)</code><a href='#index-insert_002dcomment-_0028M_002d_0023_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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
the characters at the beginning of the line do not match the value
-of <CODE>comment-begin</CODE>, the value is inserted, otherwise
-the characters in <CODE>comment-begin</CODE> are deleted from the beginning of
+of <code>comment-begin</code>, the value is inserted, otherwise
+the characters in <code>comment-begin</code> are deleted from the beginning of
the line.
In either case, the line is accepted as if a newline had been typed.
-<P>
-
-<A NAME="IDX209"></A>
-<DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX210"></A>
-Print all of the functions and their key bindings to the
+</p>
+</dd>
+<dt id='index-dump_002dfunctions-_0028_0029'><span><code>dump-functions ()</code><a href='#index-dump_002dfunctions-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX211"></A>
-<DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX212"></A>
-Print all of the settable variables and their values to the
+of an <var>inputrc</var> file. This command is unbound by default.
+</p>
+</dd>
+<dt id='index-dump_002dvariables-_0028_0029'><span><code>dump-variables ()</code><a href='#index-dump_002dvariables-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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="IDX213"></A>
-<DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX214"></A>
-Print all of the Readline key sequences bound to macros and the
+of an <var>inputrc</var> file. This command is unbound by default.
+</p>
+</dd>
+<dt id='index-dump_002dmacros-_0028_0029'><span><code>dump-macros ()</code><a href='#index-dump_002dmacros-_0028_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>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>
+of an <var>inputrc</var> file. This command is unbound by default.
+</p>
-<A NAME="IDX215"></A>
-<DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX216"></A>
-When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
+</dd>
+<dt id='index-emacs_002dediting_002dmode-_0028C_002de_0029'><span><code>emacs-editing-mode (C-e)</code><a href='#index-emacs_002dediting_002dmode-_0028C_002de_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When in <code>vi</code> command mode, this causes a switch to <code>emacs</code>
editing mode.
-<P>
-
-<A NAME="IDX217"></A>
-<DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX218"></A>
-When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
+</p>
+</dd>
+<dt id='index-vi_002dediting_002dmode-_0028M_002dC_002dj_0029'><span><code>vi-editing-mode (M-C-j)</code><a href='#index-vi_002dediting_002dmode-_0028M_002dC_002dj_0029' class='copiable-anchor'> &para;</a></span></dt>
+<dd><p>When in <code>emacs</code> editing mode, this causes a switch to <code>vi</code>
editing mode.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Readline vi Mode"></A>
-<HR SIZE="6">
-<A NAME="SEC22"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.5 Readline vi Mode </H2>
-<!--docid::SEC22::-->
-<P>
-
-While the Readline library does not have a full set of <CODE>vi</CODE>
+</p>
+
+</dd>
+</dl>
+
+<hr>
+</div>
+</div>
+<div class="section" id="Readline-vi-Mode">
+<div class="header">
+<p>
+Previous: <a href="#Bindable-Readline-Commands" accesskey="p" rel="prev">Bindable Readline Commands</a>, Up: <a href="#Command-Line-Editing" accesskey="u" rel="up">Command Line Editing</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="Readline-vi-Mode-1"></span><h3 class="section">1.5 Readline vi Mode</h3>
+
+<p>While the Readline library does not have a full set of <code>vi</code>
editing functions, it does contain enough to allow simple editing
-of the line. The Readline <CODE>vi</CODE> mode behaves as specified in
-the POSIX standard.
-</P><P>
-
-In order to switch interactively between <CODE>emacs</CODE> and <CODE>vi</CODE>
-editing modes, use the command <KBD>M-C-j</KBD> (bound to emacs-editing-mode
-when in <CODE>vi</CODE> mode and to vi-editing-mode in <CODE>emacs</CODE> mode).
-The Readline default is <CODE>emacs</CODE> mode.
-</P><P>
-
-When you enter a line in <CODE>vi</CODE> mode, you are already placed in
-`insertion' mode, as if you had typed an <SAMP>`i'</SAMP>. Pressing <KBD>ESC</KBD>
-switches you into `command' mode, where you can edit the text of the
-line with the standard <CODE>vi</CODE> movement keys, move to previous
-history lines with <SAMP>`k'</SAMP> and subsequent lines with <SAMP>`j'</SAMP>, and
+of the line. The Readline <code>vi</code> mode behaves as specified in
+the <small>POSIX</small> standard.
+</p>
+<p>In order to switch interactively between <code>emacs</code> and <code>vi</code>
+editing modes, use the command <kbd>M-C-j</kbd> (bound to emacs-editing-mode
+when in <code>vi</code> mode and to vi-editing-mode in <code>emacs</code> mode).
+The Readline default is <code>emacs</code> mode.
+</p>
+<p>When you enter a line in <code>vi</code> mode, you are already placed in
+&lsquo;insertion&rsquo; mode, as if you had typed an &lsquo;<samp>i</samp>&rsquo;. Pressing <tt class="key">ESC</tt>
+switches you into &lsquo;command&rsquo; mode, where you can edit the text of the
+line with the standard <code>vi</code> movement keys, move to previous
+history lines with &lsquo;<samp>k</samp>&rsquo; and subsequent lines with &lsquo;<samp>j</samp>&rsquo;, and
so forth.
-</P><P>
-
-<A NAME="GNU Free Documentation License"></A>
-<HR SIZE="6">
-<A NAME="SEC23"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC23::-->
-<P>
-
-<center>
- Version 1.3, 3 November 2008
-</center>
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-<A HREF="http://fsf.org/">http://fsf.org/</A>
+</p>
+
+<hr>
+</div>
+</div>
+<div class="appendix" id="GNU-Free-Documentation-License">
+<div class="header">
+<p>
+Previous: <a href="#Command-Line-Editing" accesskey="p" rel="prev">Command Line Editing</a>, Up: <a href="#Top" accesskey="u" rel="up">GNU Readline Library</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
+</div>
+<span id="GNU-Free-Documentation-License-1"></span><h2 class="appendix">Appendix A GNU Free Documentation License</h2>
+
+<div align="center">Version 1.3, 3 November 2008
+</div>
+
+<div class="display">
+<pre class="display">Copyright &copy; 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+<a href="http://fsf.org/">http://fsf.org/</a>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
-</pre></td></tr></table></P><P>
+</pre></div>
-<OL>
-<LI>
-PREAMBLE
-<P>
+<ol start="0">
+<li> PREAMBLE
-The purpose of this License is to make a manual, textbook, or other
-functional and useful document <EM>free</EM> in the sense of freedom: to
+<p>The purpose of this License is to make a manual, textbook, or other
+functional and useful document <em>free</em> in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it,
with or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible
for modifications made by others.
-</P><P>
-
-This License is a kind of "copyleft", which means that derivative
+</p>
+<p>This License is a kind of &ldquo;copyleft&rdquo;, which means that derivative
works of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft
license designed for free software.
-</P><P>
-
-We have designed this License in order to use it for manuals for free
+</p>
+<p>We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a 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 instruction or reference.
-</P><P>
-
-<LI>
-APPLICABILITY AND DEFINITIONS
-<P>
+</p>
+</li><li> APPLICABILITY AND DEFINITIONS
-This License applies to any manual or other work, in any medium, that
+<p>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 grants a
world-wide, royalty-free license, unlimited in duration, to use that
-work under the conditions stated herein. The "Document", below,
+work under the conditions stated herein. The &ldquo;Document&rdquo;, 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
+licensee, and is addressed as &ldquo;you&rdquo;. You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.
-</P><P>
-
-A "Modified Version" of the Document means any work containing the
+</p>
+<p>A &ldquo;Modified Version&rdquo; of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.
-</P><P>
-
-A "Secondary Section" is a named appendix or a front-matter section
+</p>
+<p>A &ldquo;Secondary Section&rdquo; is a named appendix or a front-matter section
of the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall
+publishers or authors of the Document to the Document&rsquo;s overall
subject (or to related matters) and contains nothing that could fall
directly within that overall subject. (Thus, if the Document is in
part a textbook of mathematics, a Secondary Section may not explain
@@ -2433,24 +2105,21 @@ any mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.
-</P><P>
-
-The "Invariant Sections" are certain Secondary Sections whose titles
+</p>
+<p>The &ldquo;Invariant Sections&rdquo; 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.
-</P><P>
-
-The "Cover Texts" are certain short passages of text that are listed,
+</p>
+<p>The &ldquo;Cover Texts&rdquo; are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License. A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.
-</P><P>
-
-A "Transparent" copy of the Document means a machine-readable copy,
+</p>
+<p>A &ldquo;Transparent&rdquo; 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
@@ -2461,57 +2130,49 @@ 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".
-</P><P>
-
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input
-format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
-<FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification. Examples
-of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
-<FONT SIZE="-1">JPG</FONT>. Opaque formats include proprietary formats that can be
-read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
-<FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
-not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
+of text. A copy that is not &ldquo;Transparent&rdquo; is called &ldquo;Opaque&rdquo;.
+</p>
+<p>Examples of suitable formats for Transparent copies include plain
+<small>ASCII</small> without markup, Texinfo input format, LaTeX input
+format, <acronym>SGML</acronym> or <acronym>XML</acronym> using a publicly available
+<acronym>DTD</acronym>, and standard-conforming simple <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> designed for human modification. Examples
+of transparent image formats include <acronym>PNG</acronym>, <acronym>XCF</acronym> and
+<acronym>JPG</acronym>. Opaque formats include proprietary formats that can be
+read and edited only by proprietary word processors, <acronym>SGML</acronym> or
+<acronym>XML</acronym> for which the <acronym>DTD</acronym> and/or processing tools are
+not generally available, and the machine-generated <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> produced by some word processors for
output purposes only.
-</P><P>
-
-The "Title Page" means, for a printed book, the title page itself,
+</p>
+<p>The &ldquo;Title Page&rdquo; means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
+formats which do not have any title page as such, &ldquo;Title Page&rdquo; means
+the text near the most prominent appearance of the work&rsquo;s title,
preceding the beginning of the body of the text.
-</P><P>
-
-The "publisher" means any person or entity that distributes copies
+</p>
+<p>The &ldquo;publisher&rdquo; means any person or entity that distributes copies
of the Document to the public.
-</P><P>
-
-A section "Entitled XYZ" means a named subunit of the Document whose
+</p>
+<p>A section &ldquo;Entitled XYZ&rdquo; means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
-specific section name mentioned below, such as "Acknowledgements",
-"Dedications", "Endorsements", or "History".) To "Preserve the Title"
+specific section name mentioned below, such as &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, &ldquo;Endorsements&rdquo;, or &ldquo;History&rdquo;.) To &ldquo;Preserve the Title&rdquo;
of such a section when you modify the Document means that it remains a
-section "Entitled XYZ" according to this definition.
-</P><P>
-
-The Document may include Warranty Disclaimers next to the notice which
+section &ldquo;Entitled XYZ&rdquo; according to this definition.
+</p>
+<p>The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.
-</P><P>
-
-<LI>
-VERBATIM COPYING
-<P>
+</p>
+</li><li> VERBATIM COPYING
-You may copy and distribute the Document in any medium, either
+<p>You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
@@ -2520,19 +2181,15 @@ 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.
-</P><P>
-
-You may also lend copies, under the same conditions stated above, and
+</p>
+<p>You may also lend copies, under the same conditions stated above, and
you may publicly display copies.
-</P><P>
+</p>
+</li><li> COPYING IN QUANTITY
-<LI>
-COPYING IN QUANTITY
-<P>
-
-If you publish printed copies (or copies in media that commonly have
+<p>If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
-Document's license notice requires Cover Texts, you must enclose the
+Document&rsquo;s license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all 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
@@ -2542,15 +2199,13 @@ 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.
-</P><P>
-
-If the required texts for either cover are too voluminous to fit
+</p>
+<p>If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.
-</P><P>
-
-If you publish or distribute Opaque copies of the Document numbering
+</p>
+<p>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
@@ -2562,135 +2217,98 @@ 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.
-</P><P>
-
-It is requested, but not required, that you contact the authors of the
+</p>
+<p>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.
-</P><P>
-
-<LI>
-MODIFICATIONS
-<P>
+</p>
+</li><li> MODIFICATIONS
-You may copy and distribute a Modified Version of the Document under
+<p>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:
-</P><P>
-
-<OL>
-<LI>
-Use in the Title Page (and on the covers, if any) a title distinct
+</p>
+<ol type="A" start="1">
+<li> 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.
-<P>
-<LI>
-List on the Title Page, as authors, one or more persons or entities
+</li><li> List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has fewer than five),
unless they release you from this requirement.
-<P>
-<LI>
-State on the Title page the name of the publisher of the
+</li><li> State on the Title page the name of the publisher of the
Modified Version, as the publisher.
-<P>
-<LI>
-Preserve all the copyright notices of the Document.
-<P>
+</li><li> Preserve all the copyright notices of the Document.
-<LI>
-Add an appropriate copyright notice for your modifications
+</li><li> Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
-<P>
-<LI>
-Include, immediately after the copyright notices, a license notice
+</li><li> Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
-<P>
-<LI>
-Preserve in that license notice the full lists of Invariant Sections
-and required Cover Texts given in the Document's license notice.
-<P>
+</li><li> Preserve in that license notice the full lists of Invariant Sections
+and required Cover Texts given in the Document&rsquo;s license notice.
-<LI>
-Include an unaltered copy of this License.
-<P>
+</li><li> Include an unaltered copy of this License.
-<LI>
-Preserve the section Entitled "History", Preserve its Title, and add
+</li><li> Preserve the section Entitled &ldquo;History&rdquo;, 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
+there is no section Entitled &ldquo;History&rdquo; 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.
-<P>
-<LI>
-Preserve the network location, if any, given in the Document for
+</li><li> 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.
+it was based on. These may be placed in the &ldquo;History&rdquo; 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.
-<P>
-<LI>
-For any section Entitled "Acknowledgements" or "Dedications", Preserve
+</li><li> For any section Entitled &ldquo;Acknowledgements&rdquo; or &ldquo;Dedications&rdquo;, 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.
-<P>
-<LI>
-Preserve all the Invariant Sections of the Document,
+</li><li> 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.
-<P>
-<LI>
-Delete any section Entitled "Endorsements". Such a section
+</li><li> Delete any section Entitled &ldquo;Endorsements&rdquo;. Such a section
may not be included in the Modified Version.
-<P>
-<LI>
-Do not retitle any existing section to be Entitled "Endorsements" or
+</li><li> Do not retitle any existing section to be Entitled &ldquo;Endorsements&rdquo; or
to conflict in title with any Invariant Section.
-<P>
-<LI>
-Preserve any Warranty Disclaimers.
-</OL>
-<P>
+</li><li> Preserve any Warranty Disclaimers.
+</li></ol>
-If the Modified Version includes new front-matter sections or
+<p>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.
+list of Invariant Sections in the Modified Version&rsquo;s license notice.
These titles must be distinct from any other section titles.
-</P><P>
-
-You may add a section Entitled "Endorsements", provided it contains
+</p>
+<p>You may add a section Entitled &ldquo;Endorsements&rdquo;, provided it contains
nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
+parties&mdash;for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.
-</P><P>
-
-You may add a passage of up to five words as a Front-Cover Text, and a
+</p>
+<p>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
@@ -2699,26 +2317,21 @@ 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.
-</P><P>
-
-The author(s) and publisher(s) of the Document do not by this License
+</p>
+<p>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 assert or
imply endorsement of any Modified Version.
-</P><P>
+</p>
+</li><li> COMBINING DOCUMENTS
-<LI>
-COMBINING DOCUMENTS
-<P>
-
-You may combine the Document with other documents released under this
+<p>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, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.
-</P><P>
-
-The combined work need only contain one copy of this License, and
+</p>
+<p>The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
@@ -2726,60 +2339,48 @@ adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.
-</P><P>
-
-In the combination, you must combine any sections Entitled "History"
+</p>
+<p>In the combination, you must combine any sections Entitled &ldquo;History&rdquo;
in the various original documents, forming one section Entitled
-"History"; likewise combine any sections Entitled "Acknowledgements",
-and any sections Entitled "Dedications". You must delete all
-sections Entitled "Endorsements."
-</P><P>
+&ldquo;History&rdquo;; likewise combine any sections Entitled &ldquo;Acknowledgements&rdquo;,
+and any sections Entitled &ldquo;Dedications&rdquo;. You must delete all
+sections Entitled &ldquo;Endorsements.&rdquo;
+</p>
+</li><li> COLLECTIONS OF DOCUMENTS
-<LI>
-COLLECTIONS OF DOCUMENTS
-<P>
-
-You may make a collection consisting of the Document and other documents
+<p>You may make a collection consisting of the Document and other 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.
-</P><P>
-
-You may extract a single document from such a collection, and distribute
+</p>
+<p>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.
-</P><P>
-
-<LI>
-AGGREGATION WITH INDEPENDENT WORKS
-<P>
+</p>
+</li><li> AGGREGATION WITH INDEPENDENT WORKS
-A compilation of the Document or its derivatives with other separate
+<p>A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
-distribution medium, is called an "aggregate" if the copyright
+distribution medium, is called an &ldquo;aggregate&rdquo; 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.
+of the compilation&rsquo;s users beyond what the individual works permit.
When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
-</P><P>
-
-If the Cover Text requirement of section 3 is applicable to these
+</p>
+<p>If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of
-the entire aggregate, the Document's Cover Texts may be placed on
+the entire aggregate, the Document&rsquo;s Cover Texts may be placed on
covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form.
Otherwise they must appear on printed covers that bracket the whole
aggregate.
-</P><P>
-
-<LI>
-TRANSLATION
-<P>
+</p>
+</li><li> TRANSLATION
-Translation is considered a kind of modification, so you may
+<p>Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special
permission from their copyright holders, but you may include
@@ -2791,405 +2392,131 @@ the original English version of this License and the original versions
of those notices and disclaimers. In case of a disagreement between
the translation and the original version of this License or a notice
or disclaimer, the original version will prevail.
-</P><P>
-
-If a section in the Document is Entitled "Acknowledgements",
-"Dedications", or "History", the requirement (section 4) to Preserve
+</p>
+<p>If a section in the Document is Entitled &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, or &ldquo;History&rdquo;, the requirement (section 4) to Preserve
its Title (section 1) will typically require changing the actual
title.
-</P><P>
-
-<LI>
-TERMINATION
-<P>
+</p>
+</li><li> TERMINATION
-You may not copy, modify, sublicense, or distribute the Document
+<p>You may not copy, modify, sublicense, or distribute the Document
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense, or distribute it is void, and
will automatically terminate your rights under this License.
-</P><P>
-
-However, if you cease all violation of this License, then your license
+</p>
+<p>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 copyright holder
fails to notify you of the violation by some reasonable means prior to
60 days after the cessation.
-</P><P>
-
-Moreover, your license from a particular copyright holder is
+</p>
+<p>Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
-</P><P>
-
-Termination of your rights under this section does not terminate the
+</p>
+<p>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.
-</P><P>
-
-<LI>
-FUTURE REVISIONS OF THIS LICENSE
-<P>
+</p>
+</li><li> FUTURE REVISIONS OF THIS LICENSE
-The Free Software Foundation may publish new, revised versions
+<p>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
-<A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
-</P><P>
-
-Each version of the License is given a distinguishing version number.
+<a href="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</a>.
+</p>
+<p>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
+License &ldquo;or any later version&rdquo; 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 proxy's public statement of acceptance of a
+License can be used, that proxy&rsquo;s public statement of acceptance of a
version permanently authorizes you to choose that version for the
Document.
-</P><P>
-
-<LI>
-RELICENSING
-<P>
+</p>
+</li><li> RELICENSING
-"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+<p>&ldquo;Massive Multiauthor Collaboration Site&rdquo; (or &ldquo;MMC Site&rdquo;) means any
World Wide Web server that publishes copyrightable works and also
provides prominent facilities for anybody to edit those works. A
public wiki that anybody can edit is an example of such a server. A
-"Massive Multiauthor Collaboration" (or "MMC") contained in the
+&ldquo;Massive Multiauthor Collaboration&rdquo; (or &ldquo;MMC&rdquo;) contained in the
site means any set of copyrightable works thus published on the MMC
site.
-</P><P>
-
-"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+</p>
+<p>&ldquo;CC-BY-SA&rdquo; means the Creative Commons Attribution-Share Alike 3.0
license published by Creative Commons Corporation, a not-for-profit
corporation with a principal place of business in San Francisco,
California, as well as future copyleft versions of that license
published by that same organization.
-</P><P>
-
-"Incorporate" means to publish or republish a Document, in whole or
+</p>
+<p>&ldquo;Incorporate&rdquo; means to publish or republish a Document, in whole or
in part, as part of another Document.
-</P><P>
-
-An MMC is "eligible for relicensing" if it is licensed under this
+</p>
+<p>An MMC is &ldquo;eligible for relicensing&rdquo; if it is licensed under this
License, and if all works that were first published under this License
somewhere other than this MMC, and subsequently incorporated in whole
or in part into the MMC, (1) had no cover texts or invariant sections,
and (2) were thus incorporated prior to November 1, 2008.
-</P><P>
-
-The operator of an MMC Site may republish an MMC contained in the site
+</p>
+<p>The operator of an MMC Site may republish an MMC contained in the site
under CC-BY-SA on the same site at any time before August 1, 2009,
provided the MMC is eligible for relicensing.
-</P><P>
+</p>
+</li></ol>
-</OL>
-<P>
+<span id="ADDENDUM_003a-How-to-use-this-License-for-your-documents"></span><h3 class="heading">ADDENDUM: How to use this License for your documents</h3>
-<A NAME="SEC24"></A>
-<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC24::-->
-<P>
-
-To use this License in a document you have written, include a copy of
+<p>To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and
license notices just after the title page:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre> Copyright (C) <VAR>year</VAR> <VAR>your name</VAR>.
+</p>
+<div class="example">
+<pre class="example"> Copyright (C) <var>year</var> <var>your name</var>.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the "with<small>...</small>Texts." line with this:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre> with the Invariant Sections being <VAR>list their titles</VAR>, with
- the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
- being <VAR>list</VAR>.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections without Cover Texts, or some other
+</pre></div>
+
+<p>If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
+replace the &ldquo;with&hellip;Texts.&rdquo; line with this:
+</p>
+<div class="example">
+<pre class="example"> with the Invariant Sections being <var>list their titles</var>, with
+ the Front-Cover Texts being <var>list</var>, and with the Back-Cover Texts
+ being <var>list</var>.
+</pre></div>
+
+<p>If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.
-</P><P>
-
-If your document contains nontrivial examples of program code, we
+</p>
+<p>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.
-</P><P>
-
-<HR SIZE="6">
-<A NAME="SEC_Contents"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Table of Contents</H1>
-<UL>
-<A NAME="TOC1" HREF="rluserman.html#SEC1">1. Command Line Editing</A>
-<BR>
-<UL>
-<A NAME="TOC2" HREF="rluserman.html#SEC2">1.1 Introduction to Line Editing</A>
-<BR>
-<A NAME="TOC3" HREF="rluserman.html#SEC3">1.2 Readline Interaction</A>
-<BR>
-<UL>
-<A NAME="TOC4" HREF="rluserman.html#SEC4">1.2.1 Readline Bare Essentials</A>
-<BR>
-<A NAME="TOC5" HREF="rluserman.html#SEC5">1.2.2 Readline Movement Commands</A>
-<BR>
-<A NAME="TOC6" HREF="rluserman.html#SEC6">1.2.3 Readline Killing Commands</A>
-<BR>
-<A NAME="TOC7" HREF="rluserman.html#SEC7">1.2.4 Readline Arguments</A>
-<BR>
-<A NAME="TOC8" HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>
-<BR>
-</UL>
-<A NAME="TOC9" HREF="rluserman.html#SEC9">1.3 Readline Init File</A>
-<BR>
-<UL>
-<A NAME="TOC10" HREF="rluserman.html#SEC10">1.3.1 Readline Init File Syntax</A>
-<BR>
-<A NAME="TOC11" HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A>
-<BR>
-<A NAME="TOC12" HREF="rluserman.html#SEC12">1.3.3 Sample Init File</A>
-<BR>
-</UL>
-<A NAME="TOC13" HREF="rluserman.html#SEC13">1.4 Bindable Readline Commands</A>
-<BR>
-<UL>
-<A NAME="TOC14" HREF="rluserman.html#SEC14">1.4.1 Commands For Moving</A>
-<BR>
-<A NAME="TOC15" HREF="rluserman.html#SEC15">1.4.2 Commands For Manipulating The History</A>
-<BR>
-<A NAME="TOC16" HREF="rluserman.html#SEC16">1.4.3 Commands For Changing Text</A>
-<BR>
-<A NAME="TOC17" HREF="rluserman.html#SEC17">1.4.4 Killing And Yanking</A>
-<BR>
-<A NAME="TOC18" HREF="rluserman.html#SEC18">1.4.5 Specifying Numeric Arguments</A>
-<BR>
-<A NAME="TOC19" HREF="rluserman.html#SEC19">1.4.6 Letting Readline Type For You</A>
-<BR>
-<A NAME="TOC20" HREF="rluserman.html#SEC20">1.4.7 Keyboard Macros</A>
-<BR>
-<A NAME="TOC21" HREF="rluserman.html#SEC21">1.4.8 Some Miscellaneous Commands</A>
-<BR>
-</UL>
-<A NAME="TOC22" HREF="rluserman.html#SEC22">1.5 Readline vi Mode</A>
-<BR>
-</UL>
-<A NAME="TOC23" HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A>
-<BR>
-</UL>
-<HR SIZE=1>
-<A NAME="SEC_OVERVIEW"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Short Table of Contents</H1>
-<BLOCKQUOTE>
-<A NAME="TOC1" HREF="rluserman.html#SEC1">1. Command Line Editing</A>
-<BR>
-<A NAME="TOC23" HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A>
-<BR>
-
-</BLOCKQUOTE>
-<HR SIZE=1>
-<A NAME="SEC_About"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<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>October, 30 2020</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-<P></P>
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt; ] </TD>
-<TD ALIGN="CENTER">
-Back
-</TD>
-<TD>
-previous section in reading order
-</TD>
-<TD>
-1.2.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt; ] </TD>
-<TD ALIGN="CENTER">
-Forward
-</TD>
-<TD>
-next section in reading order
-</TD>
-<TD>
-1.2.4
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt;&lt; ] </TD>
-<TD ALIGN="CENTER">
-FastBack
-</TD>
-<TD>
-previous or up-and-previous section
-</TD>
-<TD>
-1.1
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ Up ] </TD>
-<TD ALIGN="CENTER">
-Up
-</TD>
-<TD>
-up section
-</TD>
-<TD>
-1.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt;&gt; ] </TD>
-<TD ALIGN="CENTER">
-FastForward
-</TD>
-<TD>
-next or up-and-next section
-</TD>
-<TD>
-1.3
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Top] </TD>
-<TD ALIGN="CENTER">
-Top
-</TD>
-<TD>
-cover (top) of document
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Contents] </TD>
-<TD ALIGN="CENTER">
-Contents
-</TD>
-<TD>
-table of contents
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Index] </TD>
-<TD ALIGN="CENTER">
-Index
-</TD>
-<TD>
-concept index
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ ? ] </TD>
-<TD ALIGN="CENTER">
-About
-</TD>
-<TD>
-this page
-</TD>
-<TD>
- &nbsp;
-</TD>
-</TR>
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of
-the following structure:
-<UL>
-<LI> 1. Section One </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-
-<HR SIZE=1>
-<BR>
-<FONT SIZE="-1">
-This document was generated
-by <I>Chet Ramey</I> on <I>October, 30 2020</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-
-</BODY>
-</HTML>
+</p>
+
+
+</div>
+</div>
+
+
+
+</body>
+</html>
diff --git a/doc/rluserman.info b/doc/rluserman.info
index 1604928..953890b 100644
--- a/doc/rluserman.info
+++ b/doc/rluserman.info
@@ -1,12 +1,12 @@
-This is rluserman.info, produced by makeinfo version 6.7 from
+This is rluserman.info, produced by makeinfo version 6.8 from
rluserman.texi.
This manual describes the end user interface of the GNU Readline Library
-(version 8.1, 29 October 2020), a library which aids in the consistency
-of user interface across discrete programs which provide a command line
+(version 8.2, 11 March 2022), a library which aids in the consistency of
+user interface across discrete programs which provide a command line
interface.
- Copyright (C) 1988-2020 Free Software Foundation, Inc.
+ Copyright (C) 1988-2022 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
@@ -307,7 +307,7 @@ File: rluserman.info, Node: Readline Init File, Next: Bindable Readline Comman
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
+putting commands in an "inputrc" file, conventionally in their 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
@@ -361,6 +361,32 @@ Variable Settings
A great deal of run-time behavior is changeable with the following
variables.
+ 'active-region-start-color'
+ A string variable that controls the text color and background
+ when displaying the text in the active region (see the
+ description of 'enable-active-region' below). This string
+ must not take up any physical character positions on the
+ display, so it should consist only of terminal escape
+ sequences. It is output to the terminal before displaying the
+ text in the active region. This variable is reset to the
+ default value whenever the terminal type changes. The default
+ value is the string that puts the terminal in standout mode,
+ as obtained from the terminal's terminfo description. A
+ sample value might be '\e[01;33m'.
+
+ 'active-region-end-color'
+ A string variable that "undoes" the effects of
+ 'active-region-start-color' and restores "normal" terminal
+ display appearance after displaying text in the active region.
+ This string must not take up any physical character positions
+ on the display, so it should consist only of terminal escape
+ sequences. It is output to the terminal after displaying the
+ text in the active region. This variable is reset to the
+ default value whenever the terminal type changes. The default
+ value is the string that restores the terminal from standout
+ mode, as obtained from the terminal's terminfo description. A
+ sample value might be '\e[0m'.
+
'bell-style'
Controls what happens when Readline wants to ring the terminal
bell. If set to 'none', Readline never rings the bell. If
@@ -382,7 +408,10 @@ Variable Settings
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
+ value of the 'LS_COLORS' environment variable. If there is a
+ color definition in 'LS_COLORS' for the custom suffix
+ 'readline-colored-completion-prefix', Readline uses this color
+ for the common prefix instead of its default. The default is
'off'.
'colored-stats'
@@ -428,8 +457,9 @@ Variable Settings
than or equal to this value, Readline will ask whether or not
the user 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'.
+ than or equal to zero. A zero value means Readline should
+ never ask; negative values are treated as zero. The default
+ limit is '100'.
'convert-meta'
If set to 'on', Readline will convert characters with the
@@ -465,13 +495,27 @@ Variable Settings
non-printing characters, which can be used to embed a terminal
control sequence into the mode string. The default is '@'.
+ 'enable-active-region'
+ The "point" is the current cursor position, and "mark" refers
+ to a saved cursor position (*note Commands For Moving::). The
+ text between the point and mark is referred to as the
+ "region". When this variable is set to 'On', Readline allows
+ certain commands to designate the region as "active". When
+ the region is active, Readline highlights the text in the
+ region using the value of the 'active-region-start-color',
+ which defaults to the string that enables the terminal's
+ standout mode. The active region shows the text inserted by
+ bracketed-paste and any matching text found by incremental and
+ non-incremental history searches. 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 'On'.
+ When set to 'On', Readline configures the terminal 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 is called putting the
+ terminal into "bracketed paste mode"; it prevents Readline
+ from executing any editing commands bound to key sequences
+ appearing in the pasted text. The default is 'On'.
'enable-keypad'
When set to 'on', Readline will try to enable the application
@@ -1143,6 +1187,11 @@ File: rluserman.info, Node: Commands For History, Next: Commands For Text, Pr
supplied, specifies the history entry to use instead of the current
line.
+'fetch-history ()'
+ With a numeric argument, fetch that entry from the history list and
+ make it the current line. Without an argument, move back to the
+ first entry in the history list.
+

File: rluserman.info, Node: Commands For Text, Next: Commands For Killing, Prev: Commands For History, Up: Bindable Readline Commands
@@ -1998,30 +2047,30 @@ their use in free software.

Tag Table:
-Node: Top907
-Node: Command Line Editing1429
-Node: Introduction and Notation2083
-Node: Readline Interaction3708
-Node: Readline Bare Essentials4901
-Node: Readline Movement Commands6686
-Node: Readline Killing Commands7648
-Node: Readline Arguments9568
-Node: Searching10614
-Node: Readline Init File12768
+Node: Top905
+Node: Command Line Editing1427
+Node: Introduction and Notation2081
+Node: Readline Interaction3706
+Node: Readline Bare Essentials4899
+Node: Readline Movement Commands6684
+Node: Readline Killing Commands7646
+Node: Readline Arguments9566
+Node: Searching10612
+Node: Readline Init File12766
Node: Readline Init File Syntax13923
-Node: Conditional Init Constructs34182
-Node: Sample Init File38380
-Node: Bindable Readline Commands41506
-Node: Commands For Moving42562
-Node: Commands For History44322
-Node: Commands For Text49086
-Node: Commands For Killing52790
-Node: Numeric Arguments55505
-Node: Commands For Completion56646
-Node: Keyboard Macros58616
-Node: Miscellaneous Commands59305
-Node: Readline vi Mode63228
-Node: GNU Free Documentation License64142
+Node: Conditional Init Constructs36843
+Node: Sample Init File41041
+Node: Bindable Readline Commands44167
+Node: Commands For Moving45223
+Node: Commands For History46983
+Node: Commands For Text51948
+Node: Commands For Killing55652
+Node: Numeric Arguments58367
+Node: Commands For Completion59508
+Node: Keyboard Macros61478
+Node: Miscellaneous Commands62167
+Node: Readline vi Mode66090
+Node: GNU Free Documentation License67004

End Tag Table
diff --git a/doc/rluserman.pdf b/doc/rluserman.pdf
index a7db1e9..5183306 100644
--- a/doc/rluserman.pdf
+++ b/doc/rluserman.pdf
Binary files differ
diff --git a/doc/rluserman.ps b/doc/rluserman.ps
index 9bae0d0..39f67fb 100644
--- a/doc/rluserman.ps
+++ b/doc/rluserman.ps
@@ -1,8 +1,8 @@
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.999 Copyright 2019 Radical Eye Software
+%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
%%Title: rluserman.dvi
-%%CreationDate: Fri Oct 30 14:07:47 2020
-%%Pages: 35
+%%CreationDate: Fri Apr 8 19:52:34 2022
+%%Pages: 36
%%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 2020.10.30:1007
+%DVIPSSource: TeX output 2022.04.08:1552
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -1043,6 +1043,7 @@ end readonly def
dup 11 /ff put
dup 12 /fi put
dup 13 /fl put
+dup 14 /ffi put
dup 34 /quotedblright put
dup 39 /quoteright put
dup 40 /parenleft put
@@ -1307,539 +1308,552 @@ E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
7EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
3141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
-61A06A43575568DC3CF3844BABF04CA767E299575EF2ECAAC7649193843D694E
-6CA59318C01132C361A3E43BE637B70B9966664E12EF4707F6B100BC37778D1C
-F1806B1DE081D2C9B995BF1EE3842EFFBB8416161FE31633A6EDA118E563BDC1
-C42F403BE8A009FC756406669E34C6A08668808E0C31A589D0720BE32F3181F9
-8039645643E15D25917F38DFFD8BD08A420854DE15AF291ED675A634C151193D
-29AA6E04E84A598350AF17E71973854842AFEC3EB1B58E4D4433309BF5ED9D86
-32C4BD136C89169D45718A88BABE25072D8E552AA4CA3F840ECB11519B06EB44
-13026DD6800CBAA90F3BF0022E66A54BE1059BD5D224B674AD3199379D82D571
-ABF7BDD1BFA45A0F0E9ACA0A400BC5FE22DF4A041BCCB93DC23D547CDF0A49CC
-6C7DAFF30FE0843CB3324AAA3B92F543A985027FD2715F4182BAB1640F391992
-E4DB6C19A96D1D48EE4A4DD94D6443467C61CDFEC9B11E07DBD7F7BC33B34BF3
-EB97A7C3D0C4E322ADAF9CB6320A64DF78223011738501A124CAAF7D717983FD
-8BABC1AE4CB0FD382E26BE0A83169B6C371950D7E9A94FD82BD20A3E2112F447
-F1E4203D9978E6D9B8DF24E670E2D4BD160D5CABF3C460F00B5229B48CAD82CA
-9ECAB97B709C0C4FED12CD9B497B4D5E505A22F12589E28B0C3017683A6EEE2F
-2928DDF7763CD8F58B531F526EE267EFEDF72DCFC8E547F329A7C6BAE64C2800
-AE848C69574115EB02F9CBA61ABF99AE6DEB18BA4DD295682F10B960D8F0DA3B
-B4D6190603E95B7F8102DE04DBED3AF90DC3CF440F60CF50A8AA982FB965DD80
-E0B8F62F1589924262E1B3292F82EAC5A888AB240D40F889F9CE2CBD7F2F2E8C
-A1E4479DF6E27D00D4347DFBB8B977D8B1ED261C3CE14538C0AF23BF0B4825F0
-39B2F2AC125BD84B6B9626300A2C001119893830B3542A09B6986620B6E9200B
-BBC5CA508A4D0A31B72EAF25651A806F88A2943849C5CC2CEC3C79ABA958B020
-6B8ECADB5438E230ACF8939688C11F16242C5D58A55AFBAC2971E09C0F7A2D20
-2B26FE7FDEF8203A73EB4E47F9953B6EC5ED9985C6D84CAFB3DAE3C39B1EE33E
-8D54A862ABA4FD8C0E9787B5B71E960FBB9C3003F8034CDB16A0D8D0709D18F0
-22679AA4339CF26E41992B5B5B33D59D937892983C5B1151AD6EB37B065E8E99
-6E9BB66724E0CF4044C77E79B6D697D9F368A76B76C93ED4BE9C4E0B61B26919
-976BCD5FA3F527BB093BBB0BB979131EF153F77845B4EB6B7378A17DD297E656
-0BAA38BDB532CB389E2C60778B658220CEBF7F77DD6677D8248975B86D52ED2F
-1DD38A57ABE4ECCF554EFE937070D7F73B8B51F59449236E33FB1C6BE506F7CA
-DABDB3E38B70398F5FD377E00C7DBDBCCA9D82180EEA815E0E2231789FF7FB88
-67F04D4049A6FC4CD8F12202CE784F633E3161FA9E4CD2F3401BBEA11B43D1E4
-A99FEE87D0E97CF4FA509B30F1E0672AD64EBB14C9F19F9E6DD333B78E91E4D7
-058517DCD523FE710FF61D766E9B334BDD7EA54C5BDCF6D612B27BF30449DB57
-9D45152EE0223988AB6689FF07658436359C2461BEA57F9CC512BDC51EF25493
-2C25DBC52DCBC0278D296FB8094DF33E7E3631228639796FAB8E7F3C78D26C89
-F15B4D251835074FF6EFB9261E2702167F46BBD87AF1CCE46D69A9E54B3F19D4
-CDBF4689E4A980A46CB0F8259DAD1CE5C25567321F929B7F501E86FEBFF155EB
-CFBCE24CB837F1299635927640256B311272C6EF36DDC649D05DBA7F9F4536A0
-B3B9513B8FBC8E3A547542F1DD0C6306693FE71BAD597591FF53046DC982506C
-D0A8EF82F11B01A588399B10AF852A61A96D0D8B416DD36D776B23192FBD8B67
-230D93BE0C1238D5FD5E8A762BD8197B11E1B0AAD547A5C203EFF7027AF9017A
-D70DEF3A45D5C32BF964200A3D9BDF03B1CDE2A50601E5F8D083AF733C5D9B28
-39579CC1D94AD59B64555DEA0DA13E2E771517EB7DB91660365FBD319FB79828
-FF9FE5E425F710BC2A5250765A9D4B494028762ADA4FCC849CEB3A4F4CBC3FC7
-9298A3450323174ED9835CCDDAAFFBBD380E889A002CB98D1E46747F6EC97E4F
-CEF493E6729F14AE0F28AAF68F401CDFC05A1D52C92E90E6D61163B99DC7E2FE
-663D254BC29F0923C210385FD72FDE4ACEED53562ADC89CF698C61B81F426408
-6A4F7E6211243D2894A2490C78DDF108FEF22D595919F8176C9151F9C4EC7FB1
-CCFFE2DAED0451C01DCC92B8DA7C897314C6464CB96FE5E9AE8D09FF5356642D
-5BEFFB636CDA259DF1056A41B007AF086F3299DDCB4BFE497658EABF868FE2C8
-17F3F289BB8EE99476366FD4B5FCA6FF6D2B9DDE027C36C3DEA8D9FB8E1E315C
-F7AAAF23098FABCBA9ECA1B3B62D97C718E9CC920D6060DB63D12C54F40A8AF9
-8414ADA57B34319E1B9DCFE37E37DD2419A93FF824AA210581867974EE20376D
-20927C4E0EF852EE9EEAA6C3C33ADEBB54B04F8130C9FFE841BAB8CCFB29DCCC
-AEDB97A11253347D0A93054103092489A7A0FD2DA57144A996C857A51A8D59DE
-97736B5DD55E7D1F3DD15B563C9EB1ECD180E405EBF83F2CE8D8E3BB3CFAD4FC
-3B56C5E371D1F24F8B87871AA4DC5D36402F73E935548AC7CE28D7AF7D503969
-364DB58C5D8C449D9A1CCE52D60FD42EDDAB0E92E04D4085570FC95378DB0E9D
-29177299929C8B877397FCBDA368848AE438EB03B2380B4892FCEC5A6398F275
-C8B9430614CADF97BA564CB4FDA21CCC0BC080D9148D461190E7A68007BAE7AC
-863F39346F91568267DBB3B5AAD9AF3354222301F3ED3E144067310C29E86A68
-680D1F9DABD82E2D6FAD321A778F6A7F4B4848EE947AD1BF122365095AF25FEA
-3B3574B9CCEA66FF03751A4D75176773043BDA6569691729EA8B552FEB498FBF
-CFE32B8B3C37F71B0695A4B1578DD1B8E0D0CBFB6A2CF5BF3D35B63BFA956368
-39F112348E15E0B1DEA4BA6FE0AE44F6A92B0917F673673592085CC2AC0208DE
-2D2CA8E867D68BA9DEDDAAB83FC929D38927F5E5E65F97A160DD4D9A3DB6E76F
-6AD8C92454E46405AA43F782C9C7F3EAAB984F2D26C47C3794586065392A043F
-C8F670C06322769837C380DD81277AD8FB61E2F17D2E6D044EF64802A82227ED
-8947FB5A9D39C3C7BF66900819EDC802B10A867130FF9ACC42B885DDD5652727
-A4F54338B7D8CCD04DE347E31DD5EB6BDBBFACD0F605EFC0825D6E4560174995
-5A3AC5F7C57BCAFB5EDE28FB8FEA0015CCA84A4F421F64B9BAC351E4C9918123
-CC9A9C56FAB9C164E12EA420B0B65521D001040257AD908B17527740A4BE8B4E
-518472003DA96D02A04B567A806D6FCC1AB6581C255047F98C302CF6A3C38A3E
-255CCC51C41FED45DF5A8DCB7CA3FA3D4018AB1B3C5A3A5655BC02EDC17DE7F2
-946449F7B2552C97BFBD1C6C80E3CE122755E1679511101386A75345277E293C
-6BB60E204B16949F9FA0E6802D61128023A73771AA40254F4F7F54F2518A4086
-C8343A5EF3F620329AC04682962E7C2580A0C23ADF1096031DF2C0FA8B578222
-6309D0ABE027DB4E7F59A0D0F33022188CAF881F52A0EB544E53701C7819128C
-96E26E9CDF47938D16143720A9F774D36EF27770625017EF94F3BE6C97FB75F4
-A3B44E10F6D3ABB303CE4F63501FC5C91691D5803CC94C4A4E5211BFDF5EF0E5
-451D2073481EAB5035A78F14D2BC63852BF3A41D51B5A4048D514E16E3519D24
-B1E2A278771055679E561A2632E9DDD7EDEA3599B28ED4C10F1929D10F093018
-22937E17BD99FA33CC4EBCC92A6C21B130F0FABCC7CBE12408C1186CBA3B13CE
-D69E501C346EEA662F847C756DE1616B5B5E4B670FABFFE4889A85AA9AE8DF53
-A2A29D710FEAAF5F275C317A07F484DF206BD0C4CAE557ED66399494FF2C1587
-A6630861B8E5E62D7B02E3F6D98AD4F5D6D3FD34754DC20C8C69325CF4F43117
-80CF56F55822EEFE030D837AD51B2FB722B25098E976AA164939CCEBFE453C40
-54DA26BB8277E5FCB0B209B090001C202B1D417BD407D74C96CE6E315CDCC416
-7EADCF5EA7356F9150A92B5F496E54A4BE33EC139C33FA3D7AE1AEFEA515F540
-299DB28C9EBC83E3C89409F5D528A3CB3F59C1311A1AF0A136E237D91A1E4134
-5EA52642D2D4B151D532F29BCDC1E8FA7EC77B3FDBF561F7707C46753EB922F1
-FC0A0F94D7B9DF786EFEB034179022B5D8D77E368FEBD1BC318DDCCC8126888E
-3277B6F6C9BD74743D3EF6A6D1DA3F7F69E0689B2712DB9CA8C96A1928309695
-D64EFA85FC190E9A88B638FF4314150220DD3DC50A630F19A21D78441BA9A4A3
-E3E0D201086BE1A1BDB1F9F4E6F8ED30903CBFD91F43B8B56FB269929C431F13
-BD550F401CD9FC0A612F61A635C4B778DCF19D773AC9F83E5B393F969F0A6F2D
-2C3399578ADD321DFB6FFC828BC708C132EEEF51812305C5AA9C5123EA790995
-B17C609E9BBAE75AE816CB02FA63A5508EC4D6F5E68B7C69B3A7A743AFE1C00B
-479D1F4D93A85A0AEA989D01CA06485F69A76148A5D541D834864447661987D9
-A81CA3F0AFC109E62D4334B1958B0C260CEC205E37F608D53BC5CC5DE889C156
-D24EE0442D2E487C9425C59EAF0DFC887D850F2AAE32FE27BEFEBF16ED33449F
-746284FD593654A134EA7CB1BA98A9205BED9C2E7625BD7A614DF27C3A72B163
-F57788C67D91F7299AAC5682F031353E80A7FCB23C9DB3CF6440B3223132325A
-D55382F07F7D83C1E7F0F1B5D751FF1F39AB6A357E08D34FF625544F0B62D92A
-0441FE53F5C5068A3FE0A80729DA7693BF377C79FF3F279C52F72F03E439B688
-3552A1F0429477294E062ACB878CD3955BDB1050195EF91F2010611D1680D510
-33154CDEF24459E6FCC010D53C07AE9052CE784D8D060265885B93E5D201A3A8
-39ED6B100E14C87992A5FC12587123D59E9C70096C0B8CCE18996C7A04061127
-37CB2FE94AD25A8894EAB6543B4EDE18178B7CA02251752EAEE9007FE645DCE8
-76E505CC7CB133F1ECA70526437ABA8C3E966B5F7929042A91745F43058F3018
-C135ED93815B54CE444E864F840483D4B9D44CE0202019CBD40B108E1D8B4A0C
-CD10B442AE5C78CB3BED5E7AD9B89DE52CDC3D3FF506159E73F84CAE0C4B19B3
-310F6288DC7A1C13043951094729C2D036E1B268FC30334A61057253D5ADBB06
-062D9CAC36325D9668175C046E8E554101C89F31E0821FACEF7474774EC36C39
-62909FCA2682F0CF31802754757EEBFBB5F98DC008B534245782D12EB30A3DF4
-B892B1E064EB271FA436464256905FF2E91042882267A75914104243B60F12FE
-3A9B5D9754026FCF038A8655423230E5F2984457B260354E75E7E8E438995E0A
-41CE6D077EF1E08257CE1B8BE3A2397A490DACFF0F3FF8D20CFFE6BD58968AC1
-321A49B21C324F322B5FDE900D9E055BF6A020156CD67EAA1AF90BC64A1E1731
-D95EEB12AEF53754C7FE33167B9874D896FC5984CB032C60D66F09CBF5B045B1
-EC95734469F57212202F37D6E294E73BBFB66C4B821C5D844CE81981D7D50327
-F42D8210216D6A4826197CC24865813A441931DA18893031AA1EA62321B0DA7E
-CBAEA839D114032906E18FA1C661C1E88DE33C6337929C6FC8B09B1CC5B95BA3
-E1C71C33CD9A3E4999BDCB55F0F931FE0F7A3EF924368616449551E3B0FE20F3
-6B26C6317A782DDAEDC91723E25A5A325B288416E06A62FACC35A22F7B1AFD01
-6530D0D6E80C193A2E891BBA5CEAAC8315281BA873C95C642253BFC2BAF34605
-9EAB0AF45C3D049A8F433472560AB5DC2561FCA3A2B89AC95B15CBCD15AD6CA1
-C1E7175097D316CBCC0F5785A1CB9EF5D109356B07EC553765C3542CCD4D4A71
-A6D402D95A9869E5194E2B4591CD6A89A83D1ACD0F3AF7ADECBF37C69960526C
-CD96CEB82DB4F1504DB80C171383052DE99AD7A48CF508BE024BD574B06E4A7F
-CCAA259439F581467CC43F1775A797ED8151A08B898A4B4A5E2F2BC98C4410F1
-108393AFB7031C8C1B4CC0880DE20C3BAE0DD0EA1F15DDA20448F7893995F28B
-0608C5D9F4D434FC6B36C56A5A5748BBE676E00C3A9F418FC82F08F7C2650792
-BF935B7ECF4B4B2868A4646D3AF8442072DDB42CBD89671E3D8EE4E0C946ACAB
-2D7DFAD319C93B6474B36F4398D06961CE2EBC611BDFC74C06AF95BF565DDC42
-1F7932FFF7A5658514C04D79CE7888CAB8C0C13E13A0A38DCA8F99A2B0BB9F08
-89F413B0BB6C208C0843F607D1DD21D2D2857F5B15113FCDDF9012C68466EF82
-C9E67E81904730359D72118965173587DA5EE59F28B0A101A8F641F1EFB084DA
-CEF86B85151E31B21F66BD9055293B5878339FCF27216CB67805247EA7166DEA
-065F283E2BC91E9C526024B6954410ED143A88AA91DE752F5CBA7129236D8426
-DB326A5A9DE91A2709F7114049A8FB333E87CF5D1D839F4F79D08FE684A7AE1D
-20AA674461DDEDDE23167D5881AAAB018DDEEA28157CF944C55E0E7C7010FBC4
-7884F438049A6F596912E65A54CE36C42B22AC762362CC4EC9F9213FCB908814
-E63D7E10D6BA9CCF802B662586B6E5DDE8C7D5B7BA6D9C8792E87349A1811F96
-C5A88467B93EAA04D84764C10B344D51541A987548D4F24482902A7744535988
-09DC57E9031AF5955F5659922D46FF6727BE8AABB889563878CD8907E86742CC
-AA1424363B562FE791EB65AE23596095311612AA0720655CBAEC471721635BEA
-2E322E3603F763E4A151AB2A8608BBC11AF4B9EED89930B48627D12C7857D906
-E1BA68C9D2401056C6A100D5EA2A29E34DFB839A22F726508BD77D445EAE286A
-50D46337619F86AF82DC4C2F0D1DAA005E17AB38E54756D48689EEBCB2B70924
-D913013BA5A330D69B7B4A6B30A7396CE684D46DF2C24925CDE10CAC5AFA48E8
-29AA959AFB2ECBB95FE16B483B49A6E10B009E48968EC7EBF2CA18B3A5175499
-8AD1CEFEE2E3A5CB84185BE886B912F4F9BD1859E86C0F2B3BA8E4CDCC509C8B
-70A0226609B2E5B3C693588F89B8B9FD3DDC670B0818D59B1AB6392B61567113
-DE0F0AE4B5402ABBBC5EC181E3F9131E42B4D72FD500AF4A40ABB47FC78EC4C4
-340810870CBAEDB3ED8B6991611F978A9851DBF989CB54A7FB6C5590D6F389ED
-63AE2BBDB9640A581A3D0D56394345EC8A621E639A36D7A3567ED4C646782491
-E6FC3D0A16096A748BCED36335A39D30BA544F5E3250C9A8465BB4BF1F78783A
-A6F4C8AE394E45388641DE0810E79CECA8CCB82EB5B01AEB294BFC1E797CA973
-653AA8E25F12FD4637D4274540476E3BBBA984EC2B58B678650BB30D074713F5
-E6A5579EB116C013DD4BDC716EDBC4B0680BC1D1670BF465BC7575EA0C0FAF7B
-50B4CDA35F6CB2F3801EA75F8B8D13D5CD2B81035C06440EBFEB05C43920C8AF
-161BE712A91A009B3C1DE9CE9A29149E81A30BBC08A7DFE5291A137937AE8CF1
-D24CAA2620309F0CBDADE912CEE0801BA72A097446FE8DE2C494E5E7AB790D3C
-46A4AA9628D791FA83B3FF9DD11F115669209BE8B4FD1EE6627E179BB53C245B
-3AE42A6A95D73A45E7D9A78C2C46544DA9BF229077FADC8BB0A288B044AB219F
-C62E33225DB5B58C19A0894F14C57E318FD66A56BA936DA1DA059FB5E4C89134
-909D531F94915EBD4309465038E6E2D0223EDCC2D9030BC5E6B07C12A28AE03B
-E58266B28B0A4111B445670449021001771205A0016DC0534E84E02007A65E4E
-DA5212D4668270F11113293A1A0FAF9E7F5ECF382760365DF24DFB1A49D50116
-D2959974973840F8BACAADA175B18B0CF49E47728F744F3D3405951EC677C4DE
-F2A8B4AFB9740765742F701691B79309E7F8A9BA9CA4734BD8D6AB97F0B8DCC6
-A77EA6F065844656ABF04A6224CBC9BBBC929E1A4BD3230B901AE1E18FEBC2DD
-1642AB4A5ED317F9AADBDA2062510300CA34A7897D0EAB3DAC7DD375C24221F3
-03E0A4697C6BF80426393BC326893D524CD60CCA3EAA8F09FCEDCE2F08F2DFF2
-CD8C8E6CA25343FC294DF8AAF1C4938DD7BCE943E92CB8C70ACCD03CB2589CA4
-E12353188F519A9E50AD95EB772C39F0D0BCC02DCC9A02C55303B370A511B396
-486313903405479B23FDD01A7D1644212EC65BE4DE730ABEC92F9E5573A7353F
-139BADF8C69BC5EC022D92360A28C66992515A7AC3E1AF4F87BDA91832003EAF
-02B611681A280492A0C0653A7B0502FA0F036B80B1EB5A92B6E2E34F1D3048D7
-9DCBC1994908801E17FC33109B407613C5537C04FFC152072F78F1591D6CEBA5
-37F9E385CB0330754F7FD33255353EFB68A88B6B65D378F90E85996E29E8F888
-E1C837F735FE92E1906D6A3991E23C5F4B6ADAE7F80B134DB3F2E9B45316B5C6
-AAA37C479979F320C431641B87D5164CAAE38089BFC5A0466523901846DDBB97
-7E626FA4406E96E5911BA848F9FDECC660F0D9C8C51855AE6F61E80CC6D7E4EE
-8171B10C33B62C9FB6421E50ADAD266816B3D11B62926EC7674795A37B117816
-3DC5AE02F71DE34EA896ACB2DDC623C44CECCD8D6631517D3B0D51E3F5F373E0
-BA991518CE7A61A4CA01365C812DA9A27A7BF7F61B70BAE4A25353475AB28D20
-0EE8A274B7B81324CED23F8144C859318D24039DF4104EFF6A46A3E4AFABB7C0
-5D54A42B98554FDD4761FADED865F6CC6A62999A6D5E428B87773E34A3D59886
-1AD7953B918FF207806D89C4DA9E29FC56B5335F46516FFF9B0077EF6ABE1B64
-050AF7D08B8E0CA34BBAD1B70B040992EB6905A8C5453EF2A589F51ACB37D2F6
-D7435FDFE1D2647F8E7C9EE8E55F375AD259E806348D28F26685AE4E64CB08C2
-8479514C4F2BE9419CB9D2FE84B2551511171384BFE1FF2514948AC8E0011459
-0194392A0B0CEA69357E0957CF64187606C24B66E75B90E65F6BCBA6B9507400
-FF673F3ECE5DFBBDD8594B2FA9F7FFC6C9EF9E7690D1697E3286C9FEC9CDB3D0
-56F9D219C8A5E8BA1E6EF3C56B279998EA9B86E18678E1D94F1C51AFD500DD7A
-20FD646AC1723028CB77572685818024324CEE2DD03EE89953602B0BEBF931A2
-76549FE146CF4211F5D7BA4CE8A4626D6B6DAB552E158DCB9A85A656F0470F84
-396B9537A99EB633499B8D06C66D543B638282133067A5EAC753FC7B68735FFE
-DE9C5F435282BE7192F9F44D6716BB17CABC23970253B1C4297CCDF520407603
-87E0B3D295DAA1A72034D94CA5417B0E6B5E148A2F3B842A77C54EA8010642F6
-3C45F39A391F146FC070A9384872321AF86924A5C79C4932BA1E0E25EB8C76AE
-C2FABB9F40A19CAB8CE845AF2161E6C5CA4F1F28DF86D04385DA654DDDF4EBE7
-C2067556D6E9C3326F8578DC526050B58962B3FEEADA9E30FD98162A7690B2D6
-31BA0428550DE10F9A61D02A2A978709FD31D2A208379E53B1A29D111ECCE4F4
-BDD9B8E29576B2F18DD4AB9FC631C5BF6ACD81CE8C9F194138A2A9497D966444
-F0868CA92BB615B511B7370CFF55492C57ABBC22FD278E6396B70BD34192F086
-A98492AC442E001B9B77807E3ED26260D69FCAD22B7733708CCBE7F84F7EC267
-53F8163315FADE113CC938E49AC9E00928D16A317AE338E91E38AF8B894EC75C
-B5F3BFE33ADDC0A27F0E754D2CDBFAB0BBCF94A1BEB2F286CEB90AED9C34963F
-39B63EE068288431BA3B31E134AD75D563F5B81782AF676FF5E39AF212EE0282
-D66687205CB81F973D1624F14D1E424EEE9FC189327F1A502F6B45CF3C2D469E
-A6D952A5854556DD6C70382A7939F4333B6F4494D8FB50B1CB27C4700696BACB
-087E7C705250D49F5298C5419F03F713619DC5AA7AF817A48C5E1702E1ED4482
-ECEA7E7EA2DD3B1BDAEE6B4E203346CD7F7024D0AFC488F4420CFE1ACFF96E8B
-F52D2B9D084FA37FC69ABA82C5C1918ECD8A94CC7E3B85DBFC2EA7579AFC0749
-8812579E9D682FF0EB5C00BB9BC897CE9F6BF1F00510F1DDFB17C6FC832E0CA9
-79193FC6DE4EEAEF899448D12826E0AA8799B3E487916017CC3C0FBC559D5921
-78BFF1C4D4C351C472C00B3AF94436C142C8C70189805894A010BE3B8FBD3A08
-97DF5961E9AF3C9B374D733D7049EF23483003189AAE67517A5C953F010B4473
-99EB286E4AB8DFF15C226B1B5BB0CDC1BD1B5890B49525EC07FD9E757864E4D7
-1CEA3FF16FBCA03FE72D50A5FB75463D974BF5A8B9F4F8BF7909059FEA775D23
-5E8A48A69592DD766EBA72EC27126AB1537E8A9E40B8E908A968AB71AE86E9B4
-E34C4C0DDAA6CAE34DA06795C5C23B61F1B3029299CEA838209B9CE83B92BF1B
-81DAFBEB500E13C5C9EBB2D7AC1A9F2428286F5CE7482BF12132F263742E83C4
-B99633A0EC4DFC9C06964FB47FA7E8E6C5A76536ECBA7187092BB64C97B51063
-03409528242E0D79AAE56E8EEC79D10809E0FC4C7894DB3675BE52AD3D954689
-23FD259BC85866AC5626C80E19B46D46BE344EEBB27BE626F03E2AF83287910E
-F1137C184D279F0886A00191DD1E78EFCFB193145ECBEF516BAD89911E0F1261
-E9AA1E7AEAB774443B5B47580E94E8D11CFC72CE036D292DE29C0E458CCB0CD9
-B9FC222E3244A0B41A2FFEF2BB88AD788609E5E244C6C88B093582ECD05782A5
-010C2030B988B7DB1E30C6D8E54837865246B93CE7E040E2A482FD0E1AC9D50E
-632B6508154A39BBF6D4A6BFE0C835B057D5953BA5EE7E0941146E9AFA61FC98
-0182BA32BFC0E8DDB61F96BD482A3F3BB5109B08A97F0C369E9B77CC863B5E5B
-F7086A48F59EC18497AA38753F2CFFF02461FA37E4B555C0F292BFA8ECC2B3D4
-5B41FD849C8E94FC2F8A8FF379961E28EC3DB127D9F006C6F2B91168DEE7255F
-4BA8FC35765D75A2A2C9065570592C25E1726B492819927E6A0278C26072A01A
-C3FCCFEEFD6C303C9BD2189DF98E538140E7ADF92CE4673930E950CB2A5D4F1C
-948FD5F5C0F58D730E710EFB86D7121A8C77DCDFF7563E756A63CA0DCE6699A4
-DFDC0E17DCE17BD056757E944D2A0EE68E819D2FD3326F9C3204CD04363B2767
-1765E56741FB06DFB613B2305AA464B3A2C5950392B7DC4A37FB532B128A76F8
-7BB70D92F0A5A84118658061D40DA770B3A2D8DA3F1EBA9754C451C8147BD4C8
-C8CA37F12C3B3E83DE897CE25B437A079BC16C1046C3935792EF7685B3F234DF
-14DD781A80C66B7B315B2FFE93DB467323E01F0426DA7F488D5B28EC0C4F061D
-CEE054FA05071CDCF0AEA789EAE744D80392BD557F4023ED1937A1B53C757AD3
-185C0710907E7B87482C48A1E13D2BB81F6924FD8E9E8D99756BBAAA03EF85BC
-DE6E14CAD1265E16E781AB6FF98492DD8D479AC2E5206D2917C97966110AD848
-C41687115E67B559D183A07037D04E8E2FD40A5A40E7D87649739CBA8CDCF443
-C587F0D9C00B9A808F4E649AE7C767B35ED489246AAAB778D5E63AB7FD2777C1
-26A941846E215BC7496D78D098CB4FEFB819FE8E5F98E50677D238A1CD1D661C
-67BE46A67131B095025421A13FCDA084279959705D53F0A940AD96948DB37000
-A68603C8843CA4E7444435F17DA361F2048D216763FC5DA7C687C6AC40AA7318
-677599384F99D33DE44040D7DE5A870A420F638E83A811283290F0D5357A0048
-8C1EC53D383C8E5E7895581B59691EE045883E3E779FB0470F901BD8613DB965
-D1D005E804FA715EBA9CCB6623C51F41FE9A5FC108647517FEF1E9407D4F2527
-8E593E8284E9FECAF7653D668F975436E4B44E15A8CBE5CA08C04DBCEB7E40C0
-496E22802F2938433DBBCC34A0BE026AE1C21CB0B89E81159316D6F847CBF057
-5DFA1AFB203BB574E7D5A78C468C285A098798A223A3234500C2564A07F416FC
-3A313DD014ED39222BC4DF4F9C9500095A1F79F71DD3F065C95C3ECBBE57B714
-71FDF51CAED45DE330BB35CA4D3854DD4A353623BDB414C852C8CBC4B1AC6ABD
-6A3F00DA0CB3DCA3189176A2116D9AD01E4A53B7A67158D52D6C36052C625F30
-F443FC0656863F451E67ADE57F662345C33A479B1832928B5220544ED54EFE3B
-7517CA769B4CC4BD91C9A602B9DAFB48B89C3E490613A9B07C4385A121909511
-5A6B9DF7D5FA5381FDB8B456400EFFB006F15DC1EB93D74288E7227C8FE6E137
-56382C86FBFAE90C1E1F9325CB3E872E430F8525EF5A5B34BD7CA45362AC2729
-E1B39550E3BA8E2D29160058F7DA661C17E009762D0D99995E0EEAF8F8893802
-946EA5CF487C25E4C91A2A6B98E5B6DEDBC1BBB01FF8EF23C9928CBFE5DE8040
-390BAAA66997E936B50A1FEC18A90894D832CFAA5C35891CC01CE5DBAB20FD45
-C069106615C30C00758DE66ECB7CED5E8680417DFCBD9DBB672A71530254C71C
-DDE3144D20DAE4B196C462D8828A3D612A998C8CB163BFA33CC62CBE83E63DD8
-3C4709E156A92123BF5FDB588353ECDD293A7281408B73530BE4806BB589C691
-5C10A1472D6C311AE6C173EB4A3CB06B7A3E2626D7979C427C8C11EA06C95904
-CF8A3D509C72C31AC379642EF9C292DEA069347C9136D71F44D39F4CC3E51525
-10403CCDD038D3ED6C6464989218475DD58B27153F0A5FA890029A928C053AD0
-2989CBB3B0176D2F88702D00DBA0177EC51B08D7E0F9333DC89C0E69B470F52E
-38E750F11701B957A3161364F6BA74A8B8429DD87D0981597DA9206A46795412
-225635933413394E4BA04A632695F37E253760874E813FD8F4275BCBB0E4C6B0
-D81D546DBB99E27FF7A1AD640364EF547CB5D2DC12D7D609DB0B9E4EC651EA41
-0E3362B3745F9F1B3849E2C047138C4589137160F63FB5C093FE743F9B2A3907
-B08B14F51FD277EC66F56E19DFA0B0727CACD93ECB1580946C9E0092F94F740F
-F1347CF42AFD46F3CFC4E44BA60BFEC83F31381DDF20EC1808CE650BBB75D8A3
-77827873700806A2A7D3264B95119514AB9940C0593F3EC58D3CB7281F2EA154
-E1C2FA3BDE6DFBED2CE4D7A74EC9718DF075B6928437E54872C8C66EA7C17012
-DEDE74F0185C67C4D884C0DF21C6F80D0820CAE35C6BAC3A9EEC4183DF461FB2
-93E2172FFA04E5470C9D87A71327278B2395201343AD09AFEB35F8501B24445D
-9B2614D75523AB7A8ACB67301FAAF55321FAB88DFD65577E2980418C6EF5D8FF
-52678F027130DAD71117820C20DFB4A24092D8FAED4B8D926CF8C3E054AD0389
-A2C37BBFE78622CCBB3CC1853E90E6E4D906410BA8FCAD74A04C51CF2691AE9C
-6C462FC60E1A644EE0D90FBFA4D099F8B354A7E835BFB1C6569CA247C10B45AB
-F7DBBA63B937012C6E1FA810B83D449D53331DE1379E0F820F43679145B59B4C
-CDD277AD2EF9D907E940E4477D80EBCC77014FF7622E5AA8577C889FA8CBA263
-72510B0F22D28E2C5360B2B2C7ABC7A93AB6C3D728844FC7B841CC53EDEB082A
-2253170E67AE6EA143B5CA64C28EE34917ABB202F2C0BFC6F8223EC68893E887
-3CEDF6706042F4F95D761D4B916DA6E946E66EB78C8A2512DBE6866F181F7480
-387C49646C79DD1C174C26DD5F142EF203E0E7567A680A35A7B7C9EF3FC361F8
-1101E034F202C5DB0D8CE9DC4BAB1BB9CC04CD0036139E96BA34B8F6C37EFCCF
-4081A2B9F1305CC79BD3742DE74B82E39C533D4C2E65C7CD55625673B11AFC34
-2BC54054EED14E9AF22B578A36D638EBBE40075D3206294844283CDE49B54E6E
-11CA2540C763EC4CC7C389051324238D0D380AC81AF4EE04989A762637CF871B
-C43D284D7D5191C68BEEF0060081B16CD93E9F677300422A7CD2D4EC541A6AA0
-DAA2A8A44BFE7BDB65A989AC89E5332DCA160C92D2177ABA2B3CC510B1E6CB2E
-F4C92839132A822CB52941E83E9360A96BA996B0FECF3EAD5DA932DACC0163FC
-EAC4FA40275965FAF0920001F087EA4820B87A49CC4CAAB6C336FB89FAF09AC4
-BACEECDF4B4C106F70576C53F55390D50C6B8EAB81320400A24626E246EA71AC
-98607D9733764521EDA48A56F6B9476030471DBB3D91854D4D6388D0A62F9E3A
-F5086060024541499A375347F861343AE902C150AF033B8F955CB664FA657742
-93AA641F64599C02373F1881272B4A08A44D583D76110A43832F6F22B86DC5A2
-D33053854E746DF104241714A2B17E10EEF0AC2929B4C15C5CE3D5D7C2EA7FA1
-28335A0087CED3DA9536E8460CE5E957747422A3644F96C80714E3B7DC76BB0F
-73D6229AD8FE72FF8FB58EC577F2253E2D5C27168D00401C94201E64EF770A07
-DA43FD8C31F41943E46EB80DD3D9CE38F72AADA9E70B772A692CA7A41573FCA6
-C46E4F9543C004167529716EC417B5EA6AEA374EC7EA6F0F79A5F32B6F40A6E4
-13329175694D7869E60B837C4230269922B681DD5588EF0B0D77050B71D3258A
-89DFDA0E7B4EBDA9F050951D4573EA959E5499DFB5BA7FC894229B26DAE9B82B
-8963640EBE6E892C84FB3954ED3B0EE64E273761B4CCC34E06D88C630A92A79E
-E2B0526201FCD0835D5760F680BFC51573894FF976BF8E6DE378E3B24261C8DD
-BBFE0C9619F2800F807716E9353489EA192157AFB5184B4D4847157491D61C9A
-93AA2DA0B076444CCE6A2065BA5708FD5ABF50A8AFA43AE65982F596CCE43B0B
-550C4D63590E0B8C48884B2388B1E3A050035DFDEB1DA220ABBC945B542E4551
-A039914EF703EAF77FF5A8F53073775703CB7681AC0ABA95E1CF016BDBDB0277
-AC407281BB4A5DB2FDC550DBB92130234AD7054C851A56EE0AD6827B89BCC5A5
-2748735C0F862AF250B55D2CB737DD5B0572F7C129C09828E4D71419C27B59BD
-F9AB2A053F432A956EA9E6801986D3B1E55A80C4397E458ABEDE8E9087B07FBC
-101F3BD84D24C5BB61CED41E292B9CCC884681A3072E0D420F0EE2B1129FC5AF
-C74D2A359AFACFB92A1C849559DFBF0D09018496369B5377E696C1CC6B9D9B67
-030342943DBAA19E677DB0A8DDE0066D8E6896CBBBFDEFE13EF9E5A85D2A9ED3
-9540316EFA056C11A8E65480F85A0CC8D0DE150B8C7D22E45DE10710952C3974
-C9D6026A9A6894C1AE2C650EB15EDE4E87E4F457FC7B8EAD32BCC5FE508C9284
-EB456AA6FB8D297C3F5E71AB1526956C66CECD83124EC68AE6546E9C3BBB42F6
-045F4A6A557145FD982F599F8B285C0772D6F1EC2F73ABC61E7EA0E6A8A4D391
-B5CCC56AF378E9CF4DF4732548024D51CFB3DA18D78747566A7F7E9249834BC4
-6557A1CF2489EF195FAB236BB48FF427FD32E1903B8FF82EBEAD2E1CC6D54821
-FB3F6763D2CB4E6E383324443D1CB3295BABE7328B9FA95813932A37FFC3A9EA
-E45196FCB6236C73CF95FFB675510259939F4525B298B3A69D0B52472BD31D45
-24CBED3F82F7477A180FF3430212B1CDC21EEA48F799B01B763C93CA93398E46
-360707E212942E17BF445D2E054EB9C35B4204A7AD6E72CAD1DE1589219E6530
-7E67859BB41148903CE77201B8FEE094EB659865F6A20E3DDD920CD27B118249
-FBBC11810A14E60E8C09E00363C039AA0360BDA398F3C65085905EE781AD5726
-DBF612DFCAB47C9E9E3E516CF26F53B6605124DAB8C876F50973BD3038B03EA9
-AFA4C6769405477A68BC4D7900E1DE54207FC766AD11F19A64AE8D9A2C058BE1
-E89035EDDA2E568783B36154DAAC4E3A980A38968FF9B81573D5C2B3FDC093F9
-A98050E3E1406E2FAC3D1F9D11BD6F511B1A044D5D62329DFC901E6F962A3DF0
-3663AFFE48E0154AC5AB244524B79B5D5649A2F9C2223DD97594E3BF55225858
-1E8173B8A7BCE623F9B641AB8AAC88B9224622E102CF2D091ABD006875F6C616
-FC7220BE93F77A11E729F04733D12F8E49AEDA23A449CE772971CDE7A8065888
-0032E17FD396B162C22EC213E0D303297FDB3160B303F1EF69851506E3332994
-760B7E59FEEC01445E28C6681E85D90BE5680020976DFAB52AB29EE292747C5B
-41752846FCD3C2E0A2D0F0E8DE92D16B1B5DD41899AAB80EDCF2487E1A986E59
-F7442F68B05C8E1FF12D0D0CC808ECBE51CA429D9FE388929125DB8F03036C95
-39BA0153733DF29B00DA9C96303D265CBB80D314EFEBD2AA26FEDC7328937612
-BBF2714552B94C8EB9A567928C0D275C72AEB08638DE4324115AB9A451ECC6A4
-F0E47E73CECFA0AACD1DD82232540A7D1FBA6075745EC8FC36FD31E3BEAB060C
-BF19783B8B65519FDA47D5BEF90ECA881ED512D200188ED498781F6EA83DC1FE
-95815D1B4F05A33230ABA8A1FE53E13F35B92C1D76E15265C1B6F69103FA33D8
-A90B1176439861ABD9324D2AB91EC9A216BD93472BD9162F9B9D1C0FFD26B185
-A696D9C1927ECB9B20F1F7E1454AF91F9A4A3D129C4B034BA2D85BFCE6A2A1BB
-97B5674A51D56C6DB03A8F26CBFE9DD301513B2671F0BF7B074C4D159F9FEDDC
-B1225B515C1088056A9D81E6FB640FC7D37D3B9174FB65BAF5AE5A5906A5B250
-B7B297C805A087FAEE9D888E0844014C3E4931F29D4B75F8A31C02B0B69A56FF
-A2FE418192D1E3E30FE8414A1E1852C8CC2EEC091F635F6A76EF82878A260F9F
-D9CB3BD28EED2307F1E8A0FEBF82E7B2862E176EEC2947307D81607CE8761480
-6DB2053DEEA46B9391ECF931F0F9BB8BBC097A37C6B02AC724D839BD5AF43C5D
-7DB5146B769DD171844C8EDC0C4F93A63CCBE7519DA6654422B1E4049AF6E96B
-0B23AE5997644EDBDB0C139BD45CD8708824AECA2B07200CF7B384B72D23D60F
-DCC3A98CEF3F6F4744276C714C08B835FA11619580E8E0F433E8D069636BC321
-42D6BFA12DEE9F2D22293950E5097AE72625C6A8BECAB5C0656716D4AF11C755
-298500684671ED70FCA40239AD0A04F4BAA1426B5931BA1196F1C97C765B1C05
-602B887B8482F9A4134E3F0C557E1420A9AFF802445DA1F631B82AEDABA2B98C
-716B9DABFE8E40585EA65D7910A2965F99C5A63BD178E607547A12D60ADC5DAD
-589F7EDD6482FDB2113622C07B0444DA233213846A61C260DE760485A35A47BD
-C020482DEB042B4D7295A7F90032F7228AA7529E7E2C9BB2DCBA64D5BC6D5419
-41D306C16B0DA13DBC5EB7C6874B5362A6300CDDCA16425AF32FDD997E48429C
-EB4B6ED76765939DF0EEB4DA1C58D79BE11980B636C9ACAB2776D3549CCBF157
-4D640A86E1B6DCD14E56F18B0B30CC1FEFA6199BCF33C80FE48EBE85BEFA1174
-4F52F67C06D192B48A79BA47D4E6790563DAA2F1B2967B655FA0111741854C3B
-B53410C582011F89D2BD1509718DED0DA887E39D1FFCBA9BEFF793085A448AAF
-2798D65DB0A3D66D235C00A9977F2D3D3E978F4A03FFF783BAF0C33949D42541
-FB24EFAADA5632EB66A1CB60E22C957B13C7E52D8F49B5C99A52FCEBC7159E33
-749A4F647936CF51D5EC511720FD6DC01A4B0C2D3120D4DEE5E498412213DD20
-5C10975536EEF28F9BDBDA565779E3C9F1C3A087295F6C1D4DF2CB44104BAA81
-C5C8D6B4811AF48F65A3D5BB01B982423E372D612FF20012B0909EC8E41DD25E
-9B21963AF687A9678FD79FB8953CA5A1E38E709457C196D3D080BD764E898617
-F7EDFF583D9D75D8632BBBC57982BC9BD23BB6D9E6C06497CB4C01625579ABEF
-1BB42CA4BD7261CAE0CDFA67F50A1563307DB14C7D3ACD49E59E3842343A97F0
-A5C45A8BD3D80A583B90D88D8829F27B093FDB2E91FF5ECDEAA81DBE611D93D3
-F4FD48F3B74EFD140EB1EC4BD5A463DCC84E2E7B157C778368E46D81A7B29F4C
-D4794473886CF8E2CDC60D2FAA4F537C969175E3D428A3918CBEEF307B34E981
-9534B42005097443968D4291F3CEA793E707B37CA63CB2516E8575B8FAC0EEC8
-48C4CD48E2819E4DB18E428BF7A933753845B5ADFE3C0662C147667BF0FAAE19
-3B6CB8CD20C9D1B5657265EC8F04AB427FFF352BC8A343F98D1AFF1EB6EC03B2
-FEF15CD3CE27135CFFBC2EDBF29E3918330D13516DA2FD899299F4DD996083B2
-AA5CBAF791C8BFC31D25EE31BD8F9E1946FCF35DAC9ECC347BC33E82BE5E5236
-27E424FC8F18B01BDDF1B633C8BEEC69B772F2CFCB521FF7ADF2CD57C6AE9FF9
-B39BE3E3A5CCA2DB161A441246D970484B146B3275557216D001553A58859F12
-9A102D85699E24B901FC3B4D93B84F83BC0DE7AAFCD886703EB065BBDE63C83A
-958EFCD18D53136A283E821E7AEA7EFEFC14602B1E4C428AF80AD991EEC31E69
-B0989D19353B1818874BCD39DA51EEDFE7EA12375B6CF462385963D5CA49F7C1
-E8DE6BDDB7807C3AB5F232E9C8B242F09B18EF6B7C4D88E47E3BA33EE16E0A3A
-DBE6CD175E403DBB1EA5EA1A74C72D749D743C63203050E87A60C952E9925ED9
-9C509459F31F7B69E38E737EC96EAB6B2402F689C10567BB758B9844623C96A5
-9206B8B17A51D67745312CC02028917150D16CDC362E4052C6F5D4405B686A6D
-B7D7CA7E60A99533D0AAA5C0797BDDBC078997FCC20645763F4B5F9E4BCCBE92
-E2E928BDFCB3EC1A9941CBB04D85A0BC386A612A655D849A34A76E3E3E1C91A6
-35ED8D77D27B090DAB616F8772481C57741CD4A3803A35E863D9D2C4863F0AEC
-305059A8C70BBC916AAF8A79077287783F2F01C0F676678D6EE8D1E7F5855D48
-958D0C1304F94B4FC6BAD1FC62DC3834713803B58C680E1AD81E70A09143509C
-B79A5BD469AD6D63AB7C8709BD8457A635E85EE5CE2B81B565CAEA18E6A6F738
-9E40522E0D7B3CD35B68CC2B88FE81279F379DD01643DD52D74046A0D0FCE216
-BCA962C1D10BEF7FE76C602CF2F8DAE1F7160555A806CE3F1F817A3694A2601E
-443A85C32E47393B3D4C08ECB5F507C7A12536B89B446569E5E54512A4897EF9
-84513C8BA4B9C8AF4ACF81B2BEDA480003360DD08DCF43DB57EBD401C9C7C4AC
-E08BDA494B711F9F2E2F954051D7A759BC73E5446ACB973F2EB4764BF8227DFB
-08BA8DCC4CC289E367EB6CB79B8798FEBD585E4C3DEF59834570935A6A3DB3DD
-9630020F4390FED9215ACAFD4683FE82E1F67CBCA8CDEDBDBEE29776AEF92743
-8A28B00C873FEB39A9C693770B410F1B91F631948247658632896F821A43C3BC
-E0E9B92E8017F7E5138F1A472FF1C4BBD64F1642A5818F138B35EAC4C7C1FF6E
-917F0AB74AAA9752283E94DA08563A52BBEFBB97E43121E5FDD1383FD94177C5
-FC7B706A19FF4B8434B33D603E4F05B5FEC2D8A6315D2CBD03527403FBB25632
-4720C539EA5DC49727BF459E73770E64674E49FB76DC914572E9CE7B0CE5EBDD
-50CF330BC6DACA9981FC741455FFAB7E5C4095B0FBB4ED94F327A5D0AFBBFCB5
-5F795A9DB07C04BF326B8C95A73BE943EAB0203DD488FA7F6167CF77638D98B5
-FA44BE3FE030953CAB6CE9F0BD0258FC6862CE8A29D16528CA5597E7997B8078
-70534850BDC3647ADD483C6BC7081EFC121819CCE63A080642ABFF4A223C1CC6
-A866AF0B64EAADE21E55123A8181A1C7F36D5BC654C6B31231B6839FFFE492A4
-E5700603C7B28333967D1F17875ECCFB3590F84451374E30A8962EF0DB618EEE
-D15660CA35168EB3531EF23370A13D629CD1B601178A2A78FAB7EF75D59BD3B3
-3C0F6A0A2483964AA9621848310A1BB3D9AC3EF682D6B2713F821DEFB9208388
-09862D1F53E11B5B822A4F3B02AC5C6CD27B7EC5C20CB2726E811034B360C16F
-7E0B3CDA6E68A36944337E9277FF66379D8CA2D67BE9BDCD844B6FA85DB222A5
-DA51BBFCF8656D5038CB442C49700AABCA3EAAD9AA163B43EA2502CACB0FC4C8
-FB9E6520CB42F5BA1175E9E56A13E4627B81FFF8865DAC818B0A9C2624DD436D
-A2E91BB348E4754020ABA942C7D521B1052D8FE4ED5B5680DA3E33F08B0021F4
-8D62D2DE042B497D8DD8B37CE488FD543A1706F1C87BC111CF8AB593E35CA099
-4D2A02E0FA787B6C090023AC5F62F86E1591E37EA20006B9D3195D8C047CC5B2
-A120139181147628CBEF57F3FEDFEDEAB16B4B7282DC465FC53E50F199A79B48
-8D966083736285148FC1A76382E4991C7EA605B05AB1460C2CCBF10A2EBBE340
-ED042D2A9D2092F3E91CD4C7BA6D9E60EFDA103206E67C6501CC95062F70ED73
-3A591E7FC37CB5A10C92FA2808B494E4BEFC956FEAA6EE82F8D03663BE9C9139
-836AE3D1F88C0B7DBD8AD9FF3BDB7F36DE336D4C0774149A9810C27B3A2EA083
-BA59788788002481964B952182374BD1F9A72545CBC4B0F53EE7411E35C04128
-5CDE87DB0C69A2B8AB74C702A74130B302A8BA4B85D021BD021A68C76357505C
-F439AB81B5FA7834BB48049DF25EEEF85887AEA66DA7234F11FEEF9E665EA2D6
-2F896E5720679F8546C80B37FB91AC7A1EE7182851B3F20BAEC72E1C74E18755
-3B908AFCD384F44E26674D13F3FFE746A718A04F7C92D0E09C21C1AF7267AA50
-0C7C0438E3AC17251A08C4A39142273868BA91E4B9A41A159E6C7B3EE1B95894
-625F2AE90DFB33B36425BCDB41AC15EE4588EF93C29E60071F247432C76BDC13
-7270E92989CFDB470685F6B5D187E15C9078E09A0CC2A46B9229FDE4EC46B236
-4BCEC1E9E0AC88617DED14FF9ADD9B3C874541E226EEB642A3762A382988A15E
-C1BA3F257880D0B0CA7912BF529F626E76D1B242833921A29725CEE9A66C0068
-3232BC8A3170DC768E8D9947B62742B9342B01AEF38E8331B997AF996A73FC48
-C8A457977CF1B4251E645F327B1CF9376D15ACD06D5AE59270E7254A56FB6852
-19CDAC3B14512CAA4D00823B693A1FF0C4E2462E3058DE548CF52047D9F9A39E
-109C9CB83E5AAD0A3C958FC40FFE45415B1EE51132FF593913F3BEE1C01AC778
-1BADA832CADA92FD40EF207617857160563BEB866C76D14FA651507C6739FA28
-FDDDDEA39E858CF7439BE229697565228F4CEB4C94A6878D30D32A00A1E5960B
-2D32953BCB686E0DA000AEA0192BD53618AF9481121779CACA0DE4F2FD4CF81F
-8D4B9D3846AEB66795F81D6EDBAE8BBC60AAE4540E19A6D2173C22D50F9CAF4F
-C4373617F5E449AE35F9820A53893570545D5EA6AE1E8B3D7775535041FD7860
-FCE9F0C78D142172CFB777081BB039877B98D59C797BB2CBB6E17E42DAF185DD
-E593D88552CA8605F910FB64C4292052F781FF971200FD88FFA5BC85CEC50068
-A91B20C2D4129FACF68EE0DB5D814B107AD35571F3BACD2C754EBC6175522881
-25D2168FBAC61AAEBDFC1F5D64F2BBDD8615623BCDAD49F21F7FA77743CC827D
-BF98D727204FBFB424F16C7151C282925198C644119FD82B9402D268755501E5
-7382AF8B16A825AF7368B2D04B77EA16B9A107F6588C346805EC51AA2954E3EB
-59F5C44A28A31E7AB1724337C42F4950651DDDC87F5EFFEA1B537F92A3F60058
-F99F05AF0E58FEEF778DE67A0FABBD933F0FC8D82C9A463088D46BB24D649C60
-C32571EE3E11E17317459D2CB58CB54027F895A862C18999BC0B10B1FA9C0B8D
-CDC2DE7847F8FAE9CEE8D817B4650D730B52506D2FDDB02B0B8FFE375E885C3A
-0F4A747C63BC4D70751B98A32FD386FC8BCC07CD52A9AE3C959311941C77A5C8
-6A5109E4F43C7B79A779FE30DE2AB50F4D3CCFD51C5CD55D7C43917491B364FA
-3BDC3B24043741B0C5D617688A05BCC8F01A14D643214E3B186E6D791A2AF3D3
-A972AF68CF394DE082CFCEC222EC928825CEEFAD02E84F845A5744EB7FB9841C
-F73384071D6DB7E6692B8792DC38256446FA4CC2D3D1E6F7436C568B97AC2950
-167FCA9D6D997218C05A905DDE26DDD283F64E21B11BA2D9217D93DDB0D2F985
-10770F9D756090F8D5F3B09A8B917F12D8D43C4B354FC26C8D56F53C62872CF5
-E32D25F0A993BC0F2E4F0E2103DA6E729996268A3FE96EA48EB6EA6B9C21D042
-BBC55FBCDEF0C786F1CAB555DEA42862F3B6B212952C1D944B010EC51DAEB5AD
-6E0D7361AAF600CD2659DC59DAEFCE791D9B0D3B718D45A1F93CDE3B2ED72E70
-13EE1705DBC0A8F0CDA57068E671B86F35CEF8161355336342F2B95D4092EF3A
-D403C417A5DACD576CC9DE10F0F837240B3669AABAC540361BC69F31AE7ABFED
-96838D6B70DBF3BE145BC07C60FE6498A925C51471788AA5D8E1E69010C8C513
-87C6602BCBD4AE75DCE4BC916D8E4F7B663EFC9939F55A6A8BA7D445D849BCB1
-2BD64A02224B841BC9872865F9A4068DBF73AF28DFCCDA23CFA589FAF6483E4C
-1A0D5D377CC241047AF5172C4E1A7E6C16750E53E61A74BE0CA3EA6E65E9D53A
-912578C709131FEDCBFCD1EFC0610F6D105438CF64A7F259737C3FBE09DA07CF
-8C67CC6FFA640DA3D57B3E2D695DFECF53981357BC06FCD7D089859064651EE6
-607BA03B0C3D7DDB0EAF225F1F28E0E4B38BBC08C76B6C42C4B1747AFCA9F2D5
-BFD0073C03841155CCF38214F48EAE34507272EE5CE69051CA87A6B6214C7A0E
-27F9F3AC4C962E920542C762510244A6B61502684BC99F9867557926066754FF
-D707640D0EE946F98922EC777B3631BFC5230B3892FBA074E6B0C91CBB36E51F
-4BEFA5CE13B58B6278D9A5D82C7EFE170EC2BE0367BF8531C7495C37B848DFE5
-3E789822DAC88A3D5ED772D681F4915983B3A67D3949FFD1A659F936771AAFA8
-C61C3C884F3BEFF84407144332DEAE18923FBD1CCB54DDE059694BB3E46BC0AE
-8C5B914EAA3EC71DA87B4E08CAE59E839546E0D89B3287EF19796E397826E7CF
-3E966F623FF66FD752460A15A7D85F84DEE0BAA16DBA3A649DD0420B28B4C39F
-D49F2058BC109C46C58AE2A9CF47FB3EE019BE11817C2623B473BED923955FED
-5CC714083DE1710E8648B6CE7F900F15C44344B2FAB16355FBD00ED9D16E4396
-36AAA4F49EEFF25401EAC8143E549824FD3949091BD47F24A84987379E3C3526
-8378C1BC4A12B09DD99B6AC638532477CCA879518994B01CD21A3930F1D9669B
-8A778E0CB2A68114D40996A3CE8E55436C5E8F20359E45A434EA9261AAF98F82
-269F021803FB661D4F8C881ADC90A09A1FBB2D03AC115D3421F122D01376AB23
-0220BA0DEA220D22E1490FFE1DD1CFC30986ABFED309FE126F0AEFFDD76EA1EF
-65DBF44E3765AF88E235C74E5242B02C802E4FDA8147D8874CE1C71669F4C261
-E06BA951DABCD307393DBE0F01349B66B8CFFEC90C39DD30BB8FEF864F5D85A8
-B46D8A796F5E25D033E59E14EA5E480F34807F92056CB5C143434525B32A77C9
-A76C1713EEB2D49C346D4B256D14EA6B0ECE2709A9E500C4EF203E031AA43459
-66CC59AB6C19BA33D153A4C53BD6B6037C59BF2C5EBC14563D97E38742FC23E0
-E6C5A1E8896CFA9A03FA76F1947FF788C7FC7C9973B958CE08BD2671C87A4EAC
-BFC023F12BDC146A49533435C0A60D313E0A08173288432DBC2D9DF015547B95
-A09D740908831AB01ACD75AA036961BAE0EF713470E727FBCA880F252116EBAB
-47A38B2D4901C84496FE92D31BBA8CFD8987FFF5E6E290EAF41E4EE3C9C7188A
-76AAA149913F62391663E75BA83A077EDA63A5982C3FE0EAE75C5D9EE8E17E5E
-21454664F25BC0684A225B5F3615205A85C07DF069BD1FE0FC10F12CD65CF334
-1C656085F29212B1E06834F4914260FF7862337BB4A256EF78D068C307947F30
-89C19617889308331CB4B53BA71E38AAB0D161B4112223719DD8D6D63C33FE3F
-569132EA533758DB58E180CFBBD49DCD306FDF0ECADE93EA5495F03AA370C394
-F8BA290FE270F202AEF202A6D15311D2F6EF4D7240E86F95224F6B2B58E0F81F
-82D037BB45D290EBD666AA3A3047484A4EC3ECE51978D2C860FAA066FC97C07D
-D6CE20450B310D93EEA5A306DA97CD6FC055ED1BC298F994CF8A92F2F8335EEB
-DAAED0BB928567A3F61A08AA1760B22413020CAFEBEC16A4AB9FBB6C0FCFAABF
-FF240F40CDFB5AFA8814156921831411912E2B8529325C35E7EA940610C46CCE
-ECC4090734C7DEF297B88B4B4119BD386E51730A492D9A53996A5E611ADED22D
-C6D38152834AD04CC9996E2FBFA34C90BF57ED326BCC7AB3010273E5EE8F1EE9
-60184E436768D65329665FD1043B419D165C12223A22242D03BBAF6FD6DDDD5C
-25570137EB04CAFF3B54198F049A587AEB1DB7604A79F5F25AAB7D457910A1A7
-A5C57B2626502F2C1B0A943C28CA273AD4E8750452FBBCF0DCF9A3E5A40DB15C
-EA31013596481168DC5C66DB2C1A5C18E8A6C8DFCA1BE89FF5727CAE7E9C5250
-67EA84EC9B60DF4CEFF2F4B127D9E6B000B543048D67884E11A41EE56D2D7736
-E1867FEFF8C8B97DFF3749A6C583AD095B8EDE970E3E2011996E4158CFC4E538
-F2951A95B1D9B7D778AA7252BBF3AA1FE817B6E1A3F3831F981DBBE0232B783C
-4BAFD6B0CD
+61A06A43575568DC3CF3844BABF04CA767E2995196097015E0C4F622C4356B6B
+F41DBAFD797A4B9D7AC22332C552043EF98913D0D9B50CA6B7CDAF903BC5C04F
+D20A952BA5CC35B646ACD0A287C956B98C450051AF6AAF79DF37F8954473F8F6
+652BF03AE2AE82B99D820CF93F5FC0BA17EBD7AF90313E70594EB5C354023BFA
+07912408F1757319C7288E99872B907D5AB583B082EEED8AB079C63E38B07D11
+6744856E689A479CB3A8BC081F33CB06755926204981DC0A45B3ACC18F6865BB
+EE2C50DB43B62E3630FC1D9B1FFB3BFFAA6D0A20C0381ADF48E4D916BEE85BA2
+BB40F538F55C11D50F882B73913840B45161262BC8B0012694C3EF26452F9B77
+2CD7C7AD6BFEEAFE31C8A721C2D46AA00C10681BA9970D09F1E10DDB693AFE84
+246AB18279A2B24E5B50A2FF6337B7B1039FFDD4B00ED3667B5F2F7BC2786D2F
+525A0E82234B30711AA835EAEAC2E404915FC7EC0081B194765032708B5E11CE
+EF6868298CD26E5B9EF345BFA3EC2911E2B96A0B40AEAB95BDCCEE38F5EC170D
+3BFB792D2DDA7E57BD2FB7669484EF9322A1BEE009594901095DE2BA9A15A0EE
+4DD77404CEF16EA6C31FC04A8FBDEF27B9FC1AD3264388B0B12D8E476305B912
+30B51624D4605C45B514473F327DC3EE8BA69032A95301CF714F225A92C253D0
+D943C80B9CD0524C5B87A8D052D2E47A9725EF869D3B89097CC13CA9BC695FF8
+A9468004450A76A13B7EE78A03CC18917EC44036C2DD237344E594569B8F2DDB
+21F7619180B8C760741961CCBE54FD6DD07C4CF73B346099234A1EFFEFC88574
+6324E4232BA18A38EC9F0B780C298877EF0AF42C1EBC2EB52DB64A1E1E352503
+36AA29953A073B864FCB31BA938A4163D000A159ED4D345331FA1EB4009CFF67
+1D107BABA6AAA48075C6C50BC7683929EC146594E55B01D4F5B582328284068B
+2AB05CE92EEE1DF4557DFC8FEF287CB7F961F4F1828EA48B0ACF5C63E1EEC8FB
+6A0EFF132268B7DDF7B465D4A21B05993F4A4CFD168A700D04A7303BC2C00391
+392C3FF97E770E6FAFFFE501242B20B4F7B6C17331C64BDBA3E59695E176CC79
+E7632AC6D2E920AA048BD1EBCF9909D8C314D2EF3CFC5CF88D8570BAA814D467
+96D86CF4415C5B739FA6FE7B4C228F06268D28EE33381982E7B005C26D2604B3
+AA363CA4732B9BB0E4D4EE50556D777258A7BC232087C9F00B0D5EF70270B40D
+3071E14E4E5AB5AF1C686C5A7C268D36A0787DC9300D4CFA004F89A73FFEF780
+E6BBC957E31B764159C3ADF752E6E1A6C3B5B855F8A483497A347B601E3C8DE0
+362D76B715916113CBD2D3765197074104C7E17B87670CDD5C227A1467BD678A
+BE442F196034B02132850CCB77143C2873447FDB8767C462C63916D9D4A13198
+B7910E1B274B27644DFB2E8372C8CD55E6E2AA5CA952A079E1E6389927495921
+CA39D69ECB4DF382FD2DC213EE382BA1A48CA886CB6AEF2B0C50CAB47B1FC40B
+2C95E13190C92480439E3C56188D162C294F24987AAF4E15E8FF7ABBFF2A12FD
+AEB884FCFFD671EEB94CC075B815C6A45549EC23DB85923F4C37221641B75CE0
+C5C8FA8403C2C9FFCB66CC74C5160D6C7042DDFF33A954DD01C8E21B21F8F364
+F6FC735507D0DB5F68F2D8B520AAA7E0F1D503211339F9466006E9A148F39874
+A1488F1F0458409D442D2BF5935A655AD4656A8411543F58C63DFF9C4FE56256
+7F9F876B56BEB208F9DCA363D2E0F7DF3CCAFD5F9674675BF622CBFC2D1CEFA2
+7A5323971101D3641E99D84197B00D67436843EB9CF74C273062159C361A07C6
+E3F1E0E4666ABFD5C9AA8F914F05D02EE1906FCB66E421C73243257170617FEC
+2F02D5A7F3347CC0D290E52FA815C4D5D2A16A4D4A5E0B50165B0C5C77B675F1
+0EF343D70813346EC4D7384A9D9A091984AF29C810F8C3D4247D37F91C5DA967
+747890DFFB25E67F6FB766168487AE8BD8E49C55BC1B68B831E3F510BA1DA3A3
+9F810B865FA98AF89696CF7489BACBC1033A1C929023588E9E03FAD6D901DC52
+A2F5EB74DB679A16DE42F7B47BCBE16617EDC7328A2CEB2C23733D98ED753C66
+502DD2FC75CE2905A429B5B56C62C1C0FCE17144D96E0C615E7FEA48EFA05D9D
+344ED266BD96C3296D6005D289228C62D572167E369AC65724E0E62AEAF608C3
+423FD37E586D41B2AF9B10E0A36312AC1A6F61418BEBF528932FE61881636837
+47CFEDDFEB25F7FC156AC7D6E78D608A91270FF6D1D510E8CD61C289F3E7960C
+B6093B333A0CA3CB8BE51107C5C1C085B3CF6D6F61379420AC1E5D9A3FABF084
+80D6C719D93BF74A99D681726C81F9F83949E06A560F3B3905C0766134533256
+6CEECBBE3EDC220193964706085526386391260838C2E885C88F882E29F31F69
+149CB1B4B788BE82AEBD32B5A8F07D1F537D85077B4BD1FF945EED4BB41B79FC
+CA0B25D1D761129A6043D701AB1F6655C06DF7B0891C3C5224977B9464A6A794
+5FAC6547F7548402420976CA3A644E5A7CD7F64974B71872B02756FF6A135EE7
+BA60B9974A0A2CFA4E46D91B929A3A0DECDF44C39CC06BC2105538856718CF59
+59B1D9BD88735ED4D83C17A67031178B43CFEB4C301E551D708F5F08E80E5A1E
+5579CDA06C9902E412052CE7714A8BE29DF9911F556899F819A7FC2565522182
+20918E8C476DFC00F79BCC4248BCAC6615891C3115B30A39B365044CDA0AB26F
+C8966DB46FB9FB7B7BB37C48B7CC4852C8C05A57D92ED8E6AAE6EE5A60BC81B8
+C0B22E5E74610495094F12BA6D60DA3190C4CAC7F46D740005264BDBCDE61FB2
+50B8DF1CBF41195E616F4595F7860F1538363D529E3E3FD2D408B56CE034521F
+3D9AD6C30174D0AC1A9F9151C8C8DB6E7624290CEB82632679BD0A01EC30B3CF
+FCE72F32F4443E137EA554CDEF84B62CFE21A5E8BFB2EE52C87CBD603C8E0FC7
+35A9ADA5E49FC4C7E3F1538C84761186C045B9F11074F8061F0F4BE061D22C85
+2BDC140F6CCD858B1A4E9AE9444B4EE3DAEFF4E3760A8B851ED3B9780F990595
+36210570D82E9DE83AFB3A20D0D955F69FD838B6F9F785231A84D8BF9F434665
+CB62D518CD5F4623711E022DF76D2CF20202FBA15A1D1070FEA87D6BE954DEE0
+370280ED09237334FCA7AFB1A0CBC9A153A25A929BEF57B202A5889958A9AEDA
+535781A11DA8E2BB5C885BCB83053BEDE8436846C7B54B41703839F861F95D5E
+3C34C4DC8FAADB39D20DC53F642A28B92D0BF1B02876E348B088AC9B2C55DB06
+808BA40658ABE50D6956C9B1201C8D3D97CF9ACBE1FCDB7E7C02D1BB8D87AE61
+2902D77900C11D1DA6CE808C425A7EC0B31BBDC690E98A09AB656294A1B17E00
+2D12DDCAA5E0F1B44EC9D7CDFB5E916045F5CE852D3FF3E8D421A11356EB4392
+F7DA22AFA6C18C7F507F5D8892E8F1DF11E5CC965A61D732F12EFA8339951645
+CC3AF8C3EC88C5B372729EBBD3530439E0E8AE43B43CF57A5258AE8AB259EB71
+9E1F057688B110D4177CF54B1D56D2EAB6B1DB603D6536EA9B9EA11DD57E7F3E
+DB574B05043CEDD701DF8C0982EE726187EAF637ADC279BF7C83A244D3EA9800
+F9797A4D3E4D5F6669B49D2B37CC9BB1C9244B54DD62A5C4BE533DF46F618D3B
+9FE2203DC6C75B25AD6B49B2A760D3604F156ACD80CF5458FEEA64E243B2E527
+E750720E97CCFFE2322734D5DD0FB1A8FD8FA77AD87AA1C8EA1B023F70BCCF92
+624F9A6B0B27B5C8A5AD21D8C08F62BA1738359A4D78439A7A580D605929D6D7
+60790297E11930F43BA89832A2D351CAD0F77AF8BB70A2DD5DEDD4B34FCBC714
+C2BEA2C26F768EE44D27F39021F5AC95FEF199F6ACC4A2F3109E081A3AC7F42D
+1767C2A82683BED075A3293189784AC8D12F17FC3C15B83915E0425926D6069C
+16D58DCF97B1D8E1021F51C47BDB1286B5F9CB60A2B2B7D3F219F20C8651DCCF
+80B30FC5B20DD6D887BD571450A3A005F5980E90A649DEDD316A452589B2BBA4
+BE8625C231E5D4886124B24580C7795F7B3D063667F400C18150A80DEA255943
+B9BC4E1F0A0E5F5BFEF9F7322C836AE892F91A4B3291F216F99654C54BDEB5DD
+87563AEAEED8D8E65D1B60795F1011C3CC63B8FAA15B381E04E1FBC2A5BA5EC8
+B76DCA2AE3686F7D71CF0662338C5E468C0E8155715EE8DD963FA7C257214DB0
+6E523E1370D0F14165FDEF1C9D2F9DDDB4C61DC764B946DC40BB897E8A0BD7A9
+A7D9B684B5899E1A8F4CF9FF67EE19B4FCB61AA4463C5F06309C7B10A131AC21
+63E04A69A223818185F44D48ED721CCCD98737DF4BD3CF6924C6EF30372E9E38
+22B3230829B054EC1B8B42D29059AB5E706E5EBD6CAFA57502005BB170E5B471
+8BC330C11C068849A61C37E5AEDFF994D9A53E73E12D3F7BF63CD6C435055F5C
+875056658B8141B78E3E5050E3F8209CEDC015445893B5B798DED6777B98017B
+4B9766F79E20DE51B4081215A072BF3BFDA0AA741D3EAB7F35138C2B32982453
+5681A66A99A21F0663C8B559FA49AD7B854BD648335DC7B8F72EA85CEC66231B
+AE8F8FA55020FEB0FDA90055CE8255D02C0E2FCC829AEC8EFBAA08071CDD03E3
+9FE8C4F28DB460E0AE8514E319ADE43559B190D9104C78DEB8DCD9E1B2118746
+3DF257B5DA0A52F0F6F0F70352C2B1F851F14F3251A2CEF2B15590E4E80363ED
+652CEA14D0CD2FAF8CD0CD6A7888159FEFC0A3D8978F49D85DC8BFBF33FEE7B3
+C0B040618510F483EF114F46A509E86D08D9470B9A6293083E6FBD511C388D8E
+5A16B5777FC9FF933366757609163E9567B121906BAAB48B1D3CEF9D0B1028C2
+18E9B6536DDA27ACD9816D2D1D5571038F936FE496081B801485F9CCAFC7EE0A
+34D2BF741863A5F639D9D4E123EE90AEB355314E4E38F3F4C243CAD3112A0504
+48BBD089B189203DF7ED4933819A0C1D57ED8AE20B2B15F19F8A0CFD927CAC50
+116B04C25A4E5B20C4C5864A8DCF8CC9BDF5CEA59D1EC52EF62CB642A8FCF1C9
+3E036AA4DD6F4ADBA4F8CD013C622F831397B8640936910C6D1F82ACC6451C68
+760E14BF5B7845762DFE0037BABBE5046C5F3CE3874702EE51D1A463F3B86C69
+7C758A4B1960E1A796F07859A9B1860AE5BC7D5703E63A37B9334D67613241C2
+5B606439A6AB29FA7386317DB876D26FAC05188B4C59672F2CD9A750A0E70CD5
+AD69A8609AB0C78F625E7749C770391D5426D9C3CD1CD7D37445D9718C07A37B
+5BECECE3E6F3147731D5C12C4946F88A7C82500F8C495FFA7E2FFF6A9C2F0BFA
+8EF861E6C369C8DF969B5FB0F02CAC74E8E080B16BEF1CF0D1A81E90FA1612F1
+FCF086961FDD981A8698FBDCE44A80E4290B7B553D9F46BDF6E346627437903D
+499C80A29BE6E7A2C03D943D23C41F1B85C92FE922EE3A3E0601565564C55116
+17F01B2DC9FACA12AC59950EA410D5533B0C31D89FA68D07E9FF1139554C7920
+FF84CB51E13B7FA3EE6A32DDD9FCC192B576A871CBC9E04C5C66ABED560AFF24
+6D6271979BC7D04F7287E32F52B1D2DF60B7D7A53A7D776FC36D70E9C6F54E97
+44F15C5ABF2547DB40EC913EF0B9597A721563C3664E74E7283E9030CAE36B7A
+B14E781BC772691347ED48EBAFDF23EDC452EE8A118A840A185B7C1DFB7F3AF1
+A2D64EFBA1C9F662A35F3B46CC8E2D7E7A7F63F9BFEBB6E4A6DB8FF0BDC83E9A
+A70438435C3B8A780F7F92578501656FF963ED66A73921E014A46385450D26F5
+B73EDA0630201BEE50325B0F76B55E77BC55F4401251D083225EA5777F42A7C7
+748FAE7C22E6A17E04BA9F6D451B35A63DA6F3D80B0365E159B3E993E0DAA242
+2212784C9651F9A0766F473DF743748FAF491CB69728C2473ECC5524E0F2997C
+2650BC1F945EDA4CE833980E706C4D413F7929804A0B1D182E26052876D6B836
+01284296115233D90D2D0FE83317D4AA206A67207BD899DAC1D726C937A34193
+F0B6EEDECB391C6434144275295014BA4283D4346BCC495AE3EC6EE9C4FA7711
+BB6004D39D7BE17FAF0241F2798C36C451BCC4227899837FC244BEC3432ADE1D
+9E4F47F45E9B1D2C832FEF6896C92A207AAED7AA924520D096F983D66DCAF476
+83A2F6F1844E7EC5195EDD3E5FBD0FBAABACE5D13BF754BB2B0CC8FC633D83BA
+3BB65BD9837B109AC1B5B255298E6B65AE4CEC0FFE24DDC3D1883FB0D6F8FE65
+94D0A898278E0313303CF7DE2E37BE0152A1D4CDBA04ED61D54555B1B107D9CC
+C08C89BD2A19050191867EFAB8FD582226B03D7ACFA97C6D404BF99F39EAB7AA
+9AA9397B57CD7CAC1B338C21579A593D7DE1241E6F77366CAB10C3FAA772C663
+BD1051F9D791A84C35196E74D28D342553D344199CBEF83D3A6ABF05A4779B16
+EAC70F7CEE167132D04BE5F56F8F20927DC3C7A20239AC6AAC2B57BBC83174D6
+25F59228ED58B5D492B16ACF3EECA04054F59247A8E318B6F5A09F0A8B3820B7
+2CE711056E3A3ED9300B6F2DFE2C665D7C3351D40A779FEDA09B406E804BFFDB
+9831478F237DAF6352CADC53D6AE85A14E5FC7C0C1BA4009FF962FAA52499506
+C6F3C18BD4C13C1272D844EE151CB5A0DB0188AB7FA2DD47A6A2CE8554A7CB82
+C0CC30593F062451363778FD5A8D39C60835825D63CF3BEF323C8CBEF3055F61
+294FE558C7542977A3C520DE15A984C6D82041E06C356FD7BE75D601CB95816F
+F05AA3F53144B7D768F6732339FB8E6A068F8E021C1BDDB26572385FD1B3794A
+0E1C780576819CA271C78010D8416F6B19912227CE781CDF6AFEC335138203D0
+ADEA0617451CE0BEB024CDE135922C72FE0932F10589F0FF9F1DA721D32B1583
+8D032EB9049E4AC34B3AF16C4DC1A85CDD8B047035ED7D50CF8D9D02621BF6C8
+2CCAA23DE753C7B0B8818B68D625F44A54689C0B1CA36FA7C68A567FDAB813A1
+8B34DFF1300D5E42067F51ADDF7DC9BEC7D4376D304A417741E17AE427639676
+407472CBFAABB5AB329AA7CCF130B3EC6DD588A1F44409FD239238B1A8884382
+F04198DD7C5DC5E2288FE0B206C9D9516D468AA6E2B1183E2E906F9DE47C9209
+578321590CF839C9FFD5FBC3393FFC75322B4E703EFE69534745D579B74AAE3A
+2336823D2DD5F477F39AA9386736476F5C0B1CB19457D44AD6417BA503475D23
+51A99BDC97751E7172363DB670AA50D21920E98BC1DE7349EF8B8C1E72CACB47
+557B3E2BC30454F75CCC41B84A67648E894AA0A43C5A2BFB5BEE8D0BB07910B3
+47EDA7B547EF357C2553933E0BDC0F05D596E4C55B33AD63E924164DEC1934E4
+58F937DADD65AC866E4EA2BF02D36C54AE3E3727A8FF9F3658337D2BFAED5908
+5BE3C1F4503843FFA47C83B3D9CBF1DF2AED7A6B97A7E68CB6B9E5420E70C5C4
+36843B29D902584DF95CCD8C34647E87E2335371DCD89E495A92033BA482A62A
+0D2D3A7BB06506E42A4926CA0AFF80EC8DA63D7B73E8A04B25312F03251B512D
+76BBFD76C1F5207FD6A8E69ED9BF063C7DDD0FD4C6974BBC531429EBB55BB715
+0D08FCB2F80275425FE42E87AEDCE78D2BDC07CED8BC49D260D1671BA0ABDDB8
+98E0F7BA7EDA086F4E3585157A71CCEEA35750B9DC3195E3396F1161EE1E1D25
+E6FE6E0B022A9625B5866B8EF59DFE5391AA7F033886402C654F4834F4E43138
+EBAAA758DFC8C27356F012F4D0F398EB8D013678059D8419C2D947F3FB2BDA1F
+70A5FCB549BFFAC288ACA7051BDAEA41A4AE0341035B4365A63C553DB80CE429
+02670706A74AD397B49AF535067EB07CC3CB86704ED45301DDFD5238E7DF5ADA
+8DF465E45F7514D7A0BAA202305CEC73032FC09294480796251045AFBCD6B081
+8EE4481D29E817C7DC32539B364076672596DC24CA8AC45D60A8536865FB475A
+3DB48E98C675A8BFA39792AFD17B5251D56F0D5C27E229DFA75FA3560E7ECFBB
+8164E4FF15421846BA40EE13146A316D530287CC8652B58804B95C53F6FA9DF6
+F84DE1E222C5D69E45E12C06C97E672D456E21B95584F8371FE34ECB0E6174BB
+468EA60BB0C06B3DF48D996D9083F70181799CECC224FE60736CFCC6F246E5E2
+EF465A6B1B411ACB7474A59BECA5935DFD15F5C18160D4AD4DE9767D6213C35E
+08AB18F834CAB32013AEB8C634DD6382D4C7E49F10BC5113214A18A5EB31A0D6
+923630A849327C1CAFEA3B8F5EBA83668E03EBE084ABC1A4C1DEFB333ACE0696
+EB20FAB6FE6E61D38457C8E10D8FB7595C627E8FBE2D5563C4D50A6E1F3DCFF1
+F5A2DF1A62301665C0E44C2257B4516B515FC995A52D4DBD54B3D4EFBFC63A8D
+F07C27065CFE19527AE04A9CA14935B7399E30EF88D2B63891A58044D7CE07F2
+916EB8E9C65388A73956B3D82B4B41AC378B4B75AC304A32339CA7701636B6A3
+84254743EA5F8525897D4FB054698031D1FFF4C971A10440212DE812752425D1
+E71B02AAD20E994357EC8436BF1B74F016DD41D6B1F6C1578E4B261ADE5A7B31
+2ECA2C16294C9309F200AE0AB5BDAF2BBCB3E97B0FC5556BD8208E50CDEB88BD
+F137D2F72258B6E41092F1256CA4AD867338DE757E29298F404FF94F247A805B
+40524952A6D8581F065B11B6324F9F2821A3AAC2E7A583771EEE640F2FD0975D
+299EACAB2A99942480DCCC95BC7CEA846EB1B2423FCE304596A2581583450455
+CD1D56843DF8FFBA723FBE4A4AD8E539828BF48BFB4D0C4EAA68EADB81A2C58B
+EBF89CF83017DE3382BEF407B493FA5EEF810C740C3C8B646292AECE9A5180CE
+07ADE6E6B2935B90BC521D3ECBE25B43F14DABCF49F378C26CDD2B27C690EAE1
+E888EDC3C963F55F1AD13C8FBED4BE0BEFEF31C0636913B47205DB1D0DDDBEEF
+4441A3DE9825160AD57948567EDE8660567998D41A0AE2D9A9B5BD4207F2A0F3
+EE82DDE22D16C32A583613E0EC2BA331EA91042B8FA2865A8A7DE1BDAD0B6D33
+3DB1409222AAD20577ABAA7A2DD6B302803FC7B4244ACFF725E37CB5926563D2
+82AEF220424600581E25001DE71E1385C9D690747BCE051539AB8B03B2EA77BC
+39B27AA8F63CA37E3886C50E125D3886C5132869596039589AD6A8421C8B7AF8
+B0EE2872AF974A4B779F09DC1DF2BBF673A7FB32BD1BF3D8D99A94E1BCDFEF81
+37B2D7BBB80ABEC1EAD544448E6A49DF730A1B7F63267C9DDFE81131867F0C0A
+8D2B37E8B0AF2A6265C57CF9BCF98A01998081E7BBB94DD53FCAE52F3F5010C7
+AFB011FC6FA98FFDF173FA0F935D33EC3DE55890BFAD217870974C00CBBB6C67
+1CC558F6FB2C30B28B9987721722A27EBFA924A382569E3D7C47A3220F21EAB9
+1011D71B104BAD1A47CDD9CD64487A8E9721CABFDB83FDEC748EBF0D08E77CFF
+1A54D0B3ABF4024DAA403436C9F6CABF3B6CA7089776ACB183AC01C8E7F287FF
+9DA7959C4B7D73F00976AC5C3E4B810DBCCE732E4C9ED9EF8006AFC7314F0055
+FA3FAEC780434F273ADD7D07C2006E4B755B24A26341AA5AC2DCE258F8B03409
+188109067E22F078E093A76FA372C87CAD401794D94317B2665DCC7E21FDF901
+E1511307385B6EE148FE1666BB616351F48A8082ABF94040CDB058DD584364F8
+CBE3E94DBB8A2450D18D435FF5C8CF2DBA1EB562E957A83F184C9F3CC43C1860
+E6FBEE91C4D240C61D7A7D554A17B90D0A9CE1E7AAF7840846B3F1A1BB9926A7
+CF8E9DA56DB81D35CB3687E9818CE74C0336DF7B2CEFD8BC432268AC93EB34E2
+3D361A8387BC92B459F645BC069A49628D7382E22EB249BC7CAAE98AC55FBD24
+F570D8D654B54710B809234AA2E662D2ACC44E1FE1AA63A497FDD94A46B9D1BC
+E37B29430A5E0C2E592F13BE227CD9A6556E9A0E1C3EAD9DCD742D1F9CF62014
+5EA4510003418D1881C4EF1589A8B9EFB52DDBB67BCFC4E55B134A3C2E31AC1C
+4658B592EF69C2E23E335499A35B91A58DF9A947712DD55BDCDB7E0AADD53E29
+2777329340EC29A51E9020B8EBABB7B066113ED3A4791D3FBCABADC40CC45FB6
+8744DC0116379D2649B216366C6FC83999E1FC558EEE5E17E13A12B252E5F7A9
+E760CD51C96C1B4815BFE37D4D39621BCD10DA9428CF186E61E9921585C1944F
+DDC084DC9216FAB69CF54E456D47F65B3FB02F34B0CC998E12E41110A4791465
+19780824EE2AC1B799655553375ECB24149100E539C23829944BCC82211A85E8
+6A2D3559BBC0EDFEC2DA02AE3BB86A9E30AD5BF95E5CD956297C1F6AE85D0768
+1F9D96DD8EAAAD78CFBB543E913951A78D3262CF08BE0DDE7D870FDA94C51A1B
+1F8544122EDB7653E66D772E3EBCBCE4419F17500D8469EF4FBF93144B20DCD7
+39B815E0B09D0BC3283E8B7A907F203EA3B22924419C1C3A8DEEAD335FD538F6
+0D5ED1581BB64FAD4979D67D51F18B047E096747FC50C6A2B48377E458038374
+7FF93A3A46E09ADA5A844EAAA3EEFA1625510D3AB7A74764FFB229725FDA314A
+72CCE353A9693869F26CB904505B089DE6D41825336318DA00DAFD986779D4DE
+E8DC47E496A9936DD3CF46719D5E832E3B7C85B44D16D4BB588CADCCB90CBBF3
+3589F08AF2AF77D7ECC3AB68D6409221B2ED853012C693C522407B4E97DD4F89
+9EAA4CDA6C85F8B65F5E165399F6CA79550965F3AAF7D875CA947FD6BC42A4DA
+1AF797BDBAEE65A1C3BAF00E8E48FE567E757715166DD2757F7DE6C45FE4B3FC
+A0C76D12FCB66B4CE9CCB47060AA5CB3FD427BCA5B549A4AF34CA654D9421C26
+9EA4106806950525CA856624E9EFF9DC5B598AE4AFE928447D0704D4EE99DF07
+69AC51F4D3163B7424059ABA4381DBBBD5C8C7DEEF723F163AE69C48962C34D5
+7514F73FAF946C121EA5848C29E127DD0FDACDCB6B1AF4414EA369093282383D
+0213B391666CF596FAB2AA27270FC273E32B90D3209091D8360A0D50F8F28D23
+F7B8B097E2FCF2DCE92A7D5AB68EE680B691C2DC7BB846FD5132EB5789A30B8E
+9B849C18E8560E9F49764CB89FE01E2E9968C769BAF6B44E08E45E563EB14BC0
+70601E5133AAC33723E934677518C54A235EE9E4A832B363DE44FD82D37BEEF1
+E9C842EF2570C97C3C5D6C0DE94DED4DC5B6681E4A04BAA725F0D9061B16C431
+8ED6859AA5E5BF254BD3C29F100293FEF2D0D6EDAF428490E13B06527B5FCC90
+54768BCE8007EAA2EB1AE14F3F577CC243BA416AB6E43E92EC4FC99775BC1D92
+CECEA05EB8ADDA826E364921ABE388295AAEC6678C08D26415B2725025C70089
+9F12735F37C45F00218EA2E398A8CB173086C43B2A7EE4C95852110F8DCD12DD
+64AEA60156E560E8D8D84285B523515EC15888E9912C6C1AB91290E1D57D7595
+1DF73319FCA62BE7C04F4E9968F7E453C384899736D48EE6FF64DF1260057C37
+3082E207F796CE6AB2271E3F31AD2FF83B99FC3DF2826C07F4E4CD05077DCD69
+A3B9EC76BC02C12A468AC4C0D7D83FD4BB4BC8ACF9C312CE3144E76D2F3C6246
+A210DCC9834608CD0A52CC551FBC059B88BC2CEE954AC6B5811281737EC83C8D
+72B39D016B0ECCED40BDC58706910851447C80E3FFFA9D57898204F9815DB6DB
+1EB38FC10637CC50768703AF9FAE89A94B424A3C647A7870B26970954CEAAD68
+E069ECBADBFC0519C33AEECE55AA93C75B6CF907DF65B98C7A9B043E4BB5840A
+88DBB212EA2E86888D36B76D270926739B48D6435C1547D703FEA7B989CA60A4
+87CDF9DF654919F730787D58680BAD0E5B506FDC2BF0C89569CFAF6BE11F80B2
+07D69B417562178E087AE3AE9380CAF8CEEE40FD3989BB50E8521963B0617401
+2996B2C32A3F03B7F312A211B605932233E7C230FA084BB912BFB20E85D721C9
+532D22AB85802085C715206297C09713C3142039602BA9D607F7A52FEA25B0D9
+FDB7E9FB15499E3DE1E47CCF2500BA8B8798497469DF248B8244493738C81815
+1008200E9457B4CCA5740897B17F8832515EBAA84A237E17542B359F173E7868
+64E99FD8159C9051E876C235E434BD5920F55084DD7F31C6FD2B6CB58E5FF307
+0AF6020EA9012AEA47F9BCF018C30885988ADD1A630C2F1CBBCFD5A2C95028AA
+6FC89D43E089957267B6F94C7F4E05FCFBAC85E879D27F7BA921FEDB4B551F9F
+3B5D3197C0FCFE264D45F6C1181BA26796006B94BEFDC342C7CCDDBFAF332F8A
+D96D8D6C52ACBB10C871DAA7162501071CBC04CE01D8FDBAB48393E59ACCF1C3
+9EE4972D7DABC3E639B1C2722F346553DA9E9F163DCE4CC7CB2D1B966F561A07
+8862C3230BDB104C55DE3436ACA77800229637A6DFE1F041DB4B45B2D1A5481A
+6641D77981CDA367CD23E64AD5355B484930C7B09B47ED6C79851844099A68C7
+1F4E6ABBDDD7490259E856C267804A4EAF61246AB4C1233F025EE81793312479
+CECC3813C2D887855573122E59FAD0B85DBD9AF66203F4618F22D6D56E1F7323
+2BE1ABF7702D8BACA8AAB9FDEAB48E3ED56BC0D3E4696505E16473CAD93D0559
+54E8991E7F146F4D4C9E3DFD35012F5830B57FA04BA42BEC724E5708FFB6D521
+B209D2F6CDA86560921C705D6A99F822DD3B182B0BAC8AB381653298B82C86E5
+098FBC2E1E30DDA83919362D1BCF4D91702B16E849E032B44EC2482369B4C342
+211E7382390388FDDAC362431B45DCB55FEAA7C48C30996C47B0E21BB32FAA7B
+14D6F0DB95C450B59975CE25D65E727148BC7400E00C249A415AA52DA829F547
+8D7AF32D029BFB27EA195EA3E8A038493FE5BDDFD89597C420CA1ADDD2D5AE9D
+D3BF13CE3B530D78BB7413F47056F663395BEAFAF4002BAA6E9FFD3F1F0C7C72
+03592F5627EA49F1C0E8C95813E1C30BC256C99A2F34A027D4552B650B0376EB
+9BC2482C80F19BD6F9315C71A185EB246091F6D7D019637100B555077B1549FF
+27446A2CA0C8C815B6CCEE95CF19B78908DEDB25C1F9A5E6C36FFE65E0A8F694
+8A3E847529C50351F6CF88F1F3B901A78378BAE535678A6C60D7DF4A00505B14
+FAFB1A1AE87CE09E1E90769C046C11309AA7BD8476AFAAC0EA48E6D32842E0FA
+10CEE024B1B178D8B9A15E29F825E42564A8F8F1E1F1EC760FC03F1D5773DB78
+E177A95C3D2E3FFEBA469404A866E662D217FEF7A99D6BEDF9F144A2A8B97542
+9423BDE10EED471B99F70661A7AC7A260C6C32EB4D00F21F7A3A5257EC597EE4
+885981989562FB08DBFCE4ADCBE6D9A1C92F6E9FF65A23BDF943835BBB7C29C4
+0D7C987B626819583D4D52DA32BF7DF15C21BE5BB64B575C7F4B149AC539ACBD
+A49DF3F0480DCD61E3C14BBC956DE5D968E74DF4141BEB0106E6C5F7828E4F77
+4EC7F0775CF320C26323EBD09354B3E2A52973E75E54CB42F6B0F5C10AE8A8E6
+EB93124C15AD140C971D2E2D9C2B5275F93BA3B01556B72B7630CBE7AAF3D997
+E82D11875B82071FE770B13C232388C07F2E6F7E9C6930F4D7379BF74FC3436C
+D301123050BECE20F2BF95FAD2E57FC50203EE6EC6D9420BF8C218D3D2F8B236
+6572EB16DE1CB2AF00CF19C56BFD8D333FE1DA4494933BAD214701819B0C2ACE
+FD02F0682306A6B0039002B0B7095D992A30CB675CDA3D4B196C447F102DB4B2
+FCE3AAF81D94B2FA40B31EAC2BEC613654B1D885EA590F675E6106BFD0575B1B
+4AA50D0583A2BA2F79AFC2EF5640A9EDF12F6BFE45ADBBBA43B773B36DE8DD60
+C4BB8FB6F09A334FD947877A785AFCC4F9D366326F5B609ABF1E0CB8942560D7
+68D0FA410EB83A9BE859840A9E024FDF850DCBF5FA8D649B40505AE64B1BEEA3
+6776EC44EA3298203B09990EAAA5FA937CB648A0377173CAAED6432A38B48DC7
+906B730B6BFEB2B9B166526D1E8D4110C6A2A4CE1ADD2D0C9C179621F7867669
+31D3A28EA97D1281E80B4B6A4F223D1FF77F8960CDB83E5768F3A8FE52120CA6
+15164AA799E18FCBFD91697783BA537FA897D58726F5F3BAC1F0B20B57583374
+35837E9EE8DD0DE39B6CFB69EE47ADEE4624EDF65E43781EDD056024FE108280
+29E5A39815F494C65020B91F68D1187F815ED8A312150B414D9DA84F542E0F15
+32351B82F2322C9200F987E477807E9E4051D4057240E99D42E6852164704F26
+81A939AF1E3BD237C4FA341C702F7AB978F63CBA8DF745DC2C57AD5511D89AE5
+B4A80BFC57B1A5CA1A110D3BD5859EF41959EB364DF07CE50F709B30EA099EB9
+01C010ED4F4DA9AB062BB8E10F515559D2FEEE69C579859E43962AF7640A705B
+2C3086E862AB4297EF9625C58AF049BDC0840F9562D8D8BC686CDECA7D4259C7
+4C86D8C92909BAB7FA09AA2E83B4089B246F8B4AB7A086C5B9943773C496C62E
+9E6344BBD213B44C821CDDA42B1BE933F74BC8FDFD0A85070F50D4881C7E875E
+DD689E97ABBF6AEEA6E8C8BA377BF3E4A8EEBBB1D47FBDAEC3B88462A62CF500
+727EF93FD166092861FB67303490DCC4504B759BE754808BEDD580E6DC38223B
+E02EE2D9BB8F32E2D3386376F8E49A853F7C81650DBD33E23437EC98F4A6F7EC
+12705E52817A7B647F4CDE1B173EC370C78589E329D93C35895CA8B3EA2B945D
+E30630DBCB2B8ACC49846C7835869202FB5231ED9167F307CBA31D2DC0B423D8
+65DE2E24CABD53913C01C388F64BB66976FE3B0B421AAE861E0C0D495D5E0B26
+1D207792F1072BABB49156544C024118BF0D239BCB1AEF8AB7F38EEB34C88CEC
+C7401AA6177E9B7849AAA081334E04A2205077A90C0377A363F22091678371F2
+36A088CF84558630C3F370FE00FE97209AF40D77C6F70B1B4028F1680FF6268D
+EC09B05DB3F8DEE17678CFC46AE78E02DD01454A9A8ABBAE157086DDC92AD22B
+DBE7861A2909232DE46FFDB6FC84989B2B137C564FE84961BCD663B592FF2A85
+A65D7B595113AA7DA8463F852A28233A754591A5F2D7F70649A12EB8CFA35361
+1410C7E2F08EB5353A91CBF2109D6E279758B8E458DC7737369AA35B330A9229
+B73DFB9E1745410440E440DEC966C0B21349149E08D57740773B1F17161217AE
+B0605236A44353081EA2248CBE9E8F4A0CE1499354F6475C10346F337227B8C0
+2474942B49CF891C5D0953B1015203B1BFE0A7528C900968D16A876AFD9BF28F
+43EAD0516A38FE48F7091219A717617CEF422F7E2054F3E40D7D6239F6744E44
+86F62AD7ABB61DB0E75B245B44E7A6FF9D72DAB469A07D8046DAA059CA891766
+1420C7A397CEFC7CBFC41A09C54FEC6E77312347C14CB8D87B313A0E7F2CABEF
+CEAC4B9E15C279A18BABC098027A02EEA025F481769AAC7A89F9F419A9EE5908
+351B0D25A2F9FB805227F0ABC3D4A87C63C59E80B1BF915FBB1E1E164568CCEB
+1EB5B1A19180F370EBF2DD11827844584475357DE9E31A138874E567B8E1DA93
+FC5D6084A3737CA8EE391773F3F91C243AF33013891B4E7DCBA7BBE1E06C5031
+C3C0FD60806B7052C5F7B069BFCF4F879914D9C2827EB53C505D5C738E1564D1
+1FE8A3EFE5B3EDE0B766E816FF02473739FC5BED647CEB758C6D7457ACD5E352
+1C3F13E6F1DBA43FACA8FB3D257B24902EBC64B10C7701AD3850BD845140C3D1
+A6CB630AFD8E81ED647D65D7F51803369D37DA44F36D8AC77976AF53B9C4E56C
+84D5969C27EE9DA518FBBD8430D5769AD02F28B6036D5D8AB73C784734C22D5C
+7200D0A706326DB04C52907DC99648D46F2741B3A9BADAF9040F2CA68642156D
+E597FD6BDBB5658C87501440DA17A44557EDDEF1C576F8FE343A6E2DE27CDB35
+8E62AA7C8367E3E44DA6E435DA063BAC3DE82D73AA2A147CC5A844187D29B83C
+D12D91B9018718B53C9CB11CABDC9F7A8848C19E73E1DA7067632DFED7994B8D
+3A5E1260D0315558BA94389D996A960836FD9C7570F02C453129DA181B2BB9B6
+56BDBA69A47729BB3EE50403667025273C0FA725D6742B32DF5E58BAF48BA6BD
+DB77F2571F3643E792CC757B8F1AABD13B60965B5F1AEFC5108B68126149F4F5
+F54E72341790C7D75372F0550FF3C9FA8844DE0C6E71C261F94C2A763C6853CB
+6179437BFB20949F530804A81C8C71B2E04531E2F3E0C158040763FF38F69682
+F8FE6FC7F914C9BD77FD51B7F533FADAC22C819B6F7E3094BA3B4F96A74E43BF
+240DB5BC95B8577597AB79D6ECCAB0D65EE279F5CB8527B05BB521EF2F7F23C8
+42349BEDFD0E303A7969A9383A6290B9ACFF7C7D402EA8A7C9517F01C28D31A7
+5B705C785F6418B802A18AB458C03291A0751FB55AB25515926778649BF7DC53
+8E94F949469AB3EEC16FCA42F98220A5EAEE73D6E82C71779E8892B2BE652796
+E12C2B6E3D535037013D60F8211EBA7119383CEE9B06981BFB98666749064BEF
+338B4AD1C6300DA217F38EBF093C867A7B019F1C8F4C64226FAEFC38027AC7F3
+A528689C44EC4CC0D0612AEF76650826D2B16F53675A57273A78A911647D112A
+193F579ADA161BB62859141F9893013F55D636A595E532BCA11F26E5846724EE
+E6F3026983BA6E24C1E462CB599D2C6F3E7C0803244D9A773D1DE70325786EF5
+C42D2E9F3DDA5F7108E3C28357AD1F088404AFF56EF5BC9ABC92A32BD46FAD66
+4BF53BD32E3A6781F4DA33E25E0075638D941389DCF2D5F3FA3C9AD7DC26BC19
+28D04510B6DC27C7C6EF0EF6189968C8759920E15F65108B389BAA1D2047B977
+E1818381DF9FC5FC217DBBDCA80BAB7B98E7A00A97AA3BD47EF50ED526FC8583
+1FF5B2B4B470642E3F575F4C0B1FC5EBBDA263F89E6D644E2F56DBC6FB50D23A
+A04A2ED571997F30657BEDF19D268F69D7A624FB11BBE30E94448708D077A238
+CD4543C8E805BC0DE96A0F4E14E721CA75A34DF4F911034DCAF94C190380D55E
+77BBA860C105DCBA06BB201281A02830F8FE7951855ECD7E13A2514B2EC6A93D
+A40D690A17709E21DA5305E3DFFB395708581573005A777EAFA0403B2F6ABC0B
+EAD09C5C3E2B111D8E3687DDA302B8AC5B11341E916A63832439057BC72B2E67
+7BAA5ECF2A8FB4D60751A1F209BA3F80E2BDDD496106EE382F0B704B94A7EB2D
+1659474F5B80774BB710BA2A744794A74061970230B044218212BF7C908A9F5C
+8575922D7E0D13FE10CC1E548C182F402346C6E256C3C77E871703214488172A
+76E46E6B5BF7B7704AA57E3C8CE8EABC9F8BF0A53538F3A09F27ABC005117354
+39F733BCE06C01F617CA9552C01B0ECC3AD05D9C04E67CB7C194007C4C64A460
+726BA5371B9B33A713C6B3D69A6DDA20E104580E1CCF7B0958E5086B31C28AF0
+D645B982521DDF76581C7DE21C7FA385F5A5AE637169427D13300AA66B53DBCC
+4CC79A0320A2C5379B7A9A54AC967163DBFB993753FA7AF4E4F7AB3710BDBF8C
+3F10A9BCC0BB17ADB5C5727895910CD7CA7F4923F00B07FD16318E0A53633A3B
+0501EA6D8851CB557D80120DF270B85DC721881CD897BEB71CD7EEC64CA12990
+E8E580E138EF6F9EE2F8EBD3DDC3C5F63AAF381ECC7350379646788EDDE61725
+C72975D2DBD54F7E7B5B1DCF78969BBCFDF726C8F7CB93F39CA28715C943C782
+5CD1C1DDB42404E24E079ECB45A8C3625039AAE73D365CDE69473537D4E575A1
+1D017E12D1FB54B41D956915EB6315A82EF3CA876200D5CF0973CE5F56649FEB
+F62747208C08C8C61A0AE81FC3A538B16DDB109177C7A686A256CF37D55DBDA7
+8F807AD40060A99A44BEDF27C3B7178199E750C91119A7AF35496F6F1ACBD666
+B5E1C8F49FF59AC5C5648011E2D0F7F85596705D4DF9CA26541624DD059E8E70
+4E74F1743A6C6DFE15BF1FAC3CD9A004F3AD0828489706818A60C1661B9E09D3
+3F18885643D21E8EFFA14F48E22ED8124BFBB4398024C177B02C760A59F7C0CE
+E1B619449022B819131DDCD178F826A0C2E9389C2B8B44B229F954FEB4D5FC0E
+CA84B53501FC1767BEED2381CF24BD89BAC6BFE1868C78416159F6F933E7C828
+DB743BC92B2EC3DC2DBB0E14F569EF1BCFF9182C04627D1E2BD48EF654850CD8
+7151797484EAFF38C38F8577737F5EE125EF08565E4F6E6603CB9CAFA165A355
+4B06608C939495934D515A13D319F3F8C4C1425363C897D025D28BF1A4BFA09E
+0F97561179C2C0F030F0B6A3C8591537506D9FDF232AC0BC848E517E61F2AB95
+88D386584AB5F92CE4C68D1F419A32576D47EA6CEF4B37946B1E3DAB1E67FED4
+A5B70D62A9F69C227C21C8AB490DB86DFB4CA788B6CBFF8F02B920F739B141DE
+1A095167465D82714F492EA9D2B4F7BF14719BAB487EF25F8BD1B377FEC95E66
+F3D7020294E06E743A606D61B27DE20252F211737C4026FF7B9B4945DBFC9809
+8E1594CE15A1D7E5270B7448CDEC0E7D728AF99771E64A43B27A041FCE6B963D
+42B6E1975F5F8F8C26602DC75D04ACF27CB1DA2B0841529E26CE6A1D0E5E9B31
+0C191C39FDB29C4505CAAC095E91619AD29468DE658EFE5D5198FE5EEFB0A2E1
+4D6A7F1BBBBE87D543592D0E658FAD7B5A002D6464C9A413D8952C533DAE8507
+B88888C8BFC31C3F8838653527A3AF640BB9CF67FBB5844FA83E7D9D51D801F5
+62C12CA2D6070801067033521249A56C5B0B77B19811FAD4951E34A6CE5CA1A8
+443E4C5B72CAD2FFE1650FFF90A91EE8D7DD95D77F681C1858857EC9C449AA1B
+C0D7145473917BC9E1D8D6A691C91E1A9DBABCAB74BB080F506E992C1A974E26
+00C556FE22EA28DF85CE94B3898AD28F137ED56D605CE095BAD1AC60BC6B73CF
+85EA4ED98FC0ED5971DC5A75F289698FB94A4FEA6479479FB2A9BFED1859F69D
+1EDF8BEFD567FA71B725B11D55B06CF0E95F817DD67612B41AD48934A4D5ED7B
+D888DD698395041DB1C9290F599BF0ACD24AD9EEE1ABCFEFABFFEEA96A02D292
+C78CBAF56DC3AE9E909A2856E2614E2EB9D4F46289AF8248CACE1CFF69C66F94
+F5B939A523DD14332C225110DA3446A4818FDD67B5D16FDACA990DDE72B9F10B
+F3924237D2B6069030B76DECAFFA70FE97F5C5C684A750AC53EE37B1E27C5910
+48BDAC0DE147D16BEA29E4A67AB88588CD8F3B50C4EA3A18D81778949CB17F14
+E4B19BBB9FE53ED4105C05FC9180CFF9F59F956CA0A6D11230499F04724051CA
+B98968E61ED0DF26ACB0D0EB7EC9BA825547B42F4A439AF0F1B4D4F9F4518ED9
+4A80B709484E08438B6D103CA4F0C7C8CE75889EC2C501A375FD8D91722D5FF8
+195D24FB5D569630D94FDEFA35A8D881FF0271B3D451A884D106735D4A2361A6
+D71626BBDF60991E20045C1B980FDCA1F436C1EC063C9B454E55062FE19F88B3
+C84211C2D38911CCC65C1B10931EBC9D633FF04826D1875DE425E69D60905013
+3280E96B205088FA4C3AA2665B595DC5BE5AFF1C29FE961869F3A03AC93569CF
+A1EF8D26E4FCB55CC541FAD73B55A60A9AFDB07C4F26B7AAD34193D5D3E55B6E
+53B7E8C23EF6AF8D363C59A59C1C5DF268B43E3BDE031C960662E3B308BDE103
+5717C31227ED287DE82B9C1923F0FB2885C2AA2839273128EA545CB9704CC989
+C4B324BB68E070E9F0810137F4B1FDAD4B7E959872BDB8929AE4855EB15D88BF
+F1A10FDD74B735B9EE49465875B67070F6D6CA219A64FA86934A4CB5EDF7073B
+B814B8C9892EF9A90129E3C0D84BC60C0DAED6A7CA8EF9164BAA7B3B11736AF8
+C58302F9578CAF243178E37C0CC8C3C9544AFA68952BF4B02890A0D000645694
+7AEBF900234A5374E199A5D90F10E57A1C123DEA596AC51BFD29DF7433141F90
+E0656BECAFED14399A3CB3A7CC99D5B2A8F88FAF17C9EEE84C08D0EADBC15B41
+7B21B8BF97FE52CEB94EBA37CEEB39EF757F7FC8A76B150796A27C646D5C85DD
+69AFE8AAF7465D0BE73B348CCD8E6493AACB6CEA5C15A9636C2DF301E5C7F72C
+B8C6BA861E90D2015817619C9A013CA9E7D22D26C6E8393187F8179E1693EDEA
+F2531A7555FF7BA758D3792108786E9745DC6B235D02AEC8A65A45CD310169BB
+F8AE3BA1C8A88A4C2A8C2C730F428FDDE333C75558417E41F95D6DC547E0AE93
+134F547C8F7BCA1D2FF766A9E2A2C799C529348871F5A56D5B8ADEA3B2A11DF0
+545A0A5930AC1EB9B33D296DB9F1E8B815B741D855622350EC35DA65E002610F
+4EBA010D0E018E168377533CC24CF7F4B79C90FD7C4AFAD40756621200E45012
+6C65F1359854128910451346DB93A34374EBE00140D3BB639CC14901E7C448EA
+B7C6F6D76DD96CDB8910BC20869B7E235BEA990DC962554C1D92EC9625813BAC
+252E58DF9D422C9C3645A999A3F25B5ECBE2B43926E2E9951E47DDC1E302FAC5
+921AF039D110CAB81962ED99254457E99A142A2F3230492827806417B1480691
+BE5511A7C1FAEC3B11745B30A10B8DDBFCBAC3B3B8122115F3E869C36AF8584C
+ACCD78A3B88E09C7AC348187D3D9B650827FACB330B2492DA961EAF8CBBE87C6
+8ADD19B167EBE1A73EEFD7CC9239DBE4E8438A4A16A28F97A1C6CEB14F543C23
+238478AC9630CDC4CD3A01C8DF7E06C8B8F033A32D2B4BF1C23CAA5366367DDC
+D3CA457D69489D0C84E56D50796B28F8BD089108F4D8C7FF554CC68309055B12
+9F910D46D48AFF711073F5453D8DE7A781FD9DF4CF4B28799093DD8FC2055BCE
+E8129ED81391F18F26EED523B9BCC59E941DDED79B23E74FC37BFAE9724A9E24
+5304601310BE6FF3B480C7BA9E0B72E4C6FC8BE2A0A9407109E1770ABC56FBC0
+A8A44AC1496D3F41A74B8AB00435E679E7B107C133F3669697E8341B70DEDED3
+48D6BCDD9BF9D336F25E5739A9CB1420D6F1813D1282C0E0EFBFD8DDE2C66089
+8B82A466300D6356A3257222AD8B28F8185085218997DFE0FE1A1CE1AF554B98
+A1699E9068CB49374FDEFFA433B638B71284FAA1211B65898C3C056802FD3AD2
+3AA4F680922D437146E4F7DEC9CB8ABF1A8EBFCCFB7DC9B3BCE38C8C4F2A578F
+51B3AA15BD2BA58496CF4BF26DB0DE0CE1214674239166AAA4A25606920B81D2
+A0AD21E24B3AC6A74368F9E7F116BBA02DD2AECEC99F41BC3D955D43C2E22F2C
+7C81B1EB554351D47461805FEEF5CB89426AD58246617F6E5135F7F735822D2A
+8A41C2A685086F145175154762EB694EF1A877670A51C4A86139E64063A80933
+61B9C6111F450BE26BB644316FE30986368945EFA43F6BD4BE3840F578C6B7E5
+64E8BB87AF2A7E2F4A8B1AA257C2DEB9C8BDA8A5274E5076756B3E942A44F1BA
+D26498BF571F450D904733A0F796238403E5A781E640330D70AD296F6D74B679
+B0B1168B656E9B28E4BC7026FD15197875D89A72696FD7B20A3EE4ECA24B78B6
+6391F8DE690ED48966603F2186424B17A28CD3B64BE1E3768D8AE01954A4DC91
+CDD6F3A30D3C4EB5F9C2CE00A5A64086FFE87EBD9B4ED432FE59DDBA942F72B0
+F6B3C8CA4CCFA5DD2BB195FBE297F6E65CF6C06E9D4475EA2C41D61D39F0B25B
+889E1EF856FF0817142ABA12DE2C80A2FBE0C0D98A60952D93E3AB87C644D4AA
+B7CD2011876AD53DE27BB957F69F4C4E48B292D916CEE8BDCF3AA2FF9C72E580
+EB5482E26EB7719FC7BEBAEA7102D55048289FBEF5C5829D96A437F4F7CA57CF
+9FDE380071F7859DC68EFD00288063EBAC1112227AF649694E3D2D63B6AFDD3C
+7702EEE2F4ED8D760D2023EE1193D3266AD408AB8A3FFBBF6FB9FB1E8E849F75
+D79AA064A146C42EBEC6B1F5B77A02D9C92DFE729DB8F03C6E67E9587346ADCE
+213F08F02AE6C6D2340E8F041B212A760F0EB6D4C4F7AD11C0C7D003C384E9EC
+8009BBF3B5351BAC77CBB2DEC5547D9C9F2ECFEBCAB4D48B5985E891E51C7BFA
+0A02C7B166565EE79D8D5BDCA41C79C69399102BAB4561B1171CA99A57550363
+3231BB3E3F48BEAE734E65310AFB89A170D7D2C23690D07050E6246647B2A3C5
+BF170818138683EA1B4DEA8C2F018D0FD5778BEA72C72E6CDA1458BC8D1E553D
+E61050AA240D0677D9DA9D9C22810CBC6C0E441C02B27BEF9BB48027E07FC495
+9E83F67BE50872095AD837B6BF75C0B5669091CD4923EE8929877CD0BBC624F9
+17B90C8D5FCE286F68DE2FC1508373EE9F9FA6F5A3978C75F52DDC397E368A0B
+57F5B40322053BBAFE6C7F8F293E0E3BACFE054A8AA7DCC3FF253F58C75B9D12
+4669407237089506FE8CC6A24A1025C8B4673B48FF3174C042C4D66BE2AC584F
+6A346027B020024CB9816965E99F62488D47EF144740C30CDDD2562F6BAC56EE
+04AE0AA4421F68C2525130D92002CE82F361624166C24F7C2B11C69310B93719
+0947BA4E74BA25398727049E1E8C94669B709718B2BA25D889BA48D66B0A9EF9
+173C6CF93116BC0DCE2DD62D2A936341BA360D901BF23D9A6579977464D12A3E
+14A083FB37A4049BDC5F4D9E8D49D05FC4213B01CFB0231D2B03F552F366846B
+7AB75D68EB74D57CA505C571AE2086BBB8072B00881A57AEBE38304FD73F20D1
+B3A3F4DBA7CD736A475A04B7785C64F8802DD8483C75E50F385FE63D063E7ADB
+0FC45DC313B0585C605D1529D226FE08FF7ACA26E0CB2C1B23444E976107731F
+1795EE18D69C11B9969542AA52BF0D3C4D00862494DF946B74718DB8FC586DAF
+64BAE620E3C1512720B0ACB343DA448A0419975CD986B40D91192158129232C5
+85E18BBA914D219AE5979CF98BC9A4006687095BB53215DEE575D4FF7FDFE94A
+25A05F1CCE048E2F7A801C7AFACD586C218C1A04B43F167EEA5D6A4EC9DB4FB8
+C2E56225709D9AF95C88DFFF3B7EB9C337069278D51F0824C96DF582C630BEE2
+C4DFA3E9C9CE76D1B52A23CBAAC840EEC8B3786D45834D55942B46B6B4C612AF
+BFB077F21E0F7F0EC6436BDF1704EAC52789C75F7900EB441EF83E37C780A699
+2E3B2F5222D7FC4440FFBD93A01205FC7E64CBE9849BD01FD4448B343FEA4101
+9FFF4E1527F81F4DF3FEE2F42953C4BD655A50BDC6EFC02E25A5D8695544E166
+7ECC195622F1911EE8D637DCEFD8686B01A130671BA5597768246CEEDB1DC252
+214E01AB3AF7AB7E3D766C1FF37CFEFC2FBD4448DE566042D46B3F2A0CD85D27
+52F4CBBF632139E86B8A2669321B4488AEE0E3EE016440B026BA4F3CDB798BF5
+1E026DE9653F2851D1B095C7272112CC642066872578C2063921B1F1DC1DC37E
+6FCA614E9EDC7EFBCADDF112E3127B753D0DBA1F920964D69C779343ABB1B56C
+EEF95475F7CCE12C08A5AC0502C65284DD6F34C8FC31E6D696D9B1075B6CA4E6
+8857AE5D9267CF640DBEB733B3FA1DF1EE67D578445DA58492A8BC190AE91CAE
+DFE1F1C833312BD85578E1D63F8E593432BE3D4A9307127750DD9F9509660664
+92F85F9C97860433F1190C2448AAEE97CEFD9E048681D41D17F5CD3B8C6C3AC9
+E7D46179623C806085BB5D23E6ED26B2D900515216EFC224A9F25660536467B8
+B47665F6514284E567397A7AC78784A8CF47B61DDC9A66B74C04FADC5074B8C0
+476EAE541AB9F94E990FFC31CD94CAA9E93966096383C1951B00C4E79B51A728
+7526A4FD3A5F6E9D673555CD7142C94EDE73E8A3295341698D777405898E3B4A
+E149CB4E9EF567CC18C35C3BA9354CDE55382A6569A8D0B2B7453E5008347B32
+8B5745431E577B3525D343EEE8C0CE5CBE1CC6D3FD13AE8C5C9F672B10451183
+3BDB33698C0D220902195138EF44A545EA6092A79C9F4AF24D73B735E3733FE6
+67E47D76CE584299B16295BE997949021F949E035F49593BC128DFA89182F89B
+2FC9EDE36D2010B1BA62A6D900B00C4524AC6981F0DDEE41043ED7500F574409
+C275BD142BE36AD2F5B08121EB0EFD58E8EDF388CEE211D4FC3C2D04D09E8757
+17CF2869D202B2302BF7F5741F4DF47C1D76962A3DE9E718ACF684751BD968F4
+6B3488D623E734451674276CE47A465AE3F50B50A938C17DAEDBD7E40737FC3D
+35A709ED283B930E0381A174F3804E78BDF8B8761BC37179A96FA636127145B8
+639577E80613C9A547AA8C3441C85E8408C0C4C1A5143A3179F9366DECA49F47
+324BCB48FFBF44DC15A98DF0A4F9331BCD908E5D516881A82ADA22B906A85015
+6643813BFBBFBD2790451F64AF61E0252CA23D2C44BB92D546B50DF7C2F5F3B9
+560117B9EC0D5DEC65A4404FD7CAB019E50B6C468DA7B5D2239F298DB98C83EC
+8611CDF1D5207EE2F8F817958D2ECDC5557BA2D8023B69FE98BF4ADEBA5610DD
+F12B997F1D998441952BD2EB089AF2C6CC99FAD2E7E9AF14648BF99A09355470
+F32C0A511E8A02FE7E24F7E535020C6FA0FC4D9015532467666B0192BAE64768
+756C8AC401A71864A830359DEAC2919113979FE4DA48292EFC5DDD97A53377ED
+CB29E122DACB9C126F687AD2684F4EF885727C84F09CA8C579D48ADEF1F47859
+DA6848081327E0316788D90F3F59452FC9EBDA175845FF0FD6178A0582E20436
+4BCE9A140877B4DE31EC9006341568BDCCC9DF9DDA0B086DCF1D5A8BCE4060B4
+1F13F5A274242B4A0990BE59BC8DD36A2AC264258E19CFDC1AA63432D07E9DFD
+C35528A40580887195D79101345AEBBD0041A765274D09780B2BE95BD42CD1E6
+A5B490374097FA0E5B6F196A3C47C18E8499717C07A36BF3DEC7064845253515
+E0299143BEED08AE775CADA4F8ACEB96D70F08779BEBF179B2BFB0DCB0F1C126
+35B6BAB5C1F755CC9C40D5506135F11A22F802A9F3C79342B6FB9522729E681C
+C4A93373F8E6DB2CABFA5B7CAB4C243C975EFF5C5D634D4D311EEFADBF115E41
+1C3EA696F82803A071B80E18BE67F7828DB353FDE5B51073E86E68486CDCE01F
+5D79F3E3DB087505FCEF1F9B01908F1D9FE1EBEB25B6DDB40C119D5B28DECDDF
+0F579BBDE6CA59B903368E3460730A756FBEBA62903512DEFDA5CE765C479DC4
+5658ED736D9EEE0CCA46CD2676C475FD3F8E2BFEEF43E7B959F19468FDEDAB2E
+BDFF5ACA6119413724BA04E9B006C4AC43CF2A16FFDD90A1E46F52C661328295
+B245F8
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -4464,10 +4478,12 @@ dup 47 /slash put
dup 48 /zero put
dup 49 /one put
dup 50 /two put
+dup 51 /three put
dup 53 /five put
dup 55 /seven put
dup 56 /eight put
dup 58 /colon put
+dup 59 /semicolon put
dup 60 /less put
dup 61 /equal put
dup 62 /greater put
@@ -4722,399 +4738,410 @@ F871C07E725D4518013D9A84CEC96782541E5580E33C2EBCDB18F08EB4655A46
507A8526DB26C854928B81FD502B0CCE4A68943C12078F57C10F4E85FBEE1025
46D925B8B3B447D4920410FEEB9844FABE985F9228FDD9F58392F2F3BD650E49
2E3AD5A14984874DF4572816931885CE8A448EC95BBF40DDF4F85653AD90A88C
-C3ECC63492962B685F789DE4E796D1EE2F23B7C9F9A1656B85982FFAD6E2889C
-7A667DB07ADDE075297F9E5808A98A05DA37D8F23C62115D1C08A331532770B1
-E0C7B867A3C0DB7557FC8207C80F6E3717180E7D4F3D6B66C7406275A3206C80
-4CAB4DA1D6EABF67CB1B8D2E34F25900927BABC9BB12685D7D153D0960692BF6
-93BFCD7FD07158CECA1F10A5D75C8B02FB448147838490E80AFCBB1340C523C7
-E247273704AF5EFBC8FE5526AE4159CCFE773D9AD5893EAFABB4C4259D5A5BE2
-1B50B7377C8D45B3D39C45726F023EA52AFCD5C7FC6577880BEFBFF509D61A27
-A58C80AAFD09CBB71E088D7C414275F6256511CF4FE9B3F3E74D8B491F2E775A
-0495EC4C7C74092A337AF57451EC45DD1BE65EBB4F6F2AC454F58EDCC6B7AB68
-0728EBB958A1D5AED112BD7193A3047D23C8AEEAC26C7FFC1E78386C0FA6BA73
-DBD43E42A5C77201D4CD352EC3E9C496D2EA2BF7995852A50B29D3E2B16F9DE4
-A769ECC02C227A8487D22BE8EBA57308B5992B9433D88982233FA0C895FEDFB9
-10B63714A2FC8B9396F9D625DEC3240EB2AD54E3F08238AD01C665529018529F
-D078C2C287675D7315CA64E907C3D428ECF2F3283C5CCE860EC461D403251DC1
-75E7ACB31F8958132F3D57AB5E34F05EA9F5042786C108E51B07635DC743D063
-11AC9348380109216561C53A74F4C3D595426A1A86E9150D3A9EE3B09D7670CD
-D4F33FE94D92E8981FEAE708E978EBCE5A6D17B4A1D1D9161156127EC0AB5B6E
-22B801EF92649437D89CE344D6E4C92F942AC811710D83589A03AA83B229D3CE
-861D48CFA69CFB61BF3A6176FCE2E406CFB30ECBA8F9595CA3405C8F0FE23DAB
-A06D1300C586F8DBD775F22F2368B6714FAAE85868C9EB6F7548E63D6E08EAB8
-B6764FEA41156D3FAF9BCFDC75113B8E73AA4F31F475BE491B45FAC197ADA3E1
-57E0DFC05232D2596F7B69CBD593181849FCAD6FC6CE7217D6C6CAA328BF57F4
-FBEE4E16CE5035383201CDE43EF601624AA1E9061821345302A49C06AF6B003F
-14B42E6CE14F978F194F0502B7E610DC069791E52CE628CB5452BD6080C37F1B
-0A7E8F6FB6C40329A70AA824616CE893FFECD2EDD9F8EFABC788BD415FF70F0B
-F584471FC7DFFCDB8B5653DCBE2D191E1BCDCB83FAEDE288C9FC34C6D35E6738
-64F02C8A76BD7CAD08F318050E711C1687BB8C208C8ACA101470AB06D4975F82
-65EC88DFB0CE26289E3840E8D3E7146C9A03F3CE9D6434B04B0310308C221E7B
-8D8709D363DED43CA5FF1C8CE6CD13B5906236DDC75FF76DAB5A38765CADE270
-3BB52ECACFCEDB884D1453E01A9653816ED352AAED96DE3D2894D64D1FE67656
-57E1E7E51CC85CCA202965C0AB8DE87E729BE4D7F1C631B6DB9F0C901E83D397
-791E4DAAE3B96B8C7AE44F70AAFEFA1E8FE0EE6A8E811652DBB48F2336AED844
-3BFC598A713C268C171BA0331D042C38001800A4C8C647055A0B064DB18A9D3A
-AC9798AA8208FB2862002C164D0FCF6FC38B33F2AD7E48C29D349583E02248FD
-61E03C71E686B96B4D4E0124EE78FA97082369335AAAD3429F5A961BF05A228F
-11A453C158B731A5805EDA613947AE9FB40782C1077A71E5C95228916E337821
-DCE43615341DA9FA362007D0ADDAF128E4E336E0DC8190C5CE43B13C27519FD6
-8638AABF83D71DBA3B68D64A5E62CD663F9D79E56AABAB474EEBD3B4BC812DC5
-165D4777602F732DCC2A342BBDBD3215CC7360DE6902096DADAC86D9C2D17F9C
-23C68E22931E91FF5DB218AE2CA8EEF4F3FBE930FC47141078B466AB2C564FAB
-EA33AE882A540B806AB69CBD2A8E55D3C26BDF7A0FF87FB47A2839A2A7896502
-47F1C68F882E38CA6994D57D8EBC8F15FF8E091E3F1C87CB83A65571ABC8BC42
-F2D2E63D7D777AF0C2DD7E5BAF96F20E29D2F08BB1290FD43DCCB7C0C7F7B5FB
-BF67E1289014DA74C35B6734D3618489DB97DCDE55F701A63A70E3F59A3DDB7F
-C6A25976EC99019C6680BEB374214E92BB04498556D84BFE289BF1E02E07486E
-91F9E5E5FAD11E65FA0356054F352E3489ED93DF3A241CA4A354EDF0C5858517
-4C7B889D256FF8721CCC80D14C7B40B6CE001EB5EEFA0E2C991EFA6B80D1E6AB
-19B86AEEDEAEA08876BE071C01D801489F0775E46460F6DBAAB3F2C2C7F95394
-4CB70205A4CF5DF4CBCC45E8FCA893CCF96BFB8D08F2E439DD00EB511CA34AFE
-22AE0ED77D48EA49EAC1E2EA81594EBEBD0539801393C118CA227A95968FCB1C
-0AC1B08AC36A6CAC79E033E4283A38BAA3F3081D9AF5108E5185175C2D1CF1FA
-CCCBB612308A6A8ED21199759C04CCCCD3BEF1631AF6EBE4437900A3A581ADAA
-3DEF3F55C84532F7A083D553E91A965A732388B1440116903A65EB8D151C7135
-AB91DDBF69A6386B15C104868DB82ADB1FAAD169531A04FF73D89C8ED2356F8D
-6E6EC6D1476B8345D340D8B6827760CEF6C191E8843F12F3772EED191E596728
-80651E10D1B307DF76A84028EA7E64321F59B4EB9149B347248517A513750E53
-E61A74BE0CAF41F18C7AA88EEEDE0ED3D5CD84754657A92669CC9BFDEFAB9CE8
-11355329988AF84EF116B0E2F68451E799EDBA2007CDF555637E247F5E01D3EB
-CE40A4264D275863AB55D61C0533A4F49D64EEA8E05B2EB93366C64FCFF33D6B
-718706490AE470C0F297A27F4C1A269A3E9B75E9EE8CBEFCC44FE045B62B66FD
-47A2CDF0F19DC5210B65EECDA51DA371BE25DBABB2D13AB45F3B7BCAE838E26D
-B5319199372E44FD4BBE1C09AA6DB28CBA5D2EA7B9486B36BC7613A0F0246543
-B3824B039C624E2A05E4D3E10656D67DB6D7E5B4C2EF7D50C3A6F64CB2F35563
-43366F65963EA1EA05FDFEEF8A833B17DE2F15F77E8D1545EA1AF87EE6F50A85
-ABF31B62E3BE1DD013BFB96A574738360B1A6C9F649FD44176F5D4FC98A44707
-DCF14B274F902BC4580FF1E61176AAA10879A94A8BE4B7B8F191B2E624482DCA
-F73DBE465958ECE3902EB75059E17F3DCA96CB235B22332CB80FA23DC537231E
-02A005794EE621B1814B612EA22ED5710DDBE8F6616F1D67F8909018DF3377FA
-D66C42BD2C15D185C7B9CE30E8B27E6A142E89E6EA90FC9A02A52F5615394448
-923B60EE0CDB61683D6D6F786A20316B992FA8D6BA3738BB66CD55C1988F572E
-627FB1ADE7B5D74A54A8AF5A621AEA30899A3B1D45D75252AC88A7933ED97847
-B972F944716D8664A2E2E4BC4C28358583BD960AD45261866136E0A626C36842
-93F9D95A23EC5721F7783BCEBCFF7433D1FB87E6FCE3F16FDEAE6A34EC296E4E
-BE5A6B30FBB47562B4D2E8A1B3FB5F2AB273CCA2B4F32353A51541FD44E76060
-8889B4A454C42A159A0239B1E451987846DC2B5A1795DF53458AE0995EEA0521
-867422FD27F7DE1F177F9DDE065C882EB1AE2ECCDD5646D93B7FC13379451C78
-DA50030751DAE5776B8CB90DC02512BFA79391BF8B8BD3B7E893FDC359A36822
-536F79289BA4D82FAF112AC06A4EE34C8499CC7AE22F3F5DF7E096FC1748D1F1
-CEF00A20701BF1E476E19B8C904B4302D80D18F49E30DAAE2548EA21BCD8519D
-F1EF0D99125463A8E9B5E6943D1C18E1FD1DEA5073B6DDF91CC8D4FABDB5446D
-73F0A0CFB4BF1C4C74BD32FC0E299E355F3FBDF6E0A75285E2EEEA66E4EB2513
-995F1117FC751D55BB5B66CF37573A8A932A34AC29581D46D5AB5ED21A5C6AF7
-938C400AB449B328285B211E54FB22F2620E1908DB3F3396F91C5A87C4C4726C
-C8A54D630E9F3D878592520AE5E5B53668BE3FC3D1E4D263FF5C6A84BB5D55C5
-467BF67904172EF0CE6772759EB0F75D2403F8A0B40D6DB9F5D74C3A5FB6C30D
-D04B316A8B11B9611743BEA5CE92D8730E577B13B84283BBD970DF44BBB87A80
-959D4303F25033127E48173120E3C3595D095843F2467A3473C498CEB9075A20
-5DBB9F82DB7125B631139286D6C5633F94C4D5097EC8B7A8D096DFADDBC89C22
-135440B7929C0724EB1FB9D8C9D5480E97BB4606EE6976418A96B42FB0556928
-ECC51275CFA1D0ACBFFF46FC0B04CC70CF302406767C7FA493DF1EB10A5F9CEE
-B3AED9CD32F93D862FA2FFCADB986F443F088DAFA906D950D3257F24C64DFEEE
-C48CE69284FABA482D68FF726EB83685DD48052F130E18132954B3E44FD3E22F
-B39515841BEB0A79DAD72984C39DD4FB8C4FC508AFF5B45ECB4B23789F0EE906
-9EABEB099EBC24D1393866FD9F4CC79BC57C87D5F027501DA894F237A87BB9FB
-B09039B4E9CA8E767319630FA2CE444EB878069DA89D36AE4D9CE4E7F8ECC5B0
-06D85CF8ED33138F3F7D664E275D9041BA70C6CB4F9BF26EC2B9C5EF2BB9AA2A
-B5FF38657170B736D0A06F148970A385895F4C2F524A582CE0E224E778585652
-7C186BA249BEE06DFC457D728C6226027B8F92A0DF24E7F9E3A7AAE93FDF6F87
-E694DD95CCD0BC2504F3D9087210CE220862D34139D33EB505D90D39E7DEE3D9
-4DAF699231D57B5AC3DC301B2DD84F6B64D3EACF5D0B690D0BB7007693A72DD7
-949C98D8EB9035A0ECECD035CDC6E7B8A007BFD3EB3D8DFCD130158E473E636A
-3D00F8A2183766C422991EA3FB1A6F5DC967EF9C8736FB190191154216B7AC75
-F5E269CC1AB5FD8B1B8F1632E9496BF02CECAA66532357A0DB3AE03D98351FF7
-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
+C4A879C0C7596E61997B972E8A55E57B17F802C738E5C7A8FBF6424F8B131B23
+CEE3EA3747DB066246C250EAD335A76FA166ABF75120CECB59076AB31A51F176
+57176CBE8C802A97B0542A5CFD6D5E6D7EC848B923012E45D9F065BFFA0D03E6
+788B68BA4DE51DA37994948F859D41C28BA939C3A82BFDB44DA585AE80B8CD7B
+A6EEA79B70BFB4864E06F06A9751BD2D2A209D150D7135E0A25D67263EDD2A7C
+C63B5B76ADB05A2BF747D5699036377F1A645372E5CF6497D8D4465492780B56
+0D7A64F4AACF00DD611A0D4AA2A1B4ABBCE41B0BF87A7351F26E125166E2E07E
+2E64639C4DC21B996EB744C784A145F80D07676331178ECAA4967195803AE02D
+1A6A04B38D721323251A1B1F656498F5FF255E4F1632DEE1A8C2B197CD7BD5FE
+3819B1998273EA5EF8EE032E0638F6DCE419852021D098A19CBA9A2B675BEDDA
+B6513BFA1F239FFC92CEC9ECC612072E87FBEF1ABEDF6804E605AC8979E970E1
+3EB524894E3949BF090C1BB477C45FC0054DFB6B6816C5B0312BB9FA09EA87A0
+9A18B9B5E0DA687BAB199267EC6668094D1FA853632DE7124CEAB78BC994D6BF
+FD8BB4B920B89A68DC0D60BB73AFED84D38925B4E8C4D4E239080FB47F44979B
+7660A9C57F1CBCE1AD69AE3E7782796EE69BC910251DF8406ACF78CDED5224AA
+B13F1E17BB454BD4B5AAAF0143570E5FB2236DD096A2607B8D24EE238110486A
+0759B4AA276E3B5AE6BCCD2299EF7EC5C0ADB9E3A838DF0A0541FC56F62684E2
+F165BDE1EEC719A7DD44D7251B0D28C63304BA3758C76B1FACD54A4E73C9B32E
+A49366083906EF8927B6463215012B3927CB643C0292688601AF2348D62292CD
+5E20110FDD05739D7EC6A3BD1B166DCC421ABA7901FB926025EF88A54B0E695C
+38E9C894A2EF7F33E5D0304268849FC3D2F972148ED6C631EA375D67DEA1F8C3
+C44173E5FAD943C81B72D818D7202AB20B77EA0299D4FF7FBCFCD7BDB0C9655A
+B02646E5BA32F6A7033BEA306BE69EDF532347B24DC7E6BA226C6005EBF841E4
+16430F8B4405B2ED05003F10080C12CC74EB07708FDBADB821BFE0DE6C8A3278
+C2349EB88B977D15639695B35C35235E00862E70D7E9BF6632E0F2E342FCEE2F
+16880A993EA9BF5FE7C0220D844C5920A5428CD87225C7FF28FDCD4FB898A052
+A0B1A3CFAB8A066ABF646D25C4A9B9B7E940CC8A46D56B1235EE247C868B3040
+A83D4392DA442669E8524ED46DFAE1514F44EE67F9147F0A8ABD317CAE4BC719
+0E0E2655654FC2DF6240564952A26549517E0B48C2500F5F052CEC01B7D39950
+109BD5E58C7C0EEDCBC27CBFECE20B9291E85CC2E80A8D41D1603838C789F254
+30E5E1A7B589FD23566A12D027B5BB21A3A0D9D40CEDFD850FADBE1B12A00F10
+7E3B1011AA803A608FF37988C7DE6AC1E955C04C1D1D08ED95F1C0520F069B4A
+53082ACE33BDC0E2A514CB5EE0ED77A861F64C9FB4E23586A6B2ADC96B4D71A8
+CDCAF63D2BBD0D8D935025944BF6B17546BAC8DC48A5ADABC729BE68EE00509E
+B084990A2BC6178A994455F9286937DAC6EEE7583FC13EA26F504E6E66142EF7
+09DD59E6A9FCA4713E92EDE9E4D415872F1FFE2F5AC5EE285E03B895E81476B8
+1871ECAC61DD555266C1D037B1BA381D130F9E21F39849DC022ABE678A7F2EA9
+1823352AA456085C98292DED9FAF082E89FC52487BD40ECE92476CE768166431
+92F6AB4CC2844565A01B9B8C16ED8FB1B59A70832339A063C5D408C566DCEA53
+306C334A0F24E5159870B2F8D999576D4A88AB3C92E5990D22AADFF62906DD21
+A7C173D5BC35A4B35017EE8F7EB0EEC8BEC6A54E1FBF1956A3650BD13560818F
+75699A8846A45307AC3C6AC39E7147844D098E2011490315DF92E188503C59BF
+525AA6C11A07F3FF28D346BF0B37C891A8CB5DB768B20E954466C7032C6FD35E
+EC745501DEECE92659642EAE17B656DEC9A19E38AE2F07471333774B9BFEC3B6
+2AEF7077B8FADB994B61C91C7C48E51FC3EC6CE490A71C82A089CD2DF1094C39
+8E652DD1F7BCB905A78F5F4350AB844877956B837795893A9D08EB5EB02F0881
+94A0670ED2AA24FE20349DADA8B51874773167DB9A897BAB5BD85ED5F38ABE6F
+A6D4AC4E4347E745919A78E8AC8781C586646D0C4195ADCA042A4F4DA6F4E253
+8B208E59816B15DAD0C761F0490CD3CC898BBA3647C9EB7B316717EE859DFCBB
+C1CBCC5CC82ED5039851E8BB34D4F7BA55E5268D7DC5010F985B12D28C94EABA
+89EDA7AD3F181889DD8BC773044C49C8DD6D3484ED6ABB5E15F4DF7898D01CFB
+EEE92BA769DC7E4CD4A8FC8BCF5450624F83FABF5CA9C211B89490C5C7222AB2
+3779526A71526361ED2C379ADCA9DBFA54708645485ACEE6918CFEB08A3B932F
+B2070F32ECE42722897C1AD9E6A375D7F789809B4AC77CDE3467108292EC20A3
+2C93477AE6756D18A0F6E3812E43BD6B5BC69540904C2AA56825D73500F90AFD
+5F008EDF78BC053A65AE1FF5A96C70431D39319341D0F40BE6863DF9377D1E52
+FF3322E00CE6B5407E1085B1D5104903AA396FC8BFBADBAD045C005A89B2C0DD
+DAF6263FAB5B49AEECE01384C811D7CD6F47543077A1A13C521D64E30219493B
+2268F34FD8F101329AC69D417756B409A0E3710FCF1FD58AE0BF6E031ADD737A
+7EF145530CBB631666A10C443D004B7A5B15B913A00461E8A77CC311A899BE4D
+1BCF43FC73C175F2A6CE589D68CA1D4231D942499D5874C9CA6B18D5DCAE8691
+25C8F66CF10B72F697410AFBF10B097312CE5B3F3A1DF658E60183C6B41D526D
+99AA575525B01BBC8C7FA511AC55EF418D623CFB9BDA56CF7A0A6D9631A8068A
+8D64EAF69D686195515A8BB77FE8832DFC42AF6120FBCE8EE04C0AA8BBE76698
+AA6E14AB126F943975648593D61B43AC7CF02F70CC7E73AF153DB464621608E5
+34EA5FFF06BDBABFD479E76EF16C20B6B2708BC6975A0916AAAC519852ED02CD
+5A0263E10A1E86A3B24E090B54A955B059E1CA5D7C777FE5B14C7533E0D25D1C
+DA7C18633AA579BAAF156FA2B70100CDA3A4DC3CC1872C27D7B74DB62AC8AC2B
+89436B90799506697631BDC3B5046645E447542243FF308F1292043098AEBD4A
+582D640FA44E67257672F6D970C895BDC9A4D76F64A401EA9546B513B07DBF4F
+E9BE239D2CAEBA74AFB0478BF80B60C49E279642C58F8DE0735F63CC8A90417E
+00453A7C7894EDD18CE46DB581AC7B31B200C195FCDD345D4E041CB612C41F63
+0A9E92D85A844FA6FBB87FD97F8F73719BFD12A0D8EBD1DF7DFF8306DEC16839
+B837E406959906450EDF9EF40CD44A3AD473C97ADE2C01AA359E228F9826B0C6
+C5C1D434F1465203E0729A996DE29F3BCC92C87FB454329422931B9207F736C0
+5D5E97514792F2083FD9F1525E9EF04DC053B789B421F3E1AEB49D686392777B
+EBC0E947BB46EAA99BB5B7AC7C18F14B69D8610C8C79B65FA060ACF860AD4A85
+D0A7739496E6DC26B83665DB7108F24530D6F4A1A61CAC9C73600E741EF36EC7
+7EC5B8A90DA28F20DC78EAC9DEA0FE09766DC2F366F035471E74DF28FE5F0ADA
+A9DC604FD782CB0E49590F55DFE398DFA307BA722C9D6FB394CBFA74093A9135
+B8FA32034AC05E82B513763721F72F6A4B7C0CD71E40BC5F39EB014512A973FB
+61CC99399D73062A1BCEB2E5181E58012782419ED04275BF52E0644C8B047D51
+90A9F8D14BB550C9275957C9B42D776A4A6580C29F66C1D558BD532303DD8F6B
+355E4589C383B16C30C4366584C985E2EF67BF9E4ED2E43C394C721C08256F8E
+BB96D01319C9249E4DF21EC9EB11A5502614B3AB1FA3E88E78F574F24F9BB0D8
+CAA6A831219E22B4BEB5565D90F47F65063714F1E1072AE989D20E3322A07658
+9005E26EBA791BE0EBECCBA007948EA225EE84D7B17CD57370CB7E81E20CBFA7
+C108A591743A35470E9B75E228EA751EC4EF6FDC8E7FE4AA30CCF26ECD0D9201
+288A20AE15E48B02416A424AF491DB60594B63C2B3B58E51A0E68B8C19685FC2
+ED2E9CE4DDCE32F69C5223935CAA058FBB23FBCD1226095D1B08C611A8D20455
+3305D203E4C7E164F6D2F755789FCA26D9FE576300D0D67FD60C7A5518287D38
+E921A0FA64A5323033B7932FE2E4F2C611D57CCB21E013F5C68BDC1F9384D359
+F69A9FA143D949DE07F815CEE5C2BE175C21EFE7F4972CCE0CB5ECBE15D1F935
+07B74E4D562153E20034E9963772452873FF6640DEBDACC45D478107E1F63DE6
+2849DC422AE297F9AF9BD5D693F67E94075C78ADF063F15E1805CC6E7613DD44
+4F737BAE5458383BF6CE214B25B597B94015052E1762197A486DF662694150FE
+5861DB71C9B1F7C8363ED993D7B07D03A9A7820A3C7CB15B22921C618C5A7597
+C0C426049928B01E78C6FCB7776D3BB98787A498BE501A394771789187A40AFC
+F4C8DB01466F1F45B7C6B8FB1CE812FE29544F3242FBADF7947D43C5321EEEC1
+661568BD694E7EE8D3FB402C45DD5329CEB27FA083A633E9AD0C8AA34B5C8E46
+3ED00B2B20606532FE953B68CBAD741CABD3F7D672CD605F5E64FCB1595453C6
+A36EFDC1C9E98FF3B2093CAE8D3961BFF4E005CFF5CBD5601D2EB5536B9B6CEA
+139EFFE8E9B2D4DEE00EFC3F842097050B18031420D76E5AFEE2B8B11E09EDBE
+29E6FF5974CA3320141D185AE1F530168F2CB0C1C888B7D26324AD488FF12DA0
+431080FFB11CFD5861E618A7B65A5AE1D1B56D26AD7CE67FE12480B601E4B6FF
+4237E34F2D3E727113B123A27009A4C81693B0AA77D121F3831FC72C9D5871DB
+94BA60B6A0105618DBD146B6AF1DA4DF3CE38296CE453A05DD95ED9694F57009
+83C2678269CB44118A8C7B343F4797C370F5656AE36FEF1C886BF01C4EA883FB
+0C42F916AFAF34407846E2AA43A3522EFC994E554D6D65FC0726B1F11F12DE77
+4C78A0BAF54DDC1C9904846736E274007D95BDB876813FF180704CA8EAA734DB
+FA15E13657059E50CF9A7551968478A76740A562AA711180FE6D9F373C3401AB
+BC6077CDE48C9BF0EEC50627FD195FBBEE1D90B03C9F7F767AA93E97FD05A1BE
+ED5A5B069C19403A0E992A7886F45D4C06EA8546AE507B0299436932F2AD0478
+1E379A14CEAB5ADDA6A8626E6DF684070B79BA96B2083B410A02989C9EF5AEF6
+F7A804382F47D5A7B66B496DFDAD64AC9D6086F92CC88190B2307A4B5E3E71D0
+35E24506FDD43EF2562AB4867357801E5B5BB6AA64ACE2DCF1B97B817F789E15
+8973096781509A4058F689A98D1B05ADBC207645FF13A0825995996402D5EA00
+B847BA18818498028B02AC410BFD5B3414272C6D34DFBA9CDA4AB9930BDF9506
+B91857E1F4A5049F4B05E172009703746F067DB51D4E997F3EDF5C075EE127E6
+18E8EE032C2E83ECD277079DA1941E31D952379C7D63918EE958D6E25AAEABBA
+06CFA50DC26AED0A2E6E3566EA97E0F21CB454EDED957119EA0A8FADFF8B368D
+948F218F20C4027148117C60D3B4BC939A642CD738C876A0D92541DAC80A499E
+248DB1E598754E33BACA4615F42D6397260E70AAB376943110888E1D69303AA9
+71D381EAC2ABB156E11680D550B4F54008A7938F38D6FF5A50817E55DE259420
+29AAC7E7123D75292E73235B46A3CF5A4C28365E82EA7D8CA4EB509A283C37F0
+35A6F52AD84DD677A24397048D047529E11253385E15C2FF341B7DE707ACC496
+F0A2686CFF1B5CEA08A96D28659800ED072CC2D9C79CBB1ADDE8F7394C2F67F1
+8905D68A157A1302EA67D781351C78DC34CB2D1AD93C6C2DBD48A3A53DC61D5E
+F9E6A0CFF942D6D9DE3BED7BE729C2CA6190F64A0B0EA8493EC7645531B7CA41
+0747884902D1CD0298B1DCAFD5CF1F66A5A3AD0436FFEDD294C72A0B0EE7A5C3
+90522F83DFD8481A0863E3F07A4714791641E56D5E9369007DBC4491306DFE61
+2047BEFF64616B48EF99038FDF956C03FF681FD3B7C1CB8C6606E39DE034E294
+04DFBA771187CA8695B9F330278FEC2EAE9F45478D2C1067CF1106DEBC98A274
+5EDCF9558BE466971A70E843CB54A2BC53E862EF20D256C92401CD94B3BE8A88
+BAA77244D0B40764C8D8077EA8EC43BCFD0ED135EF8C88F1B9AC84415247B838
+5F4F709AE4DF8A2DA0135E8DF48B8AEB925DFE31A01203A33CB1B74A4535F408
+A8ADC7F972D5244C2AA189644C106465D2E6C2C48EA732E7BA43E7067710928B
+B423C4432713D799C40EC86EF024F092F8229CAC49B86ABEC80250787F487BD4
+BBF8314D2F4F9F539117710BC6AB068759C16F1DB4974827282BE302A7313685
+16BBF11D450E360B5B7C5B6A75A4CD29B666CE4ECBB1FC1CA2B99FAE83F75812
+E61344B81C1FA5BA514BD5327E69C9DCEB4BD4AB758FAAF50DF78DD4BBEC06CE
+EFF5CEB85A11A42EE3C778B7EADC94793550EB108517AD41A4598ACCFA639E40
+D39EFBCB19C8CCA7DA731C897ED64471FBEC17E91CFD91BED8181FB42DFD3778
+9E0C6B93D8AA7E26200711586603A656D57B0F558DF3796DE457D400B6908D67
+479FFE7AC76B66DCC4FA1543B5802017CD00D4219DF00A0B93D8A4C2C3831751
+BE64E87FA5E64C6B248A6FE29A67DC089B61574B0ABB2D4335455C9427F39AD2
+77582C61F93397A409EBA5342DD249087364DE2A572A1E85E1FD719557551582
+91119BB95610F8BEBB846136D9C1F061FCA81D9312A96688067E4E4521715605
+F22499DD4DACCF31B2CEDD089B492C1AD8A932F8F317580189F9405D1411E119
+7322A61C34D8C28366732D159EC649921DD30D45104C6CE3545FD04C37F56171
+0F31AD0166C87B3044A9FB57CF1022D61426353D4EB90092AED1787B93128566
+CD834695773A27D6824D0A27D4DE5AB3F4F7B4E2033AD18B18382515EBB8EC8F
+1B14C8CB4D16223297C948279967D5260373EAEE3115BDF4879490C057A28955
+2D61B67A36F7C36C22D4C1809AA0C212B7C5818749B8A05E5C7C29BED844424B
+A5D6B567BCE77F47F68948E4A1724BED4905ED6242C25B4D340BB286380E27CF
+7EAE415F40B6CAA65CED05B83247C1D7E7E7FB13840B032D1B6417D387DFFCE3
+1FDC074917C02C9050E30FD3515F868D14E78EA6DD1774D53D536CBBEC587F08
+7ACCD9EF5D0AB6783D7C5ADE6EB45635BF621FAB33A2C96146F66269A61FFF79
+7EE8CB26F53AE36DDD6B5A0F5DFE4623CFFA95C62022DF4C5F7DDD07BE2094F1
+1B52D753D7BCC7F2D027C712549BA2573A9816DF204C69157130413ABA61432E
+D5FE2C8F832310FCD4F447224EA6480493C81920D2D3FC3F09864F3106B3FE3F
+2A7959D486FD0399684DEA5ED991976051B3FA1EA35EBD85BDD576555B4CD7DF
+260C814635BA76377BF73A1F731D3204AF925597984921257E0D96298A4A1FE9
+46B5C0EA0E2B2300BF6BBD213B90D057C1C9FE128B538F8A468599DBDFBAA75C
+D772CA628843D9B974D71C54151F1F39B03ADF0526BE78C4FD254B1804797F8D
+712DF3256BA1CE48C84114298044AE44974A85C4DD88EF100A343D8981F63DAE
+54726ADA9541A267178BC364ADAB814B4843C220A90C0E3AC2B50340E401E79D
+7EDD9C79050D36BC884EADB9A709914129412F54413EDE625AD5BD358EF2840D
+B790523F2097F866B345C6C7387C96706E397F19C8AC6B97DC0E81AC5661E170
+05B7959DF77C5A6303FC519BCDB33133C1E15FED427C684AA3E6E97C37D37B7E
+27F7073DE8D29D302DF8D54B85B8A15A10C5DD9351E04C46BAA0609A30571B95
+1679D5087B19A1FA8CF0521D7FA06064919E836D4863D78782142F19C026C89F
+E4A4D63DB8616B2D0F1803C06F1E5BAAC418E60851519F5A26E128ADAEF6539F
+BB81B33A953E7D2EDD4876380897CC5005C5A6446EBD2048467BFC12905A7E91
+0B8EFD5556FC65611B041949CB215856D8C2BA72B610BF430528F83A65511E8C
+9AC94517F552BE2B360026478A3FF288671E84F10717CE62FB5532805BB08995
+635CC573539FB78027C7FCD047DD3A114A805AC8DB17CEE18A2F877E9994A012
+E50A6C1AD66644E4C9681B0140194236D4ACA0A3373BACB09A8697703EEEDFC7
+8FA20135C17B1ABA2FD0070181E70B4E7664F3F3D8E101BFE84E017B1FB63878
+41282D114DEB771235694F26D7DE9E56E9791A82AC31EC52773F803B564A28AB
+321848A9A5618D672EEE376898CE5E8F1041CE60623AF6D9E93D1D0656B0C5DA
+537134D9DA2B1695EA902D32EAEB3C052122044F4BAC000C7E9D08281C425F6D
+65F6C9798F355209DB4E064F70A29247785CDA9E3EB4DCDF8F8EBA3692165CB3
+BA213D93850DE5BFF53C5B7F8FDB6317C85022DF1FE61D737D9386BA33C81123
+2A178503ACB370A73D47EAE72AF806F919117FAD1397E06411F6A38C35B41911
+A2A29A108C2727A94AA062E460C9DF98285C1E9F18C11E46E9ED356A57D86E09
+B2B354741C5EB89D030373D05F8BC428633B2B3B34E576129AA4E00B747D5D64
+92EE15C465FEDA8CDD7198B281921F68A358220C1544A4E32AF3F46A14B878FA
+66C3A72D2099264FED218675AF7514DE124379D744C9ABFCD095A180CDFEAC7B
+55CD99B8AC31E70F5025FFAA3AEFDCA59230511E5169E869321A10735C150F8E
+20CE65284CE384EBCDF8ED5625FBE021C06881474FDB5CA6E35A93DEDAA4994D
+4583F593618B783A04B4F570F4A49F7A1B5D71A973494A9A1847D31AAF4EDAA0
+32AB019FC8402204E5ADE1F6A4779BD194A988E12A5984865A01A8B3803F11B2
+443FD579D4526DF6367091BD71D7EAAA2ABCD4348EE7EB8A9297BE2EFDCFA98F
+DBF753CE4F12E85C8ACC4E08FF3769A7A3F726938E0E55F5A3A9CE490D7F5431
+367968C741B2D995B9E85B3EC55A82B1296025FF5C21E1983E472EA337E7ABBA
+72DF1EC1DA965F7DB1C86CB47681C1081133343B11DBEE24C85468ADFF83471A
+2CAB807668E6062768887BFF51D8FF80EFD05D60970C54A2E5537C92FFB9B22D
+3FE513AC19802FDE6CC580706E32055BB984A519FCED4432F14136C87737EE09
+FFC9C480F1D18587850120D87DCB4B7D3A917F82CEB781456CB15B9E661F5040
+4AE387D7CD536748AEABB810398B2DE36AA14D5DB5CFA46AF7EBD109685E0DBB
+34DC36E2C71A84CC32ED67DECC9E14B9D1D175A82E5F71285938C2247D1DA758
+06C57A01BD59DCFAF05348AB71C019B791B1FFDD106139AAE43D89E718858A4B
+4C31FEF996236826907BB9EC5842625AE120335B1C6FF4C8F68FE7BF748373F5
+2CB3EECA756C9CA0151D91FD2EBE7B6DA5E887E235DC6D6B34CD3FA42F8026AA
+30B9C7BF0F5A2B991C1F4C0FC1D675E7ACECAFACCC07F08F585C76A18397CCB4
+1EE5B17DC4B866AEC1F5284361EA5C65E0BE363CFCE3F14B81B7E44090219538
+43BC367204A88570D920458E36614D7097DA6C015277F83476AB0D9BA3CAB2BB
+F937D01957325E9442527D3892D3EFD388DDA4F7C1DCE849C6A490AD5AAA13A0
+A05F966ACFF3CCC6CCE8C08D8F384FA73A96E8799865D76340E9634D0009AB4E
+C4F539A4D6EF523744294A5FF4D3B934ECDD46460DEBC6852468A85B33C53210
+F80ACD68DB86979EA360CE9DD06FC7194808D064B35933E5E046CDEE1AE18183
+31FA6A62DA4F18B3C7092234F0FFF91A2635328FAA18D250C18C688422B243EB
+D5F520A6457462C393C57BA985588D0FC47F2D8E6CD2CB3D73D6C35EC6E578D8
+3254BBC4BDE31429C6706B72D518DB45D4457E8C60D0007623C520B1B7AF3A01
+A79AB2AA961FF7A5237D9993A4446FEBBD6AD51D662C9909D2D1C2D3424E9CD5
+8A170DF06CB7C304AA9774F13301495CDB010DA9218EE9A1FC05F477DE533217
+5ECC5996E4D340CBDD2DD6C53F9B8EC5E9E5300AA0D5967555B9DC31019F45CA
+A702C6F0568109C55DF33FD90A0E9B8FABF3ADBB0CDC353AC7B18F4E60D88A96
+E22A85193C953042F26BAC0A4182352080D44CDFE47AB34FD7848BBBB9021EAD
+82D68F7A6C6ADE8E317C8B7026043F5321475EEBE56C21EA0C6FDD617C588986
+EF0044BFA70E2FA9285625739D63C8C9DD6E2D62CB9760C62EDE6D29700BB89F
+AA7FD01A9E4F3A6364B2ABCB324DA52C6A518E68F7DA61FB12878DD94F8FDBB5
+57300284213E77C7D6DA5E2BA3DE91D7A3116CE9C8A45F3F98C8DE7C7FFB5628
+D3175A93A027FCAE02A0783A09D09997F247A8923D7E7442DC3B1D259893BB6F
+3D664620C9C4A2C66F6B4D1F2E9957D8C47119EBD1759B9EE6F5BE2D2FB0EC32
+EAAC468888774B8AADCB59FEF948FE89F18D2436D877718900E4F5A4B885C38E
+9C9B344895FFC5F2895DC187C3481CC23F4F1B87B9FEF11AB9FEAF9498ECD126
+99A8884A86BF9C943D6E03EC4D974F030F157E387B51D360BF8C21C799DA4848
+09DDE528DBC3AF547833DCBDC7404452245E0580012542267EFF13CFC5DC8EDA
+66958A20A94176552A25D024ED91C3F6FF945DECCAA7C0D71EE0591E53E75008
+0D31A8BD2D1096C8E8A7D5422595D65E1B981F14489F00D5A57C9884EBC6AB67
+2E0C5156295A3D2EA764D77CFABF2DD2A8F32F75B1A4F42BB819F3B59101EB70
+7C571225510ECA1DBAD5C618B6864BDB0FBA7C5055D2F36D5599022F2D95E340
+A0329B0C30B54CC501448AA38EDBF41E023EC8CB8451D32D392D5FAE1736ECA2
+647D6C41BCAA3BACAF8070747ACDC10B51C686534EF2CE5967A94BDA40B8AA37
+7E21DC9BA34B7156BB4310A60B179DBD4CE01E76A84F0E8F9788C356532ACA96
+9A122BD6ADC5F94FFA90A0C3A14C839727FB419A6A49B119DF87CD515CC5E85F
+2A4C2CF778C5B893B8D24B966BEB874B5292C31737F985C8029CD80E1AECA3ED
+AAA8EAF5DAD31C8073512D5E68511D31513B066DDBAC22B75A5C78F213DC962D
+ABA84D447C6D68BE5979BD72B7D5F060F96B9B1BB07B7A0CE956BD3BDFBF116B
+77CA0D330B08B4D276393CA20E16DE346AED3650EA9CF3DA4FC30061DFF8801D
+0AF8C7152AADC3B929B59F328ABAC8357C09A393C33EF7BC23F36CFEDAF32024
+84CA10A51E1469915A3BFC5602565BCD3F89A875408526A90491D570090C98F3
+A2BBC8B14F8F4EEBA923594002203589879938CC709564111459A10D152C45BB
+113E255C541E2CA81B683D4249C25A2C64F46E576F1037138157477B23631E5E
+473DF12785547266190EE3FDEE18F2B78308E3B66996949E4482FA814CDFC92E
+F6C4B5CB7FDBA581B35B5E0B8E9C93C2A0BA5E251DB94C4C56D1DD4F7FACD2BE
+A8A28E20B8115309859E681D4E93148B4F09E06C5679BAB4076B808BA999FBDD
+E654E96EFBC2B99FAA1D6B03D7FDBA7044B8C1B9A4EEA8E9AE07071F0218669D
+42512E6BB0461118C832392814C7E8E98082FAECA79DEEC151E2E09601629A2C
+95C82BEBA0B97206EB627CC80A12CB85D93145802AE6394F40E53D0BED4BBC59
+0D36545D1D272C9F9FB2DF0780674F8D4E482A85F8883516691BBBDA48F23308
+F10630CFFFFCD8CA7467AF857E5AB4C8B6DB9162C566438DC5B99301D3FDE196
+C3F84B25C8C3664A8375C41A63B2ED7F3D68E9C364CE6E5EF3E77540D8FA5D9D
+D5333D3BE7705DCE754BABCDC8ADC7CE092E877AB0B202B622BAAFF4B106FC00
+11821EAC567FC09BC1A6964187419AD9993A67AC4D7C9FD56F59FD6DCFCB07CF
+488016ECF192A7C21978A965D9B7DE9A3A0D9BFC4FBC575A5AC759148820876F
+CF881A503EA410922B51A9DF213548943125218C779A598FC852C08098E5C3B9
+202E68950097BB1B7990A0C814899C446C332E662622B1738A49E60BA8EDAFEA
+F7079B848946ECEA50EB3DD0F45994CC0C40E1FECC5372FD16D15DAEA0CF4EC7
+2142A6996B21BB26C3C0D2ED65EBBB549B3A5BB223F7558BB29FCD5A74407920
+17088857E275CBACE034358B1E6019E1EA4D99A4B5AF86420ADC8971C3265979
+5EA9FB66C49EF456D95343BCD7481056158D0215723ACB98D856242265882D07
+1073E86E684FD4AC53818058147D91E34A3354337127C6068B9C795891748532
+D9E212FF70F5FE51F71A735CDF254E9756D4925377E50203F857B32669F68E01
+5E1E588D7B392F7F68482434FF32D1075112ABD9DDA7B5548450A842B75A05C7
+8CD1061A90AC5AFE23901FDB209CFF92A9E582B78DD2BB2A9FCC9500C58C7483
+A8573576C96CF7AFE5204544D975C5D349C75E0C100D4F4C87E5C2FC2C4C2708
+211C9CF169EB2E862EBE04A30F87250440BA02BC5D419E2EB73367CACD2CC246
+B8470A0AA6859105193365520C5D9CAED67D98D634C2DFA472A78EC5BAEDDD78
+451F8146DF4C698139C7C87E0548AB705A738CC3D88D4D2E8EB12F859A319A13
+FAC067CBFF9A5382F5930E144CC97C79C1D3106204BDFEA2E668F3B78A5ADCF8
+64B925A7626E7A731603D1E0E18571D3122435BE105C2A8FC81364AACFA468B0
+2BFAC6E5725A0D8302B2384FD5A6AD833A4BA6F9A68B60F11B4268F8AAFCA77D
+B1B97BF7249815B6E4747E80AF42DF6EADBE5DAADDD938425FBBA6AA29BA6162
+19349F546A26E5CAA8619677493274427DED8D06D8365C4568FDB3ED722125E1
+7F71A26172462D731D08B26826B673F61588C4C72141504A3A1ECE7C63BE260C
+B181571B3B01092F8029909E2DD0AF6B569970715A10039ADA5A1E8E408C5A42
+990D9FFC95976613079B5C41FB82593B1F43C7E2B5AAC5B380061992FFE05E67
+AAC224C578AEA1E900048528175C1397C39FF257D32CD11CC5724EBA27A5FF63
+CA8DEDEFB7926E1A9484A733F3E1D1608A8E7FD468F8130290233F4843C553C9
+A9AB80FFC55DF6E961A32174D02C569CAC2EA8D8D72B9B301D87F695BDDE44AE
+AF7ACBCA79A169E05D9156613E3E6A46C9B7B1DA76D3AAFA9F0E40630EF57F41
+EF285DFC9093EF3C6B50FEC74DF0B9063022F1D3C54EDACC4B7CAB6A219BC271
+7CAF4D3B0723F822184FA5A22899F2674812F54951E7072C0F8FD4256748E452
+BB8D0DF7B9D5C7C2A6803FE2796CA7F49DC97D9C2C1257C0FC7084E5D04B96C6
+D340C9839D58A3C10C9A8CED7DF1EA90CB6DE2917C62B0673AAD1053593681DE
+3E0F592B5515A94B0289DAEFF215958ACE8A8552B046B18D6CFBC3498CC1C8D5
+FC3A971757DBC374C25C4856EA4340659EAF6309C38F9CFD28CBEB3A69F39E56
+A40DD0DC5DD44B1FA830973506CE0B06391DF4051E4000E0C3C26F60F872A4E6
+0BE9119C5DB19BAA854EDE7AF240AE413A197CDCE98DDC42856D4544EFBC52FF
+5D6D174FB3D034CA658D8BDFCF9952924BCB88762C3E1AAD29A85E5E77654ECF
+FE26903AC41E3A2B1CD3FFB89CAA132D5278332FFD46AA489D5667BBDB73CC0E
+6F450052759710E8B96CEC8487EBC16ED29A41D4C5ED88212F7FB702F876C03E
+481579AC5072AB64462CAA2337A720C89FE442B49D135C5935FFDA2960710E64
+8A7B80A5E71AA1A693671EF5718E7E342DD4BE71FBD10919E9A2F79FDEC33F0A
+8FFF1628A6A18E8624DE0FDF484A0647DF62C7C67D1AF3959E452ADFB4493521
+DEA9C6C81FBAE5EC68379C93DE9C138E2332E7A2D9EE1953BF10AA9D1CC9CB2E
+654FFF2A2514FF93478E9BB0B84A445FE6EEC8D92BC52282BA53BEA122768FCC
+73DC0E6F1935A06F2E253988CA69649D0E8C39CF9AAFBD3DDD04900E2698CEE6
+221D808B958CD833EFDA976E6D7B359D8CF62428F87FB70D47CD5CCC55007212
+A9B932E5966B475FB7DEF27B4F05B3B969C100CBD384DE7DA3B1245B5BCBBF4B
+F4D0496A9B0AF3E5CBA8A2D239346CA6577AD19B2C23D2E401A9CC6B2FB9DB72
+F522E2935C3B3D5AFCD18D27F94859B797473502372F188F5ECDE0E69064B6A7
+6EC311DC3A6A7FAB5691652F7C486325CB6E58BA814C8EB2861F974913D173F4
+2A429DF45B2B91BF02DA372CA190FD22FE315E877FD24E42F82CCD0570748C3B
+BE64305C56E7C087D38D28147F80D93B8624E63093FDEC6E546157DE842D9021
+26FFFF44372AEEB9D0B197B668B82793D719A50AC9F819A3E4EB3C0C5BFB0C01
+29412E6876FD5A5A183A19087A65270E06AE876E28EDC8FB2C49EEA549BDAA4E
+2E03BEEEA8B22C667BC6E6B193E5C914A14E09FB1103996B3CEB61F3F4549EDC
+B4D9A78D7CD44A28448F24F27EBAF2C255F19097AE400B8999F080167F14CF25
+959BFCA4059FEC8B3D8B1D1EC66DD5AFF05CE758BEFAAEAE7E5D1D434F1B0B6E
+1EE01D63FE8A2C2D0E1FE4A14DC35D2A63128049DE51BEF14482812ACF89E981
+E51BBB5BE0524DDB01771D7B419DADE73EF0AA7CC99591BCED208E55912AA6F4
+EB9ADE2B7D47514F7E11AEA12BAB51E93B24313A2CC4FEB226B00934A1D50CCE
+21F84E7C4CA87866A3FF5C5529D73F7F848B49C9D350BE4543CEC67F1D2A0BBD
+A79C21470C090659081CA4FE7DF3138ADD83C8A35DE85B44BC4DD3A955911DB4
+B78F9CA3F674D36FC9D7CEBD66A571F73D1ABD57A2208706ADCA285E4483A95A
+73F1A9D762872F0AC7AC808E59F69D1E273C046940D642F92E8E6D37D08CE03B
+608FFE19F882B40AAE1DB3F5355F6C2192EDB927935514794BB8DD035C072BC3
+A9793A31480B7A761144B77777EC03357A58D90A7E08B0EC9EC90F0F2D67844B
+0E6AF90CEDAA04CCECAC1EA93988322CD7543E57DB0C763F68528C7171F264A7
+D1D016B1470DAB2747EB3D27BBB448E040198A43C67AFD52CF31B801C6A838C2
+A720B7A819B534ED283CA362CE12EED34B31F32BDBD521ECF71DA160578602FD
+ED11D7B60D313A5A613ED89ED8BE69F5C2F1ABD04331A2E1D8ADA570FF96A5C9
+C6703EC7420F8EC43598E81691D291F193AD4F95CBF82EF712EC190A898CFDE4
+72B0388BBD08BC03CBD3DDA0648E3E0A0DE0FDE15739060FDB10629D78457645
+1D32ADCC813FD66FDDFC9EE79FA705B274BCD3656E745B1CADC2A1799BB8430F
+7C34ADA3E81DF1777D175B3BFA199E092B3CB5517EA3D41BE449BEB1E5BABB65
+F42069121C1014B05D9D2B90DB93296183CC7FAF597D88329918BDFDC283F3A7
+CA2A2BFC573F934E576B438761E75487377CD4BD09085158ABF569C0A4BC209B
+9952457D15BFB036BD0BBE942E10A82A89E4D012AB1B72A4A59A18A55E5EDFCC
+CC9DE3382ED090B1F3CC5D8EE59900828175C92E7C5410631A804FEC75603CFC
+F1033827927E485F6236B227E9D54D29CE5D2A3009B88A3D2ACD9430FD5E3AC2
+E321581FC966FD628A099EB795A4D1230C0F57F78E8F619A6D4BE8F328886E3D
+AFA2C1CA5B009075056F92E55CBF2B55B59EBE68859B7584CB852C3924095559
+B255ADFFD79AFA6BDF6D68838AC48DE5B79A277932244DEF5306E4A47DD0325D
+5DBA34765AE92F8094C11FCDA5646747105131838106D9C1D79714F9576C8F28
+FC6E7D0BD07254B1D29FDA5E4FE5E2F7FFD1A56D41435AE2F6DDC1970C9A89BC
+930E99448B124112B488AAFBF01DB6EC917734BBBC7376D6EF09DC05EB283A36
+C2B8CA16F4E3718C00311C64DE6A03682E84845CC57BAD00F9C4F5D85BBF6D46
+093A22DD9DF218019573415B8371AF1DEF2770CEE7FADE0FA43DDC61AF7858A0
+ED625FACF6FB35EFC5968F5FA0D2FA2A8961CCF36FED33CE945A1F7265AAA702
+F33CB51F651600EBAF3DE4F3A2326BC38E48F8A6762DBC107DFA4F5C5BFBE52D
+CB3D2A1AC15DAA0564A465FC1BAE1202C3DF85AD87832C27F4440C276D11BAE7
+7B591FECAE5171DAA8C68DFBBC2AB09312BBF1B4D2F43A59A80DBF22AFECC1B6
+3B7D57C3DD4C00B7ECC587F40F5211709340A56FEC69DB55DF1B5E8F78790722
+A0D712FDF782AEFA64A7429262E976AB9057466C549D8C05178AD9545ED838B6
+CB5BAA750B223DB6DA2C137E4EC91A1D3750C09D56BEFD4EF0760113ACABC2E1
+BC2A833994518E00054595B787195547424C8D96351C86113962E507560A92FE
+D7813AA3CB95AF370975998ADF00AA0FD5F9274976B119805AC287BBBAF27E25
+91913C949BEBA56F72A7B6D01789313B63DD404F575BBC1D2336BB81BD1BE035
+F54116DC276E02E0F70D6C1BD3FADFBC43552E07F39758D5E2BFD423F3A06341
+524468B77DC403BD7D6913DB11284EBD1AF581F391B9D4CD599A0DBA01E0907D
+4E211BC887BD450FF7FC5E0670215037AEFEEFECDBC096A4141764DF63D97C1B
+3A77F3DFC74A0325937A5D6A089C8127B511527D2D5FA186FB762229809B7BA1
+E49BCAD0B9D7F610FBB3FC37AC5021250FBD022BE60A841FB4FAA33C359A4268
+2F7C9E75F3E72DC43D2DD07FA94ACE36FB9A774F2E076563048068D6127BC83D
+CDD9C71A01C1D7F5C345741C64F2AE3F891914088A1F1E5CD29F6CE3D5B54F7E
+0C8407DE6E8673F1AC639E20178DBDFFFF951FF36FA22AB4ABF6A99EAD86A733
+2D50D2D127B66F5155BE6EFEBBCE178C529CD741BC5B2630EA89B7A18C0B084C
+07AA4DDD7DFAA145FD912C380809D194DB1475B00798CC816F91747FE19C062C
+9B3BF4C93C3A7B33B60C6F143A67A877946F9C01B9CC781DFDBA109101079CB4
+FB585C978B17707F76E1DBE44201A0AA388B0237BAC3FCFDDE2A714BE0B80BA2
+FE71AF9739BDB8DA3A066B5ECE33BA7584924EEDAFE2FE28D5D984B9243DEA82
+0A92529A6DACB90EBE1F1BA717E80C6F25167C5077E82B23A1B66FF964736B51
+57E1359B9EE4189E21A889AD4EA99542612C88B6065F294C4937B816B7D3324F
+F42ECE164FEE84C8A6E31D0F16811D1FFF66FAA889C28240669A8CC40C84C547
+EF4CE28DBD4CF4FE5A93C70C707894EE6B6A85CB7D017BD2ECC11434319D2AB6
+AFE26BC9BE7150F6E8BE52E3A925DC06D4A309EE9BA0432935B095B84369AAAF
+CE1C65F9E73D867235313C9809E2B6733ABCB79BA9762FA1215BB41388854ACD
+66E5FDD73927ECBBB55C485C88BB540470C6EF6699C8C9D83EDCCCD207780DF3
+84A4EF2073813C676704C6F0C1287733007F7E05DF0FDC445B22B0315ACD75B7
+9AF8B5471A1EE52458A1E34CAAC8C78E8A01B7224BFE7774314736EC8086D7A9
+2B3A4A95C0D4ACFE4778E4827062FFDFC4A11ADC64E85722F459F9C21B4D6532
+5F7A90E3A68F55F9F4712CB1BC050DE2A04F9F49D84D4675FA5C5A0C6C747CF5
+55AD0A63587BF4BBFCF882201038DFAF873F155FD375B424191EA3FC0017B54F
+81371A667B8746EE18B794186C109949289764A353E54118448F285BAE6F364D
+39FDCE512FF45982FB9DE54FB2B13702ECEE078C0431B769DF0B42ADDE5D64A0
+A3B9B94CDEFF9CEE74B0B48E9E380324B936C6ABDB7F80503AA787200D09D0F1
+07359242E0EC0566E9DECEFC02898566C5457293E1FDA6AA2CF780DADBD2FEDB
+1610246EEDE4BD00C6B7284DF3794711E6D6EEC64AF3F61F5F45A468E400E743
+C49B543731414124EEACBD9264C76A6A58ABEC3F7292968695617E4B4F4436DC
+EA3C75B8BCFC570AF2A942769C4972B6B8A4BCABB2F6695B1E045249ECC4181C
+8EE6B49C53B38117755B95F5843A712B47B6098339C5AB733807CCEC17575439
+78CCBCBBF9D852C36062A586DB00A5EC089AF853289A9F089A08F2C7B8285844
+B2A28E5B6E4367A228E84F2A1C72B1FD37480DDFFCD28585A24D7630FA56AB02
+222A5F764029C82DD67F10986E77865AF507A2BBDA4B3D4D54E20C00816B8202
+F2EDF2A828528DD170FB0ECC605EC794EBA4E7A78B31F4A564FE4994C2B65752
+820A49B51196EB4192CA4B777D675DE57A00D23F4BEEDED6197CE8BBF6E01F26
+B045D4252CB302C57C0D076294E407A823BEB4FD7305C230D084CF7FBE7BF161
+1DE690D4765927D2B95DBEE0A1D678C4DC8F2BEDF9CB96C5945A525BCBB9F9A7
+E36D2FEB22A089E3C8A5792DB5DCA7FB46BB78DD719DED2F2B8A5314658549E8
+20F20D49296AD845FF45EC0F4395E1553DE991B2E40F2F267901CC3B3344660D
+00A4C51870835CF4A2611979826825F8EF045FCDF258353622B352C119D680FF
+857AD6DBCF66BCE00060DFA1B32A722AAC5ADF0323ED78B269EB284A4223A9BF
+896CDF2307259D21ACC80CE4E6D43736317330D00867C128D2CDFDCE2226BBD8
+1626137CFFD53D7C37946BDA99FD955ED54E25EF71C1F19CB4BEB4D3B0099E86
+42622EEB4C57E9C3D1BBAD07FDEFD3C3DA91A66FF9808F13EB4B7895CB2BFE2D
+00A238EA7240032300BF6DA66217A55C0D47344738EA21F9081FF597413C79BE
+4DBDEEAC2C93EFCBB4680EE2BEEBFC14033CC5DE5EB86D5D0E4DA274BED45366
+283BFBF9D937144CB903CCE1003325BED0EC8CD03D250B8666BFF9B33983B670
+20ED1995D24E63
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -5155,20 +5182,21 @@ rf /Fj 197[33 58[{}1 119.552 /CMMI12 rf /Fk 135[85 2[90
/CMSY10 rf /Fm 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 9[139 1[103 1[75
100 3[105 128 81 2[50 105 106 85 88 103 97 96 102 6[37
-4[67 67 67 67 67 2[37 1[37 44[{}46 119.552 /CMBX12 rf
-/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 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
+3[67 67 67 67 67 67 2[37 1[37 44[{}47 119.552 /CMBX12
+rf /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 48 48 1[48 48 1[48
+1[48 48 48 48 48 48 48 48 1[48 48 48 48 2[48 48 48 48
+33[{}80 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 19[76 51 51 53 11[{}82 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
@@ -5184,8 +5212,8 @@ 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(8.1,)i(for)e Fn(Readline)e(Library)h Fo(V)-8 b(ersion)31
-b(8.1.)3217 1623 y(Octob)s(er)f(2020)150 4927 y Fm(Chet)45
+b(8.2,)i(for)e Fn(Readline)e(Library)h Fo(V)-8 b(ersion)31
+b(8.2.)3285 1623 y(Marc)m(h)g(2022)150 4927 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
@@ -5193,12 +5221,12 @@ b(ree)45 b(Soft)l(w)l(are)h(F)-11 b(oundation)p 150 5141
%%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(8.1,)150 4523 y(29)35 b(Octob)s(er)f(2020\),)
-k(a)d(library)f(whic)m(h)g(aids)g(in)g(the)h(consistency)g(of)g(user)e
-(in)m(terface)j(across)f(discrete)150 4633 y(programs)30
+(Library)f(\(v)m(ersion)i(8.2,)150 4523 y(11)g(Marc)m(h)g(2022\),)k(a)
+39 b(library)g(whic)m(h)g(aids)g(in)g(the)g(consistency)h(of)f(user)g
+(in)m(terface)i(across)e(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
-Fo(1988{2020)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
+Fo(1988{2022)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
@@ -5248,45 +5276,45 @@ b Fi(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
39 b Fo(4)399 1773 y(1.3.2)93 b(Conditional)31 b(Init)f(Constructs)16
b Fi(:)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(:)29
-b Fo(12)399 1882 y(1.3.3)93 b(Sample)30 b(Init)g(File)22
+b Fo(13)399 1882 y(1.3.3)93 b(Sample)30 b(Init)g(File)22
b Fi(:)17 b(:)f(:)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(:)35 b Fo(13)275 1992 y(1.4)92
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)35 b Fo(14)275 1992 y(1.4)92
b(Bindable)30 b(Readline)h(Commands)22 b Fi(:)15 b(:)g(:)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(:)35 b Fo(16)399 2101
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)35 b Fo(17)399 2101
y(1.4.1)93 b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)18
b Fi(:)f(:)f(:)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
-(:)31 b Fo(16)399 2211 y(1.4.2)93 b(Commands)29 b(F)-8
+(:)31 b Fo(17)399 2211 y(1.4.2)93 b(Commands)29 b(F)-8
b(or)31 b(Manipulating)g(The)f(History)f Fi(:)15 b(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Fo(17)399
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Fo(18)399
2320 y(1.4.3)93 b(Commands)29 b(F)-8 b(or)31 b(Changing)f(T)-8
b(ext)12 b Fi(:)17 b(:)e(:)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(:)25
-b Fo(18)399 2430 y(1.4.4)93 b(Killing)31 b(And)e(Y)-8
+b Fo(19)399 2430 y(1.4.4)93 b(Killing)31 b(And)e(Y)-8
b(anking)13 b Fi(:)k(:)e(:)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(:)26 b Fo(20)399 2540 y(1.4.5)93
+(:)f(:)g(:)h(:)f(:)h(:)f(:)26 b Fo(21)399 2540 y(1.4.5)93
b(Sp)s(ecifying)30 b(Numeric)g(Argumen)m(ts)e 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(:)41 b Fo(21)399 2649
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b Fo(22)399 2649
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)22 b Fi(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)35
-b Fo(21)399 2759 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)11
+b Fo(22)399 2759 y(1.4.7)93 b(Keyb)s(oard)29 b(Macros)11
b Fi(:)17 b(:)e(:)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(:)f(:)g(:)h(:)24 b Fo(22)399 2868 y(1.4.8)93
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)24 b Fo(23)399 2868 y(1.4.8)93
b(Some)30 b(Miscellaneous)j(Commands)16 b Fi(:)e(:)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(:)29 b Fo(22)275 2978 y(1.5)92 b(Readline)31
+(:)h(:)f(:)29 b Fo(23)275 2978 y(1.5)92 b(Readline)31
b(vi)f(Mo)s(de)10 b Fi(:)16 b(:)f(:)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(:)f(:)g(:)h(:)23
-b Fo(24)150 3229 y Fm(App)t(endix)44 b(A)119 b(GNU)39
+b Fo(25)150 3229 y Fm(App)t(endix)44 b(A)119 b(GNU)39
b(F)-11 b(ree)38 b(Do)t(cumen)l(tation)i(License)25 b
-Fj(:)20 b(:)32 b Fm(25)p eop end
+Fj(:)20 b(:)32 b Fm(26)p eop end
%%Page: 1 4
TeXDict begin 1 3 bop 3705 -116 a Fo(1)150 299 y Fk(1)80
b(Command)54 b(Line)f(Editing)150 527 y Fo(This)30 b(c)m(hapter)h
@@ -5559,9 +5587,9 @@ y Fo(Although)f(the)g(Readline)g(library)f(comes)i(with)e(a)h(set)h(of)
f(Emacs-lik)m(e)h(k)m(eybindings)f(installed)g(b)m(y)150
1896 y(default,)26 b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)
m(t)f(set)g(of)g(k)m(eybindings.)38 b(An)m(y)25 b(user)f(can)h
-(customize)h(programs)150 2005 y(that)45 b(use)f(Readline)h(b)m(y)f
-(putting)g(commands)g(in)g(an)g Fe(inputrc)49 b Fo(\014le,)g(con)m(v)m
-(en)m(tionally)e(in)d(his)g(home)150 2115 y(directory)-8
+(customize)h(programs)150 2005 y(that)39 b(use)g(Readline)g(b)m(y)f
+(putting)h(commands)f(in)g(an)h Fe(inputrc)k Fo(\014le,)e(con)m(v)m(en)
+m(tionally)h(in)c(their)h(home)150 2115 y(directory)-8
b(.)39 b(The)23 b(name)h(of)f(this)h(\014le)f(is)g(tak)m(en)i(from)e
(the)g(v)-5 b(alue)24 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5
b(ariable)25 b Fn(INPUTRC)p Fo(.)150 2224 y(If)30 b(that)g(v)-5
@@ -5581,7 +5609,7 @@ b(lines)h(are)150 3322 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
3431 y(conditional)i(constructs)e(\(see)i(Section)f(1.3.2)h
-([Conditional)f(Init)f(Constructs],)j(page)f(12\).)74
+([Conditional)f(Init)f(Constructs],)j(page)f(13\).)74
b(Other)150 3541 y(lines)31 b(denote)g(v)-5 b(ariable)31
b(settings)g(and)f(k)m(ey)h(bindings.)150 3722 y(V)-8
b(ariable)32 b(Settings)630 3832 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
@@ -5608,600 +5636,673 @@ b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
eop end
%%Page: 5 8
TeXDict begin 5 7 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(5)630 299 y Fn(bell-style)1110
-408 y Fo(Con)m(trols)44 b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)
-m(ts)f(to)h(ring)e(the)h(termi-)1110 518 y(nal)37 b(b)s(ell.)61
+b(Command)29 b(Line)i(Editing)2153 b(5)630 299 y Fn
+(active-region-start-colo)o(r)1110 408 y Fo(A)27 b(string)f(v)-5
+b(ariable)27 b(that)g(con)m(trols)h(the)f(text)g(color)h(and)e(bac)m
+(kground)g(when)1110 518 y(displa)m(ying)50 b(the)f(text)h(in)f(the)h
+(activ)m(e)h(region)f(\(see)g(the)g(description)f(of)1110
+628 y Fn(enable-active-region)25 b Fo(b)s(elo)m(w\).)43
+b(This)30 b(string)h(m)m(ust)f(not)h(tak)m(e)i(up)d(an)m(y)1110
+737 y(ph)m(ysical)25 b(c)m(haracter)h(p)s(ositions)f(on)g(the)f(displa)
+m(y)-8 b(,)27 b(so)e(it)g(should)f(consist)h(only)1110
+847 y(of)37 b(terminal)g(escap)s(e)g(sequences.)61 b(It)36
+b(is)h(output)g(to)g(the)g(terminal)g(b)s(efore)1110
+956 y(displa)m(ying)h(the)f(text)i(in)e(the)h(activ)m(e)h(region.)63
+b(This)37 b(v)-5 b(ariable)38 b(is)f(reset)h(to)1110
+1066 y(the)29 b(default)g(v)-5 b(alue)29 b(whenev)m(er)f(the)h
+(terminal)g(t)m(yp)s(e)g(c)m(hanges.)41 b(The)28 b(default)1110
+1176 y(v)-5 b(alue)30 b(is)f(the)g(string)g(that)h(puts)e(the)i
+(terminal)f(in)g(standout)g(mo)s(de,)g(as)h(ob-)1110
+1285 y(tained)40 b(from)f(the)h(terminal's)g(terminfo)g(description.)68
+b(A)40 b(sample)f(v)-5 b(alue)1110 1395 y(migh)m(t)31
+b(b)s(e)f(`)p Fn(\\e[01;33m)p Fo('.)630 1570 y Fn
+(active-region-end-color)1110 1680 y Fo(A)48 b(string)g(v)-5
+b(ariable)48 b(that)h Fn(")p Fo(undo)s(es)p Fn(")d Fo(the)i(e\013ects)h
+(of)f Fn(active-region-)1110 1789 y(start-color)36 b
+Fo(and)i(restores)h Fn(")p Fo(normal)p Fn(")f Fo(terminal)h(displa)m(y)
+g(app)s(earance)1110 1899 y(after)26 b(displa)m(ying)h(text)f(in)g(the)
+g(activ)m(e)i(region.)40 b(This)25 b(string)h(m)m(ust)f(not)h(tak)m(e)
+1110 2008 y(up)e(an)m(y)h(ph)m(ysical)h(c)m(haracter)h(p)s(ositions)d
+(on)h(the)h(displa)m(y)-8 b(,)27 b(so)e(it)g(should)f(con-)1110
+2118 y(sist)29 b(only)h(of)f(terminal)h(escap)s(e)f(sequences.)41
+b(It)29 b(is)g(output)g(to)h(the)f(terminal)1110 2228
+y(after)36 b(displa)m(ying)g(the)g(text)h(in)e(the)h(activ)m(e)i
+(region.)58 b(This)34 b(v)-5 b(ariable)37 b(is)f(re-)1110
+2337 y(set)e(to)g(the)g(default)g(v)-5 b(alue)34 b(whenev)m(er)f(the)h
+(terminal)g(t)m(yp)s(e)f(c)m(hanges.)51 b(The)1110 2447
+y(default)38 b(v)-5 b(alue)39 b(is)f(the)h(string)f(that)h(restores)f
+(the)h(terminal)f(from)g(stand-)1110 2556 y(out)30 b(mo)s(de,)f(as)g
+(obtained)h(from)f(the)g(terminal's)h(terminfo)f(description.)41
+b(A)1110 2666 y(sample)31 b(v)-5 b(alue)30 b(migh)m(t)h(b)s(e)f(`)p
+Fn(\\e[0m)p Fo('.)630 2841 y Fn(bell-style)1110 2951
+y Fo(Con)m(trols)44 b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)m
+(ts)f(to)h(ring)e(the)h(termi-)1110 3061 y(nal)37 b(b)s(ell.)61
b(If)37 b(set)h(to)g(`)p Fn(none)p Fo(',)g(Readline)g(nev)m(er)g(rings)
-e(the)i(b)s(ell.)61 b(If)36 b(set)i(to)1110 628 y(`)p
+e(the)i(b)s(ell.)61 b(If)36 b(set)i(to)1110 3170 y(`)p
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
-737 y(`)p Fn(audible)p Fo(')j(\(the)i(default\),)i(Readline)e(attempts)
-g(to)h(ring)e(the)g(terminal's)1110 847 y(b)s(ell.)630
-1005 y Fn(bind-tty-special-chars)1110 1115 y Fo(If)e(set)g(to)h(`)p
+3280 y(`)p Fn(audible)p Fo(')j(\(the)i(default\),)i(Readline)e
+(attempts)g(to)h(ring)e(the)g(terminal's)1110 3389 y(b)s(ell.)630
+3565 y Fn(bind-tty-special-chars)1110 3674 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 1224 y(c)m(haracters)30 b(treated)g(sp)s
+(the)i(con)m(trol)1110 3784 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 1334 y(Readline)h(equiv)-5 b(alen)m(ts.)630
-1492 y Fn(blink-matching-paren)1110 1602 y Fo(If)36 b(set)g(to)h(`)p
+(their)1110 3893 y(Readline)h(equiv)-5 b(alen)m(ts.)630
+4069 y Fn(blink-matching-paren)1110 4178 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 1711 y(op)s(ening)k(paren)m(thesis)h(when)
+(the)f(cursor)e(to)i(an)1110 4288 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
-1821 y(default)31 b(is)f(`)p Fn(off)p Fo('.)630 1979
-y Fn(colored-completion-prefi)o(x)1110 2089 y Fo(If)f(set)h(to)g(`)p
+4398 y(default)31 b(is)f(`)p Fn(off)p Fo('.)630 4573
+y Fn(colored-completion-prefi)o(x)1110 4682 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 2198 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s
+g(the)f(com-)1110 4792 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
-2308 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 2418 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 2576 y Fn(colored-stats)1110
-2685 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
-2795 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+4902 y(The)f(color)h(de\014nitions)f(are)h(tak)m(en)g(from)f(the)g(v)-5
+b(alue)26 b(of)g(the)f Fn(LS_COLORS)e Fo(en-)1110 5011
+y(vironmen)m(t)34 b(v)-5 b(ariable.)50 b(If)33 b(there)h(is)g(a)f
+(color)i(de\014nition)e(in)g Fn(LS_COLORS)e Fo(for)1110
+5121 y(the)22 b(custom)g(su\016x)f(`)p Fn(readline-colored-complet)o
+(ion)o(-pre)o(fix)p Fo(',)c(Read-)1110 5230 y(line)24
+b(uses)e(this)i(color)g(for)f(the)h(common)f(pre\014x)f(instead)i(of)f
+(its)h(default.)38 b(The)1110 5340 y(default)31 b(is)f(`)p
+Fn(off)p Fo('.)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)630 299 y Fn(colored-stats)1110
+408 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
+518 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
-2905 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fn(LS_COLORS)d
+628 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
-3014 y(is)30 b(`)p Fn(off)p Fo('.)630 3173 y Fn(comment-begin)1110
-3282 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 3392 y Fn(insert-comment)26
+737 y(is)30 b(`)p Fn(off)p Fo('.)630 941 y Fn(comment-begin)1110
+1050 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 1160 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 3550 y Fn(completion-display-width)
-1110 3660 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 3769
+b(alue)31 b(is)f Fn("#")p Fo(.)630 1363 y Fn(completion-display-width)
+1110 1473 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 1583
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
-3879 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
+1692 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
-3988 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
+1802 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
-4147 y Fn(completion-ignore-case)1110 4256 y Fo(If)d(set)h(to)g(`)p
+2005 y Fn(completion-ignore-case)1110 2115 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 4366 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
+(and)e(completion)1110 2225 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 4524 y Fn(completion-map-case)1110 4634 y Fo(If)22
+Fo('.)630 2428 y Fn(completion-map-case)1110 2538 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 4743 y(h)m(yphens)29
+b Fo(is)22 b(enabled,)i(Readline)f(treats)1110 2647 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
-4853 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
-(completion.)85 b(The)44 b(default)1110 4963 y(v)-5 b(alue)31
-b(is)f(`)p Fn(off)p Fo('.)630 5121 y Fn(completion-prefix-displa)o
-(y-le)o(ngth)1110 5230 y Fo(The)h(length)g(in)g(c)m(haracters)i(of)f
+2757 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
+(completion.)85 b(The)44 b(default)1110 2866 y(v)-5 b(alue)31
+b(is)f(`)p Fn(off)p Fo('.)630 3070 y Fn(completion-prefix-displa)o
+(y-le)o(ngth)1110 3180 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
-5340 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)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(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 408 y(replaced)k(with)f(an)g
-(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)f(completions.)630
-565 y Fn(completion-query-items)1110 675 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 784 y(is)43 b(ask)m(ed)g(whether)f(the)g(list)h(of)g(p)s
-(ossibilities)g(should)f(b)s(e)g(displa)m(y)m(ed.)77
-b(If)1110 894 y(the)29 b(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g
-(completions)h(is)f(greater)h(than)f(or)g(equal)g(to)h(this)1110
-1003 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g(whether)f(or)h(not)g
-(the)g(user)f(wishes)g(to)i(view)1110 1113 y(them;)33
-b(otherwise,)f(they)g(are)g(simply)g(listed.)45 b(This)31
-b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110 1223
-y(to)39 b(an)f(in)m(teger)i(v)-5 b(alue)39 b(greater)g(than)f(or)h
-(equal)g(to)g(0.)65 b(A)38 b(negativ)m(e)i(v)-5 b(alue)1110
-1332 y(means)30 b(Readline)h(should)f(nev)m(er)g(ask.)41
-b(The)30 b(default)h(limit)g(is)f Fn(100)p Fo(.)630 1489
-y Fn(convert-meta)1110 1598 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 1708 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 1817 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 1927 y(The)i(default)h(v)-5
-b(alue)28 b(is)f(`)p Fn(on)p Fo(',)i(but)d(will)i(b)s(e)f(set)h(to)g(`)
-p Fn(off)p Fo(')g(if)f(the)h(lo)s(cale)h(is)f(one)1110
-2037 y(that)j(con)m(tains)h(eigh)m(t-bit)g(c)m(haracters.)630
-2193 y Fn(disable-completion)1110 2303 y Fo(If)k(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 2412 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
-2522 y(to)31 b Fn(self-insert)p Fo(.)38 b(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)630 2679 y Fn(echo-control-characters)1110
-2788 y Fo(When)f(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 2898
+3289 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 3399
+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 3508
+y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
+f(completions.)630 3712 y Fn(completion-query-items)1110
+3821 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 3931 y(is)43
+b(ask)m(ed)g(whether)f(the)g(list)h(of)g(p)s(ossibilities)g(should)f(b)
+s(e)g(displa)m(y)m(ed.)77 b(If)1110 4041 y(the)29 b(n)m(um)m(b)s(er)f
+(of)h(p)s(ossible)g(completions)h(is)f(greater)h(than)f(or)g(equal)g
+(to)h(this)1110 4150 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g
+(whether)f(or)h(not)g(the)g(user)f(wishes)g(to)i(view)1110
+4260 y(them;)33 b(otherwise,)f(they)g(are)g(simply)g(listed.)45
+b(This)31 b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110
+4369 y(to)43 b(an)e(in)m(teger)j(v)-5 b(alue)42 b(greater)h(than)f(or)g
+(equal)g(to)h(zero.)76 b(A)42 b(zero)g(v)-5 b(alue)1110
+4479 y(means)40 b(Readline)h(should)f(nev)m(er)g(ask;)46
+b(negativ)m(e)d(v)-5 b(alues)41 b(are)f(treated)i(as)1110
+4589 y(zero.)g(The)29 b(default)i(limit)g(is)g Fn(100)p
+Fo(.)630 4792 y Fn(convert-meta)1110 4902 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
+5011 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
+5121 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 5230
+y(The)i(default)h(v)-5 b(alue)28 b(is)f(`)p Fn(on)p Fo(',)i(but)d(will)
+i(b)s(e)f(set)h(to)g(`)p Fn(off)p Fo(')g(if)f(the)h(lo)s(cale)h(is)f
+(one)1110 5340 y(that)j(con)m(tains)h(eigh)m(t-bit)g(c)m(haracters.)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(disable-completion)
+1110 408 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
+518 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
+628 y(to)31 b Fn(self-insert)p Fo(.)38 b(The)30 b(default)g(is)h(`)p
+Fn(off)p Fo('.)630 774 y Fn(echo-control-characters)1110
+883 y Fo(When)f(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 993
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 3007 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 3164
-y Fn(editing-mode)1110 3273 y Fo(The)d Fn(editing-mode)e
+(to)j(a)f(signal)g(generated)1110 1103 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 1249
+y Fn(editing-mode)1110 1358 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 3383 y(ings)25 b(is)g(used.)38 b(By)26
+m(ey)i(bind-)1110 1468 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 3493 y(where)j(the)g(k)m(eystrok)m(es)i(are)e(most)h(similar)f(to)
+1110 1577 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
-3602 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 3759 y Fn(emacs-mode-string)1110 3868
+1687 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 1833 y Fn(emacs-mode-string)1110 1943
y Fo(If)j(the)h Fe(sho)m(w-mo)s(de-in-prompt)h Fo(v)-5
b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
-3978 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
-(of)h(the)f(primary)f(prompt)g(when)1110 4088 y(emacs)g(editing)h(mo)s
+2052 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
+(of)h(the)f(primary)f(prompt)g(when)1110 2162 y(emacs)g(editing)h(mo)s
(de)e(is)h(activ)m(e.)40 b(The)21 b(v)-5 b(alue)22 b(is)g(expanded)f
-(lik)m(e)h(a)h(k)m(ey)f(bind-)1110 4197 y(ing,)27 b(so)f(the)f
+(lik)m(e)h(a)h(k)m(ey)f(bind-)1110 2271 y(ing,)27 b(so)f(the)f
(standard)g(set)h(of)f(meta-)i(and)e(con)m(trol)i(pre\014xes)d(and)h
-(bac)m(kslash)1110 4307 y(escap)s(e)f(sequences)h(is)e(a)m(v)-5
+(bac)m(kslash)1110 2381 y(escap)s(e)f(sequences)h(is)e(a)m(v)-5
b(ailable.)41 b(Use)25 b(the)f(`)p Fn(\\1)p Fo(')f(and)h(`)p
-Fn(\\2)p Fo(')g(escap)s(es)g(to)g(b)s(egin)1110 4416
+Fn(\\2)p Fo(')g(escap)s(es)g(to)g(b)s(egin)1110 2491
y(and)37 b(end)g(sequences)h(of)f(non-prin)m(ting)h(c)m(haracters,)j
-(whic)m(h)c(can)h(b)s(e)f(used)1110 4526 y(to)h(em)m(b)s(ed)f(a)g
+(whic)m(h)c(can)h(b)s(e)f(used)1110 2600 y(to)h(em)m(b)s(ed)f(a)g
(terminal)h(con)m(trol)h(sequence)f(in)m(to)g(the)f(mo)s(de)g(string.)
-61 b(The)1110 4635 y(default)31 b(is)f(`)p Fn(@)p Fo('.)630
-4792 y Fn(enable-bracketed-paste)1110 4902 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 5011 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 5121 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
-5230 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
-5340 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(On)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-keypad)1110
-408 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
-518 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 628 y(The)j(default)g(is)
-h(`)p Fn(off)p Fo('.)630 784 y Fn(enable-meta-key)1110
-894 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
-1003 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 1113 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 1223 y(default)31 b(is)f(`)p Fn(on)p Fo('.)630
-1379 y Fn(expand-tilde)1110 1489 y Fo(If)d(set)h(to)h(`)p
+61 b(The)1110 2710 y(default)31 b(is)f(`)p Fn(@)p Fo('.)630
+2856 y Fn(enable-active-region)1110 2966 y Fo(The)46
+b Fe(p)s(oin)m(t)j Fo(is)e(the)g(curren)m(t)f(cursor)g(p)s(osition,)52
+b(and)46 b Fe(mark)52 b Fo(refers)46 b(to)i(a)1110 3075
+y(sa)m(v)m(ed)37 b(cursor)f(p)s(osition)g(\(see)i(Section)f(1.4.1)h
+([Commands)d(F)-8 b(or)37 b(Mo)m(ving],)1110 3185 y(page)25
+b(17\).)40 b(The)24 b(text)h(b)s(et)m(w)m(een)g(the)g(p)s(oin)m(t)f
+(and)g(mark)g(is)g(referred)g(to)h(as)g(the)1110 3294
+y Fe(region)p Fo(.)62 b(When)37 b(this)g(v)-5 b(ariable)38
+b(is)f(set)h(to)g(`)p Fn(On)p Fo(',)h(Readline)f(allo)m(ws)g(certain)
+1110 3404 y(commands)f(to)h(designate)h(the)e(region)h(as)g
+Fe(activ)m(e)p Fo(.)64 b(When)37 b(the)h(region)g(is)1110
+3513 y(activ)m(e,)43 b(Readline)38 b(highligh)m(ts)h(the)g(text)g(in)e
+(the)i(region)g(using)e(the)h(v)-5 b(alue)1110 3623 y(of)35
+b(the)g Fn(active-region-start-color)p Fo(,)30 b(whic)m(h)35
+b(defaults)g(to)h(the)f(string)1110 3733 y(that)23 b(enables)f(the)g
+(terminal's)h(standout)e(mo)s(de.)38 b(The)21 b(activ)m(e)k(region)d
+(sho)m(ws)1110 3842 y(the)32 b(text)h(inserted)f(b)m(y)g(brac)m(k)m
+(eted-paste)i(and)e(an)m(y)g(matc)m(hing)h(text)g(found)1110
+3952 y(b)m(y)f(incremen)m(tal)i(and)e(non-incremen)m(tal)i(history)e
+(searc)m(hes.)48 b(The)32 b(default)1110 4061 y(is)e(`)p
+Fn(On)p Fo('.)630 4208 y Fn(enable-bracketed-paste)1110
+4317 y Fo(When)36 b(set)h(to)g(`)p Fn(On)p Fo(',)h(Readline)f
+(con\014gures)f(the)h(terminal)f(to)i(insert)e(eac)m(h)1110
+4427 y(paste)27 b(in)m(to)g(the)f(editing)h(bu\013er)e(as)h(a)h(single)
+g(string)f(of)g(c)m(haracters,)j(instead)1110 4536 y(of)d(treating)i
+(eac)m(h)g(c)m(haracter)f(as)g(if)f(it)h(had)f(b)s(een)f(read)i(from)e
+(the)i(k)m(eyb)s(oard.)1110 4646 y(This)36 b(is)h(called)h(putting)f
+(the)h(terminal)f(in)m(to)h Fe(brac)m(k)m(eted)h(paste)e(mo)s(de)5
+b Fo(;)40 b(it)1110 4756 y(prev)m(en)m(ts)30 b(Readline)h(from)e
+(executing)i(an)m(y)f(editing)h(commands)e(b)s(ound)f(to)1110
+4865 y(k)m(ey)j(sequences)g(app)s(earing)f(in)g(the)g(pasted)h(text.)42
+b(The)29 b(default)i(is)f(`)p Fn(On)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: 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(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
+894 y Fn(expand-tilde)1110 1003 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 1598 y(w)m(ord)i(completion.)42
-b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630 1755
-y Fn(history-preserve-point)1110 1864 y Fo(If)41 b(set)h(to)h(`)p
+(Readline)h(attempts)1110 1113 y(w)m(ord)i(completion.)42
+b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630 1270
+y Fn(history-preserve-point)1110 1379 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 1974 y(curren)m(t)35 b(cursor)g(p)s
+(p)s(oin)m(t)f(\(the)1110 1489 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 2084 y(retriev)m(ed)h(with)f Fn(previous-history)c
+(line)1110 1598 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
-2193 y(is)30 b(`)p Fn(off)p Fo('.)630 2350 y Fn(history-size)1110
-2459 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 2569
+1708 y(is)30 b(`)p Fn(off)p Fo('.)630 1864 y Fn(history-size)1110
+1974 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 2084
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 2679 y(new)e(en)m(tries)i
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 2193 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
-2788 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
+2303 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
-2898 y(en)m(tries)j(is)f(not)g(limited.)49 b(If)32 b(an)h(attempt)h(is)
-f(made)g(to)h(set)f Fe(history-size)39 b Fo(to)1110 3007
+2412 y(en)m(tries)j(is)f(not)g(limited.)49 b(If)32 b(an)h(attempt)h(is)
+f(made)g(to)h(set)f Fe(history-size)39 b Fo(to)1110 2522
y(a)34 b(non-n)m(umeric)f(v)-5 b(alue,)34 b(the)g(maxim)m(um)f(n)m(um)m
-(b)s(er)f(of)h(history)h(en)m(tries)g(will)1110 3117
-y(b)s(e)c(set)h(to)g(500.)630 3273 y Fn(horizontal-scroll-mode)1110
-3383 y Fo(This)k(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
+(b)s(er)f(of)h(history)h(en)m(tries)g(will)1110 2632
+y(b)s(e)c(set)h(to)g(500.)630 2788 y Fn(horizontal-scroll-mode)1110
+2898 y Fo(This)k(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 3493 y(means)26 b(that)h(the)f(text)h
+b(it)g(to)h(`)p Fn(on)p Fo(')1110 3007 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 3602 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 3712
+(tally)1110 3117 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 3226
y(screen,)c(instead)g(of)f(wrapping)f(on)m(to)i(a)g(new)e(screen)i
-(line.)40 b(This)26 b(v)-5 b(ariable)28 b(is)1110 3821
+(line.)40 b(This)26 b(v)-5 b(ariable)28 b(is)1110 3336
y(automatically)k(set)e(to)g(`)p Fn(on)p Fo(')f(for)g(terminals)g(of)h
-(heigh)m(t)g(1.)41 b(By)29 b(default,)h(this)1110 3931
+(heigh)m(t)g(1.)41 b(By)29 b(default,)h(this)1110 3446
y(v)-5 b(ariable)31 b(is)g(set)f(to)i(`)p Fn(off)p Fo('.)630
-4088 y Fn(input-meta)1110 4197 y Fo(If)f(set)g(to)h(`)p
+3602 y Fn(input-meta)1110 3712 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 4307 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
+i(will)f(not)h(clear)1110 3821 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
-4416 y(terminal)k(claims)h(it)f(can)g(supp)s(ort.)79
+3931 y(terminal)k(claims)h(it)f(can)g(supp)s(ort.)79
b(The)44 b(default)g(v)-5 b(alue)44 b(is)g(`)p Fn(off)p
-Fo(',)j(but)1110 4526 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p
+Fo(',)j(but)1110 4041 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p
Fn(on)p Fo(')e(if)h(the)g(lo)s(cale)i(con)m(tains)f(eigh)m(t-bit)g(c)m
-(haracters.)1110 4635 y(The)30 b(name)g Fn(meta-flag)e
+(haracters.)1110 4150 y(The)30 b(name)g Fn(meta-flag)e
Fo(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5 b(ariable.)630
-4792 y Fn(isearch-terminators)1110 4902 y Fo(The)51 b(string)h(of)g(c)m
+4307 y Fn(isearch-terminators)1110 4416 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
-5011 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 5121 y(\(see)45 b(Section)h(1.2.5)g
+4526 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 4635 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 5230 y(b)s(een)35 b(giv)m(en)h(a)g(v)-5
+b(ariable)45 b(has)g(not)1110 4745 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 5340 y(incremen)m(tal)c(searc)m
-(h.)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(keymap)192
-b Fo(Sets)64 b(Readline's)i(idea)f(of)f(the)h(curren)m(t)f(k)m(eymap)h
-(for)f(k)m(ey)h(binding)1110 408 y(commands.)71 b(Built-in)41
-b Fn(keymap)e Fo(names)h(are)h Fn(emacs)p Fo(,)h Fn(emacs-standard)p
-Fo(,)1110 518 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 628 y Fn(vi-insert)p Fo(.)81 b Fn(vi)44
-b Fo(is)h(equiv)-5 b(alen)m(t)46 b(to)g Fn(vi-command)c
-Fo(\()p Fn(vi-move)h Fo(is)i(also)h(a)1110 737 y(synon)m(ym\);)41
+Fg(C-J)g Fo(will)h(terminate)g(an)1110 4855 y(incremen)m(tal)c(searc)m
+(h.)630 5011 y Fn(keymap)192 b Fo(Sets)64 b(Readline's)i(idea)f(of)f
+(the)h(curren)m(t)f(k)m(eymap)h(for)f(k)m(ey)h(binding)1110
+5121 y(commands.)71 b(Built-in)41 b Fn(keymap)e Fo(names)h(are)h
+Fn(emacs)p Fo(,)h Fn(emacs-standard)p Fo(,)1110 5230
+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
+5340 y Fn(vi-insert)p Fo(.)81 b Fn(vi)44 b Fo(is)h(equiv)-5
+b(alen)m(t)46 b(to)g Fn(vi-command)c Fo(\()p Fn(vi-move)h
+Fo(is)i(also)h(a)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(synon)m(ym\);)41
b Fn(emacs)c Fo(is)h(equiv)-5 b(alen)m(t)39 b(to)f Fn(emacs-standard)p
-Fo(.)59 b(Applications)1110 847 y(ma)m(y)32 b(add)e(additional)i
+Fo(.)59 b(Applications)1110 408 y(ma)m(y)32 b(add)e(additional)i
(names.)43 b(The)30 b(default)h(v)-5 b(alue)32 b(is)f
-Fn(emacs)p Fo(.)41 b(The)30 b(v)-5 b(alue)1110 956 y(of)31
+Fn(emacs)p Fo(.)41 b(The)30 b(v)-5 b(alue)1110 518 y(of)31
b(the)f Fn(editing-mode)d Fo(v)-5 b(ariable)31 b(also)h(a\013ects)f
-(the)g(default)g(k)m(eymap.)630 1113 y Fn(keyseq-timeout)1110
-1223 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 1332
+(the)g(default)g(k)m(eymap.)630 706 y Fn(keyseq-timeout)1110
+816 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 925
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 1442 y(sequence)j(using)e(the)i
+(form)g(a)g(complete)h(k)m(ey)1110 1035 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 1551 y(to)g(complete)g(a)f(longer)h(k)m(ey)f(sequence\).)49
+1110 1144 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
-1661 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 1771 y(quence.)c(Readline)26
+1254 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 1363 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 1880 y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m
+(input)1110 1473 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
-1990 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
+1583 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 2099 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
+1110 1692 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 2209 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
+b(is)1110 1802 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 2318 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
+b(alue,)1110 1911 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
-2428 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 2585 y Fn(mark-directories)1110
-2694 y Fo(If)38 b(set)g(to)h(`)p Fn(on)p Fo(',)i(completed)e(directory)
+2021 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 2209 y Fn(mark-directories)1110
+2318 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
-2804 y(The)30 b(default)g(is)h(`)p Fn(on)p Fo('.)630
-2960 y Fn(mark-modified-lines)1110 3070 y Fo(This)k(v)-5
+2428 y(The)30 b(default)g(is)h(`)p Fn(on)p Fo('.)630
+2616 y Fn(mark-modified-lines)1110 2725 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 3180 y(terisk)f(\(`)p
+(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 2835 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 3289 y(This)d(v)-5
+(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 2945 y(This)d(v)-5
b(ariable)31 b(is)f(`)p Fn(off)p Fo(')g(b)m(y)g(default.)630
-3446 y Fn(mark-symlinked-directori)o(es)1110 3555 y Fo(If)59
+3133 y Fn(mark-symlinked-directori)o(es)1110 3242 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 3665 y(directories)71
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 3352 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 3774 y Fn(mark-directories)p
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 3461 y Fn(mark-directories)p
Fo(\).)37 b(The)30 b(default)g(is)g(`)p Fn(off)p Fo('.)630
-3931 y Fn(match-hidden-files)1110 4041 y Fo(This)21 b(v)-5
+3649 y Fn(match-hidden-files)1110 3759 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 4150
+(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 3868
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)1110 4260
+(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 3978
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
-4369 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
+4088 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
-4479 y(default.)630 4635 y Fn(menu-complete-display-pr)o(efix)1110
-4745 y Fo(If)f(set)h(to)g(`)p Fn(on)p Fo(',)h(men)m(u)e(completion)i
+4197 y(default.)630 4385 y Fn(menu-complete-display-pr)o(efix)1110
+4495 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
-4855 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 4964 y(through)30
+4604 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 4714 y(through)30
b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fn(off)p
-Fo('.)630 5121 y Fn(output-meta)1110 5230 y Fo(If)35
+Fo('.)630 4902 y Fn(output-meta)1110 5011 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 5340 y(set)h(directly)g
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 5121 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)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(default)26
-b(is)f(`)p Fn(off)p Fo(',)i(but)e(Readline)h(will)g(set)g(it)g(to)h(`)p
-Fn(on)p Fo(')e(if)h(the)f(lo)s(cale)j(con)m(tains)1110
-408 y(eigh)m(t-bit)k(c)m(haracters.)630 581 y Fn(page-completions)1110
-690 y Fo(If)h(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
-800 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
-909 y(b)m(y)e(default.)630 1082 y Fn(print-completions-horizo)o(ntal)o
-(ly)1110 1191 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
-1301 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 1410 y(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)630 1583 y Fn(revert-all-at-newline)1110
-1692 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
-1802 y(returning)f(when)f Fn(accept-line)f Fo(is)j(executed.)41
-b(By)29 b(default,)g(history)g(lines)1110 1911 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 2021 y Fn(readline)p Fo(.)38
-b(The)30 b(default)h(is)f(`)p Fn(off)p Fo('.)630 2193
-y Fn(show-all-if-ambiguous)1110 2303 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 2412 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 2522 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 2632 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(off)p Fo('.)630
-2804 y Fn(show-all-if-unmodified)1110 2913 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 3023 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 3133 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 3242 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
-f(completions)h(don't)f(share)g(a)h(common)1110 3352
-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 3461 y(ing)g(the)f(b)s(ell.)41
+b(The)1110 5230 y(default)26 b(is)f(`)p Fn(off)p Fo(',)i(but)e
+(Readline)h(will)g(set)g(it)g(to)h(`)p Fn(on)p Fo(')e(if)h(the)f(lo)s
+(cale)j(con)m(tains)1110 5340 y(eigh)m(t-bit)k(c)m(haracters.)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(page-completions)
+1110 408 y Fo(If)33 b(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 518 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 628 y(b)m(y)e(default.)630 784 y Fn(print-completions-horizo)
+o(ntal)o(ly)1110 894 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 1003 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
+1113 y(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630
+1270 y Fn(revert-all-at-newline)1110 1379 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 1489 y(returning)f(when)f
+Fn(accept-line)f Fo(is)j(executed.)41 b(By)29 b(default,)g(history)g
+(lines)1110 1598 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
+1708 y Fn(readline)p Fo(.)38 b(The)30 b(default)h(is)f(`)p
+Fn(off)p Fo('.)630 1864 y Fn(show-all-if-ambiguous)1110
+1974 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 2084 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 2193 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 2303 y(The)30 b(default)g(v)-5
+b(alue)31 b(is)g(`)p Fn(off)p Fo('.)630 2459 y Fn
+(show-all-if-unmodified)1110 2569 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 2679 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 2788 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
+2898 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
+(don't)f(share)g(a)h(common)1110 3007 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 3117 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 3634 y Fn(show-mode-in-prompt)1110 3743 y Fo(If)24
+Fo('.)630 3273 y Fn(show-mode-in-prompt)1110 3383 y Fo(If)24
b(set)h(to)g(`)p Fn(on)p Fo(',)g(add)f(a)h(string)f(to)h(the)f(b)s
-(eginning)g(of)g(the)h(prompt)e(indicating)1110 3853
+(eginning)g(of)g(the)h(prompt)e(indicating)1110 3493
y(the)33 b(editing)h(mo)s(de:)46 b(emacs,)35 b(vi)e(command,)h(or)f(vi)
-h(insertion.)49 b(The)32 b(mo)s(de)1110 3962 y(strings)45
+h(insertion.)49 b(The)32 b(mo)s(de)1110 3602 y(strings)45
b(are)h(user-settable)g(\(e.g.,)51 b Fe(emacs-mo)s(de-string)8
-b Fo(\).)87 b(The)45 b(default)1110 4072 y(v)-5 b(alue)31
-b(is)f(`)p Fn(off)p Fo('.)630 4244 y Fn(skip-completed-text)1110
-4354 y Fo(If)i(set)i(to)f(`)p Fn(on)p Fo(',)h(this)f(alters)g(the)g
+b Fo(\).)87 b(The)45 b(default)1110 3712 y(v)-5 b(alue)31
+b(is)f(`)p Fn(off)p Fo('.)630 3868 y Fn(skip-completed-text)1110
+3978 y Fo(If)i(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
-4463 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
+4088 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
-4573 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 4682 y(not)41
+4197 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 4307 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 4792 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
+(c)m(haracters)1110 4416 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
-4902 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
+4526 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
-5011 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 5121 y(`)p Fn(Makefile)p
+4635 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 4745 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 5230 y(assuming)d(there)g(is)h(a)f
+p Fn(Makefilefile)p Fo(',)1110 4855 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 5340 y(is)30 b(`)p Fn(off)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-cmd-mode-string)1110 408 y Fo(If)33 b(the)h Fe(sho)m(w-mo)s
+b(alue)1110 4964 y(is)30 b(`)p Fn(off)p Fo('.)630 5121
+y Fn(vi-cmd-mode-string)1110 5230 y Fo(If)j(the)h Fe(sho)m(w-mo)s
(de-in-prompt)h Fo(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
-(is)h(dis-)1110 518 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g
-(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
-628 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)g
-(mo)s(de.)46 b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110
-737 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f
-(standard)f(set)h(of)g(meta-)h(and)e(con)m(trol)1110
-847 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is)g
-(a)m(v)-5 b(ailable.)57 b(Use)35 b(the)g(`)p Fn(\\1)p
-Fo(')1110 956 y(and)23 b(`)p Fn(\\2)p Fo(')h(escap)s(es)h(to)f(b)s
-(egin)g(and)f(end)g(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110
-1066 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)
-h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 1176
+(is)h(dis-)1110 5340 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
+g(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)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)1110 299 y(vi)32
+b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)g(mo)s(de.)46
+b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110 408 y(panded)26
+b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
+(meta-)h(and)e(con)m(trol)1110 518 y(pre\014xes)34 b(and)g(bac)m
+(kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
+b(Use)35 b(the)g(`)p Fn(\\1)p Fo(')1110 628 y(and)23
+b(`)p Fn(\\2)p Fo(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
+(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 737
+y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h
+(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 847
y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
-Fn(\(cmd\))p Fo('.)630 1340 y Fn(vi-ins-mode-string)1110
-1450 y Fo(If)j(the)h Fe(sho)m(w-mo)s(de-in-prompt)h Fo(v)-5
+Fn(\(cmd\))p Fo('.)630 1007 y Fn(vi-ins-mode-string)1110
+1117 y Fo(If)j(the)h Fe(sho)m(w-mo)s(de-in-prompt)h Fo(v)-5
b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
-1559 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
-(of)h(the)f(primary)f(prompt)g(when)1110 1669 y(vi)35
+1226 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
+(of)h(the)f(primary)f(prompt)g(when)1110 1336 y(vi)35
b(editing)h(mo)s(de)e(is)i(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)
-54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 1778 y(panded)26
+54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 1445 y(panded)26
b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
-(meta-)h(and)e(con)m(trol)1110 1888 y(pre\014xes)34 b(and)g(bac)m
+(meta-)h(and)e(con)m(trol)1110 1555 y(pre\014xes)34 b(and)g(bac)m
(kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
-b(Use)35 b(the)g(`)p Fn(\\1)p Fo(')1110 1998 y(and)23
+b(Use)35 b(the)g(`)p Fn(\\1)p Fo(')1110 1665 y(and)23
b(`)p Fn(\\2)p Fo(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
-(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 2107
+(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 1774
y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h
-(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 2217
+(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 1884
y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
-Fn(\(ins\))p Fo('.)630 2381 y Fn(visible-stats)1110 2491
+Fn(\(ins\))p Fo('.)630 2044 y Fn(visible-stats)1110 2153
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
-2600 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 2765
-y(Key)f(Bindings)630 2874 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h
+2263 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 2423
+y(Key)f(Bindings)630 2533 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 2984 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)
+b(First)43 b(y)m(ou)630 2642 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 3093 y(sections)37 b(con)m(tain)g(tables)g
+b(The)27 b(follo)m(wing)630 2752 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 3203 y(and)30 b(a)h(short)f(description)g(of)h(what)f
-(the)g(command)h(do)s(es.)630 3340 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g
+m(y)-8 b(,)630 2862 y(and)30 b(a)h(short)f(description)g(of)h(what)f
+(the)g(command)h(do)s(es.)630 2996 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 3450 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m
+(the)g(init)630 3106 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 3559 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+630 3216 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 3669 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
+(and)630 3325 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 3778 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
+b(The)40 b(name)h(of)630 3435 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 3888 y(comfortable.)630
-4025 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 3544 y(comfortable.)630
+3679 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
-4134 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 4299 y Fe(k)m(eyname)g
+3789 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 3949 y Fe(k)m(eyname)g
Fo(:)42 b Fe(function-name)35 b Fo(or)c Fe(macro)1110
-4408 y(k)m(eyname)k Fo(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+4059 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
-4545 y Fn(Control-u:)45 b(universal-argument)1350 4655
-y(Meta-Rubout:)f(backward-kill-word)1350 4765 y(Control-o:)h(">)i
-(output")1110 4902 y Fo(In)94 b(the)g(example)h(ab)s(o)m(v)m(e,)112
+4194 y Fn(Control-u:)45 b(universal-argument)1350 4303
+y(Meta-Rubout:)f(backward-kill-word)1350 4413 y(Control-o:)h(">)i
+(output")1110 4548 y Fo(In)94 b(the)g(example)h(ab)s(o)m(v)m(e,)112
b Fg(C-u)94 b Fo(is)g(b)s(ound)f(to)i(the)f(function)1110
-5011 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 5121 y
+4657 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 4767 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 5230 y(expressed)45 b(on)h(the)g(righ)m(t)
+(to)j(run)d(the)i(macro)1110 4876 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 5340 y(output)p Fo(')29 b(in)m(to)i(the)g(line\).)p
+Fn(>)1110 4986 y(output)p Fo(')29 b(in)m(to)i(the)g(line\).)1110
+5121 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 5230 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 5340 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(.)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)1110 299 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 408 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 518 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 677 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
-787 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
-896 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 1006 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 1115 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 1225 y(recognized.)1350 1359 y Fn("\\C-u":)46 b
-(universal-argument)1350 1469 y("\\C-x\\C-r":)f(re-read-init-file)1350
-1578 y("\\e[11~":)g("Function)h(Key)g(1")1110 1713 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
-1822 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 1932
+%%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)630 299 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 408 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 518 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
+628 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
+737 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 847 y(recognized.)1350
+981 y Fn("\\C-u":)46 b(universal-argument)1350 1091 y("\\C-x\\C-r":)f
+(re-read-init-file)1350 1200 y("\\e[11~":)g("Function)h(Key)g(1")1110
+1334 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
+1444 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 1554
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
-2041 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 2200 y(The)g(follo)m(wing)i
+1663 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 1822 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 2310 y(k)m(ey)i(sequences:)630
-2469 y Fg(\\C-)336 b Fo(con)m(trol)32 b(pre\014x)630
-2628 y Fg(\\M-)336 b Fo(meta)31 b(pre\014x)630 2787 y
+b(ailable)32 b(when)d(sp)s(ecifying)630 1932 y(k)m(ey)i(sequences:)630
+2091 y Fg(\\C-)336 b Fo(con)m(trol)32 b(pre\014x)630
+2250 y Fg(\\M-)336 b Fo(meta)31 b(pre\014x)630 2408 y
Fg(\\e)384 b Fo(an)30 b(escap)s(e)h(c)m(haracter)630
-2945 y Fg(\\\\)384 b Fo(bac)m(kslash)630 3104 y Fg(\\)p
+2567 y Fg(\\\\)384 b Fo(bac)m(kslash)630 2726 y Fg(\\)p
Fn(")g(")p Fo(,)30 b(a)h(double)f(quotation)i(mark)630
-3263 y Fg(\\')384 b Fn(')p Fo(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 3422 y(In)d(addition)h(to)g(the)g Fh(gnu)f
+2885 y Fg(\\')384 b Fn(')p Fo(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 3044 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 3532 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-3691 y Fn(\\a)384 b Fo(alert)31 b(\(b)s(ell\))630 3850
-y Fn(\\b)384 b Fo(bac)m(kspace)630 4008 y Fn(\\d)g Fo(delete)630
-4167 y Fn(\\f)g Fo(form)30 b(feed)630 4326 y Fn(\\n)384
-b Fo(newline)630 4485 y Fn(\\r)g Fo(carriage)32 b(return)630
-4644 y Fn(\\t)384 b Fo(horizon)m(tal)32 b(tab)630 4803
-y Fn(\\v)384 b Fo(v)m(ertical)32 b(tab)630 4962 y Fn(\\)p
+(bac)m(kslash)630 3154 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+3313 y Fn(\\a)384 b Fo(alert)31 b(\(b)s(ell\))630 3471
+y Fn(\\b)384 b Fo(bac)m(kspace)630 3630 y Fn(\\d)g Fo(delete)630
+3789 y Fn(\\f)g Fo(form)30 b(feed)630 3948 y Fn(\\n)384
+b Fo(newline)630 4107 y Fn(\\r)g Fo(carriage)32 b(return)630
+4266 y Fn(\\t)384 b Fo(horizon)m(tal)32 b(tab)630 4425
+y Fn(\\v)384 b Fo(v)m(ertical)32 b(tab)630 4584 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 5071 y(three)c(digits\))630 5230 y
+Fo(\(one)i(to)1110 4693 y(three)c(digits\))630 4852 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 5340 y Fo(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))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)630 299 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 408 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 518 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
-628 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 737 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
-873 y Fn("\\C-x\\\\":)45 b("\\\\")150 1073 y Fd(1.3.2)63
-b(Conditional)41 b(Init)g(Constructs)150 1220 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 1330 y(the)31
-b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g(bindings)d(and)
-h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s(erformed)f(as)i(the)
-150 1440 y(result)f(of)h(tests.)41 b(There)30 b(are)h(four)f(parser)f
-(directiv)m(es)j(used.)150 1601 y Fn($if)336 b Fo(The)31
-b Fn($if)f Fo(construct)i(allo)m(ws)h(bindings)d(to)i(b)s(e)e(made)i
-(based)f(on)g(the)g(editing)h(mo)s(de,)g(the)630 1711
-y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h(application)g(using)f
-(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)630
-1821 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f(to)h
-(the)g(end)f(of)h(the)f(line;)i(unless)e(otherwise)630
-1930 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
-(it.)630 2091 y Fn(mode)288 b Fo(The)30 b Fn(mode=)e
+b Fe(HH)1110 4962 y Fo(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+5121 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
+5230 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 5340 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)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)630 299 y(will)40
+b(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 408 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 542 y Fn("\\C-x\\\\":)45
+b("\\\\")150 740 y Fd(1.3.2)63 b(Conditional)41 b(Init)g(Constructs)150
+887 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
+996 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
+(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
+(erformed)f(as)i(the)150 1106 y(result)f(of)h(tests.)41
+b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
+1264 y Fn($if)336 b Fo(The)31 b Fn($if)f Fo(construct)i(allo)m(ws)h
+(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
+(the)630 1373 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h
+(application)g(using)f(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)
+630 1483 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f
+(to)h(the)g(end)f(of)h(the)f(line;)i(unless)e(otherwise)630
+1592 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
+(it.)630 1750 y Fn(mode)288 b Fo(The)30 b Fn(mode=)e
Fo(form)i(of)g(the)h Fn($if)e Fo(directiv)m(e)j(is)e(used)f(to)i(test)g
-(whether)e(Read-)1110 2201 y(line)44 b(is)f(in)g Fn(emacs)f
+(whether)e(Read-)1110 1860 y(line)44 b(is)f(in)g Fn(emacs)f
Fo(or)h Fn(vi)g Fo(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g
-(conjunction)1110 2311 y(with)c(the)h(`)p Fn(set)29 b(keymap)p
+(conjunction)1110 1969 y(with)c(the)h(`)p Fn(set)29 b(keymap)p
Fo(')38 b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
-2420 y(the)32 b Fn(emacs-standard)c Fo(and)j Fn(emacs-ctlx)d
-Fo(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 2530 y(starting)f(out)g
-(in)f Fn(emacs)f Fo(mo)s(de.)630 2691 y Fn(term)288 b
+2079 y(the)32 b Fn(emacs-standard)c Fo(and)j Fn(emacs-ctlx)d
+Fo(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 2188 y(starting)f(out)g
+(in)f Fn(emacs)f Fo(mo)s(de.)630 2346 y Fn(term)288 b
Fo(The)26 b Fn(term=)g Fo(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
-(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 2800 y(ings,)38
+(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 2456 y(ings,)38
b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
-(the)g(terminal's)1110 2910 y(function)24 b(k)m(eys.)39
+(the)g(terminal's)1110 2565 y(function)24 b(k)m(eys.)39
b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
-Fn(=)p Fo(')g(is)g(tested)h(against)1110 3020 y(b)s(oth)k(the)h(full)g
+Fn(=)p Fo(')g(is)g(tested)h(against)1110 2675 y(b)s(oth)k(the)h(full)g
(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
-(terminal)1110 3129 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
+(terminal)1110 2785 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
Fn(-)p Fo('.)50 b(This)33 b(allo)m(ws)i Fn(sun)e Fo(to)h(matc)m(h)g(b)s
-(oth)f Fn(sun)g Fo(and)1110 3239 y Fn(sun-cmd)p Fo(,)c(for)h(instance.)
-630 3400 y Fn(version)144 b Fo(The)44 b Fn(version)f
+(oth)f Fn(sun)g Fo(and)1110 2894 y Fn(sun-cmd)p Fo(,)c(for)h(instance.)
+630 3052 y Fn(version)144 b Fo(The)44 b Fn(version)f
Fo(test)i(ma)m(y)h(b)s(e)e(used)f(to)j(p)s(erform)d(comparisons)i
-(against)1110 3509 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74
+(against)1110 3161 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74
b(The)42 b Fn(version)d Fo(expands)i(to)h(the)g(curren)m(t)1110
-3619 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h
+3271 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h
(op)s(erators)f(includes)f(`)p Fn(=)p Fo(')h(\(and)1110
-3729 y(`)p Fn(==)p Fo('\),)33 b(`)p Fn(!=)p Fo(',)f(`)p
+3381 y(`)p Fn(==)p Fo('\),)33 b(`)p Fn(!=)p Fo(',)f(`)p
Fn(<=)p Fo(',)h(`)p Fn(>=)p Fo(',)f(`)p Fn(<)p Fo(',)h(and)e(`)p
Fn(>)p Fo('.)46 b(The)31 b(v)m(ersion)i(n)m(um)m(b)s(er)d(supplied)h
-(on)1110 3838 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g
+(on)1110 3490 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g
(consists)h(of)f(a)g(ma)5 b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)1110
-3948 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
-b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 4057
+3600 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
+b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 3709
y(`)p Fn(7.1)p Fo('\).)40 b(If)27 b(the)h(minor)f(v)m(ersion)h(is)g
(omitted,)h(it)f(is)g(assumed)f(to)h(b)s(e)f(`)p Fn(0)p
-Fo('.)40 b(The)1110 4167 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
+Fo('.)40 b(The)1110 3819 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
g(from)g(the)h(string)f Fn(version)f Fo(and)h(from)g(the)1110
-4276 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
+3929 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
(whitespace.)67 b(The)38 b(follo)m(wing)i(example)1110
-4386 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
+4038 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
(ersion)f(b)s(eing)g(used)g(is)g(7.0)i(or)e(new)m(er:)1350
-4521 y Fn($if)47 b(version)f(>=)h(7.0)1350 4631 y(set)g
-(show-mode-in-prompt)42 b(on)1350 4741 y($endif)630 4902
-y(application)1110 5011 y Fo(The)21 b Fe(application)j
+4172 y Fn($if)47 b(version)f(>=)h(7.0)1350 4281 y(set)g
+(show-mode-in-prompt)42 b(on)1350 4391 y($endif)630 4549
+y(application)1110 4658 y Fo(The)21 b Fe(application)j
Fo(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
-(set-)1110 5121 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
+(set-)1110 4768 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
(Readline)g(library)g(sets)g(the)g Fe(application)1110
-5230 y(name)p Fo(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
+4878 y(name)p Fo(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
-5340 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
-(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)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)1110 299 y(instance,)35
-b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f(sequence)h(that)f
-(quotes)1110 408 y(the)e(curren)m(t)f(or)g(previous)g(w)m(ord)g(in)g
-(Bash:)1350 543 y Fn($if)47 b(Bash)1350 653 y(#)g(Quote)g(the)g
-(current)f(or)h(previous)e(word)1350 762 y("\\C-xq":)h
-("\\eb\\"\\ef\\"")1350 872 y($endif)630 1031 y(variable)96
-b Fo(The)33 b Fe(v)-5 b(ariable)39 b Fo(construct)33
-b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g(Readline)1110
-1141 y(v)-5 b(ariables)32 b(and)f(v)-5 b(alues.)45 b(The)32
-b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i(`)p
-Fn(=)p Fo(',)1110 1250 y(`)p Fn(==)p Fo(',)49 b(and)44
+4987 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
+(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 5097
+y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
+(sequence)h(that)f(quotes)1110 5206 y(the)e(curren)m(t)f(or)g(previous)
+g(w)m(ord)g(in)g(Bash:)1350 5340 y Fn($if)47 b(Bash)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)1350 299 y Fn(#)47
+b(Quote)g(the)g(current)f(or)h(previous)e(word)1350 408
+y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 518 y($endif)630
+677 y(variable)96 b Fo(The)33 b Fe(v)-5 b(ariable)39
+b Fo(construct)33 b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g
+(Readline)1110 787 y(v)-5 b(ariables)32 b(and)f(v)-5
+b(alues.)45 b(The)32 b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i
+(`)p Fn(=)p Fo(',)1110 897 y(`)p Fn(==)p Fo(',)49 b(and)44
b(`)p Fn(!=)p Fo('.)85 b(The)44 b(v)-5 b(ariable)46 b(name)f(m)m(ust)g
-(b)s(e)g(separated)g(from)g(the)1110 1360 y(comparison)25
+(b)s(e)g(separated)g(from)g(the)1110 1006 y(comparison)25
b(op)s(erator)g(b)m(y)g(whitespace;)j(the)d(op)s(erator)g(ma)m(y)g(b)s
-(e)f(separated)1110 1469 y(from)33 b(the)h(v)-5 b(alue)35
+(e)f(separated)1110 1116 y(from)33 b(the)h(v)-5 b(alue)35
b(on)f(the)g(righ)m(t)g(hand)f(side)h(b)m(y)f(whitespace.)52
-b(Both)35 b(string)1110 1579 y(and)i(b)s(o)s(olean)g(v)-5
+b(Both)35 b(string)1110 1225 y(and)i(b)s(o)s(olean)g(v)-5
b(ariables)38 b(ma)m(y)h(b)s(e)d(tested.)63 b(Bo)s(olean)39
-b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 1689 y(tested)46
+b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 1335 y(tested)46
b(against)g(the)f(v)-5 b(alues)46 b Fe(on)f Fo(and)f
Fe(o\013)p Fo(.)85 b(The)45 b(follo)m(wing)h(example)g(is)1110
-1798 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Fn(mode=emacs)e
-Fo(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 1933 y
-Fn($if)47 b(editing-mode)d(==)k(emacs)1350 2042 y(set)f
-(show-mode-in-prompt)42 b(on)1350 2152 y($endif)150 2311
+1445 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Fn(mode=emacs)e
+Fo(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 1579 y
+Fn($if)47 b(editing-mode)d(==)k(emacs)1350 1689 y(set)f
+(show-mode-in-prompt)42 b(on)1350 1798 y($endif)150 1958
y($endif)192 b Fo(This)29 b(command,)i(as)f(seen)h(in)f(the)g(previous)
g(example,)h(terminates)g(an)g Fn($if)e Fo(command.)150
-2471 y Fn($else)240 b Fo(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
+2117 y Fn($else)240 b Fo(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
(the)f Fn($if)g Fo(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
-(fails.)150 2630 y Fn($include)96 b Fo(This)43 b(directiv)m(e)i(tak)m
+(fails.)150 2276 y Fn($include)96 b Fo(This)43 b(directiv)m(e)i(tak)m
(es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g
-(commands)630 2740 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
+(commands)630 2386 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
-(from)630 2849 y Fn(/etc/inputrc)p Fo(:)870 2984 y Fn($include)46
-b(/etc/inputrc)150 3183 y Fd(1.3.3)63 b(Sample)41 b(Init)g(File)150
-3330 y Fo(Here)27 b(is)f(an)h(example)g(of)f(an)h Fe(inputrc)k
+(from)630 2496 y Fn(/etc/inputrc)p Fo(:)870 2630 y Fn($include)46
+b(/etc/inputrc)150 2829 y Fd(1.3.3)63 b(Sample)41 b(Init)g(File)150
+2976 y Fo(Here)27 b(is)f(an)h(example)g(of)f(an)h Fe(inputrc)k
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 3440 y(conditional)j(syn)m
+b(ariable)27 b(assignmen)m(t,)i(and)150 3086 y(conditional)j(syn)m
(tax.)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 408 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 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)
@@ -6230,9 +6331,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: 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(#"\\M-\\C-[A":)331
+%%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)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)
@@ -6265,9 +6366,9 @@ y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
g(for)i(a)g(word,)390 5121 y(#)g(ask)g(whether)f(or)h(not)g(the)g(user)
g(wants)f(to)h(see)g(all)g(of)g(them)390 5230 y(set)g
(completion-query-items)42 b(150)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)390 299 y Fn(#)47
+%%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)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 1089 y Fm(1.4)68 b(Bindable)45 b(Readline)i(Commands)
@@ -6318,9 +6419,9 @@ y(not)k(tak)m(e)i(up)e(more)g(than)g(one)g(ph)m(ysical)h(line)g(or)f
(redra)m(w)630 5340 y(the)f(curren)m(t)f(line,)h(lea)m(ving)h(the)e
(curren)m(t)h(line)f(at)h(the)g(top)g(of)f(the)h(screen.)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(clear-screen)27
+%%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(clear-screen)27
b(\(C-l\))630 408 y Fo(Clear)35 b(the)f(screen,)i(then)e(redra)m(w)g
(the)h(curren)m(t)f(line,)i(lea)m(ving)g(the)f(curren)m(t)f(line)h(at)g
(the)630 518 y(top)c(of)f(the)h(screen.)150 665 y Fn
@@ -6386,445 +6487,449 @@ y Fo(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
5340 y(start)g(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)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)630 299 y(b)s(eginning)32
+%%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)630 299 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 408 y(command)d(is)h(un)m
-(b)s(ound.)150 581 y Fn(history-substring-search)o(-for)o(ward)24
-b(\(\))630 690 y Fo(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i
+(b)s(ound.)150 566 y Fn(history-substring-search)o(-for)o(ward)24
+b(\(\))630 676 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 800 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)
+(the)630 785 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)
s(oin)m(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m
-(ywhere)630 910 y(in)i(a)h(history)g(line.)47 b(This)32
+(ywhere)630 895 y(in)i(a)h(history)g(line.)47 b(This)32
b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)47 b(By)33
-b(default,)h(this)e(command)630 1019 y(is)e(un)m(b)s(ound.)150
-1192 y Fn(history-substring-search)o(-bac)o(kwar)o(d)24
-b(\(\))630 1301 y Fo(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h
+b(default,)h(this)e(command)630 1005 y(is)e(un)m(b)s(ound.)150
+1162 y Fn(history-substring-search)o(-bac)o(kwar)o(d)24
+b(\(\))630 1272 y Fo(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h
(history)g(for)g(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g
-(the)630 1411 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h
+(the)630 1381 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h
(p)s(oin)m(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h
-(an)m(ywhere)630 1520 y(in)i(a)h(history)g(line.)47 b(This)32
+(an)m(ywhere)630 1491 y(in)i(a)h(history)g(line.)47 b(This)32
b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)47 b(By)33
-b(default,)h(this)e(command)630 1630 y(is)e(un)m(b)s(ound.)150
-1802 y Fn(yank-nth-arg)d(\(M-C-y\))630 1912 y Fo(Insert)37
+b(default,)h(this)e(command)630 1601 y(is)e(un)m(b)s(ound.)150
+1758 y Fn(yank-nth-arg)d(\(M-C-y\))630 1868 y Fo(Insert)37
b(the)g(\014rst)f(argumen)m(t)i(to)f(the)h(previous)e(command)h
-(\(usually)g(the)g(second)g(w)m(ord)630 2021 y(on)32
+(\(usually)g(the)g(second)g(w)m(ord)630 1978 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)630 2131 y(the)k(previous)f(command)h(\(the)g(w)
+Fo(th)f(w)m(ord)g(from)630 2087 y(the)k(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
-2241 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
+2197 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
Fe(n)p Fo(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
-2350 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fe(n)e
+2306 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
-2460 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 2632 y Fn(yank-last-arg)d(\(M-.)i(or)h
-(M-_\))630 2742 y Fo(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
+2416 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 2574 y Fn(yank-last-arg)d(\(M-.)i(or)h
+(M-_\))630 2683 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
-2851 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+2793 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 2961 y(Successiv)m(e)26 b(calls)g(to)f Fn(yank-last-arg)c
+Fo(.)630 2902 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 3070 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+(inserting)630 3012 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 3180 y(in)36 b(turn.)58 b(An)m(y)36
+(of)f(eac)m(h)h(line)630 3122 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 3290 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(calls)h(determines)630 3231 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 3399 y(direction)23 b(through)g(the)g(history)f
+(switc)m(hes)h(the)630 3341 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 3509 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
+(facilities)630 3450 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 3618 y(sp)s(eci\014ed.)150 3791 y
-Fn(operate-and-get-next)e(\(C-o\))630 3900 y Fo(Accept)30
+h(had)f(b)s(een)630 3560 y(sp)s(eci\014ed.)150 3718 y
+Fn(operate-and-get-next)e(\(C-o\))630 3827 y Fo(Accept)30
b(the)g(curren)m(t)e(line)i(for)f(return)f(to)h(the)h(calling)g
-(application)h(as)e(if)g(a)h(newline)f(had)630 4010 y(b)s(een)22
+(application)h(as)e(if)g(a)h(newline)f(had)630 3937 y(b)s(een)22
b(en)m(tered,)k(and)d(fetc)m(h)h(the)f(next)g(line)h(relativ)m(e)h(to)f
-(the)f(curren)m(t)g(line)h(from)f(the)g(history)630 4120
+(the)f(curren)m(t)g(line)h(from)f(the)g(history)630 4046
y(for)31 b(editing.)43 b(A)31 b(n)m(umeric)f(argumen)m(t,)i(if)f
(supplied,)f(sp)s(eci\014es)h(the)g(history)f(en)m(try)i(to)f(use)630
-4229 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 4441
-y Fd(1.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
-b(ext)150 4620 y Fg(end-of-file)27 b Fn(\(usually)h(C-d\))630
-4729 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 4839 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 4948 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 5121 y Fn(delete-char)e(\(C-d\))630 5230 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 5340
-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.)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-delete-char)25 b(\(Rubout\))630 408 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
-518 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-669 y Fn(forward-backward-delete-)o(char)24 b(\(\))630
-779 y Fo(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+4156 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 4314
+y Fn(fetch-history)d(\(\))630 4423 y Fo(With)e(a)f(n)m(umeric)g
+(argumen)m(t,)i(fetc)m(h)f(that)g(en)m(try)f(from)g(the)g(history)g
+(list)h(and)e(mak)m(e)i(it)g(the)630 4533 y(curren)m(t)30
+b(line.)41 b(Without)30 b(an)g(argumen)m(t,)h(mo)m(v)m(e)g(bac)m(k)g
+(to)f(the)g(\014rst)f(en)m(try)h(in)g(the)g(history)630
+4643 y(list.)150 4840 y Fd(1.4.3)63 b(Commands)42 b(F)-10
+b(or)41 b(Changing)g(T)-10 b(ext)150 5011 y Fg(end-of-file)27
+b Fn(\(usually)h(C-d\))630 5121 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 5230
+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
+5340 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(.)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(delete-char)27
+b(\(C-d\))630 408 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 518 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 669 y Fn(backward-delete-char)25 b(\(Rubout\))630
+779 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
+889 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
+1040 y Fn(forward-backward-delete-)o(char)24 b(\(\))630
+1149 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
-889 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
-998 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-1149 y Fn(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 1259
+1259 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
+1369 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+1520 y Fn(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 1630
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
-1369 y(sequences)d(lik)m(e)g Fg(C-q)p Fo(,)f(for)g(example.)150
-1520 y Fn(tab-insert)e(\(M-TAB\))630 1630 y Fo(Insert)i(a)h(tab)f(c)m
-(haracter.)150 1781 y Fn(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
-(\))630 1891 y Fo(Insert)g(y)m(ourself.)150 2042 y Fn
-(bracketed-paste-begin)25 b(\(\))630 2151 y Fo(This)f(function)h(is)f
+1739 y(sequences)d(lik)m(e)g Fg(C-q)p Fo(,)f(for)g(example.)150
+1891 y Fn(tab-insert)e(\(M-TAB\))630 2000 y Fo(Insert)i(a)h(tab)f(c)m
+(haracter.)150 2151 y Fn(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
+(\))630 2261 y Fo(Insert)g(y)m(ourself.)150 2412 y Fn
+(bracketed-paste-begin)25 b(\(\))630 2522 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
-2261 y(sen)m(t)38 b(b)m(y)f(some)h(terminals,)i(and)d(suc)m(h)g(a)h
+2632 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 2371 y(Readline)33 b(to)g(insert)g(the)f(pasted)h(text)
+b(allo)m(ws)630 2741 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
-2480 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h(from)f(the)h(k)
+2851 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
-2590 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e(to)j
+2960 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e(to)j
Fn(self-insert)c Fo(instead)j(of)h(executing)g(an)m(y)f(editing)630
-2699 y(commands.)630 2830 y(Brac)m(k)m(eted)38 b(paste)f(sets)f(the)h
+3070 y(commands.)630 3200 y(Brac)m(k)m(eted)38 b(paste)f(sets)f(the)h
(region)f(\(the)h(c)m(haracters)g(b)s(et)m(w)m(een)g(p)s(oin)m(t)f(and)
-g(the)g(mark\))630 2939 y(to)j(the)g(inserted)f(text.)65
+g(the)g(mark\))630 3310 y(to)j(the)g(inserted)f(text.)65
b(It)39 b(uses)f(the)g(concept)h(of)g(an)f Ff(active)i(mark)10
-b Fo(:)57 b(when)38 b(the)g(mark)630 3049 y(is)d(activ)m(e,)k(Readline)
+b Fo(:)57 b(when)38 b(the)g(mark)630 3420 y(is)d(activ)m(e,)k(Readline)
c(redispla)m(y)h(uses)e(the)h(terminal's)h(standout)f(mo)s(de)f(to)i
-(denote)g(the)630 3159 y(region.)150 3310 y Fn(transpose-chars)26
-b(\(C-t\))630 3420 y Fo(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)
+(denote)g(the)630 3529 y(region.)150 3680 y Fn(transpose-chars)26
+b(\(C-t\))630 3790 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 3529 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
+(cursor,)630 3900 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 3639 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
+g(of)h(the)630 4009 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 3748 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)150 3900 y Fn(transpose-words)c(\(M-t\))630
-4009 y Fo(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
+b(Negativ)m(e)25 b(argumen)m(ts)630 4119 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)150 4270 y Fn(transpose-words)c(\(M-t\))630
+4380 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 4119 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
+g(that)630 4489 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 4228 y(last)j(t)m(w)m(o)h(w)m
-(ords)e(on)g(the)h(line.)150 4380 y Fn(upcase-word)c(\(M-u\))630
-4489 y Fo(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+(line,)i(this)e(transp)s(oses)g(the)630 4599 y(last)j(t)m(w)m(o)h(w)m
+(ords)e(on)g(the)h(line.)150 4750 y Fn(upcase-word)c(\(M-u\))630
+4860 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
-4599 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 4750 y Fn(downcase-word)d(\(M-l\))630
-4860 y Fo(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+4969 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 5121 y Fn(downcase-word)d(\(M-l\))630
+5230 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 4969 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 5121 y Fn(capitalize-word)26
-b(\(M-c\))630 5230 y Fo(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(ercase)630 5340 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.)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(capitalize-word)26
+b(\(M-c\))630 408 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 5340 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.)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(overwrite-mode)26
-b(\(\))630 408 y Fo(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(capitalize)630 518 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 678 y Fn(overwrite-mode)26
+b(\(\))630 788 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 518 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
+h(switc)m(hes)630 897 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 628 y(insert)30 b(mo)s(de.)41
+(t,)i(switc)m(hes)e(to)630 1007 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 737
+Fn(vi)f Fo(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 1116
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
-877 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
-986 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 1096
-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 1236 y(By)g(default,)f
-(this)h(command)f(is)g(un)m(b)s(ound.)150 1445 y Fd(1.4.4)63
-b(Killing)42 b(And)e(Y)-10 b(anking)150 1622 y Fn(kill-line)28
-b(\(C-k\))630 1732 y Fo(Kill)k(the)f(text)i(from)d(p)s(oin)m(t)i(to)g
-(the)f(end)g(of)g(the)h(line.)44 b(With)31 b(a)h(negativ)m(e)i(n)m
-(umeric)d(argu-)630 1841 y(men)m(t,)g(kill)g(bac)m(kw)m(ard)g(from)f
-(the)g(cursor)g(to)h(the)g(b)s(eginning)e(of)i(the)g(curren)m(t)f
-(line.)150 2011 y Fn(backward-kill-line)25 b(\(C-x)30
-b(Rubout\))630 2120 y Fo(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h
-(cursor)g(to)g(the)g(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70
-b(With)41 b(a)630 2230 y(negativ)m(e)47 b(n)m(umeric)e(argumen)m(t,)50
+1251 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
+1361 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
+1470 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 1605
+y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
+1805 y Fd(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+1977 y Fn(kill-line)28 b(\(C-k\))630 2087 y Fo(Kill)k(the)f(text)i
+(from)d(p)s(oin)m(t)i(to)g(the)f(end)g(of)g(the)h(line.)44
+b(With)31 b(a)h(negativ)m(e)i(n)m(umeric)d(argu-)630
+2197 y(men)m(t,)g(kill)g(bac)m(kw)m(ard)g(from)f(the)g(cursor)g(to)h
+(the)g(b)s(eginning)e(of)i(the)g(curren)m(t)f(line.)150
+2357 y Fn(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+2466 y Fo(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h(cursor)g(to)g(the)g
+(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70 b(With)41
+b(a)630 2576 y(negativ)m(e)47 b(n)m(umeric)e(argumen)m(t,)50
b(kill)c(forw)m(ard)e(from)h(the)g(cursor)g(to)h(the)f(end)f(of)i(the)
-630 2339 y(curren)m(t)30 b(line.)150 2509 y Fn(unix-line-discard)c
-(\(C-u\))630 2619 y Fo(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f
+630 2685 y(curren)m(t)30 b(line.)150 2845 y Fn(unix-line-discard)c
+(\(C-u\))630 2955 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
-2788 y Fn(kill-whole-line)c(\(\))630 2898 y Fo(Kill)37
+3115 y Fn(kill-whole-line)c(\(\))630 3225 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
-3007 y(this)30 b(is)h(un)m(b)s(ound.)150 3177 y Fn(kill-word)d(\(M-d\))
-630 3287 y Fo(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
+3334 y(this)30 b(is)h(un)m(b)s(ound.)150 3494 y Fn(kill-word)d(\(M-d\))
+630 3604 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 3396 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
+(the)g(end)630 3713 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 3566 y Fn(backward-kill-word)25 b(\(M-DEL\))630
-3675 y Fo(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
+Fo(.)150 3874 y Fn(backward-kill-word)25 b(\(M-DEL\))630
+3983 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 3845 y Fn(shell-transpose-words)c
-(\(M-C-t\))630 3955 y Fo(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)
+Fn(backward-word)p Fo(.)150 4143 y Fn(shell-transpose-words)c
+(\(M-C-t\))630 4253 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 4064 y(w)m(ord)c(as)h(w)m(ell.)41
+(oin)m(t)f(past)g(that)630 4362 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 4174 y(last)j(t)m(w)m(o)h
+(the)f(line,)i(this)e(transp)s(oses)g(the)630 4472 y(last)j(t)m(w)m(o)h
(w)m(ords)d(on)i(the)f(line.)41 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h
-(the)h(same)f(as)h Fn(shell-forward-)630 4283 y(word)e
-Fo(and)h Fn(shell-backward-word)p Fo(.)150 4453 y Fn(unix-word-rubout)c
-(\(C-w\))630 4562 y Fo(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m
+(the)h(same)f(as)h Fn(shell-forward-)630 4582 y(word)e
+Fo(and)h Fn(shell-backward-word)p Fo(.)150 4742 y Fn(unix-word-rubout)c
+(\(C-w\))630 4851 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 4672 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)
-f(kill-ring.)150 4842 y Fn(unix-filename-rubout)25 b(\(\))630
-4951 y Fo(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e
+b(.)43 b(The)31 b(killed)630 4961 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)
+f(kill-ring.)150 5121 y Fn(unix-filename-rubout)25 b(\(\))630
+5230 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
-5061 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 5230 y Fn
-(delete-horizontal-space)24 b(\(\))630 5340 y Fo(Delete)33
+5340 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.)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)150 299 y Fn
+(delete-horizontal-space)24 b(\(\))630 408 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.)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(kill-region)27
-b(\(\))630 408 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 554 y Fn(copy-region-as-kill)25 b(\(\))630 663 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 773 y(By)31 b(default,)f(this)h(command)f(is)g(un)m
-(b)s(ound.)150 918 y Fn(copy-backward-word)25 b(\(\))630
-1028 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
+b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 564
+y Fn(kill-region)d(\(\))630 673 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 829 y Fn(copy-region-as-kill)25 b(\(\))630
+938 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 1048 y(By)31 b(default,)f(this)h(command)f(is)g(un)m
+(b)s(ound.)150 1203 y Fn(copy-backward-word)25 b(\(\))630
+1313 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 1138 y(same)31 b(as)f Fn(backward-word)p Fo(.)38
+(the)630 1422 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
-1283 y Fn(copy-forward-word)26 b(\(\))630 1393 y Fo(Cop)m(y)31
+1578 y Fn(copy-forward-word)26 b(\(\))630 1687 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
-1502 y(same)f(as)f Fn(forward-word)p Fo(.)38 b(By)30
+1797 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
-1647 y Fn(yank)f(\(C-y\))630 1757 y Fo(Y)-8 b(ank)31
+1952 y Fn(yank)f(\(C-y\))630 2062 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 1902 y Fn(yank-pop)d(\(M-y\))630 2012
+(p)s(oin)m(t.)150 2217 y Fn(yank-pop)d(\(M-y\))630 2327
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
-2122 y(command)30 b(is)h Fn(yank)e Fo(or)h Fn(yank-pop)p
-Fo(.)150 2307 y Fd(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
-(ts)150 2472 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 2581 y Fo(Add)d(this)h(digit)g
+2436 y(command)30 b(is)h Fn(yank)e Fo(or)h Fn(yank-pop)p
+Fo(.)150 2631 y Fd(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 2801 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 2911 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 2691 y Fg(M--)j Fo(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 2836 y Fn(universal-argument)25 b(\(\))630
-2946 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 3020 y Fg(M--)j Fo(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 3176 y Fn(universal-argument)25 b(\(\))630
+3285 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 3055 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
+(y)f(one)630 3395 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
-3165 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+3505 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
-3275 y Fo(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+3614 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
-3384 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+3724 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
-3494 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
+3833 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
-3603 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
+3943 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
-3713 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
+4053 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
-3822 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(.)150 4008 y Fd(1.4.6)63
+4162 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(.)150 4357 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 4173 y Fn(complete)28 b(\(TAB\))630
-4282 y Fo(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
+b(Y)-10 b(ou)150 4527 y Fn(complete)28 b(\(TAB\))630
+4637 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
-4392 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
+4746 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
-4537 y Fn(possible-completions)25 b(\(M-?\))630 4647
+4902 y Fn(possible-completions)25 b(\(M-?\))630 5011
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
-4756 y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i
+5121 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 4866 y Fn(completion-display-width)o
+b(alue)33 b(of)630 5230 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 4975 y(or)30 b(the)h(screen)f
-(width,)g(in)g(that)h(order.)150 5121 y Fn(insert-completions)25
-b(\(M-*\))630 5230 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 5340 y(b)m(y)g Fn(possible-completions)p
-Fo(.)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)150 299 y Fn(menu-complete)27
-b(\(\))630 408 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 518 y(from)37 b(the)h(list)h(of)f(p)s(ossible)f(completions.)64
+b(ariable)38 b Fn(COLUMNS)p Fo(,)630 5340 y(or)30 b(the)h(screen)f
+(width,)g(in)g(that)h(order.)p eop end
+%%Page: 23 26
+TeXDict begin 23 25 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(23)150 299 y Fn
+(insert-completions)25 b(\(M-*\))630 408 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 518
+y(b)m(y)g Fn(possible-completions)p Fo(.)150 673 y Fn(menu-complete)d
+(\(\))630 783 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 893 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
-628 y Fo(steps)i(through)g(the)g(list)h(of)f(p)s(ossible)g
+1002 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
-737 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g(of)g(completions,)i(the)e
+1112 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
-847 y(of)f Fn(bell-style)p Fo(\))e(and)h(the)h(original)i(text)f(is)f
+1221 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 956 y Fo(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+Fe(n)630 1331 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 1066 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
+(used)g(to)630 1441 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 1176 y Fn(TAB)p Fo(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
-(y)i(default.)150 1331 y Fn(menu-complete-backward)24
-b(\(\))630 1441 y Fo(Iden)m(tical)36 b(to)g Fn(menu-complete)p
+(ound)e(to)630 1550 y Fn(TAB)p Fo(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 1705 y Fn(menu-complete-backward)24
+b(\(\))630 1815 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 1550 y(completions,)d(as)e(if)h Fn(menu-complete)26
+(p)s(ossible)630 1925 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
-1705 y Fn(delete-char-or-list)25 b(\(\))630 1815 y Fo(Deletes)41
+2080 y Fn(delete-char-or-list)25 b(\(\))630 2190 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 1925 y(line)50 b(\(lik)m(e)h
+(eginning)e(or)h(end)f(of)h(the)630 2299 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 2034
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 2409
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 2229 y Fd(1.4.7)63 b(Keyb)s(oard)41
-b(Macros)150 2399 y Fn(start-kbd-macro)26 b(\(C-x)j(\(\))630
-2509 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 2604 y Fd(1.4.7)63 b(Keyb)s(oard)41
+b(Macros)150 2774 y Fn(start-kbd-macro)26 b(\(C-x)j(\(\))630
+2883 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
-2664 y Fn(end-kbd-macro)d(\(C-x)i(\)\))630 2774 y Fo(Stop)e(sa)m(ving)h
+3039 y Fn(end-kbd-macro)d(\(C-x)i(\)\))630 3148 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 2883
-y(de\014nition.)150 3039 y Fn(call-last-kbd-macro)c(\(C-x)k(e\))630
-3148 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 3258
+y(de\014nition.)150 3413 y Fn(call-last-kbd-macro)c(\(C-x)k(e\))630
+3523 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
-3258 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 3413 y Fn(print-last-kbd-macro)25 b(\(\))630
-3523 y Fo(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
+3632 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 3788 y Fn(print-last-kbd-macro)25 b(\(\))630
+3897 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 3718 y Fd(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
-150 3888 y Fn(re-read-init-file)26 b(\(C-x)j(C-r\))630
-3997 y Fo(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
+Fo(\014le.)150 4092 y Fd(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
+150 4262 y Fn(re-read-init-file)26 b(\(C-x)j(C-r\))630
+4372 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 4107 y(assignmen)m(ts)31 b(found)e(there.)150
-4262 y Fn(abort)g(\(C-g\))630 4372 y Fo(Ab)s(ort)d(the)h(curren)m(t)f
+(or)i(v)-5 b(ariable)630 4481 y(assignmen)m(ts)31 b(found)e(there.)150
+4637 y Fn(abort)g(\(C-g\))630 4746 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 4481 y(setting)j(of)g Fn(bell-style)p
-Fo(\).)150 4637 y Fn(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p
-Fg(x)p Fn(,)g(...)o(\))630 4746 y Fo(If)35 b(the)g(meta\014ed)g(c)m
+b(ject)26 b(to)i(the)630 4856 y(setting)j(of)g Fn(bell-style)p
+Fo(\).)150 5011 y Fn(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p
+Fg(x)p Fn(,)g(...)o(\))630 5121 y Fo(If)35 b(the)g(meta\014ed)g(c)m
(haracter)i Fe(x)k Fo(is)35 b(upp)s(er)e(case,)k(run)d(the)h(command)g
-(that)g(is)g(b)s(ound)e(to)630 4856 y(the)g(corresp)s(onding)f
+(that)g(is)g(b)s(ound)e(to)630 5230 y(the)g(corresp)s(onding)f
(meta\014ed)h(lo)m(w)m(er)i(case)f(c)m(haracter.)50 b(The)32
-b(b)s(eha)m(vior)h(is)g(unde\014ned)e(if)630 4965 y Fe(x)37
-b Fo(is)30 b(already)h(lo)m(w)m(er)h(case.)150 5121 y
-Fn(prefix-meta)27 b(\(ESC\))630 5230 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 5340 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(.)p eop end
-%%Page: 23 26
-TeXDict begin 23 25 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(23)150 299 y Fn(undo)29
-b(\(C-_)g(or)h(C-x)g(C-u\))630 408 y Fo(Incremen)m(tal)h(undo,)f
-(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-584 y Fn(revert-line)27 b(\(M-r\))630 693 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
-803 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 978 y Fn(tilde-expand)d(\(M-~\))630 1088 y Fo(P)m(erform)j(tilde)h
-(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 1263
-y Fn(set-mark)d(\(C-@\))630 1373 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 1482 y(to)f(that)g(p)s(osition.)
-150 1658 y Fn(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
-1767 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 1877 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 2052
-y Fn(character-search)26 b(\(C-]\))630 2162 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 2271 y(A)30
+b(b)s(eha)m(vior)h(is)g(unde\014ned)e(if)630 5340 y Fe(x)37
+b Fo(is)30 b(already)h(lo)m(w)m(er)h(case.)p eop end
+%%Page: 24 27
+TeXDict begin 24 26 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(24)150 299 y Fn(prefix-meta)27
+b(\(ESC\))630 408 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 518 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 704 y Fn(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630
+814 y Fo(Incremen)m(tal)h(undo,)f(separately)h(remem)m(b)s(ered)f(for)g
+(eac)m(h)i(line.)150 1000 y Fn(revert-line)27 b(\(M-r\))630
+1110 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 1219 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f
+(b)s(eginning.)150 1406 y Fn(tilde-expand)d(\(M-~\))630
+1515 y Fo(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m
+(ord.)150 1702 y Fn(set-mark)d(\(C-@\))630 1811 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
+1921 y(to)f(that)g(p)s(osition.)150 2107 y Fn(exchange-point-and-mark)
+24 b(\(C-x)29 b(C-x\))630 2217 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 2326 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
+2513 y Fn(character-search)26 b(\(C-]\))630 2622 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 2732 y(A)30
b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 2447 y Fn(character-search-backwar)o(d)24
-b(\(M-C-]\))630 2556 y Fo(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 2918 y Fn(character-search-backwar)o(d)24
+b(\(M-C-]\))630 3028 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 2666 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
+g(that)630 3137 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
-2841 y Fn(skip-csi-sequence)d(\(\))630 2951 y Fo(Read)i(enough)f(c)m
+3324 y Fn(skip-csi-sequence)d(\(\))630 3433 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 3061 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
+(as)g(those)h(de\014ned)630 3543 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 3170 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
+(trol)g(Sequence)630 3652 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 3280 y(ducing)31
+Fo(e[)p Fn(")p Fo(,)g(k)m(eys)f(pro-)630 3762 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 3389 y(command,)f
+(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 3871 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 3499 y(un)m(b)s(ound)d(b)m
+(editing)h(bu\013er.)44 b(This)31 b(is)630 3981 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
-3674 y Fn(insert-comment)26 b(\(M-#\))630 3784 y Fo(Without)36
+4167 y Fn(insert-comment)26 b(\(M-#\))630 4277 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 3893 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
+b(is)g(in-)630 4387 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 4003 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
+(supplied,)630 4496 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 4113 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
+(line)630 4606 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 4222
+b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4715
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 4332
+(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4825
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 4507 y Fn(dump-functions)d
-(\(\))630 4617 y Fo(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
+(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
-4726 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
+5230 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
-4836 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fe(inputrc)k
+5340 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 5011 y Fn(dump-variables)26 b(\(\))630
-5121 y Fo(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+(default.)p eop end
+%%Page: 25 28
+TeXDict begin 25 27 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(25)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
b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(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(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
+(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
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: 24 27
-TeXDict begin 24 26 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(24)150 299 y Fn(dump-macros)27
-b(\(\))630 408 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
-518 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 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
(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
-628 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
+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
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 737 y(default.)150 897 y Fn(emacs-editing-mode)e(\(C-e\))
-630 1006 y Fo(When)30 b(in)g Fn(vi)g Fo(command)g(mo)s(de,)g(this)h
+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
(causes)f(a)h(switc)m(h)g(to)g Fn(emacs)e Fo(editing)i(mo)s(de.)150
-1166 y Fn(vi-editing-mode)26 b(\(M-C-j\))630 1275 y Fo(When)k(in)g
+1654 y Fn(vi-editing-mode)26 b(\(M-C-j\))630 1763 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 1516 y Fm(1.5)68 b(Readline)47
-b(vi)e(Mo)t(de)150 1675 y Fo(While)32 b(the)g(Readline)g(library)f(do)s
+Fn(vi)f Fo(editing)h(mo)s(de.)150 2004 y Fm(1.5)68 b(Readline)47
+b(vi)e(Mo)t(de)150 2164 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
-1785 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+2273 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 1895 y(the)e Fh(posix)e Fo(standard.)275
-2029 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 2383 y(the)e Fh(posix)e Fo(standard.)275
+2517 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 2139 y Fg(M-C-j)36 b Fo(\(b)s(ound)h(to)h
+(command)150 2627 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 2248 y Fo(mo)s(de\).)k(The)30
+(vi-editing-mo)s(de)g(in)e Fn(emacs)150 2736 y Fo(mo)s(de\).)k(The)30
b(Readline)h(default)f(is)g Fn(emacs)f Fo(mo)s(de.)275
-2383 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fn(vi)f
+2871 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 2492 y(had)f(t)m(yp)s(ed)g(an)g(`)p
+(de,)g(as)h(if)f(y)m(ou)150 2980 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
-2602 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
+3090 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 2711 y(`)p Fn(k)p Fo(')d(and)e(subsequen)m
+(history)f(lines)h(with)150 3200 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: 25 28
-TeXDict begin 25 27 bop 3659 -116 a Fo(25)150 299 y Fk(App)t(endix)52
+%%Page: 26 29
+TeXDict begin 26 28 bop 3659 -116 a Fo(26)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
@@ -6905,10 +7010,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: 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(under)26 b(this)i(License.)40 b(If)27
+b(27)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
@@ -6999,10 +7104,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: 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)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(28)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
@@ -7092,10 +7197,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: 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)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+b(29)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
@@ -7174,10 +7279,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: 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)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(30)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
@@ -7262,10 +7367,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: 30 33
-TeXDict begin 30 32 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 31 34
+TeXDict begin 31 33 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(30)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+b(31)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
@@ -7350,10 +7455,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: 31 34
-TeXDict begin 31 33 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 32 35
+TeXDict begin 32 34 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(31)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
+b(32)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
@@ -7417,10 +7522,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: 32 35
-TeXDict begin 32 34 bop 150 -116 a Fo(App)s(endix)29
+%%Page: 33 36
+TeXDict begin 33 35 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(32)150 299 y Fm(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+b(33)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
diff --git a/doc/rluserman.texi b/doc/rluserman.texi
index 6e8e848..ae9ec6e 100644
--- a/doc/rluserman.texi
+++ b/doc/rluserman.texi
@@ -12,7 +12,7 @@ This manual describes the end user interface of the GNU Readline Library
consistency of user interface across discrete programs which provide
a command line interface.
-Copyright @copyright{} 1988--2020 Free Software Foundation, Inc.
+Copyright @copyright{} 1988--2022 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
diff --git a/doc/version.texi b/doc/version.texi
index 0d5883f..cd3f8d8 100644
--- a/doc/version.texi
+++ b/doc/version.texi
@@ -1,10 +1,11 @@
@ignore
-Copyright (C) 1988-2021 Free Software Foundation, Inc.
+Copyright (C) 1988-2022 Free Software Foundation, Inc.
@end ignore
-@set EDITION 8.1
-@set VERSION 8.1
-@set UPDATED 15 November 2021
-@set UPDATED-MONTH November 2021
+@set EDITION 8.2
+@set VERSION 8.2
-@set LASTCHANGE Mon Nov 15 17:05:28 EST 2021
+@set UPDATED 11 March 2022
+@set UPDATED-MONTH March 2022
+
+@set LASTCHANGE Fri Mar 11 10:13:51 EST 2022
diff --git a/histfile.c b/histfile.c
index edc903e..3bfec55 100644
--- a/histfile.c
+++ b/histfile.c
@@ -310,7 +310,7 @@ read_history_range (const char *filename, int from, int to)
if (file_size == 0)
{
- free (input);
+ xfree (input);
close (file);
return 0; /* don't waste time if we don't have to */
}
diff --git a/histlib.h b/histlib.h
index adaf1e5..29fc4d2 100644
--- a/histlib.h
+++ b/histlib.h
@@ -1,6 +1,6 @@
/* histlib.h -- internal definitions for the history library. */
-/* Copyright (C) 1989-2009,2021 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2009,2021-2022 Free Software Foundation, Inc.
This file contains the GNU History Library (History), a set of
routines for managing the text of previously typed lines.
@@ -84,6 +84,7 @@ extern int _hs_history_patsearch (const char *, int, int);
/* history.c */
extern void _hs_replace_history_data (int, histdata_t *, histdata_t *);
+extern int _hs_at_end_of_history (void);
/* histfile.c */
extern void _hs_append_history_line (int, const char *);
diff --git a/history.c b/history.c
index a3c26c6..2daa362 100644
--- a/history.c
+++ b/history.c
@@ -165,6 +165,13 @@ history_set_pos (int pos)
history_offset = pos;
return (1);
}
+
+/* Are we currently at the end of the history list? */
+int
+_hs_at_end_of_history (void)
+{
+ return (the_history == 0 || history_offset == history_length);
+}
/* Return the current history array. The caller has to be careful, since this
is the actual array of data, and could be bashed or made corrupt easily.
diff --git a/history.h b/history.h
index fc98eee..5208f9a 100644
--- a/history.h
+++ b/history.h
@@ -1,6 +1,6 @@
/* history.h -- the names of functions that you can call in history. */
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2022 Free Software Foundation, Inc.
This file contains the GNU History Library (History), a set of
routines for managing the text of previously typed lines.
@@ -44,7 +44,7 @@ typedef char *histdata_t;
/* Let's not step on anyone else's define for now, since we don't use this yet. */
#ifndef HS_HISTORY_VERSION
-# define HS_HISTORY_VERSION 0x0801 /* History 8.1 */
+# define HS_HISTORY_VERSION 0x0802 /* History 8.2 */
#endif
/* The structure used to store a history entry. */
diff --git a/histsearch.c b/histsearch.c
index 9711b15..b62c06b 100644
--- a/histsearch.c
+++ b/histsearch.c
@@ -248,7 +248,7 @@ _hs_history_patsearch (const char *string, int direction, int flags)
ret = history_search_internal (pat, direction, flags|PATTERN_SEARCH);
if (pat != string)
- free (pat);
+ xfree (pat);
return ret;
}
diff --git a/isearch.c b/isearch.c
index df23f15..3e398a6 100644
--- a/isearch.c
+++ b/isearch.c
@@ -679,7 +679,7 @@ opcode_dispatch:
paste = _rl_bracketed_text (&pastelen);
if (paste == 0 || *paste == 0)
{
- free (paste);
+ xfree (paste);
break;
}
if (_rl_enable_active_region)
@@ -692,7 +692,7 @@ opcode_dispatch:
memcpy (cxt->search_string + cxt->search_string_index, paste, pastelen);
cxt->search_string_index += pastelen;
cxt->search_string[cxt->search_string_index] = '\0';
- free (paste);
+ xfree (paste);
break;
/* Add character to search string and continue search. */
diff --git a/misc.c b/misc.c
index 5670cda..4bca9c5 100644
--- a/misc.c
+++ b/misc.c
@@ -1,6 +1,6 @@
/* misc.c -- miscellaneous bindable readline functions. */
-/* Copyright (C) 1987-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2022 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.
@@ -50,6 +50,7 @@
#include "history.h"
#include "rlprivate.h"
+#include "histlib.h"
#include "rlshell.h"
#include "xmalloc.h"
@@ -308,6 +309,7 @@ _rl_start_using_history (void)
if (_rl_saved_line_for_history)
_rl_free_saved_history_line ();
_rl_saved_line_for_history = (HIST_ENTRY *)NULL;
+ _rl_history_search_pos = -99; /* some random invalid history position */
}
/* Free the contents (and containing structure) of a HIST_ENTRY. */
@@ -380,6 +382,8 @@ rl_maybe_save_line (void)
int
_rl_free_saved_history_line (void)
{
+ UNDO_LIST *orig;
+
if (_rl_saved_line_for_history)
{
if (rl_undo_list && rl_undo_list == (UNDO_LIST *)_rl_saved_line_for_history->data)
diff --git a/nls.c b/nls.c
index fd093b6..8447c10 100644
--- a/nls.c
+++ b/nls.c
@@ -1,6 +1,6 @@
/* nls.c -- skeletal internationalization code. */
-/* Copyright (C) 1996-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2022 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.
@@ -53,6 +53,7 @@
#include "readline.h"
#include "rlshell.h"
#include "rlprivate.h"
+#include "xmalloc.h"
static int utf8locale (char *);
diff --git a/readline.c b/readline.c
index 371e1fb..999a23d 100644
--- a/readline.c
+++ b/readline.c
@@ -1,7 +1,7 @@
/* readline.c -- a general facility for reading lines of input
with emacs style editing and completion. */
-/* Copyright (C) 1987-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2022 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.
@@ -164,6 +164,9 @@ int rl_end;
/* Make this non-zero to return the current input_line. */
int rl_done;
+/* If non-zero when readline_internal returns, it means we found EOF */
+int rl_eof_found = 0;
+
/* The last function executed by readline. */
rl_command_func_t *rl_last_func = (rl_command_func_t *)NULL;
@@ -217,9 +220,6 @@ int _rl_eof_char = CTRL ('D');
/* Non-zero makes this the next keystroke to read. */
int rl_pending_input = 0;
-/* If non-zero when readline_internal returns, it means we found EOF */
-int _rl_eof_found = 0;
-
/* Pointer to a useful terminal name. */
const char *rl_terminal_name = (const char *)NULL;
@@ -240,6 +240,9 @@ char *_rl_comment_begin;
/* Keymap holding the function currently being executed. */
Keymap rl_executing_keymap;
+/* The function currently being executed. */
+rl_command_func_t *_rl_executing_func;
+
/* Keymap we're currently using to dispatch. */
Keymap _rl_dispatching_keymap;
@@ -479,12 +482,18 @@ readline_internal_teardown (int eof)
RL_CHECK_SIGNALS ();
+ if (eof)
+ RL_SETSTATE (RL_STATE_EOF); /* XXX */
+
/* Restore the original of this history line, iff the line that we
are editing was originally in the history, AND the line has changed. */
entry = current_history ();
+ /* We don't want to do this if we executed functions that call
+ history_set_pos to set the history offset to the line containing the
+ non-incremental search string. */
if (entry && rl_undo_list)
- {
+ {
temp = savestring (the_line);
rl_revert_line (1, 0);
entry = replace_history_entry (where_history (), the_line, (histdata_t)NULL);
@@ -615,6 +624,7 @@ readline_internal_charloop (void)
RL_SETSTATE(RL_STATE_DONE);
return (rl_done = 1);
#else
+ RL_SETSTATE(RL_STATE_EOF);
eof_found = 1;
break;
#endif
@@ -655,6 +665,7 @@ readline_internal_charloop (void)
RL_SETSTATE(RL_STATE_DONE);
return (rl_done = 1);
#else
+ RL_SETSTATE(RL_STATE_EOF);
eof_found = 1;
break;
#endif
@@ -671,6 +682,8 @@ readline_internal_charloop (void)
rl_executing_keymap = _rl_command_to_execute->map;
rl_executing_key = _rl_command_to_execute->key;
+ _rl_executing_func = _rl_command_to_execute->func;
+
rl_dispatching = 1;
RL_SETSTATE(RL_STATE_DISPATCHING);
r = (*(_rl_command_to_execute->func)) (_rl_command_to_execute->count, _rl_command_to_execute->key);
@@ -717,8 +730,8 @@ static char *
readline_internal (void)
{
readline_internal_setup ();
- _rl_eof_found = readline_internal_charloop ();
- return (readline_internal_teardown (_rl_eof_found));
+ rl_eof_found = readline_internal_charloop ();
+ return (readline_internal_teardown (rl_eof_found));
}
void
@@ -892,6 +905,8 @@ _rl_dispatch_subseq (register int key, Keymap map, int got_subseq)
rl_executing_keymap = map;
rl_executing_key = key;
+ _rl_executing_func = func;
+
RESIZE_KEYSEQ_BUFFER();
rl_executing_keyseq[rl_key_sequence_length++] = key;
rl_executing_keyseq[rl_key_sequence_length] = '\0';
@@ -1178,7 +1193,7 @@ rl_initialize (void)
/* We aren't done yet. We haven't even gotten started yet! */
rl_done = 0;
- RL_UNSETSTATE(RL_STATE_DONE);
+ RL_UNSETSTATE(RL_STATE_DONE|RL_STATE_TIMEOUT|RL_STATE_EOF);
/* Tell the history routines what is going on. */
_rl_start_using_history ();
diff --git a/readline.h b/readline.h
index 5f17dfd..cac269f 100644
--- a/readline.h
+++ b/readline.h
@@ -1,6 +1,6 @@
/* Readline.h -- the names of functions callable from within readline. */
-/* Copyright (C) 1987-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2022 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.
@@ -39,9 +39,9 @@ extern "C" {
#endif
/* Hex-encoded Readline version number. */
-#define RL_READLINE_VERSION 0x0801 /* Readline 8.1 */
+#define RL_READLINE_VERSION 0x0802 /* Readline 8.2 */
#define RL_VERSION_MAJOR 8
-#define RL_VERSION_MINOR 1
+#define RL_VERSION_MINOR 2
/* Readline data structures. */
@@ -562,6 +562,10 @@ extern int rl_mark;
line and should return it. */
extern int rl_done;
+/* Flag to indicate that readline has read an EOF character or read has
+ returned 0 or error, and is returning a NULL line as a result. */
+extern int rl_eof_found;
+
/* If set to a character value, that will be the next keystroke read. */
extern int rl_pending_input;
@@ -917,7 +921,8 @@ extern int rl_persistent_signal_handlers;
#define RL_STATE_REDISPLAYING 0x1000000 /* updating terminal display */
#define RL_STATE_DONE 0x2000000 /* done; accepted line */
-#define RL_STATE_TIMEOUT 0x4000000
+#define RL_STATE_TIMEOUT 0x4000000 /* done; timed out */
+#define RL_STATE_EOF 0x8000000 /* done; got eof on read */
#define RL_SETSTATE(x) (rl_readline_state |= (x))
#define RL_UNSETSTATE(x) (rl_readline_state &= ~(x))
diff --git a/rlprivate.h b/rlprivate.h
index bda3411..24ceb3a 100644
--- a/rlprivate.h
+++ b/rlprivate.h
@@ -1,7 +1,7 @@
/* rlprivate.h -- functions and variables global to the readline library,
but not intended for use by applications. */
-/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2022 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.
@@ -381,6 +381,8 @@ extern void _rl_end_executing_keyseq (void);
extern void _rl_add_executing_keyseq (int);
extern void _rl_del_executing_keyseq (void);
+extern rl_command_func_t *_rl_executing_func;
+
/* rltty.c */
extern int _rl_disable_tty_signals (void);
extern int _rl_restore_tty_signals (void);
@@ -415,6 +417,9 @@ extern void _rl_control_keypad (int);
extern void _rl_set_cursor (int, int);
extern void _rl_standout_on (void);
extern void _rl_standout_off (void);
+extern int _rl_reset_region_color (int, const char *);
+extern void _rl_region_color_on (void);
+extern void _rl_region_color_off (void);
/* text.c */
extern void _rl_fix_point (int);
@@ -551,6 +556,8 @@ extern int _rl_echo_control_chars;
extern int _rl_show_mode_in_prompt;
extern int _rl_enable_bracketed_paste;
extern int _rl_enable_active_region;
+extern char *_rl_active_region_start_color;
+extern char *_rl_active_region_end_color;
extern char *_rl_comment_begin;
extern unsigned char _rl_parsing_conditionalized_out;
extern Keymap _rl_keymap;
@@ -558,7 +565,6 @@ extern FILE *_rl_in_stream;
extern FILE *_rl_out_stream;
extern int _rl_last_command_was_kill;
extern int _rl_eof_char;
-extern int _rl_eof_found;
extern procenv_t _rl_top_level;
extern _rl_keyseq_cxt *_rl_kscxt;
extern int _rl_keyseq_timeout;
@@ -569,6 +575,7 @@ extern rl_hook_func_t *_rl_internal_startup_hook;
/* search.c */
extern _rl_search_cxt *_rl_nscxt;
+extern int _rl_history_search_pos;
/* signals.c */
extern int volatile _rl_caught_signal;
diff --git a/rltty.c b/rltty.c
index dd10933..882a3d4 100644
--- a/rltty.c
+++ b/rltty.c
@@ -1,7 +1,7 @@
/* rltty.c -- functions to prepare and restore the terminal for readline's
use. */
-/* Copyright (C) 1992-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2022 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.
@@ -692,7 +692,9 @@ rl_deprep_terminal (void)
if (terminal_prepped & TPX_BRACKPASTE)
{
fprintf (rl_outstream, BRACK_PASTE_FINI);
- if (_rl_eof_found && (RL_ISSTATE (RL_STATE_TIMEOUT) == 0))
+ /* Since the last character in BRACK_PASTE_FINI is \r */
+ _rl_last_c_pos = 0;
+ if (rl_eof_found && (RL_ISSTATE (RL_STATE_TIMEOUT) == 0))
fprintf (rl_outstream, "\n");
else if (_rl_echoing_p == 0)
fprintf (rl_outstream, "\n");
diff --git a/search.c b/search.c
index 325d51e..eea2301 100644
--- a/search.c
+++ b/search.c
@@ -1,6 +1,6 @@
/* search.c - code for non-incremental searching in emacs and vi modes. */
-/* Copyright (C) 1992-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2022 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.
@@ -60,9 +60,9 @@ static int noninc_history_pos;
static char *prev_line_found = (char *) NULL;
-static int rl_history_search_len;
-static int rl_history_search_pos;
-static int rl_history_search_flags;
+static int _rl_history_search_len;
+/*static*/ int _rl_history_search_pos;
+static int _rl_history_search_flags;
static char *history_search_string;
static int history_string_size;
@@ -84,9 +84,12 @@ static int _rl_nsearch_dispatch (_rl_search_cxt *, int);
static void
make_history_line_current (HIST_ENTRY *entry)
{
+ UNDO_LIST *xlist;
+
+ xlist = _rl_saved_line_for_history ? (UNDO_LIST *)_rl_saved_line_for_history->data : 0;
/* At this point, rl_undo_list points to a private search string list. */
- if (rl_undo_list && rl_undo_list != (UNDO_LIST *)entry->data)
- rl_free_undo_list ();
+ if (rl_undo_list && rl_undo_list != (UNDO_LIST *)entry->data && rl_undo_list != xlist)
+ rl_free_undo_list ();
/* Now we create a new undo list with a single insert for this text.
WE DON'T CHANGE THE ORIGINAL HISTORY ENTRY UNDO LIST */
@@ -102,9 +105,13 @@ make_history_line_current (HIST_ENTRY *entry)
#endif
/* This will need to free the saved undo list associated with the original
- (pre-search) line buffer. */
+ (pre-search) line buffer.
+ XXX - look at _rl_free_saved_history_line and consider calling it if
+ rl_undo_list != xlist (or calling rl_free_undo list directly on
+ _rl_saved_line_for_history->data) */
if (_rl_saved_line_for_history)
- _rl_free_saved_history_line ();
+ _rl_free_history_entry (_rl_saved_line_for_history);
+ _rl_saved_line_for_history = (HIST_ENTRY *)NULL;
}
/* Search the history list for STRING starting at absolute history position
@@ -523,12 +530,11 @@ rl_history_search_internal (int count, int dir)
{
HIST_ENTRY *temp;
int ret, oldpos, newcol;
+ int had_saved_line;
char *t;
+ had_saved_line = _rl_saved_line_for_history != 0;
rl_maybe_save_line ();
- /* This will either be restored from the saved line or set from the
- found history line. */
- rl_undo_list = 0;
temp = (HIST_ENTRY *)NULL;
/* Search COUNT times through the history for a line matching
@@ -539,14 +545,14 @@ rl_history_search_internal (int count, int dir)
while (count)
{
RL_CHECK_SIGNALS ();
- ret = noninc_search_from_pos (history_search_string, rl_history_search_pos + dir, dir, 0, &newcol);
+ ret = noninc_search_from_pos (history_search_string, _rl_history_search_pos + dir, dir, 0, &newcol);
if (ret == -1)
break;
/* Get the history entry we found. */
- rl_history_search_pos = ret;
+ _rl_history_search_pos = ret;
oldpos = where_history ();
- history_set_pos (rl_history_search_pos);
+ history_set_pos (_rl_history_search_pos);
temp = current_history (); /* will never be NULL after successful search */
history_set_pos (oldpos);
@@ -560,20 +566,21 @@ rl_history_search_internal (int count, int dir)
/* If we didn't find anything at all, return. */
if (temp == 0)
{
+ /* XXX - check had_saved_line here? */
rl_maybe_unsave_line ();
rl_ding ();
/* If you don't want the saved history line (last match) to show up
in the line buffer after the search fails, change the #if 0 to
#if 1 */
#if 0
- if (rl_point > rl_history_search_len)
+ if (rl_point > _rl_history_search_len)
{
- rl_point = rl_end = rl_history_search_len;
+ rl_point = rl_end = _rl_history_search_len;
rl_line_buffer[rl_end] = '\0';
rl_mark = 0;
}
#else
- rl_point = rl_history_search_len; /* rl_maybe_unsave_line changes it */
+ rl_point = _rl_history_search_len; /* rl_maybe_unsave_line changes it */
rl_mark = rl_end;
#endif
return 1;
@@ -582,19 +589,14 @@ rl_history_search_internal (int count, int dir)
/* Copy the line we found into the current line buffer. */
make_history_line_current (temp);
- /* Make sure we set the current history position to the last line found so
- we can do things like operate-and-get-next from here. This is similar to
- how incremental search behaves. */
- history_set_pos (rl_history_search_pos); /* XXX */
-
/* decide where to put rl_point -- need to change this for pattern search */
- if (rl_history_search_flags & ANCHORED_SEARCH)
- rl_point = rl_history_search_len; /* easy case */
+ if (_rl_history_search_flags & ANCHORED_SEARCH)
+ rl_point = _rl_history_search_len; /* easy case */
else
{
#if 0
t = strstr (rl_line_buffer, history_search_string); /* XXX */
- rl_point = t ? (int)(t - rl_line_buffer) + rl_history_search_len : rl_end;
+ rl_point = t ? (int)(t - rl_line_buffer) + _rl_history_search_len : rl_end;
#else
rl_point = (newcol >= 0) ? newcol : rl_end;
#endif
@@ -609,17 +611,17 @@ rl_history_search_reinit (int flags)
{
int sind;
- rl_history_search_pos = where_history ();
- rl_history_search_len = rl_point;
- rl_history_search_flags = flags;
+ _rl_history_search_pos = where_history ();
+ _rl_history_search_len = rl_point;
+ _rl_history_search_flags = flags;
prev_line_found = (char *)NULL;
if (rl_point)
{
/* Allocate enough space for anchored and non-anchored searches */
- if (rl_history_search_len >= history_string_size - 2)
+ if (_rl_history_search_len >= history_string_size - 2)
{
- history_string_size = rl_history_search_len + 2;
+ history_string_size = _rl_history_search_len + 2;
history_search_string = (char *)xrealloc (history_search_string, history_string_size);
}
sind = 0;
@@ -628,7 +630,7 @@ rl_history_search_reinit (int flags)
strncpy (history_search_string + sind, rl_line_buffer, rl_point);
history_search_string[rl_point + sind] = '\0';
}
- _rl_free_saved_history_line ();
+ _rl_free_saved_history_line (); /* XXX rl_undo_list? */
}
/* Search forward in the history for the string of characters
@@ -644,7 +646,7 @@ rl_history_search_forward (int count, int ignore)
rl_last_func != rl_history_search_backward)
rl_history_search_reinit (ANCHORED_SEARCH);
- if (rl_history_search_len == 0)
+ if (_rl_history_search_len == 0)
return (rl_get_next_history (count, ignore));
return (rl_history_search_internal (abs (count), (count > 0) ? 1 : -1));
}
@@ -662,7 +664,7 @@ rl_history_search_backward (int count, int ignore)
rl_last_func != rl_history_search_backward)
rl_history_search_reinit (ANCHORED_SEARCH);
- if (rl_history_search_len == 0)
+ if (_rl_history_search_len == 0)
return (rl_get_previous_history (count, ignore));
return (rl_history_search_internal (abs (count), (count > 0) ? -1 : 1));
}
@@ -681,7 +683,7 @@ rl_history_substr_search_forward (int count, int ignore)
rl_last_func != rl_history_substr_search_backward)
rl_history_search_reinit (NON_ANCHORED_SEARCH);
- if (rl_history_search_len == 0)
+ if (_rl_history_search_len == 0)
return (rl_get_next_history (count, ignore));
return (rl_history_search_internal (abs (count), (count > 0) ? 1 : -1));
}
@@ -699,7 +701,7 @@ rl_history_substr_search_backward (int count, int ignore)
rl_last_func != rl_history_substr_search_backward)
rl_history_search_reinit (NON_ANCHORED_SEARCH);
- if (rl_history_search_len == 0)
+ if (_rl_history_search_len == 0)
return (rl_get_previous_history (count, ignore));
return (rl_history_search_internal (abs (count), (count > 0) ? -1 : 1));
}
diff --git a/terminal.c b/terminal.c
index 5b4ef1b..9997161 100644
--- a/terminal.c
+++ b/terminal.c
@@ -1,6 +1,6 @@
/* terminal.c -- controlling the terminal with termcap. */
-/* Copyright (C) 1996-2021 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2022 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.
@@ -185,6 +185,11 @@ static char *_rl_term_kN;
static char *_rl_term_vs; /* very visible */
static char *_rl_term_ve; /* normal */
+/* User-settable color sequences to begin and end the active region. Defaults
+ are rl_term_so and rl_term_se on non-dumb terminals. */
+char *_rl_active_region_start_color = NULL;
+char *_rl_active_region_end_color = NULL;
+
/* It's not clear how HPUX is so broken here. */
#ifdef TGETENT_BROKEN
# define TGETENT_SUCCESS 0
@@ -466,7 +471,7 @@ _rl_init_terminal_io (const char *terminal_name)
{
const char *term;
char *buffer;
- int tty, tgetent_ret, dumbterm;
+ int tty, tgetent_ret, dumbterm, reset_region_colors;
term = terminal_name ? terminal_name : sh_get_env_value ("TERM");
_rl_term_clrpag = _rl_term_cr = _rl_term_clreol = _rl_term_clrscroll = (char *)NULL;
@@ -477,6 +482,8 @@ _rl_init_terminal_io (const char *terminal_name)
dumbterm = STREQ (term, "dumb");
+ reset_region_colors = 1;
+
#ifdef __MSDOS__
_rl_term_im = _rl_term_ei = _rl_term_ic = _rl_term_IC = (char *)NULL;
_rl_term_up = _rl_term_dc = _rl_term_DC = _rl_visible_bell = (char *)NULL;
@@ -562,6 +569,11 @@ _rl_init_terminal_io (const char *terminal_name)
escape sequences */
_rl_enable_bracketed_paste = 0;
+ /* No terminal so/se capabilities. */
+ _rl_enable_active_region = 0;
+ _rl_reset_region_color (0, NULL);
+ _rl_reset_region_color (1, NULL);
+
/* Reasonable defaults for tgoto(). Readline currently only uses
tgoto if _rl_term_IC or _rl_term_DC is defined, but just in case we
change that later... */
@@ -616,8 +628,14 @@ _rl_init_terminal_io (const char *terminal_name)
/* There's no way to determine whether or not a given terminal supports
bracketed paste mode, so we assume a terminal named "dumb" does not. */
if (dumbterm)
- _rl_enable_bracketed_paste = 0;
-
+ _rl_enable_bracketed_paste = _rl_enable_active_region = 0;
+
+ if (reset_region_colors)
+ {
+ _rl_reset_region_color (0, _rl_term_so);
+ _rl_reset_region_color (1, _rl_term_se);
+ }
+
return 0;
}
@@ -791,6 +809,67 @@ _rl_standout_off (void)
/* **************************************************************** */
/* */
+/* Controlling color for a portion of the line */
+/* */
+/* **************************************************************** */
+
+/* Reset the region color variables to VALUE depending on WHICH (0 == start,
+ 1 == end). This is where all the memory allocation for the color variable
+ strings is performed. We might want to pass a flag saying whether or not
+ to translate VALUE like a key sequence, but it doesn't really matter. */
+int
+_rl_reset_region_color (int which, const char *value)
+{
+ int len;
+
+ if (which == 0)
+ {
+ xfree (_rl_active_region_start_color);
+ if (value && *value)
+ {
+ _rl_active_region_start_color = (char *)xmalloc (2 * strlen (value) + 1);
+ rl_translate_keyseq (value, _rl_active_region_start_color, &len);
+ _rl_active_region_start_color[len] = '\0';
+ }
+ else
+ _rl_active_region_start_color = NULL;
+ }
+ else
+ {
+ xfree (_rl_active_region_end_color);
+ if (value && *value)
+ {
+ _rl_active_region_end_color = (char *)xmalloc (2 * strlen (value) + 1);
+ rl_translate_keyseq (value, _rl_active_region_end_color, &len);
+ _rl_active_region_end_color[len] = '\0';
+ }
+ else
+ _rl_active_region_end_color = NULL;
+ }
+
+ return 0;
+}
+
+void
+_rl_region_color_on (void)
+{
+#ifndef __MSDOS__
+ if (_rl_active_region_start_color && _rl_active_region_end_color)
+ tputs (_rl_active_region_start_color, 1, _rl_output_character_function);
+#endif
+}
+
+void
+_rl_region_color_off (void)
+{
+#ifndef __MSDOS__
+ if (_rl_active_region_start_color && _rl_active_region_end_color)
+ tputs (_rl_active_region_end_color, 1, _rl_output_character_function);
+#endif
+}
+
+/* **************************************************************** */
+/* */
/* Controlling the Meta Key and Keypad */
/* */
/* **************************************************************** */