diff --git a/CWRU/CWRU.chlog b/CWRU/CWRU.chlog index 377c8089..e351bef3 100644 --- a/CWRU/CWRU.chlog +++ b/CWRU/CWRU.chlog @@ -7201,3 +7201,57 @@ bashline.c - print_unix_command_map: call rl_macro_dumper with an argument of -1 so we can use the output directly in another call to bind -x. + 7/20 + ---- +pathexp.c + - quote_string_for_globbing: don't bother backslash-quoting multibyte + characters. It matters for macOS and doesn't make a difference for + other systems, and those aren't going to be special globbing chars. + From a report by Grisha Levit + +lib/glob/glob.c + - glob_vector: normalize the pattern with fnx_fromfs so we make sure + it's also in NFC on macOS (other systems don't care). This is a + POSIX violation, but part of correcting the longtime HFS+ (and Finder) + misfeature + +lib/readline/complete.c + - rl_filename_completion_function: if the application sets a filename + rewrite hook, use it to rewrite the filename we're matching as well + as filenames read with readdir(). + From a report by Grisha Levit + + 7/21 + ---- +pathexp.c + - quote_string_for_globbing: see if we can get away without backslash- + quoting single-byte characters that aren't CTLESC or characters + that are special to EREs or BREs, even if they're quoted + +bashline.c + - bashline_set_filename_hooks: convenience function to set the + directory hook and the filename rewrite and stat hooks; call from + other places in the file so these are set consistently + +bashline.h + - bashline_set_filename_hooks: extern declaration + +builtins/complete.def + - compgen_builtin: make sure to set the directory and filename hooks + so compgen called from a script works more like compgen called + from a word completion context. + Inspired by a report by Grisha Levit + +doc/Makefile.in + - bash.pdf: use groff -T pdf to create, instead of creating postscript + and then using ghostscript + + 7/24 + ---- +jobs.c + - start_job: unconditionally send SIGCONT to the job we just started, + even if we think it was already running, to reduce the window for a + potential race condition, and only change the state to RUNNING if + the SIGCONT succeeds or if the process has terminated so we can + clean it up later. + Report from Earl Chew diff --git a/Makefile.in b/Makefile.in index 7f990bfa..a340d930 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1441,6 +1441,7 @@ siglist.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h subst.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h test.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h trap.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h +unwind_prot.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h variables.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h version.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h xmalloc.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h diff --git a/bashline.c b/bashline.c index e2b329f9..5dac2e9e 100644 --- a/bashline.c +++ b/bashline.c @@ -593,13 +593,7 @@ initialize_readline (void) /* Tell the completer that we want a crack first. */ rl_attempted_completion_function = attempt_shell_completion; - /* Tell the completer that we might want to follow symbolic links or - do other expansion on directory names. */ - set_directory_hook (); - - rl_filename_rewrite_hook = bash_filename_rewrite_hook; - - rl_filename_stat_hook = bash_filename_stat_hook; + bashline_set_filename_hooks (); /* Tell the filename completer we want a chance to ignore some names. */ rl_ignore_some_completions_function = filename_completion_ignore; @@ -688,8 +682,7 @@ bashline_reset (void) rl_filename_quoting_function = bash_quote_filename; - set_directory_hook (); - rl_filename_stat_hook = bash_filename_stat_hook; + bashline_set_filename_hooks (); bashline_reset_event_hook (); @@ -1564,8 +1557,7 @@ attempt_shell_completion (const char *text, int start, int end) complete_fullquote = 1; /* full filename quoting by default */ rl_filename_quote_characters = default_filename_quote_characters; set_filename_bstab (rl_filename_quote_characters); - set_directory_hook (); - rl_filename_stat_hook = bash_filename_stat_hook; + bashline_set_filename_hooks (); rl_sort_completion_matches = 1; /* sort by default */ @@ -3336,6 +3328,19 @@ restore_directory_hook (rl_icppfunc_t *hookf) rl_directory_rewrite_hook = hookf; } +/* Set the readline hooks that affect how directories and filenames are + converted. Extern so other parts of the shell can use. */ +void +bashline_set_filename_hooks (void) +{ + /* Tell the completer that we might want to follow symbolic links or + do other expansion on directory names. */ + set_directory_hook (); + + rl_filename_rewrite_hook = bash_filename_rewrite_hook; + rl_filename_stat_hook = bash_filename_stat_hook; +} + /* Check whether not DIRNAME, with any trailing slash removed, exists. If SHOULD_DEQUOTE is non-zero, we dequote the directory name first. */ static int diff --git a/bashline.h b/bashline.h index d1ef55e8..514c07ce 100644 --- a/bashline.h +++ b/bashline.h @@ -56,6 +56,7 @@ extern int unbind_unix_command (char *); extern char **bash_default_completion (const char *, int, int, int, int); +extern void bashline_set_filename_hooks (void); extern void set_directory_hook (void); /* Used by programmable completion code. */ diff --git a/doc/Makefile.in b/doc/Makefile.in index 8bf775e1..62af8de4 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -109,6 +109,10 @@ BASHREF_FILES = $(srcdir)/bashref.texi $(srcdir)/fdl.texi $(srcdir)/version.texi $(RM) $@ -${GROFF} -I${srcdir} -man $< > $@ +.1.pdf: + $(RM) $@ + -${GROFF} -I${srcdir} -man -T pdf $< > $@ + .1.0: $(RM) $@ -${NROFF} -I${srcdir} -man $< > $@ @@ -207,11 +211,11 @@ article.ps: article.ms bashref.ps: bashref.dvi -article.pdf: article.ps -#bashref.pdf: bashref.dvi # experimental bashref.pdf: bashref.texi -bash.pdf: bash.ps +bash.pdf: bash.1 + +article.pdf: article.ps rose94.pdf: rose94.ps OTHER_DOCS = $(srcdir)/FAQ $(srcdir)/INTRO diff --git a/doc/bash.html b/doc/bash.html index 228e0816..5f46e520 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -3,7 +3,7 @@ -
BASH(1)2023 July 7BASH(1) +BASH(1)2023 July 19BASH(1)

Index @@ -7778,9 +7778,13 @@ If set to audible, readline attempts to ring the terminal's bell.
bind-tty-special-chars (On)
-If set to On, readline attempts to bind the control characters -treated specially by the kernel's terminal driver to their readline -equivalents. +If set to On (the default), readline attempts to bind the control +characters that are +treated specially by the kernel's terminal driver to their +readline equivalents. +These override the default readline bindings described here. +Type stty -a at a bash prompt to see your current terminal settings, +including the special control characters (usually cchars).
blink-matching-paren (Off)
@@ -12493,6 +12497,8 @@ before execution resumes after the function or script.
set [-abefhkmnptuvxBCEHPT] [-o option-name] [--] [-] [arg ...]
set [+abefhkmnptuvxBCEHPT] [+o option-name] [--] [-] [arg ...]
+
set -o
+
set +o
Without options, display the name and value of each shell variable in a format that can be reused as input @@ -12819,16 +12825,17 @@ Same as If -o -is supplied with no option-name, the values of the current options are -printed. +is supplied with no option-name, +set prints the current shell option settings. If +o -is supplied with no option-name, a series of +is supplied with no option-name, +set prints a series of set -commands to recreate the current option settings is displayed on -the standard output. +commands to recreate the current option settings +on the standard output.
-p @@ -15057,7 +15064,7 @@ There may be only one active coprocess at a time.
-
GNU Bash 5.32023 July 7BASH(1) +GNU Bash 5.32023 July 19BASH(1)

@@ -15163,7 +15170,7 @@ There may be only one active coprocess at a time.
BUGS

