mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-07-05 03:10:50 +02:00
commit bash-20051005 snapshot
This commit is contained in:
@@ -81,7 +81,10 @@ y. Changed the `-n' option to the `history' builtin to not reset the number of
|
||||
was intended to solve.
|
||||
|
||||
z. Improved the error message displayed when a shell script fails to execute
|
||||
because the environment and size of command line arguments is too large.
|
||||
because the environment and size of command line arguments are too large.
|
||||
|
||||
aa. A small fix to make sure that $HISTCMD is evaluated whenever the shell is
|
||||
saving commands to the history list, not just when HISTSIZE is defined.
|
||||
|
||||
2. Changes to Readline
|
||||
|
||||
|
||||
@@ -12166,3 +12166,53 @@ bashhist.c
|
||||
- make $HISTCMD available anytime remember_on_history is non-zero,
|
||||
which indicates that we're saving commands to the history, and
|
||||
let it evaluate to 1 if we're not
|
||||
|
||||
10/4
|
||||
----
|
||||
lib/sh/snprintf.c
|
||||
- in floating(), make sure d != 0 before calling chkinfnan -- gcc on the
|
||||
version of Solaris 9 I have translates 0 to -inf on the call
|
||||
|
||||
[bash-3.1-beta1 frozen]
|
||||
|
||||
10/6
|
||||
----
|
||||
jobs.c
|
||||
- set the_pipeline to NULL right away in cleanup_the_pipeline, and
|
||||
dispose a copy of the pointer so we don't mess with the_pipeline
|
||||
while we're in the process of destroying it
|
||||
- block and unblock SIGCHLD around manipulating the_pipeline in
|
||||
cleanup_the_pipeline
|
||||
|
||||
10/7
|
||||
----
|
||||
[bash-3.1-beta1 released]
|
||||
|
||||
lib/readline/isearch.c
|
||||
- when switching directions, make sure we turn off the SF_REVERSE
|
||||
flag in the search context's flags word if we're going from reverse
|
||||
to forward i-search
|
||||
|
||||
lib/readline/bind.c
|
||||
- new function, rl_variable_value, returns a string representing a
|
||||
bindable readline variable's value
|
||||
- new auxiliary function, _rl_get_string_variable_value, encapsulates
|
||||
everything needed to get a bindable string variable's value
|
||||
- rewrote rl_variable_dumper to use _rl_get_string_variable_value
|
||||
|
||||
lib/readline/readline.h
|
||||
- new extern declaration for rl_variable_value
|
||||
|
||||
lib/readline/doc/rltech.texi
|
||||
- documented rl_variable_value
|
||||
|
||||
bashline.c
|
||||
- in command_word_completion_function, if readline sets
|
||||
rl_completion_found_quote, but doesn't set rl_completion_quote_character,
|
||||
we have an embedded quoted string or backslash-escaped character in
|
||||
the passed text. We need to dequote that before calling
|
||||
filename_completion_function. So far, this is in place only for
|
||||
absolute program names (those containing a `/')
|
||||
- in command_word_completion_function, use rl_variable_value to decide
|
||||
whether or not we should ignore case, and use strncasecmp instead of
|
||||
strncmp where appropriate
|
||||
|
||||
@@ -12159,3 +12159,56 @@ execute_cmd.c
|
||||
- in shell_execve, if the exec fails due to E2BIG or ENOMEM, just print
|
||||
the appropriate error message instead of checking out any interpreter
|
||||
specified with #!
|
||||
|
||||
9/30
|
||||
----
|
||||
bashhist.c
|
||||
- make $HISTCMD available anytime remember_on_history is non-zero,
|
||||
which indicates that we're saving commands to the history, and
|
||||
let it evaluate to 1 if we're not
|
||||
|
||||
10/4
|
||||
----
|
||||
lib/sh/snprintf.c
|
||||
- in floating(), make sure d != 0 before calling chkinfnan -- gcc on the
|
||||
version of Solaris 9 I have translates 0 to -inf on the call
|
||||
|
||||
[bash-3.1-beta1 frozen]
|
||||
|
||||
10/6
|
||||
----
|
||||
jobs.c
|
||||
- set the_pipeline to NULL right away in cleanup_the_pipeline, and
|
||||
dispose a copy of the pointer so we don't mess with the_pipeline
|
||||
while we're in the process of destroying it
|
||||
- block and unblock SIGCHLD around manipulating the_pipeline in
|
||||
cleanup_the_pipeline
|
||||
|
||||
10/7
|
||||
----
|
||||
[bash-3.1-beta1 released]
|
||||
|
||||
lib/readline/isearch.c
|
||||
- when switching directions, make sure we turn off the SF_REVERSE
|
||||
flag in the search context's flags word if we're going from reverse
|
||||
to forward i-search
|
||||
|
||||
lib/readline/bind.c
|
||||
- new function, rl_variable_value, returns a string representing a
|
||||
bindable readline variable's value
|
||||
- new auxiliary function, _rl_get_string_variable_value, encapsulates
|
||||
everything needed to get a bindable string variable's value
|
||||
- rewrote rl_variable_dumper to use _rl_get_string_variable_value
|
||||
|
||||
lib/readline/readline.h
|
||||
- new extern declaration for rl_variable_value
|
||||
|
||||
lib/readline/doc/rltech.texi
|
||||
- documented rl_variable_value
|
||||
|
||||
bashline.c
|
||||
- in command_word_completion_function, if readline sets
|
||||
rl_completion_found_quote, but doesn't set rl_completion_quote_character,
|
||||
we have an embedded quoted string or backslash-escaped character in
|
||||
the passed text. We need to dequote that before calling
|
||||
filename_completion_function
|
||||
|
||||
+40
-7
@@ -1224,23 +1224,30 @@ command_word_completion_function (hint_text, state)
|
||||
static char *path = (char *)NULL;
|
||||
static char *val = (char *)NULL;
|
||||
static char *filename_hint = (char *)NULL;
|
||||
static int path_index, hint_len, istate;
|
||||
static char *dequoted_hint = (char *)NULL;
|
||||
static int path_index, hint_len, dequoted_len, istate, igncase;
|
||||
static int mapping_over, local_index;
|
||||
static SHELL_VAR **varlist = (SHELL_VAR **)NULL;
|
||||
#if defined (ALIAS)
|
||||
static alias_t **alias_list = (alias_t **)NULL;
|
||||
#endif /* ALIAS */
|
||||
char *temp;
|
||||
|
||||
/* We have to map over the possibilities for command words. If we have
|
||||
no state, then make one just for that purpose. */
|
||||
if (!state)
|
||||
{
|
||||
if (dequoted_hint && dequoted_hint != hint)
|
||||
free (dequoted_hint);
|
||||
if (hint)
|
||||
free (hint);
|
||||
|
||||
mapping_over = 0;
|
||||
val = (char *)NULL;
|
||||
|
||||
temp = rl_variable_value ("completion-ignore-case");
|
||||
igncase = strcmp (temp, "on") == 0;
|
||||
|
||||
/* If this is an absolute program name, do not check it against
|
||||
aliases, reserved words, functions or builtins. We must check
|
||||
whether or not it is unique, and, if so, whether that filename
|
||||
@@ -1253,10 +1260,24 @@ command_word_completion_function (hint_text, state)
|
||||
hint = bash_tilde_expand (hint_text, 0);
|
||||
else
|
||||
hint = savestring (hint_text);
|
||||
hint_len = strlen (hint);
|
||||
|
||||
dequoted_hint = hint;
|
||||
/* If readline's completer found a quote character somewhere, but
|
||||
didn't set the quote character, there must have been a quote
|
||||
character embedded in the filename. It can't be at the start of
|
||||
the filename, so we need to dequote the filename before we look
|
||||
in the file system for it. */
|
||||
if (rl_completion_found_quote && rl_completion_quote_character == 0)
|
||||
{
|
||||
dequoted_hint = bash_dequote_filename (hint, 0);
|
||||
free (hint);
|
||||
hint = dequoted_hint;
|
||||
}
|
||||
dequoted_len = hint_len = strlen (hint);
|
||||
|
||||
if (filename_hint)
|
||||
free (filename_hint);
|
||||
|
||||
filename_hint = savestring (hint);
|
||||
|
||||
mapping_over = 4;
|
||||
@@ -1264,9 +1285,15 @@ command_word_completion_function (hint_text, state)
|
||||
goto inner;
|
||||
}
|
||||
|
||||
hint = savestring (hint_text);
|
||||
hint_len = strlen (hint);
|
||||
dequoted_hint = hint = savestring (hint_text);
|
||||
dequoted_len = hint_len = strlen (hint);
|
||||
|
||||
if (rl_completion_found_quote && rl_completion_quote_character == 0)
|
||||
{
|
||||
dequoted_hint = bash_dequote_filename (hint, 0);
|
||||
dequoted_len = strlen (dequoted_hint);
|
||||
}
|
||||
|
||||
path = get_string_value ("PATH");
|
||||
path_index = dot_in_path = 0;
|
||||
|
||||
@@ -1393,7 +1420,6 @@ command_word_completion_function (hint_text, state)
|
||||
free (filename_hint);
|
||||
|
||||
filename_hint = sh_makepath (current_path, hint, 0);
|
||||
|
||||
free (current_path);
|
||||
}
|
||||
|
||||
@@ -1417,7 +1443,11 @@ command_word_completion_function (hint_text, state)
|
||||
|
||||
if (absolute_program (hint))
|
||||
{
|
||||
match = strncmp (val, hint, hint_len) == 0;
|
||||
if (igncase == 0)
|
||||
match = strncmp (val, hint, hint_len) == 0;
|
||||
else
|
||||
match = strncasecmp (val, hint, hint_len) == 0;
|
||||
|
||||
/* If we performed tilde expansion, restore the original
|
||||
filename. */
|
||||
if (*hint_text == '~')
|
||||
@@ -1450,7 +1480,10 @@ command_word_completion_function (hint_text, state)
|
||||
if (temp)
|
||||
{
|
||||
temp++;
|
||||
freetemp = match = strncmp (temp, hint, hint_len) == 0;
|
||||
if (igncase == 0)
|
||||
freetemp = match = strncmp (temp, hint, hint_len) == 0;
|
||||
else
|
||||
freetemp = match = strncasecmp (temp, hint, hint_len) == 0;
|
||||
if (match)
|
||||
temp = savestring (temp);
|
||||
}
|
||||
|
||||
+3134
File diff suppressed because it is too large
Load Diff
+41
-7
@@ -449,7 +449,11 @@ initialize_readline ()
|
||||
|
||||
#endif /* SPECIFIC_COMPLETION_FUNCTIONS */
|
||||
|
||||
rl_bind_key_if_unbound_in_map (TAB, dynamic_complete_history, emacs_meta_keymap);
|
||||
kseq[0] = TAB;
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
if (func == 0 || func == rl_tab_insert)
|
||||
rl_bind_key_in_map (TAB, dynamic_complete_history, emacs_meta_keymap);
|
||||
|
||||
/* Tell the completer that we want a crack first. */
|
||||
rl_attempted_completion_function = attempt_shell_completion;
|
||||
@@ -798,6 +802,7 @@ operate_and_get_next (count, c)
|
||||
|
||||
#define VI_EDIT_COMMAND "fc -e \"${VISUAL:-${EDITOR:-vi}}\""
|
||||
#define EMACS_EDIT_COMMAND "fc -e \"${VISUAL:-${EDITOR:-emacs}}\""
|
||||
#define POSIX_VI_EDIT_COMMAND "fc -e vi"
|
||||
|
||||
static int
|
||||
edit_and_execute_command (count, c, editing_mode, edit_command)
|
||||
@@ -857,7 +862,10 @@ static int
|
||||
vi_edit_and_execute_command (count, c)
|
||||
int count, c;
|
||||
{
|
||||
return (edit_and_execute_command (count, c, VI_EDITING_MODE, VI_EDIT_COMMAND));
|
||||
if (posixly_correct)
|
||||
return (edit_and_execute_command (count, c, VI_EDITING_MODE, POSIX_VI_EDIT_COMMAND));
|
||||
else
|
||||
return (edit_and_execute_command (count, c, VI_EDITING_MODE, VI_EDIT_COMMAND));
|
||||
}
|
||||
#endif /* VI_MODE */
|
||||
|
||||
@@ -1216,23 +1224,30 @@ command_word_completion_function (hint_text, state)
|
||||
static char *path = (char *)NULL;
|
||||
static char *val = (char *)NULL;
|
||||
static char *filename_hint = (char *)NULL;
|
||||
static int path_index, hint_len, istate;
|
||||
static char *dequoted_hint = (char *)NULL;
|
||||
static int path_index, hint_len, dequoted_len, istate, igncase;
|
||||
static int mapping_over, local_index;
|
||||
static SHELL_VAR **varlist = (SHELL_VAR **)NULL;
|
||||
#if defined (ALIAS)
|
||||
static alias_t **alias_list = (alias_t **)NULL;
|
||||
#endif /* ALIAS */
|
||||
char *temp;
|
||||
|
||||
/* We have to map over the possibilities for command words. If we have
|
||||
no state, then make one just for that purpose. */
|
||||
if (!state)
|
||||
{
|
||||
if (dequoted_hint && dequoted_hint != hint)
|
||||
free (dequoted_hint);
|
||||
if (hint)
|
||||
free (hint);
|
||||
|
||||
mapping_over = 0;
|
||||
val = (char *)NULL;
|
||||
|
||||
temp = rl_variable_value ("completion-ignore-case");
|
||||
igncase = strcmp (temp, "on") == 0;
|
||||
|
||||
/* If this is an absolute program name, do not check it against
|
||||
aliases, reserved words, functions or builtins. We must check
|
||||
whether or not it is unique, and, if so, whether that filename
|
||||
@@ -1245,10 +1260,24 @@ command_word_completion_function (hint_text, state)
|
||||
hint = bash_tilde_expand (hint_text, 0);
|
||||
else
|
||||
hint = savestring (hint_text);
|
||||
hint_len = strlen (hint);
|
||||
|
||||
dequoted_hint = hint;
|
||||
/* If readline's completer found a quote character somewhere, but
|
||||
didn't set the quote character, there must have been a quote
|
||||
character embedded in the filename. It can't be at the start of
|
||||
the filename, so we need to dequote the filename before we look
|
||||
in the file system for it. */
|
||||
if (rl_completion_found_quote && rl_completion_quote_character == 0)
|
||||
{
|
||||
dequoted_hint = bash_dequote_filename (hint, 0);
|
||||
free (hint);
|
||||
hint = dequoted_hint;
|
||||
}
|
||||
dequoted_len = hint_len = strlen (hint);
|
||||
|
||||
if (filename_hint)
|
||||
free (filename_hint);
|
||||
|
||||
filename_hint = savestring (hint);
|
||||
|
||||
mapping_over = 4;
|
||||
@@ -1256,9 +1285,15 @@ command_word_completion_function (hint_text, state)
|
||||
goto inner;
|
||||
}
|
||||
|
||||
hint = savestring (hint_text);
|
||||
hint_len = strlen (hint);
|
||||
dequoted_hint = hint = savestring (hint_text);
|
||||
dequoted_len = hint_len = strlen (hint);
|
||||
|
||||
if (rl_completion_found_quote && rl_completion_quote_character == 0)
|
||||
{
|
||||
dequoted_hint = bash_dequote_filename (hint, 0);
|
||||
dequoted_len = strlen (dequoted_hint);
|
||||
}
|
||||
|
||||
path = get_string_value ("PATH");
|
||||
path_index = dot_in_path = 0;
|
||||
|
||||
@@ -1385,7 +1420,6 @@ command_word_completion_function (hint_text, state)
|
||||
free (filename_hint);
|
||||
|
||||
filename_hint = sh_makepath (current_path, hint, 0);
|
||||
|
||||
free (current_path);
|
||||
}
|
||||
|
||||
|
||||
+1067
-1063
File diff suppressed because it is too large
Load Diff
+27
-11
@@ -2,7 +2,7 @@
|
||||
<TITLE>BASH(1) Manual Page</TITLE>
|
||||
</HEAD>
|
||||
<BODY><TABLE WIDTH=100%>
|
||||
<TH ALIGN=LEFT>BASH(1)<TH ALIGN=CENTER>2005 Mar 15<TH ALIGN=RIGHT>BASH(1)
|
||||
<TH ALIGN=LEFT>BASH(1)<TH ALIGN=CENTER>2005 Aug 27<TH ALIGN=RIGHT>BASH(1)
|
||||
</TABLE>
|
||||
<BR><A HREF="#index">Index</A>
|
||||
<HR>
|
||||
@@ -58,6 +58,9 @@ shells (<B>ksh</B> and <B>csh</B>).
|
||||
|
||||
is intended to be a conformant implementation of the IEEE
|
||||
POSIX Shell and Tools specification (IEEE Working Group 1003.2).
|
||||
<B>Bash</B>
|
||||
|
||||
can be configured to be POSIX-conformant by default.
|
||||
<A NAME="lbAF"> </A>
|
||||
<H2>OPTIONS</H2>
|
||||
|
||||
@@ -2561,6 +2564,11 @@ number of seconds to wait for input after issuing the primary prompt.
|
||||
|
||||
terminates after waiting for that number of seconds if input does
|
||||
not arrive.
|
||||
<DT><B>TMPDIR</B>
|
||||
|
||||
<DD>
|
||||
If set, <B>Bash</B> uses its value as the name of a directory in which
|
||||
<B>Bash</B> creates temporary files for the shell's use.
|
||||
<DT><B>auto_resume</B>
|
||||
|
||||
<DD>
|
||||
@@ -2707,6 +2715,8 @@ The
|
||||
|
||||
builtin is used to destroy arrays. <B>unset</B> <I>name</I>[<I>subscript</I>]
|
||||
destroys the array element at index <I>subscript</I>.
|
||||
Care must be taken to avoid unwanted side effects caused by filename
|
||||
generation.
|
||||
<B>unset</B> <I>name</I>, where <I>name</I> is an array, or
|
||||
<B>unset</B> <I>name</I>[<I>subscript</I>], where
|
||||
<I>subscript</I> is <B>*</B> or <B>@</B>, removes the entire array.
|
||||
@@ -5943,8 +5953,13 @@ Except where noted, readline variables can take the values
|
||||
<B>On</B>
|
||||
|
||||
or
|
||||
<B>Off</B>.
|
||||
<B>Off</B>
|
||||
|
||||
(without regard to case).
|
||||
Unrecognized variable names are ignored.
|
||||
When a variable value is read, empty or null values, "on" (case-insensitive),
|
||||
and "1" are equivalent to <B>On</B>. All other values are equivalent to
|
||||
<B>Off</B>.
|
||||
The variables and their default values are:
|
||||
<P>
|
||||
|
||||
@@ -6030,7 +6045,7 @@ arrow keys.
|
||||
<DD>
|
||||
If set to <B>on</B>, tilde expansion is performed when readline
|
||||
attempts word completion.
|
||||
<DT><B>history-preserve-point</B>
|
||||
<DT><B>history-preserve-point (Off)</B>
|
||||
|
||||
<DD>
|
||||
If set to <B>on</B>, the history code attempts to place point at the
|
||||
@@ -7664,6 +7679,8 @@ accepts
|
||||
<B>--</B>
|
||||
|
||||
to signify the end of the options.
|
||||
For example, the <B>:</B>, <B>true</B>, <B>false</B>, and <B>test</B> builtins
|
||||
do not accept options.
|
||||
<P>
|
||||
|
||||
<DL COMPACT>
|
||||
@@ -7751,8 +7768,8 @@ If <I>jobspec</I> is not present, the shell's notion of the
|
||||
<I>jobspec</I>
|
||||
|
||||
returns 0 unless run when job control is disabled or, when run with
|
||||
job control enabled, if the last <I>jobspec</I> was not found or was
|
||||
started without job control.
|
||||
job control enabled, any specified <I>jobspec</I> was not found
|
||||
or was started without job control.
|
||||
<DT><B>bind</B> [<B>-m</B> <I>keymap</I>] [<B>-lpsvPSV</B>]<DD>
|
||||
|
||||
<DT><B>bind</B> [<B>-m</B> <I>keymap</I>] [<B>-q</B> <I>function</I>] [<B>-u</B> <I>function</I>] [<B>-r</B> <I>keyseq</I>]<DD>
|
||||
@@ -8505,10 +8522,7 @@ dynamically determine whether or not <B>echo</B> expands these
|
||||
escape characters by default.
|
||||
<B>echo</B>
|
||||
|
||||
does not interpret
|
||||
<B>--</B>
|
||||
|
||||
to mean the end of options.
|
||||
does not interpret <B>--</B> to mean the end of options.
|
||||
<B>echo</B>
|
||||
|
||||
interprets the following escape sequences:
|
||||
@@ -9576,7 +9590,7 @@ Cause <B>read</B> to time out and return failure if a complete line of
|
||||
input is not read within <I>timeout</I> seconds.
|
||||
This option has no effect if <B>read</B> is not reading input from the
|
||||
terminal or a pipe.
|
||||
<DT><B>-u </B><I>fdFP</I>
|
||||
<DT><B>-u </B><I>fd</I>
|
||||
|
||||
<DD>
|
||||
Read input from file descriptor <I>fd</I>.
|
||||
@@ -10548,6 +10562,8 @@ Expressions are composed of the primaries described above under
|
||||
<FONT SIZE=-1><B>CONDITIONAL EXPRESSIONS</B>.
|
||||
|
||||
</FONT>
|
||||
<B>test</B> does not accept any options, nor does it accept and ignore
|
||||
an argument of <B>--</B> as signifying the end of options.
|
||||
<P>
|
||||
|
||||
|
||||
@@ -11487,6 +11503,6 @@ Array variables may not (yet) be exported.
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by man2html from bash.1.<BR>
|
||||
Time: 15 March 2005 17:27:07 EST
|
||||
Time: 03 October 2005 15:07:47 EDT
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
+4069
-4051
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -146,7 +146,7 @@
|
||||
@xrdef{Bash Builtins-pg}{39}
|
||||
@xrdef{Bash Builtins-snt}{Section@tie 4.2}
|
||||
@xrdef{The Set Builtin-title}{The Set Builtin}
|
||||
@xrdef{The Set Builtin-pg}{50}
|
||||
@xrdef{The Set Builtin-pg}{51}
|
||||
@xrdef{The Set Builtin-snt}{Section@tie 4.3}
|
||||
@xrdef{Special Builtins-title}{Special Builtins}
|
||||
@xrdef{Special Builtins-pg}{54}
|
||||
|
||||
+5
-5
@@ -1,7 +1,7 @@
|
||||
\entry{:}{33}{\code {:}}
|
||||
\entry{.}{33}{\code {.}}
|
||||
\entry{break}{33}{\code {break}}
|
||||
\entry{cd}{33}{\code {cd}}
|
||||
\entry{cd}{34}{\code {cd}}
|
||||
\entry{continue}{34}{\code {continue}}
|
||||
\entry{eval}{34}{\code {eval}}
|
||||
\entry{exec}{34}{\code {exec}}
|
||||
@@ -26,20 +26,20 @@
|
||||
\entry{command}{41}{\code {command}}
|
||||
\entry{declare}{41}{\code {declare}}
|
||||
\entry{echo}{42}{\code {echo}}
|
||||
\entry{enable}{42}{\code {enable}}
|
||||
\entry{enable}{43}{\code {enable}}
|
||||
\entry{help}{43}{\code {help}}
|
||||
\entry{let}{43}{\code {let}}
|
||||
\entry{local}{43}{\code {local}}
|
||||
\entry{logout}{43}{\code {logout}}
|
||||
\entry{logout}{44}{\code {logout}}
|
||||
\entry{printf}{44}{\code {printf}}
|
||||
\entry{read}{44}{\code {read}}
|
||||
\entry{shopt}{45}{\code {shopt}}
|
||||
\entry{source}{49}{\code {source}}
|
||||
\entry{type}{49}{\code {type}}
|
||||
\entry{typeset}{49}{\code {typeset}}
|
||||
\entry{ulimit}{49}{\code {ulimit}}
|
||||
\entry{ulimit}{50}{\code {ulimit}}
|
||||
\entry{unalias}{50}{\code {unalias}}
|
||||
\entry{set}{50}{\code {set}}
|
||||
\entry{set}{51}{\code {set}}
|
||||
\entry{dirs}{75}{\code {dirs}}
|
||||
\entry{popd}{76}{\code {popd}}
|
||||
\entry{pushd}{76}{\code {pushd}}
|
||||
|
||||
+5
-5
@@ -13,7 +13,7 @@
|
||||
\entry {\code {builtin}}{40}
|
||||
\initial {C}
|
||||
\entry {\code {caller}}{40}
|
||||
\entry {\code {cd}}{33}
|
||||
\entry {\code {cd}}{34}
|
||||
\entry {\code {command}}{41}
|
||||
\entry {\code {compgen}}{109}
|
||||
\entry {\code {complete}}{109}
|
||||
@@ -24,7 +24,7 @@
|
||||
\entry {\code {disown}}{85}
|
||||
\initial {E}
|
||||
\entry {\code {echo}}{42}
|
||||
\entry {\code {enable}}{42}
|
||||
\entry {\code {enable}}{43}
|
||||
\entry {\code {eval}}{34}
|
||||
\entry {\code {exec}}{34}
|
||||
\entry {\code {exit}}{34}
|
||||
@@ -45,7 +45,7 @@
|
||||
\initial {L}
|
||||
\entry {\code {let}}{43}
|
||||
\entry {\code {local}}{43}
|
||||
\entry {\code {logout}}{43}
|
||||
\entry {\code {logout}}{44}
|
||||
\initial {P}
|
||||
\entry {\code {popd}}{76}
|
||||
\entry {\code {printf}}{44}
|
||||
@@ -56,7 +56,7 @@
|
||||
\entry {\code {readonly}}{36}
|
||||
\entry {\code {return}}{36}
|
||||
\initial {S}
|
||||
\entry {\code {set}}{50}
|
||||
\entry {\code {set}}{51}
|
||||
\entry {\code {shift}}{36}
|
||||
\entry {\code {shopt}}{45}
|
||||
\entry {\code {source}}{49}
|
||||
@@ -68,7 +68,7 @@
|
||||
\entry {\code {type}}{49}
|
||||
\entry {\code {typeset}}{49}
|
||||
\initial {U}
|
||||
\entry {\code {ulimit}}{49}
|
||||
\entry {\code {ulimit}}{50}
|
||||
\entry {\code {umask}}{38}
|
||||
\entry {\code {unalias}}{50}
|
||||
\entry {\code {unset}}{39}
|
||||
|
||||
Binary file not shown.
+597
-656
File diff suppressed because it is too large
Load Diff
+294
-275
@@ -2,10 +2,10 @@ This is bashref.info, produced by makeinfo version 4.7 from
|
||||
/Users/chet/src/bash/src/doc/bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in
|
||||
the Bash shell (version 3.1-devel, 15 March 2005).
|
||||
the Bash shell (version 3.1-beta1, 5 September 2005).
|
||||
|
||||
This is Edition 3.1-devel, last updated 15 March 2005, of `The GNU
|
||||
Bash Reference Manual', for `Bash', Version 3.1-devel.
|
||||
This is Edition 3.1-beta1, last updated 5 September 2005, of `The
|
||||
GNU Bash Reference Manual', for `Bash', Version 3.1-beta1.
|
||||
|
||||
Copyright (C) 1988-2005 Free Software Foundation, Inc.
|
||||
|
||||
@@ -37,10 +37,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in
|
||||
the Bash shell (version 3.1-devel, 15 March 2005)..
|
||||
the Bash shell (version 3.1-beta1, 5 September 2005)..
|
||||
|
||||
This is Edition 3.1-devel, last updated 15 March 2005, of `The GNU
|
||||
Bash Reference Manual', for `Bash', Version 3.1-devel.
|
||||
This is Edition 3.1-beta1, last updated 5 September 2005, of `The
|
||||
GNU Bash Reference Manual', for `Bash', Version 3.1-beta1.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
features that only appear in Bash. Some of the shells that Bash has
|
||||
@@ -56,46 +56,28 @@ on shell behavior.
|
||||
* Menu:
|
||||
|
||||
* Introduction:: An introduction to the shell.
|
||||
|
||||
* Definitions:: Some definitions used in the rest of this
|
||||
manual.
|
||||
|
||||
* Basic Shell Features:: The shell "building blocks".
|
||||
|
||||
* Shell Builtin Commands:: Commands that are a part of the shell.
|
||||
|
||||
* Shell Variables:: Variables used or set by Bash.
|
||||
|
||||
* Bash Features:: Features found only in Bash.
|
||||
|
||||
* Job Control:: A chapter describing what job control is
|
||||
and how Bash allows you to use it.
|
||||
|
||||
* Using History Interactively:: Chapter dealing with history expansion
|
||||
rules.
|
||||
|
||||
* Job Control:: What job control is and how Bash allows you
|
||||
to use it.
|
||||
* Using History Interactively:: Command History Expansion
|
||||
* Command Line Editing:: Chapter describing the command line
|
||||
editing features.
|
||||
|
||||
* Installing Bash:: How to build and install Bash on your system.
|
||||
|
||||
* Reporting Bugs:: How to report bugs in Bash.
|
||||
|
||||
* Major Differences From The Bourne Shell:: A terse list of the differences
|
||||
between Bash and historical
|
||||
versions of /bin/sh.
|
||||
|
||||
* Copying This Manual:: Copying this manual.
|
||||
|
||||
* Builtin Index:: Index of Bash builtin commands.
|
||||
|
||||
* Reserved Word Index:: Index of Bash reserved words.
|
||||
|
||||
* Variable Index:: Quick reference helps you find the
|
||||
variable you want.
|
||||
|
||||
* Function Index:: Index of bindable Readline functions.
|
||||
|
||||
* Concept Index:: General index for concepts described in
|
||||
this manual.
|
||||
|
||||
@@ -108,7 +90,6 @@ File: bashref.info, Node: Introduction, Next: Definitions, Prev: Top, Up: To
|
||||
* Menu:
|
||||
|
||||
* What is Bash?:: A short description of Bash.
|
||||
|
||||
* What is a shell?:: A brief introduction to shells.
|
||||
|
||||
|
||||
@@ -313,9 +294,7 @@ File: bashref.info, Node: Shell Syntax, Next: Shell Commands, Up: Basic Shell
|
||||
* Menu:
|
||||
|
||||
* Shell Operation:: The basic operation of the shell.
|
||||
|
||||
* Quoting:: How to remove the special meaning from characters.
|
||||
|
||||
* Comments:: How to specify comments.
|
||||
|
||||
When the shell reads input, it proceeds through a sequence of
|
||||
@@ -382,7 +361,6 @@ File: bashref.info, Node: Quoting, Next: Comments, Prev: Shell Operation, Up
|
||||
* Double Quotes:: How to suppress most of the interpretation of a
|
||||
sequence of characters.
|
||||
* ANSI-C Quoting:: How to expand ANSI-C sequences in quoted strings.
|
||||
|
||||
* Locale Translation:: How to translate strings into different languages.
|
||||
|
||||
Quoting is used to remove the special meaning of certain characters
|
||||
@@ -1926,18 +1904,13 @@ File: bashref.info, Node: Executing Commands, Next: Shell Scripts, Prev: Redi
|
||||
|
||||
* Simple Command Expansion:: How Bash expands simple commands before
|
||||
executing them.
|
||||
|
||||
* Command Search and Execution:: How Bash finds commands and runs them.
|
||||
|
||||
* Command Execution Environment:: The environment in which Bash
|
||||
executes commands that are not
|
||||
shell builtins.
|
||||
|
||||
* Environment:: The environment given to a command.
|
||||
|
||||
* Exit Status:: The status returned by commands and how Bash
|
||||
interprets it.
|
||||
|
||||
* Signals:: What happens when Bash or a command it runs
|
||||
receives a signal.
|
||||
|
||||
@@ -2295,6 +2268,8 @@ Completion Builtins::).
|
||||
|
||||
Unless otherwise noted, each builtin command documented as accepting
|
||||
options preceded by `-' accepts `--' to signify the end of the options.
|
||||
For example, the `:', `true', `false', and `test' builtins do not
|
||||
accept options.
|
||||
|
||||
|
||||
File: bashref.info, Node: Bourne Shell Builtins, Next: Bash Builtins, Up: Shell Builtin Commands
|
||||
@@ -2511,6 +2486,8 @@ standard.
|
||||
Evaluate a conditional expression EXPR. Each operator and operand
|
||||
must be a separate argument. Expressions are composed of the
|
||||
primaries described below in *Note Bash Conditional Expressions::.
|
||||
`test' does not accept any options, nor does it accept and ignore
|
||||
an argument of `--' as signifying the end of options.
|
||||
|
||||
When the `[' form is used, the last argument to the command must
|
||||
be a `]'.
|
||||
@@ -2843,7 +2820,10 @@ POSIX 1003.2 standard.
|
||||
escape characters, even on systems where they are interpreted by
|
||||
default. The `xpg_echo' shell option may be used to dynamically
|
||||
determine whether or not `echo' expands these escape characters by
|
||||
default. `echo' interprets the following escape sequences:
|
||||
default. `echo' does not interpret `--' to mean the end of
|
||||
options.
|
||||
|
||||
`echo' interprets the following escape sequences:
|
||||
`\a'
|
||||
alert (bell)
|
||||
|
||||
@@ -4199,6 +4179,10 @@ Variables::).
|
||||
the shell is interactive. Bash terminates after that number of
|
||||
seconds if input does not arrive.
|
||||
|
||||
`TMPDIR'
|
||||
If set, Bash uses its value as the name of a directory in which
|
||||
Bash creates temporary files for the shell's use.
|
||||
|
||||
`UID'
|
||||
The numeric real user id of the current user. This variable is
|
||||
readonly.
|
||||
@@ -4951,9 +4935,10 @@ the array. Referencing an array variable without a subscript is
|
||||
equivalent to referencing element zero.
|
||||
|
||||
The `unset' builtin is used to destroy arrays. `unset'
|
||||
NAME[SUBSCRIPT] destroys the array element at index SUBSCRIPT. `unset'
|
||||
NAME, where NAME is an array, removes the entire array. A subscript of
|
||||
`*' or `@' also removes the entire array.
|
||||
NAME[SUBSCRIPT] destroys the array element at index SUBSCRIPT. Care
|
||||
must be taken to avoid unwanted side effects caused by filename
|
||||
generation. `unset' NAME, where NAME is an array, removes the entire
|
||||
array. A subscript of `*' or `@' also removes the entire array.
|
||||
|
||||
The `declare', `local', and `readonly' builtins each accept a `-a'
|
||||
option to specify an array. The `read' builtin accepts a `-a' option
|
||||
@@ -5256,149 +5241,160 @@ startup files.
|
||||
is stopped is `Stopped(SIGNAME)', where SIGNAME is, for example,
|
||||
`SIGTSTP'.
|
||||
|
||||
4. Reserved words appearing in a context where reserved words are
|
||||
4. The `bg' builtin uses the required format to describe each job
|
||||
placed in the background, which does not include an indication of
|
||||
whether the job is the current or previous job.
|
||||
|
||||
5. Reserved words appearing in a context where reserved words are
|
||||
recognized do not undergo alias expansion.
|
||||
|
||||
5. The POSIX 1003.2 `PS1' and `PS2' expansions of `!' to the history
|
||||
6. The POSIX 1003.2 `PS1' and `PS2' expansions of `!' to the history
|
||||
number and `!!' to `!' are enabled, and parameter expansion is
|
||||
performed on the values of `PS1' and `PS2' regardless of the
|
||||
setting of the `promptvars' option.
|
||||
|
||||
6. The POSIX 1003.2 startup files are executed (`$ENV') rather than
|
||||
7. The POSIX 1003.2 startup files are executed (`$ENV') rather than
|
||||
the normal Bash files.
|
||||
|
||||
7. Tilde expansion is only performed on assignments preceding a
|
||||
8. Tilde expansion is only performed on assignments preceding a
|
||||
command name, rather than on all assignment statements on the line.
|
||||
|
||||
8. The default history file is `~/.sh_history' (this is the default
|
||||
9. The default history file is `~/.sh_history' (this is the default
|
||||
value of `$HISTFILE').
|
||||
|
||||
9. The output of `kill -l' prints all the signal names on a single
|
||||
10. The output of `kill -l' prints all the signal names on a single
|
||||
line, separated by spaces, without the `SIG' prefix.
|
||||
|
||||
10. The `kill' builtin does not accept signal names with a `SIG'
|
||||
11. The `kill' builtin does not accept signal names with a `SIG'
|
||||
prefix.
|
||||
|
||||
11. Non-interactive shells exit if FILENAME in `.' FILENAME is not
|
||||
12. Non-interactive shells exit if FILENAME in `.' FILENAME is not
|
||||
found.
|
||||
|
||||
12. Non-interactive shells exit if a syntax error in an arithmetic
|
||||
13. Non-interactive shells exit if a syntax error in an arithmetic
|
||||
expansion results in an invalid expression.
|
||||
|
||||
13. Redirection operators do not perform filename expansion on the word
|
||||
14. Redirection operators do not perform filename expansion on the word
|
||||
in the redirection unless the shell is interactive.
|
||||
|
||||
14. Redirection operators do not perform word splitting on the word in
|
||||
15. Redirection operators do not perform word splitting on the word in
|
||||
the redirection.
|
||||
|
||||
15. Function names must be valid shell `name's. That is, they may not
|
||||
16. Function names must be valid shell `name's. That is, they may not
|
||||
contain characters other than letters, digits, and underscores, and
|
||||
may not start with a digit. Declaring a function with an invalid
|
||||
name causes a fatal syntax error in non-interactive shells.
|
||||
|
||||
16. POSIX 1003.2 `special' builtins are found before shell functions
|
||||
17. POSIX 1003.2 special builtins are found before shell functions
|
||||
during command lookup.
|
||||
|
||||
17. If a POSIX 1003.2 special builtin returns an error status, a
|
||||
18. If a POSIX 1003.2 special builtin returns an error status, a
|
||||
non-interactive shell exits. The fatal errors are those listed in
|
||||
the POSIX.2 standard, and include things like passing incorrect
|
||||
options, redirection errors, variable assignment errors for
|
||||
assignments preceding the command name, and so on.
|
||||
|
||||
18. If `CDPATH' is set, the `cd' builtin will not implicitly append
|
||||
19. If `CDPATH' is set, the `cd' builtin will not implicitly append
|
||||
the current directory to it. This means that `cd' will fail if no
|
||||
valid directory name can be constructed from any of the entries in
|
||||
`$CDPATH', even if the a directory with the same name as the name
|
||||
given as an argument to `cd' exists in the current directory.
|
||||
|
||||
19. A non-interactive shell exits with an error status if a variable
|
||||
20. A non-interactive shell exits with an error status if a variable
|
||||
assignment error occurs when no command name follows the assignment
|
||||
statements. A variable assignment error occurs, for example, when
|
||||
trying to assign a value to a readonly variable.
|
||||
|
||||
20. A non-interactive shell exits with an error status if the iteration
|
||||
21. A non-interactive shell exits with an error status if the iteration
|
||||
variable in a `for' statement or the selection variable in a
|
||||
`select' statement is a readonly variable.
|
||||
|
||||
21. Process substitution is not available.
|
||||
22. Process substitution is not available.
|
||||
|
||||
22. Assignment statements preceding POSIX 1003.2 special builtins
|
||||
23. Assignment statements preceding POSIX 1003.2 special builtins
|
||||
persist in the shell environment after the builtin completes.
|
||||
|
||||
23. Assignment statements preceding shell function calls persist in the
|
||||
24. Assignment statements preceding shell function calls persist in the
|
||||
shell environment after the function returns, as if a POSIX
|
||||
special builtin command had been executed.
|
||||
|
||||
24. The `export' and `readonly' builtin commands display their output
|
||||
25. The `export' and `readonly' builtin commands display their output
|
||||
in the format required by POSIX 1003.2.
|
||||
|
||||
25. The `trap' builtin displays signal names without the leading `SIG'.
|
||||
26. The `trap' builtin displays signal names without the leading `SIG'.
|
||||
|
||||
26. The `trap' builtin doesn't check the first argument for a possible
|
||||
27. The `trap' builtin doesn't check the first argument for a possible
|
||||
signal specification and revert the signal handling to the original
|
||||
disposition if it is, unless that argument consists solely of
|
||||
digits and is a valid signal number. If users want to reset the
|
||||
handler for a given signal to the original disposition, they
|
||||
should use `-' as the first argument.
|
||||
|
||||
27. The `.' and `source' builtins do not search the current directory
|
||||
28. The `.' and `source' builtins do not search the current directory
|
||||
for the filename argument if it is not found by searching `PATH'.
|
||||
|
||||
28. Subshells spawned to execute command substitutions inherit the
|
||||
29. Subshells spawned to execute command substitutions inherit the
|
||||
value of the `-e' option from the parent shell. When not in POSIX
|
||||
mode, Bash clears the `-e' option in such subshells.
|
||||
|
||||
29. Alias expansion is always enabled, even in non-interactive shells.
|
||||
30. Alias expansion is always enabled, even in non-interactive shells.
|
||||
|
||||
30. When the `alias' builtin displays alias definitions, it does not
|
||||
31. When the `alias' builtin displays alias definitions, it does not
|
||||
display them with a leading `alias ' unless the `-p' option is
|
||||
supplied.
|
||||
|
||||
31. When the `set' builtin is invoked without options, it does not
|
||||
32. When the `set' builtin is invoked without options, it does not
|
||||
display shell function names and definitions.
|
||||
|
||||
32. When the `set' builtin is invoked without options, it displays
|
||||
33. When the `set' builtin is invoked without options, it displays
|
||||
variable values without quotes, unless they contain shell
|
||||
metacharacters, even if the result contains nonprinting characters.
|
||||
|
||||
33. When the `cd' builtin is invoked in LOGICAL mode, and the pathname
|
||||
34. When the `cd' builtin is invoked in LOGICAL mode, and the pathname
|
||||
constructed from `$PWD' and the directory name supplied as an
|
||||
argument does not refer to an existing directory, `cd' will fail
|
||||
instead of falling back to PHYSICAL mode.
|
||||
|
||||
34. When the `pwd' builtin is supplied the `-P' option, it resets
|
||||
35. When the `pwd' builtin is supplied the `-P' option, it resets
|
||||
`$PWD' to a pathname containing no symlinks.
|
||||
|
||||
35. When listing the history, the `fc' builtin does not include an
|
||||
36. The `pwd' builtin verifies that the value it prints is the same as
|
||||
the current directory, even if it is not asked to check the file
|
||||
system with the `-P' option.
|
||||
|
||||
37. When listing the history, the `fc' builtin does not include an
|
||||
indication of whether or not a history entry has been modified.
|
||||
|
||||
36. The default editor used by `fc' is `ed'.
|
||||
38. The default editor used by `fc' is `ed'.
|
||||
|
||||
37. The `type' and `command' builtins will not report a non-executable
|
||||
39. The `type' and `command' builtins will not report a non-executable
|
||||
file as having been found, though the shell will attempt to
|
||||
execute such a file if it is the only so-named file found in
|
||||
`$PATH'.
|
||||
|
||||
38. When the `xpg_echo' option is enabled, Bash does not attempt to
|
||||
40. The `vi' editing mode will invoke the `vi' editor directly when
|
||||
the `v' command is run, instead of checking `$FCEDIT' and
|
||||
`$EDITOR'.
|
||||
|
||||
41. When the `xpg_echo' option is enabled, Bash does not attempt to
|
||||
interpret any arguments to `echo' as options. Each argument is
|
||||
displayed, after escape characters are converted.
|
||||
|
||||
|
||||
There is other POSIX 1003.2 behavior that Bash does not implement.
|
||||
Specifically:
|
||||
There is other POSIX 1003.2 behavior that Bash does not implement by
|
||||
default even when in POSIX mode. Specifically:
|
||||
|
||||
1. Assignment statements affect the execution environment of all
|
||||
builtins, not just special ones.
|
||||
1. The `fc' builtin checks `$EDITOR' as a program to edit history
|
||||
entries if `FCEDIT' is unset, rather than defaulting directly to
|
||||
`ed'. `fc' uses `ed' if `EDITOR' is unset.
|
||||
|
||||
2. When a subshell is created to execute a shell script with execute
|
||||
permission, but without a leading `#!', Bash sets `$0' to the full
|
||||
pathname of the script as found by searching `$PATH', rather than
|
||||
the command as typed by the user.
|
||||
2. As noted above, Bash requires the `xpg_echo' option to be enabled
|
||||
for the `echo' builtin to be fully conformant.
|
||||
|
||||
3. When using `.' to source a shell script found in `$PATH', bash
|
||||
checks execute permission bits rather than read permission bits,
|
||||
just as if it were searching for a command.
|
||||
|
||||
Bash can be configured to be POSIX-conformant by default, by
|
||||
specifying the `--enable-strict-posix-default' to `configure' when
|
||||
building (*note Optional Features::).
|
||||
|
||||
|
||||
File: bashref.info, Node: Job Control, Next: Using History Interactively, Prev: Bash Features, Up: Top
|
||||
@@ -5511,9 +5507,9 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
Resume each suspended job JOBSPEC in the background, as if it had
|
||||
been started with `&'. If JOBSPEC is not supplied, the current
|
||||
job is used. The return status is zero unless it is run when job
|
||||
control is not enabled, or, when run with job control enabled, if
|
||||
the last JOBSPEC was not found or the last JOBSPEC specifies a job
|
||||
that was started without job control.
|
||||
control is not enabled, or, when run with job control enabled, any
|
||||
JOBSPEC was not found or specifies a job that was started without
|
||||
job control.
|
||||
|
||||
`fg'
|
||||
fg [JOBSPEC]
|
||||
@@ -5961,7 +5957,11 @@ Variable Settings
|
||||
set editing-mode vi
|
||||
|
||||
Variable names and values, where appropriate, are recognized
|
||||
without regard to case.
|
||||
without regard to case. Unrecognized variable names are ignored.
|
||||
|
||||
Boolean variables (those that can be set to on or off) are set to
|
||||
on if the value is null or empty, ON (case-insensitive), or 1.
|
||||
Any other value results in the variable being set to off.
|
||||
|
||||
The `bind -V' command lists the current Readline variable names
|
||||
and values. *Note Bash Builtins::.
|
||||
@@ -5998,7 +5998,8 @@ Variable Settings
|
||||
than this value, Readline will ask the user whether or not he
|
||||
wishes to view them; otherwise, they are simply listed. This
|
||||
variable must be set to an integer value greater than or
|
||||
equal to 0. The default limit is `100'.
|
||||
equal to 0. A negative value means Readline should never ask.
|
||||
The default limit is `100'.
|
||||
|
||||
`convert-meta'
|
||||
If set to `on', Readline will convert characters with the
|
||||
@@ -6026,9 +6027,10 @@ Variable Settings
|
||||
If set to `on', tilde expansion is performed when Readline
|
||||
attempts word completion. The default is `off'.
|
||||
|
||||
`history-preserve-point'
|
||||
If set to `on', the history code attempts to place point at
|
||||
the same location on each history line retrieved with
|
||||
`previous-history' or `next-history'.
|
||||
`previous-history' or `next-history'. The default is `off'.
|
||||
|
||||
`horizontal-scroll-mode'
|
||||
This variable can be set to either `on' or `off'. Setting it
|
||||
@@ -7663,23 +7665,16 @@ MS-DOS, OS/2, and Windows platforms.
|
||||
* Menu:
|
||||
|
||||
* Basic Installation:: Installation instructions.
|
||||
|
||||
* Compilers and Options:: How to set special options for various
|
||||
systems.
|
||||
|
||||
* Compiling For Multiple Architectures:: How to compile Bash for more
|
||||
than one kind of system from
|
||||
the same source tree.
|
||||
|
||||
* Installation Names:: How to set the various paths used by the installation.
|
||||
|
||||
* Specifying the System Type:: How to configure Bash for a particular system.
|
||||
|
||||
* Sharing Defaults:: How to share default configuration values among GNU
|
||||
programs.
|
||||
|
||||
* Operation Controls:: Options recognized by the configuration program.
|
||||
|
||||
* Optional Features:: How to enable and disable optional features when
|
||||
building Bash.
|
||||
|
||||
@@ -7902,13 +7897,14 @@ that the Bash `configure' recognizes.
|
||||
Define if you are using the Andrew File System from Transarc.
|
||||
|
||||
`--with-bash-malloc'
|
||||
Use the Bash version of `malloc' in `lib/malloc/malloc.c'. This
|
||||
is not the same `malloc' that appears in GNU libc, but an older
|
||||
version derived from the 4.2 BSD `malloc'. This `malloc' is very
|
||||
fast, but wastes some space on each allocation. This option is
|
||||
enabled by default. The `NOTES' file contains a list of systems
|
||||
for which this should be turned off, and `configure' disables this
|
||||
option automatically for a number of systems.
|
||||
Use the Bash version of `malloc' in the directory `lib/malloc'.
|
||||
This is not the same `malloc' that appears in GNU libc, but an
|
||||
older version originally derived from the 4.2 BSD `malloc'. This
|
||||
`malloc' is very fast, but wastes some space on each allocation.
|
||||
This option is enabled by default. The `NOTES' file contains a
|
||||
list of systems for which this should be turned off, and
|
||||
`configure' disables this option automatically for a number of
|
||||
systems.
|
||||
|
||||
`--with-curses'
|
||||
Use the curses library instead of the termcap library. This should
|
||||
@@ -8082,6 +8078,9 @@ does not provide the necessary support.
|
||||
different languages. You may need to disable this if your
|
||||
compiler cannot handle very long string literals.
|
||||
|
||||
`--enable-strict-posix-default'
|
||||
Make Bash POSIX-conformant by default (*note Bash POSIX Mode::).
|
||||
|
||||
`--enable-usg-echo-default'
|
||||
A synonym for `--enable-xpg-echo-default'.
|
||||
|
||||
@@ -8147,7 +8146,8 @@ be implemented. There are some differences between the traditional
|
||||
Bourne shell and Bash; this section quickly details the differences of
|
||||
significance. A number of these differences are explained in greater
|
||||
depth in previous sections. This section uses the version of `sh'
|
||||
included in SVR4.2 as the baseline reference.
|
||||
included in SVR4.2 (the last version of the historical Bourne shell) as
|
||||
the baseline reference.
|
||||
|
||||
* Bash is POSIX-conformant, even where the POSIX specification
|
||||
differs from traditional `sh' behavior (*note Bash POSIX Mode::).
|
||||
@@ -8187,7 +8187,9 @@ included in SVR4.2 as the baseline reference.
|
||||
|
||||
* Bash implements the `!' keyword to negate the return value of a
|
||||
pipeline (*note Pipelines::). Very useful when an `if' statement
|
||||
needs to act only if a test fails.
|
||||
needs to act only if a test fails. The Bash `-o pipefail' option
|
||||
to `set' will cause a pipeline to return a failure status if any
|
||||
command fails.
|
||||
|
||||
* Bash has the `time' reserved word and command timing (*note
|
||||
Pipelines::). The display of the timing statistics may be
|
||||
@@ -8201,7 +8203,11 @@ included in SVR4.2 as the baseline reference.
|
||||
generation of simple menus (*note Conditional Constructs::).
|
||||
|
||||
* Bash includes the `[[' compound command, which makes conditional
|
||||
testing part of the shell grammar (*note Conditional Constructs::).
|
||||
testing part of the shell grammar (*note Conditional
|
||||
Constructs::), including optional regular expression matching.
|
||||
|
||||
* Bash provides optional case-insensitive matching for the `case' and
|
||||
`[[' constructs.
|
||||
|
||||
* Bash includes brace expansion (*note Brace Expansion::) and tilde
|
||||
expansion (*note Tilde Expansion::).
|
||||
@@ -8218,6 +8224,9 @@ included in SVR4.2 as the baseline reference.
|
||||
not normally do this unless the variables are explicitly marked
|
||||
using the `export' command.
|
||||
|
||||
* Bash supports the `+=' assignment operator, which appends to the
|
||||
value of the variable named on the left hand side.
|
||||
|
||||
* Bash includes the POSIX pattern removal `%', `#', `%%' and `##'
|
||||
expansions to remove leading or trailing substrings from variable
|
||||
values (*note Shell Parameter Expansion::).
|
||||
@@ -8285,6 +8294,12 @@ included in SVR4.2 as the baseline reference.
|
||||
operator, for directing standard output and standard error to the
|
||||
same file (*note Redirections::).
|
||||
|
||||
* Bash includes the `<<<' redirection operator, allowing a string to
|
||||
be used as the standard input to a command.
|
||||
|
||||
* Bash implements the `[n]<&WORD' and `[n]>&WORD' redirection
|
||||
operators, which move one file descriptor to another.
|
||||
|
||||
* Bash treats a number of filenames specially when they are used in
|
||||
redirection operators (*note Redirections::).
|
||||
|
||||
@@ -8423,6 +8438,9 @@ included in SVR4.2 as the baseline reference.
|
||||
table (*note Job Control Builtins::) or suppress the sending of
|
||||
`SIGHUP' to a job when the shell exits as the result of a `SIGHUP'.
|
||||
|
||||
* Bash includes a number of features to support a separate debugger
|
||||
for shell scripts.
|
||||
|
||||
* The SVR4.2 shell has two privilege-related builtins (`mldmode' and
|
||||
`priv') not present in Bash.
|
||||
|
||||
@@ -8960,7 +8978,7 @@ Index of Shell Builtin Commands
|
||||
* disown: Job Control Builtins.
|
||||
(line 83)
|
||||
* echo: Bash Builtins. (line 191)
|
||||
* enable: Bash Builtins. (line 244)
|
||||
* enable: Bash Builtins. (line 247)
|
||||
* eval: Bourne Shell Builtins.
|
||||
(line 63)
|
||||
* exec: Bourne Shell Builtins.
|
||||
@@ -8977,24 +8995,24 @@ Index of Shell Builtin Commands
|
||||
(line 103)
|
||||
* hash: Bourne Shell Builtins.
|
||||
(line 145)
|
||||
* help: Bash Builtins. (line 272)
|
||||
* help: Bash Builtins. (line 275)
|
||||
* history: Bash History Builtins.
|
||||
(line 39)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 25)
|
||||
* kill: Job Control Builtins.
|
||||
(line 57)
|
||||
* let: Bash Builtins. (line 281)
|
||||
* local: Bash Builtins. (line 288)
|
||||
* logout: Bash Builtins. (line 298)
|
||||
* let: Bash Builtins. (line 284)
|
||||
* local: Bash Builtins. (line 291)
|
||||
* logout: Bash Builtins. (line 301)
|
||||
* popd: Directory Stack Builtins.
|
||||
(line 37)
|
||||
* printf: Bash Builtins. (line 302)
|
||||
* printf: Bash Builtins. (line 305)
|
||||
* pushd: Directory Stack Builtins.
|
||||
(line 58)
|
||||
* pwd: Bourne Shell Builtins.
|
||||
(line 163)
|
||||
* read: Bash Builtins. (line 327)
|
||||
* read: Bash Builtins. (line 330)
|
||||
* readonly: Bourne Shell Builtins.
|
||||
(line 172)
|
||||
* return: Bourne Shell Builtins.
|
||||
@@ -9002,24 +9020,24 @@ Index of Shell Builtin Commands
|
||||
* set: The Set Builtin. (line 9)
|
||||
* shift: Bourne Shell Builtins.
|
||||
(line 200)
|
||||
* shopt: Bash Builtins. (line 388)
|
||||
* source: Bash Builtins. (line 619)
|
||||
* shopt: Bash Builtins. (line 391)
|
||||
* source: Bash Builtins. (line 622)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 94)
|
||||
* test: Bourne Shell Builtins.
|
||||
(line 212)
|
||||
* times: Bourne Shell Builtins.
|
||||
(line 276)
|
||||
(line 278)
|
||||
* trap: Bourne Shell Builtins.
|
||||
(line 281)
|
||||
* type: Bash Builtins. (line 623)
|
||||
* typeset: Bash Builtins. (line 654)
|
||||
* ulimit: Bash Builtins. (line 660)
|
||||
(line 283)
|
||||
* type: Bash Builtins. (line 626)
|
||||
* typeset: Bash Builtins. (line 657)
|
||||
* ulimit: Bash Builtins. (line 663)
|
||||
* umask: Bourne Shell Builtins.
|
||||
(line 322)
|
||||
* unalias: Bash Builtins. (line 722)
|
||||
(line 324)
|
||||
* unalias: Bash Builtins. (line 725)
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 339)
|
||||
(line 341)
|
||||
* wait: Job Control Builtins.
|
||||
(line 73)
|
||||
|
||||
@@ -9098,35 +9116,35 @@ Parameter and Variable Index
|
||||
* BASH_VERSINFO: Bash Variables. (line 74)
|
||||
* BASH_VERSION: Bash Variables. (line 98)
|
||||
* bell-style: Readline Init File Syntax.
|
||||
(line 34)
|
||||
(line 38)
|
||||
* bind-tty-special-chars: Readline Init File Syntax.
|
||||
(line 41)
|
||||
(line 45)
|
||||
* CDPATH: Bourne Shell Variables.
|
||||
(line 9)
|
||||
* COLUMNS: Bash Variables. (line 101)
|
||||
* comment-begin: Readline Init File Syntax.
|
||||
(line 46)
|
||||
(line 50)
|
||||
* COMP_CWORD: Bash Variables. (line 106)
|
||||
* COMP_LINE: Bash Variables. (line 112)
|
||||
* COMP_POINT: Bash Variables. (line 117)
|
||||
* COMP_WORDBREAKS: Bash Variables. (line 125)
|
||||
* COMP_WORDS: Bash Variables. (line 131)
|
||||
* completion-query-items: Readline Init File Syntax.
|
||||
(line 56)
|
||||
(line 60)
|
||||
* COMPREPLY: Bash Variables. (line 137)
|
||||
* convert-meta: Readline Init File Syntax.
|
||||
(line 65)
|
||||
(line 70)
|
||||
* DIRSTACK: Bash Variables. (line 142)
|
||||
* disable-completion: Readline Init File Syntax.
|
||||
(line 71)
|
||||
* editing-mode: Readline Init File Syntax.
|
||||
(line 76)
|
||||
* editing-mode: Readline Init File Syntax.
|
||||
(line 81)
|
||||
* EMACS: Bash Variables. (line 152)
|
||||
* enable-keypad: Readline Init File Syntax.
|
||||
(line 82)
|
||||
(line 87)
|
||||
* EUID: Bash Variables. (line 157)
|
||||
* expand-tilde: Readline Init File Syntax.
|
||||
(line 87)
|
||||
(line 92)
|
||||
* FCEDIT: Bash Variables. (line 161)
|
||||
* FIGNORE: Bash Variables. (line 165)
|
||||
* FUNCNAME: Bash Variables. (line 171)
|
||||
@@ -9139,13 +9157,13 @@ Parameter and Variable Index
|
||||
* HISTFILESIZE: Bash Variables. (line 232)
|
||||
* HISTIGNORE: Bash Variables. (line 239)
|
||||
* history-preserve-point: Readline Init File Syntax.
|
||||
(line 90)
|
||||
(line 96)
|
||||
* HISTSIZE: Bash Variables. (line 258)
|
||||
* HISTTIMEFORMAT: Bash Variables. (line 262)
|
||||
* HOME: Bourne Shell Variables.
|
||||
(line 13)
|
||||
* horizontal-scroll-mode: Readline Init File Syntax.
|
||||
(line 95)
|
||||
(line 101)
|
||||
* HOSTFILE: Bash Variables. (line 269)
|
||||
* HOSTNAME: Bash Variables. (line 280)
|
||||
* HOSTTYPE: Bash Variables. (line 283)
|
||||
@@ -9153,12 +9171,12 @@ Parameter and Variable Index
|
||||
(line 18)
|
||||
* IGNOREEOF: Bash Variables. (line 286)
|
||||
* input-meta: Readline Init File Syntax.
|
||||
(line 102)
|
||||
(line 108)
|
||||
* INPUTRC: Bash Variables. (line 296)
|
||||
* isearch-terminators: Readline Init File Syntax.
|
||||
(line 109)
|
||||
(line 115)
|
||||
* keymap: Readline Init File Syntax.
|
||||
(line 116)
|
||||
(line 122)
|
||||
* LANG: Bash Variables. (line 300)
|
||||
* LC_ALL: Bash Variables. (line 304)
|
||||
* LC_COLLATE: Bash Variables. (line 308)
|
||||
@@ -9175,13 +9193,13 @@ Parameter and Variable Index
|
||||
* MAILPATH: Bourne Shell Variables.
|
||||
(line 27)
|
||||
* mark-modified-lines: Readline Init File Syntax.
|
||||
(line 129)
|
||||
(line 135)
|
||||
* mark-symlinked-directories: Readline Init File Syntax.
|
||||
(line 134)
|
||||
(line 140)
|
||||
* match-hidden-files: Readline Init File Syntax.
|
||||
(line 139)
|
||||
(line 145)
|
||||
* meta-flag: Readline Init File Syntax.
|
||||
(line 102)
|
||||
(line 108)
|
||||
* OLDPWD: Bash Variables. (line 349)
|
||||
* OPTARG: Bourne Shell Variables.
|
||||
(line 34)
|
||||
@@ -9190,9 +9208,9 @@ Parameter and Variable Index
|
||||
(line 38)
|
||||
* OSTYPE: Bash Variables. (line 356)
|
||||
* output-meta: Readline Init File Syntax.
|
||||
(line 146)
|
||||
(line 152)
|
||||
* page-completions: Readline Init File Syntax.
|
||||
(line 151)
|
||||
(line 157)
|
||||
* PATH: Bourne Shell Variables.
|
||||
(line 42)
|
||||
* PIPESTATUS: Bash Variables. (line 359)
|
||||
@@ -9213,16 +9231,17 @@ Parameter and Variable Index
|
||||
* SHELLOPTS: Bash Variables. (line 414)
|
||||
* SHLVL: Bash Variables. (line 423)
|
||||
* show-all-if-ambiguous: Readline Init File Syntax.
|
||||
(line 161)
|
||||
* show-all-if-unmodified: Readline Init File Syntax.
|
||||
(line 167)
|
||||
* show-all-if-unmodified: Readline Init File Syntax.
|
||||
(line 173)
|
||||
* TEXTDOMAIN: Locale Translation. (line 11)
|
||||
* TEXTDOMAINDIR: Locale Translation. (line 11)
|
||||
* TIMEFORMAT: Bash Variables. (line 428)
|
||||
* TMOUT: Bash Variables. (line 466)
|
||||
* UID: Bash Variables. (line 478)
|
||||
* TMPDIR: Bash Variables. (line 478)
|
||||
* UID: Bash Variables. (line 482)
|
||||
* visible-stats: Readline Init File Syntax.
|
||||
(line 176)
|
||||
(line 182)
|
||||
|
||||
|
||||
File: bashref.info, Node: Function Index, Next: Concept Index, Prev: Variable Index, Up: Top
|
||||
@@ -9479,7 +9498,7 @@ Concept Index
|
||||
* translation, native languages: Locale Translation. (line 6)
|
||||
* variable, shell: Shell Parameters. (line 6)
|
||||
* variables, readline: Readline Init File Syntax.
|
||||
(line 33)
|
||||
(line 37)
|
||||
* word: Definitions. (line 87)
|
||||
* word splitting: Word Splitting. (line 6)
|
||||
* yanking text: Readline Killing Commands.
|
||||
@@ -9488,129 +9507,129 @@ Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top1369
|
||||
Node: Introduction3525
|
||||
Node: What is Bash?3754
|
||||
Node: What is a shell?4847
|
||||
Node: Definitions7388
|
||||
Node: Basic Shell Features10129
|
||||
Node: Shell Syntax11348
|
||||
Node: Shell Operation12380
|
||||
Node: Quoting13674
|
||||
Node: Escape Character14978
|
||||
Node: Single Quotes15463
|
||||
Node: Double Quotes15811
|
||||
Node: ANSI-C Quoting16936
|
||||
Node: Locale Translation17892
|
||||
Node: Comments18788
|
||||
Node: Shell Commands19402
|
||||
Node: Simple Commands20168
|
||||
Node: Pipelines20799
|
||||
Node: Lists22674
|
||||
Node: Compound Commands24305
|
||||
Node: Looping Constructs25089
|
||||
Node: Conditional Constructs27536
|
||||
Node: Command Grouping34996
|
||||
Node: Shell Functions36445
|
||||
Node: Shell Parameters40735
|
||||
Node: Positional Parameters43065
|
||||
Node: Special Parameters43965
|
||||
Node: Shell Expansions46929
|
||||
Node: Brace Expansion48854
|
||||
Node: Tilde Expansion51179
|
||||
Node: Shell Parameter Expansion53530
|
||||
Node: Command Substitution61039
|
||||
Node: Arithmetic Expansion62372
|
||||
Node: Process Substitution63222
|
||||
Node: Word Splitting64272
|
||||
Node: Filename Expansion65733
|
||||
Node: Pattern Matching67869
|
||||
Node: Quote Removal71194
|
||||
Node: Redirections71489
|
||||
Node: Executing Commands79219
|
||||
Node: Simple Command Expansion79894
|
||||
Node: Command Search and Execution81824
|
||||
Node: Command Execution Environment83830
|
||||
Node: Environment86601
|
||||
Node: Exit Status88261
|
||||
Node: Signals89465
|
||||
Node: Shell Scripts91429
|
||||
Node: Shell Builtin Commands93947
|
||||
Node: Bourne Shell Builtins95526
|
||||
Node: Bash Builtins112479
|
||||
Node: The Set Builtin141452
|
||||
Node: Special Builtins149859
|
||||
Node: Shell Variables150836
|
||||
Node: Bourne Shell Variables151276
|
||||
Node: Bash Variables153257
|
||||
Node: Bash Features173309
|
||||
Node: Invoking Bash174192
|
||||
Node: Bash Startup Files180013
|
||||
Node: Interactive Shells184871
|
||||
Node: What is an Interactive Shell?185281
|
||||
Node: Is this Shell Interactive?185931
|
||||
Node: Interactive Shell Behavior186746
|
||||
Node: Bash Conditional Expressions190022
|
||||
Node: Shell Arithmetic193601
|
||||
Node: Aliases196347
|
||||
Node: Arrays198915
|
||||
Node: The Directory Stack202182
|
||||
Node: Directory Stack Builtins202896
|
||||
Node: Printing a Prompt205787
|
||||
Node: The Restricted Shell208501
|
||||
Node: Bash POSIX Mode210333
|
||||
Node: Job Control217663
|
||||
Node: Job Control Basics218130
|
||||
Node: Job Control Builtins222506
|
||||
Node: Job Control Variables226858
|
||||
Node: Command Line Editing228016
|
||||
Node: Introduction and Notation229015
|
||||
Node: Readline Interaction230637
|
||||
Node: Readline Bare Essentials231828
|
||||
Node: Readline Movement Commands233617
|
||||
Node: Readline Killing Commands234582
|
||||
Node: Readline Arguments236502
|
||||
Node: Searching237546
|
||||
Node: Readline Init File239732
|
||||
Node: Readline Init File Syntax240791
|
||||
Node: Conditional Init Constructs252650
|
||||
Node: Sample Init File255183
|
||||
Node: Bindable Readline Commands258300
|
||||
Node: Commands For Moving259507
|
||||
Node: Commands For History260368
|
||||
Node: Commands For Text263523
|
||||
Node: Commands For Killing266196
|
||||
Node: Numeric Arguments268338
|
||||
Node: Commands For Completion269477
|
||||
Node: Keyboard Macros273070
|
||||
Node: Miscellaneous Commands273641
|
||||
Node: Readline vi Mode278952
|
||||
Node: Programmable Completion279866
|
||||
Node: Programmable Completion Builtins285658
|
||||
Node: Using History Interactively293254
|
||||
Node: Bash History Facilities293934
|
||||
Node: Bash History Builtins296629
|
||||
Node: History Interaction300486
|
||||
Node: Event Designators303042
|
||||
Node: Word Designators304057
|
||||
Node: Modifiers305696
|
||||
Node: Installing Bash307102
|
||||
Node: Basic Installation308239
|
||||
Node: Compilers and Options310931
|
||||
Node: Compiling For Multiple Architectures311672
|
||||
Node: Installation Names313336
|
||||
Node: Specifying the System Type314154
|
||||
Node: Sharing Defaults314870
|
||||
Node: Operation Controls315543
|
||||
Node: Optional Features316501
|
||||
Node: Reporting Bugs325310
|
||||
Node: Major Differences From The Bourne Shell326504
|
||||
Node: Copying This Manual342412
|
||||
Node: GNU Free Documentation License342688
|
||||
Node: Builtin Index365094
|
||||
Node: Reserved Word Index371643
|
||||
Node: Variable Index374079
|
||||
Node: Function Index384939
|
||||
Node: Concept Index391659
|
||||
Node: Top1375
|
||||
Node: Introduction3475
|
||||
Node: What is Bash?3703
|
||||
Node: What is a shell?4796
|
||||
Node: Definitions7337
|
||||
Node: Basic Shell Features10078
|
||||
Node: Shell Syntax11297
|
||||
Node: Shell Operation12327
|
||||
Node: Quoting13621
|
||||
Node: Escape Character14924
|
||||
Node: Single Quotes15409
|
||||
Node: Double Quotes15757
|
||||
Node: ANSI-C Quoting16882
|
||||
Node: Locale Translation17838
|
||||
Node: Comments18734
|
||||
Node: Shell Commands19348
|
||||
Node: Simple Commands20114
|
||||
Node: Pipelines20745
|
||||
Node: Lists22620
|
||||
Node: Compound Commands24251
|
||||
Node: Looping Constructs25035
|
||||
Node: Conditional Constructs27482
|
||||
Node: Command Grouping34942
|
||||
Node: Shell Functions36391
|
||||
Node: Shell Parameters40681
|
||||
Node: Positional Parameters43011
|
||||
Node: Special Parameters43911
|
||||
Node: Shell Expansions46875
|
||||
Node: Brace Expansion48800
|
||||
Node: Tilde Expansion51125
|
||||
Node: Shell Parameter Expansion53476
|
||||
Node: Command Substitution60985
|
||||
Node: Arithmetic Expansion62318
|
||||
Node: Process Substitution63168
|
||||
Node: Word Splitting64218
|
||||
Node: Filename Expansion65679
|
||||
Node: Pattern Matching67815
|
||||
Node: Quote Removal71140
|
||||
Node: Redirections71435
|
||||
Node: Executing Commands79165
|
||||
Node: Simple Command Expansion79835
|
||||
Node: Command Search and Execution81765
|
||||
Node: Command Execution Environment83771
|
||||
Node: Environment86542
|
||||
Node: Exit Status88202
|
||||
Node: Signals89406
|
||||
Node: Shell Scripts91370
|
||||
Node: Shell Builtin Commands93888
|
||||
Node: Bourne Shell Builtins95549
|
||||
Node: Bash Builtins112632
|
||||
Node: The Set Builtin141675
|
||||
Node: Special Builtins150082
|
||||
Node: Shell Variables151059
|
||||
Node: Bourne Shell Variables151499
|
||||
Node: Bash Variables153480
|
||||
Node: Bash Features173666
|
||||
Node: Invoking Bash174549
|
||||
Node: Bash Startup Files180370
|
||||
Node: Interactive Shells185228
|
||||
Node: What is an Interactive Shell?185638
|
||||
Node: Is this Shell Interactive?186288
|
||||
Node: Interactive Shell Behavior187103
|
||||
Node: Bash Conditional Expressions190379
|
||||
Node: Shell Arithmetic193958
|
||||
Node: Aliases196704
|
||||
Node: Arrays199272
|
||||
Node: The Directory Stack202621
|
||||
Node: Directory Stack Builtins203335
|
||||
Node: Printing a Prompt206226
|
||||
Node: The Restricted Shell208940
|
||||
Node: Bash POSIX Mode210772
|
||||
Node: Job Control218589
|
||||
Node: Job Control Basics219056
|
||||
Node: Job Control Builtins223432
|
||||
Node: Job Control Variables227759
|
||||
Node: Command Line Editing228917
|
||||
Node: Introduction and Notation229916
|
||||
Node: Readline Interaction231538
|
||||
Node: Readline Bare Essentials232729
|
||||
Node: Readline Movement Commands234518
|
||||
Node: Readline Killing Commands235483
|
||||
Node: Readline Arguments237403
|
||||
Node: Searching238447
|
||||
Node: Readline Init File240633
|
||||
Node: Readline Init File Syntax241692
|
||||
Node: Conditional Init Constructs253908
|
||||
Node: Sample Init File256441
|
||||
Node: Bindable Readline Commands259558
|
||||
Node: Commands For Moving260765
|
||||
Node: Commands For History261626
|
||||
Node: Commands For Text264781
|
||||
Node: Commands For Killing267454
|
||||
Node: Numeric Arguments269596
|
||||
Node: Commands For Completion270735
|
||||
Node: Keyboard Macros274328
|
||||
Node: Miscellaneous Commands274899
|
||||
Node: Readline vi Mode280210
|
||||
Node: Programmable Completion281124
|
||||
Node: Programmable Completion Builtins286916
|
||||
Node: Using History Interactively294512
|
||||
Node: Bash History Facilities295192
|
||||
Node: Bash History Builtins297887
|
||||
Node: History Interaction301744
|
||||
Node: Event Designators304300
|
||||
Node: Word Designators305315
|
||||
Node: Modifiers306954
|
||||
Node: Installing Bash308360
|
||||
Node: Basic Installation309490
|
||||
Node: Compilers and Options312182
|
||||
Node: Compiling For Multiple Architectures312923
|
||||
Node: Installation Names314587
|
||||
Node: Specifying the System Type315405
|
||||
Node: Sharing Defaults316121
|
||||
Node: Operation Controls316794
|
||||
Node: Optional Features317752
|
||||
Node: Reporting Bugs326683
|
||||
Node: Major Differences From The Bourne Shell327877
|
||||
Node: Copying This Manual344575
|
||||
Node: GNU Free Documentation License344851
|
||||
Node: Builtin Index367257
|
||||
Node: Reserved Word Index373806
|
||||
Node: Variable Index376242
|
||||
Node: Function Index387175
|
||||
Node: Concept Index393895
|
||||
|
||||
End Tag Table
|
||||
|
||||
+37
-24
@@ -1,4 +1,4 @@
|
||||
This is TeX, Version 3.14159 (Web2C 7.4.5) (format=tex 2003.12.31) 15 MAR 2005 17:26
|
||||
This is TeX, Version 3.14159 (Web2C 7.4.5) (format=tex 2005.3.22) 3 OCT 2005 15:07
|
||||
**/Users/chet/src/bash/src/doc/bashref.texi
|
||||
(/Users/chet/src/bash/src/doc/bashref.texi (./texinfo.tex
|
||||
Loading texinfo [version 2003-02-03.16]: Basics,
|
||||
@@ -158,7 +158,7 @@ and turning on texinfo input format.) (./bashref.aux)
|
||||
|
||||
[1] Chapter 2 [2] [3]
|
||||
Chapter 3 [4] [5] [6] [7] [8] [9] [10]
|
||||
Overfull \hbox (43.33539pt too wide) in paragraph at lines 865--865
|
||||
Overfull \hbox (43.33539pt too wide) in paragraph at lines 843--843
|
||||
[]@texttt case @textttsl word @texttt in [ [(] @textttsl pat-tern @texttt [| @
|
||||
textttsl pat-tern@texttt ][]) @textttsl command-list @texttt ;;][] esac[][]
|
||||
|
||||
@@ -172,7 +172,8 @@ textttsl pat-tern@texttt ][]) @textttsl command-list @texttt ;;][] esac[][]
|
||||
|
||||
[11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25]
|
||||
[26] [27] [28] [29] [30] [31] Chapter 4 [32] [33] [34] [35] [36] [37] [38]
|
||||
Underfull \hbox (badness 5231) in paragraph at lines 3141--3154
|
||||
[39]
|
||||
Underfull \hbox (badness 5231) in paragraph at lines 3117--3130
|
||||
@texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
|
||||
m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
|
||||
|
||||
@@ -184,8 +185,8 @@ m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
|
||||
.@texttt c
|
||||
.etc.
|
||||
|
||||
[39] [40] [41] [42] [43]
|
||||
Overfull \hbox (43.33536pt too wide) in paragraph at lines 3482--3482
|
||||
[40] [41] [42] [43]
|
||||
Overfull \hbox (43.33536pt too wide) in paragraph at lines 3460--3460
|
||||
[]@texttt read [-ers] [-a @textttsl aname@texttt ] [-d @textttsl de-lim@texttt
|
||||
] [-n @textttsl nchars@texttt ] [-p @textttsl prompt@texttt ] [-t @textttsl ti
|
||||
me-
|
||||
@@ -198,8 +199,8 @@ me-
|
||||
.@texttt a
|
||||
.etc.
|
||||
|
||||
[44] [45]
|
||||
Underfull \hbox (badness 2573) in paragraph at lines 3666--3670
|
||||
[44] [45] [46]
|
||||
Underfull \hbox (badness 2573) in paragraph at lines 3644--3648
|
||||
[] []@textrm Error trac-ing is en-abled: com-mand sub-sti-tu-tion, shell
|
||||
|
||||
@hbox(7.60416+2.12917)x433.62, glue set 2.95305
|
||||
@@ -214,8 +215,8 @@ Underfull \hbox (badness 2573) in paragraph at lines 3666--3670
|
||||
.@textrm E
|
||||
.etc.
|
||||
|
||||
[46] [47] [48] [49] [50] [51]
|
||||
Underfull \hbox (badness 4036) in paragraph at lines 4113--4120
|
||||
[47] [48] [49] [50] [51] [52]
|
||||
Underfull \hbox (badness 4036) in paragraph at lines 4091--4098
|
||||
@texttt -x[]@textrm Print a trace of sim-ple com-mands, @texttt \@textrm fB-fo
|
||||
r@texttt \@textrm fP com-mands,
|
||||
|
||||
@@ -227,9 +228,9 @@ r@texttt \@textrm fP com-mands,
|
||||
.@texttt x
|
||||
.etc.
|
||||
|
||||
[52] [53] Chapter 5 [54] [55] [56] [57] [58] [59] [60] [61] [62] Chapter 6
|
||||
[63] [64]
|
||||
Overfull \hbox (51.96864pt too wide) in paragraph at lines 4840--4840
|
||||
[53] Chapter 5 [54] [55] [56] [57] [58] [59] [60] [61] [62] Chapter 6 [63]
|
||||
[64]
|
||||
Overfull \hbox (51.96864pt too wide) in paragraph at lines 4822--4822
|
||||
[]@texttt bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@t
|
||||
exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
|
||||
|
||||
@@ -242,7 +243,7 @@ exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
|
||||
.etc.
|
||||
|
||||
|
||||
Overfull \hbox (76.23077pt too wide) in paragraph at lines 4841--4841
|
||||
Overfull \hbox (76.23077pt too wide) in paragraph at lines 4823--4823
|
||||
[]@texttt bash [long-opt] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@texttt
|
||||
] [-O @textttsl shopt_option@texttt ] -c @textttsl string @texttt [@textttsl ar
|
||||
-
|
||||
@@ -256,7 +257,7 @@ Overfull \hbox (76.23077pt too wide) in paragraph at lines 4841--4841
|
||||
.etc.
|
||||
|
||||
|
||||
Overfull \hbox (34.72258pt too wide) in paragraph at lines 4842--4842
|
||||
Overfull \hbox (34.72258pt too wide) in paragraph at lines 4824--4824
|
||||
[]@texttt bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@text
|
||||
tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
|
||||
|
||||
@@ -269,7 +270,7 @@ tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
|
||||
.etc.
|
||||
|
||||
[65] [66]
|
||||
Underfull \hbox (badness 2245) in paragraph at lines 5016--5018
|
||||
Underfull \hbox (badness 2245) in paragraph at lines 4998--5000
|
||||
[]@textrm When a lo-gin shell ex-its, Bash reads and ex-e-cutes com-mands from
|
||||
the file
|
||||
|
||||
@@ -282,10 +283,22 @@ the file
|
||||
.etc.
|
||||
|
||||
[67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80]
|
||||
Underfull \hbox (badness 2521) in paragraph at lines 6112--6115
|
||||
@textrm `@texttt --enable-strict-posix-default[]@textrm '[] to @texttt configur
|
||||
e[] @textrm when build-ing (see Sec-tion 10.8
|
||||
|
||||
@hbox(8.2125+2.73749)x433.62, glue set 2.9335
|
||||
.@textrm `
|
||||
.@texttt -
|
||||
.@texttt -
|
||||
.@texttt e
|
||||
.@texttt n
|
||||
.etc.
|
||||
|
||||
Chapter 7 [81] [82] [83] [84] [85]
|
||||
(/Users/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [86] [87]
|
||||
[88] [89] [90] [91]
|
||||
Underfull \hbox (badness 5231) in paragraph at lines 494--510
|
||||
Underfull \hbox (badness 5231) in paragraph at lines 500--516
|
||||
@texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
|
||||
m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
|
||||
|
||||
@@ -298,7 +311,7 @@ m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
|
||||
.etc.
|
||||
|
||||
[92] [93] [94] [95] [96]
|
||||
Overfull \hbox (26.43913pt too wide) in paragraph at lines 807--807
|
||||
Overfull \hbox (26.43913pt too wide) in paragraph at lines 813--813
|
||||
[]@texttt Meta-Control-h: backward-kill-word Text after the function name is i
|
||||
gnored[]
|
||||
|
||||
@@ -311,7 +324,7 @@ gnored[]
|
||||
.etc.
|
||||
|
||||
[97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108]
|
||||
Overfull \hbox (17.80585pt too wide) in paragraph at lines 1656--1656
|
||||
Overfull \hbox (17.80585pt too wide) in paragraph at lines 1662--1662
|
||||
[]@texttt complete [-abcdefgjksuv] [-o @textttsl comp-option@texttt ] [-A @tex
|
||||
tttsl ac-tion@texttt ] [-G @textttsl glob-
|
||||
|
||||
@@ -324,7 +337,7 @@ tttsl ac-tion@texttt ] [-G @textttsl glob-
|
||||
.etc.
|
||||
|
||||
[109] [110]
|
||||
Underfull \hbox (badness 2753) in paragraph at lines 1758--1761
|
||||
Underfull \hbox (badness 2753) in paragraph at lines 1764--1767
|
||||
@texttt hostname[]@textrm Hostnames, as taken from the file spec-i-fied by
|
||||
|
||||
@hbox(7.60416+2.12917)x433.62, glue set 3.02202
|
||||
@@ -337,7 +350,7 @@ Underfull \hbox (badness 2753) in paragraph at lines 1758--1761
|
||||
|
||||
[111]) (/Users/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9
|
||||
[112] [113] [114] [115] [116]) Chapter 10 [117] [118] [119] [120] [121]
|
||||
Underfull \hbox (badness 2772) in paragraph at lines 6713--6717
|
||||
Underfull \hbox (badness 2772) in paragraph at lines 6706--6710
|
||||
[]@textrm Enable sup-port for large files (@texttt http://www.sas.com/standard
|
||||
s/large_
|
||||
|
||||
@@ -350,7 +363,7 @@ s/large_
|
||||
.etc.
|
||||
|
||||
[122] [123] [124] Appendix A [125] [126] Appendix B [127] [128] [129] [130]
|
||||
[131] [132] Appendix C [133] [134] (./fdl.texi [135] [136] [137] [138] [139]
|
||||
[131] [132] [133] Appendix C [134] (./fdl.texi [135] [136] [137] [138] [139]
|
||||
[140]) (Index of Shell Builtin Commands) [141] [142] (./bashref.bts)
|
||||
(Index of Shell Reserved Words)
|
||||
Overfull \vbox (42.26959pt too high) has occurred while \output is active
|
||||
@@ -375,11 +388,11 @@ Overfull \vbox (42.26959pt too high) has occurred while \output is active
|
||||
(Concept Index) [150] (./bashref.cps [151]) [152] )
|
||||
Here is how much of TeX's memory you used:
|
||||
1726 strings out of 98002
|
||||
23501 string characters out of 1221986
|
||||
52380 words of memory out of 1000001
|
||||
23501 string characters out of 1221987
|
||||
52386 words of memory out of 1000001
|
||||
2577 multiletter control sequences out of 10000+50000
|
||||
31953 words of font info for 111 fonts, out of 500000 for 1000
|
||||
19 hyphenation exceptions out of 1000
|
||||
15i,8n,11p,269b,465s stack positions out of 1500i,500n,5000p,200000b,5000s
|
||||
|
||||
Output written on bashref.dvi (158 pages, 587404 bytes).
|
||||
Output written on bashref.dvi (158 pages, 590560 bytes).
|
||||
|
||||
+2001
-1936
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -6847,7 +6847,7 @@ You may need to disable this if your compiler cannot handle very long string
|
||||
literals.
|
||||
|
||||
@item --enable-strict-posix-default
|
||||
Make Bash @sc{posix}-conformant by default (@pxref{Bash Posix Mode}).
|
||||
Make Bash @sc{posix}-conformant by default (@pxref{Bash POSIX Mode}).
|
||||
|
||||
@item --enable-usg-echo-default
|
||||
A synonym for @code{--enable-xpg-echo-default}.
|
||||
|
||||
+3
-2
@@ -88,13 +88,14 @@
|
||||
\entry{SHLVL}{62}{\code {SHLVL}}
|
||||
\entry{TIMEFORMAT}{62}{\code {TIMEFORMAT}}
|
||||
\entry{TMOUT}{62}{\code {TMOUT}}
|
||||
\entry{TMPDIR}{63}{\code {TMPDIR}}
|
||||
\entry{UID}{63}{\code {UID}}
|
||||
\entry{auto_resume}{86}{\code {auto_resume}}
|
||||
\entry{bell-style}{91}{\code {bell-style}}
|
||||
\entry{bind-tty-special-chars}{91}{\code {bind-tty-special-chars}}
|
||||
\entry{comment-begin}{91}{\code {comment-begin}}
|
||||
\entry{completion-query-items}{91}{\code {completion-query-items}}
|
||||
\entry{convert-meta}{91}{\code {convert-meta}}
|
||||
\entry{convert-meta}{92}{\code {convert-meta}}
|
||||
\entry{disable-completion}{92}{\code {disable-completion}}
|
||||
\entry{editing-mode}{92}{\code {editing-mode}}
|
||||
\entry{enable-keypad}{92}{\code {enable-keypad}}
|
||||
@@ -112,4 +113,4 @@
|
||||
\entry{page-completions}{93}{\code {page-completions}}
|
||||
\entry{show-all-if-ambiguous}{93}{\code {show-all-if-ambiguous}}
|
||||
\entry{show-all-if-unmodified}{93}{\code {show-all-if-unmodified}}
|
||||
\entry{visible-stats}{93}{\code {visible-stats}}
|
||||
\entry{visible-stats}{94}{\code {visible-stats}}
|
||||
|
||||
+3
-2
@@ -44,7 +44,7 @@
|
||||
\entry {\code {COMP_WORDS}}{57}
|
||||
\entry {\code {completion-query-items}}{91}
|
||||
\entry {\code {COMPREPLY}}{58}
|
||||
\entry {\code {convert-meta}}{91}
|
||||
\entry {\code {convert-meta}}{92}
|
||||
\initial {D}
|
||||
\entry {\code {DIRSTACK}}{58}
|
||||
\entry {\code {disable-completion}}{92}
|
||||
@@ -136,7 +136,8 @@
|
||||
\entry {\code {TEXTDOMAINDIR}}{7}
|
||||
\entry {\code {TIMEFORMAT}}{62}
|
||||
\entry {\code {TMOUT}}{62}
|
||||
\entry {\code {TMPDIR}}{63}
|
||||
\initial {U}
|
||||
\entry {\code {UID}}{63}
|
||||
\initial {V}
|
||||
\entry {\code {visible-stats}}{93}
|
||||
\entry {\code {visible-stats}}{94}
|
||||
|
||||
+457
-454
File diff suppressed because it is too large
Load Diff
+1840
-1808
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -30,8 +30,8 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL
|
||||
+o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at
|
||||
startup
|
||||
|
||||
+o redirecting output using the >, >|, <>, >&, &>, and >> redirec-
|
||||
tion operators
|
||||
+o redirecting output using the >, >|, <>, >&, &>, and >> redirect-
|
||||
ion operators
|
||||
|
||||
+o using the eexxeecc builtin command to replace the shell with another
|
||||
command
|
||||
|
||||
+22
-5
@@ -1,15 +1,20 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.18.1
|
||||
%%CreationDate: Tue Mar 15 17:26:56 2005
|
||||
%%Creator: groff version 1.19.1
|
||||
%%CreationDate: Mon Oct 3 15:05:28 2005
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%DocumentSuppliedResources: procset grops 1.18 1
|
||||
%%DocumentSuppliedResources: procset grops 1.19 1
|
||||
%%Pages: 1
|
||||
%%PageOrder: Ascend
|
||||
%%DocumentMedia: Default 595 842 0 () ()
|
||||
%%Orientation: Portrait
|
||||
%%EndComments
|
||||
%%BeginDefaults
|
||||
%%PageMedia: Default
|
||||
%%EndDefaults
|
||||
%%BeginProlog
|
||||
%%BeginResource: procset grops 1.18 1
|
||||
%%BeginResource: procset grops 1.19 1
|
||||
%!PS-Adobe-3.0 Resource-ProcSet
|
||||
/setpacking where{
|
||||
pop
|
||||
currentpacking
|
||||
@@ -110,16 +115,22 @@ TM setmatrix
|
||||
/Fr{
|
||||
setrgbcolor fill
|
||||
}bind def
|
||||
/setcmykcolor where{
|
||||
pop
|
||||
/Fk{
|
||||
setcmykcolor fill
|
||||
}bind def
|
||||
}if
|
||||
/Fg{
|
||||
setgray fill
|
||||
}bind def
|
||||
/FL/fill load def
|
||||
/LW/setlinewidth load def
|
||||
/Cr/setrgbcolor load def
|
||||
/setcmykcolor where{
|
||||
pop
|
||||
/Ck/setcmykcolor load def
|
||||
}if
|
||||
/Cg/setgray load def
|
||||
/RE{
|
||||
findfont
|
||||
@@ -162,6 +173,7 @@ newpath
|
||||
/CNT countdictstack def
|
||||
userdict begin
|
||||
/showpage{}def
|
||||
/setpagedevice{}def
|
||||
}bind def
|
||||
/PEND{
|
||||
clear
|
||||
@@ -174,6 +186,11 @@ pop
|
||||
setpacking
|
||||
}if
|
||||
%%EndResource
|
||||
%%EndProlog
|
||||
%%BeginSetup
|
||||
%%BeginFeature: *PageSize Default
|
||||
<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
|
||||
%%EndFeature
|
||||
%%IncludeResource: font Times-Roman
|
||||
%%IncludeResource: font Times-Bold
|
||||
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
|
||||
@@ -205,7 +222,7 @@ def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
|
||||
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
|
||||
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
|
||||
/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
|
||||
%%EndProlog
|
||||
%%EndSetup
|
||||
%%Page: 1 1
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
|
||||
@@ -63,8 +63,9 @@ int
|
||||
reader_loop ()
|
||||
{
|
||||
int our_indirection_level;
|
||||
COMMAND *current_command = (COMMAND *)NULL;
|
||||
COMMAND * volatile current_command;
|
||||
|
||||
current_command = (COMMAND *)NULL;
|
||||
USE_VAR(current_command);
|
||||
|
||||
our_indirection_level = ++indirection_level;
|
||||
|
||||
@@ -418,11 +418,16 @@ stop_making_children ()
|
||||
void
|
||||
cleanup_the_pipeline ()
|
||||
{
|
||||
if (the_pipeline)
|
||||
{
|
||||
discard_pipeline (the_pipeline);
|
||||
the_pipeline = (PROCESS *)NULL;
|
||||
}
|
||||
PROCESS *disposer;
|
||||
sigset_t set, oset;
|
||||
|
||||
BLOCK_CHILD (set, oset);
|
||||
disposer = the_pipeline;
|
||||
the_pipeline = (PROCESS *)NULL;
|
||||
UNBLOCK_CHILD (oset);
|
||||
|
||||
if (disposer)
|
||||
discard_pipeline (disposer);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -430,9 +435,9 @@ save_pipeline (clear)
|
||||
int clear;
|
||||
{
|
||||
saved_pipeline = the_pipeline;
|
||||
saved_already_making_children = already_making_children;
|
||||
if (clear)
|
||||
the_pipeline = (PROCESS *)NULL;
|
||||
saved_already_making_children = already_making_children;
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
+4028
File diff suppressed because it is too large
Load Diff
+87
-56
@@ -1,6 +1,6 @@
|
||||
/* bind.c -- key binding and startup file support for the readline library. */
|
||||
|
||||
/* Copyright (C) 1987, 1989, 1992 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1987-2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
@@ -77,6 +77,7 @@ static char *_rl_read_file PARAMS((char *, size_t *));
|
||||
static void _rl_init_file_error PARAMS((const char *));
|
||||
static int _rl_read_init_file PARAMS((const char *, int));
|
||||
static int glean_key_from_name PARAMS((char *));
|
||||
static char *_rl_get_string_variable_value PARAMS((const char *));
|
||||
static int substring_member_of_array PARAMS((char *, const char **));
|
||||
|
||||
static int currently_reading_init_file;
|
||||
@@ -341,7 +342,7 @@ rl_generic_bind (type, keyseq, data, map)
|
||||
k.function = 0;
|
||||
|
||||
/* If no keys to bind to, exit right away. */
|
||||
if (!keyseq || !*keyseq)
|
||||
if (keyseq == 0 || *keyseq == 0)
|
||||
{
|
||||
if (type == ISMACR)
|
||||
free (data);
|
||||
@@ -1492,6 +1493,27 @@ bool_to_int (value)
|
||||
(value[0] == '1' && value[1] == '\0'));
|
||||
}
|
||||
|
||||
char *
|
||||
rl_variable_value (name)
|
||||
const char *name;
|
||||
{
|
||||
register int i;
|
||||
int v;
|
||||
char *ret;
|
||||
|
||||
/* Check for simple variables first. */
|
||||
i = find_boolean_var (name);
|
||||
if (i >= 0)
|
||||
return (*boolean_varlist[i].value ? "on" : "off");
|
||||
|
||||
i = find_string_var (name);
|
||||
if (i >= 0)
|
||||
return (_rl_get_string_variable_value (string_varlist[i].name));
|
||||
|
||||
/* Unknown variable names return NULL. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
rl_variable_bind (name, value)
|
||||
const char *name, *value;
|
||||
@@ -2134,12 +2156,68 @@ rl_dump_macros (count, key)
|
||||
return (0);
|
||||
}
|
||||
|
||||
static char *
|
||||
_rl_get_string_variable_value (name)
|
||||
const char *name;
|
||||
{
|
||||
static char numbuf[32];
|
||||
char *ret;
|
||||
int n;
|
||||
|
||||
if (_rl_stricmp (name, "bell-style") == 0)
|
||||
{
|
||||
switch (_rl_bell_preference)
|
||||
{
|
||||
case NO_BELL:
|
||||
return "none";
|
||||
case VISIBLE_BELL:
|
||||
return "visible";
|
||||
case AUDIBLE_BELL:
|
||||
default:
|
||||
return "audible";
|
||||
}
|
||||
}
|
||||
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-query-items") == 0)
|
||||
{
|
||||
sprintf (numbuf, "%d", rl_completion_query_items);
|
||||
return (numbuf);
|
||||
}
|
||||
else if (_rl_stricmp (name, "editing-mode") == 0)
|
||||
return (rl_get_keymap_name_from_edit_mode ());
|
||||
else if (_rl_stricmp (name, "isearch-terminators") == 0)
|
||||
{
|
||||
if (_rl_isearch_terminators == 0)
|
||||
return 0;
|
||||
ret = _rl_untranslate_macro_value (_rl_isearch_terminators);
|
||||
if (ret)
|
||||
{
|
||||
strncpy (numbuf, ret, sizeof (numbuf) - 1);
|
||||
free (ret);
|
||||
numbuf[sizeof(numbuf) - 1] = '\0';
|
||||
}
|
||||
else
|
||||
numbuf[0] = '\0';
|
||||
return numbuf;
|
||||
}
|
||||
else if (_rl_stricmp (name, "keymap") == 0)
|
||||
{
|
||||
ret = rl_get_keymap_name (_rl_keymap);
|
||||
if (ret == 0)
|
||||
ret = rl_get_keymap_name_from_edit_mode ();
|
||||
return (ret ? ret : "none");
|
||||
}
|
||||
else
|
||||
return (0);
|
||||
}
|
||||
|
||||
void
|
||||
rl_variable_dumper (print_readably)
|
||||
int print_readably;
|
||||
{
|
||||
int i;
|
||||
const char *kname;
|
||||
char *v;
|
||||
|
||||
for (i = 0; boolean_varlist[i].name; i++)
|
||||
{
|
||||
@@ -2151,63 +2229,16 @@ rl_variable_dumper (print_readably)
|
||||
*boolean_varlist[i].value ? "on" : "off");
|
||||
}
|
||||
|
||||
/* bell-style */
|
||||
switch (_rl_bell_preference)
|
||||
for (i = 0; string_varlist[i].name; i++)
|
||||
{
|
||||
case NO_BELL:
|
||||
kname = "none"; break;
|
||||
case VISIBLE_BELL:
|
||||
kname = "visible"; break;
|
||||
case AUDIBLE_BELL:
|
||||
default:
|
||||
kname = "audible"; break;
|
||||
}
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set bell-style %s\n", kname);
|
||||
else
|
||||
fprintf (rl_outstream, "bell-style is set to `%s'\n", kname);
|
||||
|
||||
/* comment-begin */
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set comment-begin %s\n", _rl_comment_begin ? _rl_comment_begin : RL_COMMENT_BEGIN_DEFAULT);
|
||||
else
|
||||
fprintf (rl_outstream, "comment-begin is set to `%s'\n", _rl_comment_begin ? _rl_comment_begin : RL_COMMENT_BEGIN_DEFAULT);
|
||||
|
||||
/* completion-query-items */
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set completion-query-items %d\n", rl_completion_query_items);
|
||||
else
|
||||
fprintf (rl_outstream, "completion-query-items is set to `%d'\n", rl_completion_query_items);
|
||||
|
||||
/* editing-mode */
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set editing-mode %s\n", (rl_editing_mode == emacs_mode) ? "emacs" : "vi");
|
||||
else
|
||||
fprintf (rl_outstream, "editing-mode is set to `%s'\n", (rl_editing_mode == emacs_mode) ? "emacs" : "vi");
|
||||
|
||||
/* isearch-terminators */
|
||||
if (_rl_isearch_terminators)
|
||||
{
|
||||
char *disp;
|
||||
|
||||
disp = _rl_untranslate_macro_value (_rl_isearch_terminators);
|
||||
|
||||
v = _rl_get_string_variable_value (string_varlist[i].name);
|
||||
if (v == 0) /* _rl_isearch_terminators can be NULL */
|
||||
continue;
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set isearch-terminators \"%s\"\n", disp);
|
||||
fprintf (rl_outstream, "set %s %s\n", string_varlist[i].name, v);
|
||||
else
|
||||
fprintf (rl_outstream, "isearch-terminators is set to \"%s\"\n", disp);
|
||||
|
||||
free (disp);
|
||||
fprintf (rl_outstream, "%s is set to `%s'\n", string_varlist[i].name, v);
|
||||
}
|
||||
|
||||
/* keymap */
|
||||
kname = rl_get_keymap_name (_rl_keymap);
|
||||
if (kname == 0)
|
||||
kname = rl_get_keymap_name_from_edit_mode ();
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set keymap %s\n", kname ? kname : "none");
|
||||
else
|
||||
fprintf (rl_outstream, "keymap is set to `%s'\n", kname ? kname : "none");
|
||||
}
|
||||
|
||||
/* Print all of the current variables and their values to
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+87
-54
@@ -77,6 +77,7 @@ static char *_rl_read_file PARAMS((char *, size_t *));
|
||||
static void _rl_init_file_error PARAMS((const char *));
|
||||
static int _rl_read_init_file PARAMS((const char *, int));
|
||||
static int glean_key_from_name PARAMS((char *));
|
||||
static char *_rl_get_string_variable_value PARAMS((const char *));
|
||||
static int substring_member_of_array PARAMS((char *, const char **));
|
||||
|
||||
static int currently_reading_init_file;
|
||||
@@ -1209,6 +1210,7 @@ rl_parse_and_bind (string)
|
||||
e = value + strlen (value) - 1;
|
||||
while (e >= value && whitespace (*e))
|
||||
e--;
|
||||
e++; /* skip back to whitespace or EOS */
|
||||
if (*e && e >= value)
|
||||
*e = '\0';
|
||||
|
||||
@@ -1491,6 +1493,28 @@ bool_to_int (value)
|
||||
(value[0] == '1' && value[1] == '\0'));
|
||||
}
|
||||
|
||||
char *
|
||||
rl_variable_value (name)
|
||||
const char *name;
|
||||
{
|
||||
register int i;
|
||||
int v;
|
||||
char *ret;
|
||||
|
||||
/* Check for simple variables first. */
|
||||
i = find_boolean_var (name);
|
||||
if (i >= 0)
|
||||
return (*boolean_varlist[i].value ? "on" : "off");
|
||||
|
||||
i = find_string_var (name);
|
||||
|
||||
/* Unknown variable names return NULL. */
|
||||
if (i < 0)
|
||||
return 0;
|
||||
|
||||
return (_rl_get_string_variable_value (string_varlist[i].name));
|
||||
}
|
||||
|
||||
int
|
||||
rl_variable_bind (name, value)
|
||||
const char *name, *value;
|
||||
@@ -2133,12 +2157,68 @@ rl_dump_macros (count, key)
|
||||
return (0);
|
||||
}
|
||||
|
||||
static char *
|
||||
_rl_get_string_variable_value (name)
|
||||
const char *name;
|
||||
{
|
||||
static char numbuf[32];
|
||||
char *ret;
|
||||
int n;
|
||||
|
||||
if (_rl_stricmp (name, "bell-style") == 0)
|
||||
{
|
||||
switch (_rl_bell_preference)
|
||||
{
|
||||
case NO_BELL:
|
||||
return "none";
|
||||
case VISIBLE_BELL:
|
||||
return "visible";
|
||||
case AUDIBLE_BELL:
|
||||
default:
|
||||
return "audible";
|
||||
}
|
||||
}
|
||||
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-query-items") == 0)
|
||||
{
|
||||
sprintf (numbuf, "%d", rl_completion_query_items);
|
||||
return (numbuf);
|
||||
}
|
||||
else if (_rl_stricmp (name, "editing-mode") == 0)
|
||||
return (rl_get_keymap_name_from_edit_mode ());
|
||||
else if (_rl_stricmp (name, "isearch-terminators") == 0)
|
||||
{
|
||||
if (_rl_isearch_terminators == 0)
|
||||
return 0;
|
||||
ret = _rl_untranslate_macro_value (_rl_isearch_terminators);
|
||||
if (ret)
|
||||
{
|
||||
strncpy (numbuf, ret, sizeof (numbuf) - 1);
|
||||
free (ret);
|
||||
numbuf[sizeof(numbuf) - 1] = '\0';
|
||||
}
|
||||
else
|
||||
numbuf[0] = '\0';
|
||||
return numbuf;
|
||||
}
|
||||
else if (_rl_stricmp (name, "keymap") == 0)
|
||||
{
|
||||
ret = rl_get_keymap_name (_rl_keymap);
|
||||
if (ret == 0)
|
||||
ret = rl_get_keymap_name_from_edit_mode ();
|
||||
return (ret ? ret : "none");
|
||||
}
|
||||
else
|
||||
return (0);
|
||||
}
|
||||
|
||||
void
|
||||
rl_variable_dumper (print_readably)
|
||||
int print_readably;
|
||||
{
|
||||
int i;
|
||||
const char *kname;
|
||||
char *v;
|
||||
|
||||
for (i = 0; boolean_varlist[i].name; i++)
|
||||
{
|
||||
@@ -2150,63 +2230,16 @@ rl_variable_dumper (print_readably)
|
||||
*boolean_varlist[i].value ? "on" : "off");
|
||||
}
|
||||
|
||||
/* bell-style */
|
||||
switch (_rl_bell_preference)
|
||||
for (i = 0; string_varlist[i].name; i++)
|
||||
{
|
||||
case NO_BELL:
|
||||
kname = "none"; break;
|
||||
case VISIBLE_BELL:
|
||||
kname = "visible"; break;
|
||||
case AUDIBLE_BELL:
|
||||
default:
|
||||
kname = "audible"; break;
|
||||
}
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set bell-style %s\n", kname);
|
||||
else
|
||||
fprintf (rl_outstream, "bell-style is set to `%s'\n", kname);
|
||||
|
||||
/* comment-begin */
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set comment-begin %s\n", _rl_comment_begin ? _rl_comment_begin : RL_COMMENT_BEGIN_DEFAULT);
|
||||
else
|
||||
fprintf (rl_outstream, "comment-begin is set to `%s'\n", _rl_comment_begin ? _rl_comment_begin : RL_COMMENT_BEGIN_DEFAULT);
|
||||
|
||||
/* completion-query-items */
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set completion-query-items %d\n", rl_completion_query_items);
|
||||
else
|
||||
fprintf (rl_outstream, "completion-query-items is set to `%d'\n", rl_completion_query_items);
|
||||
|
||||
/* editing-mode */
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set editing-mode %s\n", (rl_editing_mode == emacs_mode) ? "emacs" : "vi");
|
||||
else
|
||||
fprintf (rl_outstream, "editing-mode is set to `%s'\n", (rl_editing_mode == emacs_mode) ? "emacs" : "vi");
|
||||
|
||||
/* isearch-terminators */
|
||||
if (_rl_isearch_terminators)
|
||||
{
|
||||
char *disp;
|
||||
|
||||
disp = _rl_untranslate_macro_value (_rl_isearch_terminators);
|
||||
|
||||
v = _rl_get_string_variable_value (string_varlist[i].name);
|
||||
if (v == 0) /* _rl_isearch_terminators can be NULL */
|
||||
continue;
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set isearch-terminators \"%s\"\n", disp);
|
||||
fprintf (rl_outstream, "set %s %s\n", string_varlist[i].name, v);
|
||||
else
|
||||
fprintf (rl_outstream, "isearch-terminators is set to \"%s\"\n", disp);
|
||||
|
||||
free (disp);
|
||||
fprintf (rl_outstream, "%s is set to `%s'\n", string_varlist[i].name, v);
|
||||
}
|
||||
|
||||
/* keymap */
|
||||
kname = rl_get_keymap_name (_rl_keymap);
|
||||
if (kname == 0)
|
||||
kname = rl_get_keymap_name_from_edit_mode ();
|
||||
if (print_readably)
|
||||
fprintf (rl_outstream, "set keymap %s\n", kname ? kname : "none");
|
||||
else
|
||||
fprintf (rl_outstream, "keymap is set to `%s'\n", kname ? kname : "none");
|
||||
}
|
||||
|
||||
/* Print all of the current variables and their values to
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* complete.c -- filename completion for readline. */
|
||||
|
||||
/* Copyright (C) 1987-2004 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1987-2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
|
||||
@@ -48,7 +48,9 @@
|
||||
extern int errno;
|
||||
#endif /* !errno */
|
||||
|
||||
#if defined (HAVE_PWD_H)
|
||||
#include <pwd.h>
|
||||
#endif
|
||||
|
||||
#include "posixdir.h"
|
||||
#include "posixstat.h"
|
||||
@@ -79,9 +81,9 @@ typedef int QSFUNC ();
|
||||
|
||||
/* Most systems don't declare getpwent in <pwd.h> if _POSIX_SOURCE is
|
||||
defined. */
|
||||
#if !defined (HAVE_GETPW_DECLS) || defined (_POSIX_SOURCE)
|
||||
#if defined (HAVE_GETPWENT) && (!defined (HAVE_GETPW_DECLS) || defined (_POSIX_SOURCE))
|
||||
extern struct passwd *getpwent PARAMS((void));
|
||||
#endif /* !HAVE_GETPW_DECLS || _POSIX_SOURCE */
|
||||
#endif /* HAVE_GETPWENT && (!HAVE_GETPW_DECLS || _POSIX_SOURCE) */
|
||||
|
||||
/* If non-zero, then this is the address of a function to call when
|
||||
completing a word would normally display the list of possible matches.
|
||||
@@ -206,7 +208,8 @@ int rl_completion_type = 0;
|
||||
|
||||
/* Up to this many items will be displayed in response to a
|
||||
possible-completions call. After that, we ask the user if
|
||||
she is sure she wants to see them all. */
|
||||
she is sure she wants to see them all. A negative value means
|
||||
don't ask. */
|
||||
int rl_completion_query_items = 100;
|
||||
|
||||
int _rl_page_completions = 1;
|
||||
@@ -692,7 +695,7 @@ print_filename (to_print, full_pathname)
|
||||
char *to_print, *full_pathname;
|
||||
{
|
||||
int printed_len, extension_char, slen, tlen;
|
||||
char *s, c, *new_full_pathname;
|
||||
char *s, c, *new_full_pathname, *dn;
|
||||
|
||||
extension_char = 0;
|
||||
printed_len = fnprint (to_print);
|
||||
@@ -717,7 +720,17 @@ print_filename (to_print, full_pathname)
|
||||
files in the root directory. If we pass a null string to the
|
||||
bash directory completion hook, for example, it will expand it
|
||||
to the current directory. We just want the `/'. */
|
||||
s = tilde_expand (full_pathname && *full_pathname ? full_pathname : "/");
|
||||
if (full_pathname == 0 || *full_pathname == 0)
|
||||
dn = "/";
|
||||
else if (full_pathname[0] != '/')
|
||||
dn = full_pathname;
|
||||
else if (full_pathname[1] == 0)
|
||||
dn = "//"; /* restore trailing slash to `//' */
|
||||
else if (full_pathname[1] == '/' && full_pathname[2] == 0)
|
||||
dn = "/"; /* don't turn /// into // */
|
||||
else
|
||||
dn = full_pathname;
|
||||
s = tilde_expand (dn);
|
||||
if (rl_directory_completion_hook)
|
||||
(*rl_directory_completion_hook) (&s);
|
||||
|
||||
@@ -725,6 +738,10 @@ print_filename (to_print, full_pathname)
|
||||
tlen = strlen (to_print);
|
||||
new_full_pathname = (char *)xmalloc (slen + tlen + 2);
|
||||
strcpy (new_full_pathname, s);
|
||||
if (s[slen - 1] == '/')
|
||||
slen--;
|
||||
else
|
||||
new_full_pathname[slen] = '/';
|
||||
new_full_pathname[slen] = '/';
|
||||
strcpy (new_full_pathname + slen + 1, to_print);
|
||||
|
||||
@@ -1395,7 +1412,7 @@ display_matches (matches)
|
||||
|
||||
/* If there are many items, then ask the user if she really wants to
|
||||
see them all. */
|
||||
if (len >= rl_completion_query_items)
|
||||
if (rl_completion_query_items > 0 && len >= rl_completion_query_items)
|
||||
{
|
||||
rl_crlf ();
|
||||
fprintf (rl_outstream, "Display all %d possibilities? (y or n)", len);
|
||||
@@ -1846,16 +1863,20 @@ rl_username_completion_function (text, state)
|
||||
setpwent ();
|
||||
}
|
||||
|
||||
#if defined (HAVE_GETPWENT)
|
||||
while (entry = getpwent ())
|
||||
{
|
||||
/* Null usernames should result in all users as possible completions. */
|
||||
if (namelen == 0 || (STREQN (username, entry->pw_name, namelen)))
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (entry == 0)
|
||||
{
|
||||
#if defined (HAVE_GETPWENT)
|
||||
endpwent ();
|
||||
#endif
|
||||
return ((char *)NULL);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -1158,6 +1158,11 @@ This behaves as if the readline command
|
||||
file (@pxref{Readline Init File Syntax}).
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun {char *} rl_variable_value (const char *variable)
|
||||
Return a string representing the value of the Readline variable @var{variable}.
|
||||
For boolean variables, this string is either @samp{on} or @samp{off}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun void rl_variable_dumper (int readable)
|
||||
Print the readline variable names and their current values
|
||||
to @code{rl_outstream}.
|
||||
|
||||
@@ -931,7 +931,7 @@ Restore the local Readline prompt display state saved by the most
|
||||
recent call to @code{rl_save_prompt}.
|
||||
if @code{rl_save_prompt} was called to save the prompt before a call
|
||||
to @code{rl_message}, this function should be called before the
|
||||
corresponding call to @coode{rl_clear_message}.
|
||||
corresponding call to @code{rl_clear_message}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun int rl_expand_prompt (char *prompt)
|
||||
@@ -1158,6 +1158,10 @@ This behaves as if the readline command
|
||||
file (@pxref{Readline Init File Syntax}).
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun {char *} rl_variable_value (const char *variable)
|
||||
Return a string representing the value of the Readline variable @var{variable}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun void rl_variable_dumper (int readable)
|
||||
Print the readline variable names and their current values
|
||||
to @code{rl_outstream}.
|
||||
@@ -1716,8 +1720,9 @@ shell variables and hostnames.
|
||||
|
||||
@deftypevar int rl_completion_query_items
|
||||
Up to this many items will be displayed in response to a
|
||||
possible-completions call. After that, we ask the user if she is sure
|
||||
she wants to see them all. The default value is 100.
|
||||
possible-completions call. After that, readline asks the user if she is sure
|
||||
she wants to see them all. The default value is 100. A negative value
|
||||
indicates that Readline should never ask the user.
|
||||
@end deftypevar
|
||||
|
||||
@deftypevar {int} rl_completion_append_character
|
||||
@@ -2246,7 +2251,7 @@ too_dangerous (caller)
|
||||
char *caller;
|
||||
@{
|
||||
fprintf (stderr,
|
||||
"%s: Too dangerous for me to distribute.\n"
|
||||
"%s: Too dangerous for me to distribute.\n",
|
||||
caller);
|
||||
fprintf (stderr, "Write it yourself.\n");
|
||||
@}
|
||||
|
||||
@@ -4,7 +4,7 @@ Copyright (C) 1988-2005 Free Software Foundation, Inc.
|
||||
|
||||
@set EDITION 5.1-beta1
|
||||
@set VERSION 5.1-beta1
|
||||
@set UPDATED 13 September 2005
|
||||
@set UPDATED-MONTH September 2005
|
||||
@set UPDATED 7 October 2005
|
||||
@set UPDATED-MONTH October 2005
|
||||
|
||||
@set LASTCHANGE Tue Sep 13 12:07:16 EDT 2005
|
||||
@set LASTCHANGE Fri Oct 7 20:28:03 EDT 2005
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
Copyright (C) 1988-2005 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set EDITION 5.1-devel
|
||||
@set VERSION 5.1-devel
|
||||
@set UPDATED 4 January 2005
|
||||
@set UPDATED-MONTH January 2005
|
||||
@set EDITION 5.1-beta1
|
||||
@set VERSION 5.1-beta1
|
||||
@set UPDATED 13 September 2005
|
||||
@set UPDATED-MONTH September 2005
|
||||
|
||||
@set LASTCHANGE Tue Jan 4 17:26:58 EST 2005
|
||||
@set LASTCHANGE Tue Sep 13 12:07:16 EDT 2005
|
||||
|
||||
@@ -148,7 +148,7 @@ rl_forward_search_history (sign, key)
|
||||
|
||||
/* Display the current state of the search in the echo-area.
|
||||
SEARCH_STRING contains the string that is being searched for,
|
||||
DIRECTION is zero for forward, or 1 for reverse,
|
||||
DIRECTION is zero for forward, or non-zero for reverse,
|
||||
WHERE is the history list number of the current line. If it is
|
||||
-1, then this line is the starting one. */
|
||||
static void
|
||||
@@ -423,6 +423,8 @@ _rl_isearch_dispatch (cxt, c)
|
||||
cxt->direction = -cxt->direction;
|
||||
if (cxt->direction < 0)
|
||||
cxt->sflags |= SF_REVERSE;
|
||||
else
|
||||
cxt->sflags &= ~SF_REVERSE;
|
||||
break;
|
||||
|
||||
/* delete character from search string. */
|
||||
|
||||
@@ -423,6 +423,8 @@ _rl_isearch_dispatch (cxt, c)
|
||||
cxt->direction = -cxt->direction;
|
||||
if (cxt->direction < 0)
|
||||
cxt->sflags |= SF_REVERSE;
|
||||
else
|
||||
cxt->sflags &= ~SF_REVERSE;
|
||||
break;
|
||||
|
||||
/* delete character from search string. */
|
||||
@@ -457,7 +459,7 @@ _rl_isearch_dispatch (cxt, c)
|
||||
|
||||
/* if not in a word, move to one. */
|
||||
cval = _rl_char_value (rl_line_buffer, wstart);
|
||||
if (rl_walphabetic (cval) == 0)
|
||||
if (_rl_walphabetic (cval) == 0)
|
||||
{
|
||||
rl_ding ();
|
||||
break;
|
||||
@@ -466,7 +468,7 @@ _rl_isearch_dispatch (cxt, c)
|
||||
while (n < rl_end)
|
||||
{
|
||||
cval = _rl_char_value (rl_line_buffer, n);
|
||||
if (rl_walphabetic (cval) == 0)
|
||||
if (_rl_walphabetic (cval) == 0)
|
||||
break;
|
||||
n = MB_NEXTCHAR (rl_line_buffer, n, 1, MB_FIND_NONZERO);;
|
||||
}
|
||||
|
||||
@@ -303,6 +303,8 @@ extern int rl_bind_keyseq_in_map PARAMS((const char *, rl_command_func_t *, Keym
|
||||
extern int rl_bind_keyseq_if_unbound PARAMS((const char *, rl_command_func_t *));
|
||||
extern int rl_bind_keyseq_if_unbound_in_map PARAMS((const char *, rl_command_func_t *, Keymap));
|
||||
extern int rl_generic_bind PARAMS((int, const char *, char *, Keymap));
|
||||
|
||||
extern char *rl_variable_value PARAMS((const char *));
|
||||
extern int rl_variable_bind PARAMS((const char *, const char *));
|
||||
|
||||
/* Backwards compatibility, use rl_bind_keyseq_in_map instead. */
|
||||
|
||||
+28
-24
@@ -1,6 +1,6 @@
|
||||
/* Readline.h -- the names of functions callable from within readline. */
|
||||
|
||||
/* Copyright (C) 1987-2004 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1987-2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
@@ -40,9 +40,9 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/* Hex-encoded Readline version number. */
|
||||
#define RL_READLINE_VERSION 0x0500 /* Readline 5.0 */
|
||||
#define RL_READLINE_VERSION 0x0501 /* Readline 5.1 */
|
||||
#define RL_VERSION_MAJOR 5
|
||||
#define RL_VERSION_MINOR 0
|
||||
#define RL_VERSION_MINOR 1
|
||||
|
||||
/* Readline data structures. */
|
||||
|
||||
@@ -241,6 +241,7 @@ extern int rl_vi_column PARAMS((int, int));
|
||||
extern int rl_vi_delete_to PARAMS((int, int));
|
||||
extern int rl_vi_change_to PARAMS((int, int));
|
||||
extern int rl_vi_yank_to PARAMS((int, int));
|
||||
extern int rl_vi_rubout PARAMS((int, int));
|
||||
extern int rl_vi_delete PARAMS((int, int));
|
||||
extern int rl_vi_back_to_indent PARAMS((int, int));
|
||||
extern int rl_vi_first_print PARAMS((int, int));
|
||||
@@ -759,29 +760,32 @@ extern int rl_inhibit_completion;
|
||||
#define MULT_MATCH 2
|
||||
|
||||
/* Possible state values for rl_readline_state */
|
||||
#define RL_STATE_NONE 0x00000 /* no state; before first call */
|
||||
#define RL_STATE_NONE 0x000000 /* no state; before first call */
|
||||
|
||||
#define RL_STATE_INITIALIZING 0x00001 /* initializing */
|
||||
#define RL_STATE_INITIALIZED 0x00002 /* initialization done */
|
||||
#define RL_STATE_TERMPREPPED 0x00004 /* terminal is prepped */
|
||||
#define RL_STATE_READCMD 0x00008 /* reading a command key */
|
||||
#define RL_STATE_METANEXT 0x00010 /* reading input after ESC */
|
||||
#define RL_STATE_DISPATCHING 0x00020 /* dispatching to a command */
|
||||
#define RL_STATE_MOREINPUT 0x00040 /* reading more input in a command function */
|
||||
#define RL_STATE_ISEARCH 0x00080 /* doing incremental search */
|
||||
#define RL_STATE_NSEARCH 0x00100 /* doing non-inc search */
|
||||
#define RL_STATE_SEARCH 0x00200 /* doing a history search */
|
||||
#define RL_STATE_NUMERICARG 0x00400 /* reading numeric argument */
|
||||
#define RL_STATE_MACROINPUT 0x00800 /* getting input from a macro */
|
||||
#define RL_STATE_MACRODEF 0x01000 /* defining keyboard macro */
|
||||
#define RL_STATE_OVERWRITE 0x02000 /* overwrite mode */
|
||||
#define RL_STATE_COMPLETING 0x04000 /* doing completion */
|
||||
#define RL_STATE_SIGHANDLER 0x08000 /* in readline sighandler */
|
||||
#define RL_STATE_UNDOING 0x10000 /* doing an undo */
|
||||
#define RL_STATE_INPUTPENDING 0x20000 /* rl_execute_next called */
|
||||
#define RL_STATE_TTYCSAVED 0x40000 /* tty special chars saved */
|
||||
#define RL_STATE_INITIALIZING 0x000001 /* initializing */
|
||||
#define RL_STATE_INITIALIZED 0x000002 /* initialization done */
|
||||
#define RL_STATE_TERMPREPPED 0x000004 /* terminal is prepped */
|
||||
#define RL_STATE_READCMD 0x000008 /* reading a command key */
|
||||
#define RL_STATE_METANEXT 0x000010 /* reading input after ESC */
|
||||
#define RL_STATE_DISPATCHING 0x000020 /* dispatching to a command */
|
||||
#define RL_STATE_MOREINPUT 0x000040 /* reading more input in a command function */
|
||||
#define RL_STATE_ISEARCH 0x000080 /* doing incremental search */
|
||||
#define RL_STATE_NSEARCH 0x000100 /* doing non-inc search */
|
||||
#define RL_STATE_SEARCH 0x000200 /* doing a history search */
|
||||
#define RL_STATE_NUMERICARG 0x000400 /* reading numeric argument */
|
||||
#define RL_STATE_MACROINPUT 0x000800 /* getting input from a macro */
|
||||
#define RL_STATE_MACRODEF 0x001000 /* defining keyboard macro */
|
||||
#define RL_STATE_OVERWRITE 0x002000 /* overwrite mode */
|
||||
#define RL_STATE_COMPLETING 0x004000 /* doing completion */
|
||||
#define RL_STATE_SIGHANDLER 0x008000 /* in readline sighandler */
|
||||
#define RL_STATE_UNDOING 0x010000 /* doing an undo */
|
||||
#define RL_STATE_INPUTPENDING 0x020000 /* rl_execute_next called */
|
||||
#define RL_STATE_TTYCSAVED 0x040000 /* tty special chars saved */
|
||||
#define RL_STATE_CALLBACK 0x080000 /* using the callback interface */
|
||||
#define RL_STATE_VIMOTION 0x100000 /* reading vi motion arg */
|
||||
#define RL_STATE_MULTIKEY 0x200000 /* reading multiple-key command */
|
||||
|
||||
#define RL_STATE_DONE 0x80000 /* done; accepted line */
|
||||
#define RL_STATE_DONE 0x800000 /* done; accepted line */
|
||||
|
||||
#define RL_SETSTATE(x) (rl_readline_state |= (x))
|
||||
#define RL_UNSETSTATE(x) (rl_readline_state &= ~(x))
|
||||
|
||||
+1
-1
@@ -932,7 +932,7 @@ floating(p, d)
|
||||
char *tmp, *tmp2, *t;
|
||||
int i;
|
||||
|
||||
if (chkinfnan(p, d, 1) || chkinfnan(p, d, 2))
|
||||
if (d != 0 && (chkinfnan(p, d, 1) || chkinfnan(p, d, 2)))
|
||||
return; /* already printed nan or inf */
|
||||
|
||||
GETLOCALEDATA(decpoint, thoussep, grouping);
|
||||
|
||||
+1
-2
@@ -104,8 +104,7 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
|
||||
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
|
||||
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
|
||||
--files-from=$(srcdir)/POTFILES.in \
|
||||
--copyright-holder='$(COPYRIGHT_HOLDER)' \
|
||||
--msgid-bugs-address='$(MSGID_BUGS_ADDRESS)'
|
||||
--copyright-holder='$(COPYRIGHT_HOLDER)'
|
||||
$(MAKE) $(MFLAGS) builtins.pot-update
|
||||
test ! -f $(DOMAIN).po || { \
|
||||
if test -f $(srcdir)/$(DOMAIN).pot; then \
|
||||
|
||||
+1044
-2671
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+1906
-2883
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+1882
-2847
File diff suppressed because it is too large
Load Diff
+73
-29
@@ -1,133 +1,177 @@
|
||||
#: lib/readline/bind.c:878
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#: lib/readline/bind.c:2076 lib/readline/bind.c:2078 lib/readline/bind.c:2080
|
||||
#: lib/readline/bind.c:2082 lib/readline/display.c:461
|
||||
#: lib/readline/display.c:881 lib/readline/display.c:1921
|
||||
#: lib/readline/histexpand.c:1267 lib/readline/histexpand.c:1275
|
||||
#: lib/readline/nls.c:116
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"POT-Creation-Date: 2005-10-03 17:39-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: lib/readline/bind.c:890
|
||||
#, c-format
|
||||
msgid "readline: %s: line %d: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:881
|
||||
#: lib/readline/bind.c:893
|
||||
#, c-format
|
||||
msgid "readline: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:994
|
||||
#: lib/readline/bind.c:916
|
||||
msgid "other"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:1006
|
||||
msgid "$else found without matching $if"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:1024
|
||||
#: lib/readline/bind.c:1036
|
||||
msgid "$endif without matching $if"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:1101
|
||||
#: lib/readline/bind.c:1113
|
||||
msgid "unknown parser directive"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:1162
|
||||
#: lib/readline/bind.c:1174
|
||||
msgid "no closing `\"' in key binding"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:1977
|
||||
#: lib/readline/bind.c:1999
|
||||
#, c-format
|
||||
msgid "# %s (not bound)\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:1995
|
||||
#: lib/readline/bind.c:2017
|
||||
#, c-format
|
||||
msgid "%s is not bound to any keys\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2001
|
||||
#: lib/readline/bind.c:2023
|
||||
#, c-format
|
||||
msgid "%s can be found on "
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2128
|
||||
#: lib/readline/bind.c:2080
|
||||
#, c-format
|
||||
msgid "%s%s outputs %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2150
|
||||
#, c-format
|
||||
msgid "%s is set to `%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2146
|
||||
#: lib/readline/bind.c:2168
|
||||
#, c-format
|
||||
msgid "bell-style is set to `%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2152
|
||||
#: lib/readline/bind.c:2174
|
||||
#, c-format
|
||||
msgid "comment-begin is set to `%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2158
|
||||
#: lib/readline/bind.c:2180
|
||||
#, c-format
|
||||
msgid "completion-query-items is set to `%d'\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2164
|
||||
#: lib/readline/bind.c:2186
|
||||
#, c-format
|
||||
msgid "editing-mode is set to `%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2176
|
||||
#: lib/readline/bind.c:2198
|
||||
#, c-format
|
||||
msgid "isearch-terminators is set to \"%s\"\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/bind.c:2188
|
||||
#: lib/readline/bind.c:2210
|
||||
#, c-format
|
||||
msgid "keymap is set to `%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/callback.c:105
|
||||
#: lib/readline/callback.c:113
|
||||
msgid "readline: readline_callback_read_char() called with no handler!\r\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/complete.c:1342
|
||||
#: lib/readline/complete.c:1418
|
||||
#, c-format
|
||||
msgid "Display all %d possibilities? (y or n)"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/complete.c:1681
|
||||
#: lib/readline/complete.c:1756
|
||||
#, c-format
|
||||
msgid ""
|
||||
"\r\n"
|
||||
"readline: bad value %d for what_to_do in rl_complete\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/display.c:1924
|
||||
#: lib/readline/display.c:2061
|
||||
#, c-format
|
||||
msgid "readline: debug: insert_some_chars: count (%d) != col (%d)\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/histexpand.c:377
|
||||
#: lib/readline/histexpand.c:379
|
||||
msgid "event not found"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/histexpand.c:381
|
||||
#: lib/readline/histexpand.c:383
|
||||
msgid "bad word specifier"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/histexpand.c:385
|
||||
#: lib/readline/histexpand.c:387
|
||||
msgid "substitution failed"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/histexpand.c:389
|
||||
#: lib/readline/histexpand.c:391
|
||||
msgid "unrecognized history modifier"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/histexpand.c:393
|
||||
#: lib/readline/histexpand.c:395
|
||||
msgid "no previous substitution"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/histexpand.c:397
|
||||
#: lib/readline/histexpand.c:399
|
||||
msgid "unknown expansion error"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/rltty.c:464
|
||||
#: lib/readline/isearch.c:179
|
||||
msgid "reverse-"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/isearch.c:183
|
||||
msgid "i-search)`"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/rltty.c:467
|
||||
#, c-format
|
||||
msgid "readline: warning: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/rltty.c:475
|
||||
#: lib/readline/rltty.c:478
|
||||
msgid "turning on OPOST for terminal\r"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/rltty.c:501
|
||||
#: lib/readline/rltty.c:504
|
||||
msgid "turning off output flushing"
|
||||
msgstr ""
|
||||
|
||||
#: lib/readline/xmalloc.c:47
|
||||
#, c-format
|
||||
msgid "%s: out of virtual memory\n"
|
||||
msgstr ""
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
BUILD_DIR=/usr/local/build/chet/bash/bash-current
|
||||
BUILD_DIR=/usr/local/build/bash/bash-current
|
||||
THIS_SH=$BUILD_DIR/bash
|
||||
PATH=$PATH:$BUILD_DIR
|
||||
|
||||
|
||||
Reference in New Issue
Block a user