From b1b0b2d7c8574132c39d819dc54522b4fe7e6df9 Mon Sep 17 00:00:00 2001
From: Chet Ramey
Date: Wed, 23 Nov 2011 19:26:12 -0500
Subject: [PATCH] Readline-6.2 import
---
CHANGELOG | 16 +
CHANGES | 64 +
INSTALL | 2 +-
MANIFEST | 1 +
Makefile.in | 30 +-
NEWS | 46 +-
README | 2 +-
aclocal.m4 | 52 +
bind.c | 28 +-
callback.c | 9 +
complete.c | 260 +++-
configure | 225 ++-
configure.in | 6 +-
doc/._fdl.texi | Bin 4096 -> 0 bytes
doc/history.0 | 63 +-
doc/history.3 | 25 +-
doc/history.dvi | Bin 85440 -> 86016 bytes
doc/history.html | 22 +-
doc/history.info | 87 +-
doc/history.pdf | Bin 158056 -> 158355 bytes
doc/history.ps | 279 ++--
doc/history.texi | 2 +-
doc/history_3.ps | 635 ++++----
doc/hstech.texi | 6 +-
doc/hsuser.texi | 13 +-
doc/readline.0 | 66 +-
doc/readline.3 | 65 +-
doc/readline.dvi | Bin 296928 -> 300184 bytes
doc/readline.html | 1522 +++++++++----------
doc/readline.info | 319 ++--
doc/readline.pdf | Bin 296621 -> 299675 bytes
doc/readline.ps | 3351 +++++++++++++++++++++---------------------
doc/readline_3.ps | 1335 +++++++++--------
doc/rlman.texi | 2 +-
doc/rltech.texi | 21 +-
doc/rluser.texi | 86 +-
doc/rluserman.dvi | Bin 100828 -> 102724 bytes
doc/rluserman.html | 407 ++---
doc/rluserman.info | 104 +-
doc/rluserman.pdf | Bin 170399 -> 172796 bytes
doc/rluserman.ps | 1867 +++++++++++------------
doc/rluserman.texi | 2 +-
doc/version.texi | 12 +-
examples/Makefile.in | 30 +-
examples/rlfe/os.h | 3 +-
funmap.c | 7 +-
histexpand.c | 121 +-
histfile.c | 17 +-
history.c | 2 +-
input.c | 14 +-
isearch.c | 35 +-
keymaps.c | 6 +-
keymaps.h | 5 -
kill.c | 6 +-
misc.c | 8 +-
nls.c | 2 +-
patchlevel | 2 +-
readline.c | 6 +-
readline.h | 70 +-
rlprivate.h | 35 +-
rltty.c | 4 +-
savestring.c | 6 +-
search.c | 2 +-
shell.c | 4 +-
shlib/Makefile.in | 14 +-
signals.c | 1 +
terminal.c | 6 +-
text.c | 65 +-
tilde.c | 4 +-
util.c | 51 +-
vi_mode.c | 558 +++++--
xfree.c | 50 +
xmalloc.c | 10 -
73 files changed, 6758 insertions(+), 5418 deletions(-)
delete mode 100644 doc/._fdl.texi
create mode 100644 xfree.c
diff --git a/CHANGELOG b/CHANGELOG
index 717fbe4..5513f12 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1077,3 +1077,19 @@ doc/Makefile.in
-----
[readline-6.1 frozen]
+ 2/5/2010
+ --------
+examples/Makefile.in
+ - make sure to install example C files using $(srcdir)/$$f in case
+ we're building outside the source directory. Bug report and fix
+ from Peter Breitenlohner
+
+ 7/25
+ ----
+xfree.c
+ - new file with xfree() implementation, moved from xmalloc.c
+
+ 12/28
+ -----
+{examples,shlib}/Makefile.in
+ - Cygwin-based changes from Eric Blake
diff --git a/CHANGES b/CHANGES
index 2ac0d45..9d58988 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,67 @@
+This document details the changes between this version, readline-6.2,
+and the previous version, readline-6.1.
+
+1. Changes to Readline
+
+a. Fixed a bug that caused the unconverted filename to be added to the list of
+ completions when the application specified filename conversion functions.
+
+b. Fixed a bug that caused the wrong filename to be passed to opendir when the
+ application has specified a filename dequoting function.
+
+c. Fixed a bug when repeating a character search in vi mode in the case where
+ there was no search to repeat.
+
+d. When show-all-if-ambiguous is set, the completion routines no longer insert
+ a common match prefix that is shorter than the text being completed.
+
+e. The full set of vi editing commands may now be used in callback mode.
+
+f. Fixed a bug that caused readline to not update its idea of the terminal
+ dimensions while running in `no-echo' mode.
+
+h. Fixed a bug that caused readline to dump core if an application called
+ rl_prep_terminal without setting rl_instream.
+
+i. Fixed a bug that caused meta-prefixed characters bound to incremental
+ search forward or backward to not be recognized if they were typed
+ subsequently.
+
+j. The incremental search code treats key sequences that map to the same
+ functions as (default) ^G, ^W, and ^Y as equivalent to those characters.
+
+k. Fixed a bug in menu-complete that caused it to misbehave with large
+ negative argument.
+
+l. Fixed a bug that caused vi-mode yank-last-arg to ring the bell when invoked
+ at the end of the line.
+
+m. Fixed a bug that made an explicit argument of 0 to yank-last-arg behave
+ as if it were a negative argument.
+
+n. Fixed a bug that caused directory names in words to be completed to not
+ be dequoted correctly.
+
+2. New Features in Readline
+
+a. The history library does not try to write the history filename in the
+ current directory if $HOME is unset. This closes a potential security
+ problem if the application does not specify a history filename.
+
+b. New bindable variable `completion-display-width' to set the number of
+ columns used when displaying completions.
+
+c. New bindable variable `completion-case-map' to cause case-insensitive
+ completion to treat `-' and `_' as identical.
+
+d. There are new bindable vi-mode command names to avoid readline's case-
+ insensitive matching not allowing them to be bound separately.
+
+e. New bindable variable `menu-complete-display-prefix' causes the menu
+ completion code to display the common prefix of the possible completions
+ before cycling through the list, instead of after.
+
+-------------------------------------------------------------------------------
This document details the changes between this version, readline-6.1,
and the previous version, readline-6.0.
diff --git a/INSTALL b/INSTALL
index 6e46a0b..a0b0976 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
Basic Installation
==================
-These are installation instructions for Readline-6.1.
+These are installation instructions for Readline-6.2.
The simplest way to compile readline is:
diff --git a/MANIFEST b/MANIFEST
index 47505e0..8972bdd 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -71,6 +71,7 @@ undo.c f
util.c f
vi_keymap.c f
vi_mode.c f
+xfree.c f
xmalloc.c f
history.c f
histexpand.c f
diff --git a/Makefile.in b/Makefile.in
index 402b8e9..de440f4 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -68,7 +68,7 @@ man3dir = $(mandir)/man3
DESTDIR =
# Programs to make tags files.
-ETAGS = etags -tw
+ETAGS = etags
CTAGS = ctags -tw
CFLAGS = @CFLAGS@
@@ -107,7 +107,7 @@ CSOURCES = $(srcdir)/readline.c $(srcdir)/funmap.c $(srcdir)/keymaps.c \
$(srcdir)/display.c $(srcdir)/signals.c $(srcdir)/emacs_keymap.c \
$(srcdir)/vi_keymap.c $(srcdir)/util.c $(srcdir)/kill.c \
$(srcdir)/undo.c $(srcdir)/macro.c $(srcdir)/input.c \
- $(srcdir)/callback.c $(srcdir)/terminal.c $(srcdir)/xmalloc.c \
+ $(srcdir)/callback.c $(srcdir)/terminal.c $(srcdir)/xmalloc.c $(srcdir)/xfree.c \
$(srcdir)/history.c $(srcdir)/histsearch.c $(srcdir)/histexpand.c \
$(srcdir)/histfile.c $(srcdir)/nls.c $(srcdir)/search.c \
$(srcdir)/shell.c $(srcdir)/savestring.c $(srcdir)/tilde.c \
@@ -115,17 +115,20 @@ CSOURCES = $(srcdir)/readline.c $(srcdir)/funmap.c $(srcdir)/keymaps.c \
$(srcdir)/mbutil.c
# The header files for this library.
-HSOURCES = readline.h rldefs.h chardefs.h keymaps.h history.h histlib.h \
- posixstat.h posixdir.h posixjmp.h tilde.h rlconf.h rltty.h \
- ansi_stdlib.h tcap.h rlstdc.h xmalloc.h rlprivate.h rlshell.h \
- rltypedefs.h rlmbutil.h
+HSOURCES = $(srcdir)/readline.h $(srcdir)/rldefs.h $(srcdir)/chardefs.h \
+ $(srcdir)/keymaps.h $(srcdir)/history.h $(srcdir)/histlib.h \
+ $(srcdir)/posixstat.h $(srcdir)/posixdir.h $(srcdir)/posixjmp.h \
+ $(srcdir)/tilde.h $(srcdir)/rlconf.h $(srcdir)/rltty.h \
+ $(srcdir)/ansi_stdlib.h $(srcdir)/tcap.h $(srcdir)/rlstdc.h \
+ $(srcdir)/xmalloc.h $(srcdir)/rlprivate.h $(srcdir)/rlshell.h \
+ $(srcdir)/rltypedefs.h $(srcdir)/rlmbutil.h
HISTOBJ = history.o histexpand.o histfile.o histsearch.o shell.o mbutil.o
TILDEOBJ = tilde.o
OBJECTS = readline.o vi_mode.o funmap.o keymaps.o parens.o search.o \
rltty.o complete.o bind.o isearch.o display.o signals.o \
util.o kill.o undo.o macro.o input.o callback.o terminal.o \
- text.o nls.o misc.o compat.o xmalloc.o $(HISTOBJ) $(TILDEOBJ)
+ text.o nls.o misc.o compat.o xfree.o xmalloc.o $(HISTOBJ) $(TILDEOBJ)
# The texinfo files which document this library.
DOCSOURCE = doc/rlman.texinfo doc/rltech.texinfo doc/rluser.texinfo
@@ -156,9 +159,9 @@ libreadline.a: $(OBJECTS)
$(AR) $(ARFLAGS) $@ $(OBJECTS)
-test -n "$(RANLIB)" && $(RANLIB) $@
-libhistory.a: $(HISTOBJ) xmalloc.o
+libhistory.a: $(HISTOBJ) xmalloc.o xfree.o
$(RM) $@
- $(AR) $(ARFLAGS) $@ $(HISTOBJ) xmalloc.o
+ $(AR) $(ARFLAGS) $@ $(HISTOBJ) xmalloc.o xfree.o
-test -n "$(RANLIB)" && $(RANLIB) $@
# Since tilde.c is shared between readline and bash, make sure we compile
@@ -264,10 +267,10 @@ uninstall-doc:
fi )
TAGS: force
- $(ETAGS) $(CSOURCES) $(HSOURCES)
+ -( cd $(srcdir) && $(ETAGS) $(CSOURCES) $(HSOURCES) )
tags: force
- $(CTAGS) $(CSOURCES) $(HSOURCES)
+ -( cd $(srcdir) && $(CTAGS) $(CSOURCES) $(HSOURCES) )
clean: force
$(RM) $(OBJECTS) $(STATIC_LIBS)
@@ -408,6 +411,8 @@ util.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h rlstdc.h
vi_mode.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
vi_mode.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h
vi_mode.o: history.h ansi_stdlib.h rlstdc.h
+xfree.o: ${BUILD_DIR}/config.h
+xfree.o: ansi_stdlib.h
xmalloc.o: ${BUILD_DIR}/config.h
xmalloc.o: ansi_stdlib.h
@@ -465,6 +470,7 @@ tilde.o: xmalloc.h
undo.o: xmalloc.h
util.o: xmalloc.h
vi_mode.o: xmalloc.h
+xfree.o: xmalloc.h
xmalloc.o: xmalloc.h
complete.o: rlmbutil.h
@@ -506,6 +512,7 @@ tilde.o: $(srcdir)/tilde.c
undo.o: $(srcdir)/undo.c
util.o: $(srcdir)/util.c
vi_mode.o: $(srcdir)/vi_mode.c
+xfree.o: $(srcdir)/xfree.c
xmalloc.o: $(srcdir)/xmalloc.c
histexpand.o: $(srcdir)/histexpand.c
@@ -540,6 +547,7 @@ tilde.o: tilde.c
undo.o: undo.c
util.o: util.c
vi_mode.o: vi_mode.c
+xfree.o: xfree.c
xmalloc.o: xmalloc.c
histexpand.o: histexpand.c
diff --git a/NEWS b/NEWS
index f78100c..0ec6e09 100644
--- a/NEWS
+++ b/NEWS
@@ -1,37 +1,19 @@
-This is a terse description of the new features added to readline-6.1 since
-the release of readline-6.0.
+This is a terse description of the new features added to readline-6.2 since
+the release of readline-6.1.
-1. New Features in Readline
+a. The history library does not try to write the history filename in the
+ current directory if $HOME is unset. This closes a potential security
+ problem if the application does not specify a history filename.
-a. New bindable function: menu-complete-backward.
+b. New bindable variable `completion-display-width' to set the number of
+ columns used when displaying completions.
-b. In the vi insertion keymap, C-n is now bound to menu-complete by default,
- and C-p to menu-complete-backward.
+c. New bindable variable `completion-case-map' to cause case-insensitive
+ completion to treat `-' and `_' as identical.
-c. When in vi command mode, repeatedly hitting ESC now does nothing, even
- when ESC introduces a bound key sequence. This is closer to how
- historical vi behaves.
+d. There are new bindable vi-mode command names to avoid readline's case-
+ insensitive matching not allowing them to be bound separately.
-d. New bindable function: skip-csi-sequence. Can be used as a default to
- consume key sequences generated by keys like Home and End without having
- to bind all keys.
-
-e. New application-settable function: rl_filename_rewrite_hook. Can be used
- to rewite or modify filenames read from the file system before they are
- compared to the word to be completed.
-
-f. New bindable variable: skip-completed-text, active when completing in the
- middle of a word. If enabled, it means that characters in the completion
- that match characters in the remainder of the word are "skipped" rather
- than inserted into the line.
-
-g. The pre-readline-6.0 version of menu completion is available as
- "old-menu-complete" for users who do not like the readline-6.0 version.
-
-h. New bindable variable: echo-control-characters. If enabled, and the
- tty ECHOCTL bit is set, controls the echoing of characters corresponding
- to keyboard-generated signals.
-
-i. New bindable variable: enable-meta-key. Controls whether or not readline
- sends the smm/rmm sequences if the terminal indicates it has a meta key
- that enables eight-bit characters.
+e. New bindable variable `menu-complete-display-prefix' causes the menu
+ completion code to display the common prefix of the possible completions
+ before cycling through the list, instead of after.
diff --git a/README b/README
index 7e18801..bc89f46 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
Introduction
============
-This is the Gnu Readline library, version 6.1.
+This is the Gnu Readline library, version 6.2.
The Readline library provides a set of functions for use by applications
that allow users to edit command lines as they are typed in. Both
diff --git a/aclocal.m4 b/aclocal.m4
index 10a4741..716a043 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1695,8 +1695,10 @@ AC_CHECK_HEADERS(langinfo.h)
AC_CHECK_FUNC(mbrlen, AC_DEFINE(HAVE_MBRLEN))
AC_CHECK_FUNC(mbscasecmp, AC_DEFINE(HAVE_MBSCMP))
AC_CHECK_FUNC(mbscmp, AC_DEFINE(HAVE_MBSCMP))
+AC_CHECK_FUNC(mbsnrtowcs, AC_DEFINE(HAVE_MBSNRTOWCS))
AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS))
+
AC_REPLACE_FUNCS(mbschr)
AC_CHECK_FUNC(wcrtomb, AC_DEFINE(HAVE_WCRTOMB))
@@ -1705,6 +1707,8 @@ AC_CHECK_FUNC(wcsdup, AC_DEFINE(HAVE_WCSDUP))
AC_CHECK_FUNC(wcwidth, AC_DEFINE(HAVE_WCWIDTH))
AC_CHECK_FUNC(wctype, AC_DEFINE(HAVE_WCTYPE))
+AC_REPLACE_FUNCS(wcswidth)
+
dnl checks for both mbrtowc and mbstate_t
AC_FUNC_MBRTOWC
if test $ac_cv_func_mbrtowc = yes; then
@@ -4115,3 +4119,51 @@ main()
[Define if you have a standard-conformant vsnprintf function.])
fi
])
+
+AC_DEFUN(BASH_STRUCT_WEXITSTATUS_OFFSET,
+[AC_MSG_CHECKING(for offset of exit status in return status from wait)
+AC_CACHE_VAL(bash_cv_wexitstatus_offset,
+[AC_RUN_IFELSE([
+#include
+#include
+
+#include
+
+main(c, v)
+ int c;
+ char **v;
+{
+ pid_t pid, p;
+ int s, i, n;
+
+ s = 0;
+ pid = fork();
+ if (pid == 0)
+ exit (42);
+
+ /* wait for the process */
+ p = wait(&s);
+ if (p != pid)
+ exit (255);
+
+ /* crack s */
+ for (i = 0; i < (sizeof(s) - 8); i++)
+ {
+ n = (s >> i) & 0xff;
+ if (n == 42)
+ exit (i);
+ }
+
+ exit (254);
+}
+], bash_cv_wexitstatus_offset=0, bash_cv_wexitstatus_offset=$?,
+ [AC_MSG_WARN(cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0)
+ bash_cv_wexitstatus_offset=0]
+)])
+if test "$bash_cv_wexitstatus_offset" -gt 32 ; then
+ AC_MSG_WARN(bad exit status from test program -- defaulting to 0)
+ bash_cv_wexitstatus_offset=0
+fi
+AC_MSG_RESULT($bash_cv_wexitstatus_offset)
+AC_DEFINE_UNQUOTED([WEXITSTATUS_OFFSET], [$bash_cv_wexitstatus_offset], [Offset of exit status in wait status word])
+])
diff --git a/bind.c b/bind.c
index fc8c2a2..59e7964 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-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2010 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.
@@ -1424,6 +1424,7 @@ static const struct {
{ "blink-matching-paren", &rl_blink_matching_paren, V_SPECIAL },
{ "byte-oriented", &rl_byte_oriented, 0 },
{ "completion-ignore-case", &_rl_completion_case_fold, 0 },
+ { "completion-map-case", &_rl_completion_case_map, 0 },
{ "convert-meta", &_rl_convert_meta_chars_to_ascii, 0 },
{ "disable-completion", &rl_inhibit_completion, 0 },
{ "echo-control-characters", &_rl_echo_control_chars, 0 },
@@ -1437,6 +1438,7 @@ static const struct {
{ "mark-modified-lines", &_rl_mark_modified_lines, 0 },
{ "mark-symlinked-directories", &_rl_complete_mark_symlink_dirs, 0 },
{ "match-hidden-files", &_rl_match_hidden_files, 0 },
+ { "menu-complete-display-prefix", &_rl_menu_complete_prefix_first, 0 },
{ "meta-flag", &_rl_meta_flag, 0 },
{ "output-meta", &_rl_output_meta_chars, 0 },
{ "page-completions", &_rl_page_completions, 0 },
@@ -1449,7 +1451,7 @@ static const struct {
#if defined (VISIBLE_STATS)
{ "visible-stats", &rl_visible_stats, 0 },
#endif /* VISIBLE_STATS */
- { (char *)NULL, (int *)NULL }
+ { (char *)NULL, (int *)NULL, 0 }
};
static int
@@ -1504,6 +1506,7 @@ static int sv_bell_style PARAMS((const char *));
static int sv_combegin PARAMS((const char *));
static int sv_dispprefix PARAMS((const char *));
static int sv_compquery PARAMS((const char *));
+static int sv_compwidth PARAMS((const char *));
static int sv_editmode PARAMS((const char *));
static int sv_histsize PARAMS((const char *));
static int sv_isrchterm PARAMS((const char *));
@@ -1516,13 +1519,14 @@ static const struct {
} string_varlist[] = {
{ "bell-style", V_STRING, sv_bell_style },
{ "comment-begin", V_STRING, sv_combegin },
+ { "completion-display-width", V_INT, sv_compwidth },
{ "completion-prefix-display-length", V_INT, sv_dispprefix },
{ "completion-query-items", V_INT, sv_compquery },
{ "editing-mode", V_STRING, sv_editmode },
{ "history-size", V_INT, sv_histsize },
{ "isearch-terminators", V_STRING, sv_isrchterm },
{ "keymap", V_STRING, sv_keymap },
- { (char *)NULL, 0 }
+ { (char *)NULL, 0, (_rl_sv_func_t *)0 }
};
static int
@@ -1662,6 +1666,19 @@ sv_compquery (value)
return 0;
}
+static int
+sv_compwidth (value)
+ const char *value;
+{
+ int nval = -1;
+
+ if (value && *value)
+ nval = atoi (value);
+
+ _rl_completion_columns = nval;
+ return 0;
+}
+
static int
sv_histsize (value)
const char *value;
@@ -2268,6 +2285,11 @@ _rl_get_string_variable_value (name)
}
else if (_rl_stricmp (name, "comment-begin") == 0)
return (_rl_comment_begin ? _rl_comment_begin : RL_COMMENT_BEGIN_DEFAULT);
+ else if (_rl_stricmp (name, "completion-display-width") == 0)
+ {
+ sprintf (numbuf, "%d", _rl_completion_columns);
+ return (numbuf);
+ }
else if (_rl_stricmp (name, "completion-prefix-display-length") == 0)
{
sprintf (numbuf, "%d", _rl_completion_prefix_display_length);
diff --git a/callback.c b/callback.c
index 6c52ac0..4ee6361 100644
--- a/callback.c
+++ b/callback.c
@@ -142,6 +142,15 @@ rl_callback_read_char ()
eof = _rl_nsearch_callback (_rl_nscxt);
return;
}
+#if defined (VI_MODE)
+ else if (RL_ISSTATE (RL_STATE_VIMOTION))
+ {
+ eof = _rl_vi_domove_callback (_rl_vimvcxt);
+ /* Should handle everything, including cleanup, numeric arguments,
+ and turning off RL_STATE_VIMOTION */
+ return;
+ }
+#endif
else if (RL_ISSTATE (RL_STATE_NUMERICARG))
{
eof = _rl_arg_callback (_rl_argcxt);
diff --git a/complete.c b/complete.c
index bda2204..e67cfeb 100644
--- a/complete.c
+++ b/complete.c
@@ -1,6 +1,6 @@
/* complete.c -- filename completion for readline. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2011 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.
@@ -119,9 +119,11 @@ static char **remove_duplicate_matches PARAMS((char **));
static void insert_match PARAMS((char *, int, int, char *));
static int append_to_match PARAMS((char *, int, int, int));
static void insert_all_matches PARAMS((char **, int, char *));
+static int complete_fncmp PARAMS((const char *, int, const char *, int));
static void display_matches PARAMS((char **));
static int compute_lcd_of_matches PARAMS((char **, int, const char *));
static int postprocess_matches PARAMS((char ***, int));
+static int complete_get_screenwidth PARAMS((void));
static char *make_quoted_replacement PARAMS((char *, int, char *));
@@ -157,10 +159,14 @@ int _rl_print_completions_horizontally;
#if defined (__MSDOS__) && !defined (__DJGPP__)
int _rl_completion_case_fold = 1;
#else
-int _rl_completion_case_fold;
+int _rl_completion_case_fold = 0;
#endif
-/* If non-zero, don't match hidden files (filenames beginning with a `.' on
+/* Non-zero means that `-' and `_' are equivalent when comparing filenames
+ for completion. */
+int _rl_completion_case_map = 0;
+
+/* If zero, don't match hidden files (filenames beginning with a `.' on
Unix) when doing filename completion. */
int _rl_match_hidden_files = 1;
@@ -170,6 +176,10 @@ int _rl_match_hidden_files = 1;
display prefix replaced with an ellipsis. */
int _rl_completion_prefix_display_length = 0;
+/* The readline-private number of screen columns to use when displaying
+ matches. If < 0 or > _rl_screenwidth, it is ignored. */
+int _rl_completion_columns = -1;
+
/* Global variables available to applications using readline. */
#if defined (VISIBLE_STATS)
@@ -185,6 +195,10 @@ int rl_visible_stats = 0;
after the `e' in `Makefile' won't result in `Makefilefile'. */
int _rl_skip_completed_text = 0;
+/* If non-zero, menu completion displays the common prefix first in the
+ cycle of possible completions instead of the last. */
+int _rl_menu_complete_prefix_first = 0;
+
/* If non-zero, then this is the address of a function to call when
completing on a directory name. The function is called with
the address of a string (the current directory name) as an arg. */
@@ -467,6 +481,14 @@ get_y_or_n (for_pager)
{
int c;
+ /* For now, disable pager in callback mode, until we later convert to state
+ driven functions. Have to wait until next major version to add new
+ state definition, since it will change value of RL_STATE_DONE. */
+#if defined (READLINE_CALLBACKS)
+ if (RL_ISSTATE (RL_STATE_CALLBACK))
+ return 1;
+#endif
+
for (;;)
{
RL_SETSTATE(RL_STATE_MOREINPUT);
@@ -829,7 +851,7 @@ print_filename (to_print, full_pathname, prefix_bytes)
if (path_isdir (new_full_pathname))
extension_char = '/';
- free (new_full_pathname);
+ xfree (new_full_pathname);
to_print[-1] = c;
}
else
@@ -844,7 +866,7 @@ print_filename (to_print, full_pathname, prefix_bytes)
extension_char = '/';
}
- free (s);
+ xfree (s);
if (extension_char)
{
putc (extension_char, rl_outstream);
@@ -1081,7 +1103,7 @@ remove_duplicate_matches (matches)
{
if (strcmp (matches[i], matches[i + 1]) == 0)
{
- free (matches[i]);
+ xfree (matches[i]);
matches[i] = (char *)&dead_slot;
}
else
@@ -1099,7 +1121,7 @@ remove_duplicate_matches (matches)
temp_array[j] = (char *)NULL;
if (matches[0] != (char *)&dead_slot)
- free (matches[0]);
+ xfree (matches[0]);
/* Place the lowest common denominator back in [0]. */
temp_array[0] = lowest_common;
@@ -1109,7 +1131,7 @@ remove_duplicate_matches (matches)
insert. */
if (j == 2 && strcmp (temp_array[0], temp_array[1]) == 0)
{
- free (temp_array[1]);
+ xfree (temp_array[1]);
temp_array[1] = (char *)NULL;
}
return (temp_array);
@@ -1288,7 +1310,7 @@ postprocess_matches (matchesp, matching_filenames)
if (rl_ignore_completion_duplicates)
{
temp_matches = remove_duplicate_matches (matches);
- free (matches);
+ xfree (matches);
matches = temp_matches;
}
@@ -1325,6 +1347,23 @@ postprocess_matches (matchesp, matching_filenames)
return (1);
}
+static int
+complete_get_screenwidth ()
+{
+ int cols;
+ char *envcols;
+
+ cols = _rl_completion_columns;
+ if (cols >= 0 && cols <= _rl_screenwidth)
+ return cols;
+ envcols = getenv ("COLUMNS");
+ if (envcols && *envcols)
+ cols = atoi (envcols);
+ if (cols >= 0 && cols <= _rl_screenwidth)
+ return cols;
+ return _rl_screenwidth;
+}
+
/* A convenience function for displaying a list of strings in
columnar format on readline's output stream. MATCHES is the list
of strings, in argv format, LEN is the number of strings in MATCHES,
@@ -1334,7 +1373,7 @@ rl_display_match_list (matches, len, max)
char **matches;
int len, max;
{
- int count, limit, printed_len, lines;
+ int count, limit, printed_len, lines, cols;
int i, j, k, l, common_length, sind;
char *temp, *t;
@@ -1355,12 +1394,17 @@ rl_display_match_list (matches, len, max)
}
/* How many items of MAX length can we fit in the screen window? */
+ cols = complete_get_screenwidth ();
max += 2;
- limit = _rl_screenwidth / max;
- if (limit != 1 && (limit * max == _rl_screenwidth))
+ limit = cols / max;
+ if (limit != 1 && (limit * max == cols))
limit--;
- /* Avoid a possible floating exception. If max > _rl_screenwidth,
+ /* If cols == 0, limit will end up -1 */
+ if (cols < _rl_screenwidth && limit < 0)
+ limit = 1;
+
+ /* Avoid a possible floating exception. If max > cols,
limit will be 0 and a divide-by-zero fault will result. */
if (limit == 0)
limit = 1;
@@ -1608,7 +1652,7 @@ insert_match (match, start, mtype, qc)
else
_rl_replace_text (replacement, start, end);
if (replacement != match)
- free (replacement);
+ xfree (replacement);
}
}
@@ -1675,7 +1719,7 @@ append_to_match (text, delimiter, quote_char, nontrivial_match)
if (rl_point == rl_end && temp_string_index)
rl_insert_text (temp_string);
}
- free (filename);
+ xfree (filename);
}
else
{
@@ -1711,7 +1755,7 @@ insert_all_matches (matches, point, qc)
rl_insert_text (rp);
rl_insert_text (" ");
if (rp != matches[i])
- free (rp);
+ xfree (rp);
}
}
else
@@ -1720,7 +1764,7 @@ insert_all_matches (matches, point, qc)
rl_insert_text (rp);
rl_insert_text (" ");
if (rp != matches[0])
- free (rp);
+ xfree (rp);
}
rl_end_undo_group ();
}
@@ -1735,8 +1779,8 @@ _rl_free_match_list (matches)
return;
for (i = 0; matches[i]; i++)
- free (matches[i]);
- free (matches);
+ xfree (matches[i]);
+ xfree (matches);
}
/* Complete the word at or before point.
@@ -1757,6 +1801,9 @@ rl_complete_internal (what_to_do)
int start, end, delimiter, found_quote, i, nontrivial_lcd;
char *text, *saved_line_buffer;
char quote_char;
+#if 1
+ int tlen, mlen;
+#endif
RL_SETSTATE(RL_STATE_COMPLETING);
@@ -1784,7 +1831,11 @@ rl_complete_internal (what_to_do)
/* nontrivial_lcd is set if the common prefix adds something to the word
being completed. */
nontrivial_lcd = matches && strcmp (text, matches[0]) != 0;
- free (text);
+#if 1
+ if (what_to_do == '!' || what_to_do == '@')
+ tlen = strlen (text);
+#endif
+ xfree (text);
if (matches == 0)
{
@@ -1817,8 +1868,25 @@ rl_complete_internal (what_to_do)
case '!':
case '@':
/* Insert the first match with proper quoting. */
+#if 0
if (*matches[0])
insert_match (matches[0], start, matches[1] ? MULT_MATCH : SINGLE_MATCH, "e_char);
+#else
+ if (what_to_do == TAB)
+ {
+ if (*matches[0])
+ insert_match (matches[0], start, matches[1] ? MULT_MATCH : SINGLE_MATCH, "e_char);
+ }
+ else if (*matches[0] && matches[1] == 0)
+ /* should we perform the check only if there are multiple matches? */
+ insert_match (matches[0], start, matches[1] ? MULT_MATCH : SINGLE_MATCH, "e_char);
+ else if (*matches[0]) /* what_to_do != TAB && multiple matches */
+ {
+ mlen = *matches[0] ? strlen (matches[0]) : 0;
+ if (mlen >= tlen)
+ insert_match (matches[0], start, matches[1] ? MULT_MATCH : SINGLE_MATCH, "e_char);
+ }
+#endif
/* If there are more matches, ring the bell to indicate.
If we are in vi mode, Posix.2 says to not ring the bell.
@@ -1872,7 +1940,7 @@ rl_complete_internal (what_to_do)
if (saved_line_buffer)
{
completion_changed_buffer = strcmp (rl_line_buffer, saved_line_buffer) != 0;
- free (saved_line_buffer);
+ xfree (saved_line_buffer);
}
RL_UNSETSTATE(RL_STATE_COMPLETING);
@@ -1939,7 +2007,7 @@ rl_completion_matches (text, entry_function)
compute_lcd_of_matches (match_list, matches, text);
else /* There were no matches. */
{
- free (match_list);
+ xfree (match_list);
match_list = (char **)NULL;
}
return (match_list);
@@ -2005,6 +2073,62 @@ rl_username_completion_function (text, state)
#endif /* !__WIN32__ && !__OPENNT */
}
+/* Return non-zero if CONVFN matches FILENAME up to the length of FILENAME
+ (FILENAME_LEN). If _rl_completion_case_fold is set, compare without
+ regard to the alphabetic case of characters. CONVFN is the possibly-
+ converted directory entry; FILENAME is what the user typed. */
+static int
+complete_fncmp (convfn, convlen, filename, filename_len)
+ const char *convfn;
+ int convlen;
+ const char *filename;
+ int filename_len;
+{
+ register char *s1, *s2;
+ int d, len;
+
+ /* Otherwise, if these match up to the length of filename, then
+ it is a match. */
+ if (_rl_completion_case_fold && _rl_completion_case_map)
+ {
+ /* Case-insensitive comparison treating _ and - as equivalent */
+ if (filename_len == 0)
+ return 1;
+ if (convlen < filename_len)
+ return 0;
+ s1 = (char *)convfn;
+ s2 = (char *)filename;
+ len = filename_len;
+ do
+ {
+ d = _rl_to_lower (*s1) - _rl_to_lower (*s2);
+ /* *s1 == [-_] && *s2 == [-_] */
+ if ((*s1 == '-' || *s1 == '_') && (*s2 == '-' || *s2 == '_'))
+ d = 0;
+ if (d != 0)
+ return 0;
+ s1++; s2++; /* already checked convlen >= filename_len */
+ }
+ while (--len != 0);
+ return 1;
+ }
+ else if (_rl_completion_case_fold)
+ {
+ if ((_rl_to_lower (convfn[0]) == _rl_to_lower (filename[0])) &&
+ (convlen >= filename_len) &&
+ (_rl_strnicmp (filename, convfn, filename_len) == 0))
+ return 1;
+ }
+ else
+ {
+ if ((convfn[0] == filename[0]) &&
+ (convlen >= filename_len) &&
+ (strncmp (filename, convfn, filename_len) == 0))
+ return 1;
+ }
+ return 0;
+}
+
/* Okay, now we write the entry_function for filename completion. In the
general case. Note that completion in the shell is a little different
because of all the pathnames that must be followed when looking up the
@@ -2071,32 +2195,41 @@ rl_filename_completion_function (text, state)
/* We aren't done yet. We also support the "~user" syntax. */
- /* Save the version of the directory that the user typed. */
- users_dirname = savestring (dirname);
+ /* Save the version of the directory that the user typed, dequoting
+ it if necessary. */
+ if (rl_completion_found_quote && rl_filename_dequoting_function)
+ users_dirname = (*rl_filename_dequoting_function) (dirname, rl_completion_quote_character);
+ else
+ users_dirname = savestring (dirname);
if (*dirname == '~')
{
temp = tilde_expand (dirname);
- free (dirname);
+ xfree (dirname);
dirname = temp;
}
+ /* We have saved the possibly-dequoted version of the directory name
+ the user typed. Now transform the directory name we're going to
+ pass to opendir(2). The directory rewrite hook modifies only the
+ directory name; the directory completion hook modifies both the
+ directory name passed to opendir(2) and the version the user
+ typed. Both the directory completion and rewrite hooks should perform
+ any necessary dequoting. The hook functions return 1 if they modify
+ the directory name argument. If either hook returns 0, it should
+ not modify the directory name pointer passed as an argument. */
if (rl_directory_rewrite_hook)
(*rl_directory_rewrite_hook) (&dirname);
-
- /* The directory completion hook should perform any necessary
- dequoting. */
- if (rl_directory_completion_hook && (*rl_directory_completion_hook) (&dirname))
+ else if (rl_directory_completion_hook && (*rl_directory_completion_hook) (&dirname))
{
- free (users_dirname);
+ xfree (users_dirname);
users_dirname = savestring (dirname);
}
else if (rl_completion_found_quote && rl_filename_dequoting_function)
{
/* delete single and double quotes */
- temp = (*rl_filename_dequoting_function) (users_dirname, rl_completion_quote_character);
- free (users_dirname);
- users_dirname = temp;
+ xfree (dirname);
+ dirname = savestring (users_dirname);
}
directory = opendir (dirname);
@@ -2105,7 +2238,7 @@ rl_filename_completion_function (text, state)
{
/* delete single and double quotes */
temp = (*rl_filename_dequoting_function) (filename, rl_completion_quote_character);
- free (filename);
+ xfree (filename);
filename = temp;
}
filename_len = strlen (filename);
@@ -2147,22 +2280,8 @@ rl_filename_completion_function (text, state)
}
else
{
- /* Otherwise, if these match up to the length of filename, then
- it is a match. */
- if (_rl_completion_case_fold)
- {
- if ((_rl_to_lower (convfn[0]) == _rl_to_lower (filename[0])) &&
- (convlen >= filename_len) &&
- (_rl_strnicmp (filename, convfn, filename_len) == 0))
- break;
- }
- else
- {
- if ((convfn[0] == filename[0]) &&
- (convlen >= filename_len) &&
- (strncmp (filename, convfn, filename_len) == 0))
- break;
- }
+ if (complete_fncmp (convfn, convlen, filename, filename_len))
+ break;
}
}
@@ -2175,17 +2294,17 @@ rl_filename_completion_function (text, state)
}
if (dirname)
{
- free (dirname);
+ xfree (dirname);
dirname = (char *)NULL;
}
if (filename)
{
- free (filename);
+ xfree (filename);
filename = (char *)NULL;
}
if (users_dirname)
{
- free (users_dirname);
+ xfree (users_dirname);
users_dirname = (char *)NULL;
}
@@ -2225,7 +2344,7 @@ rl_filename_completion_function (text, state)
temp = savestring (convfn);
if (convfn != dentry)
- free (convfn);
+ xfree (convfn);
return (temp);
}
@@ -2304,14 +2423,14 @@ rl_old_menu_complete (count, invoking_key)
if (matches == 0 || postprocess_matches (&matches, matching_filenames) == 0)
{
- rl_ding ();
+ rl_ding ();
FREE (matches);
matches = (char **)0;
FREE (orig_text);
orig_text = (char *)0;
- completion_changed_buffer = 0;
- RL_UNSETSTATE(RL_STATE_COMPLETING);
- return (0);
+ completion_changed_buffer = 0;
+ RL_UNSETSTATE(RL_STATE_COMPLETING);
+ return (0);
}
RL_UNSETSTATE(RL_STATE_COMPLETING);
@@ -2340,7 +2459,10 @@ rl_old_menu_complete (count, invoking_key)
match_list_index += count;
if (match_list_index < 0)
- match_list_index += match_list_size;
+ {
+ while (match_list_index < 0)
+ match_list_index += match_list_size;
+ }
else
match_list_index %= match_list_size;
@@ -2375,7 +2497,7 @@ rl_menu_complete (count, ignore)
static int full_completion = 0; /* set to 1 if menu completion should reinitialize on next call */
static int orig_start, orig_end;
static char quote_char;
- static int delimiter;
+ static int delimiter, cstate;
/* The first time through, we generate the list of matches and set things
up to insert them. */
@@ -2428,14 +2550,14 @@ rl_menu_complete (count, ignore)
if (matches == 0 || postprocess_matches (&matches, matching_filenames) == 0)
{
- rl_ding ();
+ rl_ding ();
FREE (matches);
matches = (char **)0;
FREE (orig_text);
orig_text = (char *)0;
- completion_changed_buffer = 0;
- RL_UNSETSTATE(RL_STATE_COMPLETING);
- return (0);
+ completion_changed_buffer = 0;
+ RL_UNSETSTATE(RL_STATE_COMPLETING);
+ return (0);
}
RL_UNSETSTATE(RL_STATE_COMPLETING);
@@ -2483,6 +2605,11 @@ rl_menu_complete (count, ignore)
full_completion = 1;
return (0);
}
+ else if (_rl_menu_complete_prefix_first && match_list_size > 1)
+ {
+ rl_ding ();
+ return (0);
+ }
}
/* Now we have the list of matches. Replace the text between
@@ -2500,7 +2627,10 @@ rl_menu_complete (count, ignore)
match_list_index += count;
if (match_list_index < 0)
- match_list_index += match_list_size;
+ {
+ while (match_list_index < 0)
+ match_list_index += match_list_size;
+ }
else
match_list_index %= match_list_size;
diff --git a/configure b/configure
index 868d29e..55b3e73 100755
--- a/configure
+++ b/configure
@@ -1,7 +1,7 @@
#! /bin/sh
-# From configure.in for Readline 6.1, version 2.66.
+# From configure.in for Readline 6.2, version 2.67.
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.63 for readline 6.1.
+# Generated by GNU Autoconf 2.63 for readline 6.2.
#
# Report bugs to .
#
@@ -597,8 +597,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='readline'
PACKAGE_TARNAME='readline'
-PACKAGE_VERSION='6.1'
-PACKAGE_STRING='readline 6.1'
+PACKAGE_VERSION='6.2'
+PACKAGE_STRING='readline 6.2'
PACKAGE_BUGREPORT='bug-readline@gnu.org'
ac_unique_file="readline.h"
@@ -1303,7 +1303,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures readline 6.1 to adapt to many kinds of systems.
+\`configure' configures readline 6.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1368,7 +1368,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of readline 6.1:";;
+ short | recursive ) echo "Configuration of readline 6.2:";;
esac
cat <<\_ACEOF
@@ -1464,7 +1464,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-readline configure 6.1
+readline configure 6.2
generated by GNU Autoconf 2.63
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1478,7 +1478,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by readline $as_me 6.1, which was
+It was created by readline $as_me 6.2, which was
generated by GNU Autoconf 2.63. Invocation command line was
$ $0 $@
@@ -1884,7 +1884,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
ac_config_headers="$ac_config_headers config.h"
-LIBVERSION=6.1
+LIBVERSION=6.2
# Make sure we can run config.sub.
$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
@@ -9028,6 +9028,98 @@ _ACEOF
fi
+{ $as_echo "$as_me:$LINENO: checking for mbsnrtowcs" >&5
+$as_echo_n "checking for mbsnrtowcs... " >&6; }
+if test "${ac_cv_func_mbsnrtowcs+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define mbsnrtowcs to an innocuous variant, in case declares mbsnrtowcs.
+ For example, HP-UX 11i declares gettimeofday. */
+#define mbsnrtowcs innocuous_mbsnrtowcs
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char mbsnrtowcs (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+
+#undef mbsnrtowcs
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char mbsnrtowcs ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_mbsnrtowcs || defined __stub___mbsnrtowcs
+choke me
+#endif
+
+int
+main ()
+{
+return mbsnrtowcs ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_func_mbsnrtowcs=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_mbsnrtowcs=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbsnrtowcs" >&5
+$as_echo "$ac_cv_func_mbsnrtowcs" >&6; }
+if test "x$ac_cv_func_mbsnrtowcs" = x""yes; then
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_MBSNRTOWCS 1
+_ACEOF
+
+fi
+
{ $as_echo "$as_me:$LINENO: checking for mbsrtowcs" >&5
$as_echo_n "checking for mbsrtowcs... " >&6; }
if test "${ac_cv_func_mbsrtowcs+set}" = set; then
@@ -9122,6 +9214,7 @@ fi
+
for ac_func in mbschr
do
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
@@ -9693,6 +9786,116 @@ fi
+for ac_func in wcswidth
+do
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$ac_func || defined __stub___$ac_func
+choke me
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ eval "$as_ac_var=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ case " $LIBOBJS " in
+ *" $ac_func.$ac_objext "* ) ;;
+ *) LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
+ ;;
+esac
+
+fi
+done
+
+
+
+
{ $as_echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5
$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; }
if test "${ac_cv_func_mbrtowc+set}" = set; then
@@ -10749,7 +10952,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by readline $as_me 6.1, which was
+This file was extended by readline $as_me 6.2, which was
generated by GNU Autoconf 2.63. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -10812,7 +11015,7 @@ Report bugs to ."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-readline config.status 6.1
+readline config.status 6.2
configured by $0, generated by GNU Autoconf 2.63,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/configure.in b/configure.in
index 532ffaa..0fba243 100644
--- a/configure.in
+++ b/configure.in
@@ -20,9 +20,9 @@ dnl Process this file with autoconf to produce a configure script.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
-AC_REVISION([for Readline 6.1, version 2.66])
+AC_REVISION([for Readline 6.2, version 2.67])
-AC_INIT(readline, 6.1, bug-readline@gnu.org)
+AC_INIT(readline, 6.2, bug-readline@gnu.org)
dnl make sure we are using a recent autoconf version
AC_PREREQ(2.50)
@@ -32,7 +32,7 @@ AC_CONFIG_AUX_DIR(./support)
AC_CONFIG_HEADERS(config.h)
dnl update the value of RL_READLINE_VERSION in readline.h when this changes
-LIBVERSION=6.1
+LIBVERSION=6.2
AC_CANONICAL_HOST
diff --git a/doc/._fdl.texi b/doc/._fdl.texi
deleted file mode 100644
index 02a6d1803590152f32c272760487df885e989c53..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc-jL100001
literal 4096
zc-rmPy9&ZE6b9haiinGwPEs;E1h0d1a&Z$uJGjP@XfRD`tf1n9_!vHu4`PjY0~dEW
z9~{E@NrsF+6l*2$0Y)q)<0+Yur+WrvH*J8**`02$TmZZPei}s41pI5^@d8e68ednu
zPhO2pLRp$BPS;yzna-r<&~(CXzt!w9-U)}&a$$Di(bxq|%t0!}sCa~c5JCtcgb+dq
zz00QeT7qaPH^lOd+1i*BVeE=XopDz?jb=*iiQ*z7bH()P-h=<{|L?dCL7v|Lg?}^K
diff --git a/doc/history.0 b/doc/history.0
index 2923769..50d6d37 100644
--- a/doc/history.0
+++ b/doc/history.0
@@ -6,7 +6,7 @@ NNAAMMEE
history - GNU History Library
CCOOPPYYRRIIGGHHTT
- The GNU History Library is Copyright (C) 1989-2002 by the Free Software
+ The GNU History Library is Copyright (C) 1989-2011 by the Free Software
Foundation, Inc.
DDEESSCCRRIIPPTTIIOONN
@@ -42,19 +42,21 @@ HHIISSTTOORRYY EEXXPPAANNSSIIOONN
EEvveenntt DDeessiiggnnaattoorrss
An event designator is a reference to a command line entry in the his-
- tory list.
+ tory list. Unless the reference is absolute, events are relative to
+ the current position in the history list.
- !! Start a history substitution, except when followed by a bbllaannkk,
+ !! Start a history substitution, except when followed by a bbllaannkk,
newline, = or (.
!!_n Refer to command line _n.
- !!--_n Refer to the current command line minus _n.
+ !!--_n Refer to the current command minus _n.
!!!! Refer to the previous command. This is a synonym for `!-1'.
!!_s_t_r_i_n_g
- Refer to the most recent command starting with _s_t_r_i_n_g.
+ Refer to the most recent command preceding the current position
+ in the history list starting with _s_t_r_i_n_g.
!!??_s_t_r_i_n_g[[??]]
- Refer to the most recent command containing _s_t_r_i_n_g. The trail-
- ing ?? may be omitted if _s_t_r_i_n_g is followed immediately by a new-
- line.
+ Refer to the most recent command preceding the current postition
+ in the history list containing _s_t_r_i_n_g. The trailing ?? may be
+ omitted if _s_t_r_i_n_g is followed immediately by a newline.
^^_s_t_r_i_n_g_1^^_s_t_r_i_n_g_2^^
Quick substitution. Repeat the last command, replacing _s_t_r_i_n_g_1
with _s_t_r_i_n_g_2. Equivalent to ``!!:s/_s_t_r_i_n_g_1/_s_t_r_i_n_g_2/'' (see MMoodd--
@@ -406,10 +408,13 @@ HHiissttoorryy FFuunnccttiioonnss
The maximum number of history entries. This must be changed using ssttii--
ffllee__hhiissttoorryy(()).
- _i_n_t hhiissttoorryy__wwrriittee__ttiimmeessttaammppss
+ _i_n_t hhiissttoorryy__wwiittee__ttiimmeessttaammppss
If non-zero, timestamps are written to the history file, so they can be
preserved between sessions. The default value is 0, meaning that time-
- stamps are not saved.
+ stamps are not saved. The current timestamp format uses the value of
+ _h_i_s_t_o_r_y___c_o_m_m_e_n_t___c_h_a_r to delimit timestamp entries in the history file.
+ If that variable does not have a value (the default), timestamps will
+ not be written.
_c_h_a_r hhiissttoorryy__eexxppaannssiioonn__cchhaarr
The character that introduces a history event. The default is !!. Set-
@@ -420,9 +425,9 @@ HHiissttoorryy FFuunnccttiioonnss
line. The default is ^^.
_c_h_a_r hhiissttoorryy__ccoommmmeenntt__cchhaarr
- 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.
+ 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.
_c_h_a_r _* hhiissttoorryy__wwoorrdd__ddeelliimmiitteerrss
@@ -431,12 +436,12 @@ HHiissttoorryy FFuunnccttiioonnss
_c_h_a_r _* hhiissttoorryy__nnoo__eexxppaanndd__cchhaarrss
The list of characters which inhibit history expansion if found immedi-
- ately following hhiissttoorryy__eexxppaannssiioonn__cchhaarr. The default is space, tab,
+ ately following hhiissttoorryy__eexxppaannssiioonn__cchhaarr. The default is space, tab,
newline, \\rr, and ==.
_c_h_a_r _* hhiissttoorryy__sseeaarrcchh__ddeelliimmiitteerr__cchhaarrss
- The list of additional characters which can delimit a history search
- string, in addition to space, tab, _: and _? in the case of a substring
+ The list of additional characters which can delimit a history search
+ string, in addition to space, tab, _: and _? in the case of a substring
search. The default is empty.
_i_n_t hhiissttoorryy__qquuootteess__iinnhhiibbiitt__eexxppaannssiioonn
@@ -444,12 +449,12 @@ HHiissttoorryy FFuunnccttiioonnss
sion character. The default value is 0.
_r_l___l_i_n_e_b_u_f___f_u_n_c___t _* hhiissttoorryy__iinnhhiibbiitt__eexxppaannssiioonn__ffuunnccttiioonn
- This should be set to the address of a function that takes two argu-
- ments: a cchhaarr ** (_s_t_r_i_n_g) and an iinntt index into that string (_i). It
- should return a non-zero value if the history expansion starting at
- _s_t_r_i_n_g_[_i_] should not be performed; zero if the expansion should be
- done. It is intended for use by applications like bbaasshh that use the
- history expansion character for additional purposes. By default, this
+ This should be set to the address of a function that takes two argu-
+ ments: a cchhaarr ** (_s_t_r_i_n_g) and an iinntt index into that string (_i). It
+ should return a non-zero value if the history expansion starting at
+ _s_t_r_i_n_g_[_i_] should not be performed; zero if the expansion should be
+ done. It is intended for use by applications like bbaasshh that use the
+ history expansion character for additional purposes. By default, this
variable is set to NNUULLLL.
FFIILLEESS
@@ -470,14 +475,14 @@ AAUUTTHHOORRSS
chet@ins.CWRU.Edu
BBUUGG RREEPPOORRTTSS
- If you find a bug in the hhiissttoorryy library, you should report it. But
- first, you should make sure that it really is a bug, and that it
+ If you find a bug in the hhiissttoorryy library, you should report it. But
+ first, you should make sure that it really is a bug, and that it
appears in the latest version of the hhiissttoorryy library that you have.
- Once you have determined that a bug actually exists, mail a bug report
- to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g. If you have a fix, you are welcome to mail
- that as well! Suggestions and `philosophical' bug reports may be
- mailed to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g or posted to the Usenet newsgroup
+ Once you have determined that a bug actually exists, mail a bug report
+ to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g. If you have a fix, you are welcome to mail
+ that as well! Suggestions and `philosophical' bug reports may be
+ mailed to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g or posted to the Usenet newsgroup
ggnnuu..bbaasshh..bbuugg.
Comments and bug reports concerning this manual page should be directed
@@ -485,4 +490,4 @@ BBUUGG RREEPPOORRTTSS
-GNU History 6.0 2003 July 31 HISTORY(3)
+GNU History 6.2 2010 August 12 HISTORY(3)
diff --git a/doc/history.3 b/doc/history.3
index 44d8cf3..4eb159c 100644
--- a/doc/history.3
+++ b/doc/history.3
@@ -6,9 +6,9 @@
.\" Case Western Reserve University
.\" chet@ins.CWRU.Edu
.\"
-.\" Last Change: Thu Jul 31 08:46:08 EDT 2003
+.\" Last Change: Thu Aug 12 22:24:41 EDT 2010
.\"
-.TH HISTORY 3 "2003 July 31" "GNU History 6.0"
+.TH HISTORY 3 "2010 August 12" "GNU History 6.2"
.\"
.\" File Name macro. This used to be `.PN', for Path Name,
.\" but Sun doesn't seem to like that very much.
@@ -40,8 +40,8 @@
.SH NAME
history \- GNU History Library
.SH COPYRIGHT
-.if t The GNU History Library is Copyright \(co 1989-2002 by the Free Software Foundation, Inc.
-.if n The GNU History Library is Copyright (C) 1989-2002 by the Free Software Foundation, Inc.
+.if t The GNU History Library is Copyright \(co 1989-2011 by the Free Software Foundation, Inc.
+.if n The GNU History Library is Copyright (C) 1989-2011 by the Free Software Foundation, Inc.
.SH DESCRIPTION
Many programs read input from the user a line at a time. The GNU
History library is able to keep track of those lines, associate arbitrary
@@ -83,6 +83,8 @@ the history expansion character.
.PP
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.
.PP
.PD 0
.TP
@@ -96,18 +98,22 @@ Refer to command line
.IR n .
.TP
.B !\-\fIn\fR
-Refer to the current command line minus
+Refer to the current command minus
.IR n .
.TP
.B !!
Refer to the previous command. This is a synonym for `!\-1'.
.TP
.B !\fIstring\fR
-Refer to the most recent command starting with
+Refer to the most recent command
+preceding the current position in the history list
+starting with
.IR string .
.TP
.B !?\fIstring\fR\fB[?]\fR
-Refer to the most recent command containing
+Refer to the most recent command
+preceding the current postition in the history list
+containing
.IR string .
The trailing \fB?\fP may be omitted if
.I string
@@ -569,10 +575,13 @@ The number of entries currently stored in the history list.
The maximum number of history entries. This must be changed using
\fBstifle_history()\fP.
-.Vb int history_write_timestamps
+.Vb int history_wite_timestamps
If non-zero, timestamps are written to the history file, so they can be
preserved between sessions. The default value is 0, meaning that
timestamps are not saved.
+The current timestamp format uses the value of \fIhistory_comment_char\fP
+to delimit timestamp entries in the history file. If that variable does
+not have a value (the default), timestamps will not be written.
.Vb char history_expansion_char
The character that introduces a history event. The default is \fB!\fP.
diff --git a/doc/history.dvi b/doc/history.dvi
index e54d0fee8c51478d3a480c8e1c8c74d6687265f9..0fb8e1cd5ce643bb57a5b4cb3f59984732e2c9b0 100644
GIT binary patch
delta 2198
zc-pm9`)?Fg6yBNH77ML?Kntaz4@BBZciAlul~PKzLXj4u1ww*6rn`6B(b<{p%-ud9
zT2N3xy6yDP?MN}Dp=r{9;V~plqb5iU#zX=6!Jr1P7zJY!Akjo95zn376#WD254Y#u
zd+zzZ^PO{c&h;hiI-1ZmC&TM?drIA&=azZB-qH^o4hIKg+&rW1eXi8_aruH$cceeX
z;pph*$ia#_5~3v7b*7-ctM)q43}Glx>hXFaN4dzKJ34wRYPc+@<1V)M30L;|)t=hx
zzHpEz=uZvd${s(_eVSAcL^o+8iQ>uXbsO-aty2&fup#3#x!Mgv@k&OForgf!AD
zsbO7i18TN~7%zWhfWfbZ3}G|x^;)V>nZRAQPCv0?CVwp38k;6?Q;ej-SI4{_i!Z1b
zxG0?RRKn1_7lhoceb(>u_He?S%(Ip@KZkSnr;Ts0jKaCLwb43T)FcSAM(09N$t&%5
zc9G^Dlt@8nOhal=L=-S8+}SPZrf6y;Ks2KGh)GotO`jSJii+Q4?9Es?P-F=oHxjdP
zQhS}cjfByX4T?;3yF&47CZk2M+!AV5U#Y8dn358hWTCS=Q6s38EKzVbubvEURXViA@@Vl7d0xC{iM~u}tfcU>nYZ
zLRwg#;M8L^VinkWTZbJBXK_OS3q!a%Jr!7@D$kqTi`FU6v8lY*?qe%jc39w-m%(!C9JW$
z`;H{SwN4lR?md*Y4AP=bSlg8byDAdlYGhy1U?%>oGoW6vmdk{7{$SU6MlN2jFtTyoWGv2O%~+Q&1#Bn^^XJ1e)W%tVp@#V%H)f;f1tWhc
zo;92pq?=`8^KyZA3zS3Q>z=~0xc^&BIXfDoS5&|PL0)$rGO6gcImUx->CVo=-PY$@
zGB|aY1NfdwXFnDk
zs(R`Z2W+ZP94+SttT&?RJm32)a2H>;zBJ`D{&1&lw-4uL@W)r%_HUnLW$>S!wz!Mi
z()i2M?Xwftv(x#XsBNd;4W;wz430Vt@YtrEr-V
delta 1750
zc-l=>Z)_7~81Mbr*kA=VTn7}`hJ$rvtL-+BuFSc_2nri0D3SqsZQpJe+Pm(09V}!5
zZc6yGvfHzE$3{{XN#mkMap_uTc4U(ESzG-qISk;~(ByPWRY2DhuO{*1+9VW4?Sg|_=7okT(H
zAh5Od6^*@pbekAeWu+TJqE8X&!i|qC`bmf=y0$wZ<`d9xz#Sq5vhRqMHi@h$wQq
zB7|$=m#lSl{aR7s*03nGC;9kIH6WuTIW)@0zfn5`m6jrGmxvlb(EYL$MOq?_P+hSo
z;);^45+x}32?S+@_9?_KghB|2(j;t?gL*_EU7{R|hPpvTIIwXd>+%>UxaJ(@N8`)9
zXG+-FhsH&_mEmKqDUV?-_i;=gL@Ii@bvN6M2Nit`SN5&l=vi-P`0-_A#<)Ac?Dvxsa&5?%XsEQK(*@4fgL%V4#
zh!S=4*DQr)cKMW3%em>>gKAYp5KXV&m~NV?)WZTcbc6X^#m7uOIV`Fw*%6?E#Gpwx
zhr}n}oD!orw@^q%;|>GKRE5JNAPOo8Q6!2dfJ6>cublC5YDAx_9F0i3B6uxvH!*40
z>psM6#(^~(e64RG>*_Vv<6A~J*6YA^2{i4iG2s@tF^Lw
z@6G2v4vs8gN!@&Wrc1N3G3#6m`}@Ao_!L$rwWV@Pu^lN
z*=QyQ&K4P$Pls~(l>L`0a9%sdr>x38s2+4PDL6P-wK`Rd@1*8@cp;2VC;3m34nb-6
zR|8(Vs=%%}*|#RMv=#7<_QWym`SYi5h?1&dEiLuNFD*Qd5V-B{5EQz-VFT^<(itG|
zQF`ATx=yo{fLht+cGcD&sD=%yH=9L7GfAXs2*?tFMsOjtsSeX-lj}f|hgGnar;N}9
zwtVbuzVkOSz(H7p^XP#UcpZlNQabCM*n#K%n?CLleaqnu(v+fZq1`tj|o%Ex&6wS%4`^S+QH
z5kaDVQr>JP>!U)Vu@G93hU-K1_G~HxnMs+5s1n>G#ZaAC29JjFU~8f*KeJ5_6iKXH
zfl+7aEqrrSQHl|7wy6hk-%Zem_N&Auygo{-%%3}08cLInqD(|>rw%lN+Y2A*HjtCl
z%~MGST-J**Dp;%#A+WXz8gV$(fV;`cxfD2tt@;1kdu_NGUkpz7Er_3`--1Q>Em+4{
z&fS@RmQusTJc_*mhxA5spvJgf$g+v|VC?RTM(${6DXZ@?*Vo=(Q^bzvnQO;2TM_%I
zVy;i$DqhNd_k%HZ*I&p^ZZ!9H{S_%>XGZ9HqJU=}7O>2#X7ExW^G`0jcyyw5IrDQa
gTRc6C3;V>jQfAi4uKIkUp_RGHPx#
diff --git a/doc/history.html b/doc/history.html
index 0721674..5bdbb1b 100644
--- a/doc/history.html
+++ b/doc/history.html
@@ -1,6 +1,6 @@
-
+
+
-
+
beginning-of-line (C-a)
--
+
-
Move to the start of the current line.
-
+
end-of-line (C-e)
--
+
-
Move to the end of the line.
-
+
forward-char (C-f)
--
+
-
Move forward a character.
-
+
backward-char (C-b)
--
+
-
Move back a character.
-
+
forward-word (M-f)
--
+
-
Move forward to the end of the next word.
Words are composed of letters and digits.
-
+
backward-word (M-b)
--
+
-
Move back to the start of the current or previous word.
Words are composed of letters and digits.
-
+
clear-screen (C-l)
--
+
-
Clear the screen and redraw the current line,
leaving the current line at the top of the screen.
-
+
redraw-current-line ()
--
+
-
Refresh the current line. By default, this is unbound.
@@ -1320,9 +1346,9 @@ Refresh the current line. By default, this is unbound.
-
+
accept-line (Newline or Return)
--
+
-
Accept the line regardless of where the cursor is.
If this line is
non-empty, it may be added to the history list for future recall with
@@ -1331,81 +1357,81 @@ If this line is a modified history line, the history line is restored
to its original state.
-
+
previous-history (C-p)
--
+
-
Move `back' through the history list, fetching the previous command.
-
+
next-history (C-n)
--
+
-
Move `forward' through the history list, fetching the next command.
-
+
beginning-of-history (M-<)
--
+
-
Move to the first line in the history.
-
+
end-of-history (M->)
--
+
-
Move to the end of the input history, i.e., the line currently
being entered.
-
+
reverse-search-history (C-r)
--
+
-
Search backward starting at the current line and moving `up' through
the history as necessary. This is an incremental search.
-
+
forward-search-history (C-s)
--
+
-
Search forward starting at the current line and moving `down' through
the the history as necessary. This is an incremental search.
-
+
non-incremental-reverse-search-history (M-p)
--
+
-
Search backward starting at the current line and moving `up'
through the history as necessary using a non-incremental search
for a string supplied by the user.
-
+
non-incremental-forward-search-history (M-n)
--
+
-
Search forward starting at the current line and moving `down'
through the the history as necessary using a non-incremental search
for a string supplied by the user.
-
+
history-search-forward ()
--
+
-
Search forward through the history for the string of characters
between the start of the current line and the point.
This is a non-incremental search.
By default, this command is unbound.
-
+
history-search-backward ()
--
+
-
Search backward through the history for the string of characters
between the start of the current line and the point. This
is a non-incremental search. By default, this command is unbound.
-
+
yank-nth-arg (M-C-y)
--
+
-
Insert the first argument to the previous command (usually
the second word on the previous line) at point.
With an argument n,
@@ -1416,14 +1442,18 @@ Once the argument n is computed, the argument is extracted
as if the `!n' history expansion had been specified.
-
+
yank-last-arg (M-. or M-_)
--
+
-
Insert last argument to the previous command (the last word of the
-previous history entry). With an
-argument, behave exactly like
yank-nth-arg
.
+previous history entry).
+With a numeric argument, behave exactly like yank-nth-arg
.
Successive calls to yank-last-arg
move back through the history
-list, inserting the last argument of each line in turn.
+list, inserting the last word (or the word specified by the argument to
+the first call) of each line in turn.
+Any numeric argument supplied to these successive calls determines
+the direction to move through the history. A negative argument switches
+the direction through the history (back or forward).
The history expansion facilities are used to extract the last argument,
as if the `!$' history expansion had been specified.
@@ -1450,52 +1480,52 @@ as if the `!$' history expansion had been specified.
-
+
delete-char (C-d)
--
+
-
Delete the character at point. If point is at the
beginning of the line, there are no characters in the line, and
the last character typed was not bound to
delete-char
, then
return EOF.
-
+
backward-delete-char (Rubout)
--
+
-
Delete the character behind the cursor. A numeric argument means
to kill the characters instead of deleting them.
-
+
forward-backward-delete-char ()
--
+
-
Delete the character under the cursor, unless the cursor is at the
end of the line, in which case the character behind the cursor is
deleted. By default, this is not bound to a key.
-
+
quoted-insert (C-q or C-v)
--
+
-
Add the next character typed to the line verbatim. This is
how to insert key sequences like C-q, for example.
-
+
tab-insert (M-TAB)
--
+
-
Insert a tab character.
-
+
self-insert (a, b, A, 1, !, ...)
--
+
-
Insert yourself.
-
+
transpose-chars (C-t)
--
+
-
Drag the character before the cursor forward over
the character at the cursor, moving the
cursor forward as well. If the insertion point
@@ -1504,39 +1534,39 @@ transposes the last two characters of the line.
Negative arguments have no effect.
-
+
transpose-words (M-t)
--
+
-
Drag the word before point past the word after point,
moving point past that word as well.
If the insertion point is at the end of the line, this transposes
the last two words on the line.
-
+
upcase-word (M-u)
--
+
-
Uppercase the current (or following) word. With a negative argument,
uppercase the previous word, but do not move the cursor.
-
+
downcase-word (M-l)
--
+
-
Lowercase the current (or following) word. With a negative argument,
lowercase the previous word, but do not move the cursor.
-
+
capitalize-word (M-c)
--
+
-
Capitalize the current (or following) word. With a negative argument,
capitalize the previous word, but do not move the cursor.
-
+
overwrite-mode ()
--
+
-
Toggle overwrite mode. With an explicit positive numeric argument,
switches to overwrite mode. With an explicit non-positive numeric
argument, switches to insert mode. This command affects only
@@ -1576,106 +1606,106 @@ By default, this command is unbound.
-
+
kill-line (C-k)
--
+
-
Kill the text from point to the end of the line.
-
+
backward-kill-line (C-x Rubout)
--
+
-
Kill backward to the beginning of the line.
-
+
unix-line-discard (C-u)
--
+
-
Kill backward from the cursor to the beginning of the current line.
-
+
kill-whole-line ()
--
+
-
Kill all characters on the current line, no matter where point is.
By default, this is unbound.
-
+
kill-word (M-d)
--
+
-
Kill from point to the end of the current word, or if between
words, to the end of the next word.
Word boundaries are the same as
forward-word
.
-
+
backward-kill-word (M-DEL)
--
+
-
Kill the word behind point.
Word boundaries are the same as
backward-word
.
-
+
unix-word-rubout (C-w)
--
+
-
Kill the word behind point, using white space as a word boundary.
The killed text is saved on the kill-ring.
-
+
unix-filename-rubout ()
--
+
-
Kill the word behind point, using white space and the slash character
as the word boundaries.
The killed text is saved on the kill-ring.
-
+
delete-horizontal-space ()
--
+
-
Delete all spaces and tabs around point. By default, this is unbound.
-
+
kill-region ()
--
+
-
Kill the text in the current region.
By default, this command is unbound.
-
+
copy-region-as-kill ()
--
+
-
Copy the text in the region to the kill buffer, so it can be yanked
right away. By default, this command is unbound.
-
+
copy-backward-word ()
--
+
-
Copy the word before point to the kill buffer.
The word boundaries are the same as
backward-word
.
By default, this command is unbound.
-
+
copy-forward-word ()
--
+
-
Copy the word following point to the kill buffer.
The word boundaries are the same as
forward-word
.
By default, this command is unbound.
-
+
yank (C-y)
--
+
-
Yank the top of the kill ring into the buffer at point.
-
+
yank-pop (M-y)
--
+
-
Rotate the kill-ring, and yank the new top. You can only do this if
the prior command is
yank
or yank-pop
.
@@ -1699,16 +1729,16 @@ the prior command is yank
or yank-pop
.
-
+
digit-argument (M-0, M-1, ... M--)
--
+
-
Add this digit to the argument already accumulating, or start a new
argument. M-- starts a negative argument.
-
+
universal-argument ()
--
+
-
This is another way to specify an argument.
If this command is followed by one or more digits, optionally with a
leading minus sign, those digits define the argument.
@@ -1743,30 +1773,33 @@ By default, this is not bound to a key.
-
+
complete (TAB)
--
+
-
Attempt to perform completion on the text before point.
The actual completion performed is application-specific.
The default is filename completion.
-
+
possible-completions (M-?)
--
+
-
List the possible completions of the text before point.
+When displaying completions, Readline sets the number of columns used
+for display to the value of
completion-display-width
, the value of
+the environment variable COLUMNS
, or the screen width, in that order.
-
+
insert-completions (M-*)
--
+
-
Insert all completions of the text before point that would have
been generated by
possible-completions
.
-
+
menu-complete ()
--
+
-
Similar to
complete
, but replaces the word to be completed
with a single match from the list of possible completions.
Repeated execution of menu-complete
steps through the list
@@ -1781,17 +1814,17 @@ This command is intended to be bound to TAB, but is unbound
by default.
-
+
menu-complete-backward ()
--
+
-
Identical to
menu-complete
, but moves backward through the list
of possible completions, as if menu-complete
had been given a
negative argument.
-
+
delete-char-or-list ()
--
+
-
Deletes the character under the cursor if not at the beginning or
end of the line (like
delete-char
).
If at the end of the line, behaves identically to
@@ -1820,22 +1853,22 @@ This command is unbound by default.
-
+
start-kbd-macro (C-x ()
--
+
-
Begin saving the characters typed into the current keyboard macro.
-
+
end-kbd-macro (C-x ))
--
+
-
Stop saving the characters typed into the current keyboard macro
and save the definition.
-
+
call-last-kbd-macro (C-x e)
--
+
-
Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
@@ -1861,87 +1894,87 @@ in the macro appear as if typed at the keyboard.
-
+
re-read-init-file (C-x C-r)
--
+
-
Read in the contents of the inputrc file, and incorporate
any bindings or variable assignments found there.
-
+
abort (C-g)
--
+
-
Abort the current editing command and
ring the terminal's bell (subject to the setting of
bell-style
).
-
+
do-uppercase-version (M-a, M-b, M-x, ...)
--
+
-
If the metafied character x is lowercase, run the command
that is bound to the corresponding uppercase character.
-
+
prefix-meta (ESC)
--
+
-
Metafy the next character typed. This is for keyboards
without a meta key. Typing `ESC f' is equivalent to typing
M-f.
-
+
undo (C-_ or C-x C-u)
--
+
-
Incremental undo, separately remembered for each line.
-
+
revert-line (M-r)
--
+
-
Undo all changes made to this line. This is like executing the
undo
command enough times to get back to the beginning.
-
+
tilde-expand (M-~)
--
+
-
Perform tilde expansion on the current word.
-
+
set-mark (C-@)
--
+
-
Set the mark to the point. If a
numeric argument is supplied, the mark is set to that position.
-
+
exchange-point-and-mark (C-x C-x)
--
+
-
Swap the point with the mark. The current cursor position is set to
the saved position, and the old cursor position is saved as the mark.
-
+
character-search (C-])
--
+
-
A character is read and point is moved to the next occurrence of that
character. A negative count searches for previous occurrences.
-
+
character-search-backward (M-C-])
--
+
-
A character is read and point is moved to the previous occurrence
of that character. A negative count searches for subsequent
occurrences.
-
+
skip-csi-sequence ()
--
+
-
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
@@ -1951,9 +1984,9 @@ stray characters into the editing buffer. This is unbound by default,
but usually bound to ESC-[.
-
+
insert-comment (M-#)
--
+
-
Without a numeric argument, the value of the
comment-begin
variable is inserted at the beginning of the current line.
If a numeric argument is supplied, this command acts as a toggle: if
@@ -1964,43 +1997,43 @@ the line.
In either case, the line is accepted as if a newline had been typed.
-
+
dump-functions ()
--
+
-
Print all of the functions and their key bindings to the
Readline output stream. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an inputrc file. This command is unbound by default.
-
+
dump-variables ()
--
+
-
Print all of the settable variables and their values to the
Readline output stream. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an inputrc file. This command is unbound by default.
-
+
dump-macros ()
--
+
-
Print all of the Readline key sequences bound to macros and the
strings they output. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an inputrc file. This command is unbound by default.
-
+
emacs-editing-mode (C-e)
--
+
-
When in
vi
command mode, this causes a switch to emacs
editing mode.
-
+
vi-editing-mode (M-C-j)
--
+
-
When in
emacs
editing mode, this causes a switch to vi
editing mode.
@@ -2029,7 +2062,7 @@ editing mode.
While the Readline library does not have a full set of vi
editing functions, it does contain enough to allow simple editing
of the line. The Readline vi
mode behaves as specified in
-the POSIX 1003.2 standard.
+the POSIX standard.
In order to switch interactively between emacs
and vi
@@ -2051,7 +2084,7 @@ in the consistency of user interface across discrete programs that need
to provide a command line interface.
-Copyright (C) 1988-2007 Free Software Foundation, Inc.
+Copyright (C) 1988--2011 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
@@ -2135,8 +2168,8 @@ the simplest way possible, perhaps to replace calls in your code to
gets()
or fgets()
.
-
-
+
+
The function readline()
prints a prompt prompt
@@ -2452,7 +2485,7 @@ command functions.
These variables are available to function writers.
-
+
- Variable: char * rl_line_buffer
- This is the line gathered so far. You are welcome to modify the
@@ -2462,7 +2495,7 @@ the memory allocated to
rl_line_buffer
.
-
+
- Variable: int rl_point
- The offset of the current cursor position in
rl_line_buffer
@@ -2470,7 +2503,7 @@ the memory allocated to rl_line_buffer
.
-
+
- Variable: int rl_end
- The number of characters present in
rl_line_buffer
. When
@@ -2479,7 +2512,7 @@ the memory allocated to rl_line_buffer
.
-
+
- Variable: int rl_mark
- The mark (saved position) in the current line. If set, the mark
@@ -2487,7 +2520,7 @@ and point define a region.
-
+
- Variable: int rl_done
- Setting this to a non-zero value causes Readline to return the current
@@ -2495,7 +2528,7 @@ line immediately.
-
+
- Variable: int rl_num_chars_to_read
- Setting this to a positive value before calling
readline()
causes
@@ -2504,7 +2537,7 @@ than reading up to a character bound to accept-line
.
-
+
- Variable: int rl_pending_input
- Setting this to a value makes it the next keystroke read. This is a
@@ -2512,7 +2545,7 @@ way to stuff a single character into the input stream.
-
+
- Variable: int rl_dispatching
- Set to a non-zero value if a function is being called from a key binding;
@@ -2521,7 +2554,7 @@ they were called directly or by Readline's dispatching mechanism.
-
+
- Variable: int rl_erase_empty_line
- Setting this to a non-zero value causes Readline to completely erase
@@ -2531,7 +2564,7 @@ the beginning of the newly-blank line.
-
+
- Variable: char * rl_prompt
- The prompt Readline uses. This is set from the argument to
@@ -2541,7 +2574,7 @@ be used to modify the prompt string after calling
readline()
.
-
+
- Variable: char * rl_display_prompt
- The string displayed as the prompt. This is usually identical to
@@ -2550,7 +2583,7 @@ use the prompt string as a message area, such as incremental search.
-
+
- Variable: int rl_already_prompted
- If an application wishes to display the prompt itself, rather than have
@@ -2563,14 +2596,14 @@ never sets it.
-
+
- Variable: const char * rl_library_version
- The version number of this revision of the library.
-
+
- Variable: int rl_readline_version
- An integer encoding the current version of the library. The encoding is
@@ -2581,7 +2614,7 @@ value 0x0402.
-
+
- Variable: int rl_gnu_readline_p
- Always set to 1, denoting that this is GNU readline rather than some
@@ -2589,7 +2622,7 @@ emulation.
-
+
- Variable: const char * rl_terminal_name
- The terminal type, used for initialization. If not set by the application,
@@ -2598,7 +2631,7 @@ the first time it is called.
-
+
- Variable: const char * rl_readline_name
- This variable is set to a unique name by each application using Readline.
@@ -2607,7 +2640,7 @@ The value allows conditional parsing of the inputrc file
-
+
- Variable: FILE * rl_instream
- The stdio stream from which Readline reads input.
@@ -2615,7 +2648,7 @@ If
NULL
, Readline defaults to stdin.
-
+
- Variable: FILE * rl_outstream
- The stdio stream to which Readline performs output.
@@ -2623,7 +2656,7 @@ If
NULL
, Readline defaults to stdout.
-
+
- Variable: int rl_prefer_env_winsize
- If non-zero, Readline gives values found in the
LINES
and
@@ -2632,7 +2665,7 @@ from the kernel when computing the screen dimensions.
-
+
- Variable: rl_command_func_t * rl_last_func
- The address of the last command function Readline executed. May be used to
@@ -2641,7 +2674,7 @@ example.
-
+
- Variable: rl_hook_func_t * rl_startup_hook
- If non-zero, this is the address of a function to call just
@@ -2649,7 +2682,7 @@ before
readline
prints the first prompt.
-
+
- Variable: rl_hook_func_t * rl_pre_input_hook
- If non-zero, this is the address of a function to call after
@@ -2658,7 +2691,7 @@ starts reading input characters.
-
+
- Variable: rl_hook_func_t * rl_event_hook
- If non-zero, this is the address of a function to call periodically
@@ -2668,7 +2701,7 @@ is no keyboard input.
-
+
- Variable: rl_getc_func_t * rl_getc_function
- If non-zero, Readline will call indirectly through this pointer
@@ -2678,7 +2711,7 @@ to get a character from the input stream. By default, it is set to
-
+
- Variable: rl_voidfunc_t * rl_redisplay_function
- If non-zero, Readline will call indirectly through this pointer
@@ -2688,7 +2721,7 @@ redisplay function (see section 2.4.6 Redisplay
-
+
- Variable: rl_vintfunc_t * rl_prep_term_function
- If non-zero, Readline will call indirectly through this pointer
@@ -2699,7 +2732,7 @@ By default, this is set to
rl_prep_terminal
-
+
- Variable: rl_voidfunc_t * rl_deprep_term_function
- If non-zero, Readline will call indirectly through this pointer
@@ -2710,7 +2743,7 @@ By default, this is set to
rl_deprep_terminal
-
+
- Variable: Keymap rl_executing_keymap
- This variable is set to the keymap (see section 2.4.2 Selecting a Keymap) in which the
@@ -2718,7 +2751,7 @@ currently executing readline function was found.
-
+
- Variable: Keymap rl_binding_keymap
- This variable is set to the keymap (see section 2.4.2 Selecting a Keymap) in which the
@@ -2726,14 +2759,14 @@ last key binding occurred.
-
+
- Variable: char * rl_executing_macro
- This variable is set to the text of any currently-executing macro.
-
+
- Variable: int rl_readline_state
- A variable with bit values that encapsulate the current Readline state.
@@ -2803,7 +2836,7 @@ and is about to return the line to the caller.
-
+
- Variable: int rl_explicit_arg
- Set to a non-zero value if an explicit numeric argument was specified by
@@ -2811,7 +2844,7 @@ the user. Only valid in a bindable command function.
-
+
- Variable: int rl_numeric_arg
- Set to the value of any numeric argument explicitly specified by the user
@@ -2820,7 +2853,7 @@ command function.
-
+
- Variable: int rl_editing_mode
- Set to a value denoting Readline's current editing mode. A value of
@@ -2898,7 +2931,7 @@ programmer, should bind the functions you write to descriptive names as
well. Readline provides a function for doing that:
-
+
- Function: int rl_add_defun (const char *name, rl_command_func_t *function, int key)
- Add name to the list of named functions. Make function be
@@ -2938,7 +2971,7 @@ get run. You can make your own keymaps, copy existing keymaps, and tell
Readline which keymap to use.
-
+
- Function: Keymap rl_make_bare_keymap (void)
- Returns a new, empty keymap. The space for the keymap is allocated with
@@ -2947,14 +2980,14 @@ Readline which keymap to use.
-
+
- Function: Keymap rl_copy_keymap (Keymap map)
- Return a new keymap which is a copy of map.
-
+
- Function: Keymap rl_make_keymap (void)
- Return a new keymap with the printing characters bound to rl_insert,
@@ -2963,7 +2996,7 @@ the Meta digits bound to produce numeric arguments.
-
+
- Function: void rl_discard_keymap (Keymap keymap)
- Free the storage associated with the data in keymap.
@@ -2971,7 +3004,7 @@ The caller should free keymap.
-
+
- Function: void rl_free_keymap (Keymap keymap)
- Free all storage associated with keymap. This calls
@@ -2983,21 +3016,21 @@ Readline has several internal keymaps. These functions allow you to
change which keymap is active.
-
+
- Function: Keymap rl_get_keymap (void)
- Returns the currently active keymap.
-
+
- Function: void rl_set_keymap (Keymap keymap)
- Makes keymap the currently active keymap.
-
+
- Function: Keymap rl_get_keymap_by_name (const char *name)
- Return the keymap matching name. name is one which would
@@ -3005,7 +3038,7 @@ be supplied in a
set keymap
inputrc line (see section
+
- Function: char * rl_get_keymap_name (Keymap keymap)
- Return the name matching keymap. name is one which would
@@ -3050,7 +3083,7 @@ initialization function assigned to the
rl_startup_hook
variable
These functions manage key bindings.
-
+
- Function: int rl_bind_key (int key, rl_command_func_t *function)
- Binds key to function in the currently active keymap.
@@ -3058,7 +3091,7 @@ Returns non-zero in the case of an invalid key.
-
+
- Function: int rl_bind_key_in_map (int key, rl_command_func_t *function, Keymap map)
- Bind key to function in map.
@@ -3066,7 +3099,7 @@ Returns non-zero in the case of an invalid key.
-
+
- Function: int rl_bind_key_if_unbound (int key, rl_command_func_t *function)
- Binds key to function if it is not already bound in the
@@ -3076,7 +3109,7 @@ already bound.
-
+
- Function: int rl_bind_key_if_unbound_in_map (int key, rl_command_func_t *function, Keymap map)
- Binds key to function if it is not already bound in map.
@@ -3085,7 +3118,7 @@ already bound.
-
+
- Function: int rl_unbind_key (int key)
- Bind key to the null function in the currently active keymap.
@@ -3093,7 +3126,7 @@ Returns non-zero in case of error.
-
+
- Function: int rl_unbind_key_in_map (int key, Keymap map)
- Bind key to the null function in map.
@@ -3101,21 +3134,21 @@ Returns non-zero in case of error.
-
+
- Function: int rl_unbind_function_in_map (rl_command_func_t *function, Keymap map)
- Unbind all keys that execute function in map.
-
+
- Function: int rl_unbind_command_in_map (const char *command, Keymap map)
- Unbind all keys that are bound to command in map.
-
+
- Function: int rl_bind_keyseq (const char *keyseq, rl_command_func_t *function)
- Bind the key sequence represented by the string keyseq to the function
@@ -3125,7 +3158,7 @@ The return value is non-zero if keyseq is invalid.
-
+
- Function: int rl_bind_keyseq_in_map (const char *keyseq, rl_command_func_t *function, Keymap map)
- Bind the key sequence represented by the string keyseq to the function
@@ -3135,14 +3168,14 @@ The return value is non-zero if keyseq is invalid.
-
+
- Function: int rl_set_key (const char *keyseq, rl_command_func_t *function, Keymap map)
- Equivalent to
rl_bind_keyseq_in_map
.
-
+
- Function: int rl_bind_keyseq_if_unbound (const char *keyseq, rl_command_func_t *function)
- Binds keyseq to function if it is not already bound in the
@@ -3152,7 +3185,7 @@ already bound.
-
+
- Function: int rl_bind_keyseq_if_unbound_in_map (const char *keyseq, rl_command_func_t *function, Keymap map)
- Binds keyseq to function if it is not already bound in map.
@@ -3161,7 +3194,7 @@ already bound.
-
+
- Function: int rl_generic_bind (int type, const char *keyseq, char *data, Keymap map)
- Bind the key sequence represented by the string keyseq to the arbitrary
@@ -3172,7 +3205,7 @@ necessary. The initial keymap in which to do bindings is map.
-
+
- Function: int rl_parse_and_bind (char *line)
- Parse line as if it had been read from the
inputrc
file and
@@ -3181,7 +3214,7 @@ perform any key bindings and variable assignments found
-
+
- Function: int rl_read_init_file (const char *filename)
- Read keybindings and variable assignments from filename
@@ -3212,14 +3245,14 @@ and the functions invoked by a particular key sequence. You may also
associate a new function name with an arbitrary function.
-
+
- Function: rl_command_func_t * rl_named_function (const char *name)
- Return the function with name name.
-
+
- Function: rl_command_func_t * rl_function_of_keyseq (const char *keyseq, Keymap map, int *type)
- Return the function invoked by keyseq in keymap map.
@@ -3229,7 +3262,7 @@ it points to (one of
ISFUNC
, ISKMAP
, or ISMACR
-
+
- Function: char ** rl_invoking_keyseqs (rl_command_func_t *function)
- Return an array of strings representing the key sequences used to
@@ -3237,7 +3270,7 @@ invoke function in the current keymap.
-
+
- Function: char ** rl_invoking_keyseqs_in_map (rl_command_func_t *function, Keymap map)
- Return an array of strings representing the key sequences used to
@@ -3245,7 +3278,7 @@ invoke function in the keymap map.
-
+
- Function: void rl_function_dumper (int readable)
- Print the readline function names and the key sequences currently
@@ -3255,14 +3288,14 @@ the list is formatted in such a way that it can be made part of an
-
+
- Function: void rl_list_funmap_names (void)
- Print the names of all bindable Readline functions to
rl_outstream
.
-
+
- Function: const char ** rl_funmap_names (void)
- Return a NULL terminated array of known function names. The array is
@@ -3272,7 +3305,7 @@ should free the array, but not the pointers, using
free
or
-
+
- Function: int rl_add_funmap_entry (const char *name, rl_command_func_t *function)
- Add name to the list of bindable Readline command names, and make
@@ -3327,7 +3360,7 @@ tells what to undo, not how to undo it.
UNDO_BEGIN
and
rl_end_undo_group()
.
-
+
- Function: int rl_begin_undo_group (void)
- Begins saving undo information in a group construct. The undo
@@ -3337,7 +3370,7 @@ information usually comes from calls to
rl_insert_text()
and
-
+
- Function: int rl_end_undo_group (void)
- Closes the current undo group started with
rl_begin_undo_group
@@ -3346,7 +3379,7 @@ for each call to rl_begin_undo_group()
.
-
+
- Function: void rl_add_undo (enum undo_code what, int start, int end, char *text)
- Remember how to undo an event (according to what). The affected
@@ -3354,14 +3387,14 @@ text runs from start to end, and encompasses text
-
+
- Function: void rl_free_undo_list (void)
- Free the existing undo list.
-
+
- Function: int rl_do_undo (void)
- Undo the first thing on the undo list. Returns
0
if there was
@@ -3375,7 +3408,7 @@ once, just before you modify the text. You must supply the indices of
the text range that you are going to modify.
-
+
- Function: int rl_modifying (int start, int end)
- Tell Readline to save the text between start and end as a
@@ -3402,7 +3435,7 @@ that text.
-
+
- Function: void rl_redisplay (void)
- Change what's displayed on the screen to reflect the current contents
@@ -3410,7 +3443,7 @@ of
rl_line_buffer
.
-
+
- Function: int rl_forced_update_display (void)
- Force the line to be updated and redisplayed, whether or not
@@ -3418,7 +3451,7 @@ Readline thinks the screen display is correct.
-
+
- Function: int rl_on_new_line (void)
- Tell the update functions that we have moved onto a new (empty) line,
@@ -3426,7 +3459,7 @@ usually after ouputting a newline.
-
+
- Function: int rl_on_new_line_with_prompt (void)
- Tell the update functions that we have moved onto a new line, with
@@ -3438,7 +3471,7 @@ It should be used after setting rl_already_prompted.
-
+
- Function: int rl_reset_line_state (void)
- Reset the display state to a clean state and redisplay the current line
@@ -3446,14 +3479,14 @@ starting on a new line.
-
+
- Function: int rl_crlf (void)
- Move the cursor to the start of the next screen line.
-
+
- Function: int rl_show_char (int c)
- Display character c on
rl_outstream
.
@@ -3464,7 +3497,7 @@ redisplay.
-
+
- Function: int rl_message (const char *, ...)
- The arguments are a format string as would be supplied to
printf
,
@@ -3477,7 +3510,7 @@ before calling this function.
-
+
- Function: int rl_clear_message (void)
- Clear the message in the echo area. If the prompt was saved with a call to
@@ -3486,7 +3519,7 @@ call
rl_restore_prompt
before calling this function.
-
+
- Function: void rl_save_prompt (void)
- Save the local Readline prompt display state in preparation for
@@ -3494,7 +3527,7 @@ displaying a new message in the message area with
rl_message()
.
-
+
- Function: void rl_restore_prompt (void)
- Restore the local Readline prompt display state saved by the most
@@ -3505,7 +3538,7 @@ corresponding call to
rl_clear_message
.
-
+
- Function: int rl_expand_prompt (char *prompt)
- Expand any special character sequences in prompt and set up the
@@ -3523,7 +3556,7 @@ 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
@@ -3550,7 +3583,7 @@ to the result.
-
+
- Function: int rl_insert_text (const char *text)
- Insert text into the line at the current cursor position.
@@ -3558,7 +3591,7 @@ Returns the number of characters inserted.
-
+
- Function: int rl_delete_text (int start, int end)
- Delete the text between start and end in the current line.
@@ -3566,7 +3599,7 @@ Returns the number of characters deleted.
-
+
- Function: char * rl_copy_text (int start, int end)
- Return a copy of the text between start and end in
@@ -3574,7 +3607,7 @@ the current line.
-
+
- Function: int rl_kill_text (int start, int end)
- Copy the text between start and end in the current line
@@ -3586,7 +3619,7 @@ not a kill, a new kill ring slot is used.
-
+
- Function: int rl_push_macro_input (char *macro)
- Cause macro to be inserted into the line, as if it had been invoked
@@ -3613,7 +3646,7 @@ by a key bound to a macro. Not especially useful; use
-
+
- Function: int rl_read_key (void)
- Return the next character available from Readline's current input stream.
@@ -3625,7 +3658,7 @@ the
rl_event_hook
variable.
-
+
- Function: int rl_getc (FILE *stream)
- Return the next character available from stream, which is assumed to
@@ -3633,7 +3666,7 @@ be the keyboard.
-
+
- Function: int rl_stuff_char (int c)
- Insert c into the Readline input stream. It will be "read"
@@ -3644,7 +3677,7 @@ before Readline attempts to read characters from the terminal with
-
+
- Function: int rl_execute_next (int c)
- Make c be the next command to be executed when
rl_read_key()
@@ -3652,7 +3685,7 @@ is called. This sets rl_pending_input.
-
+
- Function: int rl_clear_pending_input (void)
- Unset rl_pending_input, effectively negating the effect of any
@@ -3661,7 +3694,7 @@ pending input has not already been read with
rl_read_key()
.
-
+
- Function: int rl_set_keyboard_input_timeout (int u)
- While waiting for keyboard input in
rl_read_key()
, Readline will
@@ -3691,7 +3724,7 @@ Returns the old timeout value.
-
+
- Function: void rl_prep_terminal (int meta_flag)
- Modify the terminal settings for Readline's use, so
readline()
@@ -3701,7 +3734,7 @@ read eight-bit input.
-
+
- Function: void rl_deprep_terminal (void)
- Undo the effects of
rl_prep_terminal()
, leaving the terminal in
@@ -3710,7 +3743,7 @@ the state in which it was before the most recent call to
-
+
- Function: void rl_tty_set_default_bindings (Keymap kmap)
- Read the operating system's terminal editing characters (as would be
@@ -3719,7 +3752,7 @@ The bindings are performed in kmap.
-
+
- Function: void rl_tty_unset_default_bindings (Keymap kmap)
- Reset the bindings manipulated by
rl_tty_set_default_bindings
so
@@ -3728,7 +3761,7 @@ The bindings are performed in kmap.
-
+
- Function: int rl_reset_terminal (const char *terminal_name)
- Reinitialize Readline's idea of the terminal settings using
@@ -3756,7 +3789,7 @@ environment variable is used.
-
+
- Function: int rl_save_state (struct readline_state *sp)
- Save a snapshot of Readline's internal state to sp.
@@ -3766,7 +3799,7 @@ The caller is responsible for allocating the structure.
-
+
- Function: int rl_restore_state (struct readline_state *sp)
- Restore Readline's internal state to that stored in sp, which must
@@ -3777,7 +3810,7 @@ The caller is responsible for freeing the structure.
-
+
- Function: void rl_free (void *mem)
- Deallocate the memory pointed to by mem. mem must have been
@@ -3785,7 +3818,7 @@ allocated by
malloc
.
-
+
- Function: void rl_replace_line (const char *text, int clear_undo)
- Replace the contents of
rl_line_buffer
with text.
@@ -3795,7 +3828,7 @@ current line is cleared.
-
+
- Function: void rl_extend_line_buffer (int len)
- Ensure that
rl_line_buffer
has enough space to hold len
@@ -3803,7 +3836,7 @@ characters, possibly reallocating it if necessary.
-
+
- Function: int rl_initialize (void)
- Initialize or re-initialize Readline's internal state.
@@ -3812,21 +3845,21 @@ reading any input.
-
+
- Function: int rl_ding (void)
- Ring the terminal bell, obeying the setting of
bell-style
.
-
+
- Function: int rl_alphabetic (int c)
- Return 1 if c is an alphabetic character.
-
+
- Function: void rl_display_match_list (char **matches, int len, int max)
- A convenience function for displaying a list of strings in
@@ -3836,6 +3869,9 @@ of strings, in argv format, such as a list of completion matches.
is the length of the longest string in
matches
. This function uses
the setting of print-completions-horizontally
to select how the
matches are displayed (see section 1.3.1 Readline Init File Syntax).
+When displaying completions, this function sets the number of columns used
+for display to the value of completion-display-width
, the value of
+the environment variable COLUMNS
, or the screen width, in that order.
@@ -3843,28 +3879,28 @@ The following are implemented as macros, defined in chardefs.h
.
Applications should refrain from using them.
-
+
- Function: int _rl_uppercase_p (int c)
- Return 1 if c is an uppercase alphabetic character.
-
+
- Function: int _rl_lowercase_p (int c)
- Return 1 if c is a lowercase alphabetic character.
-
+
- Function: int _rl_digit_p (int c)
- Return 1 if c is a numeric character.
-
+
- Function: int _rl_to_upper (int c)
- If c is a lowercase alphabetic character, return the corresponding
@@ -3872,7 +3908,7 @@ uppercase character.
-
+
- Function: int _rl_to_lower (int c)
- If c is an uppercase alphabetic character, return the corresponding
@@ -3880,7 +3916,7 @@ lowercase character.
-
+
- Function: int _rl_digit_value (int c)
- If c is a number, return the value it represents.
@@ -3905,7 +3941,7 @@ lowercase character.
-
+
- Function: int rl_macro_bind (const char *keyseq, const char *macro, Keymap map)
- Bind the key sequence keyseq to invoke the macro macro.
@@ -3915,7 +3951,7 @@ use
rl_generic_bind()
instead.
-
+
- Function: void rl_macro_dumper (int readable)
- Print the key sequences bound to macros and their values, using
@@ -3925,7 +3961,7 @@ that it can be made part of an
inputrc
file and re-read.
-
+
- Function: int rl_variable_bind (const char *variable, const char *value)
- Make the Readline variable variable have value.
@@ -3935,7 +3971,7 @@ file (see section 1.3.1 Readline Init File Syntax<
-
+
- Function: char * rl_variable_value (const char *variable)
- Return a string representing the value of the Readline variable variable.
@@ -3943,7 +3979,7 @@ For boolean variables, this string is either `on' or `off'
-
+
- Function: void rl_variable_dumper (int readable)
- Print the readline variable names and their current values
@@ -3953,7 +3989,7 @@ that it can be made part of an
inputrc
file and re-read.
-
+
- Function: int rl_set_paren_blink_timeout (int u)
- Set the time interval (in microseconds) that Readline waits when showing
@@ -3961,7 +3997,7 @@ a balancing character when
blink-matching-paren
has been enabled.
-
+
- Function: char * rl_get_termcap (const char *cap)
- Retrieve the string value of the termcap capability cap.
@@ -3999,7 +4035,7 @@ also be invoked as a `callback' function from an event loop. There
are functions available to make this easy.
-
+
- Function: void rl_callback_handler_install (const char *prompt, rl_vcpfunc_t *lhandler)
- Set up the terminal for readline I/O and display the initial
@@ -4009,7 +4045,7 @@ The function takes the text of the line as an argument.
-
+
- Function: void rl_callback_read_char (void)
- Whenever an application determines that keyboard input is available, it
@@ -4028,7 +4064,7 @@ the terminal settings are modified for Readline's use again.
-
+
- Function: void rl_callback_handler_remove (void)
- Restore the terminal to its initial state and remove the line handler.
@@ -4186,7 +4222,7 @@ values of these variables only when calling
readline()
, not in
a signal handler, so Readline's internal signal state is not corrupted.
-
+
- Variable: int rl_catch_signals
- If this variable is non-zero, Readline will install signal handlers for
@@ -4198,7 +4234,7 @@ The default value of
rl_catch_signals
is 1.
-
+
- Variable: int rl_catch_sigwinch
- If this variable is non-zero, Readline will install a signal handler for
@@ -4216,7 +4252,7 @@ Readline provides convenience functions to do the necessary terminal
and internal state cleanup upon receipt of a signal.
-
+
- Function: void rl_cleanup_after_signal (void)
- This function will reset the state of the terminal to what it was before
@@ -4226,7 +4262,7 @@ all signals, depending on the values of
rl_catch_signals
and
-
+
- Function: void rl_free_line_state (void)
- This will free any partial state associated with the current input line
@@ -4238,7 +4274,7 @@ current input line.
-
+
- Function: void rl_reset_after_signal (void)
- This will reinitialize the terminal and reinstall any Readline signal
@@ -4253,7 +4289,7 @@ Readline to update its idea of the terminal size when a
SIGWINCH
is received.
-
+
- Function: void rl_echo_signal_char (int sig)
- If an application wishes to install its own signal handlers, but still
@@ -4263,14 +4299,14 @@ function with sig set to
SIGINT
, SIGQUIT
, o
-
+
- Function: void rl_resize_terminal (void)
- Update Readline's internal screen size by reading values from the kernel.
-
+
- Function: void rl_set_screen_size (int rows, int cols)
- Set Readline's idea of the terminal size to rows rows and
@@ -4284,7 +4320,7 @@ is still interested in the screen dimensions, Readline's idea of the screen
size may be queried.
-
+
- Function: void rl_get_screen_size (int *rows, int *cols)
- Return Readline's idea of the terminal's size in the
@@ -4292,7 +4328,7 @@ variables pointed to by the arguments.
-
+
- Function: void rl_reset_screen_size (void)
- Cause Readline to reobtain the screen size and recalculate its dimensions.
@@ -4302,7 +4338,7 @@ variables pointed to by the arguments.
The following functions install and remove Readline's signal handlers.
-
+
- Function: int rl_set_signals (void)
- Install Readline's signal handler for
SIGINT
, SIGQUIT
,
@@ -4312,7 +4348,7 @@ The following functions install and remove Readline's signal handlers.
-
+
- Function: int rl_clear_signals (void)
- Remove all of the Readline signal handlers installed by
@@ -4425,7 +4461,7 @@ Such a generator function is referred to as an
-
+
- Function: int rl_complete (int ignore, int invoking_key)
- Complete the word at or before point. You have supplied the function
@@ -4434,7 +4470,7 @@ that does the initial simple matching selection algorithm (see
-
+
- Variable: rl_compentry_func_t * rl_completion_entry_function
- This is a pointer to the generator function for
@@ -4470,7 +4506,7 @@ Here is the complete list of callable completion functions present in
Readline.
-
+
- Function: int rl_complete_internal (int what_to_do)
- Complete the word at or before point. what_to_do says what to do
@@ -4484,7 +4520,7 @@ a common prefix.
-
+
- Function: int rl_complete (int ignore, int invoking_key)
- Complete the word at or before point. You have supplied the function
@@ -4496,7 +4532,7 @@ argument depending on invoking_key.
-
+
- Function: int rl_possible_completions (int count, int invoking_key)
- List the possible completions. See description of
rl_complete
@@ -4505,7 +4541,7 @@ argument depending on invoking_key.
-
+
- Function: int rl_insert_completions (int count, int invoking_key)
- Insert the list of possible completions into the line, deleting the
@@ -4514,7 +4550,7 @@ This calls
rl_complete_internal()
with an argument of `*'
-
+
- Function: int rl_completion_mode (rl_command_func_t *cfunc)
- Returns the apppriate value to pass to
rl_complete_internal()
@@ -4526,7 +4562,7 @@ the same interface as rl_complete()
.
-
+
- Function: char ** rl_completion_matches (const char *text, rl_compentry_func_t *entry_func)
- Returns an array of strings which is a list of completions for
@@ -4544,7 +4580,7 @@ when there are no more matches.
-
+
- Function: char * rl_filename_completion_function (const char *text, int state)
- A generator function for filename completion in the general case.
@@ -4555,7 +4591,7 @@ Readline functions).
-
+
- Function: char * rl_username_completion_function (const char *text, int state)
- A completion generator for usernames. text contains a partial
@@ -4583,7 +4619,7 @@ for subsequent calls.
-
+
- Variable: rl_compentry_func_t * rl_completion_entry_function
- A pointer to the generator function for
rl_completion_matches()
.
@@ -4592,7 +4628,7 @@ the default filename completer.
-
+
- Variable: rl_completion_func_t * rl_attempted_completion_function
- A pointer to an alternative function to create matches.
@@ -4609,7 +4645,7 @@ completion even if this function returns no matches.
-
+
- Variable: rl_quote_func_t * rl_filename_quoting_function
- A pointer to a function that will quote a filename in an
@@ -4626,7 +4662,7 @@ to reset this character.
-
+
- Variable: rl_dequote_func_t * rl_filename_dequoting_function
- A pointer to a function that will remove application-specific quoting
@@ -4639,7 +4675,7 @@ that delimits the filename (usually `'' or `"'). If
-
+
- Variable: rl_linebuf_func_t * rl_char_is_quoted_p
- A pointer to a function to call that determines whether or not a specific
@@ -4652,7 +4688,7 @@ used to break words for the completer.
-
+
- Variable: rl_compignore_func_t * rl_ignore_some_completions_function
- This function, if defined, is called by the completer when real filename
@@ -4665,26 +4701,28 @@ from the array must be freed.
-
+
- Variable: rl_icppfunc_t * rl_directory_completion_hook
- This function, if defined, is allowed to modify the directory portion
-of filenames Readline completes. It is called with the address of a
-string (the current directory name) as an argument, and may modify that string.
+of filenames Readline completes.
+It could be used to expand symbolic links or shell variables in pathnames.
+It is called with the address of a string (the current directory name) as an
+argument, and may modify that string.
If the string is replaced with a new string, the old value should be freed.
Any modified directory name should have a trailing slash.
-The modified value will be displayed as part of the completion, replacing
+The modified value will be used as part of the completion, replacing
the directory portion of the pathname the user typed.
-It returns an integer that should be non-zero if the function modifies
-its directory argument.
-It could be used to expand symbolic links or shell variables in pathnames.
At the least, even if no other expansion is performed, this function should
remove any quote characters from the directory name, because its result will
be passed directly to
opendir()
.
+The directory completion hook returns an integer that should be non-zero if
+the function modifies its directory argument.
+The function should not modify the directory argument if it returns 0.
-
+
- Variable: rl_dequote_func_t * rl_filename_rewrite_hook
- If non-zero, this is the address of a function called when reading
@@ -4703,7 +4741,7 @@ allocated string.
-
+
- Variable: rl_compdisp_func_t * rl_completion_display_matches_hook
- If non-zero, then this is the address of a function to call when
@@ -4720,7 +4758,7 @@ function may be called from this hook.
-
+
- Variable: const char * rl_basic_word_break_characters
- The basic list of characters that signal a break between words for the
@@ -4730,14 +4768,14 @@ which break words for completion in Bash:
-
+
- Variable: const char * rl_basic_quote_characters
- A list of quote characters which can cause a word break.
-
+
- Variable: const char * rl_completer_word_break_characters
- The list of characters that signal a break between words for
@@ -4746,7 +4784,7 @@ which break words for completion in Bash:
-
+
- Variable: rl_cpvfunc_t * rl_completion_word_break_hook
- If non-zero, this is the address of a function to call when Readline is
@@ -4758,7 +4796,7 @@ returns
NULL
, rl_completer_word_break_characters
is us
-
+
- Variable: const char * rl_completer_quote_characters
- A list of characters which can be used to quote a substring of the line.
@@ -4768,7 +4806,7 @@ unless they also appear within this list.
-
+
- Variable: const char * rl_filename_quote_characters
- A list of characters that cause a filename to be quoted by the completer
@@ -4776,7 +4814,7 @@ when they appear in a completed filename. The default is the null string.
-
+
- Variable: const char * rl_special_prefixes
- The list of characters that are word break characters, but should be
@@ -4787,7 +4825,7 @@ shell variables and hostnames.
-
+
- Variable: int rl_completion_query_items
- Up to this many items will be displayed in response to a
@@ -4797,7 +4835,7 @@ indicates that Readline should never ask the user.
-
+
- Variable: int rl_completion_append_character
- When a single completion alternative matches at the end of the command
@@ -4810,7 +4848,7 @@ an application-specific command line syntax specification.
-
+
- Variable: int rl_completion_suppress_append
- If non-zero, rl_completion_append_character is not appended to
@@ -4820,7 +4858,7 @@ is called, and may only be changed within such a function.
-
+
- Variable: int rl_completion_quote_character
- When Readline is completing quoted text, as delimited by one of the
@@ -4830,7 +4868,7 @@ This is set before any application-specific completion function is called.
-
+
- Variable: int rl_completion_suppress_quote
- If non-zero, Readline does not append a matching quote character when
@@ -4840,7 +4878,7 @@ is called, and may only be changed within such a function.
-
+
- Variable: int rl_completion_found_quote
- When Readline is completing quoted text, it sets this variable
@@ -4850,7 +4888,7 @@ This is set before any application-specific completion function is called.
-
+
- Variable: int rl_completion_mark_symlink_dirs
- If non-zero, a slash will be appended to completed filenames that are
@@ -4865,7 +4903,7 @@ function modifies the value, the user's preferences are honored.
-
+
- Variable: int rl_ignore_completion_duplicates
- If non-zero, then duplicates in the matches are removed.
@@ -4873,7 +4911,7 @@ The default is 1.
-
+
- Variable: int rl_filename_completion_desired
- Non-zero means that the results of the matches are to be treated as
@@ -4887,7 +4925,7 @@ characters in
rl_filename_quote_characters
and
-
+
- Variable: int rl_filename_quoting_desired
- Non-zero means that the results of the matches are to be quoted using
@@ -4901,7 +4939,7 @@ by
rl_filename_quoting_function
.
-
+
- Variable: int rl_attempted_completion_over
- If an application-specific completion function assigned to
@@ -4912,7 +4950,7 @@ It should be set only by an application's completion function.
-
+
- Variable: int rl_sort_completion_matches
- If an application sets this variable to 0, Readline will not sort the
@@ -4924,7 +4962,7 @@ matches.
-
+
- Variable: int rl_completion_type
- Set to a character describing the type of completion Readline is currently
@@ -4936,7 +4974,7 @@ the same interface as
rl_complete()
.
-
+
- Variable: int rl_completion_invoking_key
- Set to the final character in the key sequence that invoked one of the
@@ -4946,7 +4984,7 @@ function is called.
-
+
- Variable: int rl_inhibit_completion
- If this variable is non-zero, completion is inhibited. The completion
@@ -6093,7 +6131,7 @@ to permit their use in free software.
| notation, readline | 1.2.1 Readline Bare Essentials |
|
R | | |
- | readline, function | 2.1 Basic Behavior |
+ | readline, function | 2.1 Basic Behavior |
|
V | | |
| variables, readline | 1.3.1 Readline Init File Syntax |
@@ -6185,410 +6223,414 @@ to permit their use in free software.
| Index Entry | Section |
|
_ | | |
- | _rl_digit_p | 2.4.10 Utility Functions |
- | _rl_digit_value | 2.4.10 Utility Functions |
- | _rl_lowercase_p | 2.4.10 Utility Functions |
- | _rl_to_lower | 2.4.10 Utility Functions |
- | _rl_to_upper | 2.4.10 Utility Functions |
- | _rl_uppercase_p | 2.4.10 Utility Functions |
+ | _rl_digit_p | 2.4.10 Utility Functions |
+ | _rl_digit_value | 2.4.10 Utility Functions |
+ | _rl_lowercase_p | 2.4.10 Utility Functions |
+ | _rl_to_lower | 2.4.10 Utility Functions |
+ | _rl_to_upper | 2.4.10 Utility Functions |
+ | _rl_uppercase_p | 2.4.10 Utility Functions |
|
A | | |
- | abort (C-g) | 1.4.8 Some Miscellaneous Commands |
- | abort (C-g) | 1.4.8 Some Miscellaneous Commands |
- | accept-line (Newline or Return) | 1.4.2 Commands For Manipulating The History |
- | accept-line (Newline or Return) | 1.4.2 Commands For Manipulating The History |
+ | abort (C-g) | 1.4.8 Some Miscellaneous Commands |
+ | abort (C-g) | 1.4.8 Some Miscellaneous Commands |
+ | accept-line (Newline or Return) | 1.4.2 Commands For Manipulating The History |
+ | accept-line (Newline or Return) | 1.4.2 Commands For Manipulating The History |
|
B | | |
- | backward-char (C-b) | 1.4.1 Commands For Moving |
- | backward-char (C-b) | 1.4.1 Commands For Moving |
- | backward-delete-char (Rubout) | 1.4.3 Commands For Changing Text |
- | backward-delete-char (Rubout) | 1.4.3 Commands For Changing Text |
- | backward-kill-line (C-x Rubout) | 1.4.4 Killing And Yanking |
- | backward-kill-line (C-x Rubout) | 1.4.4 Killing And Yanking |
- | backward-kill-word (M-DEL) | 1.4.4 Killing And Yanking |
- | backward-kill-word (M-DEL) | 1.4.4 Killing And Yanking |
- | backward-word (M-b) | 1.4.1 Commands For Moving |
- | backward-word (M-b) | 1.4.1 Commands For Moving |
- | beginning-of-history (M-<) | 1.4.2 Commands For Manipulating The History |
- | beginning-of-history (M-<) | 1.4.2 Commands For Manipulating The History |
- | beginning-of-line (C-a) | 1.4.1 Commands For Moving |
- | beginning-of-line (C-a) | 1.4.1 Commands For Moving |
+ | backward-char (C-b) | 1.4.1 Commands For Moving |
+ | backward-char (C-b) | 1.4.1 Commands For Moving |
+ | backward-delete-char (Rubout) | 1.4.3 Commands For Changing Text |
+ | backward-delete-char (Rubout) | 1.4.3 Commands For Changing Text |
+ | backward-kill-line (C-x Rubout) | 1.4.4 Killing And Yanking |
+ | backward-kill-line (C-x Rubout) | 1.4.4 Killing And Yanking |
+ | backward-kill-word (M-DEL) | 1.4.4 Killing And Yanking |
+ | backward-kill-word (M-DEL) | 1.4.4 Killing And Yanking |
+ | backward-word (M-b) | 1.4.1 Commands For Moving |
+ | backward-word (M-b) | 1.4.1 Commands For Moving |
+ | beginning-of-history (M-<) | 1.4.2 Commands For Manipulating The History |
+ | beginning-of-history (M-<) | 1.4.2 Commands For Manipulating The History |
+ | beginning-of-line (C-a) | 1.4.1 Commands For Moving |
+ | beginning-of-line (C-a) | 1.4.1 Commands For Moving |
| bell-style | 1.3.1 Readline Init File Syntax |
| bind-tty-special-chars | 1.3.1 Readline Init File Syntax |
|
C | | |
- | call-last-kbd-macro (C-x e) | 1.4.7 Keyboard Macros |
- | call-last-kbd-macro (C-x e) | 1.4.7 Keyboard Macros |
- | capitalize-word (M-c) | 1.4.3 Commands For Changing Text |
- | capitalize-word (M-c) | 1.4.3 Commands For Changing Text |
- | character-search (C-]) | 1.4.8 Some Miscellaneous Commands |
- | character-search (C-]) | 1.4.8 Some Miscellaneous Commands |
- | character-search-backward (M-C-]) | 1.4.8 Some Miscellaneous Commands |
- | character-search-backward (M-C-]) | 1.4.8 Some Miscellaneous Commands |
- | clear-screen (C-l) | 1.4.1 Commands For Moving |
- | clear-screen (C-l) | 1.4.1 Commands For Moving |
+ | call-last-kbd-macro (C-x e) | 1.4.7 Keyboard Macros |
+ | call-last-kbd-macro (C-x e) | 1.4.7 Keyboard Macros |
+ | capitalize-word (M-c) | 1.4.3 Commands For Changing Text |
+ | capitalize-word (M-c) | 1.4.3 Commands For Changing Text |
+ | character-search (C-]) | 1.4.8 Some Miscellaneous Commands |
+ | character-search (C-]) | 1.4.8 Some Miscellaneous Commands |
+ | character-search-backward (M-C-]) | 1.4.8 Some Miscellaneous Commands |
+ | character-search-backward (M-C-]) | 1.4.8 Some Miscellaneous Commands |
+ | clear-screen (C-l) | 1.4.1 Commands For Moving |
+ | clear-screen (C-l) | 1.4.1 Commands For Moving |
| comment-begin | 1.3.1 Readline Init File Syntax |
- | complete (TAB) | 1.4.6 Letting Readline Type For You |
- | complete (TAB) | 1.4.6 Letting Readline Type For You |
- | completion-prefix-display-length | 1.3.1 Readline Init File Syntax |
- | completion-query-items | 1.3.1 Readline Init File Syntax |
- | convert-meta | 1.3.1 Readline Init File Syntax |
- | copy-backward-word () | 1.4.4 Killing And Yanking |
- | copy-backward-word () | 1.4.4 Killing And Yanking |
- | copy-forward-word () | 1.4.4 Killing And Yanking |
- | copy-forward-word () | 1.4.4 Killing And Yanking |
- | copy-region-as-kill () | 1.4.4 Killing And Yanking |
- | copy-region-as-kill () | 1.4.4 Killing And Yanking |
+ | complete (TAB) | 1.4.6 Letting Readline Type For You |
+ | complete (TAB) | 1.4.6 Letting Readline Type For You |
+ | completion-display-width | 1.3.1 Readline Init File Syntax |
+ | completion-ignore-case | 1.3.1 Readline Init File Syntax |
+ | completion-map-case | 1.3.1 Readline Init File Syntax |
+ | completion-prefix-display-length | 1.3.1 Readline Init File Syntax |
+ | completion-query-items | 1.3.1 Readline Init File Syntax |
+ | convert-meta | 1.3.1 Readline Init File Syntax |
+ | copy-backward-word () | 1.4.4 Killing And Yanking |
+ | copy-backward-word () | 1.4.4 Killing And Yanking |
+ | copy-forward-word () | 1.4.4 Killing And Yanking |
+ | copy-forward-word () | 1.4.4 Killing And Yanking |
+ | copy-region-as-kill () | 1.4.4 Killing And Yanking |
+ | copy-region-as-kill () | 1.4.4 Killing And Yanking |
|
D | | |
- | delete-char (C-d) | 1.4.3 Commands For Changing Text |
- | delete-char (C-d) | 1.4.3 Commands For Changing Text |
- | delete-char-or-list () | 1.4.6 Letting Readline Type For You |
- | delete-char-or-list () | 1.4.6 Letting Readline Type For You |
- | delete-horizontal-space () | 1.4.4 Killing And Yanking |
- | delete-horizontal-space () | 1.4.4 Killing And Yanking |
- | digit-argument (M-0, M-1, <small>...</small> M--) | 1.4.5 Specifying Numeric Arguments |
- | digit-argument (M-0, M-1, <small>...</small> M--) | 1.4.5 Specifying Numeric Arguments |
- | disable-completion | 1.3.1 Readline Init File Syntax |
- | do-uppercase-version (M-a, M-b, M-x, <small>...</small>) | 1.4.8 Some Miscellaneous Commands |
- | do-uppercase-version (M-a, M-b, M-x, <small>...</small>) | 1.4.8 Some Miscellaneous Commands |
- | downcase-word (M-l) | 1.4.3 Commands For Changing Text |
- | downcase-word (M-l) | 1.4.3 Commands For Changing Text |
- | dump-functions () | 1.4.8 Some Miscellaneous Commands |
- | dump-functions () | 1.4.8 Some Miscellaneous Commands |
- | dump-macros () | 1.4.8 Some Miscellaneous Commands |
- | dump-macros () | 1.4.8 Some Miscellaneous Commands |
- | dump-variables () | 1.4.8 Some Miscellaneous Commands |
- | dump-variables () | 1.4.8 Some Miscellaneous Commands |
+ | delete-char (C-d) | 1.4.3 Commands For Changing Text |
+ | delete-char (C-d) | 1.4.3 Commands For Changing Text |
+ | delete-char-or-list () | 1.4.6 Letting Readline Type For You |
+ | delete-char-or-list () | 1.4.6 Letting Readline Type For You |
+ | delete-horizontal-space () | 1.4.4 Killing And Yanking |
+ | delete-horizontal-space () | 1.4.4 Killing And Yanking |
+ | digit-argument (M-0, M-1, <small>...</small> M--) | 1.4.5 Specifying Numeric Arguments |
+ | digit-argument (M-0, M-1, <small>...</small> M--) | 1.4.5 Specifying Numeric Arguments |
+ | disable-completion | 1.3.1 Readline Init File Syntax |
+ | do-uppercase-version (M-a, M-b, M-x, <small>...</small>) | 1.4.8 Some Miscellaneous Commands |
+ | do-uppercase-version (M-a, M-b, M-x, <small>...</small>) | 1.4.8 Some Miscellaneous Commands |
+ | downcase-word (M-l) | 1.4.3 Commands For Changing Text |
+ | downcase-word (M-l) | 1.4.3 Commands For Changing Text |
+ | dump-functions () | 1.4.8 Some Miscellaneous Commands |
+ | dump-functions () | 1.4.8 Some Miscellaneous Commands |
+ | dump-macros () | 1.4.8 Some Miscellaneous Commands |
+ | dump-macros () | 1.4.8 Some Miscellaneous Commands |
+ | dump-variables () | 1.4.8 Some Miscellaneous Commands |
+ | dump-variables () | 1.4.8 Some Miscellaneous Commands |
|
E | | |
- | editing-mode | 1.3.1 Readline Init File Syntax |
- | emacs-editing-mode (C-e) | 1.4.8 Some Miscellaneous Commands |
- | emacs-editing-mode (C-e) | 1.4.8 Some Miscellaneous Commands |
- | enable-keypad | 1.3.1 Readline Init File Syntax |
- | end-kbd-macro (C-x )) | 1.4.7 Keyboard Macros |
- | end-kbd-macro (C-x )) | 1.4.7 Keyboard Macros |
- | end-of-history (M->) | 1.4.2 Commands For Manipulating The History |
- | end-of-history (M->) | 1.4.2 Commands For Manipulating The History |
- | end-of-line (C-e) | 1.4.1 Commands For Moving |
- | end-of-line (C-e) | 1.4.1 Commands For Moving |
- | exchange-point-and-mark (C-x C-x) | 1.4.8 Some Miscellaneous Commands |
- | exchange-point-and-mark (C-x C-x) | 1.4.8 Some Miscellaneous Commands |
- | expand-tilde | 1.3.1 Readline Init File Syntax |
+ | editing-mode | 1.3.1 Readline Init File Syntax |
+ | emacs-editing-mode (C-e) | 1.4.8 Some Miscellaneous Commands |
+ | emacs-editing-mode (C-e) | 1.4.8 Some Miscellaneous Commands |
+ | enable-keypad | 1.3.1 Readline Init File Syntax |
+ | end-kbd-macro (C-x )) | 1.4.7 Keyboard Macros |
+ | end-kbd-macro (C-x )) | 1.4.7 Keyboard Macros |
+ | end-of-history (M->) | 1.4.2 Commands For Manipulating The History |
+ | end-of-history (M->) | 1.4.2 Commands For Manipulating The History |
+ | end-of-line (C-e) | 1.4.1 Commands For Moving |
+ | end-of-line (C-e) | 1.4.1 Commands For Moving |
+ | exchange-point-and-mark (C-x C-x) | 1.4.8 Some Miscellaneous Commands |
+ | exchange-point-and-mark (C-x C-x) | 1.4.8 Some Miscellaneous Commands |
+ | expand-tilde | 1.3.1 Readline Init File Syntax |
|
F | | |
- | forward-backward-delete-char () | 1.4.3 Commands For Changing Text |
- | forward-backward-delete-char () | 1.4.3 Commands For Changing Text |
- | forward-char (C-f) | 1.4.1 Commands For Moving |
- | forward-char (C-f) | 1.4.1 Commands For Moving |
- | forward-search-history (C-s) | 1.4.2 Commands For Manipulating The History |
- | forward-search-history (C-s) | 1.4.2 Commands For Manipulating The History |
- | forward-word (M-f) | 1.4.1 Commands For Moving |
- | forward-word (M-f) | 1.4.1 Commands For Moving |
+ | forward-backward-delete-char () | 1.4.3 Commands For Changing Text |
+ | forward-backward-delete-char () | 1.4.3 Commands For Changing Text |
+ | forward-char (C-f) | 1.4.1 Commands For Moving |
+ | forward-char (C-f) | 1.4.1 Commands For Moving |
+ | forward-search-history (C-s) | 1.4.2 Commands For Manipulating The History |
+ | forward-search-history (C-s) | 1.4.2 Commands For Manipulating The History |
+ | forward-word (M-f) | 1.4.1 Commands For Moving |
+ | forward-word (M-f) | 1.4.1 Commands For Moving |
|
H | | |
- | history-preserve-point | 1.3.1 Readline Init File Syntax |
- | history-search-backward () | 1.4.2 Commands For Manipulating The History |
- | history-search-backward () | 1.4.2 Commands For Manipulating The History |
- | history-search-forward () | 1.4.2 Commands For Manipulating The History |
- | history-search-forward () | 1.4.2 Commands For Manipulating The History |
- | history-size | 1.3.1 Readline Init File Syntax |
- | horizontal-scroll-mode | 1.3.1 Readline Init File Syntax |
+ | history-preserve-point | 1.3.1 Readline Init File Syntax |
+ | history-search-backward () | 1.4.2 Commands For Manipulating The History |
+ | history-search-backward () | 1.4.2 Commands For Manipulating The History |
+ | history-search-forward () | 1.4.2 Commands For Manipulating The History |
+ | history-search-forward () | 1.4.2 Commands For Manipulating The History |
+ | history-size | 1.3.1 Readline Init File Syntax |
+ | horizontal-scroll-mode | 1.3.1 Readline Init File Syntax |
|
I | | |
- | input-meta | 1.3.1 Readline Init File Syntax |
- | insert-comment (M-#) | 1.4.8 Some Miscellaneous Commands |
- | insert-comment (M-#) | 1.4.8 Some Miscellaneous Commands |
- | insert-completions (M-*) | 1.4.6 Letting Readline Type For You |
- | insert-completions (M-*) | 1.4.6 Letting Readline Type For You |
- | isearch-terminators | 1.3.1 Readline Init File Syntax |
+ | input-meta | 1.3.1 Readline Init File Syntax |
+ | insert-comment (M-#) | 1.4.8 Some Miscellaneous Commands |
+ | insert-comment (M-#) | 1.4.8 Some Miscellaneous Commands |
+ | insert-completions (M-*) | 1.4.6 Letting Readline Type For You |
+ | insert-completions (M-*) | 1.4.6 Letting Readline Type For You |
+ | isearch-terminators | 1.3.1 Readline Init File Syntax |
|
K | | |
- | keymap | 1.3.1 Readline Init File Syntax |
- | kill-line (C-k) | 1.4.4 Killing And Yanking |
- | kill-line (C-k) | 1.4.4 Killing And Yanking |
- | kill-region () | 1.4.4 Killing And Yanking |
- | kill-region () | 1.4.4 Killing And Yanking |
- | kill-whole-line () | 1.4.4 Killing And Yanking |
- | kill-whole-line () | 1.4.4 Killing And Yanking |
- | kill-word (M-d) | 1.4.4 Killing And Yanking |
- | kill-word (M-d) | 1.4.4 Killing And Yanking |
+ | keymap | 1.3.1 Readline Init File Syntax |
+ | kill-line (C-k) | 1.4.4 Killing And Yanking |
+ | kill-line (C-k) | 1.4.4 Killing And Yanking |
+ | kill-region () | 1.4.4 Killing And Yanking |
+ | kill-region () | 1.4.4 Killing And Yanking |
+ | kill-whole-line () | 1.4.4 Killing And Yanking |
+ | kill-whole-line () | 1.4.4 Killing And Yanking |
+ | kill-word (M-d) | 1.4.4 Killing And Yanking |
+ | kill-word (M-d) | 1.4.4 Killing And Yanking |
|
M | | |
- | mark-modified-lines | 1.3.1 Readline Init File Syntax |
- | mark-symlinked-directories | 1.3.1 Readline Init File Syntax |
- | match-hidden-files | 1.3.1 Readline Init File Syntax |
- | menu-complete () | 1.4.6 Letting Readline Type For You |
- | menu-complete () | 1.4.6 Letting Readline Type For You |
- | menu-complete-backward () | 1.4.6 Letting Readline Type For You |
- | menu-complete-backward () | 1.4.6 Letting Readline Type For You |
- | meta-flag | 1.3.1 Readline Init File Syntax |
+ | mark-modified-lines | 1.3.1 Readline Init File Syntax |
+ | mark-symlinked-directories | 1.3.1 Readline Init File Syntax |
+ | match-hidden-files | 1.3.1 Readline Init File Syntax |
+ | menu-complete () | 1.4.6 Letting Readline Type For You |
+ | menu-complete () | 1.4.6 Letting Readline Type For You |
+ | menu-complete-backward () | 1.4.6 Letting Readline Type For You |
+ | menu-complete-backward () | 1.4.6 Letting Readline Type For You |
+ | menu-complete-display-prefix | 1.3.1 Readline Init File Syntax |
+ | meta-flag | 1.3.1 Readline Init File Syntax |
|
N | | |
- | next-history (C-n) | 1.4.2 Commands For Manipulating The History |
- | next-history (C-n) | 1.4.2 Commands For Manipulating The History |
- | non-incremental-forward-search-history (M-n) | 1.4.2 Commands For Manipulating The History |
- | non-incremental-forward-search-history (M-n) | 1.4.2 Commands For Manipulating The History |
- | non-incremental-reverse-search-history (M-p) | 1.4.2 Commands For Manipulating The History |
- | non-incremental-reverse-search-history (M-p) | 1.4.2 Commands For Manipulating The History |
+ | next-history (C-n) | 1.4.2 Commands For Manipulating The History |
+ | next-history (C-n) | 1.4.2 Commands For Manipulating The History |
+ | non-incremental-forward-search-history (M-n) | 1.4.2 Commands For Manipulating The History |
+ | non-incremental-forward-search-history (M-n) | 1.4.2 Commands For Manipulating The History |
+ | non-incremental-reverse-search-history (M-p) | 1.4.2 Commands For Manipulating The History |
+ | non-incremental-reverse-search-history (M-p) | 1.4.2 Commands For Manipulating The History |
|
O | | |
- | output-meta | 1.3.1 Readline Init File Syntax |
- | overwrite-mode () | 1.4.3 Commands For Changing Text |
- | overwrite-mode () | 1.4.3 Commands For Changing Text |
+ | output-meta | 1.3.1 Readline Init File Syntax |
+ | overwrite-mode () | 1.4.3 Commands For Changing Text |
+ | overwrite-mode () | 1.4.3 Commands For Changing Text |
|
P | | |
- | page-completions | 1.3.1 Readline Init File Syntax |
- | possible-completions (M-?) | 1.4.6 Letting Readline Type For You |
- | possible-completions (M-?) | 1.4.6 Letting Readline Type For You |
- | prefix-meta (ESC) | 1.4.8 Some Miscellaneous Commands |
- | prefix-meta (ESC) | 1.4.8 Some Miscellaneous Commands |
- | previous-history (C-p) | 1.4.2 Commands For Manipulating The History |
- | previous-history (C-p) | 1.4.2 Commands For Manipulating The History |
+ | page-completions | 1.3.1 Readline Init File Syntax |
+ | possible-completions (M-?) | 1.4.6 Letting Readline Type For You |
+ | possible-completions (M-?) | 1.4.6 Letting Readline Type For You |
+ | prefix-meta (ESC) | 1.4.8 Some Miscellaneous Commands |
+ | prefix-meta (ESC) | 1.4.8 Some Miscellaneous Commands |
+ | previous-history (C-p) | 1.4.2 Commands For Manipulating The History |
+ | previous-history (C-p) | 1.4.2 Commands For Manipulating The History |
|
Q | | |
- | quoted-insert (C-q or C-v) | 1.4.3 Commands For Changing Text |
- | quoted-insert (C-q or C-v) | 1.4.3 Commands For Changing Text |
+ | quoted-insert (C-q or C-v) | 1.4.3 Commands For Changing Text |
+ | quoted-insert (C-q or C-v) | 1.4.3 Commands For Changing Text |
|
R | | |
- | re-read-init-file (C-x C-r) | 1.4.8 Some Miscellaneous Commands |
- | re-read-init-file (C-x C-r) | 1.4.8 Some Miscellaneous Commands |
- | readline | 2.1 Basic Behavior |
- | redraw-current-line () | 1.4.1 Commands For Moving |
- | redraw-current-line () | 1.4.1 Commands For Moving |
- | reverse-search-history (C-r) | 1.4.2 Commands For Manipulating The History |
- | reverse-search-history (C-r) | 1.4.2 Commands For Manipulating The History |
- | revert-all-at-newline | 1.3.1 Readline Init File Syntax |
- | revert-line (M-r) | 1.4.8 Some Miscellaneous Commands |
- | revert-line (M-r) | 1.4.8 Some Miscellaneous Commands |
- | rl_add_defun | 2.4.1 Naming a Function |
- | rl_add_funmap_entry | 2.4.4 Associating Function Names and Bindings |
- | rl_add_undo | 2.4.5 Allowing Undoing |
- | rl_alphabetic | 2.4.10 Utility Functions |
- | rl_already_prompted | 2.3 Readline Variables |
- | rl_attempted_completion_function | 2.6.3 Completion Variables |
- | rl_attempted_completion_over | 2.6.3 Completion Variables |
- | rl_basic_quote_characters | 2.6.3 Completion Variables |
- | rl_basic_word_break_characters | 2.6.3 Completion Variables |
- | rl_begin_undo_group | 2.4.5 Allowing Undoing |
- | rl_bind_key | 2.4.3 Binding Keys |
- | rl_bind_key_if_unbound | 2.4.3 Binding Keys |
- | rl_bind_key_if_unbound_in_map | 2.4.3 Binding Keys |
- | rl_bind_key_in_map | 2.4.3 Binding Keys |
- | rl_bind_keyseq | 2.4.3 Binding Keys |
- | rl_bind_keyseq_if_unbound | 2.4.3 Binding Keys |
- | rl_bind_keyseq_if_unbound_in_map | 2.4.3 Binding Keys |
- | rl_bind_keyseq_in_map | 2.4.3 Binding Keys |
- | rl_binding_keymap | 2.3 Readline Variables |
- | rl_callback_handler_install | 2.4.12 Alternate Interface |
- | rl_callback_handler_remove | 2.4.12 Alternate Interface |
- | rl_callback_read_char | 2.4.12 Alternate Interface |
- | rl_catch_signals | 2.5 Readline Signal Handling |
- | rl_catch_sigwinch | 2.5 Readline Signal Handling |
- | rl_char_is_quoted_p | 2.6.3 Completion Variables |
- | rl_cleanup_after_signal | 2.5 Readline Signal Handling |
- | rl_clear_message | 2.4.6 Redisplay |
- | rl_clear_pending_input | 2.4.8 Character Input |
- | rl_clear_signals | 2.5 Readline Signal Handling |
- | rl_complete | 2.6.1 How Completing Works |
- | rl_complete | 2.6.2 Completion Functions |
- | rl_complete_internal | 2.6.2 Completion Functions |
- | rl_completer_quote_characters | 2.6.3 Completion Variables |
- | rl_completer_word_break_characters | 2.6.3 Completion Variables |
- | rl_completion_append_character | 2.6.3 Completion Variables |
- | rl_completion_display_matches_hook | 2.6.3 Completion Variables |
- | rl_completion_entry_function | 2.6.1 How Completing Works |
- | rl_completion_entry_function | 2.6.3 Completion Variables |
- | rl_completion_found_quote | 2.6.3 Completion Variables |
- | rl_completion_invoking_key | 2.6.3 Completion Variables |
- | rl_completion_mark_symlink_dirs | 2.6.3 Completion Variables |
- | rl_completion_matches | 2.6.2 Completion Functions |
- | rl_completion_mode | 2.6.2 Completion Functions |
- | rl_completion_query_items | 2.6.3 Completion Variables |
- | rl_completion_quote_character | 2.6.3 Completion Variables |
- | rl_completion_suppress_append | 2.6.3 Completion Variables |
- | rl_completion_suppress_quote | 2.6.3 Completion Variables |
- | rl_completion_type | 2.6.3 Completion Variables |
- | rl_completion_word_break_hook | 2.6.3 Completion Variables |
- | rl_copy_keymap | 2.4.2 Selecting a Keymap |
- | rl_copy_text | 2.4.7 Modifying Text |
- | rl_crlf | 2.4.6 Redisplay |
- | rl_delete_text | 2.4.7 Modifying Text |
- | rl_deprep_term_function | 2.3 Readline Variables |
- | rl_deprep_terminal | 2.4.9 Terminal Management |
- | rl_ding | 2.4.10 Utility Functions |
- | rl_directory_completion_hook | 2.6.3 Completion Variables |
- | rl_discard_keymap | 2.4.2 Selecting a Keymap |
- | rl_dispatching | 2.3 Readline Variables |
- | rl_display_match_list | 2.4.10 Utility Functions |
- | rl_display_prompt | 2.3 Readline Variables |
- | rl_do_undo | 2.4.5 Allowing Undoing |
- | rl_done | 2.3 Readline Variables |
- | rl_echo_signal_char | 2.5 Readline Signal Handling |
- | rl_editing_mode | 2.3 Readline Variables |
- | rl_end | 2.3 Readline Variables |
- | rl_end_undo_group | 2.4.5 Allowing Undoing |
- | rl_erase_empty_line | 2.3 Readline Variables |
- | rl_event_hook | 2.3 Readline Variables |
- | rl_execute_next | 2.4.8 Character Input |
- | rl_executing_keymap | 2.3 Readline Variables |
- | rl_executing_macro | 2.3 Readline Variables |
- | rl_expand_prompt | 2.4.6 Redisplay |
- | rl_explicit_arg | 2.3 Readline Variables |
- | rl_extend_line_buffer | 2.4.10 Utility Functions |
- | rl_filename_completion_desired | 2.6.3 Completion Variables |
- | rl_filename_completion_function | 2.6.2 Completion Functions |
- | rl_filename_dequoting_function | 2.6.3 Completion Variables |
- | rl_filename_quote_characters | 2.6.3 Completion Variables |
- | rl_filename_quoting_desired | 2.6.3 Completion Variables |
- | rl_filename_quoting_function | 2.6.3 Completion Variables |
- | rl_filename_rewrite_hook | 2.6.3 Completion Variables |
- | rl_forced_update_display | 2.4.6 Redisplay |
- | rl_free | 2.4.10 Utility Functions |
- | rl_free_keymap | 2.4.2 Selecting a Keymap |
- | rl_free_line_state | 2.5 Readline Signal Handling |
- | rl_free_undo_list | 2.4.5 Allowing Undoing |
- | rl_function_dumper | 2.4.4 Associating Function Names and Bindings |
- | rl_function_of_keyseq | 2.4.4 Associating Function Names and Bindings |
- | rl_funmap_names | 2.4.4 Associating Function Names and Bindings |
- | rl_generic_bind | 2.4.3 Binding Keys |
- | rl_get_keymap | 2.4.2 Selecting a Keymap |
- | rl_get_keymap_by_name | 2.4.2 Selecting a Keymap |
- | rl_get_keymap_name | 2.4.2 Selecting a Keymap |
- | rl_get_screen_size | 2.5 Readline Signal Handling |
- | rl_get_termcap | 2.4.11 Miscellaneous Functions |
- | rl_getc | 2.4.8 Character Input |
- | rl_getc_function | 2.3 Readline Variables |
- | rl_gnu_readline_p | 2.3 Readline Variables |
- | rl_ignore_completion_duplicates | 2.6.3 Completion Variables |
- | rl_ignore_some_completions_function | 2.6.3 Completion Variables |
- | rl_inhibit_completion | 2.6.3 Completion Variables |
- | rl_initialize | 2.4.10 Utility Functions |
- | rl_insert_completions | 2.6.2 Completion Functions |
- | rl_insert_text | 2.4.7 Modifying Text |
- | rl_instream | 2.3 Readline Variables |
- | rl_invoking_keyseqs | 2.4.4 Associating Function Names and Bindings |
- | rl_invoking_keyseqs_in_map | 2.4.4 Associating Function Names and Bindings |
- | rl_kill_text | 2.4.7 Modifying Text |
- | rl_last_func | 2.3 Readline Variables |
- | rl_library_version | 2.3 Readline Variables |
- | rl_line_buffer | 2.3 Readline Variables |
- | rl_list_funmap_names | 2.4.4 Associating Function Names and Bindings |
- | rl_macro_bind | 2.4.11 Miscellaneous Functions |
- | rl_macro_dumper | 2.4.11 Miscellaneous Functions |
- | rl_make_bare_keymap | 2.4.2 Selecting a Keymap |
- | rl_make_keymap | 2.4.2 Selecting a Keymap |
- | rl_mark | 2.3 Readline Variables |
- | rl_message | 2.4.6 Redisplay |
- | rl_modifying | 2.4.5 Allowing Undoing |
- | rl_named_function | 2.4.4 Associating Function Names and Bindings |
- | rl_num_chars_to_read | 2.3 Readline Variables |
- | rl_numeric_arg | 2.3 Readline Variables |
- | rl_on_new_line | 2.4.6 Redisplay |
- | rl_on_new_line_with_prompt | 2.4.6 Redisplay |
- | rl_outstream | 2.3 Readline Variables |
- | rl_parse_and_bind | 2.4.3 Binding Keys |
- | rl_pending_input | 2.3 Readline Variables |
- | rl_point | 2.3 Readline Variables |
- | rl_possible_completions | 2.6.2 Completion Functions |
- | rl_pre_input_hook | 2.3 Readline Variables |
- | rl_prefer_env_winsize | 2.3 Readline Variables |
- | rl_prep_term_function | 2.3 Readline Variables |
- | rl_prep_terminal | 2.4.9 Terminal Management |
- | rl_prompt | 2.3 Readline Variables |
- | rl_push_macro_input | 2.4.7 Modifying Text |
- | rl_read_init_file | 2.4.3 Binding Keys |
- | rl_read_key | 2.4.8 Character Input |
- | rl_readline_name | 2.3 Readline Variables |
- | rl_readline_state | 2.3 Readline Variables |
- | rl_readline_version | 2.3 Readline Variables |
- | rl_redisplay | 2.4.6 Redisplay |
- | rl_redisplay_function | 2.3 Readline Variables |
- | rl_replace_line | 2.4.10 Utility Functions |
- | rl_reset_after_signal | 2.5 Readline Signal Handling |
- | rl_reset_line_state | 2.4.6 Redisplay |
- | rl_reset_screen_size | 2.5 Readline Signal Handling |
- | rl_reset_terminal | 2.4.9 Terminal Management |
- | rl_resize_terminal | 2.5 Readline Signal Handling |
- | rl_restore_prompt | 2.4.6 Redisplay |
- | rl_restore_state | 2.4.10 Utility Functions |
- | rl_save_prompt | 2.4.6 Redisplay |
- | rl_save_state | 2.4.10 Utility Functions |
- | rl_set_key | 2.4.3 Binding Keys |
- | rl_set_keyboard_input_timeout | 2.4.8 Character Input |
- | rl_set_keymap | 2.4.2 Selecting a Keymap |
- | rl_set_paren_blink_timeout | 2.4.11 Miscellaneous Functions |
- | rl_set_prompt | 2.4.6 Redisplay |
- | rl_set_screen_size | 2.5 Readline Signal Handling |
- | rl_set_signals | 2.5 Readline Signal Handling |
- | rl_show_char | 2.4.6 Redisplay |
- | rl_sort_completion_matches | 2.6.3 Completion Variables |
- | rl_special_prefixes | 2.6.3 Completion Variables |
- | rl_startup_hook | 2.3 Readline Variables |
- | rl_stuff_char | 2.4.8 Character Input |
- | rl_terminal_name | 2.3 Readline Variables |
- | rl_tty_set_default_bindings | 2.4.9 Terminal Management |
- | rl_tty_unset_default_bindings | 2.4.9 Terminal Management |
- | rl_unbind_command_in_map | 2.4.3 Binding Keys |
- | rl_unbind_function_in_map | 2.4.3 Binding Keys |
- | rl_unbind_key | 2.4.3 Binding Keys |
- | rl_unbind_key_in_map | 2.4.3 Binding Keys |
- | rl_username_completion_function | 2.6.2 Completion Functions |
- | rl_variable_bind | 2.4.11 Miscellaneous Functions |
- | rl_variable_dumper | 2.4.11 Miscellaneous Functions |
- | rl_variable_value | 2.4.11 Miscellaneous Functions |
+ | re-read-init-file (C-x C-r) | 1.4.8 Some Miscellaneous Commands |
+ | re-read-init-file (C-x C-r) | 1.4.8 Some Miscellaneous Commands |
+ | readline | 2.1 Basic Behavior |
+ | redraw-current-line () | 1.4.1 Commands For Moving |
+ | redraw-current-line () | 1.4.1 Commands For Moving |
+ | reverse-search-history (C-r) | 1.4.2 Commands For Manipulating The History |
+ | reverse-search-history (C-r) | 1.4.2 Commands For Manipulating The History |
+ | revert-all-at-newline | 1.3.1 Readline Init File Syntax |
+ | revert-line (M-r) | 1.4.8 Some Miscellaneous Commands |
+ | revert-line (M-r) | 1.4.8 Some Miscellaneous Commands |
+ | rl_add_defun | 2.4.1 Naming a Function |
+ | rl_add_funmap_entry | 2.4.4 Associating Function Names and Bindings |
+ | rl_add_undo | 2.4.5 Allowing Undoing |
+ | rl_alphabetic | 2.4.10 Utility Functions |
+ | rl_already_prompted | 2.3 Readline Variables |
+ | rl_attempted_completion_function | 2.6.3 Completion Variables |
+ | rl_attempted_completion_over | 2.6.3 Completion Variables |
+ | rl_basic_quote_characters | 2.6.3 Completion Variables |
+ | rl_basic_word_break_characters | 2.6.3 Completion Variables |
+ | rl_begin_undo_group | 2.4.5 Allowing Undoing |
+ | rl_bind_key | 2.4.3 Binding Keys |
+ | rl_bind_key_if_unbound | 2.4.3 Binding Keys |
+ | rl_bind_key_if_unbound_in_map | 2.4.3 Binding Keys |
+ | rl_bind_key_in_map | 2.4.3 Binding Keys |
+ | rl_bind_keyseq | 2.4.3 Binding Keys |
+ | rl_bind_keyseq_if_unbound | 2.4.3 Binding Keys |
+ | rl_bind_keyseq_if_unbound_in_map | 2.4.3 Binding Keys |
+ | rl_bind_keyseq_in_map | 2.4.3 Binding Keys |
+ | rl_binding_keymap | 2.3 Readline Variables |
+ | rl_callback_handler_install | 2.4.12 Alternate Interface |
+ | rl_callback_handler_remove | 2.4.12 Alternate Interface |
+ | rl_callback_read_char | 2.4.12 Alternate Interface |
+ | rl_catch_signals | 2.5 Readline Signal Handling |
+ | rl_catch_sigwinch | 2.5 Readline Signal Handling |
+ | rl_char_is_quoted_p | 2.6.3 Completion Variables |
+ | rl_cleanup_after_signal | 2.5 Readline Signal Handling |
+ | rl_clear_message | 2.4.6 Redisplay |
+ | rl_clear_pending_input | 2.4.8 Character Input |
+ | rl_clear_signals | 2.5 Readline Signal Handling |
+ | rl_complete | 2.6.1 How Completing Works |
+ | rl_complete | 2.6.2 Completion Functions |
+ | rl_complete_internal | 2.6.2 Completion Functions |
+ | rl_completer_quote_characters | 2.6.3 Completion Variables |
+ | rl_completer_word_break_characters | 2.6.3 Completion Variables |
+ | rl_completion_append_character | 2.6.3 Completion Variables |
+ | rl_completion_display_matches_hook | 2.6.3 Completion Variables |
+ | rl_completion_entry_function | 2.6.1 How Completing Works |
+ | rl_completion_entry_function | 2.6.3 Completion Variables |
+ | rl_completion_found_quote | 2.6.3 Completion Variables |
+ | rl_completion_invoking_key | 2.6.3 Completion Variables |
+ | rl_completion_mark_symlink_dirs | 2.6.3 Completion Variables |
+ | rl_completion_matches | 2.6.2 Completion Functions |
+ | rl_completion_mode | 2.6.2 Completion Functions |
+ | rl_completion_query_items | 2.6.3 Completion Variables |
+ | rl_completion_quote_character | 2.6.3 Completion Variables |
+ | rl_completion_suppress_append | 2.6.3 Completion Variables |
+ | rl_completion_suppress_quote | 2.6.3 Completion Variables |
+ | rl_completion_type | 2.6.3 Completion Variables |
+ | rl_completion_word_break_hook | 2.6.3 Completion Variables |
+ | rl_copy_keymap | 2.4.2 Selecting a Keymap |
+ | rl_copy_text | 2.4.7 Modifying Text |
+ | rl_crlf | 2.4.6 Redisplay |
+ | rl_delete_text | 2.4.7 Modifying Text |
+ | rl_deprep_term_function | 2.3 Readline Variables |
+ | rl_deprep_terminal | 2.4.9 Terminal Management |
+ | rl_ding | 2.4.10 Utility Functions |
+ | rl_directory_completion_hook | 2.6.3 Completion Variables |
+ | rl_discard_keymap | 2.4.2 Selecting a Keymap |
+ | rl_dispatching | 2.3 Readline Variables |
+ | rl_display_match_list | 2.4.10 Utility Functions |
+ | rl_display_prompt | 2.3 Readline Variables |
+ | rl_do_undo | 2.4.5 Allowing Undoing |
+ | rl_done | 2.3 Readline Variables |
+ | rl_echo_signal_char | 2.5 Readline Signal Handling |
+ | rl_editing_mode | 2.3 Readline Variables |
+ | rl_end | 2.3 Readline Variables |
+ | rl_end_undo_group | 2.4.5 Allowing Undoing |
+ | rl_erase_empty_line | 2.3 Readline Variables |
+ | rl_event_hook | 2.3 Readline Variables |
+ | rl_execute_next | 2.4.8 Character Input |
+ | rl_executing_keymap | 2.3 Readline Variables |
+ | rl_executing_macro | 2.3 Readline Variables |
+ | rl_expand_prompt | 2.4.6 Redisplay |
+ | rl_explicit_arg | 2.3 Readline Variables |
+ | rl_extend_line_buffer | 2.4.10 Utility Functions |
+ | rl_filename_completion_desired | 2.6.3 Completion Variables |
+ | rl_filename_completion_function | 2.6.2 Completion Functions |
+ | rl_filename_dequoting_function | 2.6.3 Completion Variables |
+ | rl_filename_quote_characters | 2.6.3 Completion Variables |
+ | rl_filename_quoting_desired | 2.6.3 Completion Variables |
+ | rl_filename_quoting_function | 2.6.3 Completion Variables |
+ | rl_filename_rewrite_hook | 2.6.3 Completion Variables |
+ | rl_forced_update_display | 2.4.6 Redisplay |
+ | rl_free | 2.4.10 Utility Functions |
+ | rl_free_keymap | 2.4.2 Selecting a Keymap |
+ | rl_free_line_state | 2.5 Readline Signal Handling |
+ | rl_free_undo_list | 2.4.5 Allowing Undoing |
+ | rl_function_dumper | 2.4.4 Associating Function Names and Bindings |
+ | rl_function_of_keyseq | 2.4.4 Associating Function Names and Bindings |
+ | rl_funmap_names | 2.4.4 Associating Function Names and Bindings |
+ | rl_generic_bind | 2.4.3 Binding Keys |
+ | rl_get_keymap | 2.4.2 Selecting a Keymap |
+ | rl_get_keymap_by_name | 2.4.2 Selecting a Keymap |
+ | rl_get_keymap_name | 2.4.2 Selecting a Keymap |
+ | rl_get_screen_size | 2.5 Readline Signal Handling |
+ | rl_get_termcap | 2.4.11 Miscellaneous Functions |
+ | rl_getc | 2.4.8 Character Input |
+ | rl_getc_function | 2.3 Readline Variables |
+ | rl_gnu_readline_p | 2.3 Readline Variables |
+ | rl_ignore_completion_duplicates | 2.6.3 Completion Variables |
+ | rl_ignore_some_completions_function | 2.6.3 Completion Variables |
+ | rl_inhibit_completion | 2.6.3 Completion Variables |
+ | rl_initialize | 2.4.10 Utility Functions |
+ | rl_insert_completions | 2.6.2 Completion Functions |
+ | rl_insert_text | 2.4.7 Modifying Text |
+ | rl_instream | 2.3 Readline Variables |
+ | rl_invoking_keyseqs | 2.4.4 Associating Function Names and Bindings |
+ | rl_invoking_keyseqs_in_map | 2.4.4 Associating Function Names and Bindings |
+ | rl_kill_text | 2.4.7 Modifying Text |
+ | rl_last_func | 2.3 Readline Variables |
+ | rl_library_version | 2.3 Readline Variables |
+ | rl_line_buffer | 2.3 Readline Variables |
+ | rl_list_funmap_names | 2.4.4 Associating Function Names and Bindings |
+ | rl_macro_bind | 2.4.11 Miscellaneous Functions |
+ | rl_macro_dumper | 2.4.11 Miscellaneous Functions |
+ | rl_make_bare_keymap | 2.4.2 Selecting a Keymap |
+ | rl_make_keymap | 2.4.2 Selecting a Keymap |
+ | rl_mark | 2.3 Readline Variables |
+ | rl_message | 2.4.6 Redisplay |
+ | rl_modifying | 2.4.5 Allowing Undoing |
+ | rl_named_function | 2.4.4 Associating Function Names and Bindings |
+ | rl_num_chars_to_read | 2.3 Readline Variables |
+ | rl_numeric_arg | 2.3 Readline Variables |
+ | rl_on_new_line | 2.4.6 Redisplay |
+ | rl_on_new_line_with_prompt | 2.4.6 Redisplay |
+ | rl_outstream | 2.3 Readline Variables |
+ | rl_parse_and_bind | 2.4.3 Binding Keys |
+ | rl_pending_input | 2.3 Readline Variables |
+ | rl_point | 2.3 Readline Variables |
+ | rl_possible_completions | 2.6.2 Completion Functions |
+ | rl_pre_input_hook | 2.3 Readline Variables |
+ | rl_prefer_env_winsize | 2.3 Readline Variables |
+ | rl_prep_term_function | 2.3 Readline Variables |
+ | rl_prep_terminal | 2.4.9 Terminal Management |
+ | rl_prompt | 2.3 Readline Variables |
+ | rl_push_macro_input | 2.4.7 Modifying Text |
+ | rl_read_init_file | 2.4.3 Binding Keys |
+ | rl_read_key | 2.4.8 Character Input |
+ | rl_readline_name | 2.3 Readline Variables |
+ | rl_readline_state | 2.3 Readline Variables |
+ | rl_readline_version | 2.3 Readline Variables |
+ | rl_redisplay | 2.4.6 Redisplay |
+ | rl_redisplay_function | 2.3 Readline Variables |
+ | rl_replace_line | 2.4.10 Utility Functions |
+ | rl_reset_after_signal | 2.5 Readline Signal Handling |
+ | rl_reset_line_state | 2.4.6 Redisplay |
+ | rl_reset_screen_size | 2.5 Readline Signal Handling |
+ | rl_reset_terminal | 2.4.9 Terminal Management |
+ | rl_resize_terminal | 2.5 Readline Signal Handling |
+ | rl_restore_prompt | 2.4.6 Redisplay |
+ | rl_restore_state | 2.4.10 Utility Functions |
+ | rl_save_prompt | 2.4.6 Redisplay |
+ | rl_save_state | 2.4.10 Utility Functions |
+ | rl_set_key | 2.4.3 Binding Keys |
+ | rl_set_keyboard_input_timeout | 2.4.8 Character Input |
+ | rl_set_keymap | 2.4.2 Selecting a Keymap |
+ | rl_set_paren_blink_timeout | 2.4.11 Miscellaneous Functions |
+ | rl_set_prompt | 2.4.6 Redisplay |
+ | rl_set_screen_size | 2.5 Readline Signal Handling |
+ | rl_set_signals | 2.5 Readline Signal Handling |
+ | rl_show_char | 2.4.6 Redisplay |
+ | rl_sort_completion_matches | 2.6.3 Completion Variables |
+ | rl_special_prefixes | 2.6.3 Completion Variables |
+ | rl_startup_hook | 2.3 Readline Variables |
+ | rl_stuff_char | 2.4.8 Character Input |
+ | rl_terminal_name | 2.3 Readline Variables |
+ | rl_tty_set_default_bindings | 2.4.9 Terminal Management |
+ | rl_tty_unset_default_bindings | 2.4.9 Terminal Management |
+ | rl_unbind_command_in_map | 2.4.3 Binding Keys |
+ | rl_unbind_function_in_map | 2.4.3 Binding Keys |
+ | rl_unbind_key | 2.4.3 Binding Keys |
+ | rl_unbind_key_in_map | 2.4.3 Binding Keys |
+ | rl_username_completion_function | 2.6.2 Completion Functions |
+ | rl_variable_bind | 2.4.11 Miscellaneous Functions |
+ | rl_variable_dumper | 2.4.11 Miscellaneous Functions |
+ | rl_variable_value | 2.4.11 Miscellaneous Functions |
|
S | | |
- | self-insert (a, b, A, 1, !, <small>...</small>) | 1.4.3 Commands For Changing Text |
- | self-insert (a, b, A, 1, !, <small>...</small>) | 1.4.3 Commands For Changing Text |
- | set-mark (C-@) | 1.4.8 Some Miscellaneous Commands |
- | set-mark (C-@) | 1.4.8 Some Miscellaneous Commands |
- | show-all-if-ambiguous | 1.3.1 Readline Init File Syntax |
- | show-all-if-unmodified | 1.3.1 Readline Init File Syntax |
- | skip-completed-text | 1.3.1 Readline Init File Syntax |
- | skip-csi-sequence () | 1.4.8 Some Miscellaneous Commands |
- | skip-csi-sequence () | 1.4.8 Some Miscellaneous Commands |
- | start-kbd-macro (C-x () | 1.4.7 Keyboard Macros |
- | start-kbd-macro (C-x () | 1.4.7 Keyboard Macros |
+ | self-insert (a, b, A, 1, !, <small>...</small>) | 1.4.3 Commands For Changing Text |
+ | self-insert (a, b, A, 1, !, <small>...</small>) | 1.4.3 Commands For Changing Text |
+ | set-mark (C-@) | 1.4.8 Some Miscellaneous Commands |
+ | set-mark (C-@) | 1.4.8 Some Miscellaneous Commands |
+ | show-all-if-ambiguous | 1.3.1 Readline Init File Syntax |
+ | show-all-if-unmodified | 1.3.1 Readline Init File Syntax |
+ | skip-completed-text | 1.3.1 Readline Init File Syntax |
+ | skip-csi-sequence () | 1.4.8 Some Miscellaneous Commands |
+ | skip-csi-sequence () | 1.4.8 Some Miscellaneous Commands |
+ | start-kbd-macro (C-x () | 1.4.7 Keyboard Macros |
+ | start-kbd-macro (C-x () | 1.4.7 Keyboard Macros |
|
T | | |
- | tab-insert (M-TAB) | 1.4.3 Commands For Changing Text |
- | tab-insert (M-TAB) | 1.4.3 Commands For Changing Text |
- | tilde-expand (M-~) | 1.4.8 Some Miscellaneous Commands |
- | tilde-expand (M-~) | 1.4.8 Some Miscellaneous Commands |
- | transpose-chars (C-t) | 1.4.3 Commands For Changing Text |
- | transpose-chars (C-t) | 1.4.3 Commands For Changing Text |
- | transpose-words (M-t) | 1.4.3 Commands For Changing Text |
- | transpose-words (M-t) | 1.4.3 Commands For Changing Text |
+ | tab-insert (M-TAB) | 1.4.3 Commands For Changing Text |
+ | tab-insert (M-TAB) | 1.4.3 Commands For Changing Text |
+ | tilde-expand (M-~) | 1.4.8 Some Miscellaneous Commands |
+ | tilde-expand (M-~) | 1.4.8 Some Miscellaneous Commands |
+ | transpose-chars (C-t) | 1.4.3 Commands For Changing Text |
+ | transpose-chars (C-t) | 1.4.3 Commands For Changing Text |
+ | transpose-words (M-t) | 1.4.3 Commands For Changing Text |
+ | transpose-words (M-t) | 1.4.3 Commands For Changing Text |
|
U | | |
- | undo (C-_ or C-x C-u) | 1.4.8 Some Miscellaneous Commands |
- | undo (C-_ or C-x C-u) | 1.4.8 Some Miscellaneous Commands |
- | universal-argument () | 1.4.5 Specifying Numeric Arguments |
- | universal-argument () | 1.4.5 Specifying Numeric Arguments |
- | unix-filename-rubout () | 1.4.4 Killing And Yanking |
- | unix-filename-rubout () | 1.4.4 Killing And Yanking |
- | unix-line-discard (C-u) | 1.4.4 Killing And Yanking |
- | unix-line-discard (C-u) | 1.4.4 Killing And Yanking |
- | unix-word-rubout (C-w) | 1.4.4 Killing And Yanking |
- | unix-word-rubout (C-w) | 1.4.4 Killing And Yanking |
- | upcase-word (M-u) | 1.4.3 Commands For Changing Text |
- | upcase-word (M-u) | 1.4.3 Commands For Changing Text |
+ | undo (C-_ or C-x C-u) | 1.4.8 Some Miscellaneous Commands |
+ | undo (C-_ or C-x C-u) | 1.4.8 Some Miscellaneous Commands |
+ | universal-argument () | 1.4.5 Specifying Numeric Arguments |
+ | universal-argument () | 1.4.5 Specifying Numeric Arguments |
+ | unix-filename-rubout () | 1.4.4 Killing And Yanking |
+ | unix-filename-rubout () | 1.4.4 Killing And Yanking |
+ | unix-line-discard (C-u) | 1.4.4 Killing And Yanking |
+ | unix-line-discard (C-u) | 1.4.4 Killing And Yanking |
+ | unix-word-rubout (C-w) | 1.4.4 Killing And Yanking |
+ | unix-word-rubout (C-w) | 1.4.4 Killing And Yanking |
+ | upcase-word (M-u) | 1.4.3 Commands For Changing Text |
+ | upcase-word (M-u) | 1.4.3 Commands For Changing Text |
|
V | | |
- | vi-editing-mode (M-C-j) | 1.4.8 Some Miscellaneous Commands |
- | vi-editing-mode (M-C-j) | 1.4.8 Some Miscellaneous Commands |
- | visible-stats | 1.3.1 Readline Init File Syntax |
+ | vi-editing-mode (M-C-j) | 1.4.8 Some Miscellaneous Commands |
+ | vi-editing-mode (M-C-j) | 1.4.8 Some Miscellaneous Commands |
+ | visible-stats | 1.3.1 Readline Init File Syntax |
|
Y | | |
- | yank (C-y) | 1.4.4 Killing And Yanking |
- | yank (C-y) | 1.4.4 Killing And Yanking |
- | yank-last-arg (M-. or M-_) | 1.4.2 Commands For Manipulating The History |
- | yank-last-arg (M-. or M-_) | 1.4.2 Commands For Manipulating The History |
- | yank-nth-arg (M-C-y) | 1.4.2 Commands For Manipulating The History |
- | yank-nth-arg (M-C-y) | 1.4.2 Commands For Manipulating The History |
- | yank-pop (M-y) | 1.4.4 Killing And Yanking |
- | yank-pop (M-y) | 1.4.4 Killing And Yanking |
+ | yank (C-y) | 1.4.4 Killing And Yanking |
+ | yank (C-y) | 1.4.4 Killing And Yanking |
+ | yank-last-arg (M-. or M-_) | 1.4.2 Commands For Manipulating The History |
+ | yank-last-arg (M-. or M-_) | 1.4.2 Commands For Manipulating The History |
+ | yank-nth-arg (M-C-y) | 1.4.2 Commands For Manipulating The History |
+ | yank-nth-arg (M-C-y) | 1.4.2 Commands For Manipulating The History |
+ | yank-pop (M-y) | 1.4.4 Killing And Yanking |
+ | yank-pop (M-y) | 1.4.4 Killing And Yanking |
|
Jump to: | _
@@ -6795,7 +6837,7 @@ to permit their use in free software.
| [ ? ] |
---|
About this document
-This document was generated by Chet Ramey on October, 12 2009
+This document was generated by Chet Ramey on February, 8 2011
using texi2html
@@ -6957,7 +6999,7 @@ the following structure:
This document was generated
-by Chet Ramey on October, 12 2009
+by Chet Ramey on February, 8 2011
using texi2html
diff --git a/doc/readline.info b/doc/readline.info
index 272d79b..0e13eff 100644
--- a/doc/readline.info
+++ b/doc/readline.info
@@ -1,11 +1,11 @@
This is readline.info, produced by makeinfo version 4.13 from
/usr/src/local/chet/src/bash/readline-src/doc/rlman.texi.
-This manual describes the GNU Readline Library (version 6.1, 9 October
-2009), a library which aids in the consistency of user interface across
-discrete programs which provide a command line interface.
+This manual describes the GNU Readline Library (version 6.2, September
+6 2010), a library which aids in the consistency of user interface
+across discrete programs which provide a command line interface.
- Copyright (C) 1988-2009 Free Software Foundation, Inc.
+ Copyright (C) 1988-2011 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
@@ -402,11 +402,24 @@ Variable Settings
`insert-comment' command is executed. The default value is
`"#"'.
+ `completion-display-width'
+ The number of screen columns used to display possible matches
+ when performing completion. The value is ignored if it is
+ less than 0 or greater than the terminal screen width. A
+ value of 0 will cause matches to be displayed one per line.
+ The default value is -1.
+
`completion-ignore-case'
If set to `on', Readline performs filename matching and
completion in a case-insensitive fashion. The default value
is `off'.
+ `completion-map-case'
+ If set to `on', and COMPLETION-IGNORE-CASE is enabled,
+ Readline treats hyphens (`-') and underscores (`_') as
+ equivalent when performing case-insensitive filename matching
+ and completion.
+
`completion-prefix-display-length'
The length in characters of the common prefix of a list of
possible completions that is displayed without modification.
@@ -519,9 +532,14 @@ Variable Settings
`match-hidden-files'
This variable, when set to `on', causes Readline to match
files whose names begin with a `.' (hidden files) when
- performing filename completion, unless the leading `.' is
- supplied by the user in the filename to be completed. This
- variable is `on' by default.
+ performing filename completion. If set to `off', the leading
+ `.' must be supplied by the user in the filename to be
+ completed. This variable is `on' by default.
+
+ `menu-complete-display-prefix'
+ If set to `on', menu completion displays the common prefix of
+ the list of possible completions (which may be empty) before
+ cycling through the list. The default is `off'.
`output-meta'
If set to `on', Readline will display characters with the
@@ -992,11 +1010,16 @@ File: readline.info, Node: Commands For History, Next: Commands For Text, Pre
`yank-last-arg (M-. or M-_)'
Insert last argument to the previous command (the last word of the
- previous history entry). With an argument, behave exactly like
- `yank-nth-arg'. Successive calls to `yank-last-arg' move back
- through the history list, inserting the last argument of each line
- in turn. The history expansion facilities are used to extract the
- last argument, as if the `!$' history expansion had been specified.
+ previous history entry). With a numeric argument, behave exactly
+ like `yank-nth-arg'. Successive calls to `yank-last-arg' move
+ back through the history list, inserting the last word (or the
+ word specified by the argument to the first call) of each line in
+ turn. Any numeric argument supplied to these successive calls
+ determines the direction to move through the history. A negative
+ argument switches the direction through the history (back or
+ forward). The history expansion facilities are used to extract
+ the last argument, as if the `!$' history expansion had been
+ specified.
@@ -1168,7 +1191,11 @@ File: readline.info, Node: Commands For Completion, Next: Keyboard Macros, Pr
is filename completion.
`possible-completions (M-?)'
- List the possible completions of the text before point.
+ List the possible completions of the text before point. When
+ displaying completions, Readline sets the number of columns used
+ for display to the value of `completion-display-width', the value
+ of the environment variable `COLUMNS', or the screen width, in
+ that order.
`insert-completions (M-*)'
Insert all completions of the text before point that would have
@@ -1321,8 +1348,7 @@ File: readline.info, Node: Readline vi Mode, Prev: Bindable Readline Commands,
While the Readline library does not have a full set of `vi' editing
functions, it does contain enough to allow simple editing of the line.
-The Readline `vi' mode behaves as specified in the POSIX 1003.2
-standard.
+The Readline `vi' mode behaves as specified in the POSIX standard.
In order to switch interactively between `emacs' and `vi' editing
modes, use the command `M-C-j' (bound to emacs-editing-mode when in
@@ -1339,7 +1365,7 @@ the standard `vi' movement keys, move to previous history lines with
aiding in the consistency of user interface across discrete programs
that need to provide a command line interface.
- Copyright (C) 1988-2007 Free Software Foundation, Inc.
+ Copyright (C) 1988-2011 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
@@ -2430,7 +2456,11 @@ File: readline.info, Node: Utility Functions, Next: Miscellaneous Functions,
`len' is the number of strings in `matches', and `max' is the
length of the longest string in `matches'. This function uses the
setting of `print-completions-horizontally' to select how the
- matches are displayed (*note Readline Init File Syntax::).
+ matches are displayed (*note Readline Init File Syntax::). When
+ displaying completions, this function sets the number of columns
+ used for display to the value of `completion-display-width', the
+ value of the environment variable `COLUMNS', or the screen width,
+ in that order.
The following are implemented as macros, defined in `chardefs.h'.
Applications should refrain from using them.
@@ -2959,19 +2989,20 @@ File: readline.info, Node: Completion Variables, Next: A Short Completion Exam
-- Variable: rl_icppfunc_t * rl_directory_completion_hook
This function, if defined, is allowed to modify the directory
- portion of filenames Readline completes. It is called with the
- address of a string (the current directory name) as an argument,
- and may modify that string. If the string is replaced with a new
- string, the old value should be freed. Any modified directory
- name should have a trailing slash. The modified value will be
- displayed as part of the completion, replacing the directory
- portion of the pathname the user typed. It returns an integer
- that should be non-zero if the function modifies its directory
- argument. It could be used to expand symbolic links or shell
- variables in pathnames. At the least, even if no other expansion
- is performed, this function should remove any quote characters
- from the directory name, because its result will be passed
- directly to `opendir()'.
+ portion of filenames Readline completes. It could be used to
+ expand symbolic links or shell variables in pathnames. It is
+ called with the address of a string (the current directory name)
+ as an argument, and may modify that string. If the string is
+ replaced with a new string, the old value should be freed. Any
+ modified directory name should have a trailing slash. The
+ modified value will be used as part of the completion, replacing
+ the directory portion of the pathname the user typed. At the
+ least, even if no other expansion is performed, this function
+ should remove any quote characters from the directory name,
+ because its result will be passed directly to `opendir()'. 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.
-- Variable: rl_dequote_func_t * rl_filename_rewrite_hook
If non-zero, this is the address of a function called when reading
@@ -4150,12 +4181,12 @@ Function and Variable Index
[index ]
* Menu:
-* _rl_digit_p: Utility Functions. (line 61)
-* _rl_digit_value: Utility Functions. (line 72)
-* _rl_lowercase_p: Utility Functions. (line 58)
-* _rl_to_lower: Utility Functions. (line 68)
-* _rl_to_upper: Utility Functions. (line 64)
-* _rl_uppercase_p: Utility Functions. (line 55)
+* _rl_digit_p: Utility Functions. (line 65)
+* _rl_digit_value: Utility Functions. (line 76)
+* _rl_lowercase_p: Utility Functions. (line 62)
+* _rl_to_lower: Utility Functions. (line 72)
+* _rl_to_upper: Utility Functions. (line 68)
+* _rl_uppercase_p: Utility Functions. (line 59)
* abort (C-g): Miscellaneous Commands.
(line 10)
* accept-line (Newline or Return): Commands For History.
@@ -4185,12 +4216,18 @@ Function and Variable Index
(line 47)
* complete (): Commands For Completion.
(line 6)
+* completion-display-width: Readline Init File Syntax.
+ (line 52)
+* completion-ignore-case: Readline Init File Syntax.
+ (line 59)
+* completion-map-case: Readline Init File Syntax.
+ (line 64)
* completion-prefix-display-length: Readline Init File Syntax.
- (line 57)
+ (line 70)
* completion-query-items: Readline Init File Syntax.
- (line 64)
+ (line 77)
* convert-meta: Readline Init File Syntax.
- (line 74)
+ (line 87)
* copy-backward-word (): Commands For Killing.
(line 49)
* copy-forward-word (): Commands For Killing.
@@ -4199,12 +4236,12 @@ Function and Variable Index
(line 45)
* delete-char (C-d): Commands For Text. (line 6)
* delete-char-or-list (): Commands For Completion.
- (line 35)
+ (line 39)
* delete-horizontal-space (): Commands For Killing.
(line 37)
* digit-argument (M-0, M-1, ... M--): Numeric Arguments. (line 6)
* disable-completion: Readline Init File Syntax.
- (line 80)
+ (line 93)
* do-uppercase-version (M-a, M-b, M-X, ...): Miscellaneous Commands.
(line 14)
* downcase-word (M-l): Commands For Text. (line 45)
@@ -4215,9 +4252,9 @@ Function and Variable Index
* dump-variables (): Miscellaneous Commands.
(line 76)
* editing-mode: Readline Init File Syntax.
- (line 85)
+ (line 98)
* enable-keypad: Readline Init File Syntax.
- (line 96)
+ (line 109)
* end-kbd-macro (C-x )): Keyboard Macros. (line 9)
* end-of-history (M->): Commands For History.
(line 22)
@@ -4225,32 +4262,32 @@ Function and Variable Index
* exchange-point-and-mark (C-x C-x): Miscellaneous Commands.
(line 36)
* expand-tilde: Readline Init File Syntax.
- (line 107)
+ (line 120)
* forward-backward-delete-char (): Commands For Text. (line 15)
* forward-char (C-f): Commands For Moving. (line 12)
* forward-search-history (C-s): Commands For History.
(line 30)
* forward-word (M-f): Commands For Moving. (line 18)
* history-preserve-point: Readline Init File Syntax.
- (line 111)
+ (line 124)
* history-search-backward (): Commands For History.
(line 50)
* history-search-forward (): Commands For History.
(line 45)
* history-size: Readline Init File Syntax.
- (line 117)
+ (line 130)
* horizontal-scroll-mode: Readline Init File Syntax.
- (line 122)
+ (line 135)
* input-meta: Readline Init File Syntax.
- (line 129)
+ (line 142)
* insert-comment (M-#): Miscellaneous Commands.
(line 60)
* insert-completions (M-*): Commands For Completion.
- (line 14)
+ (line 18)
* isearch-terminators: Readline Init File Syntax.
- (line 136)
+ (line 149)
* keymap: Readline Init File Syntax.
- (line 143)
+ (line 156)
* kill-line (C-k): Commands For Killing.
(line 6)
* kill-region (): Commands For Killing.
@@ -4260,17 +4297,19 @@ Function and Variable Index
* kill-word (M-d): Commands For Killing.
(line 19)
* mark-modified-lines: Readline Init File Syntax.
- (line 156)
+ (line 169)
* mark-symlinked-directories: Readline Init File Syntax.
- (line 161)
+ (line 174)
* match-hidden-files: Readline Init File Syntax.
- (line 166)
+ (line 179)
* menu-complete (): Commands For Completion.
- (line 18)
+ (line 22)
* menu-complete-backward (): Commands For Completion.
- (line 30)
+ (line 34)
+* menu-complete-display-prefix: Readline Init File Syntax.
+ (line 186)
* meta-flag: Readline Init File Syntax.
- (line 129)
+ (line 142)
* next-history (C-n): Commands For History.
(line 16)
* non-incremental-forward-search-history (M-n): Commands For History.
@@ -4278,10 +4317,10 @@ Function and Variable Index
* non-incremental-reverse-search-history (M-p): Commands For History.
(line 35)
* output-meta: Readline Init File Syntax.
- (line 173)
+ (line 191)
* overwrite-mode (): Commands For Text. (line 53)
* page-completions: Readline Init File Syntax.
- (line 178)
+ (line 196)
* possible-completions (M-?): Commands For Completion.
(line 11)
* prefix-meta (): Miscellaneous Commands.
@@ -4296,7 +4335,7 @@ Function and Variable Index
* reverse-search-history (C-r): Commands For History.
(line 26)
* revert-all-at-newline: Readline Init File Syntax.
- (line 188)
+ (line 206)
* revert-line (M-r): Miscellaneous Commands.
(line 25)
* rl_add_defun: Function Naming. (line 20)
@@ -4308,11 +4347,11 @@ Function and Variable Index
* rl_attempted_completion_function: Completion Variables.
(line 12)
* rl_attempted_completion_over: Completion Variables.
- (line 225)
+ (line 226)
* rl_basic_quote_characters: Completion Variables.
- (line 114)
+ (line 115)
* rl_basic_word_break_characters: Completion Variables.
- (line 108)
+ (line 109)
* rl_begin_undo_group: Allowing Undoing. (line 29)
* rl_bind_key: Binding Keys. (line 22)
* rl_bind_key_if_unbound: Binding Keys. (line 32)
@@ -4345,39 +4384,39 @@ Function and Variable Index
* rl_complete_internal: Completion Functions.
(line 10)
* rl_completer_quote_characters: Completion Variables.
- (line 131)
+ (line 132)
* rl_completer_word_break_characters: Completion Variables.
- (line 117)
+ (line 118)
* rl_completion_append_character: Completion Variables.
- (line 155)
+ (line 156)
* rl_completion_display_matches_hook: Completion Variables.
- (line 95)
+ (line 96)
* rl_completion_entry_function <1>: How Completing Works.
(line 55)
* rl_completion_entry_function: Completion Variables.
(line 7)
* rl_completion_found_quote: Completion Variables.
- (line 183)
+ (line 184)
* rl_completion_invoking_key: Completion Variables.
- (line 248)
+ (line 249)
* rl_completion_mark_symlink_dirs: Completion Variables.
- (line 190)
+ (line 191)
* rl_completion_matches: Completion Functions.
(line 45)
* rl_completion_mode: Completion Functions.
(line 37)
* rl_completion_query_items: Completion Variables.
- (line 149)
+ (line 150)
* rl_completion_quote_character: Completion Variables.
- (line 171)
+ (line 172)
* rl_completion_suppress_append: Completion Variables.
- (line 165)
+ (line 166)
* rl_completion_suppress_quote: Completion Variables.
- (line 177)
+ (line 178)
* rl_completion_type: Completion Variables.
- (line 240)
+ (line 241)
* rl_completion_word_break_hook: Completion Variables.
- (line 122)
+ (line 123)
* rl_copy_keymap: Keymaps. (line 17)
* rl_copy_text: Modifying Text. (line 15)
* rl_crlf: Redisplay. (line 30)
@@ -4407,19 +4446,19 @@ Function and Variable Index
* rl_explicit_arg: Readline Variables. (line 261)
* rl_extend_line_buffer: Utility Functions. (line 27)
* rl_filename_completion_desired: Completion Variables.
- (line 205)
+ (line 206)
* rl_filename_completion_function: Completion Functions.
(line 59)
* rl_filename_dequoting_function: Completion Variables.
(line 37)
* rl_filename_quote_characters: Completion Variables.
- (line 137)
+ (line 138)
* rl_filename_quoting_desired: Completion Variables.
- (line 215)
+ (line 216)
* rl_filename_quoting_function: Completion Variables.
(line 24)
* rl_filename_rewrite_hook: Completion Variables.
- (line 80)
+ (line 81)
* rl_forced_update_display: Redisplay. (line 11)
* rl_free: Utility Functions. (line 18)
* rl_free_keymap: Keymaps. (line 30)
@@ -4444,11 +4483,11 @@ Function and Variable Index
* rl_getc_function: Readline Variables. (line 130)
* rl_gnu_readline_p: Readline Variables. (line 83)
* rl_ignore_completion_duplicates: Completion Variables.
- (line 201)
+ (line 202)
* rl_ignore_some_completions_function: Completion Variables.
(line 56)
* rl_inhibit_completion: Completion Variables.
- (line 254)
+ (line 255)
* rl_initialize: Utility Functions. (line 31)
* rl_insert_completions: Completion Functions.
(line 32)
@@ -4523,9 +4562,9 @@ Function and Variable Index
(line 119)
* rl_show_char: Redisplay. (line 33)
* rl_sort_completion_matches: Completion Variables.
- (line 232)
+ (line 233)
* rl_special_prefixes: Completion Variables.
- (line 142)
+ (line 143)
* rl_startup_hook: Readline Variables. (line 115)
* rl_stuff_char: Character Input. (line 19)
* rl_terminal_name: Readline Variables. (line 87)
@@ -4547,11 +4586,11 @@ Function and Variable Index
* set-mark (C-@): Miscellaneous Commands.
(line 32)
* show-all-if-ambiguous: Readline Init File Syntax.
- (line 194)
+ (line 212)
* show-all-if-unmodified: Readline Init File Syntax.
- (line 200)
+ (line 218)
* skip-completed-text: Readline Init File Syntax.
- (line 209)
+ (line 227)
* skip-csi-sequence (): Miscellaneous Commands.
(line 51)
* start-kbd-macro (C-x (): Keyboard Macros. (line 6)
@@ -4568,7 +4607,7 @@ Function and Variable Index
(line 28)
* upcase-word (M-u): Commands For Text. (line 41)
* visible-stats: Readline Init File Syntax.
- (line 222)
+ (line 240)
* yank (C-y): Commands For Killing.
(line 59)
* yank-last-arg (M-. or M-_): Commands For History.
@@ -4581,57 +4620,57 @@ Function and Variable Index
Tag Table:
-Node: Top1328
-Node: Command Line Editing1985
-Node: Introduction and Notation2637
-Node: Readline Interaction4260
-Node: Readline Bare Essentials5452
-Node: Readline Movement Commands7242
-Node: Readline Killing Commands8208
-Node: Readline Arguments10129
-Node: Searching11174
-Node: Readline Init File13326
-Node: Readline Init File Syntax14480
-Node: Conditional Init Constructs28686
-Node: Sample Init File31220
-Node: Bindable Readline Commands34338
-Node: Commands For Moving35396
-Node: Commands For History36258
-Node: Commands For Text39383
-Node: Commands For Killing42110
-Node: Numeric Arguments44253
-Node: Commands For Completion45393
-Node: Keyboard Macros47131
-Node: Miscellaneous Commands47703
-Node: Readline vi Mode51560
-Node: Programming with GNU Readline53384
-Node: Basic Behavior54370
-Node: Custom Functions57787
-Node: Readline Typedefs59271
-Node: Function Writing60910
-Node: Readline Variables62217
-Node: Readline Convenience Functions72883
-Node: Function Naming73873
-Node: Keymaps75135
-Node: Binding Keys77128
-Node: Associating Function Names and Bindings81675
-Node: Allowing Undoing83960
-Node: Redisplay86510
-Node: Modifying Text90410
-Node: Character Input91656
-Node: Terminal Management93554
-Node: Utility Functions94990
-Node: Miscellaneous Functions98081
-Node: Alternate Interface100378
-Node: A Readline Example102537
-Node: Readline Signal Handling104440
-Node: Custom Completers110628
-Node: How Completing Works111348
-Node: Completion Functions114662
-Node: Completion Variables118234
-Node: A Short Completion Example132248
-Node: GNU Free Documentation License145027
-Node: Concept Index170220
-Node: Function and Variable Index171741
+Node: Top1330
+Node: Command Line Editing1987
+Node: Introduction and Notation2639
+Node: Readline Interaction4262
+Node: Readline Bare Essentials5454
+Node: Readline Movement Commands7244
+Node: Readline Killing Commands8210
+Node: Readline Arguments10131
+Node: Searching11176
+Node: Readline Init File13328
+Node: Readline Init File Syntax14482
+Node: Conditional Init Constructs29543
+Node: Sample Init File32077
+Node: Bindable Readline Commands35195
+Node: Commands For Moving36253
+Node: Commands For History37115
+Node: Commands For Text40520
+Node: Commands For Killing43247
+Node: Numeric Arguments45390
+Node: Commands For Completion46530
+Node: Keyboard Macros48500
+Node: Miscellaneous Commands49072
+Node: Readline vi Mode52929
+Node: Programming with GNU Readline54746
+Node: Basic Behavior55732
+Node: Custom Functions59149
+Node: Readline Typedefs60633
+Node: Function Writing62272
+Node: Readline Variables63579
+Node: Readline Convenience Functions74245
+Node: Function Naming75235
+Node: Keymaps76497
+Node: Binding Keys78490
+Node: Associating Function Names and Bindings83037
+Node: Allowing Undoing85322
+Node: Redisplay87872
+Node: Modifying Text91772
+Node: Character Input93018
+Node: Terminal Management94916
+Node: Utility Functions96352
+Node: Miscellaneous Functions99680
+Node: Alternate Interface101977
+Node: A Readline Example104136
+Node: Readline Signal Handling106039
+Node: Custom Completers112227
+Node: How Completing Works112947
+Node: Completion Functions116261
+Node: Completion Variables119833
+Node: A Short Completion Example133946
+Node: GNU Free Documentation License146725
+Node: Concept Index171918
+Node: Function and Variable Index173439
End Tag Table
diff --git a/doc/readline.pdf b/doc/readline.pdf
index 93a79941283af07204f1de44911173020e1f2bc4..b123a2d266ed73067f4d25a93e3884cbe8585991 100644
GIT binary patch
delta 163641
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'G-j+ciCcm6Te=
zU-E+f(+KV)dOoagSh}(!*Hn)2woEt*S;U1H^xQO(T
z>mcP6;7b`LxHk(E0fbk|m^V_WyMS1ULllGyUa0Rtiq!(*+tT*%*-RsboLRWIaXnHv
zF@I8;u=^H3_*#z&g0HY$jZ*lj*Rxv_SLSl2erWB6$%;(Qj4hx82FJnt4z3KJTv
z$Tm-<&|NShjW6l%BRL}37m7#K(S{fHULfLoMxQ3IDb_(4qC2|OEx?hScvr%#z;?R;
z*ye>InNW2#>rp)m9B+hS@E9ZT
ztpSEJsc$~Hlll2Uz7kUwzs$hRVO?!ild?XKe4qsDW4DVDMx|I7SyN3b-l~baKonU`
zm`JI}EX4>#BH+i2mv@mK0ccuaj><>`=)>gSWwlJU+bi)M7NAC}*&K#C0+$|*#V`#R
z3e?$9t;0Bt@y;i@A|ku_O^o#y`%fK6`g6dm7Ni!GrcNlztx|7I>ZITkFQ3Sf((=W_
zO`c#4Q0>6dW(02X@~F|1EdNo$mB@!tk~gxu#S}L&dIh~nSZf8`C{M}6H5pL=U>p`{
zg^~b~M=jmmE}s2QIpG%|g>JAzNBeBRvS_!z
zL7qMcz>%GVfQy_69q|8fFPT%U7*l#ut=sM3TPZ4PgX)fZIt--6q2reZpjXSMgN8WR
za@)RW`s-DFZilB*g8Q<4_RaqBeA~94|9f4e$c#vGBxkdH7;uj1uMrs5*!-OLnW0gv-+!ONqQ;cD$#
zf3vGjOcKg|e5ejgvDCpFKpD8g-g{dyIfNAn+ByB_v|wm|y9H7n<9DB3yfyW}oz?bd
zsQ(G;c(|e9&N)7~$IU~51HFqViq%oJ8WO!SwH-=9(do|fJK0}qx&fezk7z8LELR7b
z#SuPQkn6ZPp0suokTXM)Wt!qqr=I&xEUoPY%%SPC>g(A8Ll&GK0Ih~mgfmMLs`~rv
zD@cq&-gC*5=2R0|*rqm#1tPbFfo8S;e%JE+#K`=}RR4};@GsiX?Xi*UJi$bvY+9&n
zhi;l#JH70K=8SYyZ90lG;h*6|(sIBU){>+_a=l5DGO`WPBvuw7%K$e2%L?WQLk8K;527l`m5
z`d9@HZ3fHduGf=U-U;Ml2*j|Q2nn886RfXXHn|$uEO58QhOw7XrT-QS$viJpr(F+8@32#q|cD5f`}fhZxErTWSZRa}-85qQ8`?m(~;9b(T;!HC`yC||S^dI>XZz(_!7&2&T_udnn#
zIHa-4{_bV1_(oz}be?*X`t-A8%hV|tV@*;xPX8V{?3+05G`Qpab4+_oxGEnDA4UUF
zp=3tDMvgJcxJf>T#{Ex-&UYwDP2QbLNP-%-Tnz#K{!+iyzjb3_hrk(QXyr3<-%yW+
zZ3+~tV-$3Tg@M5?TLdTMtt!gn#GSir_tb-c3>LEISFDJ|r*;0;Y^M*4*Q~lo$J7TW
z=VN^4&S&wgmd7#B;vLr$6^_!#0FOR*h1V&9r$LN^V>jiF%gbV2Xk{@AJDts<}~8u0Em%Ul^9LWTf@Ht*Ev@5+71=*+}3ME
zQ0~}8I&GL|-ol5TzTM5J%R7;96GrxX-neCd$52aID46(Uv!K-^G&q{ivA;MX^XyXp
z&5KRT*vRQ0%Ydy7TlZ*3{8mS`FX{HDHkmtc=w`uTT|k>~l$S09V#FMjC*TW7;A%L=
zzljWJ2mwHuBKXP;LO=xALU8bLq-?(u0c!@bi%XBdM!4acWL=^y)