-This document was created by man2html from /usr/local/src/bash/bash-20230705/doc/bash.1.
-Time: 07 July 2023 16:22:29 EDT +This document was created by man2html from /usr/local/src/bash/bash-20230719/doc/bash.1.
+Time: 23 July 2023 18:17:35 EDT diff --git a/doc/bash.pdf b/doc/bash.pdf index f7048b89..e06e14d9 100644 Binary files a/doc/bash.pdf and b/doc/bash.pdf differ diff --git a/doc/bashref.aux b/doc/bashref.aux index 658ed71e..b71f20a6 100644 --- a/doc/bashref.aux +++ b/doc/bashref.aux @@ -162,7 +162,7 @@ @xrdef{The Set Builtin-pg}{68} @xrdef{The Shopt Builtin-title}{The Shopt Builtin} @xrdef{The Shopt Builtin-snt}{Section@tie 4.3.2} -@xrdef{The Shopt Builtin-pg}{72} +@xrdef{The Shopt Builtin-pg}{73} @xrdef{Special Builtins-title}{Special Builtins} @xrdef{Special Builtins-snt}{Section@tie 4.4} @xrdef{Special Builtins-pg}{79} @@ -273,118 +273,118 @@ @xrdef{Conditional Init Constructs-pg}{133} @xrdef{Sample Init File-title}{Sample Init File} @xrdef{Sample Init File-snt}{Section@tie 8.3.3} -@xrdef{Sample Init File-pg}{134} +@xrdef{Sample Init File-pg}{135} @xrdef{Bindable Readline Commands-title}{Bindable Readline Commands} @xrdef{Bindable Readline Commands-snt}{Section@tie 8.4} @xrdef{Commands For Moving-title}{Commands For Moving} @xrdef{Commands For Moving-snt}{Section@tie 8.4.1} -@xrdef{Bindable Readline Commands-pg}{137} -@xrdef{Commands For Moving-pg}{137} +@xrdef{Bindable Readline Commands-pg}{138} +@xrdef{Commands For Moving-pg}{138} @xrdef{Commands For History-title}{Commands For Manipulating The History} @xrdef{Commands For History-snt}{Section@tie 8.4.2} -@xrdef{Commands For History-pg}{138} +@xrdef{Commands For History-pg}{139} @xrdef{Commands For Text-title}{Commands For Changing Text} @xrdef{Commands For Text-snt}{Section@tie 8.4.3} -@xrdef{Commands For Text-pg}{140} +@xrdef{Commands For Text-pg}{141} @xrdef{Commands For Killing-title}{Killing And Yanking} @xrdef{Commands For Killing-snt}{Section@tie 8.4.4} -@xrdef{Commands For Killing-pg}{141} +@xrdef{Commands For Killing-pg}{142} @xrdef{Numeric Arguments-title}{Specifying Numeric Arguments} @xrdef{Numeric Arguments-snt}{Section@tie 8.4.5} -@xrdef{Numeric Arguments-pg}{142} +@xrdef{Numeric Arguments-pg}{143} @xrdef{Commands For Completion-title}{Letting Readline Type For You} @xrdef{Commands For Completion-snt}{Section@tie 8.4.6} -@xrdef{Commands For Completion-pg}{143} +@xrdef{Commands For Completion-pg}{144} @xrdef{Keyboard Macros-title}{Keyboard Macros} @xrdef{Keyboard Macros-snt}{Section@tie 8.4.7} -@xrdef{Keyboard Macros-pg}{144} +@xrdef{Keyboard Macros-pg}{145} @xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands} @xrdef{Miscellaneous Commands-snt}{Section@tie 8.4.8} -@xrdef{Miscellaneous Commands-pg}{145} +@xrdef{Miscellaneous Commands-pg}{146} @xrdef{Readline vi Mode-title}{Readline vi Mode} @xrdef{Readline vi Mode-snt}{Section@tie 8.5} @xrdef{Programmable Completion-title}{Programmable Completion} @xrdef{Programmable Completion-snt}{Section@tie 8.6} -@xrdef{Readline vi Mode-pg}{147} -@xrdef{Programmable Completion-pg}{147} +@xrdef{Readline vi Mode-pg}{148} +@xrdef{Programmable Completion-pg}{148} @xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins} @xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7} -@xrdef{Programmable Completion Builtins-pg}{150} +@xrdef{Programmable Completion Builtins-pg}{151} @xrdef{A Programmable Completion Example-title}{A Programmable Completion Example} @xrdef{A Programmable Completion Example-snt}{Section@tie 8.8} -@xrdef{A Programmable Completion Example-pg}{154} +@xrdef{A Programmable Completion Example-pg}{155} @xrdef{Using History Interactively-title}{Using History Interactively} @xrdef{Using History Interactively-snt}{Chapter@tie 9} @xrdef{Bash History Facilities-title}{Bash History Facilities} @xrdef{Bash History Facilities-snt}{Section@tie 9.1} @xrdef{Bash History Builtins-title}{Bash History Builtins} @xrdef{Bash History Builtins-snt}{Section@tie 9.2} -@xrdef{Using History Interactively-pg}{157} -@xrdef{Bash History Facilities-pg}{157} -@xrdef{Bash History Builtins-pg}{157} +@xrdef{Using History Interactively-pg}{158} +@xrdef{Bash History Facilities-pg}{158} +@xrdef{Bash History Builtins-pg}{158} @xrdef{History Interaction-title}{History Expansion} @xrdef{History Interaction-snt}{Section@tie 9.3} -@xrdef{History Interaction-pg}{159} +@xrdef{History Interaction-pg}{160} @xrdef{Event Designators-title}{Event Designators} @xrdef{Event Designators-snt}{Section@tie 9.3.1} -@xrdef{Event Designators-pg}{160} +@xrdef{Event Designators-pg}{161} @xrdef{Word Designators-title}{Word Designators} @xrdef{Word Designators-snt}{Section@tie 9.3.2} @xrdef{Modifiers-title}{Modifiers} @xrdef{Modifiers-snt}{Section@tie 9.3.3} -@xrdef{Word Designators-pg}{161} -@xrdef{Modifiers-pg}{161} +@xrdef{Word Designators-pg}{162} +@xrdef{Modifiers-pg}{162} @xrdef{Installing Bash-title}{Installing Bash} @xrdef{Installing Bash-snt}{Chapter@tie 10} @xrdef{Basic Installation-title}{Basic Installation} @xrdef{Basic Installation-snt}{Section@tie 10.1} -@xrdef{Installing Bash-pg}{163} -@xrdef{Basic Installation-pg}{163} +@xrdef{Installing Bash-pg}{164} +@xrdef{Basic Installation-pg}{164} @xrdef{Compilers and Options-title}{Compilers and Options} @xrdef{Compilers and Options-snt}{Section@tie 10.2} @xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures} @xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3} @xrdef{Installation Names-title}{Installation Names} @xrdef{Installation Names-snt}{Section@tie 10.4} -@xrdef{Compilers and Options-pg}{164} -@xrdef{Compiling For Multiple Architectures-pg}{164} +@xrdef{Compilers and Options-pg}{165} +@xrdef{Compiling For Multiple Architectures-pg}{165} @xrdef{Specifying the System Type-title}{Specifying the System Type} @xrdef{Specifying the System Type-snt}{Section@tie 10.5} @xrdef{Sharing Defaults-title}{Sharing Defaults} @xrdef{Sharing Defaults-snt}{Section@tie 10.6} @xrdef{Operation Controls-title}{Operation Controls} @xrdef{Operation Controls-snt}{Section@tie 10.7} -@xrdef{Installation Names-pg}{165} -@xrdef{Specifying the System Type-pg}{165} -@xrdef{Sharing Defaults-pg}{165} +@xrdef{Installation Names-pg}{166} +@xrdef{Specifying the System Type-pg}{166} +@xrdef{Sharing Defaults-pg}{166} @xrdef{Optional Features-title}{Optional Features} @xrdef{Optional Features-snt}{Section@tie 10.8} -@xrdef{Operation Controls-pg}{166} -@xrdef{Optional Features-pg}{166} +@xrdef{Operation Controls-pg}{167} +@xrdef{Optional Features-pg}{167} @xrdef{Reporting Bugs-title}{Reporting Bugs} @xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}} -@xrdef{Reporting Bugs-pg}{172} +@xrdef{Reporting Bugs-pg}{173} @xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell} @xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}} -@xrdef{Major Differences From The Bourne Shell-pg}{173} +@xrdef{Major Differences From The Bourne Shell-pg}{174} @xrdef{GNU Free Documentation License-title}{GNU Free Documentation License} @xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}} -@xrdef{GNU Free Documentation License-pg}{179} +@xrdef{GNU Free Documentation License-pg}{180} @xrdef{Indexes-title}{Indexes} @xrdef{Indexes-snt}{Appendix@tie @char68{}} @xrdef{Builtin Index-title}{Index of Shell Builtin Commands} @xrdef{Builtin Index-snt}{Section@tie @char68.1} -@xrdef{Indexes-pg}{187} -@xrdef{Builtin Index-pg}{187} +@xrdef{Indexes-pg}{188} +@xrdef{Builtin Index-pg}{188} @xrdef{Reserved Word Index-title}{Index of Shell Reserved Words} @xrdef{Reserved Word Index-snt}{Section@tie @char68.2} @xrdef{Variable Index-title}{Parameter and Variable Index} @xrdef{Variable Index-snt}{Section@tie @char68.3} -@xrdef{Reserved Word Index-pg}{188} -@xrdef{Variable Index-pg}{189} +@xrdef{Reserved Word Index-pg}{189} +@xrdef{Variable Index-pg}{190} @xrdef{Function Index-title}{Function Index} @xrdef{Function Index-snt}{Section@tie @char68.4} -@xrdef{Function Index-pg}{191} +@xrdef{Function Index-pg}{192} @xrdef{Concept Index-title}{Concept Index} @xrdef{Concept Index-snt}{Section@tie @char68.5} -@xrdef{Concept Index-pg}{193} +@xrdef{Concept Index-pg}{194} diff --git a/doc/bashref.bt b/doc/bashref.bt index ebb5505d..90ded793 100644 --- a/doc/bashref.bt +++ b/doc/bashref.bt @@ -20,22 +20,22 @@ \entry{trap}{55}{\code {trap}} \entry{true}{56}{\code {true}} \entry{umask}{56}{\code {umask}} -\entry{unset}{56}{\code {unset}} +\entry{unset}{57}{\code {unset}} \entry{alias}{57}{\code {alias}} \entry{bind}{57}{\code {bind}} \entry{builtin}{58}{\code {builtin}} -\entry{caller}{58}{\code {caller}} +\entry{caller}{59}{\code {caller}} \entry{command}{59}{\code {command}} \entry{declare}{59}{\code {declare}} -\entry{echo}{60}{\code {echo}} -\entry{enable}{61}{\code {enable}} +\entry{echo}{61}{\code {echo}} +\entry{enable}{62}{\code {enable}} \entry{help}{62}{\code {help}} \entry{let}{62}{\code {let}} -\entry{local}{62}{\code {local}} +\entry{local}{63}{\code {local}} \entry{logout}{63}{\code {logout}} \entry{mapfile}{63}{\code {mapfile}} -\entry{printf}{63}{\code {printf}} -\entry{read}{64}{\code {read}} +\entry{printf}{64}{\code {printf}} +\entry{read}{65}{\code {read}} \entry{readarray}{66}{\code {readarray}} \entry{source}{66}{\code {source}} \entry{type}{66}{\code {type}} @@ -43,7 +43,7 @@ \entry{ulimit}{67}{\code {ulimit}} \entry{unalias}{68}{\code {unalias}} \entry{set}{68}{\code {set}} -\entry{shopt}{72}{\code {shopt}} +\entry{shopt}{73}{\code {shopt}} \entry{dirs}{105}{\code {dirs}} \entry{popd}{105}{\code {popd}} \entry{pushd}{105}{\code {pushd}} @@ -54,8 +54,8 @@ \entry{wait}{119}{\code {wait}} \entry{disown}{120}{\code {disown}} \entry{suspend}{120}{\code {suspend}} -\entry{compgen}{150}{\code {compgen}} -\entry{complete}{150}{\code {complete}} -\entry{compopt}{153}{\code {compopt}} -\entry{fc}{158}{\code {fc}} -\entry{history}{158}{\code {history}} +\entry{compgen}{151}{\code {compgen}} +\entry{complete}{151}{\code {complete}} +\entry{compopt}{154}{\code {compopt}} +\entry{fc}{159}{\code {fc}} +\entry{history}{159}{\code {history}} diff --git a/doc/bashref.bts b/doc/bashref.bts index a3a54d72..7e92df69 100644 --- a/doc/bashref.bts +++ b/doc/bashref.bts @@ -12,58 +12,58 @@ \entry{\code {break}}{50} \entry{\code {builtin}}{58} \initial {C} -\entry{\code {caller}}{58} +\entry{\code {caller}}{59} \entry{\code {cd}}{50} \entry{\code {command}}{59} -\entry{\code {compgen}}{150} -\entry{\code {complete}}{150} -\entry{\code {compopt}}{153} +\entry{\code {compgen}}{151} +\entry{\code {complete}}{151} +\entry{\code {compopt}}{154} \entry{\code {continue}}{50} \initial {D} \entry{\code {declare}}{59} \entry{\code {dirs}}{105} \entry{\code {disown}}{120} \initial {E} -\entry{\code {echo}}{60} -\entry{\code {enable}}{61} +\entry{\code {echo}}{61} +\entry{\code {enable}}{62} \entry{\code {eval}}{50} \entry{\code {exec}}{51} \entry{\code {exit}}{51} \entry{\code {export}}{51} \initial {F} \entry{\code {false}}{51} -\entry{\code {fc}}{158} +\entry{\code {fc}}{159} \entry{\code {fg}}{118} \initial {G} \entry{\code {getopts}}{51} \initial {H} \entry{\code {hash}}{52} \entry{\code {help}}{62} -\entry{\code {history}}{158} +\entry{\code {history}}{159} \initial {J} \entry{\code {jobs}}{118} \initial {K} \entry{\code {kill}}{119} \initial {L} \entry{\code {let}}{62} -\entry{\code {local}}{62} +\entry{\code {local}}{63} \entry{\code {logout}}{63} \initial {M} \entry{\code {mapfile}}{63} \initial {P} \entry{\code {popd}}{105} -\entry{\code {printf}}{63} +\entry{\code {printf}}{64} \entry{\code {pushd}}{105} \entry{\code {pwd}}{52} \initial {R} -\entry{\code {read}}{64} +\entry{\code {read}}{65} \entry{\code {readarray}}{66} \entry{\code {readonly}}{53} \entry{\code {return}}{53} \initial {S} \entry{\code {set}}{68} \entry{\code {shift}}{53} -\entry{\code {shopt}}{72} +\entry{\code {shopt}}{73} \entry{\code {source}}{66} \entry{\code {suspend}}{120} \initial {T} @@ -77,6 +77,6 @@ \entry{\code {ulimit}}{67} \entry{\code {umask}}{56} \entry{\code {unalias}}{68} -\entry{\code {unset}}{56} +\entry{\code {unset}}{57} \initial {W} \entry{\code {wait}}{119} diff --git a/doc/bashref.cp b/doc/bashref.cp index 341ac428..b51b8d82 100644 --- a/doc/bashref.cp +++ b/doc/bashref.cp @@ -114,16 +114,16 @@ \entry{kill ring}{123}{kill ring} \entry{initialization file, readline}{124}{initialization file, readline} \entry{variables, readline}{125}{variables, readline} -\entry{programmable completion}{147}{programmable completion} -\entry{completion builtins}{150}{completion builtins} -\entry{History, how to use}{156}{History, how to use} -\entry{command history}{157}{command history} -\entry{history list}{157}{history list} -\entry{history builtins}{157}{history builtins} -\entry{history expansion}{159}{history expansion} -\entry{event designators}{160}{event designators} -\entry{history events}{160}{history events} -\entry{installation}{163}{installation} -\entry{configuration}{163}{configuration} -\entry{Bash installation}{163}{Bash installation} -\entry{Bash configuration}{163}{Bash configuration} +\entry{programmable completion}{148}{programmable completion} +\entry{completion builtins}{151}{completion builtins} +\entry{History, how to use}{157}{History, how to use} +\entry{command history}{158}{command history} +\entry{history list}{158}{history list} +\entry{history builtins}{158}{history builtins} +\entry{history expansion}{160}{history expansion} +\entry{event designators}{161}{event designators} +\entry{history events}{161}{history events} +\entry{installation}{164}{installation} +\entry{configuration}{164}{configuration} +\entry{Bash installation}{164}{Bash installation} +\entry{Bash configuration}{164}{Bash configuration} diff --git a/doc/bashref.cps b/doc/bashref.cps index 0843ad1a..b3b11438 100644 --- a/doc/bashref.cps +++ b/doc/bashref.cps @@ -7,8 +7,8 @@ \entry{arrays}{102} \initial {B} \entry{background}{117} -\entry{Bash configuration}{163} -\entry{Bash installation}{163} +\entry{Bash configuration}{164} +\entry{Bash installation}{164} \entry{binary arithmetic operators}{100} \entry{bitwise arithmetic operators}{100} \entry{Bourne shell}{5} @@ -18,7 +18,7 @@ \entry{command editing}{122} \entry{command execution}{43} \entry{command expansion}{43} -\entry{command history}{157} +\entry{command history}{158} \entry{command search}{43} \entry{command substitution}{34} \entry{command timing}{10} @@ -33,9 +33,9 @@ \entry{comments, shell}{9} \entry{Compatibility Level}{113} \entry{Compatibility Mode}{113} -\entry{completion builtins}{150} +\entry{completion builtins}{151} \entry{conditional arithmetic operator}{100} -\entry{configuration}{163} +\entry{configuration}{164} \entry{control operator}{3} \entry{coprocess}{18} \initial {D} @@ -44,7 +44,7 @@ \entry{editing command lines}{122} \entry{environment}{45} \entry{evaluation, arithmetic}{100} -\entry{event designators}{160} +\entry{event designators}{161} \entry{execution environment}{44} \entry{exit status}{3, 45} \entry{expansion}{24} @@ -63,15 +63,15 @@ \entry{foreground}{117} \entry{functions, shell}{19} \initial {H} -\entry{history builtins}{157} -\entry{history events}{160} -\entry{history expansion}{159} -\entry{history list}{157} -\entry{History, how to use}{156} +\entry{history builtins}{158} +\entry{history events}{161} +\entry{history expansion}{160} +\entry{history list}{158} +\entry{History, how to use}{157} \initial {I} \entry{identifier}{3} \entry{initialization file, readline}{124} -\entry{installation}{163} +\entry{installation}{164} \entry{interaction, readline}{121} \entry{interactive shell}{95, 96} \entry{internationalization}{7} @@ -108,7 +108,7 @@ \entry{process group}{3} \entry{process group ID}{3} \entry{process substitution}{35} -\entry{programmable completion}{147} +\entry{programmable completion}{148} \entry{prompting}{106} \initial {Q} \entry{quoting}{6} diff --git a/doc/bashref.dvi b/doc/bashref.dvi index 5bd67ff8..aac12e36 100644 Binary files a/doc/bashref.dvi and b/doc/bashref.dvi differ diff --git a/doc/bashref.fn b/doc/bashref.fn index 09df67ab..341a79c2 100644 --- a/doc/bashref.fn +++ b/doc/bashref.fn @@ -1,114 +1,114 @@ -\entry{beginning-of-line (C-a)}{137}{\code {beginning-of-line (C-a)}} -\entry{end-of-line (C-e)}{137}{\code {end-of-line (C-e)}} -\entry{forward-char (C-f)}{137}{\code {forward-char (C-f)}} -\entry{backward-char (C-b)}{137}{\code {backward-char (C-b)}} -\entry{forward-word (M-f)}{137}{\code {forward-word (M-f)}} -\entry{backward-word (M-b)}{137}{\code {backward-word (M-b)}} -\entry{shell-forward-word (M-C-f)}{137}{\code {shell-forward-word (M-C-f)}} -\entry{shell-backward-word (M-C-b)}{137}{\code {shell-backward-word (M-C-b)}} -\entry{previous-screen-line ()}{137}{\code {previous-screen-line ()}} -\entry{next-screen-line ()}{138}{\code {next-screen-line ()}} -\entry{clear-display (M-C-l)}{138}{\code {clear-display (M-C-l)}} -\entry{clear-screen (C-l)}{138}{\code {clear-screen (C-l)}} -\entry{redraw-current-line ()}{138}{\code {redraw-current-line ()}} -\entry{accept-line (Newline or Return)}{138}{\code {accept-line (Newline or Return)}} -\entry{previous-history (C-p)}{138}{\code {previous-history (C-p)}} -\entry{next-history (C-n)}{138}{\code {next-history (C-n)}} -\entry{beginning-of-history (M-<)}{138}{\code {beginning-of-history (M-<)}} -\entry{end-of-history (M->)}{138}{\code {end-of-history (M->)}} -\entry{reverse-search-history (C-r)}{138}{\code {reverse-search-history (C-r)}} -\entry{forward-search-history (C-s)}{138}{\code {forward-search-history (C-s)}} -\entry{non-incremental-reverse-search-history (M-p)}{138}{\code {non-incremental-reverse-search-history (M-p)}} -\entry{non-incremental-forward-search-history (M-n)}{139}{\code {non-incremental-forward-search-history (M-n)}} -\entry{history-search-forward ()}{139}{\code {history-search-forward ()}} -\entry{history-search-backward ()}{139}{\code {history-search-backward ()}} -\entry{history-substring-search-forward ()}{139}{\code {history-substring-search-forward ()}} -\entry{history-substring-search-backward ()}{139}{\code {history-substring-search-backward ()}} -\entry{yank-nth-arg (M-C-y)}{139}{\code {yank-nth-arg (M-C-y)}} -\entry{yank-last-arg (M-. or M-_)}{139}{\code {yank-last-arg (M-. or M-_)}} -\entry{operate-and-get-next (C-o)}{139}{\code {operate-and-get-next (C-o)}} -\entry{fetch-history ()}{140}{\code {fetch-history ()}} -\entry{end-of-file (usually C-d)}{140}{\code {\i {end-of-file} (usually C-d)}} -\entry{delete-char (C-d)}{140}{\code {delete-char (C-d)}} -\entry{backward-delete-char (Rubout)}{140}{\code {backward-delete-char (Rubout)}} -\entry{forward-backward-delete-char ()}{140}{\code {forward-backward-delete-char ()}} -\entry{quoted-insert (C-q or C-v)}{140}{\code {quoted-insert (C-q or C-v)}} -\entry{self-insert (a, b, A, 1, !, ...{})}{140}{\code {self-insert (a, b, A, 1, !, \dots {})}} -\entry{bracketed-paste-begin ()}{140}{\code {bracketed-paste-begin ()}} -\entry{transpose-chars (C-t)}{140}{\code {transpose-chars (C-t)}} -\entry{transpose-words (M-t)}{141}{\code {transpose-words (M-t)}} -\entry{upcase-word (M-u)}{141}{\code {upcase-word (M-u)}} -\entry{downcase-word (M-l)}{141}{\code {downcase-word (M-l)}} -\entry{capitalize-word (M-c)}{141}{\code {capitalize-word (M-c)}} -\entry{overwrite-mode ()}{141}{\code {overwrite-mode ()}} -\entry{kill-line (C-k)}{141}{\code {kill-line (C-k)}} -\entry{backward-kill-line (C-x Rubout)}{141}{\code {backward-kill-line (C-x Rubout)}} -\entry{unix-line-discard (C-u)}{141}{\code {unix-line-discard (C-u)}} -\entry{kill-whole-line ()}{141}{\code {kill-whole-line ()}} -\entry{kill-word (M-d)}{141}{\code {kill-word (M-d)}} -\entry{backward-kill-word (M-DEL)}{141}{\code {backward-kill-word (M-\key {DEL})}} -\entry{shell-kill-word (M-C-d)}{142}{\code {shell-kill-word (M-C-d)}} -\entry{shell-backward-kill-word ()}{142}{\code {shell-backward-kill-word ()}} +\entry{beginning-of-line (C-a)}{138}{\code {beginning-of-line (C-a)}} +\entry{end-of-line (C-e)}{138}{\code {end-of-line (C-e)}} +\entry{forward-char (C-f)}{138}{\code {forward-char (C-f)}} +\entry{backward-char (C-b)}{138}{\code {backward-char (C-b)}} +\entry{forward-word (M-f)}{138}{\code {forward-word (M-f)}} +\entry{backward-word (M-b)}{138}{\code {backward-word (M-b)}} +\entry{shell-forward-word (M-C-f)}{138}{\code {shell-forward-word (M-C-f)}} +\entry{shell-backward-word (M-C-b)}{138}{\code {shell-backward-word (M-C-b)}} +\entry{previous-screen-line ()}{138}{\code {previous-screen-line ()}} +\entry{next-screen-line ()}{139}{\code {next-screen-line ()}} +\entry{clear-display (M-C-l)}{139}{\code {clear-display (M-C-l)}} +\entry{clear-screen (C-l)}{139}{\code {clear-screen (C-l)}} +\entry{redraw-current-line ()}{139}{\code {redraw-current-line ()}} +\entry{accept-line (Newline or Return)}{139}{\code {accept-line (Newline or Return)}} +\entry{previous-history (C-p)}{139}{\code {previous-history (C-p)}} +\entry{next-history (C-n)}{139}{\code {next-history (C-n)}} +\entry{beginning-of-history (M-<)}{139}{\code {beginning-of-history (M-<)}} +\entry{end-of-history (M->)}{139}{\code {end-of-history (M->)}} +\entry{reverse-search-history (C-r)}{139}{\code {reverse-search-history (C-r)}} +\entry{forward-search-history (C-s)}{139}{\code {forward-search-history (C-s)}} +\entry{non-incremental-reverse-search-history (M-p)}{139}{\code {non-incremental-reverse-search-history (M-p)}} +\entry{non-incremental-forward-search-history (M-n)}{140}{\code {non-incremental-forward-search-history (M-n)}} +\entry{history-search-forward ()}{140}{\code {history-search-forward ()}} +\entry{history-search-backward ()}{140}{\code {history-search-backward ()}} +\entry{history-substring-search-forward ()}{140}{\code {history-substring-search-forward ()}} +\entry{history-substring-search-backward ()}{140}{\code {history-substring-search-backward ()}} +\entry{yank-nth-arg (M-C-y)}{140}{\code {yank-nth-arg (M-C-y)}} +\entry{yank-last-arg (M-. or M-_)}{140}{\code {yank-last-arg (M-. or M-_)}} +\entry{operate-and-get-next (C-o)}{140}{\code {operate-and-get-next (C-o)}} +\entry{fetch-history ()}{141}{\code {fetch-history ()}} +\entry{end-of-file (usually C-d)}{141}{\code {\i {end-of-file} (usually C-d)}} +\entry{delete-char (C-d)}{141}{\code {delete-char (C-d)}} +\entry{backward-delete-char (Rubout)}{141}{\code {backward-delete-char (Rubout)}} +\entry{forward-backward-delete-char ()}{141}{\code {forward-backward-delete-char ()}} +\entry{quoted-insert (C-q or C-v)}{141}{\code {quoted-insert (C-q or C-v)}} +\entry{self-insert (a, b, A, 1, !, ...{})}{141}{\code {self-insert (a, b, A, 1, !, \dots {})}} +\entry{bracketed-paste-begin ()}{141}{\code {bracketed-paste-begin ()}} +\entry{transpose-chars (C-t)}{141}{\code {transpose-chars (C-t)}} +\entry{transpose-words (M-t)}{142}{\code {transpose-words (M-t)}} \entry{shell-transpose-words (M-C-t)}{142}{\code {shell-transpose-words (M-C-t)}} -\entry{unix-word-rubout (C-w)}{142}{\code {unix-word-rubout (C-w)}} -\entry{unix-filename-rubout ()}{142}{\code {unix-filename-rubout ()}} -\entry{delete-horizontal-space ()}{142}{\code {delete-horizontal-space ()}} -\entry{kill-region ()}{142}{\code {kill-region ()}} -\entry{copy-region-as-kill ()}{142}{\code {copy-region-as-kill ()}} -\entry{copy-backward-word ()}{142}{\code {copy-backward-word ()}} -\entry{copy-forward-word ()}{142}{\code {copy-forward-word ()}} -\entry{yank (C-y)}{142}{\code {yank (C-y)}} -\entry{yank-pop (M-y)}{142}{\code {yank-pop (M-y)}} -\entry{digit-argument (M-0, M-1, ...{} M--)}{142}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}} -\entry{universal-argument ()}{143}{\code {universal-argument ()}} -\entry{complete (TAB)}{143}{\code {complete (\key {TAB})}} -\entry{possible-completions (M-?)}{143}{\code {possible-completions (M-?)}} -\entry{insert-completions (M-*)}{143}{\code {insert-completions (M-*)}} -\entry{menu-complete ()}{143}{\code {menu-complete ()}} -\entry{menu-complete-backward ()}{143}{\code {menu-complete-backward ()}} -\entry{delete-char-or-list ()}{143}{\code {delete-char-or-list ()}} -\entry{complete-filename (M-/)}{143}{\code {complete-filename (M-/)}} -\entry{possible-filename-completions (C-x /)}{144}{\code {possible-filename-completions (C-x /)}} -\entry{complete-username (M-~)}{144}{\code {complete-username (M-~)}} -\entry{possible-username-completions (C-x ~)}{144}{\code {possible-username-completions (C-x ~)}} -\entry{complete-variable (M-$)}{144}{\code {complete-variable (M-$)}} -\entry{possible-variable-completions (C-x $)}{144}{\code {possible-variable-completions (C-x $)}} -\entry{complete-hostname (M-@)}{144}{\code {complete-hostname (M-@)}} -\entry{possible-hostname-completions (C-x @)}{144}{\code {possible-hostname-completions (C-x @)}} -\entry{complete-command (M-!)}{144}{\code {complete-command (M-!)}} -\entry{possible-command-completions (C-x !)}{144}{\code {possible-command-completions (C-x !)}} -\entry{dynamic-complete-history (M-TAB)}{144}{\code {dynamic-complete-history (M-\key {TAB})}} -\entry{dabbrev-expand ()}{144}{\code {dabbrev-expand ()}} -\entry{complete-into-braces (M-{\indexlbrace })}{144}{\code {complete-into-braces (M-{\tt \char 123})}} -\entry{start-kbd-macro (C-x ()}{144}{\code {start-kbd-macro (C-x ()}} -\entry{end-kbd-macro (C-x ))}{144}{\code {end-kbd-macro (C-x ))}} -\entry{call-last-kbd-macro (C-x e)}{145}{\code {call-last-kbd-macro (C-x e)}} -\entry{print-last-kbd-macro ()}{145}{\code {print-last-kbd-macro ()}} -\entry{re-read-init-file (C-x C-r)}{145}{\code {re-read-init-file (C-x C-r)}} -\entry{abort (C-g)}{145}{\code {abort (C-g)}} -\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{145}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}} -\entry{prefix-meta (ESC)}{145}{\code {prefix-meta (\key {ESC})}} -\entry{undo (C-_ or C-x C-u)}{145}{\code {undo (C-_ or C-x C-u)}} -\entry{revert-line (M-r)}{145}{\code {revert-line (M-r)}} -\entry{tilde-expand (M-&)}{145}{\code {tilde-expand (M-&)}} -\entry{set-mark (C-@)}{145}{\code {set-mark (C-@)}} -\entry{exchange-point-and-mark (C-x C-x)}{145}{\code {exchange-point-and-mark (C-x C-x)}} -\entry{character-search (C-])}{145}{\code {character-search (C-])}} -\entry{character-search-backward (M-C-])}{145}{\code {character-search-backward (M-C-])}} -\entry{skip-csi-sequence ()}{145}{\code {skip-csi-sequence ()}} -\entry{insert-comment (M-#)}{146}{\code {insert-comment (M-#)}} -\entry{dump-functions ()}{146}{\code {dump-functions ()}} -\entry{dump-variables ()}{146}{\code {dump-variables ()}} -\entry{dump-macros ()}{146}{\code {dump-macros ()}} -\entry{spell-correct-word (C-x s)}{146}{\code {spell-correct-word (C-x s)}} -\entry{glob-complete-word (M-g)}{146}{\code {glob-complete-word (M-g)}} -\entry{glob-expand-word (C-x *)}{146}{\code {glob-expand-word (C-x *)}} -\entry{glob-list-expansions (C-x g)}{146}{\code {glob-list-expansions (C-x g)}} -\entry{display-shell-version (C-x C-v)}{147}{\code {display-shell-version (C-x C-v)}} -\entry{shell-expand-line (M-C-e)}{147}{\code {shell-expand-line (M-C-e)}} -\entry{history-expand-line (M-^)}{147}{\code {history-expand-line (M-^)}} -\entry{magic-space ()}{147}{\code {magic-space ()}} -\entry{alias-expand-line ()}{147}{\code {alias-expand-line ()}} -\entry{history-and-alias-expand-line ()}{147}{\code {history-and-alias-expand-line ()}} -\entry{insert-last-argument (M-. or M-_)}{147}{\code {insert-last-argument (M-. or M-_)}} -\entry{edit-and-execute-command (C-x C-e)}{147}{\code {edit-and-execute-command (C-x C-e)}} +\entry{upcase-word (M-u)}{142}{\code {upcase-word (M-u)}} +\entry{downcase-word (M-l)}{142}{\code {downcase-word (M-l)}} +\entry{capitalize-word (M-c)}{142}{\code {capitalize-word (M-c)}} +\entry{overwrite-mode ()}{142}{\code {overwrite-mode ()}} +\entry{kill-line (C-k)}{142}{\code {kill-line (C-k)}} +\entry{backward-kill-line (C-x Rubout)}{142}{\code {backward-kill-line (C-x Rubout)}} +\entry{unix-line-discard (C-u)}{142}{\code {unix-line-discard (C-u)}} +\entry{kill-whole-line ()}{142}{\code {kill-whole-line ()}} +\entry{kill-word (M-d)}{143}{\code {kill-word (M-d)}} +\entry{backward-kill-word (M-DEL)}{143}{\code {backward-kill-word (M-\key {DEL})}} +\entry{shell-kill-word (M-C-d)}{143}{\code {shell-kill-word (M-C-d)}} +\entry{shell-backward-kill-word ()}{143}{\code {shell-backward-kill-word ()}} +\entry{unix-word-rubout (C-w)}{143}{\code {unix-word-rubout (C-w)}} +\entry{unix-filename-rubout ()}{143}{\code {unix-filename-rubout ()}} +\entry{delete-horizontal-space ()}{143}{\code {delete-horizontal-space ()}} +\entry{kill-region ()}{143}{\code {kill-region ()}} +\entry{copy-region-as-kill ()}{143}{\code {copy-region-as-kill ()}} +\entry{copy-backward-word ()}{143}{\code {copy-backward-word ()}} +\entry{copy-forward-word ()}{143}{\code {copy-forward-word ()}} +\entry{yank (C-y)}{143}{\code {yank (C-y)}} +\entry{yank-pop (M-y)}{143}{\code {yank-pop (M-y)}} +\entry{digit-argument (M-0, M-1, ...{} M--)}{143}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}} +\entry{universal-argument ()}{144}{\code {universal-argument ()}} +\entry{complete (TAB)}{144}{\code {complete (\key {TAB})}} +\entry{possible-completions (M-?)}{144}{\code {possible-completions (M-?)}} +\entry{insert-completions (M-*)}{144}{\code {insert-completions (M-*)}} +\entry{menu-complete ()}{144}{\code {menu-complete ()}} +\entry{menu-complete-backward ()}{144}{\code {menu-complete-backward ()}} +\entry{delete-char-or-list ()}{144}{\code {delete-char-or-list ()}} +\entry{complete-filename (M-/)}{144}{\code {complete-filename (M-/)}} +\entry{possible-filename-completions (C-x /)}{145}{\code {possible-filename-completions (C-x /)}} +\entry{complete-username (M-~)}{145}{\code {complete-username (M-~)}} +\entry{possible-username-completions (C-x ~)}{145}{\code {possible-username-completions (C-x ~)}} +\entry{complete-variable (M-$)}{145}{\code {complete-variable (M-$)}} +\entry{possible-variable-completions (C-x $)}{145}{\code {possible-variable-completions (C-x $)}} +\entry{complete-hostname (M-@)}{145}{\code {complete-hostname (M-@)}} +\entry{possible-hostname-completions (C-x @)}{145}{\code {possible-hostname-completions (C-x @)}} +\entry{complete-command (M-!)}{145}{\code {complete-command (M-!)}} +\entry{possible-command-completions (C-x !)}{145}{\code {possible-command-completions (C-x !)}} +\entry{dynamic-complete-history (M-TAB)}{145}{\code {dynamic-complete-history (M-\key {TAB})}} +\entry{dabbrev-expand ()}{145}{\code {dabbrev-expand ()}} +\entry{complete-into-braces (M-{\indexlbrace })}{145}{\code {complete-into-braces (M-{\tt \char 123})}} +\entry{start-kbd-macro (C-x ()}{145}{\code {start-kbd-macro (C-x ()}} +\entry{end-kbd-macro (C-x ))}{145}{\code {end-kbd-macro (C-x ))}} +\entry{call-last-kbd-macro (C-x e)}{146}{\code {call-last-kbd-macro (C-x e)}} +\entry{print-last-kbd-macro ()}{146}{\code {print-last-kbd-macro ()}} +\entry{re-read-init-file (C-x C-r)}{146}{\code {re-read-init-file (C-x C-r)}} +\entry{abort (C-g)}{146}{\code {abort (C-g)}} +\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{146}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}} +\entry{prefix-meta (ESC)}{146}{\code {prefix-meta (\key {ESC})}} +\entry{undo (C-_ or C-x C-u)}{146}{\code {undo (C-_ or C-x C-u)}} +\entry{revert-line (M-r)}{146}{\code {revert-line (M-r)}} +\entry{tilde-expand (M-&)}{146}{\code {tilde-expand (M-&)}} +\entry{set-mark (C-@)}{146}{\code {set-mark (C-@)}} +\entry{exchange-point-and-mark (C-x C-x)}{146}{\code {exchange-point-and-mark (C-x C-x)}} +\entry{character-search (C-])}{146}{\code {character-search (C-])}} +\entry{character-search-backward (M-C-])}{146}{\code {character-search-backward (M-C-])}} +\entry{skip-csi-sequence ()}{146}{\code {skip-csi-sequence ()}} +\entry{insert-comment (M-#)}{147}{\code {insert-comment (M-#)}} +\entry{dump-functions ()}{147}{\code {dump-functions ()}} +\entry{dump-variables ()}{147}{\code {dump-variables ()}} +\entry{dump-macros ()}{147}{\code {dump-macros ()}} +\entry{spell-correct-word (C-x s)}{147}{\code {spell-correct-word (C-x s)}} +\entry{glob-complete-word (M-g)}{147}{\code {glob-complete-word (M-g)}} +\entry{glob-expand-word (C-x *)}{147}{\code {glob-expand-word (C-x *)}} +\entry{glob-list-expansions (C-x g)}{147}{\code {glob-list-expansions (C-x g)}} +\entry{display-shell-version (C-x C-v)}{148}{\code {display-shell-version (C-x C-v)}} +\entry{shell-expand-line (M-C-e)}{148}{\code {shell-expand-line (M-C-e)}} +\entry{history-expand-line (M-^)}{148}{\code {history-expand-line (M-^)}} +\entry{magic-space ()}{148}{\code {magic-space ()}} +\entry{alias-expand-line ()}{148}{\code {alias-expand-line ()}} +\entry{history-and-alias-expand-line ()}{148}{\code {history-and-alias-expand-line ()}} +\entry{insert-last-argument (M-. or M-_)}{148}{\code {insert-last-argument (M-. or M-_)}} +\entry{edit-and-execute-command (C-x C-e)}{148}{\code {edit-and-execute-command (C-x C-e)}} diff --git a/doc/bashref.fns b/doc/bashref.fns index e0a1809c..748e3c0d 100644 --- a/doc/bashref.fns +++ b/doc/bashref.fns @@ -1,134 +1,134 @@ \initial {A} -\entry{\code {abort (C-g)}}{145} -\entry{\code {accept-line (Newline or Return)}}{138} -\entry{\code {alias-expand-line ()}}{147} +\entry{\code {abort (C-g)}}{146} +\entry{\code {accept-line (Newline or Return)}}{139} +\entry{\code {alias-expand-line ()}}{148} \initial {B} -\entry{\code {backward-char (C-b)}}{137} -\entry{\code {backward-delete-char (Rubout)}}{140} -\entry{\code {backward-kill-line (C-x Rubout)}}{141} -\entry{\code {backward-kill-word (M-\key {DEL})}}{141} -\entry{\code {backward-word (M-b)}}{137} -\entry{\code {beginning-of-history (M-<)}}{138} -\entry{\code {beginning-of-line (C-a)}}{137} -\entry{\code {bracketed-paste-begin ()}}{140} +\entry{\code {backward-char (C-b)}}{138} +\entry{\code {backward-delete-char (Rubout)}}{141} +\entry{\code {backward-kill-line (C-x Rubout)}}{142} +\entry{\code {backward-kill-word (M-\key {DEL})}}{143} +\entry{\code {backward-word (M-b)}}{138} +\entry{\code {beginning-of-history (M-<)}}{139} +\entry{\code {beginning-of-line (C-a)}}{138} +\entry{\code {bracketed-paste-begin ()}}{141} \initial {C} -\entry{\code {call-last-kbd-macro (C-x e)}}{145} -\entry{\code {capitalize-word (M-c)}}{141} -\entry{\code {character-search (C-])}}{145} -\entry{\code {character-search-backward (M-C-])}}{145} -\entry{\code {clear-display (M-C-l)}}{138} -\entry{\code {clear-screen (C-l)}}{138} -\entry{\code {complete (\key {TAB})}}{143} -\entry{\code {complete-command (M-!)}}{144} -\entry{\code {complete-filename (M-/)}}{143} -\entry{\code {complete-hostname (M-@)}}{144} -\entry{\code {complete-into-braces (M-{\tt \char 123})}}{144} -\entry{\code {complete-username (M-~)}}{144} -\entry{\code {complete-variable (M-$)}}{144} -\entry{\code {copy-backward-word ()}}{142} -\entry{\code {copy-forward-word ()}}{142} -\entry{\code {copy-region-as-kill ()}}{142} +\entry{\code {call-last-kbd-macro (C-x e)}}{146} +\entry{\code {capitalize-word (M-c)}}{142} +\entry{\code {character-search (C-])}}{146} +\entry{\code {character-search-backward (M-C-])}}{146} +\entry{\code {clear-display (M-C-l)}}{139} +\entry{\code {clear-screen (C-l)}}{139} +\entry{\code {complete (\key {TAB})}}{144} +\entry{\code {complete-command (M-!)}}{145} +\entry{\code {complete-filename (M-/)}}{144} +\entry{\code {complete-hostname (M-@)}}{145} +\entry{\code {complete-into-braces (M-{\tt \char 123})}}{145} +\entry{\code {complete-username (M-~)}}{145} +\entry{\code {complete-variable (M-$)}}{145} +\entry{\code {copy-backward-word ()}}{143} +\entry{\code {copy-forward-word ()}}{143} +\entry{\code {copy-region-as-kill ()}}{143} \initial {D} -\entry{\code {dabbrev-expand ()}}{144} -\entry{\code {delete-char (C-d)}}{140} -\entry{\code {delete-char-or-list ()}}{143} -\entry{\code {delete-horizontal-space ()}}{142} -\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{142} -\entry{\code {display-shell-version (C-x C-v)}}{147} -\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{145} -\entry{\code {downcase-word (M-l)}}{141} -\entry{\code {dump-functions ()}}{146} -\entry{\code {dump-macros ()}}{146} -\entry{\code {dump-variables ()}}{146} -\entry{\code {dynamic-complete-history (M-\key {TAB})}}{144} +\entry{\code {dabbrev-expand ()}}{145} +\entry{\code {delete-char (C-d)}}{141} +\entry{\code {delete-char-or-list ()}}{144} +\entry{\code {delete-horizontal-space ()}}{143} +\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{143} +\entry{\code {display-shell-version (C-x C-v)}}{148} +\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{146} +\entry{\code {downcase-word (M-l)}}{142} +\entry{\code {dump-functions ()}}{147} +\entry{\code {dump-macros ()}}{147} +\entry{\code {dump-variables ()}}{147} +\entry{\code {dynamic-complete-history (M-\key {TAB})}}{145} \initial {E} -\entry{\code {edit-and-execute-command (C-x C-e)}}{147} -\entry{\code {end-kbd-macro (C-x ))}}{144} -\entry{\code {\i {end-of-file} (usually C-d)}}{140} -\entry{\code {end-of-history (M->)}}{138} -\entry{\code {end-of-line (C-e)}}{137} -\entry{\code {exchange-point-and-mark (C-x C-x)}}{145} +\entry{\code {edit-and-execute-command (C-x C-e)}}{148} +\entry{\code {end-kbd-macro (C-x ))}}{145} +\entry{\code {\i {end-of-file} (usually C-d)}}{141} +\entry{\code {end-of-history (M->)}}{139} +\entry{\code {end-of-line (C-e)}}{138} +\entry{\code {exchange-point-and-mark (C-x C-x)}}{146} \initial {F} -\entry{\code {fetch-history ()}}{140} -\entry{\code {forward-backward-delete-char ()}}{140} -\entry{\code {forward-char (C-f)}}{137} -\entry{\code {forward-search-history (C-s)}}{138} -\entry{\code {forward-word (M-f)}}{137} +\entry{\code {fetch-history ()}}{141} +\entry{\code {forward-backward-delete-char ()}}{141} +\entry{\code {forward-char (C-f)}}{138} +\entry{\code {forward-search-history (C-s)}}{139} +\entry{\code {forward-word (M-f)}}{138} \initial {G} -\entry{\code {glob-complete-word (M-g)}}{146} -\entry{\code {glob-expand-word (C-x *)}}{146} -\entry{\code {glob-list-expansions (C-x g)}}{146} +\entry{\code {glob-complete-word (M-g)}}{147} +\entry{\code {glob-expand-word (C-x *)}}{147} +\entry{\code {glob-list-expansions (C-x g)}}{147} \initial {H} -\entry{\code {history-and-alias-expand-line ()}}{147} -\entry{\code {history-expand-line (M-^)}}{147} -\entry{\code {history-search-backward ()}}{139} -\entry{\code {history-search-forward ()}}{139} -\entry{\code {history-substring-search-backward ()}}{139} -\entry{\code {history-substring-search-forward ()}}{139} +\entry{\code {history-and-alias-expand-line ()}}{148} +\entry{\code {history-expand-line (M-^)}}{148} +\entry{\code {history-search-backward ()}}{140} +\entry{\code {history-search-forward ()}}{140} +\entry{\code {history-substring-search-backward ()}}{140} +\entry{\code {history-substring-search-forward ()}}{140} \initial {I} -\entry{\code {insert-comment (M-#)}}{146} -\entry{\code {insert-completions (M-*)}}{143} -\entry{\code {insert-last-argument (M-. or M-_)}}{147} +\entry{\code {insert-comment (M-#)}}{147} +\entry{\code {insert-completions (M-*)}}{144} +\entry{\code {insert-last-argument (M-. or M-_)}}{148} \initial {K} -\entry{\code {kill-line (C-k)}}{141} -\entry{\code {kill-region ()}}{142} -\entry{\code {kill-whole-line ()}}{141} -\entry{\code {kill-word (M-d)}}{141} +\entry{\code {kill-line (C-k)}}{142} +\entry{\code {kill-region ()}}{143} +\entry{\code {kill-whole-line ()}}{142} +\entry{\code {kill-word (M-d)}}{143} \initial {M} -\entry{\code {magic-space ()}}{147} -\entry{\code {menu-complete ()}}{143} -\entry{\code {menu-complete-backward ()}}{143} +\entry{\code {magic-space ()}}{148} +\entry{\code {menu-complete ()}}{144} +\entry{\code {menu-complete-backward ()}}{144} \initial {N} -\entry{\code {next-history (C-n)}}{138} -\entry{\code {next-screen-line ()}}{138} -\entry{\code {non-incremental-forward-search-history (M-n)}}{139} -\entry{\code {non-incremental-reverse-search-history (M-p)}}{138} +\entry{\code {next-history (C-n)}}{139} +\entry{\code {next-screen-line ()}}{139} +\entry{\code {non-incremental-forward-search-history (M-n)}}{140} +\entry{\code {non-incremental-reverse-search-history (M-p)}}{139} \initial {O} -\entry{\code {operate-and-get-next (C-o)}}{139} -\entry{\code {overwrite-mode ()}}{141} +\entry{\code {operate-and-get-next (C-o)}}{140} +\entry{\code {overwrite-mode ()}}{142} \initial {P} -\entry{\code {possible-command-completions (C-x !)}}{144} -\entry{\code {possible-completions (M-?)}}{143} -\entry{\code {possible-filename-completions (C-x /)}}{144} -\entry{\code {possible-hostname-completions (C-x @)}}{144} -\entry{\code {possible-username-completions (C-x ~)}}{144} -\entry{\code {possible-variable-completions (C-x $)}}{144} -\entry{\code {prefix-meta (\key {ESC})}}{145} -\entry{\code {previous-history (C-p)}}{138} -\entry{\code {previous-screen-line ()}}{137} -\entry{\code {print-last-kbd-macro ()}}{145} +\entry{\code {possible-command-completions (C-x !)}}{145} +\entry{\code {possible-completions (M-?)}}{144} +\entry{\code {possible-filename-completions (C-x /)}}{145} +\entry{\code {possible-hostname-completions (C-x @)}}{145} +\entry{\code {possible-username-completions (C-x ~)}}{145} +\entry{\code {possible-variable-completions (C-x $)}}{145} +\entry{\code {prefix-meta (\key {ESC})}}{146} +\entry{\code {previous-history (C-p)}}{139} +\entry{\code {previous-screen-line ()}}{138} +\entry{\code {print-last-kbd-macro ()}}{146} \initial {Q} -\entry{\code {quoted-insert (C-q or C-v)}}{140} +\entry{\code {quoted-insert (C-q or C-v)}}{141} \initial {R} -\entry{\code {re-read-init-file (C-x C-r)}}{145} -\entry{\code {redraw-current-line ()}}{138} -\entry{\code {reverse-search-history (C-r)}}{138} -\entry{\code {revert-line (M-r)}}{145} +\entry{\code {re-read-init-file (C-x C-r)}}{146} +\entry{\code {redraw-current-line ()}}{139} +\entry{\code {reverse-search-history (C-r)}}{139} +\entry{\code {revert-line (M-r)}}{146} \initial {S} -\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{140} -\entry{\code {set-mark (C-@)}}{145} -\entry{\code {shell-backward-kill-word ()}}{142} -\entry{\code {shell-backward-word (M-C-b)}}{137} -\entry{\code {shell-expand-line (M-C-e)}}{147} -\entry{\code {shell-forward-word (M-C-f)}}{137} -\entry{\code {shell-kill-word (M-C-d)}}{142} +\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{141} +\entry{\code {set-mark (C-@)}}{146} +\entry{\code {shell-backward-kill-word ()}}{143} +\entry{\code {shell-backward-word (M-C-b)}}{138} +\entry{\code {shell-expand-line (M-C-e)}}{148} +\entry{\code {shell-forward-word (M-C-f)}}{138} +\entry{\code {shell-kill-word (M-C-d)}}{143} \entry{\code {shell-transpose-words (M-C-t)}}{142} -\entry{\code {skip-csi-sequence ()}}{145} -\entry{\code {spell-correct-word (C-x s)}}{146} -\entry{\code {start-kbd-macro (C-x ()}}{144} +\entry{\code {skip-csi-sequence ()}}{146} +\entry{\code {spell-correct-word (C-x s)}}{147} +\entry{\code {start-kbd-macro (C-x ()}}{145} \initial {T} -\entry{\code {tilde-expand (M-&)}}{145} -\entry{\code {transpose-chars (C-t)}}{140} -\entry{\code {transpose-words (M-t)}}{141} +\entry{\code {tilde-expand (M-&)}}{146} +\entry{\code {transpose-chars (C-t)}}{141} +\entry{\code {transpose-words (M-t)}}{142} \initial {U} -\entry{\code {undo (C-_ or C-x C-u)}}{145} -\entry{\code {universal-argument ()}}{143} -\entry{\code {unix-filename-rubout ()}}{142} -\entry{\code {unix-line-discard (C-u)}}{141} -\entry{\code {unix-word-rubout (C-w)}}{142} -\entry{\code {upcase-word (M-u)}}{141} +\entry{\code {undo (C-_ or C-x C-u)}}{146} +\entry{\code {universal-argument ()}}{144} +\entry{\code {unix-filename-rubout ()}}{143} +\entry{\code {unix-line-discard (C-u)}}{142} +\entry{\code {unix-word-rubout (C-w)}}{143} +\entry{\code {upcase-word (M-u)}}{142} \initial {Y} -\entry{\code {yank (C-y)}}{142} -\entry{\code {yank-last-arg (M-. or M-_)}}{139} -\entry{\code {yank-nth-arg (M-C-y)}}{139} -\entry{\code {yank-pop (M-y)}}{142} +\entry{\code {yank (C-y)}}{143} +\entry{\code {yank-last-arg (M-. or M-_)}}{140} +\entry{\code {yank-nth-arg (M-C-y)}}{140} +\entry{\code {yank-pop (M-y)}}{143} diff --git a/doc/bashref.html b/doc/bashref.html index efab99e5..4b417cd1 100644 --- a/doc/bashref.html +++ b/doc/bashref.html @@ -4,9 +4,9 @@