diff options
42 files changed, 775 insertions, 1119 deletions
@@ -1,3 +1,27 @@ +This document details the changes between this version, bash-5.1-rc2, and +the previous version, bash-5.1-beta. + +1. Changes to Bash + +a. Process substitutions started from an interactive shell no longer have their + standard input implicitly redirected from /dev/null. + +b. Fixed an issue with setting the SIGINT trap handler in an interactive shell + when temporarily running $PROMPT_COMMAND non-interactively. + +2. Changes to Readline + +a. Terminals that are named "dumb" or unknown do not enable bracketed paste + by default. + +b. Ensure that disabling bracketed paste turns off highlighting the incremental + search string when the search is successful. + +3. New Features in Bash + +4. New Features in Readline + +------------------------------------------------------------------------------ This document details the changes between this version, bash-5.1-rc1, and the previous version, bash-5.1-beta. @@ -579,7 +603,7 @@ f. New active mark and face feature: when enabled, it will highlight the text g. Readline sets the mark in several additional commands. -h. Bracketed paste mode is enabled by default (for now). +h. Bracketed paste mode is enabled by default. i. Readline tries to take advantage of the more regular structure of UTF-8 characters to identify the beginning and end of characters when moving diff --git a/CWRU/changelog b/CWRU/changelog index 967d0cc4..edb74c8f 100644 --- a/CWRU/changelog +++ b/CWRU/changelog @@ -9052,4 +9052,104 @@ examples/loadables/asort.c 10/1 ---- -[bash-5.1-beta frozen] +[bash-5.1-rc1 frozen] + + 10/7 + ---- +subst.c + - process_substitute: try it without setting the stdin for a process + substitution started from an interactive shell to /dev/null. We will + have to see if this causes problems like those reported back in + 9/2019 by Grisha Levit. From a report by Hyunho Cho <mug896@gmail.com> + +lib/readline/terminal.c + - _rl_init_terminal_io: if the terminal is unknown, disable bracketed + paste on the assumption it can't handle the enable/disable escape + sequences + + 10/8 + ---- +lib/readline/terminal.c + - _rl_init_terminal_io: if the terminal name is "dumb", disable + bracketed paste mode. Suggested by + Andreas Schwab <schwab@linux-m68k.org> + + 10/13 + ----- +trap.[ch] + - set_trap_state: new function to allow other signal handlers to set + the internal state that trap_handler would set to note that the + shell received a trapped signal. Used by sigint_sighandler(). + +sig.c + - sigint_sighandler: call set_trap_state to set the pending trap state + for SIGINT if trap_handler is not called. Needed because + throw_to_top_level now checks whether a signal is pending before + running the trap (change from 4/2020) + +builtins/trap.def + - trap_builtin: if the shell is interactive (interactive_shell != 0) + but running something like PROMPT_COMMAND that sets + parse_and_execute_level > 0 but interactive == 0, make sure to set + the signal handler to the default interactive shell SIGINT handler + (sigint_sighandler) instead of the default non-interactive one. + Fixes bug reported by Daniel Farina <daniel@fdr.io> with a hint + from felix <felix@f-hauri.ch> + + 10/26 + ----- + +lib/readline/{readline.c,rlprivate.h} + - _rl_enable_active_region: new variable, mirrors value of + _rl_enable_bracketed_paste + - BRACKETED_PASTE_DEFAULT: new define, default initial value of + _rl_enable_bracketed_paste and _rl_enable_active_region + +lib/readline/bind.c + - hack_special_boolean_var: make sure that _rl_enable_active_region + is set appropriately when "enable-bracketed-paste" is modified + +lib/readline/isearch.c + - _rl_isearch_dispatch: make sure that we activate the mark on finding + the search string only if _rl_enable_active_region is non-zero, even + if bracketed paste is enabled + +lib/readline/search.c + - noninc_dosearch: make sure that we activate the mark on finding + the search string only if _rl_enable_active_region is non-zero, even + if bracketed paste is enabled + +lib/readline/kill.c + - rl_bracketed_paste_begin: make sure we activate the mark only if + _rl_enable_active_region is enabled + +lib/readline/isearch.c + - _rl_isearch_dispatch: the requirement for number of available unread + characters (bytes) to trigger the bracketed paste test is now + BRACK_PASTE_SLEN-1, like for non-incremental searches + + 10/29 + ----- + +doc/bash.1,lib/readline/rluser.texi + - enable-bracketed-paste: change to note the the current default is `On' + + 10/30 + ----- +lib/glob/glob.c + - wdequote_pathname: if wcsrtombs fails, make sure to check whether it + leaves wpathname set to a non-NULL value before checking whether or + not *wpathname is a null character (indicating an incomplete + conversion). Fixes https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=972286 + with an assist from Bernhard Übelacker <bernhardu@mailbox.org> + + 11/1 + ---- +lib/readline/isearch.c + - _rl_isearch_dispatch: when checking whether the current character is + one of the isearch `opcodes', only check the multibyte character + member of CXT if we're currently running in a multibyte locale. Don't + assume that other parts of the code will set mb[0] = c and mb[1] = 0. + Report from Detlef Vollmann <dv@vollmann.ch> + +[bash-5.1-rc2 frozen] @@ -171,7 +171,7 @@ f. New active mark and face feature: when enabled, it will highlight the text g. Readline sets the mark in several additional commands. -h. Bracketed paste mode is enabled by default (for now). +h. Bracketed paste mode is enabled by default. i. Readline tries to take advantage of the more regular structure of UTF-8 characters to identify the beginning and end of characters when moving diff --git a/arrayfunc.c b/arrayfunc.c index b254c85a..2f8a3848 100644 --- a/arrayfunc.c +++ b/arrayfunc.c @@ -1191,7 +1191,7 @@ array_expand_index (var, s, len, flags) exp = (char *)xmalloc (len); strncpy (exp, s, len - 1); exp[len - 1] = '\0'; -#if 0 /* TAG: maybe bash-5.1 */ +#if 0 /* TAG: maybe bash-5.2 */ if ((flags & AV_NOEXPAND) == 0) t = expand_arith_string (exp, Q_DOUBLE_QUOTES|Q_ARITH|Q_ARRAYSUB); /* XXX - Q_ARRAYSUB for future use */ else @@ -268,7 +268,7 @@ static int bash_vi_complete PARAMS((int, int)); #endif static int emacs_edit_and_execute_command PARAMS((int, int)); -/* Non-zero once initalize_readline () has been called. */ +/* Non-zero once initialize_readline () has been called. */ int bash_readline_initialized = 0; /* If non-zero, we do hostname completion, breaking words at `@' and diff --git a/builtins/evalstring.c b/builtins/evalstring.c index 3a6801dd..18928a17 100644 --- a/builtins/evalstring.c +++ b/builtins/evalstring.c @@ -88,6 +88,11 @@ int should_suppress_fork (command) COMMAND *command; { +#if 0 /* TAG: bash-5.2 */ + int subshell; + + subshell = subshell_environment & SUBSHELL_PROCSUB; /* salt to taste */ +#endif return (startup_state == 2 && parse_and_execute_level == 1 && running_trap == 0 && *bash_input.location.string == '\0' && @@ -96,7 +101,11 @@ should_suppress_fork (command) signal_is_trapped (EXIT_TRAP) == 0 && signal_is_trapped (ERROR_TRAP) == 0 && any_signals_trapped () < 0 && +#if 0 /* TAG: bash-5.2 */ + (subshell || (command->redirects == 0 && command->value.Simple->redirects == 0)) && +#else command->redirects == 0 && command->value.Simple->redirects == 0 && +#endif ((command->flags & CMD_TIME_PIPELINE) == 0) && ((command->flags & CMD_INVERT_RETURN) == 0)); } diff --git a/builtins/trap.def b/builtins/trap.def index 4fa39aef..daeec9ea 100644 --- a/builtins/trap.def +++ b/builtins/trap.def @@ -211,7 +211,7 @@ trap_builtin (list) if (interactive) set_signal_handler (SIGINT, sigint_sighandler); /* special cases for interactive == 0 */ - else if (interactive_shell && (sourcelevel||running_trap)) + else if (interactive_shell && (sourcelevel||running_trap||parse_and_execute_level)) set_signal_handler (SIGINT, sigint_sighandler); else set_signal_handler (SIGINT, termsig_sighandler); @@ -1,7 +1,7 @@ #! /bin/sh # From configure.ac for Bash 5.1, version 5.022. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for bash 5.1-rc1. +# Generated by GNU Autoconf 2.69 for bash 5.1-rc2. # # Report bugs to <bug-bash@gnu.org>. # @@ -581,8 +581,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='bash' PACKAGE_TARNAME='bash' -PACKAGE_VERSION='5.1-rc1' -PACKAGE_STRING='bash 5.1-rc1' +PACKAGE_VERSION='5.1-rc2' +PACKAGE_STRING='bash 5.1-rc2' PACKAGE_BUGREPORT='bug-bash@gnu.org' PACKAGE_URL='' @@ -1427,7 +1427,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures bash 5.1-rc1 to adapt to many kinds of systems. +\`configure' configures bash 5.1-rc2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1492,7 +1492,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bash 5.1-rc1:";; + short | recursive ) echo "Configuration of bash 5.1-rc2:";; esac cat <<\_ACEOF @@ -1693,7 +1693,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bash configure 5.1-rc1 +bash configure 5.1-rc2 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2402,7 +2402,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by bash $as_me 5.1-rc1, which was +It was created by bash $as_me 5.1-rc2, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2800,7 +2800,7 @@ ac_config_headers="$ac_config_headers config.h" BASHVERS=5.1 -RELSTATUS=rc1 +RELSTATUS=rc2 case "$RELSTATUS" in alp*|bet*|dev*|rc*|releng*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; @@ -21057,7 +21057,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by bash $as_me 5.1-rc1, which was +This file was extended by bash $as_me 5.1-rc2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -21123,7 +21123,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -bash config.status 5.1-rc1 +bash config.status 5.1-rc2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index fd3c731c..5b2fe4d7 100644 --- a/configure.ac +++ b/configure.ac @@ -24,7 +24,7 @@ dnl Process this file with autoconf to produce a configure script. AC_REVISION([for Bash 5.1, version 5.022])dnl define(bashvers, 5.1) -define(relstatus, rc1) +define(relstatus, rc2) AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) @@ -3245,7 +3245,7 @@ RREEAADDLLIINNEE escapes to begin and end sequences of non-printing characters, which can be used to embed a terminal control sequence into the mode string. - eennaabbllee--bbrraacckkeetteedd--ppaassttee ((OOffff)) + eennaabbllee--bbrraacckkeetteedd--ppaassttee ((OOnn)) When set to OOnn, readline will configure the terminal in a way that will enable it to insert each paste into the editing buffer as a single string of characters, instead of treating each char- @@ -6401,4 +6401,4 @@ BBUUGGSS -GNU Bash 5.1 2020 September 23 BASH(1) +GNU Bash 5.1 2020 October 29 BASH(1) @@ -10,7 +10,7 @@ .\" bash_builtins, strip all but Built-Ins section .if \n(zZ=1 .ig zZ .if \n(zY=1 .ig zY -.TH BASH 1 "2020 September 23" "GNU Bash 5.1" +.TH BASH 1 "2020 October 29" "GNU Bash 5.1" .\" .\" There's some problem with having a `@' .\" in a tagged paragraph with the BSD man macros. @@ -5838,7 +5838,7 @@ Use the \e1 and \e2 escapes to begin and end sequences of non-printing characters, which can be used to embed a terminal control sequence into the mode string. .TP -.B enable\-bracketed\-paste (Off) +.B enable\-bracketed\-paste (On) When set to \fBOn\fP, readline will configure the terminal in a way that will enable it to insert each paste into the editing buffer as a single string of characters, instead of treating each character as if diff --git a/doc/bash.html b/doc/bash.html index 95075682..7b90c48f 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -3,7 +3,7 @@ </HEAD> <BODY><TABLE WIDTH=100%> <TR> -<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2020 September 23<TH ALIGN=RIGHT width=33%>BASH(1) +<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2020 October 29<TH ALIGN=RIGHT width=33%>BASH(1) </TR> </TABLE> <BR><A HREF="#index">Index</A> @@ -7445,7 +7445,7 @@ backslash escape sequences is available. Use the \1 and \2 escapes to begin and end sequences of non-printing characters, which can be used to embed a terminal control sequence into the mode string. -<DT><B>enable-bracketed-paste (Off)</B> +<DT><B>enable-bracketed-paste (On)</B> <DD> When set to <B>On</B>, readline will configure the terminal in a way @@ -14253,7 +14253,7 @@ There may be only one active coprocess at a time. <HR> <TABLE WIDTH=100%> <TR> -<TH ALIGN=LEFT width=33%>GNU Bash 5.1<TH ALIGN=CENTER width=33%>2020 September 23<TH ALIGN=RIGHT width=33%>BASH(1) +<TH ALIGN=LEFT width=33%>GNU Bash 5.1<TH ALIGN=CENTER width=33%>2020 October 29<TH ALIGN=RIGHT width=33%>BASH(1) </TR> </TABLE> <HR> @@ -14360,6 +14360,6 @@ There may be only one active coprocess at a time. </DL> <HR> This document was created by man2html from bash.1.<BR> -Time: 01 October 2020 14:49:34 EDT +Time: 29 October 2020 16:21:32 EDT </BODY> </HTML> diff --git a/doc/bash.info b/doc/bash.info index 2a0fa273..69b1dd2c 100644 --- a/doc/bash.info +++ b/doc/bash.info @@ -2,12 +2,12 @@ This is bash.info, produced by makeinfo version 6.7 from bashref.texi. This text is a brief description of the features that are present in the -Bash shell (version 5.1, 23 September 2020). +Bash shell (version 5.1, 29 October 2020). - This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash + This is Edition 5.1, last updated 29 October 2020, of 'The GNU Bash Reference Manual', for 'Bash', Version 5.1. - Copyright (C) 1988-2018 Free Software Foundation, Inc. + Copyright (C) 1988-2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, @@ -27,10 +27,10 @@ Bash Features ************* This text is a brief description of the features that are present in the -Bash shell (version 5.1, 23 September 2020). The Bash home page is +Bash shell (version 5.1, 29 October 2020). The Bash home page is <http://www.gnu.org/software/bash/>. - This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash + This is Edition 5.1, last updated 29 October 2020, of 'The GNU Bash Reference Manual', for 'Bash', Version 5.1. Bash contains features that appear in other popular shells, and some @@ -7748,7 +7748,7 @@ Variable Settings buffer as a single string of characters, instead of treating each character as if it had been read from the keyboard. This can prevent pasted characters from being interpreted as - editing commands. The default is 'off'. + editing commands. The default is 'On'. 'enable-keypad' When set to 'on', Readline will try to enable the application @@ -11980,137 +11980,137 @@ D.5 Concept Index Tag Table: -Node: Top899 -Node: Introduction2821 -Node: What is Bash?3037 -Node: What is a shell?4151 -Node: Definitions6689 -Node: Basic Shell Features9640 -Node: Shell Syntax10859 -Node: Shell Operation11885 -Node: Quoting13178 -Node: Escape Character14478 -Node: Single Quotes14963 -Node: Double Quotes15311 -Node: ANSI-C Quoting16589 -Node: Locale Translation17848 -Node: Comments19001 -Node: Shell Commands19619 -Node: Reserved Words20557 -Node: Simple Commands21313 -Node: Pipelines21967 -Node: Lists24899 -Node: Compound Commands26690 -Node: Looping Constructs27702 -Node: Conditional Constructs30197 -Node: Command Grouping41768 -Node: Coprocesses43247 -Node: GNU Parallel45150 -Node: Shell Functions49451 -Node: Shell Parameters56658 -Node: Positional Parameters61071 -Node: Special Parameters61971 -Node: Shell Expansions65195 -Node: Brace Expansion67318 -Node: Tilde Expansion70041 -Node: Shell Parameter Expansion72658 -Node: Command Substitution87787 -Node: Arithmetic Expansion89142 -Node: Process Substitution90074 -Node: Word Splitting91194 -Node: Filename Expansion93138 -Node: Pattern Matching95687 -Node: Quote Removal99673 -Node: Redirections99968 -Node: Executing Commands109538 -Node: Simple Command Expansion110208 -Node: Command Search and Execution112162 -Node: Command Execution Environment114538 -Node: Environment117522 -Node: Exit Status119181 -Node: Signals120851 -Node: Shell Scripts122818 -Node: Shell Builtin Commands125830 -Node: Bourne Shell Builtins127868 -Node: Bash Builtins148797 -Node: Modifying Shell Behavior178732 -Node: The Set Builtin179077 -Node: The Shopt Builtin189490 -Node: Special Builtins204400 -Node: Shell Variables205379 -Node: Bourne Shell Variables205816 -Node: Bash Variables207920 -Node: Bash Features240554 -Node: Invoking Bash241567 -Node: Bash Startup Files247580 -Node: Interactive Shells252683 -Node: What is an Interactive Shell?253093 -Node: Is this Shell Interactive?253742 -Node: Interactive Shell Behavior254557 -Node: Bash Conditional Expressions258071 -Node: Shell Arithmetic262648 -Node: Aliases265588 -Node: Arrays268208 -Node: The Directory Stack274217 -Node: Directory Stack Builtins275001 -Node: Controlling the Prompt277969 -Node: The Restricted Shell280919 -Node: Bash POSIX Mode283513 -Node: Shell Compatibility Mode294549 -Node: Job Control301205 -Node: Job Control Basics301665 -Node: Job Control Builtins306661 -Node: Job Control Variables312061 -Node: Command Line Editing313217 -Node: Introduction and Notation314888 -Node: Readline Interaction316511 -Node: Readline Bare Essentials317702 -Node: Readline Movement Commands319485 -Node: Readline Killing Commands320445 -Node: Readline Arguments322363 -Node: Searching323407 -Node: Readline Init File325593 -Node: Readline Init File Syntax326852 -Node: Conditional Init Constructs347391 -Node: Sample Init File351587 -Node: Bindable Readline Commands354711 -Node: Commands For Moving355915 -Node: Commands For History357966 -Node: Commands For Text362759 -Node: Commands For Killing366408 -Node: Numeric Arguments369441 -Node: Commands For Completion370580 -Node: Keyboard Macros374771 -Node: Miscellaneous Commands375458 -Node: Readline vi Mode381142 -Node: Programmable Completion382049 -Node: Programmable Completion Builtins389829 -Node: A Programmable Completion Example400524 -Node: Using History Interactively405771 -Node: Bash History Facilities406455 -Node: Bash History Builtins409460 -Node: History Interaction414189 -Node: Event Designators417809 -Node: Word Designators419163 -Node: Modifiers420923 -Node: Installing Bash422734 -Node: Basic Installation423871 -Node: Compilers and Options427129 -Node: Compiling For Multiple Architectures427870 -Node: Installation Names429563 -Node: Specifying the System Type430381 -Node: Sharing Defaults431097 -Node: Operation Controls431770 -Node: Optional Features432728 -Node: Reporting Bugs443246 -Node: Major Differences From The Bourne Shell444440 -Node: GNU Free Documentation License461292 -Node: Indexes486469 -Node: Builtin Index486923 -Node: Reserved Word Index493750 -Node: Variable Index496198 -Node: Function Index512095 -Node: Concept Index525605 +Node: Top895 +Node: Introduction2813 +Node: What is Bash?3029 +Node: What is a shell?4143 +Node: Definitions6681 +Node: Basic Shell Features9632 +Node: Shell Syntax10851 +Node: Shell Operation11877 +Node: Quoting13170 +Node: Escape Character14470 +Node: Single Quotes14955 +Node: Double Quotes15303 +Node: ANSI-C Quoting16581 +Node: Locale Translation17840 +Node: Comments18993 +Node: Shell Commands19611 +Node: Reserved Words20549 +Node: Simple Commands21305 +Node: Pipelines21959 +Node: Lists24891 +Node: Compound Commands26682 +Node: Looping Constructs27694 +Node: Conditional Constructs30189 +Node: Command Grouping41760 +Node: Coprocesses43239 +Node: GNU Parallel45142 +Node: Shell Functions49443 +Node: Shell Parameters56650 +Node: Positional Parameters61063 +Node: Special Parameters61963 +Node: Shell Expansions65187 +Node: Brace Expansion67310 +Node: Tilde Expansion70033 +Node: Shell Parameter Expansion72650 +Node: Command Substitution87779 +Node: Arithmetic Expansion89134 +Node: Process Substitution90066 +Node: Word Splitting91186 +Node: Filename Expansion93130 +Node: Pattern Matching95679 +Node: Quote Removal99665 +Node: Redirections99960 +Node: Executing Commands109530 +Node: Simple Command Expansion110200 +Node: Command Search and Execution112154 +Node: Command Execution Environment114530 +Node: Environment117514 +Node: Exit Status119173 +Node: Signals120843 +Node: Shell Scripts122810 +Node: Shell Builtin Commands125822 +Node: Bourne Shell Builtins127860 +Node: Bash Builtins148789 +Node: Modifying Shell Behavior178724 +Node: The Set Builtin179069 +Node: The Shopt Builtin189482 +Node: Special Builtins204392 +Node: Shell Variables205371 +Node: Bourne Shell Variables205808 +Node: Bash Variables207912 +Node: Bash Features240546 +Node: Invoking Bash241559 +Node: Bash Startup Files247572 +Node: Interactive Shells252675 +Node: What is an Interactive Shell?253085 +Node: Is this Shell Interactive?253734 +Node: Interactive Shell Behavior254549 +Node: Bash Conditional Expressions258063 +Node: Shell Arithmetic262640 +Node: Aliases265580 +Node: Arrays268200 +Node: The Directory Stack274209 +Node: Directory Stack Builtins274993 +Node: Controlling the Prompt277961 +Node: The Restricted Shell280911 +Node: Bash POSIX Mode283505 +Node: Shell Compatibility Mode294541 +Node: Job Control301197 +Node: Job Control Basics301657 +Node: Job Control Builtins306653 +Node: Job Control Variables312053 +Node: Command Line Editing313209 +Node: Introduction and Notation314880 +Node: Readline Interaction316503 +Node: Readline Bare Essentials317694 +Node: Readline Movement Commands319477 +Node: Readline Killing Commands320437 +Node: Readline Arguments322355 +Node: Searching323399 +Node: Readline Init File325585 +Node: Readline Init File Syntax326844 +Node: Conditional Init Constructs347382 +Node: Sample Init File351578 +Node: Bindable Readline Commands354702 +Node: Commands For Moving355906 +Node: Commands For History357957 +Node: Commands For Text362750 +Node: Commands For Killing366399 +Node: Numeric Arguments369432 +Node: Commands For Completion370571 +Node: Keyboard Macros374762 +Node: Miscellaneous Commands375449 +Node: Readline vi Mode381133 +Node: Programmable Completion382040 +Node: Programmable Completion Builtins389820 +Node: A Programmable Completion Example400515 +Node: Using History Interactively405762 +Node: Bash History Facilities406446 +Node: Bash History Builtins409451 +Node: History Interaction414180 +Node: Event Designators417800 +Node: Word Designators419154 +Node: Modifiers420914 +Node: Installing Bash422725 +Node: Basic Installation423862 +Node: Compilers and Options427120 +Node: Compiling For Multiple Architectures427861 +Node: Installation Names429554 +Node: Specifying the System Type430372 +Node: Sharing Defaults431088 +Node: Operation Controls431761 +Node: Optional Features432719 +Node: Reporting Bugs443237 +Node: Major Differences From The Bourne Shell444431 +Node: GNU Free Documentation License461283 +Node: Indexes486460 +Node: Builtin Index486914 +Node: Reserved Word Index493741 +Node: Variable Index496189 +Node: Function Index512086 +Node: Concept Index525596 End Tag Table diff --git a/doc/bash.pdf b/doc/bash.pdf Binary files differindex b146a36c..704044ce 100644 --- a/doc/bash.pdf +++ b/doc/bash.pdf diff --git a/doc/bash.ps b/doc/bash.ps index 0a4affcb..5a4146ad 100644 --- a/doc/bash.ps +++ b/doc/bash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 -%%CreationDate: Thu Oct 1 14:49:24 2020 +%%CreationDate: Thu Oct 29 16:18:05 2020 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic @@ -340,7 +340,7 @@ F .475(xtended deb)-.15 F(ug-)-.2 E (~/.bashr)3.598 E(c)-.37 E F0 1.598(if the)4.408 F(shell is interacti) 144 710.4 Q .3 -.15(ve \()-.25 H(see).15 E F4(INV)2.5 E(OCA)-.405 E (TION)-.855 E F0(belo)2.25 E(w\).)-.25 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(1)190.115 E 0 Cg EP +(2020 October 29)141.235 E(1)195.395 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP @@ -463,8 +463,8 @@ F2(~/.bashr)108 691.2 Q(c)-.37 E F0 2.535(,i)C 2.535(ft)-2.535 G .035 Q F1(bash)5.306 E F0 2.806(is started non-interacti)5.306 F -.15(ve)-.25 G(ly).15 E 5.306(,t)-.65 G 5.306(or)-5.306 G 2.806 (un a shell script, for e)-5.306 F 2.805(xample, it looks for the v)-.15 -F(ariable)-.25 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(2) -190.115 E 0 Cg EP +F(ariable)-.25 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(2) +195.395 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP @@ -598,8 +598,8 @@ F .388(wed by)-.25 F F2(blank)2.888 E F0 .388(-separated w)B .388 (ords and)-.1 F .815(redirections, and terminated by a)108 722.4 R F4 (contr)3.315 E .815(ol oper)-.45 F(ator)-.15 E F0 5.815(.T)C .815 (he \214rst w)-5.815 F .816(ord speci\214es the command to be e)-.1 F --.15(xe)-.15 G(cuted,).15 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(3)190.115 E 0 Cg EP +-.15(xe)-.15 G(cuted,).15 E(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(3)195.395 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP @@ -719,8 +719,8 @@ G(cuted if, and only if,).15 E F1(command1)2.7 E F0(returns an e)2.5 E (returns a non-zero e)2.935 F .435(xit status.)-.15 F .435 (The return status of AND)5.435 F(and OR lists is the e)108 722.4 Q (xit status of the last command e)-.15 E -.15(xe)-.15 G -(cuted in the list.).15 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(4)190.115 E 0 Cg EP +(cuted in the list.).15 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 +E(4)195.395 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP @@ -853,8 +853,8 @@ E F0 1.13(indices. The element of)3.38 F F3 -.27(BA)3.63 G(SH_REMA).27 E F0(th parenthesized sube)A(xpression.)-.15 E .785 (Expressions may be combined using the follo)144 697.2 R .786 (wing operators, listed in decreasing order of prece-)-.25 F(dence:)144 -709.2 Q(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(5)190.115 E 0 -Cg EP +709.2 Q(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(5)195.395 E 0 Cg +EP %%Page: 6 6 %%BeginPageSetup BP @@ -1006,8 +1006,8 @@ F1(elif)2.978 E F2(list)2.978 E F0 1.088(is e)144 712.8 R -.15(xe)-.15 G 1.239(command completes.)144 724.8 R 1.239(Otherwise, the)6.239 F F1 (else)3.739 E F2(list)3.739 E F0 1.239(is e)3.739 F -.15(xe)-.15 G 1.239 (cuted, if present.).15 F 1.24(The e)6.239 F 1.24(xit status is the e) --.15 F(xit)-.15 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(6) -190.115 E 0 Cg EP +-.15 F(xit)-.15 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(6) +195.395 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP @@ -1146,7 +1146,7 @@ F(ord)-.1 E .604 1.337(option enabled does not allo)3.837 F 3.837(wc)-.25 G 3.836 (omments. The)-3.837 F F1(interacti)3.836 E -.1(ve)-.1 G(_comments).1 E F0 1.336(option is on by def)3.836 F 1.336(ault in)-.1 F(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(7)190.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(7)195.395 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP @@ -1249,7 +1249,7 @@ Q F4(\\)144 607.2 Q F2(nnn)A F0(the eight-bit character whose v)180 (igits\))-2.5 E F4(\\c)144 703.2 Q F2(x)A F0 2.5(ac)180 703.2 S(ontrol-) -2.5 E F2(x)A F0(character)2.5 E(The e)108 720 Q(xpanded result is sing\ le-quoted, as if the dollar sign had not been present.)-.15 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(8)190.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(8)195.395 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP @@ -1398,8 +1398,8 @@ F0 5.144(.I)C 2.644(ft)-5.144 G .144(he control v)-2.644 F .144 -.15(xe)-.15 G(-).15 E .443(cuted with the name of a nameref v)108 693.6 R .442(ariable as an ar)-.25 F .442(gument, the v)-.18 F .442 (ariable referenced by the nameref v)-.25 F(ariable)-.25 E -(will be unset.)108 705.6 Q(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(9)190.115 E 0 Cg EP +(will be unset.)108 705.6 Q(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(9)195.395 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP @@ -1530,7 +1530,7 @@ F1(shopt)2.616 E F0 -.2(bu)2.616 G .116(iltin command \(see).2 F F3 .116 ch shell option in the list will be enabled before reading an)3.141 F 3.142(ys)-.15 G .642(tartup \214les.)-3.142 F(This v)144 715.2 Q (ariable is read-only)-.25 E(.)-.65 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(10)185.115 E 0 Cg EP +(2020 October 29)141.235 E(10)190.395 E 0 Cg EP %%Page: 11 11 %%BeginPageSetup BP @@ -1653,7 +1653,7 @@ E F0 .005(binary operator to the)2.506 F F1([[)2.505 E F0 .005 -.15 F(xpression.)-.15 E 4.331(The element with inde)144 720 R(x)-.15 E F4(n)6.831 E F0 4.331(is the portion of the string matching the)6.831 F F4(n)6.83 E F0 4.33(th parenthesized)B(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(11)185.115 E 0 Cg EP +(2020 October 29)141.235 E(11)190.395 E 0 Cg EP %%Page: 12 12 %%BeginPageSetup BP @@ -1766,7 +1766,7 @@ F0(belo)2.5 E(w\).)-.25 E F1(COPR)108 702 Q(OC)-.3 E F0 .168(An array v) (w\) created to hold the \214le descriptors for output from and input) -.25 F(to an unnamed coprocess \(see)144 726 Q F1(Copr)2.5 E(ocesses) -.18 E F0(abo)2.5 E -.15(ve)-.15 G(\).).15 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(12)185.115 E 0 Cg EP +(2020 October 29)141.235 E(12)190.395 E 0 Cg EP %%Page: 13 13 %%BeginPageSetup BP @@ -1875,7 +1875,7 @@ F -.15(xe)-.15 G .899(cuting, in).15 F(the standard GNU)144 678 Q F3 (belo)2.794 E .294(w\) created to hold the te)-.25 F .293 (xt read by the)-.15 F F1(map\214le)2.793 E F0 -.2(bu)2.793 G .293 (iltin when no).2 F -.25(va)144 714 S(riable name is supplied.).25 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(13)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(13)190.395 E 0 Cg EP %%Page: 14 14 %%BeginPageSetup BP @@ -1981,7 +1981,7 @@ E(.)-.65 E .993(The follo)108 724.8 R .993(wing v)-.25 F .994 (ariables are used by the shell.)-.25 F .994(In some cases,)5.994 F F1 (bash)3.494 E F0 .994(assigns a def)3.494 F .994(ault v)-.1 F .994 (alue to a v)-.25 F(ariable;)-.25 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(14)185.115 E 0 Cg EP +(2020 October 29)141.235 E(14)190.395 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP @@ -2103,8 +2103,8 @@ R 1.67 -.15(ve t)-.2 H 1.37(he e).15 F -.15(xe)-.15 G 1.37 (cutable bit set, b).15 F 1.37(ut are not e)-.2 F -.15(xe)-.15 G 1.37 (cutable \214les.).15 F 1.37(The pattern matching)6.37 F (honors the setting of the)144 712.8 Q F1(extglob)2.5 E F0 -(shell option.)2.5 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(15)185.115 E 0 Cg EP +(shell option.)2.5 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(15) +190.395 E 0 Cg EP %%Page: 16 16 %%BeginPageSetup BP @@ -2225,7 +2225,7 @@ R F1(history)3.173 E F0 -.2(bu)3.173 G 3.173(iltin. If).2 F .673(this v) 2.644(ym)-.15 G .144(ay be preserv)-2.644 F .144 (ed across shell sessions.)-.15 F(This)5.144 E(uses the history comment\ character to distinguish timestamps from other history lines.)144 696 Q -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(16)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(16)190.395 E 0 Cg EP %%Page: 17 17 %%BeginPageSetup BP @@ -2333,7 +2333,7 @@ l to zero, the shell disables mail checking.)-.25 E F1(MAILP)108 684 Q with a `?'.)-2.62 F(When used in the te)144 720 Q(xt of the message,) -.15 E F1($_)2.5 E F0 -.15(ex)2.5 G (pands to the name of the current mail\214le.).15 E(Example:)5 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(17)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(17)190.395 E 0 Cg EP %%Page: 18 18 %%BeginPageSetup BP @@ -2452,8 +2452,8 @@ Q F0(The CPU percentage, computed as \(%U + %S\) / %R.)194 678 Q .87 (decimal point may be speci\214ed; v)144 718.8 R .538(alues of)-.25 F F4 (p)3.038 E F0 .537(greater than 3 are changed to 3.)3.037 F(If)5.537 E F4(p)3.037 E F0 .537(is not speci\214ed,)3.037 F(the v)144 730.8 Q -(alue 3 is used.)-.25 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 -E(18)185.115 E 0 Cg EP +(alue 3 is used.)-.25 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E +(18)190.395 E 0 Cg EP %%Page: 19 19 %%BeginPageSetup BP @@ -2588,7 +2588,7 @@ F 2.529(wu)-.25 G(nder)-2.529 E F3(EXP)2.529 E(ANSION)-.666 E/F4 9 -.15(xe)-.15 G 3.495(da).15 G .995(rrays, if the optional brack)-3.495 F .996(ets and subscript are supplied, that inde)-.1 F 3.496(xi)-.15 G 3.496(sa)-3.496 G .996(ssigned to;)-3.496 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(19)185.115 E 0 Cg EP +(2020 October 29)141.235 E(19)190.395 E 0 Cg EP %%Page: 20 20 %%BeginPageSetup BP @@ -2747,8 +2747,8 @@ F .418(xpansion; tilde e)-.15 F .419(xpansion, parameter and v)-.15 F .419(ariable e)-.25 F .419(xpansion, arithmetic)-.15 F -.15(ex)108 712.8 S .196(pansion, and command substitution \(done in a left-to-right f).15 F .195(ashion\); w)-.1 F .195(ord splitting; and pathname e)-.1 F(xpan-) --.15 E(sion.)108 724.8 Q(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 -E(20)185.115 E 0 Cg EP +-.15 E(sion.)108 724.8 Q(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E +(20)190.395 E 0 Cg EP %%Page: 21 21 %%BeginPageSetup BP @@ -2883,7 +2883,7 @@ E(w_e)-.25 E(x}})-.15 E .618(Brace e)108 588 R .618 (.)A F0(If)6.735 E F3(HOME)4.735 E F0 2.236 (is unset, the home directory of the user e)4.486 F -.15(xe)-.15 G 2.236 (cuting the shell is substituted instead.).15 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(21)185.115 E 0 Cg EP +(2020 October 29)141.235 E(21)190.395 E 0 Cg EP %%Page: 22 22 %%BeginPageSetup BP @@ -3015,8 +3015,8 @@ F F3(pa-)4.562 E -.15(ra)144 664.8 S(meter).15 E F0 5.742(.T).73 G .742 written to the standard error and the shell, if it is not in-)3.283 F (teracti)144 724.8 Q -.15(ve)-.25 G 2.5(,e).15 G 2.5(xits. Otherwise,) -2.65 F(the v)2.5 E(alue of)-.25 E F3(par)2.5 E(ameter)-.15 E F0 -(is substituted.)2.5 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(22)185.115 E 0 Cg EP +(is substituted.)2.5 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E +(22)190.395 E 0 Cg EP %%Page: 23 23 %%BeginPageSetup BP @@ -3138,7 +3138,7 @@ H(pands to a separate w).15 E(ord.)-.1 E(${)108 614.4 Q F2(#)A F1(par)A 144 686.4 Q 2.5(,a)-.65 G(nd an inde)-2.5 E 2.5(xo)-.15 G 2.5<66ad>-2.5 G 2.5(1r)-2.5 G(eferences the last element.)-2.5 E(${)108 703.2 Q F1 (par)A(ameter)-.15 E F2(#)A F1(wor)A(d)-.37 E F0(})A(GNU Bash 5.1)72 768 -Q(2020 September 23)135.955 E(23)185.115 E 0 Cg EP +Q(2020 October 29)141.235 E(23)190.395 E 0 Cg EP %%Page: 24 24 %%BeginPageSetup BP @@ -3286,7 +3286,7 @@ F F1(par)3.36 E(ameter)-.15 E F0 .154(or information about)144 715.2 R F1(par)2.654 E(ameter)-.15 E F0 .153(itself, depending on the v)2.654 F .153(alue of)-.25 F F1(oper)2.653 E(ator)-.15 E F0 5.153(.E)C(ach)-5.153 E F1(oper)2.653 E(ator)-.15 E F0 .153(is a sin-)2.653 F(gle letter:)144 -727.2 Q(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(24)185.115 E 0 +727.2 Q(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(24)190.395 E 0 Cg EP %%Page: 25 25 %%BeginPageSetup @@ -3390,7 +3390,7 @@ F2 -.2(ex)2.665 G(pr).2 E(ession)-.37 E F0 .165 (result is treated as the arithmetic e)2.548 F .048(xpression to be e) -.15 F -.25(va)-.25 G 2.549(luated. Arithmetic).25 F -.15(ex)2.549 G(-) .15 E(pansions may be nested.)108 720 Q(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(25)185.115 E 0 Cg EP +(2020 October 29)141.235 E(25)190.395 E 0 Cg EP %%Page: 26 26 %%BeginPageSetup BP @@ -3547,7 +3547,7 @@ F0 .827(is set and not null.)3.077 F(Ho)5.827 E(we)-.25 E -.15(ve)-.25 G (shell option, so all other \214lenames be)3.182 F .682(ginning with a) -.15 F F4 -.63(``)3.182 G -.55(.').63 G(')-.08 E F0 .682(will match.) 5.682 F 2.283 -.8(To g)5.683 H .683(et the old).8 F(GNU Bash 5.1)72 768 -Q(2020 September 23)135.955 E(26)185.115 E 0 Cg EP +Q(2020 October 29)141.235 E(26)190.395 E 0 Cg EP %%Page: 27 27 %%BeginPageSetup BP @@ -3658,8 +3658,8 @@ R .969(xtended pattern matching ag)-.15 F .969 (alternations and the strings contain multiple matches.)108 718.8 R .091 (Using separate matches ag)5.091 F .091(ainst shorter strings, or us-) -.05 F(ing arrays of strings instead of a single long string, may be f) -108 730.8 Q(aster)-.1 E(.)-.55 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(27)185.115 E 0 Cg EP +108 730.8 Q(aster)-.1 E(.)-.55 E(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(27)190.395 E 0 Cg EP %%Page: 28 28 %%BeginPageSetup BP @@ -3760,7 +3760,7 @@ E F3(fd)A F0(If)180 532.8 Q F3(fd)2.5 E F0(is a v)2.5 E(alid inte)-.25 E an 9 should be used with care, as the)108 710.4 R 2.546(ym)-.15 G .046 (ay con\215ict with \214le de-)-2.546 F (scriptors the shell uses internally)108 722.4 Q(.)-.65 E(GNU Bash 5.1) -72 768 Q(2020 September 23)135.955 E(28)185.115 E 0 Cg EP +72 768 Q(2020 October 29)141.235 E(28)190.395 E 0 Cg EP %%Page: 29 29 %%BeginPageSetup BP @@ -3847,7 +3847,7 @@ l a line containing only)108 681.6 R F2(delimiter)108.35 693.6 Q F0 .615 F(dard input \(or \214le descriptor)108 705.6 Q F2(n)2.5 E F0(if)2.5 E F2(n)2.5 E F0(is speci\214ed\) for a command.)2.5 E (The format of here-documents is:)108 722.4 Q(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(29)185.115 E 0 Cg EP +(2020 October 29)141.235 E(29)190.395 E 0 Cg EP %%Page: 30 30 %%BeginPageSetup BP @@ -3942,7 +3942,7 @@ A F1(wor)A(d)-.37 E F0 .518(causes the \214le whose name is the e)108 (scriptor)108 708 Q F1(n)2.86 E F0 2.5(,o).24 G 2.5(ro)-2.5 G 2.5<6e8c> -2.5 G(le descriptor 0 if)-2.5 E F1(n)2.86 E F0(is not speci\214ed.)2.74 E(If the \214le does not e)5 E(xist, it is created.)-.15 E(GNU Bash 5.1) -72 768 Q(2020 September 23)135.955 E(30)185.115 E 0 Cg EP +72 768 Q(2020 October 29)141.235 E(30)190.395 E 0 Cg EP %%Page: 31 31 %%BeginPageSetup BP @@ -4091,7 +4091,7 @@ F -.15(xe)-.15 G .008(cution to reach).15 F .814(the current function.) 108 727.2 R .813(The v)5.814 F .813(alue of a v)-.25 F .813 (ariable that a function sees depends on its v)-.25 F .813 (alue within its caller)-.25 F 3.313(,i)-.4 G(f)-3.313 E(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(31)185.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(31)190.395 E 0 Cg EP %%Page: 32 32 %%BeginPageSetup BP @@ -4200,7 +4200,7 @@ F0(multiplication, di)144 590.4 Q(vision, remainder)-.25 E F2 2.5<2bad> F0(bitwise e)144 674.4 Q(xclusi)-.15 E .3 -.15(ve O)-.25 H(R).15 E F2(|) 108 686.4 Q F0(bitwise OR)144 686.4 Q F2(&&)108 698.4 Q F0(logical AND) 144 698.4 Q F2(||)108 710.4 Q F0(logical OR)144 710.4 Q(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(32)185.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(32)190.395 E 0 Cg EP %%Page: 33 33 %%BeginPageSetup BP @@ -4320,7 +4320,7 @@ G(ists and is readable.).15 E F2<ad73>108 706.8 Q F1(\214le)2.5 E F0 (ists and has a size greater than zero.).15 E F2<ad74>108 718.8 Q F1(fd) 2.5 E F0 -.35(Tr)144 718.8 S(ue if \214le descriptor).35 E F1(fd)4.47 E F0(is open and refers to a terminal.)3.27 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(33)185.115 E 0 Cg EP +(2020 October 29)141.235 E(33)190.395 E 0 Cg EP %%Page: 34 34 %%BeginPageSetup BP @@ -4417,7 +4417,7 @@ F(an)2.679 E 2.679(yw)-.15 G .179(ords remain af-)-2.779 F .346(ter e) 144 710.4 R .346(xpansion, the \214rst w)-.15 F .346(ord is tak)-.1 F .347(en to be the name of the command and the remaining w)-.1 F .347 (ords are)-.1 F(the ar)144 722.4 Q(guments.)-.18 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(34)185.115 E 0 Cg EP +(2020 October 29)141.235 E(34)190.395 E 0 Cg EP %%Page: 35 35 %%BeginPageSetup BP @@ -4539,8 +4539,8 @@ F0(,)A F3(pushd)2.5 E F0 2.5(,o)C(r)-2.5 E F3(popd)2.5 E F0 2.5(,o)C 2.5 (ri)-2.5 G(nherited by the shell at in)-2.5 E -.2(vo)-.4 G(cation).2 E <83>108 715.2 Q(the \214le creation mode mask as set by)144 715.2 Q F3 (umask)2.5 E F0(or inherited from the shell')2.5 E 2.5(sp)-.55 G(arent) --2.5 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(35)185.115 E 0 -Cg EP +-2.5 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(35)190.395 E 0 Cg +EP %%Page: 36 36 %%BeginPageSetup BP @@ -4653,8 +4653,8 @@ F1(de-)3.034 E(clar)108 650.4 Q 2.5<65ad>-.18 G(x)-2.5 E F0(commands.) F3(all)3.64 E F0 .81(parameter assignments are placed in)3.82 F(the en) 108 720 Q (vironment for a command, not just those that precede the command name.) --.4 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(36)185.115 E 0 -Cg EP +-.4 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(36)190.395 E 0 Cg +EP %%Page: 37 37 %%BeginPageSetup BP @@ -4782,7 +4782,7 @@ ociated)108 696 R .732(with this job is 25647.)108 708 R .733 (All of the processes in a single pipeline are members of the same job) 5.732 F(.)-.4 E F1(Bash)5.733 E F0(uses)3.233 E(the)108 720 Q F3(job) 4.24 E F0(abstraction as the basis for job control.)2.73 E(GNU Bash 5.1) -72 768 Q(2020 September 23)135.955 E(37)185.115 E 0 Cg EP +72 768 Q(2020 October 29)141.235 E(37)190.395 E 0 Cg EP %%Page: 38 38 %%BeginPageSetup BP @@ -4927,8 +4927,8 @@ F0 .037(as described abo)2.287 F .337 -.15(ve b)-.15 H .037 as follo)108 693.6 Q(ws:)-.25 E F5(\\a)144 705.6 Q F0 (an ASCII bell character \(07\))180 705.6 Q F5(\\d)144 717.6 Q F0 (the date in "W)180 717.6 Q(eekday Month Date" format \(e.g., "T)-.8 E -(ue May 26"\))-.45 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(38)185.115 E 0 Cg EP +(ue May 26"\))-.45 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(38) +190.395 E 0 Cg EP %%Page: 39 39 %%BeginPageSetup BP @@ -5043,8 +5043,8 @@ F0 .463(In this section, the Emacs-style notation is used to denote k) (ument to a command that).18 F 2.938(acts in the forw)108 727.2 R 2.938 (ard direction \(e.g.,)-.1 F F1(kill\255line)5.438 E F0 5.438(\)c)C 2.938(auses that command to act in a backw)-5.438 F 2.938 -(ard direction.)-.1 F(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(39)185.115 E 0 Cg EP +(ard direction.)-.1 F(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E +(39)190.395 E 0 Cg EP %%Page: 40 40 %%BeginPageSetup BP @@ -5155,7 +5155,7 @@ G(rsal\255ar).1 E(gument)-.1 E F0(.)A F1 .315(C\255x C\255r)5.155 F F0 (ESC [ 1 1 ~)3.01 E F0(is bound to insert the te)3.94 E(xt)-.15 E F4 (Function Key 1)2.5 E F0(.)A (The full set of GNU Emacs style escape sequences is)108 722.4 Q -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(40)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(40)190.395 E 0 Cg EP %%Page: 41 41 %%BeginPageSetup BP @@ -5248,8 +5248,8 @@ E F0 .884(The string that is inserted when the readline)144 717.6 R F1 (insert\255comment)3.385 E F0 .885(command is e)3.385 F -.15(xe)-.15 G 3.385(cuted. This).15 F(com-)3.385 E(mand is bound to)144 729.6 Q F1 (M\255#)2.5 E F0(in emacs mode and to)2.5 E F1(#)2.5 E F0 -(in vi command mode.)2.5 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(41)185.115 E 0 Cg EP +(in vi command mode.)2.5 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 +E(41)190.395 E 0 Cg EP %%Page: 42 42 %%BeginPageSetup BP @@ -5327,7 +5327,7 @@ R -.15(ve)-.25 G 5.622(.T).15 G .622(he v)-5.622 F .622(alue is e)-.25 F (ailable. Use)-.05 F .298(the \\1 and \\2 escapes to be)2.798 F .298 (gin and end sequences of non-printing characters, which)-.15 F (can be used to embed a terminal control sequence into the mode string.) -144 528 Q F1(enable\255brack)108 540 Q(eted\255paste \(Off\))-.1 E F0 +144 528 Q F1(enable\255brack)108 540 Q(eted\255paste \(On\))-.1 E F0 1.222(When set to)144 552 R F1(On)3.721 E F0 3.721(,r)C 1.221 (eadline will con\214gure the terminal in a w)-3.721 F 1.221 (ay that will enable it to insert each)-.1 F .353 @@ -5356,7 +5356,7 @@ E F0 3.052(,t)C .552(he history code attempts to place point at the sam\ e location on each history line re-)-3.052 F(trie)144 720 Q -.15(ve)-.25 G 2.5(dw).15 G(ith)-2.5 E F1(pr)2.5 E -.15(ev)-.18 G(ious-history).15 E F0(or)2.5 E F1(next-history)2.5 E F0(.)A(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(42)185.115 E 0 Cg EP +(2020 October 29)141.235 E(42)190.395 E 0 Cg EP %%Page: 43 43 %%BeginPageSetup BP @@ -5469,8 +5469,8 @@ ta-)-3.007 F(pre\214x)144 660 Q .884(ed escape sequence.)-.15 F .884 3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F F2(mor) 3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808 (ager to display a screenful of possible comple-)-3.308 F -(tions at a time.)144 708 Q(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(43)185.115 E 0 Cg EP +(tions at a time.)144 708 Q(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(43)190.395 E 0 Cg EP %%Page: 44 44 %%BeginPageSetup BP @@ -5584,7 +5584,7 @@ F1(term=)3.197 E F0 .696 (wo)3.154 G .654(rd on the right side of).1 F(the)180 727.2 Q F1(=)3.232 E F0 .732(is tested ag)3.232 F .732(ainst both the full name of the ter\ minal and the portion of the terminal)-.05 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(44)185.115 E 0 Cg EP +(2020 October 29)141.235 E(44)190.395 E 0 Cg EP %%Page: 45 45 %%BeginPageSetup BP @@ -5690,8 +5690,8 @@ Q .653(Readline remembers the last incremental search string.)108 708 R -3.153 F 3.153(yi)-.15 G(nterv)-3.153 E(en-)-.15 E (ing characters de\214ning a ne)108 720 Q 2.5(ws)-.25 G (earch string, an)-2.5 E 2.5(yr)-.15 G(emembered search string is used.) --2.5 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(45)185.115 E 0 -Cg EP +-2.5 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(45)190.395 E 0 Cg +EP %%Page: 46 46 %%BeginPageSetup BP @@ -5781,8 +5781,8 @@ S(th an ar).4 E (restore the history line to its original state.)144 686.4 Q F1(pr)108 698.4 Q -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0 (Fetch the pre)144 710.4 Q(vious command from the history list, mo)-.25 -E(ving back in the list.)-.15 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(46)185.115 E 0 Cg EP +E(ving back in the list.)-.15 E(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(46)190.395 E 0 Cg EP %%Page: 47 47 %%BeginPageSetup BP @@ -5881,7 +5881,7 @@ E .503 -.15(ve c)-.25 H .203(alls to).15 F F1(yank\255last\255ar)2.703 E (See)5.939 E F3(HIST)3.439 E(OR)-.162 E 3.189(YE)-.315 G(XP)-3.189 E (ANSION)-.666 E F0(belo)3.189 E 3.438(wf)-.25 G .938(or a descrip-) -3.438 F(tion of history e)144 696 Q(xpansion.)-.15 E(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(47)185.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(47)190.395 E 0 Cg EP %%Page: 48 48 %%BeginPageSetup BP @@ -5979,7 +5979,7 @@ E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 664.8 Q -.05(ga)-.15 G(ti).05 E 2.274 -.15(ve a)-.25 H -.18(rg).15 G 1.975 (ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 724.8 S(rd, b) .1 E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(48)185.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(48)190.395 E 0 Cg EP %%Page: 49 49 %%BeginPageSetup BP @@ -6067,8 +6067,8 @@ F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 681.6 Q (gument already accumulating, or start a ne)-.18 F 2.867(wa)-.25 G -.18 (rg)-2.867 G 2.867(ument. M\255\255).18 F .366(starts a ne)2.867 F -.05 (ga)-.15 G(-).05 E(ti)144 717.6 Q .3 -.15(ve a)-.25 H -.18(rg).15 G -(ument.).18 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(49) -185.115 E 0 Cg EP +(ument.).18 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(49)190.395 +E 0 Cg EP %%Page: 50 50 %%BeginPageSetup BP @@ -6172,7 +6172,7 @@ F0(List the possible completions of the te)144 616.8 Q .715(ords, shell functions, shell b)-.1 F .715(uiltins, and)-.2 F (\214nally e)144 712.8 Q -.15(xe)-.15 G (cutable \214lenames, in that order).15 E(.)-.55 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(50)185.115 E 0 Cg EP +(2020 October 29)141.235 E(50)190.395 E 0 Cg EP %%Page: 51 51 %%BeginPageSetup BP @@ -6265,7 +6265,7 @@ F 2.731(ee)-.1 G -.15(xe)-2.881 G .23(cuting the).15 F F1(undo)2.73 E F0 -.1 G 4.326(sl).15 G(ik)-4.326 E(e)-.1 E .79(Home and End.)144 729.6 R .791(Such sequences be)5.79 F .791 (gin with a Control Sequence Indicator \(CSI\), usually ESC\255[.)-.15 F -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(51)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(51)190.395 E 0 Cg EP %%Page: 52 52 %%BeginPageSetup BP @@ -6380,7 +6380,7 @@ d to generate the list of matching w)108 674.4 R 3.317(ords. If)-.1 F (option is used for \214lename or directory name completion, the)3.095 F (shell v)108 727.2 Q(ariable)-.25 E F3(FIGNORE)2.5 E F0 (is used to \214lter the matches.)2.25 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(52)185.115 E 0 Cg EP +(2020 October 29)141.235 E(52)190.395 E 0 Cg EP %%Page: 53 53 %%BeginPageSetup BP @@ -6524,7 +6524,7 @@ F F1 1.172(complete \255D)3.672 F F0 6.172(.I)C(t')-6.172 E 3.672(sp) uld be retried by returning an e)108 712.8 R .93(xit status of 124.)-.15 F .93(If a)5.93 F .1(shell function returns 124, and changes the compsp\ ec associated with the command on which completion is)108 724.8 R -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(53)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(53)190.395 E 0 Cg EP %%Page: 54 54 %%BeginPageSetup BP @@ -6658,8 +6658,8 @@ ds from the history list into the input stream, making it easy to repea\ t)-.1 F .209(commands, insert the ar)108 722.4 R .209(guments to a pre) -.18 F .21 (vious command into the current input line, or \214x errors in pre)-.25 -F(vious)-.25 E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(54) -185.115 E 0 Cg EP +F(vious)-.25 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(54) +190.395 E 0 Cg EP %%Page: 55 55 %%BeginPageSetup BP @@ -6782,7 +6782,7 @@ F0(,)A F2<ad>3.029 E F0 3.029(,o)C(r)-3.029 E F2(%)3.029 E F0 5.53(.W)C (ginning of the line, with the \214rst w)-.15 F .516 (ord being denoted by 0 \(zero\).)-.1 F -.8(Wo)5.515 G .515(rds are in-) .8 F(serted into the current line separated by single spaces.)108 705.6 -Q(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(55)185.115 E 0 Cg EP +Q(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(55)190.395 E 0 Cg EP %%Page: 56 56 %%BeginPageSetup BP @@ -6909,8 +6909,8 @@ F1(let)2.961 E F0 2.961(,a)C(nd)-2.961 E F1(shift)2.961 E F0 -.2(bu) 144 726 R/F4 9/Times-Bold@0 SF -.666(PA)2.988 G(TH)-.189 E F0 .488 (are used to \214nd the directory containing)2.738 F F2(\214lename)4.899 E F0 5.489(.T).18 G .489(he \214le searched for in)-5.489 F F4 -.666(PA) -2.989 G(TH)-.189 E F0(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(56)185.115 E 0 Cg EP +2.989 G(TH)-.189 E F0(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E +(56)190.395 E 0 Cg EP %%Page: 57 57 %%BeginPageSetup BP @@ -7040,7 +7040,7 @@ F1<ad71>144 650.4 Q F2(function)2.5 E F0(Query about which k)180 662.4 Q (ound to the named)-2.5 E F2(function)2.5 E F0(.)A F1<ad72>144 698.4 Q F2 -.1(ke)2.5 G(yseq)-.2 E F0(Remo)180 710.4 Q .3 -.15(ve a)-.15 H .3 -.15(ny c).15 H(urrent binding for).15 E F2 -.1(ke)2.5 G(yseq)-.2 E F0 -(.)A(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(57)185.115 E 0 Cg +(.)A(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(57)190.395 E 0 Cg EP %%Page: 58 58 %%BeginPageSetup @@ -7187,7 +7187,7 @@ F0(is)3.771 E .399(performed using a def)144 700.8 R .399(ault v)-.1 F (option causes)2.674 F 3.317(as)144 724.8 S .817(ingle w)-3.317 F .817 (ord indicating the command or \214lename used to in)-.1 F -.2(vo)-.4 G -.1(ke).2 G F2(command)3.618 E F0 .818(to be displayed; the)4.088 F -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(58)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(58)190.395 E 0 Cg EP %%Page: 59 59 %%BeginPageSetup BP @@ -7303,7 +7303,7 @@ e compspec generates \214lenames, so it can perform an).7 F 2.636<798c> 2.634(ea)-.1 G .134(dding a slash to directory names, quoting spe-) -2.634 F .45(cial characters, or suppressing trailing spaces\).)224 705.6 R .45(Intended to be used with shell)5.45 F(functions.)224 717.6 Q -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(59)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(59)190.395 E 0 Cg EP %%Page: 60 60 %%BeginPageSetup BP @@ -7382,7 +7382,7 @@ E F0(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1 .102(When it \214nishes, the possible completions are retrie)5.102 F -.15(ve)-.25 G 2.601(df).15 G .101(rom the v)-2.601 F .101(alue of the) -.25 F F3(COMPREPL)184 696 Q(Y)-.828 E F0(array v)2.25 E(ariable.)-.25 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(60)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(60)190.395 E 0 Cg EP %%Page: 61 61 %%BeginPageSetup BP @@ -7515,7 +7515,7 @@ F0 .649(option implies)3.149 F F1<ad66>144 715.2 Q F0 5.837(.T)C(he) (cuted in a shell function.).15 F .818 (It is ignored in all other cases.)5.818 F(The)5.819 E F1<ad49>3.319 E F0 .819(option causes local)3.319 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(61)185.115 E 0 Cg EP +(2020 October 29)141.235 E(61)190.395 E 0 Cg EP %%Page: 62 62 %%BeginPageSetup BP @@ -7641,8 +7641,8 @@ F2(dirs)3.694 E F0 1.194(when in)3.694 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E 698.4 R .258(alue is 0 unless an in)-.25 F -.25(va)-.4 G .258 (lid option is supplied or).25 F F1(n)2.758 E F0(inde)2.758 E -.15(xe) -.15 G 2.758(sb).15 G -.15(ey)-2.758 G .258(ond the end of the direc-) -.15 F(tory stack.)144 710.4 Q(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(62)185.115 E 0 Cg EP +.15 F(tory stack.)144 710.4 Q(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(62)190.395 E 0 Cg EP %%Page: 63 63 %%BeginPageSetup BP @@ -7760,7 +7760,7 @@ Q F2(ar)3.17 E(g)-.37 E F0 3.17(sa)C .671 (ev a)2.978 H(l).15 E F0 5.478(.I)C 2.978(ft)-5.478 G .478(here are no) -2.978 F F2(ar)3.308 E(gs)-.37 E F0(,).27 E(or only null ar)144 698.4 Q (guments,)-.18 E F1 -2.3 -.15(ev a)2.5 H(l).15 E F0(returns 0.)2.5 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(63)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(63)190.395 E 0 Cg EP %%Page: 64 64 %%BeginPageSetup BP @@ -7908,7 +7908,7 @@ R .454(If the)5.454 F F1<ad65>2.954 E F0 .454 .362(ground, or f)-.15 F .362 (ailure if run when job control is disabled or)-.1 F 2.862(,w)-.4 G .363 (hen run with job control enabled, if)-2.862 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(64)185.115 E 0 Cg EP +(2020 October 29)141.235 E(64)190.395 E 0 Cg EP %%Page: 65 65 %%BeginPageSetup BP @@ -8030,8 +8030,8 @@ G 3.366(sd).15 G(etailed)-3.366 E .223(help on all commands matching)144 (ormat)-2.5 E F2<ad73>144 710.4 Q F0 (Display only a short usage synopsis for each)180 710.4 Q F1(pattern)2.5 E F0(The return status is 0 unless no command matches)144 727.2 Q F1 -(pattern)3.75 E F0(.).24 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(65)185.115 E 0 Cg EP +(pattern)3.75 E F0(.).24 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 +E(65)190.395 E 0 Cg EP %%Page: 66 66 %%BeginPageSetup BP @@ -8145,7 +8145,7 @@ E F2(jobspec)4.24 E F0(is supplied.)2.81 E .394(If the)144 703.2 R F1 (with the corre-)3.164 F(sponding process group ID, and e)144 715.2 Q -.15(xe)-.15 G(cutes).15 E F2(command)2.7 E F0(passing it)3.27 E F2(ar) 2.83 E(gs)-.37 E F0 2.5(,r).27 G(eturning its e)-2.5 E(xit status.)-.15 -E(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(66)185.115 E 0 Cg EP +E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(66)190.395 E 0 Cg EP %%Page: 67 67 %%BeginPageSetup BP @@ -8289,7 +8289,7 @@ F(wing)-.25 E(meanings:)144 698.4 Q F1<ad6e>144 710.4 Q F0 .551 (Suppresses the normal change of directory when remo)180 710.4 R .551 (ving directories from the stack, so)-.15 F (that only the stack is manipulated.)180 722.4 Q(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(67)185.115 E 0 Cg EP +(2020 October 29)141.235 E(67)190.395 E 0 Cg EP %%Page: 68 68 %%BeginPageSetup BP @@ -8404,8 +8404,8 @@ F F1(dirs)180 688.8 Q F0 2.5(,s)C(tarting with zero\) is at the top.) (cd)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .489(If the)144 729.6 R F1(pushd) 2.989 E F0 .489(command is successful, a)2.989 F F1(dirs)2.988 E F0 .488 (is performed as well.)2.988 F .488(If the \214rst form is used,)5.488 F -F1(pushd)2.988 E F0(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(68)185.115 E 0 Cg EP +F1(pushd)2.988 E F0(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(68) +190.395 E 0 Cg EP %%Page: 69 69 %%BeginPageSetup BP @@ -8536,7 +8536,7 @@ g input from a terminal, pipe, or other special \214le; it has no ef)180 (times out,)3.09 F F2 -.18(re)3.089 G(ad).18 E F0(sa)3.089 E -.15(ve)-.2 G 3.089(sa).15 G .889 -.15(ny p)-3.089 H .589 (artial input read into the speci\214ed).15 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(69)185.115 E 0 Cg EP +(2020 October 29)141.235 E(69)190.395 E 0 Cg EP %%Page: 70 70 %%BeginPageSetup BP @@ -8683,7 +8683,7 @@ F2(&&)3.417 E F0(or)3.417 E F2(||)3.417 E F0 3.417(,a)C 1.217 -.15(ny c) (non-zero status because a command f)184 727.2 R 1.112(ailed while)-.1 F F2<ad65>3.612 E F0 -.1(wa)3.612 G 3.612(sb).1 G 1.113 (eing ignored, the shell does)-3.612 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(70)185.115 E 0 Cg EP +(2020 October 29)141.235 E(70)190.395 E 0 Cg EP %%Page: 71 71 %%BeginPageSetup BP @@ -8765,8 +8765,8 @@ F1(noglob)184 666 Q F0(Same as)224 666 Q F1<ad66>2.5 E F0(.)A F1(nolog) 184 678 Q F0(Currently ignored.)224 678 Q F1(notify)184 690 Q F0 (Same as)224 690 Q F1<ad62>2.5 E F0(.)A F1(nounset)184 702 Q F0(Same as) 224 702 Q F1<ad75>2.5 E F0(.)A F1(onecmd)184 714 Q F0(Same as)224 714 Q -F1<ad74>2.5 E F0(.)A(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E -(71)185.115 E 0 Cg EP +F1<ad74>2.5 E F0(.)A(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(71) +190.395 E 0 Cg EP %%Page: 72 72 %%BeginPageSetup BP @@ -8882,7 +8882,7 @@ F0 .4(If no ar)184 702 R .401(guments follo)-.18 F 2.901(wt)-.25 G .401 (Otherwise,)5.401 E(the positional parameters are set to the)184 714 Q F2(ar)2.5 E(g)-.37 E F0(s, e)A -.15(ve)-.25 G 2.5(ni).15 G 2.5(fs)-2.5 G (ome of them be)-2.5 E(gin with a)-.15 E F1<ad>2.5 E F0(.)A -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(72)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(72)190.395 E 0 Cg EP %%Page: 73 73 %%BeginPageSetup BP @@ -9001,7 +9001,7 @@ Q F0 .449(If set,)184 718.8 R F1(bash)2.949 E F0 .449 F -.15(ve)-.25 G 3.438(shell. If)184 730.8 R(an)3.438 E 3.438(yj)-.15 G .938(obs are running, this causes the e)-3.438 F .938 (xit to be deferred until a second e)-.15 F .939(xit is)-.15 F -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(73)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(73)190.395 E 0 Cg EP %%Page: 74 74 %%BeginPageSetup BP @@ -9095,7 +9095,7 @@ Q(gument.)-.18 E F2(2.)184 691.2 Q F0 1.667(If the command run by the) 220 691.2 R F2(DEB)4.167 E(UG)-.1 E F0 1.667(trap returns a non-zero v) 4.167 F 1.667(alue, the ne)-.25 F(xt)-.15 E (command is skipped and not e)220 703.2 Q -.15(xe)-.15 G(cuted.).15 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(74)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(74)190.395 E 0 Cg EP %%Page: 75 75 %%BeginPageSetup BP @@ -9185,7 +9185,7 @@ E 2.5(,a)-.4 G(llo)-2.5 E(wing further modi\214cation.)-.25 E F1 (is being completed \(see)3.881 F F1(Completing)3.88 E F0(under)3.88 E F2(READLINE)3.88 E F0(abo)184 691.2 Q -.15(ve)-.15 G 2.5(\). This).15 F (is enabled by def)2.5 E(ault.)-.1 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(75)185.115 E 0 Cg EP +(2020 October 29)141.235 E(75)190.395 E 0 Cg EP %%Page: 76 76 %%BeginPageSetup BP @@ -9273,7 +9273,7 @@ F1(pr)144 679.2 Q(ogcomp_alias)-.18 E F0 2.124 (xpansion. If it has)-.15 F 1.473(an alias,)184 715.2 R F1(bash)3.973 E F0 1.473(attempts programmable completion using the command w)3.973 F 1.473(ord resulting)-.1 F(from the e)184 727.2 Q(xpanded alias.)-.15 E -(GNU Bash 5.1)72 768 Q(2020 September 23)135.955 E(76)185.115 E 0 Cg EP +(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 E(76)190.395 E 0 Cg EP %%Page: 77 77 %%BeginPageSetup BP @@ -9375,8 +9375,8 @@ E F0(and)3.833 E F1<ad6f>3.832 E F0 1.332 (three ar)180 729.6 R 3.058(guments. If)-.18 F .558(the \214rst ar)3.058 F .558(gument is)-.18 F F1(!)3.058 E F0 3.058(,t)C .558(he v)-3.058 F .558(alue is the ne)-.25 F -.05(ga)-.15 G .558(tion of the tw).05 F -(o-ar)-.1 E(gument)-.18 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(77)185.115 E 0 Cg EP +(o-ar)-.1 E(gument)-.18 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 +E(77)190.395 E 0 Cg EP %%Page: 78 78 %%BeginPageSetup BP @@ -9521,8 +9521,8 @@ F F3 -.666(PA)3.231 G(TH)-.189 E F4(.)A F0 .731(If the)5.231 F F1<ad61> (cutable named).15 F F2(name)3.683 E F0 5.823(.T).18 G .823(his in-) -5.823 F 1.176(cludes aliases and functions, if and only if the)144 722.4 R F1<ad70>3.676 E F0 1.176(option is not also used.)3.676 F 1.177 -(The table of hashed)6.176 F(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(78)185.115 E 0 Cg EP +(The table of hashed)6.176 F(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(78)190.395 E 0 Cg EP %%Page: 79 79 %%BeginPageSetup BP @@ -9640,8 +9640,8 @@ F .552(The return status is 0 if the)5.552 F(mode w)144 686.4 Q F1<ad61>3.258 E F0 .757(is supplied, all alias de\214nitions are re-) 3.258 F(mo)144 727.2 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E (alue is true unless a supplied)-.25 E F2(name)2.86 E F0 -(is not a de\214ned alias.)2.68 E(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(79)185.115 E 0 Cg EP +(is not a de\214ned alias.)2.68 E(GNU Bash 5.1)72 768 Q(2020 October 29) +141.235 E(79)190.395 E 0 Cg EP %%Page: 80 80 %%BeginPageSetup BP @@ -9795,7 +9795,7 @@ F(patibility le)108 648 Q -.15(ve)-.25 G(l.).15 E .388 (The follo)108 722.4 R 1.613(wing table describes the beha)-.25 F 1.613 (vior changes controlled by each compatibility le)-.2 F -.15(ve)-.25 G 4.113(ls).15 G 4.113(etting. The)-4.113 F(GNU Bash 5.1)72 768 Q -(2020 September 23)135.955 E(80)185.115 E 0 Cg EP +(2020 October 29)141.235 E(80)190.395 E 0 Cg EP %%Page: 81 81 %%BeginPageSetup BP @@ -9905,7 +9905,7 @@ F0 1.209(is generated to introduce slightly more random-)3.459 F 1.018 (ersions, so seeding the random number generator by assigning a)-.15 F -.25(va)180 722.4 S(lue to).25 E F3(RANDOM)2.5 E F0 (will produce the same sequence as in bash-5.0)2.25 E(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(81)185.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(81)190.395 E 0 Cg EP %%Page: 82 82 %%BeginPageSetup BP @@ -9989,7 +9989,7 @@ E F0(The personal initialization \214le, e)144 667.2 Q -.15(xe)-.15 G (-shell startup \214le).15 E F5(~/.bash_lo)109.666 703.2 Q(gout)-.1 E F0 (The indi)144 715.2 Q(vidual login shell cleanup \214le, e)-.25 E -.15 (xe)-.15 G(cuted when a login shell e).15 E(xits)-.15 E(GNU Bash 5.1)72 -768 Q(2020 September 23)135.955 E(82)185.115 E 0 Cg EP +768 Q(2020 October 29)141.235 E(82)190.395 E 0 Cg EP %%Page: 83 83 %%BeginPageSetup BP @@ -10048,8 +10048,8 @@ ommands between parentheses to force it into a)-.25 F (subshell, which may be stopped as a unit.)108 518.4 Q(Array v)108 535.2 Q(ariables may not \(yet\) be e)-.25 E(xported.)-.15 E (There may be only one acti)108 552 Q .3 -.15(ve c)-.25 H -(oprocess at a time.).15 E(GNU Bash 5.1)72 768 Q(2020 September 23) -135.955 E(83)185.115 E 0 Cg EP +(oprocess at a time.).15 E(GNU Bash 5.1)72 768 Q(2020 October 29)141.235 +E(83)190.395 E 0 Cg EP %%Trailer end %%EOF diff --git a/doc/bashref.dvi b/doc/bashref.dvi Binary files differindex 1b040fb6..c88813e4 100644 --- a/doc/bashref.dvi +++ b/doc/bashref.dvi diff --git a/doc/bashref.html b/doc/bashref.html index 1796fb4a..b73d043d 100644 --- a/doc/bashref.html +++ b/doc/bashref.html @@ -1,13 +1,13 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <!-- This text is a brief description of the features that are present in -the Bash shell (version 5.1, 23 September 2020). +the Bash shell (version 5.1, 29 October 2020). -This is Edition 5.1, last updated 23 September 2020, +This is Edition 5.1, last updated 29 October 2020, of The GNU Bash Reference Manual, for Bash, Version 5.1. -Copyright (C) 1988-2018 Free Software Foundation, Inc. +Copyright (C) 1988-2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or @@ -275,10 +275,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou <span id="Bash-Features-1"></span><h1 class="top">Bash Features</h1> <p>This text is a brief description of the features that are present in -the Bash shell (version 5.1, 23 September 2020). +the Bash shell (version 5.1, 29 October 2020). The Bash home page is <a href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>. </p> -<p>This is Edition 5.1, last updated 23 September 2020, +<p>This is Edition 5.1, last updated 29 October 2020, of <cite>The GNU Bash Reference Manual</cite>, for <code>Bash</code>, Version 5.1. </p> @@ -10282,7 +10282,7 @@ The default is ‘<samp>@</samp>’. that will enable it to insert each paste into the editing buffer as a single string of characters, instead of treating each character as if it had been read from the keyboard. This can prevent pasted characters -from being interpreted as editing commands. The default is ‘<samp>off</samp>’. +from being interpreted as editing commands. The default is ‘<samp>On</samp>’. </p> </dd> <dt><code>enable-keypad</code></dt> diff --git a/doc/bashref.info b/doc/bashref.info index 313aa25a..7fb5a1b1 100644 --- a/doc/bashref.info +++ b/doc/bashref.info @@ -2,12 +2,12 @@ This is bashref.info, produced by makeinfo version 6.7 from bashref.texi. This text is a brief description of the features that are present in the -Bash shell (version 5.1, 23 September 2020). +Bash shell (version 5.1, 29 October 2020). - This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash + This is Edition 5.1, last updated 29 October 2020, of 'The GNU Bash Reference Manual', for 'Bash', Version 5.1. - Copyright (C) 1988-2018 Free Software Foundation, Inc. + Copyright (C) 1988-2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, @@ -27,10 +27,10 @@ Bash Features ************* This text is a brief description of the features that are present in the -Bash shell (version 5.1, 23 September 2020). The Bash home page is +Bash shell (version 5.1, 29 October 2020). The Bash home page is <http://www.gnu.org/software/bash/>. - This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash + This is Edition 5.1, last updated 29 October 2020, of 'The GNU Bash Reference Manual', for 'Bash', Version 5.1. Bash contains features that appear in other popular shells, and some @@ -7748,7 +7748,7 @@ Variable Settings buffer as a single string of characters, instead of treating each character as if it had been read from the keyboard. This can prevent pasted characters from being interpreted as - editing commands. The default is 'off'. + editing commands. The default is 'On'. 'enable-keypad' When set to 'on', Readline will try to enable the application @@ -11980,137 +11980,137 @@ D.5 Concept Index Tag Table: -Node: Top899 -Node: Introduction2821 -Node: What is Bash?3037 -Node: What is a shell?4151 -Node: Definitions6689 -Node: Basic Shell Features9640 -Node: Shell Syntax10859 -Node: Shell Operation11885 -Node: Quoting13178 -Node: Escape Character14478 -Node: Single Quotes14963 -Node: Double Quotes15311 -Node: ANSI-C Quoting16589 -Node: Locale Translation17848 -Node: Comments19001 -Node: Shell Commands19619 -Node: Reserved Words20557 -Node: Simple Commands21313 -Node: Pipelines21967 -Node: Lists24899 -Node: Compound Commands26690 -Node: Looping Constructs27702 -Node: Conditional Constructs30197 -Node: Command Grouping41768 -Node: Coprocesses43247 -Node: GNU Parallel45150 -Node: Shell Functions49451 -Node: Shell Parameters56658 -Node: Positional Parameters61071 -Node: Special Parameters61971 -Node: Shell Expansions65195 -Node: Brace Expansion67318 -Node: Tilde Expansion70041 -Node: Shell Parameter Expansion72658 -Node: Command Substitution87787 -Node: Arithmetic Expansion89142 -Node: Process Substitution90074 -Node: Word Splitting91194 -Node: Filename Expansion93138 -Node: Pattern Matching95687 -Node: Quote Removal99673 -Node: Redirections99968 -Node: Executing Commands109538 -Node: Simple Command Expansion110208 -Node: Command Search and Execution112162 -Node: Command Execution Environment114538 -Node: Environment117522 -Node: Exit Status119181 -Node: Signals120851 -Node: Shell Scripts122818 -Node: Shell Builtin Commands125830 -Node: Bourne Shell Builtins127868 -Node: Bash Builtins148797 -Node: Modifying Shell Behavior178732 -Node: The Set Builtin179077 -Node: The Shopt Builtin189490 -Node: Special Builtins204400 -Node: Shell Variables205379 -Node: Bourne Shell Variables205816 -Node: Bash Variables207920 -Node: Bash Features240554 -Node: Invoking Bash241567 -Node: Bash Startup Files247580 -Node: Interactive Shells252683 -Node: What is an Interactive Shell?253093 -Node: Is this Shell Interactive?253742 -Node: Interactive Shell Behavior254557 -Node: Bash Conditional Expressions258071 -Node: Shell Arithmetic262648 -Node: Aliases265588 -Node: Arrays268208 -Node: The Directory Stack274217 -Node: Directory Stack Builtins275001 -Node: Controlling the Prompt277969 -Node: The Restricted Shell280919 -Node: Bash POSIX Mode283513 -Node: Shell Compatibility Mode294549 -Node: Job Control301205 -Node: Job Control Basics301665 -Node: Job Control Builtins306661 -Node: Job Control Variables312061 -Node: Command Line Editing313217 -Node: Introduction and Notation314888 -Node: Readline Interaction316511 -Node: Readline Bare Essentials317702 -Node: Readline Movement Commands319485 -Node: Readline Killing Commands320445 -Node: Readline Arguments322363 -Node: Searching323407 -Node: Readline Init File325593 -Node: Readline Init File Syntax326852 -Node: Conditional Init Constructs347391 -Node: Sample Init File351587 -Node: Bindable Readline Commands354711 -Node: Commands For Moving355915 -Node: Commands For History357966 -Node: Commands For Text362759 -Node: Commands For Killing366408 -Node: Numeric Arguments369441 -Node: Commands For Completion370580 -Node: Keyboard Macros374771 -Node: Miscellaneous Commands375458 -Node: Readline vi Mode381142 -Node: Programmable Completion382049 -Node: Programmable Completion Builtins389829 -Node: A Programmable Completion Example400524 -Node: Using History Interactively405771 -Node: Bash History Facilities406455 -Node: Bash History Builtins409460 -Node: History Interaction414189 -Node: Event Designators417809 -Node: Word Designators419163 -Node: Modifiers420923 -Node: Installing Bash422734 -Node: Basic Installation423871 -Node: Compilers and Options427129 -Node: Compiling For Multiple Architectures427870 -Node: Installation Names429563 -Node: Specifying the System Type430381 -Node: Sharing Defaults431097 -Node: Operation Controls431770 -Node: Optional Features432728 -Node: Reporting Bugs443246 -Node: Major Differences From The Bourne Shell444440 -Node: GNU Free Documentation License461292 -Node: Indexes486469 -Node: Builtin Index486923 -Node: Reserved Word Index493750 -Node: Variable Index496198 -Node: Function Index512095 -Node: Concept Index525605 +Node: Top895 +Node: Introduction2813 +Node: What is Bash?3029 +Node: What is a shell?4143 +Node: Definitions6681 +Node: Basic Shell Features9632 +Node: Shell Syntax10851 +Node: Shell Operation11877 +Node: Quoting13170 +Node: Escape Character14470 +Node: Single Quotes14955 +Node: Double Quotes15303 +Node: ANSI-C Quoting16581 +Node: Locale Translation17840 +Node: Comments18993 +Node: Shell Commands19611 +Node: Reserved Words20549 +Node: Simple Commands21305 +Node: Pipelines21959 +Node: Lists24891 +Node: Compound Commands26682 +Node: Looping Constructs27694 +Node: Conditional Constructs30189 +Node: Command Grouping41760 +Node: Coprocesses43239 +Node: GNU Parallel45142 +Node: Shell Functions49443 +Node: Shell Parameters56650 +Node: Positional Parameters61063 +Node: Special Parameters61963 +Node: Shell Expansions65187 +Node: Brace Expansion67310 +Node: Tilde Expansion70033 +Node: Shell Parameter Expansion72650 +Node: Command Substitution87779 +Node: Arithmetic Expansion89134 +Node: Process Substitution90066 +Node: Word Splitting91186 +Node: Filename Expansion93130 +Node: Pattern Matching95679 +Node: Quote Removal99665 +Node: Redirections99960 +Node: Executing Commands109530 +Node: Simple Command Expansion110200 +Node: Command Search and Execution112154 +Node: Command Execution Environment114530 +Node: Environment117514 +Node: Exit Status119173 +Node: Signals120843 +Node: Shell Scripts122810 +Node: Shell Builtin Commands125822 +Node: Bourne Shell Builtins127860 +Node: Bash Builtins148789 +Node: Modifying Shell Behavior178724 +Node: The Set Builtin179069 +Node: The Shopt Builtin189482 +Node: Special Builtins204392 +Node: Shell Variables205371 +Node: Bourne Shell Variables205808 +Node: Bash Variables207912 +Node: Bash Features240546 +Node: Invoking Bash241559 +Node: Bash Startup Files247572 +Node: Interactive Shells252675 +Node: What is an Interactive Shell?253085 +Node: Is this Shell Interactive?253734 +Node: Interactive Shell Behavior254549 +Node: Bash Conditional Expressions258063 +Node: Shell Arithmetic262640 +Node: Aliases265580 +Node: Arrays268200 +Node: The Directory Stack274209 +Node: Directory Stack Builtins274993 +Node: Controlling the Prompt277961 +Node: The Restricted Shell280911 +Node: Bash POSIX Mode283505 +Node: Shell Compatibility Mode294541 +Node: Job Control301197 +Node: Job Control Basics301657 +Node: Job Control Builtins306653 +Node: Job Control Variables312053 +Node: Command Line Editing313209 +Node: Introduction and Notation314880 +Node: Readline Interaction316503 +Node: Readline Bare Essentials317694 +Node: Readline Movement Commands319477 +Node: Readline Killing Commands320437 +Node: Readline Arguments322355 +Node: Searching323399 +Node: Readline Init File325585 +Node: Readline Init File Syntax326844 +Node: Conditional Init Constructs347382 +Node: Sample Init File351578 +Node: Bindable Readline Commands354702 +Node: Commands For Moving355906 +Node: Commands For History357957 +Node: Commands For Text362750 +Node: Commands For Killing366399 +Node: Numeric Arguments369432 +Node: Commands For Completion370571 +Node: Keyboard Macros374762 +Node: Miscellaneous Commands375449 +Node: Readline vi Mode381133 +Node: Programmable Completion382040 +Node: Programmable Completion Builtins389820 +Node: A Programmable Completion Example400515 +Node: Using History Interactively405762 +Node: Bash History Facilities406446 +Node: Bash History Builtins409451 +Node: History Interaction414180 +Node: Event Designators417800 +Node: Word Designators419154 +Node: Modifiers420914 +Node: Installing Bash422725 +Node: Basic Installation423862 +Node: Compilers and Options427120 +Node: Compiling For Multiple Architectures427861 +Node: Installation Names429554 +Node: Specifying the System Type430372 +Node: Sharing Defaults431088 +Node: Operation Controls431761 +Node: Optional Features432719 +Node: Reporting Bugs443237 +Node: Major Differences From The Bourne Shell444431 +Node: GNU Free Documentation License461283 +Node: Indexes486460 +Node: Builtin Index486914 +Node: Reserved Word Index493741 +Node: Variable Index496189 +Node: Function Index512086 +Node: Concept Index525596 End Tag Table diff --git a/doc/bashref.pdf b/doc/bashref.pdf Binary files differindex f20c210e..c567f3e8 100644 --- a/doc/bashref.pdf +++ b/doc/bashref.pdf diff --git a/doc/bashref.ps b/doc/bashref.ps index 58773748..e5129f6b 100644 --- a/doc/bashref.ps +++ b/doc/bashref.ps @@ -1,18 +1,21 @@ %!PS-Adobe-2.0 -%%Creator: dvips(k) 5.999 Copyright 2019 Radical Eye Software +%%Creator: dvips(k) 2020.1 Copyright 2020 Radical Eye Software %%Title: bashref.dvi -%%CreationDate: Thu Oct 1 18:49:31 2020 +%%CreationDate: Thu Oct 29 20:21:30 2020 %%Pages: 189 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMMI12 CMMI10 CMCSC10 -%%+ CMTI10 CMSLTT10 SFRM1095 CMTT12 CMTT9 CMMI9 CMR9 SFRM1440 +%%+ CMTI10 CMSLTT10 CMTT12 CMTT9 CMMI9 CMR9 %%DocumentPaperSizes: Letter %%EndComments +%%BeginDefaults +%%ViewingOrientation: 1 0 0 1 +%%EndDefaults %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi %DVIPSParameters: dpi=600 -%DVIPSSource: TeX output 2020.10.01:1449 +%DVIPSSource: TeX output 2020.10.29:1621 %%BeginProcSet: tex.pro 0 0 %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -61,299 +64,6 @@ B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p 0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet -%%BeginProcSet: cm-super-t1.enc 0 0 -% This file is generated from `T1uni.map' and `glyphlist.txt', `gl-other.txt' -% -% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ; -% LIGKERN quoteleft quoteleft =: quotedblleft ; -% LIGKERN quoteright quoteright =: quotedblright ; -% LIGKERN comma comma =: quotedblbase ; less less =: guillemotleft ; -% LIGKERN greater greater =: guillemotright ; -% LIGKERN f f =: ff ; f i =: fi ; f l =: fl ; ff i =: ffi ; ff l =: ffl ; -% -% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ; -% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ; -% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ; -% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ; -% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ; -% LIGKERN nine {} * ; * {} nine ; -% -/T1Encoding [ -% 0x00 -/grave -/acute -/circumflex -/tilde -/dieresis -/hungarumlaut -/ring -/caron -/breve -/macron -/dotaccent -/cedilla -/ogonek -/quotesinglbase -/guilsinglleft -/guilsinglright -% 0x10 -/quotedblleft -/quotedblright -/quotedblbase -/guillemotleft -/guillemotright -/endash -/emdash -/afii61664 -/perthousandzero % PERTHOUSAND ZERO -/dotlessi -/dotlessj -/ff -/fi -/fl -/ffi -/ffl -% 0x20 -/uni2423 -/exclam -/quotedbl -/numbersign -/dollar -/percent -/ampersand -/quoteright -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash -% 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven -/eight -/nine -/colon -/semicolon -/less -/equal -/greater -/question -% 0x40 -/at -/A -/B -/C -/D -/E -/F -/G -/H -/I -/J -/K -/L -/M -/N -/O -% 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W -/X -/Y -/Z -/bracketleft -/backslash -/bracketright -/asciicircum -/underscore -% 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g -/h -/i -/j -/k -/l -/m -/n -/o -% 0x70 -/p -/q -/r -/s -/t -/u -/v -/w -/x -/y -/z -/braceleft -/bar -/braceright -/asciitilde -/hyphen.alt % HANGING HYPHEN -% 0x80 -/Abreve -/Aogonek -/Cacute -/Ccaron -/Dcaron -/Ecaron -/Eogonek -/Gbreve -/Lacute -/Lcaron -/Lslash -/Nacute -/Ncaron -/Eng -/Ohungarumlaut -/Racute -% 0x90 -/Rcaron -/Sacute -/Scaron -/Scedilla -/Tcaron -/Tcommaaccent -/Uhungarumlaut -/Uring -/Ydieresis -/Zacute -/Zcaron -/Zdotaccent -/IJ -/Idotaccent -/dcroat -/section -% 0xA0 -/abreve -/aogonek -/cacute -/ccaron -/dcaron -/ecaron -/eogonek -/gbreve -/lacute -/lcaron -/lslash -/nacute -/ncaron -/eng -/ohungarumlaut -/racute -% 0xB0 -/rcaron -/sacute -/scaron -/scedilla -/tcaron -/tcommaaccent -/uhungarumlaut -/uring -/ydieresis -/zacute -/zcaron -/zdotaccent -/ij -/exclamdown -/questiondown -/sterling -% 0xC0 -/Agrave -/Aacute -/Acircumflex -/Atilde -/Adieresis -/Aring -/AE -/Ccedilla -/Egrave -/Eacute -/Ecircumflex -/Edieresis -/Igrave -/Iacute -/Icircumflex -/Idieresis -% 0xD0 -/Eth -/Ntilde -/Ograve -/Oacute -/Ocircumflex -/Otilde -/Odieresis -/OE -/Oslash -/Ugrave -/Uacute -/Ucircumflex -/Udieresis -/Yacute -/Thorn -/SS % Germandbls -% 0xE0 -/agrave -/aacute -/acircumflex -/atilde -/adieresis -/aring -/ae -/ccedilla -/egrave -/eacute -/ecircumflex -/edieresis -/igrave -/iacute -/icircumflex -/idieresis -% 0xF0 -/eth -/ntilde -/ograve -/oacute -/ocircumflex -/otilde -/odieresis -/oe -/oslash -/ugrave -/uacute -/ucircumflex -/udieresis -/yacute -/thorn -/germandbls % or /germandbls.alt -] def - -%%EndProcSet %%BeginProcSet: texps.pro 0 0 %! TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 @@ -371,82 +81,6 @@ forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def end %%EndProcSet -%%BeginFont: SFRM1440 -%!FontType1-1.0: SFRM1440 0.3 -%%CreationDate: Wed Sep 12 2001 -% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. -% See the file COPYING (GNU General Public License) for license conditions. -% Converted from METAFONT EC/TC and LH fonts: -% ecrm1440, tcrm1440, larm1440, lbrm1440, lcrm1440, rxrm1440. -11 dict begin -/FontInfo 6 dict dup begin -/version (0.3) def -/FullName (Computer Modern Roman) def -/FamilyName (Computer Modern) def -/ItalicAngle 0 def -/isFixedPitch false def -/Weight (Medium) def -end readonly def -/FontName /SFRM1440 def -/Encoding StandardEncoding def -/PaintType 0 def -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0] def -/FontBBox{-178 -319 1370 944}readonly def -currentdict end -currentfile eexec -D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11 -69C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB -CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89 -F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3 -F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C -EF25195F68A2A98170E4875AA6B96583CD5632BAD9EB3D511DF934CD36447A31 -D420FA313B5721C37085F478B27E13191957AD30B8B082BCE733AF8402AA3B7D -EC69807BBAA8142AF1CE151D99F5A59AD18798F94781EFAD48BEC8C62C05C56A -336D71AB584F6DF014C56523108606FADE931125496247870E980A65AB33C0C6 -D5B074864D0F58CBE333EFA1201AF335FBDBFB1CC8B1294856C250F222BFB8BE -5DE74F808904F7678552F213C674497F829E96812D340939F73737731D289801 -54E5A8F7F5067ACD9D768F4649B51E54513F2F7878141FC719627C23FC5FBBB6 -3F663343D902E95C56C559B588088227B22378FAAB29392FA62933283D2FB2EA -FDAEC6C1A94ABA0B5BEFA1E728A2052434BFBF6D9759D02A2C6092D4EF794241 -CC28BC939A424AFA193F96530985EE89E2731F6A99BC84C6551A3FEA1342509D -D389F786C8EAF972B8C98B79003B6C71E6696518BE4CAD2A317C5D29621031B4 -00A035445D8CFB67D6C136B3F6D82396E11A3679BC82498519C27601236F1FCA -073DA7817B529424CAF49A0AEE8FF7520C0F204A3B1725F46C2C6953C20E93B6 -2F3EED0EEDF87A350CB841516107D9571503A3D62A2F81840070D43392160783 -D111F3463760EBE634515DA1A1B6C3A5D14FC475F277BAC792FB69B4219E9BF5 -E6F8520584096A7B7BFE439A1604C2BBBB9140A4F4728B4B553A27E1AF52181D -701E90C4FBB16EA8DB39B562E5A2932D45893081D52E020A1FCBC44DC204F4A5 -BEE47F9D25876644CC856B1FC225B61124B89B896C39CDAB0ACCA8277F827382 -6F58A0C8456DC41217219D894B42968FB2EC75D5518B6C4413BAC889532F0B0B -A8D728949CEA00D4A1FD757B3A2336D472842ACF8EB9869044947C67D9AC7BBF -7386DDE209A8DC9F18085952818F67FDC6088D9C8BC51BA6DC0FA37A0F81EDB8 -6F259FA8C0FA3D55BC44529889E72E407C89ACF658631A0508FD7991088644B4 -C958031B52421F9CE73A0479A3175231EFD9E0F7A7B08380E9BAF015730B175B -93C380D1D0F3EB929B7182691BE7E2116CE295CA4331ABD7ECAD7D2DD46FE3E0 -5D3893ED100135901FD42B4E11BEB2689A13E86F1E68635DD81E5A720082E802 -89B440A111B2CDC6BFE79E5B2EB0C528FA0E958F0E981EC29C3B02A9186D7907 -A0CC29251E567958BA95DE609A421581433DD50AF96A82A5ADEFD1C9540D87A8 -D74A7709AF84AD36753784ED8267D3C2521A32C7A9D5BE01E0AF3B349200639C -90C8BF2E26920AC410A9C5D1EB85C0ADD16BAA83B6C0BFE82483D3B719DC19AC -89155140691E3E37F861C53A6F39441B5F229828B198DF5BF6286060DCB64433 -F43499E4AB973F84655311A644ED0921B41B9AE7A8060CB1F45E824FB3497C63 -0A13CB5902294E66186E4496A825447734DF4AB581803488B912E7DCD6007527 -B4CFDC5AD5D1DB430007AE929F969EE332CCF235DAF977D387E47BE0EE337118 -8CFAAC0907E16B0BEAECC3B39221867AE6464BE9AB4CE591B2E24B45AD2C70E2 -A183065810D6AC3DE8EA9F66615113F1E683A4475CE5817491ECBDD4A4818AED -EAFEAB8B93FBDB335D02FAF9276958EFAEE1057C45D313419D195068076D77B2 -C0FF6EA8D6F3F0A899D17E04B8B2141EE335 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -cleartomark -%%EndFont %%BeginFont: CMR9 %!PS-AdobeFont-1.0: CMR9 003.002 %%Title: CMR9 @@ -3925,268 +3559,6 @@ E8A9298AC3FEF04C92A273 cleartomark {restore}if %%EndFont -%%BeginFont: SFRM1095 -%!FontType1-1.0: SFRM1095 0.3 -%%CreationDate: Wed Sep 12 2001 -% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. -% See the file COPYING (GNU General Public License) for license conditions. -% Converted from METAFONT EC/TC and LH fonts: -% ecrm1095, tcrm1095, larm1095, lbrm1095, lcrm1095, rxrm1095. -11 dict begin -/FontInfo 6 dict dup begin -/version (0.3) def -/FullName (Computer Modern Roman) def -/FamilyName (Computer Modern) def -/ItalicAngle 0 def -/isFixedPitch false def -/Weight (Medium) def -end readonly def -/FontName /SFRM1095 def -/Encoding StandardEncoding def -/PaintType 0 def -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0] def -/FontBBox{-188 -320 1445 942}readonly def -currentdict end -currentfile eexec -D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11 -69C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB -CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89 -F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3 -F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C -EF25195F68A2A98170E48759F33528B839DFD4B92DF0482493852D12053A7904 -BF6E144B9488970F220C299E80886366662C1276120E72472BF84082B9EEC729 -F7007ECDC5A850C88810EA679DABE81714004E65D938DA9ABDF29C949A52EF02 -EDA8451563235D51286E9133FFC7A27067DF0332ED614AC2D4FAB88EC84E6CB9 -FAB41C933E84B88097BA8742BC30A81416D1CAA3545F08E2554B28362B99B79E -FC42281922B94604AABAF5F7A9B8E2D9A4358F38F2382EF9544B859D098DF243 -034CC475CEDEBF0EDD0A60C907127BB32F7D85A62A44E90B4056D9B4B2FF3A49 -786032C6B25794E2C0003C7852C6B0688351FBFC43300FB0B72880BB7B58BB61 -3D1064E7D4DDB128A9B38EF7510B7E5F82BDE39489E2D1DF08816781B13836E4 -89390F84577F31776FE43A5F94F817A4AA4A698AA4AE84B178FCB65F1B5A5CE1 -334417595F6E40849041565BAA497F6E4B8F4305D849128C9A26A98B909EABE9 -8F2659189ED27C588ADC7C744712B4D9AD0C5DD25D1233E979DE7F53C5F1C47C -E9DF254086E5EC70EBC6B7E080060BA72F15E6BB75C75011B15B7ABB6BF761DD -428FF1BD688938C75BEABA7DEE2AF49364D2E198FDC7F8FA2313BBE598ED3703 -7ECAAA4670BE3A85C693ACA829A5936778BCDCDB38A5981D4CAC8994E2B2F086 -26D8793AC1393D49A8F2FE391F0EF8899F63CFA5A77BC739C867C6CFB9A226B4 -620AED34573F068052604331B7E8E1F0C3BC0BD7DF733F056DB8C3F57E3035BB -EC82DF5B511453A952D429AC721A4F94D5C9BA5B83545948643D0596F4C6C9C5 -796BEC7B26EB9D729F337E0FDFA91E5955585C330D0C4F193FAC870A28CE054C -8942BDA170717B7AE9927C936DF0076507F55CA2979BADD3EFACC0A599933EB6 -F148BB7C3D61066CCC93A5856D253D759F30E37534743210743F0D53F58D0B45 -463F053E19A16E5A1B111915D1E664802F8C6C3ACA0F1BFCF3E209D1FD6C79D1 -5D867E142AD6E69933768274F4E2AB57CC518AD5A1C120887EEDDDF18C291BE7 -B3DB17E8FDB124B11B6142DC60F560DDD668D700614732F3FBAC4637B9F41361 -54CD2D8757A9D9BEDD1EC72FDAAED3CE4A1144F1E919FDB952BA7CA1E3D31C3E -9E434E2E44E7A83AE3480EBE89E0881584045E4AA5814897382EEE5FB5C9410C -2DC7A2136551DE2AA713487A77B911A7E7AEE41F0BEA1FDAC1950473B1394479 -513741DE60091BFB9751C780D99F2DADD5AD8283DC9CD1C81B902C9F3C9C3EB9 -55608E09D6DD423540BCF72394A24F81135C9D9063C0F4441BFE0120E03558D3 -4A16744457EC281AB2A60432C97DEDD16B2F1FF4C1A90D72D46C9F9BE984C6E3 -E239F98B59A938C2A6490889B437CFC21D923572530E41B7567A9C7E2464DB2B -18FAF3EB7CBFE7BED6E77219C0366A7D54D469CE3FF62E75FCA2ED6A46F3E5C4 -489992EE1A42C19DA52F0CB2B1A6956BB3F1767B97FDF225685FF7C9E9243497 -144D31ECF634CABABB79E323CFD483BD7A7B0C2679A9C3DFF0D44F09F084CF3E -886CBC91C5386A266730CE2AF3863534E2450583F6ABB520C27C4EFEA01EBC8A -F019D25B7BDB40CD6712D7DF2DEBF0BC70A92D3B64D1FDF723DBF3D4AE939E96 -D93646BAAE0BC57BB244AAF47ADE59A5228F057192D917E2BBBF588335E09095 -1CD4AA406C1D10C8EE6812DA676A8FD166461064BE4150CB95C41FC055FF8FA1 -89A4BAACB0B978A58EDDDB0CBEBF6566D47CC0AFC93110751B59EA33AB5D6EAB -0DB9A65CB16A053495F06B0D49A70BA8A7826EB571B8428AFE5EBB99AB9B56C6 -F69DCC77C25BBBB53FF25C5DB5CB8E742E3C0BFC25098B4CAEF12D299C886881 -0D4EB71D637BC0CD4D63BD6B4F5FEF9B083D95C34FB9E7BC9FCCAC0B9C7D8AB1 -1816B17AFBFE1DA146662723887E435E17AD2E2315AD800EBEE700B3C12B50EF -4A48C2839AB4BB367E908F59BB5AB88635C3E1B89948BE9F32EFEDC2E439CC79 -BD9754280477F7C982850438092D309C213D70F8D476728119E8FA03762C22B8 -89AC2A2A7C0BEBB0C91CAA95BCCDF91AA918766C82A978B7313870327F89107E -11A44FF02F597C8D4B085F6D7A098233ADADA521CDF34A78081F8965DCA615FB -55DB12C1E3459E49C273ABD2663B13447365C9C1C52E192282E96049FD58506F -FBC9507DDD77014C29275D1352CD5FC765853E858A5781F2DA41360D32FB5A54 -D04E088FD99F8C01DF740E587AACB0E431E03E170CBDA9FF1FCDE8D9FF5E43A5 -73166AF5990B238122AB322F709FEF2F0E2FA7C04FBB62C5383997BC9CFAC8EE -3FAD26E788DB37ECB388CD80A7D861AA9E9199E7BD065BD7A4D21A0D56DA9323 -2AFAE158CBB662283EA7310D32FB5A54D04E088FD99F8C01DF7535A5156B8344 -F1CCDE84A46AB2CC7F0CFD113074A1C4D90758EE58F61589051A0150121A7BAB -A636171E6814A1398DCB9F13FE9B11ED5A5F2EEAC14E0C831B2540D10BC0EDAE -833A83965A33180B0AEA361848DF8FE8E50DF6856F1D10C8EE6BB5198CFB7607 -B6B044160CBE8D4CFF067DF3579918B19B9128C2A83512FC0567CF47B38961BD -CC60FB8C6330A30AFEA9B276DA89313D6A83343298F34461B13C382575BE392E -F94E3EA3004D6D37C025DA3F1846E41606DD510D2C7D0BE9DD194E46BE7CAAF7 -A60D496CE85D2393457C50B2D586E010C7C4C7272F496F0CED0084EA956455F6 -2EE57D13B6485B968190360A3E30210D2664BF91C73AD1A811651CAC09A9DC0E -3A328E1DCA16082699B41A3D533703E58E366E871C982F262478E41DA3483028 -6BDBF03E444C6F0F4DA2CE9AB049F324F887732D21C4BF9C5365C603C9971CFA -7E45249203329FB9B4054B163C166E1322DED12CAAE39E289C126301D25076D0 -2FD409FABA5247D7A25945AD5881E18C2DAEC09606228CF925557DDFA155400F -8D446CFB8AD19704B6C544CFCE47ACCB854A74DEB5C646318679DD738987F800 -96844722729076811B5054DA998F9AEBE37DE5068418F41A007E645599C0BC21 -8363573C695B3F68111CE4A6199C8BD40D61E46A153C3C25D0C7DC125415D125 -D0C6130BB6B603ED78153E0CFE7384F7481FD4EDA141C27898B3636398EFBBC1 -9E81060816655B2F7052016A4C72A6A1CDB83BCCB2EB475A9BE17EB08A5ADA04 -CA8AACF6FE68BBDE580243B111BE76EC06E70CB7751A8B206143D0134BF52670 -BB3F44DD8AA7D26283A483CB46286EE0A9BB4FDB0337342BBF362C236C30A120 -D85812760265E3B283F48C05E78F47CF5C678F54658A30EBD7AAD5840F3C7B9E -21D8CA390CFD164792FF2040E07FA087FDA110A93430C7FAD65C951AEEF79D91 -FC25EC950E250511BB22156C2886A249CD442575934D385554B2B4534AC28C31 -43A657DC937CFAF3F6C87EF4F2826BB02C41DB634D91B70BCCC4F83F4C32796F -C5664490597DA5F2CAC7C0013B18373EF51520DFE081F95E0C1693D02E39AA2B -E356FD312C233285B2A8C8C337504C1EA7E9E1F6BD250B5874842F68C92DA11D -F74E6068495709EDCC6E4BB3A96AA3A4C89411FF06B66DA03FCBB052CF5DE837 -4834FDB84E2248DBC10CD7454636E97E399A7AC5A16A2191D763AFC09588F5EE -57E80130CBDAF18FE2F530BDBD2CFC21D684AF84A8CA37BF2258C80CA61485BB -27EFEBB52E5FDDA77E57AC8EEB3811BE2BC948A926FBBBAE974D9CE89333C945 -A9DFE37E5F34BA68EE97019BDBDAC7482826B8F71EC51A777B64C52B1C37326D -1172F83F6E4DF93B37E66CDD6344810758B10B2EA8C68918DBDBC72F8821F1E1 -96AB78288A2E00C2E03FA05640009DD0EB0D0D318C6A726DE5D8F2B1B035C658 -D09053A4B27B18F18BE4396C900A730908D832F3E8A21C36E32F2D603D0263C0 -8EADB43290CC59C43AD57D357057B13C9ABE55F11DAAA8D78574C430939CEF9E -FB36B462DA71CFB6E86C72ACAA04D5FE4732AC386F52D4AC92C47F9B11FC32E5 -B188AF2890EE3786AE2772D2FBC5D75A7FC59B0519F32D930B71AAEC8B88F1F5 -DCBACC2CBB9951DCC8F21A26F197A309C26ABBC4C25E3FF22B2A511A96F0BFF1 -2BD9AA37DA5DDDF261EAB0E48C62DE0885B8D074A7642D59C8E216B5F0A8B327 -1794E0BA5B672E41832562DE119AC5DA1AFB74AA66885ADB605AF60B44C1D904 -EF85F00E1F143A19DAC00F751E77EE62D394ACD26B463F7C7EBE4EFD40DD93F8 -81C2956C4250F5F28207671D7AFB3AC09FDD0126533384CF1B2004F31E053135 -44EDCAD0114140E52B7E153C354CF3F2BF37A15E2D19A2ED688710B6F9F83C5B -BA14795934112F7963FFD217F016DE82353B915549CECBDF7BDFC6FA4F7B74BE -E202170C9F25C7448970684BC555C8390E34A5098F55E0B003B841CAE775D48C -1603730AF8C091C0622640AC5A0B46757165B44F0AE1EC1072DA26A8EE0DA335 -A6BC8AF994F5508921F3D9E4E09B375A58ACBB9E6B0448903E19A5CF2A51F619 -81D2A539A4556B9C25722D4DFAAB480586C90874DCDFC2D70716B18572557BE9 -E9CAB7F5A3959D5419DD9FEC22D015EBB5D4BB5CABE110D76E8A76D6EF3513DB -5C23D3AE05BEFA77BF6B4ED5C413E8DB87B5ABD1B2FA9B3BF37A81C784ABC42B -1FEFDE6DF012974241B33B67AA67FA38798336F7354F0984D612DBB455D0662B -C8F15F12DA07E391480C1A150213ABBBB0F2927D223D5752B69C930053655C34 -FC487DD271A8AF594F457F6A083C4150686FBCBD60832E4E7D0D4987CAE5484B -CA81A230A21F9C49DFBEB24C94C93ADC954B9B3B3EC484C502BD0DFD605F6D5E -13158237535FA2EADA044ADCC1E1AD42918C8C67320F6621369C250D5335FC05 -AFEA1B294EA5D2A6F335FADB80CB26FCE9EBC0A4EBF72DD47806EBA23C3BCD77 -7F175E2041EA03E2F0B2BD2B81E9A6DD43BA3486375883C30B8606D917C678B6 -6E567A92A0E0DE89BEE5E5AC45C9202D46EED5E045302B71EABAC5FD997A9A7D -8F522B2CA316B7FDF16CE4981DBC25E4E2FCE3981324B16A18236476FE242584 -AE70C683199B7647325D295528EB7CB15A7E3940FE2D248945015E9DEEB9EB26 -7012041740F5A2A6C7DB7B2358EBC0358E9385E734D208957ADFC7DEF83F5E5F -4EDE55E2F078E994312214EEAF63F8D0B481C3D523E712901AD838AF2D840055 -E57D34F8FDD4C842D64D3D94B1CA46CEADF497A2FC75A45AC59F8696DE49672E -E33773AEB31A204F01793262E820E813949115DB90A7C798BDDEA0D5D1E699ED -753593F2B6373BD24D4647CF35A448037ED5E72DF3175DD6744ABAA0E2E0864A -2F4EFF3B07B035520A598CDF1AA97D7DC3057414513DDDDE40C2A9DEFB23631C -B2291ECEEF4D18652CEA451BB1559C0743FE3205BFB6711F1026A613D244BB07 -DB3830F07F32EA637775BCC1B2CEF0C6B0D119AF6CCA17DB1B03AB1E9281C568 -33502239B067013D261BBF33358AAB8803C451B2F570EC34BBA052170AB42F95 -F9386DA11A2C7BB9C05E8C9FDC96111549EAC90DFD8DC906C03F0281C40EC1BF -EB6B15455CF32FCE5C7DF6F55C91132223FD13FBD62A787EB15CF3E4E6E59AB7 -A529DA186B178CC6E8A4D876794527F3AD72FA86B7C2BAE14D3E5A41D8F90754 -AA28185D92C9ECBBDE4EE53E2BBDF05AB4C9700C1367B3D81FFC1AA34A79CEC1 -1CA7D422CB58C8E21870F680E48EB1B2D5A30D974A7E9B24DE13958976C76225 -45415635E32FF316DC4A69B3CD5EFC6EF5F845C8E24C92166C9076691817FA6E -AA5D1F1CE12235DEA3902F3C355CBDA5CC344376A5394AAA7C2CB50BCF32DB50 -4B6D9BED63F0A8928C0C06829558B714FD54F355501EEBE29882185A6CA1703F -6AE65F03CB07406324CCDF00093EBC76627A11A84B5EDB688D20DF49616D8D3F -7491719761E7627CF8FDCFC0DD2265160BEB33ADBE3AD01E7464370E3E0F9D45 -51FC9A87C678EAE5B16A564333DB11687FCB4D1D82C75A2F551FB4F940E0C71D -74CFDDA0974D787BE959B2B87FE13DC290C53819DBDC2081CCD16F34F0A61AF4 -3CF53914B713820BF8F2243C0679345EFD56307165AEDF16E3BC771EFBFF595E -C6B1DB8B028342D5DA1E8CF3FF4269126B48BDDE9BEEF7896CBA70EC77063CFB -0EB3C6FF697509736BCACAA7F03C4C326875396F0499B198DAF7842384C36C2F -36B17A65A1D9FB77649DD78499592C817679F344E0B88D80B8D78EEF9EC6A9FF -41F4D635520B2269035CEDDCB3B5518D63DEBAD4F365A70533AE119F11323AB2 -EF07047536DA6370C07B2215C3A82BFDB44DA593C6B3A33BACC38A105BEA2109 -06DC63737E3EB362A122FE90CE8EF37B9C73FA6933BF27C39EBDE137F15AC495 -7F58F6549759FFD86C2BD3A09490AB47B60E204B16910AFB0C18E4F2361AA033 -9BE5EF972F4B52F18548E3CB947F083768C7254FC019CBD8C4DE7E01DFA456A1 -065EF834C7B146FD395ADBB9FB72B8EABF58EE9E2B2276C87FB83CEAD49BBA55 -7DA56ECA50BE1AE4819EA3C72DBE30F363D43C75287945B0DE47D1FF0283C494 -EA65527E8708279B3B2437BF1CA2456E260020E4FC0A85BA18562CDB8261FDBE -0B928EF40F0DD40E215B8BBD40BB5B5DCF2FD9AB4D5AF64F82EC77BFF8C37BE3 -74BB9B2E44C819E84CE2C634D55A9EEB4F6DA28025C3831B601AD254108178F3 -3EC068E78ED8C72AFC5C3BE0BFE17F31A23B55E7158FFC40381F36DFEB6612EF -33A54D2004D92F0A44B3468DBAC0ED5E34F70561F5E77DA369754685B7F6B04F -233454A59AFDF45F28383B05B6120717744B58D2A96BA706CC9317B5E7FD0848 -56665EB38E31C7F8C87B0C65041A5D2E349CB4264523AABF9C10CA95CDD3BE1D -9923C1A11D046FFC2E82A09E36ED0146978DC383AC6D70EABB20327360CF7EE1 -DC4DE736760F5CF3B47F7BA082DCBF881ED8DEBC1A4580C287418295CFEBFB01 -51B09DFC98C8A8C9C5F9AAA6971CA95D96A23166E5931F7E464B288F4E357112 -4111BB33FB7F0E042448478D3ED7AAEA57D1B0B4E237F919152F8D9E86229BFC -B8D59BF9FB9E0062A3ED67A367669D0F2F8EFEB2219E5FFE7400A9DC725ADA62 -706D4D1860BC04D4432F49D7F4271376678D381B148D72DAD9012173FF3779A1 -7C4D92B28D3117888C864440902499FF0F9BEAB0C83FBD788E26B0BA47484188 -FC01B0349E045421E7D912E1BD329A536F61169344F16D65F6B90DB87E22F72D -8E6F486F8D21E6DAE282C35A2723464F560CAD8B31A931CCA7A2FDB9530769FC -BE0A5F66F1D4DBC0EAF834D078CFAFA415F43DC87AC62A1D8913334016B3FF37 -20902A7E5644848A57346228A13D7B1C757DFA9B5FC4E9E1DCB2C2AA2FD37386 -87E6B350662256D158D8C7DCD2F7AB1E02D6C5C8E3ECB1C6055A6C0B807B8FF7 -997E562EDBEDF7646B64165A55DED91178BF13FD30ADC1A6B6D621B1A7AEE1F4 -2E30D49CF3BD0656F584CECE76A17151913D7ADB223727B47EB3D7F491385112 -D36848973526DDAD7C1C1C0FB672EC627172D10DD33ADF2445483470F28AF65F -29CB086189B3FFA31E0CDA710B6DE2B0EE515A46A3FCFC354AF01AF5C5D0B301 -C8FDEADC6DB9D492554777965E2751A715F8FFB6E0248AC51928DD65CA4F6574 -BB1E01B3ED95D736691EBEA8ADFCD8265F128A67C372720840A206056F66A7A4 -10E1722E4C1BDEA8C980250F9E034C29FE0F7D2F5DAACAE3173C865CA9C4C240 -49B6D4D0CD90B75D3BC68B8C84605923075A9A2D5D6F7008365E52796975CCA5 -02770D168EAF28C337D45762A08817666907C68142CFAB9D75C4F6D6A73FB4C0 -748F038F140CB009A24A80270037C9B5E514E04AEAD7CA8468C4D22E1059F2D2 -EA0E7CA2979C7066F1629B49FDB893DBECF6620FF9C48132297E81F717820A90 -BDB45E16CA1D0D9C152B12D50AF4E1B2519FBB2B779218C5E42E31FDF82448E3 -5AFC5F90AA018902EFFC4D5A14D4326911F7055F9B7AC5B592E2E2D3A198E2C7 -F476CB49DBA0FFB2CAAF494DAD087639203084CEA25DED422E0F8A30634FF1DF -EE5C61FEEC33D547A17961534B3535AA673AE15F560DDFF08EA7AC126882B57F -A1AE8A5313E6D21F67FB6D16AD32690FCE021616D0DB89C51001090A4A7FB515 -139B751F6137DFEA833004F4689474DE3A8FF64D98EF09D25802C3B35DD2DED9 -FB5300E4F50E5CC70FAD3A21917D15D5DAAFE30DC1CCF79A359B81AA3F21359D -297B9795636C03E483A80D47A4826930854329FAC093193AEE3A19BA91063421 -988EA0ACD987862A716C42F071140254B72AC91B91911CD6A9D275FD7F6636B7 -4B1B0A47FD39120411E1D5442E711A6C1EB0741C67B0A44C1A2F98C9FF245A9D -5AE4A04B529CC5FDBABB1C6E8C1590B3CE658EB77B58F4D04803DC351C5645D0 -4DB49D76906E068C3FB553AE91FDFF5F22F734DC4BF8E9D019B06D3A1BB7CDCE -9101E9D2276CCACFB36B9EC74AD213BCE896FAC45D08EBE43E676816DDA135EA -8B78003042DA8581975D4C14CBDECE0B027AE87DF28611F387E64B951812C848 -B661FCC0DF91B39DEF14976D7D00609DE2DB8195C186E376F4029CBACE3AF24D -AABB788FB1AC87D58BF341F95EC2DBD14BFF27D3DAD9A06569FD4EEE40C516AC -D809E761BFCA049DCD6F8E43E60A0BFE64BCB922D1989CC14EAC1987147A5559 -4F1CA14635DF029AC387BE36036BAEA8AE7DD09D090EBE271FE59FD806894A72 -61C714D6D08322726CAAF168C08CE31F26CDF6613C06CC50DBD59B70DA211B44 -1BFA22AD62D56AD098FFB998E25FABBD89A2C17EB7A3AE81F79C05AA4677D744 -7F412484C16CFB322FABEACF98AF9F152E3217D0F2593D6863E7872C5B6F82BB -FDFD09B13FA639680E972DC7B086D7DAAB076CF346814556119BDFBDC3A16374 -E7B92CE50B3BEE8B7C26856BDD3C2ED98337C2B877ED5EE4878C50F06A64F750 -E9C8CA83B7FE6C91E10FA717CCEC0D2F8E21CB5A2367B5C90A81897B6973FAD7 -D4D95F6BEDE4E1EBE6D852A937D5D814AA6BA62324C08AC12FC09C5037588F7B -1B043BC503D725EC657F47DE02CBA939ECD8418F4B7C705EDA3E9AF1E623A989 -074165DB0DDD59B7ECF513C714B7D0A1013E4E3F2B071F6A6DB89B7BBC2774B8 -87ADA7C572B0AA702156B715159829BA38A9EC28E1CF3494B0CEC876A97B4617 -2CC9162F204C36850CA9188B0B97300CDB1AB4F57B55D39BC539BFA5047B032F -02A88CDF11D098FD30F6A6B82B98AB9D288570FE18E4E6A707179D96287D438F -2D5D3C2305C5FAF075E0979EAB1DB645AD9DC87A621219C260FF67C2DB8D541F -8BE9E20ACDCF64C4C721AEF5B2B65761D0310CEF36B1A3E57092DEFB978A43F8 -B553169F523517518CA0618E31F9A5940EDA42D8B9D851AD1E77BC1C0C8EED23 -F469B0568B5A556A5FD5A20F5F4E00FA6F030ECC5E711865F1549E409792F7DA -D1FFD1BE1E6DD22619163B98EB0425319E738254ADA0AE57FE29E121B0D8F172 -DD717E0B59842BE9F6B37FEC3F1BBECE15664851EDA3DA3A1848191C38F2CF60 -7A262D4440322C26150C605AADAD4EC3EF0CA22D6A2F63BE63C9C08EA643B68B -9C88ED95D2F2F0868CC40278DC2752A1E61C793FB87EE69A6D348F98A0174B09 -5AE09E214EDA066174A6823347B831ADF2619281E43A71D549FE194D5AD4ED5B -1DE112CA90BB9D92C57FC3D89F1A57F7CEF2ACE8E944B8B725557F567D9DFC72 -3D28B0E11DA3F81633C042B5FD05513542A2B431B3744E2E9581ED828F5F8A8A -C600F526EA874274FEB94E64F0AD787F47C98899DAA4552E447D4B97B3774334 -8DF26A38D7CD36EA79B64CB31DB0302BFD0DD2280E10FFDEF59E2D1F6452FB09 -E2A7015523BC1A46AC2F816135FD4EC198D30E95203ECD2623E83FFC1436FF74 -068CFF87C1ABDE2D31AD1FEEE6031D889A25B9F2C05036F16BBDC143705545D8 -4D14A2467639644AFF1D239BB08AA769BB5476DD4FE9974DC01E85C02F82958C -12C3AAE071BF1E57C358F72290F15A2655C1C79DB5E5264133AD0139F9F9B540 -972A3FD82BF0377FDB8711A746B9F4C6016172C30CB33CEC0B327DA0DE2668BB -CD41 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000000000000000000 -cleartomark -%%EndFont %%BeginFont: CMBX12 %!PS-AdobeFont-1.0: CMBX12 003.002 %%Title: CMBX12 @@ -7537,29 +6909,120 @@ cleartomark {restore}if %%EndFont TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi) -@start /Fa 130[55 1[55 123[{ T1Encoding ReEncodeFont }2 -116.231 /SFRM1440 rf /Fb 133[34 41 41 55 41 43 30 30 -30 41 43 38 43 64 21 41 23 21 43 38 23 34 43 34 43 38 -8[58 4[43 57 1[52 60 58 70 48 2[28 58 3[59 55 54 58 7[38 -38 38 38 38 38 38 38 38 38 3[21 31[43 12[{}52 74.7198 -/CMR9 rf /Fc 197[21 58[{}1 74.7198 /CMMI9 rf /Fd 134[39 -39 2[39 39 39 39 2[39 39 39 39 2[39 39 1[39 39 39 2[39 -19[39 27[39 39 2[39 45[{}20 74.7198 /CMSLTT10 rf /Fe -129[39 39 1[39 39 39 39 39 39 39 39 39 39 39 39 39 39 -39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 1[39 -39 39 39 39 39 39 39 39 39 1[39 39 39 39 39 39 1[39 39 -39 39 39 39 39 39 39 39 39 39 1[39 39 39 5[39 39 39 39 -39 39 39 39 39 1[39 39 39 39 39 1[39 39 1[39 33[{}81 -74.7198 /CMTT9 rf /Ff 167[62 3[60 46 2[57 1[62 76 52 -1[43 1[62 65 54 1[63 60 67[{}13 83.022 /CMR10 rf /Fg -135[67 2[67 1[50 2[61 69 5[33 1[70 2[68 52[60 47[{}9 -109.174 /CMCSC10 rf /Fh 140[56 3[56 56 1[56 2[56 56 56 -57[56 45[{}8 109.091 /CMTT12 rf /Fi 130[45 1[45 123[{ - T1Encoding ReEncodeFont }2 91.3242 /SFRM1095 rf /Fj -134[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 -48 48 48 48 48 48 48 48 1[48 2[48 3[48 3[48 1[48 1[48 -1[48 48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 48 -48 48 2[48 5[48 39[{}49 90.9091 /CMSLTT10 rf /Fk 134[65 +@start +%DVIPSBitmapFont: Fa ecrm1440 14 2 +[/grave/acute/circumflex/tilde/dieresis/hungarumlaut/ring/caron/breve/macron +/dotaccent/cedilla/ogonek/quotesinglbase/guilsinglleft/guilsinglright +/quotedblleft/quotedblright/quotedblbase/guillemotleft/guillemotright/endash +/emdash/afii61664/perthousandzero/dotlessi/dotlessj/ff/fi/fl/ffi/ffl/uni2423 +/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft +/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four +/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A +/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash +/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o +/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde/hyphen.alt/Abreve +/Aogonek/Cacute/Ccaron/Dcaron/Ecaron/Eogonek/Gbreve/Lacute/Lcaron/Lslash +/Nacute/Ncaron/Eng/Ohungarumlaut/Racute/Rcaron/Sacute/Scaron/Scedilla/Tcaron +/Tcommaaccent/Uhungarumlaut/Uring/Ydieresis/Zacute/Zcaron/Zdotaccent/IJ +/Idotaccent/dcroat/section/abreve/aogonek/cacute/ccaron/dcaron/ecaron +/eogonek/gbreve/lacute/lcaron/lslash/nacute/ncaron/eng/ohungarumlaut/racute +/rcaron/sacute/scaron/scedilla/tcaron/tcommaaccent/uhungarumlaut/uring +/ydieresis/zacute/zcaron/zdotaccent/ij/exclamdown/questiondown/sterling +/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute +/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve +/Oacute/Ocircumflex/Otilde/Odieresis/OE/Oslash/Ugrave/Uacute/Ucircumflex +/Udieresis/Yacute/Thorn/SS/agrave/aacute/acircumflex/atilde/adieresis/aring +/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex +/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/oe/oslash +/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/germandbls] +A/EN0 X IEn S/IEn X FBB FMat/FMat[0.00857143 0 0 -0.00857143 +0 0]N/FBB[-5 -31 117 109]N +/Fa 2 126 df<00000000FC0000000FFC0000007F80000001FC00000003F80000000FF0 +0000001FE00000001FC00000003F800000007F800000007F00000000FF00000000FE0000 +0000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000000 +00FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000 +FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE +00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00 +000000FE00000000FE00000000FE00000000FE00000000FE00000001FE00000001FC0000 +0003FC00000003F800000007F00000000FF00000001FC00000003F80000000FE00000007 +F8000000FFE0000000FFE000000007F800000000FE000000003F800000001FC00000000F +F000000007F000000003F800000003FC00000001FC00000001FE00000000FE00000000FE +00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00 +000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0000 +0000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000000 +00FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000 +FE00000000FE00000000FE00000000FE00000000FE00000000FF000000007F000000007F +800000003F800000001FC00000001FE00000000FF000000003F800000001FC000000007F +800000000FFC00000000FC267478D637>123 D<FE00000000FFE000000007F800000000 +FE000000003F800000001FC00000000FF000000007F000000003F800000003FC00000001 +FC00000001FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE +00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00 +000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0000 +0000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000000 +00FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000 +FE00000000FF000000007F000000007F800000003F800000001FC00000001FE00000000F +F000000003F800000001FC000000007F800000000FFC0000000FFC0000007F80000001FC +00000003F80000000FF00000001FE00000001FC00000003F800000007F800000007F0000 +0000FF00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000000 +00FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000 +FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE +00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00 +000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0000 +0001FE00000001FC00000003FC00000003F800000007F00000000FF00000001FC0000000 +3F80000000FE00000007F8000000FFE0000000FE00000000267478D637>125 +D E +/Fa load 0 Fa currentfont 116.667 scalefont put/FMat +X/FBB X/IEn X +%EndDVIPSBitmapFont +/Fb 133[34 41 41 55 41 43 30 30 30 41 43 38 43 64 21 +41 23 21 43 38 23 34 43 34 43 38 8[58 4[43 57 1[52 60 +58 70 48 2[28 58 3[59 55 54 58 7[38 38 38 38 38 38 38 +38 38 38 3[21 31[43 12[{}52 74.7198 /CMR9 rf /Fc 197[21 +58[{}1 74.7198 /CMMI9 rf /Fd 134[39 39 2[39 39 39 39 +2[39 39 39 39 2[39 39 1[39 39 39 2[39 19[39 27[39 39 +2[39 45[{}20 74.7198 /CMSLTT10 rf /Fe 129[39 39 1[39 +39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 +39 39 39 39 39 39 39 39 39 39 39 39 1[39 39 39 39 39 +39 39 39 39 39 1[39 39 39 39 39 39 1[39 39 39 39 39 39 +39 39 39 39 39 39 1[39 39 39 5[39 39 39 39 39 39 39 39 +39 1[39 39 39 39 39 1[39 39 1[39 33[{}81 74.7198 /CMTT9 +rf /Ff 167[62 3[60 46 2[57 1[62 76 52 1[43 1[62 65 54 +1[63 60 67[{}13 83.022 /CMR10 rf /Fg 135[67 2[67 1[50 +2[61 69 5[33 1[70 2[68 52[60 47[{}9 109.174 /CMCSC10 +rf /Fh 140[56 3[56 56 1[56 2[56 56 56 57[56 45[{}8 109.091 +/CMTT12 rf +%DVIPSBitmapFont: Fi ecrm1095 11 2 +/EN0 load IEn S/IEn X FBB FMat/FMat[0.0109091 0 0 -0.0109091 +0 0]N/FBB[-5 -25 96 86]N +/Fi 2 126 df<0000003F000003FF00000FE000003F8000007E000000FC000001F80000 +03F0000003F0000007F0000007E0000007E0000007E0000007E0000007E0000007E00000 +07E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E00000 +07E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E00000 +07E0000007E0000007E000000FE000000FC000000FC000001F8000003F0000007E000001 +FC000007F00000FFC00000FFC0000007F0000001FC0000007E0000003F0000001F800000 +0FC000000FC000000FE0000007E0000007E0000007E0000007E0000007E0000007E00000 +07E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E00000 +07E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E00000 +07E0000007E0000007E0000007F0000003F0000003F0000001F8000000FC0000007E0000 +003F8000000FE0000003FF0000003F205C7AC42D>123 D<FC000000FFC0000007F00000 +01FC0000007E0000003F0000001F8000000FC000000FC000000FE0000007E0000007E000 +0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000 +0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000 +0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007F0000003F000 +0003F0000001F8000000FC0000007E0000003F8000000FE0000003FF000003FF00000FE0 +00003F8000007E000000FC000001F8000003F0000003F0000007F0000007E0000007E000 +0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000 +0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000 +0007E0000007E0000007E0000007E0000007E0000007E0000007E000000FE000000FC000 +000FC000001F8000003F0000007E000001FC000007F00000FFC00000FC000000205C7AC4 +2D>125 D E +/Fi load 0 Fi currentfont 91.6667 scalefont put/FMat +X/FBB X/IEn X +%EndDVIPSBitmapFont +/Fj 134[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 +48 48 48 48 48 48 48 48 48 48 1[48 2[48 3[48 3[48 1[48 +1[48 1[48 48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 +48 48 48 2[48 5[48 39[{}49 90.9091 /CMSLTT10 rf /Fk 134[65 65 89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61 37 56 68 55 68 60 7[93 1[127 1[94 85 68 92 92 84 92 96 116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61 61 @@ -7614,22 +7077,22 @@ ifelse TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5 b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31 b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(5.1,)g(for)f -Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.1.)3118 1697 y(Septem)m(b)s(er)f -(2020)150 4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 -b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 -y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11 +Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.1.)3217 1697 y(Octob)s(er)f(2020)150 +4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46 +b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11 +b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11 b(oundation)p 150 5141 3600 17 v eop end %%Page: 2 2 TeXDict begin 2 1 bop 150 4279 a Fu(This)35 b(text)h(is)g(a)g(brief)f (description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f -(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.1,)c(23)f(Septem)m(b)s -(er)f(2020\).)150 4523 y(This)e(is)h(Edition)f(5.1,)j(last)e(up)s -(dated)f(23)h(Septem)m(b)s(er)f(2020,)j(of)e Fr(The)f(GNU)i(Bash)e -(Reference)i(Man)m(ual)p Fu(,)150 4633 y(for)g Ft(Bash)p -Fu(,)g(V)-8 b(ersion)31 b(5.1.)150 4767 y(Cop)m(yrigh)m(t)602 -4764 y(c)577 4767 y Fq(\015)f Fu(1988{2018)35 b(F)-8 -b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390 -4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8 +(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.1,)c(29)f(Octob)s(er)f +(2020\).)150 4523 y(This)35 b(is)g(Edition)h(5.1,)i(last)f(up)s(dated)d +(29)i(Octob)s(er)g(2020,)j(of)c Fr(The)h(GNU)g(Bash)f(Reference)i(Man)m +(ual)p Fu(,)150 4633 y(for)30 b Ft(Bash)p Fu(,)g(V)-8 +b(ersion)31 b(5.1.)150 4767 y(Cop)m(yrigh)m(t)602 4764 +y(c)577 4767 y Fq(\015)f Fu(1988{2020)35 b(F)-8 b(ree)31 +b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390 4902 +y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f (under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8 b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26 @@ -16695,7 +16158,7 @@ Ft(On)p Fu(',)g(Readline)f(will)g(con\014gure)f(the)h(terminal)g(in)f 1771 y(b)s(een)e(read)i(from)e(the)i(k)m(eyb)s(oard.)49 b(This)32 b(can)h(prev)m(en)m(t)h(pasted)f(c)m(haracters)1110 1880 y(from)d(b)s(eing)g(in)m(terpreted)h(as)f(editing)h(commands.)41 -b(The)29 b(default)i(is)f(`)p Ft(off)p Fu('.)630 2037 +b(The)29 b(default)i(is)f(`)p Ft(On)p Fu('.)630 2037 y Ft(enable-keypad)1110 2146 y Fu(When)23 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(try)f(to)h(enable)g(the)f (application)i(k)m(eypad)1110 2256 y(when)h(it)h(is)f(called.)41 diff --git a/doc/bashref.texi b/doc/bashref.texi index 03a18b89..d0b7737d 100644 --- a/doc/bashref.texi +++ b/doc/bashref.texi @@ -14,7 +14,7 @@ This is Edition @value{EDITION}, last updated @value{UPDATED}, of @cite{The GNU Bash Reference Manual}, for @code{Bash}, Version @value{VERSION}. -Copyright @copyright{} 1988--2018 Free Software Foundation, Inc. +Copyright @copyright{} 1988--2020 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/builtins.ps b/doc/builtins.ps index 739c9408..f5147de6 100644 --- a/doc/builtins.ps +++ b/doc/builtins.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 -%%CreationDate: Thu Oct 1 14:49:24 2020 +%%CreationDate: Thu Oct 29 16:21:25 2020 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic diff --git a/doc/rbash.ps b/doc/rbash.ps index 5406b43d..d6267fb5 100644 --- a/doc/rbash.ps +++ b/doc/rbash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 -%%CreationDate: Thu Oct 1 14:49:24 2020 +%%CreationDate: Thu Oct 29 16:21:25 2020 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%DocumentSuppliedResources: procset grops 1.22 4 diff --git a/doc/version.texi b/doc/version.texi index 6312d387..561a6d0e 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -2,10 +2,10 @@ Copyright (C) 1988-2020 Free Software Foundation, Inc. @end ignore -@set LASTCHANGE Wed Sep 23 09:28:04 EDT 2020 +@set LASTCHANGE Thu Oct 29 16:18:54 EDT 2020 @set EDITION 5.1 @set VERSION 5.1 -@set UPDATED 23 September 2020 -@set UPDATED-MONTH September 2020 +@set UPDATED 29 October 2020 +@set UPDATED-MONTH October 2020 diff --git a/execute_cmd.c b/execute_cmd.c index f85fe3f3..d2a0dd71 100644 --- a/execute_cmd.c +++ b/execute_cmd.c @@ -1617,7 +1617,7 @@ execute_in_subshell (command, asynchronous, pipe_in, pipe_out, fds_to_close) default_buffered_input = -1; #endif -#if 0 /* XXX - TAG:bash-5.1 */ +#if 0 /* TAG: bash-5.2 */ if (user_subshell && command->type == cm_subshell) optimize_subshell_command (command->value.Subshell->command); #endif @@ -5484,7 +5484,11 @@ execute_disk_command (words, redirects, command_line, pipe_in, pipe_out, { /* If we're optimizing out the fork (implicit `exec'), decrement the shell level like `exec' would do. */ +#if 0 /* TAG: bash-5.2 psmith 10/11/2020 */ + if (nofork && pipe_in == NO_PIPE && pipe_out == NO_PIPE && (subshell_environment & SUBSHELL_PIPE) == 0) +#else if (nofork && pipe_in == NO_PIPE && pipe_out == NO_PIPE) +#endif adjust_shell_level (-1); maybe_make_export_env (); diff --git a/lib/glob/glob.c b/lib/glob/glob.c index c6f35933..eb6277f0 100644 --- a/lib/glob/glob.c +++ b/lib/glob/glob.c @@ -484,7 +484,7 @@ wdequote_pathname (pathname) /* Convert the wide character string into unibyte character set. */ memset (&ps, '\0', sizeof(mbstate_t)); n = wcsrtombs(pathname, (const wchar_t **)&wpathname, len, &ps); - if (n == (size_t)-1 || *wpathname != 0) /* what? now you tell me? */ + if (n == (size_t)-1 || (wpathname && *wpathname != 0)) /* what? now you tell me? */ { wpathname = orig_wpathname; memset (&ps, '\0', sizeof(mbstate_t)); diff --git a/lib/readline/bind.c b/lib/readline/bind.c index 3cbed2cc..87596dce 100644 --- a/lib/readline/bind.c +++ b/lib/readline/bind.c @@ -1812,7 +1812,7 @@ static const struct { { "convert-meta", &_rl_convert_meta_chars_to_ascii, 0 }, { "disable-completion", &rl_inhibit_completion, 0 }, { "echo-control-characters", &_rl_echo_control_chars, 0 }, - { "enable-bracketed-paste", &_rl_enable_bracketed_paste, 0 }, + { "enable-bracketed-paste", &_rl_enable_bracketed_paste, V_SPECIAL }, { "enable-keypad", &_rl_enable_keypad, 0 }, { "enable-meta-key", &_rl_enable_meta, 0 }, { "expand-tilde", &rl_complete_with_tilde_expansion, 0 }, @@ -1878,6 +1878,8 @@ hack_special_boolean_var (int i) } else if (_rl_stricmp (name, "show-mode-in-prompt") == 0) _rl_reset_prompt (); + else if (_rl_stricmp (name, "enable-bracketed-paste") == 0) + _rl_enable_active_region = _rl_enable_bracketed_paste; } typedef int _rl_sv_func_t PARAMS((const char *)); diff --git a/lib/readline/doc/hstech.texi b/lib/readline/doc/hstech.texi index 2de62f76..7ac11953 100644 --- a/lib/readline/doc/hstech.texi +++ b/lib/readline/doc/hstech.texi @@ -1,7 +1,7 @@ @ignore This file documents the user interface to the GNU History library. -Copyright (C) 1988-2016 Free Software Foundation, Inc. +Copyright (C) 1988-2020 Free Software Foundation, Inc. Authored by Brian Fox and Chet Ramey. Permission is granted to make and distribute verbatim copies of this manual diff --git a/lib/readline/doc/rluser.texi b/lib/readline/doc/rluser.texi index 746e38c8..26b0ff07 100644 --- a/lib/readline/doc/rluser.texi +++ b/lib/readline/doc/rluser.texi @@ -546,7 +546,7 @@ When set to @samp{On}, Readline will configure the terminal in a way that will enable it to insert each paste into the editing buffer as a single string of characters, instead of treating each character as if it had been read from the keyboard. This can prevent pasted characters -from being interpreted as editing commands. The default is @samp{off}. +from being interpreted as editing commands. The default is @samp{On}. @item enable-keypad @vindex enable-keypad diff --git a/lib/readline/doc/version.texi b/lib/readline/doc/version.texi index cb495abf..abb9cb6b 100644 --- a/lib/readline/doc/version.texi +++ b/lib/readline/doc/version.texi @@ -4,7 +4,7 @@ Copyright (C) 1988-2020 Free Software Foundation, Inc. @set EDITION 8.1 @set VERSION 8.1 -@set UPDATED 17 July 2020 -@set UPDATED-MONTH July 2020 +@set UPDATED 29 October 2020 +@set UPDATED-MONTH October 2020 -@set LASTCHANGE Fri Jul 17 09:35:36 EDT 2020 +@set LASTCHANGE Thu Oct 29 16:49:01 EDT 2020 diff --git a/lib/readline/isearch.c b/lib/readline/isearch.c index 201a37bb..ef65e5f5 100644 --- a/lib/readline/isearch.c +++ b/lib/readline/isearch.c @@ -357,7 +357,7 @@ _rl_isearch_dispatch (_rl_search_cxt *cxt, int c) /* XXX - experimental code to allow users to bracketed-paste into the search string even when ESC is one of the isearch-terminators. Not perfect yet. */ - if (_rl_enable_bracketed_paste && c == ESC && strchr (cxt->search_terminators, c) && (n = _rl_nchars_available ()) > (2*BRACK_PASTE_SLEN-1)) + if (_rl_enable_bracketed_paste && c == ESC && strchr (cxt->search_terminators, c) && (n = _rl_nchars_available ()) > (BRACK_PASTE_SLEN-1)) { j = _rl_read_bracketed_paste_prefix (c); if (j == 1) @@ -418,9 +418,11 @@ add_character: { /* If we have a multibyte character, see if it's bound to something that affects the search. */ - if (cxt->mb[1]) +#if defined (HANDLE_MULTIBYTE) + if (MB_CUR_MAX > 1 && rl_byte_oriented == 0 && cxt->mb[1]) f = rl_function_of_keyseq (cxt->mb, cxt->keymap, (int *)NULL); else +#endif { f = cxt->keymap[c].function; if (f == rl_do_lowercase_version) @@ -680,7 +682,8 @@ opcode_dispatch: free (paste); break; } - rl_activate_mark (); + if (_rl_enable_active_region) + rl_activate_mark (); if (cxt->search_string_index + pastelen + 1 >= cxt->search_string_size) { cxt->search_string_size += pastelen + 2; @@ -805,7 +808,8 @@ opcode_dispatch: { cxt->prev_line_found = cxt->lines[cxt->history_pos]; rl_replace_line (cxt->lines[cxt->history_pos], 0); - rl_activate_mark (); + if (_rl_enable_active_region) + rl_activate_mark (); rl_point = cxt->sline_index; if (rl_mark_active_p () && cxt->search_string_index > 0) rl_mark = rl_point + cxt->search_string_index; diff --git a/lib/readline/kill.c b/lib/readline/kill.c index e9d52502..50c3fdea 100644 --- a/lib/readline/kill.c +++ b/lib/readline/kill.c @@ -729,7 +729,8 @@ rl_bracketed_paste_begin (int count, int key) buf = _rl_bracketed_text (&len); rl_mark = rl_point; retval = rl_insert_text (buf) == len ? 0 : 1; - rl_activate_mark (); + if (_rl_enable_active_region) + rl_activate_mark (); xfree (buf); return (retval); diff --git a/lib/readline/readline.c b/lib/readline/readline.c index 800eb119..e61d188b 100644 --- a/lib/readline/readline.c +++ b/lib/readline/readline.c @@ -321,7 +321,8 @@ int _rl_show_mode_in_prompt = 0; /* Non-zero means to attempt to put the terminal in `bracketed paste mode', where it will prefix pasted text with an escape sequence and send another to mark the end of the paste. */ -int _rl_enable_bracketed_paste = 1; /* XXX - for now */ +int _rl_enable_bracketed_paste = BRACKETED_PASTE_DEFAULT; +int _rl_enable_active_region = BRACKETED_PASTE_DEFAULT; /* **************************************************************** */ /* */ diff --git a/lib/readline/rlprivate.h b/lib/readline/rlprivate.h index 050f5068..23ab2d8c 100644 --- a/lib/readline/rlprivate.h +++ b/lib/readline/rlprivate.h @@ -312,6 +312,10 @@ extern int _rl_isearch_cleanup PARAMS((_rl_search_cxt *, int)); extern int _rl_search_getchar PARAMS((_rl_search_cxt *)); /* kill.c */ +#ifndef BRACKETED_PASTE_DEFAULT +# define BRACKETED_PASTE_DEFAULT 1 /* XXX - for now */ +#endif + #define BRACK_PASTE_PREF "\033[200~" #define BRACK_PASTE_SUFF "\033[201~" @@ -532,6 +536,7 @@ extern int _rl_revert_all_at_newline; extern int _rl_echo_control_chars; extern int _rl_show_mode_in_prompt; extern int _rl_enable_bracketed_paste; +extern int _rl_enable_active_region; extern char *_rl_comment_begin; extern unsigned char _rl_parsing_conditionalized_out; extern Keymap _rl_keymap; diff --git a/lib/readline/search.c b/lib/readline/search.c index ab65a375..38a29361 100644 --- a/lib/readline/search.c +++ b/lib/readline/search.c @@ -192,7 +192,7 @@ noninc_dosearch (char *string, int dir, int flags) make_history_line_current (entry); - if (_rl_enable_bracketed_paste && ((flags & SF_PATTERN) == 0) && ind > 0 && ind < rl_end) + if (_rl_enable_active_region && ((flags & SF_PATTERN) == 0) && ind > 0 && ind < rl_end) { rl_point = ind; rl_mark = ind + strlen (string); diff --git a/lib/readline/terminal.c b/lib/readline/terminal.c index 41b6f194..05415dc4 100644 --- a/lib/readline/terminal.c +++ b/lib/readline/terminal.c @@ -456,7 +456,7 @@ _rl_init_terminal_io (const char *terminal_name) { const char *term; char *buffer; - int tty, tgetent_ret; + int tty, tgetent_ret, dumbterm; term = terminal_name ? terminal_name : sh_get_env_value ("TERM"); _rl_term_clrpag = _rl_term_cr = _rl_term_clreol = _rl_term_clrscroll = (char *)NULL; @@ -465,6 +465,8 @@ _rl_init_terminal_io (const char *terminal_name) if (term == 0) term = "dumb"; + dumbterm = STREQ (term, "dumb"); + #ifdef __MSDOS__ _rl_term_im = _rl_term_ei = _rl_term_ic = _rl_term_IC = (char *)NULL; _rl_term_up = _rl_term_dc = _rl_term_DC = _rl_visible_bell = (char *)NULL; @@ -544,6 +546,10 @@ _rl_init_terminal_io (const char *terminal_name) _rl_term_so = _rl_term_se = (char *)NULL; _rl_terminal_can_insert = term_has_meta = 0; + /* Assume generic unknown terminal can't handle the enable/disable + escape sequences */ + _rl_enable_bracketed_paste = 0; + /* Reasonable defaults for tgoto(). Readline currently only uses tgoto if _rl_term_IC or _rl_term_DC is defined, but just in case we change that later... */ @@ -595,6 +601,11 @@ _rl_init_terminal_io (const char *terminal_name) bind_termcap_arrow_keys (vi_insertion_keymap); #endif /* VI_MODE */ + /* There's no way to determine whether or not a given terminal supports + bracketed paste mode, so we assume a terminal named "dumb" does not. */ + if (dumbterm) + _rl_enable_bracketed_paste = 0; + return 0; } @@ -669,6 +669,11 @@ sigint_sighandler (sig) SIGRETURN (0); } + /* In interactive shells, we will get here instead of trap_handler() so + note that we have a trap pending. */ + if (signal_is_trapped (sig)) + set_trap_state (sig); + /* This is no longer used, but this code block remains as a reminder. */ if (interrupt_immediately) { @@ -3605,7 +3605,7 @@ expand_arith_string (string, quoted) /* This is expanded version of expand_string_internal as it's called by expand_string_leave_quoted */ td.flags = W_NOPROCSUB|W_NOTILDE; /* don't want process substitution or tilde expansion */ -#if 0 /* TAG:bash-5.1 */ +#if 0 /* TAG: bash-5.2 */ if (quoted & Q_ARRAYSUB) td.flags |= W_NOCOMSUB; #endif @@ -5939,9 +5939,11 @@ process_substitute (string, open_for_read_in_child) pid = make_child ((char *)NULL, FORK_ASYNC); if (pid == 0) { +#if 0 int old_interactive; old_interactive = interactive; +#endif /* The currently-executing shell is not interactive */ interactive = 0; @@ -5951,8 +5953,11 @@ process_substitute (string, open_for_read_in_child) restore_original_signals (); /* XXX - what about special builtins? bash-4.2 */ QUIT; /* catch any interrupts we got post-fork */ setup_async_signals (); +#if 0 if (open_for_read_in_child == 0 && old_interactive && (bash_input.type == st_stdin || bash_input.type == st_stream)) async_redirect_stdin (); +#endif + subshell_environment |= SUBSHELL_COMSUB|SUBSHELL_PROCSUB|SUBSHELL_ASYNC; /* We don't inherit the verbose option for command substitutions now, so @@ -6109,6 +6114,11 @@ process_substitute (string, open_for_read_in_child) remove_quoted_escapes (string); +#if 0 /* TAG: bash-5.2 */ + startup_state = 2; /* see if we can avoid a fork */ + parse_and_execute_level = 0; +#endif + /* Give process substitution a place to jump back to on failure, so we don't go back up to main (). */ result = setjmp_nosigs (top_level); @@ -7486,7 +7496,7 @@ verify_substring_values (v, value, substr, vtype, e1p, e2p) from end of positional parameters? */ #if 1 if ((vtype == VT_ARRAYVAR || vtype == VT_POSPARMS) && *e2p < 0) -#else /* XXX - TAG: bash-5.1 */ +#else /* TAG: bash-5.2 */ if (vtype == VT_ARRAYVAR && *e2p < 0) #endif { @@ -7943,7 +7953,11 @@ parameter_brace_transform (varname, value, ind, xform, rtype, quoted, pflags, fl if (valid_parameter_transform (xform) == 0) { this_command_name = oname; +#if 0 /* TAG: bash-5.2 Martin Schulte <gnu@schrader-schulte.de> 10/2020 */ + return (interactive_shell ? &expand_param_error : &expand_param_fatal); +#else return &expand_param_error; +#endif } starsub = vtype & VT_STARSUB; diff --git a/tests/dynvar.tests b/tests/dynvar.tests index 6e039900..5aefab64 100644 --- a/tests/dynvar.tests +++ b/tests/dynvar.tests @@ -50,7 +50,7 @@ unset before after # EPOCHSECONDS # not exact, but should work - +# could also use python -c 'import time; ts = int(time.time()); print(ts)' now1=$(perl -e 'print time') now2=$EPOCHSECONDS diff --git a/tests/run-vredir b/tests/run-vredir index 2a4faf30..2bdc1b83 100644 --- a/tests/run-vredir +++ b/tests/run-vredir @@ -1,2 +1,4 @@ +echo "warning: the text of a system error message may vary between systems and" >&2 +echo "warning: produce diff output." >&2 ${THIS_SH} ./vredir.tests > ${BASH_TSTOUT} 2>&1 diff ${BASH_TSTOUT} vredir.right && rm -f ${BASH_TSTOUT} @@ -456,6 +456,17 @@ run_pending_traps () last_command_exit_value = old_exit_value; } +/* Set the private state variables noting that we received a signal SIG + for which we have a trap set. */ +void +set_trap_state (sig) + int sig; +{ + catch_flag = 1; + pending_traps[sig]++; + trapped_signal_received = sig; +} + sighandler trap_handler (sig) int sig; @@ -484,9 +495,7 @@ trap_handler (sig) set_signal_handler (sig, trap_handler); #endif /* MUST_REINSTALL_SIGHANDLERS */ - catch_flag = 1; - pending_traps[sig]++; - trapped_signal_received = sig; + set_trap_state (sig); if (this_shell_builtin && (this_shell_builtin == wait_builtin)) { @@ -116,6 +116,8 @@ extern void set_signal_hard_ignored PARAMS((int)); extern void set_signal_ignored PARAMS((int)); extern int signal_in_progress PARAMS((int)); +extern void set_trap_state PARAMS((int)); + extern int next_pending_trap PARAMS((int)); extern int first_pending_trap PARAMS((void)); extern void clear_pending_traps PARAMS((void)); |