]> git.ipfire.org Git - thirdparty/bash.git/commitdiff
performance improvements for large history lists; fix problem with not unwind-protect...
authorChet Ramey <chet.ramey@case.edu>
Wed, 14 Feb 2024 14:43:03 +0000 (09:43 -0500)
committerChet Ramey <chet.ramey@case.edu>
Wed, 14 Feb 2024 14:43:03 +0000 (09:43 -0500)
19 files changed:
CWRU/CWRU.chlog
bashline.c
doc/bash.1
doc/bash.html
doc/bash.pdf
doc/bashref.dvi
doc/bashref.log
doc/bashref.ps
doc/builtins.0
doc/rbash.0
execute_cmd.c
lib/readline/bind.c
lib/readline/display.c
lib/readline/doc/history.3
lib/readline/doc/readline.3
lib/readline/doc/rltech.texi
lib/readline/history.c
subst.c
variables.c

index 9498c76290ba291b023d8dc4f7226dc1e408b2a3..77b8ad5aaa0fe327e41e8bfb4aaa3717821af703 100644 (file)
@@ -8571,3 +8571,39 @@ jobs.c
          way that we don't mark background jobs that exit cleanly as notified
          Inspired by a discussion with Robert Elz <kre@munnari.oz.au> and
          https://lists.gnu.org/archive/html/bug-bash/2024-01/msg00189.html
+
+                                   2/9
+                                   ---
+lib/readline/history.c
+       - DEFAULT_HISTORY_GROW_SIZE: bump up to 256
+       - real_history, real_history_size: the true history array and its
+         allocated size. the_history begins a user-visible window into this
+         list, extending for history_size entries
+       - history_list_grow_size: compute how much to extend the history list;
+         increase by roughly sqrt(history_size), don't extend by less than
+         (new) DEFAULT_HISTORY_GROW_SIZE
+       - history_list_resize: possibly resize/realloc real_history and reset
+         the_history to real_history and history_size to real_history_size
+       - advance_history: make the `window' that the_history provides into
+         real_history advance to simulate dropping an initial entry; don't
+         need to memmove all the entries any more
+       - add_history: call advance_history as necessary to move the_history
+         window
+       - add_history: call history_list_resize as necessary
+       Report and initial patch from Casey Johnson <strykre@hotmail.com>
+
+                                  2/12
+                                  ----
+bashline.c,lib/readline/bind.c,lib/readline/display.c
+       - replace some sprintf calls with snprintf to appease clang
+
+execute_cmd.c
+       - execute_simple_command: unwind-protect this_command_name, since we
+         assign it to something we will free if unwind-protects are run
+       - execute_function: unwind-protect currently_executing_command, since
+         execute_command_internal will change it to something will will free
+         if unwind-protects are run
+         Report from Grisha Levit <grishalevit@gmail.com>
+       - execute_function: if we didn't compile with debugger support, restore
+         currently_executing_command after run_debug_trap, like in other
+         cases
index c09152c521853fa7b83e56b044a1d51b66006a69..d51693b2ee3db7134bfa403aefad42c1ca3e1704 100644 (file)
@@ -949,8 +949,11 @@ edit_and_execute_command (int count, int c, int editing_mode, const char *edit_c
 
   if (rl_explicit_arg)
     {
-      command = (char *)xmalloc (strlen (edit_command) + 8);
-      sprintf (command, "%s %d", edit_command, count);
+      size_t clen;
+      /* 32 exceeds strlen (itos (INTMAX_MAX)) (19) */
+      clen = strlen (edit_command) + 32;
+      command = (char *)xmalloc (clen);
+      snprintf (command, clen, "%s %d", edit_command, count);
     }
   else
     {
index a259ad6dbd4710677eea2977f92bae4e4bd6cb49..66854edc111a42cb494231c71a46f07ea97283f9 100644 (file)
 .\" .}f
 .\" ..
 .\"
+.ie \n(.g \{\
+.ds ' \(aq
+.ds " \(dq
+.ds ^ \(ha
+.ds ~ \(ti
+.\}
+.el \{\
+.ds ' '
+.ds " ""\" two adjacent quotes and no space before this comment
+.ds ^ ^
+.ds ~ ~
+.\}
+.
 .\" File Name macro.  This used to be `.PN', for Path Name,
 .\" but Sun doesn't seem to like that very much.
 .\" \% at the beginning of the string protects the filename from hyphenation.
@@ -212,7 +225,7 @@ Display a usage message on standard output and exit successfully.
 Execute commands from
 .I file
 instead of the standard personal initialization file
-.I \(ti/.bashrc
+.I \*~/.bashrc
 if the shell is interactive (see
 .SM
 .B INVOCATION
@@ -230,10 +243,10 @@ library to read command lines when the shell is interactive.
 Do not read either the system-wide startup file
 .FN /etc/profile
 or any of the personal initialization files
-.IR \(ti/.bash_profile ,
-.IR \(ti/.bash_login ,
+.IR \*~/.bash_profile ,
+.IR \*~/.bash_login ,
 or
-.IR \(ti/.profile .
+.IR \*~/.profile .
 By default,
 .B bash
 reads these files when it is invoked as a login shell (see
@@ -243,7 +256,7 @@ below).
 .TP
 .B \-\-norc
 Do not read and execute the personal initialization file
-.I \(ti/.bashrc
+.I \*~/.bashrc
 if the shell is interactive.
 This option is on by default if the shell is invoked as
 .BR sh .
@@ -342,8 +355,8 @@ is invoked as an interactive login shell, or as a non-interactive shell
 with the \fB\-\-login\fP option, it first reads and
 executes commands from the file \fI/etc/profile\fP, if that
 file exists.
-After reading that file, it looks for \fI\(ti/.bash_profile\fP,
-\fI\(ti/.bash_login\fP, and \fI\(ti/.profile\fP, in that order, and reads
+After reading that file, it looks for \fI\*~/.bash_profile\fP,
+\fI\*~/.bash_login\fP, and \fI\*~/.profile\fP, in that order, and reads
 and executes commands from the first one that exists and is readable.
 The
 .B \-\-noprofile
@@ -352,18 +365,18 @@ option may be used when the shell is started to inhibit this behavior.
 When an interactive login shell exits,
 or a non-interactive login shell executes the \fBexit\fP builtin command,
 .B bash
-reads and executes commands from the file \fI\(ti/.bash_logout\fP, if it
+reads and executes commands from the file \fI\*~/.bash_logout\fP, if it
 exists.
 .PP
 When an interactive shell that is not a login shell is started,
 .B bash
-reads and executes commands from \fI\(ti/.bashrc\fP, if that file exists.
+reads and executes commands from \fI\*~/.bashrc\fP, if that file exists.
 This may be inhibited by using the
 .B \-\-norc
 option.
 The \fB\-\-rcfile\fP \fIfile\fP option will force
 .B bash
-to read and execute commands from \fIfile\fP instead of \fI\(ti/.bashrc\fP.
+to read and execute commands from \fIfile\fP instead of \fI\*~/.bashrc\fP.
 .PP
 When
 .B bash
@@ -378,7 +391,7 @@ behaves as if the following command were executed:
 .PP
 .RS
 .EX
-if [ \-n \(dq$BASH_ENV\(dq ]; then . \(dq$BASH_ENV\(dq; fi
+if [ \-n \*"$BASH_ENV\*" ]; then . \*"$BASH_ENV\*"; fi
 .EE
 .RE
 .PP
@@ -400,7 +413,7 @@ shell with the \fB\-\-login\fP option, it first attempts to
 read and execute commands from
 .I /etc/profile
 and
-.IR \(ti/.profile ,
+.IR \*~/.profile ,
 in that order.
 The
 .B \-\-noprofile
@@ -451,7 +464,7 @@ or the secure shell daemon \fIsshd\fP.
 If
 .B bash
 determines it is being run non-interactively in this fashion,
-it reads and executes commands from \fI\(ti/.bashrc\fP,
+it reads and executes commands from \fI\*~/.bashrc\fP,
 if that file exists and is readable.
 It will not do this if invoked as \fBsh\fP.
 The
@@ -770,7 +783,7 @@ The return value is 0 if the string matches (\fB==\fP) or does not match
 Any part of the pattern may be quoted to force the quoted portion
 to be matched as a string.
 .IP
-An additional binary operator, \fB=\(ti\fP, is available, with the same
+An additional binary operator, \fB=\*~\fP, is available, with the same
 precedence as \fB==\fP and \fB!=\fP.
 When it is used, the string to the right of the operator is considered
 a POSIX extended regular expression and matched accordingly
@@ -795,7 +808,7 @@ since normal quoting and pattern characters lose their meanings
 between brackets.
 .IP
 The pattern will match if it matches any part of the string.
-Anchor the pattern using the \fB\(ha\fP and \fB$\fP regular expression
+Anchor the pattern using the \fB\*^\fP and \fB$\fP regular expression
 operators to force it to match the entire string.
 The array variable
 .SM
@@ -1157,7 +1170,7 @@ retains its special meaning only when followed by one of the following
 characters:
 .BR $ ,
 .BR \` ,
-\^\fB\(dq\fP\^,
+\^\fB\*"\fP\^,
 .BR \e ,
 or
 .BR <newline> .
@@ -1180,7 +1193,7 @@ quotes (see
 .B PARAMETERS
 below).
 .PP
-Character sequences of the form \fB$\fP\(aq\fIstring\fP\(aq are treated
+Character sequences of the form \fB$\fP\*'\fIstring\fP\*' are treated
 as a special variant of single quotes.
 The sequence expands to \fIstring\fP, with backslash-escaped characters
 in \fIstring\fP replaced as specified by the ANSI C standard.
@@ -1217,10 +1230,10 @@ vertical tab
 .B \e\e
 backslash
 .TP
-.B \e\(aq
+.B \e\*'
 single quote
 .TP
-.B \e\(dq
+.B \e\*"
 double quote
 .TP
 .B \e?
@@ -1250,7 +1263,7 @@ a control-\fIx\fP character
 The expanded result is single-quoted, as if the dollar sign had
 not been present.
 .PP
-A double-quoted string preceded by a dollar sign (\fB$\fP\(dq\fIstring\fP\(dq)
+A double-quoted string preceded by a dollar sign (\fB$\fP\*"\fIstring\fP\*")
 will cause the string to be translated according to the current locale.
 The \fIgettext\fP infrastructure performs the lookup and
 translation, using the \fBLC_MESSAGES\fP, \fBTEXTDOMAINDIR\fP,
@@ -1430,9 +1443,9 @@ with the value of each parameter separated by the first character of the
 .B IFS
 special variable.
 That is,
-.B \(dq$*\(dq
+.B \*"$*\*"
 is equivalent to
-.BR \(dq$1\fIc\fP$2\fIc\fP.\|.\|.\(dq ,
+.BR \*"$1\fIc\fP$2\fIc\fP.\|.\|.\*" ,
 where
 .I c
 is the first character of the value of the
@@ -1458,15 +1471,15 @@ with each positional parameter separated by a space.
 When the expansion occurs within double quotes,
 each parameter expands to a separate word.
 That is,
-.B \&\(dq$@\(dq
+.B \&\*"$@\*"
 is equivalent to
-.B \&\(dq\&$1\&\(dq\ \(dq$2\(dq\ .\|.\|.
+.B \&\*"\&$1\&\*"\ \*"$2\*"\ .\|.\|.
 If the double-quoted expansion occurs within a word, the expansion of
 the first parameter is joined with the beginning part of the original
 word, and the expansion of the last parameter is joined with the last
 part of the original word.
 When there are no positional parameters,
-.B \&\(dq$@\(dq
+.B \&\*"$@\*"
 and
 .B $@
 expand to nothing (i.e., they are removed).
@@ -1696,7 +1709,7 @@ dynamically loadable builtins specified by the
 command.
 .TP
 .B BASH_REMATCH
-An array variable whose members are assigned by the \fB=\(ti\fP binary
+An array variable whose members are assigned by the \fB=\*~\fP binary
 operator to the \fB[[\fP conditional command.
 The element with index 0 is the portion of the string
 matching the entire regular expression.
@@ -2187,7 +2200,7 @@ The current version is also a valid value.
 If this parameter is set when \fBbash\fP is executing a shell script,
 its value is interpreted as a filename containing commands to
 initialize the shell, as in
-.IR \(ti/.bashrc .
+.IR \*~/.bashrc .
 The value of
 .SM
 .B BASH_ENV
@@ -2227,7 +2240,7 @@ for destination directories specified by the
 .B cd
 command.
 A sample value is
-.Q .:\(ti:/usr .
+.Q .:\*~:/usr .
 .TP
 .B CHILD_MAX
 Set the number of exited child status values for the shell to remember.
@@ -2296,7 +2309,7 @@ A filename whose suffix matches one of the entries in
 .B FIGNORE
 is excluded from the list of matched filenames.
 A sample value is
-.Q .o:\(ti .
+.Q .o:\*~ .
 .TP
 .B FUNCNEST
 If set to a numeric value greater than 0, defines a maximum function
@@ -2377,7 +2390,7 @@ The name of the file in which command history is saved (see
 .SM
 .B HISTORY
 below).
-\fBBash\fP assigns a default value of \fI\(ti/.bash_history\fP.
+\fBBash\fP assigns a default value of \fI\*~/.bash_history\fP.
 If \fBHISTFILE\fP is unset or null,
 the command history is not saved when a shell exits.
 .TP
@@ -2498,7 +2511,7 @@ signifies the end of input to the shell.
 The filename for the
 .B readline
 startup file, overriding the default of
-.FN \(ti/.inputrc
+.FN \*~/.inputrc
 (see
 .SM
 .B READLINE
@@ -2580,7 +2593,7 @@ Example:
 .RS
 .PP
 .EX
-\fBMAILPATH\fP=\(aq/var/mail/bfox?\(dqYou have mail\(dq:\(ti/shell\-mail?\(dq$_ has mail!\(dq\(aq
+\fBMAILPATH\fP=\*'/var/mail/bfox?\*"You have mail\*":\*~/shell\-mail?\*"$_ has mail!\*"\*'
 .EE
 .PP
 .B Bash
@@ -2744,7 +2757,7 @@ The value of \fIp\fP determines whether or not the fraction is
 included.
 .IP
 If this variable is not set, \fBbash\fP acts as if it had the
-value \fB$\(aq\enreal\et%3lR\enuser\et%3lU\ensys\et%3lS\(aq\fP.
+value \fB$\*'\enreal\et%3lR\enuser\et%3lU\ensys\et%3lS\*'\fP.
 If the value is null, \fBbash\fP does not display any timing information.
 A trailing newline is added when the format string is displayed.
 .PD 0
@@ -2812,7 +2825,7 @@ character, which is used as shorthand for re-running the previous
 command entered, substituting one string for another in the command,
 when it appears as the first character on the line.
 The default is
-.Q \fB\(ha\fP .
+.Q \fB\*^\fP .
 The optional third character is the character which indicates that
 the remainder of the line is a comment when found as the first character
 of a word, normally
@@ -3037,9 +3050,9 @@ Only brace expansion, word splitting, and pathname expansion
 can increase the number of words of the expansion; other expansions
 expand a single word to a single word.
 The only exceptions to this are the expansions of
-.B \&\(dq$@\(dq
+.B \&\*"$@\*"
 and
-.B \&\(dq${\fIname\fP[@]}\(dq\c \" keep leading \& for AT&T troff
+.B \&\*"${\fIname\fP[@]}\*"\c \" keep leading \& for AT&T troff
 .BR \& , \" .BR + \& + \*" doesn't work with AT&T troff
 and, in most cases, \fB$*\fP and \fB${\fP\fIname\fP\fB[*]}\fP
 as explained above (see
@@ -3146,7 +3159,7 @@ command (see
 below).
 .SS Tilde Expansion
 If a word begins with an unquoted tilde character (\c
-.Q \fB\(ti\fP ),
+.Q \fB\*~\fP ),
 all of
 the characters preceding the first unquoted slash (or all characters,
 if there is no unquoted slash) are considered a \fItilde-prefix\fP.
@@ -3166,13 +3179,13 @@ Otherwise, the tilde-prefix is replaced with the home directory
 associated with the specified login name.
 .PP
 If the tilde-prefix is a
-.Q \(ti+ ,
+.Q \*~+ ,
 the value of the shell variable
 .SM
 .B PWD
 replaces the tilde-prefix.
 If the tilde-prefix is a
-.Q \(ti\- ,
+.Q \*~\- ,
 the value of the shell variable
 .SM
 .BR OLDPWD ,
@@ -3580,10 +3593,10 @@ or
 the substitution operation is applied to each member of the
 array in turn, and the expansion is the resultant list.
 .TP
-${\fIparameter\fP\fB\(ha\fP\fIpattern\fP}
+${\fIparameter\fP\fB\*^\fP\fIpattern\fP}
 .PD 0
 .TP
-${\fIparameter\fP\fB\(ha\(ha\fP\fIpattern\fP}
+${\fIparameter\fP\fB\*^\*^\fP\fIpattern\fP}
 .TP
 ${\fIparameter\fP\fB,\fP\fIpattern\fP}
 .TP
@@ -3596,11 +3609,11 @@ pathname expansion.
 Each character in the expanded value of \fIparameter\fP is tested against
 \fIpattern\fP, and, if it matches the pattern, its case is converted.
 The pattern should not attempt to match more than one character.
-The \fB\(ha\fP operator converts lowercase letters matching \fIpattern\fP
+The \fB\*^\fP operator converts lowercase letters matching \fIpattern\fP
 to uppercase; the \fB,\fP operator converts matching uppercase letters
 to lowercase.
-The \fB\(ha\(ha\fP and \fB,,\fP expansions convert each matched character in the
-expanded value; the \fB\(ha\fP and \fB,\fP expansions match and convert only
+The \fB\*^\*^\fP and \fB,,\fP expansions convert each matched character in the
+expanded value; the \fB\*^\fP and \fB,\fP expansions match and convert only
 the first character in the expanded value.
 If \fIpattern\fP is omitted, it is treated like a \fB?\fP, which matches
 every character.
@@ -3648,7 +3661,7 @@ format that can be reused as input.
 .TP
 .B E
 The expansion is a string that is the value of \fIparameter\fP with backslash
-escape sequences expanded as with the \fB$\(aq\fP.\|.\|.\%\fB\(aq\fP
+escape sequences expanded as with the \fB$\*'\fP.\|.\|.\%\fB\*'\fP
 quoting mechanism.
 .TP
 .B P
@@ -3900,8 +3913,8 @@ is unset, word splitting behaves as if it contained the default value
 of
 .BR <space><tab><newline> .
 .PP
-Explicit null arguments (\^\f3\(dq\^\(dq\fP or
-\^\f3\(aq\^\(aq\fP\^) are retained
+Explicit null arguments (\^\f3\*"\^\*"\fP or
+\^\f3\*'\^\*'\fP\^) are retained
 and passed to commands as empty strings.
 Unquoted implicit null arguments, resulting from the expansion of
 parameters that have no values, are removed.
@@ -3911,7 +3924,7 @@ and passed to a command as an empty string.
 When a quoted null argument appears as part of a word whose expansion is
 non-null, the null argument is removed.
 That is, the word
-.Q "\-d\(aq\^\(aq"
+.Q "\-d\*'\^\*'"
 becomes
 .Q \-d
 after word splitting and null argument removal.
@@ -4095,7 +4108,7 @@ is matched.  If the first character following the
 is a
 .B !
 or a
-.B \(ha
+.B \*^
 then any character not enclosed is matched.
 The sorting order of characters in range expressions,
 and the characters included in the range,
@@ -4225,8 +4238,8 @@ strings instead of a single long string, may be faster.
 After the preceding expansions, all unquoted occurrences of the
 characters
 .BR \e ,
-.BR \(aq ,
-and \^\f3\(dq\fP\^ that did not result from one of the above
+.BR \*' ,
+and \^\f3\*"\fP\^ that did not result from one of the above
 expansions are removed.
 .SH REDIRECTION
 Before a command is executed, its input and output
@@ -4873,7 +4886,7 @@ unary minus and plus
 .B ++\fIid\fP \-\-\fIid\fP
 variable pre-increment and pre-decrement
 .TP
-.B ! \(ti
+.B ! \*~
 logical and bitwise negation
 .TP
 .B **
@@ -4897,7 +4910,7 @@ equality and inequality
 .B &
 bitwise AND
 .TP
-.B \(ha
+.B \*^
 bitwise exclusive OR
 .TP
 .B |
@@ -4912,7 +4925,7 @@ logical OR
 .B \fIexpr\fP?\fIexpr\fP:\fIexpr\fP
 conditional operator
 .TP
-.B "= *= /= %= += \-= <<= >>= &= \(ha= |="
+.B "= *= /= %= += \-= <<= >>= &= \*^= |="
 assignment
 .TP
 .B \fIexpr1\fP , \fIexpr2\fP
@@ -5525,10 +5538,10 @@ command to complete, the shell receives keyboard-generated signals
 such as
 .SM
 .B SIGINT
-(usually generated by \fB\(haC\fP) that users commonly intend to send
+(usually generated by \fB\*^C\fP) that users commonly intend to send
 to that command.
 This happens because the shell and the command are in the
-same process group as the terminal, and \fB\(haC\fP sends
+same process group as the terminal, and \fB\*^C\fP sends
 .SM
 .B SIGINT
 to all processes in that process group.
@@ -5641,14 +5654,14 @@ contains facilities to use it.
 Typing the
 .I suspend
 character (typically
-.BR \(haZ ,
+.BR \*^Z ,
 Control-Z) while a process is running
 causes that process to be stopped and returns control to
 .BR bash .
 Typing the
 .I "delayed suspend"
 character (typically
-.BR \(haY ,
+.BR \*^Y ,
 Control-Y) causes the process to be stopped when it
 attempts to read input from the terminal, and control to
 be returned to
@@ -5660,7 +5673,7 @@ command to continue it in the background, the
 command to continue it in the foreground, or
 the
 .B kill
-command to kill it.  A \fB\(haZ\fP takes effect immediately,
+command to kill it.  A \fB\*^Z\fP takes effect immediately,
 and has the additional side effect of causing pending output
 and typeahead to be discarded.
 .PP
@@ -5980,7 +5993,7 @@ The name of this file is taken from the value of the
 .SM
 .B INPUTRC
 variable.  If that variable is unset, the default is
-.IR \(ti/.inputrc .
+.IR \*~/.inputrc .
 If that file  does not exist or cannot be read, the ultimate default is
 .IR /etc/inputrc .
 When a program which uses the readline library starts up, the
@@ -6047,7 +6060,7 @@ is the name of a key spelled out in English.  For example:
 .nf
 Control-u: universal\-argument
 Meta-Rubout: backward-kill-word
-Control-o: \(dq> output\(dq
+Control-o: \*"> output\*"
 .fi
 .EE
 .RE
@@ -6067,7 +6080,7 @@ expressed on the right hand side (that is, to insert the text
 into the line).
 .PP
 In the second form,
-\fB\(dqkeyseq\(dq\fP:\^\fIfunction\-name\fP or \fImacro\fP,
+\fB\*"keyseq\*"\fP:\^\fIfunction\-name\fP or \fImacro\fP,
 .B keyseq
 differs from
 .B keyname
@@ -6080,9 +6093,9 @@ are not recognized.
 .RS
 .EX
 .nf
-\(dq\eC\-u\(dq: universal\-argument
-\(dq\eC\-x\eC\-r\(dq: re\-read\-init\-file
-\(dq\ee[11\(ti\(dq: \(dqFunction Key 1\(dq
+\*"\eC\-u\*": universal\-argument
+\*"\eC\-x\eC\-r\*": re\-read\-init\-file
+\*"\ee[11\*~\*": \*"Function Key 1\*"
 .fi
 .EE
 .RE
@@ -6095,7 +6108,7 @@ is again bound to the function
 is bound to the function
 .BR re\-read\-init\-file ,
 and
-.I "ESC [ 1 1 \(ti"
+.I "ESC [ 1 1 \*~"
 is bound to insert the text
 .Q "Function Key 1" .
 .PP
@@ -6115,11 +6128,11 @@ an escape character
 .B \e\e
 backslash
 .TP
-.B \e\(dq
-literal \(dq
+.B \e\*"
+literal \*"
 .TP
-.B \e\(aq
-literal \(aq
+.B \e\*'
+literal \*'
 .RE
 .PD
 .PP
@@ -6167,7 +6180,7 @@ be used to indicate a macro definition.
 Unquoted text is assumed to be a function name.
 In the macro body, the backslash escapes described above are expanded.
 Backslash will quote any other character in the macro text,
-including \(dq and \(aq.
+including \*" and \*'.
 .PP
 .B Bash
 allows the current readline key bindings to be displayed or modified
@@ -6650,7 +6663,7 @@ key sequence that quotes the current or previous word in \fBbash\fP:
 .nf
 \fB$if\fP Bash
 # Quote the current or previous word
-\(dq\eC-xq\(dq: \(dq\eeb\e\(dq\eef\e\(dq\(dq
+\*"\eC-xq\*": \*"\eeb\e\*"\eef\e\*"\*"
 \fB$endif\fP
 .fi
 .EE
@@ -6907,7 +6920,7 @@ history expansion had been specified.
 .B shell\-expand\-line (M\-C\-e)
 Expand the line by performing shell word expansions.
 This performs alias and history expansion,
-\fB$\fP\(aq\fIstring\fP\(aq and \fB$\fP\(dq\fIstring\fP\(dq quoting,
+\fB$\fP\*'\fIstring\fP\*' and \fB$\fP\*"\fIstring\fP\*" quoting,
 tilde expansion, parameter and variable expansion, arithmetic expansion,
 command and process substitution,
 word splitting, and quote removal.
@@ -6917,7 +6930,7 @@ See
 .B HISTORY EXPANSION
 below for a description of history expansion.
 .TP
-.B history\-expand\-line (M\-\(ha)
+.B history\-expand\-line (M\-\*^)
 Perform history expansion on the current line.
 See
 .SM
@@ -7126,7 +7139,7 @@ Attempt to perform completion on the text before point.
 .B Bash
 attempts completion treating the text as a variable (if the
 text begins with \fB$\fP), username (if the text begins with
-\fB\(ti\fP), hostname (if the text begins with \fB@\fP), or
+\fB\*~\fP), hostname (if the text begins with \fB@\fP), or
 command (including aliases and functions) in turn.  If none
 of these produces a match, filename completion is attempted.
 .TP
@@ -7171,11 +7184,11 @@ Attempt filename completion on the text before point.
 List the possible completions of the text before point,
 treating it as a filename.
 .TP
-.B complete\-username (M\-\(ti)
+.B complete\-username (M\-\*~)
 Attempt completion on the text before point, treating
 it as a username.
 .TP
-.B possible\-username\-completions (C\-x \(ti)
+.B possible\-username\-completions (C\-x \*~)
 List the possible completions of the text before point,
 treating it as a username.
 .TP
@@ -7547,7 +7560,7 @@ completion function would load completions dynamically:
 .nf
 _completion_loader()
 {
-  . \(dq/etc/bash_completion.d/$1.sh\(dq \c
+  . \*"/etc/bash_completion.d/$1.sh\*" \c
 .if \n(LL<80n \{\
 \e
 .br
@@ -7598,7 +7611,7 @@ On startup, the history is initialized from the file named by
 the variable
 .SM
 .B HISTFILE
-(default \fI\(ti/.bash_history\fP).
+(default \fI\*~/.bash_history\fP).
 The file named by the value of
 .SM
 .B HISTFILE
@@ -7847,13 +7860,13 @@ is followed immediately by a newline.
 If \fIstring\fP is missing, the string from the most recent search is used;
 it is an error if there is no previous search string.
 .TP
-.B \d\s+2\(ha\s-2\u\fIstring1\fP\d\s+2\(ha\s-2\u\fIstring2\fP\d\s+2\(ha\s-2\u
+.B \d\s+2\*^\s-2\u\fIstring1\fP\d\s+2\*^\s-2\u\fIstring2\fP\d\s+2\*^\s-2\u
 Quick substitution.  Repeat the previous command, replacing
 .I string1
 with
 .IR string2 .
 Equivalent to
-.Q !!:s\d\s+2\(ha\s-2\u\fIstring1\fP\d\s+2\(ha\s-2\u\fIstring2\fP\d\s+2\(ha\s-2\u
+.Q !!:s\d\s+2\*^\s-2\u\fIstring1\fP\d\s+2\*^\s-2\u\fIstring2\fP\d\s+2\*^\s-2\u
 (see \fBModifiers\fP below).
 .TP
 .B !#
@@ -7865,7 +7878,7 @@ A
 .B :
 separates the event specification from the word designator.
 It may be omitted if the word designator begins with a
-.BR \(ha ,
+.BR \*^ ,
 .BR $ ,
 .BR * ,
 .BR \- ,
@@ -7884,7 +7897,7 @@ word.
 .I n
 The \fIn\fRth word.
 .TP
-.B \(ha
+.B \*^
 The first argument.  That is, word 1.
 .TP
 .B $
@@ -8150,7 +8163,7 @@ Each non-option argument is a command as it would appear in a
 initialization file such as
 .IR .inputrc ,
 but each binding or command must be passed as a separate argument;
-e.g., \(aq\(dq\eC\-x\eC\-r\(dq: re\-read\-init\-file\(aq.
+e.g., \*'\*"\eC\-x\eC\-r\*": re\-read\-init\-file\*'.
 In the following descriptions, output available to be re-read is formatted
 as commands that would appear in a
 .B readline
@@ -9250,7 +9263,7 @@ In the second form, \fIcommand\fP is re-executed after each instance
 of \fIpat\fP is replaced by \fIrep\fP.
 \fICommand\fP is interpreted the same as \fIfirst\fP above.
 A useful alias to use with this is
-.Q "r=\(dqfc \-s\(dq" ,
+.Q "r=\*"fc \-s\*"" ,
 so that typing
 .Q "r cc"
 runs the last command beginning with
@@ -9885,7 +9898,7 @@ in the same way as \fBecho \-e\fP.
 .B %q
 causes \fBprintf\fP to output the corresponding
 \fIargument\fP in a format that can be reused as shell input.
-\fB%q\fP and \fB%Q\fP use the \fB$\(aq\(aq\fP quoting style if any characters
+\fB%q\fP and \fB%Q\fP use the \fB$\*'\*'\fP quoting style if any characters
 in the argument string require it, and backslash quoting otherwise.
 If the format string uses the \fIprintf\fP alternate form, these two
 formats quote the argument string using single quotes.
@@ -10939,7 +10952,7 @@ under
 \fBPathname Expansion\fP are enabled.
 .TP 8
 .B extquote
-If set, \fB$\fP\(aq\fIstring\fP\(aq and \fB$\fP\(dq\fIstring\fP\(dq quoting is
+If set, \fB$\fP\*'\fIstring\fP\*' and \fB$\fP\*"\fIstring\fP\*" quoting is
 performed within \fB${\fP\fIparameter\fP\fB}\fP expansions
 enclosed in double quotes.  This option is enabled by default.
 .TP 8
@@ -11121,7 +11134,7 @@ or when filtering possible completions as part of programmable completion.
 If set,
 .B bash
 encloses the translated results of
-.BR $\(dq .\|.\|.\& \(dq
+.BR $\*" .\|.\|.\& \*"
 quoting in single quotes instead of double quotes.
 If the string is not translated, this has no effect.
 .TP 8
@@ -11913,7 +11926,7 @@ and it is required for bash-5.1 and later versions.
 .PD 0
 .RS
 .IP \(bu
-quoting the rhs of the \fB[[\fP command's regexp matching operator (=\(ti)
+quoting the rhs of the \fB[[\fP command's regexp matching operator (=\*~)
 has no special effect
 .RE
 .PD
@@ -11979,7 +11992,7 @@ are not special within double-quoted word expansions
 .IP \(bu
 the shell does not print a warning message if an attempt is made to
 use a quoted compound assignment as an argument to declare
-(e.g., declare \-a foo=\(aq(1 2)\(aq). Later versions warn that this usage is
+(e.g., declare \-a foo=\*'(1 2)\*'). Later versions warn that this usage is
 deprecated
 .IP \(bu
 word expansion errors are considered non-fatal errors that cause the
@@ -12200,7 +12213,7 @@ script.
 \fIPortable Operating System Interface (POSIX) Part 2: Shell and Utilities\fP, IEEE \(em
 http://pubs.opengroup.org/onlinepubs/9699919799/
 .TP
-http://tiswww.case.edu/\(tichet/bash/POSIX \(em a description of posix mode
+http://tiswww.case.edu/\*~chet/bash/POSIX \(em a description of posix mode
 .TP
 \fIsh\fP(1), \fIksh\fP(1), \fIcsh\fP(1)
 .TP
@@ -12217,20 +12230,20 @@ The \fBbash\fP executable
 .FN /etc/profile
 The systemwide initialization file, executed for login shells
 .TP
-.FN \(ti/.bash_profile
+.FN \*~/.bash_profile
 The personal initialization file, executed for login shells
 .TP
-.FN \(ti/.bashrc
+.FN \*~/.bashrc
 The individual per-interactive-shell startup file
 .TP
-.FN \(ti/.bash_logout
+.FN \*~/.bash_logout
 The individual login shell cleanup file, executed when a login shell exits
 .TP
-.FN \(ti/.bash_history
+.FN \*~/.bash_history
 The default value of \fBHISTFILE\fP, the file in which bash saves the
 command history
 .TP
-.FN \(ti/.inputrc
+.FN \*~/.inputrc
 Individual \fIreadline\fP initialization file
 .PD
 .SH AUTHORS
index 85d8d33463590e19195138f28f31e6aa7a4f0cae..e6b2074dba01de8870b13cd0024608bce715d0db 100644 (file)
 
 
 
+
+
+
+
+
+
+
+
+
 
 
 
@@ -247,7 +256,7 @@ Execute commands from
 <I>file</I>
 
 instead of the standard personal initialization file
-<I>ti/.bashrc</I>
+<A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>
 
 if the shell is interactive (see
 <FONT SIZE=-1><B>INVOCATION</B>
@@ -273,12 +282,12 @@ Do not read either the system-wide startup file
 <A HREF="file:/etc/profile"><I>/etc/profile</I></A>
 
 or any of the personal initialization files
-<I>ti/.bash_profile</I>,
+<A HREF="file:~/.bash_profile"><I>~/.bash_profile</I></A>,
 
-<I>ti/.bash_login</I>,
+<A HREF="file:~/.bash_login"><I>~/.bash_login</I></A>,
 
 or
-<I>ti/.profile</I>.
+<A HREF="file:~/.profile"><I>~/.profile</I></A>.
 
 By default,
 <B>bash</B>
@@ -292,7 +301,7 @@ below).
 
 <DD>
 Do not read and execute the personal initialization file
-<I>ti/.bashrc</I>
+<A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>
 
 if the shell is interactive.
 This option is on by default if the shell is invoked as
@@ -428,8 +437,8 @@ is invoked as an interactive login shell, or as a non-interactive shell
 with the <B>--login</B> option, it first reads and
 executes commands from the file <A HREF="file:/etc/profile"><I>/etc/profile</I></A>, if that
 file exists.
-After reading that file, it looks for <I>ti/.bash_profile</I>,
-<I>ti/.bash_login</I>, and <I>ti/.profile</I>, in that order, and reads
+After reading that file, it looks for <A HREF="file:~/.bash_profile"><I>~/.bash_profile</I></A>,
+<A HREF="file:~/.bash_login"><I>~/.bash_login</I></A>, and <A HREF="file:~/.profile"><I>~/.profile</I></A>, in that order, and reads
 and executes commands from the first one that exists and is readable.
 The
 <B>--noprofile</B>
@@ -441,14 +450,14 @@ When an interactive login shell exits,
 or a non-interactive login shell executes the <B>exit</B> builtin command,
 <B>bash</B>
 
-reads and executes commands from the file <I>ti/.bash_logout</I>, if it
+reads and executes commands from the file <A HREF="file:~/.bash_logout"><I>~/.bash_logout</I></A>, if it
 exists.
 <P>
 
 When an interactive shell that is not a login shell is started,
 <B>bash</B>
 
-reads and executes commands from <I>ti/.bashrc</I>, if that file exists.
+reads and executes commands from <A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>, if that file exists.
 This may be inhibited by using the
 <B>--norc</B>
 
@@ -456,7 +465,7 @@ option.
 The <B>--rcfile</B> <I>file</I> option will force
 <B>bash</B>
 
-to read and execute commands from <I>file</I> instead of <I>ti/.bashrc</I>.
+to read and execute commands from <I>file</I> instead of <A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>.
 <P>
 
 When
@@ -476,7 +485,11 @@ behaves as if the following command were executed:
 
 <DL COMPACT><DT><DD>
 
-if [ -n dq$BASH_ENVdq ]; then . dq$BASH_ENVdq; fi
+if [ -n &quot;
+$BASH_ENV&quot;
+ ]; then . &quot;
+$BASH_ENV&quot;
+; fi
 
 </DL>
 
@@ -506,7 +519,7 @@ read and execute commands from
 <A HREF="file:/etc/profile"><I>/etc/profile</I></A>
 
 and
-<I>ti/.profile</I>,
+<A HREF="file:~/.profile"><I>~/.profile</I></A>,
 
 in that order.
 The
@@ -576,7 +589,7 @@ If
 <B>bash</B>
 
 determines it is being run non-interactively in this fashion,
-it reads and executes commands from <I>ti/.bashrc</I>,
+it reads and executes commands from <A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>,
 if that file exists and is readable.
 It will not do this if invoked as <B>sh</B>.
 The
@@ -985,7 +998,7 @@ The return value is 0 if the string matches (<B>==</B>) or does not match
 Any part of the pattern may be quoted to force the quoted portion
 to be matched as a string.
 <DT><DD>
-An additional binary operator, <B>=ti</B>, is available, with the same
+An additional binary operator, <B>=~</B>, is available, with the same
 precedence as <B>==</B> and <B>!=</B>.
 When it is used, the string to the right of the operator is considered
 a POSIX extended regular expression and matched accordingly
@@ -1012,7 +1025,7 @@ since normal quoting and pattern characters lose their meanings
 between brackets.
 <DT><DD>
 The pattern will match if it matches any part of the string.
-Anchor the pattern using the <B>ha</B> and <B>$</B> regular expression
+Anchor the pattern using the <B>^</B> and <B>$</B> regular expression
 operators to force it to match the entire string.
 The array variable
 <FONT SIZE=-1><B>BASH_REMATCH</B>
@@ -1448,7 +1461,8 @@ characters:
 
 <B>`</B>,
 
-<B>dq</B>,
+<B>&quot;
+</B>,
 <B>\</B>,
 
 or
@@ -1480,7 +1494,7 @@ quotes (see
 below).
 <P>
 
-Character sequences of the form <B>$</B>aq<I>string</I>aq are treated
+Character sequences of the form <B>$</B>'<I>string</I>' are treated
 as a special variant of single quotes.
 The sequence expands to <I>string</I>, with backslash-escaped characters
 in <I>string</I> replaced as specified by the ANSI C standard.
@@ -1527,11 +1541,11 @@ vertical tab
 
 <DD>
 backslash
-<DT><B>\aq</B>
+<DT><B>\'</B>
 
 <DD>
 single quote
-<DT><B>\dq</B>
+<DT><B>\</B>
 
 <DD>
 double quote
@@ -1572,7 +1586,9 @@ The expanded result is single-quoted, as if the dollar sign had
 not been present.
 <P>
 
-A double-quoted string preceded by a dollar sign (<B>$</B>dq<I>string</I>dq)
+A double-quoted string preceded by a dollar sign (<B>$</B>&quot;
+<I>string</I>&quot;
+)
 will cause the string to be translated according to the current locale.
 The <I>gettext</I> infrastructure performs the lookup and
 translation, using the <B>LC_MESSAGES</B>, <B>TEXTDOMAINDIR</B>,
@@ -1803,10 +1819,10 @@ with the value of each parameter separated by the first character of the
 </FONT>
 special variable.
 That is,
-<B>dq$*dq</B>
+<B>$*</B>
 
 is equivalent to
-<B>dq$1</B><I>c</I>$2<I>c</I>...dq,
+<B>$1</B><I>c</I>$2<I>c</I>...,
 
 where
 <I>c</I>
@@ -1838,17 +1854,17 @@ with each positional parameter separated by a space.
 When the expansion occurs within double quotes,
 each parameter expands to a separate word.
 That is,
-<B>dq$@dq</B>
+<B>$@</B>
 
 is equivalent to
-<B>dq$1dq&nbsp;dq$2dq&nbsp;...</B>
+<B>$1&nbsp;$2&nbsp;...</B>
 
 If the double-quoted expansion occurs within a word, the expansion of
 the first parameter is joined with the beginning part of the original
 word, and the expansion of the last parameter is joined with the last
 part of the original word.
 When there are no positional parameters,
-<B>dq$@dq</B>
+<B>$@</B>
 
 and
 <B>$@</B>
@@ -2143,7 +2159,7 @@ command.
 <DT><B>BASH_REMATCH</B>
 
 <DD>
-An array variable whose members are assigned by the <B>=ti</B> binary
+An array variable whose members are assigned by the <B>=~</B> binary
 operator to the <B>[[</B> conditional command.
 The element with index 0 is the portion of the string
 matching the entire regular expression.
@@ -2759,7 +2775,7 @@ The current version is also a valid value.
 If this parameter is set when <B>bash</B> is executing a shell script,
 its value is interpreted as a filename containing commands to
 initialize the shell, as in
-<I>ti/.bashrc</I>.
+<A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>.
 
 The value of
 <FONT SIZE=-1><B>BASH_ENV</B>
@@ -2994,7 +3010,7 @@ The name of the file in which command history is saved (see
 
 </FONT>
 below).
-<B>Bash</B> assigns a default value of <I>ti/.bash_history</I>.
+<B>Bash</B> assigns a default value of <A HREF="file:~/.bash_history"><I>~/.bash_history</I></A>.
 If <B>HISTFILE</B> is unset or null,
 the command history is not saved when a shell exits.
 <DT><B>HISTFILESIZE</B>
@@ -3143,7 +3159,7 @@ The filename for the
 
 startup file, overriding the default of
 
-<I>ti/.inputrc</I>
+<A HREF="file:~/.inputrc"><I>~/.inputrc</I></A>
 
 (see
 <FONT SIZE=-1><B>READLINE</B>
@@ -3246,7 +3262,11 @@ Example:
 <P>
 
 
-<B>MAILPATH</B>=aq/var/mail/bfox?dqYou have maildq:ti/shell-mail?dq$_ has mail!dqaq
+<B>MAILPATH</B>='/var/mail/bfox?&quot;
+You have mail&quot;
+:~/shell-mail?&quot;
+$_ has mail!&quot;
+'
 
 <P>
 
@@ -3454,7 +3474,7 @@ The value of <I>p</I> determines whether or not the fraction is
 included.
 <DT><DD>
 If this variable is not set, <B>bash</B> acts as if it had the
-value <B>$aq\nreal\t%3lR\nuser\t%3lU\nsys\t%3lSaq</B>.
+value <B>$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'</B>.
 If the value is null, <B>bash</B> does not display any timing information.
 A trailing newline is added when the format string is displayed.
 
@@ -3820,10 +3840,10 @@ Only brace expansion, word splitting, and pathname expansion
 can increase the number of words of the expansion; other expansions
 expand a single word to a single word.
 The only exceptions to this are the expansions of
-<B>dq$@dq</B>
+<B>$@</B>
 
 and
-<B>dq${</B><I>name</I>[@]}dq <B></B>,
+<B>${</B><I>name</I>[@]} <B></B>,
 
 
 
@@ -4451,9 +4471,9 @@ or
 
 the substitution operation is applied to each member of the
 array in turn, and the expansion is the resultant list.
-<DT>${<I>parameter</I><B>ha</B><I>pattern</I>}<DD>
+<DT>${<I>parameter</I><B>^</B><I>pattern</I>}<DD>
 
-<DT>${<I>parameter</I><B>haha</B><I>pattern</I>}<DD>
+<DT>${<I>parameter</I><B>^^</B><I>pattern</I>}<DD>
 <DT>${<I>parameter</I><B>,</B><I>pattern</I>}<DD>
 <DT>${<I>parameter</I><B>,,</B><I>pattern</I>}<DD>
 
@@ -4464,11 +4484,11 @@ pathname expansion.
 Each character in the expanded value of <I>parameter</I> is tested against
 <I>pattern</I>, and, if it matches the pattern, its case is converted.
 The pattern should not attempt to match more than one character.
-The <B>ha</B> operator converts lowercase letters matching <I>pattern</I>
+The <B>^</B> operator converts lowercase letters matching <I>pattern</I>
 to uppercase; the <B>,</B> operator converts matching uppercase letters
 to lowercase.
-The <B>haha</B> and <B>,,</B> expansions convert each matched character in the
-expanded value; the <B>ha</B> and <B>,</B> expansions match and convert only
+The <B>^^</B> and <B>,,</B> expansions convert each matched character in the
+expanded value; the <B>^</B> and <B>,</B> expansions match and convert only
 the first character in the expanded value.
 If <I>pattern</I> is omitted, it is treated like a <B>?</B>, which matches
 every character.
@@ -4529,7 +4549,7 @@ format that can be reused as input.
 
 <DD>
 The expansion is a string that is the value of <I>parameter</I> with backslash
-escape sequences expanded as with the <B>$aq</B>...<B>aq</B>
+escape sequences expanded as with the <B>$'</B>...<B>'</B>
 quoting mechanism.
 <DT><B>P</B>
 
@@ -4857,8 +4877,10 @@ of
 
 <P>
 
-Explicit null arguments (<B>dqdq</B> or
-<B>aqaq</B>) are retained
+Explicit null arguments (<B>&quot;
+&quot;
+</B> or
+<B>''</B>) are retained
 and passed to commands as empty strings.
 Unquoted implicit null arguments, resulting from the expansion of
 parameters that have no values, are removed.
@@ -5101,7 +5123,7 @@ is a
 <B>!</B>
 
 or a
-<B>ha</B>
+<B>^</B>
 
 then any character not enclosed is matched.
 The sorting order of characters in range expressions,
@@ -5253,9 +5275,10 @@ After the preceding expansions, all unquoted occurrences of the
 characters
 <B>\</B>,
 
-<B>aq</B>,
+<B>'</B>,
 
-and <B>dq</B> that did not result from one of the above
+and <B>&quot;
+</B> that did not result from one of the above
 expansions are removed.
 <A NAME="lbBI">&nbsp;</A>
 <H3>REDIRECTION</H3>
@@ -6118,7 +6141,7 @@ unary minus and plus
 
 <DD>
 variable pre-increment and pre-decrement
-<DT><B>! ti</B>
+<DT><B>! ~</B>
 
 <DD>
 logical and bitwise negation
@@ -6150,7 +6173,7 @@ equality and inequality
 
 <DD>
 bitwise AND
-<DT><B>ha</B>
+<DT><B>^</B>
 
 <DD>
 bitwise exclusive OR
@@ -6170,7 +6193,7 @@ logical OR
 
 <DD>
 conditional operator
-<DT><B>= *= /= %= += -= &lt;&lt;= &gt;&gt;= &amp;= ha= |=</B>
+<DT><B>= *= /= %= += -= &lt;&lt;= &gt;&gt;= &amp;= ^= |=</B>
 
 <DD>
 assignment
@@ -6932,10 +6955,10 @@ such as
 <FONT SIZE=-1><B>SIGINT</B>
 
 </FONT>
-(usually generated by <B>haC</B>) that users commonly intend to send
+(usually generated by <B>^C</B>) that users commonly intend to send
 to that command.
 This happens because the shell and the command are in the
-same process group as the terminal, and <B>haC</B> sends
+same process group as the terminal, and <B>^C</B> sends
 <FONT SIZE=-1><B>SIGINT</B>
 
 </FONT>
@@ -7085,7 +7108,7 @@ Typing the
 <I>suspend</I>
 
 character (typically
-<B>haZ</B>,
+<B>^Z</B>,
 
 Control-Z) while a process is running
 causes that process to be stopped and returns control to
@@ -7095,7 +7118,7 @@ Typing the
 <I>delayed suspend</I>
 
 character (typically
-<B>haY</B>,
+<B>^Y</B>,
 
 Control-Y) causes the process to be stopped when it
 attempts to read input from the terminal, and control to
@@ -7112,7 +7135,7 @@ command to continue it in the foreground, or
 the
 <B>kill</B>
 
-command to kill it.  A <B>haZ</B> takes effect immediately,
+command to kill it.  A <B>^Z</B> takes effect immediately,
 and has the additional side effect of causing pending output
 and typeahead to be discarded.
 <P>
@@ -7535,7 +7558,7 @@ The name of this file is taken from the value of the
 
 </FONT>
 variable.  If that variable is unset, the default is
-<I>ti/.inputrc</I>.
+<A HREF="file:~/.inputrc"><I>~/.inputrc</I></A>.
 
 If that file  does not exist or cannot be read, the ultimate default is
 <A HREF="file:/etc/inputrc"><I>/etc/inputrc</I></A>.
@@ -7631,7 +7654,9 @@ is the name of a key spelled out in English.  For example:
 <PRE>
 Control-u: universal-argument
 Meta-Rubout: backward-kill-word
-Control-o: dq&gt; outputdq
+Control-o: &quot;
+&gt; output&quot;
+
 </PRE>
 
 
@@ -7660,7 +7685,9 @@ into the line).
 <P>
 
 In the second form,
-<B>dqkeyseqdq</B>:<I>function-name</I> or <I>macro</I>,
+<B>&quot;
+keyseq&quot;
+</B>:<I>function-name</I> or <I>macro</I>,
 <B>keyseq</B>
 
 differs from
@@ -7676,9 +7703,17 @@ are not recognized.
 <DL COMPACT><DT><DD>
 
 <PRE>
-dq\C-udq: universal-argument
-dq\C-x\C-rdq: re-read-init-file
-dq\e[11tidq: dqFunction Key 1dq
+&quot;
+\C-u&quot;
+: universal-argument
+&quot;
+\C-x\C-r&quot;
+: re-read-init-file
+&quot;
+\e[11~&quot;
+: &quot;
+Function Key 1&quot;
+
 </PRE>
 
 
@@ -7698,7 +7733,7 @@ is bound to the function
 <B>re-read-init-file</B>,
 
 and
-<I>ESC [ 1 1 ti</I>
+<I>ESC [ 1 1 ~</I>
 
 is bound to insert the text
 
@@ -7724,14 +7759,15 @@ an escape character
 
 <DD>
 backslash
-<DT><B>\dq</B>
+<DT><B>\</B>
 
 <DD>
-literal dq
-<DT><B>\aq</B>
+literal &quot;
+
+<DT><B>\'</B>
 
 <DD>
-literal aq
+literal '
 </DL></DL>
 
 
@@ -7794,7 +7830,8 @@ be used to indicate a macro definition.
 Unquoted text is assumed to be a function name.
 In the macro body, the backslash escapes described above are expanded.
 Backslash will quote any other character in the macro text,
-including dq and aq.
+including &quot;
+ and '.
 <P>
 
 <B>Bash</B>
@@ -8377,7 +8414,13 @@ key sequence that quotes the current or previous word in <B>bash</B>:
 <PRE>
 <B>$if</B> Bash
 # Quote the current or previous word
-dq\C-xqdq: dq\eb\dq\ef\dqdq
+&quot;
+\C-xq&quot;
+: &quot;
+\eb\&quot;
+\ef\&quot;
+&quot;
+
 <B>$endif</B>
 </PRE>
 
@@ -8695,7 +8738,9 @@ history expansion had been specified.
 <DD>
 Expand the line by performing shell word expansions.
 This performs alias and history expansion,
-<B>$</B>aq<I>string</I>aq and <B>$</B>dq<I>string</I>dq quoting,
+<B>$</B>'<I>string</I>' and <B>$</B>&quot;
+<I>string</I>&quot;
+ quoting,
 tilde expansion, parameter and variable expansion, arithmetic expansion,
 command and process substitution,
 word splitting, and quote removal.
@@ -8705,7 +8750,7 @@ See
 
 </FONT>
 below for a description of history expansion.
-<DT><B>history-expand-line (M-ha)</B>
+<DT><B>history-expand-line (M-^)</B>
 
 <DD>
 Perform history expansion on the current line.
@@ -8981,7 +9026,7 @@ Attempt to perform completion on the text before point.
 
 attempts completion treating the text as a variable (if the
 text begins with <B>$</B>), username (if the text begins with
-<B>ti</B>), hostname (if the text begins with <B>@</B>), or
+<B>~</B>), hostname (if the text begins with <B>@</B>), or
 command (including aliases and functions) in turn.  If none
 of these produces a match, filename completion is attempted.
 <DT><B>possible-completions (M-?)</B>
@@ -9032,12 +9077,12 @@ Attempt filename completion on the text before point.
 <DD>
 List the possible completions of the text before point,
 treating it as a filename.
-<DT><B>complete-username (M-ti)</B>
+<DT><B>complete-username (M-~)</B>
 
 <DD>
 Attempt completion on the text before point, treating
 it as a username.
-<DT><B>possible-username-completions (C-x ti)</B>
+<DT><B>possible-username-completions (C-x ~)</B>
 
 <DD>
 List the possible completions of the text before point,
@@ -9497,7 +9542,9 @@ completion function would load completions dynamically:
 <PRE>
 _completion_loader()
 {
-  . dq/etc/bash_completion.d/$1.shdq 
+  . &quot;
+/etc/bash_completion.d/$1.sh&quot;
 \
 <BR>
 
@@ -9561,7 +9608,7 @@ the variable
 <FONT SIZE=-1><B>HISTFILE</B>
 
 </FONT>
-(default <I>ti/.bash_history</I>).
+(default <A HREF="file:~/.bash_history"><I>~/.bash_history</I></A>).
 The file named by the value of
 <FONT SIZE=-1><B>HISTFILE</B>
 
@@ -9877,7 +9924,7 @@ The trailing <B>?</B> may be omitted if
 is followed immediately by a newline.
 If <I>string</I> is missing, the string from the most recent search is used;
 it is an error if there is no previous search string.
-<DT><B></B><FONT SIZE=+2><B>ha</B></FONT><B></B><I>string1</I><FONT SIZE=+2>ha</FONT><I>string2</I><FONT SIZE=+2>ha</FONT>
+<DT><B></B><FONT SIZE=+2><B>^</B></FONT><B></B><I>string1</I><FONT SIZE=+2>^</FONT><I>string2</I><FONT SIZE=+2>^</FONT>
 
 <DD>
 Quick substitution.  Repeat the previous command, replacing
@@ -9904,7 +9951,7 @@ A
 
 separates the event specification from the word designator.
 It may be omitted if the word designator begins with a
-<B>ha</B>,
+<B>^</B>,
 
 <B>$</B>,
 
@@ -9931,7 +9978,7 @@ word.
 
 <DD>
 The <I>n</I>th word.
-<DT><B>ha</B>
+<DT><B>^</B>
 
 <DD>
 The first argument.  That is, word 1.
@@ -10255,7 +10302,9 @@ initialization file such as
 <I>.inputrc</I>,
 
 but each binding or command must be passed as a separate argument;
-e.g., aqdq\C-x\C-rdq: re-read-init-fileaq.
+e.g., '&quot;
+\C-x\C-r&quot;
+: re-read-init-file'.
 In the following descriptions, output available to be re-read is formatted
 as commands that would appear in a
 <B>readline</B>
@@ -12383,7 +12432,7 @@ in the same way as <B>echo -e</B>.
 <DD>
 causes <B>printf</B> to output the corresponding
 <I>argument</I> in a format that can be reused as shell input.
-<B>%q</B> and <B>%Q</B> use the <B>$aqaq</B> quoting style if any characters
+<B>%q</B> and <B>%Q</B> use the <B>$''</B> quoting style if any characters
 in the argument string require it, and backslash quoting otherwise.
 If the format string uses the <I>printf</I> alternate form, these two
 formats quote the argument string using single quotes.
@@ -13702,7 +13751,9 @@ under
 <DT><B>extquote</B>
 
 <DD>
-If set, <B>$</B>aq<I>string</I>aq and <B>$</B>dq<I>string</I>dq quoting is
+If set, <B>$</B>'<I>string</I>' and <B>$</B>&quot;
+<I>string</I>&quot;
+ quoting is
 performed within <B>${</B><I>parameter</I><B>}</B> expansions
 enclosed in double quotes.  This option is enabled by default.
 <DT><B>failglob</B>
@@ -13930,7 +13981,7 @@ If set,
 <B>bash</B>
 
 encloses the translated results of
-<B>$dq</B>...<B>dq</B>
+<B>$ ... </B>
 
 quoting in single quotes instead of double quotes.
 If the string is not translated, this has no effect.
@@ -14909,7 +14960,7 @@ and it is required for bash-5.1 and later versions.
 <DL COMPACT><DT><DD>
 <DL COMPACT>
 <DT>*<DD>
-quoting the rhs of the <B>[[</B> command's regexp matching operator (=ti)
+quoting the rhs of the <B>[[</B> command's regexp matching operator (=~)
 has no special effect
 </DL></DL>
 
@@ -14982,7 +15033,7 @@ are not special within double-quoted word expansions
 <DT>*<DD>
 the shell does not print a warning message if an attempt is made to
 use a quoted compound assignment as an argument to declare
-(e.g., declare -a foo=aq(1 2)aq). Later versions warn that this usage is
+(e.g., declare -a foo='(1 2)'). Later versions warn that this usage is
 deprecated
 <DT>*<DD>
 word expansion errors are considered non-fatal errors that cause the
@@ -15246,7 +15297,7 @@ script.
 <DT><I>The Gnu History Library</I>, Brian Fox and Chet Ramey<DD>
 <DT><I>Portable Operating System Interface (POSIX) Part 2: Shell and Utilities</I>, IEEE -<DD>
 <A HREF="http://pubs.opengroup.org/onlinepubs/9699919799/">http://pubs.opengroup.org/onlinepubs/9699919799/</A>
-<DT><A HREF="http://tiswww.case.edu/tichet/bash/POSIX">http://tiswww.case.edu/tichet/bash/POSIX</A> - a description of posix mode<DD>
+<DT><A HREF="http://tiswww.case.edu/~chet/bash/POSIX">http://tiswww.case.edu/~chet/bash/POSIX</A> - a description of posix mode<DD>
 <DT><I>sh</I>(1), <I>ksh</I>(1), <I>csh</I>(1)<DD>
 <DT><I>emacs</I>(1), <I>vi</I>(1)<DD>
 <DT><I>readline</I>(3)<DD>
@@ -15268,28 +15319,28 @@ The <B>bash</B> executable
 <DD>
 The systemwide initialization file, executed for login shells
 <DT>
-<I>ti/.bash_profile</I>
+<A HREF="file:~/.bash_profile"><I>~/.bash_profile</I></A>
 
 <DD>
 The personal initialization file, executed for login shells
 <DT>
-<I>ti/.bashrc</I>
+<A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>
 
 <DD>
 The individual per-interactive-shell startup file
 <DT>
-<I>ti/.bash_logout</I>
+<A HREF="file:~/.bash_logout"><I>~/.bash_logout</I></A>
 
 <DD>
 The individual login shell cleanup file, executed when a login shell exits
 <DT>
-<I>ti/.bash_history</I>
+<A HREF="file:~/.bash_history"><I>~/.bash_history</I></A>
 
 <DD>
 The default value of <B>HISTFILE</B>, the file in which bash saves the
 command history
 <DT>
-<I>ti/.inputrc</I>
+<A HREF="file:~/.inputrc"><I>~/.inputrc</I></A>
 
 <DD>
 Individual <I>readline</I> initialization file
@@ -15515,7 +15566,7 @@ There may be only one active coprocess at a time.
 <DT><A HREF="#lbDI">BUGS</A><DD>
 </DL>
 <HR>
-This document was created by man2html from /usr/local/src/bash/bash-20240205/doc/bash.1.<BR>
-Time: 07 February 2024 09:26:02 EST
+This document was created by man2html from /usr/local/src/bash/bash-20240209/doc/bash.1.<BR>
+Time: 13 February 2024 10:19:05 EST
 </BODY>
 </HTML>
index a03bf85a18ba4b81c2598b5c0cfde18b38b2eaa9..d87c401c6e86c579578af23d5a70bfa7dd9fcae8 100644 (file)
Binary files a/doc/bash.pdf and b/doc/bash.pdf differ
index bc91aacf1dee62876af7f4a3854725859793571f..51aaf1f329eb19555fce388a0089fece2e250446 100644 (file)
Binary files a/doc/bashref.dvi and b/doc/bashref.dvi differ
index abecdd4b4d8af6c6d7e5b1ca65bbed2c7c7ede11..0e9bbce44e9bf259e706d6791972a9f04a56dc0a 100644 (file)
@@ -1,12 +1,12 @@
-This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/MacPorts 2023.66589_3) (preloaded format=pdfetex 2024.1.2)  7 FEB 2024 09:25
+This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/MacPorts 2023.66589_3) (preloaded format=etex 2024.1.2)  9 FEB 2024 10:34
 entering extended mode
  restricted \write18 enabled.
  file:line:error style messages enabled.
  %&-line parsing enabled.
-**\input /usr/local/src/bash/bash-20240205/doc/bashref.texi \input /usr/local/s
-rc/bash/bash-20240205/doc/bashref.texi
-(/usr/local/src/bash/bash-20240205/doc/bashref.texi
-(/usr/local/src/bash/bash-20240205/doc/texinfo.tex
+**\nonstopmode \input /usr/local/src/bash/bash-20240209/doc/bashref.texi \input
+ /usr/local/src/bash/bash-20240209/doc/bashref.texi
+(/usr/local/src/bash/bash-20240209/doc/bashref.texi
+(/usr/local/src/bash/bash-20240209/doc/texinfo.tex
 Loading texinfo [version 2015-11-22.14]:
 \outerhsize=\dimen16
 \outervsize=\dimen17
@@ -162,23 +162,20 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
 texinfo.tex: doing @include of version.texi
 
 
-(/usr/local/src/bash/bash-20240205/doc/version.texi) [1{/opt/local/var/db/texmf
-/fonts/map/pdftex/updmap/pdftex.map}] [2]
-(/usr/local/build/bash/bash-20240205/doc/bashref.toc [-1] [-2] [-3]) [-4]
-(/usr/local/build/bash/bash-20240205/doc/bashref.toc)
-(/usr/local/build/bash/bash-20240205/doc/bashref.toc) Chapter 1
+(/usr/local/src/bash/bash-20240209/doc/version.texi) [1] [2]
+(/usr/local/build/bash/bash-20240209/doc/bashref.toc [-1] [-2] [-3]) [-4]
+Chapter 1
 \openout0 = `bashref.toc'.
 
-
-(/usr/local/build/bash/bash-20240205/doc/bashref.aux)
+ (/usr/local/build/bash/bash-20240209/doc/bashref.aux)
 \openout1 = `bashref.aux'.
 
- Chapter 2 [1] [2]
+ Chapter 2
+[1] [2]
 @cpindfile=@write2
 \openout2 = `bashref.cp'.
 
-
-[3] Chapter 3 [4] [5] [6] [7]
+ [3] Chapter 3 [4] [5] [6] [7]
 @vrindfile=@write3
 \openout3 = `bashref.vr'.
 
@@ -221,16 +218,15 @@ Overfull \hbox (5.95723pt too wide) in paragraph at lines 724--725
 @rwindfile=@write4
 \openout4 = `bashref.rw'.
 
-[9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19{/opt/local/share/texmf-tex
-live/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [20] [21] [22] [23] [24]
-[25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39]
-[40] [41] [42] [43] [44] [45] [46] [47] Chapter 4 [48]
+[9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]
+[24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38]
+[39] [40] [41] [42] [43] [44] [45] [46] [47] Chapter 4 [48]
 @btindfile=@write5
 \openout5 = `bashref.bt'.
 
- [49] [50] [51] [52]
-[53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67]
-[68]
+ [49] [50] [51]
+[52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66]
+[67] [68]
 Overfull \hbox (38.26585pt too wide) in paragraph at lines 5435--5435
  []@texttt set [-abefhkmnptuvxBCEHPT] [-o @textttsl option-name@texttt ] [--] [
 -] [@textttsl ar-gu-ment []@texttt ][] 
@@ -263,7 +259,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5436--5436
 [119] [120]
 texinfo.tex: doing @include of rluser.texi
 
- (/usr/local/src/bash/bash-20240205/lib/readline/doc/rluser.texi
+ (/usr/local/src/bash/bash-20240209/lib/readline/doc/rluser.texi
 Chapter 8 [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131]
 [132]
 Underfull \hbox (badness 7540) in paragraph at lines 882--888
@@ -313,7 +309,7 @@ gnored[]
 texinfo.tex: doing @include of hsuser.texi
 
 
-(/usr/local/src/bash/bash-20240205/lib/readline/doc/hsuser.texi Chapter 9
+(/usr/local/src/bash/bash-20240209/lib/readline/doc/hsuser.texi Chapter 9
 [158] [159] [160] [161] [162] [163]) Chapter 10 [164] [165] [166] [167]
 [168]
 Underfull \hbox (badness 10000) in paragraph at lines 9801--9810
@@ -345,37 +341,16 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
 [178] [179] Appendix C [180]
 texinfo.tex: doing @include of fdl.texi
 
- (/usr/local/src/bash/bash-20240205/doc/fdl.texi
+ (/usr/local/src/bash/bash-20240209/doc/fdl.texi
 [181] [182] [183] [184] [185] [186] [187]) Appendix D [188] [189] [190]
 [191] [192] [193] [194] [195] [196] [197] ) 
 Here is how much of TeX's memory you used:
4105 strings out of 495840
- 47629 string characters out of 6171739
143202 words of memory out of 5000000
5048 multiletter control sequences out of 15000+600000
3531 strings out of 495850
+ 40273 string characters out of 6172145
89057 words of memory out of 5000000
4879 multiletter control sequences out of 15000+600000
  34315 words of font info for 116 fonts, out of 8000000 for 9000
  701 hyphenation exceptions out of 8191
- 16i,6n,16p,389b,983s stack positions out of 10000i,1000n,20000p,200000b,200000s
-</opt/local/share/texmf-texlive/font
-s/type1/public/amsfonts/cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/typ
-e1/public/amsfonts/cm/cmcsc10.pfb></opt/local/share/texmf-texlive/fonts/type1/p
-ublic/amsfonts/cm/cmmi10.pfb></opt/local/share/texmf-texlive/fonts/type1/public
-/amsfonts/cm/cmmi12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsf
-onts/cm/cmmi9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/c
-m/cmr10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr9
-.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb>
-</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsltt10.pfb></o
-pt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsy10.pfb></opt/lo
-cal/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/s
-hare/texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt10.pfb></opt/local/share/
-texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf
--texlive/fonts/type1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texli
-ve/fonts/type1/public/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fon
-ts/type1/public/cm-super/sfrm1440.pfb>
-Output written on bashref.pdf (203 pages, 816864 bytes).
-PDF statistics:
- 2830 PDF objects out of 2984 (max. 8388607)
- 2580 compressed objects within 26 object streams
- 331 named destinations out of 1000 (max. 500000)
- 1157 words of extra memory for PDF output out of 10000 (max. 10000000)
+ 16i,6n,16p,402b,942s stack positions out of 10000i,1000n,20000p,200000b,200000s
 
+Output written on bashref.dvi (203 pages, 851140 bytes).
index cef47e2fb77b623c3ea278aa346dd8d572cc9a36..18815d033cb4e8eb2f2657887049bf12e6609249 100644 (file)
@@ -1,7 +1,7 @@
 %!PS-Adobe-2.0
-%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
+%%Creator: dvips(k) 2023.1 (TeX Live 2023)  Copyright 2023 Radical Eye Software
 %%Title: bashref.dvi
-%%CreationDate: Sun Sep 10 21:14:23 2023
+%%CreationDate: Fri Feb  9 15:34:05 2024
 %%Pages: 203
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 612 792
@@ -12,7 +12,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2023.09.10:1714
+%DVIPSSource:  TeX output 2024.02.09:1034
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -6105,6 +6105,7 @@ dup 77 /M put
 dup 78 /N put
 dup 79 /O put
 dup 80 /P put
+dup 81 /Q put
 dup 82 /R put
 dup 83 /S put
 dup 84 /T put
@@ -6326,412 +6327,420 @@ B240D1888CB89FBB748FD10B214773D466A44AA2AF44371CA8B9A4450DA76EDC
 A2A807C55D74265931B553F6D7F132B110DDDD3361BC9563803C888B89881DD5
 09E1A623957F074F5B3644BB3F93D7F96770C73499AC0AFC3D7157EA08BF9D15
 DA7739FAB528A8BC30C0EA7899A3193CB9E8EB51EF67DF4F97D36005EC228B30
-E54D14471A6ADD6DFC0A9E18243743457F55C92DC10202632F8ED3DA25B4EC18
-A8602DA1E1AB8DEA6778893BA825CD9DE6E52089AACB336885882690FFE504C6
-7C0098265EDD8DCF06F07452CC311A8B516C61EBE50214B11B72132EE0033528
-13181B4280F37E2CDE07919B43D2120C22971BAE4821E799143EE8E2726D21A5
-E8728B8F0768597285E8420B583BF7E84B02BAC1991ABC1A5917039DF9EF3B8C
-86C9A3CB4F1666755BBFC2E5623339D0ADDF433A6845728195D58C7AE4C04487
-F42B90E877B053AE9A6DD19B8910851CDBBB0702EAA0294506CBBC0A9A1049AE
-CB08948CBFA5E8F07D51336C68A034893B6D146B0897024D482176B14FC63C97
-1F08988DDA2846BAA3E4EA0084642063BD71B165479641E15AB05BE6D9598891
-B18215FFF0BF4BF195D34703919C1DFB595F52568E46ECCC2855F69A375C25D5
-10718CE804ABB8C07763C09D9FF6A363C6210E108AC351864AFB17CB5A4AE336
-B582016781DE6A38EF6BEBA595FF4AE88B8C995D96417152176B66F9180FB6FB
-5F6D7C6CFF01901E954BBA64CDDD83A0ADA2FF7CD6DD1EC365080E5159E51E66
-E2B32369F28D845BE68AAE8C67C30D2CD4E6ACB627A8DC9568CCCD414D85A2FD
-CAFE36BD8991420E3672E2812D9ADFB4B7FA0C0E027503B6FDFC245B725D7EC6
-8AE43F6C8B168111F7E25DEDFD64AAC0BC8776F2D257A3AA8A74FA883092E4A2
-A887EFBD80EE15DF491C5D43D0CFABA834C11583ABC8D549E1DDEDD1A1A3CD5D
-5659FC5808D20FF87DC95BEC80CD71B9E5BE3F304A1A03C2F666597072DE657F
-75A1AB1193B5EADB81D92C4E4E41648666F0AC8AEBCD484D30FBDEBDD87E6BB5
-06265B9C04BA54625207A13FE4B6F292D27C3014F20FA77588CEC44C3F67DC59
-7F9A77E3CB226C5CC7167A33C006AF85B806097DA22428AF5F2AC68413EF5F44
-A29A02773A2E0C3116B0A016E5D1F5B212896772ECDA058AAB5FE55C60C89AF1
-0ADFAC6A1EEBB828671CC95C7604D4CCB1CCD89FC758131645522626D280A8D3
-B40E343B18EB52ABCF3511C9DE75D9D10E91FD5D780D5D36E484206EE99BBBD7
-FA03A5526800EAECA69F8B9B62E25017576CFB81783F420DCAED6C94CE71E8E7
-CD158B8F7DCA917ACDC5CBAECC9E0DDBF21BFB63DE462B810031D61B385EDBA3
-5FAC4BE68B0442575E0FB9FAB7113797A7EDE04BB699EAE0A23A47009ED0EE95
-58637EF6A5C077B9A0ABDDC9267290F878E80CF79DC2E65842879F2A7AB9D6E3
-0E296776CBDE5DEB9EDEF38BD020DFBD31379A6FED182FB3A0DCCB340A70DB0D
-81280D3A0D373A2E672C68D2B2F08AF6061917779FE33419F77A5CA2ECF6E46F
-E11D9803E4BAF5A7D0971F6708931CE92B5F83C998FA4716B73AE9A29E6F732D
-A89F2A3E686DF93E5DBB6BC6C45C30736081395456D16E25AF42B0F8064DEB21
-2A9E1E4BC599A18E08955209F5195DAE5217F8189CEC5550C1491EE792B7F6B9
-BA2EF22477B92F0F9F6FE8AB9EAD6D6206377D202660FD7FB4BBB21C9F9E289D
-D8F6AABC3862D7CAFE7AE4AA3E02B154749C029337C30E0E6452A8FCCB32B0D3
-E8FB74DC71D0874777F5E78D71E8C3D9FE33939CB3A910651438ABC55BDA1906
-4432BA1EA0366DB8B07247E4D1E5EEAF6AA804350D319AF66CCCDEB1104541BE
-4C621C23CF07173F423D277173989655AE4EC72786203E00B223F19A4A1FEBBF
-7C48EDEF9252AE6330304B5A92DFD8B3BEEEAC5CA058A9F8562E1D016CFFBC02
-539B46123685E87FDCEFFEC42D0106DAFFA86835667DAF47212A9B715DA7A446
-FDE048EC64661262495A7A9D01EF11109EDDB180C43EB9DB662963265EBCFAF9
-5470DD411214CCAEC8AC7F182DF8BD93FE984E1BFA8A1171F4619D213EA9810C
-44C65998F3639A7278966684A56FD3A83060A36416430CB1CAADD42112E4302B
-E3331562F5CCF6B5B68B60851AF7EC86B534CE1963A2149D9582820E4360870F
-8FB29E163121459FACE85EB665765E6455A2D719C9619D55D60DCA65D46F1EB7
-3A5FCDE0284F82FAA0A49ED106D226D7C0052F647F0904556C4729D50455DBFE
-7CFD9F8503FF76A117DFDD2B28BD444DD1B0EFDA48D1F6C2B26D805BF4506D7F
-167850D37D16FD07CB5AFCA2C78769292AE449D53AFABBDAB026162AA850F133
-96D2213EEB37C3CBD535554FA70AA75964F357A5E847E63936740D9AB95B13D2
-90F334D8FEDA273BA84C7B370FB27D4701598BD6FD563DBD3A5F7B98FA97A9B3
-3E1F87D9664D7AF53A3B7CBFECE3A57856D03C766F8E1552EB33E441AC3AA6DF
-1DCA2B9B577B646BEF8F0B25C3AA843939CD0AD20E0659885C7F8E488D2E8E4C
-437ED072CCF065697FAEAF59D6D9E83592121D9B40A202003126983D7E169094
-F7FFF67C8F1F0B9F5F48C616BDA5C100804F8B9E6B4824949DC26B4634AA6C21
-E2B1B891A55E5B954D7987B7E6E3CB5E0FC645D7D0B8F7C627F5C642F4DC0453
-5A8E6494B9F4005D2E5F3432D7418111F730707FA9A0623AE971BAD1AB5FB931
-5EDDAC1DB70CDC151BF085D241202D7F1692A45BFA18EAEE8E8F79D5828C9592
-8D945F5177DDF3AF5062AE044BB523CA31378DAC15E19675497988764781797E
-2EF746525D1857B45A0FDA679076ADBB5C4C2644A29225CD1E15744B1635B21A
-D64C21EAB13BB8EE8B2759504217D8A06DCB690080DA7CDB2D9BC5BCA23017DF
-3C73811C1840B092E3AFF36E3F322E3FD4B6E8A6CFF25BFC2EFA25940FDD4985
-F3D447E20960EA675B7CDC617974772691DEB833CED5F18D98FAC99B1F00CDB6
-EBD9E77A98413284C98E4CFB3726987F80B8A82DEC86085943750ABAF974BFF4
-5348BFF04DA5B9DE8238C13D8937427F03C1CDEE994B0C6ECA9D6ABF474DA97D
-F34ABCC065173765858424E545421E38E79CE216F4FD5791FB51DB485D1467DB
-0EF3A6DB914F763E3B0FC6BF0AF856A0C2BEC44E875C6D6D5A6AD777DA3B17A9
-91A9825B4C3C0AF1ED5D5F43036FE58CF48106D42825AF00D193BBF3B8465BED
-00A2267AED6A07EAD4F5747E1EC018D2645FC78EBFE8D5C49FE792F33DFD8CB8
-CEDE83AE62B5A3112C6F5693A6CA7850D01F2F6582B00E7F9F20672C460A3B80
-09F6C9BBA22780BBA997534DAB7B0FD5DBE4003E3FFE8539900458CB905FB0D1
-8E76029048C7E070D2C24E8840A3269EB340B2394D37B3628EC608366FB2A695
-7FDBE02249D82AB905AD105804B6D8E912F2BB7C9625F4B09A7F99325CD7EBA9
-E7083842781FD5746AAF7AEBD6AB5ECCA4D5928B9913D360AEA835FF9379A782
-7B47DC824CB51E77317540378971D2AACDBBE242BAF561128AF71E639F67ACD0
-B04251C644C9C9B26C6D1AF06AC685B5A0D008EC6FD0105F64976613BFAAD28D
-83AB4F5D1CB5C570AD134575EBB95781C701BF4C9FF8C344251773C12E1C0859
-119108448094F41E3EA84BA93A582FFBF33CD086F1FB78AC26E44858863AE3F2
-15DDBE2B9C27D8484C480EC74C1847E4DAF520E507A6B5BDC786145EAD85FACB
-66900381C821444834B653F6D511AF6553FB221112A438BCC8193B330881027A
-908CFAA18E86A2D326326FFC25457C9041BB23701584BAE3FC9185B4B5AB6956
-D8F2BA841F98B0B93F8144B35234067B12FFFDD274DE40183837AAFFEE380CD7
-28DC181C76DA7A4AF637197F53A931D2666E751A2B899F20FFF9FA312A1A79DF
-E04432E4D4591C525B67D008DB6FB611CE089A96D25457291663FA9F264576B0
-74A5AF80BDEA1D411DC027775EB5F1A1B135B5E5ACFACE7EF66A2EDBE90771D7
-5D52FD964D4DDE1C419EF7812B15EFBF7481F90F44C276CB3AB69FD5C16EDD5D
-41A3F665C6B86CAA2F7C832AEDE7CE813DE65EB0424D45A721CF7CC7E2E2ACA2
-2F0FB88F1D61B60F5B7557BB94A88B94CC15BB89B9E67B1C93156586703EA237
-398EF6F454C70B7F93AD86E1CA3A722BAE4EB6912D19B56DA223484ABFB4C863
-AE40A43BCA384B6FA642B5FDC1877D993BEB7DC9C572B096F15F33A5C95F66EE
-8DD97A03EAA53F319C3BC9D2F12F0AEF079256604C6DF649E264EDE6E30E7828
-7B74BB86578FB903BA583C955B1A4CAD417073145D7B2405F03AA98F989D1C90
-8C3F625B28B2B5A8BB5C3E97DF05017B0DF1C7E32F8203556EC952BB2FA045FD
-76A9903FEA605A8F03BC4025B4737BBF8C35DA55D0DC2E2DCFD8B9D6C1310AFD
-481FCB0AE96095FF7E54BE72F713E00C5553B95EB23247C8F17CBCF9D76CD146
-86543993C53CD843B2284EDF996A0014140A2BC3D6B7CF1883541F932CF17A68
-09030CB936AE925C6CEDE67B053BDA271A427CAC85EADBEEB559E50FE1983DA5
-69476CEAE07BEF681CF40593806F3766189536EBDF92AC72270EBAA9DEC38C82
-8E27F56DC72BB45C38BDEF1E809B69E8C9A787FA37E636C678B7684A74B718B3
-CEF980C3214631C7E89947CC1577259B3E7ED37BCEC9622538B3E21677C48974
-A1F687EB3BB9662F88E6A3D387C9A30C30EB4E206F586B4A90B61729A84A612B
-395975B134FEAE92AA05AF675A9D995F60BFA37FCA4D098F91B9D0854B0D1992
-8A3DBA87301552C291F404FA4F590243B24E3D4C6F23CD9874D4EBEDCD51C1E2
-BAF3EB9B690ADE288031FD6481D5C40044F71CEC3AE50F6704D9236839EF9B1C
-7FDA3F6E4039FBD2E5B99BB31573BDDA7236FED53D49CF51E3D4B1EECC9F530E
-41E5FD3099C5BBDE367D1ABA42A476DC8C7015E1E028595994748D526E2E1D78
-D8DEE2625BD9EBA9A23BD4FAC1BD00DC3C08B078F96F4252843A566B22718B8D
-0D4A3B7FFF310A76ED12B345A3AEE2F6C8A1AD394665A6F8C9EBD044A4AB0706
-958E404F955C4E46DF196E1C9BD16E47D60D4EC935864D1A922A5F08DDFCFD34
-21285BADA201BE83254B4A817F7372B64481B3929F1292E12BC91667763E382D
-66720076AC19BF952A5B6A7A36D50338F256119F85E44093EE26D7EEA0DB0A6A
-2D11DEDFC942EA5E22F4202359C91C65F4B7623EBC539EBA75815866CC964AFA
-6369952AB12AF0F7D0F3BADACE96BCC865B4C246D392F6D118CAD444A97E6F89
-3100F3D786EE03431E1B3F1F45E2BC45AD0EF659667E757BAB0E7182DE558C8F
-4CF615B2B286B2EDAA9B8A28312DDC1E586CC1225FF6435465A4AF56CCB2694E
-B131A72BA2650689E03239761A264AA922FB6544395D991C3DB620F50006C140
-4258D85225E8013155B4531A6FA2017EA450F77F91AC191C50C1A2FAE77B1B05
-F40339270FF24D91BD842CCADBF9DFEA5AA13CA2C8EA069A242C93A73B9BF6CB
-5C01247F02AE06329464E02C5A3F6835C3B2A1F110E0E72D907C8629DC0219E0
-4BD43EAD38454B8100021E55FA294C53188B6323F64C0042CC2F9728F776C99F
-66B34990B279FD59B4AE356D1DB317F18DA66AF2E12EB5C9553D58BD075424A3
-00BFA49F981FBC0733F388710A62EE9216A96A959B700B02FD79E2174093D6EE
-30E5CA22AD61E0563AA18865E47A4DF8FFD40FCAAF36FA72136533B3184BA684
-87E2C88C4A8F119F1DCC5B7CC8BCA31CD23806E08CB77530038FB09CABC6A035
-E21971E5088665D46747FC3D66B0626295252642C833862FCEF1C749CA6B6199
-738198327FBCD7DA364D6F0AE000DC56AA44D8A7D3E74BB7A7C91B117203257C
-1ED384C741B14E526571B06E3665865D89A494F32D78674BB62063DF2A48989E
-12293072B16049DBC1AAD7EDEBE0DF69F69FAC857D950BD962E17C8BF097DD63
-DA98E41A07C1C299FF834D41D6B075C8802E1081764B017809361A4C1043D141
-C340AA469642D10EAD0ED5F01314CDC9024EBE21924D5488B9FF775934B1B563
-591AF1D8973CF814A987637E8C8231653036AC5714B74680F23D2A41770C1E02
-22659A92D305AFCE2AFC973776939095B142E60375D5CC0AA54CE490BDE293A9
-F19DBD653D7BA4D9C968FDDEBB95A0B6035016FE534D438DD0BF26336F83C555
-1BF5AD6CA8F02CD063CC67D2929D2B6ABB42DFE5FCEE51D583155BD8FE72AB28
-BD423808157195E0293F75818ED5ECD68294C8B6866948084078D83246E9ED70
-38667D6B3398710C5ABC172F446AA0C5AF3F4023F08CC22D02E51D804299A12B
-9503C2AA055914AA5DD5481A1B92CF8F70BFED758B447EEB256272CE393FAB8C
-08F090E434EA61838AAA3CF02356D5EA8A8323881E413579C55123F64E817D51
-7504A8A473E7D6C39662B665556F9C5CF0F3DF9D42C0C03AA3FBD95DEAF4DA64
-B41FF342092A5445E96FCC6CC910DD9EDF8DAABDF255814A0D0D874B03D3687B
-1441639C03FE3176093361CFF731478E609E4A86AF8810832EF983C5EACE4CF1
-AB8419AE0655F8DD18DE8E68F320BC1C1FA89DF622A03866E8AC8EBCBC336E76
-8AF4E24D9D53E0003E4FEE40D4386BC59E6FE3FB13AB6FB94D28FBBD95576A20
-8F8ECFC0952959796BE533D4867224DFC44D079FB8166AEF46F118CFC1B114DD
-C87AA0156DFA28A10D8599B40588E1F84907CE0300C7A8CF3C6DB63505A79D04
-1AE29BB896A6B2266FEFB1CA6799CF384B1113F54ECE96FB5C8C90E0B36367AF
-5E580A75E1EA2278CFBD60956D333FA75BCAFBEB7FA767EB960097BD38D4F4F3
-E16F00AB29674C802F1EBE7291B4452664260992AF6F834C1D02273BF1B3EA24
-5D6CB3D611F1A99F27300035ED706E6C3D18F56C7CFC472134A96690FCF476D0
-6843014794534851A4CAAA547D5DC4AADC3D94A03BE478FCDCE19CB05BC7CF54
-8B88D9698141D2309327680139F05275D56D025ECA13A25B3211A0F07AFEFFAF
-2FB4A48CD4CC4915F988A619C6410A2E16B031EC19B7FDB904D149467F1D295D
-6777FDC0712AA90E529D4768339EF966B5907B41CB1258BE514B39C8F853D28A
-8951224C1FD0EA80D19D0BEF548A23E70E9D172A2FC6E6BAE3900D81D4E6C530
-1317BBAC68FFE952F47EDFDE434966B89B9E6DB348C6D3D8D10EF6254AAD9B9E
-427FCA129A3867C5A0CA1723D4828F8DB1D99774606CC00BEBDB15E02A88F7AA
-2B3F47F420E12A5104A09D6AC903E0C9C715BB99A87DBC453829F2ED8CC6A934
-FE875D5947EB0B7C5FBF193769C209CFB55AB5E331DA007C22517035295F7833
-C5F54040629BFE9CF0FD9FA9FF10A7DA143138CE41689004557E0DA6A51349BB
-9530B852DBB52EC7FAFA39FCF8381CE3419AF0E9E6D69B14E5020C8DECFB66CA
-7071451B87A1FDD2789736E5A3DAB0644CC9727B58529B5A807388CF904C1BEB
-8CD7B322676FF8B7CC6A25F887CBCA97DE6A7CC53DD7142BBBD1FB447634E2A5
-E52158C7CA2951E87722298B50ACCD1A381F3FCEA2B8669026C751898DFBE999
-49B86879D78B50F5CBB3FFF59FB9CC55D6C0AFD190C521C9D087B8F0C34B11BE
-7F5C705FCED255F6376E3A86A49B49E8059406A6A387FA711478EAC4007E5D80
-C907C72BCB7DF583F76B6685ED9B4262F607D69B23554D1D275A03692D5DFE85
-5002120CD7786263ACDE7CA7158644D8D8D78A757182C03620DC5112538E66F1
-61B30CC11B60AAA0B1873A846DB6281D7AE2420A76E6F66FA5D5B288B8888666
-F707AA8F77363AE3C2B0BBF0577D0131F0F7FAB358AB10A0511605B28C5402B5
-C5EA4466ABBAC85601CF8E61101D80F84D7FD7629620B931302E14E7A89B8955
-41D7A89413A906399D5E375665A4C24DEBA6DFFBC751E23F4D17642D391A4626
-F8397EC5553572023B0F57D5430E35163156F76CFE24442D041B6FA0B44AF48C
-15FE0C8C9CBC300AF3A8BBB79B5BA6D2D1F45A294E201DC327BCFFBB5CBCF384
-CF4FDE8C9B07874E8C954603C4A4F0EE585610B19976F6682B41FE2EB56299BA
-25EFC2604FBD73F7DE1AF858F325DB0D1FD2A3F8965A1DB71CB68C23ECFFE678
-E08C34E52C0E0B4F61B2CBAF3E765ABABDBE364B31C5C7AD94BB7CD5C92AB012
-43DDCD9A83C43F021176F69945AE6A702FCCACEBF5DBCBA63A92D82453DE824B
-B240CFF9B29DF6677D635BCDB3A22DE9F1C0172F32136BC107A1CF2C614897F5
-D6D1C35B2ECDE7E0C8D8BDBF30944D46DEDBCF50E9C45D49A4AECDD5E079BA5E
-4866856A603494B605E4E5BE811E626B6A5F54938324785CF96240C12CF83F2A
-5302D5588F54E27486A9BB00BAA9262145DA0B7A1DA5E514DD6789692290109C
-3F6C8C1C63E49C74BBCDF5FD1D7CC7CBBDEE68BDEED59DAA8BF185044C159365
-0CE5077F69F99A1368365057527484D54BE5461BE90AD66334149EDB5EE3317A
-E9070F453CC27111F223C18081AE540DEB5F17E1978E28FB47C5033AA48E55E1
-AD0574F400E446499C63C0937ECBC03CD00E75355E2C41BCC160FB1D793D0407
-355BE741FF520F35C41C0EE6F7FE36065F33B4E30C6DCE227B4B514A575D09A0
-47A0BB2C03240393E73A976A06C6FAF22B9EB30619149F05E9B65F651F8E6199
-634F9485E2AAB2BDED709E56126111165A08D0171538BA37E325A173E4982BE2
-55023BBA920F46060883183231565C764196AFB26DEA93056F0FB140630E9725
-1EE72FB4374FF43A2A8E0807B8F77EB429B7B9D5ABBDC04072836F7EFB4DEE53
-26C1CEC5F6CF13334B84F47EBD1975A83FAE789C309A9243919104C844B6220C
-F0FF4E9C6E693A6E4EB2D260D7DA96FDB956216E30C5EAC29AA568894361FAB2
-F9EEEDBFD197B278BAB7F2AD3DEBF46B0B1EE58F005132844C96171806BCD864
-2FD40897CC3E719856A9D137B772AFEEDDAB2D2B353C0705EFEDDC42D169818F
-A2D0404F7C84DC9F9CB7527A36F7D8555FAC44AF8A91E872985FA0D758D1C898
-35BE8560D6B584ED66CF9D834C9EA63434575FBB33E54554D9E4B127EC94F55E
-7B761616E717A84216C8BC656F79B0E567553932D9F30D3355A30BCB9DC8BC80
-1779D6995E35B3D97D019601BFB970E3CBE8483FF168860909534621D8873D37
-0073F48FEE38F40A8468FC016F7F76E6E1F09D33DD992FEDCFB2ED3860472E84
-6204643E41699ADF19440FDD4F0DCEEEEF52351B782DD90583361B7B8B5541BB
-61D25A5AF18FA9F70C599F424C8F9DCFB47420CF4104120FC6F9EF03DF7133FB
-27ECF4D848F5E067A27377985CCD10DF85D1E517B813DAD36E8A40664B352FAA
-184A8DA90C0DE095DBEF531A2481BB31996107FC057A9D6263514089FA589C0E
-AFD82DD4EFEF08B80F0F5D91B22E47A0474E27A0EE54755D6280AF36D52E0938
-C57614778147BEB2E89B4236B540457C7FF03BDB6C6978BB69584FCB58AE4625
-CE733497EC0DF25BEDB7E116C6C5D3FEEEB88D771D616AF3D050B3FA5568F6BB
-0752DD30E42B427CB6E6065CD968C6257F2B325F94CC09F5729FD6FD3797E1B6
-C403A0F1B8F3784A856226E64EC3FDE9F4837B512BA76F78F781E44888186DC9
-C2CABDCD59EC4145F6A70B539A55941E830E6237C72AA0B9BF6EFBA37C0DA4B1
-CB4A72627A658600CEA384EC9C5B0CCD3C1ED49530A29C6A6091529CD8D6B2B7
-027E5759C87D353F4090802F13CCB8BBADF1AB157AA24310AA275F0A4FFDA93E
-00E05E4E534735CF2E575DD02FCA3CFA96A9896451E9C0365CFB4952667E2CFD
-D46D3ABC40FA8F73EC68072FB5AE920E14B37C19FF936649DF5E8A978E9DC653
-FC7DADD3C2DCB18A1839CDA3653470E56E62230A148304BFD323CB1D39F6B50E
-D5444C8608AB03D73183210E6F4AAA2EB97005E0824AA42A2ACA2732A58B1D36
-B1EC88C9C5E2848AADED90D2F1BDA936C84263BE055793C553B986B73FE8A22C
-1AD099E1D845D5AA1106670C003D889E169ED1877DC454B7601112DC539F56A4
-E936C65227E657BE26FEB41C8E950BCF54224805D9FD6D2516C4DEC09FAA3753
-262B0A82357EBA2978E80C291B267EE5FC19FB8B6BD509DEE723E032FBCAD28A
-658F6516D60AE9498A14E1B0AD1FDDC65025EE114FD73EB506992C1FCA660041
-98B6C72AB28D643BFFE1160F600543585524AD00C04BA1C54335536D65B7C471
-FC823F7AEF385E4A013C4924750DC2DC8F12388029D0D958368C15B9C19D718A
-AC77E9831E75A330583871159AB63A0332984FDF9D0498AFFD678ABA43FB885D
-EB0662034DCEB9576F66174254B26CC515DDAF9EDFFADA446BB02E356E2B6499
-C6B7F4BADF5F949F6E50CD85E869646102F2E5222E62405A4798955E7F4D8018
-050125F9F5F1D8B2AD8F4A6472C2661DF0BBC6B669868C6CB8B52D528F389911
-CD58F5AA9592027BE25DB1946ED1216F2E915B4333AF69C8C0CCAEA467A46376
-D0AC46F291251D3B09883EFCF8EDA7386BBE03A5DA3B5F2FEDE4EC516FDCD92F
-12D72BF6C7E690AE3FFCD13C587D2A48574653F562526B0ADCA0B701BE848951
-3A281BE4957189FC236B8CD68FD182FDE918E5C7FE2EFE91C4E6573BD9D0F0C6
-2DDA5F477152DBF21676DEAB763F441C7984F7650920CE6EF3DC77D707F8E03F
-622F8E97AA3E7749D080FF7CC0FD1CC561B84714BB4BEFF4628DDC90711AA7DD
-6EDA62DF8F73B9829904E802D8E0D60AF8F06A0DAB973B4C6A89020D3030B61A
-D8C92ED9D14E29AA92C5305FC4687061998CF71056FE50AEA39BB265E6DF72F5
-F6EF4287D4DB779617F1CFFB3AB1E9D9DF73512C86CF2A82354749586EC9F273
-8CD928A02590A5C51CFB2FBD5F5CF25488800090376519E4A5CF5F0D1FC98BDB
-101ED47F36A3678FBE57A31C09FBDBE605F0E9CBCD3254D415061AB3B9E668C2
-4CF41E833517AC0A07C3A0AD412E608CB5F0996D27E7341A2C637931B1BFD660
-1C330898C707F7323B1A47A6E6794AA94EF07C99D9BCD106108EEB903549140F
-31D5E0DE52FA3FCDE78C9DB6F202940E69F86DA4AFFC8974D669A8802E6D5C49
-D60E640E5433F7474BD623580D24432927E6919E575FEC9FD044398D6174DA64
-7E6B7B042777003E55C4DF4981DC0A45B3AC04B1512380CE39B97544D3420C4C
-B926016CDC82F5CD160FE7106DB362DDACEDAECEBD20464513AFA156038414C7
-DAECA2AE5D517DC2BE95B0E4707E0B191B3730EFB539CC0D3B80E1CC7B6ADCC9
-1F142222BE572124CFAA7246975BD131748A110B0362874FB61D91EA94A4E330
-B88C30A9CC1F7EA5AEAA12018A02EC5681D000A889B19641609A6E712116B7D2
-C7A04AA207CFE9A619290044CC4BDB7979502B5E7182D742DB646A923973EC3D
-04382E589C9FDB590D5B25A1D414060802E1251E1F0DBED3B2674DE3FEB7ED96
-50AC23B0E3D9E44F2904B064D06A002AB11A44813BBE243F907681F6A5B7E4B4
-2BBB1D15AA391977FC0D644B9E4EDDEA1F6593F9D6D64F30F1F8DD238E762E53
-CC5B588DA5014CFDF4E281A34CC875656BF31B1ABE80617C269D3C32EDC40CA8
-E354DD255A369C4DF775C35EC9FFA8941D71FA984261AC1BE8C09C5B656658CC
-CC2AD41D7CCE283A5530AE8DD2B8D03BCBB3B6B3696FD601C563289526310DBA
-FFA90463815A687ECF1D69F69F7B449AEDA02A15E1A9227B0FEBC29F6E16866E
-9E0FF502CB87D973ACC8D1BD08B5B76798CAB1A5D8A17DA7CC244EF085F080AC
-96CB5CF0F0B2DCE2A1DB769A8777C971A7A4550C759071440654E195A7DC4044
-F60BD207C81295CA20A54903E0E2EBA0726C82DE70F2880A52198CFF2AECC6FF
-0DC562A031D56847F6B8E3FEDBEC86862162F3E982169743CBA32DCEF2DFEA24
-D548A862DACE88B14677B0657420CF60E9E186B35AF3863BE4A9E5455BDAE62D
-D39E6C7DE4B3E079BEB082842A1486DB5F8E759204926F146037DA7A77CE50B6
-8C29BC9B5299739FE52778D232B44833033A7DFB300429DD002E14F37EF31D08
-069B7D94E70BD31F90495D237B4F175540B12675874396FC75F9D005497F0424
-F68BED0F8CE28AFCCCDE87BF0D0F5301DADCF69980812F989CA9A7642FC5D50E
-0632D79277781F3CD9E014E9DA160B2A56CA7EB621EE3D89018774B34E943F8E
-EAC217CB05EB834B562B03CCEE6E457C681692C54339506BC7447B943D151012
-93F026765C80712D5398D3EC320BD4864BBA9C4F7242FD066CEBA54390D119BA
-C3A15E45CF70E4999BCD0BA14FBA7C6480DA52D9900CC36DDE18693DD1FDDCC7
-FB5BCB5328E5304C0B3189166A2D7F3F3EFA16A4D8C8EAA30CDA83EC1BA519CD
-C6CDF954A680DC9487D5397201A20B1530AC427F0DD32A17B8823428E4D1AD8C
-8C512FF0F9576EBB8639852BF36E043E302D19A3B559F5F43D4077AC0F9CCDC4
-1A0B6BF5A5F657CB0378772D7476027E060D592492534DA6CFDC84639FDCF136
-036EAB94BBF6AE2A3302A6640EB48A537B579532A557C69240B5BE6DCB609E65
-B248336A2F7A326E85B9651659AD493245223EA204DC2ABBF33007DFA9307E34
-90F924B657395F3622C5449CB9965988E90A9B840FBC2F8B74BB2151B50467FB
-0478F1423A776F79DF8AC78E999B1D6081A9B83F714ADABB5C548CD2AF4E9EF5
-A631BD50FC51817AED8EBC6BF7A46767E562BA211561347D89308D28FBC7C04C
-61A1324C22E2352DF95EAABCE7EC3ADF40B863589557962D4330F443D0A14F5C
-F3DE678CC2C45E6582F47F4EB36EBB12A73B395149CCDBD9A92E3E7A9EFAC658
-13AF608A3BF637A36A7318A342FCC9804352E361AF67436E7B4E6361FEB8656E
-6FC5328E38D8C855BB6994E602481654E5372BEBBCBF48C63F6CFACC9F3D4FD3
-95B963ABCCD595D90C427ABE71671BC690DB170494938B4A9B8C0B329C4B0F65
-28B3BBB68584C7CEC9975566FFBF29EA166441185340639DD0FB38BA355A969B
-1460753D46ADC2B94315E08A56E5023BA5473DA1933EAF6CF46C1C6413966EB6
-246A6F259FB72738C4DF24F91061764EDCCB4B1834F6EEB9BD80AB12CCBB6BAE
-3E9715FC068386456612014DC8457AC3EA92D3140C7E9901856FBF9406F5FEEC
-C4814CB0CEB13A44908644A5B6D69DDCACE742080D4A41A70D93705433D8B1D7
-51C782D483FE38BD619D1E0E863BD24AF8D1ED22CCFD1DDC63E481DD1D525BD3
-A69323974D440E4C676A8480ADA8BEDB2F8D7B82DF7E8CF71E9BFB6594A59055
-A50BF0B479C6D1E62E1C25E9BF89C898F815558AA20DB908210E6156A3C0C98C
-DB0215DC67BEE211C018E82F504DA56DC959DE82E9467C9889CFC353D379E8D3
-08B40C015840E9EA9F9B11AEB3B1690F7B51E00181EAFC769C32A0EB57EDB2CB
-B8304C16B1E391D9C83496A99F765A2F593AE9E60170F93E68D99414A71B2298
-F869CC5617669A5842F10170D8C73BE732CFCE2A2803B1ED4CC582817356A304
-2E80D38F53DB04091D403F76E9648FE51BD4CD3728FE0E27C563DDBA778D2B57
-8B9082ED2A2EA10C0A9EC44DC8695E1B930F408604FC497BB411F34718535925
-A8C763ABD12D21129E018416D6A7F3B85010642706F63E9109CA68AC84FF543F
-5CE4ACEA6680A279A54A7E0A83F28B661684AB955DDFBCF3483D2255986F8CC5
-2141404DA424CE7C0F45AC2938AD5A9908B18259FD2C7865B242C3A6427DFC53
-B2AB4291DDA1CD7484AADAEEBEAEE1F6D9AFD997644C576E703F9588338E7DC3
-3E8BF6265048FD288DABEB790875CB83D7102EE1EF1ADEBD252146F5F1C34CA9
-270577C4D71EE41705F6A2F76A17463C8E553BF1E09C06CE00A600B907F36611
-464B9D2974D1C9C8BCB589AC5BB056FA8502E4CDB65B7FD34F5FDC2108915465
-E92B246505C67119DFB1E0A251ED432409F6674195B591E704B029E40E2AA827
-8D8C6A1E2E6E8A0FFEBEFB75896E0943E394F90F03A0DF61ED23E57A24E0C2D2
-79F9977AAA33E6AA211B48720A1D0AD4789608A29ED895DAA0D4A2428654EFFD
-F5EA4087E6F727DE7C5EA25C15FA2A6A967FD0A240E890997D78AF8466EEB7DF
-8D8BE4552E1996C4684BCE3E853E1C541C7D9C2333ED357D179E4E92A44518B1
-06D92F646AE65F7A27F746EC366EF4921D088CC6CDFD723838AE89648D6B6EAF
-824C08B6AFC9D8439DAA5CCC862FFA61AC4B0EEFB2453C972B1A64FE31C071FA
-A2DCF66B9CEED757FE42B9DCAE3302F807F7CB2C779F7441EC5F11C776036719
-427F1799BEF7CDFAB114B7C30F27C43CE3D71A71C7BA87C4FC34B711FFCCF892
-23450E5CB964642AE0E4638FF80A913FB7BEDF489DA43E315E8CB8506A4AE884
-BC0832A6B83CB4B390519DA862769AEEF454D3C4CAC6CD3899238A044718FEBB
-59F5D7C79EE547269AAEF1ADB1DB7A97E5A01435D957413FF0FB229527025DFB
-E1BC87C4198E5EFCFEFA3ACB877B1370D222C1CC30D0AA411440B6A59D545D53
-7D72D4D98337E08107FE636E3F25932D57108A8E3BA3F72006744D1B2E33EE8B
-CABD44AEEA44A3307ABF8AC6B68F8D83CD6EDA68951673D6984DC6E2FE260C16
-A8673467A85E727DF7D5F2E5909BD2D22D272F87C945B0E93B4EC1A759393A9B
-75F7C462B34542FA02DF5548CAB66E75B88A834354AB7439DDE480C6068A214F
-D3748CE5C2B2F1693DE0EA5162771F7FBD17F5A1A7467667CAAAD0610F38CADD
-89102E1351F7B5DB870DD9A3CEA56863C249263A102E649FD16FD827BD60BD19
-E680DAB90D235E5BF75D5315B2BE376EA7C1FC97D709FA12CCD937CDAC17845D
-C373FDDBB0533C37169A34CF072F187E5661FE60DB1285920E3AD01EE806C874
-48BF676D73DCE4A919E3BD19B6A6DF8C4A23BA65A599774CF0E45F2F20410EAD
-5A9E43CE85B335F953A0879CC8327B903C0F24CBDF65AE01836745EC4946749C
-DC9810CEC0A4868C3356DE8D6447547785EEBD102E069C2DB83EB107696C8EAA
-EB71EDB076E924F27351293F26EEE77DE1ED19EEF02EFF9DC8AD8827BFD0E10F
-E3301ED3500E006F4898D0FA373F902A40DEAFD33850059A0EDBCC4FB23B7BFA
-5087714FF84D9D987933D86D6533C0784BC72A32DE5E26A4CAEAC39715A19360
-79DAAFB08C7097553749CC993001EF6C17100AEDAF505DB97CE45372632F5CEC
-A48C77B21F9E50E81EDE28E19D604ED0D7398D9621B7428F729FFA20F9DA8847
-F83FE50721CCF7260F38E1DF313C9D545D237A28C15934B1018C513F0AE93D72
-F0F22E8F2385686BCE5435122C3EB067F4AA14FDCFB812E7DEB5BA9ADECFBC44
-BA562AAF8AAAC463FC0B2E04A4BA98460A16C49B8AF7B9D624012D432E29FE9C
-44836E970CCD5900BA3C2E7A9F4FA98E4AC8DCDD503162CEF4C0CF1598EF607B
-E11D60FA839D420207FF3B46E1F432A69C99722BD77535A5A1827C0370BFDB83
-5EA905F8EBD42B427A38FAA2CF4E819C9FD74BF27F548875248AB6D00D2E29FC
-6060F2F151C48B758F2C85C1EBF5868A18A1B747D324F7DB49855024F213092E
-FF0BA46976813383A25196A4BF30EB1D2214362C75603407488823D2869ED813
-2D84E759F25F9BAB59629C2AB691076AA9BE254A27B49652B05E9AF71865E5E7
-BC324DDD2A1400F4B2888620E60EB08A9EFABB287CA0E52575A364CB0F22380F
-E27FC8A0DD537BC0959413A2657AE6FE12936A61EA31ACA64F08523AD9B21514
-0F352F2EF3DDC159795F83E9E12870C13D1D9B98D3E152CED06D3BBEF27B9531
-000CE08D0B280C2C37C8D295557F1BA92C8233259A007E1F0FA0D54762E7A6C4
-28AA751CB4E4D6AB5466D8A04E4AE9F64A3781B730A0BCC6108C9D5198810D35
-CC353F1E76DD3C78D33772F3B3245716DC623F4177418224AC4A5F3E2CA59D03
-95BD0C240231093AB97FD553194ED4B63856045E23D72F67BB6D6A4D6CBC0FA6
-B62BBDF0AABB66C36DACD73A99801E813C6F3BBEE1AFA053BFC3530F2699D2CD
-31F66636514A088710DD1DB370BEAFC47470A122381AB4F374BBFBD2AB39A953
-DD0FC82DEDEA60A99C9EB07EC0F702547C9ADF01164D5B22D6A41059984F347F
-CAFE7146B3626AC97EC8AFB2614D085CD5FEDDA92EC73D7EC86FC0DD5BC9E912
-D68AFBC4DD321E00B6954F14D5CD9D6580C8DDDDB34ECC92B16BE8953B035AEF
-0523D929EF5A086E7064E1117DD2AE2CFC346889116731CF431A2E22C6FE34B7
-6B7535EBAD4AE760956837944EAAF4F001120CB784D249E6CACCE4E0E0FFD8F0
-330C57C7A6E27545825F36189476B887BD56A72802D8947A42323C36114FBD24
-B47F11B3B0F7C5498463F54EA557574F1A8EAAD4D47964B9B244D75FEF37327E
-6096D66FCA9E617E441978D58AD792A93E3C37FDB5FDE506AFE0BC0588FDDEA1
-2E64D54283E22364267A5B499EB52F623FFA9CB11DE74FC33715AF2ACFE57C25
-A621B07E7D39E56F4ED2AC442C1B85B412DFA95C574BBDE5111A09F2F70F46CD
-FF84965EE534CC63034A2E579FA7928906DD2E64560CA3405B7B5247ACE33391
-F24669DB56F6BD022BBFA47934547003902ED8344277AE5761DBF7604D69C02A
-33A7F20EE06494669AAE3403BDAB6E4C4373DD56DF66F9700A06FA86B030F3F1
-3B8210C9948A6EEF8400C952C4A81159316390109680E5C9C22595D8E6FA6717
-B0D6803E850AA03F2E854F0A39F819B64357D53B3FA73AE0981ABFEE4352353B
-E5A31D3C3672F07FC2AB8FCA25E5B047F2AEABA8A658ECE9E35579E4214A9834
-C6EEA901E3A72FB1521D22FF6F117C6E80396CF1FAB02A8597F2407BF6CAE3BA
-976537E118C6E84C69C76889DEEAFAD6D658CD83381C8CAF989C52BFC59334DC
-7ED97D2741940291B677BB4AB0F02D45CD63379DA8F02F35658F13AF64F9D6AA
-A42A77A6D2A1653BB1A0FBB7A52249D8133440827678AC81A66FC3DAB5A55F25
-B821E7B5153C6FACED54C203E5FA9F6DFDDFAF54C9C870B719EB0EA4C1131C98
-5DE4047C1862E71FCAD3E4FD982FAC9CC900FC22F6770712FF82BD27683CC442
-9B684AAB15FB663A04001D434E26690056EC7EE8EF3D3E4AF36DFDACEBF21B2D
-681A134805B6D34D639782170DAFEBF22C888757E4BBAED1F72F2AEA9ED6CFF2
-C477430514D06ACD1E2AB0BF1EB27EA4DEE773DD77D140F02D2F4D5DB55B07D8
-23AEDB701A2885BD8AC950E8DD285172BBC6CC90A000EE8D5FB6C4D2693C70C3
-B90F94B7F806D4584935D69257CA0CB3F72BCFF88087865C9326F94BD3FAB401
-6C89D92242195DBE02F2437F6A96170F1D0C28623D6921EC424B6222838D18FA
-E07B02189A3A79B317770FF5ABAA3D8EC721A5AF14B5276651930AED5B20CACC
-34128430F8D6AE1BB7A52DCC22A9796792C926528C0DAC4FD652906A43D695B8
-267B1E89FC1B96628CD003FC2A3E8890E68655532146DC927D36C60E98E956C7
-F86DC4B803247084EF8014C3711867EB692B06F90E1B099501F4CD9AE0EEE694
-5A2B34E927E5239DEA54A8E9BD542DA437CD7928C67AFB661A72B9A2914416FB
-6441889C6316F0D4045E09419F5D507152644126C4B614013B868D9F7631EB98
-46A5979176C2E3F9F6463BE83908141553E90F523420FDA7ED53F711C27A4517
-1052685F33B23C9A3D34288073B7FE4AC7796A0C3D7669531B4A4CD47C8BA1BC
-9179E425B3C5C004A93ADE699B521F798B9AAE48753028A9F95F68ABB41792E8
-D067F9819247E7D81AFA10D72D0A7B3EFB3C202DE67ADEF30EFF42B4FA14DFE8
-573AFA45CF40E34AEE040ED718C7A37604E898F79184D346AFA0299ACE9BE973
-90B606F0B88DB4336292577439829D202B8BC881559868C2D32DACB708DC7EEC
-59632D3E618D37B284780AF2666CC81BADB341C10C9745A1437015AA91AF676E
-36741DEA9046B9EE93C70CDE6E5BE30C1574E295A592B03B951137A5443F980D
-C36ED9B52125EB8A71078F51FC10BB49CFB048A54824A6911D945641933857D0
-A9DC80654384B562FA3F5AB575ACFFBC53B493A0FB579DC9DE1231A49FDF4375
-865FAB1BA20E74E4B314211692DD359441E47068397D57E608871CA05FB89BCF
-E0D46BB5F84BF354BE90BDDE0ED7C565B84C32CF953F2BE1136D9C651891A894
-FC786EC9FACBB8E3F0ABFFE37463BEB48D313D59BAB7210BA2B6CFAE1B2A8BE1
-ED6B45CC9E251C4E8003E5F562EC048B69CF13A634680A2C67550CC94CEF59A1
-F217EE7665184E18D63DC0C91F5C606AD52F2987D379088B39E217C33CA14538
-DF3FF835551D339BF2B836957217D3ABB4DC57BDCEBBCCE14B70DAB6821FAF0E
-FE68781DAB924B6966569A4FE5134ED14A74F72FCCEC988EEC4868DCD443A503
-0974EAE6F07E8311C1979A3B2B586188EB5BBABE38017D31FE9685EA852AD59D
-8CD75108CDD566599D06B611AEDE7C492B3E82186980527C9281DE79D7449BB9
-660A8353E924B4DB1B9F6166553F436409A93BD5C603021AC613D5C470EFB743
-A6ABA267B872D32B531399BF9ECB63364379CFC3D1804CA7BFDDC19D8AB9560C
-66B7D20F94E6AB76722D02E681D3E4561DEE24E21977A4C76967FD8D6499B435
-18BC23E58ABAEB635A8683C4D13551CCFE2B2179661992E3AE95EED9F0470693
-D09152B40DFBBB0298A9429F8B2300676D0353522265ECF91369F3A9888A26
+E54D14471A6ADD6DFC0A9E182436B4C197CB675C37F29D0404846AE086C2A5A8
+DA576BD98FD5245F1F19D20D265FE8A6C29571864BDADF555E0516D49EE5FC67
+CD278CA322575D75BC18E682A112F3EA978790C6FB0202939323D9D520F768F4
+EE5DEFFFB37D802D896E4E6943986006BAED87780F3B9D967B2FC8DC44A4A529
+2103A5C8E05BFF06517D8851AE4EDE73EBF32875A148CF6CEA6D4AE03DD1328F
+651158122376528BB9826C2DD8D7E79847902DAA002E452D12A8F8356C363FDF
+76C5969E2CD60336F300EB511BE4B7F1F5585DA7C6FBF995DB71B8CF22C0B458
+B6ACE92E0215C34849D8EFC56C9052A3924B628DF69B0435810BA49EDFA03E52
+CCE470EC571986F64D294E0DB056C9E509C81AC64E65BF1E2C17024BC8ED4352
+636CA39A3937DC3800FCCB1F77969154EFE9A7091ABE21970887F6898A281500
+7ABAA2EDD1A825E36155689AEBF310C63BBA08FB3C7414C49F445AEC145A06AF
+E6FDB6A30B367DA1BF73AAEB9C503D23CAC63D77AF39A9AAB1C1FD22BEFB8F1A
+0E50F612DF0A30B5984E18950261544B3AF01D1E839CEE5D093AF2E3567278BC
+0D91A5301CE5FFC6ED8B9C38A11BB939EE48C37F2DE47E9BB52195BF1FC46E1F
+FDA886B899401F144E4B32438F28CDDD418CB529CE8379771A0DE13E584BC354
+2E26FBC8D9BB1B1F92BC0300CA7046145698EF64A6540A468603092D633E8B2C
+2F2F688ECC7F457BB6FC2F075F87EA556B5837E3632E993C79D08414E033C21B
+F6238CC12034BDDAAE28A09A9CAAE51667A3AE782A92BF7F4A89A37731426D6C
+FF47EFDB75BD2D462A79F9E55EB522FC6F5C6713775142D2FE1038D2D49FAC19
+39A26862AE2859DC5065C1565EF8C249D95D501A8C53F659CBDF3B0AFFF1A4BC
+5BE2E54A2BCC84402D4EABBA36CFB9932CBE589476A9335F509ED972724004ED
+289D44141EB8D3B63494CF9AAF357A2EE23B857DD0B1A0BBEB207039C30AB085
+28BC18F13B235F1B8C2881C0B581226D1230E7FAFB5652A728B50B5EC6AACA19
+26587B0CF2AD14DD7CD690373D166C1B9FEFDEB345C2023994F2755F34333FD0
+241342CB4CB78E98A798FA200F3BEBD3B1B8FB26F68A32D4970CC1BDF7880416
+EA7F68EEA9EDCBAAE75E762362127A9888D470EEE54D9103433F623924FE361B
+6C0B370C8906FE9727A8F249D1B4291ECCA02BCB0BAF9A785CBF4C9451321F45
+775970916DFC43E0C2FFBDB9194DE54EA990B1CBAB06C5567F4E6DA7EBDD7028
+A475FCF7506BB8B3CA785233225544C87F74D792571FF09B3F6599B3F1111750
+201DE0AA6472939D049C2D674F91508A19809E82D0BA3ED2EEB76916543B8A19
+D758901E5999F8348E74D24A8FC602B7D16F986401C0463C2FADDF67F3FB2C1F
+E08CBF9F753023701A1C9860135284C5CF30E5262C5408D6FCBCA90F14B9EDCA
+7E15F68419A3A1842CF2F988F6E77057873007FC22A2575EE9FCF9B80682E944
+83C776E6F32ACD52BCD48CA90E2D5C31088F646E6A81D27BF7FECD78CD81B2CC
+755155CDF0F1B951A3EC59012FF66E005CD4EA1F160C721CCA6C156957124C03
+0708EF85B90556AE357E27BBE9A6F9283D5B50F4C286D961B61C87F85DBFA44D
+2F9C0D008334B4E2B2C4E6E461EAC86699E8EB8FFB216DC850ACEA016674CCD8
+BF7827FA6FA3D167C6980D6ECC7FB70BD5668DB9AA8BC2013900C693B2890A3E
+5B86A27556DADEF2870ED87EA2EECA8DD0C1E1F58A7CFDF7AF3CDADCE2FE6D8E
+9CDD02887120032EE541A73150BBF388AF868841C2C5EE9598D78A10414A8599
+2D936D5A9E83CA777D35563263ABFF48D283CD76B3F88FBB8F41278BD2E88B20
+2D950635AED81014E46E425434214BF56AEA935150DBB8F2C673DE93EA9C5A22
+E1D305798D85CA7A11F194E47F74F2658DA990E6CFD068F1426650F59269B269
+D2BCBC24A4973EC99EF1C30DDF20F6F383807A59B615E20A05B75582B82520D5
+E1B9B5B145C49F70009C1BD507F895382F82807CBB53E303CEB5C1F693ED6315
+A545E313B6130A9197FF31062F81F623FBD6E4D5B9534412265A8BC7BCC76B6F
+AFE43079E82D77B54EAA36B21CFC2AE1E6AF5D19952E8E339507EB7A7A2D4578
+0724DB516F848EE099885D861A399E72D738395F4DC3E857BACF340C6D6E549C
+79820E43D624F35FADC643944906B7154837693057F2F19A638FD68C246A5BEF
+49363D787DCCA6C9A3FEAF0023FEC63F88F8998FCEE527957ECBF03B9556B68E
+F7BE8C04FBD8CCDDC4DBA0A628D157DE2D1C752B07A9FD9442D6A423E4522630
+133D1094AE3C72FE88E50F13E2ABB0181E41C3C77F30E94190A66A4A110B7A90
+E0896CC9350E9ED01A2CA395851BFDD8A5711D8004E8C79FE8C1E98BAC0BD985
+A7FCE6A92077E0CB291A0F7AB5CC6C30B8CA7CE2B39B374E531A38C5CCB37C3C
+91726D52D98E98A8908FFB91BDC68D30AA8A636C9788E6594AD2F176A9AAEE16
+EA3F249B42FC47A95BC492E52504C184B114389BE0909E827AFE2A33A1F61C95
+593102EC2AA44BEDF477FD2BD876C6F15F612BB8A2B3F6EE46676F36FA1B3BFD
+1C48379F8E92A5EBD064758BFCFF2C1E9B908DCF51ED2FCA8E07A5578BA7BE6D
+9C9FCF5FD25AAE03135B453279FAECE868B55C9D46C008AF8CC68B460C75D1E2
+D6F1F82FABD77EC7DD17FA21E207CB7EB7DBFF1FC61A36135E0A024FE527D4E4
+80C7E92B8A61D52A1C753BCFEEB2460B10AA8A72A76C87ED59600BA7D0ECB249
+65AEEB86F31AE0BA4D0E05FFDCE431884AC5FB9C8D149A1E421F82BE02E46E44
+240B53E7CABE9055C483981031E866C7231CC096AD7DA409FBD0EF0583AFF0C0
+88C7893082CC45C35D0CB712CC92A5156B98191A600FCD6B9ACDDBF31DF29BF4
+AAB4425E9D7C3C21D1F6E2505039DC84F2C7194A2CFBDF296D0FC08055E562E2
+123237E095F8A338BBBB0D4CE5A23BC1F722DC2D3457A6A95565420AEF16E07F
+E78B81E5C0AD05259E6393893FB8536AB9C151875B3B085827622F485626C2B4
+C731C01E3ED08DD36C6DF477736C14C8B319F0B0D29B9D251E40AE9EEA341C56
+59684AA49DD1F293F3E54DD332CEA090A45010A29F978FD4F7F9B8B85437527E
+0A17E7A5A03BD0D7ED518FD95353C931F84BD2B9CD6D4A0D6CCEC055850D5265
+856D9ABE52C7261B1CC637F5546B5476277908562F07E45BA586676A68798F94
+BBEA8AAF33B903912A65E9800B108E8463F90484747EB6E236071EC765D0B7C2
+D2B53047E8BDCB3C720AAAA41EA294178C2061710E8E5788F640C389935B0DA2
+B4C2615B956BEA859332D01DF2ACEAE7B939B68FB214621C5099CDCE43B63343
+6E51F0EFE835CC2B864DB358D8123DE4B50C49C1C16087A99FC427128A78891D
+9821CD5330FD6D2D990028C42B968DF91C7545E5AD2ED35C2AEC94828E85B1AD
+A18B0B1E347DA38E0076EB8ABA028E97424E3C902FE65E0FD8275E371DE741AC
+9AABA09E2BB7DC781758A6973C7B5548E2659727AEA2141DC14AE1110D24F25A
+D58CCBF9FE7C432D015150FB9197A4B2AA739B773289998FA15E8110959FD0D1
+30EA7B2AFA731E411A68B6F7963A3637BDC24002651F9FD67E8B7327C41A145A
+A18BD7284A293F0BFDC4CC7F04AC310B6B3DAABB50B67FA45B8973959D84832B
+11F27A2C5F2C0F9D328EF826D56A18DB5681D55784E3786A9C37B31DDEEE9E5D
+51FFE1C4B23D716CF95FAA7FEFDAD7675C4BF94B5E7C5BDE9166D5793BA50E6F
+C89AF166A3B12DFFCE61980C0D90C29776BF27FA7B16C14786C7DB3B04533AB3
+ADF781FB5E0A865E373CB52A1EB8D19F1A50DD3635D48313B3CD35CE6E55E0CE
+39D75C50C6FFEBE7737FECED33F77228DDC38679988807A42D4120CE1D1E1C00
+206788347219F6CF84FDC75641B6E918E9A12124CE9806FBA2972ADFA13AB2DB
+9C1FCCB6ED1C3C67448CB296FDFAB129F502CCEF4F06B5BE9640D9257CEF91B5
+9EE85B290F46109FCC2DF46F924BA1A5A841E78C9A7773C2F39C02CA14841EA4
+B002ED8F79827A85F158790AE542AB87B62ED40300C5F78B9D6B66DC1ED48C22
+1DFD400817D1197A4B82A87ADD3D469CA228B5D0DED28EAC563C3C77C7A564AF
+46193EB6A759EA60C670D7B6AA51DCFF9B93F8C920671BFAF1D7649504B80CAB
+C0C0C2800E3D9D42AA21498C7B8814A88D0A0C7FAB92F6D2B1A77539969B8F7A
+9E388660CCFF786522E3EF9A6B1A6A1CE0E5E540B6FBA177A37ECBAB0C4A498C
+6121EDD8874C465500279EF36D44F16F1C0E8E39F9780D8FB382FB99A606AB49
+A6497AF68BE879707C949F6B52223F577CBD6D55B16416465A2A18F30F321B53
+F86B6B4E4A8EA02D39E6AAC2EFC9E848E20BE60FF60DBB4B1F42D7158CD1C878
+EB878137575F3409CCEEF60008B8E5F2EC7262106299A2440EC668BD640B9B70
+C89AEE5E76B6C61A77CD81717DD17330385A1CA549BB232A8E7DE7B9E6AF8D25
+EDD53753C11D779F01E1F6CF64BD611DBC17CB4A9A3EB586BC51B0B9CB944678
+9D224BFD2F6BF275455A4ABD904D7018A00F9C3FBF4B06E52D62F201F870F53F
+0BFD9D906116A375102AF114E4866FB7876C405E4B12A764E1D2B16E52C2D454
+BB3E0658D12C847274BA1E561C6D953FFE020C4D21609754B7EA3728197C3F12
+C06B2AC1FA2FBF315B86CFF65ADAD5C9DB29818B47888B2F1942DE87908769E2
+F7B46935FF7B966F86417B5B59F68A2C9E0D54BAA2F7115C520A51666A24A17C
+945DA6E9E6A64FC800C0B13625C59B205EBC203962690C6467A588CE8BB5C73F
+C9F33559A153FF3AA8DB074626F22288F91DDF87512C86885C0CE6C2A634D51E
+74D1F255FCBE3F21D4ECA36B55B2704518C48AF9825683DFF3D7195AD31CE104
+7B81AC823A3F96575A87511D88F4BE86880C255960D5C6F8F6667FB4E91BDD1C
+189FFBFD488D6E0966EEE480B02D8D0ACB6434A69B0C165F3C2BAB407F108E55
+434F6D70C0D1D9E5F7EE1F1A955B2F1443E945C86F20F124ABFDC516D1D5C7A6
+0D265EA3DE933CB95CBD095AE5248CD7A019DC1B8E0CB17AC89EB720E10A07B1
+CE057341EC034E1F67F4C10A981860ADA5D9175D276EDD89526CF90A8B2A5B30
+720D30C059BB45974AA5FC3DACF45B6E0DC37C94DC04B73DE1682149EC449235
+AF23622F2B08551824A1608CE6CCDBF2B9DD243193B67E60C33ED2DA8DF74032
+08A047143DDC307C848CCC58FF9F49D7AD7D0D150E0DDC93ED7248BC4B7914B8
+814D3F203F42BEF94BE753B1F1F928272077C685985604245C1F2882736E52DA
+A24D4A438F7A8B6DECE1F2EC46E57E2501B301D1557063494E2E10A9F2DDAD5A
+4D77795A5085AFF300F89F4A18FC1671FE8D212A4D45B7BB75A9280DD9B4384C
+B1978B239702E4D41E963C93AE5F9D49D811D1580DF3F23BBE42A42B1116E177
+6E45D530ED3C60A097284C8CEB81F3892713030BF4306E3B03516F40BACC8CB7
+41CF6D5830F3373AAFEF24D890B199468D4FDCDA31DE44B5E0BD6088A899CA32
+78BF14F27023A4F43EA2AF37E19DB03974D146768A7AB7F78674C87C5B45EFBC
+DCEE7224DA2A09ABA73F289CBC2C2A8A038CB4998BE859A02491C236BCC01455
+F233CEAA8BD1FB734A16965E3535592E1C99FF1D4040FBFF10D67CEAF472A14B
+F47B062A156A5EE99400E110B12E28D7C3CC78C6A226B071DA7741338673A1CB
+AE8791EB72C96EF04395AA310C6FD72CD3D35AD5717B0A103DABB1E05162E352
+F5135940DDAA514B7C80DEFA7B462AC20575FFC8ADC2D692CB8E17BB403CDEA8
+51919D22000D71358A0941335B0BBDF97B17BE572219A048178D416F03C23FF4
+DD54A7E33A782608544AD9855A88B2BEC481E88F030FB1897FE724BB133CBC58
+CD2E1AB3D37A10D68B193B0A2B6D0290E7AC666202E54EF54050AEE1BD93F17C
+B7DFF6A4637E99573C13C83B5ED1B655B177832CD7D2269A1A049685EB9D967E
+725F9AA675D4F2AA894910C8282423CC21A76331F7B440B2DF17064F2CC315E2
+7171069DFF4FFBD2CD712DBA0318D0ADF26B74F69379632B62D9E5A84FA3963B
+FFAEC76D8595DAFCC582DE1D0298471CA74A0FC705A6113C8E450EBC3A7255CC
+616BC14CB460AC4CC4F133AAE02A6190B138A537FED28402C323967DE2CF9C16
+34D125235B611067411F4027282031D7C0018F2D1C2EA3E84ED19FE1FC897453
+EEC1984F610345D0E9B116C2452222876A85D70333F8C09E6625C56534050F3C
+67EA3EBCBD1701C8CBF0290A29F1DA9CC4031F9A1D031B0F46407FF674AC3461
+972BB99309342CFD823E2DD3D709B7A6D6B5A14627719A64566A194DD7D6B235
+BC431470D3ABF9F77C835298A94BD7504666111A77392EBDAF12EA6D151EB066
+79BF397C1A3688A92E8FA79DB5612849541CB32FF7D147CB3E80C67DCB827C41
+D152106CE160DA98B98B87CE52DA32E503A24A56A3D9CA5297AF041E7EECE5B1
+3C968705D7EF6CF9835F6F06AB24F35FAF950DB4BFE055B83BFCF139F0F36972
+627C50DC7345D8F0F2A96587A65D6A4DE4B871FBAC063645A69BC962D8CF6E97
+66D3E3DD5FD66CB36F0E88F515A20A9B744EC99EDE47C52D59973E04CB8B841A
+CD30925511E03316325363142BE60C05788A3D885AA056B4BCD3EF0CBA0F1E12
+FE691408B1199EE36F8AFEBA63222D6BE82401C4F92AB8399B7FB8468A7E367C
+5812897F5132D94AED7ED5E6B6D1BA9885921A26F4C3C0C74A8DE00A6CEDB86F
+BBCB4B870E512656BD06C8973CEB1C4491D72CF275E73FACB0EF188F5363FEB7
+60289B08B9188CA4BEECFCC1E7784EC4DC6A6D09270CC03493B12594C2A58940
+93E3D21BF4595B03AA66AA345A6DE2984CE6BF84E6C688BB9F63700B19E7E022
+3BEF869DF341F35204BBE57858C84E4F34EAE1A4EB2C572EEF95FDB7CF9C4096
+E1E315D289DB185F3D9C9DAF29C595FAE8A1189C61F18027BA7D020FBC437A52
+D732B1A2C01604D5A0ADCC4C03B7B132227A959D467538C450A7EB3FAAFE54F2
+B53512AA39D1B7EBEEAA695194B133AB002A5255ECB9C77371BA5BB96F07FD58
+29F170806E338E089F561675AA48691A25BFF36262972E0E25FD426EB859B49C
+9AF25DAD09D04239F0AB99560DD9438EC917F7D818BDD643E9C13049D4A7F4BA
+53ADC2F80C81B7D65C1B387A64CE36AB962CB9E16A2400EEA520168F2D2FFD95
+CC9CE4463307FD600BE92F3821F8B134CD943780BE11C75F6F941BD45E17E58E
+9826A5324FF33F5BE169E929C5C81ACA441A0E129EC0B03B208BC8F3F5D4DAC4
+8AAAA06FEF0ED5C64A633573EBA28F6D60ADD0E0617C6AC7A7E2DF9AC13F3E84
+B21DA463242695C6D1E5E477FDC4F44486A0DD5057DEBDE9F30805E69A95AB38
+F071CF69216E8B97B7C34027F02BF8F8DFC40AFF393947675609620795904E62
+CCD878C6BFE822CCD362F84215BA3E432C8A1D735764E6B94C8DEC547080E71E
+89B0330112912B6EE92ED907CD40671AB2439EC7164EFF0F6946EC3BC2FB8EBF
+C63173E727D0B5F39F90DE255EABEB9B651869B73CE96D12DF72D4FC9A1B2089
+229D78CDF2747D4D220AF37FC53FAFDBA8B59351F03DDAE5D8E384CA3C4F4EE9
+72661D9C0EBEAEACF659BBFD9FEE1EBDBACFBA58EB3D09D45DBF64E0684A4F0E
+8A4012ECF46C8EDC6D2A78FBFC0E270B25649869BF367654434740C9ACAEFB94
+C7245A96C497197F0C193261AD1B8C5E42DF36FCDB9346E36443DC25948EC853
+CFC83CEA22F542A850490688497CAC46912BDF9282194E26D21A8DFBBFA1B7E9
+7FB5F1C7AA0ADD56635852EC046B7AE2A1899C76FF2628E90E0E1B211DA41E53
+CF84CF171CDA201D2DEDDA1796B5C1AA566C09E9DAC7AB344D76BF15CFBFDA77
+09C57A65ECCED62AFE178B332DE685E89C5CE758BEFA961497C813624530F2BF
+04F22C4F60B3500FE8B79B2CCA30DEEBB39E1F62126C36A298B17BF6279D60A3
+4DECF56B9AFA112E0EE4902607265E0E2F0054A78C5613CC0A2B2C34C6986917
+BDE26EF41EE3B2DF98D842543807D09755592FC7BF83DCF9E68CEA9CE3FFB01A
+A75B0D707E94E5127B40909AFD7DA2D680D59B7F0E61023318D5A07F8D56720D
+2ECE0817DDF8FCE62CBF322B0A5B6E943A909200BF2B6085D30A98349C1AB963
+FC42E5DD2E97E251D18A840FDDF6F6842AEE8CD572A98FD9E3B919947CEE9CA6
+1B14E47992DB97A5F953C6B699BB97ED06012B33FF6D94F3EAF783B38240B657
+517AFD4522F3346E9D9F8A70B094F54E2527E85D9773C1370C3F899F11A61A61
+C3536C5140E72BB9F810F52CA5971F46F68652058D5871C78DAAED58E712F103
+991727F4D7F49FE30DAFC3A9AE78BBD5DEAED16CE4742EFE9249CE0B4D4CD0C2
+6ABB4C30E85A5886F590B9F444DACFB3E4B68BCC76F36684E9CE60DF5B2236B3
+5621DC80EA9DD3EE4F16465B801B33D4CE128B9C6A82CE08560B72C1B5291BCF
+358A2A1EEF0FA209FC7168B3B661E3E40FB3D30E2E08B4604F4300EDDC4E11E6
+B479570F9B02BD42DF120D18E77911AB884BF326B7142646962C80F0BB5C3C12
+2E3880EAB34105F292036EA0A88839AF654B5BC9704D53B3EF7629C046BB5379
+C094EF8FEB5FB5565E86A3762E057AD3837CBA0F536EA7057C84EB868C498722
+2AA001D636CCC2F3A72B193591CC6B1C3354838F4C245BA4BB9A4BBC613262F3
+FA6FBC748C8FACA17B135E49AB960DB6872C615875D5985C899F2D656CAC3EA3
+62E4053EE049631EA48B97BFE9B53062491D4C2ACA65AE744590C5EDDAC78F57
+1040D9442EB10927FAC2024FC24B2FF9ABA44A8701585DDFDFAEB432696138B4
+FE9939888A40CE6287299BFDAC91175953C7F38020C332467B704135E8644868
+42B6FCA4DDC9AC04CD32EE5C3C9B45B6893372F9498CF5C19651414A61F6A2A2
+13568EC8CEB032718C17E0E5C1C1D2876724532FB2FBFEBE179470F22B15CC09
+E9E6A22C5C1F8CB7F05CBAEC0EEB8873BC1B56FFC529437E57DF1B040ED1EC6B
+4BA14ADE52B503E4FE18296F0036760BC6ECF1044A15DFFC81EB7C11AED5F6FE
+DB81B37D82BD82724F1B77C840E41524CF1589388686FFC21C05394D848824CB
+4762A5ABE288644ACB5D973671B664B6F68104F2E7F93392EA076F819EA58EB2
+95F750BFC9D53EA8E1703EE20B43AD610FCB7784B4738ADE4C33458185D3640B
+DC0B3B5503EEDBC99E1C45B9ABDE7D779F8C7838F2B21C4398EF3C4D567FF21A
+E427A40E22F1E5DBF380B83DE726AA60FF43270D8E920B320F89E787C41274E5
+8DD0B2D4A2A1105A63B413215C98839CEBDA6194F9EF46837198DAF734775FB0
+C763B9B4162B93735ECB20B7C16D379521DC6A80209052A20EB8ADD1A00EFB4C
+CF393C91A9D4F2D63800116992D2FF10DC312BCDAB3D59A6E21C53F840A84D52
+15076DA66068631349169BA98940872612831C1E70650F6B56D6BE0CA3F75C27
+AB9C03BB10CD06F73AA955E59C9CEA09D04D49230778E065B691E693F287F0B5
+B59924424E61166BABEB8D01317F050F54BEAA5901B9D0B4798F9EAEF69D0209
+03B8E7799D4803392EBC7439891C10A669299CED3DF9AA0AAA8FB43B4F998D24
+43E93ECB1909A6DB6232069DBB017ADE281F5AF5812D74C09B28FD373249634F
+D74F3571B232049A1C2BF2AADEAB5DD550D8CA32F065CDB5A1FE05CB7CDD78B0
+7653F8373028D46D763D6B29F5ABCADD76212A375956C60FE89664F9B34FDD74
+45B9F8B6C30C5F79A2E95B6E334E5E572312183E77033C18B958B986A9CF82F6
+74ED57F1E160BBD3FD80F7BD9D17C6F289F76B87D5D8B1287F8F242B6808A8FD
+61E612E92370437378888C1D7036AACA20B8C81CE15A5FF5D927EB390A72BB73
+A55CABD8F077AD7FBAF38E3B51E2F9F73915320C0017A4AC1A7D00E2054D153F
+4BA820292C7169ED744BA9BE3A8C94495B7D022D813676CB59D95C549948ED15
+70D44B4145ABA9E9236D9608C0DFF2701A32E2787C0E8046DEFE46352F48D2D9
+54A29EDFF73AF590FB45665433EAE72EF04C4DCEB7653881ABC7BDB3A1F3C2AD
+C329FAD88C32EB5F8B33AA189A568FBD35C16B71CE8482A7B64DB55C86F8239F
+98933FC55FA21BA995C80716D22649A7AF709E358160CB5FF0324FFA4643223B
+EC275C2474DF68C574C9B18BCC9CDADE1937754FCE03062EF6F3CB90DB7A79D6
+339F7B8EB3B63685FCC0756BAED7DB4AFC9BAF17DE8E8836CB5DF8FCAF71B91E
+9B20B2B142E136CD6CB672268FF521EC5EFA6E56988E5FCA6F75FF15C6D5AD84
+82F4DEC84DEE67FBE91258DE2AA3D94DB48A7DF859E1C6A502DE1B9917C41E61
+E6A3C9F82997081E93439562FCFED61B664266C3A66B5AD73005844ABEF97EFB
+BB37992257469285B3EC714C9E7D30CBDB1E834602DD7205CC2ABB19DB3D1E9E
+5D6AA8AC9919845F826FB91EC327318FB1EABD8B905FA0BF9972EBE6F9E15822
+D6C47A35535BFA4DA0551BF2464F51649F6BF77E71A9806EA733CF96CB30FAF1
+7CB0677EECEF8142F3A59C751653C378D84C458B920F9BBF7BC108B6BE76B74E
+6490BAB904CBB88A7E0A3D503B98A9D116DB6850B617BEF14DB927DAFC53A189
+095B31448CF73AD25F25BDB75ADC18342FD1BF1227F53AF69D31C5E0B2D5264F
+EE7320D06761AE8EA0F0929768A77E87D800AD2B118EE10572D29BF71973BE61
+A348B2FAFF76F58ECF1A47AFDB4BC8951C5AFE7946323D5413CB292A56876EA6
+7A4E35C3D39A74EA7E138EE15D3B2678D91E38D94CF8D8B91766855CDE05F613
+D16873814293488AB11A7F0DE7EB574349A807595E652DB17713E59DFC1D98C4
+D65186BB1D6EF8B2648211FD4F38988E48A5CAF1B27CDB0BE437D558B669434A
+9CC69F4E6EB94B697EF4238DD92EA780E3F5CF75E34E18CDD17AD1E1C6B2AC7E
+50040C583D33E7A82C338BCA54F1693B4432C3C452E1F657A27BDFAA83CA6CC7
+2E890A145A2ADBF33C3567BC056FFD49D6976AFFE64D92235219FBC8A3C92B38
+E21B6D0C1A8EC5B6992475CED740DA6E8C853F8E443D9765B1F438B2E1106DE9
+542FA489DD082EE09FA5FDFB3648D6506B377D209406A9657E8C436F5E307899
+E02769D9D67CD58E6D2CB22A6D526B516BAB38B1C733596A102B82406A0886C1
+5D476584F0F6418055372B3C6002EAB0AC8AF380A6978669E78C2C57407CBF86
+4AB437DF85C25F59AE98FBF834C78C39B007A51A697A88C561E484E93599C72B
+BB562C7250B59329B8D1F7F4B4AB2476875E0AF3714CD6E4E7973703CB501E27
+A6A311F10B9F0BFBC1E0BEBB4C89CC994AC0E4D2EDBCBBB962D31A343FC331E9
+073233ACAB6886E2DC0367C7CC2992369645B296413C03D27BAF418C4363E582
+3FB2DA273C1042F3085F7F9F4FCAE40F351418EB5A898BA998F384E1932C5E46
+CF173F2A9786817045A1E08737D8F1C0B9A6133D0086FB96343E1EDB50739601
+1B7903BA0454745C2E9C081691D196C6D04BBFF988EF3FD5669E0EA141D48B2E
+B86009F1E4627BAE2C5791146FAFE1E91FED3CD8152EC28938B42392D8D3BAF7
+DF3683840CA5F4305E986230139D77D15AB1182A5DFBB3F2036586AD40D1D36F
+D49BE7ED69F75DBD3BEEEBAFBA28B0559149BEC6475301CE35E37D72A1BF55DC
+30C23CF987046E64D284D0DC3D09411CDA75C4C5C7868C2206E4A7998908BBA5
+1F522F266369DD5F9286B0864D45A01EBC7B1D8CDD1B8D34E723F36F682F2179
+F4D406621C2FAA6E554EC7C09DA5BE8527FD957392C9716F050C7942A629A9EE
+9A4897B6C15E8DD63D0DE0F7CF826D76124ED6DE77F6064A01502E1304C55049
+1FF9AA67092FBF18145D8027F518B10F9710760A6CBA733F0C1B64ADAF5BC527
+4C24B6B3A684DD13171751B4C437F32AAD123454214F4B2CC7629B54E5BB40CD
+93431C21EF4960852DE0735B223111FB1CF9854BB704EA64A5E258895195214C
+C6AEAE8B127B62C3E6EB8B9D23621B02C430E8DB93C03895D567226715E694D1
+48A2674E6512FCB553700A947CCDC6AE3847258D2E33A9A89E7F8BC93F44A621
+30F0E10E2A27EF0EBB15F6D12E8D95D9886280CCCC35DD78128470BDEFBEC5C5
+AADF6CC0C5D21FA4E2C207E25400CCD1D9F9FD6ECDBB1426ED4DD76366AAF04A
+D99225CA931C49227431B5ACFE00F965AD2A232CCEF1A25919E75914D253E58D
+44D02EE0D669608AF1911716895A40E582633F2DA096A0E918F68874766439A4
+C250EBE7F3E6949C02FE6B403B7F11643EB352FD0EDABB005FFD6A6398CD1AE0
+C8809EC535E6BD855A001364D6E9A4DBEA39E2C79B6C9AC0405502FCCC58FD16
+1BBE3EDEE443B184B5B6ECE6A965E7492D0D1698406DBB171A9B681BCBB74B08
+AB64BEFFEF8BED8D9233739929D07AE6D639529DB2ECD8CF90EF164194019467
+EB38DB6748D4760D097463B3173CA931CEA327AB3C74E228C0FCB0330251D499
+A9D4FBABD24E1E696AC6A63716BC620A42FAEBC720359452A7D9810907577EA0
+636BC1A5309AD52A5D0630B3FA14FE23F968D3A105EFE033CD1DC39C8E9D1D9E
+B0A0AD022C5D6A819218A7A31C95FC9633FBF852591441EEE8A03A1C68E67315
+CC66ECDB8A6D22DF313C5B3A21A0CB079080571F9070D2D2F87504E5D1E678BC
+C16A00EB2FDEFC760AF97982FD1795A2563CA69DC5F7BE7D6473C24B2676C511
+81105B3118D0E3BED89612AA3E441BE3D0F1698CF987891FFF04E20A1EA40228
+12953BE70E0621829E0DF6B9C369F34977E3340768C1B1124CDCD1694D3B64F7
+E81E95BD54B025CAAEDB75EC864BCC78723D0F48978744F0BF8419A55D35E273
+67D916F3E28F5A06630BBBEE1339CE5601738FB4FA8044D9561F484AB58E4702
+6061613EFBA708D398CCDDA3E15EA4A82DF5E91E9D5ABC00DF191AD6521F427A
+51208AE8E9D193F280C8083BE0EFBD75E0C33F398E59F318E6C193A7503A4732
+F9E11E8DDB511230BBAADA494CDE66C55B18C04170C247C84101A351C5CF1BED
+A8E1B4268B511B0438FC14FFE363DCB276D4689564D743D0C35EAE0E711C7A80
+ABA0D520949819C273BAE91A300550ACBC30AAD247F2B13922D2F343FE137C89
+E06644B88A3E028556AAD5D25883E61063AC1300A803DE78B28E7292B5738665
+360B72A19266842D48E68314526512E4D938C64D636FD87E3C3401D528D0FAD8
+B198DD4BBCD6FC518106F210C725178C7B084F39DFBF49007B012BA73F11F0A2
+FC8C5084A79ABD0C176C08357070672A1238B9000AE85B00D363926BA430224E
+EF247211757471C59755A710BFCE3E953D679A175AE6D1B0AD8EDA26984898EB
+BCF0190FFCD38ADF3F2210CFB9E40805D795389781A154ADF379005BB8EFD6DA
+EC676B8921D15EBA849557BEDEE27EC680FD2FB92453683899ECE7EC916A9C8D
+279BC3E6BC789AB0DAD27F68FB8FFB2C0C4FAE9BA8BA8BCC60406A67D3F8D44A
+3ADDDB77EFE9840B6A2F97BE6CA43512E91F1A5F1381D91A28C5CA612DEBDA0C
+0975398C316ADCF7E1B9FC19D2781D8862BAD0DD63553601A589446811D850A4
+7A5EE9DC3BDE8DBA90307EB406572CBA608A874FF2CCB28D43DEE85E29717E20
+D93B5A3727EE3957F03DD83AA7EAFD41479699D983CE2D5DA023B95FD3A51E70
+E0571FAC0B7475177A11405714BB1567BF1F8D9CA2C8A97110E824DA2217DB17
+06F148EA959F791B16899375DC1D9228EA2482DD7AA22B6155BCF232732DBB61
+65A2D565487A303798FCF9E41541E3430ABEBA47F456CE1A122A662A392C7892
+C3D6D36DD99040B3CEC1786B03B46A58F0F5BA6B6B9E6CC3606F05D396AAA768
+7D4CBEA2400C1B0134D72D1FD173316B5C96DF8EA36A61BB73ADE9EAE53DE5C3
+C1526D9F0F8E1CDB1D0077047FE0D37DB3D9BBAD7AFB720F533BFB50EC001C82
+59C8559A0132EC46B57F00B52BB55800FEC1D94278EF2D366E9A36B45F36DB1C
+8E476730CBCD0C4C16D338021FEE54FBD6B272196FD03159E57FF281DCDCDB53
+D67032ED477C0BAEC4BFD0708C0E527E6B849A7D12C434F970AC1B59A24F6DC2
+D252A1DF140AE17DE96263A66A91498CB5FAA64F9274E38F100CDC46420B8956
+1398D0BA55B26340B4885176992B50A0A1B52897D28CF346DED35BF49A35D82C
+923AE3807CA5ED589DD3D44445B4A9A38D7AB80190FD3D8CD06228237EB849B6
+7F229DF0CA44DC2562FB572937B9EF41593DA9E048271C177BACD692F5AE7F23
+A192387094CA82EDC627A4EC87E3D38C43C54F156F6E4E76F0BA6808D8939C15
+2D7441B265E800E5897FA43AF8F31DEAB3F504703F47DDFE8443005E8A2013D4
+3DD9930928B091E0F68601B71F9C3766D3807322C0C78E70731FD700A7580098
+D7E95A706EC6AD11FDA3A6C32B31171DFF4BEAF84FA3FF9055E97B302E39E9FF
+0C9C26A029EF0C17EA6173DEB3BFC8CFA190EC377A2C9E3361C212E0D6FE6B18
+190D70089E81E176D6627104FC9A25452BDF80B1E811A38F9AD3B08AAF5CC871
+EA34DA1C26361917ED6086F36F44B9CCD55E415F678871035A69E6F03E3320E1
+7181C1E00DF9863075226B6DDCCEB01A1E2014972D9D540F871E14170EC7492D
+F6602AF3F7BAE9B56484EED9B1FB10D9A472BF9A42B4A5A20E34480740F88EB6
+6C0712F211D8768AE1138F17F4BD46D49784D5267E42876C50BF165A04C036D7
+14C17E5E0ABE870BE2605234B378764BA7D62A90EA13A89872CE0BFDEA89BE4F
+00A006945A3095F26E89C32660D3F8E72897FB733D5879521E8C2C4E8A88FBCF
+E4B8ED5AFE948A097354F21566C09D4AE09D1D42D3210AF5A256E6E8E8FF9F6B
+F3695BF0CC12D06C0B6587C08D2FD03D6EE510AF09CE83DDF5D5DB328E36CD5A
+CD3FDB378F9FD85DC7ED303E13E0D045BB89464DB81B6FB5E90B9C189C69B7DE
+63D26B5ED513A021978B16B961C284A9316FB879382446215EDED65A3B53E4AC
+6E257AA871CC8FA0C4E7B5CDB20049C8CFE11AA1131C41C3E06CD50F5F943B68
+F7FBE41F4EF6A8D0F730804E7D5F83F5C07F5D74E7F9B862F9A9910FEA396AF2
+9FBF78DB85A44E01A2814721A2B3018A811C3A5525541CF2EC43EE6977BE6B94
+8EB93A9B201033EF1F579D96E230C2620D00B2019E1E931B473C18FB13ED752C
+3594AE05FBFE782E42F86323F1A3379799608111171BBEC2FC881EFF28DFE535
+D673AA5F6585A18628939AF3DFA6E1AC0D1B99D2EE76CEDF684FC2CBFE5F9B70
+3D5169903AECF35F70C6DB08E79FBCD59B022C1F0B9C4C8A056273FAA158B6DA
+2ED09E1AAA97B9F503B3FDDFBBD678B60E8854272962B5C3E22E4E349DE6B6AB
+3DF9C4972FB6C76E7C299F581EE84B2EA5968B17011E397F1CCDEF068F094892
+C6C84942127235EC69585BDB0E29EEEDE588D05A6C649A5B86647D6500090F91
+5D1D4A0A427B99CF7F32B3B2775EFE99004B4B7B0E3E39B378A0A7508310E576
+E25C4799D60C2C02C438DFA54D0EE25172DA4730DB65A97AF1D29F4A03B1F2D8
+C2969D2313478B6C6996BCFF955A5F9B87CC64C9B75BAE42AC8689172946DE94
+0C09FD5722FA7733180F3179B1AF11543F203A46A9811DF89A1ED63E4E8351A5
+A693F1275E32C63595D12F50F3CB06DEAD536548F9A8C02B23B32367D3B60AAC
+70E2DBE1527D3F3D377C6DAD63FF037FC65E921B68114DD6056FFAE6A6A7DF17
+551D45B0EB8B92052CCA1F7783BB0ED64BF63B1BD12D58E372C103D3B5B18044
+275EF3817FE6D81753AC36950490EBB50F7E832418251C3C2EB411F1DF7ADBA0
+5AB8EC8F2482915E8BAB115A889D764E9B7CDE83020655042984DE0F70AAED5F
+4C1A2DBC0105A5C5FCE2B14B87722D094B7148EEB07CC0B24D14EE0E49D80AD5
+4D2AE2B08A543C292DAD7F9635292D95DEFD842DABB1D376F4915303A116F0B2
+CDF207803CA5F54C0519E58F57969A771905DB60C3BA7B7BEC66A04B80080AA6
+F07629374B635D427873794A6C0177F392A2276C64D389B7513B17C9824C3D8E
+9602E1D21DBAA82BDF7439DB9F54AE2F4D9CAB3C798969FA557DD87D25E89B88
+19AED8E384D446BBE309B79E2C7CAA43091C88E0546A602F6B2009805312AFDD
+C8A6C65BAE07D024C353522DD8157C696CA6E1E66233BC2CED1D626DFF75C45D
+829B3A2EA1FFB6F9F3853CCDC8C42B2A4E9AF21016B33876CE7032052D9A1BC5
+365D76B9CA4545FDCE8DB019116101424C6476A1BF24F678A99244003FD4871F
+88FE0815DA4345CB44538CD546873714859A699D62E427C2FAB185730BEC1E5E
+7ED24ED665CD75999B4EB4DF93D6FBBE34AEF6A28B3926FB3608C82081C67BF7
+66CC514A1A9FA5183EBBEC332998941601D803A099791043EB837C589B4C05D5
+C159E55D6531E40B0B8BDD2A381500FE835D2607EECB2B5A624F3F642EED3A44
+8058D47C2761D0A025720D61BA3A07EA6FD1F4DC08CCDFEE89AB2E3FB1D187C8
+55FAA26B8421EEB6C2BAAFC5CFE65DF7C4DE2E82C1409864DB763BFAA4CABC8C
+CD3EE1B33A46F51165889E5EA9B3AB62409D5D3D82640507040E71A587A3935D
+91E21453D240A879785FFCFFA7E692F74A1C89F16B9A9CA69BEA517058D59282
+3451E6AF43F89A89B2FD284166636D1085619020F337CF3D1D91219BC3500D69
+0B61F81B20C3925456A7E0E45DB8C18830CDD3B3AEFD01ABA44CD65F6E107B10
+3269C83D74BACBBDDE201683E3FEFB559C2FEA062BC036F068C4BC80FFC5F823
+1A3A9559AB85BBBB14C660B6B612910FA6391F3F2BA9A4E43BA4014337B510CA
+AC86FB10D829E9EA54E33951E0394D0C238669BE9E2971E2FC07AC2DE0A96055
+1F3DFE71F8B6E36AE0D58ECD8396317243D16BA545EB2B30D7D9AE66757DF8AD
+425D3C0CE41F643210804009E1FD7DEC1B12ABC063CBDB35739B13ECEFEC1B8F
+418333069290AE870450C35535CD9BE88E50C3E08FD236921AC6D688596BF32C
+8655A239B16A061FAD80C1C562761C7E0542245913EF905DE20626167CDF6D1A
+82CD1C77A27601C870C2DD6EFC851BC7DC37E7F6E47D1B8CFE2CFF3B6153B6AA
+39C011A06D087730B9E90523F17AA253A4396FC40ADF13525CFC74CAB3D7575A
+CD9B5E5B48CD468B0DBB1BD9B8AE10E23D0F9D1C75D892022C130D7BCEE847C6
+8C61B019E78BD7DC599E082E35B28DB5E6FE364A0C95D585A61012997B5698B0
+3A31841F8A44401C09DC7D8DA4308165FCD4E3AFF17182D52FE151915B142CE9
+BFF709C02298FA1D71710CA4CF2FDDEFF2EFE9CBF70C11806151F20BF0B8AA44
+78E7B7271567C7460BBB30360805D531001B6FC4D3903EE55E07DF1B80C6AC72
+C34D617B1ECF3C4107E6E6838522EB39291354309FB398FC688918A2F4CB8B64
+31BA3950541541A33F1E5F7E6366954A86A4D385087B235B9B30C77D9EB89560
+644E13E877C788399BC2EBC24B2BA81D838B3491EA8F25A146D157CA12B63071
+BFF7748B6E2924B3F5D0CAE0F2951CC2BCD7611313605E421E08E2FD0D23618B
+555ED35451616AE0E6824B83F334C6C942B0AB18665DBEBCF8953387C60746C8
+FF7579E0F2F568C3D790FE65A7BFEA4E3CE852C0800761A6A97459E6AC9DC618
+F697D4C084C873F19DB30FF3A30F953557BF19F3D537FE0E862A5F83044ED6C6
+99FA35F823A506A1E6954AD12D9184FCB91E1FC1F31447CB76B8A07D987A3BB3
+693050C15C1BE82982916797BFD39D9F00818447827A7AD945A46D9F124229EA
+3AFF1CFA38CD9FCFA5C92A68311D0262C2098BE84E4CAE3C486618AA20CE60A1
+17B7DD54B60854E9771B0F906E413196C63A3A647C125BBFDE36570DD6F1962B
+B044CAF4CFE97E03AAB00B4AD6622C9EBE897C135E6E94421F535BC698544781
+71CA7ED98FC755FAFCFDD6BBF532D5A263999E85E4F2FC6292B42301881482D9
+F71F70A9491F5B5C742C394DB0D8D1EC6FED020ABC879758AD572BAABC776CF8
+D13E3B086C7C512995BFBE098A790464529D5FFAEB88A298D5A911397E2C1484
+5D70F57D8E4BDFC516C12BACA35B4281E4B74255EED832FCC098D887FCE46D40
+9973999C987DE98F15022EAF4ACBEFBB3A59045D1DB954FB1D8FEF731F0CB419
+164BF5EF2519ED558439D97094864ED18DB07E09686B092B963FB6487A1C5418
+230AFA1D0772C67DD872B21687E1DAC09AC2D62B83A614A16D31C90FCC9C33A6
+4050C66CD6C5D3F437AE3D885381CDE61720D2756C97472611A2F83E02620934
+786C2B9297CEA8098D0710247CCF585248AB4A55261EFD6F4B9794063C36AB02
+B627827D28B60ACF5BF5CF56E91752EEC8400A93B4A211CD771AA9AACCCBF8F6
+0CE3D8E52236D8533BD469C4F4C2E9C94F163FF5CD4FFDD58467FC13AD78DD80
+955667B352680673799EAE573D3350D7FFB18BF11F66B12D33954D8194506BA5
+899566E467FC7DBC1CFD07C7A8EFA4686F79A8B3F613605DB9C99EC2190136CB
+DC3B806C965228715A357A1C8E3BF790C09DA6E67DE70EED8C6619B99ADB864B
+33597C0FFAD809311FAA54F814E5E0C06CFA07921668A235FC095ECBBDB51000
+204E44FD1857C8E1D57680D97BD11C973F5D010D6895D29BF2BF28E9A2437B1E
+3F2C7D7582823CF375F2143C2D08F032EE9F5F30D57BA2F69FFCD28E08AE3418
+D14303D9959B4D763B9BBD371C49E94846F196D16DF822CDC6E6C67493D70058
+9ACA628BC60AEE755B021B640118AEAB84055D6090A221107F43427C33256FE9
+44D300
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -7584,9 +7593,9 @@ TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi)
 81 81 35[90 94 11[{}52 143.462 /CMBX12 rf /Fq 200[0 21[91
 17[45 1[91 12[71{}5 90.9091 /CMSY10 rf /Fr 133[40 48
 48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45
-28 40 51 40 51 45 7[68 68 93 1[68 66 51 67 1[62 71 68
+28 40 51 40 51 45 7[68 68 93 1[68 66 51 67 71 62 71 68
 83 57 71 1[33 68 71 59 62 69 66 64 68 13[45 45 45 3[30
-8[45 2[25 18[76 1[51 53 11[{}57 90.9091 /CMSL10 rf /Fs
+8[45 2[25 18[76 1[51 53 11[{}58 90.9091 /CMSL10 rf /Fs
 132[67 1[71 71 97 71 75 52 53 55 1[75 67 75 112 37 71
 41 37 75 67 41 61 75 60 75 65 3[37 1[37 1[102 102 139
 102 103 94 75 100 101 92 101 105 128 81 105 69 50 105
@@ -7622,23 +7631,24 @@ 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.3,)g(for)f
-Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.3.)3252 1697 y(August)f(2023)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
+Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.3.)3180 1697 y(F)-8
+b(ebruary)30 b(2024)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.3,)c(31)f(August)f
-(2023\).)150 4523 y(This)e(is)g(Edition)h(5.3,)h(last)f(up)s(dated)e
-(31)i(August)f(2023,)j(of)e Fr(The)f(GNU)h(Bash)f(Reference)h(Man)m
-(ual)p Fu(,)h(for)150 4633 y Ft(Bash)p Fu(,)f(V)-8 b(ersion)31
-b(5.3.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767
-y Fq(\015)f Fu(1988{2023)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
+(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.3,)c(2)e(F)-8
+b(ebruary)31 b(2024\).)150 4523 y(This)26 b(is)g(Edition)h(5.3,)i(last)
+e(up)s(dated)e(2)i(F)-8 b(ebruary)26 b(2024,)k(of)d Fr(The)f(GNU)h
+(Bash)f(Reference)i(Man)m(ual)p Fu(,)g(for)150 4633 y
+Ft(Bash)p Fu(,)h(V)-8 b(ersion)31 b(5.3.)150 4767 y(Cop)m(yrigh)m(t)602
+4764 y(c)577 4767 y Fq(\015)f Fu(1988{2023)35 b(F)-8
+b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
+4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
+b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
+(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
 b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
 b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
 b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
@@ -7873,7 +7883,7 @@ h(:)f(:)h(:)f(:)g(:)h(:)34 b Fu(73)275 2991 y(4.4)92
 b(Sp)s(ecial)30 b(Builtins)9 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
 f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)22 b Fu(79)150 3242 y Fs(5)135 b(Shell)45
+f(:)g(:)h(:)f(:)22 b Fu(80)150 3242 y Fs(5)135 b(Shell)45
 b(V)-11 b(ariables)11 b Fo(:)20 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
 f(:)h(:)f(:)g(:)h(:)f(:)24 b Fs(81)275 3379 y Fu(5.1)92
@@ -8039,7 +8049,7 @@ f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41 b Fu(149)275
 3708 y(8.6)92 b(Programmable)30 b(Completion)25 b Fn(:)15
 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37
-b Fu(149)275 3817 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)14
+b Fu(150)275 3817 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)14
 b Fn(:)i(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(152)275
 3927 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)8
@@ -9465,7 +9475,7 @@ b Fu(is)29 b(sp)s(eci\014ed)g(as)g(the)h(name)f(of)h(a)f(simple)h
 i(page)g(109\),)i Fr(fname)i Fu(m)m(ust)31 b(b)s(e)g(a)h(v)-5
 b(alid)31 b(shell)h(name)150 4192 y(and)h(ma)m(y)h(not)f(b)s(e)g(the)h
 (same)f(as)h(one)g(of)f(the)h(sp)s(ecial)g(builtins)e(\(see)j(Section)f
-(4.4)g([Sp)s(ecial)g(Builtins],)150 4301 y(page)d(79\).)43
+(4.4)g([Sp)s(ecial)g(Builtins],)150 4301 y(page)d(80\).)43
 b(In)29 b(default)i(mo)s(de,)g(a)f(function)h(name)f(can)h(b)s(e)f(an)m
 (y)h(unquoted)e(shell)i(w)m(ord)f(that)h(do)s(es)g(not)150
 4411 y(con)m(tain)k(`)p Ft($)p Fu('.)52 b(An)m(y)34 b(redirections)g
@@ -9578,15 +9588,14 @@ b(scoping,)i(visible)e(v)-5 b(ariables)32 b(and)f(their)h(v)-5
 b(alues)32 b(are)f(a)h(result)g(of)f(the)h(sequence)g(of)f(function)150
 5011 y(calls)37 b(that)g(caused)g(execution)g(to)g(reac)m(h)g(the)g
 (curren)m(t)f(function.)58 b(The)36 b(v)-5 b(alue)36
-b(of)h(a)g(v)-5 b(ariable)37 b(that)g(a)150 5121 y(function)24
-b(sees)g(dep)s(ends)f(on)h(its)g(v)-5 b(alue)25 b(within)e(its)i
-(caller,)i(if)d(an)m(y)-8 b(,)26 b(whether)e(that)g(caller)i(is)e(the)g
-Ft(")p Fu(global)p Ft(")150 5230 y Fu(scop)s(e)41 b(or)g(another)g
-(shell)g(function.)73 b(This)40 b(is)h(also)h(the)f(v)-5
-b(alue)41 b(that)h(a)f(lo)s(cal)i(v)-5 b(ariable)41 b(declaration)150
-5340 y Ft(")p Fu(shado)m(ws)p Ft(")p Fu(,)30 b(and)g(the)g(v)-5
-b(alue)31 b(that)g(is)f(restored)h(when)e(the)i(function)f(returns.)p
-eop end
+b(of)h(a)g(v)-5 b(ariable)37 b(that)g(a)150 5121 y(function)30
+b(sees)h(dep)s(ends)d(on)i(its)h(v)-5 b(alue)30 b(within)g(its)h
+(caller,)h(if)e(an)m(y)-8 b(,)31 b(whether)f(that)g(caller)i(is)e(the)h
+(global)150 5230 y(scop)s(e)41 b(or)g(another)g(shell)g(function.)73
+b(This)40 b(is)h(also)h(the)f(v)-5 b(alue)41 b(that)h(a)f(lo)s(cal)i(v)
+-5 b(ariable)41 b(declaration)150 5340 y(shado)m(ws,)30
+b(and)g(the)h(v)-5 b(alue)31 b(that)f(is)h(restored)f(when)g(the)g
+(function)g(returns.)p eop end
 %%Page: 21 27
 TeXDict begin 21 26 bop 150 -116 a Fu(Chapter)30 b(3:)41
 b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)275 299
@@ -9857,54 +9866,55 @@ Fm(id)h Fu(of)f(the)h(job)f(most)h(recen)m(tly)h(placed)f(in)m(to)g
 (the)g(bac)m(k-)630 408 y(ground,)26 b(whether)g(executed)g(as)h(an)f
 (async)m(hronous)f(command)h(or)g(using)g(the)g Ft(bg)f
 Fu(builtin)630 518 y(\(see)31 b(Section)h(7.2)f([Job)f(Con)m(trol)h
-(Builtins],)g(page)h(119\).)150 687 y Ft(0)432 b Fu(\($0\))46
+(Builtins],)g(page)h(119\).)150 675 y Ft(0)432 b Fu(\($0\))46
 b(Expands)d(to)i(the)g(name)g(of)f(the)h(shell)g(or)f(shell)h(script.)
-83 b(This)44 b(is)g(set)h(at)h(shell)630 796 y(initialization.)d(If)27
+83 b(This)44 b(is)g(set)h(at)h(shell)630 785 y(initialization.)d(If)27
 b(Bash)h(is)g(in)m(v)m(ok)m(ed)h(with)e(a)i(\014le)e(of)h(commands)g
-(\(see)g(Section)h(3.8)g([Shell)630 906 y(Scripts],)g(page)g(47\),)h
+(\(see)g(Section)h(3.8)g([Shell)630 894 y(Scripts],)g(page)g(47\),)h
 Ft($0)e Fu(is)h(set)g(to)g(the)f(name)h(of)f(that)h(\014le.)41
-b(If)28 b(Bash)g(is)h(started)g(with)f(the)630 1015 y
+b(If)28 b(Bash)g(is)h(started)g(with)f(the)630 1004 y
 Ft(-c)i Fu(option)h(\(see)h(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)g
 (page)f(94\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)f(\014rst)630
-1125 y(argumen)m(t)g(after)g(the)g(string)g(to)g(b)s(e)f(executed,)i
+1113 y(argumen)m(t)g(after)g(the)g(string)g(to)g(b)s(e)f(executed,)i
 (if)f(one)g(is)f(presen)m(t.)42 b(Otherwise,)31 b(it)g(is)f(set)630
-1235 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f
-(as)g(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)150 1489
-y Fs(3.5)68 b(Shell)45 b(Expansions)150 1649 y Fu(Expansion)27
+1223 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f
+(as)g(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)150 1461
+y Fs(3.5)68 b(Shell)45 b(Expansions)150 1621 y Fu(Expansion)39
 b(is)i(p)s(erformed)d(on)i(the)g(command)g(line)h(after)f(it)h(has)f(b)
-s(een)f(split)h(in)m(to)i Ft(token)p Fu(s.)38 b(There)28
-b(are)150 1758 y(sev)m(en)j(kinds)e(of)i(expansion)f(p)s(erformed:)225
-1902 y Fq(\017)60 b Fu(brace)31 b(expansion)225 2041
-y Fq(\017)60 b Fu(tilde)31 b(expansion)225 2180 y Fq(\017)60
-b Fu(parameter)31 b(and)f(v)-5 b(ariable)31 b(expansion)225
-2319 y Fq(\017)60 b Fu(command)30 b(substitution)225
-2458 y Fq(\017)60 b Fu(arithmetic)32 b(expansion)225
-2597 y Fq(\017)60 b Fu(w)m(ord)30 b(splitting)225 2736
-y Fq(\017)60 b Fu(\014lename)31 b(expansion)275 2910
-y(The)24 b(order)h(of)h(expansions)f(is:)39 b(brace)25
-b(expansion;)j(tilde)e(expansion,)g(parameter)g(and)f(v)-5
-b(ariable)26 b(ex-)150 3019 y(pansion,)j(arithmetic)i(expansion,)f(and)
+s(een)f(split)h(in)m(to)h Ft(token)p Fu(s.)69 b(Bash)150
+1730 y(p)s(erforms)29 b(these)i(expansions:)225 1863
+y Fq(\017)60 b Fu(brace)31 b(expansion)225 1997 y Fq(\017)60
+b Fu(tilde)31 b(expansion)225 2130 y Fq(\017)60 b Fu(parameter)31
+b(and)f(v)-5 b(ariable)31 b(expansion)225 2263 y Fq(\017)60
+b Fu(command)30 b(substitution)225 2396 y Fq(\017)60
+b Fu(arithmetic)32 b(expansion)225 2529 y Fq(\017)60
+b Fu(w)m(ord)30 b(splitting)225 2663 y Fq(\017)60 b Fu(\014lename)31
+b(expansion)225 2796 y Fq(\017)60 b Fu(quote)31 b(remo)m(v)-5
+b(al)275 2953 y(The)24 b(order)h(of)h(expansions)f(is:)39
+b(brace)25 b(expansion;)j(tilde)e(expansion,)g(parameter)g(and)f(v)-5
+b(ariable)26 b(ex-)150 3062 y(pansion,)j(arithmetic)i(expansion,)f(and)
 f(command)g(substitution)g(\(done)g(in)h(a)f(left-to-righ)m(t)k
-(fashion\);)150 3129 y(w)m(ord)d(splitting;)h(and)f(\014lename)h
-(expansion.)275 3273 y(On)c(systems)h(that)h(can)g(supp)s(ort)e(it,)i
-(there)g(is)f(an)g(additional)i(expansion)e(a)m(v)-5
-b(ailable:)42 b Fr(pro)s(cess)28 b(sub-)150 3382 y(stitution)p
-Fu(.)42 b(This)30 b(is)g(p)s(erformed)f(at)j(the)e(same)h(time)h(as)e
-(tilde,)i(parameter,)f(v)-5 b(ariable,)32 b(and)e(arithmetic)150
-3492 y(expansion)g(and)g(command)g(substitution.)275
-3635 y(After)g(these)h(expansions)f(are)g(p)s(erformed,)f(quote)i(c)m
-(haracters)h(presen)m(t)e(in)g(the)g(original)i(w)m(ord)e(are)150
-3745 y(remo)m(v)m(ed)24 b(unless)f(they)h(ha)m(v)m(e)h(b)s(een)e
-(quoted)g(themselv)m(es)i(\()p Fr(quote)f(remo)m(v)-5
-b(al)t Fu(\).)40 b(See)24 b(Section)g(3.5.9)h([Quote)150
-3855 y(Remo)m(v)-5 b(al],)32 b(page)g(39,)f(for)f(more)h(details.)275
-3998 y(Only)g(brace)i(expansion,)h(w)m(ord)e(splitting,)i(and)e
+(fashion\);)150 3172 y(w)m(ord)d(splitting;)h(\014lename)g(expansion;)f
+(and)g(quote)h(remo)m(v)-5 b(al.)275 3305 y(On)27 b(systems)h(that)h
+(can)g(supp)s(ort)e(it,)i(there)g(is)f(an)g(additional)i(expansion)e(a)
+m(v)-5 b(ailable:)42 b Fr(pro)s(cess)28 b(sub-)150 3415
+y(stitution)p Fu(.)42 b(This)30 b(is)g(p)s(erformed)f(at)j(the)e(same)h
+(time)h(as)e(tilde,)i(parameter,)f(v)-5 b(ariable,)32
+b(and)e(arithmetic)150 3524 y(expansion)g(and)g(command)g
+(substitution.)275 3658 y Fr(Quote)42 b(remo)m(v)-5 b(al)46
+b Fu(is)c(alw)m(a)m(ys)h(p)s(erformed)d(last.)76 b(It)42
+b(remo)m(v)m(es)h(quote)f(c)m(haracters)i(presen)m(t)d(in)h(the)150
+3767 y(original)35 b(w)m(ord,)g(not)f(ones)g(resulting)h(from)e(one)h
+(of)h(the)f(other)g(expansions,)h(unless)e(they)h(ha)m(v)m(e)i(b)s(een)
+150 3877 y(quoted)31 b(themselv)m(es.)41 b(See)31 b(Section)g(3.5.9)h
+([Quote)f(Remo)m(v)-5 b(al],)33 b(page)e(39,)g(for)g(more)f(details.)
+275 4010 y(Only)h(brace)i(expansion,)h(w)m(ord)e(splitting,)i(and)e
 (\014lename)h(expansion)f(can)h(increase)g(the)g(n)m(um)m(b)s(er)150
-4108 y(of)24 b(w)m(ords)g(of)g(the)h(expansion;)h(other)e(expansions)g
+4120 y(of)24 b(w)m(ords)g(of)g(the)h(expansion;)h(other)e(expansions)g
 (expand)g(a)g(single)h(w)m(ord)f(to)h(a)f(single)h(w)m(ord.)38
-b(The)24 b(only)150 4217 y(exceptions)i(to)f(this)g(are)g(the)g
+b(The)24 b(only)150 4229 y(exceptions)i(to)f(this)g(are)g(the)g
 (expansions)g(of)g Ft("$@")f Fu(and)g Ft($*)g Fu(\(see)i(Section)f
-(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)150 4327 y(page)31
+(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)150 4339 y(page)31
 b(23\),)h(and)e Ft("${)p Fj(name)p Ft([@]}")d Fu(and)i
 Ft(${)p Fj(name)p Ft([*]})f Fu(\(see)j(Section)h(6.7)f([Arra)m(ys],)g
 (page)g(103\).)150 4535 y Fk(3.5.1)63 b(Brace)40 b(Expansion)150
@@ -9930,78 +9940,75 @@ b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)275 299
 y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59
 b(The)36 b(results)g(of)h(eac)m(h)g(expanded)f(string)g(are)h(not)g
 (sorted;)150 408 y(left)31 b(to)g(righ)m(t)g(order)f(is)g(preserv)m
-(ed.)41 b(F)-8 b(or)31 b(example,)390 537 y Ft(bash$)46
-b(echo)h(a{d,c,b}e)390 647 y(ade)g(ace)g(abe)275 776
+(ed.)41 b(F)-8 b(or)31 b(example,)390 546 y Ft(bash$)46
+b(echo)h(a{d,c,b}e)390 656 y(ade)g(ace)g(abe)275 793
 y Fu(A)23 b(sequence)g(expression)g(tak)m(es)i(the)e(form)g
 Ft({)p Fj(x)p Ft(..)p Fj(y)p Ft([..)p Fj(incr)p Ft(]})p
 Fu(,)e(where)i Fr(x)29 b Fu(and)23 b Fr(y)30 b Fu(are)24
-b(either)g(in)m(tegers)150 886 y(or)34 b(letters,)i(and)d
+b(either)g(in)m(tegers)150 903 y(or)34 b(letters,)i(and)d
 Fr(incr)p Fu(,)h(an)g(optional)g(incremen)m(t,)i(is)d(an)h(in)m(teger.)
 52 b(When)33 b(in)m(tegers)i(are)f(supplied,)g(the)150
-995 y(expression)f(expands)f(to)i(eac)m(h)g(n)m(um)m(b)s(er)e(b)s(et)m
-(w)m(een)i Fr(x)39 b Fu(and)33 b Fr(y)p Fu(,)h(inclusiv)m(e.)50
-b(Supplied)31 b(in)m(tegers)k(ma)m(y)f(b)s(e)150 1105
-y(pre\014xed)h(with)h(`)p Ft(0)p Fu(')g(to)h(force)g(eac)m(h)h(term)e
-(to)h(ha)m(v)m(e)g(the)g(same)g(width.)57 b(When)36 b(either)h
-Fr(x)42 b Fu(or)37 b Fr(y)43 b Fu(b)s(egins)150 1214
-y(with)37 b(a)h(zero,)j(the)c(shell)h(attempts)h(to)f(force)g(all)g
+1012 y(expression)29 b(expands)g(to)h(eac)m(h)h(n)m(um)m(b)s(er)d(b)s
+(et)m(w)m(een)i Fr(x)36 b Fu(and)29 b Fr(y)p Fu(,)h(inclusiv)m(e.)41
+b(When)29 b(either)h Fr(x)36 b Fu(or)29 b Fr(y)37 b Fu(b)s(egins)150
+1122 y(with)g(a)h(zero,)j(the)c(shell)h(attempts)h(to)f(force)g(all)g
 (generated)h(terms)e(to)i(con)m(tain)g(the)e(same)h(n)m(um)m(b)s(er)150
-1324 y(of)30 b(digits,)h(zero-padding)f(where)f(necessary)-8
+1232 y(of)30 b(digits,)h(zero-padding)f(where)f(necessary)-8
 b(.)41 b(When)30 b(letters)g(are)h(supplied,)d(the)i(expression)g
-(expands)150 1433 y(to)k(eac)m(h)g(c)m(haracter)h(lexicographically)h
+(expands)150 1341 y(to)k(eac)m(h)g(c)m(haracter)h(lexicographically)h
 (b)s(et)m(w)m(een)e Fr(x)40 b Fu(and)32 b Fr(y)p Fu(,)i(inclusiv)m(e,)i
-(using)c(the)i(default)f(C)g(lo)s(cale.)150 1543 y(Note)f(that)f(b)s
+(using)c(the)i(default)f(C)g(lo)s(cale.)150 1451 y(Note)f(that)f(b)s
 (oth)f Fr(x)37 b Fu(and)30 b Fr(y)38 b Fu(m)m(ust)31
 b(b)s(e)f(of)h(the)g(same)g(t)m(yp)s(e)g(\(in)m(teger)h(or)f(letter\).)
-43 b(When)30 b(the)h(incremen)m(t)150 1653 y(is)e(supplied,)g(it)h(is)f
+43 b(When)30 b(the)h(incremen)m(t)150 1560 y(is)e(supplied,)g(it)h(is)f
 (used)f(as)i(the)f(di\013erence)h(b)s(et)m(w)m(een)g(eac)m(h)g(term.)41
 b(The)29 b(default)g(incremen)m(t)h(is)f(1)h(or)f(-1)150
-1762 y(as)i(appropriate.)275 1891 y(Brace)36 b(expansion)g(is)f(p)s
+1670 y(as)i(appropriate.)275 1808 y(Brace)36 b(expansion)g(is)f(p)s
 (erformed)f(b)s(efore)h(an)m(y)h(other)g(expansions,)h(and)e(an)m(y)g
-(c)m(haracters)i(sp)s(ecial)150 2001 y(to)32 b(other)g(expansions)g
+(c)m(haracters)i(sp)s(ecial)150 1917 y(to)32 b(other)g(expansions)g
 (are)g(preserv)m(ed)f(in)h(the)f(result.)45 b(It)32 b(is)g(strictly)g
-(textual.)46 b(Bash)32 b(do)s(es)f(not)h(apply)150 2110
+(textual.)46 b(Bash)32 b(do)s(es)f(not)h(apply)150 2027
 y(an)m(y)27 b(syn)m(tactic)i(in)m(terpretation)g(to)f(the)f(con)m(text)
 i(of)e(the)g(expansion)g(or)g(the)h(text)g(b)s(et)m(w)m(een)f(the)h
-(braces.)275 2239 y(A)h(correctly-formed)i(brace)f(expansion)f(m)m(ust)
+(braces.)275 2164 y(A)h(correctly-formed)i(brace)f(expansion)f(m)m(ust)
 h(con)m(tain)h(unquoted)e(op)s(ening)g(and)g(closing)i(braces,)150
-2349 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
+2274 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
 b(alid)33 b(sequence)g(expression.)48 b(An)m(y)33 b(incorrectly)h
-(formed)150 2458 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
-2587 y(A)25 b Fi({)h Fu(or)f(`)p Ft(,)p Fu(')g(ma)m(y)h(b)s(e)f(quoted)
+(formed)150 2384 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
+2521 y(A)25 b Fi({)h Fu(or)f(`)p Ft(,)p Fu(')g(ma)m(y)h(b)s(e)f(quoted)
 h(with)f(a)g(bac)m(kslash)h(to)g(prev)m(en)m(t)g(its)g(b)s(eing)f
-(considered)g(part)g(of)h(a)g(brace)150 2697 y(expression.)51
+(considered)g(part)g(of)h(a)g(brace)150 2631 y(expression.)51
 b(T)-8 b(o)34 b(a)m(v)m(oid)i(con\015icts)e(with)g(parameter)g
 (expansion,)h(the)f(string)g(`)p Ft(${)p Fu(')g(is)g(not)g(considered)
-150 2807 y(eligible)e(for)e(brace)h(expansion,)f(and)g(inhibits)g
+150 2740 y(eligible)e(for)e(brace)h(expansion,)f(and)g(inhibits)g
 (brace)h(expansion)f(un)m(til)g(the)h(closing)h(`)p Ft(})p
-Fu('.)275 2936 y(This)e(construct)h(is)g(t)m(ypically)i(used)d(as)h
+Fu('.)275 2878 y(This)e(construct)h(is)g(t)m(ypically)i(used)d(as)h
 (shorthand)f(when)g(the)h(common)g(pre\014x)f(of)h(the)g(strings)g(to)
-150 3045 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m
-(v)m(e)i(example:)390 3174 y Ft(mkdir)46 b(/usr/local/src/bash/{old,n)o
-(ew,)o(dist)o(,bug)o(s})275 3303 y Fu(or)390 3432 y Ft(chown)g(root)h
+150 2988 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m
+(v)m(e)i(example:)390 3125 y Ft(mkdir)46 b(/usr/local/src/bash/{old,n)o
+(ew,)o(dist)o(,bug)o(s})275 3263 y Fu(or)390 3400 y Ft(chown)g(root)h
 (/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150
-3620 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)150 3767 y
+3603 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)150 3750 y
 Fu(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
 (haracter)h(\(`)p Ft(~)p Fu('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
-d(to)j(the)f(\014rst)150 3877 y(unquoted)24 b(slash)g(\(or)h(all)h(c)m
+d(to)j(the)f(\014rst)150 3859 y(unquoted)24 b(slash)g(\(or)h(all)h(c)m
 (haracters,)h(if)e(there)g(is)f(no)h(unquoted)e(slash\))i(are)g
-(considered)g(a)g Fr(tilde-pre\014x)p Fu(.)150 3986 y(If)38
+(considered)g(a)g Fr(tilde-pre\014x)p Fu(.)150 3969 y(If)38
 b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f(are)h
 (quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
-4096 y(follo)m(wing)28 b(the)g(tilde)f(are)h(treated)g(as)f(a)g(p)s
+4078 y(follo)m(wing)28 b(the)g(tilde)f(are)h(treated)g(as)f(a)g(p)s
 (ossible)g Fr(login)h(name)p Fu(.)39 b(If)27 b(this)g(login)h(name)f
-(is)g(the)g(n)m(ull)g(string,)150 4205 y(the)35 b(tilde)g(is)g
+(is)g(the)g(n)m(ull)g(string,)150 4188 y(the)35 b(tilde)g(is)g
 (replaced)g(with)f(the)h(v)-5 b(alue)35 b(of)g(the)g
 Ft(HOME)e Fu(shell)i(v)-5 b(ariable.)54 b(If)34 b Ft(HOME)g
-Fu(is)h(unset,)g(the)g(home)150 4315 y(directory)e(of)g(the)f(user)g
+Fu(is)h(unset,)g(the)g(home)150 4298 y(directory)e(of)g(the)f(user)g
 (executing)i(the)e(shell)h(is)f(substituted)g(instead.)47
-b(Otherwise,)33 b(the)g(tilde-pre\014x)150 4425 y(is)d(replaced)h(with)
+b(Otherwise,)33 b(the)g(tilde-pre\014x)150 4407 y(is)d(replaced)h(with)
 f(the)h(home)f(directory)h(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)
-e(login)j(name.)275 4554 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
+e(login)j(name.)275 4545 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
 Ft(~+)p Fu(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
 b(ariable)34 b Ft(PWD)d Fu(replaces)j(the)f(tilde-pre\014x.)47
-b(If)150 4663 y(the)31 b(tilde-pre\014x)f(is)g(`)p Ft(~-)p
+b(If)150 4654 y(the)31 b(tilde-pre\014x)f(is)g(`)p Ft(~-)p
 Fu(',)h(the)f(v)-5 b(alue)31 b(of)g(the)f(shell)h(v)-5
 b(ariable)31 b Ft(OLDPWD)p Fu(,)e(if)h(it)h(is)g(set,)g(is)f
 (substituted.)275 4792 y(If)f(the)h(c)m(haracters)h(follo)m(wing)h(the)
@@ -10801,22 +10808,22 @@ Ft(.)p Fu(')g(and)g(`)p Ft(..)p Fu(',)h(the)f(pattern)g(m)m(ust)g(b)s
 (egin)f(with)h(`)p Ft(.)p Fu(')g(\(for)150 628 y(example,)42
 b(`)p Ft(.?)p Fu('\),)f(ev)m(en)f(if)f Ft(dotglob)d Fu(is)j(set.)67
 b(If)38 b(the)h Ft(globskipdots)d Fu(shell)j(option)g(is)g(enabled,)i
-(the)150 737 y(\014lenames)33 b(`)p Ft(.)p Fu(')g(and)f(`)p
-Ft(..)p Fu(')h(are)g(nev)m(er)g(matc)m(hed,)h(ev)m(en)g(if)e(the)h
-(pattern)g(b)s(egins)f(with)h(a)g(`)p Ft(.)p Fu('.)48
-b(When)33 b(not)150 847 y(matc)m(hing)e(\014lenames,)g(the)g(`)p
-Ft(.)p Fu(')f(c)m(haracter)i(is)f(not)f(treated)i(sp)s(ecially)-8
-b(.)275 976 y(When)30 b(matc)m(hing)i(a)f(\014lename,)h(the)f(slash)f
-(c)m(haracter)j(m)m(ust)d(alw)m(a)m(ys)j(b)s(e)d(matc)m(hed)h
-(explicitly)i(b)m(y)e(a)150 1085 y(slash)d(in)f(the)h(pattern,)h(but)e
-(in)h(other)g(matc)m(hing)h(con)m(texts)h(it)e(can)g(b)s(e)g(matc)m
-(hed)g(b)m(y)g(a)g(sp)s(ecial)h(pattern)150 1195 y(c)m(haracter)j(as)f
-(describ)s(ed)e(b)s(elo)m(w)h(\(see)i(Section)f(3.5.8.1)i([P)m(attern)e
-(Matc)m(hing],)i(page)e(37\).)275 1324 y(See)d(the)g(description)g(of)g
-Ft(shopt)e Fu(in)i(Section)g(4.3.2)i([The)e(Shopt)f(Builtin],)i(page)g
-(73,)g(for)f(a)g(descrip-)150 1433 y(tion)j(of)f(the)h
-Ft(nocaseglob)p Fu(,)d Ft(nullglob)p Fu(,)g Ft(globskipdots)p
-Fu(,)f Ft(failglob)p Fu(,)i(and)h Ft(dotglob)e Fu(options.)275
+(the)150 737 y(\014lenames)23 b(`)p Ft(.)p Fu(')g(and)g(`)p
+Ft(..)p Fu(')g(nev)m(er)g(matc)m(h,)j(ev)m(en)e(if)f(the)g(pattern)g(b)
+s(egins)g(with)g(a)g(`)p Ft(.)p Fu('.)39 b(When)22 b(not)i(matc)m(hing)
+150 847 y(\014lenames,)31 b(the)f(`)p Ft(.)p Fu(')h(c)m(haracter)h(is)e
+(not)h(treated)g(sp)s(ecially)-8 b(.)275 976 y(When)30
+b(matc)m(hing)i(a)f(\014lename,)h(the)f(slash)f(c)m(haracter)j(m)m(ust)
+d(alw)m(a)m(ys)j(b)s(e)d(matc)m(hed)h(explicitly)i(b)m(y)e(a)150
+1085 y(slash)d(in)f(the)h(pattern,)h(but)e(in)h(other)g(matc)m(hing)h
+(con)m(texts)h(it)e(can)g(b)s(e)g(matc)m(hed)g(b)m(y)g(a)g(sp)s(ecial)h
+(pattern)150 1195 y(c)m(haracter)j(as)f(describ)s(ed)e(b)s(elo)m(w)h
+(\(see)i(Section)f(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i(page)e
+(37\).)275 1324 y(See)d(the)g(description)g(of)g Ft(shopt)e
+Fu(in)i(Section)g(4.3.2)i([The)e(Shopt)f(Builtin],)i(page)g(73,)g(for)f
+(a)g(descrip-)150 1433 y(tion)j(of)f(the)h Ft(nocaseglob)p
+Fu(,)d Ft(nullglob)p Fu(,)g Ft(globskipdots)p Fu(,)f
+Ft(failglob)p Fu(,)i(and)h Ft(dotglob)e Fu(options.)275
 1562 y(The)36 b Ft(GLOBIGNORE)d Fu(shell)k(v)-5 b(ariable)37
 b(ma)m(y)g(b)s(e)f(used)g(to)h(restrict)g(the)g(set)g(of)g(\014le)f
 (names)h(matc)m(hing)150 1672 y(a)42 b(pattern.)74 b(If)41
@@ -11152,14 +11159,14 @@ Fr(w)m(ord)p Fu(.)275 2383 y(The)f(format)i(for)f(app)s(ending)f
 (equiv)-5 b(alen)m(t)32 b(to)390 2812 y Ft(>>)p Fj(word)46
 b Ft(2>&1)275 2955 y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g
 (b)s(elo)m(w\).)150 3163 y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150
-3310 y Fu(This)c(t)m(yp)s(e)h(of)f(redirection)i(instructs)e(the)h
-(shell)f(to)i(read)e(input)g(from)g(the)h(curren)m(t)f(source)h(un)m
-(til)g(a)150 3419 y(line)33 b(con)m(taining)g(only)g
-Fr(delimiter)39 b Fu(\(with)32 b(no)g(trailing)i(blanks\))e(is)g(seen.)
-46 b(All)33 b(of)f(the)h(lines)f(read)g(up)f(to)150 3529
-y(that)k(p)s(oin)m(t)f(are)g(then)g(used)g(as)g(the)g(standard)g(input)
-f(\(or)h(\014le)g(descriptor)g Fr(n)g Fu(if)g Fr(n)g
-Fu(is)g(sp)s(eci\014ed\))g(for)g(a)150 3639 y(command.)275
+3310 y Fu(This)36 b(t)m(yp)s(e)h(of)f(redirection)h(instructs)g(the)f
+(shell)h(to)h(read)e(input)g(from)g(the)g(curren)m(t)h(source)g(un)m
+(til)f(it)150 3419 y(reads)31 b(a)g(line)g(con)m(taining)h(only)f
+Fr(delimiter)38 b Fu(\(with)31 b(no)g(trailing)h(blanks\).)41
+b(All)32 b(of)f(the)g(lines)g(read)f(up)g(to)150 3529
+y(that)35 b(p)s(oin)m(t)f(are)g(then)g(used)g(as)g(the)g(standard)g
+(input)f(\(or)h(\014le)g(descriptor)g Fr(n)g Fu(if)g
+Fr(n)g Fu(is)g(sp)s(eci\014ed\))g(for)g(a)150 3639 y(command.)275
 3782 y(The)29 b(format)i(of)g(here-do)s(cumen)m(ts)f(is:)390
 3925 y Ft([)p Fj(n)p Ft(]<<[)p Fq(\000)p Ft(])p Fj(word)772
 4034 y(here-document)390 4144 y(delimiter)275 4287 y
@@ -11414,290 +11421,294 @@ TeXDict begin 45 50 bop 150 -116 a Fu(Chapter)30 b(3:)41
 b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(45)275 299
 y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g(en)m
 (vironmen)m(t)g(cannot)g(a\013ect)h(the)f(shell's)g(execution)150
-408 y(en)m(vironmen)m(t.)275 540 y(A)30 b Fr(subshell)j
+408 y(en)m(vironmen)m(t.)275 542 y(A)30 b Fr(subshell)j
 Fu(is)d(a)h(cop)m(y)g(of)g(the)f(shell)h(pro)s(cess.)275
-671 y(Command)k(substitution,)j(commands)e(group)s(ed)f(with)i(paren)m
-(theses,)h(and)e(async)m(hronous)g(com-)150 781 y(mands)c(are)h(in)m(v)
+675 y(Command)k(substitution,)j(commands)e(group)s(ed)f(with)i(paren)m
+(theses,)h(and)e(async)m(hronous)g(com-)150 785 y(mands)c(are)h(in)m(v)
 m(ok)m(ed)i(in)d(a)i(subshell)e(en)m(vironmen)m(t)h(that)h(is)f(a)g
 (duplicate)h(of)f(the)g(shell)g(en)m(vironmen)m(t,)150
-891 y(except)i(that)g(traps)f(caugh)m(t)h(b)m(y)f(the)h(shell)f(are)g
+894 y(except)i(that)g(traps)f(caugh)m(t)h(b)m(y)f(the)h(shell)f(are)g
 (reset)h(to)g(the)f(v)-5 b(alues)35 b(that)g(the)f(shell)h(inherited)e
-(from)150 1000 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49
+(from)150 1004 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49
 b(Builtin)32 b(commands)g(that)h(are)g(in)m(v)m(ok)m(ed)h(as)e(part)g
-(of)h(a)f(pip)s(eline)g(are)h(also)150 1110 y(executed)41
+(of)h(a)f(pip)s(eline)g(are)h(also)150 1113 y(executed)41
 b(in)f(a)h(subshell)e(en)m(vironmen)m(t.)72 b(Changes)40
 b(made)g(to)h(the)g(subshell)e(en)m(vironmen)m(t)i(cannot)150
-1219 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
-1351 y(Subshells)c(spa)m(wned)i(to)h(execute)g(command)f(substitutions)
-g(inherit)g(the)g(v)-5 b(alue)31 b(of)f(the)h Ft(-e)e
-Fu(option)150 1460 y(from)23 b(the)i(paren)m(t)f(shell.)38
-b(When)24 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)f(clears)h(the)f
-Ft(-e)f Fu(option)i(in)e(suc)m(h)h(subshells.)275 1592
-y(If)f(a)h(command)g(is)g(follo)m(w)m(ed)h(b)m(y)f(a)g(`)p
+1223 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
+1356 y(When)e(the)h(shell)g(is)g(in)f Fm(posix)h Fu(mo)s(de,)f
+(subshells)g(spa)m(wned)g(to)i(execute)g(command)e(substitutions)150
+1466 y(inherit)35 b(the)g(v)-5 b(alue)35 b(of)h(the)f
+Ft(-e)f Fu(option)h(from)g(the)g(paren)m(t)g(shell.)55
+b(When)35 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)150
+1575 y(clears)41 b(the)f Ft(-e)f Fu(option)h(in)g(suc)m(h)f(subshells)g
+(See)h(the)g(description)g(of)g(the)g Ft(inherit_errexit)c
+Fu(shell)150 1685 y(option)30 b(\(see)h(Section)g(4.2)g([Bash)f
+(Builtins],)h(page)g(57\))g(for)f(ho)m(w)g(to)g(con)m(trol)i(this)e(b)s
+(eha)m(vior)g(when)f(not)150 1795 y(in)h Fm(posix)g Fu(mo)s(de.)275
+1928 y(If)23 b(a)h(command)g(is)g(follo)m(w)m(ed)h(b)m(y)f(a)g(`)p
 Ft(&)p Fu(')g(and)f(job)h(con)m(trol)h(is)f(not)g(activ)m(e,)k(the)c
-(default)g(standard)f(input)150 1701 y(for)35 b(the)g(command)g(is)g
+(default)g(standard)f(input)150 2037 y(for)35 b(the)g(command)g(is)g
 (the)g(empt)m(y)h(\014le)f Ft(/dev/null)p Fu(.)52 b(Otherwise,)37
-b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 1811
+b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 2147
 y(the)c(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
-(di\014ed)g(b)m(y)g(redirections.)150 2004 y Fk(3.7.4)63
-b(En)m(vironmen)m(t)150 2151 y Fu(When)29 b(a)g(program)f(is)h(in)m(v)m
+(di\014ed)g(b)m(y)g(redirections.)150 2344 y Fk(3.7.4)63
+b(En)m(vironmen)m(t)150 2491 y Fu(When)29 b(a)g(program)f(is)h(in)m(v)m
 (ok)m(ed)h(it)g(is)f(giv)m(en)g(an)g(arra)m(y)g(of)g(strings)g(called)h
 (the)f Fr(en)m(vironmen)m(t)p Fu(.)41 b(This)28 b(is)h(a)150
-2261 y(list)i(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f(form)g
-Ft(name=value)p Fu(.)275 2392 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)
+2600 y(list)i(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f(form)g
+Ft(name=value)p Fu(.)275 2733 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)
 m(a)m(ys)g(to)f(manipulate)f(the)h(en)m(vironmen)m(t.)69
-b(On)38 b(in)m(v)m(o)s(cation,)44 b(the)c(shell)150 2502
+b(On)38 b(in)m(v)m(o)s(cation,)44 b(the)c(shell)150 2843
 y(scans)g(its)h(o)m(wn)f(en)m(vironmen)m(t)h(and)f(creates)i(a)f
 (parameter)f(for)g(eac)m(h)i(name)e(found,)i(automatically)150
-2611 y(marking)23 b(it)h(for)f Ft(export)f Fu(to)i(c)m(hild)g(pro)s
+2953 y(marking)23 b(it)h(for)f Ft(export)f Fu(to)i(c)m(hild)g(pro)s
 (cesses.)38 b(Executed)24 b(commands)f(inherit)g(the)g(en)m(vironmen)m
-(t.)39 b(The)150 2721 y Ft(export)c Fu(and)i(`)p Ft(declare)29
+(t.)39 b(The)150 3062 y Ft(export)c Fu(and)i(`)p Ft(declare)29
 b(-x)p Fu(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g
-(to)h(b)s(e)e(added)h(to)h(and)150 2830 y(deleted)21
+(to)h(b)s(e)e(added)h(to)h(and)150 3172 y(deleted)21
 b(from)f(the)h(en)m(vironmen)m(t.)38 b(If)20 b(the)h(v)-5
 b(alue)21 b(of)g(a)g(parameter)g(in)f(the)g(en)m(vironmen)m(t)i(is)e
-(mo)s(di\014ed,)i(the)150 2940 y(new)31 b(v)-5 b(alue)32
+(mo)s(di\014ed,)i(the)150 3281 y(new)31 b(v)-5 b(alue)32
 b(b)s(ecomes)f(part)h(of)f(the)h(en)m(vironmen)m(t,)g(replacing)h(the)e
 (old.)44 b(The)31 b(en)m(vironmen)m(t)h(inherited)150
-3050 y(b)m(y)f(an)m(y)g(executed)h(command)f(consists)g(of)g(the)g
+3391 y(b)m(y)f(an)m(y)g(executed)h(command)f(consists)g(of)g(the)g
 (shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f(v)-5
-b(alues)31 b(ma)m(y)h(b)s(e)150 3159 y(mo)s(di\014ed)26
+b(alues)31 b(ma)m(y)h(b)s(e)150 3501 y(mo)s(di\014ed)26
 b(in)g(the)h(shell,)h(less)f(an)m(y)g(pairs)f(remo)m(v)m(ed)i(b)m(y)f
 (the)g Ft(unset)e Fu(and)h(`)p Ft(export)j(-n)p Fu(')e(commands,)g
-(plus)150 3269 y(an)m(y)k(additions)f(via)h(the)g Ft(export)d
-Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275 3400
+(plus)150 3610 y(an)m(y)k(additions)f(via)h(the)g Ft(export)d
+Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275 3743
 y(The)j(en)m(vironmen)m(t)i(for)f(an)m(y)g(simple)h(command)f(or)g
 (function)g(ma)m(y)g(b)s(e)g(augmen)m(ted)h(temp)s(orarily)150
-3510 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
+3853 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
 (as)e(describ)s(ed)g(in)g(Section)i(3.4)g([Shell)e(P)m(arameters],)150
-3619 y(page)g(21.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
+3963 y(page)g(21.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
 (a\013ect)f(only)g(the)f(en)m(vironmen)m(t)h(seen)g(b)m(y)f(that)h
-(command.)275 3751 y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g
+(command.)275 4096 y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g
 (Section)g(4.3.1)g([The)f(Set)g(Builtin],)h(page)g(69\),)h(then)e(all)g
-(parameter)150 3860 y(assignmen)m(ts)f(are)g(placed)h(in)e(the)h(en)m
+(parameter)150 4205 y(assignmen)m(ts)f(are)g(placed)h(in)e(the)h(en)m
 (vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i(that)f
-(precede)g(the)150 3970 y(command)g(name.)275 4101 y(When)h(Bash)h(in)m
+(precede)g(the)150 4315 y(command)g(name.)275 4448 y(When)h(Bash)h(in)m
 (v)m(ok)m(es)i(an)e(external)h(command,)f(the)g(v)-5
 b(ariable)33 b(`)p Ft($_)p Fu(')f(is)g(set)h(to)f(the)g(full)g
-(pathname)150 4211 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
-(command)f(in)g(its)h(en)m(vironmen)m(t.)150 4404 y Fk(3.7.5)63
-b(Exit)40 b(Status)150 4551 y Fu(The)23 b(exit)i(status)f(of)h(an)e
+(pathname)150 4558 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
+(command)f(in)g(its)h(en)m(vironmen)m(t.)150 4755 y Fk(3.7.5)63
+b(Exit)40 b(Status)150 4902 y Fu(The)23 b(exit)i(status)f(of)h(an)e
 (executed)i(command)f(is)g(the)g(v)-5 b(alue)24 b(returned)f(b)m(y)h
-(the)g Ft(waitpid)e Fu(system)i(call)h(or)150 4661 y(equiv)-5
+(the)g Ft(waitpid)e Fu(system)i(call)h(or)150 5011 y(equiv)-5
 b(alen)m(t)33 b(function.)45 b(Exit)32 b(statuses)g(fall)g(b)s(et)m(w)m
 (een)h(0)f(and)f(255,)i(though,)f(as)g(explained)g(b)s(elo)m(w,)h(the)
-150 4770 y(shell)i(ma)m(y)g(use)f(v)-5 b(alues)35 b(ab)s(o)m(v)m(e)g
+150 5121 y(shell)i(ma)m(y)g(use)f(v)-5 b(alues)35 b(ab)s(o)m(v)m(e)g
 (125)h(sp)s(ecially)-8 b(.)54 b(Exit)35 b(statuses)g(from)f(shell)h
-(builtins)f(and)f(comp)s(ound)150 4880 y(commands)j(are)g(also)h
+(builtins)f(and)f(comp)s(ound)150 5230 y(commands)j(are)g(also)h
 (limited)g(to)g(this)f(range.)58 b(Under)36 b(certain)h(circumstances,)
-h(the)e(shell)h(will)f(use)150 4989 y(sp)s(ecial)31 b(v)-5
-b(alues)31 b(to)g(indicate)g(sp)s(eci\014c)f(failure)h(mo)s(des.)275
-5121 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s(oses,)e(a)j(command)e
-(whic)m(h)h(exits)g(with)g(a)g(zero)g(exit)h(status)f(has)f(succeeded.)
-150 5230 y(A)e(non-zero)h(exit)g(status)g(indicates)g(failure.)40
-b(This)28 b(seemingly)i(coun)m(ter-in)m(tuitiv)m(e)i(sc)m(heme)e(is)f
-(used)g(so)150 5340 y(there)34 b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m
-(y)g(to)h(indicate)g(success)f(and)f(a)h(v)-5 b(ariet)m(y)35
-b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5 b(arious)p eop
-end
+h(the)e(shell)h(will)f(use)150 5340 y(sp)s(ecial)31 b(v)-5
+b(alues)31 b(to)g(indicate)g(sp)s(eci\014c)f(failure)h(mo)s(des.)p
+eop end
 %%Page: 46 52
 TeXDict begin 46 51 bop 150 -116 a Fu(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(46)150 299
-y(failure)38 b(mo)s(des.)62 b(When)37 b(a)h(command)f(terminates)i(on)e
-(a)h(fatal)h(signal)g(whose)e(n)m(um)m(b)s(er)f(is)i
-Fr(N)p Fu(,)i(Bash)150 408 y(uses)30 b(the)g(v)-5 b(alue)31
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(46)275 299
+y(F)-8 b(or)32 b(the)g(shell's)g(purp)s(oses,)e(a)j(command)e(whic)m(h)
+h(exits)g(with)g(a)g(zero)g(exit)h(status)f(has)f(succeeded.)150
+408 y(A)e(non-zero)h(exit)g(status)g(indicates)g(failure.)40
+b(This)28 b(seemingly)i(coun)m(ter-in)m(tuitiv)m(e)i(sc)m(heme)e(is)f
+(used)g(so)150 518 y(there)34 b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m
+(y)g(to)h(indicate)g(success)f(and)f(a)h(v)-5 b(ariet)m(y)35
+b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5 b(arious)150
+628 y(failure)38 b(mo)s(des.)62 b(When)37 b(a)h(command)f(terminates)i
+(on)e(a)h(fatal)h(signal)g(whose)e(n)m(um)m(b)s(er)f(is)i
+Fr(N)p Fu(,)i(Bash)150 737 y(uses)30 b(the)g(v)-5 b(alue)31
 b(128)p Ft(+)p Fr(N)42 b Fu(as)30 b(the)h(exit)g(status.)275
-549 y(If)k(a)h(command)g(is)g(not)g(found,)g(the)g(c)m(hild)h(pro)s
+868 y(If)k(a)h(command)g(is)g(not)g(found,)g(the)g(c)m(hild)h(pro)s
 (cess)e(created)i(to)g(execute)g(it)g(returns)d(a)j(status)f(of)150
-658 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)f(but)h(is)g(not)h
+977 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)f(but)h(is)g(not)h
 (executable,)h(the)f(return)e(status)i(is)f(126.)275
-798 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f(during)
-g(expansion)h(or)g(redirection,)i(the)f(exit)g(status)150
-908 y(is)c(greater)i(than)e(zero.)275 1048 y(The)38 b(exit)h(status)g
-(is)g(used)f(b)m(y)g(the)h(Bash)g(conditional)h(commands)e(\(see)h
-(Section)h(3.2.5.2)h([Con-)150 1158 y(ditional)i(Constructs],)h(page)f
-(12\))g(and)e(some)i(of)f(the)g(list)g(constructs)g(\(see)h(Section)f
-(3.2.4)i([Lists],)150 1267 y(page)31 b(10\).)275 1407
-y(All)40 b(of)g(the)h(Bash)f(builtins)f(return)g(an)h(exit)h(status)g
-(of)f(zero)h(if)f(they)g(succeed)g(and)g(a)g(non-zero)150
-1517 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m(y)g(b)s(e)f(used)g
-(b)m(y)g(the)h(conditional)h(and)e(list)h(constructs.)50
-b(All)35 b(builtins)150 1627 y(return)e(an)i(exit)g(status)g(of)f(2)h
-(to)g(indicate)h(incorrect)f(usage,)h(generally)g(in)m(v)-5
-b(alid)35 b(options)g(or)f(missing)150 1736 y(argumen)m(ts.)275
-1876 y(The)f(exit)i(status)f(of)h(the)f(last)h(command)f(is)g(a)m(v)-5
+1108 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f
+(during)g(expansion)h(or)g(redirection,)i(the)f(exit)g(status)150
+1218 y(is)c(greater)i(than)e(zero.)275 1348 y(The)38
+b(exit)h(status)g(is)g(used)f(b)m(y)g(the)h(Bash)g(conditional)h
+(commands)e(\(see)h(Section)h(3.2.5.2)h([Con-)150 1458
+y(ditional)i(Constructs],)h(page)f(12\))g(and)e(some)i(of)f(the)g(list)
+g(constructs)g(\(see)h(Section)f(3.2.4)i([Lists],)150
+1567 y(page)31 b(10\).)275 1698 y(All)40 b(of)g(the)h(Bash)f(builtins)f
+(return)g(an)h(exit)h(status)g(of)f(zero)h(if)f(they)g(succeed)g(and)g
+(a)g(non-zero)150 1807 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m
+(y)g(b)s(e)f(used)g(b)m(y)g(the)h(conditional)h(and)e(list)h
+(constructs.)50 b(All)35 b(builtins)150 1917 y(return)e(an)i(exit)g
+(status)g(of)f(2)h(to)g(indicate)h(incorrect)f(usage,)h(generally)g(in)
+m(v)-5 b(alid)35 b(options)g(or)f(missing)150 2027 y(argumen)m(ts.)275
+2157 y(The)f(exit)i(status)f(of)h(the)f(last)h(command)f(is)g(a)m(v)-5
 b(ailable)36 b(in)e(the)g(sp)s(ecial)h(parameter)f($?)52
-b(\(see)35 b(Sec-)150 1986 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m
-(arameters],)h(page)f(23\).)150 2191 y Fk(3.7.6)63 b(Signals)150
-2338 y Fu(When)36 b(Bash)g(is)h(in)m(teractiv)m(e,)j(in)c(the)h
+b(\(see)35 b(Sec-)150 2267 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m
+(arameters],)h(page)f(23\).)150 2458 y Fk(3.7.6)63 b(Signals)150
+2605 y Fu(When)36 b(Bash)g(is)h(in)m(teractiv)m(e,)j(in)c(the)h
 (absence)f(of)h(an)m(y)f(traps,)i(it)e(ignores)h Ft(SIGTERM)d
-Fu(\(so)j(that)g(`)p Ft(kill)150 2447 y(0)p Fu(')c(do)s(es)g(not)g
+Fu(\(so)j(that)g(`)p Ft(kill)150 2715 y(0)p Fu(')c(do)s(es)g(not)g
 (kill)g(an)g(in)m(teractiv)m(e)j(shell\),)f(and)d Ft(SIGINT)f
 Fu(is)i(caugh)m(t)h(and)f(handled)f(\(so)h(that)h(the)f
-Ft(wait)150 2557 y Fu(builtin)24 b(is)h(in)m(terruptible\).)39
+Ft(wait)150 2824 y Fu(builtin)24 b(is)h(in)m(terruptible\).)39
 b(When)24 b(Bash)g(receiv)m(es)j(a)d Ft(SIGINT)p Fu(,)h(it)g(breaks)f
-(out)h(of)f(an)m(y)h(executing)h(lo)s(ops.)150 2667 y(In)31
+(out)h(of)f(an)m(y)h(executing)h(lo)s(ops.)150 2934 y(In)31
 b(all)h(cases,)h(Bash)f(ignores)g Ft(SIGQUIT)p Fu(.)42
 b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h(\(see)f(Chapter)f(7)h
-([Job)g(Con)m(trol],)150 2776 y(page)f(118\),)h(Bash)f(ignores)g
+([Job)g(Con)m(trol],)150 3043 y(page)f(118\),)h(Bash)f(ignores)g
 Ft(SIGTTIN)p Fu(,)d Ft(SIGTTOU)p Fu(,)h(and)h Ft(SIGTSTP)p
-Fu(.)275 2916 y(Non-builtin)h(commands)g(started)g(b)m(y)g(Bash)h(ha)m
+Fu(.)275 3174 y(Non-builtin)h(commands)g(started)g(b)m(y)g(Bash)h(ha)m
 (v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5 b(alues)31
-b(inherited)150 3026 y(b)m(y)37 b(the)h(shell)g(from)f(its)h(paren)m
+b(inherited)150 3284 y(b)m(y)37 b(the)h(shell)g(from)f(its)h(paren)m
 (t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f(e\013ect,)k
-(async)m(hronous)c(commands)150 3136 y(ignore)f Ft(SIGINT)e
+(async)m(hronous)c(commands)150 3393 y(ignore)f Ft(SIGINT)e
 Fu(and)h Ft(SIGQUIT)e Fu(in)j(addition)f(to)i(these)f(inherited)f
-(handlers.)55 b(Commands)35 b(run)f(as)i(a)150 3245 y(result)27
+(handlers.)55 b(Commands)35 b(run)f(as)i(a)150 3503 y(result)27
 b(of)h(command)f(substitution)h(ignore)g(the)g(k)m(eyb)s
 (oard-generated)g(job)g(con)m(trol)h(signals)f Ft(SIGTTIN)p
-Fu(,)150 3355 y Ft(SIGTTOU)p Fu(,)h(and)g Ft(SIGTSTP)p
-Fu(.)275 3495 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f
+Fu(,)150 3612 y Ft(SIGTTOU)p Fu(,)h(and)g Ft(SIGTSTP)p
+Fu(.)275 3743 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f
 (receipt)i(of)f(a)h Ft(SIGHUP)p Fu(.)42 b(Before)32 b(exiting,)h(an)e
-(in)m(teractiv)m(e)j(shell)150 3604 y(resends)41 b(the)i
+(in)m(teractiv)m(e)j(shell)150 3852 y(resends)41 b(the)i
 Ft(SIGHUP)e Fu(to)i(all)g(jobs,)i(running)c(or)h(stopp)s(ed.)76
 b(Stopp)s(ed)41 b(jobs)h(are)h(sen)m(t)g Ft(SIGCONT)d
-Fu(to)150 3714 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e
+Fu(to)150 3962 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e
 Ft(SIGHUP)p Fu(.)47 b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)g(from)
-g(sending)f(the)h Ft(SIGHUP)e Fu(signal)150 3824 y(to)i(a)g(particular)
+g(sending)f(the)h Ft(SIGHUP)e Fu(signal)150 4072 y(to)i(a)g(particular)
 g(job,)g(it)g(should)f(b)s(e)g(remo)m(v)m(ed)h(from)g(the)f(jobs)g
 (table)i(with)e(the)h Ft(disown)e Fu(builtin)h(\(see)150
-3933 y(Section)c(7.2)g([Job)e(Con)m(trol)i(Builtins],)g(page)g(119\))h
+4181 y(Section)c(7.2)g([Job)e(Con)m(trol)i(Builtins],)g(page)g(119\))h
 (or)e(mark)m(ed)g(to)g(not)g(receiv)m(e)i Ft(SIGHUP)c
-Fu(using)i Ft(disown)150 4043 y(-h)p Fu(.)275 4183 y(If)38
+Fu(using)i Ft(disown)150 4291 y(-h)p Fu(.)275 4421 y(If)38
 b(the)h Ft(huponexit)e Fu(shell)i(option)g(has)g(b)s(een)f(set)i(with)f
 Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150
-4293 y(Builtin],)31 b(page)g(73\),)h(Bash)f(sends)e(a)i
+4531 y(Builtin],)31 b(page)g(73\),)h(Bash)f(sends)e(a)i
 Ft(SIGHUP)e Fu(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i(login)
-e(shell)g(exits.)275 4433 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g
+e(shell)g(exits.)275 4661 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g
 (command)f(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)h(for)e(whic)
-m(h)h(a)g(trap)150 4542 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g
+m(h)h(a)g(trap)150 4771 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g
 (not)g(b)s(e)f(executed)i(un)m(til)f(the)g(command)f(completes.)55
-b(When)35 b(Bash)g(is)150 4652 y(w)m(aiting)j(for)f(an)g(async)m
+b(When)35 b(Bash)g(is)150 4881 y(w)m(aiting)j(for)f(an)g(async)m
 (hronous)g(command)g(via)h(the)f Ft(wait)f Fu(builtin,)i(the)g
-(reception)g(of)f(a)g(signal)h(for)150 4761 y(whic)m(h)d(a)g(trap)g
+(reception)g(of)f(a)g(signal)h(for)150 4990 y(whic)m(h)d(a)g(trap)g
 (has)g(b)s(een)f(set)h(will)h(cause)f(the)g Ft(wait)f
 Fu(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150
-4871 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h)
-f(the)h(trap)f(is)g(executed.)275 5011 y(When)41 b(job)g(con)m(trol)h
+5100 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h)
+f(the)h(trap)f(is)g(executed.)275 5230 y(When)41 b(job)g(con)m(trol)h
 (is)g(not)f(enabled,)k(and)40 b(Bash)i(is)f(w)m(aiting)i(for)e(a)h
-(foreground)e(command)h(to)150 5121 y(complete,)35 b(the)e(shell)h
+(foreground)e(command)h(to)150 5340 y(complete,)35 b(the)e(shell)h
 (receiv)m(es)g(k)m(eyb)s(oard-generated)g(signals)g(suc)m(h)e(as)i
-Ft(SIGINT)d Fu(\(usually)i(generated)150 5230 y(b)m(y)e(`)p
-Ft(^C)p Fu('\))h(that)g(users)e(commonly)i(in)m(tend)g(to)g(send)e(to)j
-(that)f(command.)43 b(This)31 b(happ)s(ens)e(b)s(ecause)j(the)150
-5340 y(shell)23 b(and)g(the)h(command)f(are)g(in)g(the)h(same)f(pro)s
-(cess)g(group)g(as)h(the)f(terminal,)i(and)e(`)p Ft(^C)p
-Fu(')g(sends)g Ft(SIGINT)p eop end
+Ft(SIGINT)d Fu(\(usually)i(generated)p eop end
 %%Page: 47 53
 TeXDict begin 47 52 bop 150 -116 a Fu(Chapter)30 b(3:)41
 b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(47)150 299
-y(to)35 b(all)g(pro)s(cesses)f(in)g(that)g(pro)s(cess)g(group.)51
-b(See)35 b(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(118,)h(for)e(a)h
-(more)150 408 y(in-depth)30 b(discussion)f(of)i(pro)s(cess)f(groups.)
-275 542 y(When)35 b(Bash)h(is)g(running)f(without)h(job)f(con)m(trol)i
+y(b)m(y)31 b(`)p Ft(^C)p Fu('\))h(that)g(users)e(commonly)i(in)m(tend)g
+(to)g(send)e(to)j(that)f(command.)43 b(This)31 b(happ)s(ens)e(b)s
+(ecause)j(the)150 408 y(shell)23 b(and)g(the)h(command)f(are)g(in)g
+(the)h(same)f(pro)s(cess)g(group)g(as)h(the)f(terminal,)i(and)e(`)p
+Ft(^C)p Fu(')g(sends)g Ft(SIGINT)150 518 y Fu(to)35 b(all)g(pro)s
+(cesses)f(in)g(that)g(pro)s(cess)g(group.)51 b(See)35
+b(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(118,)h(for)e(a)h(more)150
+628 y(in-depth)30 b(discussion)f(of)i(pro)s(cess)f(groups.)275
+773 y(When)35 b(Bash)h(is)g(running)f(without)h(job)f(con)m(trol)i
 (enabled)f(and)g(receiv)m(es)h Ft(SIGINT)e Fu(while)h(w)m(aiting)150
-651 y(for)g(a)h(foreground)f(command,)i(it)f(w)m(aits)g(un)m(til)g
+882 y(for)g(a)h(foreground)f(command,)i(it)f(w)m(aits)g(un)m(til)g
 (that)g(foreground)f(command)g(terminates)h(and)f(then)150
-761 y(decides)31 b(what)f(to)h(do)f(ab)s(out)g(the)h
-Ft(SIGINT)p Fu(:)199 894 y(1.)61 b(If)29 b(the)h(command)f(terminates)i
-(due)d(to)j(the)e Ft(SIGINT)p Fu(,)g(Bash)g(concludes)h(that)g(the)g
-(user)f(mean)m(t)h(to)330 1004 y(end)25 b(the)h(en)m(tire)h(script,)g
+992 y(decides)31 b(what)f(to)h(do)f(ab)s(out)g(the)h
+Ft(SIGINT)p Fu(:)199 1137 y(1.)61 b(If)29 b(the)h(command)f(terminates)
+i(due)d(to)j(the)e Ft(SIGINT)p Fu(,)g(Bash)g(concludes)h(that)g(the)g
+(user)f(mean)m(t)h(to)330 1247 y(end)25 b(the)h(en)m(tire)h(script,)g
 (and)f(acts)h(on)e(the)i Ft(SIGINT)d Fu(\(e.g.,)k(b)m(y)e(running)f(a)h
-Ft(SIGINT)e Fu(trap)i(or)g(exiting)330 1113 y(itself)7
-b(\);)199 1246 y(2.)61 b(If)39 b(the)g(pip)s(eline)g(do)s(es)g(not)h
+Ft(SIGINT)e Fu(trap)i(or)g(exiting)330 1356 y(itself)7
+b(\);)199 1496 y(2.)61 b(If)39 b(the)g(pip)s(eline)g(do)s(es)g(not)h
 (terminate)g(due)f(to)h Ft(SIGINT)p Fu(,)g(the)g(program)f(handled)f
-(the)i Ft(SIGINT)330 1356 y Fu(itself)35 b(and)e(did)h(not)g(treat)h
+(the)i Ft(SIGINT)330 1606 y Fu(itself)35 b(and)e(did)h(not)g(treat)h
 (it)g(as)f(a)g(fatal)i(signal.)52 b(In)33 b(that)i(case,)h(Bash)e(do)s
-(es)g(not)g(treat)i Ft(SIGINT)330 1466 y Fu(as)41 b(a)g(fatal)g
+(es)g(not)g(treat)i Ft(SIGINT)330 1715 y Fu(as)41 b(a)g(fatal)g
 (signal,)j(either,)g(instead)d(assuming)f(that)h(the)g
 Ft(SIGINT)d Fu(w)m(as)j(used)f(as)h(part)f(of)h(the)330
-1575 y(program's)32 b(normal)g(op)s(eration)h(\(e.g.,)h
+1825 y(program's)32 b(normal)g(op)s(eration)h(\(e.g.,)h
 Ft(emacs)d Fu(uses)g(it)i(to)g(ab)s(ort)f(editing)h(commands\))f(or)g
-(delib-)330 1685 y(erately)41 b(discarded.)69 b(Ho)m(w)m(ev)m(er,)45
+(delib-)330 1935 y(erately)41 b(discarded.)69 b(Ho)m(w)m(ev)m(er,)45
 b(Bash)40 b(will)h(run)d(an)m(y)j(trap)e(set)i(on)f Ft(SIGINT)p
-Fu(,)h(as)f(it)h(do)s(es)e(with)330 1794 y(an)m(y)31
+Fu(,)h(as)f(it)h(do)s(es)e(with)330 2044 y(an)m(y)31
 b(other)f(trapp)s(ed)f(signal)i(it)g(receiv)m(es)h(while)e(it)h(is)f(w)
 m(aiting)h(for)f(the)h(foreground)e(command)h(to)330
-1904 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)150
-2142 y Fs(3.8)68 b(Shell)45 b(Scripts)150 2302 y Fu(A)30
+2154 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)150
+2411 y Fs(3.8)68 b(Shell)45 b(Scripts)150 2570 y Fu(A)30
 b(shell)f(script)h(is)f(a)h(text)h(\014le)f(con)m(taining)h(shell)f
 (commands.)40 b(When)29 b(suc)m(h)g(a)h(\014le)g(is)f(used)g(as)h(the)g
-(\014rst)150 2411 y(non-option)c(argumen)m(t)h(when)e(in)m(v)m(oking)i
+(\014rst)150 2680 y(non-option)c(argumen)m(t)h(when)e(in)m(v)m(oking)i
 (Bash,)g(and)f(neither)g(the)g Ft(-c)g Fu(nor)f Ft(-s)h
-Fu(option)g(is)g(supplied)f(\(see)150 2521 y(Section)39
+Fu(option)g(is)g(supplied)f(\(see)150 2789 y(Section)39
 b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f(94\),)i(Bash)d(reads)g(and)f
-(executes)i(commands)f(from)f(the)i(\014le,)150 2630
+(executes)i(commands)f(from)f(the)i(\014le,)150 2899
 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s(eration)f
 (creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46 b(The)31
-b(shell)i(\014rst)e(searc)m(hes)150 2740 y(for)d(the)g(\014le)g(in)g
+b(shell)i(\014rst)e(searc)m(hes)150 3008 y(for)d(the)g(\014le)g(in)g
 (the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e(the)i
 (directories)g(in)e Ft($PATH)g Fu(if)h(not)g(found)e(there.)275
-2873 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
+3154 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
 (sp)s(ecial)i(parameter)f Ft(0)f Fu(to)h(the)g(name)g(of)g(the)g
-(\014le,)150 2983 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
+(\014le,)150 3263 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
 (and)d(the)h(p)s(ositional)g(parameters)f(are)h(set)g(to)g(the)g
-(remain-)150 3092 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
+(remain-)150 3373 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
 (en.)67 b(If)39 b(no)g(additional)g(argumen)m(ts)h(are)f(supplied,)h
-(the)f(p)s(ositional)150 3202 y(parameters)31 b(are)f(unset.)275
-3335 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
+(the)f(p)s(ositional)150 3482 y(parameters)31 b(are)f(unset.)275
+3628 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
 (y)e(using)g(the)h Ft(chmod)e Fu(command)h(to)h(turn)e(on)i(the)150
-3445 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
+3737 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
 (\014le)f(while)g(searc)m(hing)h(the)f Ft($PATH)f Fu(for)h(a)h
-(command,)h(it)150 3554 y(creates)32 b(a)f(new)e(instance)i(of)g
+(command,)h(it)150 3847 y(creates)32 b(a)f(new)e(instance)i(of)g
 (itself)g(to)g(execute)h(it.)41 b(In)30 b(other)h(w)m(ords,)f
-(executing)390 3688 y Ft(filename)46 b Fj(arguments)150
-3821 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390
-3954 y Ft(bash)47 b(filename)e Fj(arguments)150 4087
+(executing)390 3992 y Ft(filename)46 b Fj(arguments)150
+4137 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390
+4282 y Ft(bash)47 b(filename)e Fj(arguments)150 4428
 y Fu(if)30 b Ft(filename)d Fu(is)j(an)f(executable)j(shell)e(script.)40
 b(This)29 b(subshell)g(reinitializes)i(itself,)g(so)f(that)h(the)e
-(e\013ect)150 4197 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)
+(e\013ect)150 4537 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)
 g(in)m(v)m(ok)m(ed)h(to)h(in)m(terpret)e(the)h(script,)h(with)e(the)h
-(exception)h(that)f(the)150 4306 y(lo)s(cations)25 b(of)g(commands)e
+(exception)h(that)f(the)150 4647 y(lo)s(cations)25 b(of)g(commands)e
 (remem)m(b)s(ered)h(b)m(y)g(the)g(paren)m(t)g(\(see)h(the)f
 (description)g(of)g Ft(hash)f Fu(in)h(Section)h(4.1)150
-4416 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(49\))h(are)e(retained)h
-(b)m(y)f(the)h(c)m(hild.)275 4549 y(Most)36 b(v)m(ersions)g(of)g(Unix)f
+4756 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(49\))h(are)e(retained)h
+(b)m(y)f(the)h(c)m(hild.)275 4902 y(Most)36 b(v)m(ersions)g(of)g(Unix)f
 (mak)m(e)h(this)g(a)g(part)f(of)h(the)g(op)s(erating)g(system's)f
-(command)h(execution)150 4659 y(mec)m(hanism.)50 b(If)33
+(command)h(execution)150 5011 y(mec)m(hanism.)50 b(If)33
 b(the)g(\014rst)g(line)h(of)f(a)h(script)f(b)s(egins)g(with)g(the)g(t)m
 (w)m(o)i(c)m(haracters)g(`)p Ft(#!)p Fu(',)f(the)g(remainder)150
-4768 y(of)27 b(the)g(line)g(sp)s(eci\014es)g(an)g(in)m(terpreter)g(for)
+5121 y(of)27 b(the)g(line)g(sp)s(eci\014es)g(an)g(in)m(terpreter)g(for)
 g(the)g(program)g(and,)g(dep)s(ending)e(on)i(the)g(op)s(erating)h
-(system,)150 4878 y(one)e(or)g(more)g(optional)h(argumen)m(ts)f(for)g
+(system,)150 5230 y(one)e(or)g(more)g(optional)h(argumen)m(ts)f(for)g
 (that)g(in)m(terpreter.)40 b(Th)m(us,)26 b(y)m(ou)g(can)g(sp)s(ecify)g
-(Bash,)h Ft(awk)p Fu(,)f(P)m(erl,)150 4988 y(or)k(some)h(other)g(in)m
+(Bash,)h Ft(awk)p Fu(,)f(P)m(erl,)150 5340 y(or)k(some)h(other)g(in)m
 (terpreter)g(and)e(write)i(the)f(rest)h(of)g(the)f(script)g(\014le)h
-(in)f(that)h(language.)275 5121 y(The)k(argumen)m(ts)h(to)h(the)f(in)m
-(terpreter)h(consist)f(of)h(one)f(or)g(more)g(optional)h(argumen)m(ts)f
-(follo)m(wing)150 5230 y(the)e(in)m(terpreter)g(name)g(on)g(the)g
-(\014rst)g(line)g(of)g(the)g(script)g(\014le,)h(follo)m(w)m(ed)h(b)m(y)
-e(the)g(name)g(of)g(the)g(script)150 5340 y(\014le,)k(follo)m(w)m(ed)g
-(b)m(y)e(the)g(rest)g(of)g(the)h(argumen)m(ts)f(supplied)f(to)i(the)f
-(script.)58 b(The)35 b(details)i(of)g(ho)m(w)f(the)p
-eop end
+(in)f(that)h(language.)p eop end
 %%Page: 48 54
 TeXDict begin 48 53 bop 150 -116 a Fu(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(48)150 299
-y(in)m(terpreter)26 b(line)g(is)g(split)g(in)m(to)h(an)f(in)m
-(terpreter)g(name)g(and)f(a)h(set)h(of)e(argumen)m(ts)i(v)-5
-b(ary)25 b(across)i(systems.)150 408 y(Bash)j(will)f(p)s(erform)g(this)
-g(action)i(on)e(op)s(erating)h(systems)g(that)g(do)f(not)h(handle)f(it)
-h(themselv)m(es.)42 b(Note)150 518 y(that)e(some)g(older)g(v)m(ersions)
-g(of)g(Unix)f(limit)i(the)f(in)m(terpreter)g(name)g(and)f(a)h(single)g
-(argumen)m(t)g(to)h(a)150 628 y(maxim)m(um)21 b(of)g(32)h(c)m
-(haracters,)j(so)c(it's)h(not)g(p)s(ortable)f(to)h(assume)e(that)i
-(using)f(more)g(than)g(one)g(argumen)m(t)150 737 y(will)31
-b(w)m(ork.)275 872 y(Bash)h(scripts)g(often)g(b)s(egin)g(with)g
-Ft(#!)e(/bin/bash)g Fu(\(assuming)i(that)h(Bash)f(has)g(b)s(een)f
-(installed)i(in)150 981 y Ft(/bin)p Fu(\),)26 b(since)h(this)f(ensures)
-f(that)i(Bash)f(will)h(b)s(e)f(used)f(to)i(in)m(terpret)f(the)h
-(script,)g(ev)m(en)g(if)f(it)h(is)f(executed)150 1091
-y(under)h(another)h(shell.)41 b(It's)28 b(a)h(common)g(idiom)f(to)h
-(use)f Ft(env)g Fu(to)h(\014nd)e Ft(bash)g Fu(ev)m(en)i(if)f(it's)i(b)s
-(een)d(installed)150 1200 y(in)h(another)g(directory:)40
-b Ft(#!/usr/bin/env)27 b(bash)f Fu(will)j(\014nd)d(the)j(\014rst)e(o)s
-(ccurrence)h(of)g Ft(bash)f Fu(in)h Ft($PATH)p Fu(.)p
-eop end
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(48)275 299
+y(The)35 b(argumen)m(ts)h(to)h(the)f(in)m(terpreter)h(consist)f(of)h
+(one)f(or)g(more)g(optional)h(argumen)m(ts)f(follo)m(wing)150
+408 y(the)e(in)m(terpreter)g(name)g(on)g(the)g(\014rst)g(line)g(of)g
+(the)g(script)g(\014le,)h(follo)m(w)m(ed)h(b)m(y)e(the)g(name)g(of)g
+(the)g(script)150 518 y(\014le,)k(follo)m(w)m(ed)g(b)m(y)e(the)g(rest)g
+(of)g(the)h(argumen)m(ts)f(supplied)f(to)i(the)f(script.)58
+b(The)35 b(details)i(of)g(ho)m(w)f(the)150 628 y(in)m(terpreter)26
+b(line)g(is)g(split)g(in)m(to)h(an)f(in)m(terpreter)g(name)g(and)f(a)h
+(set)h(of)e(argumen)m(ts)i(v)-5 b(ary)25 b(across)i(systems.)150
+737 y(Bash)j(will)f(p)s(erform)g(this)g(action)i(on)e(op)s(erating)h
+(systems)g(that)g(do)f(not)h(handle)f(it)h(themselv)m(es.)42
+b(Note)150 847 y(that)e(some)g(older)g(v)m(ersions)g(of)g(Unix)f(limit)
+i(the)f(in)m(terpreter)g(name)g(and)f(a)h(single)g(argumen)m(t)g(to)h
+(a)150 956 y(maxim)m(um)21 b(of)g(32)h(c)m(haracters,)j(so)c(it's)h
+(not)g(p)s(ortable)f(to)h(assume)e(that)i(using)f(more)g(than)g(one)g
+(argumen)m(t)150 1066 y(will)31 b(w)m(ork.)275 1200 y(Bash)h(scripts)g
+(often)g(b)s(egin)g(with)g Ft(#!)e(/bin/bash)g Fu(\(assuming)i(that)h
+(Bash)f(has)g(b)s(een)f(installed)i(in)150 1310 y Ft(/bin)p
+Fu(\),)26 b(since)h(this)f(ensures)f(that)i(Bash)f(will)h(b)s(e)f(used)
+f(to)i(in)m(terpret)f(the)h(script,)g(ev)m(en)g(if)f(it)h(is)f
+(executed)150 1420 y(under)h(another)h(shell.)41 b(It's)28
+b(a)h(common)g(idiom)f(to)h(use)f Ft(env)g Fu(to)h(\014nd)e
+Ft(bash)g Fu(ev)m(en)i(if)f(it's)i(b)s(een)d(installed)150
+1529 y(in)h(another)g(directory:)40 b Ft(#!/usr/bin/env)27
+b(bash)f Fu(will)j(\014nd)d(the)j(\014rst)e(o)s(ccurrence)h(of)g
+Ft(bash)f Fu(in)h Ft($PATH)p Fu(.)p eop end
 %%Page: 49 55
 TeXDict begin 49 54 bop 3659 -116 a Fu(49)150 299 y Fp(4)80
 b(Shell)53 b(Builtin)f(Commands)150 499 y Fu(Builtin)34
@@ -11800,16 +11811,17 @@ Fj(directory)p Ft(])630 1215 y Fu(Change)27 b(the)g(curren)m(t)f(w)m
 b Fr(directory)35 b Fu(is)27 b(not)g(supplied,)630 1325
 y(the)k(v)-5 b(alue)31 b(of)g(the)g Ft(HOME)e Fu(shell)i(v)-5
 b(ariable)32 b(is)f(used.)40 b(If)31 b(the)g(shell)g(v)-5
-b(ariable)31 b Ft(CDPATH)e Fu(exists,)630 1435 y(it)44
-b(is)f(used)g(as)h(a)f(searc)m(h)h(path:)67 b(eac)m(h)45
-b(directory)f(name)f(in)g Ft(CDPATH)f Fu(is)h(searc)m(hed)h(for)630
-1544 y Fr(directory)p Fu(,)k(with)c(alternativ)m(e)i(directory)f(names)
-e(in)h Ft(CDPATH)e Fu(separated)j(b)m(y)f(a)g(colon)630
-1654 y(\(`)p Ft(:)p Fu('\).)e(If)30 b Fr(directory)38
-b Fu(b)s(egins)30 b(with)g(a)h(slash,)f Ft(CDPATH)f Fu(is)h(not)h
-(used.)630 1788 y(The)g Ft(-P)h Fu(option)g(means)g(to)h(not)f(follo)m
-(w)h(sym)m(b)s(olic)g(links:)44 b(sym)m(b)s(olic)32 b(links)g(are)g
-(resolv)m(ed)630 1898 y(while)41 b Ft(cd)f Fu(is)h(tra)m(v)m(ersing)h
+b(ariable)31 b Ft(CDPATH)e Fu(exists,)630 1435 y Ft(cd)40
+b Fu(uses)h(it)g(as)g(a)g(searc)m(h)g(path:)62 b Ft(cd)40
+b Fu(searc)m(hes)i(eac)m(h)g(directory)f(name)g(in)f
+Ft(CDPATH)f Fu(for)630 1544 y Fr(directory)p Fu(,)48
+b(with)c(alternativ)m(e)i(directory)f(names)e(in)h Ft(CDPATH)e
+Fu(separated)j(b)m(y)f(a)g(colon)630 1654 y(\(`)p Ft(:)p
+Fu('\).)e(If)30 b Fr(directory)38 b Fu(b)s(egins)30 b(with)g(a)h
+(slash,)f Ft(CDPATH)f Fu(is)h(not)h(used.)630 1788 y(The)g
+Ft(-P)h Fu(option)g(means)g(to)h(not)f(follo)m(w)h(sym)m(b)s(olic)g
+(links:)44 b(sym)m(b)s(olic)32 b(links)g(are)g(resolv)m(ed)630
+1898 y(while)41 b Ft(cd)f Fu(is)h(tra)m(v)m(ersing)h
 Fr(directory)49 b Fu(and)40 b(b)s(efore)g(pro)s(cessing)h(an)f
 (instance)i(of)f(`)p Ft(..)p Fu(')f(in)630 2007 y Fr(directory)p
 Fu(.)630 2142 y(By)34 b(default,)h(or)e(when)g(the)g
@@ -11949,1985 +11961,2008 @@ b(ariable)630 847 y Ft(OPTARG)p Fu(.)55 b(The)35 b(shell)g(do)s(es)h
 b(m)m(ust)f(b)s(e)g(man)m(ually)630 956 y(reset)i(b)s(et)m(w)m(een)g(m)
 m(ultiple)h(calls)f(to)g Ft(getopts)e Fu(within)h(the)h(same)g(shell)f
 (in)m(v)m(o)s(cation)j(if)e(a)630 1066 y(new)30 b(set)h(of)f
-(parameters)h(is)f(to)i(b)s(e)d(used.)630 1192 y(When)41
+(parameters)h(is)f(to)i(b)s(e)d(used.)630 1196 y(When)41
 b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k Ft(getopts)39
-b Fu(exits)j(with)f(a)h(return)e(v)-5 b(alue)630 1302
+b Fu(exits)j(with)f(a)h(return)e(v)-5 b(alue)630 1305
 y(greater)32 b(than)e(zero.)41 b Ft(OPTIND)29 b Fu(is)h(set)h(to)g(the)
 g(index)f(of)g(the)h(\014rst)f(non-option)g(argumen)m(t,)630
-1412 y(and)g Fr(name)35 b Fu(is)c(set)g(to)g(`)p Ft(?)p
-Fu('.)630 1538 y Ft(getopts)c Fu(normally)j(parses)e(the)i(p)s
+1415 y(and)g Fr(name)35 b Fu(is)c(set)g(to)g(`)p Ft(?)p
+Fu('.)630 1544 y Ft(getopts)c Fu(normally)j(parses)e(the)i(p)s
 (ositional)g(parameters,)g(but)e(if)i(more)f(argumen)m(ts)h(are)630
-1648 y(supplied)f(as)i Fr(arg)38 b Fu(v)-5 b(alues,)31
-b Ft(getopts)e Fu(parses)h(those)h(instead.)630 1774
+1654 y(supplied)f(as)i Fr(arg)38 b Fu(v)-5 b(alues,)31
+b Ft(getopts)e Fu(parses)h(those)h(instead.)630 1783
 y Ft(getopts)h Fu(can)h(rep)s(ort)g(errors)g(in)h(t)m(w)m(o)h(w)m(a)m
 (ys.)51 b(If)33 b(the)h(\014rst)e(c)m(haracter)k(of)d
-Fr(optstring)42 b Fu(is)34 b(a)630 1884 y(colon,)g Fr(silen)m(t)h
+Fr(optstring)42 b Fu(is)34 b(a)630 1893 y(colon,)g Fr(silen)m(t)h
 Fu(error)d(rep)s(orting)f(is)i(used.)45 b(In)31 b(normal)h(op)s
-(eration,)h(diagnostic)h(messages)630 1993 y(are)c(prin)m(ted)e(when)g
+(eration,)h(diagnostic)h(messages)630 2002 y(are)c(prin)m(ted)e(when)g
 (in)m(v)-5 b(alid)30 b(options)g(or)f(missing)g(option)g(argumen)m(ts)h
-(are)f(encoun)m(tered.)630 2103 y(If)34 b(the)g(v)-5
+(are)f(encoun)m(tered.)630 2112 y(If)34 b(the)g(v)-5
 b(ariable)35 b Ft(OPTERR)d Fu(is)i(set)h(to)f(0,)i(no)e(error)g
 (messages)h(will)f(b)s(e)f(displa)m(y)m(ed,)j(ev)m(en)f(if)630
-2212 y(the)c(\014rst)e(c)m(haracter)j(of)f Ft(optstring)d
-Fu(is)i(not)h(a)f(colon.)630 2339 y(If)39 b(an)h(in)m(v)-5
-b(alid)41 b(option)f(is)g(seen,)i Ft(getopts)c Fu(places)j(`)p
-Ft(?)p Fu(')f(in)m(to)h Fr(name)k Fu(and,)d(if)e(not)g(silen)m(t,)630
-2449 y(prin)m(ts)f(an)h(error)f(message)h(and)f(unsets)g
-Ft(OPTARG)p Fu(.)67 b(If)39 b Ft(getopts)f Fu(is)i(silen)m(t,)j(the)c
-(option)630 2558 y(c)m(haracter)32 b(found)d(is)h(placed)h(in)f
-Ft(OPTARG)f Fu(and)h(no)g(diagnostic)i(message)f(is)g(prin)m(ted.)630
-2685 y(If)c(a)g(required)f(argumen)m(t)i(is)f(not)g(found,)g(and)f
-Ft(getopts)f Fu(is)i(not)h(silen)m(t,)h(a)e(question)g(mark)630
-2794 y(\(`)p Ft(?)p Fu('\))h(is)g(placed)g(in)f Fr(name)p
-Fu(,)h Ft(OPTARG)e Fu(is)h(unset,)h(and)f(a)g(diagnostic)i(message)g
-(is)e(prin)m(ted.)39 b(If)630 2904 y Ft(getopts)28 b
-Fu(is)h(silen)m(t,)i(then)e(a)h(colon)h(\(`)p Ft(:)p
-Fu('\))f(is)g(placed)g(in)f Fr(name)35 b Fu(and)29 b
-Ft(OPTARG)f Fu(is)h(set)h(to)h(the)630 3013 y(option)g(c)m(haracter)h
-(found.)150 3157 y Ft(hash)870 3283 y(hash)47 b([-r])f([-p)h
-Fj(filename)p Ft(])e([-dt])i([)p Fj(name)p Ft(])630 3410
-y Fu(Eac)m(h)37 b(time)h Ft(hash)d Fu(is)i(in)m(v)m(ok)m(ed,)j(it)d
-(remem)m(b)s(ers)f(the)h(full)f(\014lenames)h(of)f(the)h(commands)630
-3519 y(sp)s(eci\014ed)c(as)i Fr(name)k Fu(argumen)m(ts,)c(so)g(they)f
-(need)g(not)g(b)s(e)f(searc)m(hed)i(for)f(on)g(subsequen)m(t)630
-3629 y(in)m(v)m(o)s(cations.)79 b(The)41 b(commands)h(are)h(found)e(b)m
-(y)h(searc)m(hing)i(through)d(the)i(directories)630 3738
-y(listed)f(in)g Ft($PATH)p Fu(.)74 b(An)m(y)42 b(previously-remem)m(b)s
-(ered)f(\014lename)h(is)g(discarded.)74 b(The)42 b Ft(-p)630
-3848 y Fu(option)34 b(inhibits)f(the)h(path)g(searc)m(h,)h(and)e
-Fr(\014lename)39 b Fu(is)34 b(used)f(as)h(the)f(lo)s(cation)j(of)e
-Fr(name)p Fu(.)630 3957 y(The)h Ft(-r)g Fu(option)h(causes)g(the)g
-(shell)g(to)h(forget)f(all)h(remem)m(b)s(ered)e(lo)s(cations.)58
-b(Assigning)630 4067 y(to)42 b(the)f Ft(PATH)f Fu(v)-5
-b(ariable)42 b(also)g(clears)g(all)g(hashed)f(\014lenames.)73
-b(The)40 b Ft(-d)h Fu(option)h(causes)630 4177 y(the)f(shell)g(to)g
-(forget)h(the)f(remem)m(b)s(ered)f(lo)s(cation)i(of)f(eac)m(h)h
-Fr(name)p Fu(.)71 b(If)41 b(the)f Ft(-t)g Fu(option)630
-4286 y(is)c(supplied,)g(the)g(full)g(pathname)g(to)g(whic)m(h)g(eac)m
-(h)h Fr(name)k Fu(corresp)s(onds)35 b(is)h(prin)m(ted.)56
-b(If)630 4396 y(m)m(ultiple)31 b Fr(name)k Fu(argumen)m(ts)30
-b(are)g(supplied)f(with)g Ft(-t)p Fu(,)h(the)g Fr(name)35
-b Fu(is)30 b(prin)m(ted)f(b)s(efore)h(the)630 4505 y(hashed)25
-b(full)h(pathname.)39 b(The)26 b Ft(-l)f Fu(option)i(causes)f(output)g
-(to)g(b)s(e)g(displa)m(y)m(ed)g(in)g(a)h(format)630 4615
-y(that)d(ma)m(y)f(b)s(e)g(reused)f(as)h(input.)38 b(If)22
-b(no)h(argumen)m(ts)h(are)f(giv)m(en,)j(or)d(if)g(only)g
-Ft(-l)g Fu(is)g(supplied,)630 4725 y(information)28 b(ab)s(out)f(remem)
-m(b)s(ered)f(commands)h(is)h(prin)m(ted.)39 b(The)27
-b(return)f(status)i(is)f(zero)630 4834 y(unless)j(a)g
-Fr(name)36 b Fu(is)30 b(not)h(found)e(or)h(an)h(in)m(v)-5
-b(alid)31 b(option)f(is)h(supplied.)150 4977 y Ft(pwd)870
-5104 y(pwd)47 b([-LP])630 5230 y Fu(Prin)m(t)29 b(the)g(absolute)h
-(pathname)e(of)h(the)h(curren)m(t)e(w)m(orking)h(directory)-8
-b(.)42 b(If)28 b(the)h Ft(-P)f Fu(option)630 5340 y(is)39
-b(supplied,)h(the)f(pathname)g(prin)m(ted)g(will)g(not)h(con)m(tain)g
-(sym)m(b)s(olic)f(links.)67 b(If)38 b(the)i Ft(-L)p eop
-end
+2222 y(the)c(\014rst)e(c)m(haracter)j(of)f Ft(optstring)d
+Fu(is)i(not)h(a)f(colon.)630 2351 y(If)i Ft(getopts)e
+Fu(detects)j(an)g(in)m(v)-5 b(alid)32 b(option,)i(it)f(places)g(`)p
+Ft(?)p Fu(')f(in)m(to)h Fr(name)38 b Fu(and,)32 b(if)g(not)h(silen)m
+(t,)630 2461 y(prin)m(ts)e(an)h(error)f(message)i(and)e(unsets)g
+Ft(OPTARG)p Fu(.)42 b(If)31 b Ft(getopts)f Fu(is)i(silen)m(t,)h(it)f
+(assigns)g(the)630 2570 y(option)f(c)m(haracter)h(found)d(to)i
+Ft(OPTARG)e Fu(and)g(do)s(es)h(not)h(prin)m(t)f(a)h(diagnostic)h
+(message.)630 2700 y(If)21 b(a)h(required)f(argumen)m(t)h(is)g(not)g
+(found,)g(and)f Ft(getopts)f Fu(is)h(not)h(silen)m(t,)j(it)d(sets)g
+(the)g(v)-5 b(alue)22 b(of)630 2809 y Fr(name)32 b Fu(to)27
+b(a)g(question)g(mark)f(\(`)p Ft(?)p Fu('\),)j(unsets)d
+Ft(OPTARG)p Fu(,)g(and)g(prin)m(ts)g(a)h(diagnostic)h(message.)630
+2919 y(If)i Ft(getopts)f Fu(is)i(silen)m(t,)h(it)f(sets)h(the)f(v)-5
+b(alue)31 b(of)g Fr(name)36 b Fu(to)31 b(a)g(colon)h(\(`)p
+Ft(:)p Fu('\),)g(and)e(sets)i Ft(OPTARG)630 3029 y Fu(to)f(the)g
+(option)g(c)m(haracter)g(found.)150 3178 y Ft(hash)870
+3308 y(hash)47 b([-r])f([-p)h Fj(filename)p Ft(])e([-dt])i([)p
+Fj(name)p Ft(])630 3437 y Fu(Eac)m(h)37 b(time)h Ft(hash)d
+Fu(is)i(in)m(v)m(ok)m(ed,)j(it)d(remem)m(b)s(ers)f(the)h(full)f
+(\014lenames)h(of)f(the)h(commands)630 3547 y(sp)s(eci\014ed)c(as)i
+Fr(name)k Fu(argumen)m(ts,)c(so)g(they)f(need)g(not)g(b)s(e)f(searc)m
+(hed)i(for)f(on)g(subsequen)m(t)630 3656 y(in)m(v)m(o)s(cations.)79
+b(The)41 b(commands)h(are)h(found)e(b)m(y)h(searc)m(hing)i(through)d
+(the)i(directories)630 3766 y(listed)f(in)g Ft($PATH)p
+Fu(.)74 b(An)m(y)42 b(previously-remem)m(b)s(ered)f(\014lename)h(is)g
+(discarded.)74 b(The)42 b Ft(-p)630 3875 y Fu(option)34
+b(inhibits)f(the)h(path)g(searc)m(h,)h(and)e Fr(\014lename)39
+b Fu(is)34 b(used)f(as)h(the)f(lo)s(cation)j(of)e Fr(name)p
+Fu(.)630 3985 y(The)h Ft(-r)g Fu(option)h(causes)g(the)g(shell)g(to)h
+(forget)f(all)h(remem)m(b)s(ered)e(lo)s(cations.)58 b(Assigning)630
+4095 y(to)42 b(the)f Ft(PATH)f Fu(v)-5 b(ariable)42 b(also)g(clears)g
+(all)g(hashed)f(\014lenames.)73 b(The)40 b Ft(-d)h Fu(option)h(causes)
+630 4204 y(the)f(shell)g(to)g(forget)h(the)f(remem)m(b)s(ered)f(lo)s
+(cation)i(of)f(eac)m(h)h Fr(name)p Fu(.)71 b(If)41 b(the)f
+Ft(-t)g Fu(option)630 4314 y(is)c(supplied,)g(the)g(full)g(pathname)g
+(to)g(whic)m(h)g(eac)m(h)h Fr(name)k Fu(corresp)s(onds)35
+b(is)h(prin)m(ted.)56 b(If)630 4423 y(m)m(ultiple)44
+b Fr(name)49 b Fu(argumen)m(ts)44 b(are)h(supplied)d(with)i
+Ft(-t)p Fu(,)i(the)e Fr(name)49 b Fu(is)44 b(prin)m(ted)f(b)s(efore)630
+4533 y(the)36 b(hashed)g(full)f(pathname.)58 b(The)36
+b Ft(-l)f Fu(option)i(causes)f(output)g(to)h(b)s(e)e(displa)m(y)m(ed)i
+(in)f(a)630 4643 y(format)f(that)g(ma)m(y)g(b)s(e)f(reused)f(as)i
+(input.)52 b(If)34 b(no)g(argumen)m(ts)h(are)g(giv)m(en,)h(or)f(if)f
+(only)h Ft(-l)630 4752 y Fu(is)d(supplied,)g(information)h(ab)s(out)f
+(remem)m(b)s(ered)g(commands)f(is)i(prin)m(ted.)46 b(The)32
+b Ft(-t)p Fu(,)g Ft(-d)p Fu(,)630 4862 y(and)40 b Ft(-p)h
+Fu(options)g(\(the)g(options)g(that)h(act)g(on)f(the)g
+Fr(name)46 b Fu(argumen)m(ts\))41 b(are)g(m)m(utually)630
+4971 y(exclusiv)m(e.)j(Only)30 b(one)h(will)g(b)s(e)g(activ)m(e.)44
+b(If)31 b(more)g(than)f(one)h(is)g(supplied,)f Ft(-t)h
+Fu(has)f(higher)630 5081 y(priorit)m(y)38 b(than)f Ft(-p)p
+Fu(,)i(and)e(b)s(oth)g(are)h(higher)f(priorit)m(y)h(than)g
+Ft(-d)p Fu(.)61 b(The)38 b(return)e(status)i(is)630 5191
+y(zero)31 b(unless)f(a)h Fr(name)k Fu(is)c(not)f(found)f(or)i(an)f(in)m
+(v)-5 b(alid)31 b(option)g(is)f(supplied.)150 5340 y
+Ft(pwd)p eop end
 %%Page: 53 59
 TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y(option)44
-b(is)g(supplied,)i(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h
-(sym)m(b)s(olic)f(links.)80 b(The)630 408 y(return)26
-b(status)h(is)h(zero)g(unless)e(an)h(error)g(is)g(encoun)m(tered)g
-(while)h(determining)f(the)g(name)630 518 y(of)k(the)f(curren)m(t)g
-(directory)h(or)f(an)h(in)m(v)-5 b(alid)31 b(option)g(is)f(supplied.)
-150 671 y Ft(readonly)870 803 y(readonly)46 b([-aAf])g([-p])g([)p
-Fj(name)p Ft([=)p Fj(value)p Ft(]])e(...)630 934 y Fu(Mark)33
-b(eac)m(h)h Fr(name)39 b Fu(as)33 b(readonly)-8 b(.)49
-b(The)32 b(v)-5 b(alues)34 b(of)f(these)g(names)g(ma)m(y)h(not)f(b)s(e)
-f(c)m(hanged)630 1044 y(b)m(y)38 b(subsequen)m(t)g(assignmen)m(t.)65
-b(If)38 b(the)h Ft(-f)f Fu(option)g(is)h(supplied,)g(eac)m(h)h
-Fr(name)j Fu(refers)38 b(to)630 1154 y(a)f(shell)g(function.)59
+b(Shell)30 b(Builtin)h(Commands)2069 b(53)870 299 y Ft(pwd)47
+b([-LP])630 434 y Fu(Prin)m(t)29 b(the)g(absolute)h(pathname)e(of)h
+(the)h(curren)m(t)e(w)m(orking)h(directory)-8 b(.)42
+b(If)28 b(the)h Ft(-P)f Fu(option)630 543 y(is)39 b(supplied,)h(the)f
+(pathname)g(prin)m(ted)g(will)g(not)h(con)m(tain)g(sym)m(b)s(olic)f
+(links.)67 b(If)38 b(the)i Ft(-L)630 653 y Fu(option)k(is)g(supplied,)i
+(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h(sym)m(b)s(olic)f
+(links.)80 b(The)630 763 y(return)26 b(status)h(is)h(zero)g(unless)e
+(an)h(error)g(is)g(encoun)m(tered)g(while)h(determining)f(the)g(name)
+630 872 y(of)k(the)f(curren)m(t)g(directory)h(or)f(an)h(in)m(v)-5
+b(alid)31 b(option)g(is)f(supplied.)150 1032 y Ft(readonly)870
+1167 y(readonly)46 b([-aAf])g([-p])g([)p Fj(name)p Ft([=)p
+Fj(value)p Ft(]])e(...)630 1302 y Fu(Mark)33 b(eac)m(h)h
+Fr(name)39 b Fu(as)33 b(readonly)-8 b(.)49 b(The)32 b(v)-5
+b(alues)34 b(of)f(these)g(names)g(ma)m(y)h(not)f(b)s(e)f(c)m(hanged)630
+1412 y(b)m(y)38 b(subsequen)m(t)g(assignmen)m(t.)65 b(If)38
+b(the)h Ft(-f)f Fu(option)g(is)h(supplied,)g(eac)m(h)h
+Fr(name)j Fu(refers)38 b(to)630 1521 y(a)f(shell)g(function.)59
 b(The)36 b Ft(-a)g Fu(option)h(means)f(eac)m(h)i Fr(name)k
-Fu(refers)36 b(to)h(an)f(indexed)g(arra)m(y)630 1263
+Fu(refers)36 b(to)h(an)f(indexed)g(arra)m(y)630 1631
 y(v)-5 b(ariable;)28 b(the)f Ft(-A)e Fu(option)h(means)g(eac)m(h)h
 Fr(name)k Fu(refers)26 b(to)g(an)g(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5
-b(ariable.)630 1373 y(If)35 b(b)s(oth)g(options)h(are)h(supplied,)f
+b(ariable.)630 1740 y(If)35 b(b)s(oth)g(options)h(are)h(supplied,)f
 Ft(-A)f Fu(tak)m(es)i(precedence.)58 b(If)35 b(no)h Fr(name)k
-Fu(argumen)m(ts)d(are)630 1482 y(giv)m(en,)k(or)c(if)h(the)g
+Fu(argumen)m(ts)d(are)630 1850 y(giv)m(en,)k(or)c(if)h(the)g
 Ft(-p)f Fu(option)h(is)f(supplied,)i(a)f(list)g(of)g(all)g(readonly)g
-(names)f(is)h(prin)m(ted.)630 1592 y(The)32 b(other)g(options)g(ma)m(y)
+(names)f(is)h(prin)m(ted.)630 1960 y(The)32 b(other)g(options)g(ma)m(y)
 h(b)s(e)f(used)f(to)i(restrict)g(the)f(output)g(to)h(a)f(subset)g(of)g
-(the)g(set)h(of)630 1702 y(readonly)c(names.)41 b(The)28
+(the)g(set)h(of)630 2069 y(readonly)c(names.)41 b(The)28
 b Ft(-p)h Fu(option)h(causes)g(output)e(to)j(b)s(e)d(displa)m(y)m(ed)i
-(in)f(a)h(format)f(that)630 1811 y(ma)m(y)j(b)s(e)e(reused)g(as)i
+(in)f(a)h(format)f(that)630 2179 y(ma)m(y)j(b)s(e)e(reused)g(as)i
 (input.)42 b(If)30 b(a)i(v)-5 b(ariable)31 b(name)h(is)f(follo)m(w)m
 (ed)h(b)m(y)f(=)p Fr(v)-5 b(alue)p Fu(,)32 b(the)f(v)-5
-b(alue)32 b(of)630 1921 y(the)i(v)-5 b(ariable)34 b(is)f(set)i(to)f
+b(alue)32 b(of)630 2288 y(the)i(v)-5 b(ariable)34 b(is)f(set)i(to)f
 Fr(v)-5 b(alue)p Fu(.)50 b(The)33 b(return)g(status)g(is)h(zero)g
-(unless)f(an)g(in)m(v)-5 b(alid)34 b(option)630 2030
+(unless)f(an)g(in)m(v)-5 b(alid)34 b(option)630 2398
 y(is)c(supplied,)f(one)h(of)g(the)g Fr(name)35 b Fu(argumen)m(ts)30
 b(is)g(not)g(a)g(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)30
-b(or)g(function)630 2140 y(name,)h(or)f(the)h Ft(-f)e
+b(or)g(function)630 2508 y(name,)h(or)f(the)h Ft(-f)e
 Fu(option)i(is)g(supplied)e(with)h(a)h(name)f(that)h(is)f(not)h(a)g
-(shell)f(function.)150 2293 y Ft(return)870 2425 y(return)46
-b([)p Fj(n)p Ft(])630 2556 y Fu(Cause)37 b(a)g(shell)h(function)f(to)g
+(shell)f(function.)150 2668 y Ft(return)870 2803 y(return)46
+b([)p Fj(n)p Ft(])630 2937 y Fu(Cause)37 b(a)g(shell)h(function)f(to)g
 (stop)h(executing)g(and)e(return)h(the)g(v)-5 b(alue)37
-b Fr(n)g Fu(to)h(its)f(caller.)630 2666 y(If)h Fr(n)h
+b Fr(n)g Fu(to)h(its)f(caller.)630 3047 y(If)h Fr(n)h
 Fu(is)g(not)g(supplied,)h(the)f(return)e(v)-5 b(alue)40
 b(is)f(the)g(exit)g(status)g(of)g(the)g(last)h(command)630
-2776 y(executed)i(in)f(the)g(function.)72 b(If)41 b Ft(return)e
+3157 y(executed)i(in)f(the)g(function.)72 b(If)41 b Ft(return)e
 Fu(is)i(executed)h(b)m(y)f(a)h(trap)f(handler,)i(the)e(last)630
-2885 y(command)d(used)f(to)i(determine)f(the)g(status)g(is)h(the)f
-(last)h(command)e(executed)i(b)s(efore)630 2995 y(the)27
+3266 y(command)d(used)f(to)i(determine)f(the)g(status)g(is)h(the)f
+(last)h(command)e(executed)i(b)s(efore)630 3376 y(the)27
 b(trap)g(handler.)39 b(If)26 b Ft(return)g Fu(is)h(executed)h(during)d
-(a)j Ft(DEBUG)d Fu(trap,)j(the)f(last)h(command)630 3104
+(a)j Ft(DEBUG)d Fu(trap,)j(the)f(last)h(command)630 3485
 y(used)f(to)h(determine)g(the)f(status)h(is)g(the)f(last)i(command)e
-(executed)h(b)m(y)g(the)f(trap)h(handler)630 3214 y(b)s(efore)e
+(executed)h(b)m(y)g(the)f(trap)h(handler)630 3595 y(b)s(efore)e
 Ft(return)f Fu(w)m(as)i(in)m(v)m(ok)m(ed.)41 b Ft(return)25
 b Fu(ma)m(y)i(also)g(b)s(e)f(used)g(to)h(terminate)h(execution)g(of)630
-3324 y(a)34 b(script)g(b)s(eing)g(executed)g(with)g(the)g
+3705 y(a)34 b(script)g(b)s(eing)g(executed)g(with)g(the)g
 Ft(.)g Fu(\()p Ft(source)p Fu(\))f(builtin,)h(returning)f(either)i
-Fr(n)e Fu(or)h(the)630 3433 y(exit)j(status)f(of)g(the)g(last)h
+Fr(n)e Fu(or)h(the)630 3814 y(exit)j(status)f(of)g(the)g(last)h
 (command)e(executed)i(within)e(the)h(script)g(as)g(the)g(exit)h(status)
-630 3543 y(of)i(the)g(script.)65 b(If)38 b Fr(n)g Fu(is)h(supplied,)h
+630 3924 y(of)i(the)g(script.)65 b(If)38 b Fr(n)g Fu(is)h(supplied,)h
 (the)f(return)e(v)-5 b(alue)39 b(is)g(its)g(least)h(signi\014can)m(t)g
-(8)f(bits.)630 3652 y(An)m(y)g(command)f(asso)s(ciated)j(with)d(the)h
+(8)f(bits.)630 4033 y(An)m(y)g(command)f(asso)s(ciated)j(with)d(the)h
 Ft(RETURN)e Fu(trap)i(is)g(executed)g(b)s(efore)g(execution)630
-3762 y(resumes)29 b(after)h(the)g(function)g(or)g(script.)40
+4143 y(resumes)29 b(after)h(the)g(function)g(or)g(script.)40
 b(The)29 b(return)g(status)h(is)g(non-zero)g(if)g Ft(return)e
-Fu(is)630 3871 y(supplied)h(a)i(non-n)m(umeric)g(argumen)m(t)g(or)f(is)
+Fu(is)630 4253 y(supplied)h(a)i(non-n)m(umeric)g(argumen)m(t)g(or)f(is)
 h(used)f(outside)h(a)g(function)f(and)g(not)h(during)630
-3981 y(the)g(execution)g(of)g(a)f(script)h(b)m(y)f Ft(.)g
-Fu(or)g Ft(source)p Fu(.)150 4134 y Ft(shift)870 4266
-y(shift)46 b([)p Fj(n)p Ft(])630 4398 y Fu(Shift)41 b(the)g(p)s
+4362 y(the)g(execution)g(of)g(a)f(script)h(b)m(y)f Ft(.)g
+Fu(or)g Ft(source)p Fu(.)150 4522 y Ft(shift)870 4657
+y(shift)46 b([)p Fj(n)p Ft(])630 4792 y Fu(Shift)41 b(the)g(p)s
 (ositional)h(parameters)g(to)g(the)f(left)h(b)m(y)g Fr(n)p
-Fu(.)73 b(The)40 b(p)s(ositional)j(parameters)630 4507
+Fu(.)73 b(The)40 b(p)s(ositional)j(parameters)630 4902
 y(from)34 b Fr(n)p Ft(+)p Fu(1)39 b(.)22 b(.)h(.)45 b
 Ft($#)34 b Fu(are)g(renamed)g(to)h Ft($1)k Fu(.)22 b(.)g(.)46
 b Ft($#)p Fu(-)p Fr(n)p Fu(.)51 b(P)m(arameters)36 b(represen)m(ted)e
-(b)m(y)g(the)630 4617 y(n)m(um)m(b)s(ers)d Ft($#)i Fu(do)m(wn)f(to)i
+(b)m(y)g(the)630 5011 y(n)m(um)m(b)s(ers)d Ft($#)i Fu(do)m(wn)f(to)i
 Ft($#)p Fu(-)p Fr(n)p Ft(+)p Fu(1)e(are)h(unset.)48 b
 Fr(n)32 b Fu(m)m(ust)h(b)s(e)f(a)h(non-negativ)m(e)i(n)m(um)m(b)s(er)d
-(less)630 4726 y(than)g(or)g(equal)h(to)g Ft($#)p Fu(.)46
+(less)630 5121 y(than)g(or)g(equal)h(to)g Ft($#)p Fu(.)46
 b(If)31 b Fr(n)h Fu(is)g(zero)h(or)f(greater)i(than)e
-Ft($#)p Fu(,)g(the)h(p)s(ositional)g(parameters)630 4836
+Ft($#)p Fu(,)g(the)h(p)s(ositional)g(parameters)630 5230
 y(are)e(not)h(c)m(hanged.)43 b(If)31 b Fr(n)g Fu(is)g(not)g(supplied,)f
 (it)i(is)f(assumed)f(to)i(b)s(e)f(1.)43 b(The)31 b(return)f(status)630
-4945 y(is)g(zero)i(unless)d Fr(n)h Fu(is)g(greater)i(than)e
-Ft($#)g Fu(or)g(less)h(than)f(zero,)i(non-zero)e(otherwise.)150
-5099 y Ft(test)150 5208 y([)870 5340 y(test)47 b Fj(expr)p
+5340 y(is)g(zero)i(unless)d Fr(n)h Fu(is)g(greater)i(than)e
+Ft($#)g Fu(or)g(less)h(than)f(zero,)i(non-zero)e(otherwise.)p
 eop end
 %%Page: 54 60
 TeXDict begin 54 59 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(54)630 299 y(Ev)-5
+b(Shell)30 b(Builtin)h(Commands)2069 b(54)150 299 y Ft(test)150
+408 y([)870 541 y(test)47 b Fj(expr)630 673 y Fu(Ev)-5
 b(aluate)43 b(a)f(conditional)h(expression)f Fr(expr)48
 b Fu(and)41 b(return)g(a)h(status)g(of)g(0)g(\(true\))h(or)f(1)630
-408 y(\(false\).)g(Eac)m(h)31 b(op)s(erator)f(and)f(op)s(erand)g(m)m
+783 y(\(false\).)g(Eac)m(h)31 b(op)s(erator)f(and)f(op)s(erand)g(m)m
 (ust)h(b)s(e)f(a)i(separate)g(argumen)m(t.)41 b(Expressions)630
-518 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
+892 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
 (elo)m(w)h(in)g(Section)h(6.4)h([Bash)e(Conditional)630
-628 y(Expressions],)39 b(page)g(99.)64 b Ft(test)37 b
-Fu(do)s(es)g(not)h(accept)i(an)m(y)e(options,)i(nor)e(do)s(es)f(it)h
-(accept)630 737 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f
+1002 y(Expressions],)39 b(page)g(99.)64 b Ft(test)37
+Fu(do)s(es)g(not)h(accept)i(an)m(y)e(options,)i(nor)e(do)s(es)f(it)h
+(accept)630 1112 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f
 Ft(--)g Fu(as)h(signifying)f(the)h(end)f(of)g(options.)630
-871 y(When)g(the)h Ft([)f Fu(form)g(is)g(used,)g(the)g(last)i(argumen)m
-(t)e(to)i(the)e(command)g(m)m(ust)h(b)s(e)e(a)i Ft(])p
-Fu(.)630 1004 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f
+1244 y(When)g(the)h Ft([)f Fu(form)g(is)g(used,)g(the)g(last)i(argumen)
+m(t)e(to)i(the)e(command)g(m)m(ust)h(b)s(e)e(a)i Ft(])p
+Fu(.)630 1377 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f
 (the)h(follo)m(wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630
-1114 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5
+1486 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5
 b(aluation)33 b(dep)s(ends)28 b(on)j(the)g(n)m(um)m(b)s(er)f(of)h
-(argumen)m(ts;)g(see)630 1223 y(b)s(elo)m(w.)41 b(Op)s(erator)30
+(argumen)m(ts;)g(see)630 1596 y(b)s(elo)m(w.)41 b(Op)s(erator)30
 b(precedence)h(is)f(used)g(when)f(there)i(are)f(\014v)m(e)h(or)f(more)h
-(argumen)m(ts.)630 1380 y Ft(!)f Fj(expr)210 b Fu(T)-8
-b(rue)30 b(if)g Fr(expr)37 b Fu(is)30 b(false.)630 1538
+(argumen)m(ts.)630 1751 y Ft(!)f Fj(expr)210 b Fu(T)-8
+b(rue)30 b(if)g Fr(expr)37 b Fu(is)30 b(false.)630 1906
 y Ft(\()g Fj(expr)f Ft(\))133 b Fu(Returns)23 b(the)i(v)-5
 b(alue)25 b(of)f Fr(expr)p Fu(.)38 b(This)24 b(ma)m(y)h(b)s(e)e(used)h
-(to)h(o)m(v)m(erride)g(the)g(normal)1110 1647 y(precedence)31
-b(of)f(op)s(erators.)630 1805 y Fj(expr1)f Ft(-a)h Fj(expr2)1110
-1914 y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expr1)37
-b Fu(and)30 b Fr(expr2)38 b Fu(are)30 b(true.)630 2071
-y Fj(expr1)f Ft(-o)h Fj(expr2)1110 2181 y Fu(T)-8 b(rue)30
+(to)h(o)m(v)m(erride)g(the)g(normal)1110 2016 y(precedence)31
+b(of)f(op)s(erators.)630 2171 y Fj(expr1)f Ft(-a)h Fj(expr2)1110
+2281 y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expr1)37
+b Fu(and)30 b Fr(expr2)38 b Fu(are)30 b(true.)630 2436
+y Fj(expr1)f Ft(-o)h Fj(expr2)1110 2545 y Fu(T)-8 b(rue)30
 b(if)g(either)h Fr(expr1)38 b Fu(or)30 b Fr(expr2)37
-b Fu(is)31 b(true.)630 2338 y(The)37 b Ft(test)f Fu(and)g
+b Fu(is)31 b(true.)630 2701 y(The)37 b Ft(test)f Fu(and)g
 Ft([)h Fu(builtins)g(ev)-5 b(aluate)39 b(conditional)f(expressions)f
-(using)g(a)g(set)h(of)f(rules)630 2448 y(based)30 b(on)g(the)h(n)m(um)m
-(b)s(er)e(of)h(argumen)m(ts.)630 2605 y(0)h(argumen)m(ts)1110
-2715 y(The)f(expression)g(is)g(false.)630 2872 y(1)h(argumen)m(t)1110
-2981 y(The)f(expression)g(is)g(true)h(if,)f(and)g(only)g(if,)h(the)g
-(argumen)m(t)f(is)h(not)f(n)m(ull.)630 3139 y(2)h(argumen)m(ts)1110
-3248 y(If)f(the)h(\014rst)f(argumen)m(t)h(is)g(`)p Ft(!)p
+(using)g(a)g(set)h(of)f(rules)630 2810 y(based)30 b(on)g(the)h(n)m(um)m
+(b)s(er)e(of)h(argumen)m(ts.)630 2966 y(0)h(argumen)m(ts)1110
+3075 y(The)f(expression)g(is)g(false.)630 3230 y(1)h(argumen)m(t)1110
+3340 y(The)f(expression)g(is)g(true)h(if,)f(and)g(only)g(if,)h(the)g
+(argumen)m(t)f(is)h(not)f(n)m(ull.)630 3495 y(2)h(argumen)m(ts)1110
+3605 y(If)f(the)h(\014rst)f(argumen)m(t)h(is)g(`)p Ft(!)p
 Fu(',)g(the)g(expression)g(is)g(true)f(if)h(and)f(only)h(if)g(the)1110
-3358 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 b(If)33
+3714 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 b(If)33
 b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary)1110
-3467 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f([Bash)g
-(Conditional)g(Expres-)1110 3577 y(sions],)34 b(page)f(99\),)i(the)e
+3824 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f([Bash)g
+(Conditional)g(Expres-)1110 3934 y(sions],)34 b(page)f(99\),)i(the)e
 (expression)f(is)h(true)g(if)g(the)g(unary)e(test)j(is)f(true.)47
-b(If)1110 3687 y(the)33 b(\014rst)g(argumen)m(t)h(is)f(not)g(a)h(v)-5
+b(If)1110 4043 y(the)33 b(\014rst)g(argumen)m(t)h(is)f(not)g(a)h(v)-5
 b(alid)34 b(unary)e(op)s(erator,)i(the)g(expression)f(is)1110
-3796 y(false.)630 3953 y(3)e(argumen)m(ts)1110 4063 y(The)f(follo)m
+4153 y(false.)630 4308 y(3)e(argumen)m(ts)1110 4418 y(The)f(follo)m
 (wing)i(conditions)f(are)f(applied)h(in)f(the)g(order)g(listed.)1159
-4196 y(1.)61 b(If)29 b(the)g(second)g(argumen)m(t)h(is)f(one)h(of)f
-(the)h(binary)e(conditional)j(op)s(era-)1290 4306 y(tors)c(\(see)h
+4550 y(1.)61 b(If)29 b(the)g(second)g(argumen)m(t)h(is)f(one)h(of)f
+(the)h(binary)e(conditional)j(op)s(era-)1290 4660 y(tors)c(\(see)h
 (Section)g(6.4)g([Bash)g(Conditional)f(Expressions],)h(page)f(99\),)
-1290 4416 y(the)d(result)g(of)f(the)h(expression)g(is)g(the)f(result)h
-(of)g(the)g(binary)f(test)h(using)1290 4525 y(the)35
+1290 4769 y(the)d(result)g(of)f(the)h(expression)g(is)g(the)f(result)h
+(of)g(the)g(binary)f(test)h(using)1290 4879 y(the)35
 b(\014rst)e(and)h(third)g(argumen)m(ts)h(as)f(op)s(erands.)52
 b(The)34 b(`)p Ft(-a)p Fu(')g(and)g(`)p Ft(-o)p Fu(')1290
-4635 y(op)s(erators)24 b(are)g(considered)g(binary)f(op)s(erators)h
-(when)f(there)h(are)h(three)1290 4744 y(argumen)m(ts.)1159
-4878 y(2.)61 b(If)41 b(the)h(\014rst)e(argumen)m(t)i(is)f(`)p
+4988 y(op)s(erators)24 b(are)g(considered)g(binary)f(op)s(erators)h
+(when)f(there)h(are)h(three)1290 5098 y(argumen)m(ts.)1159
+5230 y(2.)61 b(If)41 b(the)h(\014rst)e(argumen)m(t)i(is)f(`)p
 Ft(!)p Fu(',)k(the)d(v)-5 b(alue)41 b(is)h(the)f(negation)i(of)f(the)
-1290 4987 y(t)m(w)m(o-argumen)m(t)33 b(test)e(using)f(the)g(second)h
-(and)e(third)h(argumen)m(ts.)1159 5121 y(3.)61 b(If)35
-b(the)h(\014rst)e(argumen)m(t)i(is)g(exactly)h(`)p Ft(\()p
-Fu(')f(and)f(the)g(third)g(argumen)m(t)h(is)1290 5230
-y(exactly)i(`)p Ft(\))p Fu(',)g(the)f(result)f(is)h(the)f(one-argumen)m
-(t)i(test)f(of)f(the)h(second)1290 5340 y(argumen)m(t.)p
-eop end
+1290 5340 y(t)m(w)m(o-argumen)m(t)33 b(test)e(using)f(the)g(second)h
+(and)e(third)h(argumen)m(ts.)p eop end
 %%Page: 55 61
 TeXDict begin 55 60 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(55)1159 299 y(4.)61
-b(Otherwise,)30 b(the)h(expression)f(is)g(false.)630
-458 y(4)h(argumen)m(ts)1110 568 y(The)f(follo)m(wing)i(conditions)f
-(are)f(applied)h(in)f(the)g(order)g(listed.)1159 702
-y(1.)61 b(If)39 b(the)i(\014rst)e(argumen)m(t)h(is)g(`)p
+b(Shell)30 b(Builtin)h(Commands)2069 b(55)1159 299 y(3.)61
+b(If)35 b(the)h(\014rst)e(argumen)m(t)i(is)g(exactly)h(`)p
+Ft(\()p Fu(')f(and)f(the)g(third)g(argumen)m(t)h(is)1290
+408 y(exactly)i(`)p Ft(\))p Fu(',)g(the)f(result)f(is)h(the)f
+(one-argumen)m(t)i(test)f(of)f(the)h(second)1290 518
+y(argumen)m(t.)1159 651 y(4.)61 b(Otherwise,)30 b(the)h(expression)f
+(is)g(false.)630 809 y(4)h(argumen)m(ts)1110 918 y(The)f(follo)m(wing)i
+(conditions)f(are)f(applied)h(in)f(the)g(order)g(listed.)1159
+1052 y(1.)61 b(If)39 b(the)i(\014rst)e(argumen)m(t)h(is)g(`)p
 Ft(!)p Fu(',)j(the)d(result)f(is)h(the)g(negation)i(of)e(the)1290
-812 y(three-argumen)m(t)k(expression)e(comp)s(osed)g(of)h(the)g
-(remaining)g(argu-)1290 922 y(men)m(ts.)1159 1056 y(2.)61
+1161 y(three-argumen)m(t)k(expression)e(comp)s(osed)g(of)h(the)g
+(remaining)g(argu-)1290 1271 y(men)m(ts.)1159 1404 y(2.)61
 b(If)31 b(the)g(\014rst)f(argumen)m(t)i(is)f(exactly)i(`)p
 Ft(\()p Fu(')e(and)g(the)g(fourth)f(argumen)m(t)i(is)1290
-1166 y(exactly)38 b(`)p Ft(\))p Fu(',)f(the)f(result)g(is)g(the)g(t)m
-(w)m(o-argumen)m(t)i(test)f(of)f(the)g(second)1290 1275
-y(and)30 b(third)f(argumen)m(ts.)1159 1410 y(3.)61 b(Otherwise,)26
+1514 y(exactly)38 b(`)p Ft(\))p Fu(',)f(the)f(result)g(is)g(the)g(t)m
+(w)m(o-argumen)m(t)i(test)f(of)f(the)g(second)1290 1623
+y(and)30 b(third)f(argumen)m(ts.)1159 1757 y(3.)61 b(Otherwise,)26
 b(the)f(expression)f(is)h(parsed)f(and)g(ev)-5 b(aluated)26
-b(according)g(to)1290 1519 y(precedence)31 b(using)f(the)g(rules)g
-(listed)h(ab)s(o)m(v)m(e.)630 1679 y(5)g(or)f(more)h(argumen)m(ts)1110
-1788 y(The)43 b(expression)f(is)i(parsed)e(and)g(ev)-5
-b(aluated)45 b(according)f(to)f(precedence)1110 1898
+b(according)g(to)1290 1866 y(precedence)31 b(using)f(the)g(rules)g
+(listed)h(ab)s(o)m(v)m(e.)630 2024 y(5)g(or)f(more)h(argumen)m(ts)1110
+2133 y(The)43 b(expression)f(is)i(parsed)e(and)g(ev)-5
+b(aluated)45 b(according)f(to)f(precedence)1110 2243
 y(using)30 b(the)g(rules)g(listed)h(ab)s(o)m(v)m(e.)630
-2057 y(If)j(the)h(shell)g(is)f(not)h(in)f Fm(posix)g
-Fu(mo)s(de,)i(when)d(used)h(with)g Ft(test)g Fu(or)g(`)p
-Ft([)p Fu(',)i(the)f(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
-Fu(')630 2167 y(op)s(erators)g(sort)g(lexicographically)i(using)d(ASCI)
-s(I)f(ordering.)50 b(If)33 b(the)h(shell)g(is)f(in)h
-Fm(posix)630 2276 y Fu(mo)s(de,)c(these)h(op)s(erators)g(use)f(the)g
-(curren)m(t)g(lo)s(cale.)630 2411 y(The)g(historical)i(op)s
-(erator-precedence)f(parsing)f(with)g(4)h(or)f(more)h(argumen)m(ts)g
-(can)f(lead)630 2521 y(to)k(am)m(biguities)g(when)e(it)i(encoun)m(ters)
-f(strings)g(that)h(lo)s(ok)f(lik)m(e)i(primaries.)48
-b(The)33 b Fm(posix)630 2630 y Fu(standard)42 b(has)g(deprecated)i(the)
-f Ft(-a)f Fu(and)g Ft(-o)g Fu(primaries)g(and)h(enclosing)g
-(expressions)630 2740 y(within)28 b(paren)m(theses.)40
-b(Scripts)28 b(should)f(no)h(longer)h(use)f(them.)40
-b(It's)28 b(m)m(uc)m(h)g(more)h(reliable)630 2849 y(to)f(restrict)f
-(test)h(in)m(v)m(o)s(cations)h(to)e(a)g(single)h(primary)-8
-b(,)27 b(and)f(to)i(replace)g(uses)e(of)h Ft(-a)f Fu(and)h
-Ft(-o)630 2959 y Fu(with)j(the)h(shell's)f Ft(&&)g Fu(and)g
-Ft(||)g Fu(list)h(op)s(erators.)41 b(F)-8 b(or)31 b(example,)g(use)870
-3093 y Ft(test)47 b(-n)g(string1)f(&&)h(test)f(-n)i(string2)630
-3228 y Fu(instead)31 b(of)870 3362 y Ft(test)47 b(-n)g(string1)f(-a)h
-(-n)g(string2)150 3522 y(times)870 3656 y(times)630 3791
-y Fu(Prin)m(t)37 b(out)h(the)g(user)e(and)h(system)g(times)h(used)f(b)m
-(y)g(the)h(shell)f(and)g(its)h(c)m(hildren.)61 b(The)630
-3900 y(return)29 b(status)i(is)f(zero.)150 4060 y Ft(trap)870
-4194 y(trap)47 b([-Plp])f([)p Fj(action)p Ft(])f([)p
-Fj(sigspec)h Ft(...)o(])630 4329 y Fu(The)40 b Fr(action)i
-Fu(is)e(a)h(command)f(that)h(is)f(read)h(and)e(executed)j(when)d(the)i
-(shell)f(receiv)m(es)630 4438 y(signal)30 b Fr(sigsp)s(ec)p
-Fu(.)40 b(If)29 b Fr(action)h Fu(is)f(absen)m(t)h(\(and)f(there)g(is)g
-(a)g(single)h Fr(sigsp)s(ec)6 b Fu(\))29 b(or)g(equal)h(to)g(`)p
-Ft(-)p Fu(',)630 4548 y(eac)m(h)e(sp)s(eci\014ed)e(signal's)h(disp)s
-(osition)f(is)h(reset)g(to)g(the)g(v)-5 b(alue)27 b(it)g(had)f(when)f
-(the)i(shell)g(w)m(as)630 4658 y(started.)43 b(If)30
-b Fr(action)j Fu(is)e(the)g(n)m(ull)f(string,)i(then)e(the)i(signal)f
-(sp)s(eci\014ed)f(b)m(y)h(eac)m(h)h Fr(sigsp)s(ec)37
-b Fu(is)630 4767 y(ignored)30 b(b)m(y)h(the)f(shell)h(and)f(commands)g
-(it)h(in)m(v)m(ok)m(es.)630 4902 y(If)44 b(no)h(argumen)m(ts)g(are)g
-(supplied,)j Ft(trap)c Fu(prin)m(ts)g(the)h(actions)h(asso)s(ciated)g
-(with)f(eac)m(h)630 5011 y(trapp)s(ed)29 b(signal)j(as)f(a)g(set)g(of)f
+2400 y(If)24 b(the)h(shell)g(is)f(in)h Fm(posix)e Fu(mo)s(de,)j(or)f
+(if)f(the)h(expression)f(is)h(part)f(of)h(the)g Ft([[)f
+Fu(command,)i(the)630 2510 y(`)p Ft(<)p Fu(')34 b(and)e(`)p
+Ft(>)p Fu(')i(op)s(erators)g(sort)f(using)g(the)h(curren)m(t)f(lo)s
+(cale.)52 b(If)33 b(the)h(shell)f(is)h(not)g(in)f Fm(posix)630
+2619 y Fu(mo)s(de,)28 b(the)f Ft(test)f Fu(and)g(`)p
+Ft([)p Fu(')h(commands)g(sort)g(lexicographically)j(using)c(ASCI)s(I)g
+(ordering.)630 2753 y(The)k(historical)i(op)s(erator-precedence)f
+(parsing)f(with)g(4)h(or)f(more)h(argumen)m(ts)g(can)f(lead)630
+2862 y(to)k(am)m(biguities)g(when)e(it)i(encoun)m(ters)f(strings)g
+(that)h(lo)s(ok)f(lik)m(e)i(primaries.)48 b(The)33 b
+Fm(posix)630 2972 y Fu(standard)42 b(has)g(deprecated)i(the)f
+Ft(-a)f Fu(and)g Ft(-o)g Fu(primaries)g(and)h(enclosing)g(expressions)
+630 3081 y(within)28 b(paren)m(theses.)40 b(Scripts)28
+b(should)f(no)h(longer)h(use)f(them.)40 b(It's)28 b(m)m(uc)m(h)g(more)h
+(reliable)630 3191 y(to)f(restrict)f(test)h(in)m(v)m(o)s(cations)h(to)e
+(a)g(single)h(primary)-8 b(,)27 b(and)f(to)i(replace)g(uses)e(of)h
+Ft(-a)f Fu(and)h Ft(-o)630 3301 y Fu(with)j(the)h(shell's)f
+Ft(&&)g Fu(and)g Ft(||)g Fu(list)h(op)s(erators.)41 b(F)-8
+b(or)31 b(example,)g(use)870 3434 y Ft(test)47 b(-n)g(string1)f(&&)h
+(test)f(-n)i(string2)630 3567 y Fu(instead)31 b(of)870
+3701 y Ft(test)47 b(-n)g(string1)f(-a)h(-n)g(string2)150
+3858 y(times)870 3992 y(times)630 4125 y Fu(Prin)m(t)37
+b(out)h(the)g(user)e(and)h(system)g(times)h(used)f(b)m(y)g(the)h(shell)
+f(and)g(its)h(c)m(hildren.)61 b(The)630 4235 y(return)29
+b(status)i(is)f(zero.)150 4392 y Ft(trap)870 4525 y(trap)47
+b([-Plp])f([)p Fj(action)p Ft(])f([)p Fj(sigspec)h Ft(...)o(])630
+4659 y Fu(The)40 b Fr(action)i Fu(is)e(a)h(command)f(that)h(is)f(read)h
+(and)e(executed)j(when)d(the)i(shell)f(receiv)m(es)630
+4768 y(signal)30 b Fr(sigsp)s(ec)p Fu(.)40 b(If)29 b
+Fr(action)h Fu(is)f(absen)m(t)h(\(and)f(there)g(is)g(a)g(single)h
+Fr(sigsp)s(ec)6 b Fu(\))29 b(or)g(equal)h(to)g(`)p Ft(-)p
+Fu(',)630 4878 y(eac)m(h)e(sp)s(eci\014ed)e(signal's)h(disp)s(osition)f
+(is)h(reset)g(to)g(the)g(v)-5 b(alue)27 b(it)g(had)f(when)f(the)i
+(shell)g(w)m(as)630 4987 y(started.)43 b(If)30 b Fr(action)j
+Fu(is)e(the)g(n)m(ull)f(string,)i(then)e(the)i(signal)f(sp)s(eci\014ed)
+f(b)m(y)h(eac)m(h)h Fr(sigsp)s(ec)37 b Fu(is)630 5097
+y(ignored)30 b(b)m(y)h(the)f(shell)h(and)f(commands)g(it)h(in)m(v)m(ok)
+m(es.)630 5230 y(If)44 b(no)h(argumen)m(ts)g(are)g(supplied,)j
+Ft(trap)c Fu(prin)m(ts)g(the)h(actions)h(asso)s(ciated)g(with)f(eac)m
+(h)630 5340 y(trapp)s(ed)29 b(signal)j(as)f(a)g(set)g(of)f
 Ft(trap)g Fu(commands)g(that)h(can)g(b)s(e)f(reused)g(as)h(shell)g
-(input)e(to)630 5121 y(restore)g(the)g(curren)m(t)g(signal)g(disp)s
-(ositions.)40 b(If)28 b Fr(action)i Fu(is)f(not)f(presen)m(t)h(and)f
-Ft(-p)g Fu(has)h(b)s(een)630 5230 y(supplied,)39 b Ft(trap)e
-Fu(displa)m(ys)i(the)f(trap)h(commands)f(asso)s(ciated)h(with)f(eac)m
-(h)i Fr(sigsp)s(ec)p Fu(,)h(or,)630 5340 y(if)32 b(no)g
-Fr(sigsp)s(ec)6 b Fu(s)32 b(are)h(supplied,)e(for)h(all)h(trapp)s(ed)e
-(signals,)j(as)e(a)h(set)g(of)f Ft(trap)f Fu(commands)p
-eop end
+(input)e(to)p eop end
 %%Page: 56 62
 TeXDict begin 56 61 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y(that)44
+b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y(restore)29
+b(the)g(curren)m(t)g(signal)g(disp)s(ositions.)40 b(If)28
+b Fr(action)i Fu(is)f(not)f(presen)m(t)h(and)f Ft(-p)g
+Fu(has)h(b)s(een)630 408 y(supplied,)39 b Ft(trap)e Fu(displa)m(ys)i
+(the)f(trap)h(commands)f(asso)s(ciated)h(with)f(eac)m(h)i
+Fr(sigsp)s(ec)p Fu(,)h(or,)630 518 y(if)32 b(no)g Fr(sigsp)s(ec)6
+b Fu(s)32 b(are)h(supplied,)e(for)h(all)h(trapp)s(ed)e(signals,)j(as)e
+(a)h(set)g(of)f Ft(trap)f Fu(commands)630 628 y(that)44
 b(can)g(b)s(e)f(reused)g(as)g(shell)h(input)f(to)h(restore)g(the)g
-(curren)m(t)f(signal)h(disp)s(ositions.)630 408 y(The)31
+(curren)m(t)f(signal)h(disp)s(ositions.)630 737 y(The)31
 b Ft(-P)g Fu(option)g(b)s(eha)m(v)m(es)h(similarly)-8
 b(,)33 b(but)e(displa)m(ys)g(only)g(the)h(actions)g(asso)s(ciated)h
-(with)630 518 y(eac)m(h)43 b Fr(sigsp)s(ec)k Fu(argumen)m(t.)74
+(with)630 847 y(eac)m(h)43 b Fr(sigsp)s(ec)k Fu(argumen)m(t.)74
 b Ft(-P)41 b Fu(requires)g(at)h(least)h(one)f Fr(sigsp)s(ec)47
-b Fu(argumen)m(t.)75 b(The)41 b Ft(-P)630 628 y Fu(or)34
+b Fu(argumen)m(t.)75 b(The)41 b Ft(-P)630 956 y Fu(or)34
 b Ft(-p)f Fu(options)h(to)g Ft(trap)e Fu(ma)m(y)j(b)s(e)e(used)g(in)g
 (a)h(subshell)f(en)m(vironmen)m(t)h(\(e.g.,)i(command)630
-737 y(substitution\))k(and,)j(as)d(long)h(as)g(they)g(are)f(used)g(b)s
+1066 y(substitution\))k(and,)j(as)d(long)h(as)g(they)g(are)f(used)g(b)s
 (efore)g Ft(trap)f Fu(is)h(used)g(to)h(c)m(hange)h(a)630
-847 y(signal's)31 b(handling,)f(will)h(displa)m(y)f(the)h(state)h(of)e
-(its)h(paren)m(t's)g(traps.)630 982 y(The)21 b Ft(-l)f
+1176 y(signal's)31 b(handling,)f(will)h(displa)m(y)f(the)h(state)h(of)e
+(its)h(paren)m(t's)g(traps.)630 1310 y(The)21 b Ft(-l)f
 Fu(option)i(causes)g Ft(trap)e Fu(to)i(prin)m(t)f(a)g(list)h(of)g
 (signal)g(names)f(and)g(their)g(corresp)s(onding)630
-1091 y(n)m(um)m(b)s(ers.)37 b(Eac)m(h)24 b Fr(sigsp)s(ec)30
+1420 y(n)m(um)m(b)s(ers.)37 b(Eac)m(h)24 b Fr(sigsp)s(ec)30
 b Fu(is)23 b(either)i(a)f(signal)g(name)g(or)f(a)h(signal)h(n)m(um)m(b)
-s(er.)37 b(Signal)24 b(names)630 1201 y(are)31 b(case)g(insensitiv)m(e)
+s(er.)37 b(Signal)24 b(names)630 1530 y(are)31 b(case)g(insensitiv)m(e)
 h(and)d(the)i Ft(SIG)e Fu(pre\014x)h(is)g(optional.)630
-1336 y(If)f(a)g Fr(sigsp)s(ec)35 b Fu(is)30 b Ft(0)f
+1665 y(If)f(a)g Fr(sigsp)s(ec)35 b Fu(is)30 b Ft(0)f
 Fu(or)g Ft(EXIT)p Fu(,)f Fr(action)j Fu(is)e(executed)h(when)f(the)g
 (shell)g(exits.)42 b(If)28 b(a)i Fr(sigsp)s(ec)35 b Fu(is)630
-1445 y Ft(DEBUG)p Fu(,)g Fr(action)g Fu(is)g(executed)h(b)s(efore)e(ev)
+1774 y Ft(DEBUG)p Fu(,)g Fr(action)g Fu(is)g(executed)h(b)s(efore)e(ev)
 m(ery)h(simple)g(command,)h Ft(for)d Fu(command,)j Ft(case)630
-1555 y Fu(command,)29 b Ft(select)d Fu(command,)j(\(\()g(arithmetic)h
-(command,)e([[)h(conditional)h(command,)630 1665 y(arithmetic)44
+1884 y Fu(command,)29 b Ft(select)d Fu(command,)j(\(\()g(arithmetic)h
+(command,)e([[)h(conditional)h(command,)630 1993 y(arithmetic)44
 b Ft(for)e Fu(command,)k(and)c(b)s(efore)g(the)h(\014rst)f(command)g
-(executes)i(in)f(a)g(shell)630 1774 y(function.)d(Refer)31
+(executes)i(in)f(a)g(shell)630 2103 y(function.)d(Refer)31
 b(to)g(the)f(description)h(of)f(the)h Ft(extdebug)d Fu(option)j(to)g
-(the)f Ft(shopt)f Fu(builtin)630 1884 y(\(see)35 b(Section)g(4.3.2)g
+(the)f Ft(shopt)f Fu(builtin)630 2212 y(\(see)35 b(Section)g(4.3.2)g
 ([The)f(Shopt)f(Builtin],)j(page)f(73\))g(for)f(details)h(of)f(its)g
-(e\013ect)i(on)e(the)630 1993 y Ft(DEBUG)25 b Fu(trap.)39
+(e\013ect)i(on)e(the)630 2322 y Ft(DEBUG)25 b Fu(trap.)39
 b(If)26 b(a)g Fr(sigsp)s(ec)32 b Fu(is)26 b Ft(RETURN)p
 Fu(,)g Fr(action)i Fu(is)e(executed)h(eac)m(h)g(time)g(a)g(shell)f
-(function)630 2103 y(or)k(a)h(script)f(executed)i(with)e(the)g
+(function)630 2432 y(or)k(a)h(script)f(executed)i(with)e(the)g
 Ft(.)g Fu(or)h Ft(source)d Fu(builtins)i(\014nishes)f(executing.)630
-2238 y(If)c(a)h Fr(sigsp)s(ec)31 b Fu(is)25 b Ft(ERR)p
+2567 y(If)c(a)h Fr(sigsp)s(ec)31 b Fu(is)25 b Ft(ERR)p
 Fu(,)h Fr(action)g Fu(is)g(executed)g(whenev)m(er)f(a)h(pip)s(eline)f
-(\(whic)m(h)g(ma)m(y)h(consist)g(of)630 2347 y(a)31 b(single)h(simple)f
+(\(whic)m(h)g(ma)m(y)h(consist)g(of)630 2676 y(a)31 b(single)h(simple)f
 (command\),)h(a)f(list,)h(or)f(a)h(comp)s(ound)d(command)i(returns)f(a)
-h(non-zero)630 2457 y(exit)e(status,)g(sub)5 b(ject)27
+h(non-zero)630 2786 y(exit)e(status,)g(sub)5 b(ject)27
 b(to)i(the)f(follo)m(wing)h(conditions.)40 b(The)28 b
-Ft(ERR)f Fu(trap)g(is)h(not)g(executed)h(if)630 2567
+Ft(ERR)f Fu(trap)g(is)h(not)g(executed)h(if)630 2895
 y(the)24 b(failed)h(command)e(is)h(part)g(of)g(the)g(command)g(list)h
-(immediately)g(follo)m(wing)h(an)d Ft(until)630 2676
+(immediately)g(follo)m(wing)h(an)d Ft(until)630 3005
 y Fu(or)h Ft(while)f Fu(k)m(eyw)m(ord,)j(part)e(of)g(the)g(test)h
 (follo)m(wing)h(the)e Ft(if)g Fu(or)g Ft(elif)f Fu(reserv)m(ed)h(w)m
-(ords,)h(part)630 2786 y(of)37 b(a)g(command)f(executed)i(in)e(a)h
+(ords,)h(part)630 3114 y(of)37 b(a)g(command)f(executed)i(in)e(a)h
 Ft(&&)f Fu(or)h Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m
-(wing)h(the)630 2895 y(\014nal)f Ft(&&)f Fu(or)h Ft(||)p
+(wing)h(the)630 3224 y(\014nal)f Ft(&&)f Fu(or)h Ft(||)p
 Fu(,)i(an)m(y)e(command)g(in)g(a)g(pip)s(eline)g(but)f(the)i(last,)i
-(or)d(if)g(the)g(command's)630 3005 y(return)31 b(status)i(is)f(b)s
+(or)d(if)g(the)g(command's)630 3334 y(return)31 b(status)i(is)f(b)s
 (eing)f(in)m(v)m(erted)i(using)f Ft(!)p Fu(.)46 b(These)32
-b(are)g(the)h(same)f(conditions)h(ob)s(ey)m(ed)630 3114
+b(are)g(the)h(same)f(conditions)h(ob)s(ey)m(ed)630 3443
 y(b)m(y)d(the)h Ft(errexit)d Fu(\()p Ft(-e)p Fu(\))j(option.)630
-3249 y(Signals)23 b(ignored)h(up)s(on)e(en)m(try)h(to)h(a)g(non-in)m
+3578 y(Signals)23 b(ignored)h(up)s(on)e(en)m(try)h(to)h(a)g(non-in)m
 (teractiv)m(e)i(shell)d(cannot)h(b)s(e)f(trapp)s(ed)f(or)h(reset.)630
-3359 y(In)m(teractiv)m(e)i(shells)d(p)s(ermit)f(trapping)h(signals)h
+3688 y(In)m(teractiv)m(e)i(shells)d(p)s(ermit)f(trapping)h(signals)h
 (ignored)f(on)g(en)m(try)-8 b(.)39 b(T)-8 b(rapp)s(ed)21
-b(signals)h(that)630 3469 y(are)30 b(not)g(b)s(eing)f(ignored)h(are)g
+b(signals)h(that)630 3797 y(are)30 b(not)g(b)s(eing)f(ignored)h(are)g
 (reset)g(to)g(their)g(original)g(v)-5 b(alues)30 b(in)g(a)g(subshell)e
-(or)i(subshell)630 3578 y(en)m(vironmen)m(t)h(when)e(one)i(is)f
-(created.)630 3713 y(The)g(return)f(status)i(is)f(zero)h(unless)f(a)h
+(or)i(subshell)630 3907 y(en)m(vironmen)m(t)h(when)e(one)i(is)f
+(created.)630 4042 y(The)g(return)f(status)i(is)f(zero)h(unless)f(a)h
 Fr(sigsp)s(ec)36 b Fu(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5
-b(alid)31 b(signal.)150 3873 y Ft(true)870 4008 y(true)630
-4143 y Fu(Do)s(es)g(nothing,)g(returns)e(a)h(0)h(status.)150
-4303 y Ft(umask)870 4438 y(umask)46 b([-p])h([-S])g([)p
-Fj(mode)p Ft(])630 4573 y Fu(Set)30 b(the)f(shell)h(pro)s(cess's)f
+b(alid)31 b(signal.)150 4202 y Ft(true)870 4337 y(true)630
+4472 y Fu(Do)s(es)g(nothing,)g(returns)e(a)h(0)h(status.)150
+4632 y Ft(umask)870 4767 y(umask)46 b([-p])h([-S])g([)p
+Fj(mode)p Ft(])630 4902 y Fu(Set)30 b(the)f(shell)h(pro)s(cess's)f
 (\014le)h(creation)g(mask)g(to)g Fr(mo)s(de)p Fu(.)40
 b(If)29 b Fr(mo)s(de)34 b Fu(b)s(egins)29 b(with)g(a)h(digit,)630
-4682 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s
+5011 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s
 (er;)e(if)g(not,)h(it)g(is)f(in)m(terpreted)g(as)g(a)h(sym)m(b)s(olic)f
-(mo)s(de)630 4792 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f
+(mo)s(de)630 5121 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f
 (the)g Ft(chmod)e Fu(command.)40 b(If)28 b Fr(mo)s(de)34
-b Fu(is)28 b(omitted,)j(the)630 4902 y(curren)m(t)39
+b Fu(is)28 b(omitted,)j(the)630 5230 y(curren)m(t)39
 b(v)-5 b(alue)40 b(of)f(the)g(mask)g(is)h(prin)m(ted.)66
 b(If)39 b(the)g Ft(-S)g Fu(option)g(is)h(supplied)d(without)j(a)630
-5011 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f
+5340 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f
 (in)g(a)g(sym)m(b)s(olic)h(format.)47 b(If)32 b(the)g
-Ft(-p)g Fu(option)h(is)630 5121 y(supplied,)f(and)f Fr(mo)s(de)37
-b Fu(is)32 b(omitted,)i(the)f(output)f(is)g(in)g(a)g(form)g(that)h(ma)m
-(y)g(b)s(e)e(reused)h(as)630 5230 y(input.)62 b(The)38
-b(return)f(status)h(is)g(zero)g(if)g(the)g(mo)s(de)g(is)g(successfully)
-g(c)m(hanged)g(or)g(if)g(no)630 5340 y Fr(mo)s(de)d Fu(argumen)m(t)c
-(is)f(supplied,)g(and)f(non-zero)i(otherwise.)p eop end
+Ft(-p)g Fu(option)h(is)p eop end
 %%Page: 57 63
 TeXDict begin 57 62 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y(Note)38
-b(that)e(when)g(the)g(mo)s(de)g(is)g(in)m(terpreted)h(as)f(an)g(o)s
-(ctal)i(n)m(um)m(b)s(er,)e(eac)m(h)i(n)m(um)m(b)s(er)d(of)630
-408 y(the)f(umask)g(is)h(subtracted)f(from)f Ft(7)p Fu(.)53
-b(Th)m(us,)34 b(a)h(umask)e(of)i Ft(022)e Fu(results)h(in)g(p)s
-(ermissions)630 518 y(of)d Ft(755)p Fu(.)150 664 y Ft(unset)870
-791 y(unset)46 b([-fnv])g([)p Fj(name)p Ft(])630 919
-y Fu(Remo)m(v)m(e)36 b(eac)m(h)f(v)-5 b(ariable)35 b(or)f(function)f
-Fr(name)p Fu(.)52 b(If)33 b(the)i Ft(-v)e Fu(option)h(is)g(giv)m(en,)j
-(eac)m(h)e Fr(name)630 1029 y Fu(refers)27 b(to)h(a)g(shell)f(v)-5
+b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y(supplied,)32
+b(and)f Fr(mo)s(de)37 b Fu(is)32 b(omitted,)i(the)f(output)f(is)g(in)g
+(a)g(form)g(that)h(ma)m(y)g(b)s(e)e(reused)h(as)630 408
+y(input.)62 b(The)38 b(return)f(status)h(is)g(zero)g(if)g(the)g(mo)s
+(de)g(is)g(successfully)g(c)m(hanged)g(or)g(if)g(no)630
+518 y Fr(mo)s(de)d Fu(argumen)m(t)c(is)f(supplied,)g(and)f(non-zero)i
+(otherwise.)630 648 y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in)m
+(terpreted)h(as)f(an)g(o)s(ctal)i(n)m(um)m(b)s(er,)e(eac)m(h)i(n)m(um)m
+(b)s(er)d(of)630 758 y(the)f(umask)g(is)h(subtracted)f(from)f
+Ft(7)p Fu(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Ft(022)e
+Fu(results)h(in)g(p)s(ermissions)630 867 y(of)d Ft(755)p
+Fu(.)150 1018 y Ft(unset)870 1148 y(unset)46 b([-fnv])g([)p
+Fj(name)p Ft(])630 1278 y Fu(Remo)m(v)m(e)36 b(eac)m(h)f(v)-5
+b(ariable)35 b(or)f(function)f Fr(name)p Fu(.)52 b(If)33
+b(the)i Ft(-v)e Fu(option)h(is)g(giv)m(en,)j(eac)m(h)e
+Fr(name)630 1388 y Fu(refers)27 b(to)h(a)g(shell)f(v)-5
 b(ariable)28 b(and)f(that)h(v)-5 b(ariable)28 b(is)f(remo)m(v)m(ed.)41
 b(If)27 b(the)g Ft(-f)g Fu(option)g(is)h(giv)m(en,)630
-1138 y(the)37 b Fr(name)5 b Fu(s)37 b(refer)f(to)i(shell)f(functions,)h
+1497 y(the)37 b Fr(name)5 b Fu(s)37 b(refer)f(to)i(shell)f(functions,)h
 (and)e(the)h(function)g(de\014nition)f(is)h(remo)m(v)m(ed.)61
-b(If)630 1248 y(the)34 b Ft(-n)e Fu(option)i(is)f(supplied,)h(and)e
+b(If)630 1607 y(the)34 b Ft(-n)e Fu(option)i(is)f(supplied,)h(and)e
 Fr(name)39 b Fu(is)33 b(a)h(v)-5 b(ariable)34 b(with)f(the)h
-Ft(nameref)d Fu(attribute,)630 1357 y Fr(name)42 b Fu(will)37
+Ft(nameref)d Fu(attribute,)630 1716 y Fr(name)42 b Fu(will)37
 b(b)s(e)f(unset)g(rather)g(than)h(the)g(v)-5 b(ariable)37
 b(it)g(references.)60 b Ft(-n)36 b Fu(has)g(no)h(e\013ect)h(if)630
-1467 y(the)h Ft(-f)g Fu(option)g(is)h(supplied.)65 b(If)39
+1826 y(the)h Ft(-f)g Fu(option)g(is)h(supplied.)65 b(If)39
 b(no)g(options)h(are)f(supplied,)h(eac)m(h)h Fr(name)j
-Fu(refers)39 b(to)h(a)630 1577 y(v)-5 b(ariable;)45 b(if)39
+Fu(refers)39 b(to)h(a)630 1936 y(v)-5 b(ariable;)45 b(if)39
 b(there)g(is)g(no)g(v)-5 b(ariable)40 b(b)m(y)f(that)h(name,)h(a)f
-(function)f(with)g(that)g(name,)j(if)630 1686 y(an)m(y)-8
+(function)f(with)g(that)g(name,)j(if)630 2045 y(an)m(y)-8
 b(,)34 b(is)e(unset.)46 b(Readonly)33 b(v)-5 b(ariables)33
 b(and)f(functions)g(ma)m(y)h(not)f(b)s(e)g(unset.)46
-b(Some)33 b(shell)630 1796 y(v)-5 b(ariables)29 b(lose)h(their)e(sp)s
+b(Some)33 b(shell)630 2155 y(v)-5 b(ariables)29 b(lose)h(their)e(sp)s
 (ecial)h(b)s(eha)m(vior)g(if)f(they)h(are)g(unset;)g(suc)m(h)f(b)s(eha)
-m(vior)h(is)g(noted)f(in)630 1905 y(the)35 b(description)h(of)f(the)g
+m(vior)h(is)g(noted)f(in)630 2264 y(the)35 b(description)h(of)f(the)g
 (individual)g(v)-5 b(ariables.)56 b(The)34 b(return)g(status)i(is)f
-(zero)h(unless)f(a)630 2015 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m
-(y)g(not)f(b)s(e)g(unset.)150 2242 y Fs(4.2)68 b(Bash)45
-b(Builtin)g(Commands)150 2401 y Fu(This)c(section)h(describ)s(es)f
+(zero)h(unless)f(a)630 2374 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m
+(y)g(not)f(b)s(e)g(unset.)150 2606 y Fs(4.2)68 b(Bash)45
+b(Builtin)g(Commands)150 2765 y Fu(This)c(section)h(describ)s(es)f
 (builtin)f(commands)h(whic)m(h)g(are)h(unique)e(to)j(or)e(ha)m(v)m(e)h
-(b)s(een)f(extended)g(in)150 2511 y(Bash.)g(Some)30 b(of)h(these)g
+(b)s(een)f(extended)g(in)150 2875 y(Bash.)g(Some)30 b(of)h(these)g
 (commands)f(are)g(sp)s(eci\014ed)g(in)g(the)h Fm(posix)e
-Fu(standard.)150 2657 y Ft(alias)870 2784 y(alias)46
+Fu(standard.)150 3025 y Ft(alias)870 3155 y(alias)46
 b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p Ft(])d(...)o(])630
-2912 y Fu(Without)26 b(argumen)m(ts)f(or)g(with)f(the)h
+3285 y Fu(Without)26 b(argumen)m(ts)f(or)g(with)f(the)h
 Ft(-p)g Fu(option,)h Ft(alias)e Fu(prin)m(ts)g(the)h(list)h(of)f
-(aliases)h(on)f(the)630 3022 y(standard)g(output)g(in)g(a)h(form)f
+(aliases)h(on)f(the)630 3395 y(standard)g(output)g(in)g(a)h(form)f
 (that)h(allo)m(ws)h(them)e(to)h(b)s(e)f(reused)g(as)g(input.)39
-b(If)25 b(argumen)m(ts)630 3131 y(are)j(supplied,)e(an)i(alias)g(is)f
+b(If)25 b(argumen)m(ts)630 3505 y(are)j(supplied,)e(an)i(alias)g(is)f
 (de\014ned)f(for)h(eac)m(h)h Fr(name)33 b Fu(whose)27
 b Fr(v)-5 b(alue)33 b Fu(is)27 b(giv)m(en.)41 b(If)26
-b(no)h Fr(v)-5 b(alue)630 3241 y Fu(is)37 b(giv)m(en,)j(the)d(name)g
+b(no)h Fr(v)-5 b(alue)630 3614 y Fu(is)37 b(giv)m(en,)j(the)d(name)g
 (and)g(v)-5 b(alue)37 b(of)h(the)f(alias)h(is)f(prin)m(ted.)61
-b(Aliases)38 b(are)f(describ)s(ed)f(in)630 3350 y(Section)31
-b(6.6)h([Aliases],)g(page)f(103.)150 3496 y Ft(bind)870
-3624 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lpsvPSVX])870
-3733 y(bind)i([-m)g Fj(keymap)p Ft(])e([-q)i Fj(function)p
+b(Aliases)38 b(are)f(describ)s(ed)f(in)630 3724 y(Section)31
+b(6.6)h([Aliases],)g(page)f(103.)150 3874 y Ft(bind)870
+4004 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lpsvPSVX])870
+4114 y(bind)i([-m)g Fj(keymap)p Ft(])e([-q)i Fj(function)p
 Ft(])f([-u)g Fj(function)p Ft(])g([-r)h Fj(keyseq)p Ft(])870
-3843 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870
-3953 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq[:)d
-(]shell-command)870 4062 y Ft(bind)i([-m)g Fj(keymap)p
-Ft(])e Fj(keyseq:function-name)870 4172 y Ft(bind)i([-m)g
-Fj(keymap)p Ft(])e Fj(keyseq:readline-command)870 4281
-y Ft(bind)i Fj(readline-command-line)630 4409 y Fu(Displa)m(y)22
+4224 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870
+4333 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq[:)d
+(]shell-command)870 4443 y Ft(bind)i([-m)g Fj(keymap)p
+Ft(])e Fj(keyseq:function-name)870 4552 y Ft(bind)i([-m)g
+Fj(keymap)p Ft(])e Fj(keyseq:readline-command)870 4662
+y Ft(bind)i Fj(readline-command-line)630 4792 y Fu(Displa)m(y)22
 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g(8)g([Command)f(Line)h
-(Editing],)j(page)e(122\))g(k)m(ey)630 4519 y(and)36
+(Editing],)j(page)e(122\))g(k)m(ey)630 4902 y(and)36
 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g(to)h(a)f
-(Readline)g(function)f(or)h(macro,)630 4628 y(or)44 b(set)h(a)g
+(Readline)g(function)f(or)h(macro,)630 5011 y(or)44 b(set)h(a)g
 (Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45 b(non-option)g(argumen)m(t)
-f(is)g(a)h(command)f(as)g(it)630 4738 y(w)m(ould)e(app)s(ear)f(in)h(a)h
+f(is)g(a)h(command)f(as)g(it)630 5121 y(w)m(ould)e(app)s(ear)f(in)h(a)h
 (Readline)g(initialization)i(\014le)d(\(see)h(Section)g(8.3)g
-([Readline)g(Init)630 4847 y(File],)c(page)d(125\),)j(but)c(eac)m(h)h
+([Readline)g(Init)630 5230 y(File],)c(page)d(125\),)j(but)c(eac)m(h)h
 (binding)f(or)g(command)h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)
-630 4957 y(argumen)m(t;)31 b(e.g.,)h(`)p Ft
-("\\C-x\\C-r":re-read-init-f)o(ile)p Fu('.)630 5085 y(Options,)e(if)h
-(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
-5230 y Ft(-m)e Fj(keymap)66 b Fu(Use)54 b Fr(k)m(eymap)j
-Fu(as)d(the)g(k)m(eymap)g(to)h(b)s(e)e(a\013ected)i(b)m(y)f(the)g
-(subsequen)m(t)1110 5340 y(bindings.)46 b(Acceptable)34
-b Fr(k)m(eymap)i Fu(names)c(are)h Ft(emacs)p Fu(,)f Ft(emacs-standard)p
-Fu(,)p eop end
+630 5340 y(argumen)m(t;)31 b(e.g.,)h(`)p Ft
+("\\C-x\\C-r":re-read-init-f)o(ile)p Fu('.)p eop end
 %%Page: 58 64
 TeXDict begin 58 63 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(58)1110 299 y
-Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p Fu(,)f Ft(vi)p
-Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p Fu(,)f(and)1110
-408 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44 b Fu(is)h(equiv)-5
-b(alen)m(t)46 b(to)g Ft(vi-command)c Fu(\()p Ft(vi-move)h
-Fu(is)i(also)h(a)1110 518 y(synon)m(ym\);)30 b Ft(emacs)f
-Fu(is)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(emacs-standard)p
-Fu(.)630 673 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
-(Readline)g(functions.)630 829 y Ft(-p)384 b Fu(Displa)m(y)34
+b(Shell)30 b(Builtin)h(Commands)2069 b(58)630 299 y(Options,)30
+b(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
+459 y Ft(-m)e Fj(keymap)66 b Fu(Use)54 b Fr(k)m(eymap)j
+Fu(as)d(the)g(k)m(eymap)g(to)h(b)s(e)e(a\013ected)i(b)m(y)f(the)g
+(subsequen)m(t)1110 569 y(bindings.)46 b(Acceptable)34
+b Fr(k)m(eymap)i Fu(names)c(are)h Ft(emacs)p Fu(,)f Ft(emacs-standard)p
+Fu(,)1110 678 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p
+Fu(,)f Ft(vi)p Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p
+Fu(,)f(and)1110 788 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44
+b Fu(is)h(equiv)-5 b(alen)m(t)46 b(to)g Ft(vi-command)c
+Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 897 y(synon)m(ym\);)30
+b Ft(emacs)f Fu(is)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(emacs-standard)p
+Fu(.)630 1058 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
+(Readline)g(functions.)630 1218 y Ft(-p)384 b Fu(Displa)m(y)34
 b(Readline)f(function)g(names)g(and)f(bindings)f(in)i(suc)m(h)f(a)i(w)m
-(a)m(y)f(that)1110 938 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
-(in)g(a)h(Readline)g(initialization)i(\014le.)630 1093
-y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
-(and)g(bindings.)630 1249 y Ft(-v)384 b Fu(Displa)m(y)25
+(a)m(y)f(that)1110 1327 y(they)h(can)g(b)s(e)f(used)f(as)i(an)g
+(argumen)m(t)g(to)g(a)g(subsequen)m(t)f Ft(bind)f Fu(command)1110
+1437 y(or)e(in)g(a)h(Readline)g(initialization)i(\014le.)630
+1597 y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f
+(names)g(and)g(bindings.)630 1757 y Ft(-v)384 b Fu(Displa)m(y)25
 b(Readline)f(v)-5 b(ariable)25 b(names)f(and)f(v)-5 b(alues)24
-b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 1358
-y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g
-(initialization)j(\014le.)630 1513 y Ft(-V)384 b Fu(List)31
+b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 1867
+y(can)33 b(b)s(e)e(used)h(as)g(an)g(argumen)m(t)h(to)g(a)f(subsequen)m
+(t)g Ft(bind)f Fu(command)h(or)g(in)1110 1976 y(a)f(Readline)g
+(initialization)i(\014le.)630 2137 y Ft(-V)384 b Fu(List)31
 b(curren)m(t)f(Readline)h(v)-5 b(ariable)31 b(names)f(and)g(v)-5
-b(alues.)630 1669 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g
+b(alues.)630 2297 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g
 (sequences)f(b)s(ound)f(to)i(macros)g(and)f(the)g(strings)1110
-1778 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g
-(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 1888
-y(Readline)d(initialization)i(\014le.)630 2043 y Ft(-S)384
+2406 y(they)e(output)f(in)g(suc)m(h)g(a)h(w)m(a)m(y)g(that)g(they)f
+(can)h(b)s(e)f(used)g(as)g(an)g(argumen)m(t)1110 2516
+y(to)d(a)g(subsequen)m(t)f Ft(bind)f Fu(command)h(or)g(in)g(a)h
+(Readline)g(initialization)i(\014le.)630 2676 y Ft(-S)384
 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i
-(macros)g(and)f(the)g(strings)1110 2153 y(they)31 b(output.)630
-2308 y Ft(-f)f Fj(filename)1110 2418 y Fu(Read)h(k)m(ey)g(bindings)e
-(from)h Fr(\014lename)p Fu(.)630 2573 y Ft(-q)g Fj(function)1110
-2682 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
-(the)f(named)f Fr(function)p Fu(.)630 2838 y Ft(-u)g
-Fj(function)1110 2947 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
-(the)f(named)g Fr(function)p Fu(.)630 3103 y Ft(-r)g
+(macros)g(and)f(the)g(strings)1110 2786 y(they)31 b(output.)630
+2946 y Ft(-f)f Fj(filename)1110 3055 y Fu(Read)h(k)m(ey)g(bindings)e
+(from)h Fr(\014lename)p Fu(.)630 3216 y Ft(-q)g Fj(function)1110
+3325 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
+(the)f(named)f Fr(function)p Fu(.)630 3485 y Ft(-u)g
+Fj(function)1110 3595 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
+(the)f(named)g Fr(function)p Fu(.)630 3755 y Ft(-r)g
 Fj(keyseq)66 b Fu(Remo)m(v)m(e)32 b(an)m(y)f(curren)m(t)f(binding)f
-(for)h Fr(k)m(eyseq)p Fu(.)630 3258 y Ft(-x)g Fj(keyseq:shell-command)
-1110 3367 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
+(for)h Fr(k)m(eyseq)p Fu(.)630 3915 y Ft(-x)g Fj(keyseq:shell-command)
+1110 4025 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
 (whenev)m(er)f Fr(k)m(eyseq)j Fu(is)d(en)m(tered.)1110
-3477 y(The)c(separator)i(b)s(et)m(w)m(een)g Fr(k)m(eyseq)i
+4134 y(The)c(separator)i(b)s(et)m(w)m(een)g Fr(k)m(eyseq)i
 Fu(and)c Fr(shell-command)36 b Fu(is)c(either)h(white-)1110
-3587 y(space)26 b(or)g(a)g(colon)h(optionally)g(follo)m(w)m(ed)g(b)m(y)
-e(whitespace.)40 b(If)25 b(the)h(separator)1110 3696
+4244 y(space)26 b(or)g(a)g(colon)h(optionally)g(follo)m(w)m(ed)g(b)m(y)
+e(whitespace.)40 b(If)25 b(the)h(separator)1110 4354
 y(is)40 b(whitespace,)i Fr(shell-command)i Fu(m)m(ust)39
-b(b)s(e)g(enclosed)h(in)f(double)g(quotes)1110 3806 y(and)30
+b(b)s(e)g(enclosed)h(in)f(double)g(quotes)1110 4463 y(and)30
 b(Readline)g(expands)g(an)m(y)g(of)h(its)f(sp)s(ecial)h(bac)m
-(kslash-escap)s(es)h(in)d Fr(shell-)1110 3915 y(command)47
+(kslash-escap)s(es)h(in)d Fr(shell-)1110 4573 y(command)47
 b Fu(b)s(efore)c(sa)m(ving)i(it.)80 b(If)43 b(the)h(separator)g(is)g(a)
-g(colon,)k(an)m(y)c(en-)1110 4025 y(closing)35 b(double)e(quotes)g(are)
+g(colon,)k(an)m(y)c(en-)1110 4682 y(closing)35 b(double)e(quotes)g(are)
 h(optional,)i(and)d(Readline)h(do)s(es)f(not)h(expand)1110
-4134 y(the)40 b(command)g(string)f(b)s(efore)h(sa)m(ving)g(it.)70
-b(Since)40 b(the)g(en)m(tire)g(k)m(ey)h(bind-)1110 4244
+4792 y(the)40 b(command)g(string)f(b)s(efore)h(sa)m(ving)g(it.)70
+b(Since)40 b(the)g(en)m(tire)g(k)m(ey)h(bind-)1110 4902
 y(ing)g(expression)g(m)m(ust)g(b)s(e)f(a)h(single)h(argumen)m(t,)i(it)e
-(should)e(b)s(e)g(enclosed)1110 4354 y(in)k(quotes.)85
+(should)e(b)s(e)g(enclosed)1110 5011 y(in)k(quotes.)85
 b(When)44 b Fr(shell-command)49 b Fu(is)44 b(executed,)50
-b(the)45 b(shell)g(sets)g(the)1110 4463 y Ft(READLINE_LINE)25
+b(the)45 b(shell)g(sets)g(the)1110 5121 y Ft(READLINE_LINE)25
 b Fu(v)-5 b(ariable)29 b(to)h(the)f(con)m(ten)m(ts)h(of)f(the)g
-(Readline)g(line)g(bu\013er)1110 4573 y(and)e(the)h Ft(READLINE_POINT)c
+(Readline)g(line)g(bu\013er)1110 5230 y(and)e(the)h Ft(READLINE_POINT)c
 Fu(and)j Ft(READLINE_MARK)d Fu(v)-5 b(ariables)29 b(to)f(the)g(cur-)
-1110 4682 y(ren)m(t)38 b(lo)s(cation)h(of)f(the)g(insertion)f(p)s(oin)m
-(t)h(and)f(the)h(sa)m(v)m(ed)g(insertion)g(p)s(oin)m(t)1110
-4792 y(\(the)c Fr(mark)6 b Fu(\),)34 b(resp)s(ectiv)m(ely)-8
-b(.)51 b(The)33 b(shell)g(assigns)h(an)m(y)f(n)m(umeric)g(argumen)m(t)
-1110 4902 y(the)28 b(user)f(supplied)f(to)j(the)f Ft(READLINE_ARGUMENT)
-23 b Fu(v)-5 b(ariable.)40 b(If)28 b(there)g(w)m(as)1110
-5011 y(no)39 b(argumen)m(t,)j(that)d(v)-5 b(ariable)40
+1110 5340 y(ren)m(t)38 b(lo)s(cation)h(of)f(the)g(insertion)f(p)s(oin)m
+(t)h(and)f(the)h(sa)m(v)m(ed)g(insertion)g(p)s(oin)m(t)p
+eop end
+%%Page: 59 65
+TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(59)1110 299 y(\(the)34
+b Fr(mark)6 b Fu(\),)34 b(resp)s(ectiv)m(ely)-8 b(.)51
+b(The)33 b(shell)g(assigns)h(an)m(y)f(n)m(umeric)g(argumen)m(t)1110
+408 y(the)28 b(user)f(supplied)f(to)j(the)f Ft(READLINE_ARGUMENT)23
+b Fu(v)-5 b(ariable.)40 b(If)28 b(there)g(w)m(as)1110
+518 y(no)39 b(argumen)m(t,)j(that)d(v)-5 b(ariable)40
 b(is)f(not)g(set.)68 b(If)38 b(the)h(executed)h(command)1110
-5121 y(c)m(hanges)e(the)e(v)-5 b(alue)37 b(of)g(an)m(y)g(of)g
+628 y(c)m(hanges)e(the)e(v)-5 b(alue)37 b(of)g(an)m(y)g(of)g
 Ft(READLINE_LINE)p Fu(,)d Ft(READLINE_POINT)p Fu(,)h(or)1110
-5230 y Ft(READLINE_MARK)p Fu(,)i(those)i(new)f(v)-5 b(alues)38
+737 y Ft(READLINE_MARK)p Fu(,)i(those)i(new)f(v)-5 b(alues)38
 b(will)h(b)s(e)f(re\015ected)h(in)f(the)g(editing)1110
-5340 y(state.)p eop end
-%%Page: 59 65
-TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(59)630 299 y Ft(-X)384
-b Fu(List)27 b(all)i(k)m(ey)f(sequences)f(b)s(ound)e(to)j(shell)g
-(commands)e(and)h(the)g(asso)s(ciated)1110 408 y(commands)j(in)g(a)h
-(format)g(that)f(can)h(b)s(e)f(reused)f(as)i(input.)630
-568 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i(in)m(v)-5
-b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s(ccurs.)150
-727 y Ft(builtin)870 862 y(builtin)46 b([)p Fj(shell-builtin)e
-Ft([)p Fj(args)p Ft(]])630 996 y Fu(Run)35 b(a)i(shell)f(builtin,)i
-(passing)e(it)h Fr(args)p Fu(,)h(and)e(return)f(its)i(exit)g(status.)59
-b(This)35 b(is)i(useful)630 1106 y(when)29 b(de\014ning)h(a)g(shell)h
-(function)f(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g
-(retaining)630 1215 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g
-(within)g(the)h(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630
-1325 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f
-(builtin)g(command.)150 1484 y Ft(caller)870 1619 y(caller)46
-b([)p Fj(expr)p Ft(])630 1753 y Fu(Returns)34 b(the)g(con)m(text)j(of)e
+847 y(state.)630 1014 y Ft(-X)384 b Fu(List)27 b(all)i(k)m(ey)f
+(sequences)f(b)s(ound)e(to)j(shell)g(commands)e(and)h(the)g(asso)s
+(ciated)1110 1124 y(commands)42 b(in)f(a)i(format)f(that)h(can)f(b)s(e)
+g(reused)f(as)h(an)g(argumen)m(t)h(to)g(a)1110 1233 y(subsequen)m(t)30
+b Ft(bind)f Fu(command.)630 1401 y(The)d(return)f(status)i(is)f(zero)i
+(unless)d(an)i(in)m(v)-5 b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f
+(error)g(o)s(ccurs.)150 1568 y Ft(builtin)870 1706 y(builtin)46
+b([)p Fj(shell-builtin)e Ft([)p Fj(args)p Ft(]])630 1845
+y Fu(Run)35 b(a)i(shell)f(builtin,)i(passing)e(it)h Fr(args)p
+Fu(,)h(and)e(return)f(its)i(exit)g(status.)59 b(This)35
+b(is)i(useful)630 1954 y(when)29 b(de\014ning)h(a)g(shell)h(function)f
+(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g(retaining)630
+2064 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g(within)g(the)h
+(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630
+2173 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f
+(builtin)g(command.)150 2341 y Ft(caller)870 2479 y(caller)46
+b([)p Fj(expr)p Ft(])630 2618 y Fu(Returns)34 b(the)g(con)m(text)j(of)e
 (an)m(y)g(activ)m(e)i(subroutine)c(call)j(\(a)f(shell)g(function)f(or)h
-(a)g(script)630 1863 y(executed)c(with)f(the)h Ft(.)f
-Fu(or)g Ft(source)f Fu(builtins\).)630 1998 y(Without)45
+(a)g(script)630 2727 y(executed)c(with)f(the)h Ft(.)f
+Fu(or)g Ft(source)f Fu(builtins\).)630 2866 y(Without)45
 b Fr(expr)p Fu(,)j Ft(caller)43 b Fu(displa)m(ys)i(the)f(line)h(n)m(um)
-m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 2107
+m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 2975
 y(curren)m(t)35 b(subroutine)g(call.)58 b(If)35 b(a)h(non-negativ)m(e)i
 (in)m(teger)f(is)f(supplied)e(as)i Fr(expr)p Fu(,)h Ft(caller)630
-2217 y Fu(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d
+3085 y Fu(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d
 (name,)44 b(and)c(source)g(\014le)h(corresp)s(onding)e(to)630
-2326 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g
+3194 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g
 (stac)m(k.)54 b(This)34 b(extra)h(information)g(ma)m(y)630
-2436 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m
+3304 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m
 (k)h(trace.)42 b(The)29 b(curren)m(t)i(frame)f(is)g(frame)h(0.)630
-2570 y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g
+3442 y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g
 (is)g(not)g(executing)h(a)f(subroutine)e(call)j(or)f
-Fr(expr)630 2680 y Fu(do)s(es)h(not)h(corresp)s(ond)e(to)i(a)g(v)-5
+Fr(expr)630 3552 y Fu(do)s(es)h(not)h(corresp)s(ond)e(to)i(a)g(v)-5
 b(alid)30 b(p)s(osition)h(in)f(the)g(call)i(stac)m(k.)150
-2839 y Ft(command)870 2974 y(command)46 b([-pVv])g Fj(command)g
-Ft([)p Fj(arguments)f Ft(...)o(])630 3108 y Fu(Runs)32
+3719 y Ft(command)870 3858 y(command)46 b([-pVv])g Fj(command)g
+Ft([)p Fj(arguments)f Ft(...)o(])630 3996 y Fu(Runs)32
 b Fr(command)k Fu(with)d Fr(argumen)m(ts)k Fu(ignoring)c(an)m(y)g
-(shell)h(function)e(named)h Fr(command)p Fu(.)630 3218
+(shell)h(function)e(named)h Fr(command)p Fu(.)630 4106
 y(Only)39 b(shell)i(builtin)e(commands)h(or)g(commands)f(found)g(b)m(y)
-h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 3328 y(executed.)59
+h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 4215 y(executed.)59
 b(If)36 b(there)h(is)f(a)h(shell)f(function)g(named)g
 Ft(ls)p Fu(,)h(running)e(`)p Ft(command)29 b(ls)p Fu(')35
-b(within)630 3437 y(the)c(function)f(will)h(execute)g(the)g(external)g
+b(within)630 4325 y(the)c(function)f(will)h(execute)g(the)g(external)g
 (command)g Ft(ls)f Fu(instead)g(of)h(calling)h(the)f(func-)630
-3547 y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b
+4434 y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b
 Ft(-p)h Fu(option)g(means)g(to)h(use)f(a)g(default)h(v)-5
-b(alue)35 b(for)g Ft(PATH)f Fu(that)i(is)630 3656 y(guaran)m(teed)f(to)
+b(alue)35 b(for)g Ft(PATH)f Fu(that)i(is)630 4544 y(guaran)m(teed)f(to)
 f(\014nd)e(all)j(of)f(the)g(standard)f(utilities.)52
-b(The)33 b(return)g(status)h(in)f(this)h(case)630 3766
+b(The)33 b(return)g(status)h(in)f(this)h(case)630 4654
 y(is)29 b(127)g(if)g Fr(command)j Fu(cannot)d(b)s(e)e(found)h(or)g(an)g
 (error)h(o)s(ccurred,)f(and)g(the)h(exit)g(status)g(of)630
-3875 y Fr(command)34 b Fu(otherwise.)630 4010 y(If)e(either)h(the)f
+4763 y Fr(command)34 b Fu(otherwise.)630 4902 y(If)e(either)h(the)f
 Ft(-V)g Fu(or)g Ft(-v)g Fu(option)h(is)f(supplied,)g(a)h(description)f
-(of)h Fr(command)j Fu(is)c(prin)m(ted.)630 4120 y(The)f
+(of)h Fr(command)j Fu(is)c(prin)m(ted.)630 5011 y(The)f
 Ft(-v)h Fu(option)g(causes)g(a)g(single)h(w)m(ord)f(indicating)g(the)g
-(command)g(or)g(\014le)g(name)g(used)630 4229 y(to)40
+(command)g(or)g(\014le)g(name)g(used)630 5121 y(to)40
 b(in)m(v)m(ok)m(e)h Fr(command)h Fu(to)e(b)s(e)e(displa)m(y)m(ed;)44
 b(the)39 b Ft(-V)f Fu(option)i(pro)s(duces)d(a)j(more)f(v)m(erb)s(ose)
-630 4339 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
+630 5230 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
 (status)h(is)g(zero)h(if)f Fr(command)k Fu(is)c(found,)h(and)630
-4448 y(non-zero)31 b(if)f(not.)150 4608 y Ft(declare)870
-4742 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p
-Ft([=)p Fj(value)p Ft(])d(...)o(])630 4877 y Fu(Declare)29
+5340 y(non-zero)31 b(if)f(not.)p eop end
+%%Page: 60 66
+TeXDict begin 60 65 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(60)150 299 y Ft(declare)870
+428 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p
+Ft([=)p Fj(value)p Ft(])d(...)o(])630 558 y Fu(Declare)29
 b(v)-5 b(ariables)28 b(and)e(giv)m(e)j(them)e(attributes.)40
 b(If)27 b(no)g Fr(name)5 b Fu(s)27 b(are)h(giv)m(en,)h(then)e(displa)m
-(y)630 4986 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
-b(instead.)630 5121 y(The)k Ft(-p)f Fu(option)i(will)g(displa)m(y)f
-(the)h(attributes)g(and)e(v)-5 b(alues)36 b(of)f(eac)m(h)i
-Fr(name)p Fu(.)55 b(When)36 b Ft(-p)630 5230 y Fu(is)i(used)g(with)g
+(y)630 667 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
+b(instead.)630 797 y(The)k Ft(-p)f Fu(option)i(will)g(displa)m(y)f(the)
+h(attributes)g(and)e(v)-5 b(alues)36 b(of)f(eac)m(h)i
+Fr(name)p Fu(.)55 b(When)36 b Ft(-p)630 907 y Fu(is)i(used)g(with)g
 Fr(name)43 b Fu(argumen)m(ts,)e(additional)e(options,)i(other)d(than)g
-Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 5340 y(ignored.)p
-eop end
-%%Page: 60 66
-TeXDict begin 60 65 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(60)630 299 y(When)40
-b Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k Fu(argumen)m(ts,)f
-Ft(declare)38 b Fu(will)j(displa)m(y)f(the)h(at-)630
-408 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
+Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 1016 y(ignored.)630
+1146 y(When)g Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k
+Fu(argumen)m(ts,)f Ft(declare)38 b Fu(will)j(displa)m(y)f(the)h(at-)630
+1255 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
 b(ariables)31 b(ha)m(ving)h(the)f(attributes)g(sp)s(eci\014ed)f(b)m(y)h
-(the)g(addi-)630 518 y(tional)k(options.)52 b(If)34 b(no)g(other)g
-(options)g(are)g(supplied)f(with)h Ft(-p)p Fu(,)g Ft(declare)e
-Fu(will)j(displa)m(y)630 628 y(the)e(attributes)h(and)e(v)-5
-b(alues)33 b(of)g(all)h(shell)f(v)-5 b(ariables.)50 b(The)32
-b Ft(-f)g Fu(option)i(will)f(restrict)h(the)630 737 y(displa)m(y)d(to)g
-(shell)f(functions.)630 877 y(The)41 b Ft(-F)f Fu(option)i(inhibits)e
-(the)i(displa)m(y)f(of)g(function)g(de\014nitions;)47
-b(only)41 b(the)g(function)630 986 y(name)30 b(and)f(attributes)i(are)f
-(prin)m(ted.)40 b(If)30 b(the)g Ft(extdebug)e Fu(shell)i(option)g(is)g
-(enabled)g(using)630 1096 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i
-([The)d(Shopt)f(Builtin],)k(page)e(73\),)i(the)d(source)h(\014le)f
-(name)h(and)630 1205 y(line)31 b(n)m(um)m(b)s(er)e(where)h(eac)m(h)h
+(the)g(addi-)630 1365 y(tional)k(options.)52 b(If)34
+b(no)g(other)g(options)g(are)g(supplied)f(with)h Ft(-p)p
+Fu(,)g Ft(declare)e Fu(will)j(displa)m(y)630 1474 y(the)e(attributes)h
+(and)e(v)-5 b(alues)33 b(of)g(all)h(shell)f(v)-5 b(ariables.)50
+b(The)32 b Ft(-f)g Fu(option)i(will)f(restrict)h(the)630
+1584 y(displa)m(y)d(to)g(shell)f(functions.)630 1714
+y(The)41 b Ft(-F)f Fu(option)i(inhibits)e(the)i(displa)m(y)f(of)g
+(function)g(de\014nitions;)47 b(only)41 b(the)g(function)630
+1823 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
+b(If)30 b(the)g Ft(extdebug)e Fu(shell)i(option)g(is)g(enabled)g(using)
+630 1933 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
+(Builtin],)k(page)e(73\),)i(the)d(source)h(\014le)f(name)h(and)630
+2042 y(line)31 b(n)m(um)m(b)s(er)e(where)h(eac)m(h)h
 Fr(name)36 b Fu(is)30 b(de\014ned)f(are)i(displa)m(y)m(ed)g(as)g(w)m
-(ell.)41 b Ft(-F)30 b Fu(implies)h Ft(-f)p Fu(.)630 1345
+(ell.)41 b Ft(-F)30 b Fu(implies)h Ft(-f)p Fu(.)630 2172
 y(The)36 b Ft(-g)g Fu(option)h(forces)g(v)-5 b(ariables)37
 b(to)g(b)s(e)f(created)i(or)e(mo)s(di\014ed)g(at)h(the)g(global)h(scop)
-s(e,)630 1455 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f
+s(e,)630 2281 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f
 (a)g(shell)h(function.)61 b(It)37 b(is)g(ignored)h(in)f(all)h(other)630
-1564 y(cases.)630 1704 y(The)50 b Ft(-I)h Fu(option)g(causes)h(lo)s
+2391 y(cases.)630 2521 y(The)50 b Ft(-I)h Fu(option)g(causes)h(lo)s
 (cal)g(v)-5 b(ariables)51 b(to)h(inherit)f(the)g(attributes)g(\(except)
-i(the)630 1813 y Ft(nameref)43 b Fu(attribute\))j(and)f(v)-5
+i(the)630 2630 y Ft(nameref)43 b Fu(attribute\))j(and)f(v)-5
 b(alue)46 b(of)f(an)m(y)h(existing)g(v)-5 b(ariable)46
-b(with)f(the)g(same)h Fr(name)630 1923 y Fu(at)40 b(a)f(surrounding)d
+b(with)f(the)g(same)h Fr(name)630 2740 y Fu(at)40 b(a)f(surrounding)d
 (scop)s(e.)66 b(If)39 b(there)g(is)g(no)f(existing)i(v)-5
 b(ariable,)42 b(the)d(lo)s(cal)h(v)-5 b(ariable)40 b(is)630
-2032 y(initially)32 b(unset.)630 2172 y(The)27 b(follo)m(wing)h
+2849 y(initially)32 b(unset.)630 2979 y(The)27 b(follo)m(wing)h
 (options)g(can)f(b)s(e)g(used)f(to)i(restrict)g(output)e(to)i(v)-5
-b(ariables)28 b(with)f(the)g(sp)s(ec-)630 2281 y(i\014ed)j(attributes)h
+b(ariables)28 b(with)f(the)g(sp)s(ec-)630 3088 y(i\014ed)j(attributes)h
 (or)f(to)h(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630
-2451 y Ft(-a)384 b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34
+3238 y Ft(-a)384 b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34
 b(an)h(indexed)g(arra)m(y)g(v)-5 b(ariable)36 b(\(see)f(Section)h(6.7)g
-([Arra)m(ys],)1110 2560 y(page)31 b(103\).)630 2730 y
+([Arra)m(ys],)1110 3347 y(page)31 b(103\).)630 3497 y
 Ft(-A)384 b Fu(Eac)m(h)24 b Fr(name)k Fu(is)23 b(an)g(asso)s(ciativ)m
 (e)j(arra)m(y)e(v)-5 b(ariable)24 b(\(see)g(Section)g(6.7)g([Arra)m
-(ys],)1110 2839 y(page)31 b(103\).)630 3009 y Ft(-f)384
-b Fu(Use)31 b(function)f(names)g(only)-8 b(.)630 3178
+(ys],)1110 3606 y(page)31 b(103\).)630 3756 y Ft(-f)384
+b Fu(Use)31 b(function)f(names)g(only)-8 b(.)630 3905
 y Ft(-i)384 b Fu(The)36 b(v)-5 b(ariable)37 b(is)f(to)h(b)s(e)f
 (treated)h(as)g(an)f(in)m(teger;)41 b(arithmetic)c(ev)-5
-b(aluation)1110 3288 y(\(see)41 b(Section)f(6.5)h([Shell)e
+b(aluation)1110 4015 y(\(see)41 b(Section)f(6.5)h([Shell)e
 (Arithmetic],)44 b(page)c(101\))h(is)f(p)s(erformed)e(when)1110
-3397 y(the)31 b(v)-5 b(ariable)31 b(is)f(assigned)h(a)f(v)-5
-b(alue.)630 3567 y Ft(-l)384 b Fu(When)26 b(the)g(v)-5
+4125 y(the)31 b(v)-5 b(ariable)31 b(is)f(assigned)h(a)f(v)-5
+b(alue.)630 4274 y Ft(-l)384 b Fu(When)26 b(the)g(v)-5
 b(ariable)27 b(is)f(assigned)g(a)g(v)-5 b(alue,)28 b(all)f(upp)s
-(er-case)e(c)m(haracters)j(are)1110 3676 y(con)m(v)m(erted)k(to)f(lo)m
+(er-case)e(c)m(haracters)j(are)1110 4384 y(con)m(v)m(erted)k(to)f(lo)m
 (w)m(er-case.)43 b(The)30 b(upp)s(er-case)g(attribute)h(is)g(disabled.)
-630 3846 y Ft(-n)384 b Fu(Giv)m(e)28 b(eac)m(h)g Fr(name)k
+630 4533 y Ft(-n)384 b Fu(Giv)m(e)28 b(eac)m(h)g Fr(name)k
 Fu(the)27 b Ft(nameref)d Fu(attribute,)29 b(making)e(it)g(a)g(name)f
-(reference)1110 3955 y(to)32 b(another)g(v)-5 b(ariable.)46
+(reference)1110 4643 y(to)32 b(another)g(v)-5 b(ariable.)46
 b(That)31 b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g
-(v)-5 b(alue)32 b(of)1110 4065 y Fr(name)p Fu(.)54 b(All)35
+(v)-5 b(alue)32 b(of)1110 4752 y Fr(name)p Fu(.)54 b(All)35
 b(references,)h(assignmen)m(ts,)h(and)d(attribute)h(mo)s(di\014cations)
-g(to)1110 4174 y Fr(name)p Fu(,)27 b(except)f(for)f(those)h(using)f(or)
+g(to)1110 4862 y Fr(name)p Fu(,)27 b(except)f(for)f(those)h(using)f(or)
 g(c)m(hanging)h(the)f Ft(-n)g Fu(attribute)h(itself,)i(are)1110
-4284 y(p)s(erformed)22 b(on)h(the)g(v)-5 b(ariable)25
+4971 y(p)s(erformed)22 b(on)h(the)g(v)-5 b(ariable)25
 b(referenced)e(b)m(y)g Fr(name)5 b Fu('s)23 b(v)-5 b(alue.)39
-b(The)23 b(nameref)1110 4394 y(attribute)31 b(cannot)g(b)s(e)f(applied)
-g(to)h(arra)m(y)g(v)-5 b(ariables.)630 4563 y Ft(-r)384
+b(The)23 b(nameref)1110 5081 y(attribute)31 b(cannot)g(b)s(e)f(applied)
+g(to)h(arra)m(y)g(v)-5 b(ariables.)630 5230 y Ft(-r)384
 b Fu(Mak)m(e)25 b Fr(name)5 b Fu(s)23 b(readonly)-8 b(.)39
 b(These)24 b(names)f(cannot)h(then)f(b)s(e)g(assigned)h(v)-5
-b(alues)1110 4672 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h
-(statemen)m(ts)h(or)f(unset.)630 4842 y Ft(-t)384 b Fu(Giv)m(e)33
-b(eac)m(h)h Fr(name)j Fu(the)32 b Ft(trace)f Fu(attribute.)46
-b(T)-8 b(raced)32 b(functions)g(inherit)g(the)1110 4951
-y Ft(DEBUG)26 b Fu(and)h Ft(RETURN)f Fu(traps)h(from)g(the)h(calling)h
-(shell.)40 b(The)27 b(trace)i(attribute)1110 5061 y(has)h(no)g(sp)s
-(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 5230 y
-Ft(-u)384 b Fu(When)28 b(the)h(v)-5 b(ariable)29 b(is)f(assigned)h(a)f
-(v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m(haracters)f(are)1110
-5340 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40 b(The)30
-b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)p eop
-end
+b(alues)1110 5340 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h
+(statemen)m(ts)h(or)f(unset.)p eop end
 %%Page: 61 67
 TeXDict begin 61 66 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y Ft(-x)384
-b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29 b(exp)s(ort)h(to)g
-(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
-408 y(ronmen)m(t.)630 560 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g(`)
-p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
-(the)g(exceptions)h(that)630 670 y(`)p Ft(+a)p Fu(')23
+b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y Ft(-t)384
+b Fu(Giv)m(e)33 b(eac)m(h)h Fr(name)j Fu(the)32 b Ft(trace)f
+Fu(attribute.)46 b(T)-8 b(raced)32 b(functions)g(inherit)g(the)1110
+408 y Ft(DEBUG)26 b Fu(and)h Ft(RETURN)f Fu(traps)h(from)g(the)h
+(calling)h(shell.)40 b(The)27 b(trace)i(attribute)1110
+518 y(has)h(no)g(sp)s(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630
+676 y Ft(-u)384 b Fu(When)28 b(the)h(v)-5 b(ariable)29
+b(is)f(assigned)h(a)f(v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m
+(haracters)f(are)1110 786 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40
+b(The)30 b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630
+944 y Ft(-x)384 b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29
+b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
+1054 y(ronmen)m(t.)630 1212 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g
+(`)p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
+(the)g(exceptions)h(that)630 1322 y(`)p Ft(+a)p Fu(')23
 b(and)f(`)p Ft(+A)p Fu(')h(ma)m(y)h(not)f(b)s(e)f(used)g(to)i(destro)m
 (y)g(arra)m(y)f(v)-5 b(ariables)24 b(and)e(`)p Ft(+r)p
-Fu(')h(will)g(not)g(remo)m(v)m(e)630 780 y(the)36 b(readonly)h
+Fu(')h(will)g(not)g(remo)m(v)m(e)630 1431 y(the)36 b(readonly)h
 (attribute.)59 b(When)36 b(used)f(in)h(a)h(function,)g
-Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 889
+Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 1541
 y Fu(lo)s(cal,)e(as)d(with)h(the)f Ft(local)f Fu(command,)j(unless)d
 (the)i Ft(-g)f Fu(option)h(is)f(used.)49 b(If)33 b(a)h(v)-5
-b(ariable)630 999 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)p
+b(ariable)630 1650 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)p
 Fr(v)-5 b(alue)p Fu(,)31 b(the)f(v)-5 b(alue)31 b(of)g(the)f(v)-5
 b(ariable)32 b(is)e(set)h(to)g Fr(v)-5 b(alue)p Fu(.)630
-1130 y(When)41 b(using)g Ft(-a)g Fu(or)h Ft(-A)e Fu(and)h(the)h(comp)s
+1784 y(When)41 b(using)g Ft(-a)g Fu(or)h Ft(-A)e Fu(and)h(the)h(comp)s
 (ound)e(assignmen)m(t)i(syn)m(tax)g(to)g(create)h(arra)m(y)630
-1239 y(v)-5 b(ariables,)28 b(additional)f(attributes)g(do)f(not)h(tak)m
+1894 y(v)-5 b(ariables,)28 b(additional)f(attributes)g(do)f(not)h(tak)m
 (e)h(e\013ect)g(un)m(til)e(subsequen)m(t)g(assignmen)m(ts.)630
-1370 y(The)35 b(return)f(status)i(is)g(zero)g(unless)f(an)g(in)m(v)-5
+2028 y(The)35 b(return)f(status)i(is)g(zero)g(unless)f(an)g(in)m(v)-5
 b(alid)36 b(option)g(is)g(encoun)m(tered,)h(an)f(attempt)630
-1480 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f(`)p
+2138 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f(`)p
 Ft(-f)f(foo=bar)p Fu(',)h(an)h(attempt)g(is)g(made)g(to)h(assign)630
-1589 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5
+2247 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5
 b(ariable,)47 b(an)42 b(attempt)h(is)f(made)g(to)h(assign)f(a)h(v)-5
-b(alue)42 b(to)h(an)630 1699 y(arra)m(y)30 b(v)-5 b(ariable)30
+b(alue)42 b(to)h(an)630 2357 y(arra)m(y)30 b(v)-5 b(ariable)30
 b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m(t)i(syn)m(tax)g
-(\(see)h(Section)f(6.7)630 1808 y([Arra)m(ys],)43 b(page)d(103\),)k
+(\(see)h(Section)f(6.7)630 2466 y([Arra)m(ys],)43 b(page)d(103\),)k
 (one)c(of)g(the)g Fr(name)5 b Fu(s)40 b(is)f(not)h(a)g(v)-5
 b(alid)40 b(shell)g(v)-5 b(ariable)41 b(name,)h(an)630
-1918 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g
+2576 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g
 (for)g(a)h(readonly)f(v)-5 b(ariable,)29 b(an)e(attempt)630
-2028 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g
+2685 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g
 (arra)m(y)h(v)-5 b(ariable,)30 b(or)e(an)g(attempt)i(is)e(made)g(to)630
-2137 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g
-Ft(-f)p Fu(.)150 2289 y Ft(echo)870 2420 y(echo)47 b([-neE])f([)p
-Fj(arg)g Ft(...])630 2551 y Fu(Output)31 b(the)i Fr(arg)8
+2795 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g
+Ft(-f)p Fu(.)150 2953 y Ft(echo)870 3087 y(echo)47 b([-neE])f([)p
+Fj(arg)g Ft(...])630 3221 y Fu(Output)31 b(the)i Fr(arg)8
 b Fu(s,)33 b(separated)g(b)m(y)g(spaces,)g(terminated)g(with)f(a)h
-(newline.)47 b(The)32 b(return)630 2660 y(status)f(is)f(0)h(unless)f(a)
+(newline.)47 b(The)32 b(return)630 3331 y(status)f(is)f(0)h(unless)f(a)
 h(write)g(error)f(o)s(ccurs.)41 b(If)30 b Ft(-n)g Fu(is)h(sp)s
-(eci\014ed,)f(the)h(trailing)g(newline)g(is)630 2770
+(eci\014ed,)f(the)h(trailing)g(newline)g(is)630 3440
 y(suppressed.)38 b(If)29 b(the)h Ft(-e)f Fu(option)h(is)f(giv)m(en,)i
 (in)m(terpretation)g(of)e(the)h(follo)m(wing)h(bac)m(kslash-)630
-2880 y(escap)s(ed)22 b(c)m(haracters)i(is)e(enabled.)38
+3550 y(escap)s(ed)22 b(c)m(haracters)i(is)e(enabled.)38
 b(The)21 b Ft(-E)h Fu(option)g(disables)g(the)h(in)m(terpretation)g(of)
-f(these)630 2989 y(escap)s(e)30 b(c)m(haracters,)i(ev)m(en)f(on)e
+f(these)630 3660 y(escap)s(e)30 b(c)m(haracters,)i(ev)m(en)f(on)e
 (systems)h(where)g(they)g(are)g(in)m(terpreted)g(b)m(y)g(default.)40
-b(The)630 3099 y Ft(xpg_echo)33 b Fu(shell)i(option)h(ma)m(y)f(b)s(e)g
+b(The)630 3769 y Ft(xpg_echo)33 b Fu(shell)i(option)h(ma)m(y)f(b)s(e)g
 (used)f(to)i(dynamically)g(determine)f(whether)g(or)g(not)630
-3208 y Ft(echo)j Fu(in)m(terprets)i(an)m(y)f(options)h(and)f(expands)f
+3879 y Ft(echo)j Fu(in)m(terprets)i(an)m(y)f(options)h(and)f(expands)f
 (these)i(escap)s(e)g(c)m(haracters)g(b)m(y)f(default.)630
-3318 y Ft(echo)29 b Fu(do)s(es)h(not)h(in)m(terpret)g
+3988 y Ft(echo)29 b Fu(do)s(es)h(not)h(in)m(terpret)g
 Ft(--)e Fu(to)j(mean)e(the)h(end)e(of)i(options.)630
-3449 y Ft(echo)e Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
-(sequences:)630 3601 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630
-3753 y Ft(\\b)384 b Fu(bac)m(kspace)630 3905 y Ft(\\c)g
-Fu(suppress)28 b(further)h(output)630 4057 y Ft(\\e)630
-4166 y(\\E)384 b Fu(escap)s(e)630 4318 y Ft(\\f)g Fu(form)30
-b(feed)630 4470 y Ft(\\n)384 b Fu(new)30 b(line)630 4622
-y Ft(\\r)384 b Fu(carriage)32 b(return)630 4774 y Ft(\\t)384
-b Fu(horizon)m(tal)32 b(tab)630 4926 y Ft(\\v)384 b Fu(v)m(ertical)32
-b(tab)630 5078 y Ft(\\\\)384 b Fu(bac)m(kslash)630 5230
-y Ft(\\0)p Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g
-(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5
-b(alue)32 b Fr(nnn)f Fu(\(zero)i(to)1110 5340 y(three)e(o)s(ctal)g
-(digits\))p eop end
+4122 y Ft(echo)e Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
+(sequences:)630 4281 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630
+4439 y Ft(\\b)384 b Fu(bac)m(kspace)630 4597 y Ft(\\c)g
+Fu(suppress)28 b(further)h(output)630 4756 y Ft(\\e)630
+4865 y(\\E)384 b Fu(escap)s(e)630 5023 y Ft(\\f)g Fu(form)30
+b(feed)630 5182 y Ft(\\n)384 b Fu(new)30 b(line)630 5340
+y Ft(\\r)384 b Fu(carriage)32 b(return)p eop end
 %%Page: 62 68
 TeXDict begin 62 67 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(62)630 299 y Ft(\\x)p
-Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e(v)-5
-b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39 b
-Fr(HH)1110 408 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
-573 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41 b(Unico)s(de)g(\(ISO/IEC)f
-(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41 b(is)g(the)g(hex-)1110
-682 y(adecimal)32 b(v)-5 b(alue)31 b Fr(HHHH)41 b Fu(\(one)31
-b(to)g(four)e(hex)h(digits\))630 847 y Ft(\\U)p Fj(HHHHHHHH)1110
-956 y Fu(the)41 b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g
-(whose)e(v)-5 b(alue)41 b(is)g(the)g(hex-)1110 1066 y(adecimal)32
-b(v)-5 b(alue)31 b Fr(HHHHHHHH)41 b Fu(\(one)31 b(to)g(eigh)m(t)h(hex)e
-(digits\))150 1230 y Ft(enable)870 1367 y(enable)46 b([-a])h([-dnps])f
-([-f)g Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630
-1504 y Fu(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56
+b(Shell)30 b(Builtin)h(Commands)2069 b(62)630 299 y Ft(\\t)384
+b Fu(horizon)m(tal)32 b(tab)630 472 y Ft(\\v)384 b Fu(v)m(ertical)32
+b(tab)630 646 y Ft(\\\\)384 b Fu(bac)m(kslash)630 819
+y Ft(\\0)p Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g
+(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5
+b(alue)32 b Fr(nnn)f Fu(\(zero)i(to)1110 929 y(three)e(o)s(ctal)g
+(digits\))630 1103 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)
+m(haracter)g(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5
+b(alue)39 b Fr(HH)1110 1212 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
+(digits\))630 1386 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41
+b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5
+b(alue)41 b(is)g(the)g(hex-)1110 1495 y(adecimal)32 b(v)-5
+b(alue)31 b Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)e(hex)h(digits\))630
+1669 y Ft(\\U)p Fj(HHHHHHHH)1110 1778 y Fu(the)41 b(Unico)s(de)g
+(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41
+b(is)g(the)g(hex-)1110 1888 y(adecimal)32 b(v)-5 b(alue)31
+b Fr(HHHHHHHH)41 b Fu(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))150
+2061 y Ft(enable)870 2203 y(enable)46 b([-a])h([-dnps])f([-f)g
+Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 2345
+y Fu(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56
 b(Disabling)37 b(a)g(builtin)e(allo)m(ws)i(a)f(disk)630
-1614 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h
-(builtin)e(to)i(b)s(e)f(executed)h(without)630 1724 y(sp)s(ecifying)27
+2454 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h
+(builtin)e(to)i(b)s(e)f(executed)h(without)630 2564 y(sp)s(ecifying)27
 b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)g(shell)g(normally)g
-(searc)m(hes)h(for)f(builtins)630 1833 y(b)s(efore)35
+(searc)m(hes)h(for)f(builtins)630 2673 y(b)s(efore)35
 b(disk)g(commands.)55 b(If)35 b Ft(-n)g Fu(is)g(used,)h(the)g
 Fr(name)5 b Fu(s)35 b(b)s(ecome)h(disabled.)55 b(Otherwise)630
-1943 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8
+2783 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8
 b(or)45 b(example,)k(to)c(use)f(the)g Ft(test)f Fu(binary)h(found)f
-(via)h Ft($PATH)630 2052 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g
+(via)h Ft($PATH)630 2892 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g
 (v)m(ersion,)h(t)m(yp)s(e)g(`)p Ft(enable)e(-n)h(test)p
-Fu('.)630 2189 y(If)45 b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or)
+Fu('.)630 3034 y(If)45 b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or)
 d(no)g Fr(name)51 b Fu(argumen)m(ts)46 b(app)s(ear,)k(a)c(list)h(of)f
-(shell)630 2299 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38
+(shell)630 3144 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38
 b(no)f(other)h(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h
-(enabled)630 2408 y(shell)d(builtins.)57 b(The)35 b Ft(-a)h
+(enabled)630 3253 y(shell)d(builtins.)57 b(The)35 b Ft(-a)h
 Fu(option)g(means)g(to)g(list)h(eac)m(h)g(builtin)f(with)f(an)h
-(indication)h(of)630 2518 y(whether)30 b(or)g(not)h(it)g(is)f(enabled.)
-630 2655 y(The)22 b Ft(-f)f Fu(option)h(means)g(to)h(load)g(the)f(new)g
+(indication)h(of)630 3363 y(whether)30 b(or)g(not)h(it)g(is)f(enabled.)
+630 3504 y(The)22 b Ft(-f)f Fu(option)h(means)g(to)h(load)g(the)f(new)g
 (builtin)f(command)h Fr(name)27 b Fu(from)22 b(shared)f(ob)5
-b(ject)630 2765 y Fr(\014lename)p Fu(,)31 b(on)f(systems)g(that)h(supp)
-s(ort)e(dynamic)h(loading.)41 b(Bash)31 b(will)f(use)g(the)h(v)-5
-b(alue)31 b(of)630 2874 y(the)39 b Ft(BASH_LOADABLES_PATH)34
-b Fu(v)-5 b(ariable)40 b(as)f(a)h(colon-separated)h(list)f(of)f
-(directories)h(in)630 2984 y(whic)m(h)31 b(to)h(searc)m(h)g(for)f
-Fr(\014lename)p Fu(.)44 b(The)31 b(default)g(is)h(system-dep)s(enden)m
-(t.)43 b(The)31 b Ft(-d)f Fu(option)630 3093 y(will)h(delete)g(a)g
-(builtin)f(loaded)h(with)f Ft(-f)p Fu(.)630 3230 y(If)j(there)i(are)f
-(no)g(options,)h(a)f(list)h(of)f(the)g(shell)g(builtins)g(is)g(displa)m
-(y)m(ed.)52 b(The)33 b Ft(-s)g Fu(option)630 3340 y(restricts)j
-Ft(enable)d Fu(to)j(the)f Fm(posix)f Fu(sp)s(ecial)i(builtins.)54
-b(If)34 b Ft(-s)h Fu(is)g(used)f(with)g Ft(-f)p Fu(,)i(the)f(new)630
-3450 y(builtin)30 b(b)s(ecomes)h(a)f(sp)s(ecial)h(builtin)f(\(see)i
-(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g(79\).)630
-3587 y(If)24 b(no)g(options)h(are)g(supplied)e(and)h(a)h
-Fr(name)k Fu(is)c(not)f(a)h(shell)g(builtin,)g Ft(enable)e
-Fu(will)i(attempt)630 3696 y(to)c(load)g Fr(name)26 b
-Fu(from)20 b(a)g(shared)g(ob)5 b(ject)21 b(named)f Fr(name)p
-Fu(,)j(as)d(if)h(the)f(command)h(w)m(ere)f(`)p Ft(enable)630
-3806 y(-f)30 b Fj(name)f(name)p Fu('.)630 3943 y(The)d(return)f(status)
-h(is)g(zero)h(unless)e(a)i Fr(name)k Fu(is)26 b(not)g(a)h(shell)f
-(builtin)g(or)g(there)g(is)g(an)g(error)630 4052 y(loading)31
-b(a)g(new)f(builtin)g(from)g(a)g(shared)g(ob)5 b(ject.)150
-4217 y Ft(help)870 4354 y(help)47 b([-dms])f([)p Fj(pattern)p
-Ft(])630 4491 y Fu(Displa)m(y)40 b(helpful)e(information)h(ab)s(out)g
-(builtin)f(commands.)66 b(If)38 b Fr(pattern)h Fu(is)g(sp)s(eci\014ed,)
-630 4600 y Ft(help)28 b Fu(giv)m(es)i(detailed)g(help)e(on)h(all)h
-(commands)e(matc)m(hing)i Fr(pattern)p Fu(,)g(otherwise)f(a)g(list)h
-(of)630 4710 y(the)h(builtins)e(is)i(prin)m(ted.)630
-4847 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
-(meanings:)630 5011 y Ft(-d)384 b Fu(Displa)m(y)32 b(a)e(short)g
-(description)h(of)f(eac)m(h)i Fr(pattern)630 5176 y Ft(-m)384
-b Fu(Displa)m(y)32 b(the)e(description)g(of)h(eac)m(h)h
-Fr(pattern)e Fu(in)g(a)h(manpage-lik)m(e)h(format)630
-5340 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(a)h(short)f(usage)h
-(synopsis)e(for)i(eac)m(h)g Fr(pattern)p eop end
+b(ject)630 3614 y Fr(\014lename)p Fu(,)41 b(on)d(systems)g(that)g(supp)
+s(ort)f(dynamic)h(loading.)65 b(Bash)38 b(will)g(use)g(the)g(v)-5
+b(alue)630 3724 y(of)28 b(the)g Ft(BASH_LOADABLES_PATH)23
+b Fu(v)-5 b(ariable)28 b(as)h(a)f(colon-separated)i(list)e(of)g
+(directories)h(in)630 3833 y(whic)m(h)c(to)g(searc)m(h)h(for)e
+Fr(\014lename)p Fu(,)j(if)e Fr(\014lename)30 b Fu(do)s(es)24
+b(not)h(con)m(tain)i(a)e(slash.)39 b(The)24 b(default)h(is)630
+3943 y(system-dep)s(enden)m(t,)d(and)e(ma)m(y)h(include)f
+Ft(")p Fu(.)p Ft(")g Fu(to)h(force)g(a)g(searc)m(h)g(of)g(the)g(curren)
+m(t)f(directory)-8 b(.)630 4052 y(The)30 b Ft(-d)g Fu(option)g(will)h
+(delete)h(a)f(builtin)e(loaded)i(with)f Ft(-f)p Fu(.)630
+4194 y(If)j(there)i(are)f(no)g(options,)h(a)f(list)h(of)f(the)g(shell)g
+(builtins)g(is)g(displa)m(y)m(ed.)52 b(The)33 b Ft(-s)g
+Fu(option)630 4303 y(restricts)j Ft(enable)d Fu(to)j(the)f
+Fm(posix)f Fu(sp)s(ecial)i(builtins.)54 b(If)34 b Ft(-s)h
+Fu(is)g(used)f(with)g Ft(-f)p Fu(,)i(the)f(new)630 4413
+y(builtin)30 b(b)s(ecomes)h(a)f(sp)s(ecial)h(builtin)f(\(see)i(Section)
+f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g(80\).)630 4555
+y(If)24 b(no)g(options)h(are)g(supplied)e(and)h(a)h Fr(name)k
+Fu(is)c(not)f(a)h(shell)g(builtin,)g Ft(enable)e Fu(will)i(attempt)630
+4664 y(to)c(load)g Fr(name)26 b Fu(from)20 b(a)g(shared)g(ob)5
+b(ject)21 b(named)f Fr(name)p Fu(,)j(as)d(if)h(the)f(command)h(w)m(ere)
+f(`)p Ft(enable)630 4774 y(-f)30 b Fj(name)f(name)p Fu('.)630
+4915 y(The)d(return)f(status)h(is)g(zero)h(unless)e(a)i
+Fr(name)k Fu(is)26 b(not)g(a)h(shell)f(builtin)g(or)g(there)g(is)g(an)g
+(error)630 5025 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g
+(ob)5 b(ject.)150 5198 y Ft(help)870 5340 y(help)47 b([-dms])f([)p
+Fj(pattern)p Ft(])p eop end
 %%Page: 63 69
 TeXDict begin 63 68 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 y(The)30
-b(return)f(status)i(is)f(zero)h(unless)f(no)g(command)h(matc)m(hes)g
-Fr(pattern)p Fu(.)150 463 y Ft(let)870 600 y(let)47 b
-Fj(expression)e Ft([)p Fj(expression)g Ft(...)o(])630
-737 y Fu(The)c Ft(let)g Fu(builtin)g(allo)m(ws)i(arithmetic)f(to)h(b)s
-(e)d(p)s(erformed)g(on)i(shell)g(v)-5 b(ariables.)74
-b(Eac)m(h)630 847 y Fr(expression)31 b Fu(is)g(ev)-5
-b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)h(b)s(elo)m(w)f
-(in)f(Section)i(6.5)g([Shell)630 956 y(Arithmetic],)47
-b(page)c(101.)78 b(If)41 b(the)i(last)g Fr(expression)f
-Fu(ev)-5 b(aluates)44 b(to)f(0,)j Ft(let)41 b Fu(returns)g(1;)630
-1066 y(otherwise)31 b(0)g(is)f(returned.)150 1230 y Ft(local)870
-1367 y(local)46 b([)p Fj(option)p Ft(])g Fj(name)p Ft([=)p
-Fj(value)p Ft(])e(...)630 1504 y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m
-(t,)g(a)f(lo)s(cal)h(v)-5 b(ariable)27 b(named)e Fr(name)31
-b Fu(is)26 b(created,)i(and)d(assigned)h Fr(v)-5 b(alue)p
-Fu(.)630 1614 y(The)28 b Fr(option)i Fu(can)f(b)s(e)f(an)m(y)i(of)f
-(the)g(options)g(accepted)i(b)m(y)d Ft(declare)p Fu(.)39
-b Ft(local)27 b Fu(can)i(only)h(b)s(e)630 1724 y(used)20
-b(within)g(a)h(function;)j(it)d(mak)m(es)g(the)g(v)-5
+b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 y(Displa)m(y)40
+b(helpful)e(information)h(ab)s(out)g(builtin)f(commands.)66
+b(If)38 b Fr(pattern)h Fu(is)g(sp)s(eci\014ed,)630 408
+y Ft(help)28 b Fu(giv)m(es)i(detailed)g(help)e(on)h(all)h(commands)e
+(matc)m(hing)i Fr(pattern)p Fu(,)g(otherwise)f(a)g(list)h(of)630
+518 y(the)h(builtins)e(is)i(prin)m(ted.)630 652 y(Options,)f(if)h
+(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
+811 y Ft(-d)384 b Fu(Displa)m(y)32 b(a)e(short)g(description)h(of)f
+(eac)m(h)i Fr(pattern)630 971 y Ft(-m)384 b Fu(Displa)m(y)32
+b(the)e(description)g(of)h(eac)m(h)h Fr(pattern)e Fu(in)g(a)h
+(manpage-lik)m(e)h(format)630 1130 y Ft(-s)384 b Fu(Displa)m(y)32
+b(only)e(a)h(short)f(usage)h(synopsis)e(for)i(eac)m(h)g
+Fr(pattern)630 1289 y Fu(The)f(return)f(status)i(is)f(zero)h(unless)f
+(no)g(command)h(matc)m(hes)g Fr(pattern)p Fu(.)150 1448
+y Ft(let)870 1582 y(let)47 b Fj(expression)e Ft([)p Fj(expression)g
+Ft(...)o(])630 1716 y Fu(The)c Ft(let)g Fu(builtin)g(allo)m(ws)i
+(arithmetic)f(to)h(b)s(e)d(p)s(erformed)g(on)i(shell)g(v)-5
+b(ariables.)74 b(Eac)m(h)630 1826 y Fr(expression)31
+b Fu(is)g(ev)-5 b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)
+h(b)s(elo)m(w)f(in)f(Section)i(6.5)g([Shell)630 1936
+y(Arithmetic],)47 b(page)c(101.)78 b(If)41 b(the)i(last)g
+Fr(expression)f Fu(ev)-5 b(aluates)44 b(to)f(0,)j Ft(let)41
+b Fu(returns)g(1;)630 2045 y(otherwise)31 b(0)g(is)f(returned.)150
+2204 y Ft(local)870 2339 y(local)46 b([)p Fj(option)p
+Ft(])g Fj(name)p Ft([=)p Fj(value)p Ft(])e(...)630 2473
+y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m(t,)g(a)f(lo)s(cal)h(v)-5
+b(ariable)27 b(named)e Fr(name)31 b Fu(is)26 b(created,)i(and)d
+(assigned)h Fr(v)-5 b(alue)p Fu(.)630 2583 y(The)28 b
+Fr(option)i Fu(can)f(b)s(e)f(an)m(y)i(of)f(the)g(options)g(accepted)i
+(b)m(y)d Ft(declare)p Fu(.)39 b Ft(local)27 b Fu(can)i(only)h(b)s(e)630
+2692 y(used)20 b(within)g(a)h(function;)j(it)d(mak)m(es)g(the)g(v)-5
 b(ariable)22 b Fr(name)k Fu(ha)m(v)m(e)21 b(a)g(visible)h(scop)s(e)e
-(restricted)630 1833 y(to)28 b(that)g(function)f(and)g(its)h(c)m
+(restricted)630 2802 y(to)28 b(that)g(function)f(and)g(its)h(c)m
 (hildren.)39 b(If)27 b Fr(name)33 b Fu(is)27 b(`)p Ft(-)p
 Fu(',)i(the)f(set)f(of)h(shell)g(options)f(is)h(made)630
-1943 y(lo)s(cal)40 b(to)f(the)f(function)g(in)g(whic)m(h)h
+2911 y(lo)s(cal)40 b(to)f(the)f(function)g(in)g(whic)m(h)h
 Ft(local)e Fu(is)h(in)m(v)m(ok)m(ed:)58 b(shell)39 b(options)f(c)m
-(hanged)h(using)630 2052 y(the)31 b Ft(set)f Fu(builtin)h(inside)g(the)
+(hanged)h(using)630 3021 y(the)31 b Ft(set)f Fu(builtin)h(inside)g(the)
 g(function)f(after)i(the)f(call)h(to)g Ft(local)e Fu(are)h(restored)g
-(to)h(their)630 2162 y(original)h(v)-5 b(alues)33 b(when)e(the)i
+(to)h(their)630 3131 y(original)h(v)-5 b(alues)33 b(when)e(the)i
 (function)f(returns.)45 b(The)32 b(restore)h(is)f(e\013ected)i(as)f(if)
-f(a)h(series)630 2271 y(of)c Ft(set)f Fu(commands)h(w)m(ere)g(executed)
+f(a)h(series)630 3240 y(of)c Ft(set)f Fu(commands)h(w)m(ere)g(executed)
 h(to)g(restore)f(the)g(v)-5 b(alues)30 b(that)f(w)m(ere)h(in)e(place)i
-(b)s(efore)630 2381 y(the)f(function.)40 b(The)28 b(return)f(status)i
+(b)s(efore)630 3350 y(the)f(function.)40 b(The)28 b(return)f(status)i
 (is)g(zero)g(unless)f Ft(local)f Fu(is)h(used)g(outside)h(a)g
-(function,)630 2491 y(an)h(in)m(v)-5 b(alid)31 b Fr(name)36
+(function,)630 3459 y(an)h(in)m(v)-5 b(alid)31 b Fr(name)36
 b Fu(is)30 b(supplied,)f(or)i Fr(name)k Fu(is)c(a)g(readonly)f(v)-5
-b(ariable.)150 2655 y Ft(logout)870 2792 y(logout)46
-b([)p Fj(n)p Ft(])630 2929 y Fu(Exit)31 b(a)g(login)g(shell,)g
+b(ariable.)150 3618 y Ft(logout)870 3753 y(logout)46
+b([)p Fj(n)p Ft(])630 3887 y Fu(Exit)31 b(a)g(login)g(shell,)g
 (returning)e(a)i(status)g(of)f Fr(n)g Fu(to)h(the)g(shell's)f(paren)m
-(t.)150 3093 y Ft(mapfile)870 3230 y(mapfile)46 b([-d)h
+(t.)150 4046 y Ft(mapfile)870 4180 y(mapfile)46 b([-d)h
 Fj(delim)p Ft(])f([-n)h Fj(count)p Ft(])f([-O)h Fj(origin)p
-Ft(])f([-s)g Fj(count)p Ft(])1061 3340 y([-t])h([-u)f
+Ft(])f([-s)g Fj(count)p Ft(])1061 4290 y([-t])h([-u)f
 Fj(fd)p Ft(])h([-C)g Fj(callback)p Ft(])f([-c)g Fj(quantum)p
-Ft(])g([)p Fj(array)p Ft(])630 3477 y Fu(Read)38 b(lines)f(from)g(the)h
+Ft(])g([)p Fj(array)p Ft(])630 4424 y Fu(Read)38 b(lines)f(from)g(the)h
 (standard)e(input)g(in)m(to)j(the)e(indexed)g(arra)m(y)h(v)-5
-b(ariable)38 b Fr(arra)m(y)p Fu(,)i(or)630 3587 y(from)28
+b(ariable)38 b Fr(arra)m(y)p Fu(,)i(or)630 4534 y(from)28
 b(\014le)h(descriptor)f Fr(fd)k Fu(if)c(the)h Ft(-u)f
 Fu(option)h(is)g(supplied.)39 b(The)28 b(v)-5 b(ariable)29
-b Ft(MAPFILE)e Fu(is)i(the)630 3696 y(default)i Fr(arra)m(y)p
+b Ft(MAPFILE)e Fu(is)i(the)630 4644 y(default)i Fr(arra)m(y)p
 Fu(.)41 b(Options,)30 b(if)g(supplied,)g(ha)m(v)m(e)h(the)g(follo)m
-(wing)h(meanings:)630 3861 y Ft(-d)384 b Fu(The)37 b(\014rst)g(c)m
+(wing)h(meanings:)630 4803 y Ft(-d)384 b Fu(The)37 b(\014rst)g(c)m
 (haracter)i(of)f Fr(delim)g Fu(is)f(used)g(to)h(terminate)h(eac)m(h)g
-(input)d(line,)1110 3970 y(rather)41 b(than)h(newline.)74
+(input)d(line,)1110 4912 y(rather)41 b(than)h(newline.)74
 b(If)41 b Fr(delim)h Fu(is)g(the)f(empt)m(y)h(string,)j
-Ft(mapfile)40 b Fu(will)1110 4080 y(terminate)31 b(a)g(line)g(when)e
-(it)i(reads)f(a)h(NUL)g(c)m(haracter.)630 4244 y Ft(-n)384
+Ft(mapfile)40 b Fu(will)1110 5022 y(terminate)31 b(a)g(line)g(when)e
+(it)i(reads)f(a)h(NUL)g(c)m(haracter.)630 5181 y Ft(-n)384
 b Fu(Cop)m(y)30 b(at)h(most)g Fr(coun)m(t)i Fu(lines.)41
 b(If)30 b Fr(coun)m(t)j Fu(is)d(0,)h(all)h(lines)e(are)h(copied.)630
-4408 y Ft(-O)384 b Fu(Begin)31 b(assigning)g(to)g Fr(arra)m(y)39
+5340 y Ft(-O)384 b Fu(Begin)31 b(assigning)g(to)g Fr(arra)m(y)39
 b Fu(at)31 b(index)f Fr(origin)p Fu(.)41 b(The)30 b(default)h(index)f
-(is)g(0.)630 4573 y Ft(-s)384 b Fu(Discard)31 b(the)f(\014rst)g
-Fr(coun)m(t)j Fu(lines)e(read.)630 4737 y Ft(-t)384 b
-Fu(Remo)m(v)m(e)32 b(a)f(trailing)g Fr(delim)g Fu(\(default)g
-(newline\))f(from)g(eac)m(h)i(line)f(read.)630 4902 y
-Ft(-u)384 b Fu(Read)31 b(lines)f(from)g(\014le)h(descriptor)f
+(is)g(0.)p eop end
+%%Page: 64 70
+TeXDict begin 64 69 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(64)630 299 y Ft(-s)384
+b Fu(Discard)31 b(the)f(\014rst)g Fr(coun)m(t)j Fu(lines)e(read.)630
+461 y Ft(-t)384 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g
+Fr(delim)g Fu(\(default)g(newline\))f(from)g(eac)m(h)i(line)f(read.)630
+623 y Ft(-u)384 b Fu(Read)31 b(lines)f(from)g(\014le)h(descriptor)f
 Fr(fd)j Fu(instead)e(of)f(the)h(standard)e(input.)630
-5066 y Ft(-C)384 b Fu(Ev)-5 b(aluate)26 b Fr(callbac)m(k)33
+785 y Ft(-C)384 b Fu(Ev)-5 b(aluate)26 b Fr(callbac)m(k)33
 b Fu(eac)m(h)26 b(time)g Fr(quan)m(tum)f Fu(lines)g(are)g(read.)39
-b(The)25 b Ft(-c)f Fu(option)1110 5176 y(sp)s(eci\014es)30
-b Fr(quan)m(tum)p Fu(.)630 5340 y Ft(-c)384 b Fu(Sp)s(ecify)30
+b(The)25 b Ft(-c)f Fu(option)1110 895 y(sp)s(eci\014es)30
+b Fr(quan)m(tum)p Fu(.)630 1057 y Ft(-c)384 b Fu(Sp)s(ecify)30
 b(the)g(n)m(um)m(b)s(er)f(of)i(lines)f(read)h(b)s(et)m(w)m(een)g(eac)m
-(h)g(call)h(to)f Fr(callbac)m(k)p Fu(.)p eop end
-%%Page: 64 70
-TeXDict begin 64 69 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(64)630 299 y(If)36
+(h)g(call)h(to)f Fr(callbac)m(k)p Fu(.)630 1219 y(If)36
 b Ft(-C)g Fu(is)g(sp)s(eci\014ed)g(without)g Ft(-c)p
 Fu(,)h(the)g(default)f(quan)m(tum)g(is)h(5000.)60 b(When)36
-b Fr(callbac)m(k)44 b Fu(is)630 408 y(ev)-5 b(aluated,)30
+b Fr(callbac)m(k)44 b Fu(is)630 1329 y(ev)-5 b(aluated,)30
 b(it)e(is)g(supplied)f(the)h(index)f(of)i(the)f(next)g(arra)m(y)g
-(elemen)m(t)h(to)g(b)s(e)e(assigned)i(and)630 518 y(the)39
+(elemen)m(t)h(to)g(b)s(e)e(assigned)i(and)630 1439 y(the)39
 b(line)g(to)h(b)s(e)e(assigned)h(to)h(that)f(elemen)m(t)i(as)e
 (additional)h(argumen)m(ts.)66 b Fr(callbac)m(k)47 b
-Fu(is)630 628 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read)g
+Fu(is)630 1548 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read)g
 (but)g(b)s(efore)g(the)h(arra)m(y)g(elemen)m(t)g(is)g(assigned.)630
-756 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
+1684 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
 Ft(mapfile)c Fu(will)j(clear)g Fr(arra)m(y)34 b Fu(b)s(efore)24
-b(assigning)630 865 y(to)31 b(it.)630 993 y Ft(mapfile)41
+b(assigning)630 1794 y(to)31 b(it.)630 1930 y Ft(mapfile)41
 b Fu(returns)g(successfully)i(unless)e(an)i(in)m(v)-5
 b(alid)43 b(option)g(or)g(option)g(argumen)m(t)g(is)630
-1103 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5
+2039 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5
 b(alid)31 b(or)g(unassignable,)f(or)h Fr(arra)m(y)38
 b Fu(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150
-1249 y Ft(printf)870 1377 y(printf)46 b([-v)h Fj(var)p
-Ft(])g Fj(format)f Ft([)p Fj(arguments)p Ft(])630 1504
+2201 y Ft(printf)870 2337 y(printf)46 b([-v)h Fj(var)p
+Ft(])g Fj(format)f Ft([)p Fj(arguments)p Ft(])630 2473
 y Fu(W)-8 b(rite)27 b(the)g(formatted)f Fr(argumen)m(ts)k
 Fu(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the)
-630 1614 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g
+630 2583 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g
 (the)g(output)g(to)g(b)s(e)f(assigned)h(to)h(the)f(v)-5
-b(ariable)39 b Fr(v)-5 b(ar)630 1724 y Fu(rather)30 b(than)g(b)s(eing)g
-(prin)m(ted)g(to)h(the)g(standard)e(output.)630 1851
+b(ariable)39 b Fr(v)-5 b(ar)630 2692 y Fu(rather)30 b(than)g(b)s(eing)g
+(prin)m(ted)g(to)h(the)g(standard)e(output.)630 2828
 y(The)36 b Fr(format)i Fu(is)f(a)f(c)m(haracter)i(string)e(whic)m(h)g
 (con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53
-b(plain)630 1961 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
+b(plain)630 2938 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
 (copied)i(to)g(standard)f(output,)i(c)m(haracter)g(escap)s(e)e(se-)630
-2071 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
-g(the)g(standard)f(output,)i(and)f(format)630 2180 y(sp)s
+3047 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
+g(the)g(standard)f(output,)i(and)f(format)630 3157 y(sp)s
 (eci\014cations,)j(eac)m(h)e(of)g(whic)m(h)f(causes)g(prin)m(ting)g(of)
 h(the)f(next)h(successiv)m(e)g Fr(argumen)m(t)p Fu(.)630
-2290 y(In)27 b(addition)g(to)h(the)g(standard)e Ft(printf\(3\))f
+3267 y(In)27 b(addition)g(to)h(the)g(standard)e Ft(printf\(3\))f
 Fu(format)j(c)m(haracters)g Ft(csndiouxXeEfFgGaA)p Fu(,)630
-2399 y Ft(printf)h Fu(in)m(terprets)h(the)h(follo)m(wing)h(additional)f
-(format)g(sp)s(eci\014ers:)630 2545 y Ft(\045b)384 b
+3376 y Ft(printf)h Fu(in)m(terprets)h(the)h(follo)m(wing)h(additional)f
+(format)g(sp)s(eci\014ers:)630 3538 y Ft(\045b)384 b
 Fu(Causes)38 b Ft(printf)f Fu(to)j(expand)e(bac)m(kslash)h(escap)s(e)g
-(sequences)g(in)f(the)h(cor-)1110 2655 y(resp)s(onding)31
+(sequences)g(in)f(the)h(cor-)1110 3648 y(resp)s(onding)31
 b Fr(argumen)m(t)j Fu(in)e(the)h(same)f(w)m(a)m(y)h(as)g
-Ft(echo)c(-e)j Fu(\(see)h(Section)g(4.2)1110 2765 y([Bash)e(Builtins],)
-g(page)g(57\).)630 2911 y Ft(\045q)384 b Fu(Causes)32
+Ft(echo)c(-e)j Fu(\(see)h(Section)g(4.2)1110 3758 y([Bash)e(Builtins],)
+g(page)g(57\).)630 3920 y Ft(\045q)384 b Fu(Causes)32
 b Ft(printf)e Fu(to)i(output)g(the)g(corresp)s(onding)f
-Fr(argumen)m(t)j Fu(in)d(a)i(format)1110 3020 y(that)42
+Fr(argumen)m(t)j Fu(in)d(a)i(format)1110 4029 y(that)42
 b(can)f(b)s(e)g(reused)g(as)g(shell)h(input.)72 b Ft(\045q)41
 b Fu(and)f Ft(\045Q)p Fu(P)h(use)g(the)g(ANSI-C)1110
-3130 y(quoting)29 b(st)m(yle)h(\(see)g(Section)g(3.1.2.4)h([ANSI-C)e
-(Quoting],)h(page)f(6\))h(if)f(an)m(y)1110 3240 y(c)m(haracters)g(in)e
+4139 y(quoting)29 b(st)m(yle)h(\(see)g(Section)g(3.1.2.4)h([ANSI-C)e
+(Quoting],)h(page)f(6\))h(if)f(an)m(y)1110 4248 y(c)m(haracters)g(in)e
 (the)h(argumen)m(t)g(string)f(require)h(it,)g(and)f(bac)m(kslash)h
-(quoting)1110 3349 y(otherwise.)79 b(If)42 b(the)h(format)h(string)f
+(quoting)1110 4358 y(otherwise.)79 b(If)42 b(the)h(format)h(string)f
 (uses)f(the)h Ft(printf)e Fr(alternate)k(form)p Fu(,)1110
-3459 y(these)31 b(t)m(w)m(o)h(formats)e(quote)h(the)g(argumen)m(t)f
-(string)h(using)f(single)h(quotes.)630 3605 y Ft(\045Q)384
+4468 y(these)31 b(t)m(w)m(o)h(formats)e(quote)h(the)g(argumen)m(t)f
+(string)h(using)f(single)h(quotes.)630 4630 y Ft(\045Q)384
 b Fu(lik)m(e)34 b Ft(\045q)p Fu(,)f(but)f(applies)g(an)m(y)h(supplied)e
 (precision)i(to)h(the)e Fr(argumen)m(t)j Fu(b)s(efore)1110
-3714 y(quoting)c(it.)630 3861 y Ft(\045\()p Fj(datefmt)p
-Ft(\)T)1110 3970 y Fu(Causes)e Ft(printf)e Fu(to)j(output)f(the)g
-(date-time)i(string)e(resulting)h(from)e(using)1110 4080
+4739 y(quoting)c(it.)630 4902 y Ft(\045\()p Fj(datefmt)p
+Ft(\)T)1110 5011 y Fu(Causes)e Ft(printf)e Fu(to)j(output)f(the)g
+(date-time)i(string)e(resulting)h(from)e(using)1110 5121
 y Fr(datefm)m(t)45 b Fu(as)d(a)g(format)g(string)g(for)g
 Ft(strftime)p Fu(\(3\).)74 b(The)41 b(corresp)s(onding)1110
-4189 y Fr(argumen)m(t)h Fu(is)e(an)g(in)m(teger)i(represen)m(ting)e
-(the)g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 4299
+5230 y Fr(argumen)m(t)h Fu(is)e(an)g(in)m(teger)i(represen)m(ting)e
+(the)g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 5340
 y(the)24 b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f
 (v)-5 b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25
-b(represen)m(ts)1110 4408 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i
-(represen)m(ts)f(the)g(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)
-1110 4518 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m
-(ersion)f(b)s(eha)m(v)m(es)g(as)g(if)f(-1)h(had)f(b)s(een)1110
-4628 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g
-Ft(printf)f Fu(b)s(eha)m(vior.)630 4774 y(The)39 b(\045b,)i(\045q,)g
-(and)e(\045T)f(format)i(sp)s(eci\014ers)e(all)i(use)f(the)h(\014eld)f
-(width)f(and)h(precision)630 4883 y(argumen)m(ts)e(from)f(the)h(format)
-g(sp)s(eci\014cation)g(and)f(write)h(that)h(man)m(y)e(b)m(ytes)h(from)g
-(\(or)630 4993 y(use)29 b(that)h(wide)f(a)g(\014eld)g(for\))g(the)h
-(expanded)e(argumen)m(t,)i(whic)m(h)f(usually)g(con)m(tains)i(more)630
-5103 y(c)m(haracters)h(than)e(the)h(original.)630 5230
-y(The)e(\045n)f(format)h(sp)s(eci\014er)g(accepts)h(a)g(corresp)s
-(onding)e(argumen)m(t)h(that)h(is)f(treated)h(as)g(a)630
-5340 y(shell)h(v)-5 b(ariable)31 b(name.)p eop end
+b(represen)m(ts)p eop end
 %%Page: 65 71
 TeXDict begin 65 70 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(65)630 299 y(The)26
+b(Shell)30 b(Builtin)h(Commands)2069 b(65)1110 299 y(the)30
+b(curren)m(t)g(time,)h(and)e(-2)i(represen)m(ts)f(the)g(time)h(the)f
+(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)1110 408 y(If)38
+b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m(ersion)f(b)s(eha)
+m(v)m(es)g(as)g(if)f(-1)h(had)f(b)s(een)1110 518 y(giv)m(en.)k(This)29
+b(is)i(an)f(exception)i(to)f(the)f(usual)g Ft(printf)f
+Fu(b)s(eha)m(vior.)630 679 y(The)39 b(\045b,)i(\045q,)g(and)e(\045T)f
+(format)i(sp)s(eci\014ers)e(all)i(use)f(the)h(\014eld)f(width)f(and)h
+(precision)630 789 y(argumen)m(ts)e(from)f(the)h(format)g(sp)s
+(eci\014cation)g(and)f(write)h(that)h(man)m(y)e(b)m(ytes)h(from)g(\(or)
+630 898 y(use)29 b(that)h(wide)f(a)g(\014eld)g(for\))g(the)h(expanded)e
+(argumen)m(t,)i(whic)m(h)f(usually)g(con)m(tains)i(more)630
+1008 y(c)m(haracters)h(than)e(the)h(original.)630 1143
+y(The)e(\045n)f(format)h(sp)s(eci\014er)g(accepts)h(a)g(corresp)s
+(onding)e(argumen)m(t)h(that)h(is)f(treated)h(as)g(a)630
+1253 y(shell)h(v)-5 b(ariable)31 b(name.)630 1388 y(The)26
 b(\045s)g(and)h(\045c)f(format)h(sp)s(eci\014ers)f(accept)i(an)f(l)g
 (\(long\))h(mo)s(di\014er,)e(whic)m(h)h(forces)g(them)630
-408 y(to)21 b(con)m(v)m(ert)i(the)e(argumen)m(t)g(string)g(to)g(a)g
+1498 y(to)21 b(con)m(v)m(ert)i(the)e(argumen)m(t)g(string)g(to)g(a)g
 (wide-c)m(haracter)i(string)e(and)f(apply)g(an)m(y)h(supplied)630
-518 y(\014eld)30 b(width)g(and)f(precision)i(in)f(terms)g(of)h(c)m
-(haracters,)h(not)e(b)m(ytes.)630 660 y(Argumen)m(ts)e(to)h(non-string)
-e(format)i(sp)s(eci\014ers)e(are)h(treated)h(as)g(C)e(language)j
-(constan)m(ts,)630 769 y(except)22 b(that)g(a)g(leading)g(plus)e(or)h
-(min)m(us)f(sign)i(is)f(allo)m(w)m(ed,)k(and)c(if)g(the)g(leading)h(c)m
-(haracter)h(is)630 879 y(a)i(single)g(or)f(double)h(quote,)h(the)f(v)-5
-b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5 b(alue)25 b(of)f(the)h(follo)m
-(wing)h(c)m(haracter.)630 1021 y(The)31 b Fr(format)i
-Fu(is)f(reused)e(as)i(necessary)f(to)i(consume)e(all)h(of)f(the)h
-Fr(argumen)m(ts)p Fu(.)44 b(If)30 b(the)i Fr(for-)630
-1130 y(mat)c Fu(requires)e(more)g Fr(argumen)m(ts)k Fu(than)25
-b(are)i(supplied,)e(the)h(extra)h(format)f(sp)s(eci\014cations)630
-1240 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g(v)-5 b(alue)29
-b(or)g(n)m(ull)f(string,)h(as)g(appropriate,)g(had)f(b)s(een)g
-(supplied.)38 b(The)630 1350 y(return)e(v)-5 b(alue)38
+1608 y(\014eld)30 b(width)g(and)f(precision)i(in)f(terms)g(of)h(c)m
+(haracters,)h(not)e(b)m(ytes.)630 1743 y(Argumen)m(ts)e(to)h
+(non-string)e(format)i(sp)s(eci\014ers)e(are)h(treated)h(as)g(C)e
+(language)j(constan)m(ts,)630 1852 y(except)22 b(that)g(a)g(leading)g
+(plus)e(or)h(min)m(us)f(sign)i(is)f(allo)m(w)m(ed,)k(and)c(if)g(the)g
+(leading)h(c)m(haracter)h(is)630 1962 y(a)i(single)g(or)f(double)h
+(quote,)h(the)f(v)-5 b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5
+b(alue)25 b(of)f(the)h(follo)m(wing)h(c)m(haracter.)630
+2097 y(The)31 b Fr(format)i Fu(is)f(reused)e(as)i(necessary)f(to)i
+(consume)e(all)h(of)f(the)h Fr(argumen)m(ts)p Fu(.)44
+b(If)30 b(the)i Fr(for-)630 2207 y(mat)c Fu(requires)e(more)g
+Fr(argumen)m(ts)k Fu(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f
+(sp)s(eci\014cations)630 2317 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g
+(v)-5 b(alue)29 b(or)g(n)m(ull)f(string,)h(as)g(appropriate,)g(had)f(b)
+s(een)g(supplied.)38 b(The)630 2426 y(return)e(v)-5 b(alue)38
 b(is)g(zero)g(on)f(success,)j(non-zero)e(if)f(an)h(in)m(v)-5
-b(alid)38 b(option)g(is)f(supplied)f(or)i(a)630 1459
+b(alid)38 b(option)g(is)f(supplied)f(or)i(a)630 2536
 y(write)31 b(or)f(assignmen)m(t)h(error)f(o)s(ccurs.)150
-1633 y Ft(read)870 1775 y(read)47 b([-Eers])e([-a)i Fj(aname)p
+2697 y Ft(read)870 2832 y(read)47 b([-Eers])e([-a)i Fj(aname)p
 Ft(])f([-d)h Fj(delim)p Ft(])f([-i)h Fj(text)p Ft(])g([-n)g
-Fj(nchars)p Ft(])1061 1885 y([-N)g Fj(nchars)p Ft(])f([-p)h
+Fj(nchars)p Ft(])1061 2942 y([-N)g Fj(nchars)p Ft(])f([-p)h
 Fj(prompt)p Ft(])e([-t)i Fj(timeout)p Ft(])f([-u)h Fj(fd)p
-Ft(])g([)p Fj(name)f Ft(...)o(])630 2027 y Fu(One)38
+Ft(])g([)p Fj(name)f Ft(...)o(])630 3077 y Fu(One)38
 b(line)g(is)g(read)g(from)g(the)g(standard)f(input,)j(or)e(from)f(the)i
-(\014le)f(descriptor)g Fr(fd)j Fu(sup-)630 2136 y(plied)34
+(\014le)f(descriptor)g Fr(fd)j Fu(sup-)630 3187 y(plied)34
 b(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(-u)g Fu(option,)i(split)f(in)m
 (to)g(w)m(ords)f(as)g(describ)s(ed)g(ab)s(o)m(v)m(e)h(in)630
-2246 y(Section)j(3.5.7)h([W)-8 b(ord)38 b(Splitting],)i(page)e(36,)j
+3296 y(Section)j(3.5.7)h([W)-8 b(ord)38 b(Splitting],)i(page)e(36,)j
 (and)36 b(the)i(\014rst)f(w)m(ord)g(is)g(assigned)h(to)g(the)630
-2355 y(\014rst)32 b Fr(name)p Fu(,)h(the)g(second)g(w)m(ord)f(to)h(the)
+3406 y(\014rst)32 b Fr(name)p Fu(,)h(the)g(second)g(w)m(ord)f(to)h(the)
 g(second)g Fr(name)p Fu(,)g(and)f(so)h(on.)47 b(If)32
-b(there)h(are)g(more)630 2465 y(w)m(ords)39 b(than)g(names,)j(the)e
+b(there)h(are)g(more)630 3516 y(w)m(ords)39 b(than)g(names,)j(the)e
 (remaining)f(w)m(ords)g(and)g(their)h(in)m(terv)m(ening)g(delimiters)h
-(are)630 2574 y(assigned)29 b(to)h(the)g(last)g Fr(name)p
+(are)630 3625 y(assigned)29 b(to)h(the)g(last)g Fr(name)p
 Fu(.)40 b(If)29 b(there)g(are)h(few)m(er)f(w)m(ords)g(read)g(from)g
-(the)g(input)g(stream)630 2684 y(than)35 b(names,)i(the)e(remaining)h
+(the)g(input)g(stream)630 3735 y(than)35 b(names,)i(the)e(remaining)h
 (names)f(are)h(assigned)f(empt)m(y)h(v)-5 b(alues.)56
-b(The)34 b(c)m(haracters)630 2794 y(in)e(the)h(v)-5 b(alue)33
+b(The)34 b(c)m(haracters)630 3844 y(in)e(the)h(v)-5 b(alue)33
 b(of)g(the)g Ft(IFS)f Fu(v)-5 b(ariable)33 b(are)h(used)d(to)j(split)f
-(the)g(line)g(in)m(to)g(w)m(ords)g(using)f(the)630 2903
+(the)g(line)g(in)m(to)g(w)m(ords)g(using)f(the)630 3954
 y(same)d(rules)f(the)g(shell)h(uses)f(for)g(expansion)g(\(describ)s(ed)
 g(ab)s(o)m(v)m(e)i(in)e(Section)h(3.5.7)h([W)-8 b(ord)630
-3013 y(Splitting],)38 b(page)f(36\).)60 b(The)35 b(bac)m(kslash)i(c)m
+4064 y(Splitting],)38 b(page)f(36\).)60 b(The)35 b(bac)m(kslash)i(c)m
 (haracter)h(`)p Ft(\\)p Fu(')e(ma)m(y)h(b)s(e)f(used)f(to)i(remo)m(v)m
-(e)h(an)m(y)630 3122 y(sp)s(ecial)31 b(meaning)g(for)f(the)g(next)h(c)m
+(e)h(an)m(y)630 4173 y(sp)s(ecial)31 b(meaning)g(for)f(the)g(next)h(c)m
 (haracter)h(read)e(and)g(for)g(line)h(con)m(tin)m(uation.)630
-3264 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
-(meanings:)630 3438 y Ft(-a)e Fj(aname)114 b Fu(The)34
+4309 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
+(meanings:)630 4470 y Ft(-a)e Fj(aname)114 b Fu(The)34
 b(w)m(ords)f(are)i(assigned)f(to)h(sequen)m(tial)h(indices)e(of)g(the)g
-(arra)m(y)h(v)-5 b(ariable)1110 3548 y Fr(aname)p Fu(,)29
+(arra)m(y)h(v)-5 b(ariable)1110 4579 y Fr(aname)p Fu(,)29
 b(starting)h(at)f(0.)40 b(All)29 b(elemen)m(ts)h(are)e(remo)m(v)m(ed)i
-(from)d Fr(aname)34 b Fu(b)s(efore)1110 3657 y(the)d(assignmen)m(t.)41
+(from)d Fr(aname)34 b Fu(b)s(efore)1110 4689 y(the)d(assignmen)m(t.)41
 b(Other)30 b Fr(name)36 b Fu(argumen)m(ts)30 b(are)h(ignored.)630
-3832 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f
+4850 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f
 Fr(delim)g Fu(is)g(used)g(to)g(terminate)h(the)f(input)f(line,)1110
-3941 y(rather)31 b(than)g(newline.)42 b(If)30 b Fr(delim)h
+4960 y(rather)31 b(than)g(newline.)42 b(If)30 b Fr(delim)h
 Fu(is)g(the)h(empt)m(y)f(string,)g Ft(read)f Fu(will)h(termi-)1110
-4051 y(nate)g(a)g(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.)
-630 4225 y Ft(-e)384 b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command)
-f(Line)h(Editing],)50 b(page)45 b(122\))i(is)1110 4334
+5069 y(nate)g(a)g(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.)
+630 5230 y Ft(-e)384 b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command)
+f(Line)h(Editing],)50 b(page)45 b(122\))i(is)1110 5340
 y(used)37 b(to)i(obtain)g(the)f(line.)65 b(Readline)39
-b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110
-4444 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k
-(editing)d(settings,)j(but)c(uses)1110 4554 y(Readline's)31
-b(default)g(\014lename)f(completion.)630 4728 y Ft(-E)384
-b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command)f(Line)h(Editing],)50
-b(page)45 b(122\))i(is)1110 4837 y(used)37 b(to)i(obtain)g(the)f(line.)
+b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)p eop
+end
+%%Page: 66 72
+TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(66)1110 299 y(line)42
+b(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k(editing)d
+(settings,)j(but)c(uses)1110 408 y(Readline's)31 b(default)g
+(\014lename)f(completion.)630 560 y Ft(-E)384 b Fu(Readline)46
+b(\(see)g(Chapter)e(8)h([Command)f(Line)h(Editing],)50
+b(page)45 b(122\))i(is)1110 669 y(used)37 b(to)i(obtain)g(the)f(line.)
 65 b(Readline)39 b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110
-4947 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k
-(editing)d(settings,)j(but)c(uses)1110 5056 y(Bash's)31
+779 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k
+(editing)d(settings,)j(but)c(uses)1110 889 y(Bash's)31
 b(default)f(completion,)i(including)e(programmable)h(completion.)630
-5230 y Ft(-i)f Fj(text)162 b Fu(If)36 b(Readline)i(is)f(b)s(eing)g
+1040 y Ft(-i)f Fj(text)162 b Fu(If)36 b(Readline)i(is)f(b)s(eing)g
 (used)f(to)h(read)g(the)g(line,)j Fr(text)f Fu(is)e(placed)h(in)m(to)g
-(the)1110 5340 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s
-(egins.)p eop end
-%%Page: 66 72
-TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(66)630 299 y Ft(-n)30
-b Fj(nchars)66 b Ft(read)38 b Fu(returns)f(after)j(reading)f
-Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)f(than)g(w)m(aiting)1110
-408 y(for)d(a)h(complete)h(line)f(of)g(input,)g(but)f(honors)g(a)h
-(delimiter)g(if)f(few)m(er)h(than)1110 518 y Fr(nc)m(hars)d
-Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g(delimiter.)630
-689 y Ft(-N)g Fj(nchars)66 b Ft(read)39 b Fu(returns)f(after)j(reading)
-e(exactly)j Fr(nc)m(hars)h Fu(c)m(haracters)f(rather)d(than)1110
-798 y(w)m(aiting)32 b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless)
-f(EOF)h(is)g(encoun)m(tered)g(or)1110 908 y Ft(read)f
-Fu(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f(encoun)m(tered)g
-(in)f(the)g(input)g(are)1110 1017 y(not)g(treated)h(sp)s(ecially)f(and)
-f(do)h(not)g(cause)g Ft(read)e Fu(to)j(return)d(un)m(til)i
-Fr(nc)m(hars)1110 1127 y Fu(c)m(haracters)26 b(are)f(read.)38
-b(The)24 b(result)g(is)h(not)f(split)h(on)f(the)h(c)m(haracters)h(in)e
-Ft(IFS)p Fu(;)1110 1236 y(the)e(in)m(ten)m(t)i(is)e(that)h(the)f(v)-5
+(the)1110 1149 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s
+(egins.)630 1301 y Ft(-n)f Fj(nchars)66 b Ft(read)38
+b Fu(returns)f(after)j(reading)f Fr(nc)m(hars)j Fu(c)m(haracters)e
+(rather)f(than)g(w)m(aiting)1110 1410 y(for)d(a)h(complete)h(line)f(of)
+g(input,)g(but)f(honors)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110
+1520 y Fr(nc)m(hars)d Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g
+(delimiter.)630 1671 y Ft(-N)g Fj(nchars)66 b Ft(read)39
+b Fu(returns)f(after)j(reading)e(exactly)j Fr(nc)m(hars)h
+Fu(c)m(haracters)f(rather)d(than)1110 1781 y(w)m(aiting)32
+b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless)f(EOF)h(is)g(encoun)
+m(tered)g(or)1110 1891 y Ft(read)f Fu(times)i(out.)43
+b(Delimiter)33 b(c)m(haracters)f(encoun)m(tered)g(in)f(the)g(input)g
+(are)1110 2000 y(not)g(treated)h(sp)s(ecially)f(and)f(do)h(not)g(cause)
+g Ft(read)e Fu(to)j(return)d(un)m(til)i Fr(nc)m(hars)1110
+2110 y Fu(c)m(haracters)26 b(are)f(read.)38 b(The)24
+b(result)g(is)h(not)f(split)h(on)f(the)h(c)m(haracters)h(in)e
+Ft(IFS)p Fu(;)1110 2219 y(the)e(in)m(ten)m(t)i(is)e(that)h(the)f(v)-5
 b(ariable)23 b(is)f(assigned)g(exactly)i(the)e(c)m(haracters)i(read)
-1110 1346 y(\(with)30 b(the)h(exception)h(of)e(bac)m(kslash;)h(see)g
-(the)g Ft(-r)f Fu(option)h(b)s(elo)m(w\).)630 1517 y
+1110 2329 y(\(with)30 b(the)h(exception)h(of)e(bac)m(kslash;)h(see)g
+(the)g Ft(-r)f Fu(option)h(b)s(elo)m(w\).)630 2480 y
 Ft(-p)f Fj(prompt)66 b Fu(Displa)m(y)38 b Fr(prompt)p
 Fu(,)g(without)e(a)h(trailing)h(newline,)h(b)s(efore)d(attempting)i(to)
-1110 1626 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m
-(y)m(ed)h(only)f(if)g(input)g(is)g(coming)1110 1736 y(from)30
-b(a)h(terminal.)630 1906 y Ft(-r)384 b Fu(If)21 b(this)h(option)g(is)f
+1110 2590 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m
+(y)m(ed)h(only)f(if)g(input)g(is)g(coming)1110 2699 y(from)30
+b(a)h(terminal.)630 2851 y Ft(-r)384 b Fu(If)21 b(this)h(option)g(is)f
 (giv)m(en,)k(bac)m(kslash)d(do)s(es)f(not)h(act)h(as)f(an)f(escap)s(e)h
-(c)m(haracter.)1110 2016 y(The)30 b(bac)m(kslash)i(is)f(considered)g
+(c)m(haracter.)1110 2960 y(The)30 b(bac)m(kslash)i(is)f(considered)g
 (to)h(b)s(e)e(part)h(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110
-2125 y(bac)m(kslash-newline)26 b(pair)e(ma)m(y)h(not)g(then)g(b)s(e)f
-(used)g(as)h(a)g(line)g(con)m(tin)m(uation.)630 2296
+3070 y(bac)m(kslash-newline)26 b(pair)e(ma)m(y)h(not)g(then)g(b)s(e)f
+(used)g(as)h(a)g(line)g(con)m(tin)m(uation.)630 3221
 y Ft(-s)384 b Fu(Silen)m(t)28 b(mo)s(de.)40 b(If)27 b(input)f(is)i
 (coming)g(from)f(a)h(terminal,)h(c)m(haracters)g(are)f(not)1110
-2405 y(ec)m(ho)s(ed.)630 2576 y Ft(-t)i Fj(timeout)1110
-2685 y Fu(Cause)23 b Ft(read)f Fu(to)i(time)f(out)h(and)e(return)g
+3331 y(ec)m(ho)s(ed.)630 3482 y Ft(-t)i Fj(timeout)1110
+3592 y Fu(Cause)23 b Ft(read)f Fu(to)i(time)f(out)h(and)e(return)g
 (failure)h(if)g(a)h(complete)g(line)g(of)f(input)1110
-2795 y(\(or)h(a)f(sp)s(eci\014ed)g(n)m(um)m(b)s(er)f(of)i(c)m
+3701 y(\(or)h(a)f(sp)s(eci\014ed)g(n)m(um)m(b)s(er)f(of)i(c)m
 (haracters\))h(is)e(not)h(read)f(within)g Fr(timeout)j
-Fu(sec-)1110 2905 y(onds.)43 b Fr(timeout)34 b Fu(ma)m(y)e(b)s(e)e(a)i
+Fu(sec-)1110 3811 y(onds.)43 b Fr(timeout)34 b Fu(ma)m(y)e(b)s(e)e(a)i
 (decimal)g(n)m(um)m(b)s(er)e(with)h(a)h(fractional)g(p)s(ortion)1110
-3014 y(follo)m(wing)39 b(the)f(decimal)g(p)s(oin)m(t.)63
+3921 y(follo)m(wing)39 b(the)f(decimal)g(p)s(oin)m(t.)63
 b(This)37 b(option)h(is)g(only)f(e\013ectiv)m(e)k(if)c
-Ft(read)1110 3124 y Fu(is)c(reading)h(input)e(from)h(a)h(terminal,)h
+Ft(read)1110 4030 y Fu(is)c(reading)h(input)e(from)h(a)h(terminal,)h
 (pip)s(e,)e(or)h(other)f(sp)s(ecial)h(\014le;)h(it)f(has)1110
-3233 y(no)f(e\013ect)i(when)d(reading)i(from)f(regular)g(\014les.)50
-b(If)33 b Ft(read)f Fu(times)i(out,)g Ft(read)1110 3343
+4140 y(no)f(e\013ect)i(when)d(reading)i(from)f(regular)g(\014les.)50
+b(If)33 b Ft(read)f Fu(times)i(out,)g Ft(read)1110 4249
 y Fu(sa)m(v)m(es)41 b(an)m(y)f(partial)h(input)e(read)g(in)m(to)i(the)f
 (sp)s(eci\014ed)f(v)-5 b(ariable)40 b Fr(name)p Fu(.)69
-b(If)1110 3453 y Fr(timeout)31 b Fu(is)c(0,)i Ft(read)d
+b(If)1110 4359 y Fr(timeout)31 b Fu(is)c(0,)i Ft(read)d
 Fu(returns)h(immediately)-8 b(,)30 b(without)d(trying)h(to)g(read)g(an)
-m(y)1110 3562 y(data.)49 b(The)33 b(exit)h(status)f(is)g(0)g(if)g
+m(y)1110 4468 y(data.)49 b(The)33 b(exit)h(status)f(is)g(0)g(if)g
 (input)f(is)h(a)m(v)-5 b(ailable)36 b(on)c(the)i(sp)s(eci\014ed)e
-(\014le)1110 3672 y(descriptor,)37 b(or)e(the)h(read)f(will)h(return)e
-(EOF,)h(non-zero)h(otherwise.)56 b(The)1110 3781 y(exit)31
+(\014le)1110 4578 y(descriptor,)37 b(or)e(the)h(read)f(will)h(return)e
+(EOF,)h(non-zero)h(otherwise.)56 b(The)1110 4688 y(exit)31
 b(status)g(is)f(greater)i(than)e(128)i(if)e(the)h(timeout)g(is)f
-(exceeded.)630 3952 y Ft(-u)g Fj(fd)258 b Fu(Read)31
+(exceeded.)630 4839 y Ft(-u)g Fj(fd)258 b Fu(Read)31
 b(input)e(from)h(\014le)g(descriptor)h Fr(fd)p Fu(.)630
-4122 y(If)h(no)g Fr(name)5 b Fu(s)33 b(are)f(supplied,)g(the)h(line)g
-(read,)g(without)f(the)h(ending)f(delimiter)h(but)e(oth-)630
-4232 y(erwise)36 b(unmo)s(di\014ed,)e(is)i(assigned)f(to)h(the)g(v)-5
+4990 y(Other)36 b(than)g(the)h(case)h(where)e Fr(delim)g
+Fu(is)h(the)f(empt)m(y)h(string,)i Ft(read)c Fu(ignores)i(an)m(y)g(NUL)
+630 5100 y(c)m(haracters)32 b(in)e(the)g(input.)630 5230
+y(If)i(no)g Fr(name)5 b Fu(s)33 b(are)f(supplied,)g(the)h(line)g(read,)
+g(without)f(the)h(ending)f(delimiter)h(but)e(oth-)630
+5340 y(erwise)36 b(unmo)s(di\014ed,)e(is)i(assigned)f(to)h(the)g(v)-5
 b(ariable)36 b Ft(REPLY)p Fu(.)55 b(The)34 b(exit)j(status)e(is)h
-(zero,)630 4341 y(unless)i(end-of-\014le)h(is)f(encoun)m(tered,)j
-Ft(read)d Fu(times)h(out)f(\(in)h(whic)m(h)f(case)h(the)g(status)g(is)
-630 4451 y(greater)31 b(than)f(128\),)i(a)e(v)-5 b(ariable)30
-b(assignmen)m(t)h(error)f(\(suc)m(h)f(as)i(assigning)f(to)h(a)f
-(readonly)630 4561 y(v)-5 b(ariable\))30 b(o)s(ccurs,)f(or)f(an)h(in)m
-(v)-5 b(alid)29 b(\014le)g(descriptor)f(is)h(supplied)e(as)i(the)g
-(argumen)m(t)g(to)g Ft(-u)p Fu(.)150 4731 y Ft(readarray)870
-4841 y(readarray)45 b([-d)i Fj(delim)p Ft(])f([-n)h Fj(count)p
+(zero,)p eop end
+%%Page: 67 73
+TeXDict begin 67 72 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(67)630 299 y(unless)38
+b(end-of-\014le)h(is)f(encoun)m(tered,)j Ft(read)d Fu(times)h(out)f
+(\(in)h(whic)m(h)f(case)h(the)g(status)g(is)630 408 y(greater)31
+b(than)f(128\),)i(a)e(v)-5 b(ariable)30 b(assignmen)m(t)h(error)f
+(\(suc)m(h)f(as)i(assigning)f(to)h(a)f(readonly)630 518
+y(v)-5 b(ariable\))30 b(o)s(ccurs,)f(or)f(an)h(in)m(v)-5
+b(alid)29 b(\014le)g(descriptor)f(is)h(supplied)e(as)i(the)g(argumen)m
+(t)g(to)g Ft(-u)p Fu(.)150 678 y Ft(readarray)870 788
+y(readarray)45 b([-d)i Fj(delim)p Ft(])f([-n)h Fj(count)p
 Ft(])f([-O)h Fj(origin)p Ft(])f([-s)h Fj(count)p Ft(])1061
-4950 y([-t])g([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p
+897 y([-t])g([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p
 Ft(])f([-c)g Fj(quantum)p Ft(])g([)p Fj(array)p Ft(])630
-5090 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j
+1032 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j
 (the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38 b Fr(arra)m(y)p
-Fu(,)i(or)630 5200 y(from)30 b(\014le)g(descriptor)h
+Fu(,)i(or)630 1142 y(from)30 b(\014le)g(descriptor)h
 Fr(fd)i Fu(if)d(the)h Ft(-u)e Fu(option)i(is)g(supplied.)630
-5340 y(A)f(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)p eop
-end
-%%Page: 67 73
-TeXDict begin 67 72 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(67)150 299 y Ft(source)870
-435 y(source)46 b Fj(filename)630 571 y Fu(A)30 b(synon)m(ym)g(for)g
-Ft(.)g Fu(\(see)i(Section)f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g
-(49\).)150 733 y Ft(type)870 869 y(type)47 b([-afptP])e([)p
-Fj(name)i Ft(...)o(])630 1006 y Fu(F)-8 b(or)42 b(eac)m(h)g
-Fr(name)p Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m
-(terpreted)g(if)g(used)f(as)i(a)f(command)630 1115 y(name.)630
-1251 y(If)g(the)g Ft(-t)g Fu(option)h(is)f(used,)j Ft(type)c
-Fu(prin)m(ts)h(a)h(single)g(w)m(ord)f(whic)m(h)g(is)g(one)h(of)g(`)p
-Ft(alias)p Fu(',)630 1361 y(`)p Ft(keyword)p Fu(',)32
-b(`)p Ft(function)p Fu(',)g(`)p Ft(builtin)p Fu(',)g(or)h(`)p
-Ft(file)p Fu(',)g(if)g Fr(name)38 b Fu(is)33 b(an)g(alias,)i(shell)e
-(reserv)m(ed)630 1470 y(w)m(ord,)39 b(shell)e(function,)i(shell)e
-(builtin,)i(or)e(executable)i(disk)d(\014le,)j(resp)s(ectiv)m(ely)-8
-b(.)63 b(If)37 b(the)630 1580 y Fr(name)f Fu(is)30 b(not)h(found,)e
+1277 y(A)f(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)150 1437
+y Ft(source)870 1572 y(source)46 b Fj(filename)630 1707
+y Fu(A)30 b(synon)m(ym)g(for)g Ft(.)g Fu(\(see)i(Section)f(4.1)g
+([Bourne)g(Shell)f(Builtins],)h(page)g(49\).)150 1867
+y Ft(type)870 2002 y(type)47 b([-afptP])e([)p Fj(name)i
+Ft(...)o(])630 2137 y Fu(F)-8 b(or)42 b(eac)m(h)g Fr(name)p
+Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m(terpreted)g(if)
+g(used)f(as)i(a)f(command)630 2246 y(name.)630 2381 y(If)g(the)g
+Ft(-t)g Fu(option)h(is)f(used,)j Ft(type)c Fu(prin)m(ts)h(a)h(single)g
+(w)m(ord)f(whic)m(h)g(is)g(one)h(of)g(`)p Ft(alias)p
+Fu(',)630 2491 y(`)p Ft(keyword)p Fu(',)32 b(`)p Ft(function)p
+Fu(',)g(`)p Ft(builtin)p Fu(',)g(or)h(`)p Ft(file)p Fu(',)g(if)g
+Fr(name)38 b Fu(is)33 b(an)g(alias,)i(shell)e(reserv)m(ed)630
+2600 y(w)m(ord,)39 b(shell)e(function,)i(shell)e(builtin,)i(or)e
+(executable)i(disk)d(\014le,)j(resp)s(ectiv)m(ely)-8
+b(.)63 b(If)37 b(the)630 2710 y Fr(name)f Fu(is)30 b(not)h(found,)e
 (then)h(nothing)g(is)h(prin)m(ted,)f(and)g Ft(type)f
-Fu(returns)g(a)i(failure)f(status.)630 1716 y(If)25 b(the)h
+Fu(returns)g(a)i(failure)f(status.)630 2845 y(If)25 b(the)h
 Ft(-p)f Fu(option)g(is)h(used,)g Ft(type)e Fu(either)i(returns)e(the)i
-(name)f(of)h(the)g(executable)h(\014le)e(that)630 1826
+(name)f(of)h(the)g(executable)h(\014le)e(that)630 2954
 y(w)m(ould)30 b(b)s(e)g(found)f(b)m(y)h(searc)m(hing)h
 Ft($PATH)p Fu(,)f(or)g(nothing)g(if)h Ft(-t)e Fu(w)m(ould)i(not)f
-(return)f(`)p Ft(file)p Fu('.)630 1962 y(The)h Ft(-P)g
+(return)f(`)p Ft(file)p Fu('.)630 3089 y(The)h Ft(-P)g
 Fu(option)h(forces)g(a)g(path)f(searc)m(h)h(for)g(eac)m(h)g
 Fr(name)p Fu(,)g(ev)m(en)g(if)g Ft(-t)f Fu(w)m(ould)g(not)h(return)630
-2071 y(`)p Ft(file)p Fu('.)630 2207 y(If)e(a)h Fr(name)k
+3199 y(`)p Ft(file)p Fu('.)630 3334 y(If)e(a)h Fr(name)k
 Fu(is)29 b(presen)m(t)h(in)f(the)g(table)h(of)g(hashed)e(commands,)i
-(options)f Ft(-p)g Fu(and)g Ft(-P)f Fu(prin)m(t)630 2317
+(options)f Ft(-p)g Fu(and)g Ft(-P)f Fu(prin)m(t)630 3443
 y(the)j(hashed)e(v)-5 b(alue,)31 b(whic)m(h)f(is)h(not)f(necessarily)i
 (the)e(\014le)h(that)g(app)s(ears)e(\014rst)h(in)g Ft($PATH)p
-Fu(.)630 2453 y(If)e(the)h Ft(-a)f Fu(option)h(is)f(used,)h
+Fu(.)630 3578 y(If)e(the)h Ft(-a)f Fu(option)h(is)f(used,)h
 Ft(type)e Fu(returns)g(all)j(of)e(the)h(places)g(that)g(con)m(tain)h(a)
-f(command)630 2562 y(named)c Fr(name)p Fu(.)39 b(This)25
+f(command)630 3688 y(named)c Fr(name)p Fu(.)39 b(This)25
 b(includes)g(aliases,)j(reserv)m(ed)e(w)m(ords,)g(functions,)h(and)d
-(builtins,)j(but)630 2672 y(the)34 b(path)f(searc)m(h)i(options)f(\()p
+(builtins,)j(but)630 3797 y(the)34 b(path)f(searc)m(h)i(options)f(\()p
 Ft(-p)f Fu(and)h Ft(-P)p Fu(\))f(can)h(b)s(e)f(supplied)g(to)h
-(restrict)h(the)f(output)f(to)630 2782 y(executable)k(\014les.)55
+(restrict)h(the)f(output)f(to)630 3907 y(executable)k(\014les.)55
 b(If)34 b Ft(-a)h Fu(is)g(supplied)f(with)h Ft(-p)p Fu(,)h
 Ft(type)e Fu(do)s(es)g(not)i(lo)s(ok)g(in)e(the)i(table)g(of)630
-2891 y(hashed)30 b(commands,)g(and)g(only)g(p)s(erforms)f(a)i
-Ft(PATH)e Fu(searc)m(h)i(for)f Fr(name)p Fu(.)630 3027
+4016 y(hashed)30 b(commands,)g(and)g(only)g(p)s(erforms)f(a)i
+Ft(PATH)e Fu(searc)m(h)i(for)f Fr(name)p Fu(.)630 4151
 y(If)g(the)g Ft(-f)g Fu(option)g(is)h(used,)e Ft(type)g
 Fu(do)s(es)h(not)h(attempt)g(to)g(\014nd)d(shell)j(functions,)f(as)g
-(with)630 3137 y(the)h Ft(command)d Fu(builtin.)630 3273
+(with)630 4261 y(the)h Ft(command)d Fu(builtin.)630 4396
 y(The)j(return)e(status)j(is)f(zero)h(if)f(all)g(of)h(the)f
 Fr(name)5 b Fu(s)31 b(are)g(found,)f(non-zero)i(if)f(an)m(y)g(are)h
-(not)630 3382 y(found.)150 3545 y Ft(typeset)870 3681
+(not)630 4505 y(found.)150 4666 y Ft(typeset)870 4800
 y(typeset)46 b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p
-Ft([=)p Fj(value)p Ft(])d(...)o(])630 3817 y Fu(The)31
+Ft([=)p Fj(value)p Ft(])d(...)o(])630 4935 y Fu(The)31
 b Ft(typeset)e Fu(command)i(is)g(supplied)f(for)h(compatibilit)m(y)i
-(with)e(the)g(Korn)f(shell.)44 b(It)31 b(is)630 3927
+(with)e(the)g(Korn)f(shell.)44 b(It)31 b(is)630 5045
 y(a)g(synon)m(ym)f(for)g(the)g Ft(declare)f Fu(builtin)h(command.)150
-4089 y Ft(ulimit)870 4225 y(ulimit)46 b([-HS])g(-a)870
-4335 y(ulimit)g([-HS])g([-bcdefiklmnpqrstuvxPRT])c([)p
-Fj(limit)p Ft(])630 4471 y(ulimit)25 b Fu(pro)m(vides)h(con)m(trol)i(o)
-m(v)m(er)g(the)f(resources)f(a)m(v)-5 b(ailable)29 b(to)e(pro)s(cesses)
-f(started)h(b)m(y)g(the)630 4580 y(shell,)i(on)f(systems)g(that)h(allo)
-m(w)h(suc)m(h)e(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i
-(it)e(is)h(in)m(terpreted)630 4690 y(as)i(follo)m(ws:)630
-4852 y Ft(-S)384 b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(soft)h(limit)
-g(asso)s(ciated)h(with)e(a)h(resource.)630 5015 y Ft(-H)384
-b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(hard)g(limit)h(asso)s(ciated)h
-(with)e(a)h(resource.)630 5177 y Ft(-a)384 b Fu(All)31
-b(curren)m(t)f(limits)h(are)g(rep)s(orted;)f(no)g(limits)h(are)g(set.)
-630 5340 y Ft(-b)384 b Fu(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i
-(bu\013er)e(size.)p eop end
+5205 y Ft(ulimit)870 5340 y(ulimit)46 b([-HS])g(-a)p
+eop end
 %%Page: 68 74
 TeXDict begin 68 73 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(68)630 299 y Ft(-c)384
-b Fu(The)30 b(maxim)m(um)g(size)h(of)g(core)g(\014les)f(created.)630
-446 y Ft(-d)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g(a)g(pro)s
-(cess's)f(data)h(segmen)m(t.)630 593 y Ft(-e)384 b Fu(The)30
-b(maxim)m(um)g(sc)m(heduling)h(priorit)m(y)f(\()p Ft(")p
-Fu(nice)p Ft(")p Fu(\).)630 740 y Ft(-f)384 b Fu(The)30
-b(maxim)m(um)g(size)h(of)g(\014les)f(written)h(b)m(y)f(the)g(shell)h
-(and)f(its)h(c)m(hildren.)630 887 y Ft(-i)384 b Fu(The)30
-b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e(signals.)630
-1034 y Ft(-k)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
-(kqueues)f(that)h(ma)m(y)g(b)s(e)e(allo)s(cated.)630
-1181 y Ft(-l)384 b Fu(The)30 b(maxim)m(um)g(size)h(that)g(ma)m(y)g(b)s
-(e)f(lo)s(c)m(k)m(ed)i(in)m(to)f(memory)-8 b(.)630 1328
+b(Shell)30 b(Builtin)h(Commands)2069 b(68)870 299 y Ft(ulimit)46
+b([-HS])g([-bcdefiklmnpqrstuvxPRT])c([)p Fj(limit)p Ft(])630
+432 y(ulimit)25 b Fu(pro)m(vides)h(con)m(trol)i(o)m(v)m(er)g(the)f
+(resources)f(a)m(v)-5 b(ailable)29 b(to)e(pro)s(cesses)f(started)h(b)m
+(y)g(the)630 542 y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc)m(h)e
+(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i(it)e(is)h(in)m
+(terpreted)630 651 y(as)i(follo)m(ws:)630 808 y Ft(-S)384
+b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(soft)h(limit)g(asso)s(ciated)h
+(with)e(a)h(resource.)630 965 y Ft(-H)384 b Fu(Change)30
+b(and)g(rep)s(ort)g(the)g(hard)g(limit)h(asso)s(ciated)h(with)e(a)h
+(resource.)630 1122 y Ft(-a)384 b Fu(All)31 b(curren)m(t)f(limits)h
+(are)g(rep)s(orted;)f(no)g(limits)h(are)g(set.)630 1279
+y Ft(-b)384 b Fu(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i(bu\013er)e
+(size.)630 1436 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g
+(core)g(\014les)f(created.)630 1592 y Ft(-d)384 b Fu(The)30
+b(maxim)m(um)g(size)h(of)g(a)g(pro)s(cess's)f(data)h(segmen)m(t.)630
+1749 y Ft(-e)384 b Fu(The)30 b(maxim)m(um)g(sc)m(heduling)h(priorit)m
+(y)f(\()p Ft(")p Fu(nice)p Ft(")p Fu(\).)630 1906 y Ft(-f)384
+b Fu(The)30 b(maxim)m(um)g(size)h(of)g(\014les)f(written)h(b)m(y)f(the)
+g(shell)h(and)f(its)h(c)m(hildren.)630 2063 y Ft(-i)384
+b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e
+(signals.)630 2220 y Ft(-k)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s
+(er)f(of)i(kqueues)f(that)h(ma)m(y)g(b)s(e)e(allo)s(cated.)630
+2377 y Ft(-l)384 b Fu(The)30 b(maxim)m(um)g(size)h(that)g(ma)m(y)g(b)s
+(e)f(lo)s(c)m(k)m(ed)i(in)m(to)f(memory)-8 b(.)630 2534
 y Ft(-m)384 b Fu(The)36 b(maxim)m(um)g(residen)m(t)h(set)g(size)g
-(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110 1438
-y(limit\).)630 1585 y Ft(-n)384 b Fu(The)38 b(maxim)m(um)h(n)m(um)m(b)s
+(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110 2643
+y(limit\).)630 2800 y Ft(-n)384 b Fu(The)38 b(maxim)m(um)h(n)m(um)m(b)s
 (er)e(of)i(op)s(en)f(\014le)h(descriptors)g(\(most)g(systems)g(do)1110
-1694 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).)
-630 1841 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630
-1988 y Ft(-q)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m
-(ytes)g(in)f Fm(posix)f Fu(message)j(queues.)630 2135
+2910 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).)
+630 3067 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630
+3223 y Ft(-q)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m
+(ytes)g(in)f Fm(posix)f Fu(message)j(queues.)630 3380
 y Ft(-r)384 b Fu(The)30 b(maxim)m(um)g(real-time)i(sc)m(heduling)f
-(priorit)m(y)-8 b(.)630 2282 y Ft(-s)384 b Fu(The)30
-b(maxim)m(um)g(stac)m(k)i(size.)630 2429 y Ft(-t)384
+(priorit)m(y)-8 b(.)630 3537 y Ft(-s)384 b Fu(The)30
+b(maxim)m(um)g(stac)m(k)i(size.)630 3694 y Ft(-t)384
 b Fu(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time)h(in)f(seconds.)
-630 2576 y Ft(-u)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
+630 3851 y Ft(-u)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
 (pro)s(cesses)f(a)m(v)-5 b(ailable)33 b(to)e(a)f(single)i(user.)630
-2723 y Ft(-v)384 b Fu(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f
+4008 y Ft(-v)384 b Fu(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f
 (memory)g(a)m(v)-5 b(ailable)44 b(to)e(the)g(shell,)1110
-2833 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
-2980 y Ft(-x)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
-(\014le)f(lo)s(c)m(ks.)630 3127 y Ft(-P)384 b Fu(The)30
+4117 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
+4274 y Ft(-x)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
+(\014le)f(lo)s(c)m(ks.)630 4431 y Ft(-P)384 b Fu(The)30
 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(pseudoterminals.)630
-3274 y Ft(-R)384 b Fu(The)27 b(maxim)m(um)h(time)h(a)f(real-time)i(pro)
+4588 y Ft(-R)384 b Fu(The)27 b(maxim)m(um)h(time)h(a)f(real-time)i(pro)
 s(cess)d(can)i(run)d(b)s(efore)i(blo)s(c)m(king,)h(in)1110
-3383 y(microseconds.)630 3530 y Ft(-T)384 b Fu(The)30
-b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 3677
+4697 y(microseconds.)630 4854 y Ft(-T)384 b Fu(The)30
+b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 5011
 y(If)36 b Fr(limit)k Fu(is)c(giv)m(en,)k(and)c(the)h
 Ft(-a)f Fu(option)h(is)f(not)h(used,)h Fr(limit)h Fu(is)e(the)g(new)f
-(v)-5 b(alue)37 b(of)g(the)630 3787 y(sp)s(eci\014ed)c(resource.)51
+(v)-5 b(alue)37 b(of)g(the)630 5121 y(sp)s(eci\014ed)c(resource.)51
 b(The)34 b(sp)s(ecial)g Fr(limit)j Fu(v)-5 b(alues)34
 b Ft(hard)p Fu(,)g Ft(soft)p Fu(,)g(and)f Ft(unlimited)e
-Fu(stand)630 3897 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g
+Fu(stand)630 5230 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g
 (curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)h(resp)s(ectiv)m(ely)-8
-b(.)48 b(A)630 4006 y(hard)24 b(limit)i(cannot)g(b)s(e)e(increased)h(b)
+b(.)48 b(A)630 5340 y(hard)24 b(limit)i(cannot)g(b)s(e)e(increased)h(b)
 m(y)g(a)h(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)j(a)d(soft)g
-(limit)h(ma)m(y)630 4116 y(b)s(e)37 b(increased)h(up)e(to)j(the)f(v)-5
-b(alue)38 b(of)f(the)h(hard)f(limit.)63 b(Otherwise,)39
-b(the)f(curren)m(t)f(v)-5 b(alue)630 4225 y(of)39 b(the)g(soft)h(limit)
-g(for)f(the)g(sp)s(eci\014ed)f(resource)h(is)g(prin)m(ted,)i(unless)e
-(the)g Ft(-H)f Fu(option)i(is)630 4335 y(supplied.)47
-b(When)33 b(more)g(than)g(one)g(resource)g(is)g(sp)s(eci\014ed,)g(the)g
-(limit)h(name)f(and)f(unit,)630 4445 y(if)27 b(appropriate,)h(are)f
-(prin)m(ted)g(b)s(efore)g(the)g(v)-5 b(alue.)40 b(When)27
-b(setting)h(new)e(limits,)j(if)e(neither)630 4554 y Ft(-H)38
-b Fu(nor)g Ft(-S)g Fu(is)h(supplied,)h(b)s(oth)e(the)h(hard)f(and)g
-(soft)h(limits)g(are)g(set.)67 b(If)38 b(no)h(option)g(is)630
-4664 y(giv)m(en,)c(then)f Ft(-f)e Fu(is)i(assumed.)49
-b(V)-8 b(alues)35 b(are)e(in)h(1024-b)m(yte)i(incremen)m(ts,)f(except)f
-(for)f Ft(-t)p Fu(,)630 4773 y(whic)m(h)e(is)g(in)g(seconds;)h
-Ft(-R)p Fu(,)g(whic)m(h)f(is)g(in)g(microseconds;)h Ft(-p)p
-Fu(,)g(whic)m(h)f(is)g(in)g(units)g(of)g(512-)630 4883
-y(b)m(yte)k(blo)s(c)m(ks;)j Ft(-P)p Fu(,)e Ft(-T)p Fu(,)f
-Ft(-b)p Fu(,)h Ft(-k)p Fu(,)f Ft(-n)g Fu(and)f Ft(-u)p
-Fu(,)h(whic)m(h)g(are)g(unscaled)g(v)-5 b(alues;)37 b(and,)f(when)630
-4992 y(in)g Fm(posix)f Fu(Mo)s(de)h(\(see)g(Section)h(6.11)g([Bash)g
-(POSIX)d(Mo)s(de],)k(page)f(109\),)i Ft(-c)c Fu(and)g
-Ft(-f)p Fu(,)630 5102 y(whic)m(h)30 b(are)h(in)f(512-b)m(yte)j
-(incremen)m(ts.)630 5230 y(The)h(return)g(status)h(is)f(zero)i(unless)e
-(an)g(in)m(v)-5 b(alid)36 b(option)f(or)f(argumen)m(t)i(is)e(supplied,)
-h(or)630 5340 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
-(limit.)p eop end
+(limit)h(ma)m(y)p eop end
 %%Page: 69 75
 TeXDict begin 69 74 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(69)150 299 y Ft(unalias)870
-428 y(unalias)46 b([-a])g([)p Fj(name)h Ft(...)g(])630
-558 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f Fr(name)k Fu(from)39
-b(the)i(list)f(of)g(aliases.)71 b(If)40 b Ft(-a)f Fu(is)h(supplied,)h
-(all)g(aliases)h(are)630 668 y(remo)m(v)m(ed.)g(Aliases)31
-b(are)g(describ)s(ed)e(in)h(Section)i(6.6)f([Aliases],)h(page)f(103.)
-150 898 y Fs(4.3)68 b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150
-1118 y Fk(4.3.1)63 b(The)41 b(Set)g(Builtin)150 1265
-y Fu(This)35 b(builtin)h(is)g(so)g(complicated)i(that)f(it)f(deserv)m
-(es)h(its)f(o)m(wn)g(section.)59 b Ft(set)35 b Fu(allo)m(ws)j(y)m(ou)e
-(to)h(c)m(hange)150 1374 y(the)c(v)-5 b(alues)34 b(of)f(shell)g
-(options)h(and)e(set)i(the)f(p)s(ositional)h(parameters,)h(or)e(to)h
-(displa)m(y)f(the)g(names)h(and)150 1484 y(v)-5 b(alues)31
-b(of)f(shell)h(v)-5 b(ariables.)150 1633 y Ft(set)870
-1763 y(set)47 b([-abefhkmnptuvxBCEHPT])42 b([-o)47 b
-Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
-Ft(...)o(])870 1873 y(set)i([+abefhkmnptuvxBCEHPT])42
+b(Shell)30 b(Builtin)h(Commands)2069 b(69)630 299 y(b)s(e)37
+b(increased)h(up)e(to)j(the)f(v)-5 b(alue)38 b(of)f(the)h(hard)f
+(limit.)63 b(Otherwise,)39 b(the)f(curren)m(t)f(v)-5
+b(alue)630 408 y(of)39 b(the)g(soft)h(limit)g(for)f(the)g(sp)s
+(eci\014ed)f(resource)h(is)g(prin)m(ted,)i(unless)e(the)g
+Ft(-H)f Fu(option)i(is)630 518 y(supplied.)47 b(When)33
+b(more)g(than)g(one)g(resource)g(is)g(sp)s(eci\014ed,)g(the)g(limit)h
+(name)f(and)f(unit,)630 628 y(if)27 b(appropriate,)h(are)f(prin)m(ted)g
+(b)s(efore)g(the)g(v)-5 b(alue.)40 b(When)27 b(setting)h(new)e(limits,)
+j(if)e(neither)630 737 y Ft(-H)38 b Fu(nor)g Ft(-S)g
+Fu(is)h(supplied,)h(b)s(oth)e(the)h(hard)f(and)g(soft)h(limits)g(are)g
+(set.)67 b(If)38 b(no)h(option)g(is)630 847 y(giv)m(en,)c(then)f
+Ft(-f)e Fu(is)i(assumed.)49 b(V)-8 b(alues)35 b(are)e(in)h(1024-b)m
+(yte)i(incremen)m(ts,)f(except)f(for)f Ft(-t)p Fu(,)630
+956 y(whic)m(h)e(is)g(in)g(seconds;)h Ft(-R)p Fu(,)g(whic)m(h)f(is)g
+(in)g(microseconds;)h Ft(-p)p Fu(,)g(whic)m(h)f(is)g(in)g(units)g(of)g
+(512-)630 1066 y(b)m(yte)k(blo)s(c)m(ks;)j Ft(-P)p Fu(,)e
+Ft(-T)p Fu(,)f Ft(-b)p Fu(,)h Ft(-k)p Fu(,)f Ft(-n)g
+Fu(and)f Ft(-u)p Fu(,)h(whic)m(h)g(are)g(unscaled)g(v)-5
+b(alues;)37 b(and,)f(when)630 1176 y(in)g Fm(posix)f
+Fu(Mo)s(de)h(\(see)g(Section)h(6.11)g([Bash)g(POSIX)d(Mo)s(de],)k(page)
+f(109\),)i Ft(-c)c Fu(and)g Ft(-f)p Fu(,)630 1285 y(whic)m(h)30
+b(are)h(in)f(512-b)m(yte)j(incremen)m(ts.)630 1418 y(The)h(return)g
+(status)h(is)f(zero)i(unless)e(an)g(in)m(v)-5 b(alid)36
+b(option)f(or)f(argumen)m(t)i(is)e(supplied,)h(or)630
+1528 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f(limit.)
+150 1685 y Ft(unalias)870 1818 y(unalias)46 b([-a])g([)p
+Fj(name)h Ft(...)g(])630 1951 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f
+Fr(name)k Fu(from)39 b(the)i(list)f(of)g(aliases.)71
+b(If)40 b Ft(-a)f Fu(is)h(supplied,)h(all)g(aliases)h(are)630
+2061 y(remo)m(v)m(ed.)g(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section)
+i(6.6)f([Aliases],)h(page)f(103.)150 2299 y Fs(4.3)68
+b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 2522 y Fk(4.3.1)63
+b(The)41 b(Set)g(Builtin)150 2669 y Fu(This)35 b(builtin)h(is)g(so)g
+(complicated)i(that)f(it)f(deserv)m(es)h(its)f(o)m(wn)g(section.)59
+b Ft(set)35 b Fu(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150
+2779 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
+(p)s(ositional)h(parameters,)h(or)e(to)h(displa)m(y)f(the)g(names)h
+(and)150 2888 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
+3045 y Ft(set)870 3178 y(set)47 b([-abefhkmnptuvxBCEHPT])42
+b([-o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
+Ft(...)o(])870 3288 y(set)i([+abefhkmnptuvxBCEHPT])42
 b([+o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
-Ft(...)o(])870 1982 y(set)i(-o)870 2092 y(set)g(+o)630
-2221 y Fu(If)22 b(no)h(options)g(or)g(argumen)m(ts)g(are)g(supplied,)g
+Ft(...)o(])870 3397 y(set)i(-o)870 3507 y(set)g(+o)630
+3640 y Fu(If)22 b(no)h(options)g(or)g(argumen)m(ts)g(are)g(supplied,)g
 Ft(set)f Fu(displa)m(ys)g(the)h(names)g(and)f(v)-5 b(alues)23
-b(of)g(all)630 2331 y(shell)j(v)-5 b(ariables)27 b(and)e(functions,)h
+b(of)g(all)630 3750 y(shell)j(v)-5 b(ariables)27 b(and)e(functions,)h
 (sorted)g(according)h(to)g(the)f(curren)m(t)f(lo)s(cale,)k(in)c(a)i
-(format)630 2440 y(that)i(ma)m(y)h(b)s(e)e(reused)g(as)h(input)f(for)h
+(format)630 3859 y(that)i(ma)m(y)h(b)s(e)e(reused)g(as)h(input)f(for)h
 (setting)h(or)e(resetting)i(the)f(curren)m(tly-set)h(v)-5
-b(ariables.)630 2550 y(Read-only)37 b(v)-5 b(ariables)37
+b(ariables.)630 3969 y(Read-only)37 b(v)-5 b(ariables)37
 b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fm(posix)g Fu(mo)s(de,)i(only)f
-(shell)f(v)-5 b(ariables)38 b(are)630 2660 y(listed.)630
-2789 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f
+(shell)f(v)-5 b(ariables)38 b(are)630 4079 y(listed.)630
+4212 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f
 (shell)h(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630
-2899 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
-3048 y Ft(-a)384 b Fu(Eac)m(h)37 b(v)-5 b(ariable)36
+4321 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
+4478 y Ft(-a)384 b Fu(Eac)m(h)37 b(v)-5 b(ariable)36
 b(or)g(function)g(that)g(is)g(created)h(or)f(mo)s(di\014ed)f(is)h(giv)m
-(en)h(the)1110 3158 y(exp)s(ort)28 b(attribute)h(and)f(mark)m(ed)g(for)
+(en)h(the)1110 4588 y(exp)s(ort)28 b(attribute)h(and)f(mark)m(ed)g(for)
 g(exp)s(ort)g(to)h(the)g(en)m(vironmen)m(t)f(of)h(sub-)1110
-3268 y(sequen)m(t)i(commands.)630 3417 y Ft(-b)384 b
+4697 y(sequen)m(t)i(commands.)630 4854 y Ft(-b)384 b
 Fu(Cause)44 b(the)h(status)g(of)f(terminated)h(bac)m(kground)g(jobs)f
-(to)h(b)s(e)f(rep)s(orted)1110 3527 y(immediately)-8
+(to)h(b)s(e)f(rep)s(orted)1110 4964 y(immediately)-8
 b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)g(the)g(next)g
-(primary)g(prompt.)630 3676 y Ft(-e)384 b Fu(Exit)65
+(primary)g(prompt.)630 5121 y Ft(-e)384 b Fu(Exit)65
 b(immediately)g(if)f(a)h(pip)s(eline)e(\(see)i(Section)g(3.2.3)h([Pip)s
-(elines],)1110 3786 y(page)51 b(10\),)58 b(whic)m(h)50
+(elines],)1110 5230 y(page)51 b(10\),)58 b(whic)m(h)50
 b(ma)m(y)h(consist)h(of)e(a)i(single)f(simple)g(command)f(\(see)1110
-3895 y(Section)30 b(3.2.2)i([Simple)d(Commands],)g(page)h(9\),)h(a)f
-(list)g(\(see)h(Section)f(3.2.4)1110 4005 y([Lists],)60
+5340 y(Section)30 b(3.2.2)i([Simple)d(Commands],)g(page)h(9\),)h(a)f
+(list)g(\(see)h(Section)f(3.2.4)p eop end
+%%Page: 70 76
+TeXDict begin 70 75 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(70)1110 299 y([Lists],)60
 b(page)55 b(10\),)60 b(or)54 b(a)g(comp)s(ound)e(command)h(\(see)i
-(Section)f(3.2.5)1110 4115 y([Comp)s(ound)60 b(Commands],)70
+(Section)f(3.2.5)1110 408 y([Comp)s(ound)60 b(Commands],)70
 b(page)63 b(11\))g(returns)e(a)i(non-zero)f(status.)1110
-4224 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
-(that)h(fails)f(is)g(part)g(of)h(the)1110 4334 y(command)g(list)h
+518 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
+(that)h(fails)f(is)g(part)g(of)h(the)1110 628 y(command)g(list)h
 (immediately)g(follo)m(wing)g(a)g Ft(while)e Fu(or)h
-Ft(until)e Fu(k)m(eyw)m(ord,)1110 4443 y(part)61 b(of)g(the)g(test)h
-(in)e(an)h Ft(if)f Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g
-(command)1110 4553 y(executed)50 b(in)e(a)h Ft(&&)f Fu(or)h
-Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
-4662 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f
+Ft(until)e Fu(k)m(eyw)m(ord,)1110 737 y(part)61 b(of)g(the)g(test)h(in)
+e(an)h Ft(if)f Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g(command)
+1110 847 y(executed)50 b(in)e(a)h Ft(&&)f Fu(or)h Ft(||)f
+Fu(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
+956 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f
 (in)g(a)g(pip)s(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110
-4772 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
+1066 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
 (with)e Ft(!)p Fu(.)48 b(If)33 b(a)g(comp)s(ound)1110
-4882 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
-(status)f(b)s(ecause)1110 4991 y(a)k(command)g(failed)g(while)g
+1176 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
+(status)f(b)s(ecause)1110 1285 y(a)k(command)g(failed)g(while)g
 Ft(-e)f Fu(w)m(as)i(b)s(eing)e(ignored,)j(the)e(shell)g(do)s(es)g(not)
-1110 5101 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g
+1110 1395 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g
 (is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)1110
-5230 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)m(t)g
-(and)f(eac)m(h)h(subshell)f(en-)1110 5340 y(vironmen)m(t)j(separately)i
-(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)p
-eop end
-%%Page: 70 76
-TeXDict begin 70 75 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(70)1110 299 y(vironmen)m(t],)36
-b(page)f(44\),)i(and)d(ma)m(y)h(cause)f(subshells)g(to)h(exit)g(b)s
-(efore)f(exe-)1110 408 y(cuting)d(all)g(the)g(commands)f(in)g(the)g
-(subshell.)1110 546 y(If)41 b(a)g(comp)s(ound)e(command)i(or)g(shell)g
-(function)g(executes)h(in)f(a)g(con)m(text)1110 656 y(where)31
-b Ft(-e)g Fu(is)g(b)s(eing)g(ignored,)h(none)f(of)h(the)f(commands)g
-(executed)h(within)1110 766 y(the)j(comp)s(ound)f(command)h(or)g
-(function)f(b)s(o)s(dy)g(will)h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110
-875 y Ft(-e)25 b Fu(setting,)j(ev)m(en)e(if)g Ft(-e)f
-Fu(is)h(set)g(and)f(a)h(command)g(returns)e(a)i(failure)g(status.)1110
-985 y(If)32 b(a)i(comp)s(ound)d(command)i(or)g(shell)g(function)f(sets)
-i Ft(-e)e Fu(while)h(executing)1110 1094 y(in)40 b(a)h(con)m(text)i
-(where)d Ft(-e)g Fu(is)h(ignored,)j(that)d(setting)h(will)f(not)g(ha)m
-(v)m(e)h(an)m(y)1110 1204 y(e\013ect)g(un)m(til)e(the)h(comp)s(ound)e
-(command)h(or)g(the)g(command)g(con)m(taining)1110 1314
-y(the)31 b(function)f(call)h(completes.)630 1480 y Ft(-f)384
-b Fu(Disable)31 b(\014lename)g(expansion)f(\(globbing\).)630
-1646 y Ft(-h)384 b Fu(Lo)s(cate)33 b(and)e(remem)m(b)s(er)h(\(hash\))g
-(commands)f(as)h(they)g(are)g(lo)s(ok)m(ed)h(up)e(for)1110
-1756 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
-(default.)630 1922 y Ft(-k)384 b Fu(All)34 b(argumen)m(ts)g(in)f(the)h
-(form)f(of)g(assignmen)m(t)h(statemen)m(ts)i(are)d(placed)h(in)1110
-2032 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f
-(those)i(that)f(precede)g(the)1110 2142 y(command)30
-b(name.)630 2308 y Ft(-m)384 b Fu(Job)28 b(con)m(trol)h(is)f(enabled)g
+1532 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)m(t)g
+(and)f(eac)m(h)h(subshell)f(en-)1110 1641 y(vironmen)m(t)j(separately)i
+(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
+1751 y(vironmen)m(t],)i(page)f(44\),)i(and)d(ma)m(y)h(cause)f
+(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 1861 y(cuting)d(all)g
+(the)g(commands)f(in)g(the)g(subshell.)1110 1998 y(If)41
+b(a)g(comp)s(ound)e(command)i(or)g(shell)g(function)g(executes)h(in)f
+(a)g(con)m(text)1110 2107 y(where)31 b Ft(-e)g Fu(is)g(b)s(eing)g
+(ignored,)h(none)f(of)h(the)f(commands)g(executed)h(within)1110
+2217 y(the)j(comp)s(ound)f(command)h(or)g(function)f(b)s(o)s(dy)g(will)
+h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110 2326 y Ft(-e)25
+b Fu(setting,)j(ev)m(en)e(if)g Ft(-e)f Fu(is)h(set)g(and)f(a)h(command)
+g(returns)e(a)i(failure)g(status.)1110 2436 y(If)32 b(a)i(comp)s(ound)d
+(command)i(or)g(shell)g(function)f(sets)i Ft(-e)e Fu(while)h(executing)
+1110 2545 y(in)40 b(a)h(con)m(text)i(where)d Ft(-e)g
+Fu(is)h(ignored,)j(that)d(setting)h(will)f(not)g(ha)m(v)m(e)h(an)m(y)
+1110 2655 y(e\013ect)g(un)m(til)e(the)h(comp)s(ound)e(command)h(or)g
+(the)g(command)g(con)m(taining)1110 2765 y(the)31 b(function)f(call)h
+(completes.)630 2929 y Ft(-f)384 b Fu(Disable)31 b(\014lename)g
+(expansion)f(\(globbing\).)630 3093 y Ft(-h)384 b Fu(Lo)s(cate)33
+b(and)e(remem)m(b)s(er)h(\(hash\))g(commands)f(as)h(they)g(are)g(lo)s
+(ok)m(ed)h(up)e(for)1110 3203 y(execution.)42 b(This)29
+b(option)i(is)g(enabled)f(b)m(y)g(default.)630 3367 y
+Ft(-k)384 b Fu(All)34 b(argumen)m(ts)g(in)f(the)h(form)f(of)g
+(assignmen)m(t)h(statemen)m(ts)i(are)d(placed)h(in)1110
+3477 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f
+(those)i(that)f(precede)g(the)1110 3587 y(command)30
+b(name.)630 3751 y Ft(-m)384 b Fu(Job)28 b(con)m(trol)h(is)f(enabled)g
 (\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(118\).)41
-b(All)1110 2418 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
+b(All)1110 3861 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
 (cess)f(group.)40 b(When)27 b(a)h(bac)m(kground)f(job)1110
-2527 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
-(taining)i(its)f(exit)g(status.)630 2694 y Ft(-n)384
+3970 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
+(taining)i(its)f(exit)g(status.)630 4134 y Ft(-n)384
 b Fu(Read)38 b(commands)f(but)f(do)i(not)f(execute)i(them.)62
-b(This)37 b(ma)m(y)h(b)s(e)f(used)f(to)1110 2803 y(c)m(hec)m(k)d(a)e
+b(This)37 b(ma)m(y)h(b)s(e)f(used)f(to)1110 4244 y(c)m(hec)m(k)d(a)e
 (script)g(for)g(syn)m(tax)h(errors.)42 b(This)30 b(option)i(is)f
-(ignored)g(b)m(y)g(in)m(terac-)1110 2913 y(tiv)m(e)h(shells.)630
-3079 y Ft(-o)e Fj(option-name)1110 3189 y Fu(Set)44 b(the)h(option)f
+(ignored)g(b)m(y)g(in)m(terac-)1110 4354 y(tiv)m(e)h(shells.)630
+4518 y Ft(-o)e Fj(option-name)1110 4628 y Fu(Set)44 b(the)h(option)f
 (corresp)s(onding)f(to)i Fr(option-name)p Fu(.)83 b(If)44
-b Ft(-o)f Fu(is)h(supplied)1110 3298 y(with)29 b(no)h
+b Ft(-o)f Fu(is)h(supplied)1110 4737 y(with)29 b(no)h
 Fr(option-name)p Fu(,)h Ft(set)e Fu(prin)m(ts)g(the)g(curren)m(t)h
-(shell)g(options)g(settings.)1110 3408 y(If)37 b Ft(+o)g
+(shell)g(options)g(settings.)1110 4847 y(If)37 b Ft(+o)g
 Fu(is)h(supplied)e(with)h(no)h Fr(option-name)p Fu(,)i
 Ft(set)d Fu(prin)m(ts)g(a)h(series)g(of)g Ft(set)1110
-3518 y Fu(commands)31 b(to)i(recreate)g(the)f(curren)m(t)g(option)g
-(settings)h(on)f(the)g(standard)1110 3627 y(output.)40
-b(V)-8 b(alid)32 b(option)f(names)f(are:)1110 3794 y
-Ft(allexport)1590 3903 y Fu(Same)g(as)h Ft(-a)p Fu(.)1110
-4070 y Ft(braceexpand)1590 4179 y Fu(Same)f(as)h Ft(-B)p
-Fu(.)1110 4346 y Ft(emacs)240 b Fu(Use)25 b(an)f Ft(emacs)p
-Fu(-st)m(yle)h(line)f(editing)h(in)m(terface)h(\(see)g(Chapter)e(8)1590
-4455 y([Command)33 b(Line)g(Editing],)h(page)h(122\).)51
-b(This)32 b(also)i(a\013ects)1590 4565 y(the)d(editing)g(in)m(terface)h
-(used)d(for)h Ft(read)f(-e)p Fu(.)1110 4731 y Ft(errexit)144
-b Fu(Same)30 b(as)h Ft(-e)p Fu(.)1110 4898 y Ft(errtrace)96
-b Fu(Same)30 b(as)h Ft(-E)p Fu(.)1110 5064 y Ft(functrace)1590
-5174 y Fu(Same)f(as)h Ft(-T)p Fu(.)1110 5340 y Ft(hashall)144
-b Fu(Same)30 b(as)h Ft(-h)p Fu(.)p eop end
+4956 y Fu(commands)31 b(to)i(recreate)g(the)f(curren)m(t)g(option)g
+(settings)h(on)f(the)g(standard)1110 5066 y(output.)40
+b(V)-8 b(alid)32 b(option)f(names)f(are:)1110 5230 y
+Ft(allexport)1590 5340 y Fu(Same)g(as)h Ft(-a)p Fu(.)p
+eop end
 %%Page: 71 77
 TeXDict begin 71 76 bop 150 -116 a Fu(Chapter)30 b(4:)41
 b(Shell)30 b(Builtin)h(Commands)2069 b(71)1110 299 y
-Ft(histexpand)1590 408 y Fu(Same)30 b(as)h Ft(-H)p Fu(.)1110
-570 y Ft(history)144 b Fu(Enable)39 b(command)g(history)-8
-b(,)42 b(as)d(describ)s(ed)f(in)h(Section)h(9.1)1590
-680 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(159.)60
-b(This)36 b(option)h(is)f(on)1590 789 y(b)m(y)30 b(default)h(in)f(in)m
-(teractiv)m(e)j(shells.)1110 951 y Ft(ignoreeof)1590
-1060 y Fu(An)d(in)m(teractiv)m(e)j(shell)e(will)g(not)f(exit)h(up)s(on)
-e(reading)i(EOF.)1110 1222 y Ft(keyword)144 b Fu(Same)30
-b(as)h Ft(-k)p Fu(.)1110 1383 y Ft(monitor)144 b Fu(Same)30
-b(as)h Ft(-m)p Fu(.)1110 1545 y Ft(noclobber)1590 1654
-y Fu(Same)f(as)h Ft(-C)p Fu(.)1110 1816 y Ft(noexec)192
-b Fu(Same)30 b(as)h Ft(-n)p Fu(.)1110 1977 y Ft(noglob)192
-b Fu(Same)30 b(as)h Ft(-f)p Fu(.)1110 2139 y Ft(nolog)240
-b Fu(Curren)m(tly)30 b(ignored.)1110 2300 y Ft(notify)192
-b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110 2462 y Ft(nounset)144
-b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110 2623 y Ft(onecmd)192
-b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110 2785 y Ft(physical)96
-b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110 2946 y Ft(pipefail)96
-b Fu(If)44 b(set,)k(the)d(return)e(v)-5 b(alue)45 b(of)f(a)h(pip)s
-(eline)e(is)i(the)f(v)-5 b(alue)45 b(of)1590 3056 y(the)33
-b(last)h(\(righ)m(tmost\))h(command)e(to)h(exit)g(with)f(a)g(non-zero)
-1590 3165 y(status,)28 b(or)f(zero)g(if)f(all)i(commands)e(in)g(the)h
-(pip)s(eline)f(exit)i(suc-)1590 3275 y(cessfully)-8 b(.)41
-b(This)30 b(option)h(is)f(disabled)g(b)m(y)h(default.)1110
-3437 y Ft(posix)240 b Fu(Change)30 b(the)g(b)s(eha)m(vior)h(of)f(Bash)g
-(where)g(the)g(default)h(op)s(era-)1590 3546 y(tion)25
-b(di\013ers)f(from)g(the)h Fm(posix)f Fu(standard)f(to)i(matc)m(h)h
-(the)f(stan-)1590 3656 y(dard)h(\(see)j(Section)f(6.11)h([Bash)f(POSIX)
-e(Mo)s(de],)j(page)f(109\).)1590 3765 y(This)37 b(is)g(in)m(tended)g
-(to)h(mak)m(e)g(Bash)g(b)s(eha)m(v)m(e)g(as)g(a)f(strict)h(su-)1590
-3875 y(p)s(erset)30 b(of)h(that)f(standard.)1110 4036
-y Ft(privileged)1590 4146 y Fu(Same)g(as)h Ft(-p)p Fu(.)1110
-4308 y Ft(verbose)144 b Fu(Same)30 b(as)h Ft(-v)p Fu(.)1110
-4469 y Ft(vi)384 b Fu(Use)36 b(a)g Ft(vi)p Fu(-st)m(yle)g(line)g
+Ft(braceexpand)1590 408 y Fu(Same)30 b(as)h Ft(-B)p Fu(.)1110
+573 y Ft(emacs)240 b Fu(Use)25 b(an)f Ft(emacs)p Fu(-st)m(yle)h(line)f
+(editing)h(in)m(terface)h(\(see)g(Chapter)e(8)1590 682
+y([Command)33 b(Line)g(Editing],)h(page)h(122\).)51 b(This)32
+b(also)i(a\013ects)1590 792 y(the)d(editing)g(in)m(terface)h(used)d
+(for)h Ft(read)f(-e)p Fu(.)1110 956 y Ft(errexit)144
+b Fu(Same)30 b(as)h Ft(-e)p Fu(.)1110 1121 y Ft(errtrace)96
+b Fu(Same)30 b(as)h Ft(-E)p Fu(.)1110 1285 y Ft(functrace)1590
+1395 y Fu(Same)f(as)h Ft(-T)p Fu(.)1110 1559 y Ft(hashall)144
+b Fu(Same)30 b(as)h Ft(-h)p Fu(.)1110 1724 y Ft(histexpand)1590
+1833 y Fu(Same)f(as)h Ft(-H)p Fu(.)1110 1998 y Ft(history)144
+b Fu(Enable)39 b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h
+(Section)h(9.1)1590 2107 y([Bash)d(History)g(F)-8 b(acilities],)41
+b(page)c(159.)60 b(This)36 b(option)h(is)f(on)1590 2217
+y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110
+2381 y Ft(ignoreeof)1590 2491 y Fu(An)d(in)m(teractiv)m(e)j(shell)e
+(will)g(not)f(exit)h(up)s(on)e(reading)i(EOF.)1110 2655
+y Ft(keyword)144 b Fu(Same)30 b(as)h Ft(-k)p Fu(.)1110
+2819 y Ft(monitor)144 b Fu(Same)30 b(as)h Ft(-m)p Fu(.)1110
+2984 y Ft(noclobber)1590 3093 y Fu(Same)f(as)h Ft(-C)p
+Fu(.)1110 3258 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p
+Fu(.)1110 3422 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p
+Fu(.)1110 3587 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110
+3751 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110
+3915 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110
+4080 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110
+4244 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110
+4408 y Ft(pipefail)96 b Fu(If)44 b(set,)k(the)d(return)e(v)-5
+b(alue)45 b(of)f(a)h(pip)s(eline)e(is)i(the)f(v)-5 b(alue)45
+b(of)1590 4518 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
+(exit)g(with)f(a)g(non-zero)1590 4628 y(status,)28 b(or)f(zero)g(if)f
+(all)i(commands)e(in)g(the)h(pip)s(eline)f(exit)i(suc-)1590
+4737 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
+(default.)1110 4902 y Ft(posix)240 b Fu(Change)30 b(the)g(b)s(eha)m
+(vior)h(of)f(Bash)g(where)g(the)g(default)h(op)s(era-)1590
+5011 y(tion)25 b(di\013ers)f(from)g(the)h Fm(posix)f
+Fu(standard)f(to)i(matc)m(h)h(the)f(stan-)1590 5121 y(dard)h(\(see)j
+(Section)f(6.11)h([Bash)f(POSIX)e(Mo)s(de],)j(page)f(109\).)1590
+5230 y(This)37 b(is)g(in)m(tended)g(to)h(mak)m(e)g(Bash)g(b)s(eha)m(v)m
+(e)g(as)g(a)f(strict)h(su-)1590 5340 y(p)s(erset)30 b(of)h(that)f
+(standard.)p eop end
+%%Page: 72 78
+TeXDict begin 72 77 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(72)1110 299 y
+Ft(privileged)1590 408 y Fu(Same)30 b(as)h Ft(-p)p Fu(.)1110
+560 y Ft(verbose)144 b Fu(Same)30 b(as)h Ft(-v)p Fu(.)1110
+712 y Ft(vi)384 b Fu(Use)36 b(a)g Ft(vi)p Fu(-st)m(yle)g(line)g
 (editing)g(in)m(terface.)58 b(This)35 b(also)h(a\013ects)1590
-4579 y(the)31 b(editing)g(in)m(terface)h(used)d(for)h
-Ft(read)f(-e)p Fu(.)1110 4740 y Ft(xtrace)192 b Fu(Same)30
-b(as)h Ft(-x)p Fu(.)630 4902 y Ft(-p)384 b Fu(T)-8 b(urn)33
+822 y(the)31 b(editing)g(in)m(terface)h(used)d(for)h
+Ft(read)f(-e)p Fu(.)1110 973 y Ft(xtrace)192 b Fu(Same)30
+b(as)h Ft(-x)p Fu(.)630 1125 y Ft(-p)384 b Fu(T)-8 b(urn)33
 b(on)h(privileged)h(mo)s(de.)51 b(In)34 b(this)g(mo)s(de,)h(the)f
-Ft($BASH_ENV)e Fu(and)h Ft($ENV)1110 5011 y Fu(\014les)23
+Ft($BASH_ENV)e Fu(and)h Ft($ENV)1110 1235 y Fu(\014les)23
 b(are)h(not)f(pro)s(cessed,)h(shell)g(functions)e(are)i(not)f
-(inherited)g(from)f(the)i(en-)1110 5121 y(vironmen)m(t,)h(and)e(the)g
+(inherited)g(from)f(the)i(en-)1110 1344 y(vironmen)m(t,)h(and)e(the)g
 Ft(SHELLOPTS)p Fu(,)f Ft(BASHOPTS)p Fu(,)h Ft(CDPATH)e
-Fu(and)i Ft(GLOBIGNORE)1110 5230 y Fu(v)-5 b(ariables,)23
+Fu(and)i Ft(GLOBIGNORE)1110 1454 y Fu(v)-5 b(ariables,)23
 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m(vironmen)m(t,)i(are)e
-(ignored.)38 b(If)20 b(the)h(shell)1110 5340 y(is)37
+(ignored.)38 b(If)20 b(the)h(shell)1110 1563 y(is)37
 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d(\(group\))g(id)g(not)g
-(equal)h(to)g(the)f(real)p eop end
-%%Page: 72 78
-TeXDict begin 72 77 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(72)1110 299 y(user)38
-b(\(group\))h(id,)i(and)d(the)h Ft(-p)f Fu(option)i(is)e(not)i
-(supplied,)f(these)h(actions)1110 408 y(are)32 b(tak)m(en)i(and)d(the)h
-(e\013ectiv)m(e)j(user)c(id)h(is)g(set)h(to)f(the)h(real)f(user)g(id.)
-45 b(If)32 b(the)1110 518 y Ft(-p)i Fu(option)h(is)g(supplied)f(at)h
-(startup,)h(the)f(e\013ectiv)m(e)i(user)d(id)g(is)h(not)g(reset.)1110
-628 y(T)-8 b(urning)35 b(this)i(option)g(o\013)g(causes)g(the)g
+(equal)h(to)g(the)f(real)1110 1673 y(user)h(\(group\))h(id,)i(and)d
+(the)h Ft(-p)f Fu(option)i(is)e(not)i(supplied,)f(these)h(actions)1110
+1783 y(are)32 b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)
+g(set)h(to)f(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110
+1892 y Ft(-p)i Fu(option)h(is)g(supplied)f(at)h(startup,)h(the)f
+(e\013ectiv)m(e)i(user)d(id)g(is)h(not)g(reset.)1110
+2002 y(T)-8 b(urning)35 b(this)i(option)g(o\013)g(causes)g(the)g
 (e\013ectiv)m(e)i(user)d(and)g(group)g(ids)g(to)1110
-737 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630
-897 y Ft(-r)384 b Fu(Enable)51 b(restricted)h(shell)g(mo)s(de)f(\(see)h
-(Section)g(6.10)h([The)e(Restricted)1110 1006 y(Shell],)42
+2111 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630
+2263 y Ft(-r)384 b Fu(Enable)51 b(restricted)h(shell)g(mo)s(de)f(\(see)
+h(Section)g(6.10)h([The)e(Restricted)1110 2373 y(Shell],)42
 b(page)e(109\).)69 b(This)39 b(option)g(cannot)h(b)s(e)f(unset)g(once)h
-(it)g(has)f(b)s(een)1110 1116 y(set.)630 1275 y Ft(-t)384
+(it)g(has)f(b)s(een)1110 2482 y(set.)630 2634 y Ft(-t)384
 b Fu(Exit)31 b(after)g(reading)f(and)g(executing)h(one)g(command.)630
-1435 y Ft(-u)384 b Fu(T)-8 b(reat)25 b(unset)e(v)-5 b(ariables)25
+2786 y Ft(-u)384 b Fu(T)-8 b(reat)25 b(unset)e(v)-5 b(ariables)25
 b(and)e(parameters)h(other)h(than)e(the)h(sp)s(ecial)h(param-)1110
-1544 y(eters)32 b(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)g(or)f(arra)m
+2895 y(eters)32 b(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)g(or)f(arra)m
 (y)h(v)-5 b(ariables)32 b(subscripted)e(with)h(`)p Ft(@)p
-Fu(')g(or)h(`)p Ft(*)p Fu(',)f(as)h(an)1110 1654 y(error)24
+Fu(')g(or)h(`)p Ft(*)p Fu(',)f(as)h(an)1110 3005 y(error)24
 b(when)g(p)s(erforming)g(parameter)h(expansion.)39 b(An)24
-b(error)h(message)h(will)1110 1763 y(b)s(e)37 b(written)h(to)h(the)f
+b(error)h(message)h(will)1110 3114 y(b)s(e)37 b(written)h(to)h(the)f
 (standard)f(error,)i(and)f(a)g(non-in)m(teractiv)m(e)j(shell)d(will)
-1110 1873 y(exit.)630 2032 y Ft(-v)384 b Fu(Prin)m(t)30
+1110 3224 y(exit.)630 3376 y Ft(-v)384 b Fu(Prin)m(t)30
 b(shell)h(input)e(lines)i(as)g(they)f(are)h(read.)630
-2192 y Ft(-x)384 b Fu(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f
+3528 y Ft(-x)384 b Fu(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f
 (commands,)i Ft(for)e Fu(commands,)i Ft(case)d Fu(commands,)1110
-2301 y Ft(select)29 b Fu(commands,)j(and)e(arithmetic)j
-Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110 2411
+3637 y Ft(select)29 b Fu(commands,)j(and)e(arithmetic)j
+Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110 3747
 y(men)m(ts)g(or)g(asso)s(ciated)h(w)m(ord)e(lists)h(to)g(standard)f
-(error)g(after)i(they)e(are)h(ex-)1110 2521 y(panded)20
+(error)g(after)i(they)e(are)h(ex-)1110 3856 y(panded)20
 b(and)h(b)s(efore)g(they)g(are)h(executed.)39 b(The)21
-b(shell)g(prin)m(ts)g(the)h(expanded)1110 2630 y(v)-5
+b(shell)g(prin)m(ts)g(the)h(expanded)1110 3966 y(v)-5
 b(alue)28 b(of)f(the)g Ft(PS4)g Fu(v)-5 b(ariable)28
 b(b)s(efore)f(the)g(command)g(and)g(its)g(expanded)g(ar-)1110
-2740 y(gumen)m(ts.)630 2899 y Ft(-B)384 b Fu(The)41 b(shell)g(will)g(p)
+4075 y(gumen)m(ts.)630 4227 y Ft(-B)384 b Fu(The)41 b(shell)g(will)g(p)
 s(erform)f(brace)h(expansion)g(\(see)h(Section)g(3.5.1)g([Brace)1110
-3009 y(Expansion],)30 b(page)h(24\).)42 b(This)30 b(option)h(is)f(on)g
-(b)m(y)h(default.)630 3168 y Ft(-C)384 b Fu(Prev)m(en)m(t)25
+4337 y(Expansion],)30 b(page)h(24\).)42 b(This)30 b(option)h(is)f(on)g
+(b)m(y)h(default.)630 4489 y Ft(-C)384 b Fu(Prev)m(en)m(t)25
 b(output)e(redirection)h(using)f(`)p Ft(>)p Fu(',)i(`)p
 Ft(>&)p Fu(',)g(and)e(`)p Ft(<>)p Fu(')g(from)h(o)m(v)m(erwriting)1110
-3278 y(existing)31 b(\014les.)630 3437 y Ft(-E)384 b
+4598 y(existing)31 b(\014les.)630 4750 y Ft(-E)384 b
 Fu(If)39 b(set,)j(an)m(y)e(trap)f(on)g Ft(ERR)g Fu(is)g(inherited)g(b)m
-(y)g(shell)h(functions,)h(command)1110 3547 y(substitutions,)35
+(y)g(shell)h(functions,)h(command)1110 4859 y(substitutions,)35
 b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.)
-1110 3656 y(The)d Ft(ERR)f Fu(trap)i(is)f(normally)h(not)f(inherited)g
-(in)g(suc)m(h)g(cases.)630 3816 y Ft(-H)384 b Fu(Enable)38
+1110 4969 y(The)d Ft(ERR)f Fu(trap)i(is)f(normally)h(not)f(inherited)g
+(in)g(suc)m(h)g(cases.)630 5121 y Ft(-H)384 b Fu(Enable)38
 b(`)p Ft(!)p Fu(')h(st)m(yle)h(history)e(substitution)g(\(see)h
-(Section)h(9.3)f([History)g(In-)1110 3925 y(teraction],)g(page)d
+(Section)h(9.3)f([History)g(In-)1110 5230 y(teraction],)g(page)d
 (161\).)57 b(This)34 b(option)i(is)f(on)g(b)m(y)h(default)f(for)g(in)m
-(teractiv)m(e)1110 4035 y(shells.)630 4194 y Ft(-P)384
+(teractiv)m(e)1110 5340 y(shells.)p eop end
+%%Page: 73 79
+TeXDict begin 73 78 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(73)630 299 y Ft(-P)384
 b Fu(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s(olic)e(links)g
-(when)f(p)s(erforming)g(commands)1110 4304 y(suc)m(h)29
+(when)f(p)s(erforming)g(commands)1110 408 y(suc)m(h)29
 b(as)h Ft(cd)f Fu(whic)m(h)g(c)m(hange)h(the)g(curren)m(t)f(directory)
--8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 4413 y(tory)j(is)g(used)
-f(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i
-(c)m(hain)f(of)1110 4523 y(directories)j(when)d(p)s(erforming)h
+-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 518 y(tory)j(is)g(used)f
+(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i
+(c)m(hain)f(of)1110 628 y(directories)j(when)d(p)s(erforming)h
 (commands)g(whic)m(h)g(c)m(hange)i(the)f(curren)m(t)1110
-4633 y(directory)-8 b(.)1110 4767 y(F)g(or)42 b(example,)i(if)d
+737 y(directory)-8 b(.)1110 870 y(F)g(or)42 b(example,)i(if)d
 Ft(/usr/sys)e Fu(is)i(a)g(sym)m(b)s(olic)g(link)g(to)h
-Ft(/usr/local/sys)1110 4877 y Fu(then:)1350 5011 y Ft($)47
-b(cd)h(/usr/sys;)d(echo)i($PWD)1350 5121 y(/usr/sys)1350
-5230 y($)g(cd)h(..;)f(pwd)1350 5340 y(/usr)p eop end
-%%Page: 73 79
-TeXDict begin 73 78 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(73)1110 299 y(If)30
-b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 438 y Ft($)47
-b(cd)h(/usr/sys;)d(echo)i($PWD)1350 548 y(/usr/local/sys)1350
-657 y($)g(cd)h(..;)f(pwd)1350 767 y(/usr/local)630 936
-y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g Ft(DEBUG)e
-Fu(and)i Ft(RETURN)e Fu(are)i(inherited)g(b)m(y)f(shell)i(func-)1110
-1046 y(tions,)k(command)d(substitutions,)h(and)f(commands)g(executed)h
-(in)f(a)h(sub-)1110 1155 y(shell)33 b(en)m(vironmen)m(t.)49
+Ft(/usr/local/sys)1110 980 y Fu(then:)1350 1113 y Ft($)47
+b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1223 y(/usr/sys)1350
+1332 y($)g(cd)h(..;)f(pwd)1350 1442 y(/usr)1110 1575
+y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 1708
+y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1818 y(/usr/local/sys)
+1350 1927 y($)g(cd)h(..;)f(pwd)1350 2037 y(/usr/local)630
+2194 y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g
+Ft(DEBUG)e Fu(and)i Ft(RETURN)e Fu(are)i(inherited)g(b)m(y)f(shell)i
+(func-)1110 2303 y(tions,)k(command)d(substitutions,)h(and)f(commands)g
+(executed)h(in)f(a)h(sub-)1110 2413 y(shell)33 b(en)m(vironmen)m(t.)49
 b(The)32 b Ft(DEBUG)g Fu(and)g Ft(RETURN)f Fu(traps)h(are)i(normally)f
-(not)1110 1265 y(inherited)d(in)g(suc)m(h)g(cases.)630
-1434 y Ft(--)384 b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e
+(not)1110 2522 y(inherited)d(in)g(suc)m(h)g(cases.)630
+2679 y Ft(--)384 b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e
 (option,)k(then)c(the)h(p)s(ositional)g(parame-)1110
-1544 y(ters)31 b(are)g(unset.)40 b(Otherwise,)31 b(the)f(p)s(ositional)
-i(parameters)f(are)f(set)h(to)h(the)1110 1653 y Fr(argumen)m(ts)p
+2789 y(ters)31 b(are)g(unset.)40 b(Otherwise,)31 b(the)f(p)s(ositional)
+i(parameters)f(are)f(set)h(to)h(the)1110 2898 y Fr(argumen)m(ts)p
 Fu(,)f(ev)m(en)g(if)f(some)h(of)g(them)f(b)s(egin)g(with)g(a)h(`)p
-Ft(-)p Fu('.)630 1822 y Ft(-)432 b Fu(Signal)45 b(the)g(end)f(of)h
+Ft(-)p Fu('.)630 3055 y Ft(-)432 b Fu(Signal)45 b(the)g(end)f(of)h
 (options,)k(cause)c(all)h(remaining)e Fr(argumen)m(ts)49
-b Fu(to)d(b)s(e)1110 1932 y(assigned)33 b(to)h(the)g(p)s(ositional)g
+b Fu(to)d(b)s(e)1110 3164 y(assigned)33 b(to)h(the)g(p)s(ositional)g
 (parameters.)49 b(The)33 b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are)
-1110 2042 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m
-(ts,)j(the)e(p)s(ositional)g(parameters)1110 2151 y(remain)30
-b(unc)m(hanged.)630 2320 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)
+1110 3274 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m
+(ts,)j(the)e(p)s(ositional)g(parameters)1110 3384 y(remain)30
+b(unc)m(hanged.)630 3540 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)
 p Ft(-)p Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e(turned)g
-(o\013.)40 b(The)27 b(options)h(can)630 2430 y(also)36
+(o\013.)40 b(The)27 b(options)h(can)630 3650 y(also)36
 b(b)s(e)f(used)f(up)s(on)g(in)m(v)m(o)s(cation)j(of)e(the)g(shell.)56
 b(The)34 b(curren)m(t)h(set)h(of)f(options)h(ma)m(y)g(b)s(e)630
-2540 y(found)29 b(in)h Ft($-)p Fu(.)630 2679 y(The)43
+3759 y(found)29 b(in)h Ft($-)p Fu(.)630 3893 y(The)43
 b(remaining)h(N)f Fr(argumen)m(ts)48 b Fu(are)c(p)s(ositional)g
-(parameters)g(and)f(are)h(assigned,)j(in)630 2789 y(order,)30
+(parameters)g(and)f(are)h(assigned,)j(in)630 4002 y(order,)30
 b(to)h Ft($1)p Fu(,)f Ft($2)p Fu(,)36 b(.)22 b(.)g(.)42
 b Ft($N)p Fu(.)e(The)30 b(sp)s(ecial)h(parameter)g Ft(#)f
-Fu(is)g(set)h(to)g(N.)630 2928 y(The)f(return)f(status)i(is)f(alw)m(a)m
+Fu(is)g(set)h(to)g(N.)630 4135 y(The)f(return)f(status)i(is)f(alw)m(a)m
 (ys)i(zero)f(unless)f(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f
-(supplied.)150 3137 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
-3284 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
+(supplied.)150 4332 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
+4479 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
 (additional)f(shell)f(optional)i(b)s(eha)m(vior.)150
-3458 y Ft(shopt)870 3597 y(shopt)46 b([-pqsu])g([-o])h([)p
-Fj(optname)e Ft(...])630 3737 y Fu(T)-8 b(oggle)37 b(the)e(v)-5
+4635 y Ft(shopt)870 4768 y(shopt)46 b([-pqsu])g([-o])h([)p
+Fj(optname)e Ft(...])630 4902 y Fu(T)-8 b(oggle)37 b(the)e(v)-5
 b(alues)35 b(of)g(settings)h(con)m(trolling)g(optional)g(shell)f(b)s
-(eha)m(vior.)55 b(The)34 b(settings)630 3846 y(can)24
+(eha)m(vior.)55 b(The)34 b(settings)630 5011 y(can)24
 b(b)s(e)g(either)h(those)f(listed)h(b)s(elo)m(w,)h(or,)f(if)g(the)f
 Ft(-o)f Fu(option)i(is)f(used,)h(those)g(a)m(v)-5 b(ailable)26
-b(with)630 3956 y(the)k Ft(-o)f Fu(option)i(to)f(the)g
+b(with)630 5121 y(the)k Ft(-o)f Fu(option)i(to)f(the)g
 Ft(set)f Fu(builtin)h(command)f(\(see)i(Section)g(4.3.1)g([The)f(Set)g
-(Builtin],)630 4065 y(page)i(69\).)45 b(With)32 b(no)f(options,)h(or)g
+(Builtin],)630 5230 y(page)i(69\).)45 b(With)32 b(no)f(options,)h(or)g
 (with)f(the)g Ft(-p)g Fu(option,)h(a)g(list)g(of)f(all)i(settable)g
-(options)630 4175 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h
+(options)630 5340 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h
 (of)f(whether)g(or)g(not)g(eac)m(h)h(is)g(set;)h(if)e
-Fr(optname)5 b Fu(s)34 b(are)630 4285 y(supplied,)25
+Fr(optname)5 b Fu(s)34 b(are)p eop end
+%%Page: 74 80
+TeXDict begin 74 79 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(74)630 299 y(supplied,)25
 b(the)g(output)g(is)g(restricted)g(to)h(those)g(options.)39
-b(The)24 b Ft(-p)h Fu(option)g(causes)g(output)630 4394
+b(The)24 b Ft(-p)h Fu(option)g(causes)g(output)630 408
 y(to)30 b(b)s(e)f(displa)m(y)m(ed)g(in)g(a)h(form)f(that)g(ma)m(y)h(b)s
 (e)f(reused)f(as)i(input.)39 b(Other)29 b(options)g(ha)m(v)m(e)i(the)
-630 4504 y(follo)m(wing)h(meanings:)630 4673 y Ft(-s)384
+630 518 y(follo)m(wing)h(meanings:)630 680 y Ft(-s)384
 b Fu(Enable)30 b(\(set\))i(eac)m(h)f Fr(optname)p Fu(.)630
-4842 y Ft(-u)384 b Fu(Disable)31 b(\(unset\))g(eac)m(h)h
-Fr(optname)p Fu(.)630 5011 y Ft(-q)384 b Fu(Suppresses)28
+842 y Ft(-u)384 b Fu(Disable)31 b(\(unset\))g(eac)m(h)h
+Fr(optname)p Fu(.)630 1005 y Ft(-q)384 b Fu(Suppresses)28
 b(normal)h(output;)h(the)g(return)e(status)i(indicates)h(whether)e(the)
-1110 5121 y Fr(optname)37 b Fu(is)31 b(set)h(or)f(unset.)43
+1110 1114 y Fr(optname)37 b Fu(is)31 b(set)h(or)f(unset.)43
 b(If)31 b(m)m(ultiple)h Fr(optname)37 b Fu(argumen)m(ts)31
-b(are)h(giv)m(en)1110 5230 y(with)d Ft(-q)p Fu(,)f(the)i(return)d
+b(are)h(giv)m(en)1110 1224 y(with)d Ft(-q)p Fu(,)f(the)i(return)d
 (status)j(is)f(zero)g(if)g(all)h Fr(optname)5 b Fu(s)29
-b(are)h(enabled;)f(non-)1110 5340 y(zero)i(otherwise.)p
-eop end
-%%Page: 74 80
-TeXDict begin 74 79 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(74)630 299 y Ft(-o)384
-b Fu(Restricts)22 b(the)f(v)-5 b(alues)22 b(of)f Fr(optname)27
-b Fu(to)22 b(b)s(e)e(those)i(de\014ned)e(for)h(the)g
-Ft(-o)f Fu(option)1110 408 y(to)31 b(the)g Ft(set)e Fu(builtin)h(\(see)
-h(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(69\).)630
-570 y(If)e(either)i Ft(-s)e Fu(or)h Ft(-u)f Fu(is)h(used)f(with)g(no)h
-Fr(optname)35 b Fu(argumen)m(ts,)c Ft(shopt)d Fu(sho)m(ws)h(only)h
-(those)630 680 y(options)h(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp)s
-(ectiv)m(ely)-8 b(.)630 816 y(Unless)30 b(otherwise)h(noted,)g(the)g
-Ft(shopt)d Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32
-b(b)m(y)e(default.)630 951 y(The)d(return)f(status)i(when)e(listing)j
-(options)e(is)h(zero)g(if)f(all)i Fr(optname)5 b Fu(s)27
-b(are)h(enabled,)g(non-)630 1061 y(zero)40 b(otherwise.)66
-b(When)39 b(setting)h(or)f(unsetting)g(options,)i(the)e(return)f
-(status)h(is)g(zero)630 1170 y(unless)30 b(an)g Fr(optname)36
-b Fu(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)630
-1306 y(The)f(list)h(of)f Ft(shopt)f Fu(options)i(is:)630
-1468 y Ft(array_expand_once)1110 1577 y Fu(If)39 b(set,)j(the)d(shell)g
-(suppresses)e(m)m(ultiple)j(ev)-5 b(aluation)41 b(of)e(asso)s(ciativ)m
-(e)j(and)1110 1687 y(indexed)37 b(arra)m(y)h(subscripts)e(during)g
-(arithmetic)j(expression)e(ev)-5 b(aluation,)1110 1797
-y(while)23 b(executing)h(builtins)f(that)g(can)h(p)s(erform)d(v)-5
-b(ariable)24 b(assignmen)m(ts,)i(and)1110 1906 y(while)k(executing)i
+b(are)h(enabled;)f(non-)1110 1333 y(zero)i(otherwise.)630
+1496 y Ft(-o)384 b Fu(Restricts)22 b(the)f(v)-5 b(alues)22
+b(of)f Fr(optname)27 b Fu(to)22 b(b)s(e)e(those)i(de\014ned)e(for)h
+(the)g Ft(-o)f Fu(option)1110 1605 y(to)31 b(the)g Ft(set)e
+Fu(builtin)h(\(see)h(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f
+(69\).)630 1767 y(If)e(either)i Ft(-s)e Fu(or)h Ft(-u)f
+Fu(is)h(used)f(with)g(no)h Fr(optname)35 b Fu(argumen)m(ts,)c
+Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630 1877 y(options)h(whic)m(h)f
+(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m(ely)-8 b(.)630
+2013 y(Unless)30 b(otherwise)h(noted,)g(the)g Ft(shopt)d
+Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32 b(b)m(y)e(default.)630
+2149 y(The)d(return)f(status)i(when)e(listing)j(options)e(is)h(zero)g
+(if)f(all)i Fr(optname)5 b Fu(s)27 b(are)h(enabled,)g(non-)630
+2258 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f(unsetting)g
+(options,)i(the)e(return)f(status)h(is)g(zero)630 2368
+y(unless)30 b(an)g Fr(optname)36 b Fu(is)30 b(not)h(a)g(v)-5
+b(alid)30 b(shell)h(option.)630 2504 y(The)f(list)h(of)f
+Ft(shopt)f Fu(options)i(is:)630 2666 y Ft(array_expand_once)1110
+2776 y Fu(If)39 b(set,)j(the)d(shell)g(suppresses)e(m)m(ultiple)j(ev)-5
+b(aluation)41 b(of)e(asso)s(ciativ)m(e)j(and)1110 2885
+y(indexed)37 b(arra)m(y)h(subscripts)e(during)g(arithmetic)j
+(expression)e(ev)-5 b(aluation,)1110 2995 y(while)23
+b(executing)h(builtins)f(that)g(can)h(p)s(erform)d(v)-5
+b(ariable)24 b(assignmen)m(ts,)i(and)1110 3104 y(while)k(executing)i
 (builtins)e(that)h(p)s(erform)e(arra)m(y)i(dereferencing.)630
-2068 y Ft(assoc_expand_once)1110 2178 y Fu(Deprecated;)h(a)f(synon)m
-(ym)f(for)g Ft(array_expand_once)p Fu(.)630 2339 y Ft(autocd)192
+3267 y Ft(assoc_expand_once)1110 3376 y Fu(Deprecated;)h(a)f(synon)m
+(ym)f(for)g Ft(array_expand_once)p Fu(.)630 3538 y Ft(autocd)192
 b Fu(If)27 b(set,)h(a)g(command)f(name)g(that)h(is)f(the)g(name)g(of)h
-(a)f(directory)h(is)f(executed)1110 2449 y(as)j(if)f(it)h(w)m(ere)f
+(a)f(directory)h(is)f(executed)1110 3648 y(as)j(if)f(it)h(w)m(ere)f
 (the)h(argumen)m(t)g(to)g(the)f Ft(cd)g Fu(command.)40
-b(This)29 b(option)g(is)h(only)1110 2559 y(used)g(b)m(y)g(in)m
-(teractiv)m(e)j(shells.)630 2720 y Ft(cdable_vars)1110
-2830 y Fu(If)h(this)h(is)g(set,)i(an)e(argumen)m(t)g(to)h(the)f
-Ft(cd)f Fu(builtin)h(command)f(that)i(is)f(not)1110 2939
+b(This)29 b(option)g(is)h(only)1110 3758 y(used)g(b)m(y)g(in)m
+(teractiv)m(e)j(shells.)630 3920 y Ft(cdable_vars)1110
+4029 y Fu(If)h(this)h(is)g(set,)i(an)e(argumen)m(t)g(to)h(the)f
+Ft(cd)f Fu(builtin)h(command)f(that)i(is)f(not)1110 4139
 y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h(name)f(of)h(a)g(v)
--5 b(ariable)31 b(whose)g(v)-5 b(alue)31 b(is)1110 3049
-y(the)g(directory)f(to)i(c)m(hange)f(to.)630 3211 y Ft(cdspell)144
+-5 b(ariable)31 b(whose)g(v)-5 b(alue)31 b(is)1110 4248
+y(the)g(directory)f(to)i(c)m(hange)f(to.)630 4411 y Ft(cdspell)144
 b Fu(If)27 b(set,)h(minor)f(errors)f(in)h(the)g(sp)s(elling)h(of)f(a)g
-(directory)h(comp)s(onen)m(t)f(in)g(a)h Ft(cd)1110 3320
+(directory)h(comp)s(onen)m(t)f(in)g(a)h Ft(cd)1110 4520
 y Fu(command)i(will)h(b)s(e)f(corrected.)43 b(The)30
 b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110
-3430 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
+4630 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
 b(and)40 b(a)i(c)m(haracter)h(to)s(o)g(man)m(y)-8 b(.)74
-b(If)42 b(a)1110 3540 y(correction)25 b(is)e(found,)g(the)h(corrected)g
-(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 3649
+b(If)42 b(a)1110 4739 y(correction)25 b(is)e(found,)g(the)h(corrected)g
+(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 4849
 y(pro)s(ceeds.)40 b(This)30 b(option)h(is)f(only)h(used)e(b)m(y)h(in)m
-(teractiv)m(e)k(shells.)630 3811 y Ft(checkhash)1110
-3921 y Fu(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f
-(command)f(found)g(in)g(the)h(hash)f(table)1110 4030
+(teractiv)m(e)k(shells.)630 5011 y Ft(checkhash)1110
+5121 y Fu(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f
+(command)f(found)g(in)g(the)h(hash)f(table)1110 5230
 y(exists)k(b)s(efore)f(trying)h(to)h(execute)g(it.)48
-b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 4140
-y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630
-4301 y Ft(checkjobs)1110 4411 y Fu(If)d(set,)i(Bash)e(lists)h(the)g
-(status)g(of)f(an)m(y)h(stopp)s(ed)f(and)g(running)e(jobs)i(b)s(efore)
-1110 4521 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72
-b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)1110
-4630 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h
-(exit)g(is)g(attempted)h(without)e(an)1110 4740 y(in)m(terv)m(ening)d
+b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 5340
+y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)p
+eop end
+%%Page: 75 81
+TeXDict begin 75 80 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(75)630 299 y Ft(checkjobs)1110
+408 y Fu(If)28 b(set,)i(Bash)e(lists)h(the)g(status)g(of)f(an)m(y)h
+(stopp)s(ed)f(and)g(running)e(jobs)i(b)s(efore)1110 518
+y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72 b(If)41
+b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)1110
+628 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h
+(exit)g(is)g(attempted)h(without)e(an)1110 737 y(in)m(terv)m(ening)d
 (command)f(\(see)h(Chapter)e(7)h([Job)g(Con)m(trol],)i(page)f(118\).)40
-b(The)1110 4849 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h
-(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 5011 y Ft(checkwinsize)1110
-5121 y Fu(If)23 b(set,)j(Bash)e(c)m(hec)m(ks)h(the)f(windo)m(w)f(size)h
-(after)h(eac)m(h)f(external)h(\(non-builtin\))1110 5230
+b(The)1110 847 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h
+(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 1029 y Ft(checkwinsize)1110
+1139 y Fu(If)23 b(set,)j(Bash)e(c)m(hec)m(ks)h(the)f(windo)m(w)f(size)h
+(after)h(eac)m(h)f(external)h(\(non-builtin\))1110 1249
 y(command)55 b(and,)60 b(if)55 b(necessary)-8 b(,)62
 b(up)s(dates)54 b(the)h(v)-5 b(alues)55 b(of)g Ft(LINES)f
-Fu(and)1110 5340 y Ft(COLUMNS)p Fu(.)39 b(This)29 b(option)i(is)g
-(enabled)f(b)m(y)g(default.)p eop end
-%%Page: 75 81
-TeXDict begin 75 80 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(75)630 299 y Ft(cmdhist)144
+Fu(and)1110 1358 y Ft(COLUMNS)p Fu(.)39 b(This)29 b(option)i(is)g
+(enabled)f(b)m(y)g(default.)630 1541 y Ft(cmdhist)144
 b Fu(If)33 b(set,)j(Bash)e(attempts)h(to)g(sa)m(v)m(e)g(all)g(lines)f
-(of)g(a)h(m)m(ultiple-line)g(command)1110 408 y(in)c(the)g(same)g
+(of)g(a)h(m)m(ultiple-line)g(command)1110 1650 y(in)c(the)g(same)g
 (history)g(en)m(try)-8 b(.)42 b(This)30 b(allo)m(ws)i(easy)g
-(re-editing)g(of)f(m)m(ulti-line)1110 518 y(commands.)79
+(re-editing)g(of)f(m)m(ulti-line)1110 1760 y(commands.)79
 b(This)43 b(option)g(is)h(enabled)f(b)m(y)g(default,)k(but)c(only)g
-(has)g(an)1110 628 y(e\013ect)30 b(if)e(command)g(history)g(is)h
+(has)g(an)1110 1870 y(e\013ect)30 b(if)e(command)g(history)g(is)h
 (enabled)f(\(see)h(Section)g(9.1)h([Bash)e(History)1110
-737 y(F)-8 b(acilities],)34 b(page)d(159\).)630 909 y
-Ft(compat31)630 1019 y(compat32)630 1129 y(compat40)630
-1238 y(compat41)630 1348 y(compat42)630 1457 y(compat43)630
-1567 y(compat44)96 b Fu(These)39 b(con)m(trol)i(asp)s(ects)f(of)f(the)h
+1979 y(F)-8 b(acilities],)34 b(page)d(159\).)630 2162
+y Ft(compat31)630 2271 y(compat32)630 2381 y(compat40)630
+2491 y(compat41)630 2600 y(compat42)630 2710 y(compat43)630
+2819 y(compat44)96 b Fu(These)39 b(con)m(trol)i(asp)s(ects)f(of)f(the)h
 (shell's)g(compatibilit)m(y)h(mo)s(de)e(\(see)h(Sec-)1110
-1677 y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g
-(114\).)630 1849 y Ft(complete_fullquote)1110 1958 y
+2929 y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g
+(114\).)630 3112 y Ft(complete_fullquote)1110 3221 y
 Fu(If)g(set,)g(Bash)h(quotes)f(all)h(shell)f(metac)m(haracters)i(in)e
-(\014lenames)g(and)g(direc-)1110 2068 y(tory)g(names)f(when)g(p)s
+(\014lenames)g(and)g(direc-)1110 3331 y(tory)g(names)f(when)g(p)s
 (erforming)f(completion.)43 b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m
-(es)1110 2178 y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g
-(sign)g(from)f(the)h(set)g(of)f(c)m(haracters)1110 2287
+(es)1110 3440 y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g
+(sign)g(from)f(the)h(set)g(of)f(c)m(haracters)1110 3550
 y(that)f(will)g(b)s(e)f(quoted)g(in)g(completed)i(\014lenames)e(when)f
-(these)i(metac)m(har-)1110 2397 y(acters)29 b(app)s(ear)e(in)g(shell)h
+(these)i(metac)m(har-)1110 3660 y(acters)29 b(app)s(ear)e(in)g(shell)h
 (v)-5 b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e
-(completed.)1110 2506 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)
+(completed.)1110 3769 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)
 -5 b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
-2616 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
-g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 2725
+3879 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
+g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 3988
 y(\014lenames)i(will)g(not)g(b)s(e)g(quoted,)g(either.)41
 b(This)27 b(is)h(activ)m(e)i(only)e(when)f(Bash)1110
-2835 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
-(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 2945
+4098 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
+(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 4208
 y(is)41 b(set)g(b)m(y)g(default,)j(whic)m(h)c(is)h(the)g(default)g
-(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 3054 y(through)30
-b(4.2.)630 3226 y Ft(direxpand)1110 3336 y Fu(If)k(set,)i(Bash)f
+(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 4317 y(through)30
+b(4.2.)630 4500 y Ft(direxpand)1110 4609 y Fu(If)k(set,)i(Bash)f
 (replaces)g(directory)g(names)g(with)f(the)g(results)h(of)f(w)m(ord)g
-(ex-)1110 3446 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
-(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 3555
+(ex-)1110 4719 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
+(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 4829
 y(con)m(ten)m(ts)c(of)e(the)h(Readline)f(editing)h(bu\013er.)52
-b(If)33 b(not)i(set,)h(Bash)e(attempts)1110 3665 y(to)d(preserv)m(e)g
-(what)f(the)g(user)g(t)m(yp)s(ed.)630 3837 y Ft(dirspell)96
+b(If)33 b(not)i(set,)h(Bash)e(attempts)1110 4938 y(to)d(preserv)m(e)g
+(what)f(the)g(user)g(t)m(yp)s(ed.)630 5121 y Ft(dirspell)96
 b Fu(If)26 b(set,)i(Bash)f(attempts)g(sp)s(elling)g(correction)g(on)g
-(directory)g(names)f(during)1110 3947 y(w)m(ord)36 b(completion)h(if)f
+(directory)g(names)f(during)1110 5230 y(w)m(ord)36 b(completion)h(if)f
 (the)g(directory)g(name)g(initially)h(supplied)e(do)s(es)h(not)1110
-4056 y(exist.)630 4228 y Ft(dotglob)144 b Fu(If)36 b(set,)i(Bash)e
-(includes)g(\014lenames)g(b)s(eginning)f(with)h(a)g(`.')58
-b(in)36 b(the)g(results)1110 4338 y(of)f(\014lename)f(expansion.)53
-b(The)33 b(\014lenames)i(`)p Ft(.)p Fu(')f(and)g(`)p
-Ft(..)p Fu(')g(m)m(ust)h(alw)m(a)m(ys)h(b)s(e)1110 4448
+5340 y(exist.)p eop end
+%%Page: 76 82
+TeXDict begin 76 81 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(76)630 299 y Ft(dotglob)144
+b Fu(If)36 b(set,)i(Bash)e(includes)g(\014lenames)g(b)s(eginning)f
+(with)h(a)g(`.')58 b(in)36 b(the)g(results)1110 408 y(of)f(\014lename)f
+(expansion.)53 b(The)33 b(\014lenames)i(`)p Ft(.)p Fu(')f(and)g(`)p
+Ft(..)p Fu(')g(m)m(ust)h(alw)m(a)m(ys)h(b)s(e)1110 518
 y(matc)m(hed)31 b(explicitly)-8 b(,)33 b(ev)m(en)e(if)f
-Ft(dotglob)f Fu(is)h(set.)630 4620 y Ft(execfail)96 b
+Ft(dotglob)f Fu(is)h(set.)630 682 y Ft(execfail)96 b
 Fu(If)24 b(this)h(is)f(set,)j(a)e(non-in)m(teractiv)m(e)i(shell)e(will)
-f(not)h(exit)h(if)e(it)h(cannot)h(execute)1110 4729 y(the)i(\014le)g
-(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h(the)f
-Ft(exec)f Fu(builtin)h(command.)39 b(An)1110 4839 y(in)m(teractiv)m(e)
-33 b(shell)e(do)s(es)f(not)g(exit)i(if)e Ft(exec)f Fu(fails.)630
-5011 y Ft(expand_aliases)1110 5121 y Fu(If)j(set,)h(aliases)g(are)g
+f(not)h(exit)h(if)e(it)h(cannot)h(execute)1110 792 y(the)i(\014le)g(sp)
+s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h(the)f Ft(exec)f
+Fu(builtin)h(command.)39 b(An)1110 902 y(in)m(teractiv)m(e)33
+b(shell)e(do)s(es)f(not)g(exit)i(if)e Ft(exec)f Fu(fails.)630
+1066 y Ft(expand_aliases)1110 1176 y Fu(If)j(set,)h(aliases)g(are)g
 (expanded)e(as)h(describ)s(ed)f(b)s(elo)m(w)h(under)f(Aliases,)i(Sec-)
-1110 5230 y(tion)i(6.6)h([Aliases],)h(page)e(103.)55
+1110 1285 y(tion)i(6.6)h([Aliases],)h(page)e(103.)55
 b(This)33 b(option)i(is)g(enabled)f(b)m(y)h(default)f(for)1110
-5340 y(in)m(teractiv)m(e)f(shells.)p eop end
-%%Page: 76 82
-TeXDict begin 76 81 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(76)630 299 y Ft(extdebug)96
+1395 y(in)m(teractiv)m(e)f(shells.)630 1559 y Ft(extdebug)96
 b Fu(If)35 b(set)i(at)f(shell)g(in)m(v)m(o)s(cation,)k(or)c(in)f(a)h
 (shell)h(startup)e(\014le,)i(arrange)g(to)f(ex-)1110
-408 y(ecute)h(the)f(debugger)g(pro\014le)g(b)s(efore)g(the)g(shell)h
-(starts,)h(iden)m(tical)g(to)f(the)1110 518 y Ft(--debugger)32
+1669 y(ecute)h(the)f(debugger)g(pro\014le)g(b)s(efore)g(the)g(shell)h
+(starts,)h(iden)m(tical)g(to)f(the)1110 1778 y Ft(--debugger)32
 b Fu(option.)56 b(If)35 b(set)h(after)g(in)m(v)m(o)s(cation,)j(b)s(eha)
-m(vior)c(in)m(tended)g(for)1110 628 y(use)30 b(b)m(y)g(debuggers)g(is)h
-(enabled:)1159 771 y(1.)61 b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g
+m(vior)c(in)m(tended)g(for)1110 1888 y(use)30 b(b)m(y)g(debuggers)g(is)
+h(enabled:)1159 2025 y(1.)61 b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g
 Ft(declare)d Fu(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290
-881 y(Builtins],)29 b(page)g(57\))g(displa)m(ys)f(the)g(source)h
-(\014le)f(name)g(and)f(line)h(n)m(um-)1290 991 y(b)s(er)h(corresp)s
+2134 y(Builtins],)29 b(page)g(57\))g(displa)m(ys)f(the)g(source)h
+(\014le)f(name)g(and)f(line)h(n)m(um-)1290 2244 y(b)s(er)h(corresp)s
 (onding)g(to)i(eac)m(h)g(function)f(name)g(supplied)f(as)i(an)f(argu-)
-1290 1100 y(men)m(t.)1159 1244 y(2.)61 b(If)20 b(the)h(command)g(run)e
+1290 2354 y(men)m(t.)1159 2491 y(2.)61 b(If)20 b(the)h(command)g(run)e
 (b)m(y)i(the)f Ft(DEBUG)g Fu(trap)g(returns)g(a)h(non-zero)g(v)-5
-b(alue,)1290 1354 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
-(not)i(executed.)1159 1498 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
+b(alue,)1290 2600 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
+(not)i(executed.)1159 2737 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
 (y)i(the)f Ft(DEBUG)f Fu(trap)h(returns)f(a)i(v)-5 b(alue)38
-b(of)f(2,)1290 1607 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
-(subroutine)e(\(a)i(shell)g(function)f(or)1290 1717 y(a)h(shell)g
+b(of)f(2,)1290 2847 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
+(subroutine)e(\(a)i(shell)g(function)f(or)1290 2956 y(a)h(shell)g
 (script)f(executed)h(b)m(y)g(the)f Ft(.)h Fu(or)f Ft(source)f
-Fu(builtins\),)i(the)g(shell)1290 1826 y(sim)m(ulates)d(a)g(call)h(to)f
-Ft(return)p Fu(.)1159 1970 y(4.)61 b Ft(BASH_ARGC)34
+Fu(builtins\),)i(the)g(shell)1290 3066 y(sim)m(ulates)d(a)g(call)h(to)f
+Ft(return)p Fu(.)1159 3203 y(4.)61 b Ft(BASH_ARGC)34
 b Fu(and)i Ft(BASH_ARGV)e Fu(are)j(up)s(dated)e(as)h(describ)s(ed)g(in)
-g(their)1290 2080 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
-(V)-8 b(ariables],)32 b(page)f(81\).)1159 2224 y(5.)61
+g(their)1290 3313 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
+(V)-8 b(ariables],)32 b(page)f(81\).)1159 3450 y(5.)61
 b(F)-8 b(unction)57 b(tracing)g(is)g(enabled:)93 b(command)56
-b(substitution,)63 b(shell)1290 2333 y(functions,)32
+b(substitution,)63 b(shell)1290 3559 y(functions,)32
 b(and)e(subshells)h(in)m(v)m(ok)m(ed)i(with)e Ft(\()f
-Fj(command)e Ft(\))j Fu(inherit)h(the)1290 2443 y Ft(DEBUG)d
-Fu(and)h Ft(RETURN)e Fu(traps.)1159 2587 y(6.)61 b(Error)41
+Fj(command)e Ft(\))j Fu(inherit)h(the)1290 3669 y Ft(DEBUG)d
+Fu(and)h Ft(RETURN)e Fu(traps.)1159 3806 y(6.)61 b(Error)41
 b(tracing)i(is)f(enabled:)63 b(command)42 b(substitution,)i(shell)f
-(func-)1290 2696 y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i
+(func-)1290 3915 y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i
 (with)e Ft(\()g Fj(command)f Ft(\))h Fu(inherit)h(the)g
-Ft(ERR)1290 2806 y Fu(trap.)630 2984 y Ft(extglob)144
+Ft(ERR)1290 4025 y Fu(trap.)630 4189 y Ft(extglob)144
 b Fu(If)26 b(set,)i(the)f(extended)f(pattern)h(matc)m(hing)g(features)g
-(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 3093 y(Section)j(3.5.8.1)i
+(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 4299 y(Section)j(3.5.8.1)i
 ([P)m(attern)f(Matc)m(hing],)g(page)f(37\))h(are)f(enabled.)630
-3271 y Ft(extquote)96 b Fu(If)51 b(set,)58 b Ft($')p
+4463 y Ft(extquote)96 b Fu(If)51 b(set,)58 b Ft($')p
 Fj(string)p Ft(')49 b Fu(and)i Ft($")p Fj(string)p Ft(")e
-Fu(quoting)k(is)e(p)s(erformed)f(within)1110 3381 y Ft(${)p
+Fu(quoting)k(is)e(p)s(erformed)f(within)1110 4573 y Ft(${)p
 Fj(parameter)p Ft(})31 b Fu(expansions)k(enclosed)g(in)g(double)f
-(quotes.)55 b(This)33 b(option)1110 3491 y(is)d(enabled)h(b)m(y)f
-(default.)630 3669 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d
+(quotes.)55 b(This)33 b(option)1110 4682 y(is)d(enabled)h(b)m(y)f
+(default.)630 4847 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d
 (whic)m(h)g(fail)h(to)h(matc)m(h)f(\014lenames)f(during)g(\014lename)g
-(ex-)1110 3778 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630
-3956 y Ft(force_fignore)1110 4066 y Fu(If)43 b(set,)k(the)d(su\016xes)f
+(ex-)1110 4956 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630
+5121 y Ft(force_fignore)1110 5230 y Fu(If)43 b(set,)k(the)d(su\016xes)f
 (sp)s(eci\014ed)f(b)m(y)i(the)f Ft(FIGNORE)f Fu(shell)h(v)-5
-b(ariable)44 b(cause)1110 4176 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h
-(when)f(p)s(erforming)f(w)m(ord)h(completion)i(ev)m(en)f(if)g(the)1110
-4285 y(ignored)37 b(w)m(ords)g(are)g(the)h(only)f(p)s(ossible)g
-(completions.)62 b(See)37 b(Section)h(5.2)1110 4395 y([Bash)24
-b(V)-8 b(ariables],)27 b(page)e(81,)h(for)d(a)h(description)g(of)g
-Ft(FIGNORE)p Fu(.)37 b(This)22 b(option)1110 4504 y(is)30
-b(enabled)h(b)m(y)f(default.)630 4682 y Ft(globasciiranges)1110
-4792 y Fu(If)j(set,)h(range)f(expressions)g(used)f(in)h(pattern)g(matc)
-m(hing)h(brac)m(k)m(et)h(expres-)1110 4902 y(sions)28
-b(\(see)h(Section)h(3.5.8.1)g([P)m(attern)g(Matc)m(hing],)h(page)e
-(37\))g(b)s(eha)m(v)m(e)g(as)g(if)1110 5011 y(in)i(the)g(traditional)i
-(C)d(lo)s(cale)j(when)d(p)s(erforming)g(comparisons.)44
-b(That)31 b(is,)1110 5121 y(the)d(curren)m(t)g(lo)s(cale's)i(collating)
-h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g(accoun)m(t,)i(so)1110
-5230 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p
-Ft(A)p Fu(')g(and)f(`)p Ft(B)p Fu(',)h(and)f(upp)s(er-case)g(and)g(lo)m
-(w)m(er-)1110 5340 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i
-(together.)p eop end
+b(ariable)44 b(cause)1110 5340 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h
+(when)f(p)s(erforming)f(w)m(ord)h(completion)i(ev)m(en)f(if)g(the)p
+eop end
 %%Page: 77 83
 TeXDict begin 77 82 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(77)630 299 y Ft(globskipdots)
-1110 408 y Fu(If)38 b(set,)k(\014lename)d(expansion)f(will)h(nev)m(er)g
-(matc)m(h)h(the)f(\014lenames)g(`)p Ft(.)p Fu(')g(and)1110
-518 y(`)p Ft(..)p Fu(',)c(ev)m(en)g(if)g(the)f(pattern)g(b)s(egins)g
-(with)g(a)h(`)p Ft(.)p Fu('.)52 b(This)34 b(option)h(is)f(enabled)1110
-628 y(b)m(y)c(default.)630 792 y Ft(globstar)96 b Fu(If)38
-b(set,)j(the)e(pattern)f(`)p Ft(**)p Fu(')h(used)e(in)i(a)f(\014lename)
-h(expansion)f(con)m(text)j(will)1110 902 y(matc)m(h)36
-b(all)g(\014les)f(and)f(zero)i(or)f(more)g(directories)h(and)e(sub)s
-(directories.)54 b(If)1110 1011 y(the)30 b(pattern)g(is)g(follo)m(w)m
-(ed)i(b)m(y)d(a)i(`)p Ft(/)p Fu(',)f(only)g(directories)h(and)f(sub)s
-(directories)1110 1121 y(matc)m(h.)630 1285 y Ft(gnu_errfmt)1110
-1395 y Fu(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in)
-h(the)g(standard)f Fm(gnu)g Fu(error)1110 1504 y(message)c(format.)630
-1669 y Ft(histappend)1110 1778 y Fu(If)c(set,)j(the)e(history)g(list)g
+b(Shell)30 b(Builtin)h(Commands)2069 b(77)1110 299 y(ignored)37
+b(w)m(ords)g(are)g(the)h(only)f(p)s(ossible)g(completions.)62
+b(See)37 b(Section)h(5.2)1110 408 y([Bash)24 b(V)-8 b(ariables],)27
+b(page)e(81,)h(for)d(a)h(description)g(of)g Ft(FIGNORE)p
+Fu(.)37 b(This)22 b(option)1110 518 y(is)30 b(enabled)h(b)m(y)f
+(default.)630 701 y Ft(globasciiranges)1110 810 y Fu(If)j(set,)h(range)
+f(expressions)g(used)f(in)h(pattern)g(matc)m(hing)h(brac)m(k)m(et)h
+(expres-)1110 920 y(sions)28 b(\(see)h(Section)h(3.5.8.1)g([P)m(attern)
+g(Matc)m(hing],)h(page)e(37\))g(b)s(eha)m(v)m(e)g(as)g(if)1110
+1029 y(in)i(the)g(traditional)i(C)d(lo)s(cale)j(when)d(p)s(erforming)g
+(comparisons.)44 b(That)31 b(is,)1110 1139 y(the)d(curren)m(t)g(lo)s
+(cale's)i(collating)h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g
+(accoun)m(t,)i(so)1110 1249 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i
+(b)s(et)m(w)m(een)e(`)p Ft(A)p Fu(')g(and)f(`)p Ft(B)p
+Fu(',)h(and)f(upp)s(er-case)g(and)g(lo)m(w)m(er-)1110
+1358 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i(together.)630
+1541 y Ft(globskipdots)1110 1650 y Fu(If)38 b(set,)k(\014lename)d
+(expansion)f(will)h(nev)m(er)g(matc)m(h)h(the)f(\014lenames)g(`)p
+Ft(.)p Fu(')g(and)1110 1760 y(`)p Ft(..)p Fu(',)c(ev)m(en)g(if)g(the)f
+(pattern)g(b)s(egins)g(with)g(a)h(`)p Ft(.)p Fu('.)52
+b(This)34 b(option)h(is)f(enabled)1110 1870 y(b)m(y)c(default.)630
+2052 y Ft(globstar)96 b Fu(If)38 b(set,)j(the)e(pattern)f(`)p
+Ft(**)p Fu(')h(used)e(in)i(a)f(\014lename)h(expansion)f(con)m(text)j
+(will)1110 2162 y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)f(more)
+g(directories)h(and)e(sub)s(directories.)54 b(If)1110
+2271 y(the)30 b(pattern)g(is)g(follo)m(w)m(ed)i(b)m(y)d(a)i(`)p
+Ft(/)p Fu(',)f(only)g(directories)h(and)f(sub)s(directories)1110
+2381 y(matc)m(h.)630 2564 y Ft(gnu_errfmt)1110 2673 y
+Fu(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in)h(the)g
+(standard)f Fm(gnu)g Fu(error)1110 2783 y(message)c(format.)630
+2966 y Ft(histappend)1110 3075 y Fu(If)c(set,)j(the)e(history)g(list)g
 (is)g(app)s(ended)e(to)j(the)f(\014le)g(named)f(b)m(y)h(the)g(v)-5
-b(alue)29 b(of)1110 1888 y(the)d Ft(HISTFILE)d Fu(v)-5
+b(alue)29 b(of)1110 3185 y(the)d Ft(HISTFILE)d Fu(v)-5
 b(ariable)26 b(when)e(the)h(shell)h(exits,)h(rather)e(than)h(o)m(v)m
-(erwriting)1110 1998 y(the)31 b(\014le.)630 2162 y Ft(histreedit)1110
-2271 y Fu(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g
+(erwriting)1110 3294 y(the)31 b(\014le.)630 3477 y Ft(histreedit)1110
+3587 y Fu(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g
 (user)g(is)g(giv)m(en)h(the)g(opp)s(ortunit)m(y)1110
-2381 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630
-2545 y Ft(histverify)1110 2655 y Fu(If)35 b(set,)i(and)e(Readline)h(is)
+3696 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630
+3879 y Ft(histverify)1110 3988 y Fu(If)35 b(set,)i(and)e(Readline)h(is)
 f(b)s(eing)g(used,)h(the)f(results)g(of)g(history)h(substitu-)1110
-2765 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g
-(parser.)59 b(Instead,)38 b(the)1110 2874 y(resulting)i(line)f(is)h
+4098 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g
+(parser.)59 b(Instead,)38 b(the)1110 4208 y(resulting)i(line)f(is)h
 (loaded)g(in)m(to)g(the)g(Readline)g(editing)g(bu\013er,)h(allo)m(wing)
-1110 2984 y(further)29 b(mo)s(di\014cation.)630 3148
-y Ft(hostcomplete)1110 3258 y Fu(If)38 b(set,)j(and)c(Readline)i(is)f
+1110 4317 y(further)29 b(mo)s(di\014cation.)630 4500
+y Ft(hostcomplete)1110 4609 y Fu(If)38 b(set,)j(and)c(Readline)i(is)f
 (b)s(eing)g(used,)h(Bash)g(will)f(attempt)h(to)g(p)s(erform)1110
-3367 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
-(`)p Ft(@)p Fu(')g(is)g(b)s(eing)f(com-)1110 3477 y(pleted)g(\(see)h
+4719 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
+(`)p Ft(@)p Fu(')g(is)g(b)s(eing)f(com-)1110 4829 y(pleted)g(\(see)h
 (Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g
-(145\).)1110 3587 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
-630 3751 y Ft(huponexit)1110 3861 y Fu(If)i(set,)i(Bash)f(will)h(send)d
+(145\).)1110 4938 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
+630 5121 y Ft(huponexit)1110 5230 y Fu(If)i(set,)i(Bash)f(will)h(send)d
 Ft(SIGHUP)h Fu(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login)
-1110 3970 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
-(page)f(46\).)630 4134 y Ft(inherit_errexit)1110 4244
-y Fu(If)e(set,)h(command)g(substitution)f(inherits)g(the)g(v)-5
-b(alue)30 b(of)g(the)f Ft(errexit)f Fu(op-)1110 4354
-y(tion,)33 b(instead)g(of)f(unsetting)g(it)h(in)f(the)g(subshell)f(en)m
-(vironmen)m(t.)46 b(This)32 b(op-)1110 4463 y(tion)f(is)f(enabled)h
-(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)630 4628
-y Ft(interactive_comments)1110 4737 y Fu(Allo)m(w)d(a)g(w)m(ord)e(b)s
+1110 5340 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
+(page)f(46\).)p eop end
+%%Page: 78 84
+TeXDict begin 78 83 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(78)630 299 y Ft(inherit_errexit)
+1110 408 y Fu(If)29 b(set,)h(command)g(substitution)f(inherits)g(the)g
+(v)-5 b(alue)30 b(of)g(the)f Ft(errexit)f Fu(op-)1110
+518 y(tion,)33 b(instead)g(of)f(unsetting)g(it)h(in)f(the)g(subshell)f
+(en)m(vironmen)m(t.)46 b(This)32 b(op-)1110 628 y(tion)f(is)f(enabled)h
+(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)630 792
+y Ft(interactive_comments)1110 902 y Fu(Allo)m(w)d(a)g(w)m(ord)e(b)s
 (eginning)g(with)h(`)p Ft(#)p Fu(')g(to)h(cause)f(that)h(w)m(ord)f(and)
-f(all)i(remain-)1110 4847 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g
+f(all)i(remain-)1110 1011 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g
 (to)g(b)s(e)f(ignored)g(in)g(an)g(in)m(teractiv)m(e)j(shell.)1110
-4956 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
-5121 y Ft(lastpipe)96 b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
+1121 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
+1285 y Ft(lastpipe)96 b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
 (not)f(activ)m(e,)k(the)d(shell)f(runs)f(the)i(last)g(command)1110
-5230 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
-(kground)g(in)g(the)g(curren)m(t)g(shell)1110 5340 y(en)m(vironmen)m
-(t.)p eop end
-%%Page: 78 84
-TeXDict begin 78 83 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(78)630 299 y Ft(lithist)144
-b Fu(If)22 b(enabled,)i(and)d(the)h Ft(cmdhist)e Fu(option)j(is)f
-(enabled,)i(m)m(ulti-line)f(commands)1110 408 y(are)28
-b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s(edded)g(newlines)h
-(rather)g(than)f(using)1110 518 y(semicolon)32 b(separators)f(where)e
-(p)s(ossible.)630 682 y Ft(localvar_inherit)1110 792
-y Fu(If)j(set,)h(lo)s(cal)g(v)-5 b(ariables)33 b(inherit)f(the)g(v)-5
-b(alue)32 b(and)g(attributes)h(of)f(a)g(v)-5 b(ariable)1110
-902 y(of)36 b(the)g(same)g(name)g(that)h(exists)f(at)h(a)f(previous)g
-(scop)s(e)g(b)s(efore)f(an)m(y)h(new)1110 1011 y(v)-5
+1395 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
+(kground)g(in)g(the)g(curren)m(t)g(shell)1110 1504 y(en)m(vironmen)m
+(t.)630 1669 y Ft(lithist)144 b Fu(If)22 b(enabled,)i(and)d(the)h
+Ft(cmdhist)e Fu(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110
+1778 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s
+(edded)g(newlines)h(rather)g(than)f(using)1110 1888 y(semicolon)32
+b(separators)f(where)e(p)s(ossible.)630 2052 y Ft(localvar_inherit)1110
+2162 y Fu(If)j(set,)h(lo)s(cal)g(v)-5 b(ariables)33 b(inherit)f(the)g
+(v)-5 b(alue)32 b(and)g(attributes)h(of)f(a)g(v)-5 b(ariable)1110
+2271 y(of)36 b(the)g(same)g(name)g(that)h(exists)f(at)h(a)f(previous)g
+(scop)s(e)g(b)s(efore)f(an)m(y)h(new)1110 2381 y(v)-5
 b(alue)31 b(is)f(assigned.)41 b(The)30 b Ft(nameref)e
-Fu(attribute)k(is)e(not)h(inherited.)630 1176 y Ft(localvar_unset)1110
-1285 y Fu(If)i(set,)i(calling)g Ft(unset)d Fu(on)i(lo)s(cal)g(v)-5
+Fu(attribute)k(is)e(not)h(inherited.)630 2545 y Ft(localvar_unset)1110
+2655 y Fu(If)i(set,)i(calling)g Ft(unset)d Fu(on)i(lo)s(cal)g(v)-5
 b(ariables)35 b(in)e(previous)g(function)g(scop)s(es)1110
-1395 y(marks)26 b(them)g(so)g(subsequen)m(t)g(lo)s(okups)f(\014nd)g
-(them)h(unset)f(un)m(til)i(that)g(func-)1110 1504 y(tion)40
+2765 y(marks)26 b(them)g(so)g(subsequen)m(t)g(lo)s(okups)f(\014nd)g
+(them)h(unset)f(un)m(til)i(that)g(func-)1110 2874 y(tion)40
 b(returns.)68 b(This)39 b(is)g(iden)m(tical)j(to)e(the)g(b)s(eha)m
-(vior)g(of)g(unsetting)g(lo)s(cal)1110 1614 y(v)-5 b(ariables)31
-b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 1778
-y Ft(login_shell)1110 1888 y Fu(The)35 b(shell)h(sets)g(this)f(option)h
+(vior)g(of)g(unsetting)g(lo)s(cal)1110 2984 y(v)-5 b(ariables)31
+b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 3148
+y Ft(login_shell)1110 3258 y Fu(The)35 b(shell)h(sets)g(this)f(option)h
 (if)g(it)g(is)f(started)h(as)g(a)g(login)g(shell)g(\(see)g(Sec-)1110
-1998 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(94\).)41
+3367 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(94\).)41
 b(The)28 b(v)-5 b(alue)29 b(ma)m(y)g(not)f(b)s(e)g(c)m(hanged.)630
-2162 y Ft(mailwarn)96 b Fu(If)34 b(set,)i(and)e(a)h(\014le)g(that)g
+3532 y Ft(mailwarn)96 b Fu(If)34 b(set,)i(and)e(a)h(\014le)g(that)g
 (Bash)f(is)h(c)m(hec)m(king)h(for)f(mail)g(has)f(b)s(een)g(accessed)
-1110 2271 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m
+1110 3641 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m
 (ed,)k(the)c(message)h Ft("The)k(mail)h(in)f Fj(mail-)1110
-2381 y(file)g Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630
-2545 y Ft(no_empty_cmd_completion)1110 2655 y Fu(If)g(set,)g(and)g
+3751 y(file)g Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630
+3915 y Ft(no_empty_cmd_completion)1110 4025 y Fu(If)g(set,)g(and)g
 (Readline)g(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e
-(searc)m(h)1110 2765 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f
+(searc)m(h)1110 4134 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f
 (completions)j(when)d(completion)i(is)f(attempted)h(on)1110
-2874 y(an)k(empt)m(y)h(line.)630 3039 y Ft(nocaseglob)1110
-3148 y Fu(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h
-(case-insensitiv)m(e)j(fashion)c(when)1110 3258 y(p)s(erforming)29
-b(\014lename)i(expansion.)630 3422 y Ft(nocasematch)1110
-3532 y Fu(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h
-(case-insensitiv)m(e)i(fashion)d(when)1110 3641 y(p)s(erforming)31
+4244 y(an)k(empt)m(y)h(line.)630 4408 y Ft(nocaseglob)1110
+4518 y Fu(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h
+(case-insensitiv)m(e)j(fashion)c(when)1110 4628 y(p)s(erforming)29
+b(\014lename)i(expansion.)630 4792 y Ft(nocasematch)1110
+4902 y Fu(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h
+(case-insensitiv)m(e)i(fashion)d(when)1110 5011 y(p)s(erforming)31
 b(matc)m(hing)i(while)f(executing)i Ft(case)d Fu(or)h
-Ft([[)g Fu(conditional)h(com-)1110 3751 y(mands)25 b(\(see)i(Section)f
+Ft([[)g Fu(conditional)h(com-)1110 5121 y(mands)25 b(\(see)i(Section)f
 (3.2.5.2)j([Conditional)e(Constructs],)f(page)h(12,)h(when)1110
-3861 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h
-(or)f(when)g(\014ltering)1110 3970 y(p)s(ossible)j(completions)h(as)g
-(part)f(of)h(programmable)f(completion.)630 4134 y Ft
-(noexpand_translation)1110 4244 y Fu(If)23 b(set,)j(Bash)d(encloses)i
-(the)e(translated)h(results)g(of)f($)p Ft(")p Fu(...)p
-Ft(")h Fu(quoting)g(in)f(single)1110 4354 y(quotes)k(instead)g(of)g
-(double)f(quotes.)40 b(If)26 b(the)h(string)f(is)h(not)g(translated,)h
-(this)1110 4463 y(has)i(no)g(e\013ect.)630 4628 y Ft(nullglob)96
-b Fu(If)23 b(set,)j(Bash)e(allo)m(ws)g(\014lename)g(patterns)g(whic)m
-(h)f(matc)m(h)h(no)g(\014les)f(to)i(expand)1110 4737
-y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g(themselv)m(es.)630
-4902 y Ft(patsub_replacement)1110 5011 y Fu(If)38 b(set,)k(Bash)d
-(expands)e(o)s(ccurrences)i(of)g(`)p Ft(&)p Fu(')g(in)f(the)h
-(replacemen)m(t)h(string)1110 5121 y(of)47 b(pattern)g(substitution)g
-(to)h(the)f(text)h(matc)m(hed)g(b)m(y)f(the)g(pattern,)52
-b(as)1110 5230 y(describ)s(ed)45 b(ab)s(o)m(v)m(e)i(\(see)f(Section)h
-(3.5.3)g([Shell)f(P)m(arameter)h(Expansion],)1110 5340
-y(page)31 b(26\).)42 b(This)30 b(option)g(is)h(enabled)f(b)m(y)g
-(default.)p eop end
+5230 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h
+(or)f(when)g(\014ltering)1110 5340 y(p)s(ossible)j(completions)h(as)g
+(part)f(of)h(programmable)f(completion.)p eop end
 %%Page: 79 85
 TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(79)630 299 y Ft(progcomp)96
-b Fu(If)25 b(set,)i(the)f(programmable)g(completion)g(facilities)i
-(\(see)f(Section)f(8.6)h([Pro-)1110 408 y(grammable)45
-b(Completion],)k(page)c(149\))h(are)f(enabled.)82 b(This)44
-b(option)h(is)1110 518 y(enabled)30 b(b)m(y)h(default.)630
-685 y Ft(progcomp_alias)1110 795 y Fu(If)23 b(set,)j(and)d
+b(Shell)30 b(Builtin)h(Commands)2069 b(79)630 299 y Ft
+(noexpand_translation)1110 408 y Fu(If)23 b(set,)j(Bash)d(encloses)i
+(the)e(translated)h(results)g(of)f($)p Ft(")p Fu(...)p
+Ft(")h Fu(quoting)g(in)f(single)1110 518 y(quotes)k(instead)g(of)g
+(double)f(quotes.)40 b(If)26 b(the)h(string)f(is)h(not)g(translated,)h
+(this)1110 628 y(has)i(no)g(e\013ect.)630 774 y Ft(nullglob)96
+b Fu(If)35 b(set,)j(\014lename)e(expansion)f(patterns)h(whic)m(h)f
+(matc)m(h)i(no)e(\014les)h(\(see)g(Sec-)1110 883 y(tion)g(3.5.8)i
+([Filename)f(Expansion],)f(page)h(36\))g(expand)e(to)h(nothing)g(and)
+1110 993 y(are)31 b(remo)m(v)m(ed,)g(rather)g(than)f(expanding)g(to)h
+(themselv)m(es.)630 1139 y Ft(patsub_replacement)1110
+1249 y Fu(If)38 b(set,)k(Bash)d(expands)e(o)s(ccurrences)i(of)g(`)p
+Ft(&)p Fu(')g(in)f(the)h(replacemen)m(t)h(string)1110
+1358 y(of)47 b(pattern)g(substitution)g(to)h(the)f(text)h(matc)m(hed)g
+(b)m(y)f(the)g(pattern,)52 b(as)1110 1468 y(describ)s(ed)45
+b(ab)s(o)m(v)m(e)i(\(see)f(Section)h(3.5.3)g([Shell)f(P)m(arameter)h
+(Expansion],)1110 1577 y(page)31 b(26\).)42 b(This)30
+b(option)g(is)h(enabled)f(b)m(y)g(default.)630 1724 y
+Ft(progcomp)96 b Fu(If)25 b(set,)i(the)f(programmable)g(completion)g
+(facilities)i(\(see)f(Section)f(8.6)h([Pro-)1110 1833
+y(grammable)45 b(Completion],)k(page)c(150\))h(are)f(enabled.)82
+b(This)44 b(option)h(is)1110 1943 y(enabled)30 b(b)m(y)h(default.)630
+2089 y Ft(progcomp_alias)1110 2198 y Fu(If)23 b(set,)j(and)d
 (programmable)h(completion)h(is)f(enabled,)h(Bash)f(treats)h(a)f(com-)
-1110 904 y(mand)34 b(name)h(that)g(do)s(esn't)f(ha)m(v)m(e)i(an)m(y)g
-(completions)f(as)g(a)g(p)s(ossible)g(alias)1110 1014
+1110 2308 y(mand)34 b(name)h(that)g(do)s(esn't)f(ha)m(v)m(e)i(an)m(y)g
+(completions)f(as)g(a)g(p)s(ossible)g(alias)1110 2418
 y(and)40 b(attempts)i(alias)h(expansion.)72 b(If)41 b(it)g(has)g(an)g
-(alias,)k(Bash)c(attempts)1110 1124 y(programmable)28
+(alias,)k(Bash)c(attempts)1110 2527 y(programmable)28
 b(completion)h(using)e(the)h(command)f(w)m(ord)h(resulting)f(from)1110
-1233 y(the)k(expanded)e(alias.)630 1400 y Ft(promptvars)1110
-1510 y Fu(If)50 b(set,)56 b(prompt)49 b(strings)h(undergo)g(parameter)h
-(expansion,)k(command)1110 1620 y(substitution,)35 b(arithmetic)g
+2637 y(the)k(expanded)e(alias.)630 2783 y Ft(promptvars)1110
+2892 y Fu(If)50 b(set,)56 b(prompt)49 b(strings)h(undergo)g(parameter)h
+(expansion,)k(command)1110 3002 y(substitution,)35 b(arithmetic)g
 (expansion,)g(and)e(quote)i(remo)m(v)-5 b(al)35 b(after)f(b)s(eing)1110
-1729 y(expanded)53 b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)
-f(6.9)h([Con)m(trolling)g(the)1110 1839 y(Prompt],)30
+3112 y(expanded)53 b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)
+f(6.9)h([Con)m(trolling)g(the)1110 3221 y(Prompt],)30
 b(page)h(107\).)43 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
-(default.)630 2006 y Ft(restricted_shell)1110 2116 y
+(default.)630 3367 y Ft(restricted_shell)1110 3477 y
 Fu(The)40 b(shell)h(sets)g(this)g(option)g(if)g(it)h(is)e(started)i(in)
-e(restricted)i(mo)s(de)e(\(see)1110 2225 y(Section)32
+e(restricted)i(mo)s(de)e(\(see)1110 3587 y(Section)32
 b(6.10)h([The)d(Restricted)j(Shell],)e(page)h(109\).)45
-b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110 2335 y(b)s(e)g(c)m
+b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110 3696 y(b)s(e)g(c)m
 (hanged.)49 b(This)32 b(is)h(not)h(reset)f(when)f(the)h(startup)g
-(\014les)f(are)i(executed,)1110 2444 y(allo)m(wing)k(the)e(startup)f
+(\014les)f(are)i(executed,)1110 3806 y(allo)m(wing)k(the)e(startup)f
 (\014les)h(to)g(disco)m(v)m(er)h(whether)f(or)f(not)i(a)f(shell)g(is)g
-(re-)1110 2554 y(stricted.)630 2721 y Ft(shift_verbose)1110
-2831 y Fu(If)g(this)g(is)g(set,)j(the)d Ft(shift)f Fu(builtin)h(prin)m
-(ts)f(an)h(error)g(message)i(when)d(the)1110 2940 y(shift)30
+(re-)1110 3915 y(stricted.)630 4061 y Ft(shift_verbose)1110
+4171 y Fu(If)g(this)g(is)g(set,)j(the)d Ft(shift)f Fu(builtin)h(prin)m
+(ts)f(an)h(error)g(message)i(when)d(the)1110 4281 y(shift)30
 b(coun)m(t)h(exceeds)g(the)g(n)m(um)m(b)s(er)e(of)h(p)s(ositional)i
-(parameters.)630 3108 y Ft(sourcepath)1110 3217 y Fu(If)40
+(parameters.)630 4427 y Ft(sourcepath)1110 4536 y Fu(If)40
 b(set,)45 b(the)c Ft(.)f Fu(\()p Ft(source)p Fu(\))g(builtin)g(uses)h
 (the)g(v)-5 b(alue)41 b(of)g Ft(PATH)f Fu(to)h(\014nd)f(the)1110
-3327 y(directory)32 b(con)m(taining)g(the)g(\014le)f(supplied)f(as)h
-(an)g(argumen)m(t.)44 b(This)30 b(option)1110 3436 y(is)g(enabled)h(b)m
-(y)f(default.)630 3603 y Ft(varredir_close)1110 3713
+4646 y(directory)32 b(con)m(taining)g(the)g(\014le)f(supplied)f(as)h
+(an)g(argumen)m(t.)44 b(This)30 b(option)1110 4756 y(is)g(enabled)h(b)m
+(y)f(default.)630 4902 y Ft(varredir_close)1110 5011
 y Fu(If)i(set,)h(the)f(shell)h(automatically)i(closes)e(\014le)f
-(descriptors)g(assigned)g(using)1110 3823 y(the)40 b
+(descriptors)g(assigned)g(using)1110 5121 y(the)40 b
 Ft({varname})c Fu(redirection)k(syn)m(tax)g(\(see)h(Section)f(3.6)g
-([Redirections],)1110 3932 y(page)h(39\))f(instead)h(of)e(lea)m(ving)j
-(them)e(op)s(en)f(when)g(the)h(command)f(com-)1110 4042
-y(pletes.)630 4209 y Ft(xpg_echo)96 b Fu(If)31 b(set,)h(the)g
-Ft(echo)e Fu(builtin)h(expands)f(bac)m(kslash-escap)s(e)j(sequences)f
-(b)m(y)f(de-)1110 4319 y(fault.)40 b(If)27 b(the)h Ft(posix)e
-Fu(shell)h(option)h(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)
-1110 4428 y(page)j(69\))h(is)e(also)h(enabled,)g Ft(echo)e
-Fu(do)s(es)h(not)h(in)m(terpret)g(an)m(y)f(options.)150
-4681 y Fs(4.4)68 b(Sp)t(ecial)45 b(Builtins)150 4840
-y Fu(F)-8 b(or)35 b(historical)h(reasons,)g(the)e Fm(posix)g
-Fu(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e(commands)g
-(as)h Fl(sp)-5 b(e-)150 4950 y(cial)p Fu(.)47 b(When)33
-b(Bash)f(is)h(executing)g(in)f Fm(posix)g Fu(mo)s(de,)h(the)g(sp)s
-(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150
-5059 y(commands)e(in)g(three)h(resp)s(ects:)199 5202
-y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h(shell)h
-(functions)f(during)f(command)h(lo)s(okup.)199 5340 y(2.)61
-b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error)g(status,)h
-(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)p eop end
+([Redirections],)1110 5230 y(page)h(39\))f(instead)h(of)e(lea)m(ving)j
+(them)e(op)s(en)f(when)g(the)h(command)f(com-)1110 5340
+y(pletes.)p eop end
 %%Page: 80 86
 TeXDict begin 80 85 bop 150 -116 a Fu(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(80)199 299 y(3.)61
-b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f(command)g(sta)m
-(y)i(in)e(e\013ect)i(in)e(the)h(shell)f(en)m(vironmen)m(t)330
-408 y(after)i(the)f(command)h(completes.)275 568 y(When)36
+b(Shell)30 b(Builtin)h(Commands)2069 b(80)630 299 y Ft(xpg_echo)96
+b Fu(If)31 b(set,)h(the)g Ft(echo)e Fu(builtin)h(expands)f(bac)m
+(kslash-escap)s(e)j(sequences)f(b)m(y)f(de-)1110 408
+y(fault.)40 b(If)27 b(the)h Ft(posix)e Fu(shell)h(option)h(\(see)h
+(Section)f(4.3.1)h([The)e(Set)h(Builtin],)1110 518 y(page)j(69\))h(is)e
+(also)h(enabled,)g Ft(echo)e Fu(do)s(es)h(not)h(in)m(terpret)g(an)m(y)f
+(options.)150 759 y Fs(4.4)68 b(Sp)t(ecial)45 b(Builtins)150
+918 y Fu(F)-8 b(or)35 b(historical)h(reasons,)g(the)e
+Fm(posix)g Fu(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e
+(commands)g(as)h Fl(sp)-5 b(e-)150 1028 y(cial)p Fu(.)47
+b(When)33 b(Bash)f(is)h(executing)g(in)f Fm(posix)g Fu(mo)s(de,)h(the)g
+(sp)s(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150
+1137 y(commands)e(in)g(three)h(resp)s(ects:)199 1272
+y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h(shell)h
+(functions)f(during)f(command)h(lo)s(okup.)199 1406 y(2.)61
+b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error)g(status,)h
+(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 1541
+y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f(command)
+g(sta)m(y)i(in)e(e\013ect)i(in)e(the)h(shell)f(en)m(vironmen)m(t)330
+1650 y(after)i(the)f(command)h(completes.)275 1810 y(When)36
 b(Bash)g(is)h(not)f(executing)i(in)e Fm(posix)f Fu(mo)s(de,)j(these)f
 (builtins)f(b)s(eha)m(v)m(e)h(no)f(di\013eren)m(tly)h(than)150
-677 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
+1919 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
 b(The)30 b(Bash)g Fm(posix)g Fu(mo)s(de)g(is)g(describ)s(ed)f(in)h
-(Section)h(6.11)150 787 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(109.)275
-922 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h(builtins:)390
-1056 y Ft(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f
-(readonly)f(return)h(set)390 1166 y(shift)g(trap)h(unset)p
-eop end
+(Section)h(6.11)150 2029 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(109.)275
+2164 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h(builtins:)390
+2298 y Ft(break)46 b(:)i(.)f(source)f(continue)g(eval)h(exec)f(exit)h
+(export)f(readonly)f(return)i(set)390 2408 y(shift)f(times)h(trap)f
+(unset)p eop end
 %%Page: 81 87
 TeXDict begin 81 86 bop 3659 -116 a Fu(81)150 299 y Fp(5)80
 b(Shell)53 b(V)-13 b(ariables)150 504 y Fu(This)21 b(c)m(hapter)i
@@ -14129,22 +14164,22 @@ b(v)-5 b(alue)36 b(ma)m(y)f(b)s(e)f(a)i(decimal)f(n)m(um)m(b)s(er)f
 (corresp)s(onding)d(to)i(the)g(desired)e(compatibilit)m(y)k(lev)m(el.)
 78 b(If)42 b Ft(BASH_)630 3039 y(COMPAT)28 b Fu(is)j(unset)e(or)h(set)h
 (to)g(the)f(empt)m(y)h(string,)f(the)h(compatibilit)m(y)h(lev)m(el)g
-(is)e(set)h(to)g(the)630 3148 y(default)39 b(for)g(the)g(curren)m(t)g
-(v)m(ersion.)67 b(If)38 b Ft(BASH_COMPAT)e Fu(is)j(set)h(to)f(a)h(v)-5
-b(alue)39 b(that)h(is)f(not)630 3258 y(one)31 b(of)f(the)h(v)-5
-b(alid)31 b(compatibilit)m(y)i(lev)m(els,)f(the)f(shell)f(prin)m(ts)g
-(an)h(error)f(message)i(and)e(sets)630 3367 y(the)i(compatibilit)m(y)j
-(lev)m(el)e(to)g(the)g(default)f(for)g(the)g(curren)m(t)g(v)m(ersion.)
-47 b(The)31 b(v)-5 b(alid)33 b(v)-5 b(alues)630 3477
-y(corresp)s(ond)31 b(to)i(the)g(compatibilit)m(y)i(lev)m(els)f(describ)
-s(ed)d(b)s(elo)m(w)i(\(see)g(Section)h(6.12)g([Shell)630
-3587 y(Compatibilit)m(y)d(Mo)s(de],)f(page)g(114\).)42
-b(F)-8 b(or)30 b(example,)h(4.2)f(and)f(42)h(are)g(v)-5
-b(alid)30 b(v)-5 b(alues)29 b(that)630 3696 y(corresp)s(ond)d(to)i(the)
-f Ft(compat42)e(shopt)g Fu(option)j(and)e(set)i(the)f(compatibilit)m(y)
-i(lev)m(el)g(to)f(42.)630 3806 y(The)i(curren)m(t)g(v)m(ersion)h(is)f
-(also)i(a)e(v)-5 b(alid)31 b(v)-5 b(alue.)150 3988 y
-Ft(BASH_ENV)96 b Fu(If)28 b(this)g(v)-5 b(ariable)30
+(is)e(set)h(to)g(the)630 3148 y(default)e(for)f(the)g(curren)m(t)g(v)m
+(ersion.)41 b(If)28 b Ft(BASH_COMPAT)d Fu(is)j(set)h(to)g(a)g(v)-5
+b(alue)29 b(that)g(is)f(not)h(one)630 3258 y(of)i(the)h(v)-5
+b(alid)31 b(compatibilit)m(y)j(lev)m(els,)f(the)f(shell)f(prin)m(ts)g
+(an)g(error)g(message)h(and)f(sets)h(the)630 3367 y(compatibilit)m(y)h
+(lev)m(el)f(to)f(the)g(default)f(for)h(the)f(curren)m(t)g(v)m(ersion.)
+42 b(A)30 b(subset)g(of)h(the)g(v)-5 b(alid)630 3477
+y(v)g(alues)31 b(corresp)s(ond)d(to)j(the)g(compatibilit)m(y)h(lev)m
+(els)g(describ)s(ed)d(b)s(elo)m(w)h(\(see)h(Section)g(6.12)630
+3587 y([Shell)25 b(Compatibilit)m(y)h(Mo)s(de],)h(page)e(114\).)41
+b(F)-8 b(or)25 b(example,)i(4.2)f(and)e(42)h(are)h(v)-5
+b(alid)25 b(v)-5 b(alues)630 3696 y(that)33 b(corresp)s(ond)e(to)i(the)
+f Ft(compat42)e(shopt)h Fu(option)i(and)f(set)g(the)h(compatibilit)m(y)
+h(lev)m(el)630 3806 y(to)d(42.)42 b(The)30 b(curren)m(t)g(v)m(ersion)h
+(is)f(also)h(a)g(v)-5 b(alid)31 b(v)-5 b(alue.)150 3988
+Ft(BASH_ENV)96 b Fu(If)28 b(this)g(v)-5 b(ariable)30
 b(is)e(set)h(when)f(Bash)g(is)h(in)m(v)m(ok)m(ed)h(to)f(execute)h(a)e
 (shell)h(script,)g(its)g(v)-5 b(alue)29 b(is)630 4098
 y(expanded)k(and)h(used)g(as)g(the)h(name)f(of)g(a)h(startup)f(\014le)g
@@ -14226,7 +14261,7 @@ b(minor)g(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i Fr(v)m(ersion)p
 Fu(\).)630 4692 y Ft(BASH_VERSINFO[2])1110 4802 y Fu(The)f(patc)m(h)h
 (lev)m(el.)630 4961 y Ft(BASH_VERSINFO[3])1110 5071 y
 Fu(The)f(build)f(v)m(ersion.)630 5230 y Ft(BASH_VERSINFO[4])1110
-5340 y Fu(The)h(release)i(status)e(\(e.g.,)j Ft(beta1)p
+5340 y Fu(The)h(release)i(status)e(\(e.g.,)j Ft(beta)p
 Fu(\).)p eop end
 %%Page: 85 91
 TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(5:)41
@@ -14271,13 +14306,13 @@ Ft(${COMP_WORDS})c Fu(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e
 b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 b(ailable)43 b(only)e(in)f(shell)h
 (functions)f(in)m(v)m(ok)m(ed)i(b)m(y)e(the)h(pro-)630
 3313 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g
-([Programmable)g(Completion],)630 3422 y(page)31 b(149\).)150
+([Programmable)g(Completion],)630 3422 y(page)31 b(150\).)150
 3587 y Ft(COMP_LINE)630 3696 y Fu(The)38 b(curren)m(t)h(command)f
 (line.)66 b(This)37 b(v)-5 b(ariable)40 b(is)f(a)m(v)-5
 b(ailable)41 b(only)d(in)h(shell)f(functions)630 3806
 y(and)25 b(external)h(commands)f(in)m(v)m(ok)m(ed)h(b)m(y)f(the)h
 (programmable)f(completion)i(facilities)g(\(see)630 3915
-y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(149\).)150
+y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(150\).)150
 4080 y Ft(COMP_POINT)630 4189 y Fu(The)25 b(index)g(of)h(the)g(curren)m
 (t)f(cursor)g(p)s(osition)h(relativ)m(e)i(to)e(the)g(b)s(eginning)f(of)
 g(the)h(curren)m(t)630 4299 y(command.)40 b(If)27 b(the)h(curren)m(t)g
@@ -14288,7 +14323,7 @@ b(This)29 b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630
 4518 y(only)36 b(in)f(shell)h(functions)f(and)g(external)h(commands)g
 (in)m(v)m(ok)m(ed)h(b)m(y)e(the)h(programmable)630 4628
 y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g
-(Completion],)h(page)f(149\).)150 4792 y Ft(COMP_TYPE)630
+(Completion],)h(page)f(150\).)150 4792 y Ft(COMP_TYPE)630
 4902 y Fu(Set)c(to)h(an)f(in)m(teger)h(v)-5 b(alue)28
 b(corresp)s(onding)e(to)h(the)h(t)m(yp)s(e)f(of)g(completion)h
 (attempted)g(that)630 5011 y(caused)j(a)g(completion)h(function)e(to)h
@@ -14306,7 +14341,7 @@ TeXDict begin 86 91 bop 150 -116 a Fu(Chapter)30 b(5:)41
 b(Shell)30 b(V)-8 b(ariables)2459 b(86)630 299 y(commands)32
 b(in)m(v)m(ok)m(ed)i(b)m(y)e(the)g(programmable)h(completion)g
 (facilities)i(\(see)e(Section)g(8.6)630 408 y([Programmable)e
-(Completion],)h(page)f(149\).)150 562 y Ft(COMP_KEY)96
+(Completion],)h(page)f(150\).)150 562 y Ft(COMP_KEY)96
 b Fu(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i(of)f(a)g(k)m(ey)h
 (sequence\))g(used)e(to)i(in)m(v)m(ok)m(e)h(the)e(curren)m(t)g
 (completion)630 671 y(function.)150 825 y Ft(COMP_WORDBREAKS)630
@@ -14324,13 +14359,13 @@ y(line.)94 b(The)47 b(line)i(is)f(split)g(in)m(to)h(w)m(ords)e(as)h
 b(This)36 b(v)-5 b(ariable)37 b(is)f(a)m(v)-5 b(ailable)39
 b(only)e(in)f(shell)h(func-)630 1745 y(tions)32 b(in)m(v)m(ok)m(ed)i(b)
 m(y)d(the)i(programmable)f(completion)h(facilities)h(\(see)f(Section)g
-(8.6)g([Pro-)630 1855 y(grammable)e(Completion],)g(page)g(149\).)150
+(8.6)g([Pro-)630 1855 y(grammable)e(Completion],)g(page)g(150\).)150
 2008 y Ft(COMPREPLY)630 2118 y Fu(An)37 b(arra)m(y)h(v)-5
 b(ariable)38 b(from)f(whic)m(h)g(Bash)g(reads)g(the)h(p)s(ossible)e
 (completions)j(generated)630 2228 y(b)m(y)33 b(a)g(shell)h(function)f
 (in)m(v)m(ok)m(ed)h(b)m(y)f(the)g(programmable)h(completion)g(facilit)m
 (y)h(\(see)f(Sec-)630 2337 y(tion)g(8.6)g([Programmable)g(Completion],)
-h(page)f(149\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
+h(page)f(150\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
 630 2447 y(one)c(p)s(ossible)f(completion.)150 2600 y
 Ft(COPROC)192 b Fu(An)27 b(arra)m(y)g(v)-5 b(ariable)28
 b(created)g(to)f(hold)g(the)g(\014le)g(descriptors)g(for)g(output)f
@@ -14455,14 +14490,15 @@ b(of)f(this)630 4902 y(v)-5 b(ariable)45 b(sp)s(eci\014es)e(the)h(sort)
 g(criteria)h(and)e(sort)h(order)f(for)g(the)h(results)g(of)g
 (\014lename)630 5011 y(expansion.)c(If)29 b(this)g(v)-5
 b(ariable)30 b(is)f(unset)f(or)h(set)h(to)g(the)f(n)m(ull)g(string,)h
-(\014lename)f(expansion)630 5121 y(uses)g(the)h(historial)g(b)s(eha)m
-(vior)f(of)h(sorting)g(b)m(y)f(name.)41 b(If)29 b(set,)h(a)g(v)-5
-b(alid)29 b(v)-5 b(alue)30 b(b)s(egins)f(with)630 5230
-y(an)42 b(optional)h(`)p Ft(+)p Fu(',)i(whic)m(h)d(is)g(ignored,)j(or)d
-(`)p Ft(-)p Fu(',)j(whic)m(h)d(rev)m(erses)h(the)f(sort)g(order)f(from)
-630 5340 y(ascending)34 b(to)g(descending,)g(follo)m(w)m(ed)h(b)m(y)e
-(a)h(sort)f(sp)s(eci\014er.)50 b(The)32 b(v)-5 b(alid)34
-b(sort)g(sp)s(eci\014ers)p eop end
+(\014lename)f(expansion)630 5121 y(uses)40 b(the)h(historical)h(b)s
+(eha)m(vior)e(of)h(sorting)g(b)m(y)f(name.)71 b(If)40
+b(set,)k(a)d(v)-5 b(alid)41 b(v)-5 b(alue)40 b(b)s(egins)630
+5230 y(with)27 b(an)f(optional)i(`)p Ft(+)p Fu(',)g(whic)m(h)f(is)g
+(ignored,)g(or)g(`)p Ft(-)p Fu(',)h(whic)m(h)f(rev)m(erses)g(the)g
+(sort)g(order)f(from)630 5340 y(ascending)34 b(to)g(descending,)g
+(follo)m(w)m(ed)h(b)m(y)e(a)h(sort)f(sp)s(eci\014er.)50
+b(The)32 b(v)-5 b(alid)34 b(sort)g(sp)s(eci\014ers)p
+eop end
 %%Page: 88 94
 TeXDict begin 88 93 bop 150 -116 a Fu(Chapter)30 b(5:)41
 b(Shell)30 b(V)-8 b(ariables)2459 b(88)630 299 y(are)21
@@ -14500,44 +14536,44 @@ b(Assignmen)m(ts)30 b(to)i Ft(GROUPS)d Fu(ha)m(v)m(e)i(no)g(e\013ect.)
 (that)e(is,)f(the)h(c)m(haracter)h(whic)m(h)d(signi\014es)i(the)630
 2412 y(start)25 b(of)f(a)h(history)f(expansion,)i(normally)e(`)p
 Ft(!)p Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m
-(haracter)630 2522 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h
-(substitution')f(when)f(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e
-(a)g(line,)630 2632 y(normally)27 b(`)p Ft(^)p Fu('.)39
-b(The)26 b(optional)i(third)d(c)m(haracter)j(is)e(the)h(c)m(haracter)h
-(whic)m(h)e(indicates)h(that)630 2741 y(the)34 b(remainder)f(of)h(the)g
-(line)g(is)f(a)h(commen)m(t)h(when)e(found)f(as)i(the)g(\014rst)f(c)m
-(haracter)i(of)f(a)630 2851 y(w)m(ord,)i(usually)f(`)p
-Ft(#)p Fu('.)55 b(The)34 b(history)h(commen)m(t)h(c)m(haracter)h
-(causes)e(history)g(substitution)630 2960 y(to)27 b(b)s(e)f(skipp)s(ed)
-f(for)i(the)f(remaining)h(w)m(ords)f(on)h(the)f(line.)40
-b(It)27 b(do)s(es)f(not)h(necessarily)g(cause)630 3070
-y(the)k(shell)f(parser)g(to)h(treat)g(the)g(rest)g(of)f(the)h(line)f
-(as)h(a)g(commen)m(t.)150 3242 y Ft(HISTCMD)144 b Fu(The)44
-b(history)h(n)m(um)m(b)s(er,)j(or)d(index)g(in)f(the)h(history)g(list,)
-50 b(of)45 b(the)g(curren)m(t)g(command.)630 3352 y(Assignmen)m(ts)37
-b(to)h Ft(HISTCMD)d Fu(are)j(ignored.)61 b(If)37 b Ft(HISTCMD)e
-Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)630 3461
-y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f
-(reset.)150 3634 y Ft(HISTCONTROL)630 3743 y Fu(A)40
-b(colon-separated)i(list)f(of)f(v)-5 b(alues)40 b(con)m(trolling)i(ho)m
-(w)e(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)630 3853
-y(history)29 b(list.)41 b(If)28 b(the)h(list)h(of)f(v)-5
-b(alues)29 b(includes)f(`)p Ft(ignorespace)p Fu(',)f(lines)i(whic)m(h)g
-(b)s(egin)f(with)630 3962 y(a)39 b(space)g(c)m(haracter)i(are)e(not)g
-(sa)m(v)m(ed)g(in)g(the)g(history)f(list.)66 b(A)39 b(v)-5
-b(alue)39 b(of)g(`)p Ft(ignoredups)p Fu(')630 4072 y(causes)34
-b(lines)h(whic)m(h)f(matc)m(h)h(the)f(previous)f(history)h(en)m(try)h
-(to)g(not)f(b)s(e)f(sa)m(v)m(ed.)53 b(A)34 b(v)-5 b(alue)630
-4181 y(of)32 b(`)p Ft(ignoreboth)p Fu(')d(is)j(shorthand)e(for)i(`)p
-Ft(ignorespace)p Fu(')d(and)i(`)p Ft(ignoredups)p Fu('.)42
-b(A)32 b(v)-5 b(alue)32 b(of)630 4291 y(`)p Ft(erasedups)p
-Fu(')f(causes)i(all)h(previous)f(lines)g(matc)m(hing)h(the)f(curren)m
-(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630 4401 y(from)42
-b(the)h(history)f(list)i(b)s(efore)e(that)h(line)g(is)g(sa)m(v)m(ed.)78
-b(An)m(y)43 b(v)-5 b(alue)43 b(not)g(in)f(the)h(ab)s(o)m(v)m(e)630
-4510 y(list)35 b(is)g(ignored.)53 b(If)34 b Ft(HISTCONTROL)e
-Fu(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h(v)-5
-b(alid)35 b(v)-5 b(alue,)36 b(all)630 4620 y(lines)30
+(haracter)630 2522 y(whic)m(h)32 b(signi\014es)g Ft(")p
+Fu(quic)m(k)h(substitution)p Ft(")f Fu(when)f(seen)h(as)h(the)f
+(\014rst)g(c)m(haracter)i(on)e(a)g(line,)630 2632 y(normally)27
+b(`)p Ft(^)p Fu('.)39 b(The)26 b(optional)i(third)d(c)m(haracter)j(is)e
+(the)h(c)m(haracter)h(whic)m(h)e(indicates)h(that)630
+2741 y(the)34 b(remainder)f(of)h(the)g(line)g(is)f(a)h(commen)m(t)h
+(when)e(found)f(as)i(the)g(\014rst)f(c)m(haracter)i(of)f(a)630
+2851 y(w)m(ord,)i(usually)f(`)p Ft(#)p Fu('.)55 b(The)34
+b(history)h(commen)m(t)h(c)m(haracter)h(causes)e(history)g
+(substitution)630 2960 y(to)27 b(b)s(e)f(skipp)s(ed)f(for)i(the)f
+(remaining)h(w)m(ords)f(on)h(the)f(line.)40 b(It)27 b(do)s(es)f(not)h
+(necessarily)g(cause)630 3070 y(the)k(shell)f(parser)g(to)h(treat)g
+(the)g(rest)g(of)f(the)h(line)f(as)h(a)g(commen)m(t.)150
+3242 y Ft(HISTCMD)144 b Fu(The)44 b(history)h(n)m(um)m(b)s(er,)j(or)d
+(index)g(in)f(the)h(history)g(list,)50 b(of)45 b(the)g(curren)m(t)g
+(command.)630 3352 y(Assignmen)m(ts)37 b(to)h Ft(HISTCMD)d
+Fu(are)j(ignored.)61 b(If)37 b Ft(HISTCMD)e Fu(is)i(unset,)h(it)g
+(loses)g(its)f(sp)s(ecial)630 3461 y(prop)s(erties,)30
+b(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
+3634 y Ft(HISTCONTROL)630 3743 y Fu(A)40 b(colon-separated)i(list)f(of)
+f(v)-5 b(alues)40 b(con)m(trolling)i(ho)m(w)e(commands)g(are)h(sa)m(v)m
+(ed)g(on)f(the)630 3853 y(history)29 b(list.)41 b(If)28
+b(the)h(list)h(of)f(v)-5 b(alues)29 b(includes)f(`)p
+Ft(ignorespace)p Fu(',)f(lines)i(whic)m(h)g(b)s(egin)f(with)630
+3962 y(a)39 b(space)g(c)m(haracter)i(are)e(not)g(sa)m(v)m(ed)g(in)g
+(the)g(history)f(list.)66 b(A)39 b(v)-5 b(alue)39 b(of)g(`)p
+Ft(ignoredups)p Fu(')630 4072 y(causes)34 b(lines)h(whic)m(h)f(matc)m
+(h)h(the)f(previous)f(history)h(en)m(try)h(to)g(not)f(b)s(e)f(sa)m(v)m
+(ed.)53 b(A)34 b(v)-5 b(alue)630 4181 y(of)32 b(`)p Ft(ignoreboth)p
+Fu(')d(is)j(shorthand)e(for)i(`)p Ft(ignorespace)p Fu(')d(and)i(`)p
+Ft(ignoredups)p Fu('.)42 b(A)32 b(v)-5 b(alue)32 b(of)630
+4291 y(`)p Ft(erasedups)p Fu(')f(causes)i(all)h(previous)f(lines)g
+(matc)m(hing)h(the)f(curren)m(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630
+4401 y(from)42 b(the)h(history)f(list)i(b)s(efore)e(that)h(line)g(is)g
+(sa)m(v)m(ed.)78 b(An)m(y)43 b(v)-5 b(alue)43 b(not)g(in)f(the)h(ab)s
+(o)m(v)m(e)630 4510 y(list)35 b(is)g(ignored.)53 b(If)34
+b Ft(HISTCONTROL)e Fu(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h
+(v)-5 b(alid)35 b(v)-5 b(alue,)36 b(all)630 4620 y(lines)30
 b(read)g(b)m(y)g(the)g(shell)g(parser)g(are)g(sa)m(v)m(ed)h(on)f(the)g
 (history)g(list,)h(sub)5 b(ject)30 b(to)g(the)g(v)-5
 b(alue)630 4729 y(of)42 b Ft(HISTIGNORE)p Fu(.)73 b(The)42
@@ -14573,10 +14609,10 @@ Ft(HISTSIZE)f Fu(after)h(reading)h(an)m(y)g(startup)f(\014les.)150
 (patterns)f(used)g(to)h(decide)g(whic)m(h)f(command)g(lines)h(should)
 630 1462 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47
 b(Eac)m(h)33 b(pattern)g(is)f(anc)m(hored)h(at)g(the)f(b)s(eginning)g
-(of)h(the)630 1572 y(line)43 b(and)e(m)m(ust)h(matc)m(h)h(the)g
-(complete)h(line)e(\(no)h(implicit)g(`)p Ft(*)p Fu(')f(is)g(app)s
-(ended\).)75 b(Eac)m(h)630 1681 y(pattern)42 b(is)g(tested)g(against)h
-(the)f(line)g(after)g(the)g(c)m(hec)m(ks)h(sp)s(eci\014ed)e(b)m(y)h
+(of)h(the)630 1572 y(line)e(and)f(m)m(ust)g(matc)m(h)i(the)e(complete)i
+(line)f(\(Bash)g(will)g(not)g(implicitly)g(app)s(end)e(a)i(`)p
+Ft(*)p Fu('\).)630 1681 y(Eac)m(h)23 b(pattern)f(is)g(tested)g(against)
+i(the)e(line)g(after)g(the)h(c)m(hec)m(ks)g(sp)s(eci\014ed)e(b)m(y)h
 Ft(HISTCONTROL)630 1791 y Fu(are)37 b(applied.)59 b(In)36
 b(addition)h(to)g(the)g(normal)g(shell)f(pattern)h(matc)m(hing)h(c)m
 (haracters,)i(`)p Ft(&)p Fu(')630 1901 y(matc)m(hes)d(the)f(previous)g
@@ -14607,24 +14643,23 @@ b(v)-5 b(alues)26 b(less)g(than)630 3207 y(zero)i(result)e(in)h(ev)m
 (startup)f(\014les.)150 3494 y Ft(HISTTIMEFORMAT)630
 3603 y Fu(If)44 b(this)g(v)-5 b(ariable)45 b(is)f(set)g(and)g(not)g(n)m
 (ull,)k(its)d(v)-5 b(alue)44 b(is)g(used)g(as)g(a)h(format)f(string)g
-(for)630 3713 y Ft(strftime)26 b Fu(to)k(prin)m(t)e(the)g(time)i(stamp)
-e(asso)s(ciated)i(with)e(eac)m(h)i(history)f(en)m(try)f(displa)m(y)m
-(ed)630 3823 y(b)m(y)34 b(the)f Ft(history)f Fu(builtin.)50
-b(If)33 b(this)h(v)-5 b(ariable)34 b(is)g(set,)h(time)f(stamps)g(are)g
-(written)f(to)i(the)630 3932 y(history)26 b(\014le)g(so)g(they)g(ma)m
-(y)h(b)s(e)e(preserv)m(ed)g(across)i(shell)f(sessions.)39
-b(This)25 b(uses)h(the)g(history)630 4042 y(commen)m(t)31
-b(c)m(haracter)h(to)f(distinguish)f(timestamps)h(from)f(other)g
-(history)h(lines.)150 4219 y Ft(HOSTFILE)96 b Fu(Con)m(tains)33
-b(the)g(name)f(of)h(a)g(\014le)f(in)g(the)h(same)g(format)g(as)f
-Ft(/etc/hosts)e Fu(that)j(should)f(b)s(e)630 4328 y(read)21
-b(when)g(the)g(shell)h(needs)f(to)h(complete)h(a)e(hostname.)38
-b(The)21 b(list)h(of)g(p)s(ossible)f(hostname)630 4438
-y(completions)27 b(ma)m(y)f(b)s(e)f(c)m(hanged)h(while)f(the)h(shell)g
-(is)f(running;)h(the)g(next)f(time)i(hostname)630 4548
-y(completion)33 b(is)g(attempted)g(after)g(the)f(v)-5
-b(alue)33 b(is)f(c)m(hanged,)i(Bash)e(adds)f(the)i(con)m(ten)m(ts)h(of)
-630 4657 y(the)h(new)f(\014le)g(to)h(the)g(existing)h(list.)53
+(for)630 3713 y Ft(strftime)p Fu(\(3\))37 b(to)i(prin)m(t)g(the)f(time)
+h(stamp)f(asso)s(ciated)i(with)e(eac)m(h)i(history)e(en)m(try)h(dis-)
+630 3823 y(pla)m(y)m(ed)34 b(b)m(y)e(the)h Ft(history)e
+Fu(builtin.)47 b(If)32 b(this)h(v)-5 b(ariable)33 b(is)g(set,)h(time)f
+(stamps)g(are)g(written)630 3932 y(to)d(the)f(history)g(\014le)h(so)f
+(they)g(ma)m(y)h(b)s(e)f(preserv)m(ed)f(across)i(shell)f(sessions.)41
+b(This)28 b(uses)h(the)630 4042 y(history)h(commen)m(t)i(c)m(haracter)g
+(to)f(distinguish)e(timestamps)i(from)f(other)h(history)f(lines.)150
+4219 y Ft(HOSTFILE)96 b Fu(Con)m(tains)33 b(the)g(name)f(of)h(a)g
+(\014le)f(in)g(the)h(same)g(format)g(as)f Ft(/etc/hosts)e
+Fu(that)j(should)f(b)s(e)630 4328 y(read)21 b(when)g(the)g(shell)h
+(needs)f(to)h(complete)h(a)e(hostname.)38 b(The)21 b(list)h(of)g(p)s
+(ossible)f(hostname)630 4438 y(completions)27 b(ma)m(y)f(b)s(e)f(c)m
+(hanged)h(while)f(the)h(shell)g(is)f(running;)h(the)g(next)f(time)i
+(hostname)630 4548 y(completion)33 b(is)g(attempted)g(after)g(the)f(v)
+-5 b(alue)33 b(is)f(c)m(hanged,)i(Bash)e(adds)f(the)i(con)m(ten)m(ts)h
+(of)630 4657 y(the)h(new)f(\014le)g(to)h(the)g(existing)h(list.)53
 b(If)34 b Ft(HOSTFILE)e Fu(is)j(set,)h(but)e(has)g(no)h(v)-5
 b(alue,)36 b(or)e(do)s(es)630 4767 y(not)d(name)f(a)h(readable)g
 (\014le,)g(Bash)f(attempts)i(to)f(read)f Ft(/etc/hosts)e
@@ -14876,12 +14911,12 @@ b(Shell)30 b(V)-8 b(ariables)2459 b(93)150 299 y Ft(TIMEFORMAT)630
 (in)m(tro)s(duces)e(an)h(escap)s(e)g(sequence)g(that)g(is)f(expanded)g
 (to)630 737 y(a)37 b(time)g(v)-5 b(alue)36 b(or)h(other)f(information.)
 59 b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i(meanings)630
-847 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h(p)
-s(ortions.)630 1006 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p
-Ft(\045)p Fu('.)630 1166 y Ft(\045[)p Fj(p)p Ft(][l]R)96
-b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 1325
-y Ft(\045[)p Fj(p)p Ft(][l]U)96 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h
-(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
+847 y(are)31 b(as)f(follo)m(ws;)i(the)f(brac)m(k)m(ets)h(denote)e
+(optional)i(p)s(ortions.)630 1006 y Ft(\045\045)384 b
+Fu(A)30 b(literal)i(`)p Ft(\045)p Fu('.)630 1166 y Ft(\045[)p
+Fj(p)p Ft(][l]R)96 b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630
+1325 y Ft(\045[)p Fj(p)p Ft(][l]U)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
+(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
 1484 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
 (of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(system)g(mo)s(de.)630
 1644 y Ft(\045P)384 b Fu(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
@@ -14904,30 +14939,30 @@ b(alue)52 b(of)f Fr(p)j Fu(determines)d(whether)f(or)h(not)h(the)f
 b(this)g(v)-5 b(ariable)31 b(is)g(not)f(set,)i(Bash)e(acts)h(as)g(if)f
 (it)h(had)f(the)h(v)-5 b(alue)870 2755 y Ft
 ($'\\nreal\\t\0453lR\\nuser\\t\0453)o(lU\\n)o(sys\\)o(t\0453)o(lS')630
-2889 y Fu(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f
-(information)h(is)f(displa)m(y)m(ed.)62 b(A)37 b(trailing)i(newline)e
-(is)630 2999 y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m
-(y)m(ed.)150 3158 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5
-b(alue)23 b(greater)h(than)e(zero,)j Ft(TMOUT)d Fu(is)g(treated)i(as)e
-(the)h(default)g(timeout)g(for)g(the)630 3268 y Ft(read)31
-b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
-(57\).)47 b(The)32 b Ft(select)e Fu(command)630 3377
-y(\(see)f(Section)h(3.2.5.2)g([Conditional)g(Constructs],)e(page)i
-(12\))f(terminates)g(if)g(input)e(do)s(es)630 3487 y(not)k(arriv)m(e)g
-(after)g Ft(TMOUT)e Fu(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)
-h(terminal.)630 3621 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
-(v)-5 b(alue)41 b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f
-(of)h(seconds)f(to)630 3731 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
-e(after)i(issuing)f(the)h(primary)e(prompt.)39 b(Bash)26
-b(terminates)h(after)630 3841 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
-(b)s(er)e(of)h(seconds)h(if)f(a)h(complete)h(line)e(of)h(input)e(do)s
-(es)h(not)h(arriv)m(e.)150 4000 y Ft(TMPDIR)192 b Fu(If)39
-b(set,)j(Bash)e(uses)f(its)h(v)-5 b(alue)40 b(as)f(the)h(name)f(of)h(a)
-g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 4110
-y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150
-4269 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
-(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
-b(is)f(readonly)-8 b(.)p eop end
+2889 y Fu(If)34 b(the)h(v)-5 b(alue)35 b(is)g(n)m(ull,)h(Bash)f(do)s
+(es)f(not)h(displa)m(y)g(an)m(y)g(timing)g(information.)54
+b(A)35 b(trailing)630 2999 y(newline)30 b(is)h(added)e(when)h(the)g
+(format)h(string)f(is)h(displa)m(y)m(ed.)150 3158 y Ft(TMOUT)240
+b Fu(If)22 b(set)h(to)g(a)g(v)-5 b(alue)23 b(greater)h(than)e(zero,)j
+Ft(TMOUT)d Fu(is)g(treated)i(as)e(the)h(default)g(timeout)g(for)g(the)
+630 3268 y Ft(read)31 b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e
+(Builtins],)h(page)g(57\).)47 b(The)32 b Ft(select)e
+Fu(command)630 3377 y(\(see)f(Section)h(3.2.5.2)g([Conditional)g
+(Constructs],)e(page)i(12\))f(terminates)g(if)g(input)e(do)s(es)630
+3487 y(not)k(arriv)m(e)g(after)g Ft(TMOUT)e Fu(seconds)h(when)f(input)h
+(is)g(coming)h(from)f(a)h(terminal.)630 3621 y(In)40
+b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d(v)-5 b(alue)41
+b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f(of)h(seconds)f(to)
+630 3731 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)e(after)i(issuing)f
+(the)h(primary)e(prompt.)39 b(Bash)26 b(terminates)h(after)630
+3841 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m(b)s(er)e(of)h(seconds)h
+(if)f(a)h(complete)h(line)e(of)h(input)e(do)s(es)h(not)h(arriv)m(e.)150
+4000 y Ft(TMPDIR)192 b Fu(If)39 b(set,)j(Bash)e(uses)f(its)h(v)-5
+b(alue)40 b(as)f(the)h(name)f(of)h(a)g(directory)g(in)f(whic)m(h)g
+(Bash)h(creates)630 4110 y(temp)s(orary)30 b(\014les)g(for)g(the)h
+(shell's)g(use.)150 4269 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h
+(user)f(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30
+b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)p eop end
 %%Page: 94 100
 TeXDict begin 94 99 bop 3659 -116 a Fu(94)150 299 y Fp(6)80
 b(Bash)54 b(F)-13 b(eatures)150 502 y Fu(This)30 b(c)m(hapter)h
@@ -14997,146 +15032,148 @@ b(Bash)30 b(F)-8 b(eatures)2484 b(95)150 299 y Ft(--restricted)630
 408 y Fu(Equiv)-5 b(alen)m(t)35 b(to)g Ft(-r)p Fu(.)51
 b(Mak)m(e)35 b(the)g(shell)f(a)g(restricted)h(shell)f(\(see)h(Section)g
 (6.10)h([The)d(Re-)630 518 y(stricted)e(Shell],)g(page)g(109\).)150
-677 y Ft(--verbose)630 787 y Fu(Equiv)-5 b(alen)m(t)31
+667 y Ft(--verbose)630 777 y Fu(Equiv)-5 b(alen)m(t)31
 b(to)g Ft(-v)p Fu(.)41 b(Prin)m(t)30 b(shell)g(input)g(lines)g(as)h
-(they're)g(read.)150 946 y Ft(--version)630 1056 y Fu(Sho)m(w)d(v)m
+(they're)g(read.)150 927 y Ft(--version)630 1036 y Fu(Sho)m(w)d(v)m
 (ersion)g(information)g(for)g(this)g(instance)h(of)f(Bash)g(on)g(the)g
-(standard)f(output)h(and)630 1166 y(exit)j(successfully)-8
-b(.)275 1325 y(There)28 b(are)i(sev)m(eral)g(single-c)m(haracter)i
+(standard)f(output)h(and)630 1146 y(exit)j(successfully)-8
+b(.)275 1295 y(There)28 b(are)i(sev)m(eral)g(single-c)m(haracter)i
 (options)d(that)h(ma)m(y)g(b)s(e)e(supplied)g(at)i(in)m(v)m(o)s(cation)
-h(whic)m(h)e(are)150 1435 y(not)i(a)m(v)-5 b(ailable)32
-b(with)e(the)h Ft(set)e Fu(builtin.)150 1594 y Ft(-c)384
+h(whic)m(h)e(are)150 1405 y(not)i(a)m(v)-5 b(ailable)32
+b(with)e(the)h Ft(set)e Fu(builtin.)150 1554 y Ft(-c)384
 b Fu(Read)66 b(and)f(execute)i(commands)e(from)g(the)h(\014rst)e
-(non-option)i(argumen)m(t)g Fr(com-)630 1704 y(mand)p
-859 1704 28 4 v 39 w(string)p Fu(,)34 b(then)e(exit.)49
+(non-option)i(argumen)m(t)g Fr(com-)630 1664 y(mand)p
+859 1664 28 4 v 39 w(string)p Fu(,)34 b(then)e(exit.)49
 b(If)32 b(there)h(are)g(argumen)m(ts)g(after)g(the)g
-Fr(command)p 3303 1704 V 40 w(string)p Fu(,)h(the)630
-1813 y(\014rst)e(argumen)m(t)h(is)g(assigned)g(to)h Ft($0)e
+Fr(command)p 3303 1664 V 40 w(string)p Fu(,)h(the)630
+1773 y(\014rst)e(argumen)m(t)h(is)g(assigned)g(to)h Ft($0)e
 Fu(and)h(an)m(y)g(remaining)g(argumen)m(ts)g(are)g(assigned)g(to)630
-1923 y(the)38 b(p)s(ositional)h(parameters.)65 b(The)37
+1883 y(the)38 b(p)s(ositional)h(parameters.)65 b(The)37
 b(assignmen)m(t)i(to)g Ft($0)f Fu(sets)g(the)h(name)f(of)g(the)g
-(shell,)630 2032 y(whic)m(h)30 b(is)h(used)e(in)h(w)m(arning)g(and)g
-(error)g(messages.)150 2192 y Ft(-i)384 b Fu(F)-8 b(orce)22
+(shell,)630 1993 y(whic)m(h)30 b(is)h(used)e(in)h(w)m(arning)g(and)g
+(error)g(messages.)150 2142 y Ft(-i)384 b Fu(F)-8 b(orce)22
 b(the)g(shell)f(to)g(run)f(in)m(teractiv)m(ely)-8 b(.)41
 b(In)m(teractiv)m(e)23 b(shells)e(are)h(describ)s(ed)d(in)i(Section)h
-(6.3)630 2301 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(97.)150
-2461 y Ft(-l)384 b Fu(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
+(6.3)630 2252 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(97.)150
+2401 y Ft(-l)384 b Fu(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
 (had)f(b)s(een)f(directly)i(in)m(v)m(ok)m(ed)h(b)m(y)f(login.)44
-b(When)31 b(the)h(shell)630 2570 y(is)37 b(in)m(teractiv)m(e,)43
+b(When)31 b(the)h(shell)630 2511 y(is)37 b(in)m(teractiv)m(e,)43
 b(this)37 b(is)g(equiv)-5 b(alen)m(t)39 b(to)f(starting)h(a)e(login)i
 (shell)e(with)g(`)p Ft(exec)30 b(-l)g(bash)p Fu('.)630
-2680 y(When)h(the)g(shell)h(is)f(not)g(in)m(teractiv)m(e,)k(the)c
+2620 y(When)h(the)g(shell)h(is)f(not)g(in)m(teractiv)m(e,)k(the)c
 (login)h(shell)g(startup)f(\014les)g(will)g(b)s(e)g(executed.)630
-2790 y(`)p Ft(exec)e(bash)h(-l)p Fu(')43 b(or)h(`)p Ft(exec)29
+2730 y(`)p Ft(exec)e(bash)h(-l)p Fu(')43 b(or)h(`)p Ft(exec)29
 b(bash)g(--login)p Fu(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell)
-h(with)g(a)630 2899 y(Bash)26 b(login)g(shell.)39 b(See)26
+h(with)g(a)630 2839 y(Bash)26 b(login)g(shell.)39 b(See)26
 b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(96,)i(for)d(a)h
-(description)630 3009 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
-f(a)h(login)g(shell.)150 3168 y Ft(-r)384 b Fu(Mak)m(e)54
+(description)630 2949 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
+f(a)h(login)g(shell.)150 3098 y Ft(-r)384 b Fu(Mak)m(e)54
 b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h(Section)g(6.10)h([The)
-d(Restricted)j(Shell],)630 3278 y(page)31 b(109\).)150
-3437 y Ft(-s)384 b Fu(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
+d(Restricted)j(Shell],)630 3208 y(page)31 b(109\).)150
+3357 y Ft(-s)384 b Fu(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
 (if)g(no)f(argumen)m(ts)i(remain)e(after)i(option)f(pro)s(cessing,)h
-(then)630 3547 y(commands)i(are)h(read)g(from)f(the)h(standard)f
+(then)630 3467 y(commands)i(are)h(read)g(from)f(the)h(standard)f
 (input.)39 b(This)28 b(option)h(allo)m(ws)h(the)f(p)s(ositional)630
-3656 y(parameters)i(to)h(b)s(e)e(set)i(when)d(in)m(v)m(oking)k(an)d(in)
+3577 y(parameters)i(to)h(b)s(e)e(set)i(when)d(in)m(v)m(oking)k(an)d(in)
 m(teractiv)m(e)k(shell)d(or)g(when)f(reading)h(input)630
-3766 y(through)f(a)g(pip)s(e.)150 3925 y Ft(-D)384 b
+3686 y(through)f(a)g(pip)s(e.)150 3836 y Ft(-D)384 b
 Fu(A)37 b(list)g(of)f(all)i(double-quoted)e(strings)g(preceded)g(b)m(y)
 h(`)p Ft($)p Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630
-4035 y(output.)63 b(These)38 b(are)g(the)g(strings)g(that)h(are)f(sub)5
-b(ject)38 b(to)h(language)g(translation)g(when)630 4144
+3945 y(output.)63 b(These)38 b(are)g(the)g(strings)g(that)h(are)f(sub)5
+b(ject)38 b(to)h(language)g(translation)g(when)630 4055
 y(the)e(curren)m(t)g(lo)s(cale)h(is)f(not)g Ft(C)g Fu(or)f
 Ft(POSIX)g Fu(\(see)h(Section)h(3.1.2.5)h([Lo)s(cale)g(T)-8
-b(ranslation],)630 4254 y(page)31 b(7\).)42 b(This)29
+b(ranslation],)630 4164 y(page)31 b(7\).)42 b(This)29
 b(implies)i(the)f Ft(-n)g Fu(option;)h(no)f(commands)g(will)h(b)s(e)f
-(executed.)150 4413 y Ft([-+]O)f([)p Fj(shopt_option)p
-Ft(])630 4523 y Fr(shopt)p 854 4523 V 40 w(option)44
+(executed.)150 4314 y Ft([-+]O)f([)p Fj(shopt_option)p
+Ft(])630 4423 y Fr(shopt)p 854 4423 V 40 w(option)44
 b Fu(is)g(one)h(of)f(the)g(shell)h(options)f(accepted)h(b)m(y)f(the)h
-Ft(shopt)d Fu(builtin)i(\(see)630 4633 y(Section)32 b(4.3.2)h([The)e
+Ft(shopt)d Fu(builtin)i(\(see)630 4533 y(Section)32 b(4.3.2)h([The)e
 (Shopt)f(Builtin],)i(page)g(73\).)44 b(If)31 b Fr(shopt)p
-2724 4633 V 40 w(option)g Fu(is)g(presen)m(t,)h Ft(-O)f
-Fu(sets)630 4742 y(the)24 b(v)-5 b(alue)24 b(of)g(that)h(option;)h
+2724 4533 V 40 w(option)g Fu(is)g(presen)m(t,)h Ft(-O)f
+Fu(sets)630 4643 y(the)24 b(v)-5 b(alue)24 b(of)g(that)h(option;)h
 Ft(+O)e Fu(unsets)f(it.)39 b(If)23 b Fr(shopt)p 2423
-4742 V 40 w(option)h Fu(is)g(not)g(supplied,)g(the)g(names)630
-4852 y(and)31 b(v)-5 b(alues)32 b(of)g(the)g(shell)g(options)g
+4643 V 40 w(option)h Fu(is)g(not)g(supplied,)g(the)g(names)630
+4752 y(and)31 b(v)-5 b(alues)32 b(of)g(the)g(shell)g(options)g
 (accepted)h(b)m(y)f Ft(shopt)e Fu(are)i(prin)m(ted)f(on)h(the)g
-(standard)630 4961 y(output.)40 b(If)29 b(the)h(in)m(v)m(o)s(cation)h
+(standard)630 4862 y(output.)40 b(If)29 b(the)h(in)m(v)m(o)s(cation)h
 (option)f(is)f Ft(+O)p Fu(,)h(the)f(output)g(is)h(displa)m(y)m(ed)g(in)
-f(a)h(format)f(that)630 5071 y(ma)m(y)i(b)s(e)f(reused)f(as)i(input.)
-150 5230 y Ft(--)384 b Fu(A)38 b Ft(--)g Fu(signals)g(the)h(end)e(of)i
+f(a)h(format)f(that)630 4971 y(ma)m(y)i(b)s(e)f(reused)f(as)i(input.)
+150 5121 y Ft(--)384 b Fu(A)38 b Ft(--)g Fu(signals)g(the)h(end)e(of)i
 (options)f(and)g(disables)g(further)f(option)h(pro)s(cessing.)64
-b(An)m(y)630 5340 y(argumen)m(ts)31 b(after)g(the)f Ft(--)g
-Fu(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)p
-eop end
+b(An)m(y)630 5230 y(argumen)m(ts)38 b(after)g(the)f Ft(--)g
+Fu(are)h(treated)g(as)g(a)g(shell)f(script)h(\014lename)f(\(see)i
+(Section)f(3.8)630 5340 y([Shell)30 b(Scripts],)h(page)g(47\))g(and)f
+(argumen)m(ts)h(passed)f(to)h(that)g(script.)p eop end
 %%Page: 96 102
 TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(96)275 299 y(A)27 b
-Fl(lo)-5 b(gin)35 b Fu(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)m
-(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Ft(-)p
+b(Bash)30 b(F)-8 b(eatures)2484 b(96)150 299 y Ft(-)432
+b Fu(Equiv)-5 b(alen)m(t)31 b(to)g Ft(--)p Fu(.)275 456
+y(A)c Fl(lo)-5 b(gin)35 b Fu(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)
+m(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Ft(-)p
 Fu(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
-408 y Ft(--login)h Fu(option.)275 555 y(An)g Fl(inter)-5
+566 y Ft(--login)h Fu(option.)275 699 y(An)g Fl(inter)-5
 b(active)37 b Fu(shell)30 b(is)f(one)g(started)h(without)f(non-option)h
 (argumen)m(ts,)g(unless)e Ft(-s)h Fu(is)g(sp)s(eci\014ed,)150
-665 y(without)k(sp)s(ecifying)h(the)f Ft(-c)g Fu(option,)i(and)e(whose)
+809 y(without)k(sp)s(ecifying)h(the)f Ft(-c)g Fu(option,)i(and)e(whose)
 g(input)g(and)f(output)h(are)h(b)s(oth)f(connected)h(to)g(ter-)150
-774 y(minals)g(\(as)g(determined)f(b)m(y)h Ft(isatty\(3\))p
+918 y(minals)g(\(as)g(determined)f(b)m(y)h Ft(isatty\(3\))p
 Fu(\),)e(or)i(one)g(started)g(with)f(the)h Ft(-i)f Fu(option.)51
-b(See)33 b(Section)i(6.3)150 884 y([In)m(teractiv)m(e)e(Shells],)e
-(page)g(97,)g(for)f(more)h(information.)275 1031 y(If)i(argumen)m(ts)h
+b(See)33 b(Section)i(6.3)150 1028 y([In)m(teractiv)m(e)e(Shells],)e
+(page)g(97,)g(for)f(more)h(information.)275 1161 y(If)i(argumen)m(ts)h
 (remain)g(after)h(option)f(pro)s(cessing,)h(and)e(neither)h(the)g
-Ft(-c)g Fu(nor)f(the)h Ft(-s)g Fu(option)g(has)150 1140
+Ft(-c)g Fu(nor)f(the)h Ft(-s)g Fu(option)g(has)150 1271
 y(b)s(een)44 b(supplied,)j(the)d(\014rst)g(argumen)m(t)h(is)g(assumed)e
 (to)j(b)s(e)d(the)i(name)g(of)f(a)h(\014le)g(con)m(taining)h(shell)150
-1250 y(commands)30 b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)
+1380 y(commands)30 b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)
 h(47\).)41 b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i(in)d(this)h
-(fashion,)150 1359 y Ft($0)37 b Fu(is)g(set)h(to)h(the)e(name)h(of)f
+(fashion,)150 1490 y Ft($0)37 b Fu(is)g(set)h(to)h(the)e(name)h(of)f
 (the)h(\014le,)i(and)c(the)i(p)s(ositional)g(parameters)g(are)g(set)g
-(to)g(the)g(remaining)150 1469 y(argumen)m(ts.)h(Bash)26
+(to)g(the)g(remaining)150 1599 y(argumen)m(ts.)h(Bash)26
 b(reads)f(and)g(executes)h(commands)f(from)g(this)g(\014le,)i(then)e
-(exits.)40 b(Bash's)25 b(exit)i(status)150 1579 y(is)f(the)h(exit)h
+(exits.)40 b(Bash's)25 b(exit)i(status)150 1709 y(is)f(the)h(exit)h
 (status)e(of)h(the)g(last)g(command)f(executed)h(in)g(the)f(script.)40
-b(If)26 b(no)g(commands)g(are)h(executed,)150 1688 y(the)k(exit)g
-(status)g(is)f(0.)150 1947 y Fs(6.2)68 b(Bash)45 b(Startup)g(Files)150
-2107 y Fu(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
+b(If)26 b(no)g(commands)g(are)h(executed,)150 1819 y(the)k(exit)g
+(status)g(is)f(0.)150 2057 y Fs(6.2)68 b(Bash)45 b(Startup)g(Files)150
+2217 y Fu(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
 (its)g(startup)f(\014les.)38 b(If)24 b(an)m(y)h(of)f(the)h(\014les)f
-(exist)h(but)e(cannot)150 2216 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
+(exist)h(but)e(cannot)150 2326 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
 (an)h(error.)40 b(Tildes)30 b(are)g(expanded)f(in)h(\014lenames)g(as)g
-(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2326 y(Tilde)f(Expansion)g
+(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2436 y(Tilde)f(Expansion)g
 (\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(25\).)275
-2473 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
+2569 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
 (6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(97.)150
-2684 y Fk(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
-(shell,)g(or)g(with)e Fh(--login)150 2831 y Fu(When)c(Bash)f(is)h(in)m
+2766 y Fk(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
+(shell,)g(or)g(with)e Fh(--login)150 2913 y Fu(When)c(Bash)f(is)h(in)m
 (v)m(ok)m(ed)h(as)f(an)g(in)m(teractiv)m(e)j(login)d(shell,)i(or)e(as)g
-(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g(the)150 2940
+(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g(the)150 3023
 y Ft(--login)30 b Fu(option,)k(it)f(\014rst)e(reads)h(and)g(executes)i
 (commands)e(from)f(the)i(\014le)f Ft(/etc/profile)p Fu(,)e(if)i(that)
-150 3050 y(\014le)44 b(exists.)80 b(After)44 b(reading)g(that)g
+150 3132 y(\014le)44 b(exists.)80 b(After)44 b(reading)g(that)g
 (\014le,)j(it)d(lo)s(oks)g(for)f Ft(~/.bash_profile)p
-Fu(,)g Ft(~/.bash_login)p Fu(,)h(and)150 3160 y Ft(~/.profile)p
+Fu(,)g Ft(~/.bash_login)p Fu(,)h(and)150 3242 y Ft(~/.profile)p
 Fu(,)25 b(in)i(that)g(order,)h(and)e(reads)h(and)f(executes)j(commands)
-d(from)h(the)g(\014rst)f(one)i(that)f(exists)150 3269
+d(from)h(the)g(\014rst)f(one)i(that)f(exists)150 3351
 y(and)j(is)h(readable.)42 b(The)30 b Ft(--noprofile)d
 Fu(option)k(ma)m(y)g(b)s(e)f(used)g(when)g(the)h(shell)f(is)h(started)g
-(to)g(inhibit)150 3379 y(this)f(b)s(eha)m(vior.)275 3526
+(to)g(inhibit)150 3461 y(this)f(b)s(eha)m(vior.)275 3594
 y(When)h(an)g(in)m(teractiv)m(e)k(login)d(shell)g(exits,)h(or)f(a)g
 (non-in)m(teractiv)m(e)i(login)f(shell)e(executes)i(the)f
-Ft(exit)150 3635 y Fu(builtin)g(command,)i(Bash)e(reads)h(and)f
+Ft(exit)150 3704 y Fu(builtin)g(command,)i(Bash)e(reads)h(and)f
 (executes)i(commands)e(from)g(the)h(\014le)g Ft(~/.bash_logout)p
-Fu(,)d(if)i(it)150 3745 y(exists.)150 3956 y Fk(In)m(v)m(ok)m(ed)40
+Fu(,)d(if)i(it)150 3814 y(exists.)150 4011 y Fk(In)m(v)m(ok)m(ed)40
 b(as)h(an)f(in)m(teractiv)m(e)f(non-login)k(shell)150
-4103 y Fu(When)g(an)h(in)m(teractiv)m(e)i(shell)e(that)g(is)f(not)h(a)g
+4158 y Fu(When)g(an)h(in)m(teractiv)m(e)i(shell)e(that)g(is)f(not)h(a)g
 (login)g(shell)g(is)f(started,)48 b(Bash)c(reads)f(and)g(executes)150
-4213 y(commands)31 b(from)g Ft(~/.bashrc)p Fu(,)f(if)h(that)h(\014le)g
+4267 y(commands)31 b(from)g Ft(~/.bashrc)p Fu(,)f(if)h(that)h(\014le)g
 (exists.)44 b(This)31 b(ma)m(y)h(b)s(e)f(inhibited)g(b)m(y)g(using)g
-(the)h Ft(--norc)150 4322 y Fu(option.)40 b(The)27 b
+(the)h Ft(--norc)150 4377 y Fu(option.)40 b(The)27 b
 Ft(--rcfile)h Fj(file)e Fu(option)h(will)g(force)h(Bash)f(to)h(read)f
-(and)f(execute)j(commands)d(from)h Fr(\014le)150 4432
-y Fu(instead)k(of)f Ft(~/.bashrc)p Fu(.)275 4579 y(So,)g(t)m(ypically)
+(and)f(execute)j(commands)d(from)h Fr(\014le)150 4486
+y Fu(instead)k(of)f Ft(~/.bashrc)p Fu(.)275 4620 y(So,)g(t)m(ypically)
 -8 b(,)33 b(y)m(our)d Ft(~/.bash_profile)c Fu(con)m(tains)32
-b(the)f(line)390 4725 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g
-(~/.bashrc;)e(fi)150 4872 y Fu(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h
+b(the)f(line)390 4753 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g
+(~/.bashrc;)e(fi)150 4886 y Fu(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h
 (login-sp)s(eci\014c)g(initializations.)150 5083 y Fk(In)m(v)m(ok)m(ed)
 40 b(non-in)m(teractiv)m(ely)150 5230 y Fu(When)33 b(Bash)g(is)g
 (started)h(non-in)m(teractiv)m(ely)-8 b(,)37 b(to)d(run)e(a)h(shell)h
@@ -15807,12 +15844,12 @@ b(and)e(an)g(index)g(of)g(-1)h(refers)f(to)h(the)g(last)g(elemen)m(t.)
 275 1639 y(Referencing)41 b(an)f(arra)m(y)h(v)-5 b(ariable)42
 b(without)e(a)h(subscript)e(is)i(equiv)-5 b(alen)m(t)42
 b(to)f(referencing)g(with)g(a)150 1748 y(subscript)34
-b(of)i(0.)57 b(An)m(y)35 b(reference)h(to)g(a)g(v)-5
-b(ariable)37 b(using)e(a)g(v)-5 b(alid)36 b(subscript)f(is)g(legal,)k
-(and)c(Bash)h(will)150 1858 y(create)c(an)e(arra)m(y)h(if)f(necessary)
--8 b(.)275 1992 y(An)35 b(arra)m(y)i(v)-5 b(ariable)37
-b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s(een)g
-(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
+b(of)h(0.)55 b(An)m(y)36 b(reference)f(to)h(a)g(v)-5
+b(ariable)35 b(using)g(a)h(v)-5 b(alid)35 b(subscript)f(is)h(v)-5
+b(alid,)37 b(and)d(Bash)i(will)150 1858 y(create)c(an)e(arra)m(y)h(if)f
+(necessary)-8 b(.)275 1992 y(An)35 b(arra)m(y)i(v)-5
+b(ariable)37 b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s
+(een)g(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
 2102 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
 2236 y(It)29 b(is)h(p)s(ossible)f(to)h(obtain)g(the)f(k)m(eys)i
 (\(indices\))f(of)f(an)h(arra)m(y)g(as)f(w)m(ell)i(as)f(the)f(v)-5
@@ -16251,79 +16288,81 @@ b(This)42 b(means)g(that)h(command)f(substitution)f(will)i(not)g
 (expand)e(aliases)j(that)f(are)330 408 y(de\014ned)34
 b(after)h(the)g(command)f(substitution)h(is)g(initially)h(parsed)e
 (\(e.g.,)k(as)d(part)f(of)h(a)g(function)330 518 y(de\014nition\).)199
-652 y(9.)61 b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g Ft(PS2)g
+646 y(9.)61 b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g Ft(PS2)g
 Fu(expansions)g(of)i(`)p Ft(!)p Fu(')f(to)g(the)g(history)g(n)m(um)m(b)
 s(er)f(and)g(`)p Ft(!!)p Fu(')h(to)g(`)p Ft(!)p Fu(')h(are)330
-762 y(enabled,)26 b(and)f(parameter)g(expansion)g(is)g(p)s(erformed)e
+756 y(enabled,)26 b(and)f(parameter)g(expansion)g(is)g(p)s(erformed)e
 (on)i(the)g(v)-5 b(alues)25 b(of)g Ft(PS1)f Fu(and)h
-Ft(PS2)f Fu(regardless)330 871 y(of)31 b(the)f(setting)i(of)e(the)h
-Ft(promptvars)c Fu(option.)154 1005 y(10.)61 b(The)30
+Ft(PS2)f Fu(regardless)330 865 y(of)31 b(the)f(setting)i(of)e(the)h
+Ft(promptvars)c Fu(option.)154 993 y(10.)61 b(The)30
 b Fm(posix)g Fu(startup)f(\014les)i(are)g(executed)g(\()p
 Ft($ENV)p Fu(\))f(rather)g(than)g(the)h(normal)f(Bash)g(\014les.)154
-1139 y(11.)61 b(Tilde)30 b(expansion)g(is)f(only)h(p)s(erformed)f(on)h
+1121 y(11.)61 b(Tilde)30 b(expansion)g(is)f(only)h(p)s(erformed)f(on)h
 (assignmen)m(ts)g(preceding)g(a)g(command)g(name,)g(rather)330
-1249 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)e(the)h
-(line.)154 1383 y(12.)61 b(The)29 b(default)g(history)g(\014le)g(is)g
+1230 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)e(the)h
+(line.)154 1358 y(12.)61 b(The)29 b(default)g(history)g(\014le)g(is)g
 Ft(~/.sh_history)d Fu(\(this)j(is)g(the)g(default)h(v)-5
-b(alue)29 b(the)h(shell)f(assigns)g(to)330 1492 y Ft($HISTFILE)p
-Fu(\).)154 1626 y(13.)61 b(Redirection)25 b(op)s(erators)f(do)g(not)g
+b(alue)29 b(the)h(shell)f(assigns)g(to)330 1468 y Ft($HISTFILE)p
+Fu(\).)154 1596 y(13.)61 b(Redirection)25 b(op)s(erators)f(do)g(not)g
 (p)s(erform)f(\014lename)h(expansion)g(on)g(the)g(w)m(ord)f(in)h(the)g
-(redirection)330 1736 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m
-(e.)154 1870 y(14.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s
+(redirection)330 1705 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m
+(e.)154 1833 y(14.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s
 (erform)e(w)m(ord)h(splitting)h(on)f(the)h(w)m(ord)f(in)g(the)g
-(redirection.)154 2004 y(15.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f
+(redirection.)154 1961 y(15.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f
 (b)s(e)g(v)-5 b(alid)35 b(shell)f Ft(name)p Fu(s.)52
 b(That)34 b(is,)i(they)f(ma)m(y)g(not)g(con)m(tain)g(c)m(haracters)330
-2113 y(other)e(than)g(letters,)h(digits,)h(and)d(underscores,)h(and)f
+2071 y(other)e(than)g(letters,)h(digits,)h(and)d(underscores,)h(and)f
 (ma)m(y)h(not)g(start)h(with)e(a)h(digit.)49 b(Declaring)330
-2223 y(a)31 b(function)f(with)g(an)g(in)m(v)-5 b(alid)31
+2180 y(a)31 b(function)f(with)g(an)g(in)m(v)-5 b(alid)31
 b(name)g(causes)f(a)h(fatal)h(syn)m(tax)f(error)f(in)g(non-in)m
-(teractiv)m(e)j(shells.)154 2357 y(16.)61 b(F)-8 b(unction)31
+(teractiv)m(e)j(shells.)154 2308 y(16.)61 b(F)-8 b(unction)31
 b(names)f(ma)m(y)h(not)g(b)s(e)f(the)g(same)h(as)g(one)f(of)h(the)f
-Fm(posix)g Fu(sp)s(ecial)h(builtins.)154 2491 y(17.)61
+Fm(posix)g Fu(sp)s(ecial)h(builtins.)154 2436 y(17.)61
 b(Ev)m(en)27 b(if)h(a)f(shell)h(function)f(whose)g(name)g(con)m(tains)i
 (a)f(slash)f(w)m(as)g(de\014ned)g(b)s(efore)f(en)m(tering)j
-Fm(posix)330 2600 y Fu(mo)s(de,)h(the)h(shell)f(will)h(not)g(execute)g
+Fm(posix)330 2545 y Fu(mo)s(de,)h(the)h(shell)f(will)h(not)g(execute)g
 (a)g(function)f(whose)g(name)h(con)m(tains)g(one)g(or)f(more)h
-(slashes.)154 2734 y(18.)61 b Fm(posix)30 b Fu(sp)s(ecial)h(builtins)e
-(are)i(found)e(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s
-(okup.)154 2868 y(19.)61 b(When)48 b(prin)m(ting)g(shell)h(function)f
-(de\014nitions)g(\(e.g.,)55 b(b)m(y)48 b Ft(type)p Fu(\),)k(Bash)d(do)s
-(es)f(not)h(prin)m(t)f(the)330 2978 y Ft(function)28
-b Fu(k)m(eyw)m(ord.)154 3112 y(20.)61 b(Literal)28 b(tildes)g(that)f
-(app)s(ear)f(as)i(the)f(\014rst)f(c)m(haracter)j(in)d(elemen)m(ts)j(of)
-e(the)g Ft(PATH)f Fu(v)-5 b(ariable)27 b(are)h(not)330
-3221 y(expanded)i(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)j(under)d(Section)
-i(3.5.2)h([Tilde)f(Expansion],)f(page)h(25.)154 3355
-y(21.)61 b(The)29 b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g(b)s
-(e)g(used)f(b)m(y)h(itself)g(as)g(a)h(command.)40 b(When)30
-b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 3465 y(it)33
-b(displa)m(ys)g(timing)g(statistics)h(for)e(the)h(shell)g(and)f(its)g
-(completed)i(c)m(hildren.)47 b(The)32 b Ft(TIMEFORMAT)330
-3574 y Fu(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f
-(timing)h(information.)154 3708 y(22.)61 b(When)33 b(parsing)g(and)f
-(expanding)h(a)h($)p Fi({)6 b Fu(.)22 b(.)h(.)11 b Fi(})33
-b Fu(expansion)g(that)h(app)s(ears)f(within)f(double)h(quotes,)330
-3818 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f
-(cannot)i(b)s(e)e(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)330
-3927 y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s
-(erator)f(is)g(one)h(of)f(those)h(de\014ned)e(to)i(p)s(erform)e
-(pattern)330 4037 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)
-e(do)g(not)h(ha)m(v)m(e)h(to)f(app)s(ear)e(as)i(matc)m(hed)g(pairs.)154
-4171 y(23.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
+(slashes.)154 2673 y(18.)61 b Fm(posix)25 b Fu(sp)s(ecial)i(builtins)f
+(are)g(found)f(b)s(efore)h(shell)g(functions)g(during)f(command)g(lo)s
+(okup,)i(includ-)330 2783 y(ing)k(output)e(prin)m(ted)h(b)m(y)h(the)f
+Ft(type)f Fu(and)h Ft(command)f Fu(builtins.)154 2911
+y(19.)61 b(When)48 b(prin)m(ting)g(shell)h(function)f(de\014nitions)g
+(\(e.g.,)55 b(b)m(y)48 b Ft(type)p Fu(\),)k(Bash)d(do)s(es)f(not)h
+(prin)m(t)f(the)330 3020 y Ft(function)28 b Fu(k)m(eyw)m(ord.)154
+3148 y(20.)61 b(Literal)28 b(tildes)g(that)f(app)s(ear)f(as)i(the)f
+(\014rst)f(c)m(haracter)j(in)d(elemen)m(ts)j(of)e(the)g
+Ft(PATH)f Fu(v)-5 b(ariable)27 b(are)h(not)330 3258 y(expanded)i(as)g
+(describ)s(ed)f(ab)s(o)m(v)m(e)j(under)d(Section)i(3.5.2)h([Tilde)f
+(Expansion],)f(page)h(25.)154 3386 y(21.)61 b(The)29
+b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g(b)s(e)g(used)f(b)m(y)h
+(itself)g(as)g(a)h(command.)40 b(When)30 b(used)f(in)g(this)h(w)m(a)m
+(y)-8 b(,)330 3495 y(it)33 b(displa)m(ys)g(timing)g(statistics)h(for)e
+(the)h(shell)g(and)f(its)g(completed)i(c)m(hildren.)47
+b(The)32 b Ft(TIMEFORMAT)330 3605 y Fu(v)-5 b(ariable)31
+b(con)m(trols)h(the)e(format)h(of)g(the)f(timing)h(information.)154
+3733 y(22.)61 b(When)33 b(parsing)g(and)f(expanding)h(a)h($)p
+Fi({)6 b Fu(.)22 b(.)h(.)11 b Fi(})33 b Fu(expansion)g(that)h(app)s
+(ears)f(within)f(double)h(quotes,)330 3842 y(single)42
+b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f(cannot)i(b)s(e)e
+(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)330 3952
+y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s(erator)f
+(is)g(one)h(of)f(those)h(de\014ned)e(to)i(p)s(erform)e(pattern)330
+4061 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)e(do)g(not)h
+(ha)m(v)m(e)h(to)f(app)s(ear)e(as)i(matc)m(hed)g(pairs.)154
+4189 y(23.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
 Ft(time)d Fu(as)i(a)g(reserv)m(ed)f(w)m(ord)g(if)h(the)f(next)h(tok)m
-(en)h(b)s(egins)d(with)i(a)330 4281 y(`)p Ft(-)p Fu('.)154
-4415 y(24.)61 b(The)30 b(`)p Ft(!)p Fu(')h(c)m(haracter)h(do)s(es)e
+(en)h(b)s(egins)d(with)i(a)330 4299 y(`)p Ft(-)p Fu('.)154
+4427 y(24.)61 b(The)30 b(`)p Ft(!)p Fu(')h(c)m(haracter)h(do)s(es)e
 (not)h(in)m(tro)s(duce)g(history)f(expansion)h(within)f(a)h
-(double-quoted)g(string,)330 4524 y(ev)m(en)g(if)f(the)h
-Ft(histexpand)d Fu(option)i(is)h(enabled.)154 4658 y(25.)61
+(double-quoted)g(string,)330 4536 y(ev)m(en)g(if)f(the)h
+Ft(histexpand)d Fu(option)i(is)h(enabled.)154 4664 y(25.)61
 b(If)24 b(a)g Fm(posix)g Fu(sp)s(ecial)h(builtin)f(returns)f(an)h
 (error)g(status,)i(a)e(non-in)m(teractiv)m(e)j(shell)e(exits.)39
-b(The)24 b(fatal)330 4768 y(errors)30 b(are)h(those)f(listed)h(in)f
+b(The)24 b(fatal)330 4774 y(errors)30 b(are)h(those)f(listed)h(in)f
 (the)h Fm(posix)e Fu(standard,)h(and)g(include)g(things)g(lik)m(e)i
-(passing)e(incorrect)330 4877 y(options,)43 b(redirection)d(errors,)i
+(passing)e(incorrect)330 4883 y(options,)43 b(redirection)d(errors,)i
 (v)-5 b(ariable)41 b(assignmen)m(t)g(errors)e(for)g(assignmen)m(ts)i
-(preceding)f(the)330 4987 y(command)30 b(name,)h(and)f(so)g(on.)154
+(preceding)f(the)330 4993 y(command)30 b(name,)h(and)f(so)g(on.)154
 5121 y(26.)61 b(The)35 b Ft(unset)e Fu(builtin)i(with)g(the)g
 Ft(-v)f Fu(option)i(sp)s(eci\014ed)e(returns)g(a)i(fatal)g(error)f(if)g
 (it)g(attempts)h(to)330 5230 y(unset)22 b(a)h Ft(readonly)d
@@ -16335,444 +16374,464 @@ eop end
 %%Page: 112 118
 TeXDict begin 112 117 bop 150 -116 a Fu(Chapter)30 b(6:)41
 b(Bash)30 b(F)-8 b(eatures)2439 b(112)154 299 y(27.)61
-b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e(an)h(error)g
-(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g(error)e(o)s
-(ccurs)330 408 y(when)38 b(no)h(command)g(name)g(follo)m(ws)i(the)e
-(assignmen)m(t)h(statemen)m(ts.)69 b(A)39 b(v)-5 b(ariable)40
-b(assignmen)m(t)330 518 y(error)30 b(o)s(ccurs,)g(for)g(example,)i
-(when)d(trying)i(to)g(assign)f(a)h(v)-5 b(alue)31 b(to)g(a)g(readonly)f
-(v)-5 b(ariable.)154 658 y(28.)61 b(A)31 b(non-in)m(teractiv)m(e)j
-(shell)d(exits)h(with)e(an)h(error)g(status)g(if)g(a)g(v)-5
-b(ariable)32 b(assignmen)m(t)g(error)e(o)s(ccurs)330
-768 y(in)g(an)g(assignmen)m(t)i(statemen)m(t)g(preceding)e(a)h(sp)s
-(ecial)g(builtin,)f(but)g(not)g(with)h(an)m(y)f(other)h(simple)330
-877 y(command.)38 b(F)-8 b(or)23 b(an)m(y)g(other)g(simple)g(command,)h
-(the)f(shell)g(ab)s(orts)f(execution)i(of)f(that)g(command,)330
-987 y(and)44 b(execution)i(con)m(tin)m(ues)g(at)g(the)f(top)g(lev)m(el)
-h(\()p Ft(")p Fu(the)f(shell)h(shall)f(not)g(p)s(erform)e(an)m(y)i
-(further)330 1096 y(pro)s(cessing)30 b(of)h(the)f(command)g(in)g(whic)m
-(h)h(the)f(error)g(o)s(ccurred)p Ft(")p Fu(\).)154 1236
-y(29.)61 b(A)43 b(non-in)m(teractiv)m(e)i(shell)e(exits)h(with)f(an)f
-(error)h(status)g(if)g(the)g(iteration)h(v)-5 b(ariable)44
-b(in)f(a)g Ft(for)330 1346 y Fu(statemen)m(t)32 b(or)f(the)f(selection)
-i(v)-5 b(ariable)32 b(in)e(a)g Ft(select)f Fu(statemen)m(t)j(is)f(a)f
-(readonly)h(v)-5 b(ariable.)154 1486 y(30.)61 b(Non-in)m(teractiv)m(e)
-34 b(shells)c(exit)h(if)g Fr(\014lename)k Fu(in)30 b
-Ft(.)g Fr(\014lename)36 b Fu(is)31 b(not)f(found.)154
-1626 y(31.)61 b(Non-in)m(teractiv)m(e)41 b(shells)d(exit)h(if)f(a)g
-(syn)m(tax)g(error)g(in)f(an)h(arithmetic)h(expansion)f(results)f(in)h
-(an)330 1736 y(in)m(v)-5 b(alid)31 b(expression.)154
-1876 y(32.)61 b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g(a)f
-(parameter)h(expansion)g(error)f(o)s(ccurs.)154 2016
-y(33.)61 b(Non-in)m(teractiv)m(e)27 b(shells)c(exit)i(if)e(there)h(is)f
-(a)h(syn)m(tax)g(error)f(in)g(a)h(script)f(read)g(with)h(the)f
-Ft(.)g Fu(or)h Ft(source)330 2125 y Fu(builtins,)30 b(or)g(in)g(a)h
-(string)g(pro)s(cessed)e(b)m(y)i(the)f Ft(eval)f Fu(builtin.)154
-2265 y(34.)61 b(While)32 b(v)-5 b(ariable)32 b(indirection)f(is)g(a)m
-(v)-5 b(ailable,)34 b(it)d(ma)m(y)h(not)f(b)s(e)g(applied)g(to)g(the)h
-(`)p Ft(#)p Fu(')f(and)f(`)p Ft(?)p Fu(')h(sp)s(ecial)330
-2375 y(parameters.)154 2515 y(35.)61 b(Expanding)21 b(the)h(`)p
+b(When)39 b(ask)m(ed)g(to)g(unset)g(a)g(v)-5 b(ariable)39
+b(that)h(app)s(ears)e(in)g(an)h(assignmen)m(t)g(statemen)m(t)i
+(preceding)330 408 y(the)30 b(command,)f(the)h Ft(unset)e
+Fu(builtin)h(attempts)i(to)f(unset)f(a)h(v)-5 b(ariable)31
+b(of)e(the)h(same)g(name)g(in)f(the)330 518 y(curren)m(t)24
+b(or)g(previous)g(scop)s(e)g(as)g(w)m(ell.)40 b(This)23
+b(implemen)m(ts)i(the)f(required)f Ft(")p Fu(if)h(an)g(assigned)g(v)-5
+b(ariable)330 628 y(is)34 b(further)e(mo)s(di\014ed)g(b)m(y)i(the)g
+(utilit)m(y)-8 b(,)36 b(the)e(mo)s(di\014cations)g(made)g(b)m(y)f(the)h
+(utilit)m(y)h(shall)f(p)s(ersist)p Ft(")330 737 y Fu(b)s(eha)m(vior.)
+154 873 y(28.)61 b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)
+e(an)h(error)g(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g
+(error)e(o)s(ccurs)330 982 y(when)38 b(no)h(command)g(name)g(follo)m
+(ws)i(the)e(assignmen)m(t)h(statemen)m(ts.)69 b(A)39
+b(v)-5 b(ariable)40 b(assignmen)m(t)330 1092 y(error)30
+b(o)s(ccurs,)g(for)g(example,)i(when)d(trying)i(to)g(assign)f(a)h(v)-5
+b(alue)31 b(to)g(a)g(readonly)f(v)-5 b(ariable.)154 1227
+y(29.)61 b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e(an)h
+(error)g(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g(error)e
+(o)s(ccurs)330 1337 y(in)g(an)g(assignmen)m(t)i(statemen)m(t)g
+(preceding)e(a)h(sp)s(ecial)g(builtin,)f(but)g(not)g(with)h(an)m(y)f
+(other)h(simple)330 1446 y(command.)38 b(F)-8 b(or)23
+b(an)m(y)g(other)g(simple)g(command,)h(the)f(shell)g(ab)s(orts)f
+(execution)i(of)f(that)g(command,)330 1556 y(and)44 b(execution)i(con)m
+(tin)m(ues)g(at)g(the)f(top)g(lev)m(el)h(\()p Ft(")p
+Fu(the)f(shell)h(shall)f(not)g(p)s(erform)e(an)m(y)i(further)330
+1666 y(pro)s(cessing)30 b(of)h(the)f(command)g(in)g(whic)m(h)h(the)f
+(error)g(o)s(ccurred)p Ft(")p Fu(\).)154 1801 y(30.)61
+b(A)43 b(non-in)m(teractiv)m(e)i(shell)e(exits)h(with)f(an)f(error)h
+(status)g(if)g(the)g(iteration)h(v)-5 b(ariable)44 b(in)f(a)g
+Ft(for)330 1910 y Fu(statemen)m(t)30 b(or)f(the)g(selection)h(v)-5
+b(ariable)30 b(in)e(a)h Ft(select)e Fu(statemen)m(t)k(is)d(a)h
+(readonly)g(v)-5 b(ariable)30 b(or)e(has)330 2020 y(an)i(in)m(v)-5
+b(alid)31 b(name.)154 2155 y(31.)61 b(Non-in)m(teractiv)m(e)34
+b(shells)c(exit)h(if)g Fr(\014lename)k Fu(in)30 b Ft(.)g
+Fr(\014lename)36 b Fu(is)31 b(not)f(found.)154 2291 y(32.)61
+b(Non-in)m(teractiv)m(e)41 b(shells)d(exit)h(if)f(a)g(syn)m(tax)g
+(error)g(in)f(an)h(arithmetic)h(expansion)f(results)f(in)h(an)330
+2400 y(in)m(v)-5 b(alid)31 b(expression.)154 2536 y(33.)61
+b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g(a)f(parameter)h
+(expansion)g(error)f(o)s(ccurs.)154 2671 y(34.)61 b(Non-in)m(teractiv)m
+(e)27 b(shells)c(exit)i(if)e(there)h(is)f(a)h(syn)m(tax)g(error)f(in)g
+(a)h(script)f(read)g(with)h(the)f Ft(.)g Fu(or)h Ft(source)330
+2781 y Fu(builtins,)30 b(or)g(in)g(a)h(string)g(pro)s(cessed)e(b)m(y)i
+(the)f Ft(eval)f Fu(builtin.)154 2916 y(35.)61 b(While)32
+b(v)-5 b(ariable)32 b(indirection)f(is)g(a)m(v)-5 b(ailable,)34
+b(it)d(ma)m(y)h(not)f(b)s(e)g(applied)g(to)g(the)h(`)p
+Ft(#)p Fu(')f(and)f(`)p Ft(?)p Fu(')h(sp)s(ecial)330
+3026 y(parameters.)154 3161 y(36.)61 b(Expanding)21 b(the)h(`)p
 Ft(*)p Fu(')g(sp)s(ecial)h(parameter)f(in)g(a)g(pattern)h(con)m(text)g
-(where)f(the)g(expansion)g(is)g(double-)330 2625 y(quoted)31
+(where)f(the)g(expansion)g(is)g(double-)330 3271 y(quoted)31
 b(do)s(es)f(not)g(treat)i(the)e Ft($*)g Fu(as)h(if)f(it)h(w)m(ere)g
-(double-quoted.)154 2765 y(36.)61 b(Assignmen)m(t)23
+(double-quoted.)154 3406 y(37.)61 b(Assignmen)m(t)23
 b(statemen)m(ts)h(preceding)e Fm(posix)f Fu(sp)s(ecial)i(builtins)f(p)s
-(ersist)g(in)f(the)i(shell)f(en)m(vironmen)m(t)330 2874
-y(after)31 b(the)f(builtin)g(completes.)154 3014 y(37.)61
+(ersist)g(in)f(the)i(shell)f(en)m(vironmen)m(t)330 3516
+y(after)31 b(the)f(builtin)g(completes.)154 3651 y(38.)61
 b(The)31 b Ft(command)e Fu(builtin)i(do)s(es)g(not)h(prev)m(en)m(t)f
 (builtins)g(that)h(tak)m(e)h(assignmen)m(t)f(statemen)m(ts)h(as)f(ar-)
-330 3124 y(gumen)m(ts)40 b(from)e(expanding)h(them)g(as)h(assignmen)m
+330 3761 y(gumen)m(ts)40 b(from)e(expanding)h(them)g(as)h(assignmen)m
 (t)g(statemen)m(ts;)46 b(when)38 b(not)i(in)f Fm(posix)f
-Fu(mo)s(de,)330 3233 y(assignmen)m(t)k(builtins)e(lose)h(their)g
+Fu(mo)s(de,)330 3870 y(assignmen)m(t)k(builtins)e(lose)h(their)g
 (assignmen)m(t)h(statemen)m(t)h(expansion)d(prop)s(erties)g(when)g
-(pre-)330 3343 y(ceded)31 b(b)m(y)f Ft(command)p Fu(.)154
-3483 y(38.)61 b(The)27 b Ft(bg)g Fu(builtin)g(uses)g(the)h(required)f
+(pre-)330 3980 y(ceded)31 b(b)m(y)f Ft(command)p Fu(.)154
+4115 y(39.)61 b(The)27 b Ft(bg)g Fu(builtin)g(uses)g(the)h(required)f
 (format)h(to)g(describ)s(e)f(eac)m(h)i(job)e(placed)h(in)f(the)h(bac)m
-(kground,)330 3593 y(whic)m(h)h(do)s(es)g(not)g(include)g(an)g
+(kground,)330 4225 y(whic)m(h)h(do)s(es)g(not)g(include)g(an)g
 (indication)h(of)f(whether)f(the)h(job)g(is)g(the)h(curren)m(t)e(or)h
-(previous)g(job.)154 3733 y(39.)61 b(The)23 b(output)f(of)i(`)p
+(previous)g(job.)154 4360 y(40.)61 b(The)23 b(output)f(of)i(`)p
 Ft(kill)29 b(-l)p Fu(')23 b(prin)m(ts)f(all)i(the)g(signal)f(names)g
 (on)g(a)h(single)g(line,)h(separated)e(b)m(y)g(spaces,)330
-3842 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
-3982 y(40.)61 b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h(accept)
+4470 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
+4605 y(41.)61 b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h(accept)
 h(signal)f(names)f(with)g(a)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
-4122 y(41.)61 b(The)38 b Ft(export)f Fu(and)g Ft(readonly)f
+4740 y(42.)61 b(The)38 b Ft(export)f Fu(and)g Ft(readonly)f
 Fu(builtin)i(commands)g(displa)m(y)h(their)f(output)g(in)g(the)h
-(format)g(re-)330 4232 y(quired)30 b(b)m(y)g Fm(posix)p
-Fu(.)154 4372 y(42.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g
-(signal)i(names)e(without)g(the)h(leading)g Ft(SIG)p
-Fu(.)154 4512 y(43.)61 b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g
-(c)m(hec)m(k)h(the)g(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e
-(signal)i(sp)s(eci\014cation)330 4622 y(and)30 b(rev)m(ert)i(the)e
-(signal)i(handling)e(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g
-(is,)g(unless)f(that)h(argumen)m(t)330 4731 y(consists)e(solely)g(of)g
-(digits)g(and)f(is)g(a)h(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38
-b(If)28 b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
-4841 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
-(osition,)f(they)g(should)f(use)h(`)p Ft(-)p Fu(')g(as)g(the)g(\014rst)
-f(argumen)m(t.)154 4981 y(44.)61 b Ft(trap)29 b(-p)24
-b Fu(without)g(argumen)m(ts)g(displa)m(ys)g(signals)g(whose)g(disp)s
-(ositions)g(are)g(set)h(to)f(SIG)p 3360 4981 28 4 v 40
-w(DFL)h(and)330 5090 y(those)31 b(that)g(w)m(ere)g(ignored)f(when)g
-(the)g(shell)h(started,)g(not)f(just)g(trapp)s(ed)f(signals.)154
-5230 y(45.)61 b(The)21 b Ft(.)h Fu(and)f Ft(source)f
-Fu(builtins)h(do)g(not)h(searc)m(h)h(the)f(curren)m(t)f(directory)h
-(for)g(the)g(\014lename)f(argumen)m(t)330 5340 y(if)30
-b(it)h(is)g(not)f(found)f(b)m(y)i(searc)m(hing)g Ft(PATH)p
-Fu(.)p eop end
+(format)g(re-)330 4850 y(quired)30 b(b)m(y)g Fm(posix)p
+Fu(.)154 4985 y(43.)61 b(If)39 b(the)g Ft(export)f Fu(and)g
+Ft(readonly)f Fu(builtin)i(commands)g(get)h(an)g(argumen)m(t)f(that)h
+(is)f(not)h(a)g(v)-5 b(alid)330 5095 y(iden)m(ti\014er,)27
+b(and)f(they)g(are)h(not)f(op)s(erating)g(on)g(shell)h(functions,)f
+(they)h(return)d(an)i(error.)39 b(This)26 b(will)330
+5205 y(cause)31 b(a)g(non-in)m(teractiv)m(e)i(shell)d(to)h(exit)h(b)s
+(ecause)e(these)h(are)g(sp)s(ecial)g(builtins.)154 5340
+y(44.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g(signal)i
+(names)e(without)g(the)h(leading)g Ft(SIG)p Fu(.)p eop
+end
 %%Page: 113 119
 TeXDict begin 113 118 bop 150 -116 a Fu(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2439 b(113)154 299 y(46.)61
+b(Bash)30 b(F)-8 b(eatures)2439 b(113)154 299 y(45.)61
+b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g(c)m(hec)m(k)h(the)g
+(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e(signal)i(sp)s
+(eci\014cation)330 408 y(and)30 b(rev)m(ert)i(the)e(signal)i(handling)e
+(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g(is,)g(unless)f(that)h
+(argumen)m(t)330 518 y(consists)e(solely)g(of)g(digits)g(and)f(is)g(a)h
+(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38 b(If)28
+b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
+628 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
+(osition,)f(they)g(should)f(use)h(`)p Ft(-)p Fu(')g(as)g(the)g(\014rst)
+f(argumen)m(t.)154 758 y(46.)61 b Ft(trap)29 b(-p)24
+b Fu(without)g(argumen)m(ts)g(displa)m(ys)g(signals)g(whose)g(disp)s
+(ositions)g(are)g(set)h(to)f(SIG)p 3360 758 28 4 v 40
+w(DFL)h(and)330 867 y(those)31 b(that)g(w)m(ere)g(ignored)f(when)g(the)
+g(shell)h(started,)g(not)f(just)g(trapp)s(ed)f(signals.)154
+998 y(47.)61 b(The)21 b Ft(.)h Fu(and)f Ft(source)f Fu(builtins)h(do)g
+(not)h(searc)m(h)h(the)f(curren)m(t)f(directory)h(for)g(the)g
+(\014lename)f(argumen)m(t)330 1107 y(if)30 b(it)h(is)g(not)f(found)f(b)
+m(y)i(searc)m(hing)g Ft(PATH)p Fu(.)154 1237 y(48.)61
 b(Enabling)21 b Fm(posix)g Fu(mo)s(de)g(has)g(the)g(e\013ect)i(of)e
 (setting)i(the)e Ft(inherit_errexit)d Fu(option,)23 b(so)f(subshells)
-330 408 y(spa)m(wned)27 b(to)i(execute)g(command)e(substitutions)h
+330 1347 y(spa)m(wned)27 b(to)i(execute)g(command)e(substitutions)h
 (inherit)f(the)h(v)-5 b(alue)28 b(of)g(the)g Ft(-e)f
-Fu(option)h(from)g(the)330 518 y(paren)m(t)37 b(shell.)62
+Fu(option)h(from)g(the)330 1456 y(paren)m(t)37 b(shell.)62
 b(When)37 b(the)g Ft(inherit_errexit)c Fu(option)38 b(is)f(not)h
-(enabled,)h(Bash)e(clears)h(the)g Ft(-e)330 628 y Fu(option)31
-b(in)f(suc)m(h)g(subshells.)154 765 y(47.)61 b(Enabling)32
+(enabled,)h(Bash)e(clears)h(the)g Ft(-e)330 1566 y Fu(option)31
+b(in)f(suc)m(h)g(subshells.)154 1696 y(49.)61 b(Enabling)32
 b Fm(posix)f Fu(mo)s(de)h(has)g(the)h(e\013ect)g(of)g(setting)g(the)g
 Ft(shift_verbose)28 b Fu(option,)34 b(so)e(n)m(umeric)330
-874 y(argumen)m(ts)f(to)g Ft(shift)f Fu(that)h(exceed)h(the)e(n)m(um)m
+1806 y(argumen)m(ts)f(to)g Ft(shift)f Fu(that)h(exceed)h(the)e(n)m(um)m
 (b)s(er)g(of)h(p)s(ositional)g(parameters)g(will)g(result)g(in)f(an)330
-984 y(error)g(message.)154 1121 y(48.)61 b(When)43 b(the)g
+1915 y(error)g(message.)154 2045 y(50.)61 b(When)43 b(the)g
 Ft(alias)f Fu(builtin)g(displa)m(ys)i(alias)g(de\014nitions,)i(it)d(do)
-s(es)g(not)g(displa)m(y)h(them)f(with)g(a)330 1230 y(leading)31
+s(es)g(not)g(displa)m(y)h(them)f(with)g(a)330 2155 y(leading)31
 b(`)p Ft(alias)e Fu(')i(unless)f(the)g Ft(-p)g Fu(option)h(is)f
-(supplied.)154 1367 y(49.)61 b(When)40 b(the)g Ft(set)f
+(supplied.)154 2285 y(51.)61 b(When)40 b(the)g Ft(set)f
 Fu(builtin)h(is)g(in)m(v)m(ok)m(ed)h(without)f(options,)j(it)e(do)s(es)
-f(not)g(displa)m(y)g(shell)g(function)330 1477 y(names)30
-b(and)g(de\014nitions.)154 1614 y(50.)61 b(When)36 b(the)g
+f(not)g(displa)m(y)g(shell)g(function)330 2395 y(names)30
+b(and)g(de\014nitions.)154 2525 y(52.)61 b(When)36 b(the)g
 Ft(set)g Fu(builtin)g(is)g(in)m(v)m(ok)m(ed)i(without)e(options,)i(it)f
 (displa)m(ys)f(v)-5 b(ariable)37 b(v)-5 b(alues)37 b(without)330
-1724 y(quotes,)26 b(unless)d(they)i(con)m(tain)g(shell)f(metac)m
+2634 y(quotes,)26 b(unless)d(they)i(con)m(tain)g(shell)f(metac)m
 (haracters,)k(ev)m(en)d(if)f(the)g(result)g(con)m(tains)i(nonprin)m
-(ting)330 1833 y(c)m(haracters.)154 1970 y(51.)61 b(When)35
+(ting)330 2744 y(c)m(haracters.)154 2874 y(53.)61 b(When)35
 b(the)h Ft(cd)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed)g(in)f(logical)j(mo)
 s(de,)e(and)f(the)h(pathname)f(constructed)g(from)330
-2080 y Ft($PWD)i Fu(and)h(the)h(directory)f(name)h(supplied)e(as)i(an)f
+2984 y Ft($PWD)i Fu(and)h(the)h(directory)f(name)h(supplied)e(as)i(an)f
 (argumen)m(t)h(do)s(es)f(not)g(refer)h(to)g(an)f(existing)330
-2189 y(directory)-8 b(,)32 b Ft(cd)d Fu(will)i(fail)g(instead)g(of)f
+3093 y(directory)-8 b(,)32 b Ft(cd)d Fu(will)i(fail)g(instead)g(of)f
 (falling)h(bac)m(k)h(to)f(ph)m(ysical)g(mo)s(de.)154
-2326 y(52.)61 b(When)37 b(the)h Ft(cd)f Fu(builtin)g(cannot)h(c)m
+3224 y(54.)61 b(When)37 b(the)h Ft(cd)f Fu(builtin)g(cannot)h(c)m
 (hange)h(a)f(directory)g(b)s(ecause)g(the)g(length)g(of)f(the)h
-(pathname)330 2436 y(constructed)27 b(from)g Ft($PWD)f
+(pathname)330 3333 y(constructed)27 b(from)g Ft($PWD)f
 Fu(and)h(the)g(directory)h(name)f(supplied)f(as)i(an)f(argumen)m(t)g
-(exceeds)h Ft(PATH_)330 2545 y(MAX)d Fu(when)g(all)h(sym)m(b)s(olic)g
+(exceeds)h Ft(PATH_)330 3443 y(MAX)d Fu(when)g(all)h(sym)m(b)s(olic)g
 (links)g(are)g(expanded,)g Ft(cd)f Fu(will)h(fail)h(instead)f(of)g
-(attempting)h(to)f(use)g(only)330 2655 y(the)31 b(supplied)e(directory)
-i(name.)154 2792 y(53.)61 b(The)36 b Ft(pwd)f Fu(builtin)h(v)m
+(attempting)h(to)f(use)g(only)330 3552 y(the)31 b(supplied)e(directory)
+i(name.)154 3682 y(55.)61 b(The)36 b Ft(pwd)f Fu(builtin)h(v)m
 (eri\014es)h(that)g(the)f(v)-5 b(alue)37 b(it)g(prin)m(ts)e(is)i(the)f
 (same)h(as)f(the)h(curren)m(t)f(directory)-8 b(,)330
-2902 y(ev)m(en)31 b(if)f(it)h(is)g(not)f(ask)m(ed)h(to)g(c)m(hec)m(k)h
+3792 y(ev)m(en)31 b(if)f(it)h(is)g(not)f(ask)m(ed)h(to)g(c)m(hec)m(k)h
 (the)f(\014le)f(system)h(with)f(the)h Ft(-P)e Fu(option.)154
-3039 y(54.)61 b(When)35 b(listing)g(the)g(history)-8
+3922 y(56.)61 b(When)35 b(listing)g(the)g(history)-8
 b(,)36 b(the)f Ft(fc)g Fu(builtin)f(do)s(es)g(not)h(include)g(an)f
-(indication)i(of)f(whether)f(or)330 3148 y(not)d(a)f(history)h(en)m
-(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154 3285 y(55.)61
+(indication)i(of)f(whether)f(or)330 4032 y(not)d(a)f(history)h(en)m
+(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154 4162 y(57.)61
 b(The)30 b(default)g(editor)h(used)f(b)m(y)g Ft(fc)g
-Fu(is)g Ft(ed)p Fu(.)154 3422 y(56.)61 b(If)38 b(there)h(are)g(to)s(o)g
+Fu(is)g Ft(ed)p Fu(.)154 4292 y(58.)61 b(If)38 b(there)h(are)g(to)s(o)g
 (man)m(y)g(argumen)m(ts)g(supplied)e(to)i Ft(fc)30 b(-s)p
 Fu(,)40 b Ft(fc)e Fu(prin)m(ts)g(an)h(error)f(message)i(and)330
-3532 y(returns)29 b(failure.)154 3669 y(57.)61 b(The)37
+4402 y(returns)29 b(failure.)154 4532 y(59.)61 b(The)37
 b Ft(type)g Fu(and)g Ft(command)f Fu(builtins)i(will)g(not)g(rep)s(ort)
 f(a)i(non-executable)g(\014le)f(as)g(ha)m(ving)h(b)s(een)330
-3778 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g
+4641 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g
 (execute)g(suc)m(h)f(a)g(\014le)g(if)g(it)g(is)g(the)g(only)g(so-named)
-g(\014le)330 3888 y(found)i(in)h Ft($PATH)p Fu(.)154
-4025 y(58.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m
+g(\014le)330 4751 y(found)i(in)h Ft($PATH)p Fu(.)154
+4881 y(60.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m
 (ok)m(e)i(the)e Ft(vi)g Fu(editor)h(directly)f(when)f(the)i(`)p
-Ft(v)p Fu(')f(command)g(is)g(run,)330 4134 y(instead)e(of)f(c)m(hec)m
-(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 4271
-y(59.)61 b(When)41 b(the)g Ft(xpg_echo)e Fu(option)i(is)g(enabled,)j
+Ft(v)p Fu(')f(command)g(is)g(run,)330 4991 y(instead)e(of)f(c)m(hec)m
+(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 5121
+y(61.)61 b(When)41 b(the)g Ft(xpg_echo)e Fu(option)i(is)g(enabled,)j
 (Bash)d(do)s(es)g(not)g(attempt)h(to)g(in)m(terpret)f(an)m(y)h(ar-)330
-4381 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54
+5230 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54
 b(Eac)m(h)35 b(argumen)m(t)g(is)f(displa)m(y)m(ed,)j(after)e(escap)s(e)
-g(c)m(haracters)h(are)330 4491 y(con)m(v)m(erted.)154
-4628 y(60.)61 b(The)30 b Ft(ulimit)f Fu(builtin)g(uses)h(a)h(blo)s(c)m
-(k)g(size)g(of)g(512)g(b)m(ytes)g(for)f(the)h Ft(-c)f
-Fu(and)g Ft(-f)f Fu(options.)154 4765 y(61.)61 b(The)39
-b(arriv)-5 b(al)41 b(of)f Ft(SIGCHLD)e Fu(when)h(a)h(trap)g(is)g(set)h
-(on)f Ft(SIGCHLD)e Fu(do)s(es)h(not)h(in)m(terrupt)g(the)g
-Ft(wait)330 4874 y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f
+g(c)m(haracters)h(are)330 5340 y(con)m(v)m(erted.)p eop
+end
+%%Page: 114 120
+TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(114)154 299 y(62.)61
+b(The)30 b Ft(ulimit)f Fu(builtin)g(uses)h(a)h(blo)s(c)m(k)g(size)g(of)
+g(512)g(b)m(ytes)g(for)f(the)h Ft(-c)f Fu(and)g Ft(-f)f
+Fu(options.)154 438 y(63.)61 b(The)39 b(arriv)-5 b(al)41
+b(of)f Ft(SIGCHLD)e Fu(when)h(a)h(trap)g(is)g(set)h(on)f
+Ft(SIGCHLD)e Fu(do)s(es)h(not)h(in)m(terrupt)g(the)g
+Ft(wait)330 548 y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f
 (immediately)-8 b(.)62 b(The)37 b(trap)f(command)h(is)g(run)e(once)j
-(for)f(eac)m(h)330 4984 y(c)m(hild)31 b(that)g(exits.)154
-5121 y(62.)61 b(The)27 b Ft(read)f Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m
+(for)f(eac)m(h)330 657 y(c)m(hild)31 b(that)g(exits.)154
+797 y(64.)61 b(The)27 b Ft(read)f Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m
 (terrupted)h(b)m(y)g(a)h(signal)f(for)g(whic)m(h)g(a)h(trap)f(has)g(b)s
-(een)f(set.)40 b(If)27 b(Bash)330 5230 y(receiv)m(es)41
+(een)f(set.)40 b(If)27 b(Bash)330 906 y(receiv)m(es)41
 b(a)f(trapp)s(ed)e(signal)i(while)f(executing)h Ft(read)p
 Fu(,)h(the)e(trap)h(handler)e(executes)i(and)f Ft(read)330
-5340 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)p
-eop end
-%%Page: 114 120
-TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2439 b(114)154 299 y(63.)61
-b(The)33 b Ft(printf)f Fu(builtin)i(uses)f Ft(double)f
-Fu(\(via)j Ft(strtod)p Fu(\))d(to)j(con)m(v)m(ert)g(argumen)m(ts)f
-(corresp)s(onding)f(to)330 408 y(\015oating)40 b(p)s(oin)m(t)f(con)m(v)
-m(ersion)h(sp)s(eci\014ers,)h(instead)e(of)g Ft(long)29
-b(double)38 b Fu(if)h(it's)g(a)m(v)-5 b(ailable.)69 b(The)39
-b(`)p Ft(L)p Fu(')330 518 y(length)31 b(mo)s(di\014er)e(forces)i
-Ft(printf)e Fu(to)i(use)f Ft(long)f(double)g Fu(if)h(it's)h(a)m(v)-5
-b(ailable.)154 653 y(64.)61 b(Bash)27 b(remo)m(v)m(es)h(an)e(exited)i
-(bac)m(kground)e(pro)s(cess's)h(status)g(from)f(the)h(list)g(of)g(suc)m
-(h)f(statuses)h(after)330 763 y(the)k Ft(wait)e Fu(builtin)h(is)g(used)
-g(to)h(obtain)g(it.)154 898 y(65.)61 b(A)39 b(double)f(quote)i(c)m
-(haracter)g(\(`)p Ft(")p Fu('\))g(is)f(treated)g(sp)s(ecially)h(when)e
-(it)h(app)s(ears)f(in)h(a)g(bac)m(kquoted)330 1008 y(command)24
-b(substitution)f(in)h(the)g(b)s(o)s(dy)e(of)i(a)g(here-do)s(cumen)m(t)g
-(that)h(undergo)s(es)e(expansion.)38 b(That)330 1117
-y(means,)29 b(for)f(example,)i(that)f(a)g(bac)m(kslash)g(preceding)f(a)
-h(double)f(quote)h(c)m(haracter)h(will)f(escap)s(e)f(it)330
-1227 y(and)i(the)g(bac)m(kslash)h(will)g(b)s(e)f(remo)m(v)m(ed.)154
-1362 y(66.)61 b(The)26 b Ft(test)g Fu(builtin)g(compares)h(strings)g
-(using)f(the)h(curren)m(t)f(lo)s(cale)j(when)c(pro)s(cessing)i(the)g(`)
-p Ft(<)p Fu(')g(and)330 1472 y(`)p Ft(>)p Fu(')k(binary)e(op)s
-(erators.)154 1607 y(67.)61 b(The)27 b Ft(test)f Fu(builtin's)g
-Ft(-t)h Fu(unary)f(primary)g(requires)h(an)g(argumen)m(t.)40
-b(Historical)29 b(v)m(ersions)f(of)f Ft(test)330 1717
+1016 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)154
+1155 y(65.)61 b(The)33 b Ft(printf)f Fu(builtin)i(uses)f
+Ft(double)f Fu(\(via)j Ft(strtod)p Fu(\))d(to)j(con)m(v)m(ert)g
+(argumen)m(ts)f(corresp)s(onding)f(to)330 1265 y(\015oating)40
+b(p)s(oin)m(t)f(con)m(v)m(ersion)h(sp)s(eci\014ers,)h(instead)e(of)g
+Ft(long)29 b(double)38 b Fu(if)h(it's)g(a)m(v)-5 b(ailable.)69
+b(The)39 b(`)p Ft(L)p Fu(')330 1375 y(length)31 b(mo)s(di\014er)e
+(forces)i Ft(printf)e Fu(to)i(use)f Ft(long)f(double)g
+Fu(if)h(it's)h(a)m(v)-5 b(ailable.)154 1514 y(66.)61
+b(Bash)27 b(remo)m(v)m(es)h(an)e(exited)i(bac)m(kground)e(pro)s(cess's)
+h(status)g(from)f(the)h(list)g(of)g(suc)m(h)f(statuses)h(after)330
+1624 y(the)k Ft(wait)e Fu(builtin)h(is)g(used)g(to)h(obtain)g(it.)154
+1763 y(67.)61 b(A)39 b(double)f(quote)i(c)m(haracter)g(\(`)p
+Ft(")p Fu('\))g(is)f(treated)g(sp)s(ecially)h(when)e(it)h(app)s(ears)f
+(in)h(a)g(bac)m(kquoted)330 1873 y(command)24 b(substitution)f(in)h
+(the)g(b)s(o)s(dy)e(of)i(a)g(here-do)s(cumen)m(t)g(that)h(undergo)s(es)
+e(expansion.)38 b(That)330 1982 y(means,)29 b(for)f(example,)i(that)f
+(a)g(bac)m(kslash)g(preceding)f(a)h(double)f(quote)h(c)m(haracter)h
+(will)f(escap)s(e)f(it)330 2092 y(and)i(the)g(bac)m(kslash)h(will)g(b)s
+(e)f(remo)m(v)m(ed.)154 2231 y(68.)61 b(The)26 b Ft(test)g
+Fu(builtin)g(compares)h(strings)g(using)f(the)h(curren)m(t)f(lo)s(cale)
+j(when)c(pro)s(cessing)i(the)g(`)p Ft(<)p Fu(')g(and)330
+2341 y(`)p Ft(>)p Fu(')k(binary)e(op)s(erators.)154 2480
+y(69.)61 b(The)27 b Ft(test)f Fu(builtin's)g Ft(-t)h
+Fu(unary)f(primary)g(requires)h(an)g(argumen)m(t.)40
+b(Historical)29 b(v)m(ersions)f(of)f Ft(test)330 2590
 y Fu(made)c(the)h(argumen)m(t)g(optional)h(in)e(certain)h(cases,)i(and)
-d(Bash)h(attempts)g(to)g(accommo)s(date)h(those)330 1826
+d(Bash)h(attempts)g(to)g(accommo)s(date)h(those)330 2699
 y(for)30 b(bac)m(kw)m(ards)h(compatibilit)m(y)-8 b(.)154
-1962 y(68.)61 b(Command)25 b(substitutions)g(don't)g(set)h(the)g(`)p
+2839 y(70.)61 b(Command)25 b(substitutions)g(don't)g(set)h(the)g(`)p
 Ft(?)p Fu(')g(sp)s(ecial)g(parameter.)40 b(The)25 b(exit)h(status)g(of)
-g(a)g(simple)330 2071 y(command)i(without)g(a)h(command)f(w)m(ord)f(is)
+g(a)g(simple)330 2948 y(command)i(without)g(a)h(command)f(w)m(ord)f(is)
 i(still)g(the)f(exit)h(status)g(of)f(the)g(last)h(command)f(substi-)330
-2181 y(tution)f(that)h(o)s(ccurred)e(while)h(ev)-5 b(aluating)28
+3058 y(tution)f(that)h(o)s(ccurred)e(while)h(ev)-5 b(aluating)28
 b(the)g(v)-5 b(ariable)27 b(assignmen)m(ts)h(and)e(redirections)i(in)e
-(that)330 2291 y(command,)h(but)f(that)g(do)s(es)g(not)h(happ)s(en)d
+(that)330 3167 y(command,)h(but)f(that)g(do)s(es)g(not)h(happ)s(en)d
 (un)m(til)j(after)g(all)g(of)f(the)h(assignmen)m(ts)g(and)e
-(redirections.)275 2452 y(There)34 b(is)g(other)h Fm(posix)f
+(redirections.)275 3342 y(There)34 b(is)g(other)h Fm(posix)f
 Fu(b)s(eha)m(vior)h(that)g(Bash)g(do)s(es)f(not)h(implemen)m(t)g(b)m(y)
-g(default)f(ev)m(en)i(when)d(in)150 2562 y Fm(posix)d
-Fu(mo)s(de.)40 b(Sp)s(eci\014cally:)199 2698 y(1.)61
+g(default)f(ev)m(en)i(when)d(in)150 3451 y Fm(posix)d
+Fu(mo)s(de.)40 b(Sp)s(eci\014cally:)199 3595 y(1.)61
 b(The)30 b Ft(fc)f Fu(builtin)h(c)m(hec)m(ks)i Ft($EDITOR)c
 Fu(as)j(a)f(program)g(to)h(edit)g(history)f(en)m(tries)h(if)f
-Ft(FCEDIT)f Fu(is)h(unset,)330 2808 y(rather)g(than)g(defaulting)h
+Ft(FCEDIT)f Fu(is)h(unset,)330 3705 y(rather)g(than)g(defaulting)h
 (directly)g(to)g Ft(ed)p Fu(.)40 b Ft(fc)30 b Fu(uses)g
-Ft(ed)g Fu(if)g Ft(EDITOR)f Fu(is)h(unset.)199 2943 y(2.)61
+Ft(ed)g Fu(if)g Ft(EDITOR)f Fu(is)h(unset.)199 3844 y(2.)61
 b(A)37 b(non-in)m(teractiv)m(e)i(shell)e(do)s(es)f(not)h(exit)h(if)e(a)
 h(v)-5 b(ariable)38 b(assignmen)m(t)f(preceding)g(the)g
-Ft(command)330 3053 y Fu(builtin)30 b(or)g(another)h(non-sp)s(ecial)g
-(builtin)f(fails.)199 3188 y(3.)61 b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i
+Ft(command)330 3954 y Fu(builtin)30 b(or)g(another)h(non-sp)s(ecial)g
+(builtin)f(fails.)199 4093 y(3.)61 b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i
 (Bash)e(requires)g(the)g Ft(xpg_echo)e Fu(option)j(to)g(b)s(e)e
-(enabled)h(for)g(the)g Ft(echo)f Fu(builtin)330 3298
-y(to)j(b)s(e)f(fully)g(conforman)m(t.)275 3460 y(Bash)c(can)g(b)s(e)f
+(enabled)h(for)g(the)g Ft(echo)f Fu(builtin)330 4203
+y(to)j(b)s(e)f(fully)g(conforman)m(t.)275 4377 y(Bash)c(can)g(b)s(e)f
 (con\014gured)h(to)g(b)s(e)g Fm(posix)p Fu(-conforman)m(t)g(b)m(y)g
 (default,)h(b)m(y)f(sp)s(ecifying)g(the)g Ft(--enable-)150
-3569 y(strict-posix-default)c Fu(to)27 b Ft(configure)e
+4487 y(strict-posix-default)c Fu(to)27 b Ft(configure)e
 Fu(when)h(building)h(\(see)h(Section)g(10.8)g([Optional)g(F)-8
-b(eatures],)150 3679 y(page)31 b(168\).)150 3922 y Fs(6.12)68
-b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150 4081 y Fu(Bash-4.0)33
+b(eatures],)150 4596 y(page)31 b(168\).)150 4852 y Fs(6.12)68
+b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150 5011 y Fu(Bash-4.0)33
 b(in)m(tro)s(duced)f(the)f(concept)i(of)f(a)g Fr(shell)g(compatibilit)m
 (y)i(lev)m(el)p Fu(,)g(sp)s(eci\014ed)d(as)h(a)g(set)h(of)f(options)150
-4191 y(to)f(the)f(shopt)g(builtin)g(\()p Ft(compat31)p
+5121 y(to)f(the)f(shopt)g(builtin)g(\()p Ft(compat31)p
 Fu(,)e Ft(compat32)p Fu(,)h Ft(compat40)p Fu(,)f Ft(compat41)p
 Fu(,)g(and)i(so)g(on\).)41 b(There)30 b(is)g(only)150
-4301 y(one)f(curren)m(t)f(compatibilit)m(y)j(lev)m(el)f({)f(eac)m(h)h
+5230 y(one)f(curren)m(t)f(compatibilit)m(y)j(lev)m(el)f({)f(eac)m(h)h
 (option)f(is)g(m)m(utually)g(exclusiv)m(e.)41 b(The)28
-b(compatibilit)m(y)j(lev)m(el)150 4410 y(is)39 b(in)m(tended)g(to)h
+b(compatibilit)m(y)j(lev)m(el)150 5340 y(is)39 b(in)m(tended)g(to)h
 (allo)m(w)g(users)e(to)i(select)h(b)s(eha)m(vior)e(from)f(previous)h(v)
-m(ersions)g(that)h(is)f(incompatible)150 4520 y(with)d(new)m(er)g(v)m
-(ersions)g(while)g(they)g(migrate)h(scripts)f(to)h(use)f(curren)m(t)f
-(features)i(and)e(b)s(eha)m(vior.)58 b(It's)150 4629
-y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f(solution.)275
-4765 y(This)k(section)j(do)s(es)e(not)h(men)m(tion)g(b)s(eha)m(vior)g
+m(ersions)g(that)h(is)f(incompatible)p eop end
+%%Page: 115 121
+TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(115)150 299 y(with)36
+b(new)m(er)g(v)m(ersions)g(while)g(they)g(migrate)h(scripts)f(to)h(use)
+f(curren)m(t)f(features)i(and)e(b)s(eha)m(vior.)58 b(It's)150
+408 y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f(solution.)275
+556 y(This)k(section)j(do)s(es)e(not)h(men)m(tion)g(b)s(eha)m(vior)g
 (that)g(is)f(standard)g(for)g(a)h(particular)g(v)m(ersion)g(\(e.g.,)150
-4875 y(setting)d Ft(compat32)c Fu(means)i(that)i(quoting)e(the)h(rhs)f
+666 y(setting)d Ft(compat32)c Fu(means)i(that)i(quoting)e(the)h(rhs)f
 (of)g(the)h(regexp)g(matc)m(hing)h(op)s(erator)e(quotes)h(sp)s(e-)150
-4985 y(cial)39 b(regexp)e(c)m(haracters)i(in)e(the)g(w)m(ord,)i(whic)m
+775 y(cial)39 b(regexp)e(c)m(haracters)i(in)e(the)g(w)m(ord,)i(whic)m
 (h)e(is)g(default)h(b)s(eha)m(vior)f(in)g(bash-3.2)h(and)f(subsequen)m
-(t)150 5094 y(v)m(ersions\).)275 5230 y(If)29 b(a)h(user)f(enables,)h
+(t)150 885 y(v)m(ersions\).)275 1032 y(If)29 b(a)h(user)f(enables,)h
 (sa)m(y)-8 b(,)31 b Ft(compat32)p Fu(,)d(it)i(ma)m(y)g(a\013ect)h(the)f
 (b)s(eha)m(vior)g(of)g(other)g(compatibilit)m(y)h(lev)m(els)150
-5340 y(up)23 b(to)h(and)f(including)h(the)g(curren)m(t)f(compatibilit)m
+1142 y(up)23 b(to)h(and)f(including)h(the)g(curren)m(t)f(compatibilit)m
 (y)j(lev)m(el.)41 b(The)23 b(idea)h(is)g(that)g(eac)m(h)h(compatibilit)
-m(y)h(lev)m(el)p eop end
-%%Page: 115 121
-TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2439 b(115)150 299 y(con)m(trols)35
-b(b)s(eha)m(vior)f(that)g(c)m(hanged)g(in)f(that)h(v)m(ersion)g(of)g
-(Bash,)h(but)e(that)h(b)s(eha)m(vior)g(ma)m(y)g(ha)m(v)m(e)h(b)s(een)
-150 408 y(presen)m(t)f(in)g(earlier)g(v)m(ersions.)52
-b(F)-8 b(or)35 b(instance,)g(the)f(c)m(hange)h(to)g(use)f(lo)s
-(cale-based)h(comparisons)f(with)150 518 y(the)e Ft([[)f
-Fu(command)g(came)h(in)g(bash-4.1,)h(and)d(earlier)j(v)m(ersions)f
-(used)f(ASCI)s(I-based)f(comparisons,)i(so)150 628 y(enabling)27
-b Ft(compat32)e Fu(will)i(enable)g(ASCI)s(I-based)e(comparisons)i(as)g
-(w)m(ell.)41 b(That)26 b(gran)m(ularit)m(y)i(ma)m(y)g(not)150
-737 y(b)s(e)i(su\016cien)m(t)i(for)f(all)g(uses,)g(and)g(as)g(a)g
-(result)g(users)f(should)g(emplo)m(y)i(compatibilit)m(y)h(lev)m(els)g
-(carefully)-8 b(.)150 847 y(Read)31 b(the)f(do)s(cumen)m(tation)h(for)g
-(a)f(particular)h(feature)g(to)g(\014nd)e(out)h(the)h(curren)m(t)f(b)s
-(eha)m(vior.)275 990 y(Bash-4.3)44 b(in)m(tro)s(duced)e(a)h(new)f
-(shell)h(v)-5 b(ariable:)65 b Ft(BASH_COMPAT)p Fu(.)75
-b(The)42 b(v)-5 b(alue)43 b(assigned)g(to)g(this)150
-1100 y(v)-5 b(ariable)32 b(\(a)g(decimal)h(v)m(ersion)e(n)m(um)m(b)s
+m(y)h(lev)m(el)150 1251 y(con)m(trols)35 b(b)s(eha)m(vior)f(that)g(c)m
+(hanged)g(in)f(that)h(v)m(ersion)g(of)g(Bash,)h(but)e(that)h(b)s(eha)m
+(vior)g(ma)m(y)g(ha)m(v)m(e)h(b)s(een)150 1361 y(presen)m(t)f(in)g
+(earlier)g(v)m(ersions.)52 b(F)-8 b(or)35 b(instance,)g(the)f(c)m
+(hange)h(to)g(use)f(lo)s(cale-based)h(comparisons)f(with)150
+1471 y(the)e Ft([[)f Fu(command)g(came)h(in)g(bash-4.1,)h(and)d
+(earlier)j(v)m(ersions)f(used)f(ASCI)s(I-based)f(comparisons,)i(so)150
+1580 y(enabling)27 b Ft(compat32)e Fu(will)i(enable)g(ASCI)s(I-based)e
+(comparisons)i(as)g(w)m(ell.)41 b(That)26 b(gran)m(ularit)m(y)i(ma)m(y)
+g(not)150 1690 y(b)s(e)i(su\016cien)m(t)i(for)f(all)g(uses,)g(and)g(as)
+g(a)g(result)g(users)f(should)g(emplo)m(y)i(compatibilit)m(y)h(lev)m
+(els)g(carefully)-8 b(.)150 1799 y(Read)31 b(the)f(do)s(cumen)m(tation)
+h(for)g(a)f(particular)h(feature)g(to)g(\014nd)e(out)h(the)h(curren)m
+(t)f(b)s(eha)m(vior.)275 1947 y(Bash-4.3)44 b(in)m(tro)s(duced)e(a)h
+(new)f(shell)h(v)-5 b(ariable:)65 b Ft(BASH_COMPAT)p
+Fu(.)75 b(The)42 b(v)-5 b(alue)43 b(assigned)g(to)g(this)150
+2056 y(v)-5 b(ariable)32 b(\(a)g(decimal)h(v)m(ersion)e(n)m(um)m(b)s
 (er)f(lik)m(e)j(4.2,)g(or)e(an)h(in)m(teger)g(corresp)s(onding)f(to)h
-(the)f Ft(compat)p Fr(NN)150 1209 y Fu(option,)g(lik)m(e)h(42\))f
+(the)f Ft(compat)p Fr(NN)150 2166 y Fu(option,)g(lik)m(e)h(42\))f
 (determines)g(the)f(compatibilit)m(y)j(lev)m(el.)275
-1352 y(Starting)e(with)g(bash-4.4,)h(Bash)f(has)g(b)s(egun)f
+2313 y(Starting)e(with)g(bash-4.4,)h(Bash)f(has)g(b)s(egun)f
 (deprecating)h(older)h(compatibilit)m(y)h(lev)m(els.)44
-b(Ev)m(en)m(tu-)150 1462 y(ally)-8 b(,)32 b(the)e(options)h(will)g(b)s
+b(Ev)m(en)m(tu-)150 2423 y(ally)-8 b(,)32 b(the)e(options)h(will)g(b)s
 (e)f(remo)m(v)m(ed)h(in)f(fa)m(v)m(or)i(of)e Ft(BASH_COMPAT)p
-Fu(.)275 1605 y(Bash-5.0)36 b(is)f(the)g(\014nal)f(v)m(ersion)i(for)e
-(whic)m(h)h(there)g(will)g(b)s(e)f(an)h(individual)f(shopt)h(option)g
-(for)g(the)150 1715 y(previous)30 b(v)m(ersion.)41 b(Users)30
-b(should)g(use)g Ft(BASH_COMPAT)d Fu(on)j(bash-5.0)h(and)f(later)i(v)m
-(ersions.)275 1858 y(The)24 b(follo)m(wing)i(table)g(describ)s(es)e
-(the)i(b)s(eha)m(vior)f(c)m(hanges)h(con)m(trolled)g(b)m(y)f(eac)m(h)h
-(compatibilit)m(y)h(lev)m(el)150 1967 y(setting.)43 b(The)30
-b Ft(compat)p Fr(NN)39 b Fu(tag)32 b(is)f(used)f(as)h(shorthand)e(for)h
-(setting)i(the)f(compatibilit)m(y)i(lev)m(el)f(to)g Fr(NN)150
-2077 y Fu(using)37 b(one)h(of)g(the)g(follo)m(wing)h(mec)m(hanisms.)63
-b(F)-8 b(or)39 b(v)m(ersions)f(prior)f(to)h(bash-5.0,)j(the)d
-(compatibilit)m(y)150 2187 y(lev)m(el)d(ma)m(y)f(b)s(e)e(set)i(using)e
-(the)i(corresp)s(onding)e Ft(compat)p Fr(NN)41 b Fu(shopt)33
-b(option.)50 b(F)-8 b(or)34 b(bash-4.3)f(and)g(later)150
-2296 y(v)m(ersions,)40 b(the)e Ft(BASH_COMPAT)d Fu(v)-5
+Fu(.)275 2571 y(Bash-5.0)g(w)m(as)g(the)g(\014nal)f(v)m(ersion)g(for)g
+(whic)m(h)g(there)h(will)f(b)s(e)g(an)g(individual)g(shopt)g(option)h
+(for)f(the)150 2680 y(previous)h(v)m(ersion.)41 b(Users)30
+b(should)g(con)m(trol)h(the)g(compatibilit)m(y)i(lev)m(el)f(with)e
+Ft(BASH_COMPAT)p Fu(.)275 2828 y(The)24 b(follo)m(wing)i(table)g
+(describ)s(es)e(the)i(b)s(eha)m(vior)f(c)m(hanges)h(con)m(trolled)g(b)m
+(y)f(eac)m(h)h(compatibilit)m(y)h(lev)m(el)150 2937 y(setting.)43
+b(The)30 b Ft(compat)p Fr(NN)39 b Fu(tag)32 b(is)f(used)f(as)h
+(shorthand)e(for)h(setting)i(the)f(compatibilit)m(y)i(lev)m(el)f(to)g
+Fr(NN)150 3047 y Fu(using)37 b(one)h(of)g(the)g(follo)m(wing)h(mec)m
+(hanisms.)63 b(F)-8 b(or)39 b(v)m(ersions)f(prior)f(to)h(bash-5.0,)j
+(the)d(compatibilit)m(y)150 3156 y(lev)m(el)d(ma)m(y)f(b)s(e)e(set)i
+(using)e(the)i(corresp)s(onding)e Ft(compat)p Fr(NN)41
+b Fu(shopt)33 b(option.)50 b(F)-8 b(or)34 b(bash-4.3)f(and)g(later)150
+3266 y(v)m(ersions,)40 b(the)e Ft(BASH_COMPAT)d Fu(v)-5
 b(ariable)39 b(is)e(preferred,)i(and)e(it)i(is)f(required)f(for)g
-(bash-5.1)i(and)e(later)150 2406 y(v)m(ersions.)150 2578
-y Ft(compat31)705 2717 y Fq(\017)60 b Fu(quoting)34 b(the)g(rhs)e(of)i
+(bash-5.1)i(and)e(later)150 3376 y(v)m(ersions.)150 3554
+y Ft(compat31)705 3695 y Fq(\017)60 b Fu(quoting)34 b(the)g(rhs)e(of)i
 (the)f Ft([[)g Fu(command's)h(regexp)f(matc)m(hing)i(op)s(erator)f(\(=)
-p Ft(~)p Fu(\))f(has)810 2827 y(no)d(sp)s(ecial)h(e\013ect)150
-2995 y Ft(compat40)705 3133 y Fq(\017)60 b Fu(the)35
+p Ft(~)p Fu(\))f(has)810 3805 y(no)d(sp)s(ecial)h(e\013ect)150
+3977 y Ft(compat40)705 4118 y Fq(\017)60 b Fu(the)35
 b(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p Fu(')g(op)s(erators)h(to)g(the)g
 Ft([[)f Fu(command)h(do)f(not)h(consider)f(the)h(curren)m(t)810
-3243 y(lo)s(cale)41 b(when)d(comparing)i(strings;)k(they)c(use)f(ASCI)s
-(I)f(ordering.)67 b(Bash)40 b(v)m(ersions)810 3353 y(prior)f(to)i
+4228 y(lo)s(cale)41 b(when)d(comparing)i(strings;)k(they)c(use)f(ASCI)s
+(I)f(ordering.)67 b(Bash)40 b(v)m(ersions)810 4338 y(prior)f(to)i
 (bash-4.1)f(use)g(ASCI)s(I)e(collation)k(and)d(strcmp\(3\);)45
-b(bash-4.1)c(and)e(later)810 3462 y(use)30 b(the)h(curren)m(t)f(lo)s
+b(bash-4.1)c(and)e(later)810 4447 y(use)30 b(the)h(curren)m(t)f(lo)s
 (cale's)i(collation)h(sequence)d(and)g(strcoll\(3\).)150
-3630 y Ft(compat41)705 3769 y Fq(\017)60 b Fu(in)29 b(p)s(osix)f(mo)s
+4620 y Ft(compat41)705 4761 y Fq(\017)60 b Fu(in)29 b(p)s(osix)f(mo)s
 (de,)i Ft(time)e Fu(ma)m(y)h(b)s(e)g(follo)m(w)m(ed)i(b)m(y)e(options)g
-(and)g(still)h(b)s(e)e(recognized)j(as)810 3879 y(a)g(reserv)m(ed)f(w)m
+(and)g(still)h(b)s(e)e(recognized)j(as)810 4870 y(a)g(reserv)m(ed)f(w)m
 (ord)g(\(this)h(is)f Fm(posix)g Fu(in)m(terpretation)i(267\))705
-4018 y Fq(\017)60 b Fu(in)37 b(p)s(osix)f(mo)s(de,)i(the)g(parser)e
+5011 y Fq(\017)60 b Fu(in)37 b(p)s(osix)f(mo)s(de,)i(the)g(parser)e
 (requires)g(that)i(an)f(ev)m(en)g(n)m(um)m(b)s(er)f(of)h(single)g
-(quotes)810 4127 y(o)s(ccur)28 b(in)g(the)h Fr(w)m(ord)i
+(quotes)810 5121 y(o)s(ccur)28 b(in)g(the)h Fr(w)m(ord)i
 Fu(p)s(ortion)d(of)h(a)g(double-quoted)f($)p Fi({)6 b
 Fu(.)23 b(.)f(.)11 b Fi(})29 b Fu(parameter)g(expansion)810
-4237 y(and)34 b(treats)h(them)f(sp)s(ecially)-8 b(,)37
+5230 y(and)34 b(treats)h(them)f(sp)s(ecially)-8 b(,)37
 b(so)e(that)g(c)m(haracters)g(within)f(the)h(single)g(quotes)g(are)810
-4346 y(considered)30 b(quoted)h(\(this)f(is)h Fm(posix)e
-Fu(in)m(terpretation)j(221\))150 4514 y Ft(compat42)705
-4653 y Fq(\017)60 b Fu(the)29 b(replacemen)m(t)i(string)e(in)g
+5340 y(considered)30 b(quoted)h(\(this)f(is)h Fm(posix)e
+Fu(in)m(terpretation)j(221\))p eop end
+%%Page: 116 122
+TeXDict begin 116 121 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(116)150 299 y Ft(compat42)705
+434 y Fq(\017)60 b Fu(the)29 b(replacemen)m(t)i(string)e(in)g
 (double-quoted)h(pattern)f(substitution)g(do)s(es)g(not)h(un-)810
-4763 y(dergo)h(quote)g(remo)m(v)-5 b(al,)32 b(as)e(it)h(do)s(es)f(in)g
-(v)m(ersions)h(after)g(bash-4.2)705 4902 y Fq(\017)60
+544 y(dergo)h(quote)g(remo)m(v)-5 b(al,)32 b(as)e(it)h(do)s(es)f(in)g
+(v)m(ersions)h(after)g(bash-4.2)705 679 y Fq(\017)60
 b Fu(in)39 b(p)s(osix)g(mo)s(de,)j(single)e(quotes)g(are)g(considered)f
-(sp)s(ecial)h(when)f(expanding)g(the)810 5011 y Fr(w)m(ord)d
+(sp)s(ecial)h(when)f(expanding)g(the)810 789 y Fr(w)m(ord)d
 Fu(p)s(ortion)c(of)g(a)h(double-quoted)g($)p Fi({)6 b
 Fu(.)22 b(.)h(.)11 b Fi(})33 b Fu(parameter)g(expansion)f(and)g(can)h
-(b)s(e)810 5121 y(used)40 b(to)i(quote)g(a)f(closing)h(brace)f(or)g
+(b)s(e)810 898 y(used)40 b(to)i(quote)g(a)f(closing)h(brace)f(or)g
 (other)h(sp)s(ecial)f(c)m(haracter)i(\(this)e(is)g(part)g(of)810
-5230 y Fm(posix)36 b Fu(in)m(terpretation)h(221\);)42
+1008 y Fm(posix)36 b Fu(in)m(terpretation)h(221\);)42
 b(in)36 b(later)h(v)m(ersions,)h(single)f(quotes)g(are)g(not)f(sp)s
-(ecial)810 5340 y(within)30 b(double-quoted)g(w)m(ord)g(expansions)p
-eop end
-%%Page: 116 122
-TeXDict begin 116 121 bop 150 -116 a Fu(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2439 b(116)150 299 y Ft(compat43)705
-434 y Fq(\017)60 b Fu(the)31 b(shell)g(do)s(es)g(not)g(prin)m(t)f(a)h
-(w)m(arning)g(message)h(if)f(an)g(attempt)h(is)f(made)f(to)i(use)f(a)
-810 544 y(quoted)36 b(comp)s(ound)e(assignmen)m(t)i(as)g(an)g(argumen)m
-(t)g(to)g(declare)h(\(e.g.,)i(declare)d(-a)810 653 y(fo)s(o='\(1)31
-b(2\)'\).)42 b(Later)31 b(v)m(ersions)g(w)m(arn)f(that)h(this)f(usage)h
-(is)g(deprecated)705 789 y Fq(\017)60 b Fu(w)m(ord)21
-b(expansion)g(errors)g(are)h(considered)f(non-fatal)h(errors)f(that)h
-(cause)g(the)f(curren)m(t)810 898 y(command)k(to)g(fail,)i(ev)m(en)e
-(in)g(p)s(osix)f(mo)s(de)h(\(the)g(default)g(b)s(eha)m(vior)g(is)g(to)g
-(mak)m(e)h(them)810 1008 y(fatal)32 b(errors)d(that)i(cause)g(the)g
-(shell)f(to)i(exit\))705 1143 y Fq(\017)60 b Fu(when)37
-b(executing)i(a)g(shell)f(function,)i(the)f(lo)s(op)f(state)h
-(\(while/un)m(til/etc.\))68 b(is)38 b(not)810 1253 y(reset,)c(so)g
-Ft(break)d Fu(or)i Ft(continue)e Fu(in)h(that)i(function)f(will)g
-(break)g(or)g(con)m(tin)m(ue)h(lo)s(ops)810 1363 y(in)h(the)g(calling)h
-(con)m(text.)57 b(Bash-4.4)37 b(and)d(later)i(reset)g(the)f(lo)s(op)g
-(state)i(to)e(prev)m(en)m(t)810 1472 y(this)150 1633
-y Ft(compat44)705 1769 y Fq(\017)60 b Fu(the)41 b(shell)g(sets)g(up)e
-(the)i(v)-5 b(alues)41 b(used)f(b)m(y)h Ft(BASH_ARGV)d
-Fu(and)i Ft(BASH_ARGC)e Fu(so)j(they)810 1878 y(can)26
-b(expand)f(to)h(the)g(shell's)g(p)s(ositional)g(parameters)g(ev)m(en)h
-(if)e(extended)h(debugging)810 1988 y(mo)s(de)k(is)g(not)h(enabled)705
-2123 y Fq(\017)60 b Fu(a)40 b(subshell)f(inherits)g(lo)s(ops)h(from)g
-(its)g(paren)m(t)g(con)m(text,)k(so)c Ft(break)e Fu(or)i
-Ft(continue)810 2233 y Fu(will)35 b(cause)g(the)f(subshell)f(to)i
-(exit.)54 b(Bash-5.0)36 b(and)d(later)j(reset)f(the)f(lo)s(op)h(state)g
-(to)810 2342 y(prev)m(en)m(t)c(the)g(exit)705 2478 y
-Fq(\017)60 b Fu(v)-5 b(ariable)28 b(assignmen)m(ts)h(preceding)f
-(builtins)f(lik)m(e)i Ft(export)d Fu(and)h Ft(readonly)e
-Fu(that)j(set)810 2587 y(attributes)37 b(con)m(tin)m(ue)h(to)g
-(a\013ect)g(v)-5 b(ariables)37 b(with)g(the)f(same)h(name)g(in)g(the)f
-(calling)810 2697 y(en)m(vironmen)m(t)31 b(ev)m(en)g(if)f(the)h(shell)g
-(is)f(not)h(in)f(p)s(osix)f(mo)s(de)150 2858 y Ft(compat50)f(\(set)h
-(using)g(BASH_COMPAT\))705 2968 y Fq(\017)60 b Fu(Bash-5.1)29
+(ecial)810 1118 y(within)30 b(double-quoted)g(w)m(ord)g(expansions)150
+1279 y Ft(compat43)705 1414 y Fq(\017)60 b Fu(the)31
+b(shell)g(do)s(es)g(not)g(prin)m(t)f(a)h(w)m(arning)g(message)h(if)f
+(an)g(attempt)h(is)f(made)f(to)i(use)f(a)810 1524 y(quoted)36
+b(comp)s(ound)e(assignmen)m(t)i(as)g(an)g(argumen)m(t)g(to)g(declare)h
+(\(e.g.,)i(declare)d(-a)810 1633 y(fo)s(o='\(1)31 b(2\)'\).)42
+b(Later)31 b(v)m(ersions)g(w)m(arn)f(that)h(this)f(usage)h(is)g
+(deprecated)705 1769 y Fq(\017)60 b Fu(w)m(ord)21 b(expansion)g(errors)
+g(are)h(considered)f(non-fatal)h(errors)f(that)h(cause)g(the)f(curren)m
+(t)810 1878 y(command)k(to)g(fail,)i(ev)m(en)e(in)g(p)s(osix)f(mo)s(de)
+h(\(the)g(default)g(b)s(eha)m(vior)g(is)g(to)g(mak)m(e)h(them)810
+1988 y(fatal)32 b(errors)d(that)i(cause)g(the)g(shell)f(to)i(exit\))705
+2123 y Fq(\017)60 b Fu(when)37 b(executing)i(a)g(shell)f(function,)i
+(the)f(lo)s(op)f(state)h(\(while/un)m(til/etc.\))68 b(is)38
+b(not)810 2233 y(reset,)c(so)g Ft(break)d Fu(or)i Ft(continue)e
+Fu(in)h(that)i(function)f(will)g(break)g(or)g(con)m(tin)m(ue)h(lo)s
+(ops)810 2342 y(in)h(the)g(calling)h(con)m(text.)57 b(Bash-4.4)37
+b(and)d(later)i(reset)g(the)f(lo)s(op)g(state)i(to)e(prev)m(en)m(t)810
+2452 y(this)150 2613 y Ft(compat44)705 2749 y Fq(\017)60
+b Fu(the)41 b(shell)g(sets)g(up)e(the)i(v)-5 b(alues)41
+b(used)f(b)m(y)h Ft(BASH_ARGV)d Fu(and)i Ft(BASH_ARGC)e
+Fu(so)j(they)810 2858 y(can)26 b(expand)f(to)h(the)g(shell's)g(p)s
+(ositional)g(parameters)g(ev)m(en)h(if)e(extended)h(debugging)810
+2968 y(mo)s(de)k(is)g(not)h(enabled)705 3103 y Fq(\017)60
+b Fu(a)40 b(subshell)f(inherits)g(lo)s(ops)h(from)g(its)g(paren)m(t)g
+(con)m(text,)k(so)c Ft(break)e Fu(or)i Ft(continue)810
+3213 y Fu(will)35 b(cause)g(the)f(subshell)f(to)i(exit.)54
+b(Bash-5.0)36 b(and)d(later)j(reset)f(the)f(lo)s(op)h(state)g(to)810
+3322 y(prev)m(en)m(t)c(the)g(exit)705 3458 y Fq(\017)60
+b Fu(v)-5 b(ariable)28 b(assignmen)m(ts)h(preceding)f(builtins)f(lik)m
+(e)i Ft(export)d Fu(and)h Ft(readonly)e Fu(that)j(set)810
+3567 y(attributes)37 b(con)m(tin)m(ue)h(to)g(a\013ect)g(v)-5
+b(ariables)37 b(with)g(the)f(same)h(name)g(in)g(the)f(calling)810
+3677 y(en)m(vironmen)m(t)31 b(ev)m(en)g(if)f(the)h(shell)g(is)f(not)h
+(in)f(p)s(osix)f(mo)s(de)150 3838 y Ft(compat50)f(\(set)h(using)g
+(BASH_COMPAT\))705 3948 y Fq(\017)60 b Fu(Bash-5.1)29
 b(c)m(hanged)g(the)f(w)m(a)m(y)g Ft($RANDOM)e Fu(is)i(generated)h(to)f
-(in)m(tro)s(duce)g(sligh)m(tly)h(more)810 3077 y(randomness.)39
+(in)m(tro)s(duce)g(sligh)m(tly)h(more)810 4057 y(randomness.)39
 b(If)30 b(the)f(shell)h(compatibilit)m(y)i(lev)m(el)f(is)f(set)g(to)h
-(50)f(or)g(lo)m(w)m(er,)h(it)f(rev)m(erts)810 3187 y(to)e(the)g(metho)s
+(50)f(or)g(lo)m(w)m(er,)h(it)f(rev)m(erts)810 4167 y(to)e(the)g(metho)s
 (d)f(from)g(bash-5.0)h(and)f(previous)g(v)m(ersions,)i(so)e(seeding)h
-(the)g(random)810 3296 y(n)m(um)m(b)s(er)36 b(generator)j(b)m(y)e
+(the)g(random)810 4276 y(n)m(um)m(b)s(er)36 b(generator)j(b)m(y)e
 (assigning)h(a)g(v)-5 b(alue)38 b(to)g Ft(RANDOM)e Fu(will)i(pro)s
-(duce)e(the)i(same)810 3406 y(sequence)31 b(as)f(in)g(bash-5.0)705
-3541 y Fq(\017)60 b Fu(If)22 b(the)g(command)g(hash)f(table)i(is)f
+(duce)e(the)i(same)810 4386 y(sequence)31 b(as)f(in)g(bash-5.0)705
+4521 y Fq(\017)60 b Fu(If)22 b(the)g(command)g(hash)f(table)i(is)f
 (empt)m(y)-8 b(,)25 b(Bash)d(v)m(ersions)g(prior)g(to)h(bash-5.1)f
-(prin)m(ted)810 3651 y(an)29 b(informational)i(message)g(to)f(that)g
+(prin)m(ted)810 4631 y(an)29 b(informational)i(message)g(to)f(that)g
 (e\013ect,)h(ev)m(en)g(when)d(pro)s(ducing)g(output)h(that)810
-3761 y(can)40 b(b)s(e)g(reused)f(as)h(input.)69 b(Bash-5.1)42
+4740 y(can)40 b(b)s(e)g(reused)f(as)h(input.)69 b(Bash-5.1)42
 b(suppresses)c(that)j(message)g(when)e(the)i Ft(-l)810
-3870 y Fu(option)31 b(is)f(supplied.)150 4031 y Ft(compat51)e(\(set)h
-(using)g(BASH_COMPAT\))705 4141 y Fq(\017)60 b Fu(The)38
+4850 y Fu(option)31 b(is)f(supplied.)150 5011 y Ft(compat51)e(\(set)h
+(using)g(BASH_COMPAT\))705 5121 y Fq(\017)60 b Fu(The)38
 b Ft(unset)g Fu(builtin)g(will)h(unset)f(the)h(arra)m(y)g
 Ft(a)g Fu(giv)m(en)g(an)g(argumen)m(t)g(lik)m(e)h(`)p
-Ft(a[@])p Fu('.)810 4251 y(Bash-5.2)32 b(will)f(unset)f(an)g(elemen)m
+Ft(a[@])p Fu('.)810 5230 y(Bash-5.2)32 b(will)f(unset)f(an)g(elemen)m
 (t)i(with)e(k)m(ey)i(`)p Ft(@)p Fu(')e(\(asso)s(ciativ)m(e)k(arra)m
-(ys\))d(or)f(remo)m(v)m(e)810 4360 y(all)h(the)g(elemen)m(ts)h(without)
-e(unsetting)g(the)h(arra)m(y)g(\(indexed)f(arra)m(ys\))705
-4495 y Fq(\017)60 b Fu(arithmetic)36 b(commands)e(\()h(\(\(...\)\))55
-b(\))f(and)34 b(the)g(expressions)h(in)f(an)g(arithmetic)i(for)810
-4605 y(statemen)m(t)c(can)f(b)s(e)f(expanded)f(more)i(than)f(once)705
-4740 y Fq(\017)60 b Fu(expressions)22 b(used)g(as)h(argumen)m(ts)g(to)h
-(arithmetic)f(op)s(erators)g(in)g(the)g Ft([[)f Fu(conditional)810
-4850 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once)705
-4985 y Fq(\017)60 b Fu(the)35 b(expressions)g(in)g(substring)e
-(parameter)j(brace)f(expansion)g(can)g(b)s(e)g(expanded)810
-5095 y(more)c(than)f(once)705 5230 y Fq(\017)60 b Fu(the)39
-b(expressions)f(in)g(the)h($\(\()h(...)66 b(\)\))f(w)m(ord)39
-b(expansion)f(can)h(b)s(e)f(expanded)g(more)810 5340
-y(than)30 b(once)p eop end
+(ys\))d(or)f(remo)m(v)m(e)810 5340 y(all)h(the)g(elemen)m(ts)h(without)
+e(unsetting)g(the)h(arra)m(y)g(\(indexed)f(arra)m(ys\))p
+eop end
 %%Page: 117 123
 TeXDict begin 117 122 bop 150 -116 a Fu(Chapter)30 b(6:)41
 b(Bash)30 b(F)-8 b(eatures)2439 b(117)705 299 y Fq(\017)60
-b Fu(arithmetic)36 b(expressions)f(used)f(as)h(indexed)f(arra)m(y)i
-(subscripts)d(can)i(b)s(e)g(expanded)810 408 y(more)c(than)f(once)705
-543 y Fq(\017)60 b Ft(test)29 b(-v)p Fu(,)35 b(when)f(giv)m(en)h(an)g
+b Fu(arithmetic)36 b(commands)e(\()h(\(\(...\)\))55 b(\))f(and)34
+b(the)g(expressions)h(in)f(an)g(arithmetic)i(for)810
+408 y(statemen)m(t)c(can)f(b)s(e)f(expanded)f(more)i(than)f(once)705
+543 y Fq(\017)60 b Fu(expressions)22 b(used)g(as)h(argumen)m(ts)g(to)h
+(arithmetic)f(op)s(erators)g(in)g(the)g Ft([[)f Fu(conditional)810
+653 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once)705
+787 y Fq(\017)60 b Fu(the)35 b(expressions)g(in)g(substring)e
+(parameter)j(brace)f(expansion)g(can)g(b)s(e)g(expanded)810
+897 y(more)c(than)f(once)705 1031 y Fq(\017)60 b Fu(the)39
+b(expressions)f(in)g(the)h($\(\()h(...)66 b(\)\))f(w)m(ord)39
+b(expansion)f(can)h(b)s(e)f(expanded)g(more)810 1141
+y(than)30 b(once)705 1275 y Fq(\017)60 b Fu(arithmetic)36
+b(expressions)f(used)f(as)h(indexed)f(arra)m(y)i(subscripts)d(can)i(b)s
+(e)g(expanded)810 1385 y(more)c(than)f(once)705 1519
+y Fq(\017)60 b Ft(test)29 b(-v)p Fu(,)35 b(when)f(giv)m(en)h(an)g
 (argumen)m(t)g(of)f(`)p Ft(A[@])p Fu(',)h(where)f Fr(A)h
-Fu(is)f(an)h(existing)g(asso-)810 653 y(ciativ)m(e)h(arra)m(y)-8
+Fu(is)f(an)h(existing)g(asso-)810 1629 y(ciativ)m(e)h(arra)m(y)-8
 b(,)37 b(will)d(return)f(true)g(if)h(the)h(arra)m(y)f(has)g(an)m(y)g
-(set)g(elemen)m(ts.)53 b(Bash-5.2)810 762 y(will)31 b(lo)s(ok)g(for)f
-(and)g(rep)s(ort)f(on)i(a)f(k)m(ey)i(named)d(`)p Ft(@)p
-Fu(')705 897 y Fq(\017)60 b Fu(the)40 b($)p Fi({)p Fr(parameter)7
-b Fu([:]=)p Fr(v)-5 b(alue)5 b Fi(})42 b Fu(w)m(ord)e(expansion)f(will)
-i(return)d Fr(v)-5 b(alue)p Fu(,)43 b(b)s(efore)d(an)m(y)810
-1006 y(v)-5 b(ariable-sp)s(eci\014c)34 b(transformations)f(ha)m(v)m(e)h
-(b)s(een)e(p)s(erformed)f(\(e.g.,)36 b(con)m(v)m(erting)e(to)810
-1116 y(lo)m(w)m(ercase\).)43 b(Bash-5.2)32 b(will)f(return)e(the)i
-(\014nal)f(v)-5 b(alue)31 b(assigned)f(to)i(the)e(v)-5
-b(ariable.)705 1250 y Fq(\017)60 b Fu(P)m(arsing)37 b(command)f
-(substitutions)g(will)g(b)s(eha)m(v)m(e)h(as)g(if)f(extended)g(glob)h
-(\(see)g(Sec-)810 1360 y(tion)30 b(4.3.2)h([The)f(Shopt)f(Builtin],)h
-(page)h(73\))f(is)g(enabled,)g(so)g(that)g(parsing)f(a)h(com-)810
-1469 y(mand)38 b(substitution)g(con)m(taining)i(an)f(extglob)h(pattern)
-f(\(sa)m(y)-8 b(,)42 b(as)d(part)g(of)g(a)g(shell)810
-1579 y(function\))30 b(will)h(not)g(fail.)41 b(This)30
-b(assumes)g(the)h(in)m(ten)m(t)g(is)g(to)g(enable)g(extglob)g(b)s
-(efore)810 1689 y(the)i(command)f(is)g(executed)h(and)f(w)m(ord)g
-(expansions)g(are)h(p)s(erformed.)45 b(It)33 b(will)f(fail)810
-1798 y(at)42 b(w)m(ord)f(expansion)h(time)g(if)f(extglob)i(hasn't)e(b)s
-(een)g(enabled)h(b)m(y)f(the)h(time)g(the)810 1908 y(command)30
-b(is)h(executed.)p eop end
+(set)g(elemen)m(ts.)53 b(Bash-5.2)810 1738 y(will)31
+b(lo)s(ok)g(for)f(and)g(rep)s(ort)f(on)i(a)f(k)m(ey)i(named)d(`)p
+Ft(@)p Fu(')705 1873 y Fq(\017)60 b Fu(the)40 b($)p Fi({)p
+Fr(parameter)7 b Fu([:]=)p Fr(v)-5 b(alue)5 b Fi(})42
+b Fu(w)m(ord)e(expansion)f(will)i(return)d Fr(v)-5 b(alue)p
+Fu(,)43 b(b)s(efore)d(an)m(y)810 1983 y(v)-5 b(ariable-sp)s(eci\014c)34
+b(transformations)f(ha)m(v)m(e)h(b)s(een)e(p)s(erformed)f(\(e.g.,)36
+b(con)m(v)m(erting)e(to)810 2092 y(lo)m(w)m(ercase\).)43
+b(Bash-5.2)32 b(will)f(return)e(the)i(\014nal)f(v)-5
+b(alue)31 b(assigned)f(to)i(the)e(v)-5 b(ariable.)705
+2227 y Fq(\017)60 b Fu(P)m(arsing)40 b(command)f(substitutions)f(will)i
+(b)s(eha)m(v)m(e)g(as)f(if)g(extended)g(globbing)h(\(see)810
+2336 y(Section)e(4.3.2)g([The)f(Shopt)f(Builtin],)j(page)f(73\))g(is)f
+(enabled,)i(so)e(that)g(parsing)g(a)810 2446 y(command)24
+b(substitution)g(con)m(taining)h(an)f(extglob)i(pattern)e(\(sa)m(y)-8
+b(,)27 b(as)d(part)g(of)g(a)h(shell)810 2555 y(function\))30
+b(will)h(not)g(fail.)41 b(This)30 b(assumes)g(the)h(in)m(ten)m(t)g(is)g
+(to)g(enable)g(extglob)g(b)s(efore)810 2665 y(the)i(command)f(is)g
+(executed)h(and)f(w)m(ord)g(expansions)g(are)h(p)s(erformed.)45
+b(It)33 b(will)f(fail)810 2775 y(at)42 b(w)m(ord)f(expansion)h(time)g
+(if)f(extglob)i(hasn't)e(b)s(een)g(enabled)h(b)m(y)f(the)h(time)g(the)
+810 2884 y(command)30 b(is)h(executed.)p eop end
 %%Page: 118 124
 TeXDict begin 118 123 bop 3614 -116 a Fu(118)150 299
 y Fp(7)80 b(Job)54 b(Con)l(trol)150 518 y Fu(This)25
@@ -16817,13 +16876,13 @@ b(are)g(imm)m(une)g(to)g(k)m(eyb)s(oard-generated)h(signals.)40
 b(Only)23 b(foreground)g(pro)s(cesses)h(are)g(allo)m(w)m(ed)150
 2973 y(to)g(read)e(from)h(or,)h(if)f(the)g(user)f(so)i(sp)s(eci\014es)e
 (with)h Ft(stty)29 b(tostop)p Fu(,)23 b(write)g(to)g(the)h(terminal.)38
-b(Bac)m(kground)150 3082 y(pro)s(cesses)27 b(whic)m(h)g(attempt)h(to)f
-(read)g(from)g(\(write)g(to)h(when)e Ft(stty)j(tostop)d
-Fu(is)h(in)f(e\013ect\))j(the)e(terminal)150 3192 y(are)32
-b(sen)m(t)g(a)g Ft(SIGTTIN)e Fu(\()p Ft(SIGTTOU)p Fu(\))g(signal)i(b)m
-(y)g(the)g(k)m(ernel's)g(terminal)g(driv)m(er,)g(whic)m(h,)g(unless)f
-(caugh)m(t,)150 3302 y(susp)s(ends)d(the)i(pro)s(cess.)275
-3433 y(If)k(the)i(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)g(is)h
+b(Bac)m(kground)150 3082 y(pro)s(cesses)32 b(whic)m(h)f(attempt)i(to)g
+(read)f(from)f(\(write)h(to)h(when)e Ft(tostop)f Fu(is)i(in)f
+(e\013ect\))j(the)e(terminal)h(are)150 3192 y(sen)m(t)44
+b(a)h Ft(SIGTTIN)c Fu(\()p Ft(SIGTTOU)p Fu(\))i(signal)i(b)m(y)e(the)h
+(k)m(ernel's)h(terminal)f(driv)m(er,)j(whic)m(h,)g(unless)d(caugh)m(t,)
+150 3302 y(susp)s(ends)28 b(the)i(pro)s(cess.)275 3433
+y(If)k(the)i(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)g(is)h
 (running)d(supp)s(orts)h(job)h(con)m(trol,)j(Bash)e(con)m(tains)150
 3543 y(facilities)30 b(to)f(use)f(it.)40 b(T)m(yping)28
 b(the)g Fr(susp)s(end)h Fu(c)m(haracter)h(\(t)m(ypically)g(`)p
@@ -17376,54 +17435,54 @@ y(terminate)i(the)g(searc)m(h,)g(mak)m(e)h(the)e(last)h(line)g(found)e
 (the)i(curren)m(t)f(line,)h(and)f(b)s(egin)g(editing.)275
 2094 y(Readline)35 b(remem)m(b)s(ers)f(the)h(last)h(incremen)m(tal)g
 (searc)m(h)f(string.)54 b(If)34 b(t)m(w)m(o)j Fj(C-r)p
-Fu(s)c(are)i(t)m(yp)s(ed)g(without)150 2204 y(an)m(y)i(in)m(terv)m
-(ening)g(c)m(haracters)h(de\014ning)e(a)h(new)f(searc)m(h)h(string,)h
-(an)m(y)f(remem)m(b)s(ered)e(searc)m(h)i(string)g(is)150
-2313 y(used.)275 2444 y(Non-incremen)m(tal)48 b(searc)m(hes)g(read)e
-(the)h(en)m(tire)h(searc)m(h)f(string)g(b)s(efore)f(starting)h(to)h
-(searc)m(h)f(for)150 2553 y(matc)m(hing)d(history)e(lines.)78
-b(The)42 b(searc)m(h)h(string)g(ma)m(y)g(b)s(e)f(t)m(yp)s(ed)g(b)m(y)g
-(the)h(user)f(or)h(b)s(e)f(part)g(of)h(the)150 2663 y(con)m(ten)m(ts)32
-b(of)f(the)f(curren)m(t)g(line.)150 2896 y Fs(8.3)68
-b(Readline)47 b(Init)e(File)150 3055 y Fu(Although)f(the)g(Readline)g
-(library)f(comes)i(with)e(a)h(set)h(of)f(Emacs-lik)m(e)h(k)m
-(eybindings)f(installed)g(b)m(y)150 3165 y(default,)26
-b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)m(t)f(set)g(of)g(k)
-m(eybindings.)38 b(An)m(y)25 b(user)f(can)h(customize)h(programs)150
-3274 y(that)39 b(use)g(Readline)g(b)m(y)f(putting)h(commands)f(in)g(an)
-h Fr(inputrc)k Fu(\014le,)e(con)m(v)m(en)m(tionally)h(in)c(their)h
-(home)150 3384 y(directory)-8 b(.)59 b(The)35 b(name)i(of)f(this)g
-(\014le)g(is)g(tak)m(en)h(from)f(the)g(v)-5 b(alue)37
-b(of)f(the)g(shell)h(v)-5 b(ariable)36 b Ft(INPUTRC)p
-Fu(.)56 b(If)150 3493 y(that)36 b(v)-5 b(ariable)36 b(is)f(unset,)h
-(the)f(default)h(is)f Ft(~/.inputrc)p Fu(.)52 b(If)35
-b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h(b)s(e)150
-3603 y(read,)f(the)f(ultimate)h(default)f(is)g Ft(/etc/inputrc)p
-Fu(.)47 b(The)33 b Ft(bind)g Fu(builtin)g(command)h(can)g(also)h(b)s(e)
-e(used)150 3713 y(to)e(set)g(Readline)g(k)m(eybindings)f(and)g(v)-5
-b(ariables.)41 b(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)g
-(57.)275 3843 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)g
-(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h(read,)g(and)f(the)
-150 3953 y(k)m(ey)i(bindings)e(are)i(set.)275 4083 y(In)26
-b(addition,)i(the)f Ft(C-x)i(C-r)d Fu(command)h(re-reads)g(this)f(init)
-h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m(hanges)150
-4193 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g(it.)150
-4384 y Fk(8.3.1)63 b(Readline)40 b(Init)h(File)g(Syn)m(tax)150
-4531 y Fu(There)f(are)i(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)
-m(ed)h(in)d(the)h(Readline)h(init)f(\014le.)73 b(Blank)41
-b(lines)h(are)150 4641 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
-(a)g(`)p Ft(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)41
-b(b)s(eginning)f(with)g(a)i(`)p Ft($)p Fu(')f(indicate)150
-4750 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g
-([Conditional)g(Init)e(Constructs],)j(page)e(134\).)64
-b(Other)150 4860 y(lines)31 b(denote)g(v)-5 b(ariable)31
-b(settings)g(and)f(k)m(ey)h(bindings.)150 5011 y(V)-8
-b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
-(the)i(run-time)f(b)s(eha)m(vior)g(of)h(Readline)g(b)m(y)f(altering)h
-(the)g(v)-5 b(alues)41 b(of)630 5230 y(v)-5 b(ariables)34
-b(in)f(Readline)i(using)e(the)g Ft(set)g Fu(command)g(within)g(the)h
-(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p
-eop end
+Fu(s)c(are)i(t)m(yp)s(ed)g(without)150 2204 y(an)m(y)42
+b(in)m(terv)m(ening)i(c)m(haracters)f(de\014ning)f(a)g(new)g(searc)m(h)
+g(string,)k(Readline)c(uses)g(an)m(y)h(remem)m(b)s(ered)150
+2313 y(searc)m(h)31 b(string.)275 2444 y(Non-incremen)m(tal)48
+b(searc)m(hes)g(read)e(the)h(en)m(tire)h(searc)m(h)f(string)g(b)s
+(efore)f(starting)h(to)h(searc)m(h)f(for)150 2553 y(matc)m(hing)d
+(history)e(lines.)78 b(The)42 b(searc)m(h)h(string)g(ma)m(y)g(b)s(e)f
+(t)m(yp)s(ed)g(b)m(y)g(the)h(user)f(or)h(b)s(e)f(part)g(of)h(the)150
+2663 y(con)m(ten)m(ts)32 b(of)f(the)f(curren)m(t)g(line.)150
+2896 y Fs(8.3)68 b(Readline)47 b(Init)e(File)150 3055
+y Fu(Although)f(the)g(Readline)g(library)f(comes)i(with)e(a)h(set)h(of)
+f(Emacs-lik)m(e)h(k)m(eybindings)f(installed)g(b)m(y)150
+3165 y(default,)26 b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)
+m(t)f(set)g(of)g(k)m(eybindings.)38 b(An)m(y)25 b(user)f(can)h
+(customize)h(programs)150 3274 y(that)39 b(use)g(Readline)g(b)m(y)f
+(putting)h(commands)f(in)g(an)h Fr(inputrc)k Fu(\014le,)e(con)m(v)m(en)
+m(tionally)h(in)c(their)h(home)150 3384 y(directory)-8
+b(.)59 b(The)35 b(name)i(of)f(this)g(\014le)g(is)g(tak)m(en)h(from)f
+(the)g(v)-5 b(alue)37 b(of)f(the)g(shell)h(v)-5 b(ariable)36
+b Ft(INPUTRC)p Fu(.)56 b(If)150 3493 y(that)36 b(v)-5
+b(ariable)36 b(is)f(unset,)h(the)f(default)h(is)f Ft(~/.inputrc)p
+Fu(.)52 b(If)35 b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h
+(b)s(e)150 3603 y(read,)f(the)f(ultimate)h(default)f(is)g
+Ft(/etc/inputrc)p Fu(.)47 b(The)33 b Ft(bind)g Fu(builtin)g(command)h
+(can)g(also)h(b)s(e)e(used)150 3713 y(to)e(set)g(Readline)g(k)m
+(eybindings)f(and)g(v)-5 b(ariables.)41 b(See)31 b(Section)g(4.2)g
+([Bash)g(Builtins],)g(page)g(57.)275 3843 y(When)e(a)h(program)f(whic)m
+(h)h(uses)f(the)h(Readline)g(library)f(starts)h(up,)f(the)h(init)g
+(\014le)f(is)h(read,)g(and)f(the)150 3953 y(k)m(ey)i(bindings)e(are)i
+(set.)275 4083 y(In)26 b(addition,)i(the)f Ft(C-x)i(C-r)d
+Fu(command)h(re-reads)g(this)f(init)h(\014le,)h(th)m(us)f(incorp)s
+(orating)g(an)m(y)g(c)m(hanges)150 4193 y(that)k(y)m(ou)g(migh)m(t)g
+(ha)m(v)m(e)g(made)g(to)g(it.)150 4384 y Fk(8.3.1)63
+b(Readline)40 b(Init)h(File)g(Syn)m(tax)150 4531 y Fu(There)f(are)i
+(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)m(ed)h(in)d(the)h
+(Readline)h(init)f(\014le.)73 b(Blank)41 b(lines)h(are)150
+4641 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h(a)g(`)p
+Ft(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)41 b(b)s(eginning)f(with)g
+(a)i(`)p Ft($)p Fu(')f(indicate)150 4750 y(conditional)e(constructs)f
+(\(see)g(Section)h(8.3.2)g([Conditional)g(Init)e(Constructs],)j(page)e
+(134\).)64 b(Other)150 4860 y(lines)31 b(denote)g(v)-5
+b(ariable)31 b(settings)g(and)f(k)m(ey)h(bindings.)150
+5011 y(V)-8 b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41
+b(can)g(mo)s(dify)e(the)i(run-time)f(b)s(eha)m(vior)g(of)h(Readline)g
+(b)m(y)f(altering)h(the)g(v)-5 b(alues)41 b(of)630 5230
+y(v)-5 b(ariables)34 b(in)f(Readline)i(using)e(the)g
+Ft(set)g Fu(command)g(within)g(the)h(init)g(\014le.)50
+b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p eop end
 %%Page: 126 132
 TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(8:)41
 b(Command)29 b(Line)i(Editing)2062 b(126)870 299 y Ft(set)47
@@ -17790,353 +17849,352 @@ eop end
 %%Page: 131 137
 TeXDict begin 131 136 bop 150 -116 a Fu(Chapter)30 b(8:)41
 b(Command)29 b(Line)i(Editing)2062 b(131)630 299 y Ft
-(match-hidden-files)1110 408 y Fu(This)21 b(v)-5 b(ariable,)25
-b(when)d(set)g(to)h(`)p Ft(on)p Fu(',)h(causes)f(Readline)g(to)g(matc)m
-(h)g(\014les)f(whose)1110 518 y(names)44 b(b)s(egin)g(with)g(a)g(`)p
+(match-hidden-files)1110 408 y Fu(This)24 b(v)-5 b(ariable,)26
+b(when)e(set)h(to)g(`)p Ft(on)p Fu(',)g(forces)g(Readline)g(to)g(matc)m
+(h)h(\014les)e(whose)1110 518 y(names)44 b(b)s(egin)g(with)g(a)g(`)p
 Ft(.)p Fu(')g(\(hidden)f(\014les\))i(when)e(p)s(erforming)g(\014lename)
-1110 628 y(completion.)75 b(If)41 b(set)g(to)h(`)p Ft(off)p
-Fu(',)i(the)e(leading)g(`)p Ft(.)p Fu(')f(m)m(ust)g(b)s(e)g(supplied)f
-(b)m(y)1110 737 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f
-(completed.)53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p
-Ft(on)p Fu(')g(b)m(y)1110 847 y(default.)630 1011 y Ft
-(menu-complete-display-pr)o(efix)1110 1121 y Fu(If)f(set)h(to)g(`)p
-Ft(on)p Fu(',)h(men)m(u)e(completion)i(displa)m(ys)e(the)h(common)g
-(pre\014x)e(of)i(the)1110 1230 y(list)k(of)g(p)s(ossible)f(completions)
-i(\(whic)m(h)e(ma)m(y)h(b)s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110
-1340 y(through)30 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p
-Ft(off)p Fu('.)630 1504 y Ft(output-meta)1110 1614 y
-Fu(If)35 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(displa)m(y)
-f(c)m(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1724
-y(set)h(directly)g(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s
-(e)h(sequence.)59 b(The)1110 1833 y(default)26 b(is)f(`)p
-Ft(off)p Fu(',)i(but)e(Readline)h(will)g(set)g(it)g(to)h(`)p
-Ft(on)p Fu(')e(if)h(the)f(lo)s(cale)j(con)m(tains)1110
-1943 y(eigh)m(t-bit)38 b(c)m(haracters.)61 b(This)36
-b(v)-5 b(ariable)37 b(is)g(dep)s(enden)m(t)e(on)h(the)h
-Ft(LC_CTYPE)1110 2052 y Fu(lo)s(cale)32 b(category)-8
+1110 628 y(completion.)f(If)28 b(set)i(to)g(`)p Ft(off)p
+Fu(',)f(the)g(user)f(m)m(ust)h(include)g(the)g(leading)h(`)p
+Ft(.)p Fu(')f(in)1110 737 y(the)i(\014lename)f(to)h(b)s(e)f(completed.)
+42 b(This)29 b(v)-5 b(ariable)31 b(is)g(`)p Ft(on)p Fu(')f(b)m(y)g
+(default.)630 888 y Ft(menu-complete-display-pr)o(efix)1110
+998 y Fu(If)j(set)h(to)g(`)p Ft(on)p Fu(',)h(men)m(u)e(completion)i
+(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
+1107 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)
+s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 1217 y(through)30
+b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Ft(off)p
+Fu('.)630 1367 y Ft(output-meta)1110 1477 y Fu(If)35
+b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(displa)m(y)f(c)m
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1587 y(set)h(directly)g
+(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
+b(The)1110 1696 y(default)26 b(is)f(`)p Ft(off)p Fu(',)i(but)e
+(Readline)h(will)g(set)g(it)g(to)h(`)p Ft(on)p Fu(')e(if)h(the)f(lo)s
+(cale)j(con)m(tains)1110 1806 y(eigh)m(t-bit)38 b(c)m(haracters.)61
+b(This)36 b(v)-5 b(ariable)37 b(is)g(dep)s(enden)m(t)e(on)h(the)h
+Ft(LC_CTYPE)1110 1915 y Fu(lo)s(cale)32 b(category)-8
 b(,)33 b(and)d(ma)m(y)h(c)m(hange)g(if)g(the)f(lo)s(cale)i(is)f(c)m
-(hanged.)630 2217 y Ft(page-completions)1110 2326 y Fu(If)i(set)i(to)f
+(hanged.)630 2066 y Ft(page-completions)1110 2176 y Fu(If)i(set)i(to)f
 (`)p Ft(on)p Fu(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
 Ft(more)p Fu(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
-2436 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
+2285 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
 47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Ft(on)p Fu(')1110
-2545 y(b)m(y)e(default.)630 2710 y Ft(print-completions-horizo)o(ntal)o
-(ly)1110 2819 y Fu(If)23 b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g
+2395 y(b)m(y)e(default.)630 2545 y Ft(print-completions-horizo)o(ntal)o
+(ly)1110 2655 y Fu(If)23 b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g
 (will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
-2929 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
-(than)g(do)m(wn)g(the)h(screen.)1110 3039 y(The)30 b(default)g(is)h(`)p
-Ft(off)p Fu('.)630 3203 y Ft(revert-all-at-newline)1110
-3313 y Fu(If)e(set)h(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f
+2765 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
+(than)g(do)m(wn)g(the)h(screen.)1110 2874 y(The)30 b(default)g(is)h(`)p
+Ft(off)p Fu('.)630 3025 y Ft(revert-all-at-newline)1110
+3134 y Fu(If)e(set)h(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f
 (all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
-3422 y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41
-b(By)29 b(default,)g(history)g(lines)1110 3532 y(ma)m(y)42
+3244 y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41
+b(By)29 b(default,)g(history)g(lines)1110 3354 y(ma)m(y)42
 b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
-(across)g(calls)h(to)1110 3641 y Ft(readline\(\))p Fu(.)38
-b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 3806
-y Ft(search-ignore-case)1110 3915 y Fu(If)j(set)g(to)h(`)p
+(across)g(calls)h(to)1110 3463 y Ft(readline\(\))p Fu(.)38
+b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 3614
+y Ft(search-ignore-case)1110 3724 y Fu(If)j(set)g(to)h(`)p
 Ft(on)p Fu(',)h(Readline)e(p)s(erforms)f(incremen)m(tal)i(and)f
-(non-incremen)m(tal)1110 4025 y(history)27 b(list)g(searc)m(hes)h(in)f
+(non-incremen)m(tal)1110 3833 y(history)27 b(list)g(searc)m(hes)h(in)f
 (a)g(case-insensitiv)m(e)j(fashion.)39 b(The)26 b(default)h(v)-5
-b(alue)1110 4134 y(is)30 b(`)p Ft(off)p Fu('.)630 4299
-y Ft(show-all-if-ambiguous)1110 4408 y Fu(This)f(alters)i(the)f
+b(alue)1110 3943 y(is)30 b(`)p Ft(off)p Fu('.)630 4093
+y Ft(show-all-if-ambiguous)1110 4203 y Fu(This)f(alters)i(the)f
 (default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
-b(If)29 b(set)1110 4518 y(to)f(`)p Ft(on)p Fu(',)g(w)m(ords)f(whic)m(h)
+b(If)29 b(set)1110 4313 y(to)f(`)p Ft(on)p Fu(',)g(w)m(ords)f(whic)m(h)
 g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
-1110 4628 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
-(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 4737 y(The)30
+1110 4422 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
+(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 4532 y(The)30
 b(default)g(v)-5 b(alue)31 b(is)g(`)p Ft(off)p Fu('.)630
-4902 y Ft(show-all-if-unmodified)1110 5011 y Fu(This)38
+4682 y Ft(show-all-if-unmodified)1110 4792 y Fu(This)38
 b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
-(functions)e(in)h(a)1110 5121 y(fashion)25 b(similar)h(to)g
+(functions)e(in)h(a)1110 4902 y(fashion)25 b(similar)h(to)g
 Fr(sho)m(w-all-if-am)m(biguous)p Fu(.)41 b(If)25 b(set)h(to)h(`)p
-Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)1110 5230 y(ha)m(v)m(e)32
+Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)1110 5011 y(ha)m(v)m(e)32
 b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
-(ossible)f(par-)1110 5340 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
-f(completions)h(don't)f(share)g(a)h(common)p eop end
+(ossible)f(par-)1110 5121 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
+f(completions)h(don't)f(share)g(a)h(common)1110 5230
+y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
+(immediately)i(instead)e(of)h(ring-)1110 5340 y(ing)g(the)f(b)s(ell.)41
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Ft(off)p
+Fu('.)p eop end
 %%Page: 132 138
 TeXDict begin 132 137 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(132)1110 299 y(pre\014x\))30
-b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g(immediately)i
-(instead)e(of)h(ring-)1110 408 y(ing)g(the)f(b)s(ell.)41
-b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Ft(off)p
-Fu('.)630 573 y Ft(show-mode-in-prompt)1110 682 y Fu(If)24
-b(set)h(to)g(`)p Ft(on)p Fu(',)g(add)f(a)h(string)f(to)h(the)f(b)s
-(eginning)g(of)g(the)h(prompt)e(indicating)1110 792 y(the)33
-b(editing)h(mo)s(de:)46 b(emacs,)35 b(vi)e(command,)h(or)f(vi)h
-(insertion.)49 b(The)32 b(mo)s(de)1110 902 y(strings)45
-b(are)h(user-settable)g(\(e.g.,)51 b Fr(emacs-mo)s(de-string)8
-b Fu(\).)87 b(The)45 b(default)1110 1011 y(v)-5 b(alue)31
-b(is)f(`)p Ft(off)p Fu('.)630 1176 y Ft(skip-completed-text)1110
-1285 y Fu(If)i(set)i(to)f(`)p Ft(on)p Fu(',)h(this)f(alters)g(the)g
-(default)g(completion)h(b)s(eha)m(vior)f(when)f(in-)1110
-1395 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
-b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)1110
-1504 y(ing)k(completion)i(in)e(the)g(middle)g(of)g(a)h(w)m(ord.)46
-b(If)32 b(enabled,)g(Readline)h(do)s(es)1110 1614 y(not)41
+b(Command)29 b(Line)i(Editing)2062 b(132)630 299 y Ft
+(show-mode-in-prompt)1110 408 y Fu(If)24 b(set)h(to)g(`)p
+Ft(on)p Fu(',)g(add)f(a)h(string)f(to)h(the)f(b)s(eginning)g(of)g(the)h
+(prompt)e(indicating)1110 518 y(the)33 b(editing)h(mo)s(de:)46
+b(emacs,)35 b(vi)e(command,)h(or)f(vi)h(insertion.)49
+b(The)32 b(mo)s(de)1110 628 y(strings)45 b(are)h(user-settable)g
+(\(e.g.,)51 b Fr(emacs-mo)s(de-string)8 b Fu(\).)87 b(The)45
+b(default)1110 737 y(v)-5 b(alue)31 b(is)f(`)p Ft(off)p
+Fu('.)630 887 y Ft(skip-completed-text)1110 996 y Fu(If)i(set)i(to)f(`)
+p Ft(on)p Fu(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s(eha)
+m(vior)f(when)f(in-)1110 1106 y(serting)d(a)h(single)g(matc)m(h)f(in)m
+(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)
+1110 1215 y(ing)k(completion)i(in)e(the)g(middle)g(of)g(a)h(w)m(ord.)46
+b(If)32 b(enabled,)g(Readline)h(do)s(es)1110 1325 y(not)41
 b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
-(c)m(haracters)1110 1724 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
+(c)m(haracters)1110 1435 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
 (b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
-1833 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
+1544 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
 b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
-1943 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 2052 y(`)p Ft(Makefile)p
+1654 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 1763 y(`)p Ft(Makefile)p
 Fu(')c(will)i(result)f(in)g(`)p Ft(Makefile)p Fu(')f(rather)h(than)h(`)
-p Ft(Makefilefile)p Fu(',)1110 2162 y(assuming)d(there)g(is)h(a)f
+p Ft(Makefilefile)p Fu(',)1110 1873 y(assuming)d(there)g(is)h(a)f
 (single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
-b(alue)1110 2271 y(is)30 b(`)p Ft(off)p Fu('.)630 2436
-y Ft(vi-cmd-mode-string)1110 2545 y Fu(If)j(the)h Fr(sho)m(w-mo)s
+b(alue)1110 1983 y(is)30 b(`)p Ft(off)p Fu('.)630 2132
+y Ft(vi-cmd-mode-string)1110 2242 y Fu(If)j(the)h Fr(sho)m(w-mo)s
 (de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
-(is)h(dis-)1110 2655 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
+(is)h(dis-)1110 2351 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
 g(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
-2765 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)
+2461 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)
 g(mo)s(de.)46 b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110
-2874 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f
+2570 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f
 (standard)f(set)h(of)g(meta-)h(and)e(con)m(trol)1110
-2984 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is)
+2680 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is)
 g(a)m(v)-5 b(ailable.)57 b(Use)35 b(the)g(`)p Ft(\\1)p
-Fu(')1110 3093 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s
+Fu(')1110 2790 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s
 (egin)g(and)f(end)g(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110
-3203 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)
-h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 3313
+2899 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)
+h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 3009
 y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
-Ft(\(cmd\))p Fu('.)630 3477 y Ft(vi-ins-mode-string)1110
-3587 y Fu(If)j(the)h Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5
+Ft(\(cmd\))p Fu('.)630 3158 y Ft(vi-ins-mode-string)1110
+3268 y Fu(If)j(the)h Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5
 b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
-3696 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
-(of)h(the)f(primary)f(prompt)g(when)1110 3806 y(vi)35
+3377 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
+(of)h(the)f(primary)f(prompt)g(when)1110 3487 y(vi)35
 b(editing)h(mo)s(de)e(is)i(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)
-54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 3915 y(panded)26
+54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 3597 y(panded)26
 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
-(meta-)h(and)e(con)m(trol)1110 4025 y(pre\014xes)34 b(and)g(bac)m
+(meta-)h(and)e(con)m(trol)1110 3706 y(pre\014xes)34 b(and)g(bac)m
 (kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
-b(Use)35 b(the)g(`)p Ft(\\1)p Fu(')1110 4134 y(and)23
+b(Use)35 b(the)g(`)p Ft(\\1)p Fu(')1110 3816 y(and)23
 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
-(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 4244
+(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 3925
 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h
-(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 4354
+(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 4035
 y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
-Ft(\(ins\))p Fu('.)630 4518 y Ft(visible-stats)1110 4628
+Ft(\(ins\))p Fu('.)630 4184 y Ft(visible-stats)1110 4294
 y Fu(If)h(set)i(to)f(`)p Ft(on)p Fu(',)h(a)f(c)m(haracter)i(denoting)e
 (a)g(\014le's)g(t)m(yp)s(e)g(is)g(app)s(ended)e(to)j(the)1110
-4737 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42
-b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)150 4902
-y(Key)f(Bindings)630 5011 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h
+4403 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42
+b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)150 4553
+y(Key)f(Bindings)630 4663 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h
 (k)m(ey)g(bindings)e(in)h(the)g(init)g(\014le)g(is)g(simple.)75
-b(First)43 b(y)m(ou)630 5121 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)
+b(First)43 b(y)m(ou)630 4772 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)
 h(the)g(command)f(that)i(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41
-b(The)27 b(follo)m(wing)630 5230 y(sections)37 b(con)m(tain)g(tables)g
+b(The)27 b(follo)m(wing)630 4882 y(sections)37 b(con)m(tain)g(tables)g
 (of)f(the)g(command)f(name,)j(the)e(default)g(k)m(eybinding,)h(if)f(an)
-m(y)-8 b(,)630 5340 y(and)30 b(a)h(short)f(description)g(of)h(what)f
-(the)g(command)h(do)s(es.)p eop end
+m(y)-8 b(,)630 4991 y(and)30 b(a)h(short)f(description)g(of)h(what)f
+(the)g(command)h(do)s(es.)630 5121 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g
+(name)g(of)g(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g
+(the)g(init)630 5230 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m
+(ou)g(wish)f(to)h(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)
+630 5340 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g
+(and)p eop end
 %%Page: 133 139
 TeXDict begin 133 138 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(133)630 299 y(Once)36
-b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g(the)g(command,)h(simply)f(place)
-h(on)e(a)i(line)f(in)g(the)g(init)630 408 y(\014le)e(the)g(name)f(of)h
-(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h(bind)f(the)h(command)f(to,)i(a)f
-(colon,)i(and)d(then)630 518 y(the)f(name)h(of)f(the)g(command.)46
-b(There)32 b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m
-(ey)h(name)g(and)630 628 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g
-(in)m(terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
-b(The)40 b(name)h(of)630 737 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
-(expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
-(what)h(y)m(ou)g(\014nd)e(most)630 847 y(comfortable.)630
-985 y(In)g(addition)h(to)g(command)g(names,)g(Readline)g(allo)m(ws)h(k)
-m(eys)g(to)f(b)s(e)f(b)s(ound)f(to)i(a)g(string)630 1095
-y(that)d(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g(\(a)h
-Fr(macro)5 b Fu(\).)630 1233 y(The)42 b Ft(bind)30 b(-p)42
-b Fu(command)h(displa)m(ys)g(Readline)g(function)g(names)g(and)f
-(bindings)g(in)h(a)630 1343 y(format)28 b(that)h(can)f(b)s(e)f(put)g
-(directly)i(in)m(to)f(an)g(initialization)j(\014le.)40
-b(See)28 b(Section)h(4.2)g([Bash)630 1452 y(Builtins],)i(page)g(57.)630
-1620 y Fr(k)m(eyname)5 b Fu(:)42 b Fr(function-name)35
-b Fu(or)c Fr(macro)1110 1729 y(k)m(eyname)k Fu(is)29
-b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s(elled)e(out)h(in)g(English.)39
-b(F)-8 b(or)30 b(example:)1350 1868 y Ft(Control-u:)45
-b(universal-argument)1350 1977 y(Meta-Rubout:)f(backward-kill-word)1350
-2087 y(Control-o:)h(">)i(output")1110 2225 y Fu(In)94
-b(the)g(example)h(ab)s(o)m(v)m(e,)112 b Fj(C-u)94 b Fu(is)g(b)s(ound)f
-(to)i(the)f(function)1110 2335 y Ft(universal-argument)p
-Fu(,)124 b Fj(M-DEL)107 b Fu(is)i(b)s(ound)e(to)j(the)f(function)1110
-2445 y Ft(backward-kill-word)p Fu(,)75 b(and)69 b Fj(C-o)g
-Fu(is)h(b)s(ound)e(to)j(run)d(the)i(macro)1110 2554 y(expressed)45
-b(on)h(the)g(righ)m(t)g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)
-h(text)h(`)p Ft(>)1110 2664 y(output)p Fu(')29 b(in)m(to)i(the)g
-(line\).)1110 2802 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m
-(haracter)g(names)f(are)g(recognized)h(while)1110 2912
-y(pro)s(cessing)40 b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60
-b Fr(DEL)p Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f
-Fr(LFD)p Fu(,)1110 3021 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p
-Fu(,)f Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h Fr(SP)-8
-b(A)m(CE)p Fu(,)31 b Fr(SPC)p Fu(,)e(and)h Fr(T)-8 b(AB)p
-Fu(.)630 3189 y Ft(")p Fr(k)m(eyseq)r Ft(")p Fu(:)41
-b Fr(function-name)36 b Fu(or)30 b Fr(macro)1110 3298
-y(k)m(eyseq)k Fu(di\013ers)d(from)f Fr(k)m(eyname)37
-b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f(denoting)g(an)g(en-)1110
-3408 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s(e)f(sp)s(eci\014ed,)h(b)m
-(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)1110 3517
-y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h Fu(Emacs)f(st)m(yle)i(k)m
-(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)1110 3627
-y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s(ecial)h(c)m
-(haracter)g(names)f(are)g(not)1110 3737 y(recognized.)1350
-3875 y Ft("\\C-u":)46 b(universal-argument)1350 3985
-y("\\C-x\\C-r":)f(re-read-init-file)1350 4094 y("\\e[11~":)g("Function)
-h(Key)g(1")1110 4233 y Fu(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
+b(Command)29 b(Line)i(Editing)2062 b(133)630 299 y(the)41
+b(colon)h({)f(that)g(will)g(b)s(e)g(in)m(terpreted)g(as)g(part)f(of)h
+(the)g(k)m(ey)h(name.)72 b(The)40 b(name)h(of)630 408
+y(the)35 b(k)m(ey)g(can)g(b)s(e)f(expressed)f(in)i(di\013eren)m(t)g(w)m
+(a)m(ys,)h(dep)s(ending)d(on)h(what)h(y)m(ou)g(\014nd)e(most)630
+518 y(comfortable.)630 650 y(In)g(addition)h(to)g(command)g(names,)g
+(Readline)g(allo)m(ws)h(k)m(eys)g(to)f(b)s(e)f(b)s(ound)f(to)i(a)g
+(string)630 759 y(that)d(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f
+(pressed)g(\(a)h Fr(macro)5 b Fu(\).)630 891 y(The)42
+b Ft(bind)30 b(-p)42 b Fu(command)h(displa)m(ys)g(Readline)g(function)g
+(names)g(and)f(bindings)g(in)h(a)630 1000 y(format)28
+b(that)h(can)f(b)s(e)f(put)g(directly)i(in)m(to)f(an)g(initialization)j
+(\014le.)40 b(See)28 b(Section)h(4.2)g([Bash)630 1110
+y(Builtins],)i(page)g(57.)630 1263 y Fr(k)m(eyname)5
+b Fu(:)42 b Fr(function-name)35 b Fu(or)c Fr(macro)1110
+1373 y(k)m(eyname)k Fu(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+(elled)e(out)h(in)g(English.)39 b(F)-8 b(or)30 b(example:)1350
+1504 y Ft(Control-u:)45 b(universal-argument)1350 1614
+y(Meta-Rubout:)f(backward-kill-word)1350 1724 y(Control-o:)h(">)i
+(output")1110 1855 y Fu(In)94 b(the)g(example)h(ab)s(o)m(v)m(e,)112
+b Fj(C-u)94 b Fu(is)g(b)s(ound)f(to)i(the)f(function)1110
+1965 y Ft(universal-argument)p Fu(,)124 b Fj(M-DEL)107
+b Fu(is)i(b)s(ound)e(to)j(the)f(function)1110 2074 y
+Ft(backward-kill-word)p Fu(,)75 b(and)69 b Fj(C-o)g Fu(is)h(b)s(ound)e
+(to)j(run)d(the)i(macro)1110 2184 y(expressed)45 b(on)h(the)g(righ)m(t)
+g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
+Ft(>)1110 2293 y(output)p Fu(')29 b(in)m(to)i(the)g(line\).)1110
+2425 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
+(names)f(are)g(recognized)h(while)1110 2534 y(pro)s(cessing)40
+b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fr(DEL)p
+Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f Fr(LFD)p
+Fu(,)1110 2644 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p Fu(,)f
+Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h Fr(SP)-8 b(A)m(CE)p
+Fu(,)31 b Fr(SPC)p Fu(,)e(and)h Fr(T)-8 b(AB)p Fu(.)630
+2798 y Ft(")p Fr(k)m(eyseq)r Ft(")p Fu(:)41 b Fr(function-name)36
+b Fu(or)30 b Fr(macro)1110 2907 y(k)m(eyseq)k Fu(di\013ers)d(from)f
+Fr(k)m(eyname)37 b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
+(denoting)g(an)g(en-)1110 3017 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
+(e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)
+1110 3126 y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h
+Fu(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
+1110 3236 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
+(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 3345 y(recognized.)1350
+3477 y Ft("\\C-u":)46 b(universal-argument)1350 3587
+y("\\C-x\\C-r":)f(re-read-init-file)1350 3696 y("\\e[11~":)g("Function)
+h(Key)g(1")1110 3828 y Fu(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
 b Fj(C-u)64 b Fu(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
-4342 y Ft(universal-argument)39 b Fu(\(just)k(as)h(it)g(w)m(as)g(in)g
-(the)f(\014rst)g(example\),)49 b(`)p Fj(C-x)1110 4452
+3937 y Ft(universal-argument)39 b Fu(\(just)k(as)h(it)g(w)m(as)g(in)g
+(the)f(\014rst)g(example\),)49 b(`)p Fj(C-x)1110 4047
 y(C-r)p Fu(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
 Ft(re-read-init-file)p Fu(,)c(and)j(`)p Ft(ESC)h([)g(1)g(1)1110
-4561 y(~)p Fu(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Ft(Function)e(Key)g(1)p Fu('.)630 4729 y(The)g(follo)m(wing)i
+4156 y(~)p Fu(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Ft(Function)e(Key)g(1)p Fu('.)630 4310 y(The)g(follo)m(wing)i
 Fm(gnu)f Fu(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
-b(ailable)32 b(when)d(sp)s(ecifying)630 4838 y(k)m(ey)i(sequences:)630
-5005 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630
-5173 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 5340 y
-Fj(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)p eop
-end
+b(ailable)32 b(when)d(sp)s(ecifying)630 4419 y(k)m(ey)i(sequences:)630
+4573 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630
+4726 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 4880 y
+Fj(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)630
+5033 y Fj(\\\\)384 b Fu(bac)m(kslash)630 5187 y Fj(\\)p
+Ft(")g(")p Fu(,)30 b(a)h(double)f(quotation)i(mark)630
+5340 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)p eop end
 %%Page: 134 140
 TeXDict begin 134 139 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(134)630 299 y Fj(\\\\)384
-b Fu(bac)m(kslash)630 458 y Fj(\\)p Ft(")g(")p Fu(,)30
-b(a)h(double)f(quotation)i(mark)630 616 y Fj(\\')384
-b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s(ostrophe)630
-775 y(In)d(addition)h(to)g(the)g Fm(gnu)f Fu(Emacs)h(st)m(yle)h(escap)s
-(e)f(sequences,)h(a)f(second)f(set)h(of)g(bac)m(kslash)630
-885 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630 1043
-y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 1202 y Ft(\\b)384
-b Fu(bac)m(kspace)630 1361 y Ft(\\d)g Fu(delete)630 1520
-y Ft(\\f)g Fu(form)30 b(feed)630 1678 y Ft(\\n)384 b
-Fu(newline)630 1837 y Ft(\\r)g Fu(carriage)32 b(return)630
-1996 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)630 2154
-y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)630 2313 y Ft(\\)p
+b(Command)29 b(Line)i(Editing)2062 b(134)630 299 y(In)27
+b(addition)h(to)g(the)g Fm(gnu)f Fu(Emacs)h(st)m(yle)h(escap)s(e)f
+(sequences,)h(a)f(second)f(set)h(of)g(bac)m(kslash)630
+408 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630 570 y
+Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 731 y Ft(\\b)384
+b Fu(bac)m(kspace)630 892 y Ft(\\d)g Fu(delete)630 1053
+y Ft(\\f)g Fu(form)30 b(feed)630 1214 y Ft(\\n)384 b
+Fu(newline)630 1375 y Ft(\\r)g Fu(carriage)32 b(return)630
+1536 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)630 1697
+y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)630 1858 y Ft(\\)p
 Fj(nnn)288 b Fu(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fr(nnn)e
-Fu(\(one)i(to)1110 2423 y(three)c(digits\))630 2582 y
+Fu(\(one)i(to)1110 1968 y(three)c(digits\))630 2129 y
 Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e
 (v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39
-b Fr(HH)1110 2691 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
-2850 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
+b Fr(HH)1110 2239 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+2400 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
 (or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
-2959 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
+2509 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
-b(In)630 3069 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
+b(In)630 2619 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
-(are)e(expanded.)37 b(Bac)m(kslash)630 3179 y(will)j(quote)h(an)m(y)f
+(are)e(expanded.)37 b(Bac)m(kslash)630 2729 y(will)j(quote)h(an)m(y)f
 (other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
 b(`)p Ft(")p Fu(')h(and)g(`)p Ft(')p Fu('.)69 b(F)-8
-b(or)630 3288 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
+b(or)630 2838 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
 (mak)m(e)h(`)p Fj(C-x)j Ft(\\)p Fu(')c(insert)f(a)h(single)h(`)p
-Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 3422 y Ft("\\C-x\\\\":)45
-b("\\\\")150 3621 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
-150 3768 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
+Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 2974 y Ft("\\C-x\\\\":)45
+b("\\\\")150 3175 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
+150 3322 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
 (in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
-3877 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
+3431 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
 (bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
-(erformed)f(as)i(the)150 3987 y(result)f(of)h(tests.)41
+(erformed)f(as)i(the)150 3541 y(result)f(of)h(tests.)41
 b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
-4146 y Ft($if)336 b Fu(The)31 b Ft($if)f Fu(construct)i(allo)m(ws)h
+3703 y Ft($if)336 b Fu(The)31 b Ft($if)f Fu(construct)i(allo)m(ws)h
 (bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
-(the)630 4255 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h
+(the)630 3812 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h
 (application)g(using)f(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)
-630 4365 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f
+630 3922 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f
 (to)h(the)g(end)f(of)h(the)f(line;)i(unless)e(otherwise)630
-4475 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
-(it.)630 4633 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e
+4031 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
+(it.)630 4193 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e
 Fu(form)i(of)g(the)h Ft($if)e Fu(directiv)m(e)j(is)e(used)f(to)i(test)g
-(whether)e(Read-)1110 4743 y(line)44 b(is)f(in)g Ft(emacs)f
+(whether)e(Read-)1110 4302 y(line)44 b(is)f(in)g Ft(emacs)f
 Fu(or)h Ft(vi)g Fu(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g
-(conjunction)1110 4852 y(with)c(the)h(`)p Ft(set)29 b(keymap)p
+(conjunction)1110 4412 y(with)c(the)h(`)p Ft(set)29 b(keymap)p
 Fu(')38 b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
-4962 y(the)32 b Ft(emacs-standard)c Fu(and)j Ft(emacs-ctlx)d
-Fu(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 5072 y(starting)f(out)g
-(in)f Ft(emacs)f Fu(mo)s(de.)630 5230 y Ft(term)288 b
+4521 y(the)32 b Ft(emacs-standard)c Fu(and)j Ft(emacs-ctlx)d
+Fu(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 4631 y(starting)f(out)g
+(in)f Ft(emacs)f Fu(mo)s(de.)630 4792 y Ft(term)288 b
 Fu(The)26 b Ft(term=)g Fu(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
-(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 5340 y(ings,)38
+(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 4902 y(ings,)38
 b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
-(the)g(terminal's)p eop end
+(the)g(terminal's)1110 5011 y(function)24 b(k)m(eys.)39
+b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
+Ft(=)p Fu(')g(is)g(tested)h(against)1110 5121 y(b)s(oth)k(the)h(full)g
+(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
+(terminal)1110 5230 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
+Ft(-)p Fu('.)50 b(This)33 b(allo)m(ws)i Ft(sun)e Fu(to)h(matc)m(h)g(b)s
+(oth)f Ft(sun)g Fu(and)1110 5340 y Ft(sun-cmd)p Fu(,)c(for)h(instance.)
+p eop end
 %%Page: 135 141
 TeXDict begin 135 140 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(135)1110 299 y(function)24
-b(k)m(eys.)39 b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g
-(the)g(`)p Ft(=)p Fu(')g(is)g(tested)h(against)1110 408
-y(b)s(oth)k(the)h(full)g(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s
-(ortion)e(of)h(the)g(terminal)1110 518 y(name)k(b)s(efore)f(the)g
-(\014rst)g(`)p Ft(-)p Fu('.)50 b(This)33 b(allo)m(ws)i
-Ft(sun)e Fu(to)h(matc)m(h)g(b)s(oth)f Ft(sun)g Fu(and)1110
-628 y Ft(sun-cmd)p Fu(,)c(for)h(instance.)630 781 y Ft(version)144
+b(Command)29 b(Line)i(Editing)2062 b(135)630 299 y Ft(version)144
 b Fu(The)44 b Ft(version)f Fu(test)i(ma)m(y)h(b)s(e)e(used)f(to)j(p)s
-(erform)d(comparisons)i(against)1110 891 y(sp)s(eci\014c)c(Readline)i
+(erform)d(comparisons)i(against)1110 408 y(sp)s(eci\014c)c(Readline)i
 (v)m(ersions.)74 b(The)42 b Ft(version)d Fu(expands)i(to)h(the)g
-(curren)m(t)1110 1000 y(Readline)25 b(v)m(ersion.)39
-b(The)23 b(set)h(of)g(comparison)h(op)s(erators)f(includes)f(`)p
-Ft(=)p Fu(')h(\(and)1110 1110 y(`)p Ft(==)p Fu('\),)33
+(curren)m(t)1110 518 y(Readline)25 b(v)m(ersion.)39 b(The)23
+b(set)h(of)g(comparison)h(op)s(erators)f(includes)f(`)p
+Ft(=)p Fu(')h(\(and)1110 628 y(`)p Ft(==)p Fu('\),)33
 b(`)p Ft(!=)p Fu(',)f(`)p Ft(<=)p Fu(',)h(`)p Ft(>=)p
 Fu(',)f(`)p Ft(<)p Fu(',)h(and)e(`)p Ft(>)p Fu('.)46
 b(The)31 b(v)m(ersion)i(n)m(um)m(b)s(er)d(supplied)h(on)1110
-1219 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g(consists)h(of)f
+737 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g(consists)h(of)f
 (a)g(ma)5 b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)1110
-1329 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
-b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 1439
+847 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
+b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 956
 y(`)p Ft(7.1)p Fu('\).)40 b(If)27 b(the)h(minor)f(v)m(ersion)h(is)g
 (omitted,)h(it)f(is)g(assumed)f(to)h(b)s(e)f(`)p Ft(0)p
-Fu('.)40 b(The)1110 1548 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
+Fu('.)40 b(The)1110 1066 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
 g(from)g(the)h(string)f Ft(version)f Fu(and)h(from)g(the)1110
-1658 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
+1176 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
 (whitespace.)67 b(The)38 b(follo)m(wing)i(example)1110
-1767 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
+1285 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
 (ersion)f(b)s(eing)g(used)g(is)g(7.0)i(or)e(new)m(er:)1350
-1899 y Ft($if)47 b(version)f(>=)h(7.0)1350 2008 y(set)g
-(show-mode-in-prompt)42 b(on)1350 2118 y($endif)630 2271
-y(application)1110 2381 y Fu(The)21 b Fr(application)j
+1440 y Ft($if)47 b(version)f(>=)h(7.0)1350 1550 y(set)g
+(show-mode-in-prompt)42 b(on)1350 1659 y($endif)630 1860
+y(application)1110 1970 y Fu(The)21 b Fr(application)j
 Fu(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
-(set-)1110 2491 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
+(set-)1110 2079 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
 (Readline)g(library)g(sets)g(the)g Fr(application)1110
-2600 y(name)p Fu(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
+2189 y(name)p Fu(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
 (v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
-2710 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
-(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 2819
+2298 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
+(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 2408
 y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
-(sequence)h(that)f(quotes)1110 2929 y(the)e(curren)m(t)f(or)g(previous)
-g(w)m(ord)g(in)g(Bash:)1350 3061 y Ft($if)47 b(Bash)1350
-3170 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350
-3280 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 3389 y($endif)630
-3543 y(variable)96 b Fu(The)33 b Fr(v)-5 b(ariable)39
+(sequence)h(that)f(quotes)1110 2518 y(the)e(curren)m(t)f(or)g(previous)
+g(w)m(ord)g(in)g(Bash:)1350 2673 y Ft($if)47 b(Bash)1350
+2782 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350
+2892 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 3002 y($endif)630
+3202 y(variable)96 b Fu(The)33 b Fr(v)-5 b(ariable)39
 b Fu(construct)33 b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g
-(Readline)1110 3652 y(v)-5 b(ariables)32 b(and)f(v)-5
+(Readline)1110 3312 y(v)-5 b(ariables)32 b(and)f(v)-5
 b(alues.)45 b(The)32 b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i
-(`)p Ft(=)p Fu(',)1110 3762 y(`)p Ft(==)p Fu(',)49 b(and)44
+(`)p Ft(=)p Fu(',)1110 3421 y(`)p Ft(==)p Fu(',)49 b(and)44
 b(`)p Ft(!=)p Fu('.)85 b(The)44 b(v)-5 b(ariable)46 b(name)f(m)m(ust)g
-(b)s(e)g(separated)g(from)g(the)1110 3871 y(comparison)25
+(b)s(e)g(separated)g(from)g(the)1110 3531 y(comparison)25
 b(op)s(erator)g(b)m(y)g(whitespace;)j(the)d(op)s(erator)g(ma)m(y)g(b)s
-(e)f(separated)1110 3981 y(from)33 b(the)h(v)-5 b(alue)35
+(e)f(separated)1110 3641 y(from)33 b(the)h(v)-5 b(alue)35
 b(on)f(the)g(righ)m(t)g(hand)f(side)h(b)m(y)f(whitespace.)52
-b(Both)35 b(string)1110 4091 y(and)i(b)s(o)s(olean)g(v)-5
+b(Both)35 b(string)1110 3750 y(and)i(b)s(o)s(olean)g(v)-5
 b(ariables)38 b(ma)m(y)h(b)s(e)d(tested.)63 b(Bo)s(olean)39
-b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 4200 y(tested)46
+b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 3860 y(tested)46
 b(against)g(the)f(v)-5 b(alues)46 b Fr(on)f Fu(and)f
 Fr(o\013)p Fu(.)85 b(The)45 b(follo)m(wing)h(example)g(is)1110
-4310 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Ft(mode=emacs)e
-Fu(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 4441 y
-Ft($if)47 b(editing-mode)d(==)k(emacs)1350 4551 y(set)f
-(show-mode-in-prompt)42 b(on)1350 4661 y($endif)150 4814
+3969 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Ft(mode=emacs)e
+Fu(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 4124 y
+Ft($if)47 b(editing-mode)d(==)k(emacs)1350 4234 y(set)f
+(show-mode-in-prompt)42 b(on)1350 4344 y($endif)150 4544
 y($endif)192 b Fu(This)29 b(command,)i(as)f(seen)h(in)f(the)g(previous)
 g(example,)h(terminates)g(an)g Ft($if)e Fu(command.)150
-4967 y Ft($else)240 b Fu(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
+4745 y Ft($else)240 b Fu(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
 (the)f Ft($if)g Fu(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
-(fails.)150 5121 y Ft($include)96 b Fu(This)43 b(directiv)m(e)i(tak)m
+(fails.)150 4945 y Ft($include)96 b Fu(This)43 b(directiv)m(e)i(tak)m
 (es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g
-(commands)630 5230 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
+(commands)630 5055 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
 b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
-(from)630 5340 y Ft(/etc/inputrc)p Fu(:)p eop end
+(from)630 5165 y Ft(/etc/inputrc)p Fu(:)870 5320 y Ft($include)46
+b(/etc/inputrc)p eop end
 %%Page: 136 142
 TeXDict begin 136 141 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(136)870 299 y Ft($include)46
-b(/etc/inputrc)150 498 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)150
-645 y Fu(Here)27 b(is)f(an)h(example)g(of)f(an)h Fr(inputrc)k
-Fu(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
-b(ariable)27 b(assignmen)m(t,)i(and)150 755 y(conditional)j(syn)m(tax.)
-p eop end
+b(Command)29 b(Line)i(Editing)2062 b(136)150 299 y Fk(8.3.3)63
+b(Sample)41 b(Init)g(File)150 446 y Fu(Here)27 b(is)f(an)h(example)g
+(of)f(an)h Fr(inputrc)k Fu(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)
+h(binding,)e(v)-5 b(ariable)27 b(assignmen)m(t,)i(and)150
+555 y(conditional)j(syn)m(tax.)p eop end
 %%Page: 137 143
 TeXDict begin 137 142 bop 150 -116 a Fu(Chapter)30 b(8:)41
 b(Command)29 b(Line)i(Editing)2062 b(137)390 408 y Ft(#)47
@@ -18848,663 +18906,673 @@ TeXDict begin 149 154 bop 150 -116 a Fu(Chapter)30 b(8:)41
 b(Command)29 b(Line)i(Editing)2062 b(149)150 299 y Ft
 (display-shell-version)25 b(\(C-x)k(C-v\))630 408 y Fu(Displa)m(y)j(v)m
 (ersion)e(information)h(ab)s(out)f(the)h(curren)m(t)f(instance)h(of)f
-(Bash.)150 566 y Ft(shell-expand-line)c(\(M-C-e\))630
-676 y Fu(Expand)j(the)h(line)g(b)m(y)g(p)s(erforming)f(shell)h(w)m(ord)
+(Bash.)150 589 y Ft(shell-expand-line)c(\(M-C-e\))630
+699 y Fu(Expand)j(the)h(line)g(b)m(y)g(p)s(erforming)f(shell)h(w)m(ord)
 g(expansions.)40 b(This)29 b(p)s(erforms)f(alias)k(and)630
-785 y(history)40 b(expansion,)j($')p Fr(string)8 b Fu(')41
+809 y(history)40 b(expansion,)j($')p Fr(string)8 b Fu(')41
 b(and)f($)p Ft(")p Fr(string)8 b Ft(")39 b Fu(quoting,)44
-b(tilde)d(expansion,)i(parame-)630 895 y(ter)g(and)f(v)-5
-b(ariable)44 b(expansion,)h(arithmetic)f(expansion,)i(w)m(ord)c
-(splitting,)47 b(and)42 b(quote)630 1004 y(remo)m(v)-5
-b(al.)150 1162 y Ft(history-expand-line)25 b(\(M-^\))630
-1272 y Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the)h(curren)m(t)f
-(line.)150 1429 y Ft(magic-space)d(\(\))630 1539 y Fu(P)m(erform)c
-(history)g(expansion)g(on)g(the)g(curren)m(t)g(line)g(and)g(insert)g(a)
-g(space)h(\(see)g(Section)g(9.3)630 1649 y([History)31
-b(In)m(teraction],)i(page)e(161\).)150 1806 y Ft(alias-expand-line)26
-b(\(\))630 1916 y Fu(P)m(erform)e(alias)i(expansion)e(on)h(the)g
-(curren)m(t)f(line)h(\(see)g(Section)h(6.6)f([Aliases],)j(page)d
-(103\).)150 2073 y Ft(history-and-alias-expand)o(-lin)o(e)f(\(\))630
-2183 y Fu(P)m(erform)30 b(history)h(and)e(alias)j(expansion)e(on)g(the)
-h(curren)m(t)f(line.)150 2341 y Ft(insert-last-argument)25
-b(\(M-.)k(or)h(M-_\))630 2450 y Fu(A)g(synon)m(ym)g(for)g
-Ft(yank-last-arg)p Fu(.)150 2608 y Ft(edit-and-execute-command)24
-b(\(C-x)29 b(C-e\))630 2718 y Fu(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)
+b(tilde)d(expansion,)i(parame-)630 918 y(ter)d(and)f(v)-5
+b(ariable)40 b(expansion,)i(arithmetic)f(expansion,)g(command)f(and)f
+(pro)s(ces)g(sub-)630 1028 y(stitution,)34 b(w)m(ord)f(splitting,)h
+(and)e(quote)i(remo)m(v)-5 b(al.)49 b(An)32 b(explicit)i(argumen)m(t)g
+(suppresses)630 1137 y(command)c(and)g(pro)s(cess)g(substitution.)150
+1318 y Ft(history-expand-line)25 b(\(M-^\))630 1428 y
+Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the)h(curren)m(t)f(line.)
+150 1609 y Ft(magic-space)d(\(\))630 1718 y Fu(P)m(erform)c(history)g
+(expansion)g(on)g(the)g(curren)m(t)g(line)g(and)g(insert)g(a)g(space)h
+(\(see)g(Section)g(9.3)630 1828 y([History)31 b(In)m(teraction],)i
+(page)e(161\).)150 2009 y Ft(alias-expand-line)26 b(\(\))630
+2118 y Fu(P)m(erform)e(alias)i(expansion)e(on)h(the)g(curren)m(t)f
+(line)h(\(see)g(Section)h(6.6)f([Aliases],)j(page)d(103\).)150
+2299 y Ft(history-and-alias-expand)o(-lin)o(e)f(\(\))630
+2409 y Fu(P)m(erform)30 b(history)h(and)e(alias)j(expansion)e(on)g(the)
+h(curren)m(t)f(line.)150 2590 y Ft(insert-last-argument)25
+b(\(M-.)k(or)h(M-_\))630 2699 y Fu(A)g(synon)m(ym)g(for)g
+Ft(yank-last-arg)p Fu(.)150 2880 y Ft(edit-and-execute-command)24
+b(\(C-x)29 b(C-e\))630 2990 y Fu(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)
 g(the)g(curren)m(t)f(command)h(line,)h(and)e(execute)i(the)f(result)g
-(as)g(shell)630 2827 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)
+(as)g(shell)630 3100 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)
 m(ok)m(e)h Ft($VISUAL)p Fu(,)f Ft($EDITOR)p Fu(,)h(and)d
-Ft(emacs)g Fu(as)h(the)630 2937 y(editor,)31 b(in)f(that)h(order.)150
-3176 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 3335
+Ft(emacs)g Fu(as)h(the)630 3209 y(editor,)31 b(in)f(that)h(order.)150
+3390 y Ft(execute-named-command)25 b(\(M-x\))630 3500
+y Fu(Read)j(a)g(bindable)f(readline)h(command)g(name)g(from)f(the)h
+(input)f(and)g(execute)j(the)e(func-)630 3609 y(tion)e(to)h(whic)m(h)f
+(it's)g(b)s(ound,)f(as)h(if)g(the)g(k)m(ey)h(sequence)f(to)h(whic)m(h)e
+(it)i(w)m(as)f(b)s(ound)e(app)s(eared)630 3719 y(in)37
+b(the)h(input.)61 b(If)37 b(this)h(function)f(is)g(supplied)g(with)g(a)
+h(n)m(umeric)f(argumen)m(t,)j(it)e(passes)630 3828 y(that)31
+b(argumen)m(t)g(to)g(the)f(function)h(it)f(executes.)150
+4101 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 4261
 y Fu(While)32 b(the)g(Readline)g(library)f(do)s(es)g(not)h(ha)m(v)m(e)h
 (a)f(full)f(set)h(of)g Ft(vi)f Fu(editing)h(functions,)f(it)h(do)s(es)g
-(con)m(tain)150 3445 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f
+(con)m(tain)150 4370 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f
 (the)g(line.)52 b(The)34 b(Readline)g Ft(vi)g Fu(mo)s(de)f(b)s(eha)m(v)
-m(es)i(as)f(sp)s(eci\014ed)f(in)150 3554 y(the)e Fm(posix)e
-Fu(standard.)275 3688 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv)
+m(es)i(as)f(sp)s(eci\014ed)f(in)150 4480 y(the)e Fm(posix)e
+Fu(standard.)275 4636 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv)
 m(ely)j(b)s(et)m(w)m(een)d Ft(emacs)f Fu(and)g Ft(vi)g
 Fu(editing)h(mo)s(des,)h(use)f(the)g(`)p Ft(set)30 b(-o)150
-3798 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p
+4746 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p
 Fu(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j
-(page)e(69\).)83 b(The)150 3907 y(Readline)31 b(default)g(is)f
-Ft(emacs)f Fu(mo)s(de.)275 4041 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
+(page)e(69\).)83 b(The)150 4855 y(Readline)31 b(default)g(is)f
+Ft(emacs)f Fu(mo)s(de.)275 5011 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
 (in)g Ft(vi)f Fu(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g
-(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 4150 y(had)f(t)m(yp)s
+(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 5121 y(had)f(t)m(yp)s
 (ed)g(an)g(`)p Ft(i)p Fu('.)41 b(Pressing)29 b Ft(ESC)f
 Fu(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h(where)e(y)m
-(ou)i(can)g(edit)g(the)150 4260 y(text)35 b(of)f(the)g(line)g(with)f
+(ou)i(can)g(edit)g(the)150 5230 y(text)35 b(of)f(the)g(line)g(with)f
 (the)h(standard)f Ft(vi)g Fu(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)
-f(to)f(previous)g(history)f(lines)h(with)150 4370 y(`)p
+f(to)f(previous)g(history)f(lines)h(with)150 5340 y(`)p
 Ft(k)p Fu(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
-Ft(j)p Fu(',)g(and)g(so)h(forth.)150 4609 y Fs(8.6)68
-b(Programmable)47 b(Completion)150 4768 y Fu(When)25
-b(w)m(ord)g(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)g
-(a)g(command)f(for)h(whic)m(h)f(a)h(completion)150 4878
-y(sp)s(eci\014cation)40 b(\(a)h Fr(compsp)s(ec)6 b Fu(\))39
+Ft(j)p Fu(',)g(and)g(so)h(forth.)p eop end
+%%Page: 150 156
+TeXDict begin 150 155 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(150)150 299 y Fs(8.6)68
+b(Programmable)47 b(Completion)150 458 y Fu(When)25 b(w)m(ord)g
+(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)g(a)g
+(command)f(for)h(whic)m(h)f(a)h(completion)150 568 y(sp)s
+(eci\014cation)40 b(\(a)h Fr(compsp)s(ec)6 b Fu(\))39
 b(has)h(b)s(een)f(de\014ned)f(using)h(the)h Ft(complete)d
-Fu(builtin)j(\(see)g(Section)h(8.7)150 4987 y([Programmable)h
+Fu(builtin)j(\(see)g(Section)h(8.7)150 677 y([Programmable)h
 (Completion)f(Builtins],)k(page)d(152\),)j(the)c(programmable)g
-(completion)i(facilities)150 5097 y(are)31 b(in)m(v)m(ok)m(ed.)275
-5230 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37
+(completion)i(facilities)150 787 y(are)31 b(in)m(v)m(ok)m(ed.)275
+925 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37
 b(If)21 b(a)g(compsp)s(ec)g(has)g(b)s(een)f(de\014ned)g(for)h(that)h
-(command,)150 5340 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i
+(command,)150 1034 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i
 (the)e(list)g(of)g(p)s(ossible)g(completions)h(for)e(the)h(w)m(ord.)81
-b(If)44 b(the)p eop end
-%%Page: 150 156
-TeXDict begin 150 155 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(150)150 299 y(command)36
-b(w)m(ord)g(is)g(the)g(empt)m(y)h(string)f(\(completion)i(attempted)f
-(at)g(the)g(b)s(eginning)e(of)h(an)h(empt)m(y)150 408
-y(line\),)30 b(an)m(y)g(compsp)s(ec)f(de\014ned)f(with)h(the)h
-Ft(-E)e Fu(option)i(to)g Ft(complete)d Fu(is)i(used.)40
-b(If)29 b(the)g(command)g(w)m(ord)150 518 y(is)e(a)h(full)e(pathname,)i
-(a)g(compsp)s(ec)e(for)h(the)g(full)g(pathname)g(is)g(searc)m(hed)h
-(for)f(\014rst.)39 b(If)26 b(no)h(compsp)s(ec)g(is)150
-628 y(found)22 b(for)g(the)h(full)g(pathname,)h(an)f(attempt)h(is)f
-(made)g(to)g(\014nd)f(a)h(compsp)s(ec)f(for)h(the)g(p)s(ortion)f(follo)
-m(wing)150 737 y(the)34 b(\014nal)g(slash.)53 b(If)34
-b(those)g(searc)m(hes)i(do)e(not)g(result)h(in)f(a)g(compsp)s(ec,)h(an)
-m(y)g(compsp)s(ec)f(de\014ned)f(with)150 847 y(the)k
-Ft(-D)g Fu(option)g(to)h Ft(complete)d Fu(is)i(used)g(as)g(the)g
-(default.)61 b(If)37 b(there)g(is)h(no)f(default)g(compsp)s(ec,)i(Bash)
-150 956 y(attempts)e(alias)h(expansion)e(on)g(the)h(command)f(w)m(ord)g
-(as)h(a)f(\014nal)g(resort,)j(and)c(attempts)j(to)f(\014nd)e(a)150
-1066 y(compsp)s(ec)30 b(for)g(the)h(command)f(w)m(ord)g(from)g(an)m(y)h
-(successful)f(expansion)275 1207 y(Once)k(a)g(compsp)s(ec)g(has)g(b)s
-(een)f(found,)h(it)h(is)f(used)f(to)i(generate)h(the)e(list)h(of)f
-(matc)m(hing)h(w)m(ords.)51 b(If)150 1316 y(a)37 b(compsp)s(ec)f(is)g
-(not)h(found,)f(the)h(default)f(Bash)h(completion)g(describ)s(ed)e(ab)s
-(o)m(v)m(e)j(\(see)f(Section)g(8.4.6)150 1426 y([Commands)30
-b(F)-8 b(or)31 b(Completion],)g(page)g(145\))h(is)f(p)s(erformed.)275
-1567 y(First,)g(the)g(actions)g(sp)s(eci\014ed)f(b)m(y)h(the)f(compsp)s
+b(If)44 b(the)150 1144 y(command)36 b(w)m(ord)g(is)g(the)g(empt)m(y)h
+(string)f(\(completion)i(attempted)f(at)g(the)g(b)s(eginning)e(of)h(an)
+h(empt)m(y)150 1254 y(line\),)30 b(an)m(y)g(compsp)s(ec)f(de\014ned)f
+(with)h(the)h Ft(-E)e Fu(option)i(to)g Ft(complete)d
+Fu(is)i(used.)40 b(If)29 b(the)g(command)g(w)m(ord)150
+1363 y(is)e(a)h(full)e(pathname,)i(a)g(compsp)s(ec)e(for)h(the)g(full)g
+(pathname)g(is)g(searc)m(hed)h(for)f(\014rst.)39 b(If)26
+b(no)h(compsp)s(ec)g(is)150 1473 y(found)22 b(for)g(the)h(full)g
+(pathname,)h(an)f(attempt)h(is)f(made)g(to)g(\014nd)f(a)h(compsp)s(ec)f
+(for)h(the)g(p)s(ortion)f(follo)m(wing)150 1582 y(the)34
+b(\014nal)g(slash.)53 b(If)34 b(those)g(searc)m(hes)i(do)e(not)g
+(result)h(in)f(a)g(compsp)s(ec,)h(an)m(y)g(compsp)s(ec)f(de\014ned)f
+(with)150 1692 y(the)k Ft(-D)g Fu(option)g(to)h Ft(complete)d
+Fu(is)i(used)g(as)g(the)g(default.)61 b(If)37 b(there)g(is)h(no)f
+(default)g(compsp)s(ec,)i(Bash)150 1802 y(attempts)e(alias)h(expansion)
+e(on)g(the)h(command)f(w)m(ord)g(as)h(a)f(\014nal)g(resort,)j(and)c
+(attempts)j(to)f(\014nd)e(a)150 1911 y(compsp)s(ec)30
+b(for)g(the)h(command)f(w)m(ord)g(from)g(an)m(y)h(successful)f
+(expansion)275 2049 y(Once)k(a)g(compsp)s(ec)g(has)g(b)s(een)f(found,)h
+(it)h(is)f(used)f(to)i(generate)h(the)e(list)h(of)f(matc)m(hing)h(w)m
+(ords.)51 b(If)150 2159 y(a)37 b(compsp)s(ec)f(is)g(not)h(found,)f(the)
+h(default)f(Bash)h(completion)g(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f
+(Section)g(8.4.6)150 2268 y([Commands)30 b(F)-8 b(or)31
+b(Completion],)g(page)g(145\))h(is)f(p)s(erformed.)275
+2406 y(First,)g(the)g(actions)g(sp)s(eci\014ed)f(b)m(y)h(the)f(compsp)s
 (ec)h(are)g(used.)40 b(Only)30 b(matc)m(hes)i(whic)m(h)e(are)h
-(pre\014xed)150 1677 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h
+(pre\014xed)150 2516 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h
 (are)g(returned.)44 b(When)31 b(the)h Ft(-f)f Fu(or)h
 Ft(-d)f Fu(option)h(is)f(used)g(for)h(\014lename)150
-1786 y(or)e(directory)h(name)f(completion,)i(the)e(shell)h(v)-5
+2625 y(or)e(directory)h(name)f(completion,)i(the)e(shell)h(v)-5
 b(ariable)31 b Ft(FIGNORE)d Fu(is)i(used)f(to)i(\014lter)g(the)f(matc)m
-(hes.)42 b(See)150 1896 y(Section)31 b(5.2)h([Bash)e(V)-8
+(hes.)42 b(See)150 2735 y(Section)31 b(5.2)h([Bash)e(V)-8
 b(ariables],)33 b(page)e(81,)g(for)f(a)h(description)g(of)f
-Ft(FIGNORE)p Fu(.)275 2037 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f
+Ft(FIGNORE)p Fu(.)275 2873 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f
 (b)m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g
-Ft(-G)e Fu(option)i(are)g(generated)150 2146 y(next.)41
+Ft(-G)e Fu(option)i(are)g(generated)150 2982 y(next.)41
 b(The)29 b(w)m(ords)g(generated)h(b)m(y)g(the)g(pattern)f(need)h(not)f
 (matc)m(h)i(the)f(w)m(ord)f(b)s(eing)g(completed.)41
-b(The)150 2256 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32
+b(The)150 3092 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32
 b(is)g(not)g(used)e(to)i(\014lter)g(the)g(matc)m(hes,)h(but)d(the)i
-Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 2365 y(is)30
-b(used.)275 2506 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the)
+Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 3201 y(is)30
+b(used.)275 3339 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the)
 g(argumen)m(t)h(to)g(the)f Ft(-W)f Fu(option)i(is)f(considered.)60
-b(The)37 b(string)150 2616 y(is)c(\014rst)e(split)i(using)f(the)h(c)m
+b(The)37 b(string)150 3449 y(is)c(\014rst)e(split)i(using)f(the)h(c)m
 (haracters)h(in)e(the)h Ft(IFS)e Fu(sp)s(ecial)j(v)-5
 b(ariable)33 b(as)g(delimiters.)48 b(Shell)32 b(quoting)h(is)150
-2725 y(honored)f(within)h(the)g(string,)h(in)f(order)f(to)i(pro)m(vide)
+3558 y(honored)f(within)h(the)g(string,)h(in)f(order)f(to)i(pro)m(vide)
 f(a)h(mec)m(hanism)f(for)g(the)g(w)m(ords)g(to)g(con)m(tain)i(shell)150
-2835 y(metac)m(haracters)e(or)e(c)m(haracters)i(in)e(the)g(v)-5
+3668 y(metac)m(haracters)e(or)e(c)m(haracters)i(in)e(the)g(v)-5
 b(alue)31 b(of)g Ft(IFS)p Fu(.)42 b(Eac)m(h)32 b(w)m(ord)e(is)h(then)g
-(expanded)f(using)h(brace)150 2945 y(expansion,)g(tilde)h(expansion,)f
+(expanded)f(using)h(brace)150 3778 y(expansion,)g(tilde)h(expansion,)f
 (parameter)g(and)g(v)-5 b(ariable)32 b(expansion,)f(command)f
-(substitution,)i(and)150 3054 y(arithmetic)c(expansion,)f(as)g(describ)
+(substitution,)i(and)150 3887 y(arithmetic)c(expansion,)f(as)g(describ)
 s(ed)e(ab)s(o)m(v)m(e)i(\(see)h(Section)f(3.5)g([Shell)g(Expansions],)g
-(page)g(24\).)40 b(The)150 3164 y(results)23 b(are)h(split)g(using)f
+(page)g(24\).)40 b(The)150 3997 y(results)23 b(are)h(split)g(using)f
 (the)h(rules)f(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)g(Section)f(3.5.7)
-h([W)-8 b(ord)24 b(Splitting],)i(page)e(36\).)150 3273
+h([W)-8 b(ord)24 b(Splitting],)i(page)e(36\).)150 4106
 y(The)j(results)h(of)f(the)h(expansion)g(are)g(pre\014x-matc)m(hed)g
 (against)h(the)f(w)m(ord)f(b)s(eing)g(completed,)j(and)d(the)150
-3383 y(matc)m(hing)k(w)m(ords)f(b)s(ecome)h(the)g(p)s(ossible)f
-(completions.)275 3524 y(After)f(these)g(matc)m(hes)i(ha)m(v)m(e)f(b)s
+4216 y(matc)m(hing)k(w)m(ords)f(b)s(ecome)h(the)g(p)s(ossible)f
+(completions.)275 4354 y(After)f(these)g(matc)m(hes)i(ha)m(v)m(e)f(b)s
 (een)f(generated,)h(an)m(y)g(shell)f(function)g(or)g(command)g(sp)s
-(eci\014ed)f(with)150 3634 y(the)36 b Ft(-F)f Fu(and)g
+(eci\014ed)f(with)150 4463 y(the)36 b Ft(-F)f Fu(and)g
 Ft(-C)g Fu(options)h(is)g(in)m(v)m(ok)m(ed.)59 b(When)35
 b(the)h(command)g(or)f(function)h(is)g(in)m(v)m(ok)m(ed,)i(the)e
-Ft(COMP_)150 3743 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p
+Ft(COMP_)150 4573 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p
 Fu(,)d Ft(COMP_KEY)p Fu(,)i(and)e Ft(COMP_TYPE)f Fu(v)-5
 b(ariables)41 b(are)f(assigned)g(v)-5 b(alues)41 b(as)f(describ)s(ed)
-150 3853 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8
+150 4682 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8
 b(ariables],)36 b(page)d(81\).)50 b(If)33 b(a)g(shell)g(function)g(is)g
-(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 3962 y Ft(COMP_WORDS)j
+(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 4792 y Ft(COMP_WORDS)j
 Fu(and)i Ft(COMP_CWORD)d Fu(v)-5 b(ariables)42 b(are)g(also)h(set.)74
-b(When)41 b(the)h(function)f(or)h(command)f(is)150 4072
+b(When)41 b(the)h(function)f(or)h(command)f(is)150 4902
 y(in)m(v)m(ok)m(ed,)c(the)e(\014rst)f(argumen)m(t)h(\($1\))h(is)e(the)h
 (name)g(of)f(the)h(command)f(whose)h(argumen)m(ts)f(are)h(b)s(eing)150
-4181 y(completed,)30 b(the)f(second)f(argumen)m(t)h(\($2\))h(is)f(the)g
+5011 y(completed,)30 b(the)f(second)f(argumen)m(t)h(\($2\))h(is)f(the)g
 (w)m(ord)f(b)s(eing)g(completed,)i(and)e(the)h(third)e(argumen)m(t)150
-4291 y(\($3\))40 b(is)f(the)f(w)m(ord)h(preceding)f(the)h(w)m(ord)f(b)s
+5121 y(\($3\))40 b(is)f(the)f(w)m(ord)h(preceding)f(the)h(w)m(ord)f(b)s
 (eing)g(completed)i(on)e(the)h(curren)m(t)f(command)h(line.)65
-b(No)150 4401 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g
+b(No)150 5230 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g
 (against)h(the)e(w)m(ord)g(b)s(eing)f(completed)i(is)g(p)s(erformed;)f
-(the)150 4510 y(function)d(or)g(command)h(has)f(complete)i(freedom)e
-(in)g(generating)h(the)g(matc)m(hes.)275 4651 y(An)m(y)j(function)h(sp)
-s(eci\014ed)f(with)g Ft(-F)g Fu(is)h(in)m(v)m(ok)m(ed)h(\014rst.)53
-b(The)35 b(function)f(ma)m(y)h(use)g(an)m(y)g(of)g(the)g(shell)150
-4761 y(facilities,)50 b(including)44 b(the)h Ft(compgen)d
-Fu(and)i Ft(compopt)e Fu(builtins)i(describ)s(ed)f(b)s(elo)m(w)h(\(see)
-i(Section)f(8.7)150 4870 y([Programmable)31 b(Completion)h(Builtins],)f
-(page)h(152\),)g(to)g(generate)g(the)f(matc)m(hes.)42
-b(It)31 b(m)m(ust)g(put)f(the)150 4980 y(p)s(ossible)g(completions)h
-(in)f(the)h Ft(COMPREPLY)d Fu(arra)m(y)j(v)-5 b(ariable,)31
-b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275 5121 y(Next,)26
-b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g(the)h Ft(-C)f
-Fu(option)h(is)f(in)m(v)m(ok)m(ed)i(in)e(an)g(en)m(vironmen)m(t)h
-(equiv)-5 b(alen)m(t)150 5230 y(to)26 b(command)e(substitution.)39
-b(It)25 b(should)f(prin)m(t)h(a)g(list)h(of)f(completions,)i(one)e(p)s
-(er)f(line,)j(to)f(the)f(standard)150 5340 y(output.)40
-b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h(escap)s(e)g(a)f
-(newline,)h(if)f(necessary)-8 b(.)p eop end
+(the)150 5340 y(function)d(or)g(command)h(has)f(complete)i(freedom)e
+(in)g(generating)h(the)g(matc)m(hes.)p eop end
 %%Page: 151 157
 TeXDict begin 151 156 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(151)275 299 y(After)24
+b(Command)29 b(Line)i(Editing)2062 b(151)275 299 y(An)m(y)34
+b(function)h(sp)s(eci\014ed)f(with)g Ft(-F)g Fu(is)h(in)m(v)m(ok)m(ed)h
+(\014rst.)53 b(The)35 b(function)f(ma)m(y)h(use)g(an)m(y)g(of)g(the)g
+(shell)150 408 y(facilities,)50 b(including)44 b(the)h
+Ft(compgen)d Fu(and)i Ft(compopt)e Fu(builtins)i(describ)s(ed)f(b)s
+(elo)m(w)h(\(see)i(Section)f(8.7)150 518 y([Programmable)31
+b(Completion)h(Builtins],)f(page)h(152\),)g(to)g(generate)g(the)f(matc)
+m(hes.)42 b(It)31 b(m)m(ust)g(put)f(the)150 628 y(p)s(ossible)g
+(completions)h(in)f(the)h Ft(COMPREPLY)d Fu(arra)m(y)j(v)-5
+b(ariable,)31 b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275
+778 y(Next,)26 b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g(the)h
+Ft(-C)f Fu(option)h(is)f(in)m(v)m(ok)m(ed)i(in)e(an)g(en)m(vironmen)m
+(t)h(equiv)-5 b(alen)m(t)150 888 y(to)26 b(command)e(substitution.)39
+b(It)25 b(should)f(prin)m(t)h(a)g(list)h(of)f(completions,)i(one)e(p)s
+(er)f(line,)j(to)f(the)f(standard)150 998 y(output.)40
+b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h(escap)s(e)g(a)f
+(newline,)h(if)f(necessary)-8 b(.)275 1148 y(After)24
 b(all)i(of)f(the)f(p)s(ossible)g(completions)i(are)f(generated,)i(an)m
 (y)e(\014lter)g(sp)s(eci\014ed)e(with)i(the)g Ft(-X)e
-Fu(option)150 408 y(is)34 b(applied)g(to)g(the)h(list.)52
+Fu(option)150 1258 y(is)34 b(applied)g(to)g(the)h(list.)52
 b(The)33 b(\014lter)h(is)g(a)h(pattern)f(as)g(used)f(for)h(pathname)g
-(expansion;)i(a)e(`)p Ft(&)p Fu(')g(in)g(the)150 518
+(expansion;)i(a)e(`)p Ft(&)p Fu(')g(in)g(the)150 1367
 y(pattern)28 b(is)f(replaced)h(with)g(the)f(text)i(of)f(the)f(w)m(ord)h
 (b)s(eing)f(completed.)40 b(A)28 b(literal)h(`)p Ft(&)p
-Fu(')f(ma)m(y)g(b)s(e)f(escap)s(ed)150 628 y(with)38
+Fu(')f(ma)m(y)g(b)s(e)f(escap)s(ed)150 1477 y(with)38
 b(a)h(bac)m(kslash;)k(the)38 b(bac)m(kslash)h(is)g(remo)m(v)m(ed)g(b)s
 (efore)f(attempting)h(a)g(matc)m(h.)65 b(An)m(y)39 b(completion)150
-737 y(that)32 b(matc)m(hes)g(the)g(pattern)g(will)f(b)s(e)g(remo)m(v)m
+1587 y(that)32 b(matc)m(hes)g(the)g(pattern)g(will)f(b)s(e)g(remo)m(v)m
 (ed)h(from)f(the)h(list.)44 b(A)32 b(leading)g(`)p Ft(!)p
-Fu(')f(negates)i(the)f(pattern;)150 847 y(in)d(this)g(case)h(an)m(y)g
+Fu(')f(negates)i(the)f(pattern;)150 1696 y(in)d(this)g(case)h(an)m(y)g
 (completion)h(not)e(matc)m(hing)h(the)g(pattern)f(will)h(b)s(e)e(remo)m
-(v)m(ed.)42 b(If)29 b(the)g Ft(nocasematch)150 956 y
+(v)m(ed.)42 b(If)29 b(the)g Ft(nocasematch)150 1806 y
 Fu(shell)k(option)f(\(see)i(the)e(description)g(of)h
 Ft(shopt)e Fu(in)h(Section)h(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g
-(73\))h(is)150 1066 y(enabled,)d(the)f(matc)m(h)h(is)g(p)s(erformed)e
+(73\))h(is)150 1915 y(enabled,)d(the)f(matc)m(h)h(is)g(p)s(erformed)e
 (without)h(regard)g(to)h(the)g(case)g(of)g(alphab)s(etic)g(c)m
-(haracters.)275 1203 y(Finally)-8 b(,)42 b(an)m(y)c(pre\014x)g(and)f
+(haracters.)275 2066 y(Finally)-8 b(,)42 b(an)m(y)c(pre\014x)g(and)f
 (su\016x)h(sp)s(eci\014ed)f(with)i(the)f Ft(-P)g Fu(and)g
-Ft(-S)f Fu(options)i(are)g(added)f(to)h(eac)m(h)150 1313
+Ft(-S)f Fu(options)i(are)g(added)f(to)h(eac)m(h)150 2176
 y(mem)m(b)s(er)31 b(of)g(the)h(completion)h(list,)f(and)f(the)h(result)
 f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de)150
-1422 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)275
-1559 y(If)d(the)h(previously-applied)f(actions)i(do)f(not)g(generate)h
+2285 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)275
+2436 y(If)d(the)h(previously-applied)f(actions)i(do)f(not)g(generate)h
 (an)m(y)f(matc)m(hes,)i(and)d(the)h Ft(-o)h(dirnames)d
-Fu(op-)150 1669 y(tion)j(w)m(as)f(supplied)f(to)i Ft(complete)d
+Fu(op-)150 2545 y(tion)j(w)m(as)f(supplied)f(to)i Ft(complete)d
 Fu(when)h(the)h(compsp)s(ec)g(w)m(as)g(de\014ned,)g(directory)g(name)h
-(completion)150 1778 y(is)h(attempted.)275 1915 y(If)35
+(completion)150 2655 y(is)h(attempted.)275 2806 y(If)35
 b(the)g Ft(-o)30 b(plusdirs)j Fu(option)j(w)m(as)g(supplied)e(to)i
 Ft(complete)e Fu(when)g(the)i(compsp)s(ec)f(w)m(as)h(de\014ned,)150
-2025 y(directory)g(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h
+2915 y(directory)g(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h
 (matc)m(hes)g(are)g(added)f(to)h(the)f(results)g(of)h(the)150
-2134 y(other)31 b(actions.)275 2271 y(By)g(default,)i(if)e(a)h(compsp)s
+3025 y(other)31 b(actions.)275 3176 y(By)g(default,)i(if)e(a)h(compsp)s
 (ec)f(is)h(found,)f(whatev)m(er)h(it)g(generates)h(is)e(returned)g(to)h
-(the)g(completion)150 2381 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g
+(the)g(completion)150 3285 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g
 (p)s(ossible)f(completions.)39 b(The)20 b(default)h(Bash)g(completions)
-h(are)g(not)f(attempted,)150 2491 y(and)30 b(the)g(Readline)h(default)f
+h(are)g(not)f(attempted,)150 3395 y(and)30 b(the)g(Readline)h(default)f
 (of)g(\014lename)h(completion)g(is)f(disabled.)41 b(If)29
-b(the)i Ft(-o)e(bashdefault)e Fu(option)150 2600 y(w)m(as)d(supplied)e
+b(the)i Ft(-o)e(bashdefault)e Fu(option)150 3504 y(w)m(as)d(supplied)e
 (to)j Ft(complete)c Fu(when)i(the)g(compsp)s(ec)h(w)m(as)g(de\014ned,)g
-(the)f(default)h(Bash)g(completions)h(are)150 2710 y(attempted)j(if)f
+(the)f(default)h(Bash)g(completions)h(are)150 3614 y(attempted)j(if)f
 (the)h(compsp)s(ec)f(generates)h(no)f(matc)m(hes.)41
 b(If)27 b(the)g Ft(-o)j(default)25 b Fu(option)j(w)m(as)f(supplied)f
-(to)150 2819 y Ft(complete)f Fu(when)h(the)h(compsp)s(ec)f(w)m(as)i
+(to)150 3724 y Ft(complete)f Fu(when)h(the)h(compsp)s(ec)f(w)m(as)i
 (de\014ned,)e(Readline's)i(default)f(completion)h(will)f(b)s(e)f(p)s
-(erformed)150 2929 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)
+(erformed)150 3833 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)
 g(the)g(default)f(Bash)h(completions\))h(generate)g(no)e(matc)m(hes.)
-275 3066 y(When)20 b(a)i(compsp)s(ec)e(indicates)i(that)g(directory)g
+275 3984 y(When)20 b(a)i(compsp)s(ec)e(indicates)i(that)g(directory)g
 (name)f(completion)h(is)f(desired,)i(the)e(programmable)150
-3176 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d
+4093 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d
 (a)i(slash)g(to)g(completed)h(names)e(whic)m(h)h(are)g(sym-)150
-3285 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5
+4203 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5
 b(ject)40 b(to)h(the)f(v)-5 b(alue)41 b(of)f(the)g Fr(mark-directories)
-45 b Fu(Readline)c(v)-5 b(ariable,)150 3395 y(regardless)31
+45 b Fu(Readline)c(v)-5 b(ariable,)150 4313 y(regardless)31
 b(of)f(the)h(setting)g(of)g(the)f Fr(mark-symlink)m(ed-directories)36
-b Fu(Readline)31 b(v)-5 b(ariable.)275 3532 y(There)25
+b Fu(Readline)31 b(v)-5 b(ariable.)275 4463 y(There)25
 b(is)i(some)g(supp)s(ort)e(for)h(dynamically)h(mo)s(difying)f
 (completions.)40 b(This)26 b(is)g(most)h(useful)f(when)150
-3641 y(used)40 b(in)h(com)m(bination)i(with)e(a)g(default)h(completion)
+4573 y(used)40 b(in)h(com)m(bination)i(with)e(a)g(default)h(completion)
 g(sp)s(eci\014ed)f(with)g Ft(-D)p Fu(.)72 b(It's)42 b(p)s(ossible)f
-(for)g(shell)150 3751 y(functions)28 b(executed)h(as)f(completion)i
+(for)g(shell)150 4682 y(functions)28 b(executed)h(as)f(completion)i
 (handlers)d(to)i(indicate)g(that)g(completion)g(should)e(b)s(e)h
-(retried)g(b)m(y)150 3861 y(returning)j(an)i(exit)g(status)f(of)h(124.)
+(retried)g(b)m(y)150 4792 y(returning)j(an)i(exit)g(status)f(of)h(124.)
 48 b(If)31 b(a)i(shell)f(function)g(returns)f(124,)k(and)c(c)m(hanges)j
-(the)e(compsp)s(ec)150 3970 y(asso)s(ciated)43 b(with)e(the)g(command)g
+(the)e(compsp)s(ec)150 4902 y(asso)s(ciated)43 b(with)e(the)g(command)g
 (on)g(whic)m(h)g(completion)i(is)e(b)s(eing)g(attempted)h(\(supplied)e
-(as)i(the)150 4080 y(\014rst)29 b(argumen)m(t)h(when)e(the)i(function)f
+(as)i(the)150 5011 y(\014rst)29 b(argumen)m(t)h(when)e(the)i(function)f
 (is)g(executed\),)j(programmable)d(completion)i(restarts)f(from)f(the)
-150 4189 y(b)s(eginning,)e(with)g(an)h(attempt)g(to)g(\014nd)e(a)i(new)
+150 5121 y(b)s(eginning,)e(with)g(an)h(attempt)g(to)g(\014nd)e(a)i(new)
 e(compsp)s(ec)i(for)f(that)h(command.)39 b(This)27 b(allo)m(ws)h(a)g
-(set)g(of)150 4299 y(completions)33 b(to)f(b)s(e)g(built)f(dynamically)
+(set)g(of)150 5230 y(completions)33 b(to)f(b)s(e)g(built)f(dynamically)
 i(as)f(completion)h(is)f(attempted,)h(rather)f(than)f(b)s(eing)g
-(loaded)150 4408 y(all)g(at)g(once.)275 4545 y(F)-8 b(or)38
-b(instance,)h(assuming)e(that)h(there)f(is)h(a)f(library)g(of)g(compsp)
-s(ecs,)i(eac)m(h)g(k)m(ept)e(in)g(a)h(\014le)f(corre-)150
-4655 y(sp)s(onding)g(to)j(the)f(name)f(of)h(the)g(command,)i(the)e
-(follo)m(wing)h(default)f(completion)h(function)e(w)m(ould)150
-4765 y(load)31 b(completions)g(dynamically:)390 4902
-y Ft(_completion_loader\(\))390 5011 y({)581 5121 y(.)47
-b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g
-(return)f(124)390 5230 y(})390 5340 y(complete)g(-D)h(-F)g
-(_completion_loader)c(-o)k(bashdefault)e(-o)i(default)p
-eop end
+(loaded)150 5340 y(all)g(at)g(once.)p eop end
 %%Page: 152 158
 TeXDict begin 152 157 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(152)150 299 y Fs(8.7)68
-b(Programmable)47 b(Completion)f(Builtins)150 458 y Fu(Three)21
-b(builtin)g(commands)f(are)i(a)m(v)-5 b(ailable)24 b(to)e(manipulate)f
-(the)h(programmable)f(completion)h(facilities:)150 568
-y(one)34 b(to)g(sp)s(ecify)f(ho)m(w)h(the)f(argumen)m(ts)h(to)g(a)g
-(particular)g(command)f(are)h(to)g(b)s(e)f(completed,)j(and)d(t)m(w)m
-(o)150 677 y(to)e(mo)s(dify)f(the)g(completion)i(as)e(it)h(is)g(happ)s
-(ening.)150 851 y Ft(compgen)870 990 y(compgen)46 b([-V)h
-Fj(varname)p Ft(])e([)p Fj(option)p Ft(])h([)p Fj(word)p
-Ft(])630 1129 y Fu(Generate)27 b(p)s(ossible)e(completion)i(matc)m(hes)
-g(for)e Fr(w)m(ord)k Fu(according)e(to)f(the)g Fr(option)p
-Fu(s,)h(whic)m(h)630 1239 y(ma)m(y)g(b)s(e)f(an)m(y)i(option)f
-(accepted)h(b)m(y)e(the)h Ft(complete)e Fu(builtin)h(with)h(the)g
-(exceptions)g(of)g Ft(-p)p Fu(,)630 1348 y Ft(-r)p Fu(,)j
-Ft(-D)p Fu(,)g Ft(-E)p Fu(,)g(and)g Ft(-I)p Fu(,)g(and)g(write)g(the)h
-(matc)m(hes)g(to)g(the)g(standard)e(output.)630 1487
-y(If)f(the)i Ft(-V)e Fu(option)h(is)g(supplied,)f Ft(compgen)f
-Fu(stores)j(the)f(generated)h(completions)g(in)m(to)g(the)630
-1597 y(indexed)24 b(arra)m(y)g(v)-5 b(ariable)25 b Fr(v)-5
-b(arname)29 b Fu(instead)24 b(of)h(writing)f(them)g(to)h(the)f
-(standard)f(output.)630 1736 y(When)38 b(using)g(the)h
-Ft(-F)e Fu(or)i Ft(-C)f Fu(options,)j(the)d(v)-5 b(arious)39
-b(shell)f(v)-5 b(ariables)39 b(set)g(b)m(y)g(the)f(pro-)630
-1846 y(grammable)31 b(completion)h(facilities,)g(while)f(a)m(v)-5
-b(ailable,)33 b(will)d(not)h(ha)m(v)m(e)h(useful)d(v)-5
-b(alues.)630 1985 y(The)34 b(matc)m(hes)h(will)g(b)s(e)f(generated)h
-(in)f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h(programmable)f(com-)630
-2094 y(pletion)d(co)s(de)g(had)f(generated)i(them)e(directly)i(from)e
-(a)h(completion)h(sp)s(eci\014cation)f(with)630 2204
-y(the)e(same)h(\015ags.)40 b(If)29 b Fr(w)m(ord)j Fu(is)d(sp)s
-(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g
-Fr(w)m(ord)j Fu(will)630 2313 y(b)s(e)d(displa)m(y)m(ed.)630
-2453 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in)
+b(Command)29 b(Line)i(Editing)2062 b(152)275 299 y(F)-8
+b(or)38 b(instance,)h(assuming)e(that)h(there)f(is)h(a)f(library)g(of)g
+(compsp)s(ecs,)i(eac)m(h)g(k)m(ept)e(in)g(a)h(\014le)f(corre-)150
+408 y(sp)s(onding)g(to)j(the)f(name)f(of)h(the)g(command,)i(the)e
+(follo)m(wing)h(default)f(completion)h(function)e(w)m(ould)150
+518 y(load)31 b(completions)g(dynamically:)390 657 y
+Ft(_completion_loader\(\))390 767 y({)581 877 y(.)47
+b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g
+(return)f(124)390 986 y(})390 1096 y(complete)g(-D)h(-F)g
+(_completion_loader)c(-o)k(bashdefault)e(-o)i(default)150
+1344 y Fs(8.7)68 b(Programmable)47 b(Completion)f(Builtins)150
+1503 y Fu(Three)21 b(builtin)g(commands)f(are)i(a)m(v)-5
+b(ailable)24 b(to)e(manipulate)f(the)h(programmable)f(completion)h
+(facilities:)150 1613 y(one)34 b(to)g(sp)s(ecify)f(ho)m(w)h(the)f
+(argumen)m(ts)h(to)g(a)g(particular)g(command)f(are)h(to)g(b)s(e)f
+(completed,)j(and)d(t)m(w)m(o)150 1722 y(to)e(mo)s(dify)f(the)g
+(completion)i(as)e(it)h(is)g(happ)s(ening.)150 1889 y
+Ft(compgen)870 2026 y(compgen)46 b([-V)h Fj(varname)p
+Ft(])e([)p Fj(option)p Ft(])h([)p Fj(word)p Ft(])630
+2163 y Fu(Generate)27 b(p)s(ossible)e(completion)i(matc)m(hes)g(for)e
+Fr(w)m(ord)k Fu(according)e(to)f(the)g Fr(option)p Fu(s,)h(whic)m(h)630
+2272 y(ma)m(y)g(b)s(e)f(an)m(y)i(option)f(accepted)h(b)m(y)e(the)h
+Ft(complete)e Fu(builtin)h(with)h(the)g(exceptions)g(of)g
+Ft(-p)p Fu(,)630 2382 y Ft(-r)p Fu(,)j Ft(-D)p Fu(,)g
+Ft(-E)p Fu(,)g(and)g Ft(-I)p Fu(,)g(and)g(write)g(the)h(matc)m(hes)g
+(to)g(the)g(standard)e(output.)630 2519 y(If)f(the)i
+Ft(-V)e Fu(option)h(is)g(supplied,)f Ft(compgen)f Fu(stores)j(the)f
+(generated)h(completions)g(in)m(to)g(the)630 2628 y(indexed)24
+b(arra)m(y)g(v)-5 b(ariable)25 b Fr(v)-5 b(arname)29
+b Fu(instead)24 b(of)h(writing)f(them)g(to)h(the)f(standard)f(output.)
+630 2765 y(When)38 b(using)g(the)h Ft(-F)e Fu(or)i Ft(-C)f
+Fu(options,)j(the)d(v)-5 b(arious)39 b(shell)f(v)-5 b(ariables)39
+b(set)g(b)m(y)g(the)f(pro-)630 2875 y(grammable)31 b(completion)h
+(facilities,)g(while)f(a)m(v)-5 b(ailable,)33 b(will)d(not)h(ha)m(v)m
+(e)h(useful)d(v)-5 b(alues.)630 3012 y(The)34 b(matc)m(hes)h(will)g(b)s
+(e)f(generated)h(in)f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h
+(programmable)f(com-)630 3121 y(pletion)d(co)s(de)g(had)f(generated)i
+(them)e(directly)i(from)e(a)h(completion)h(sp)s(eci\014cation)f(with)
+630 3231 y(the)e(same)h(\015ags.)40 b(If)29 b Fr(w)m(ord)j
+Fu(is)d(sp)s(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g
+Fr(w)m(ord)j Fu(will)630 3340 y(b)s(e)d(displa)m(y)m(ed.)630
+3477 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in)
 m(v)-5 b(alid)25 b(option)g(is)g(supplied,)f(or)h(no)g(matc)m(hes)g(w)m
-(ere)630 2562 y(generated.)150 2731 y Ft(complete)870
-2870 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p
-Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])870 2980 y([-G)g
+(ere)630 3587 y(generated.)150 3751 y Ft(complete)870
+3888 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p
+Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])870 3998 y([-G)g
 Fj(globpat)p Ft(])e([-W)i Fj(wordlist)p Ft(])f([-F)h
-Fj(function)p Ft(])e([-C)i Fj(command)p Ft(])870 3089
+Fj(function)p Ft(])e([-C)i Fj(command)p Ft(])870 4107
 y([-X)g Fj(filterpat)p Ft(])e([-P)i Fj(prefix)p Ft(])f([-S)h
 Fj(suffix)p Ft(])e Fj(name)i Ft([)p Fj(name)f Ft(...])870
-3199 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f Ft(...)o(])630
-3338 y Fu(Sp)s(ecify)37 b(ho)m(w)h(argumen)m(ts)f(to)i(eac)m(h)g
-Fr(name)j Fu(should)37 b(b)s(e)g(completed.)63 b(If)38
-b(the)f Ft(-p)g Fu(option)630 3447 y(is)30 b(supplied,)e(or)i(if)g(no)f
-(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s
-(eci\014cations)g(are)630 3557 y(prin)m(ted)24 b(in)h(a)g(w)m(a)m(y)g
-(that)h(allo)m(ws)g(them)e(to)i(b)s(e)e(reused)f(as)i(input.)38
-b(The)24 b Ft(-r)g Fu(option)i(remo)m(v)m(es)630 3667
-y(a)i(completion)h(sp)s(eci\014cation)f(for)g(eac)m(h)h
-Fr(name)p Fu(,)f(or,)h(if)e(no)h Fr(name)5 b Fu(s)27
-b(are)h(supplied,)g(all)g(com-)630 3776 y(pletion)i(sp)s
-(eci\014cations.)42 b(The)29 b Ft(-D)g Fu(option)h(indicates)h(that)f
-(other)g(supplied)e(options)j(and)630 3886 y(actions)c(should)e(apply)g
-(to)i(the)f(\\default")h(command)e(completion;)k(that)e(is,)g
-(completion)630 3995 y(attempted)g(on)f(a)h(command)f(for)g(whic)m(h)g
-(no)g(completion)i(has)d(previously)h(b)s(een)g(de\014ned.)630
-4105 y(The)e Ft(-E)g Fu(option)h(indicates)g(that)g(other)g(supplied)e
-(options)h(and)g(actions)i(should)d(apply)h(to)630 4215
-y(\\empt)m(y")33 b(command)e(completion;)i(that)f(is,)g(completion)h
-(attempted)f(on)g(a)f(blank)g(line.)630 4324 y(The)24
-b Ft(-I)g Fu(option)h(indicates)g(that)g(other)g(supplied)e(options)h
-(and)g(actions)i(should)d(apply)h(to)630 4434 y(completion)29
-b(on)g(the)f(initial)h(non-assignmen)m(t)g(w)m(ord)f(on)g(the)g(line,)i
-(or)e(after)h(a)f(command)630 4543 y(delimiter)41 b(suc)m(h)g(as)f(`)p
-Ft(;)p Fu(')h(or)g(`)p Ft(|)p Fu(',)i(whic)m(h)e(is)f(usually)h
-(command)f(name)h(completion.)72 b(If)630 4653 y(m)m(ultiple)26
-b(options)g(are)g(supplied,)g(the)f Ft(-D)g Fu(option)h(tak)m(es)i
-(precedence)e(o)m(v)m(er)g Ft(-E)p Fu(,)h(and)e(b)s(oth)630
-4762 y(tak)m(e)34 b(precedence)f(o)m(v)m(er)h Ft(-I)p
-Fu(.)47 b(If)32 b(an)m(y)h(of)g Ft(-D)p Fu(,)g Ft(-E)p
-Fu(,)f(or)h Ft(-I)f Fu(are)h(supplied,)f(an)m(y)h(other)g
-Fr(name)630 4872 y Fu(argumen)m(ts)k(are)g(ignored;)j(these)d
-(completions)h(only)e(apply)g(to)i(the)f(case)g(sp)s(eci\014ed)f(b)m(y)
-630 4982 y(the)31 b(option.)630 5121 y(The)e(pro)s(cess)g(of)h
-(applying)g(these)g(completion)g(sp)s(eci\014cations)h(when)d(w)m(ord)i
-(completion)630 5230 y(is)35 b(attempted)h(is)f(describ)s(ed)f(ab)s(o)m
-(v)m(e)j(\(see)f(Section)g(8.6)g([Programmable)g(Completion],)630
-5340 y(page)31 b(149\).)p eop end
+4217 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f Ft(...)o(])630
+4354 y Fu(Sp)s(ecify)30 b(ho)m(w)h(argumen)m(ts)h(to)g(eac)m(h)g
+Fr(name)k Fu(should)30 b(b)s(e)g(completed.)44 b(If)31
+b(the)g Ft(-p)f Fu(option)i(is)630 4463 y(supplied,)e(or)g(if)h(no)f
+(options)h(or)g Fr(name)5 b Fu(s)30 b(are)h(supplied,)f(existing)i
+(completion)f(sp)s(eci\014ca-)630 4573 y(tions)24 b(are)f(prin)m(ted)g
+(in)g(a)h(w)m(a)m(y)g(that)g(allo)m(ws)g(them)f(to)h(b)s(e)f(reused)f
+(as)i(input.)37 b(The)23 b Ft(-r)f Fu(option)630 4682
+y(remo)m(v)m(es)29 b(a)f(completion)h(sp)s(eci\014cation)f(for)g(eac)m
+(h)g Fr(name)p Fu(,)h(or,)f(if)g(no)f Fr(name)5 b Fu(s)28
+b(are)g(supplied,)630 4792 y(all)35 b(completion)g(sp)s
+(eci\014cations.)53 b(The)34 b Ft(-D)f Fu(option)i(indicates)g(that)g
+(other)f(supplied)f(op-)630 4902 y(tions)g(and)e(actions)j(should)d
+(apply)h(to)h(the)g(\\default")g(command)f(completion;)j(that)e(is,)630
+5011 y(completion)j(attempted)g(on)e(a)h(command)g(for)f(whic)m(h)g(no)
+h(completion)h(has)e(previously)630 5121 y(b)s(een)d(de\014ned.)43
+b(The)31 b Ft(-E)g Fu(option)g(indicates)i(that)f(other)g(supplied)e
+(options)i(and)f(actions)630 5230 y(should)f(apply)i(to)g(\\empt)m(y")g
+(command)g(completion;)h(that)f(is,)g(completion)h(attempted)630
+5340 y(on)24 b(a)g(blank)f(line.)39 b(The)23 b Ft(-I)h
+Fu(option)g(indicates)h(that)f(other)g(supplied)e(options)j(and)e
+(actions)p eop end
 %%Page: 153 159
 TeXDict begin 153 158 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(153)630 299 y(Other)28
-b(options,)i(if)f(sp)s(eci\014ed,)g(ha)m(v)m(e)h(the)f(follo)m(wing)i
-(meanings.)40 b(The)29 b(argumen)m(ts)g(to)h(the)630
-408 y Ft(-G)p Fu(,)41 b Ft(-W)p Fu(,)h(and)c Ft(-X)h
-Fu(options)h(\(and,)h(if)f(necessary)-8 b(,)42 b(the)e
-Ft(-P)f Fu(and)f Ft(-S)h Fu(options\))h(should)f(b)s(e)630
-518 y(quoted)28 b(to)h(protect)g(them)f(from)f(expansion)h(b)s(efore)g
-(the)g Ft(complete)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed.)630
-671 y Ft(-o)i Fj(comp-option)1110 781 y Fu(The)c Fr(comp-option)i
+b(Command)29 b(Line)i(Editing)2062 b(153)630 299 y(should)32
+b(apply)g(to)i(completion)g(on)e(the)h(initial)i(non-assignmen)m(t)e(w)
+m(ord)f(on)h(the)g(line,)h(or)630 408 y(after)f(a)g(command)g
+(delimiter)h(suc)m(h)e(as)h(`)p Ft(;)p Fu(')g(or)g(`)p
+Ft(|)p Fu(',)g(whic)m(h)g(is)g(usually)f(command)h(name)630
+518 y(completion.)64 b(If)38 b(m)m(ultiple)g(options)g(are)g(supplied,)
+h(the)f Ft(-D)f Fu(option)h(tak)m(es)h(precedence)630
+628 y(o)m(v)m(er)29 b Ft(-E)p Fu(,)f(and)f(b)s(oth)g(tak)m(e)i
+(precedence)f(o)m(v)m(er)h Ft(-I)p Fu(.)39 b(If)27 b(an)m(y)h(of)g
+Ft(-D)p Fu(,)g Ft(-E)p Fu(,)f(or)h Ft(-I)f Fu(are)h(supplied,)630
+737 y(an)m(y)39 b(other)h Fr(name)k Fu(argumen)m(ts)39
+b(are)h(ignored;)j(these)d(completions)g(only)f(apply)g(to)h(the)630
+847 y(case)31 b(sp)s(eci\014ed)f(b)m(y)g(the)h(option.)630
+981 y(The)e(pro)s(cess)g(of)h(applying)g(these)g(completion)g(sp)s
+(eci\014cations)h(when)d(w)m(ord)i(completion)630 1091
+y(is)35 b(attempted)h(is)f(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)f
+(Section)g(8.6)g([Programmable)g(Completion],)630 1200
+y(page)31 b(150\).)630 1335 y(Other)d(options,)i(if)f(sp)s(eci\014ed,)g
+(ha)m(v)m(e)h(the)f(follo)m(wing)i(meanings.)40 b(The)29
+b(argumen)m(ts)g(to)h(the)630 1445 y Ft(-G)p Fu(,)41
+b Ft(-W)p Fu(,)h(and)c Ft(-X)h Fu(options)h(\(and,)h(if)f(necessary)-8
+b(,)42 b(the)e Ft(-P)f Fu(and)f Ft(-S)h Fu(options\))h(should)f(b)s(e)
+630 1554 y(quoted)28 b(to)h(protect)g(them)f(from)f(expansion)h(b)s
+(efore)g(the)g Ft(complete)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed.)630
+1714 y Ft(-o)i Fj(comp-option)1110 1823 y Fu(The)c Fr(comp-option)i
 Fu(con)m(trols)g(sev)m(eral)h(asp)s(ects)e(of)g(the)g(compsp)s(ec's)g
-(b)s(eha)m(v-)1110 891 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h
+(b)s(eha)m(v-)1110 1933 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h
 (generation)h(of)e(completions.)41 b Fr(comp-option)27
-b Fu(ma)m(y)1110 1000 y(b)s(e)j(one)g(of:)1110 1154 y
-Ft(bashdefault)1590 1263 y Fu(P)m(erform)d(the)h(rest)f(of)h(the)g
-(default)f(Bash)h(completions)g(if)g(the)1590 1373 y(compsp)s(ec)i
-(generates)i(no)e(matc)m(hes.)1110 1526 y Ft(default)144
+b Fu(ma)m(y)1110 2042 y(b)s(e)j(one)g(of:)1110 2202 y
+Ft(bashdefault)1590 2311 y Fu(P)m(erform)d(the)h(rest)f(of)h(the)g
+(default)f(Bash)h(completions)g(if)g(the)1590 2421 y(compsp)s(ec)i
+(generates)i(no)e(matc)m(hes.)1110 2580 y Ft(default)144
 b Fu(Use)22 b(Readline's)g(default)g(\014lename)g(completion)g(if)g
-(the)g(comp-)1590 1636 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
-1789 y Ft(dirnames)96 b Fu(P)m(erform)46 b(directory)g(name)h
-(completion)g(if)f(the)g(compsp)s(ec)1590 1899 y(generates)32
-b(no)e(matc)m(hes.)1110 2052 y Ft(filenames)1590 2162
+(the)g(comp-)1590 2690 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
+2849 y Ft(dirnames)96 b Fu(P)m(erform)46 b(directory)g(name)h
+(completion)g(if)f(the)g(compsp)s(ec)1590 2959 y(generates)32
+b(no)e(matc)m(hes.)1110 3118 y Ft(filenames)1590 3228
 y Fu(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f(generates)j
-(\014lenames,)1590 2271 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h
+(\014lenames,)1590 3337 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h
 (\014lename-sp)s(eci\014c)h(pro)s(cessing)e(\(lik)m(e)1590
-2381 y(adding)22 b(a)g(slash)g(to)h(directory)f(names,)i(quoting)f(sp)s
-(ecial)f(c)m(har-)1590 2491 y(acters,)39 b(or)d(suppressing)f(trailing)
-i(spaces\).)59 b(This)35 b(option)i(is)1590 2600 y(in)m(tended)30
+3447 y(adding)22 b(a)g(slash)g(to)h(directory)f(names,)i(quoting)f(sp)s
+(ecial)f(c)m(har-)1590 3557 y(acters,)39 b(or)d(suppressing)f(trailing)
+i(spaces\).)59 b(This)35 b(option)i(is)1590 3666 y(in)m(tended)30
 b(to)g(b)s(e)g(used)f(with)g(shell)i(functions)e(sp)s(eci\014ed)g(with)
-1590 2710 y Ft(-F)p Fu(.)1110 2863 y Ft(fullquote)1590
-2973 y Fu(T)-8 b(ell)32 b(Readline)g(to)g(quote)f(all)h(the)g
-(completed)g(w)m(ords)e(ev)m(en)i(if)1590 3082 y(they)f(are)f(not)h
-(\014lenames.)1110 3236 y Ft(noquote)144 b Fu(T)-8 b(ell)28
+1590 3776 y Ft(-F)p Fu(.)1110 3935 y Ft(fullquote)1590
+4045 y Fu(T)-8 b(ell)32 b(Readline)g(to)g(quote)f(all)h(the)g
+(completed)g(w)m(ords)e(ev)m(en)i(if)1590 4154 y(they)f(are)f(not)h
+(\014lenames.)1110 4314 y Ft(noquote)144 b Fu(T)-8 b(ell)28
 b(Readline)g(not)g(to)g(quote)g(the)g(completed)g(w)m(ords)f(if)h(they)
-1590 3345 y(are)j(\014lenames)f(\(quoting)h(\014lenames)g(is)f(the)h
-(default\).)1110 3499 y Ft(nosort)192 b Fu(T)-8 b(ell)23
+1590 4423 y(are)j(\014lenames)f(\(quoting)h(\014lenames)g(is)f(the)h
+(default\).)1110 4583 y Ft(nosort)192 b Fu(T)-8 b(ell)23
 b(Readline)g(not)f(to)h(sort)g(the)f(list)h(of)f(p)s(ossible)g
-(completions)1590 3608 y(alphab)s(etically)-8 b(.)1110
-3762 y Ft(nospace)144 b Fu(T)-8 b(ell)40 b(Readline)g(not)g(to)g(app)s
-(end)d(a)j(space)g(\(the)f(default\))h(to)1590 3871 y(w)m(ords)30
+(completions)1590 4692 y(alphab)s(etically)-8 b(.)1110
+4852 y Ft(nospace)144 b Fu(T)-8 b(ell)40 b(Readline)g(not)g(to)g(app)s
+(end)d(a)j(space)g(\(the)f(default\))h(to)1590 4961 y(w)m(ords)30
 b(completed)h(at)g(the)g(end)f(of)g(the)h(line.)1110
-4025 y Ft(plusdirs)96 b Fu(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d
-(b)m(y)i(the)g(compsp)s(ec)g(are)g(gener-)1590 4134 y(ated,)g
+5121 y Ft(plusdirs)96 b Fu(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d
+(b)m(y)i(the)g(compsp)s(ec)g(are)g(gener-)1590 5230 y(ated,)g
 (directory)f(name)g(completion)i(is)d(attempted)i(and)f(an)m(y)1590
-4244 y(matc)m(hes)j(are)e(added)g(to)h(the)g(results)f(of)g(the)h
-(other)g(actions.)630 4398 y Ft(-A)f Fj(action)66 b Fu(The)25
-b Fr(action)h Fu(ma)m(y)g(b)s(e)e(one)h(of)h(the)f(follo)m(wing)i(to)e
-(generate)i(a)e(list)h(of)f(p)s(ossible)1110 4507 y(completions:)1110
-4661 y Ft(alias)240 b Fu(Alias)31 b(names.)41 b(Ma)m(y)31
-b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i Ft(-a)p Fu(.)1110
-4814 y Ft(arrayvar)96 b Fu(Arra)m(y)31 b(v)-5 b(ariable)31
-b(names.)1110 4967 y Ft(binding)144 b Fu(Readline)30
-b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h([Bindable)1590
-5077 y(Readline)h(Commands],)f(page)h(139\).)1110 5230
-y Ft(builtin)144 b Fu(Names)21 b(of)g(shell)f(builtin)h(commands.)37
-b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 5340
-y(as)31 b Ft(-b)p Fu(.)p eop end
+5340 y(matc)m(hes)j(are)e(added)g(to)h(the)g(results)f(of)g(the)h
+(other)g(actions.)p eop end
 %%Page: 154 160
 TeXDict begin 154 159 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(154)1110 299 y Ft(command)144
-b Fu(Command)29 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s
-(eci\014ed)f(as)i Ft(-c)p Fu(.)1110 461 y Ft(directory)1590
-570 y Fu(Directory)h(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s
-(eci\014ed)g(as)g Ft(-d)p Fu(.)1110 732 y Ft(disabled)96
-b Fu(Names)31 b(of)g(disabled)f(shell)g(builtins.)1110
-894 y Ft(enabled)144 b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.)
-1110 1056 y Ft(export)192 b Fu(Names)34 b(of)f(exp)s(orted)f(shell)h(v)
--5 b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590
-1165 y(\014ed)d(as)g Ft(-e)p Fu(.)1110 1327 y Ft(file)288
+b(Command)29 b(Line)i(Editing)2062 b(154)630 299 y Ft(-A)30
+b Fj(action)66 b Fu(The)25 b Fr(action)h Fu(ma)m(y)g(b)s(e)e(one)h(of)h
+(the)f(follo)m(wing)i(to)e(generate)i(a)e(list)h(of)f(p)s(ossible)1110
+408 y(completions:)1110 570 y Ft(alias)240 b Fu(Alias)31
+b(names.)41 b(Ma)m(y)31 b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i
+Ft(-a)p Fu(.)1110 732 y Ft(arrayvar)96 b Fu(Arra)m(y)31
+b(v)-5 b(ariable)31 b(names.)1110 894 y Ft(binding)144
+b Fu(Readline)30 b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h
+([Bindable)1590 1004 y(Readline)h(Commands],)f(page)h(139\).)1110
+1166 y Ft(builtin)144 b Fu(Names)21 b(of)g(shell)f(builtin)h(commands.)
+37 b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 1276
+y(as)31 b Ft(-b)p Fu(.)1110 1438 y Ft(command)144 b Fu(Command)29
+b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i
+Ft(-c)p Fu(.)1110 1600 y Ft(directory)1590 1709 y Fu(Directory)h
+(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)g
+Ft(-d)p Fu(.)1110 1871 y Ft(disabled)96 b Fu(Names)31
+b(of)g(disabled)f(shell)g(builtins.)1110 2033 y Ft(enabled)144
+b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.)1110
+2195 y Ft(export)192 b Fu(Names)34 b(of)f(exp)s(orted)f(shell)h(v)-5
+b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590
+2305 y(\014ed)d(as)g Ft(-e)p Fu(.)1110 2467 y Ft(file)288
 b Fu(File)32 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
-(as)i Ft(-f)p Fu(.)1110 1489 y Ft(function)96 b Fu(Names)31
-b(of)g(shell)f(functions.)1110 1650 y Ft(group)240 b
+(as)i Ft(-f)p Fu(.)1110 2629 y Ft(function)96 b Fu(Names)31
+b(of)g(shell)f(functions.)1110 2791 y Ft(group)240 b
 Fu(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g
-(as)g Ft(-g)p Fu(.)1110 1812 y Ft(helptopic)1590 1922
+(as)g Ft(-g)p Fu(.)1110 2953 y Ft(helptopic)1590 3062
 y Fu(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
-Ft(help)f Fu(builtin)g(\(see)h(Sec-)1590 2031 y(tion)31
-b(4.2)g([Bash)g(Builtins],)g(page)g(57\).)1110 2193 y
+Ft(help)f Fu(builtin)g(\(see)h(Sec-)1590 3172 y(tion)31
+b(4.2)g([Bash)g(Builtins],)g(page)g(57\).)1110 3334 y
 Ft(hostname)96 b Fu(Hostnames,)89 b(as)76 b(tak)m(en)h(from)f(the)g
-(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 2303 y(the)55 b
+(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 3444 y(the)55 b
 Ft(HOSTFILE)e Fu(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
-([Bash)1590 2412 y(V)-8 b(ariables],)32 b(page)f(81\).)1110
-2574 y Ft(job)336 b Fu(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f
+([Bash)1590 3553 y(V)-8 b(ariables],)32 b(page)f(81\).)1110
+3715 y Ft(job)336 b Fu(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f
 (activ)m(e.)46 b(Ma)m(y)33 b(also)g(b)s(e)e(sp)s(eci-)1590
-2684 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 2846 y Ft(keyword)144
+3825 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 3987 y Ft(keyword)144
 b Fu(Shell)30 b(reserv)m(ed)h(w)m(ords.)40 b(Ma)m(y)32
 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i Ft(-k)p Fu(.)1110
-3007 y Ft(running)144 b Fu(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f
-(con)m(trol)h(is)g(activ)m(e.)1110 3169 y Ft(service)144
+4149 y Ft(running)144 b Fu(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f
+(con)m(trol)h(is)g(activ)m(e.)1110 4311 y Ft(service)144
 b Fu(Service)31 b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s
-(eci\014ed)g(as)g Ft(-s)p Fu(.)1110 3331 y Ft(setopt)192
+(eci\014ed)g(as)g Ft(-s)p Fu(.)1110 4473 y Ft(setopt)192
 b Fu(V)-8 b(alid)39 b(argumen)m(ts)g(for)f(the)h Ft(-o)e
-Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)1590 3440
+Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)1590 4582
 y(\(see)31 b(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(69\).)
-1110 3602 y Ft(shopt)240 b Fu(Shell)40 b(option)g(names)g(as)g
+1110 4744 y Ft(shopt)240 b Fu(Shell)40 b(option)g(names)g(as)g
 (accepted)i(b)m(y)e(the)g Ft(shopt)e Fu(builtin)1590
-3712 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(57\).)
-1110 3874 y Ft(signal)192 b Fu(Signal)31 b(names.)1110
-4035 y Ft(stopped)144 b Fu(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g
-(job)g(con)m(trol)i(is)f(activ)m(e.)1110 4197 y Ft(user)288
+4854 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(57\).)
+1110 5016 y Ft(signal)192 b Fu(Signal)31 b(names.)1110
+5178 y Ft(stopped)144 b Fu(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g
+(job)g(con)m(trol)i(is)f(activ)m(e.)1110 5340 y Ft(user)288
 b Fu(User)30 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
-(as)i Ft(-u)p Fu(.)1110 4359 y Ft(variable)96 b Fu(Names)36
-b(of)g(all)g(shell)g(v)-5 b(ariables.)56 b(Ma)m(y)37
-b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590 4468 y Ft(-v)p
-Fu(.)630 4630 y Ft(-C)30 b Fj(command)1110 4740 y Fr(command)35
-b Fu(is)e(executed)g(in)e(a)i(subshell)e(en)m(vironmen)m(t,)i(and)f
-(its)g(output)g(is)1110 4849 y(used)38 b(as)h(the)g(p)s(ossible)f
-(completions.)67 b(Argumen)m(ts)39 b(are)g(passed)f(as)h(with)1110
-4959 y(the)31 b Ft(-F)e Fu(option.)630 5121 y Ft(-F)h
-Fj(function)1110 5230 y Fu(The)39 b(shell)g(function)g
-Fr(function)g Fu(is)g(executed)h(in)f(the)g(curren)m(t)g(shell)g(en)m
-(vi-)1110 5340 y(ronmen)m(t.)72 b(When)41 b(it)g(is)g(executed,)k($1)c
-(is)g(the)g(name)g(of)g(the)g(command)p eop end
+(as)i Ft(-u)p Fu(.)p eop end
 %%Page: 155 161
 TeXDict begin 155 160 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(155)1110 299 y(whose)34
-b(argumen)m(ts)h(are)g(b)s(eing)f(completed,)j($2)e(is)f(the)h(w)m(ord)
-f(b)s(eing)g(com-)1110 408 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m
-(ord)g(preceding)f(the)h(w)m(ord)f(b)s(eing)h(completed,)1110
-518 y(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(\(see)g(Section)f(8.6)h
-([Programmable)g(Completion],)1110 628 y(page)30 b(149\).)42
-b(When)29 b(it)h(\014nishes,)e(the)h(p)s(ossible)g(completions)h(are)g
-(retriev)m(ed)1110 737 y(from)g(the)g(v)-5 b(alue)31
-b(of)g(the)f Ft(COMPREPLY)e Fu(arra)m(y)j(v)-5 b(ariable.)630
-898 y Ft(-G)30 b Fj(globpat)1110 1008 y Fu(The)39 b(\014lename)h
-(expansion)g(pattern)g Fr(globpat)j Fu(is)d(expanded)f(to)h(generate)
-1110 1118 y(the)31 b(p)s(ossible)e(completions.)630 1279
-y Ft(-P)h Fj(prefix)66 b Fr(pre\014x)39 b Fu(is)34 b(added)f(at)i(the)f
-(b)s(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110
-1388 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630
-1549 y Ft(-S)g Fj(suffix)66 b Fr(su\016x)26 b Fu(is)20
+b(Command)29 b(Line)i(Editing)2062 b(155)1110 299 y Ft(variable)96
+b Fu(Names)36 b(of)g(all)g(shell)g(v)-5 b(ariables.)56
+b(Ma)m(y)37 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590
+408 y Ft(-v)p Fu(.)630 573 y Ft(-C)30 b Fj(command)1110
+682 y Fr(command)35 b Fu(is)e(executed)g(in)e(a)i(subshell)e(en)m
+(vironmen)m(t,)i(and)f(its)g(output)g(is)1110 792 y(used)38
+b(as)h(the)g(p)s(ossible)f(completions.)67 b(Argumen)m(ts)39
+b(are)g(passed)f(as)h(with)1110 902 y(the)31 b Ft(-F)e
+Fu(option.)630 1066 y Ft(-F)h Fj(function)1110 1176 y
+Fu(The)39 b(shell)g(function)g Fr(function)g Fu(is)g(executed)h(in)f
+(the)g(curren)m(t)g(shell)g(en)m(vi-)1110 1285 y(ronmen)m(t.)72
+b(When)41 b(it)g(is)g(executed,)k($1)c(is)g(the)g(name)g(of)g(the)g
+(command)1110 1395 y(whose)34 b(argumen)m(ts)h(are)g(b)s(eing)f
+(completed,)j($2)e(is)f(the)h(w)m(ord)f(b)s(eing)g(com-)1110
+1504 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m(ord)g(preceding)f(the)h
+(w)m(ord)f(b)s(eing)h(completed,)1110 1614 y(as)g(describ)s(ed)f(ab)s
+(o)m(v)m(e)i(\(see)g(Section)f(8.6)h([Programmable)g(Completion],)1110
+1724 y(page)30 b(150\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s
+(ossible)g(completions)h(are)g(retriev)m(ed)1110 1833
+y(from)g(the)g(v)-5 b(alue)31 b(of)g(the)f Ft(COMPREPLY)e
+Fu(arra)m(y)j(v)-5 b(ariable.)630 1998 y Ft(-G)30 b Fj(globpat)1110
+2107 y Fu(The)39 b(\014lename)h(expansion)g(pattern)g
+Fr(globpat)j Fu(is)d(expanded)f(to)h(generate)1110 2217
+y(the)31 b(p)s(ossible)e(completions.)630 2381 y Ft(-P)h
+Fj(prefix)66 b Fr(pre\014x)39 b Fu(is)34 b(added)f(at)i(the)f(b)s
+(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110
+2491 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630
+2655 y Ft(-S)g Fj(suffix)66 b Fr(su\016x)26 b Fu(is)20
 b(app)s(ended)f(to)i(eac)m(h)h(p)s(ossible)e(completion)i(after)f(all)g
-(other)g(options)1110 1659 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
-1820 y Ft(-W)h Fj(wordlist)1110 1930 y Fu(The)24 b Fr(w)m(ordlist)k
+(other)g(options)1110 2765 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
+2929 y Ft(-W)h Fj(wordlist)1110 3039 y Fu(The)24 b Fr(w)m(ordlist)k
 Fu(is)d(split)g(using)f(the)h(c)m(haracters)i(in)d(the)i
-Ft(IFS)e Fu(sp)s(ecial)h(v)-5 b(ariable)1110 2039 y(as)36
+Ft(IFS)e Fu(sp)s(ecial)h(v)-5 b(ariable)1110 3148 y(as)36
 b(delimiters,)i(and)e(eac)m(h)h(resultan)m(t)g(w)m(ord)e(is)h
-(expanded.)57 b(The)35 b(p)s(ossible)1110 2149 y(completions)c(are)e
+(expanded.)57 b(The)35 b(p)s(ossible)1110 3258 y(completions)c(are)e
 (the)h(mem)m(b)s(ers)f(of)g(the)h(resultan)m(t)g(list)g(whic)m(h)f
-(matc)m(h)i(the)1110 2259 y(w)m(ord)f(b)s(eing)g(completed.)630
-2420 y Ft(-X)g Fj(filterpat)1110 2529 y Fr(\014lterpat)d
+(matc)m(h)i(the)1110 3367 y(w)m(ord)f(b)s(eing)g(completed.)630
+3532 y Ft(-X)g Fj(filterpat)1110 3641 y Fr(\014lterpat)d
 Fu(is)e(a)g(pattern)g(as)f(used)g(for)h(\014lename)g(expansion.)38
-b(It)25 b(is)g(applied)f(to)1110 2639 y(the)30 b(list)f(of)h(p)s
+b(It)25 b(is)g(applied)f(to)1110 3751 y(the)30 b(list)f(of)h(p)s
 (ossible)f(completions)h(generated)h(b)m(y)e(the)g(preceding)h(options)
-1110 2749 y(and)d(argumen)m(ts,)i(and)e(eac)m(h)i(completion)g(matc)m
-(hing)g Fr(\014lterpat)h Fu(is)e(remo)m(v)m(ed)1110 2858
+1110 3861 y(and)d(argumen)m(ts,)i(and)e(eac)m(h)i(completion)g(matc)m
+(hing)g Fr(\014lterpat)h Fu(is)e(remo)m(v)m(ed)1110 3970
 y(from)i(the)h(list.)42 b(A)30 b(leading)i(`)p Ft(!)p
 Fu(')e(in)g Fr(\014lterpat)j Fu(negates)f(the)f(pattern;)g(in)f(this)
-1110 2968 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g
-Fr(\014lterpat)i Fu(is)d(remo)m(v)m(ed.)630 3129 y(The)35
+1110 4080 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g
+Fr(\014lterpat)i Fu(is)d(remo)m(v)m(ed.)630 4244 y(The)35
 b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h(an)f(in)m(v)-5
 b(alid)37 b(option)f(is)g(supplied,)g(an)g(option)h(other)630
-3238 y(than)29 b Ft(-p)p Fu(,)g Ft(-r)p Fu(,)h Ft(-D)p
+4354 y(than)29 b Ft(-p)p Fu(,)g Ft(-r)p Fu(,)h Ft(-D)p
 Fu(,)f Ft(-E)p Fu(,)g(or)h Ft(-I)e Fu(is)i(supplied)e(without)h(a)h
 Fr(name)35 b Fu(argumen)m(t,)30 b(an)f(attempt)i(is)630
-3348 y(made)24 b(to)g(remo)m(v)m(e)i(a)e(completion)h(sp)s
+4463 y(made)24 b(to)g(remo)m(v)m(e)i(a)e(completion)h(sp)s
 (eci\014cation)g(for)e(a)h Fr(name)29 b Fu(for)24 b(whic)m(h)f(no)h(sp)
-s(eci\014cation)630 3458 y(exists,)31 b(or)g(an)f(error)g(o)s(ccurs)g
-(adding)g(a)h(completion)g(sp)s(eci\014cation.)150 3619
-y Ft(compopt)870 3754 y(compopt)46 b([-o)h Fj(option)p
+s(eci\014cation)630 4573 y(exists,)31 b(or)g(an)f(error)g(o)s(ccurs)g
+(adding)g(a)h(completion)g(sp)s(eci\014cation.)150 4737
+y Ft(compopt)870 4874 y(compopt)46 b([-o)h Fj(option)p
 Ft(])f([-DEI])g([+o)h Fj(option)p Ft(])e([)p Fj(name)p
-Ft(])630 3890 y Fu(Mo)s(dify)33 b(completion)h(options)g(for)f(eac)m(h)
+Ft(])630 5011 y Fu(Mo)s(dify)33 b(completion)h(options)g(for)f(eac)m(h)
 h Fr(name)39 b Fu(according)34 b(to)g(the)f Fr(option)p
-Fu(s,)i(or)e(for)g(the)630 3999 y(curren)m(tly-executing)46
+Fu(s,)i(or)e(for)g(the)630 5121 y(curren)m(tly-executing)46
 b(completion)f(if)f(no)f Fr(name)5 b Fu(s)44 b(are)h(supplied.)80
-b(If)43 b(no)h Fr(option)p Fu(s)h(are)630 4109 y(giv)m(en,)30
+b(If)43 b(no)h Fr(option)p Fu(s)h(are)630 5230 y(giv)m(en,)30
 b(displa)m(y)e(the)g(completion)h(options)g(for)e(eac)m(h)i
 Fr(name)34 b Fu(or)27 b(the)i(curren)m(t)e(completion.)630
-4218 y(The)f(p)s(ossible)g(v)-5 b(alues)27 b(of)f Fr(option)h
+5340 y(The)f(p)s(ossible)g(v)-5 b(alues)27 b(of)f Fr(option)h
 Fu(are)g(those)g(v)-5 b(alid)26 b(for)g(the)h Ft(complete)d
-Fu(builtin)i(describ)s(ed)630 4328 y(ab)s(o)m(v)m(e.)41
+Fu(builtin)i(describ)s(ed)p eop end
+%%Page: 156 162
+TeXDict begin 156 161 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(156)630 299 y(ab)s(o)m(v)m(e.)41
 b(The)27 b Ft(-D)f Fu(option)i(indicates)g(that)g(other)f(supplied)f
-(options)i(should)e(apply)h(to)h(the)630 4437 y(\\default")33
+(options)i(should)e(apply)h(to)h(the)630 408 y(\\default")33
 b(command)f(completion;)i(that)f(is,)g(completion)g(attempted)g(on)f(a)
-g(command)630 4547 y(for)g(whic)m(h)g(no)g(completion)i(has)e
+g(command)630 518 y(for)g(whic)m(h)g(no)g(completion)i(has)e
 (previously)g(b)s(een)g(de\014ned.)45 b(The)32 b Ft(-E)f
-Fu(option)i(indicates)630 4657 y(that)23 b(other)f(supplied)e(options)j
+Fu(option)i(indicates)630 628 y(that)23 b(other)f(supplied)e(options)j
 (should)e(apply)g(to)i(\\empt)m(y")g(command)f(completion;)k(that)630
-4766 y(is,)36 b(completion)g(attempted)g(on)e(a)h(blank)g(line.)54
+737 y(is,)36 b(completion)g(attempted)g(on)e(a)h(blank)g(line.)54
 b(The)34 b Ft(-I)g Fu(option)h(indicates)g(that)h(other)630
-4876 y(supplied)23 b(options)i(should)f(apply)g(to)i(completion)g(on)e
-(the)h(initial)h(non-assignmen)m(t)f(w)m(ord)630 4985
+847 y(supplied)23 b(options)i(should)f(apply)g(to)i(completion)g(on)e
+(the)h(initial)h(non-assignmen)m(t)f(w)m(ord)630 956
 y(on)37 b(the)f(line,)j(or)e(after)g(a)g(command)f(delimiter)i(suc)m(h)
 e(as)h(`)p Ft(;)p Fu(')g(or)f(`)p Ft(|)p Fu(',)j(whic)m(h)e(is)f
-(usually)630 5095 y(command)30 b(name)h(completion.)630
-5230 y(If)k(m)m(ultiple)i(options)f(are)g(supplied,)g(the)g
+(usually)630 1066 y(command)30 b(name)h(completion.)630
+1200 y(If)k(m)m(ultiple)i(options)f(are)g(supplied,)g(the)g
 Ft(-D)g Fu(option)g(tak)m(es)h(precedence)g(o)m(v)m(er)g
-Ft(-E)p Fu(,)g(and)630 5340 y(b)s(oth)30 b(tak)m(e)i(precedence)e(o)m
-(v)m(er)i Ft(-I)p eop end
-%%Page: 156 162
-TeXDict begin 156 161 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(156)630 299 y(The)23
-b(return)g(v)-5 b(alue)25 b(is)f(true)g(unless)f(an)h(in)m(v)-5
-b(alid)24 b(option)h(is)f(supplied,)g(an)g(attempt)h(is)f(made)630
-408 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h Fr(name)k
-Fu(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f(exists,)
-630 518 y(or)e(an)h(output)f(error)g(o)s(ccurs.)150 772
-y Fs(8.8)68 b(A)44 b(Programmable)j(Completion)f(Example)150
-931 y Fu(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h(additional)
-g(completion)g(functionalit)m(y)h(b)s(ey)m(ond)d(the)i(default)150
-1041 y(actions)29 b Ft(complete)d Fu(and)i Ft(compgen)e
-Fu(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g(and)g(bind)e(it)
-j(to)g(a)g(particular)150 1151 y(command)h(using)g Ft(complete)e(-F)p
-Fu(.)275 1294 y(The)j(follo)m(wing)j(function)e(pro)m(vides)g
-(completions)i(for)e(the)g Ft(cd)g Fu(builtin.)46 b(It)32
-b(is)h(a)f(reasonably)h(go)s(o)s(d)150 1403 y(example)41
+Ft(-E)p Fu(,)g(and)630 1310 y(b)s(oth)30 b(tak)m(e)i(precedence)e(o)m
+(v)m(er)i Ft(-I)630 1444 y Fu(The)23 b(return)g(v)-5
+b(alue)25 b(is)f(true)g(unless)f(an)h(in)m(v)-5 b(alid)24
+b(option)h(is)f(supplied,)g(an)g(attempt)h(is)f(made)630
+1554 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h
+Fr(name)k Fu(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f
+(exists,)630 1663 y(or)e(an)h(output)f(error)g(o)s(ccurs.)150
+1904 y Fs(8.8)68 b(A)44 b(Programmable)j(Completion)f(Example)150
+2063 y Fu(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h
+(additional)g(completion)g(functionalit)m(y)h(b)s(ey)m(ond)d(the)i
+(default)150 2173 y(actions)29 b Ft(complete)d Fu(and)i
+Ft(compgen)e Fu(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g
+(and)g(bind)e(it)j(to)g(a)g(particular)150 2282 y(command)h(using)g
+Ft(complete)e(-F)p Fu(.)275 2417 y(The)j(follo)m(wing)j(function)e(pro)
+m(vides)g(completions)i(for)e(the)g Ft(cd)g Fu(builtin.)46
+b(It)32 b(is)h(a)f(reasonably)h(go)s(o)s(d)150 2526 y(example)41
 b(of)g(what)f(shell)h(functions)f(m)m(ust)g(do)h(when)e(used)h(for)g
-(completion.)73 b(This)39 b(function)h(uses)150 1513
+(completion.)73 b(This)39 b(function)h(uses)150 2636
 y(the)32 b(w)m(ord)f(passed)g(as)h Ft($2)f Fu(to)h(determine)g(the)f
 (directory)h(name)g(to)g(complete.)46 b(Y)-8 b(ou)32
-b(can)g(also)g(use)g(the)150 1623 y Ft(COMP_WORDS)c Fu(arra)m(y)i(v)-5
+b(can)g(also)g(use)g(the)150 2745 y Ft(COMP_WORDS)c Fu(arra)m(y)i(v)-5
 b(ariable;)32 b(the)e(curren)m(t)h(w)m(ord)f(is)g(indexed)g(b)m(y)g
-(the)h Ft(COMP_CWORD)c Fu(v)-5 b(ariable.)275 1766 y(The)42
+(the)h Ft(COMP_CWORD)c Fu(v)-5 b(ariable.)275 2880 y(The)42
 b(function)h(relies)h(on)e(the)i Ft(complete)c Fu(and)j
 Ft(compgen)e Fu(builtins)h(to)i(do)f(m)m(uc)m(h)g(of)g(the)h(w)m(ork,)
-150 1875 y(adding)25 b(only)h(the)g(things)g(that)g(the)g(Bash)g
+150 2989 y(adding)25 b(only)h(the)g(things)g(that)g(the)g(Bash)g
 Ft(cd)f Fu(do)s(es)g(b)s(ey)m(ond)g(accepting)j(basic)e(directory)g
-(names:)38 b(tilde)150 1985 y(expansion)22 b(\(see)h(Section)g(3.5.2)g
+(names:)38 b(tilde)150 3099 y(expansion)22 b(\(see)h(Section)g(3.5.2)g
 ([Tilde)g(Expansion],)g(page)g(25\),)i(searc)m(hing)e(directories)g(in)
-e Fr($CDP)-8 b(A)g(TH)p Fu(,)150 2095 y(whic)m(h)21 b(is)h(describ)s
+e Fr($CDP)-8 b(A)g(TH)p Fu(,)150 3208 y(whic)m(h)21 b(is)h(describ)s
 (ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f
 (Builtins],)j(page)e(49\),)j(and)c(basic)h(supp)s(ort)150
-2204 y(for)31 b(the)h Ft(cdable_vars)d Fu(shell)i(option)h(\(see)h
+3318 y(for)31 b(the)h Ft(cdable_vars)d Fu(shell)i(option)h(\(see)h
 (Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)f(73\).)46
-b Ft(_comp_)150 2314 y(cd)30 b Fu(mo)s(di\014es)g(the)h(v)-5
+b Ft(_comp_)150 3428 y(cd)30 b Fu(mo)s(di\014es)g(the)h(v)-5
 b(alue)31 b(of)g Fr(IFS)36 b Fu(so)31 b(that)g(it)g(con)m(tains)h(only)
 f(a)g(newline)g(to)h(accommo)s(date)g(\014le)f(names)150
-2423 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Ft(compgen)e
+3537 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Ft(compgen)e
 Fu(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
-(p)s(er)150 2533 y(line.)275 2676 y(P)m(ossible)24 b(completions)h(go)g
+(p)s(er)150 3647 y(line.)275 3781 y(P)m(ossible)24 b(completions)h(go)g
 (in)m(to)g(the)f Fr(COMPREPL)-8 b(Y)36 b Fu(arra)m(y)24
 b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c(arra)m(y)150
-2786 y(elemen)m(t.)42 b(The)30 b(programmable)g(completion)i(system)e
+3891 y(elemen)m(t.)42 b(The)30 b(programmable)g(completion)i(system)e
 (retriev)m(es)h(the)g(completions)g(from)f(there)g(when)150
-2895 y(the)h(function)f(returns.)390 3039 y Ft(#)47 b(A)h(completion)d
-(function)g(for)i(the)g(cd)g(builtin)390 3148 y(#)g(based)g(on)g(the)g
+4000 y(the)h(function)f(returns.)390 4134 y Ft(#)47 b(A)h(completion)d
+(function)g(for)i(the)g(cd)g(builtin)390 4244 y(#)g(based)g(on)g(the)g
 (cd)g(completion)e(function)h(from)g(the)h(bash_completion)d(package)
-390 3258 y(_comp_cd\(\))390 3367 y({)581 3477 y(local)i(IFS=$')g
-(\\t\\n')190 b(#)47 b(normalize)f(IFS)581 3587 y(local)g(cur)h
-(_skipdot)f(_cdpath)581 3696 y(local)g(i)i(j)f(k)581
-3915 y(#)g(Tilde)g(expansion,)e(which)h(also)h(expands)f(tilde)g(to)h
-(full)g(pathname)581 4025 y(case)g("$2")f(in)581 4134
-y(\\~*\))190 b(eval)46 b(cur="$2")g(;;)581 4244 y(*\))286
-b(cur=$2)46 b(;;)581 4354 y(esac)581 4573 y(#)h(no)h(cdpath)e(or)h
-(absolute)e(pathname)h(--)h(straight)f(directory)f(completion)581
-4682 y(if)i([[)g(-z)g("${CDPATH:-}")e(]])i(||)g([[)g("$cur")f(==)h
-(@\(./*|../*|/*\))d(]];)j(then)772 4792 y(#)g(compgen)f(prints)g(paths)
-h(one)f(per)h(line;)g(could)f(also)h(use)g(while)f(loop)772
-4902 y(IFS=$'\\n')772 5011 y(COMPREPLY=\()f($\(compgen)g(-d)i(--)g
-("$cur"\))f(\))772 5121 y(IFS=$')g(\\t\\n')581 5230 y(#)h
-(CDPATH+directories)c(in)k(the)g(current)f(directory)f(if)j(not)e(in)i
-(CDPATH)581 5340 y(else)p eop end
+390 4354 y(_comp_cd\(\))390 4463 y({)581 4573 y(local)i(IFS=$')g
+(\\t\\n')190 b(#)47 b(normalize)f(IFS)581 4682 y(local)g(cur)h
+(_skipdot)f(_cdpath)581 4792 y(local)g(i)i(j)f(k)581
+5011 y(#)g(Tilde)g(expansion,)e(which)h(also)h(expands)f(tilde)g(to)h
+(full)g(pathname)581 5121 y(case)g("$2")f(in)581 5230
+y(\\~*\))190 b(eval)46 b(cur="$2")g(;;)581 5340 y(*\))286
+b(cur=$2)46 b(;;)p eop end
 %%Page: 157 163
 TeXDict begin 157 162 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(157)772 299 y Ft(IFS=$'\\n')772
-408 y(_skipdot=false)772 518 y(#)47 b(preprocess)e(CDPATH)h(to)i
-(convert)d(null)i(directory)e(names)i(to)g(.)772 628
-y(_cdpath=${CDPATH/#:/.:})772 737 y(_cdpath=${_cdpath//::/:.)o(:})772
-847 y(_cdpath=${_cdpath/\045:/:.})772 956 y(for)g(i)g(in)g
-(${_cdpath//:/$'\\n'};)c(do)963 1066 y(if)k([[)g($i)g(-ef)g(.)h(]];)f
-(then)f(_skipdot=true;)e(fi)963 1176 y(k="${#COMPREPLY[@]}")963
-1285 y(for)j(j)g(in)g($\()g(compgen)f(-d)h(--)h("$i/$cur")d(\);)i(do)
-1154 1395 y(COMPREPLY[k++]=${j#$i/})375 b(#)48 b(cut)f(off)f(directory)
-963 1504 y(done)772 1614 y(done)772 1724 y($_skipdot)f(||)i
+b(Command)29 b(Line)i(Editing)2062 b(157)581 299 y Ft(esac)581
+518 y(#)47 b(no)h(cdpath)e(or)h(absolute)e(pathname)h(--)h(straight)f
+(directory)f(completion)581 628 y(if)i([[)g(-z)g("${CDPATH:-}")e(]])i
+(||)g([[)g("$cur")f(==)h(@\(./*|../*|/*\))d(]];)j(then)772
+737 y(#)g(compgen)f(prints)g(paths)h(one)f(per)h(line;)g(could)f(also)h
+(use)g(while)f(loop)772 847 y(IFS=$'\\n')772 956 y(COMPREPLY=\()f
+($\(compgen)g(-d)i(--)g("$cur"\))f(\))772 1066 y(IFS=$')g(\\t\\n')581
+1176 y(#)h(CDPATH+directories)c(in)k(the)g(current)f(directory)f(if)j
+(not)e(in)i(CDPATH)581 1285 y(else)772 1395 y(IFS=$'\\n')772
+1504 y(_skipdot=false)772 1614 y(#)f(preprocess)e(CDPATH)h(to)i
+(convert)d(null)i(directory)e(names)i(to)g(.)772 1724
+y(_cdpath=${CDPATH/#:/.:})772 1833 y(_cdpath=${_cdpath//::/:.)o(:})772
+1943 y(_cdpath=${_cdpath/\045:/:.})772 2052 y(for)g(i)g(in)g
+(${_cdpath//:/$'\\n'};)c(do)963 2162 y(if)k([[)g($i)g(-ef)g(.)h(]];)f
+(then)f(_skipdot=true;)e(fi)963 2271 y(k="${#COMPREPLY[@]}")963
+2381 y(for)j(j)g(in)g($\()g(compgen)f(-d)h(--)h("$i/$cur")d(\);)i(do)
+1154 2491 y(COMPREPLY[k++]=${j#$i/})375 b(#)48 b(cut)f(off)f(directory)
+963 2600 y(done)772 2710 y(done)772 2819 y($_skipdot)f(||)i
 (COMPREPLY+=\()e($\(compgen)g(-d)i(--)g("$cur"\))f(\))772
-1833 y(IFS=$')g(\\t\\n')581 1943 y(fi)581 2162 y(#)h(variable)f(names)g
+2929 y(IFS=$')g(\\t\\n')581 3039 y(fi)581 3258 y(#)h(variable)f(names)g
 (if)h(appropriate)e(shell)i(option)f(set)h(and)f(no)i(completions)581
-2271 y(if)f(shopt)f(-q)i(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c
-(-eq)k(0)g(]];)g(then)772 2381 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g
-("$cur"\))f(\))581 2491 y(fi)581 2710 y(return)g(0)390
-2819 y(})275 2973 y Fu(W)-8 b(e)31 b(install)g(the)g(completion)h
+3367 y(if)f(shopt)f(-q)i(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c
+(-eq)k(0)g(]];)g(then)772 3477 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g
+("$cur"\))f(\))581 3587 y(fi)581 3806 y(return)g(0)390
+3915 y(})275 4061 y Fu(W)-8 b(e)31 b(install)g(the)g(completion)h
 (function)e(using)f(the)i Ft(-F)f Fu(option)h(to)g Ft(complete)p
-Fu(:)390 3126 y Ft(#)47 b(Tell)g(readline)f(to)h(quote)f(appropriate)f
-(and)i(append)f(slashes)g(to)h(directories;)390 3236
+Fu(:)390 4208 y Ft(#)47 b(Tell)g(readline)f(to)h(quote)f(appropriate)f
+(and)i(append)f(slashes)g(to)h(directories;)390 4317
 y(#)g(use)g(the)g(bash)g(default)f(completion)f(for)i(other)f
-(arguments)390 3345 y(complete)g(-o)h(filenames)e(-o)i(nospace)f(-o)h
-(bashdefault)e(-F)i(_comp_cd)f(cd)150 3499 y Fu(Since)33
+(arguments)390 4427 y(complete)g(-o)h(filenames)e(-o)i(nospace)f(-o)h
+(bashdefault)e(-F)i(_comp_cd)f(cd)150 4573 y Fu(Since)33
 b(w)m(e'd)g(lik)m(e)i(Bash)e(and)f(Readline)i(to)g(tak)m(e)g(care)g(of)
 f(some)h(of)f(the)g(other)h(details)g(for)e(us,)i(w)m(e)f(use)150
-3608 y(sev)m(eral)43 b(other)g(options)f(to)h(tell)g(Bash)f(and)f
+4682 y(sev)m(eral)43 b(other)g(options)f(to)h(tell)g(Bash)f(and)f
 (Readline)i(what)f(to)g(do.)76 b(The)41 b Ft(-o)30 b(filenames)39
-b Fu(option)150 3718 y(tells)j(Readline)g(that)g(the)f(p)s(ossible)g
+b Fu(option)150 4792 y(tells)j(Readline)g(that)g(the)f(p)s(ossible)g
 (completions)h(should)f(b)s(e)f(treated)i(as)g(\014lenames,)i(and)d
-(quoted)150 3828 y(appropriately)-8 b(.)53 b(That)34
+(quoted)150 4902 y(appropriately)-8 b(.)53 b(That)34
 b(option)h(will)g(also)g(cause)g(Readline)g(to)g(app)s(end)e(a)h(slash)
-g(to)h(\014lenames)g(it)g(can)150 3937 y(determine)i(are)g(directories)
+g(to)h(\014lenames)g(it)g(can)150 5011 y(determine)i(are)g(directories)
 h(\(whic)m(h)g(is)f(wh)m(y)f(w)m(e)i(migh)m(t)f(w)m(an)m(t)h(to)g
-(extend)f Ft(_comp_cd)e Fu(to)i(app)s(end)f(a)150 4047
+(extend)f Ft(_comp_cd)e Fu(to)i(app)s(end)f(a)150 5121
 y(slash)22 b(if)g(w)m(e're)h(using)f(directories)h(found)e(via)i
 Fr(CDP)-8 b(A)g(TH)10 b Fu(:)37 b(Readline)23 b(can't)g(tell)g(those)g
-(completions)h(are)150 4156 y(directories\).)45 b(The)31
+(completions)h(are)150 5230 y(directories\).)45 b(The)31
 b Ft(-o)f(nospace)f Fu(option)j(tells)g(Readline)g(to)h(not)e(app)s
-(end)f(a)i(space)g(c)m(haracter)h(to)f(the)150 4266 y(directory)c
+(end)f(a)i(space)g(c)m(haracter)h(to)f(the)150 5340 y(directory)c
 (name,)h(in)f(case)h(w)m(e)f(w)m(an)m(t)h(to)f(app)s(end)f(to)h(it.)41
-b(The)27 b Ft(-o)j(bashdefault)25 b Fu(option)j(brings)f(in)h(the)150
-4376 y(rest)e(of)g(the)g Ft(")p Fu(Bash)g(default)p Ft(")g
-Fu(completions)h({)f(p)s(ossible)f(completions)i(that)g(Bash)f(adds)f
-(to)i(the)f(default)150 4485 y(Readline)i(set.)40 b(These)28
-b(include)f(things)g(lik)m(e)i(command)e(name)h(completion,)h(v)-5
-b(ariable)28 b(completion)h(for)150 4595 y(w)m(ords)e(b)s(eginning)h
-(with)f(`)p Ft($)p Fu(')h(or)g(`)p Ft(${)p Fu(',)h(completions)g(con)m
-(taining)g(pathname)f(expansion)g(patterns)g(\(see)150
-4704 y(Section)j(3.5.8)h([Filename)g(Expansion],)e(page)i(36\),)f(and)f
-(so)h(on.)275 4858 y(Once)39 b(installed)i(using)e Ft(complete)p
-Fu(,)h Ft(_comp_cd)d Fu(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m
-(e)g(attempt)h(w)m(ord)150 4967 y(completion)32 b(for)e(a)h
-Ft(cd)e Fu(command.)275 5121 y(Man)m(y)34 b(more)g(examples)g({)g(an)g
+b(The)27 b Ft(-o)j(bashdefault)25 b Fu(option)j(brings)f(in)h(the)p
+eop end
+%%Page: 158 164
+TeXDict begin 158 163 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(158)150 299 y(rest)26
+b(of)g(the)g Ft(")p Fu(Bash)g(default)p Ft(")g Fu(completions)h({)f(p)s
+(ossible)f(completions)i(that)g(Bash)f(adds)f(to)i(the)f(default)150
+408 y(Readline)i(set.)40 b(These)28 b(include)f(things)g(lik)m(e)i
+(command)e(name)h(completion,)h(v)-5 b(ariable)28 b(completion)h(for)
+150 518 y(w)m(ords)e(b)s(eginning)h(with)f(`)p Ft($)p
+Fu(')h(or)g(`)p Ft(${)p Fu(',)h(completions)g(con)m(taining)g(pathname)
+f(expansion)g(patterns)g(\(see)150 628 y(Section)j(3.5.8)h([Filename)g
+(Expansion],)e(page)i(36\),)f(and)f(so)h(on.)275 762
+y(Once)39 b(installed)i(using)e Ft(complete)p Fu(,)h
+Ft(_comp_cd)d Fu(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m(e)g
+(attempt)h(w)m(ord)150 872 y(completion)32 b(for)e(a)h
+Ft(cd)e Fu(command.)275 1006 y(Man)m(y)34 b(more)g(examples)g({)g(an)g
 (extensiv)m(e)h(collection)i(of)c(completions)i(for)f(most)g(of)g(the)g
-(common)150 5230 y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g
+(common)150 1116 y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g
 (a)m(v)-5 b(ailable)36 b(as)e(part)f(of)h(the)f(bash)p
-2943 5230 28 4 v 39 w(completion)i(pro)5 b(ject.)150
-5340 y(This)33 b(is)h(installed)h(b)m(y)f(default)g(on)g(man)m(y)h
+2943 1116 28 4 v 39 w(completion)i(pro)5 b(ject.)150
+1225 y(This)33 b(is)h(installed)h(b)m(y)f(default)g(on)g(man)m(y)h
 (GNU/Lin)m(ux)f(distributions.)51 b(Originally)35 b(written)f(b)m(y)g
-(Ian)p eop end
-%%Page: 158 164
-TeXDict begin 158 163 bop 150 -116 a Fu(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(158)150 299 y(Macdonald,)48
-b(the)c(pro)5 b(ject)44 b(no)m(w)g(liv)m(es)h(at)f Ft(https:)11
-b(/)g(/)g(github)g(.)g(com)g(/)g(sc)o(op)g(/)f(bash)o(-co)o(mple)o
-(tion)g(/)h Fu(.)150 408 y(There)30 b(are)h(p)s(orts)e(for)h(other)h
-(systems)f(suc)m(h)g(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275
-543 y(An)54 b(older)h(v)m(ersion)h(of)f(the)g(bash)p
-1532 543 28 4 v 40 w(completion)h(pac)m(k)-5 b(age)57
-b(is)e(distributed)f(with)h(bash)f(in)h(the)150 653 y
-Ft(examples/complete)26 b Fu(sub)s(directory)-8 b(.)p
-eop end
+(Ian)150 1335 y(Macdonald,)48 b(the)c(pro)5 b(ject)44
+b(no)m(w)g(liv)m(es)h(at)f Ft(https:)11 b(/)g(/)g(github)g(.)g(com)g(/)
+g(sc)o(op)g(/)f(bash)o(-co)o(mple)o(tion)g(/)h Fu(.)150
+1445 y(There)30 b(are)h(p)s(orts)e(for)h(other)h(systems)f(suc)m(h)g
+(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275 1579 y(An)54
+b(older)h(v)m(ersion)h(of)f(the)g(bash)p 1532 1579 V
+40 w(completion)h(pac)m(k)-5 b(age)57 b(is)e(distributed)f(with)h(bash)
+f(in)h(the)150 1689 y Ft(examples/complete)26 b Fu(sub)s(directory)-8
+b(.)p eop end
 %%Page: 159 165
 TeXDict begin 159 164 bop 3614 -116 a Fu(159)150 299
 y Fp(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
@@ -19655,13 +19723,13 @@ Fj(end)870 3893 y Ft(history)f([-anrw])g([)p Fj(filename)p
 Ft(])870 4003 y(history)g(-ps)h Fj(arg)630 4134 y Fu(With)26
 b(no)g(options,)h(displa)m(y)f(the)g(history)g(list)g(with)f(line)h(n)m
 (um)m(b)s(ers.)38 b(Lines)26 b(pre\014xed)e(with)630
-4244 y(a)35 b(`)p Ft(*)p Fu(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)
-53 b(An)34 b(argumen)m(t)h(of)g Fr(n)f Fu(lists)i(only)f(the)g(last)g
-Fr(n)f Fu(lines.)54 b(If)35 b(the)630 4354 y(shell)30
-b(v)-5 b(ariable)31 b Ft(HISTTIMEFORMAT)26 b Fu(is)k(set)h(and)e(not)i
-(n)m(ull,)f(it)h(is)f(used)f(as)h(a)h(format)f(string)630
-4463 y(for)36 b Fr(strftime)41 b Fu(to)36 b(displa)m(y)g(the)g(time)h
-(stamp)f(asso)s(ciated)h(with)f(eac)m(h)h(displa)m(y)m(ed)f(history)630
+4244 y(a)f(`)p Ft(*)p Fu(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)37
+b(An)22 b(argumen)m(t)h(of)g Fr(n)f Fu(lists)i(only)f(the)f(last)i
+Fr(n)e Fu(lines.)39 b(If)22 b(the)h(shell)630 4354 y(v)-5
+b(ariable)36 b Ft(HISTTIMEFORMAT)31 b Fu(is)k(set)g(and)f(not)h(n)m
+(ull,)h(it)g(is)f(used)f(as)h(a)g(format)g(string)g(for)630
+4463 y Ft(strftime)p Fu(\(3\))c(to)i(displa)m(y)f(the)h(time)f(stamp)g
+(asso)s(ciated)i(with)e(eac)m(h)h(displa)m(y)m(ed)g(history)630
 4573 y(en)m(try)-8 b(.)47 b(No)33 b(in)m(terv)m(ening)g(blank)f(is)g
 (prin)m(ted)g(b)s(et)m(w)m(een)h(the)g(formatted)f(time)h(stamp)g(and)
 630 4682 y(the)e(history)f(line.)630 4814 y(Options,)g(if)h(supplied,)e
@@ -19763,206 +19831,218 @@ b(the)e(ev)m(en)m(t,)k(the)c(optional)i Fr(w)m(ord)e(designator)33
 b Fu(selects)27 b(w)m(ords)e(from)g(the)g(ev)m(en)m(t,)k(and)150
 737 y(v)-5 b(arious)30 b(optional)i Fr(mo)s(di\014ers)h
 Fu(are)e(a)m(v)-5 b(ailable)32 b(to)f(manipulate)g(the)g(selected)h(w)m
-(ords.)275 881 y(History)26 b(expansions)f(are)h(in)m(tro)s(duced)f(b)m
+(ords.)275 872 y(History)26 b(expansions)f(are)h(in)m(tro)s(duced)f(b)m
 (y)g(the)g(app)s(earance)h(of)g(the)f(history)h(expansion)f(c)m
-(haracter,)150 991 y(whic)m(h)31 b(is)g(`)p Ft(!)p Fu(')h(b)m(y)f
+(haracter,)150 982 y(whic)m(h)31 b(is)g(`)p Ft(!)p Fu(')h(b)m(y)f
 (default.)43 b(History)32 b(expansions)f(ma)m(y)g(app)s(ear)g(an)m
-(ywhere)g(in)g(the)g(input,)g(but)g(do)g(not)150 1100
-y(nest.)275 1244 y(History)26 b(expansion)g(implemen)m(ts)h(shell-lik)m
+(ywhere)g(in)g(the)g(input,)g(but)g(do)g(not)150 1091
+y(nest.)275 1226 y(History)26 b(expansion)g(implemen)m(ts)h(shell-lik)m
 (e)h(quoting)f(con)m(v)m(en)m(tions:)40 b(a)27 b(bac)m(kslash)g(can)f
-(b)s(e)g(used)f(to)150 1353 y(remo)m(v)m(e)h(the)e(sp)s(ecial)g
+(b)s(e)g(used)f(to)150 1336 y(remo)m(v)m(e)h(the)e(sp)s(ecial)g
 (handling)g(for)g(the)g(next)g(c)m(haracter;)k(single)d(quotes)g
-(enclose)g(v)m(erbatim)g(sequences)150 1463 y(of)k(c)m(haracters,)i
+(enclose)g(v)m(erbatim)g(sequences)150 1445 y(of)k(c)m(haracters,)i
 (and)e(can)g(b)s(e)g(used)f(to)i(inhibit)f(history)g(expansion;)g(and)g
-(c)m(haracters)i(enclosed)e(within)150 1573 y(double)h(quotes)i(ma)m(y)
+(c)m(haracters)i(enclosed)e(within)150 1555 y(double)h(quotes)i(ma)m(y)
 f(b)s(e)f(sub)5 b(ject)31 b(to)h(history)f(expansion,)g(since)g(bac)m
-(kslash)g(can)h(escap)s(e)f(the)g(history)150 1682 y(expansion)e(c)m
+(kslash)g(can)h(escap)s(e)f(the)g(history)150 1664 y(expansion)e(c)m
 (haracter,)j(but)d(single)h(quotes)g(ma)m(y)h(not,)f(since)g(they)g
-(are)g(not)f(treated)i(sp)s(ecially)f(within)150 1792
-y(double)g(quotes.)275 1936 y(When)41 b(using)g(the)h(shell,)i(only)e
+(are)g(not)f(treated)i(sp)s(ecially)f(within)150 1774
+y(double)g(quotes.)275 1909 y(When)41 b(using)g(the)h(shell,)i(only)e
 (`)p Ft(\\)p Fu(')g(and)e(`)p Ft(')p Fu(')i(ma)m(y)g(b)s(e)f(used)g(to)
-h(escap)s(e)g(the)g(history)f(expansion)150 2045 y(c)m(haracter,)e(but)
+h(escap)s(e)g(the)g(history)f(expansion)150 2018 y(c)m(haracter,)e(but)
 34 b(the)i(history)g(expansion)f(c)m(haracter)i(is)f(also)g(treated)h
-(as)e(quoted)h(if)g(it)g(immediately)150 2155 y(precedes)30
+(as)e(quoted)h(if)g(it)g(immediately)150 2128 y(precedes)30
 b(the)h(closing)g(double)f(quote)h(in)f(a)h(double-quoted)g(string.)275
-2299 y(Sev)m(eral)48 b(shell)g(options)h(settable)g(with)e(the)h
+2263 y(There)25 b(is)h(a)h(sp)s(ecial)f(abbreviation)h(for)f
+(substitution,)g(activ)m(e)j(when)c(the)h Fr(quic)m(k)h(substitution)e
+Fu(c)m(har-)150 2372 y(acter)k(\(default)f(`)p Ft(^)p
+Fu('\))h(is)f(the)g(\014rst)f(c)m(haracter)i(on)f(the)g(line.)40
+b(It)28 b(selects)h(the)f(previous)g(history)g(list)g(en)m(try)-8
+b(,)150 2482 y(using)34 b(an)g(ev)m(en)m(t)h(designator)g(equiv)-5
+b(alen)m(t)36 b(to)f Ft(!!)p Fu(,)f(and)g(substitutes)g(one)g(string)g
+(for)g(another)h(in)e(that)150 2591 y(line.)61 b(It)37
+b(is)f(describ)s(ed)g(b)s(elo)m(w)h(\(see)h(Section)g(9.3.1)h([Ev)m(en)
+m(t)f(Designators],)i(page)e(162\).)62 b(This)36 b(is)h(the)150
+2701 y(only)30 b(history)h(expansion)f(that)h(do)s(es)f(not)h(b)s(egin)
+f(with)g(the)g(history)h(expansion)f(c)m(haracter.)275
+2836 y(Sev)m(eral)48 b(shell)g(options)h(settable)g(with)e(the)h
 Ft(shopt)f Fu(builtin)g(\(see)i(Section)f(4.3.2)i([The)e(Shopt)150
-2408 y(Builtin],)24 b(page)e(73\))h(ma)m(y)e(b)s(e)g(used)g(to)h
+2945 y(Builtin],)24 b(page)e(73\))h(ma)m(y)e(b)s(e)g(used)g(to)h
 (tailor)g(the)g(b)s(eha)m(vior)f(of)h(history)f(expansion.)37
-b(If)21 b(the)h Ft(histverify)150 2518 y Fu(shell)35
+b(If)21 b(the)h Ft(histverify)150 3055 y Fu(shell)35
 b(option)f(is)h(enabled,)g(and)f(Readline)h(is)f(b)s(eing)g(used,)h
-(history)g(substitutions)e(are)i(not)g(immedi-)150 2627
+(history)g(substitutions)e(are)i(not)g(immedi-)150 3165
 y(ately)i(passed)d(to)i(the)g(shell)f(parser.)55 b(Instead,)37
 b(the)e(expanded)g(line)g(is)h(reloaded)g(in)m(to)g(the)f(Readline)150
-2737 y(editing)29 b(bu\013er)f(for)h(further)e(mo)s(di\014cation.)41
+3274 y(editing)29 b(bu\013er)f(for)h(further)e(mo)s(di\014cation.)41
 b(If)28 b(Readline)h(is)g(b)s(eing)f(used,)h(and)f(the)h
-Ft(histreedit)d Fu(shell)150 2846 y(option)e(is)g(enabled,)h(a)g
+Ft(histreedit)d Fu(shell)150 3384 y(option)e(is)g(enabled,)h(a)g
 (failed)f(history)g(expansion)g(will)g(b)s(e)f(reloaded)h(in)m(to)h
-(the)f(Readline)g(editing)h(bu\013er)150 2956 y(for)31
+(the)f(Readline)g(editing)h(bu\013er)150 3493 y(for)31
 b(correction.)43 b(The)30 b Ft(-p)g Fu(option)h(to)h(the)f
 Ft(history)e Fu(builtin)h(command)h(ma)m(y)g(b)s(e)f(used)g(to)i(see)f
-(what)g(a)150 3066 y(history)25 b(expansion)g(will)g(do)g(b)s(efore)g
+(what)g(a)150 3603 y(history)25 b(expansion)g(will)g(do)g(b)s(efore)g
 (using)f(it.)40 b(The)24 b Ft(-s)h Fu(option)g(to)h(the)f
-Ft(history)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)150 3175
+Ft(history)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)150 3713
 y(to)36 b(add)f(commands)g(to)h(the)g(end)f(of)g(the)h(history)f(list)i
 (without)e(actually)i(executing)g(them,)g(so)e(that)150
-3285 y(they)c(are)f(a)m(v)-5 b(ailable)33 b(for)d(subsequen)m(t)g
+3822 y(they)c(are)f(a)m(v)-5 b(ailable)33 b(for)d(subsequen)m(t)g
 (recall.)42 b(This)29 b(is)i(most)g(useful)e(in)h(conjunction)h(with)f
-(Readline.)275 3429 y(The)j(shell)h(allo)m(ws)h(con)m(trol)h(of)e(the)g
+(Readline.)275 3957 y(The)j(shell)h(allo)m(ws)h(con)m(trol)h(of)e(the)g
 (v)-5 b(arious)34 b(c)m(haracters)h(used)f(b)m(y)f(the)h(history)g
-(expansion)g(mec)m(h-)150 3538 y(anism)h(with)g(the)g
+(expansion)g(mec)m(h-)150 4067 y(anism)h(with)g(the)g
 Ft(histchars)d Fu(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)
 i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150
-3648 y(page)32 b(81\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
+4176 y(page)32 b(81\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
 (commen)m(t)i(c)m(haracter)f(to)g(mark)f(history)g(timestamps)h(when)
-150 3757 y(writing)e(the)h(history)f(\014le.)150 3966
-y Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150 4113
+150 4286 y(writing)e(the)h(history)f(\014le.)150 4485
+y Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150 4632
 y Fu(An)32 b(ev)m(en)m(t)j(designator)e(is)g(a)g(reference)g(to)h(a)f
 (command)f(line)h(en)m(try)g(in)g(the)g(history)g(list.)48
-b(Unless)33 b(the)150 4222 y(reference)40 b(is)f(absolute,)k(ev)m(en)m
+b(Unless)33 b(the)150 4742 y(reference)40 b(is)f(absolute,)k(ev)m(en)m
 (ts)e(are)f(relativ)m(e)i(to)e(the)g(curren)m(t)f(p)s(osition)g(in)h
-(the)f(history)h(list.)68 b(The)150 4332 y(ev)m(en)m(t)35
+(the)f(history)h(list.)68 b(The)150 4851 y(ev)m(en)m(t)35
 b(designator)f(consists)g(of)g(the)g(p)s(ortion)f(of)g(the)h(w)m(ord)f
 (b)s(eginning)g(with)g(the)h(history)f(expansion)150
-4442 y(c)m(haracter,)f(and)e(ending)g(with)g(the)h(w)m(ord)f
+4961 y(c)m(haracter,)f(and)e(ending)g(with)g(the)h(w)m(ord)f
 (designator)h(if)f(one)h(is)f(presen)m(t,)h(or)f(the)h(end)e(of)i(the)g
-(w)m(ord.)150 4615 y Ft(!)432 b Fu(Start)34 b(a)f(history)h
+(w)m(ord.)150 5121 y Ft(!)432 b Fu(Start)34 b(a)f(history)h
 (substitution,)g(except)g(when)f(follo)m(w)m(ed)i(b)m(y)e(a)h(space,)h
-(tab,)f(the)g(end)f(of)630 4724 y(the)24 b(line,)j(`)p
+(tab,)f(the)g(end)f(of)630 5230 y(the)24 b(line,)j(`)p
 Ft(=)p Fu(',)f(or)e(the)g(rest)h(of)f(the)h(shell)f(metac)m(haracters)j
 (de\014ned)c(ab)s(o)m(v)m(e)j(\(see)f(Chapter)f(2)630
-4834 y([De\014nitions],)32 b(page)f(3\).)150 5003 y Ft(!)p
-Fj(n)384 b Fu(Refer)30 b(to)i(command)e(line)g Fr(n)p
-Fu(.)150 5171 y Ft(!-)p Fj(n)336 b Fu(Refer)30 b(to)i(the)e(command)g
-Fr(n)g Fu(lines)h(bac)m(k.)150 5340 y Ft(!!)384 b Fu(Refer)30
-b(to)i(the)e(previous)g(command.)40 b(This)30 b(is)g(a)h(synon)m(ym)f
-(for)g(`)p Ft(!-1)p Fu('.)p eop end
+5340 y([De\014nitions],)32 b(page)f(3\).)p eop end
 %%Page: 163 169
 TeXDict begin 163 168 bop 150 -116 a Fu(Chapter)30 b(9:)41
 b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(163)150
-299 y Ft(!)p Fj(string)144 b Fu(Refer)25 b(to)h(the)f(most)h(recen)m(t)
-g(command)f(preceding)g(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g
-(history)630 408 y(list)31 b(starting)g(with)f Fr(string)p
-Fu(.)150 564 y Ft(!?)p Fj(string)p Ft([?])630 673 y Fu(Refer)25
-b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)
-g(p)s(osition)g(in)g(the)g(history)630 783 y(list)32
-b(con)m(taining)i Fr(string)p Fu(.)45 b(The)31 b(trailing)i(`)p
-Ft(?)p Fu(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f(the)g Fr(string)39
-b Fu(is)32 b(follo)m(w)m(ed)630 893 y(immediately)f(b)m(y)e(a)h
-(newline.)40 b(If)29 b Fr(string)38 b Fu(is)29 b(missing,)h(the)g
-(string)f(from)g(the)h(most)g(recen)m(t)630 1002 y(searc)m(h)h(is)f
-(used;)g(it)h(is)g(an)f(error)g(if)g(there)h(is)f(no)g(previous)g
-(searc)m(h)h(string.)150 1157 y Ft(^)p Fj(string1)p Ft(^)p
-Fj(string2)p Ft(^)630 1267 y Fu(Quic)m(k)h(Substitution.)44
-b(Rep)s(eat)32 b(the)g(last)h(command,)f(replacing)g
-Fr(string1)40 b Fu(with)31 b Fr(string2)p Fu(.)630 1377
-y(Equiv)-5 b(alen)m(t)31 b(to)g Ft(!!:s^)p Fj(string1)p
-Ft(^)p Fj(string2)p Ft(^)p Fu(.)150 1532 y Ft(!#)384
-b Fu(The)30 b(en)m(tire)h(command)f(line)h(t)m(yp)s(ed)f(so)h(far.)150
-1727 y Fk(9.3.2)63 b(W)-10 b(ord)41 b(Designators)150
-1874 y Fu(W)-8 b(ord)28 b(designators)h(are)f(used)f(to)i(select)h
-(desired)d(w)m(ords)h(from)f(the)h(ev)m(en)m(t.)42 b(They)27
-b(are)i(optional;)h(if)e(the)150 1983 y(w)m(ord)h(designator)i(isn't)e
-(supplied,)g(the)h(history)g(expansion)f(uses)g(the)h(en)m(tire)h(ev)m
-(en)m(t.)42 b(A)29 b(`)p Ft(:)p Fu(')h(separates)150
-2093 y(the)f(ev)m(en)m(t)i(sp)s(eci\014cation)e(from)g(the)g(w)m(ord)g
+299 y Ft(!)p Fj(n)384 b Fu(Refer)30 b(to)i(command)e(line)g
+Fr(n)p Fu(.)150 452 y Ft(!-)p Fj(n)336 b Fu(Refer)30
+b(to)i(the)e(command)g Fr(n)g Fu(lines)h(bac)m(k.)150
+604 y Ft(!!)384 b Fu(Refer)30 b(to)i(the)e(previous)g(command.)40
+b(This)30 b(is)g(a)h(synon)m(ym)f(for)g(`)p Ft(!-1)p
+Fu('.)150 757 y Ft(!)p Fj(string)144 b Fu(Refer)25 b(to)h(the)f(most)h
+(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)g(p)s(osition)g(in)
+g(the)g(history)630 867 y(list)31 b(starting)g(with)f
+Fr(string)p Fu(.)150 1020 y Ft(!?)p Fj(string)p Ft([?])630
+1129 y Fu(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)
+g(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
+1239 y(list)32 b(con)m(taining)i Fr(string)p Fu(.)45
+b(The)31 b(trailing)i(`)p Ft(?)p Fu(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f
+(the)g Fr(string)39 b Fu(is)32 b(follo)m(w)m(ed)630 1348
+y(immediately)f(b)m(y)e(a)h(newline.)40 b(If)29 b Fr(string)38
+b Fu(is)29 b(missing,)h(the)g(string)f(from)g(the)h(most)g(recen)m(t)
+630 1458 y(searc)m(h)h(is)f(used;)g(it)h(is)g(an)f(error)g(if)g(there)h
+(is)f(no)g(previous)g(searc)m(h)h(string.)150 1611 y
+Ft(^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)630 1720
+y Fu(Quic)m(k)h(Substitution.)44 b(Rep)s(eat)32 b(the)g(last)h
+(command,)f(replacing)g Fr(string1)40 b Fu(with)31 b
+Fr(string2)p Fu(.)630 1830 y(Equiv)-5 b(alen)m(t)31 b(to)g
+Ft(!!:s^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)p Fu(.)150
+1983 y Ft(!#)384 b Fu(The)30 b(en)m(tire)h(command)f(line)h(t)m(yp)s
+(ed)f(so)h(far.)150 2175 y Fk(9.3.2)63 b(W)-10 b(ord)41
+b(Designators)150 2322 y Fu(W)-8 b(ord)28 b(designators)h(are)f(used)f
+(to)i(select)h(desired)d(w)m(ords)h(from)f(the)h(ev)m(en)m(t.)42
+b(They)27 b(are)i(optional;)h(if)e(the)150 2432 y(w)m(ord)h(designator)
+i(isn't)e(supplied,)g(the)h(history)g(expansion)f(uses)g(the)h(en)m
+(tire)h(ev)m(en)m(t.)42 b(A)29 b(`)p Ft(:)p Fu(')h(separates)150
+2542 y(the)f(ev)m(en)m(t)i(sp)s(eci\014cation)e(from)g(the)g(w)m(ord)g
 (designator.)41 b(It)29 b(ma)m(y)g(b)s(e)g(omitted)h(if)e(the)i(w)m
-(ord)e(designator)150 2203 y(b)s(egins)33 b(with)h(a)h(`)p
+(ord)e(designator)150 2651 y(b)s(egins)33 b(with)h(a)h(`)p
 Ft(^)p Fu(',)g(`)p Ft($)p Fu(',)g(`)p Ft(*)p Fu(',)h(`)p
 Ft(-)p Fu(',)f(or)f(`)p Ft(\045)p Fu('.)52 b(W)-8 b(ords)35
 b(are)f(n)m(um)m(b)s(ered)f(from)g(the)i(b)s(eginning)e(of)h(the)g
-(line,)150 2312 y(with)39 b(the)h(\014rst)f(w)m(ord)g(b)s(eing)g
+(line,)150 2761 y(with)39 b(the)h(\014rst)f(w)m(ord)g(b)s(eing)g
 (denoted)h(b)m(y)g(0)g(\(zero\).)70 b(W)-8 b(ords)39
 b(are)h(inserted)g(in)m(to)g(the)g(curren)m(t)g(line)150
-2422 y(separated)31 b(b)m(y)f(single)h(spaces.)275 2554
-y(F)-8 b(or)31 b(example,)150 2710 y Ft(!!)384 b Fu(designates)37
+2870 y(separated)31 b(b)m(y)f(single)h(spaces.)275 3002
+y(F)-8 b(or)31 b(example,)150 3154 y Ft(!!)384 b Fu(designates)37
 b(the)f(preceding)g(command.)57 b(When)35 b(y)m(ou)i(t)m(yp)s(e)f
-(this,)h(the)f(preceding)g(com-)630 2819 y(mand)30 b(is)g(rep)s(eated)g
-(in)g(toto.)150 2974 y Ft(!!:$)288 b Fu(designates)23
+(this,)h(the)f(preceding)g(com-)630 3264 y(mand)30 b(is)g(rep)s(eated)g
+(in)g(toto.)150 3417 y Ft(!!:$)288 b Fu(designates)23
 b(the)g(last)g(argumen)m(t)g(of)f(the)h(preceding)f(command.)38
-b(This)22 b(ma)m(y)h(b)s(e)e(shortened)630 3084 y(to)31
-b Ft(!$)p Fu(.)150 3239 y Ft(!fi:2)240 b Fu(designates)30
+b(This)22 b(ma)m(y)h(b)s(e)e(shortened)630 3526 y(to)31
+b Ft(!$)p Fu(.)150 3679 y Ft(!fi:2)240 b Fu(designates)30
 b(the)g(second)f(argumen)m(t)h(of)f(the)h(most)f(recen)m(t)i(command)e
-(starting)h(with)f(the)630 3349 y(letters)j Ft(fi)p Fu(.)275
-3504 y(Here)e(are)h(the)g(w)m(ord)f(designators:)150
-3659 y Ft(0)g(\(zero\))114 b Fu(The)30 b Ft(0)p Fu(th)g(w)m(ord.)40
+(starting)h(with)f(the)630 3789 y(letters)j Ft(fi)p Fu(.)275
+3942 y(Here)e(are)h(the)g(w)m(ord)f(designators:)150
+4094 y Ft(0)g(\(zero\))114 b Fu(The)30 b Ft(0)p Fu(th)g(w)m(ord.)40
 b(F)-8 b(or)31 b(man)m(y)g(applications,)h(this)e(is)g(the)h(command)f
-(w)m(ord.)150 3815 y Fj(n)432 b Fu(The)30 b Fr(n)p Fu(th)g(w)m(ord.)150
-3970 y Ft(^)432 b Fu(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m
-(ord)g(1.)150 4125 y Ft($)432 b Fu(The)30 b(last)h(argumen)m(t.)150
-4281 y Ft(\045)432 b Fu(The)40 b(\014rst)h(w)m(ord)f(matc)m(hed)i(b)m
+(w)m(ord.)150 4247 y Fj(n)432 b Fu(The)30 b Fr(n)p Fu(th)g(w)m(ord.)150
+4400 y Ft(^)432 b Fu(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m
+(ord)g(1.)150 4553 y Ft($)432 b Fu(The)30 b(last)h(argumen)m(t.)150
+4706 y Ft(\045)432 b Fu(The)40 b(\014rst)h(w)m(ord)f(matc)m(hed)i(b)m
 (y)f(the)g(most)g(recen)m(t)h(`)p Ft(?)p Fj(string)p
 Ft(?)p Fu(')d(searc)m(h,)44 b(if)d(the)g(searc)m(h)630
-4390 y(string)30 b(b)s(egins)g(with)g(a)h(c)m(haracter)h(that)f(is)f
-(part)h(of)f(a)h(w)m(ord.)150 4545 y Fj(x)p Ft(-)p Fj(y)336
+4815 y(string)30 b(b)s(egins)g(with)g(a)h(c)m(haracter)h(that)f(is)f
+(part)h(of)f(a)h(w)m(ord.)150 4968 y Fj(x)p Ft(-)p Fj(y)336
 b Fu(A)30 b(range)h(of)g(w)m(ords;)f(`)p Ft(-)p Fj(y)p
-Fu(')g(abbreviates)h(`)p Ft(0-)p Fj(y)p Fu('.)150 4701
+Fu(')g(abbreviates)h(`)p Ft(0-)p Fj(y)p Fu('.)150 5121
 y Ft(*)432 b Fu(All)28 b(of)g(the)g(w)m(ords,)g(except)h(the)e
 Ft(0)p Fu(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
 Ft(1-$)p Fu('.)39 b(It)28 b(is)g(not)g(an)f(error)630
-4810 y(to)j(use)g(`)p Ft(*)p Fu(')f(if)h(there)g(is)g(just)f(one)h(w)m
+5230 y(to)j(use)g(`)p Ft(*)p Fu(')f(if)h(there)g(is)g(just)f(one)h(w)m
 (ord)f(in)g(the)h(ev)m(en)m(t;)i(the)d(empt)m(y)i(string)e(is)h
-(returned)e(in)630 4920 y(that)j(case.)150 5075 y Fj(x)p
-Ft(*)384 b Fu(Abbreviates)31 b(`)p Fj(x)p Ft(-$)p Fu(')150
-5230 y Fj(x)p Ft(-)384 b Fu(Abbreviates)27 b(`)p Fj(x)p
-Ft(-$)p Fu(')g(lik)m(e)h(`)p Fj(x)p Ft(*)p Fu(',)g(but)e(omits)i(the)f
-(last)h(w)m(ord.)39 b(If)27 b(`)p Ft(x)p Fu(')g(is)g(missing,)g(it)h
-(defaults)630 5340 y(to)j(0.)p eop end
+(returned)e(in)630 5340 y(that)j(case.)p eop end
 %%Page: 164 170
 TeXDict begin 164 169 bop 150 -116 a Fu(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(164)275
-299 y(If)33 b(a)h(w)m(ord)g(designator)g(is)g(supplied)f(without)h(an)g
-(ev)m(en)m(t)h(sp)s(eci\014cation,)h(the)e(previous)f(command)150
-408 y(is)d(used)g(as)h(the)f(ev)m(en)m(t.)150 608 y Fk(9.3.3)63
-b(Mo)s(di\014ers)150 755 y Fu(After)29 b(the)g(optional)g(w)m(ord)g
-(designator,)g(y)m(ou)g(can)g(add)f(a)h(sequence)g(of)g(one)g(or)f
-(more)h(of)g(the)f(follo)m(wing)150 864 y(mo)s(di\014ers,)33
-b(eac)m(h)h(preceded)f(b)m(y)g(a)h(`)p Ft(:)p Fu('.)50
-b(These)33 b(mo)s(dify)-8 b(,)33 b(or)h(edit,)g(the)g(w)m(ord)f(or)g(w)
-m(ords)g(selected)h(from)150 974 y(the)d(history)f(ev)m(en)m(t.)150
-1133 y Ft(h)432 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(pathname)g(comp)s
-(onen)m(t,)g(lea)m(ving)h(only)e(the)h(head.)150 1293
-y Ft(t)432 b Fu(Remo)m(v)m(e)32 b(all)f(leading)h(pathname)e(comp)s
-(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150 1452 y Ft(r)432
-b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g(the)h(form)f(`)p
-Ft(.)p Fj(suffix)p Fu(',)f(lea)m(ving)j(the)f(basename.)150
-1611 y Ft(e)432 b Fu(Remo)m(v)m(e)32 b(all)f(but)f(the)h(trailing)g
-(su\016x.)150 1771 y Ft(p)432 b Fu(Prin)m(t)30 b(the)h(new)f(command)g
-(but)g(do)g(not)g(execute)i(it.)150 1930 y Ft(q)432 b
-Fu(Quote)31 b(the)f(substituted)g(w)m(ords,)g(escaping)h(further)e
-(substitutions.)150 2090 y Ft(x)432 b Fu(Quote)32 b(the)f(substituted)g
-(w)m(ords)f(as)i(with)f(`)p Ft(q)p Fu(',)h(but)e(break)h(in)m(to)i(w)m
-(ords)d(at)i(spaces,)h(tabs,)630 2199 y(and)38 b(newlines.)66
-b(The)39 b(`)p Ft(q)p Fu(')g(and)f(`)p Ft(x)p Fu(')h(mo)s(di\014ers)f
-(are)h(m)m(utually)g(exclusiv)m(e;)45 b(the)39 b(last)h(one)630
-2309 y(supplied)29 b(is)i(used.)150 2468 y Ft(s/)p Fj(old)p
-Ft(/)p Fj(new)p Ft(/)630 2578 y Fu(Substitute)g Fr(new)39
-b Fu(for)32 b(the)g(\014rst)f(o)s(ccurrence)h(of)f Fr(old)36
-b Fu(in)31 b(the)h(ev)m(en)m(t)h(line.)46 b(An)m(y)31
-b(c)m(haracter)630 2687 y(ma)m(y)k(b)s(e)e(used)h(as)g(the)h(delimiter)
-g(in)f(place)h(of)f(`)p Ft(/)p Fu('.)53 b(The)33 b(delimiter)i(ma)m(y)g
-(b)s(e)f(quoted)g(in)630 2797 y Fr(old)40 b Fu(and)c
-Fr(new)44 b Fu(with)36 b(a)h(single)g(bac)m(kslash.)60
-b(If)36 b(`)p Ft(&)p Fu(')h(app)s(ears)e(in)i Fr(new)p
-Fu(,)g(it)h(is)e(replaced)h(b)m(y)630 2907 y Fr(old)p
-Fu(.)k(A)31 b(single)g(bac)m(kslash)g(will)g(quote)g(the)g(`)p
-Ft(&)p Fu('.)41 b(If)31 b Fr(old)j Fu(is)c(n)m(ull,)h(it)g(is)g(set)g
-(to)g(the)g(last)g Fr(old)630 3016 y Fu(substituted,)j(or,)g(if)f(no)g
-(previous)g(history)g(substitutions)g(to)s(ok)h(place,)h(the)e(last)h
-Fr(string)630 3126 y Fu(in)d(a)g(!?)p Fr(string)8 b Ft([?])30
-b Fu(searc)m(h.)44 b(If)31 b Fr(new)38 b Fu(is)31 b(n)m(ull,)h(eac)m(h)
-g(matc)m(hing)g Fr(old)j Fu(is)c(deleted.)44 b(The)30
-b(\014nal)630 3235 y(delimiter)h(is)g(optional)g(if)f(it)h(is)g(the)f
-(last)h(c)m(haracter)h(on)f(the)f(input)g(line.)150 3395
-y Ft(&)432 b Fu(Rep)s(eat)31 b(the)f(previous)g(substitution.)150
-3554 y Ft(g)150 3664 y(a)432 b Fu(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f
-(applied)h(o)m(v)m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66
-b(Used)39 b(in)f(conjunction)630 3773 y(with)30 b(`)p
-Ft(s)p Fu(',)h(as)f(in)h Ft(gs/)p Fj(old)p Ft(/)p Fj(new)p
-Ft(/)p Fu(,)c(or)j(with)h(`)p Ft(&)p Fu('.)150 3933 y
-Ft(G)432 b Fu(Apply)30 b(the)g(follo)m(wing)i(`)p Ft(s)p
-Fu(')f(or)f(`)p Ft(&)p Fu(')h(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m
-(ord)e(in)g(the)g(ev)m(en)m(t.)p eop end
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(164)150
+299 y Fj(x)p Ft(*)384 b Fu(Abbreviates)31 b(`)p Fj(x)p
+Ft(-$)p Fu(')150 458 y Fj(x)p Ft(-)384 b Fu(Abbreviates)27
+b(`)p Fj(x)p Ft(-$)p Fu(')g(lik)m(e)h(`)p Fj(x)p Ft(*)p
+Fu(',)g(but)e(omits)i(the)f(last)h(w)m(ord.)39 b(If)27
+b(`)p Ft(x)p Fu(')g(is)g(missing,)g(it)h(defaults)630
+568 y(to)j(0.)275 727 y(If)i(a)h(w)m(ord)g(designator)g(is)g(supplied)f
+(without)h(an)g(ev)m(en)m(t)h(sp)s(eci\014cation,)h(the)e(previous)f
+(command)150 837 y(is)d(used)g(as)h(the)f(ev)m(en)m(t.)150
+1036 y Fk(9.3.3)63 b(Mo)s(di\014ers)150 1183 y Fu(After)29
+b(the)g(optional)g(w)m(ord)g(designator,)g(y)m(ou)g(can)g(add)f(a)h
+(sequence)g(of)g(one)g(or)f(more)h(of)g(the)f(follo)m(wing)150
+1293 y(mo)s(di\014ers,)33 b(eac)m(h)h(preceded)f(b)m(y)g(a)h(`)p
+Ft(:)p Fu('.)50 b(These)33 b(mo)s(dify)-8 b(,)33 b(or)h(edit,)g(the)g
+(w)m(ord)f(or)g(w)m(ords)g(selected)h(from)150 1402 y(the)d(history)f
+(ev)m(en)m(t.)150 1562 y Ft(h)432 b Fu(Remo)m(v)m(e)32
+b(a)f(trailing)g(pathname)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e(the)
+h(head.)150 1721 y Ft(t)432 b Fu(Remo)m(v)m(e)32 b(all)f(leading)h
+(pathname)e(comp)s(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150
+1880 y Ft(r)432 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g
+(the)h(form)f(`)p Ft(.)p Fj(suffix)p Fu(',)f(lea)m(ving)j(the)f
+(basename.)150 2040 y Ft(e)432 b Fu(Remo)m(v)m(e)32 b(all)f(but)f(the)h
+(trailing)g(su\016x.)150 2199 y Ft(p)432 b Fu(Prin)m(t)30
+b(the)h(new)f(command)g(but)g(do)g(not)g(execute)i(it.)150
+2359 y Ft(q)432 b Fu(Quote)31 b(the)f(substituted)g(w)m(ords,)g
+(escaping)h(further)e(substitutions.)150 2518 y Ft(x)432
+b Fu(Quote)32 b(the)f(substituted)g(w)m(ords)f(as)i(with)f(`)p
+Ft(q)p Fu(',)h(but)e(break)h(in)m(to)i(w)m(ords)d(at)i(spaces,)h(tabs,)
+630 2628 y(and)38 b(newlines.)66 b(The)39 b(`)p Ft(q)p
+Fu(')g(and)f(`)p Ft(x)p Fu(')h(mo)s(di\014ers)f(are)h(m)m(utually)g
+(exclusiv)m(e;)45 b(the)39 b(last)h(one)630 2737 y(supplied)29
+b(is)i(used.)150 2897 y Ft(s/)p Fj(old)p Ft(/)p Fj(new)p
+Ft(/)630 3006 y Fu(Substitute)g Fr(new)39 b Fu(for)32
+b(the)g(\014rst)f(o)s(ccurrence)h(of)f Fr(old)36 b Fu(in)31
+b(the)h(ev)m(en)m(t)h(line.)46 b(An)m(y)31 b(c)m(haracter)630
+3116 y(ma)m(y)k(b)s(e)e(used)h(as)g(the)h(delimiter)g(in)f(place)h(of)f
+(`)p Ft(/)p Fu('.)53 b(The)33 b(delimiter)i(ma)m(y)g(b)s(e)f(quoted)g
+(in)630 3225 y Fr(old)40 b Fu(and)c Fr(new)44 b Fu(with)36
+b(a)h(single)g(bac)m(kslash.)60 b(If)36 b(`)p Ft(&)p
+Fu(')h(app)s(ears)e(in)i Fr(new)p Fu(,)g(it)h(is)e(replaced)h(b)m(y)630
+3335 y Fr(old)p Fu(.)k(A)31 b(single)g(bac)m(kslash)g(will)g(quote)g
+(the)g(`)p Ft(&)p Fu('.)41 b(If)31 b Fr(old)j Fu(is)c(n)m(ull,)h(it)g
+(is)g(set)g(to)g(the)g(last)g Fr(old)630 3445 y Fu(substituted,)j(or,)g
+(if)f(no)g(previous)g(history)g(substitutions)g(to)s(ok)h(place,)h(the)
+e(last)h Fr(string)630 3554 y Fu(in)d(a)g(!?)p Fr(string)8
+b Ft([?])30 b Fu(searc)m(h.)44 b(If)31 b Fr(new)38 b
+Fu(is)31 b(n)m(ull,)h(eac)m(h)g(matc)m(hing)g Fr(old)j
+Fu(is)c(deleted.)44 b(The)30 b(\014nal)630 3664 y(delimiter)h(is)g
+(optional)g(if)f(it)h(is)g(the)f(last)h(c)m(haracter)h(on)f(the)f
+(input)g(line.)150 3823 y Ft(&)432 b Fu(Rep)s(eat)31
+b(the)f(previous)g(substitution.)150 3983 y Ft(g)150
+4092 y(a)432 b Fu(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f(applied)h(o)m(v)
+m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66 b(Used)39
+b(in)f(conjunction)630 4202 y(with)30 b(`)p Ft(s)p Fu(',)h(as)f(in)h
+Ft(gs/)p Fj(old)p Ft(/)p Fj(new)p Ft(/)p Fu(,)c(or)j(with)h(`)p
+Ft(&)p Fu('.)150 4361 y Ft(G)432 b Fu(Apply)30 b(the)g(follo)m(wing)i
+(`)p Ft(s)p Fu(')f(or)f(`)p Ft(&)p Fu(')h(mo)s(di\014er)e(once)i(to)g
+(eac)m(h)h(w)m(ord)e(in)g(the)g(ev)m(en)m(t.)p eop end
 %%Page: 165 171
 TeXDict begin 165 170 bop 3614 -116 a Fu(165)150 299
 y Fp(10)80 b(Installing)52 b(Bash)150 539 y Fu(This)31
@@ -20452,7 +20532,7 @@ h(to)f(b)s(e)f(enabled.)150 2909 y Ft(--enable-function-import)630
 (de\014nitions)f(exp)s(orted)h(b)m(y)g(another)g(instance)630
 3128 y(of)31 b(the)f(shell)h(from)f(the)g(en)m(vironmen)m(t.)41
 b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)150
-3308 y Ft(--enable-glob-asciirange)o(-def)o(ault)630
+3308 y Ft(--enable-glob-asciirange)o(s-de)o(faul)o(t)630
 3417 y Fu(Set)f(the)f(default)h(v)-5 b(alue)29 b(of)f(the)h
 Ft(globasciiranges)24 b Fu(shell)29 b(option)g(describ)s(ed)e(ab)s(o)m
 (v)m(e)j(un-)630 3527 y(der)c(Section)i(4.3.2)h([The)d(Shopt)g
@@ -20489,7 +20569,7 @@ b(used)g(in)g(redirections)h(\(see)g(Section)g(3.6)h([Redirec-)630
 f(the)h(necessary)g(supp)s(ort.)150 1166 y Ft(--enable-progcomp)630
 1275 y Fu(Enable)d(the)g(programmable)g(completion)i(facilities)g
 (\(see)f(Section)g(8.6)g([Programmable)630 1385 y(Completion],)i(page)h
-(149\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g
+(150\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g
 (has)f(no)g(e\013ect.)150 1544 y Ft(--enable-prompt-string-d)o(ecod)o
 (ing)630 1654 y Fu(T)-8 b(urn)30 b(on)i(the)f(in)m(terpretation)i(of)f
 (a)g(n)m(um)m(b)s(er)e(of)i(bac)m(kslash-escap)s(ed)g(c)m(haracters)i
@@ -20616,7 +20696,7 @@ b Fu(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
 (122\))330 1809 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225
 1943 y Fq(\017)60 b Fu(Bash)46 b(pro)m(vides)g(a)g(programmable)g(w)m
 (ord)f(completion)i(mec)m(hanism)f(\(see)h(Section)g(8.6)g([Pro-)330
-2052 y(grammable)39 b(Completion],)i(page)e(149\),)i(and)d(builtin)g
+2052 y(grammable)39 b(Completion],)i(page)e(150\),)i(and)d(builtin)g
 (commands)f Ft(complete)p Fu(,)h Ft(compgen)p Fu(,)h(and)330
 2162 y Ft(compopt)p Fu(,)29 b(to)i(manipulate)g(it.)225
 2296 y Fq(\017)60 b Fu(Bash)26 b(has)f(command)h(history)f(\(see)i
@@ -21717,7 +21797,7 @@ f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(49)146
 1510 y Fs([)150 1626 y Fe([)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)33 b Fb(53)146 1862 y Fs(A)150 1978 y Fe(alias)9
+(:)g(:)g(:)33 b Fb(54)146 1862 y Fs(A)150 1978 y Fe(alias)9
 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(57)146 2213 y
@@ -21757,7 +21837,7 @@ g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
 Fb(50)146 3699 y Fs(D)150 3816 y Fe(declare)22 b Fc(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)35 b Fb(59)150 3903 y Fe(dirs)9 b Fc(:)14
+g(:)g(:)g(:)35 b Fb(60)150 3903 y Fe(dirs)9 b Fc(:)14
 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)24 b Fb(106)150 3990 y Fe(disown)e
@@ -21843,7 +21923,7 @@ g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 g(:)g(:)g(:)26 b Fb(65)2025 4339 y Fe(readarray)15 b
 Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)30 b Fb(66)2025 4427 y Fe(readonly)18 b Fc(:)d(:)e(:)g(:)g(:)g
+g(:)g(:)30 b Fb(67)2025 4427 y Fe(readonly)18 b Fc(:)d(:)e(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
 b Fb(53)2025 4515 y Fe(return)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
@@ -21870,7 +21950,7 @@ TeXDict begin 190 195 bop 150 -116 a Fu(App)s(endix)29
 b(D:)i(Indexes)2623 b(190)146 294 y Fs(T)150 410 y Fe(test)11
 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(53)150 497
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(54)150 497
 y Fe(times)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(55)150
@@ -22527,86 +22607,88 @@ TeXDict begin 194 199 bop 150 -116 a Fu(App)s(endix)29
 b(D:)i(Indexes)2623 b(194)150 264 y Fe(complete)27 b(\(TAB\))7
 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
-b Fb(145)150 352 y Fe(complete-command)29 b(\(M-!\))23
+b Fb(145)150 351 y Fe(complete-command)29 b(\(M-!\))23
 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)36 b Fb(146)150 440 y Fe(complete-filename)29
+(:)f(:)g(:)g(:)g(:)36 b Fb(146)150 439 y Fe(complete-filename)29
 b(\(M-/\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(145)150 528 y Fe(complete-hostname)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(145)150 527 y Fe(complete-hostname)
 c(\(M-@\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(146)150 616 y Fe
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(146)150 615 y Fe
 (complete-into-braces)d(\(M-{\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(146)150 704
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(146)150 702
 y Fe(complete-username)j(\(M-~\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
-b Fb(146)150 792 y Fe(complete-variable)c(\(M-$\))20
+b Fb(146)150 790 y Fe(complete-variable)c(\(M-$\))20
 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)33 b Fb(146)150 880 y Fe(copy-backward-word)d(\(\))7
+(:)g(:)h(:)f(:)33 b Fb(146)150 878 y Fe(copy-backward-word)d(\(\))7
 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(144)150 968 y Fe(copy-forward-word)
+(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(144)150 966 y Fe(copy-forward-word)
 29 b(\(\))9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(144)150
-1056 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13
+1053 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13
 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)36 b Fb(144)146 1320 y Fs(D)150 1438 y Fe(dabbrev-expand)29
+(:)g(:)g(:)36 b Fb(144)146 1310 y Fs(D)150 1428 y Fe(dabbrev-expand)29
 b(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
-b Fb(146)150 1527 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
+b Fb(146)150 1515 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)32 b Fb(142)150 1615 y Fe(delete-char-or-list)e
+(:)g(:)g(:)g(:)g(:)32 b Fb(142)150 1603 y Fe(delete-char-or-list)e
 (\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(145)150 1703 y Fe
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(145)150 1691 y Fe
 (delete-horizontal-space)31 b(\(\))11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(144)150
-1791 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
+1779 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
 Fe(,)f(...)g Fd(M--)p Fe(\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
-26 b Fb(144)150 1879 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
+26 b Fb(144)150 1866 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
 Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
-Fb(149)150 1958 y Fe(do-lowercase-version)30 b(\(M-A,)227
-2046 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
+Fb(149)150 1945 y Fe(do-lowercase-version)30 b(\(M-A,)227
+2033 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)25 b Fb(147)150 2134 y Fe(downcase-word)k(\(M-l\))
+g(:)g(:)g(:)g(:)g(:)25 b Fb(147)150 2120 y Fe(downcase-word)k(\(M-l\))
 12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(143)150 2222
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(143)150 2208
 y Fe(dump-functions)j(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-32 b Fb(148)150 2310 y Fe(dump-macros)c(\(\))7 b Fc(:)14
+32 b Fb(148)150 2296 y Fe(dump-macros)c(\(\))7 b Fc(:)14
 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
-b Fb(148)150 2398 y Fe(dump-variables)29 b(\(\))17 b
+b Fb(148)150 2384 y Fe(dump-variables)29 b(\(\))17 b
 Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(148)150
-2485 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(146)146 2749 y Fs(E)150
-2868 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
-b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(149)150 2956
+2471 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(146)146 2728 y Fs(E)150
+2845 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
+b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(149)150 2933
 y Fe(end-kbd-macro)g(\(C-x)d(\)\))13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28
-b Fb(146)150 3044 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
+b Fb(146)150 3021 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)35 b Fb(142)150 3132 y Fe(end-of-history)29 b(\(M->\))9
+(:)g(:)35 b Fb(142)150 3109 y Fe(end-of-history)29 b(\(M->\))9
 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(140)150 3220 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(140)150 3196 y
 Fe(end-of-line)k(\(C-e\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
-b Fb(139)150 3308 y Fe(exchange-point-and-mark)f(\(C-x)26
+b Fb(139)150 3284 y Fe(exchange-point-and-mark)f(\(C-x)26
 b(C-x\))17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)32
-b Fb(147)146 3571 y Fs(F)150 3690 y Fe(fetch-history)d(\(\))19
-b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(142)150
-3778 y Fe(forward-backward-delete-char)e(\(\))15 b Fc(:)f(:)f(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(142)150 3867 y Fe(forward-char)e
-(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b
-Fb(139)150 3955 y Fe(forward-search-history)i(\(C-s\))24
+b Fb(147)150 3371 y Fe(execute-named-command)e(\(M-x\))8
+b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+23 b Fb(149)146 3618 y Fs(F)150 3736 y Fe(fetch-history)29
+b(\(\))19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
+b Fb(142)150 3823 y Fe(forward-backward-delete-char)e(\(\))15
+b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(142)150
+3911 y Fe(forward-char)e(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)29 b Fb(139)150 3999 y Fe(forward-search-history)i(\(C-s\))24
 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(140)150 4042 y Fe(forward-word)28 b(\(M-f\))14 b
+b Fb(140)150 4086 y Fe(forward-word)28 b(\(M-f\))14 b
 Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(139)146 4295
-y Fs(G)150 4414 y Fe(glob-complete-word)h(\(M-g\))16
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(139)146 4333
+y Fs(G)150 4450 y Fe(glob-complete-word)h(\(M-g\))16
 b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)31 b Fb(148)150 4502 y Fe(glob-expand-word)e(\(C-x)e(*\))c
+g(:)g(:)31 b Fb(148)150 4538 y Fe(glob-expand-word)e(\(C-x)e(*\))c
 Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)38 b Fb(148)150 4590 y Fe(glob-list-expansions)30
+(:)g(:)g(:)38 b Fb(148)150 4625 y Fe(glob-list-expansions)30
 b(\(C-x)d(g\))13 b Fc(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
 (:)g(:)h(:)27 b Fb(148)2021 294 y Fs(H)2025 422 y Fe
 (history-and-alias-expand-line)32 b(\(\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)
@@ -23018,7 +23100,7 @@ g(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(3)150 2348 y(pro)r(cess)h(substitution)
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25 b Fb(35)150
 2435 y(programmable)i(completion)8 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23
-b Fb(149)150 2522 y(prompting)15 b Fc(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(150)150 2522 y(prompting)15 b Fc(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)30 b Fb(107)146
 2765 y Fs(Q)150 2881 y Fb(quoting)16 b Fc(:)d(:)g(:)g(:)g(:)g(:)h(:)f
@@ -23065,7 +23147,7 @@ b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21
 b Fb(46)2025 1046 y(sp)r(ecial)27 b(builtin)16 b Fc(:)d(:)g(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(4,)26 b(79)2025
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(4,)26 b(80)2025
 1136 y(startup)f(\014les)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(96)2025 1226
index 84d52c36262e7847083331c2c6c1a6700b63e062..6cdefaf284c874332647d1fd2f3cc32f31f513dc 100644 (file)
@@ -78,11 +78,11 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
               variable.  Each non-option argument is a command as it would ap-
               pear  in  a  r\bre\bea\bad\bdl\bli\bin\bne\be  initialization file such as _\b._\bi_\bn_\bp_\bu_\bt_\br_\bc, but
               each binding or command must be passed as a  separate  argument;
-              e.g.,  '"\C-x\C-r":  re-read-init-file'.   In  the following de-
-              scriptions, output available to be re-read is formatted as  com-
-              mands  that  would  appear  in a r\bre\bea\bad\bdl\bli\bin\bne\be initialization file or
-              that would be supplied as individual arguments to  a  b\bbi\bin\bnd\bd  com-
-              mand.  Options, if supplied, have the following meanings:
+              e.g.,  \C-x\C-r:  re-read-init-file.   In the following descrip-
+              tions, output available to be re-read is formatted  as  commands
+              that  would  appear  in  a  r\bre\bea\bad\bdl\bli\bin\bne\be initialization file or that
+              would be supplied as individual arguments  to  a  b\bbi\bin\bnd\bd  command.
+              Options, if supplied, have the following meanings:
               -\b-m\bm _\bk_\be_\by_\bm_\ba_\bp
                      Use _\bk_\be_\by_\bm_\ba_\bp as the keymap to be affected by the subsequent
                      bindings.  Acceptable _\bk_\be_\by_\bm_\ba_\bp names are _\be_\bm_\ba_\bc_\bs_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\b-
@@ -960,7 +960,7 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                      corresponding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt in the same way as e\bec\bch\bho\bo -\b-e\be.
               %\b%q\bq     causes p\bpr\bri\bin\bnt\btf\bf to output the corresponding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt  in  a
                      format  that can be reused as shell input.  %\b%q\bq and %\b%Q\bQ use
-                     the $\b$'\b''\b' quoting style if any characters in  the  argument
+                     the $\b$ quoting style if any  characters  in  the  argument
                      string  require  it, and backslash quoting otherwise.  If
                      the format string uses the _\bp_\br_\bi_\bn_\bt_\bf alternate  form,  these
                      two  formats  quote  the  argument  string  using  single
@@ -1536,40 +1536,40 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                       in _\bb_\ba_\bs_\bh(1) under P\bPa\bat\bth\bhn\bna\bam\bme\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn are enabled.
 
               e\bex\bxt\btq\bqu\buo\bot\bte\be
-                      If set, $\b$'_\bs_\bt_\br_\bi_\bn_\bg' and  $\b$"_\bs_\bt_\br_\bi_\bn_\bg"  quoting  is  performed
-                      within   $\b${\b{_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br}\b}   expansions  enclosed  in  double
-                      quotes.  This option is enabled by default.
+                      If set, $\b$_\bs_\bt_\br_\bi_\bn_\bg and $\b$_\bs_\bt_\br_\bi_\bn_\bg quoting is performed  within
+                      $\b${\b{_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br}\b} expansions enclosed in double quotes.  This
+                      option is enabled by default.
 
               f\bfa\bai\bil\blg\bgl\blo\bob\bb
-                      If set, patterns which fail to  match  filenames  during
+                      If  set,  patterns  which fail to match filenames during
                       pathname expansion result in an expansion error.
 
               f\bfo\bor\brc\bce\be_\b_f\bfi\big\bgn\bno\bor\bre\be
-                      If  set,  the  suffixes  specified  by the F\bFI\bIG\bGN\bNO\bOR\bRE\bE shell
-                      variable cause words to be ignored when performing  word
+                      If set, the suffixes  specified  by  the  F\bFI\bIG\bGN\bNO\bOR\bRE\b shell
+                      variable  cause words to be ignored when performing word
                       completion even if the ignored words are the only possi-
-                      ble  completions.   See S\bSH\bHE\bEL\bLL\bL V\bVA\bAR\bRI\bIA\bAB\bBL\bLE\bES\bS in _\bb_\ba_\bs_\bh(1) for a
-                      description of F\bFI\bIG\bGN\bNO\bOR\bRE\bE.  This option is enabled  by  de-
+                      ble completions.  See S\bSH\bHE\bEL\bLL\bL V\bVA\bAR\bRI\bIA\bAB\bBL\bLE\bES\bS in _\bb_\ba_\bs_\bh(1)  for  a
+                      description  of  F\bFI\bIG\bGN\bNO\bOR\bRE\bE.  This option is enabled by de-
                       fault.
 
               g\bgl\blo\bob\bba\bas\bsc\bci\bii\bir\bra\ban\bng\bge\bes\bs
-                      If  set,  range  expressions  used  in  pattern matching
-                      bracket expressions (see P\bPa\bat\btt\bte\ber\brn\bn  M\bMa\bat\btc\bch\bhi\bin\bng\bg  in  _\bb_\ba_\bs_\bh(1))
+                      If set,  range  expressions  used  in  pattern  matching
+                      bracket  expressions  (see  P\bPa\bat\btt\bte\ber\brn\bn M\bMa\bat\btc\bch\bhi\bin\bng\bg in _\bb_\ba_\bs_\bh(1))
                       behave as if in the traditional C locale when performing
-                      comparisons.   That  is,  the current locale's collating
-                      sequence is not taken into account, so b\bb will  not  col-
-                      late  between  A\bA  and  B\bB,  and upper-case and lower-case
+                      comparisons.  That is, the  current  locale's  collating
+                      sequence  is  not taken into account, so b\bb will not col-
+                      late between A\bA and  B\bB,  and  upper-case  and  lower-case
                       ASCII characters will collate together.
 
               g\bgl\blo\bob\bbs\bsk\bki\bip\bpd\bdo\bot\bts\bs
-                      If set, pathname expansion will never  match  the  file-
-                      names  and even if the pattern begins with a This option
+                      If  set,  pathname  expansion will never match the file-
+                      names and even if the pattern begins with a This  option
                       is enabled by default.
 
               g\bgl\blo\bob\bbs\bst\bta\bar\br
                       If set, the pattern *\b**\b* used in a pathname expansion con-
-                      text will match all files and zero or  more  directories
-                      and  subdirectories.  If the pattern is followed by a /\b/,
+                      text  will  match all files and zero or more directories
+                      and subdirectories.  If the pattern is followed by a  /\b/,
                       only directories and subdirectories match.
 
               g\bgn\bnu\bu_\b_e\ber\brr\brf\bfm\bmt\bt
@@ -1577,25 +1577,25 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                       GNU error message format.
 
               h\bhi\bis\bst\bta\bap\bpp\bpe\ben\bnd\bd
-                      If set, the history list is appended to the  file  named
+                      If  set,  the history list is appended to the file named
                       by the value of the H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE variable when the shell ex-
                       its, rather than overwriting the file.
 
               h\bhi\bis\bst\btr\bre\bee\bed\bdi\bit\bt
-                      If  set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, a user is given the
+                      If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, a user is given  the
                       opportunity to re-edit a failed history substitution.
 
               h\bhi\bis\bst\btv\bve\ber\bri\bif\bfy\by
-                      If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, the results of  his-
-                      tory  substitution  are  not  immediately  passed to the
-                      shell parser.  Instead, the  resulting  line  is  loaded
+                      If  set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, the results of his-
+                      tory substitution are  not  immediately  passed  to  the
+                      shell  parser.   Instead,  the  resulting line is loaded
                       into the r\bre\bea\bad\bdl\bli\bin\bne\be editing buffer, allowing further modi-
                       fication.
 
               h\bho\bos\bst\btc\bco\bom\bmp\bpl\ble\bet\bte\be
                       If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, b\bba\bas\bsh\bh will attempt to
-                      perform  hostname  completion when a word containing a @\b@
-                      is being completed (see  C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg  under  R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\b in
+                      perform hostname completion when a word containing  a  @\b@
+                      is  being  completed  (see  C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg under R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE in
                       _\bb_\ba_\bs_\bh(1)).  This is enabled by default.
 
               h\bhu\bup\bpo\bon\bne\bex\bxi\bit\bt
@@ -1603,23 +1603,23 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                       active login shell exits.
 
               i\bin\bnh\bhe\ber\bri\bit\bt_\b_e\ber\brr\bre\bex\bxi\bit\bt
-                      If  set,  command substitution inherits the value of the
-                      e\ber\brr\bre\bex\bxi\bit\boption, instead of unsetting it in the  subshell
-                      environment.   This option is enabled when _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be is
+                      If set, command substitution inherits the value  of  the
+                      e\ber\brr\bre\bex\bxi\bit\b option, instead of unsetting it in the subshell
+                      environment.  This option is enabled when _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\b is
                       enabled.
 
               i\bin\bnt\bte\ber\bra\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs
                       If set, allow a word beginning with #\b# to cause that word
-                      and all remaining characters on that line to be  ignored
+                      and  all remaining characters on that line to be ignored
                       in an interactive shell (see C\bCO\bOM\bMM\bME\bEN\bNT\bTS\bS in _\bb_\ba_\bs_\bh(1)).  This
                       option is enabled by default.
 
               l\bla\bas\bst\btp\bpi\bip\bpe\be
-                      If  set,  and  job control is not active, the shell runs
+                      If set, and job control is not active,  the  shell  runs
                       the last command of a pipeline not executed in the back-
                       ground in the current shell environment.
 
-              l\bli\bit\bth\bhi\bis\bst\bt If set, and the c\bcm\bmd\bdh\bhi\bis\bst\bt option  is  enabled,  multi-line
+              l\bli\bit\bth\bhi\bis\bst\bt If  set,  and  the c\bcm\bmd\bdh\bhi\bis\bst\bt option is enabled, multi-line
                       commands are saved to the history with embedded newlines
                       rather than using semicolon separators where possible.
 
@@ -1630,125 +1630,125 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                       tribute is not inherited.
 
               l\blo\boc\bca\bal\blv\bva\bar\br_\b_u\bun\bns\bse\bet\bt
-                      If  set,  calling  u\bun\bns\bse\bet\bt  on local variables in previous
-                      function scopes marks them so  subsequent  lookups  find
-                      them  unset until that function returns. This is identi-
-                      cal to the behavior of unsetting local variables at  the
+                      If set, calling u\bun\bns\bse\bet\bt on  local  variables  in  previous
+                      function  scopes  marks  them so subsequent lookups find
+                      them unset until that function returns. This is  identi-
+                      cal  to the behavior of unsetting local variables at the
                       current function scope.
 
               l\blo\bog\bgi\bin\bn_\b_s\bsh\bhe\bel\bll\bl
-                      The  shell  sets this option if it is started as a login
+                      The shell sets this option if it is started as  a  login
                       shell (see I\bIN\bNV\bVO\bOC\bCA\bAT\bTI\bIO\bON\bN in _\bb_\ba_\bs_\bh(1)).  The value may not be
                       changed.
 
               m\bma\bai\bil\blw\bwa\bar\brn\bn
-                      If set, and a file that b\bba\bas\bsh\bh is checking  for  mail  has
-                      been  accessed  since the last time it was checked, b\bba\bas\bsh\bh
+                      If  set,  and  a file that b\bba\bas\bsh\bh is checking for mail has
+                      been accessed since the last time it was  checked,  b\bba\bas\bsh\bh
                       displays the message
 
               n\bno\bo_\b_e\bem\bmp\bpt\bty\by_\b_c\bcm\bmd\bd_\b_c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
-                      If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, b\bba\bas\bsh\bh  will  not  at-
-                      tempt  to  search the P\bPA\bAT\bTH\bH for possible completions when
+                      If  set,  and  r\bre\bea\bad\bdl\bli\bin\bne\be is being used, b\bba\bas\bsh\bh will not at-
+                      tempt to search the P\bPA\bAT\bTH\bH for possible  completions  when
                       completion is attempted on an empty line.
 
               n\bno\boc\bca\bas\bse\beg\bgl\blo\bob\bb
-                      If set, b\bba\bas\bsh\bh matches  filenames  in  a  case-insensitive
+                      If  set,  b\bba\bas\bsh\bh  matches  filenames in a case-insensitive
                       fashion when performing pathname expansion (see P\bPa\bat\bth\bhn\bna\bam\bme\be
                       E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn in _\bb_\ba_\bs_\bh(1)).
 
               n\bno\boc\bca\bas\bse\bem\bma\bat\btc\bch\bh
-                      If  set,  b\bba\bas\bsh\bh  matches  patterns  in a case-insensitive
+                      If set, b\bba\bas\bsh\bh  matches  patterns  in  a  case-insensitive
                       fashion when performing matching while executing c\bca\bas\bse\be or
                       [\b[[\b[ conditional commands, when performing pattern substi-
-                      tution word expansions, or when filtering possible  com-
+                      tution  word expansions, or when filtering possible com-
                       pletions as part of programmable completion.
 
               n\bno\boe\bex\bxp\bpa\ban\bnd\bd_\b_t\btr\bra\ban\bns\bsl\bla\bat\bti\bio\bon\bn
-                      If  set,  b\bba\bas\bsh\bh encloses the translated results of $\b$"\b"..."\b"
-                      quoting in single quotes instead of double  quotes.   If
+                      If set, b\bba\bas\bsh\bh encloses the  translated  results  of  $\b$...
+                      quoting  in  single quotes instead of double quotes.  If
                       the string is not translated, this has no effect.
 
               n\bnu\bul\bll\blg\bgl\blo\bob\bb
                       If set, pathname expansion patterns which match no files
-                      (see  P\bPa\bat\bth\bhn\bna\bam\bme\be  E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn  in _\bb_\ba_\bs_\bh(1)) expand to nothing
+                      (see P\bPa\bat\bth\bhn\bna\bam\bme\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn in _\bb_\ba_\bs_\bh(1))  expand  to  nothing
                       and are removed, rather than expanding to themselves.
 
               p\bpa\bat\bts\bsu\bub\bb_\b_r\bre\bep\bpl\bla\bac\bce\bem\bme\ben\bnt\bt
                       If set, b\bba\bas\bsh\bh expands occurrences of &\b& in the replacement
-                      string of pattern substitution to the  text  matched  by
-                      the  pattern,  as described under P\bPa\bar\bra\bam\bme\bet\bte\ber\br E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn in
+                      string  of  pattern  substitution to the text matched by
+                      the pattern, as described under P\bPa\bar\bra\bam\bme\bet\bte\ber\br  E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\b in
                       _\bb_\ba_\bs_\bh(1).  This option is enabled by default.
 
               p\bpr\bro\bog\bgc\bco\bom\bmp\bp
                       If set, the programmable completion facilities (see P\bPr\bro\bo-\b-
-                      g\bgr\bra\bam\bmm\bma\bab\bbl\ble\bC\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn in _\bb_\ba_\bs_\bh(1)) are enabled.  This  op-
+                      g\bgr\bra\bam\bmm\bma\bab\bbl\ble\b C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn in _\bb_\ba_\bs_\bh(1)) are enabled.  This op-
                       tion is enabled by default.
 
               p\bpr\bro\bog\bgc\bco\bom\bmp\bp_\b_a\bal\bli\bia\bas\bs
-                      If  set,  and  programmable  completion is enabled, b\bba\bas\bsh\bh
-                      treats a command name that doesn't have any  completions
-                      as  a possible alias and attempts alias expansion. If it
-                      has an alias, b\bba\bas\bsh\bh attempts programmable completion  us-
+                      If set, and programmable  completion  is  enabled,  b\bba\bas\bsh\bh
+                      treats  a command name that doesn't have any completions
+                      as a possible alias and attempts alias expansion. If  it
+                      has  an alias, b\bba\bas\bsh\bh attempts programmable completion us-
                       ing the command word resulting from the expanded alias.
 
               p\bpr\bro\bom\bmp\bpt\btv\bva\bar\brs\bs
                       If set, prompt strings undergo parameter expansion, com-
-                      mand  substitution,  arithmetic expansion, and quote re-
-                      moval after being expanded as described in P\bPR\bRO\bOM\bMP\bPT\bTI\bIN\bNG\b in
+                      mand substitution, arithmetic expansion, and  quote  re-
+                      moval  after being expanded as described in P\bPR\bRO\bOM\bMP\bPT\bTI\bIN\bNG\bG in
                       _\bb_\ba_\bs_\bh(1).  This option is enabled by default.
 
               r\bre\bes\bst\btr\bri\bic\bct\bte\bed\bd_\b_s\bsh\bhe\bel\bll\bl
-                      The  shell  sets  this  option  if  it is started in re-
-                      stricted mode (see R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL  in  _\bb_\ba_\bs_\bh(1)).   The
-                      value  may  not  be changed.  This is not reset when the
-                      startup files are executed, allowing the  startup  files
+                      The shell sets this option  if  it  is  started  in  re-
+                      stricted  mode  (see  R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL in _\bb_\ba_\bs_\bh(1)).  The
+                      value may not be changed.  This is not  reset  when  the
+                      startup  files  are executed, allowing the startup files
                       to discover whether or not a shell is restricted.
 
               s\bsh\bhi\bif\bft\bt_\b_v\bve\ber\brb\bbo\bos\bse\be
-                      If  set,  the s\bsh\bhi\bif\bft\bt builtin prints an error message when
+                      If set, the s\bsh\bhi\bif\bft\bt builtin prints an error  message  when
                       the shift count exceeds the number of positional parame-
                       ters.
 
               s\bso\bou\bur\brc\bce\bep\bpa\bat\bth\bh
                       If set, the .\b. (s\bso\bou\bur\brc\bce\be) builtin uses the value of P\bPA\bAT\bTH\bH to
-                      find the directory containing the file  supplied  as  an
+                      find  the  directory  containing the file supplied as an
                       argument.  This option is enabled by default.
 
               v\bva\bar\brr\bre\bed\bdi\bir\br_\b_c\bcl\blo\bos\bse\be
-                      If  set, the shell automatically closes file descriptors
-                      assigned using the  _\b{_\bv_\ba_\br_\bn_\ba_\bm_\be_\b}  redirection  syntax  (see
-                      R\bRE\bED\bDI\bIR\bRE\bEC\bCT\bTI\bIO\bON\b in  _\bb_\ba_\bs_\bh(1))  instead  of leaving them open
+                      If set, the shell automatically closes file  descriptors
+                      assigned  using  the  _\b{_\bv_\ba_\br_\bn_\ba_\bm_\be_\b}  redirection syntax (see
+                      R\bRE\bED\bDI\bIR\bRE\bEC\bCT\bTI\bIO\bON\bin _\bb_\ba_\bs_\bh(1)) instead  of  leaving  them  open
                       when the command completes.
 
               x\bxp\bpg\bg_\b_e\bec\bch\bho\bo
-                      If set, the e\bec\bch\bho\bo builtin  expands  backslash-escape  se-
-                      quences  by  default.  If the p\bpo\bos\bsi\bix\bx shell option is also
+                      If  set,  the  e\bec\bch\bho\bo builtin expands backslash-escape se-
+                      quences by default.  If the p\bpo\bos\bsi\bix\bx shell option  is  also
                       enabled, e\bec\bch\bho\bo does not interpret any options.
 
        s\bsu\bus\bsp\bpe\ben\bnd\bd [-\b-f\bf]
-              Suspend the execution of this shell until it receives a  S\bSI\bIG\bGC\bCO\bON\bNT\bT
-              signal.   A login shell, or a shell without job control enabled,
-              cannot be suspended; the -\b-f\bf option can be used to override  this
-              and  force  the  suspension.   The return status is 0 unless the
-              shell is a login shell or job control is not enabled and  -\b-f\b is
+              Suspend  the execution of this shell until it receives a S\bSI\bIG\bGC\bCO\bON\bNT\bT
+              signal.  A login shell, or a shell without job control  enabled,
+              cannot  be suspended; the -\b-f\bf option can be used to override this
+              and force the suspension.  The return status  is  0  unless  the
+              shell  is  a login shell or job control is not enabled and -\b-f\bf is
               not supplied.
 
        t\bte\bes\bst\bt _\be_\bx_\bp_\br
        [\b[ _\be_\bx_\bp_\br ]\b]
               Return a status of 0 (true) or 1 (false) depending on the evalu-
-              ation  of  the  conditional  expression _\be_\bx_\bp_\br.  Each operator and
-              operand must be a separate argument.  Expressions  are  composed
-              of  the primaries described in _\bb_\ba_\bs_\bh(1) under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bS-\b-
+              ation of the conditional expression  _\be_\bx_\bp_\br.   Each  operator  and
+              operand  must  be a separate argument.  Expressions are composed
+              of the primaries described in _\bb_\ba_\bs_\bh(1) under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\b E\bEX\bXP\bPR\bRE\bES\bS-\b-
               S\bSI\bIO\bON\bNS\bS.  t\bte\bes\bst\bt does not accept any options, nor does it accept and
               ignore an argument of -\b--\b- as signifying the end of options.
 
-              Expressions may  be  combined  using  the  following  operators,
-              listed  in  decreasing  order of precedence.  The evaluation de-
-              pends on the number of arguments; see  below.   Operator  prece-
+              Expressions  may  be  combined  using  the  following operators,
+              listed in decreasing order of precedence.   The  evaluation  de-
+              pends  on  the  number of arguments; see below.  Operator prece-
               dence is used when there are five or more arguments.
               !\b! _\be_\bx_\bp_\br True if _\be_\bx_\bp_\br is false.
               (\b( _\be_\bx_\bp_\br )\b)
-                     Returns  the value of _\be_\bx_\bp_\br.  This may be used to override
+                     Returns the value of _\be_\bx_\bp_\br.  This may be used to  override
                      the normal precedence of operators.
               _\be_\bx_\bp_\br_\b1 -a\ba _\be_\bx_\bp_\br_\b2
                      True if both _\be_\bx_\bp_\br_\b1 and _\be_\bx_\bp_\br_\b2 are true.
@@ -1765,161 +1765,161 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                      null.
               2 arguments
                      If the first argument is !\b!, the expression is true if and
-                     only if the second argument is null.  If the first  argu-
-                     ment  is one of the unary conditional operators listed in
-                     _\bb_\ba_\bs_\bh(1) under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS, the expression  is
+                     only  if the second argument is null.  If the first argu-
+                     ment is one of the unary conditional operators listed  in
+                     _\bb_\ba_\bs_\bh(1)  under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS, the expression is
                      true if the unary test is true.  If the first argument is
                      not a valid unary conditional operator, the expression is
                      false.
               3 arguments
                      The following conditions are applied in the order listed.
-                     If  the  second argument is one of the binary conditional
-                     operators listed in  _\bb_\ba_\bs_\bh(1)  under  C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\b E\bEX\bXP\bPR\bRE\bES\bS-\b-
-                     S\bSI\bIO\bON\bNS\bS,  the result of the expression is the result of the
-                     binary test  using  the  first  and  third  arguments  as
-                     operands.   The -\b-a\ba and -\b-o\bo operators are considered binary
-                     operators when there are three arguments.  If  the  first
+                     If the second argument is one of the  binary  conditional
+                     operators  listed  in  _\bb_\ba_\bs_\bh(1)  under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bS-\b-
+                     S\bSI\bIO\bON\bNS\bS, the result of the expression is the result of  the
+                     binary  test  using  the  first  and  third  arguments as
+                     operands.  The -\b-a\ba and -\b-o\bo operators are considered  binary
+                     operators  when  there are three arguments.  If the first
                      argument is !\b!, the value is the negation of the two-argu-
-                     ment  test  using the second and third arguments.  If the
+                     ment test using the second and third arguments.   If  the
                      first argument is exactly (\b( and the third argument is ex-
-                     actly )\b), the result is the one-argument test of the  sec-
+                     actly  )\b), the result is the one-argument test of the sec-
                      ond argument.  Otherwise, the expression is false.
               4 arguments
                      The following conditions are applied in the order listed.
                      If the first argument is !\b!, the result is the negation of
-                     the  three-argument  expression composed of the remaining
-                     arguments.  the two-argument test using  the  second  and
-                     third  arguments.  If the first argument is exactly (\b( and
-                     the fourth argument is exactly )\b), the result is the  two-
-                     argument  test of the second and third arguments.  Other-
+                     the three-argument expression composed of  the  remaining
+                     arguments.   the  two-argument  test using the second and
+                     third arguments.  If the first argument is exactly (\b and
+                     the  fourth argument is exactly )\b), the result is the two-
+                     argument test of the second and third arguments.   Other-
                      wise, the expression is parsed and evaluated according to
                      precedence using the rules listed above.
               5 or more arguments
-                     The expression  is  parsed  and  evaluated  according  to
+                     The  expression  is  parsed  and  evaluated  according to
                      precedence using the rules listed above.
 
               When the shell is in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, or if the expression is part of
               the [\b[[\b[ command, the <\b< and >\b> operators sort using the current lo-
-              cale.   If  the  shell is not in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, the t\bte\bes\bst\bt and [\b[ com-
+              cale.  If the shell is not in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, the t\bte\bes\bst\bt  and  [\b com-
               mands sort lexicographically using ASCII ordering.
 
-       t\bti\bim\bme\bes\bs  Print the accumulated user and system times for  the  shell  and
+       t\bti\bim\bme\bes\bs  Print  the  accumulated  user and system times for the shell and
               for processes run from the shell.  The return status is 0.
 
        t\btr\bra\bap\bp [-\b-l\blp\bp] [[_\ba_\bc_\bt_\bi_\bo_\bn] _\bs_\bi_\bg_\bs_\bp_\be_\bc ...]
               The _\ba_\bc_\bt_\bi_\bo_\bn is a command that is read and executed when the shell
               receives signal(s) _\bs_\bi_\bg_\bs_\bp_\be_\bc.  If _\ba_\bc_\bt_\bi_\bo_\bn is absent (and there is a
-              single  _\bs_\bi_\bg_\bs_\bp_\be_\bc)  or  -\b-,  each  specified signal is reset to its
-              original disposition (the value it  had  upon  entrance  to  the
-              shell).   If  _\ba_\bc_\bt_\bi_\bo_\bn  is the null string the signal specified by
-              each _\bs_\bi_\bg_\bs_\bp_\be_\bc is ignored by the shell and by the commands it  in-
+              single _\bs_\bi_\bg_\bs_\bp_\be_\bc) or -\b-, each specified  signal  is  reset  to  its
+              original  disposition  (the  value  it  had upon entrance to the
+              shell).  If _\ba_\bc_\bt_\bi_\bo_\bn is the null string the  signal  specified  by
+              each  _\bs_\bi_\bg_\bs_\bp_\be_\bc is ignored by the shell and by the commands it in-
               vokes.
 
-              If  no arguments are supplied, t\btr\bra\bap\bp displays the actions associ-
+              If no arguments are supplied, t\btr\bra\bap\bp displays the actions  associ-
               ated with each trapped signal as a set of t\btr\bra\bap\bp commands that can
-              be reused as shell input to restore the current signal  disposi-
-              tions.   If  -\b-p\bp  is  given, and _\ba_\bc_\bt_\bi_\bo_\bn is not present, then t\btr\bra\bap\bp
-              displays the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc  or,  if  none
+              be  reused as shell input to restore the current signal disposi-
+              tions.  If -\b-p\bp is given, and _\ba_\bc_\bt_\bi_\bo_\bn is  not  present,  then  t\btr\bra\bap\bp
+              displays  the  actions  associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc or, if none
               are supplied, for all trapped signals, as a set of t\btr\bra\bap\bp commands
-              that  can be reused as shell input to restore the current signal
-              dispositions.  The -\b-P\bP option  behaves  similarly,  but  displays
-              only  the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc argument.  -\b-P\bP re-
-              quires at least one _\bs_\bi_\bg_\bs_\bp_\be_\bc argument.  The -\b-P\bP or -\b-p\bp  options  to
-              t\btr\bra\bap\b may  be used in a subshell environment (e.g., command sub-
-              stitution) and, as long as they are used before t\btr\bra\bap\bp is used  to
-              change  a  signal's handling, will display the state of its par-
+              that can be reused as shell input to restore the current  signal
+              dispositions.   The  -\b-P\bP  option  behaves similarly, but displays
+              only the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc argument.  -\b-P\b re-
+              quires  at  least one _\bs_\bi_\bg_\bs_\bp_\be_\bc argument.  The -\b-P\bP or -\b-p\bp options to
+              t\btr\bra\bap\bmay be used in a subshell environment (e.g.,  command  sub-
+              stitution)  and, as long as they are used before t\btr\bra\bap\bp is used to
+              change a signal's handling, will display the state of  its  par-
               ent's traps.
 
-              The -\b-l\bl option causes t\btr\bra\bap\bp to print a list of  signal  names  and
-              their  corresponding  numbers.   Each _\bs_\bi_\bg_\bs_\bp_\be_\bc is either a signal
-              name defined in <_\bs_\bi_\bg_\bn_\ba_\bl_\b._\bh>, or a signal  number.   Signal  names
+              The  -\b-l\bl  option  causes t\btr\bra\bap\bp to print a list of signal names and
+              their corresponding numbers.  Each _\bs_\bi_\bg_\bs_\bp_\be_\bc is  either  a  signal
+              name  defined  in  <_\bs_\bi_\bg_\bn_\ba_\bl_\b._\bh>, or a signal number.  Signal names
               are case insensitive and the S\bSI\bIG\bG prefix is optional.
 
-              If  a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bEX\bXI\bIT\bT (0) the command _\ba_\bc_\bt_\bi_\bo_\bn is executed on exit
-              from the shell.  If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is D\bDE\bEB\bBU\bUG\bG, the  command  _\ba_\bc_\bt_\bi_\bo_\b is
+              If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bEX\bXI\bIT\bT (0) the command _\ba_\bc_\bt_\bi_\bo_\bn is executed on  exit
+              from  the  shell.   If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is D\bDE\bEB\bBU\bUG\bG, the command _\ba_\bc_\bt_\bi_\bo_\bn is
               executed before every _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, _\bf_\bo_\br command, _\bc_\ba_\bs_\be command,
-              _\bs_\be_\bl_\be_\bc_\b command,  (( arithmetic command, [[ conditional command,
+              _\bs_\be_\bl_\be_\bc_\bcommand, (( arithmetic command, [[  conditional  command,
               arithmetic _\bf_\bo_\br command, and before the first command executes in
-              a shell function (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR in _\bb_\ba_\bs_\bh(1)).  Refer  to  the
-              description  of the e\bex\bxt\btd\bde\beb\bbu\bug\bg option to the s\bsh\bho\bop\bpt\bt builtin for de-
-              tails of its effect on the D\bDE\bEB\bBU\bUG\bG trap.  If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is  R\bRE\bET\bTU\bUR\bRN\bN,
-              the  command  _\ba_\bc_\bt_\bi_\bo_\bn is executed each time a shell function or a
-              script executed with the .\b. or s\bso\bou\bur\brc\bce\be builtins  finishes  execut-
+              a  shell  function (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR in _\bb_\ba_\bs_\bh(1)).  Refer to the
+              description of the e\bex\bxt\btd\bde\beb\bbu\bug\bg option to the s\bsh\bho\bop\bpt\bt builtin for  de-
+              tails  of its effect on the D\bDE\bEB\bBU\bUG\bG trap.  If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is R\bRE\bET\bTU\bUR\bRN\bN,
+              the command _\ba_\bc_\bt_\bi_\bo_\bn is executed each time a shell function  or  a
+              script  executed  with the .\b. or s\bso\bou\bur\brc\bce\be builtins finishes execut-
               ing.
 
-              If  a  _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bER\bRR\bR, the command _\ba_\bc_\bt_\bi_\bo_\bn is executed whenever a
+              If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bER\bRR\bR, the command _\ba_\bc_\bt_\bi_\bo_\bn is executed  whenever  a
               pipeline (which may consist of a single simple command), a list,
               or a compound command returns a non-zero exit status, subject to
-              the following conditions.  The E\bER\bRR\bR trap is not executed  if  the
+              the  following  conditions.  The E\bER\bRR\bR trap is not executed if the
               failed command is part of the command list immediately following
-              a  w\bwh\bhi\bil\ble\be  or u\bun\bnt\bti\bil\bl keyword, part of the test in an _\bi_\bf statement,
+              a w\bwh\bhi\bil\ble\be or u\bun\bnt\bti\bil\bl keyword, part of the test in an  _\bi_\b statement,
               part of a command executed in a &\b&&\b& or |\b||\b| list except the command
-              following the final &\b&&\b& or |\b||\b|, any command in a pipeline but  the
-              last,  or  if the command's return value is being inverted using
+              following  the final &\b&&\b& or |\b||\b|, any command in a pipeline but the
+              last, or if the command's return value is being  inverted  using
               !\b!.  These are the same conditions obeyed by the e\ber\brr\bre\bex\bxi\bit\bt (-\b-e\be) op-
               tion.
 
               When the shell is not interactive, signals ignored upon entry to
               the shell cannot be trapped or reset.  Interactive shells permit
               trapping signals ignored on entry.  Trapped signals that are not
-              being ignored are reset to their original values in  a  subshell
-              or  subshell environment when one is created.  The return status
+              being  ignored  are reset to their original values in a subshell
+              or subshell environment when one is created.  The return  status
               is false if any _\bs_\bi_\bg_\bs_\bp_\be_\bc is invalid; otherwise t\btr\bra\bap\bp returns true.
 
        t\btr\bru\bue\be   Does nothing, returns a 0 status.
 
        t\bty\byp\bpe\be [-\b-a\baf\bft\btp\bpP\bP] _\bn_\ba_\bm_\be [_\bn_\ba_\bm_\be ...]
-              With no options, indicate how each _\bn_\ba_\bm_\be would be interpreted  if
+              With  no options, indicate how each _\bn_\ba_\bm_\be would be interpreted if
               used as a command name.  If the -\b-t\bt option is used, t\bty\byp\bpe\be prints a
-              string  which  is  one  of _\ba_\bl_\bi_\ba_\bs, _\bk_\be_\by_\bw_\bo_\br_\bd, _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn, _\bb_\bu_\bi_\bl_\bt_\bi_\bn, or
-              _\bf_\bi_\bl_\bif  _\bn_\ba_\bm_\be  is  an  alias,  shell  reserved  word,  function,
-              builtin,  or executable disk file, respectively.  If the _\bn_\ba_\bm_\be is
-              not found, then nothing is printed, and t\bty\byp\bpe\be returns a  non-zero
-              exit  status.  If the -\b-p\bp option is used, t\bty\byp\bpe\be either returns the
-              name of the executable file that would  be  found  by  searching
-              $\b$P\bPA\bAT\bTH\b if  _\bn_\ba_\bm_\be  were specified as a command name, or nothing if
-              would not return _\bf_\bi_\bl_\be.  The -\b-P\bP option forces a P\bPA\bAT\bTH\bH  search  for
-              each  _\bn_\ba_\bm_\be,  even  if  would  not  return _\bf_\bi_\bl_\be.  If a command is
+              string which is one of _\ba_\bl_\bi_\ba_\bs,  _\bk_\be_\by_\bw_\bo_\br_\bd,  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn,  _\bb_\bu_\bi_\bl_\bt_\bi_\bn,  or
+              _\bf_\bi_\bl_\b if  _\bn_\ba_\bm_\be  is  an  alias,  shell  reserved  word, function,
+              builtin, or executable disk file, respectively.  If the _\bn_\ba_\bm_\b is
+              not  found, then nothing is printed, and t\bty\byp\bpe\be returns a non-zero
+              exit status.  If the -\b-p\bp option is used, t\bty\byp\bpe\be either returns  the
+              name  of  the  executable  file that would be found by searching
+              $\b$P\bPA\bAT\bTH\bif _\bn_\ba_\bm_\be were specified as a command name,  or  nothing  if
+              would  not  return _\bf_\bi_\bl_\be.  The -\b-P\bP option forces a P\bPA\bAT\bTH\bH search for
+              each _\bn_\ba_\bm_\be, even if would not  return  _\bf_\bi_\bl_\be.   If  a  command  is
               hashed, -\b-p\bp and -\b-P\bP print the hashed value, which is not necessar-
-              ily the file that appears first in P\bPA\bAT\bTH\bH.  If the  -\b-a\ba  option  is
+              ily  the  file  that appears first in P\bPA\bAT\bTH\bH.  If the -\b-a\ba option is
               used, t\bty\byp\bpe\be prints all of the places that contain a command named
-              _\bn_\ba_\bm_\be.   This  includes  aliases,  reserved words, functions, and
-              builtins, but the path search options (-\b-p\bp and -\b-P\bP)  can  be  sup-
+              _\bn_\ba_\bm_\be.  This includes aliases,  reserved  words,  functions,  and
+              builtins,  but  the  path search options (-\b-p\bp and -\b-P\bP) can be sup-
               plied to restrict the output to executable files.  t\bty\byp\bpe\be does not
-              consult  the table of hashed commands when using -\b-a\ba with -\b-p\bp, and
-              only performs a P\bPA\bAT\bTH\bH search for _\bn_\ba_\bm_\be.  The -\b-f\bf option  suppresses
-              shell  function  lookup,  as with the c\bco\bom\bmm\bma\ban\bnd\bd builtin.  t\bty\byp\bpe\be re-
-              turns true if all of the arguments are found, false if  any  are
+              consult the table of hashed commands when using -\b-a\ba with -\b-p\bp,  and
+              only  performs a P\bPA\bAT\bTH\bH search for _\bn_\ba_\bm_\be.  The -\b-f\bf option suppresses
+              shell function lookup, as with the c\bco\bom\bmm\bma\ban\bnd\bd  builtin.   t\bty\byp\bpe\b re-
+              turns  true  if all of the arguments are found, false if any are
               not found.
 
        u\bul\bli\bim\bmi\bit\bt [-\b-H\bHS\bS] -\b-a\ba
        u\bul\bli\bim\bmi\bit\bt [-\b-H\bHS\bS] [-\b-b\bbc\bcd\bde\bef\bfi\bik\bkl\blm\bmn\bnp\bpq\bqr\brs\bst\btu\buv\bvx\bxP\bPR\bRT\bT [_\bl_\bi_\bm_\bi_\bt]]
-              Provides  control  over the resources available to the shell and
-              to processes started by it, on systems that allow such  control.
+              Provides control over the resources available to the  shell  and
+              to  processes started by it, on systems that allow such control.
               The -\b-H\bH and -\b-S\bS options specify that the hard or soft limit is set
-              for  the  given resource.  A hard limit cannot be increased by a
-              non-root user once it is set; a soft limit may be  increased  up
-              to  the value of the hard limit.  If neither -\b-H\bH nor -\b-S\bS is speci-
+              for the given resource.  A hard limit cannot be increased  by  a
+              non-root  user  once it is set; a soft limit may be increased up
+              to the value of the hard limit.  If neither -\b-H\bH nor -\b-S\bS is  speci-
               fied, both the soft and hard limits are set.  The value of _\bl_\bi_\bm_\bi_\bt
               can be a number in the unit specified for the resource or one of
               the special values h\bha\bar\brd\bd, s\bso\bof\bft\bt, or u\bun\bnl\bli\bim\bmi\bit\bte\bed\bd, which stand for the
-              current hard limit, the current soft limit, and  no  limit,  re-
-              spectively.   If _\bl_\bi_\bm_\bi_\bt is omitted, the current value of the soft
+              current  hard  limit,  the current soft limit, and no limit, re-
+              spectively.  If _\bl_\bi_\bm_\bi_\bt is omitted, the current value of the  soft
               limit of the resource is printed, unless the -\b-H\bH option is given.
-              When more than one resource is specified,  the  limit  name  and
-              unit,  if  appropriate, are printed before the value.  Other op-
+              When  more  than  one  resource is specified, the limit name and
+              unit, if appropriate, are printed before the value.   Other  op-
               tions are interpreted as follows:
               -\b-a\ba     All current limits are reported; no limits are set
               -\b-b\bb     The maximum socket buffer size
               -\b-c\bc     The maximum size of core files created
               -\b-d\bd     The maximum size of a process's data segment
               -\b-e\be     The maximum scheduling priority (
-              -\b-f\bf     The maximum size of files written by the  shell  and  its
+              -\b-f\bf     The  maximum  size  of files written by the shell and its
                      children
               -\b-i\bi     The maximum number of pending signals
               -\b-k\bk     The maximum number of kqueues that may be allocated
               -\b-l\bl     The maximum size that may be locked into memory
-              -\b-m\bm     The  maximum resident set size (many systems do not honor
+              -\b-m\bm     The maximum resident set size (many systems do not  honor
                      this limit)
               -\b-n\bn     The maximum number of open file descriptors (most systems
                      do not allow this value to be set)
@@ -1928,245 +1928,245 @@ B\bBA\bAS\bSH\bH B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
               -\b-r\br     The maximum real-time scheduling priority
               -\b-s\bs     The maximum stack size
               -\b-t\bt     The maximum amount of cpu time in seconds
-              -\b-u\bu     The maximum number of processes  available  to  a  single
+              -\b-u\bu     The  maximum  number  of  processes available to a single
                      user
-              -\b-v\bv     The  maximum  amount  of  virtual memory available to the
+              -\b-v\bv     The maximum amount of virtual  memory  available  to  the
                      shell and, on some systems, to its children
               -\b-x\bx     The maximum number of file locks
               -\b-P\bP     The maximum number of pseudoterminals
-              -\b-R\bR     The maximum time  a  real-time  process  can  run  before
+              -\b-R\bR     The  maximum  time  a  real-time  process  can run before
                      blocking, in microseconds
               -\b-T\bT     The maximum number of threads
 
-              If  _\bl_\bi_\bm_\bi_\bt  is given, and the -\b-a\ba option is not used, _\bl_\bi_\bm_\bi_\bt is the
-              new value of the specified resource.  If  no  option  is  given,
-              then  -\b-f\bf is assumed.  Values are in 1024-byte increments, except
-              for -\b-t\bt, which is in seconds; -\b-R\bR, which is in  microseconds;  -\b-p\bp,
-              which  is  in  units of 512-byte blocks; -\b-P\bP, -\b-T\bT, -\b-b\bb, -\b-k\bk, -\b-n\bn, and
-              -\b-u\bu, which are unscaled values; and, when in posix mode,  -\b-c\b and
-              -\b-f\bf,  which  are  in 512-byte increments.  The return status is 0
-              unless an invalid option or argument is supplied,  or  an  error
+              If _\bl_\bi_\bm_\bi_\bt is given, and the -\b-a\ba option is not used, _\bl_\bi_\bm_\bi_\bt  is  the
+              new  value  of  the  specified resource.  If no option is given,
+              then -\b-f\bf is assumed.  Values are in 1024-byte increments,  except
+              for  -\b-t\bt,  which is in seconds; -\b-R\bR, which is in microseconds; -\b-p\bp,
+              which is in units of 512-byte blocks; -\b-P\bP, -\b-T\bT, -\b-b\bb,  -\b-k\bk,  -\b-n\bn,  and
+              -\b-u\bu,  which  are unscaled values; and, when in posix mode, -\b-c\bc and
+              -\b-f\bf, which are in 512-byte increments.  The return  status  is  0
+              unless  an  invalid  option or argument is supplied, or an error
               occurs while setting a new limit.
 
        u\bum\bma\bas\bsk\bk [-\b-p\bp] [-\b-S\bS] [_\bm_\bo_\bd_\be]
               The user file-creation mask is set to _\bm_\bo_\bd_\be.  If _\bm_\bo_\bd_\be begins with
-              a  digit,  it is interpreted as an octal number; otherwise it is
-              interpreted as a symbolic mode mask similar to that accepted  by
-              _\bc_\bh_\bm_\bo_\bd(1).   If _\bm_\bo_\bd_\be is omitted, the current value of the mask is
-              printed.  The -\b-S\bS option causes the mask to be  printed  in  sym-
-              bolic  form;  the  default output is an octal number.  If the -\b-p\bp
+              a digit, it is interpreted as an octal number; otherwise  it  is
+              interpreted  as a symbolic mode mask similar to that accepted by
+              _\bc_\bh_\bm_\bo_\bd(1).  If _\bm_\bo_\bd_\be is omitted, the current value of the mask  is
+              printed.   The  -\b-S\bS  option causes the mask to be printed in sym-
+              bolic form; the default output is an octal number.   If  the  -\b-p\bp
               option is supplied, and _\bm_\bo_\bd_\be is omitted, the output is in a form
               that may be reused as input.  The return status is 0 if the mode
-              was successfully changed or if no _\bm_\bo_\bd_\be  argument  was  supplied,
+              was  successfully  changed  or if no _\bm_\bo_\bd_\be argument was supplied,
               and false otherwise.
 
        u\bun\bna\bal\bli\bia\bas\bs [-a\ba] [_\bn_\ba_\bm_\be ...]
-              Remove  each  _\bn_\ba_\bm_\be  from  the list of defined aliases.  If -\b-a\ba is
-              supplied, all alias definitions are removed.  The  return  value
+              Remove each _\bn_\ba_\bm_\be from the list of defined  aliases.   If  -\b-a\b is
+              supplied,  all  alias definitions are removed.  The return value
               is true unless a supplied _\bn_\ba_\bm_\be is not a defined alias.
 
        u\bun\bns\bse\bet\bt [-f\bfv\bv] [-n\bn] [_\bn_\ba_\bm_\be ...]
-              For  each  _\bn_\ba_\bm_\be,  remove the corresponding variable or function.
+              For each _\bn_\ba_\bm_\be, remove the corresponding  variable  or  function.
               If the -\b-v\bv option is given, each _\bn_\ba_\bm_\be refers to a shell variable,
-              and that variable is removed.  Read-only variables  may  not  be
-              unset.   If  -\b-f\bf  is specified, each _\bn_\ba_\bm_\be refers to a shell func-
-              tion, and the function definition is removed.  If the -\b-n\b option
-              is  supplied, and _\bn_\ba_\bm_\be is a variable with the _\bn_\ba_\bm_\be_\br_\be_\bf attribute,
-              _\bn_\ba_\bm_\bwill be unset rather than the variable it  references.   -\b-n\bn
-              has  no  effect if the -\b-f\bf option is supplied.  If no options are
-              supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is  no  vari-
-              able  by that name, a function with that name, if any, is unset.
-              Each unset variable or function is removed from the  environment
-              passed   to   subsequent  commands.   If  any  of  B\bBA\bAS\bSH\bH_\b_A\bAL\bLI\bIA\bAS\bSE\bES\bS,
+              and  that  variable  is removed.  Read-only variables may not be
+              unset.  If -\b-f\bf is specified, each _\bn_\ba_\bm_\be refers to  a  shell  func-
+              tion,  and the function definition is removed.  If the -\b-n\bn option
+              is supplied, and _\bn_\ba_\bm_\be is a variable with the _\bn_\ba_\bm_\be_\br_\be_\b attribute,
+              _\bn_\ba_\bm_\b will  be unset rather than the variable it references.  -\b-n\bn
+              has no effect if the -\b-f\bf option is supplied.  If no  options  are
+              supplied,  each  _\bn_\ba_\bm_\be refers to a variable; if there is no vari-
+              able by that name, a function with that name, if any, is  unset.
+              Each  unset variable or function is removed from the environment
+              passed  to  subsequent  commands.   If  any   of   B\bBA\bAS\bSH\bH_\b_A\bAL\bLI\bIA\bAS\bSE\bES\bS,
               B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV0\b0,  B\bBA\bAS\bSH\bH_\b_C\bCM\bMD\bDS\bS,  B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMM\bMA\bAN\bND\bD,  B\bBA\bAS\bSH\bH_\b_S\bSU\bUB\bBS\bSH\bHE\bEL\bLL\bL,  B\bBA\bAS\bSH\bHP\bPI\bID\bD,
-              C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS,  D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK,  E\bEP\bPO\bOC\bCH\bHR\bRE\bEA\bAL\bLT\bTI\bIM\bME\bE,  E\bEP\bPO\bOC\bCH\bHS\bSE\bEC\bCO\bON\bND\bDS\bS, F\bFU\bUN\bNC\bC-\b-
-              N\bNA\bAM\bME\bE, G\bGR\bRO\bOU\bUP\bPS\bS, H\bHI\bIS\bST\bTC\bCM\bMD\bD, L\bLI\bIN\bNE\bEN\bNO\bO, R\bRA\bAN\bND\bDO\bOM\bM, S\bSE\bEC\bCO\bON\bND\bDS\bS, or  S\bSR\bRA\bAN\bND\bDO\bOM\b are
+              C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK,  E\bEP\bPO\bOC\bCH\bHR\bRE\bEA\bAL\bLT\bTI\bIM\bME\bE,  E\bEP\bPO\bOC\bCH\bHS\bSE\bEC\bCO\bON\bND\bDS\bS,  F\bFU\bUN\bNC\bC-\b-
+              N\bNA\bAM\bME\bE,  G\bGR\bRO\bOU\bUP\bPS\bS,  H\bHI\bIS\bST\bTC\bCM\bMD\bD, L\bLI\bIN\bNE\bEN\bNO\bO, R\bRA\bAN\bND\bDO\bOM\bM, S\bSE\bEC\bCO\bON\bND\bDS\bS, or S\bSR\bRA\bAN\bND\bDO\bOM\bM are
               unset, they lose their special properties, even if they are sub-
               sequently reset.  The exit status is true unless a _\bn_\ba_\bm_\be is read-
               only or may not be unset.
 
        w\bwa\bai\bit\bt [-\b-f\bfn\bn] [-\b-p\bp _\bv_\ba_\br_\bn_\ba_\bm_\be] [_\bi_\bd ...]
               Wait for each specified child process and return its termination
-              status.   Each _\bi_\bd may be a process ID or a job specification; if
-              a job spec is given, all processes in that  job's  pipeline  are
-              waited  for.   If  _\bi_\bd  is  not given, w\bwa\bai\bit\bt waits for all running
-              background jobs and the last-executed process  substitution,  if
+              status.  Each _\bi_\bd may be a process ID or a job specification;  if
+              a  job  spec  is given, all processes in that job's pipeline are
+              waited for.  If _\bi_\bd is not given,  w\bwa\bai\bit\bt  waits  for  all  running
+              background  jobs  and the last-executed process substitution, if
               its process id is the same as $\b$!\b!, and the return status is zero.
-              If  the  -\b-n\bn option is supplied, w\bwa\bai\bit\bt waits for a single job from
+              If the -\b-n\bn option is supplied, w\bwa\bai\bit\bt waits for a single  job  from
               the list of _\bi_\bds or, if no _\bi_\bds are supplied, any job, to complete
-              and returns its exit status.  If none of the supplied  arguments
+              and  returns its exit status.  If none of the supplied arguments
               is a child of the shell, or if no arguments are supplied and the
-              shell  has no unwaited-for children, the exit status is 127.  If
-              the -\b-p\bp option is supplied, the process or job identifier of  the
-              job  for  which  the  exit status is returned is assigned to the
-              variable _\bv_\ba_\br_\bn_\ba_\bm_\be named by the  option  argument.   The  variable
-              will  be unset initially, before any assignment.  This is useful
-              only when the -\b-n\bn option is supplied.  Supplying the  -\b-f\b option,
-              when  job control is enabled, forces w\bwa\bai\bit\bt to wait for _\bi_\bd to ter-
+              shell has no unwaited-for children, the exit status is 127.   If
+              the  -\b-p\bp option is supplied, the process or job identifier of the
+              job for which the exit status is returned  is  assigned  to  the
+              variable  _\bv_\ba_\br_\bn_\ba_\bm_\be  named  by  the option argument.  The variable
+              will be unset initially, before any assignment.  This is  useful
+              only  when  the -\b-n\bn option is supplied.  Supplying the -\b-f\bf option,
+              when job control is enabled, forces w\bwa\bai\bit\bt to wait for _\bi_\bd to  ter-
               minate before returning its status, instead of returning when it
-              changes status.  If _\bi_\bd specifies a non-existent process or  job,
-              the  return  status is 127.  If w\bwa\bai\bit\bt is interrupted by a signal,
-              the return status will be greater than 128, as  described  under
-              S\bSI\bIG\bGN\bNA\bAL\bLS\b in  _\bb_\ba_\bs_\bh(1).   Otherwise, the return status is the exit
+              changes  status.  If _\bi_\bd specifies a non-existent process or job,
+              the return status is 127.  If w\bwa\bai\bit\bt is interrupted by  a  signal,
+              the  return  status will be greater than 128, as described under
+              S\bSI\bIG\bGN\bNA\bAL\bLS\bin _\bb_\ba_\bs_\bh(1).  Otherwise, the return status  is  the  exit
               status of the last process or job waited for.
 
 S\bSH\bHE\bEL\bLL\bL C\bCO\bOM\bMP\bPA\bAT\bTI\bIB\bBI\bIL\bLI\bIT\bTY\bY M\bMO\bOD\bDE\bE
-       Bash-4.0 introduced the concept of a _\bs_\bh_\be_\bl_\bl _\bc_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bi_\bl_\bi_\bt_\by _\bl_\be_\bv_\be_\bl,  speci-
+       Bash-4.0  introduced the concept of a _\bs_\bh_\be_\bl_\bl _\bc_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bi_\bl_\bi_\bt_\by _\bl_\be_\bv_\be_\bl, speci-
        fied as a set of options to the shopt builtin (c\bco\bom\bmp\bpa\bat\bt3\b31\b1, c\bco\bom\bmp\bpa\bat\bt3\b32\b2, c\bco\bom\bm-\b-
-       p\bpa\bat\bt4\b40\b0,  c\bco\bom\bmp\bpa\bat\bt4\b41\b1,  and so on).  There is only one current compatibility
+       p\bpa\bat\bt4\b40\b0, c\bco\bom\bmp\bpa\bat\bt4\b41\b1, and so on).  There is only one  current  compatibility
        level -- each option is mutually exclusive.  The compatibility level is
-       intended to allow users to select behavior from previous versions  that
-       is  incompatible  with newer versions while they migrate scripts to use
-       current features and behavior. It's intended to be  a  temporary  solu-
+       intended  to allow users to select behavior from previous versions that
+       is incompatible with newer versions while they migrate scripts  to  use
+       current  features  and  behavior. It's intended to be a temporary solu-
        tion.
 
-       This  section does not mention behavior that is standard for a particu-
-       lar version (e.g., setting c\bco\bom\bmp\bpa\bat\bt3\b32\b2 means that quoting the rhs  of  the
-       regexp  matching operator quotes special regexp characters in the word,
+       This section does not mention behavior that is standard for a  particu-
+       lar  version  (e.g., setting c\bco\bom\bmp\bpa\bat\bt3\b32\b2 means that quoting the rhs of the
+       regexp matching operator quotes special regexp characters in the  word,
        which is default behavior in bash-3.2 and subsequent versions).
 
-       If a user enables, say, c\bco\bom\bmp\bpa\bat\bt3\b32\b2, it may affect the behavior  of  other
-       compatibility  levels  up  to  and  including the current compatibility
-       level.  The idea is that each  compatibility  level  controls  behavior
-       that  changed  in that version of b\bba\bas\bsh\bh, but that behavior may have been
-       present in earlier versions.  For instance, the change to  use  locale-
-       based  comparisons  with  the  [\b[[\b[ command came in bash-4.1, and earlier
+       If  a  user enables, say, c\bco\bom\bmp\bpa\bat\bt3\b32\b2, it may affect the behavior of other
+       compatibility levels up to  and  including  the  current  compatibility
+       level.   The  idea  is  that each compatibility level controls behavior
+       that changed in that version of b\bba\bas\bsh\bh, but that behavior may  have  been
+       present  in  earlier versions.  For instance, the change to use locale-
+       based comparisons with the [\b[[\b[ command came  in  bash-4.1,  and  earlier
        versions used ASCII-based comparisons, so enabling c\bco\bom\bmp\bpa\bat\bt3\b32\b2 will enable
-       ASCII-based comparisons as well.  That granularity may  not  be  suffi-
-       cient  for  all uses, and as a result users should employ compatibility
-       levels carefully.  Read the documentation for a particular  feature  to
+       ASCII-based  comparisons  as  well.  That granularity may not be suffi-
+       cient for all uses, and as a result users should  employ  compatibility
+       levels  carefully.   Read the documentation for a particular feature to
        find out the current behavior.
 
-       Bash-4.3  introduced  a new shell variable: B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT.  The value as-
+       Bash-4.3 introduced a new shell variable: B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT.  The  value  as-
        signed to this variable (a decimal version number like 4.2, or an inte-
-       ger corresponding to the c\bco\bom\bmp\bpa\bat\bt_\bN_\bN option, like 42) determines the  com-
+       ger  corresponding to the c\bco\bom\bmp\bpa\bat\bt_\bN_\bN option, like 42) determines the com-
        patibility level.
 
-       Starting  with bash-4.4, b\bba\bas\bsh\bh has begun deprecating older compatibility
-       levels.  Eventually, the options will be removed in favor of  B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bM-\b-
+       Starting with bash-4.4, b\bba\bas\bsh\bh has begun deprecating older  compatibility
+       levels.   Eventually, the options will be removed in favor of B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bM-\b-
        P\bPA\bAT\bT.
 
-       Bash-5.0  was  the  final version for which there will be an individual
+       Bash-5.0 was the final version for which there will  be  an  individual
        shopt option for the previous version. Users should control the compat-
        ibility level with B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT.
 
-       The following table describes the behavior changes controlled  by  each
+       The  following  table describes the behavior changes controlled by each
        compatibility level setting.  The c\bco\bom\bmp\bpa\bat\bt_\bN_\bN tag is used as shorthand for
        setting the compatibility level to _\bN_\bN using one of the following mecha-
-       nisms.   For versions prior to bash-5.0, the compatibility level may be
-       set using the corresponding c\bco\bom\bmp\bpa\bat\bt_\bN_\bN shopt option.   For  bash-4.3  and
-       later  versions,  the  B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT variable is preferred, and it is re-
+       nisms.  For versions prior to bash-5.0, the compatibility level may  be
+       set  using  the  corresponding c\bco\bom\bmp\bpa\bat\bt_\bN_\bN shopt option.  For bash-4.3 and
+       later versions, the B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT variable is preferred, and  it  is  re-
        quired for bash-5.1 and later versions.
 
        c\bco\bom\bmp\bpa\bat\bt3\b31\b1
               +\bo      quoting the rhs of the [\b[[\b[ command's regexp matching oper-
-                     ator (=~) has no special effect
+                     ator (=) has no special effect
 
        c\bco\bom\bmp\bpa\bat\bt3\b32\b2
-              +\bo      the <\b< and >\b> operators to the [\b[[\b[ command do  not  consider
+              +\bo      the  <\b<  and >\b> operators to the [\b[[\b[ command do not consider
                      the current locale when comparing strings; they use ASCII
                      ordering.
 
        c\bco\bom\bmp\bpa\bat\bt4\b40\b0
-              +\bo      the  <\b<  and >\b> operators to the [\b[[\b[ command do not consider
+              +\bo      the <\b< and >\b> operators to the [\b[[\b[ command do  not  consider
                      the current locale when comparing strings; they use ASCII
                      ordering.  B\bBa\bas\bsh\bh versions prior to bash-4.1 use ASCII col-
-                     lation and _\bs_\bt_\br_\bc_\bm_\bp(3); bash-4.1 and later use the  current
+                     lation  and _\bs_\bt_\br_\bc_\bm_\bp(3); bash-4.1 and later use the current
                      locale's collation sequence and _\bs_\bt_\br_\bc_\bo_\bl_\bl(3).
 
        c\bco\bom\bmp\bpa\bat\bt4\b41\b1
-              +\bo      in  _\bp_\bo_\bs_\bi_\bx mode, t\bti\bim\bme\be may be followed by options and still
+              +\bo      in _\bp_\bo_\bs_\bi_\bx mode, t\bti\bim\bme\be may be followed by options and  still
                      be recognized as a reserved word (this is POSIX interpre-
                      tation 267)
               +\bo      in _\bp_\bo_\bs_\bi_\bx mode, the parser requires that an even number of
-                     single quotes occur in the  _\bw_\bo_\br_\bd  portion  of  a  double-
-                     quoted  parameter expansion and treats them specially, so
-                     that characters within the single quotes  are  considered
+                     single  quotes  occur  in  the  _\bw_\bo_\br_\bd portion of a double-
+                     quoted parameter expansion and treats them specially,  so
+                     that  characters  within the single quotes are considered
                      quoted (this is POSIX interpretation 221)
 
        c\bco\bom\bmp\bpa\bat\bt4\b42\b2
               +\bo      the replacement string in double-quoted pattern substitu-
-                     tion  does  not undergo quote removal, as it does in ver-
+                     tion does not undergo quote removal, as it does  in  ver-
                      sions after bash-4.2
-              +\bo      in posix mode, single quotes are considered special  when
-                     expanding  the  _\bw_\bo_\br_\bd portion of a double-quoted parameter
-                     expansion and can be used to quote  a  closing  brace  or
-                     other  special character (this is part of POSIX interpre-
-                     tation 221); in later versions,  single  quotes  are  not
+              +\bo      in  posix mode, single quotes are considered special when
+                     expanding the _\bw_\bo_\br_\bd portion of a  double-quoted  parameter
+                     expansion  and  can  be  used to quote a closing brace or
+                     other special character (this is part of POSIX  interpre-
+                     tation  221);  in  later  versions, single quotes are not
                      special within double-quoted word expansions
 
        c\bco\bom\bmp\bpa\bat\bt4\b43\b3
-              +\bo      the  shell does not print a warning message if an attempt
-                     is made to use a quoted compound assignment as  an  argu-
-                     ment  to  declare  (e.g.,  declare -a foo='(1 2)'). Later
-                     versions warn that this usage is deprecated
-              +\bo      word expansion errors  are  considered  non-fatal  errors
-                     that  cause  the  current  command to fail, even in posix
-                     mode (the default behavior is to make them  fatal  errors
+              +\bo      the shell does not print a warning message if an  attempt
+                     is  made  to use a quoted compound assignment as an argu-
+                     ment to declare (e.g., declare -a foo=(1 2)). Later  ver-
+                     sions warn that this usage is deprecated
+              +\bo      word  expansion  errors  are  considered non-fatal errors
+                     that cause the current command to  fail,  even  in  posix
+                     mode  (the  default behavior is to make them fatal errors
                      that cause the shell to exit)
-              +\bo      when   executing   a   shell  function,  the  loop  state
+              +\bo      when  executing  a  shell  function,   the   loop   state
                      (while/until/etc.)  is not reset, so b\bbr\bre\bea\bak\bk or c\bco\bon\bnt\bti\bin\bnu\bue\be in
                      that function will break or continue loops in the calling
-                     context. Bash-4.4 and later reset the loop state to  pre-
+                     context.  Bash-4.4 and later reset the loop state to pre-
                      vent this
 
        c\bco\bom\bmp\bpa\bat\bt4\b44\b4
-              +\bo      the  shell  sets  up  the  values  used  by B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV and
-                     B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bso they can expand to  the  shell's  positional
+              +\bo      the shell sets  up  the  values  used  by  B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\b and
+                     B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\b so  they  can expand to the shell's positional
                      parameters even if extended debugging mode is not enabled
-              +\bo      a  subshell  inherits  loops  from its parent context, so
-                     b\bbr\bre\bea\bak\bor  c\bco\bon\bnt\bti\bin\bnu\bue\be  will  cause  the  subshell  to  exit.
-                     Bash-5.0  and  later  reset the loop state to prevent the
+              +\bo      a subshell inherits loops from  its  parent  context,  so
+                     b\bbr\bre\bea\bak\b or  c\bco\bon\bnt\bti\bin\bnu\bue\be  will  cause  the  subshell  to exit.
+                     Bash-5.0 and later reset the loop state  to  prevent  the
                      exit
-              +\bo      variable assignments preceding builtins like  e\bex\bxp\bpo\bor\brt\b and
+              +\bo      variable  assignments  preceding builtins like e\bex\bxp\bpo\bor\brt\bt and
                      r\bre\bea\bad\bdo\bon\bnl\bly\by that set attributes continue to affect variables
                      with the same name in the calling environment even if the
                      shell is not in posix mode
 
        c\bco\bom\bmp\bpa\bat\bt5\b50\b0
-              +\bo      Bash-5.1  changed  the way $\b$R\bRA\bAN\bND\bDO\bOM\bM is generated to intro-
+              +\bo      Bash-5.1 changed the way $\b$R\bRA\bAN\bND\bDO\bOM\bM is generated  to  intro-
                      duce slightly more randomness. If the shell compatibility
-                     level is set to 50 or lower, it  reverts  to  the  method
-                     from  bash-5.0 and previous versions, so seeding the ran-
-                     dom number generator by assigning a value to R\bRA\bAN\bND\bDO\bOM\b will
+                     level  is  set  to  50 or lower, it reverts to the method
+                     from bash-5.0 and previous versions, so seeding the  ran-
+                     dom  number generator by assigning a value to R\bRA\bAN\bND\bDO\bOM\bM will
                      produce the same sequence as in bash-5.0
-              +\bo      If  the  command hash table is empty, bash versions prior
-                     to bash-5.1 printed an informational message to that  ef-
-                     fect,  even  when  producing output that can be reused as
-                     input. Bash-5.1 suppresses that message when the  -\b-l\b op-
+              +\bo      If the command hash table is empty, bash  versions  prior
+                     to  bash-5.1 printed an informational message to that ef-
+                     fect, even when producing output that can  be  reused  as
+                     input.  Bash-5.1  suppresses that message when the -\b-l\bl op-
                      tion is supplied.
 
        c\bco\bom\bmp\bpa\bat\bt5\b51\b1
-              +\bo      The  u\bun\bns\bse\bet\bt  builtin  treats  attempts to unset array sub-
-                     scripts @\b@ and *\b* differently depending on whether the  ar-
-                     ray  is  indexed  or associative, and differently than in
+              +\bo      The u\bun\bns\bse\bet\bt builtin treats attempts  to  unset  array  sub-
+                     scripts  @\b@ and *\b* differently depending on whether the ar-
+                     ray is indexed or associative, and  differently  than  in
                      previous versions.
               +\bo      arithmetic commands ( (\b((\b(...)\b))\b) ) and the expressions in an
                      arithmetic for statement can be expanded more than once
-              +\bo      expressions used as arguments to arithmetic operators  in
+              +\bo      expressions  used as arguments to arithmetic operators in
                      the [\b[[\b[ conditional command can be expanded more than once
-              +\bo      the  expressions  in  substring parameter brace expansion
+              +\bo      the expressions in substring  parameter  brace  expansion
                      can be expanded more than once
               +\bo      the expressions in the $\b$(\b((\b(...)\b))\b) word expansion can be ex-
                      panded more than once
-              +\bo      arithmetic expressions used as indexed  array  subscripts
+              +\bo      arithmetic  expressions  used as indexed array subscripts
                      can be expanded more than once
-              +\bo      t\bte\bes\bst\b -\b-v\bv,  when  given an argument of A\bA[\b[@\b@]\b], where A\bA is an
+              +\bo      t\bte\bes\bst\b-\b-v\bv, when given an argument of A\bA[\b[@\b@]\b], where  A\bA  is  an
                      existing associative array, will return true if the array
-                     has any set elements.  Bash-5.2 will look for and  report
+                     has  any set elements.  Bash-5.2 will look for and report
                      on a key named @\b@.
               +\bo      the  ${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br[\b[:\b:]\b]=\b=_\bv_\ba_\bl_\bu_\be}  word  expansion  will  return
-                     _\bv_\ba_\bl_\bu_\be, before any variable-specific transformations  have
+                     _\bv_\ba_\bl_\bu_\be,  before any variable-specific transformations have
                      been performed (e.g., converting to lowercase).  Bash-5.2
                      will return the final value assigned to the variable.
-              +\bo      Parsing  command substitutions will behave as if extended
+              +\bo      Parsing command substitutions will behave as if  extended
                      globbing (see the description of the s\bsh\bho\bop\bpt\bt builtin above)
-                     is enabled, so that parsing a command  substitution  con-
+                     is  enabled,  so that parsing a command substitution con-
                      taining an extglob pattern (say, as part of a shell func-
-                     tion)  will  not fail.  This assumes the intent is to en-
-                     able extglob before the command is executed and word  ex-
-                     pansions  are  performed.  It will fail at word expansion
-                     time if extglob hasn't been enabled by the time the  com-
+                     tion) will not fail.  This assumes the intent is  to  en-
+                     able  extglob before the command is executed and word ex-
+                     pansions are performed.  It will fail at  word  expansion
+                     time  if extglob hasn't been enabled by the time the com-
                      mand is executed.
 
 S\bSE\bEE\bE A\bAL\bLS\bSO\bO
index 96845d0c2fd4d78ebd4edd9975a26f195cf412cd..230b358b14d9fef763e700e71c245ae7de0a1de5 100644 (file)
@@ -1,41 +1,39 @@
-RBASH(1)                    General Commands Manual                   RBASH(1)
-
-
+_\bR_\bB_\bA_\bS_\bH(1)                    General Commands Manual                   _\bR_\bB_\bA_\bS_\bH(1)
 
 N\bNA\bAM\bME\bE
        rbash - restricted bash, see b\bba\bas\bsh\bh(1)
 
 R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL
        If b\bba\bas\bsh\bh is started with the name r\brb\bba\bas\bsh\bh, or the -\b-r\br option is supplied at
-       invocation, the shell becomes restricted.  A restricted shell  is  used
-       to  set  up an environment more controlled than the standard shell.  It
-       behaves identically to b\bba\bas\bsh\bh with the exception that the  following  are
+       invocation,  the  shell becomes restricted.  A restricted shell is used
+       to set up an environment more controlled than the standard  shell.   It
+       behaves  identically  to b\bba\bas\bsh\bh with the exception that the following are
        disallowed or not performed:
 
        +\bo      changing directories with c\bcd\bd
 
-       +\bo      setting  or  unsetting the values of S\bSH\bHE\bEL\bLL\bL, P\bPA\bAT\bTH\bH, H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE, E\bEN\bNV\bV,
+       +\bo      setting or unsetting the values of S\bSH\bHE\bEL\bLL\bL, P\bPA\bAT\bTH\bH,  H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE,  E\bEN\bNV\bV,
               or B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV
 
        +\bo      specifying command names containing /\b/
 
-       +\bo      specifying a filename containing a /\b/ as an  argument  to  the  .\b.
+       +\bo      specifying  a  filename  containing  a /\b/ as an argument to the .\b.
               builtin command
 
-       +\bo      specifying  a  filename containing a slash as an argument to the
+       +\bo      specifying a filename containing a slash as an argument  to  the
               h\bhi\bis\bst\bto\bor\bry\by builtin command
 
-       +\bo      specifying a filename containing a slash as an argument  to  the
+       +\bo      specifying  a  filename containing a slash as an argument to the
               -\b-p\bp option to the h\bha\bas\bsh\bh builtin command
 
-       +\bo      importing  function  definitions  from  the shell environment at
+       +\bo      importing function definitions from  the  shell  environment  at
               startup
 
-       +\bo      parsing the value of S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS from  the  shell  environment  at
+       +\bo      parsing  the  value  of  S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS from the shell environment at
               startup
 
-       +\bo      redirecting output using the >, >|, <>, >&, &>, and >> redirect-
-              ion operators
+       +\bo      redirecting output using the >, >|, <>, >&, &>, and >>  redirec-
+              tion operators
 
        +\bo      using the e\bex\bxe\bec\bc builtin command to replace the shell with another
               command
@@ -59,6 +57,4 @@ R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL
 S\bSE\bEE\bE A\bAL\bLS\bSO\bO
        bash(1)
 
-
-
-Bash-5.2                       2021 November 22                       RBASH(1)
+Bash-5.2                       2021 November 22                       _\bR_\bB_\bA_\bS_\bH(1)
index 0a5e330512c0820cddf8eaaac5e26b9711d1bbaf..828dead5332b7759c21660cab13a42d7b4789ff6 100644 (file)
@@ -4706,6 +4706,10 @@ itrace("execute_simple_command: posix mode tempenv assignment error");
     }
 #endif /* JOB_CONTROL */
 
+  /* unwind-protect this since we will call dispose_words on words if we run
+     the unwind-protects. */
+  unwind_protect_string (this_command_name);
+
 run_builtin:
   /* Remember the name of this command globally. */
   this_command_name = words->word->word;
@@ -5286,6 +5290,10 @@ execute_function (SHELL_VAR *var, WORD_LIST *words, int flags, struct fd_bitmap
   if (shell_compatibility_level > 43)
     loop_level = 0;
 
+  /* unwind-protect this because execute_command_internal will overwrite it
+     with something we will free if unwind-protects are run */
+  if (subshell == 0)
+    unwind_protect_pointer (currently_executing_command);
   fc = tc;
 
   from_return_trap = 0;
@@ -5324,6 +5332,7 @@ execute_function (SHELL_VAR *var, WORD_LIST *words, int flags, struct fd_bitmap
          currently_executing_command = save_current;
        }
 #else
+      currently_executing_command = save_current;
       result = execute_command_internal (fc, 0, NO_PIPE, NO_PIPE, fds_to_close);
 
       save_current = currently_executing_command;
index 47478f082a5b0409ca55764e8f62a97db9bc67f5..9744ae2f48d2d17506d0522aaaa1b3ef0c1bfb00 100644 (file)
@@ -2901,7 +2901,7 @@ rl_dump_macros (int count, int key)
 static char *
 _rl_get_string_variable_value (const char *name)
 {
-  static char numbuf[64];
+  static char numbuf[64];      /* more than enough for INTMAX_MAX */
   char *ret;
 
   if (_rl_stricmp (name, "active-region-start-color") == 0)
@@ -2951,24 +2951,40 @@ _rl_get_string_variable_value (const char *name)
     return (_rl_comment_begin ? _rl_comment_begin : RL_COMMENT_BEGIN_DEFAULT);
   else if (_rl_stricmp (name, "completion-display-width") == 0)
     {
+#if defined (HAVE_VSNPRINTF)
+      snprintf (numbuf, sizeof (numbuf), "%d", _rl_completion_columns);
+#else
       sprintf (numbuf, "%d", _rl_completion_columns);
+#endif
       return (numbuf);
     }
   else if (_rl_stricmp (name, "completion-prefix-display-length") == 0)
     {
+#if defined (HAVE_VSNPRINTF)
+      snprintf (numbuf, sizeof (numbuf), "%d", _rl_completion_prefix_display_length);
+#else
       sprintf (numbuf, "%d", _rl_completion_prefix_display_length);
+#endif
       return (numbuf);
     }
   else if (_rl_stricmp (name, "completion-query-items") == 0)
     {
+#if defined (HAVE_VSNPRINTF)
+      snprintf (numbuf, sizeof (numbuf), "%d", rl_completion_query_items);
+#else
       sprintf (numbuf, "%d", rl_completion_query_items);
+#endif
       return (numbuf);
     }
   else if (_rl_stricmp (name, "editing-mode") == 0)
     return (rl_get_keymap_name_from_edit_mode ());
   else if (_rl_stricmp (name, "history-size") == 0)
     {
+#if defined (HAVE_VSNPRINTF)
+      snprintf (numbuf, sizeof (numbuf), "%d", history_is_stifled() ? history_max_entries : -1);
+#else
       sprintf (numbuf, "%d", history_is_stifled() ? history_max_entries : -1);
+#endif
       return (numbuf);
     }
   else if (_rl_stricmp (name, "isearch-terminators") == 0)
@@ -2995,7 +3011,11 @@ _rl_get_string_variable_value (const char *name)
     }
   else if (_rl_stricmp (name, "keyseq-timeout") == 0)
     {
-      sprintf (numbuf, "%d", _rl_keyseq_timeout);    
+#if defined (HAVE_VSNPRINTF)
+      snprintf (numbuf, sizeof (numbuf), "%d", _rl_keyseq_timeout);
+#else
+      sprintf (numbuf, "%d", _rl_keyseq_timeout);
+#endif
       return (numbuf);
     }
   else if (_rl_stricmp (name, "emacs-mode-string") == 0)
index edc87264357292b28a16a0ec8b0649b6c82a20f3..258631ebdea3a7a388f639d6cefaac5233c49d85 100644 (file)
@@ -1125,7 +1125,11 @@ rl_redisplay (void)
              char obuf[5];
              int olen;
 
+#if defined (HAVE_VSNPRINTF)
+             olen = snprintf (obuf, sizeof (obuf), "\\%o", c);
+#else
              olen = sprintf (obuf, "\\%o", c);
+#endif
          
              for (temp = 0; temp < olen; temp++)
                {
index 0a7024a24f6d38f2f28920adc4784adcc5a897fe..7a76001940905beceb6f4f977a257fb50413967b 100644 (file)
 .\"
 .TH HISTORY 3 "2024 February 5" "GNU History 8.3"
 .\"
+.ie \n(.g \{\
+.ds ' \(aq
+.ds " \(dq
+.ds ^ \(ha
+.ds ~ \(ti
+.\}
+.el \{\
+.ds ' '
+.ds " ""\" two adjacent quotes and no space before this comment
+.ds ^ ^
+.ds ~ ~
+.\}
+.
 .\" File Name macro.  This used to be `.PN', for Path Name,
 .\" but Sun doesn't seem to like that very much.
 .\"
@@ -88,7 +101,7 @@ Only backslash (\^\fB\e\fP\^) and single quotes can quote
 the history expansion character.
 .PP
 There is a special abbreviation for substitution, active when the
-\fIquick substitution\fP character (default \fB\(ha\fP)
+\fIquick substitution\fP character (default \fB\*^\fP)
 is the first character on the line.
 It selects the previous history list entry, using an event designator
 equivalent to \fB!!\fP,
@@ -138,13 +151,13 @@ is followed immediately by a newline.
 If \fIstring\fP is missing, the string from the most recent search is used;
 it is an error if there is no previous search string.
 .TP
-.B \d\s+2\(ha\s-2\u\fIstring1\fP\d\s+2\(ha\s-2\u\fIstring2\fP\d\s+2\(ha\s-2\u
+.B \d\s+2\*^\s-2\u\fIstring1\fP\d\s+2\*^\s-2\u\fIstring2\fP\d\s+2\*^\s-2\u
 Quick substitution.  Repeat the last command, replacing
 .I string1
 with
 .IR string2 .
 Equivalent to
-.Q !!:s\d\s+2\(ha\s-2\u\fIstring1\fP\d\s+2\(ha\s-2\u\fIstring2\fP\d\s+2\(ha\s-2\u
+.Q !!:s\d\s+2\*^\s-2\u\fIstring1\fP\d\s+2\*^\s-2\u\fIstring2\fP\d\s+2\*^\s-2\u
 (see \fBModifiers\fP below).
 .TP
 .B !#
@@ -156,7 +169,7 @@ A
 .B :
 separates the event specification from the word designator.
 It may be omitted if the word designator begins with a
-.BR \(ha ,
+.BR \*^ ,
 .BR $ ,
 .BR * ,
 .BR \- ,
@@ -175,7 +188,7 @@ word.
 .I n
 The \fIn\fRth word.
 .TP
-.B \(ha
+.B \*^
 The first argument.  That is, word 1.
 .TP
 .B $
@@ -533,7 +546,7 @@ This section documents the functions for managing a history file.
 
 .Fn1 int read_history "const char *filename"
 Add the contents of \fIfilename\fP to the history list, a line at a time.
-If \fIfilename\fP is \fBNULL\fP, then read from \fI\(ti/.history\fP.
+If \fIfilename\fP is \fBNULL\fP, then read from \fI\*~/.history\fP.
 Returns 0 if successful, or \fBerrno\fP if not.
 
 .Fn3 int read_history_range "const char *filename" "int from" "int to"
@@ -541,25 +554,25 @@ Read a range of lines from \fIfilename\fP, adding them to the history list.
 Start reading at line \fIfrom\fP and end at \fIto\fP.
 If \fIfrom\fP is zero, start at the beginning.  If \fIto\fP is less than
 \fIfrom\fP, then read until the end of the file.  If \fIfilename\fP is
-\fBNULL\fP, then read from \fI\(ti/.history\fP.  Returns 0 if successful,
+\fBNULL\fP, then read from \fI\*~/.history\fP.  Returns 0 if successful,
 or \fBerrno\fP if not.
 
 .Fn1 int write_history "const char *filename"
 Write the current history to \fIfilename\fP, overwriting \fIfilename\fP
 if necessary.
-If \fIfilename\fP is \fBNULL\fP, then write the history list to \fI\(ti/.history\fP.
+If \fIfilename\fP is \fBNULL\fP, then write the history list to \fI\*~/.history\fP.
 Returns 0 on success, or \fBerrno\fP on a read or write error.
 
 
 .Fn2 int append_history "int nelements" "const char *filename"
 Append the last \fInelements\fP of the history list to \fIfilename\fP.
-If \fIfilename\fP is \fBNULL\fP, then append to \fI\(ti/.history\fP.
+If \fIfilename\fP is \fBNULL\fP, then append to \fI\*~/.history\fP.
 Returns 0 on success, or \fBerrno\fP on a read or write error.
 
 .Fn2 int history_truncate_file "const char *filename" "int nlines"
 Truncate the history file \fIfilename\fP, leaving only the last
 \fInlines\fP lines.
-If \fIfilename\fP is \fBNULL\fP, then \fI\(ti/.history\fP is truncated.
+If \fIfilename\fP is \fBNULL\fP, then \fI\*~/.history\fP is truncated.
 Returns 0 on success, or \fBerrno\fP on failure.
 
 .SS History Expansion
@@ -640,7 +653,7 @@ Setting this to 0 inhibits history expansion.
 
 .Vb char history_subst_char
 The character that invokes word substitution if found at the start of
-a line.  The default is \fB\(ha\fP.
+a line.  The default is \fB\*^\fP.
 
 .Vb char history_comment_char
 During tokenization, if this character is seen as the first character
@@ -650,7 +663,7 @@ This is disabled by default.
 
 .Vb "char *" history_word_delimiters
 The characters that separate tokens for \fBhistory_tokenize()\fP.
-The default value is \fB\(dq\ \et\en()<>;&|\(dq\fP.
+The default value is \fB\*"\ \et\en()<>;&|\*"\fP.
 
 .Vb "char *" history_no_expand_chars
 The list of characters which inhibit history expansion if found immediately
@@ -672,10 +685,10 @@ The default value is 0.
 
 .Vb int history_quoting_state
 An application may set this variable to indicate that the current line
-being expanded is subject to existing quoting. If set to \fI\(aq\fP, the
+being expanded is subject to existing quoting. If set to \fI\*'\fP, the
 history expansion function will assume that the line is single-quoted and
 inhibit expansion until it reads an unquoted closing single quote; if set
-to \fI\(dq\fP, history expansion will assume the line is double quoted until
+to \fI\*"\fP, history expansion will assume the line is double quoted until
 it reads an unquoted closing double quote. If set to zero, the default,
 the history expansion function will assume the line is not quoted and
 treat quote characters within the line as described above.
@@ -694,7 +707,7 @@ By default, this variable is set to \fBNULL\fP.
 .SH FILES
 .PD 0
 .TP
-.FN \(ti/.history
+.FN \*~/.history
 Default filename for reading and writing saved history
 .PD
 .SH "SEE ALSO"
index e6f46942b80a61f7d6fa3b4362af1b5386dbdd6a..438da11744f242b7658111995dffebf6b4723627 100644 (file)
 .\"
 .TH READLINE 3 "2024 February 5" "GNU Readline 8.3"
 .\"
+.ie \n(.g \{\
+.ds ' \(aq
+.ds " \(dq
+.ds ^ \(ha
+.ds ~ \(ti
+.\}
+.el \{\
+.ds ' '
+.ds " ""\" two adjacent quotes and no space before this comment
+.ds ^ ^
+.ds ~ ~
+.\}
+.
 .\" File Name macro.  This used to be `.PN', for Path Name,
 .\" but Sun doesn't seem to like that very much.
 .\"
@@ -126,7 +139,7 @@ file (the \fIinputrc\fP file).
 The name of this file is taken from the value of the
 .B INPUTRC
 environment variable.  If that variable is unset, the default is
-.IR \(ti/.inputrc .
+.IR \*~/.inputrc .
 If that file  does not exist or cannot be read, the ultimate default is
 .IR /etc/inputrc .
 When a program which uses the readline library starts up, the
@@ -192,7 +205,7 @@ is the name of a key spelled out in English.  For example:
 .nf
 Control-u: universal\-argument
 Meta-Rubout: backward\-kill\-word
-Control-o: \(dq> output\(dq
+Control-o: \*"> output\*"
 .fi
 .EE
 .RE
@@ -212,7 +225,7 @@ expressed on the right hand side (that is, to insert the text
 into the line).
 .PP
 In the second form,
-\fB\(dqkeyseq\(dq\fP:\^\fIfunction\-name\fP or \fImacro\fP,
+\fB\*"keyseq\*"\fP:\^\fIfunction\-name\fP or \fImacro\fP,
 .B keyseq
 differs from
 .B keyname
@@ -225,9 +238,9 @@ are not recognized.
 .RS
 .EX
 .nf
-\(dq\eC\-u\(dq: universal\-argument
-\(dq\eC\-x\eC\-r\(dq: re\-read\-init\-file
-\(dq\ee[11\(ti\(dq: \(dqFunction Key 1\(dq
+\*"\eC\-u\*": universal\-argument
+\*"\eC\-x\eC\-r\*": re\-read\-init\-file
+\*"\ee[11\*~\*": \*"Function Key 1\*"
 .fi
 .EE
 .RE
@@ -240,7 +253,7 @@ is again bound to the function
 is bound to the function
 .BR re\-read\-init\-file ,
 and
-.I "ESC [ 1 1 \(ti"
+.I "ESC [ 1 1 \*~"
 is bound to insert the text
 .Q "Function Key 1" .
 .PP
@@ -261,11 +274,11 @@ an escape character
 .B \e\e
 backslash
 .TP
-.B \e\(dq
-literal \(dq, a double quote
+.B \e\*"
+literal \*", a double quote
 .TP
-.B \e\(aq
-literal \(aq, a single quote
+.B \e\*'
+literal \*', a single quote
 .RE
 .PD
 .PP
@@ -313,7 +326,7 @@ be used to indicate a macro definition.  Unquoted text
 is assumed to be a function name.
 In the macro body, the backslash escapes described above are expanded.
 Backslash will quote any other character in the macro text,
-including \(dq and \(aq.
+including \*" and \*'.
 .PP
 .B Bash
 allows the current readline key bindings to be displayed or modified
@@ -792,7 +805,7 @@ key sequence that quotes the current or previous word in \fBbash\fP:
 .nf
 \fB$if\fP Bash
 # Quote the current or previous word
-\(dq\eC-xq\(dq: \(dq\eeb\e\(dq\eef\e\(dq\(dq
+\*"\eC-xq\*": \*"\eeb\e\*"\eef\e\*"\*"
 \fB$endif\fP
 .fi
 .EE
@@ -1206,7 +1219,7 @@ The actual completion performed is application-specific.
 .BR Bash ,
 for instance, attempts completion treating the text as a variable
 (if the text begins with \fB$\fP), username (if the text begins with
-\fB\(ti\fP), hostname (if the text begins with \fB@\fP), or
+\fB\*~\fP), hostname (if the text begins with \fB@\fP), or
 command (including aliases and functions) in turn.  If none
 of these produces a match, filename completion is attempted.
 .BR Gdb ,
@@ -1440,7 +1453,7 @@ Emacs Standard bindings
 "C-_"  undo
 "\^ " to "/"  self-insert
 "0"  to "9"  self-insert
-":"  to "\(ti"  self-insert
+":"  to "\*~"  self-insert
 "C-?"  backward-delete-char
 .PP
 Emacs Meta bindings
@@ -1487,7 +1500,7 @@ Emacs Meta bindings
 "M-U"  upcase-word
 "M-Y"  yank-pop
 "M-\e"  delete-horizontal-space
-"M-\(ti"  tilde-expand
+"M-\*~"  tilde-expand
 "M-C-?"  backward-kill-word
 "M-_"  yank-last-arg
 .PP
@@ -1525,7 +1538,7 @@ VI Insert Mode functions
 "C-Y"  yank
 "C-["  vi-movement-mode
 "C-_"  vi-undo
-"\^ " to "\(ti"  self-insert
+"\^ " to "\*~"  self-insert
 "C-?"  backward-delete-char
 .PP
 VI Command Mode functions
@@ -1583,7 +1596,7 @@ VI Command Mode functions
 "X"  vi-rubout
 "Y"  vi-yank-to
 "\e"  vi-complete
-"\(ha"  vi-first-print
+"\*^"  vi-first-print
 "_"  vi-yank-arg
 "`"  vi-goto-mark
 "a"  vi-append-mode
@@ -1608,7 +1621,7 @@ VI Command Mode functions
 "x"  vi-delete
 "y"  vi-yank-to
 "|"  vi-column
-"\(ti"  vi-change-case
+"\*~"  vi-change-case
 .RE
 .SH "SEE ALSO"
 .PD 0
@@ -1622,7 +1635,7 @@ VI Command Mode functions
 .SH FILES
 .PD 0
 .TP
-.FN \(ti/.inputrc
+.FN \*~/.inputrc
 Individual \fBreadline\fP initialization file
 .PD
 .SH AUTHORS
index 54f68af90ab69ca866c241997eae524c70585fa2..497cd4d1fbcf7359580b18005b7e38805cb2850e 100644 (file)
@@ -2357,6 +2357,7 @@ This is @emph{always} zero when completion is attempted, and can only
 be changed within an application-specific completion function.
 The quoting is effected via a call to the function pointed to
 by @code{rl_filename_quoting_function}.
+@end deftypevar
 
 @deftypevar int rl_attempted_completion_over
 If an application-specific completion function assigned to
index ee52e8297eed27d732044e865e0958aff4fca25b..aade5e33a3274b7963dbc0cfda7b50ee8a6757fb 100644 (file)
@@ -1,6 +1,6 @@
 /* history.c -- standalone history library */
 
-/* Copyright (C) 1989-2023 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2024 Free Software Foundation, Inc.
 
    This file contains the GNU History Library (History), a set of
    routines for managing the text of previously typed lines.
@@ -61,24 +61,39 @@ extern int errno;
 #define MAX_HISTORY_INITIAL_SIZE       8192
 
 /* The number of slots to increase the_history by. */
-#define DEFAULT_HISTORY_GROW_SIZE 50
+#define DEFAULT_HISTORY_GROW_SIZE 256
 
 static char *hist_inittime (void);
 
+static int history_list_grow_size (void);
+static void history_list_resize (int);         /* XXX - size_t? */
+static void advance_history (void);
+
 /* **************************************************************** */
 /*                                                                 */
 /*                     History Functions                           */
 /*                                                                 */
 /* **************************************************************** */
 
-/* An array of HIST_ENTRY.  This is where we store the history. */
+/* An array of HIST_ENTRY.  This is where we store the history. the_history is
+   a roving pointer somewhere into this, so the user-visible history list is
+   a window into real_history starting at the_history and extending
+   history_length entries. */
+static HIST_ENTRY **real_history = (HIST_ENTRY **)NULL;
+
+/* The current number of slots allocated to the input_history. */
+static int real_history_size = 0;
+
+/* A pointer to somewhere in real_history, where the user-visible history
+   starts. */
 static HIST_ENTRY **the_history = (HIST_ENTRY **)NULL;
 
 /* Non-zero means that we have enforced a limit on the amount of
    history that we save. */
 static int history_stifled;
 
-/* The current number of slots allocated to the input_history. */
+/* The number of history entries available for user use, starting at the_history.
+   real_history_size - history_size == the_history - real_history */
 static int history_size;
 
 /* If HISTORY_STIFLED is non-zero, then this is the maximum number of
@@ -90,12 +105,59 @@ int max_input_history;     /* backwards compatibility */
    life easier for outside callers. */
 int history_offset;
 
-/* The number of strings currently stored in the history list. */
+/* The number of strings currently stored in the history list. This is
+   always <= real_history_length */
 int history_length;
 
 /* The logical `base' of the history array.  It defaults to 1. */
 int history_base = 1;
 
+/* Compute the number of bits required to store a given nonnegative integer.
+
+   NOTE: _bit_length(0) == 0 */
+static inline unsigned
+_bit_length(unsigned n)
+{
+  /* This implementation is for simplicity, not for performance, but it is
+     fast enough for our purposes here. */
+  unsigned count = 0;
+  while (n)
+    {
+      n >>= 1;
+      count++;
+    }
+  return count;
+}
+
+/* Compute a grow size that adjusts to the size of the history.
+
+   We aim to grow by roughly sqrt(history_size) in order to amortize the cost of
+   realloc() and memmove().  This reduces the total cost of the memmoves from
+   O(N^2) to O(N*sqrt(N)). */
+static int
+history_list_grow_size (void)
+{
+  int width, r;
+  /* Handle small positive values and guard against history_length accidentally
+     being negative. */
+  const int MIN_BITS = 10;
+  if (history_length < (1 << MIN_BITS))
+    return DEFAULT_HISTORY_GROW_SIZE;
+
+  /* For other values, we just want something easy to compute that grows roughly
+     as sqrt(N), where N=history_length.  We use approximately 2^((k+1)/2),
+     where k is the bit length of N.  This bounds the value between sqrt(2N) and
+     2*sqrt(N). */
+  width = MIN_BITS + _bit_length(history_length >> MIN_BITS);
+
+  /* If width is odd then this is 2^((width+1)/2).  An even width gives a value
+     of 3*2^((width-2)/2) ~ 1.06*2^((width+1)/2). */
+  r = (1 << (width / 2)) + (1 << ((width - 1) / 2));
+
+  /* Make sure we always expand the list by at least DEFAULT_HISTORY_GROW_SIZE */
+  return ((r < DEFAULT_HISTORY_GROW_SIZE) ? DEFAULT_HISTORY_GROW_SIZE : r);
+}
+
 /* Return the current HISTORY_STATE of the history. */
 HISTORY_STATE *
 history_get_history_state (void)
@@ -274,6 +336,48 @@ hist_inittime (void)
   return ret;
 }
 
+/* Ensure space for new history entries by resetting the start pointer
+   (the_history) and resizing real_history if necessary. */
+static void
+history_list_resize (int new_size)
+{
+  /* Do nothing there is already enough user space. history_length is always <=
+     real_history_size */
+  if (new_size < history_length)
+    return;
+
+  /* If we need to, reset the_history to the start of real_history and
+     start over. */
+  if (the_history != real_history)
+    memmove (real_history, the_history, history_length * sizeof (HIST_ENTRY *));
+
+  /* Don't bother if real_history_size is already big enough, since at this
+     point the_history == real_history and we will set history_size to
+     real_history_size. We don't shrink the history list. */
+  if (new_size > real_history_size)
+    {
+      real_history = (HIST_ENTRY **) xrealloc (real_history, new_size * sizeof (HIST_ENTRY *));
+      real_history_size = new_size;
+    }
+  the_history = real_history;
+  history_size = real_history_size;
+
+  if (history_size > history_length)
+    memset (real_history + history_length, 0, (history_size - history_length) * sizeof (HIST_ENTRY *));
+}
+
+static void
+advance_history (void)
+{
+  /* Advance 'the_history' pointer to simulate dropping the first entry. */
+  the_history++;
+  history_size--;
+
+  /* If full, move all the entries (and trailing NULL) to the beginning. */
+  if (history_length == history_size)
+    history_list_resize (history_length + history_list_grow_size ());
+}
+
 /* Place STRING at the end of the history list.  The data field
    is  set to NULL. */
 void
@@ -293,9 +397,8 @@ add_history (const char *string)
       if (the_history[0])
        (void) free_history_entry (the_history[0]);
 
-      /* Copy the rest of the entries, moving down one slot.  Copy includes
-        trailing NULL.  */
-      memmove (the_history, the_history + 1, history_length * sizeof (HIST_ENTRY *));
+      /* Advance the pointer into real_history, resizing if necessary. */
+      advance_history ();
 
       new_length = history_length;
       history_base++;
@@ -304,23 +407,20 @@ add_history (const char *string)
     {
       if (history_size == 0)
        {
+         int initial_size;
          if (history_stifled && history_max_entries > 0)
-           history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
+           initial_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
                                ? MAX_HISTORY_INITIAL_SIZE
                                : history_max_entries + 2;
          else
-           history_size = DEFAULT_HISTORY_INITIAL_SIZE;
-         the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof (HIST_ENTRY *));
+           initial_size = DEFAULT_HISTORY_INITIAL_SIZE;
+         history_list_resize (initial_size);
          new_length = 1;
        }
       else
        {
          if (history_length == (history_size - 1))
-           {
-             history_size += DEFAULT_HISTORY_GROW_SIZE;
-             the_history = (HIST_ENTRY **)
-               xrealloc (the_history, history_size * sizeof (HIST_ENTRY *));
-           }
+           history_list_resize (real_history_size + history_list_grow_size ());
          new_length = history_length + 1;
        }
     }
diff --git a/subst.c b/subst.c
index ed7da9d2a5d24cafd1fb57ecbd7f3335d67d6503..fdd056a7e2b98dad5516adbf96ed2473d0ca8046 100644 (file)
--- a/subst.c
+++ b/subst.c
@@ -8536,6 +8536,7 @@ string_var_assignment (SHELL_VAR *v, char *s)
 
   val = (v && (invisible_p (v) || var_isset (v) == 0)) ? (char *)NULL : sh_quote_reusable (s, 0);
   i = var_attribute_string (v, 0, flags);
+  /* i = strlen (flags) */
   if (i == 0 && val == 0)
     return (char *)NULL;
 
@@ -8586,6 +8587,7 @@ array_var_assignment (SHELL_VAR *v, int itype, int quoted, int atype)
     return val;
 
   i = var_attribute_string (v, 0, flags);
+  /* i == strlen (flags) */
   ret = (char *)xmalloc (i + STRLEN (val) + strlen (v->name) + 16);
   if (val)
     sprintf (ret, "declare -%s %s=%s", flags, v->name, val);
index 85bdf39aa72e2b45f5b0f2338d523f1545390ced..3520ca8ad05d8f2e482ecf85e58ba2a6f2a67749 100644 (file)
@@ -5989,6 +5989,7 @@ sv_winsize (const char *name)
 /* Update the value of HOME in the export environment so tilde expansion will
    work on cygwin. */
 #if defined (__CYGWIN__)
+void
 sv_home (const char *name)
 {
   array_needs_making = 1;