]> git.ipfire.org Git - thirdparty/bash.git/commitdiff
doc changes for --rcfile; fix isearch undo list incompatibility with bash-5.2; non...
authorChet Ramey <chet.ramey@case.edu>
Sat, 6 Jul 2024 16:54:57 +0000 (12:54 -0400)
committerChet Ramey <chet.ramey@case.edu>
Sat, 6 Jul 2024 16:54:57 +0000 (12:54 -0400)
20 files changed:
COMPAT
CWRU/CWRU.chlog
doc/bash.0
doc/bash.1
doc/bash.html
doc/bash.info
doc/bash.pdf
doc/bashref.aux
doc/bashref.cp
doc/bashref.cps
doc/bashref.html
doc/bashref.info
doc/bashref.log
doc/bashref.pdf
doc/bashref.texi
doc/bashref.toc
doc/version.texi
lib/readline/misc.c
lib/readline/rlprivate.h
lib/readline/search.c

diff --git a/COMPAT b/COMPAT
index bf0266ef77753fdfec16cb2f66514076598ef84f..206d37ae75cdc7738387aef1c8680c300e194045 100644 (file)
--- a/COMPAT
+++ b/COMPAT
@@ -516,10 +516,6 @@ compat42
          single quotes are not special within double-quoted word expansions
 
 compat43
-       - the shell does not print a warning message if an attempt is made to
-         use a quoted compound assignment as an argument to declare
-         (declare -a foo='(1 2)'). Later versions warn that this usage is
-         deprecated.
        - 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)
index c68cbbbaf47c029c1de978f8e2acbb153259e41f..0e8ad51d364108a8a11e86964ba4ff6dcfd7c1e1 100644 (file)
@@ -9734,3 +9734,28 @@ lib/readline/examples/excallback.c,lib/readline/examples/rlptytest.c
 execute_cmd.c:
        - ADJUST_LINE_NUMBER: encapsulate code that adjusts line_number in
          shell functions executed in interactive shells into a macro
+
+                                   7/2
+                                   ---
+doc/bash.1,doc/bashref.texi
+       - changes to the --rcfile description to avoid the use of `force' and
+         stay away from the word `replace'
+
+lib/readline/misc.c
+       - _rl_maybe_replace_line: old rl_maybe_replace_line, now takes an
+         argument saying whether or not to clear rl_undo_list
+       - rl_maybe_replace_line: now calls _rl_maybe_replace_line with a 0
+         argument for backwards compatibility
+
+lib/readline/rlprivate.h
+       - _rl_maybe_replace_line: extern declaration
+
+lib/readline/search.c
+       - _rl_nsearch_init,rl_history_search_internal: call _rl_maybe_replace_line
+         with a 1 argument so these searches can manage rl_undo_list and
+         restore it appropriately
+       - rl_history_search_internal: don't set the history offset back to
+         oldpos if the history search is successful; we want the history offset
+         to be set to the position of the last matching line, like isearch
+
+
index 6e3bae2bd49913e1ce22dd397253e30a657328b1..f89c340df4fd5b2e07901184545b982e6211f001 100644 (file)
@@ -157,50 +157,50 @@ I\bIN\bNV\bVO\bOC\bCA\bAT\bTI\bIO\bON\bN
        When an interactive shell that is not a login shell  is  started,  b\bba\bas\bsh\bh
        reads  and executes commands from _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc, if that file exists.  This
        may be inhibited by using the -\b--\b-n\bno\bor\brc\bc option.  The -\b--\b-r\brc\bcf\bfi\bil\ble\be _\bf_\bi_\bl_\be  option
-       will  force  b\bba\bas\bsh\bh  to  read  and  execute commands from _\bf_\bi_\bl_\be instead of
-       _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc.
+       will cause b\bba\bas\bsh\bh to use _\bf_\bi_\bl_\be instead of _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc.
 
-       When b\bba\bas\bsh\bh is started non-interactively, to run a shell script, for  ex-
-       ample,  it  looks for the variable B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV in the environment, expands
-       its value if it appears there, and uses the expanded value as the  name
-       of  a  file to read and execute.  B\bBa\bas\bsh\bh behaves as if the following com-
+       When  b\bba\bas\bsh\bh is started non-interactively, to run a shell script, for ex-
+       ample, it looks for the variable B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV in the  environment,  expands
+       its  value if it appears there, and uses the expanded value as the name
+       of a file to read and execute.  B\bBa\bas\bsh\bh behaves as if the  following  com-
        mand were executed:
 
               if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi
 
-       but the value of the P\bPA\bAT\bTH\bH variable is not used to search for the  file-
+       but  the value of the P\bPA\bAT\bTH\bH variable is not used to search for the file-
        name.
 
-       If  b\bba\bas\bsh\bh is invoked with the name s\bsh\bh, it tries to mimic the startup be-
-       havior of historical versions of s\bsh\bh as closely as possible, while  con-
-       forming  to the POSIX standard as well.  When invoked as an interactive
-       login shell, or a non-interactive shell with  the  -\b--\b-l\blo\bog\bgi\bin\bn  option,  it
-       first  attempts  to  read  and  execute  commands from _\b/_\be_\bt_\bc_\b/_\bp_\br_\bo_\bf_\bi_\bl_\be and
-       _\b~_\b/_\b._\bp_\br_\bo_\bf_\bi_\bl_\be, in that order.  The -\b--\b-n\bno\bop\bpr\bro\bof\bfi\bil\ble\be option may be used  to  in-
-       hibit  this  behavior.   When  invoked as an interactive shell with the
-       name s\bsh\bh, b\bba\bas\bsh\bh looks for the variable E\bEN\bNV\bV, expands its value  if  it  is
-       defined,  and uses the expanded value as the name of a file to read and
+       If b\bba\bas\bsh\bh is invoked with the name s\bsh\bh, it tries to mimic the startup  be-
+       havior  of historical versions of s\bsh\bh as closely as possible, while con-
+       forming to the POSIX standard as well.  When invoked as an  interactive
+       login  shell,  or  a  non-interactive shell with the -\b--\b-l\blo\bog\bgi\bin\bn option, it
+       first attempts to read  and  execute  commands  from  _\b/_\be_\bt_\bc_\b/_\bp_\br_\bo_\bf_\bi_\bl_\b and
+       _\b~_\b/_\b._\bp_\br_\bo_\bf_\bi_\bl_\be,  in  that order.  The -\b--\b-n\bno\bop\bpr\bro\bof\bfi\bil\ble\be option may be used to in-
+       hibit this behavior.  When invoked as an  interactive  shell  with  the
+       name  s\bsh\bh,  b\bba\bas\bsh\bh  looks for the variable E\bEN\bNV\bV, expands its value if it is
+       defined, and uses the expanded value as the name of a file to read  and
        execute.  Since a shell invoked as s\bsh\bh does not attempt to read and exe-
-       cute commands from any other startup files, the -\b--\b-r\brc\bcf\bfi\bil\ble\be option has  no
-       effect.   A non-interactive shell invoked with the name s\bsh\bh does not at-
+       cute  commands from any other startup files, the -\b--\b-r\brc\bcf\bfi\bil\ble\be option has no
+       effect.  A non-interactive shell invoked with the name s\bsh\bh does not  at-
        tempt to read any other startup files.  When invoked as s\bsh\bh, b\bba\bas\bsh\bh enters
        _\bp_\bo_\bs_\bi_\bx mode after the startup files are read.
 
-       When b\bba\bas\bsh\bh is started in _\bp_\bo_\bs_\bi_\bx mode, as with the  -\b--\b-p\bpo\bos\bsi\bix\bx  command  line
+       When  b\bba\bas\bsh\bh  is  started in _\bp_\bo_\bs_\bi_\bx mode, as with the -\b--\b-p\bpo\bos\bsi\bix\bx command line
        option, it follows the POSIX standard for startup files.  In this mode,
-       interactive  shells  expand  the E\bEN\bNV\bV variable and commands are read and
-       executed from the file whose name is  the  expanded  value.   No  other
+       interactive shells expand the E\bEN\bNV\bV variable and commands  are  read  and
+       executed  from  the  file  whose  name is the expanded value.  No other
        startup files are read.
 
        B\bBa\bas\bsh\bh attempts to determine when it is being run with its standard input
-       connected  to  a network connection, as when executed by the historical
+       connected to a network connection, as when executed by  the  historical
        remote shell daemon, usually _\br_\bs_\bh_\bd, or the secure shell daemon _\bs_\bs_\bh_\bd.  If
-       b\bba\bas\bsh\bdetermines it is being run non-interactively in this  fashion,  it
-       reads  and executes commands from _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc, if that file exists and is
+       b\bba\bas\bsh\b determines  it is being run non-interactively in this fashion, it
+       reads and executes commands from _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc, if that file exists and  is
        readable.  It will not do this if invoked as s\bsh\bh.  The -\b--\b-n\bno\bor\brc\bc option may
-       be used to inhibit this behavior, and the -\b--\b-r\brc\bcf\bfi\bil\ble\be option may  be  used
-       to  force  another file to be read, but neither _\br_\bs_\bh_\bd nor _\bs_\bs_\bh_\bd generally
-       invoke the shell with those options or allow them to be specified.
+       be  used  to  inhibit  this behavior, and the -\b--\b-r\brc\bcf\bfi\bil\ble\be option will make
+       b\bba\bas\bsh\bh use a different file instead of _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc, but  neither  _\br_\bs_\bh_\bd  nor
+       _\bs_\bs_\bh_\bd  generally invoke the shell with those options or allow them to be
+       specified.
 
        If the shell is started with the effective user (group) id not equal to
        the real user (group) id, and the -\b-p\bp option is not supplied, no startup
@@ -5606,108 +5606,109 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
               Arguments to non-string format specifiers are treated as C  con-
               stants, except that a leading plus or minus sign is allowed, and
               if  the leading character is a single or double quote, the value
-              is the ASCII value of the following character.
+              is the numeric value of the following character, using the  cur-
+              rent locale.
 
-              The _\bf_\bo_\br_\bm_\ba_\bt is reused as necessary to consume all  of  the  _\ba_\br_\bg_\bu_\b-
+              The  _\bf_\bo_\br_\bm_\ba_\bt  is  reused as necessary to consume all of the _\ba_\br_\bg_\bu_\b-
               _\bm_\be_\bn_\bt_\bs.  If the _\bf_\bo_\br_\bm_\ba_\bt requires more _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs than are supplied,
-              the  extra  format  specifications  behave as if a zero value or
-              null string, as appropriate,  had  been  supplied.   The  return
-              value  is zero on success, non-zero if an invalid option is sup-
+              the extra format specifications behave as if  a  zero  value  or
+              null  string,  as  appropriate,  had  been supplied.  The return
+              value is zero on success, non-zero if an invalid option is  sup-
               plied or a write or assignment error occurs.
 
        p\bpu\bus\bsh\bhd\bd [-\b-n\bn] [+_\bn] [-_\bn]
        p\bpu\bus\bsh\bhd\bd [-\b-n\bn] [_\bd_\bi_\br]
-              Adds a directory to the top of the directory stack,  or  rotates
-              the  stack,  making the new top of the stack the current working
-              directory.  With no arguments, p\bpu\bus\bsh\bhd\bd exchanges the top two  ele-
-              ments  of the directory stack.  Arguments, if supplied, have the
+              Adds  a  directory to the top of the directory stack, or rotates
+              the stack, making the new top of the stack the  current  working
+              directory.   With no arguments, p\bpu\bus\bsh\bhd\bd exchanges the top two ele-
+              ments of the directory stack.  Arguments, if supplied, have  the
               following meanings:
-              -\b-n\bn     Suppresses the normal change of directory  when  rotating
-                     or  adding  directories  to  the  stack, so that only the
+              -\b-n\bn     Suppresses  the  normal change of directory when rotating
+                     or adding directories to the  stack,  so  that  only  the
                      stack is manipulated.
-              +\b+_\bn     Rotates the stack so that  the  _\bnth  directory  (counting
-                     from  the  left  of the list shown by d\bdi\bir\brs\bs, starting with
+              +\b+_\bn     Rotates  the  stack  so  that the _\bnth directory (counting
+                     from the left of the list shown by  d\bdi\bir\brs\bs,  starting  with
                      zero) is at the top.
-              -\b-_\bn     Rotates the stack so that  the  _\bnth  directory  (counting
-                     from  the  right of the list shown by d\bdi\bir\brs\bs, starting with
+              -\b-_\bn     Rotates  the  stack  so  that the _\bnth directory (counting
+                     from the right of the list shown by d\bdi\bir\brs\bs,  starting  with
                      zero) is at the top.
               _\bd_\bi_\br    Adds _\bd_\bi_\br to the directory stack at the top
 
               After the stack has been modified, if the -\b-n\bn option was not sup-
-              plied, p\bpu\bus\bsh\bhd\bd uses the c\bcd\bd builtin to change to the  directory  at
+              plied,  p\bpu\bus\bsh\bhd\bd  uses the c\bcd\bd builtin to change to the directory at
               the top of the stack.  If the c\bcd\bd fails, p\bpu\bus\bsh\bhd\bd returns a non-zero
               value.
 
-              Otherwise,  if no arguments are supplied, p\bpu\bus\bsh\bhd\bd returns 0 unless
-              the directory stack  is  empty.   When  rotating  the  directory
-              stack,  p\bpu\bus\bsh\bhd\bd returns 0 unless the directory stack is empty or a
+              Otherwise, if no arguments are supplied, p\bpu\bus\bsh\bhd\bd returns 0  unless
+              the  directory  stack  is  empty.   When  rotating the directory
+              stack, p\bpu\bus\bsh\bhd\bd returns 0 unless the directory stack is empty or  a
               non-existent directory stack element is specified.
 
-              If the p\bpu\bus\bsh\bhd\bd command is successful, bash runs d\bdi\bir\brs\bs to  show  the
+              If  the  p\bpu\bus\bsh\bhd\bd command is successful, bash runs d\bdi\bir\brs\bs to show the
               final contents of the directory stack.
 
        p\bpw\bwd\bd [-\b-L\bLP\bP]
-              Print  the  absolute  pathname of the current working directory.
+              Print the absolute pathname of the  current  working  directory.
               The pathname printed contains no symbolic links if the -\b-P\bP option
               is supplied or the -\b-o\bo p\bph\bhy\bys\bsi\bic\bca\bal\bl option to the s\bse\bet\bt builtin command
-              is enabled.  If the -\b-L\bL option is used, the pathname printed  may
-              contain  symbolic links.  The return status is 0 unless an error
+              is  enabled.  If the -\b-L\bL option is used, the pathname printed may
+              contain symbolic links.  The return status is 0 unless an  error
               occurs while reading the name of the current directory or an in-
               valid option is supplied.
 
        r\bre\bea\bad\bd [-\b-E\bEe\ber\brs\bs] [-\b-a\ba _\ba_\bn_\ba_\bm_\be] [-\b-d\bd _\bd_\be_\bl_\bi_\bm] [-\b-i\bi _\bt_\be_\bx_\bt] [-\b-n\bn _\bn_\bc_\bh_\ba_\br_\bs] [-\b-N\bN _\bn_\bc_\bh_\ba_\br_\bs]
        [-\b-p\bp _\bp_\br_\bo_\bm_\bp_\bt] [-\b-t\bt _\bt_\bi_\bm_\be_\bo_\bu_\bt] [-\b-u\bu _\bf_\bd] [_\bn_\ba_\bm_\be ...]
-              One line is read from the standard input, or from the  file  de-
+              One  line  is read from the standard input, or from the file de-
               scriptor _\bf_\bd supplied as an argument to the -\b-u\bu option, split into
-              words  as  described  above  under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg, and the first
-              word is assigned to the first _\bn_\ba_\bm_\be, the second word to the  sec-
-              ond  _\bn_\ba_\bm_\be,  and  so on.  If there are more words than names, the
+              words as described above under W\bWo\bor\brd\bd  S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg,  and  the  first
+              word  is assigned to the first _\bn_\ba_\bm_\be, the second word to the sec-
+              ond _\bn_\ba_\bm_\be, and so on.  If there are more words  than  names,  the
               remaining words and their intervening delimiters are assigned to
-              the last _\bn_\ba_\bm_\be.  If there are fewer words  read  from  the  input
-              stream  than  names, the remaining names are assigned empty val-
-              ues.  The characters in I\bIF\bFS\bS are used  to  split  the  line  into
-              words  using  the  same  rules the shell uses for expansion (de-
-              scribed above under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg).   The  backslash  character
+              the  last  _\bn_\ba_\bm_\be.   If  there are fewer words read from the input
+              stream than names, the remaining names are assigned  empty  val-
+              ues.   The  characters  in  I\bIF\bFS\bS  are used to split the line into
+              words using the same rules the shell  uses  for  expansion  (de-
+              scribed  above  under  W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg).  The backslash character
               (\\b\) may be used to remove any special meaning for the next char-
-              acter  read  and  for  line continuation.  Options, if supplied,
+              acter read and for line  continuation.   Options,  if  supplied,
               have the following meanings:
               -\b-a\ba _\ba_\bn_\ba_\bm_\be
                      The words are assigned to sequential indices of the array
                      variable _\ba_\bn_\ba_\bm_\be, starting at 0.  _\ba_\bn_\ba_\bm_\be is unset before any
-                     new values are assigned.  Other _\bn_\ba_\bm_\be  arguments  are  ig-
+                     new  values  are  assigned.  Other _\bn_\ba_\bm_\be arguments are ig-
                      nored.
               -\b-d\bd _\bd_\be_\bl_\bi_\bm
                      The first character of _\bd_\be_\bl_\bi_\bm is used to terminate the in-
-                     put  line,  rather  than  newline.  If _\bd_\be_\bl_\bi_\bm is the empty
-                     string, r\bre\bea\bad\bd will terminate a line when it  reads  a  NUL
+                     put line, rather than newline.  If  _\bd_\be_\bl_\bi_\bm  is  the  empty
+                     string,  r\bre\bea\bad\bd  will  terminate a line when it reads a NUL
                      character.
-              -\b-e\be     If  the  standard  input  is coming from a terminal, r\bre\bea\bad\bd
-                     uses r\bre\bea\bad\bdl\bli\bin\bne\be (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to  obtain  the  line.
-                     Readline  uses  the  current (or default, if line editing
-                     was not previously active)  editing  settings,  but  uses
+              -\b-e\be     If the standard input is coming  from  a  terminal,  r\bre\bea\bad\bd
+                     uses  r\bre\bea\bad\bdl\bli\bin\bne\be  (see  R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to obtain the line.
+                     Readline uses the current (or default,  if  line  editing
+                     was  not  previously  active)  editing settings, but uses
                      readline's default filename completion.
-              -\b-E\bE     If  the  standard  input  is coming from a terminal, r\bre\bea\bad\bd
-                     uses r\bre\bea\bad\bdl\bli\bin\bne\be (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to  obtain  the  line.
-                     Readline  uses  the  current (or default, if line editing
-                     was not previously active)  editing  settings,  but  uses
+              -\b-E\bE     If the standard input is coming  from  a  terminal,  r\bre\bea\bad\bd
+                     uses  r\bre\bea\bad\bdl\bli\bin\bne\be  (see  R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to obtain the line.
+                     Readline uses the current (or default,  if  line  editing
+                     was  not  previously  active)  editing settings, but uses
                      bash's default completion, including programmable comple-
                      tion.
               -\b-i\bi _\bt_\be_\bx_\bt
-                     If  r\bre\bea\bad\bdl\bli\bin\bne\be  is  being  used  to  read the line, _\bt_\be_\bx_\bt is
+                     If r\bre\bea\bad\bdl\bli\bin\bne\be is being used  to  read  the  line,  _\bt_\be_\bx_\b is
                      placed into the editing buffer before editing begins.
               -\b-n\bn _\bn_\bc_\bh_\ba_\br_\bs
-                     r\bre\bea\bad\breturns after reading _\bn_\bc_\bh_\ba_\br_\bs characters rather  than
+                     r\bre\bea\bad\b returns after reading _\bn_\bc_\bh_\ba_\br_\bs characters rather than
                      waiting for a complete line of input, but honors a delim-
-                     iter  if fewer than _\bn_\bc_\bh_\ba_\br_\bs characters are read before the
+                     iter if fewer than _\bn_\bc_\bh_\ba_\br_\bs characters are read before  the
                      delimiter.
               -\b-N\bN _\bn_\bc_\bh_\ba_\br_\bs
-                     r\bre\bea\bad\breturns  after  reading  exactly  _\bn_\bc_\bh_\ba_\br_\b characters
-                     rather  than waiting for a complete line of input, unless
-                     EOF is encountered or r\bre\bea\bad\bd times out.  Delimiter  charac-
-                     ters  encountered  in the input are not treated specially
-                     and do not cause r\bre\bea\bad\bd to return until  _\bn_\bc_\bh_\ba_\br_\b characters
-                     are  read.   The result is not split on the characters in
-                     I\bIF\bFS\bS; the intent is that the variable is assigned  exactly
+                     r\bre\bea\bad\b returns  after  reading  exactly  _\bn_\bc_\bh_\ba_\br_\bs characters
+                     rather than waiting for a complete line of input,  unless
+                     EOF  is encountered or r\bre\bea\bad\bd times out.  Delimiter charac-
+                     ters encountered in the input are not  treated  specially
+                     and  do  not cause r\bre\bea\bad\bd to return until _\bn_\bc_\bh_\ba_\br_\bs characters
+                     are read.  The result is not split on the  characters  in
+                     I\bIF\bFS\bS;  the intent is that the variable is assigned exactly
                      the characters read (with the exception of backslash; see
                      the -\b-r\br option below).
               -\b-p\bp _\bp_\br_\bo_\bm_\bp_\bt
@@ -5715,137 +5716,137 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                      line, before attempting to read any input.  The prompt is
                      displayed only if input is coming from a terminal.
               -\b-r\br     Backslash does not act as an escape character.  The back-
-                     slash  is considered to be part of the line.  In particu-
-                     lar, a backslash-newline pair may not then be used  as  a
+                     slash is considered to be part of the line.  In  particu-
+                     lar,  a  backslash-newline pair may not then be used as a
                      line continuation.
               -\b-s\bs     Silent mode.  If input is coming from a terminal, charac-
                      ters are not echoed.
               -\b-t\bt _\bt_\bi_\bm_\be_\bo_\bu_\bt
-                     Cause  r\bre\bea\bad\bd  to time out and return failure if a complete
-                     line of input (or a specified number  of  characters)  is
-                     not  read within _\bt_\bi_\bm_\be_\bo_\bu_\bt seconds.  _\bt_\bi_\bm_\be_\bo_\bu_\bt may be a deci-
-                     mal number with a fractional portion following the  deci-
-                     mal  point.   This  option  is  only effective if r\bre\bea\bad\bd is
-                     reading input from a terminal,  pipe,  or  other  special
-                     file;  it  has no effect when reading from regular files.
+                     Cause r\bre\bea\bad\bd to time out and return failure if  a  complete
+                     line  of  input  (or a specified number of characters) is
+                     not read within _\bt_\bi_\bm_\be_\bo_\bu_\bt seconds.  _\bt_\bi_\bm_\be_\bo_\bu_\bt may be a  deci-
+                     mal  number with a fractional portion following the deci-
+                     mal point.  This option is  only  effective  if  r\bre\bea\bad\b is
+                     reading  input  from  a  terminal, pipe, or other special
+                     file; it has no effect when reading from  regular  files.
                      If r\bre\bea\bad\bd times out, r\bre\bea\bad\bd saves any partial input read into
-                     the specified variable _\bn_\ba_\bm_\be.  If _\bt_\bi_\bm_\be_\bo_\bu_\bt is 0,  r\bre\bea\bad\b re-
-                     turns  immediately, without trying to read any data.  The
-                     exit status is 0 if input is available on  the  specified
-                     file  descriptor,  or  the read will return EOF, non-zero
-                     otherwise.  The exit status is greater than  128  if  the
+                     the  specified  variable _\bn_\ba_\bm_\be.  If _\bt_\bi_\bm_\be_\bo_\bu_\bt is 0, r\bre\bea\bad\bd re-
+                     turns immediately, without trying to read any data.   The
+                     exit  status  is 0 if input is available on the specified
+                     file descriptor, or the read will  return  EOF,  non-zero
+                     otherwise.   The  exit  status is greater than 128 if the
                      timeout is exceeded.
               -\b-u\bu _\bf_\bd  Read input from file descriptor _\bf_\bd.
 
-              Other  than  the  case where _\bd_\be_\bl_\bi_\bm is the empty string, r\bre\bea\bad\bd ig-
+              Other than the case where _\bd_\be_\bl_\bi_\bm is the empty  string,  r\bre\bea\bad\b ig-
               nores any NUL characters in the input.
 
-              If no _\bn_\ba_\bm_\be_\bs are supplied, the line read, without the ending  de-
-              limiter  but  otherwise  unmodified, is assigned to the variable
-              R\bRE\bEP\bPL\bLY\bY.  The exit status is zero, unless end-of-file  is  encoun-
-              tered,  r\bre\bea\bad\bd times out (in which case the status is greater than
-              128), a variable assignment error (such as assigning to a  read-
+              If  no _\bn_\ba_\bm_\be_\bs are supplied, the line read, without the ending de-
+              limiter but otherwise unmodified, is assigned  to  the  variable
+              R\bRE\bEP\bPL\bLY\bY.   The  exit status is zero, unless end-of-file is encoun-
+              tered, r\bre\bea\bad\bd times out (in which case the status is greater  than
+              128),  a variable assignment error (such as assigning to a read-
               only variable) occurs, or an invalid file descriptor is supplied
               as the argument to -\b-u\bu.
 
        r\bre\bea\bad\bdo\bon\bnl\bly\by [-\b-a\baA\bAf\bf] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bw_\bo_\br_\bd] ...]
-              The  given  _\bn_\ba_\bm_\be_\bs are marked readonly; the values of these _\bn_\ba_\bm_\be_\bs
-              may not be changed by subsequent assignment.  If the  -\b-f\b option
-              is  supplied,  the  functions  corresponding to the _\bn_\ba_\bm_\be_\bs are so
-              marked.  The -\b-a\ba option restricts the variables  to  indexed  ar-
-              rays;  the  -\b-A\bA option restricts the variables to associative ar-
+              The given _\bn_\ba_\bm_\be_\bs are marked readonly; the values of  these  _\bn_\ba_\bm_\be_\bs
+              may  not  be changed by subsequent assignment.  If the -\b-f\bf option
+              is supplied, the functions corresponding to  the  _\bn_\ba_\bm_\be_\bs  are  so
+              marked.   The  -\b-a\ba  option restricts the variables to indexed ar-
+              rays; the -\b-A\bA option restricts the variables to  associative  ar-
               rays.  If both options are supplied, -\b-A\bA takes precedence.  If no
-              _\bn_\ba_\bm_\barguments are given, or if the -\b-p\bp  option  is  supplied,  a
+              _\bn_\ba_\bm_\b arguments  are  given,  or if the -\b-p\bp option is supplied, a
               list of all readonly names is printed.  The other options may be
-              used  to  restrict the output to a subset of the set of readonly
-              names.  The -\b-p\bp option causes output to be displayed in a  format
-              that  may be reused as input.  If a variable name is followed by
-              =_\bw_\bo_\br_\bd, the value of the variable is set  to  _\bw_\bo_\br_\bd.   The  return
-              status  is 0 unless an invalid option is encountered, one of the
+              used to restrict the output to a subset of the set  of  readonly
+              names.   The -\b-p\bp option causes output to be displayed in a format
+              that may be reused as input.  If a variable name is followed  by
+              =_\bw_\bo_\br_\bd,  the  value  of  the variable is set to _\bw_\bo_\br_\bd.  The return
+              status is 0 unless an invalid option is encountered, one of  the
               _\bn_\ba_\bm_\be_\bs is not a valid shell variable name, or -\b-f\bf is supplied with
               a _\bn_\ba_\bm_\be that is not a function.
 
        r\bre\bet\btu\bur\brn\bn [_\bn]
-              Causes a function to stop executing and return the value  speci-
-              fied  by _\bn to its caller.  If _\bn is omitted, the return status is
-              that of the last command executed in the function body.  If  r\bre\be-\b-
+              Causes  a function to stop executing and return the value speci-
+              fied by _\bn to its caller.  If _\bn is omitted, the return status  is
+              that  of the last command executed in the function body.  If r\bre\be-\b-
               t\btu\bur\brn\bn is executed by a trap handler, the last command used to de-
-              termine  the status is the last command executed before the trap
-              handler.  If r\bre\bet\btu\bur\brn\bn is executed during a D\bDE\bEB\bBU\bUG\bG  trap,  the  last
-              command  used  to  determine the status is the last command exe-
-              cuted by the trap handler before r\bre\bet\btu\bur\brn\bn was invoked.  If  r\bre\bet\btu\bur\brn\bn
-              is  used outside a function, but during execution of a script by
-              the .\b.  (s\bso\bou\bur\brc\bce\be) command, it causes the shell to  stop  executing
-              that  script  and return either _\bn or the exit status of the last
-              command executed within the script as the  exit  status  of  the
+              termine the status is the last command executed before the  trap
+              handler.   If  r\bre\bet\btu\bur\brn\bn  is executed during a D\bDE\bEB\bBU\bUG\bG trap, the last
+              command used to determine the status is the  last  command  exe-
+              cuted  by the trap handler before r\bre\bet\btu\bur\brn\bn was invoked.  If r\bre\bet\btu\bur\brn\bn
+              is used outside a function, but during execution of a script  by
+              the  .\b.   (s\bso\bou\bur\brc\bce\be) command, it causes the shell to stop executing
+              that script and return either _\bn or the exit status of  the  last
+              command  executed  within  the  script as the exit status of the
               script.  If _\bn is supplied, the return value is its least signif-
-              icant  8  bits.  The return status is non-zero if r\bre\bet\btu\bur\brn\bn is sup-
-              plied a non-numeric argument, or is used outside a function  and
-              not  during  execution  of a script by .\b. or s\bso\bou\bur\brc\bce\be.  Any command
+              icant 8 bits.  The return status is non-zero if r\bre\bet\btu\bur\brn\bn  is  sup-
+              plied  a non-numeric argument, or is used outside a function and
+              not during execution of a script by .\b. or  s\bso\bou\bur\brc\bce\be.   Any  command
               associated with the R\bRE\bET\bTU\bUR\bRN\bN trap is executed before execution re-
               sumes after the function or script.
 
        s\bse\bet\bt [-\b-a\bab\bbe\bef\bfh\bhk\bkm\bmn\bnp\bpt\btu\buv\bvx\bxB\bBC\bCE\bEH\bHP\bPT\bT] [-\b-o\bo _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be] [-\b--\b-] [-\b-] [_\ba_\br_\bg ...]
        s\bse\bet\bt [+\b+a\bab\bbe\bef\bfh\bhk\bkm\bmn\bnp\bpt\btu\buv\bvx\bxB\bBC\bCE\bEH\bHP\bPT\bT] [+\b+o\bo _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be] [-\b--\b-] [-\b-] [_\ba_\br_\bg ...]
        s\bse\bet\bt -\b-o\bo
-       s\bse\bet\bt +\b+o\bo Without options, display the name and value of each shell  vari-
-              able  in a format that can be reused as input for setting or re-
+       s\bse\bet\bt +\b+o\bo Without  options, display the name and value of each shell vari-
+              able in a format that can be reused as input for setting or  re-
               setting the currently-set variables.  Read-only variables cannot
-              be reset.  In _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, only shell variables are listed.   The
-              output  is sorted according to the current locale.  When options
-              are specified, they set or unset shell  attributes.   Any  argu-
-              ments  remaining  after  option processing are treated as values
+              be  reset.  In _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, only shell variables are listed.  The
+              output is sorted according to the current locale.  When  options
+              are  specified,  they  set or unset shell attributes.  Any argu-
+              ments remaining after option processing are  treated  as  values
               for the positional parameters and are assigned, in order, to $\b$1\b1,
-              $\b$2\b2, ..., $\b$_\bn.  Options, if specified, have  the  following  mean-
+              $\b$2\b2,  ...,  $\b$_\bn.   Options, if specified, have the following mean-
               ings:
               -\b-a\ba      Each variable or function that is created or modified is
-                      given  the export attribute and marked for export to the
+                      given the export attribute and marked for export to  the
                       environment of subsequent commands.
-              -\b-b\bb      Report the status of terminated background jobs  immedi-
+              -\b-b\bb      Report  the status of terminated background jobs immedi-
                       ately, rather than before the next primary prompt.  This
                       is effective only when job control is enabled.
-              -\b-e\be      Exit  immediately  if a _\bp_\bi_\bp_\be_\bl_\bi_\bn_\be (which may consist of a
-                      single _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd), a _\bl_\bi_\bs_\bt, or  a  _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\b _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+              -\b-e\be      Exit immediately if a _\bp_\bi_\bp_\be_\bl_\bi_\bn_\be (which may consist  of  a
+                      single  _\bs_\bi_\bm_\bp_\bl_\be  _\bc_\bo_\bm_\bm_\ba_\bn_\bd),  a _\bl_\bi_\bs_\bt, or a _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd _\bc_\bo_\bm_\bm_\ba_\bn_\bd
                       (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR above), exits with a non-zero status.
-                      The  shell  does  not  exit if the command that fails 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 following the i\bif\bf or
-                      e\bel\bli\bif\breserved words, part of any command executed  in  a
-                      &\b&&\b or |\b||\b| list except the command following the final &\b&&\b&
+                      The shell does not exit if the  command  that  fails  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 following the  i\bif\b or
+                      e\bel\bli\bif\b reserved  words, part of any command executed in a
+                      &\b&&\bor |\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 with !\b!.   If  a
-                      compound  command  other  than a subshell returns a non-
-                      zero status because a command failed while -\b-e\be was  being
-                      ignored,  the  shell  does  not exit.  A trap on E\bER\bRR\bR, if
-                      set, is executed before the shell  exits.   This  option
+                      command's  return  value is being inverted with !\b!.  If a
+                      compound command other than a subshell  returns  a  non-
+                      zero  status because a command failed while -\b-e\be was being
+                      ignored, the shell does not exit.  A  trap  on  E\bER\bRR\bR,  if
+                      set,  is  executed  before the shell exits.  This option
                       applies to the shell environment and each subshell envi-
-                      ronment  separately  (see  C\bCO\bOM\bMM\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN E\bEN\bNV\bVI\bIR\bRO\bON\bNM\bME\bEN\bNT\bT
+                      ronment separately (see  C\bCO\bOM\bMM\bMA\bAN\bND\bD  E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\b E\bEN\bNV\bVI\bIR\bRO\bON\bNM\bME\bEN\bNT\bT
                       above), and may cause subshells to exit before executing
                       all the commands in the subshell.
 
-                      If a compound command or shell function  executes  in  a
-                      context  where -\b-e\be is being ignored, none of the commands
-                      executed within the compound command  or  function  body
-                      will  be  affected  by the -\b-e\be setting, even if -\b-e\be is set
-                      and a command returns a failure status.  If  a  compound
-                      command  or  shell function sets -\b-e\be while executing in a
-                      context where -\b-e\be is ignored, that setting will not  have
-                      any  effect  until  the  compound command or the command
+                      If  a  compound  command or shell function executes in a
+                      context where -\b-e\be is being ignored, none of the  commands
+                      executed  within  the  compound command or function body
+                      will be affected by the -\b-e\be setting, even if  -\b-e\be  is  set
+                      and  a  command returns a failure status.  If a compound
+                      command or shell function sets -\b-e\be while executing  in  a
+                      context  where -\b-e\be is ignored, that setting will not have
+                      any effect until the compound  command  or  the  command
                       containing the function call completes.
               -\b-f\bf      Disable pathname expansion.
-              -\b-h\bh      Remember the location of commands as they are looked  up
+              -\b-h\bh      Remember  the location of commands as they are looked up
                       for execution.  This is enabled by default.
-              -\b-k\bk      All  arguments  in the form of assignment statements are
-                      placed in the environment for a command, not just  those
+              -\b-k\bk      All arguments in the form of assignment  statements  are
+                      placed  in the environment for a command, not just those
                       that precede the command name.
-              -\b-m\bm      Monitor  mode.   Job control is enabled.  This option is
-                      on by default for interactive  shells  on  systems  that
-                      support  it  (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL above).  All processes run
+              -\b-m\bm      Monitor mode.  Job control is enabled.  This  option  is
+                      on  by  default  for  interactive shells on systems that
+                      support it (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL above).  All  processes  run
                       in a separate process group.  When a background job com-
                       pletes, the shell prints a line containing its exit sta-
                       tus.
               -\b-n\bn      Read commands but do not execute them.  This may be used
-                      to check a shell script for syntax errors.  This is  ig-
+                      to  check a shell script for syntax errors.  This is ig-
                       nored by interactive shells.
               -\b-o\bo _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be
                       The _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be can be one of the following:
@@ -5853,10 +5854,10 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                               Same as -\b-a\ba.
                       b\bbr\bra\bac\bce\bee\bex\bxp\bpa\ban\bnd\bd
                               Same as -\b-B\bB.
-                      e\bem\bma\bac\bcs\bs   Use  an  emacs-style command line editing inter-
+                      e\bem\bma\bac\bcs\bs   Use an emacs-style command line  editing  inter-
                               face.  This is enabled by default when the shell
                               is interactive, unless the shell is started with
-                              the -\b--\b-n\bno\boe\bed\bdi\bit\bti\bin\bng\bg option.  This also  affects  the
+                              the  -\b--\b-n\bno\boe\bed\bdi\bit\bti\bin\bng\bg  option.  This also affects the
                               editing interface used for r\bre\bea\bad\bd -\b-e\be.
                       e\ber\brr\bre\bex\bxi\bit\bt Same as -\b-e\be.
                       e\ber\brr\brt\btr\bra\bac\bce\be
@@ -5870,7 +5871,7 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                               H\bHI\bIS\bST\bTO\bOR\bRY\bY.  This option is on by default in inter-
                               active shells.
                       i\big\bgn\bno\bor\bre\bee\beo\bof\bf
-                              The   effect   is   as   if  the  shell  command
+                              The  effect  is  as   if   the   shell   command
                               "IGNOREEOF=10"  had  been  executed  (see  S\bSh\bhe\bel\bll\bl
                               V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs above).
                       k\bke\bey\byw\bwo\bor\brd\bd Same as -\b-k\bk.
@@ -5886,178 +5887,178 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                       p\bph\bhy\bys\bsi\bic\bca\bal\bl
                               Same as -\b-P\bP.
                       p\bpi\bip\bpe\bef\bfa\bai\bil\bl
-                              If  set,  the  return value of a pipeline is the
-                              value of the last (rightmost)  command  to  exit
-                              with  a non-zero status, or zero if all commands
-                              in the pipeline exit successfully.  This  option
+                              If set, the return value of a  pipeline  is  the
+                              value  of  the  last (rightmost) command to exit
+                              with a non-zero status, or zero if all  commands
+                              in  the pipeline exit successfully.  This option
                               is disabled by default.
-                      p\bpo\bos\bsi\bix\bx   Change  the  behavior  of b\bba\bas\bsh\bh where the default
-                              operation differs from  the  POSIX  standard  to
-                              match  the  standard (_\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be).  See S\bSE\bEE\bE A\bAL\bLS\bSO\bO
+                      p\bpo\bos\bsi\bix\bx   Change the behavior of b\bba\bas\bsh\bh  where  the  default
+                              operation  differs  from  the  POSIX standard to
+                              match the standard (_\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be).  See  S\bSE\bEE\b A\bAL\bLS\bSO\bO
                               below for a reference to a document that details
                               how posix mode affects bash's behavior.
                       p\bpr\bri\biv\bvi\bil\ble\beg\bge\bed\bd
                               Same as -\b-p\bp.
                       v\bve\ber\brb\bbo\bos\bse\be Same as -\b-v\bv.
-                      v\bvi\bi      Use a vi-style command line  editing  interface.
+                      v\bvi\bi      Use  a  vi-style command line editing interface.
                               This also affects the editing interface used for
                               r\bre\bea\bad\bd -\b-e\be.
                       x\bxt\btr\bra\bac\bce\be  Same as -\b-x\bx.
-                      If  -\b-o\bo  is  supplied with no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be, s\bse\bet\bt prints the
-                      current shell option settings.  If +\b+o\bo is  supplied  with
-                      no  _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be,  s\bse\bet\bt prints a series of s\bse\bet\bt commands to
-                      recreate the current option  settings  on  the  standard
+                      If -\b-o\bo is supplied with no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be,  s\bse\bet\bt  prints  the
+                      current  shell  option settings.  If +\b+o\bo is supplied with
+                      no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be, s\bse\bet\bt prints a series of s\bse\bet\bt  commands  to
+                      recreate  the  current  option  settings on the standard
                       output.
-              -\b-p\bp      Turn  on  _\bp_\br_\bi_\bv_\bi_\bl_\be_\bg_\be_\bd  mode.   In this mode, the $\b$E\bEN\bNV\bV and
-                      $\b$B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bfiles are not processed, shell  functions  are
-                      not  inherited  from the environment, and the S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS,
-                      B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS, C\bCD\bDP\bPA\bAT\bTH\bH, and G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE variables, if they  ap-
-                      pear  in  the environment, are ignored.  If the shell is
-                      started with the effective user (group) id not equal  to
-                      the  real user (group) id, and the -\b-p\bp option is not sup-
+              -\b-p\bp      Turn on _\bp_\br_\bi_\bv_\bi_\bl_\be_\bg_\be_\bd mode.  In this  mode,  the  $\b$E\bEN\bNV\b and
+                      $\b$B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\b files  are not processed, shell functions are
+                      not inherited from the environment, and  the  S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS,
+                      B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS,  C\bCD\bDP\bPA\bAT\bTH\bH, and G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE variables, if they ap-
+                      pear in the environment, are ignored.  If the  shell  is
+                      started  with the effective user (group) id not equal to
+                      the real user (group) id, and the -\b-p\bp option is not  sup-
                       plied, these actions are taken and the effective user id
-                      is set to the real user id.  If the -\b-p\bp  option  is  sup-
-                      plied  at  startup,  the effective user id is not reset.
-                      Turning this option off causes the  effective  user  and
+                      is  set  to  the real user id.  If the -\b-p\bp option is sup-
+                      plied at startup, the effective user id  is  not  reset.
+                      Turning  this  option  off causes the effective user and
                       group ids to be set to the real user and group ids.
               -\b-r\br      Enable restricted shell mode.  This option cannot be un-
                       set once it has been set.
               -\b-t\bt      Exit after reading and executing one command.
               -\b-u\bu      Treat unset variables and parameters other than the spe-
-                      cial  parameters  "@"  and  "*", or array variables sub-
-                      scripted with "@" or "*", as an  error  when  performing
-                      parameter  expansion.   If  expansion is attempted on an
-                      unset variable or parameter, the shell prints  an  error
-                      message,  and, if not interactive, exits with a non-zero
+                      cial parameters "@" and "*",  or  array  variables  sub-
+                      scripted  with  "@"  or "*", as an error when performing
+                      parameter expansion.  If expansion is  attempted  on  an
+                      unset  variable  or parameter, the shell prints an error
+                      message, and, if not interactive, exits with a  non-zero
                       status.
               -\b-v\bv      Print shell input lines as they are read.
-              -\b-x\bx      After expanding each _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, f\bfo\bor\br  command,  c\bca\bas\bse\be
+              -\b-x\bx      After  expanding  each _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, f\bfo\bor\br command, c\bca\bas\bse\be
                       command, s\bse\bel\ble\bec\bct\bt command, or arithmetic f\bfo\bor\br command, dis-
-                      play  the expanded value of P\bPS\bS4\b4, followed by the command
-                      and its expanded arguments or associated word  list,  to
+                      play the expanded value of P\bPS\bS4\b4, followed by the  command
+                      and  its  expanded arguments or associated word list, to
                       standard error.
-              -\b-B\bB      The  shell performs brace expansion (see B\bBr\bra\bac\bce\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
+              -\b-B\bB      The shell performs brace expansion (see B\bBr\bra\bac\bce\b E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
                       above).  This is on by default.
-              -\b-C\bC      If set, b\bba\bas\bsh\bh does not overwrite an  existing  file  with
-                      the  >\b>,  >\b>&\b&,  and <\b<>\b> redirection operators.  This may be
+              -\b-C\bC      If  set,  b\bba\bas\bsh\bh  does not overwrite an existing file with
+                      the >\b>, >\b>&\b&, and <\b<>\b> redirection operators.   This  may  be
                       overridden when creating output files by using the redi-
                       rection operator >\b>|\b| instead of >\b>.
               -\b-E\bE      If set, any trap on E\bER\bRR\bR is inherited by shell functions,
-                      command substitutions, and commands executed in  a  sub-
-                      shell  environment.  The E\bER\bRR\bR trap is normally not inher-
+                      command  substitutions,  and commands executed in a sub-
+                      shell environment.  The E\bER\bRR\bR trap is normally not  inher-
                       ited in such cases.
               -\b-H\bH      Enable !\b!  style history substitution.  This option is on
                       by default when the shell is interactive.
-              -\b-P\bP      If set, the shell does not resolve symbolic  links  when
-                      executing  commands  such  as c\bcd\bd that change the current
+              -\b-P\bP      If  set,  the shell does not resolve symbolic links when
+                      executing commands such as c\bcd\bd that  change  the  current
                       working  directory.   It  uses  the  physical  directory
                       structure instead.  By default, b\bba\bas\bsh\bh follows the logical
-                      chain  of  directories  when  performing  commands which
+                      chain of  directories  when  performing  commands  which
                       change the current directory.
-              -\b-T\bT      If set, any traps on D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN are  inherited  by
+              -\b-T\bT      If  set,  any traps on D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN are inherited by
                       shell functions, command substitutions, and commands ex-
-                      ecuted  in a subshell environment.  The D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN
+                      ecuted in a subshell environment.  The D\bDE\bEB\bBU\bUG\bG and  R\bRE\bET\bTU\bUR\bRN\bN
                       traps are normally not inherited in such cases.
-              -\b--\b-      If no arguments follow this option, then the  positional
+              -\b--\b-      If  no arguments follow this option, then the positional
                       parameters are unset.  Otherwise, the positional parame-
-                      ters  are  set  to  the _\ba_\br_\bgs, even if some of them begin
+                      ters are set to the _\ba_\br_\bgs, even if  some  of  them  begin
                       with a -\b-.
-              -\b-       Signal the end of options, cause all remaining  _\ba_\br_\bgs  to
+              -\b-       Signal  the  end of options, cause all remaining _\ba_\br_\bgs to
                       be assigned to the positional parameters.  The -\b-x\bx and -\b-v\bv
                       options are turned off.  If there are no _\ba_\br_\bgs, the posi-
                       tional parameters remain unchanged.
 
-              The  options are off by default unless otherwise noted.  Using +
-              rather than - causes these options to be turned  off.   The  op-
+              The options are off by default unless otherwise noted.  Using  +
+              rather  than  -  causes these options to be turned off.  The op-
               tions can also be specified as arguments to an invocation of the
-              shell.   The current set of options may be found in $\b$-\b-.  The re-
-              turn status is always true unless an invalid option  is  encoun-
+              shell.  The current set of options may be found in $\b$-\b-.  The  re-
+              turn  status  is always true unless an invalid option is encoun-
               tered.
 
        s\bsh\bhi\bif\bft\bt [_\bn]
-              The  positional  parameters  from _\bn+1 ... are renamed to $\b$1\b1 .\b..\b..\b..\b.
-              Parameters represented by the numbers $\b$#\b# down to $\b$#\b#-_\bn+1 are  un-
-              set.   _\bn must be a non-negative number less than or equal to $\b$#\b#.
-              If _\bn is 0, no parameters are changed.  If _\bn is not given, it  is
-              assumed  to be 1.  If _\bn is greater than $\b$#\b#, the positional para-
-              meters are not changed.  The return status is greater than  zero
+              The positional parameters from _\bn+1 ... are renamed  to  $\b$1\b .\b..\b..\b..\b.
+              Parameters  represented by the numbers $\b$#\b# down to $\b$#\b#-_\bn+1 are un-
+              set.  _\bn must be a non-negative number less than or equal to  $\b$#\b#.
+              If  _\bn is 0, no parameters are changed.  If _\bn is not given, it is
+              assumed to be 1.  If _\bn is greater than $\b$#\b#, the positional  para-
+              meters  are not changed.  The return status is greater than zero
               if _\bn is greater than $\b$#\b# or less than zero; otherwise 0.
 
        s\bsh\bho\bop\bpt\bt [-\b-p\bpq\bqs\bsu\bu] [-\b-o\bo] [_\bo_\bp_\bt_\bn_\ba_\bm_\be ...]
-              Toggle  the values of settings controlling optional shell behav-
-              ior.  The settings can be either those listed below, or, if  the
+              Toggle the values of settings controlling optional shell  behav-
+              ior.   The settings can be either those listed below, or, if the
               -\b-o\bo option is used, those available with the -\b-o\bo option to the s\bse\bet\bt
               builtin command.  With no options, or with the -\b-p\bp option, a list
-              of  all  settable  options  is  displayed, with an indication of
+              of all settable options is  displayed,  with  an  indication  of
               whether or not each is set; if _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs are supplied, the output
-              is restricted to those options.  The -\b-p\bp option causes output  to
-              be  displayed  in a form that may be reused as input.  Other op-
+              is  restricted to those options.  The -\b-p\bp option causes output to
+              be displayed in a form that may be reused as input.   Other  op-
               tions have the following meanings:
               -\b-s\bs     Enable (set) each _\bo_\bp_\bt_\bn_\ba_\bm_\be.
               -\b-u\bu     Disable (unset) each _\bo_\bp_\bt_\bn_\ba_\bm_\be.
-              -\b-q\bq     Suppresses normal output (quiet mode); the return  status
+              -\b-q\bq     Suppresses  normal output (quiet mode); the return status
                      indicates whether the _\bo_\bp_\bt_\bn_\ba_\bm_\be is set or unset.  If multi-
-                     ple  _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments are given with -\b-q\bq, the return sta-
-                     tus is zero if all _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs are enabled; non-zero  other-
+                     ple _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments are given with -\b-q\bq, the return  sta-
+                     tus  is zero if all _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs are enabled; non-zero other-
                      wise.
-              -\b-o\bo     Restricts  the  values of _\bo_\bp_\bt_\bn_\ba_\bm_\be to be those defined for
+              -\b-o\bo     Restricts the values of _\bo_\bp_\bt_\bn_\ba_\bm_\be to be those  defined  for
                      the -\b-o\bo option to the s\bse\bet\bt builtin.
 
-              If either -\b-s\bs or -\b-u\bu is used  with  no  _\bo_\bp_\bt_\bn_\ba_\bm_\be  arguments,  s\bsh\bho\bop\bpt\bt
-              shows  only  those options which are set or unset, respectively.
-              Unless otherwise noted, the s\bsh\bho\bop\bpt\bt options are  disabled  (unset)
+              If  either  -\b-s\bs  or  -\b-u\bu  is used with no _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments, s\bsh\bho\bop\bpt\bt
+              shows only those options which are set or  unset,  respectively.
+              Unless  otherwise  noted, the s\bsh\bho\bop\bpt\bt options are disabled (unset)
               by default.
 
-              The  return  status when listing options is zero if all _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs
-              are enabled, non-zero otherwise.  When setting or unsetting  op-
-              tions,  the  return  status  is  zero unless an _\bo_\bp_\bt_\bn_\ba_\bm_\be is not a
+              The return status when listing options is zero if  all  _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs
+              are  enabled, non-zero otherwise.  When setting or unsetting op-
+              tions, the return status is zero unless  an  _\bo_\bp_\bt_\bn_\ba_\bm_\be  is  not  a
               valid shell option.
 
               The list of s\bsh\bho\bop\bpt\bt options is:
 
               a\bar\brr\bra\bay\by_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_o\bon\bnc\bce\be
-                      If set, the shell suppresses multiple evaluation of  as-
+                      If  set, the shell suppresses multiple evaluation of as-
                       sociative and indexed array subscripts during arithmetic
                       expression evaluation, while executing builtins that can
-                      perform   variable   assignments,  and  while  executing
+                      perform  variable  assignments,  and   while   executing
                       builtins that perform array dereferencing.
               a\bas\bss\bso\boc\bc_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_o\bon\bnc\bce\be
                       Deprecated; a synonym for a\bar\brr\bra\bay\by_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_o\bon\bnc\bce\be.
-              a\bau\but\bto\boc\bcd\bd  If set, a command name that is the name of  a  directory
-                      is  executed  as  if it were the argument to the c\bcd\bd com-
+              a\bau\but\bto\boc\bcd\bd  If  set,  a command name that is the name of a directory
+                      is executed as if it were the argument to  the  c\bcd\b com-
                       mand.  This option is only used by interactive shells.
               c\bcd\bda\bab\bbl\ble\be_\b_v\bva\bar\brs\bs
-                      If set, an argument to the c\bcd\bd builtin  command  that  is
-                      not  a directory is assumed to be the name of a variable
+                      If  set,  an  argument to the c\bcd\bd builtin command that is
+                      not a directory is assumed to be the name of a  variable
                       whose value is the directory to change to.
               c\bcd\bds\bsp\bpe\bel\bll\bl If set, minor errors in the spelling of a directory com-
-                      ponent in a c\bcd\bd command will be  corrected.   The  errors
+                      ponent  in  a  c\bcd\bd command will be corrected.  The errors
                       checked for are transposed characters, a missing charac-
-                      ter,  and  one  character  too many.  If a correction is
-                      found, the corrected filename is printed, and  the  com-
-                      mand  proceeds.  This option is only used by interactive
+                      ter, and one character too many.   If  a  correction  is
+                      found,  the  corrected filename is printed, and the com-
+                      mand proceeds.  This option is only used by  interactive
                       shells.
               c\bch\bhe\bec\bck\bkh\bha\bas\bsh\bh
                       If set, b\bba\bas\bsh\bh checks that a command found in the hash ta-
-                      ble exists before trying to execute  it.   If  a  hashed
-                      command  no  longer exists, a normal path search is per-
+                      ble  exists  before  trying  to execute it.  If a hashed
+                      command no longer exists, a normal path search  is  per-
                       formed.
               c\bch\bhe\bec\bck\bkj\bjo\bob\bbs\bs
                       If set, b\bba\bas\bsh\bh lists the status of any stopped and running
-                      jobs before exiting an interactive shell.  If  any  jobs
+                      jobs  before  exiting an interactive shell.  If any jobs
                       are running, this causes the exit to be deferred until a
-                      second  exit is attempted without an intervening command
+                      second exit is attempted without an intervening  command
                       (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL above).  The shell always postpones ex-
                       iting if any jobs are stopped.
               c\bch\bhe\bec\bck\bkw\bwi\bin\bns\bsi\biz\bze\be
-                      If set, b\bba\bas\bsh\bh checks the window size after each  external
-                      (non-builtin)  command  and,  if  necessary, updates the
-                      values of L\bLI\bIN\bNE\bES\bS and C\bCO\bOL\bLU\bUM\bMN\bNS\bS.  This option is enabled  by
+                      If  set, b\bba\bas\bsh\bh checks the window size after each external
+                      (non-builtin) command and,  if  necessary,  updates  the
+                      values  of L\bLI\bIN\bNE\bES\bS and C\bCO\bOL\bLU\bUM\bMN\bNS\bS.  This option is enabled by
                       default.
-              c\bcm\bmd\bdh\bhi\bis\bst\bt If  set,  b\bba\bas\bsh\bh attempts to save all lines of a multiple-
-                      line command in the same  history  entry.   This  allows
-                      easy  re-editing of multi-line commands.  This option is
-                      enabled by default, but only has an  effect  if  command
+              c\bcm\bmd\bdh\bhi\bis\bst\bt If set, b\bba\bas\bsh\bh attempts to save all lines of  a  multiple-
+                      line  command  in  the  same history entry.  This allows
+                      easy re-editing of multi-line commands.  This option  is
+                      enabled  by  default,  but only has an effect if command
                       history is enabled, as described above under H\bHI\bIS\bST\bTO\bOR\bRY\bY.
               c\bco\bom\bmp\bpa\bat\bt3\b31\b1
               c\bco\bom\bmp\bpa\bat\bt3\b32\b2
@@ -6067,122 +6068,122 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
               c\bco\bom\bmp\bpa\bat\bt4\b43\b3
               c\bco\bom\bmp\bpa\bat\bt4\b44\b4
               c\bco\bom\bmp\bpa\bat\bt5\b50\b0
-                      These  control aspects of the shell's compatibility mode
+                      These control aspects of the shell's compatibility  mode
                       (see 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 below).
 
               c\bco\bom\bmp\bpl\ble\bet\bte\be_\b_f\bfu\bul\bll\blq\bqu\buo\bot\bte\be
-                      If set, b\bba\bas\bsh\bh quotes all shell  metacharacters  in  file-
-                      names  and  directory  names when performing completion.
+                      If  set,  b\bba\bas\bsh\bh  quotes all shell metacharacters in file-
+                      names and directory names  when  performing  completion.
                       If not set, b\bba\bas\bsh\bh removes metacharacters such as the dol-
-                      lar sign from the set of characters that will be  quoted
-                      in  completed filenames when these metacharacters appear
-                      in shell variable references in words to  be  completed.
-                      This  means that dollar signs in variable names that ex-
-                      pand to directories will not  be  quoted;  however,  any
-                      dollar  signs appearing in filenames will not be quoted,
-                      either.  This is active only when bash  is  using  back-
-                      slashes  to quote completed filenames.  This variable is
-                      set by default, which is the default  bash  behavior  in
+                      lar  sign from the set of characters that will be quoted
+                      in completed filenames when these metacharacters  appear
+                      in  shell  variable references in words to be completed.
+                      This means that dollar signs in variable names that  ex-
+                      pand  to  directories  will  not be quoted; however, any
+                      dollar signs appearing in filenames will not be  quoted,
+                      either.   This  is  active only when bash is using back-
+                      slashes to quote completed filenames.  This variable  is
+                      set  by  default,  which is the default bash behavior in
                       versions through 4.2.
 
               d\bdi\bir\bre\bex\bxp\bpa\ban\bnd\bd
-                      If  set,  b\bba\bas\bsh\bh replaces directory names with the results
-                      of word expansion when performing  filename  completion.
+                      If set, b\bba\bas\bsh\bh replaces directory names with  the  results
+                      of  word  expansion when performing filename completion.
                       This  changes  the  contents  of  the  readline  editing
-                      buffer.  If not set, b\bba\bas\bsh\bh attempts to preserve what  the
+                      buffer.   If not set, b\bba\bas\bsh\bh attempts to preserve what the
                       user typed.
 
               d\bdi\bir\brs\bsp\bpe\bel\bll\bl
-                      If  set,  b\bba\bas\bsh\bh attempts spelling correction on directory
-                      names during word completion if the directory name  ini-
+                      If set, b\bba\bas\bsh\bh attempts spelling correction  on  directory
+                      names  during word completion if the directory name ini-
                       tially supplied does not exist.
 
-              d\bdo\bot\btg\bgl\blo\bob\bb If  set, b\bba\bas\bsh\bh includes filenames beginning with a "." in
-                      the results of pathname expansion.   The  filenames  "."
+              d\bdo\bot\btg\bgl\blo\bob\bb If set, b\bba\bas\bsh\bh includes filenames beginning with a "."  in
+                      the  results  of  pathname expansion.  The filenames "."
                       and ".." must always be matched explicitly, even if d\bdo\bot\bt-\b-
                       g\bgl\blo\bob\bb is set.
 
               e\bex\bxe\bec\bcf\bfa\bai\bil\bl
                       If set, a non-interactive shell will not exit if it can-
-                      not  execute  the  file  specified as an argument to the
-                      e\bex\bxe\bec\bbuiltin command.  An  interactive  shell  does  not
+                      not execute the file specified as  an  argument  to  the
+                      e\bex\bxe\bec\b builtin  command.   An  interactive shell does not
                       exit if e\bex\bxe\bec\bc fails.
 
               e\bex\bxp\bpa\ban\bnd\bd_\b_a\bal\bli\bia\bas\bse\bes\bs
-                      If  set,  aliases  are expanded as described above under
+                      If set, aliases are expanded as  described  above  under
                       A\bAL\bLI\bIA\bAS\bSE\bES\bS.  This option is enabled by default for interac-
                       tive shells.
 
               e\bex\bxt\btd\bde\beb\bbu\bug\bg
-                      If set at shell invocation, or in a shell startup  file,
+                      If  set at shell invocation, or in a shell startup file,
                       arrange to execute the debugger profile before the shell
-                      starts,  identical to the -\b--\b-d\bde\beb\bbu\bug\bgg\bge\ber\br option.  If set af-
-                      ter invocation, behavior intended for use  by  debuggers
+                      starts, identical to the -\b--\b-d\bde\beb\bbu\bug\bgg\bge\ber\br option.  If set  af-
+                      ter  invocation,  behavior intended for use by debuggers
                       is enabled:
 
                       1\b1.\b.     The -\b-F\bF option to the d\bde\bec\bcl\bla\bar\bre\be builtin displays the
                              source file name and line number corresponding to
                              each function name supplied as an argument.
 
-                      2\b2.\b.     If  the  command  run by the D\bDE\bEB\bBU\bUG\bG trap returns a
-                             non-zero value, the next command is  skipped  and
+                      2\b2.\b.     If the command run by the D\bDE\bEB\bBU\bUG\bG  trap  returns  a
+                             non-zero  value,  the next command is skipped and
                              not executed.
 
-                      3\b3.\b.     If  the  command  run by the D\bDE\bEB\bBU\bUG\bG trap returns a
-                             value of 2, and the shell is executing in a  sub-
-                             routine  (a shell function or a shell script exe-
-                             cuted by the .\b. or  s\bso\bou\bur\brc\bce\be  builtins),  the  shell
+                      3\b3.\b.     If the command run by the D\bDE\bEB\bBU\bUG\bG  trap  returns  a
+                             value  of 2, and the shell is executing in a sub-
+                             routine (a shell function or a shell script  exe-
+                             cuted  by  the  .\b.  or s\bso\bou\bur\brc\bce\be builtins), the shell
                              simulates a call to r\bre\bet\btu\bur\brn\bn.
 
-                      4\b4.\b.     B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\b and B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV are updated as described
+                      4\b4.\b.     B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\band B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV are updated as  described
                              in their descriptions above).
 
-                      5\b5.\b.     Function tracing is  enabled:  command  substitu-
+                      5\b5.\b.     Function  tracing  is  enabled: command substitu-
                              tion, shell functions, and subshells invoked with
                              (\b( _\bc_\bo_\bm_\bm_\ba_\bn_\bd )\b) inherit the D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN traps.
 
-                      6\b6.\b.     Error  tracing  is enabled: command substitution,
-                             shell functions, and  subshells  invoked  with  (\b(
+                      6\b6.\b.     Error tracing is enabled:  command  substitution,
+                             shell  functions,  and  subshells  invoked with (\b(
                              _\bc_\bo_\bm_\bm_\ba_\bn_\bd )\b) inherit the E\bER\bRR\bR trap.
 
               e\bex\bxt\btg\bgl\blo\bob\bb If set, the extended pattern matching features described
                       above 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
+                      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\b shell
-                      variable  cause words to be ignored when performing word
+                      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
                       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 above  for  a  de-
-                      scription  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 above for a de-
+                      scription 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 above) behave
-                      as if in the traditional C locale when  performing  com-
-                      parisons.   That  is, the current locale's collating se-
-                      quence is not taken into account, so b\bb will not  collate
-                      between  A\bA  and  B\bB,  and upper-case and lower-case ASCII
+                      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 above)  behave
+                      as  if  in the traditional C locale when performing com-
+                      parisons.  That is, the current locale's  collating  se-
+                      quence  is not taken into account, so b\bb will not collate
+                      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
+                      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
@@ -6190,25 +6191,25 @@ S\bSH\bHE\bEL\bLL\bL 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\bE
+                      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
                       above).  This is enabled by default.
 
               h\bhu\bup\bpo\bon\bne\bex\bxi\bit\bt
@@ -6216,23 +6217,23 @@ S\bSH\bHE\bEL\bLL\bL 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
-                      in  an interactive shell (see C\bCO\bOM\bMM\bME\bEN\bNT\bTS\bS above).  This op-
+                      and  all remaining characters on that line to be ignored
+                      in an interactive shell (see C\bCO\bOM\bMM\bME\bEN\bNT\bTS\bS above).  This  op-
                       tion 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.
 
@@ -6243,43 +6244,43 @@ S\bSH\bHE\bEL\bLL\bL 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
-                      shell  (see  I\bIN\bNV\bVO\bOC\bCA\bAT\bTI\bIO\bON\bN  above).   The  value may not be
+                      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 above).   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
-                      displays the message "The  mail  in  _\bm_\ba_\bi_\bl_\bf_\bi_\bl_\be  has  been
+                      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  "The  mail  in _\bm_\ba_\bi_\bl_\bf_\bi_\bl_\be has been
                       read".
 
               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 above).
 
               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$"\b"..."\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
@@ -6289,8 +6290,8 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
 
               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
+                      string  of  pattern  substitution to the text matched by
+                      the pattern,  as  described  under  P\bPa\bar\bra\bam\bme\bet\bte\ber\b E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
                       above.  This option is enabled by default.
 
               p\bpr\bro\bog\bgc\bco\bom\bmp\bp
@@ -6299,71 +6300,71 @@ S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
                       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\bG
+                      mand  substitution,  arithmetic expansion, and quote re-
+                      moval after being expanded  as  described  in  P\bPR\bRO\bOM\bMP\bPT\bTI\bIN\bNG\bG
                       above.  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 below).  The value
-                      may not be changed.  This is not reset when the  startup
-                      files  are  executed, allowing the startup files to dis-
+                      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 below).   The  value
+                      may  not be changed.  This is not reset when the startup
+                      files are executed, allowing the startup files  to  dis-
                       cover 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
-                      argument when the -\b-p\bp option is not supplied.   This  op-
+                      find the directory containing the file  supplied  as  an
+                      argument  when  the -\b-p\bp option is not supplied.  This op-
                       tion 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
+                      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\bN above) 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\bf 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\b 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 above under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\b E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS.
-              t\bte\bes\bst\b does not accept any options, nor does it accept and ignore
+              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 above 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.
+              t\bte\bes\bst\bdoes 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.
@@ -6380,161 +6381,161 @@ S\bSH\bHE\bEL\bLL\bL 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
-                     above 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
+                     above  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
+                     If the second argument is one of the  binary  conditional
                      operators listed above 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
                      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-argument test using
+                     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-argument test  using
                      the second and third arguments.  If the first argument is
                      exactly (\b( and the third argument is exactly )\b), the result
-                     is the one-argument test of the second argument.   Other-
+                     is  the one-argument test of the second argument.  Other-
                      wise, 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 above).  Refer  to  the  de-
-              scription  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 above).  Refer to the de-
+              scription 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
-              "type -t name" would not return _\bf_\bi_\bl_\be.  The -\b-P\bP  option  forces  a
-              P\bPA\bAT\bTH\b search for each _\bn_\ba_\bm_\be, even if "type -t name" would not re-
-              turn _\bf_\bi_\bl_\be.  If a command is hashed, -\b-p\bp and -\b-P\bP print  the  hashed
-              value,  which  is not necessarily 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, re-
-              served words, functions, and builtins, but the path  search  op-
+              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
+              "type  -t  name"  would not return _\bf_\bi_\bl_\be.  The -\b-P\bP option forces a
+              P\bPA\bAT\bTH\bsearch for each _\bn_\ba_\bm_\be, even if "type -t name" would not  re-
+              turn  _\bf_\bi_\bl_\be.   If a command is hashed, -\b-p\bp and -\b-P\bP print the hashed
+              value, which is not necessarily 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,  re-
+              served  words,  functions, and builtins, but the path search op-
               tions (-\b-p\bp and -\b-P\bP) can be supplied to restrict the output to exe-
-              cutable  files.   t\bty\byp\bpe\be does not consult the table of hashed com-
+              cutable files.  t\bty\byp\bpe\be does not consult the table of  hashed  com-
               mands 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 returns true if all of the arguments
+              _\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 returns 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 ("nice").
-              -\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)
@@ -6543,134 +6544,134 @@ S\bSH\bHE\bEL\bLL\bL 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\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
+              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
               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\b 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\ba 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\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,
+              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,
               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\bM 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\b 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\bf 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\b 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\babove.  Otherwise, the return status is the exit  status
+              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 above.  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
@@ -6678,43 +6679,39 @@ 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
                      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
@@ -6932,4 +6929,4 @@ B\bBU\bUG\bGS\bS
 
        There may be only one active coprocess at a time.
 
-GNU Bash 5.3                     2024 June 12                          _\bB_\bA_\bS_\bH(1)
+GNU Bash 5.3                      2024 July 2                          _\bB_\bA_\bS_\bH(1)
index 07c0f4048bb34453ef0d9cce583d2012e89733cd..1f0a23d388effa884542e9b6f63d1f71e306d3f1 100644 (file)
@@ -5,14 +5,14 @@
 .\"    Case Western Reserve University
 .\"    chet.ramey@case.edu
 .\"
-.\"    Last Change: Mon Jul  1 09:46:16 EDT 2024
+.\"    Last Change: Tue Jul  2 14:28:46 EDT 2024
 .\"
 .\" bash_builtins, strip all but Built-Ins section
 .\" avoid a warning about an undefined register
 .\" .if !rzY .nr zY 0
 .if \n(zZ=1 .ig zZ
 .if \n(zY=1 .ig zY
-.TH BASH 1 "2024 July 1" "GNU Bash 5.3"
+.TH BASH 1 "2024 July 2" "GNU Bash 5.3"
 .\"
 .ie \n(.g \{\
 .ds ' \(aq
@@ -353,7 +353,7 @@ This may be inhibited by using the
 option.
 The \fB\-\-rcfile\fP \fIfile\fP option will cause
 .B bash
-to replace \fI\*~/.bashrc\fP with \fIfile\fP.
+to use \fIfile\fP instead of \fI\*~/.bashrc\fP.
 .PP
 When
 .B bash
@@ -448,8 +448,8 @@ The
 .B \-\-norc
 option may be used to inhibit this behavior, and the
 .B \-\-rcfile
-option will make \fBbash\fP replace \fI\*~/.bashrc\fP with a different file,
-but neither
+option will make \fBbash\fP use a different file instead of
+\fI\*~/.bashrc\fP, but neither
 \fIrshd\fP nor \fIsshd\fP generally invoke the shell with those options
 or allow them to be specified.
 .PP
@@ -12002,11 +12002,6 @@ are not special within double-quoted word expansions
 .PD 0
 .RS
 .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=\*'(1 2)\*'). Later versions warn that this usage is
-deprecated
-.IP \(bu
 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
index a6ee44f3d664c583cf51b5c55e826041d60b0dd9..8076e3f0e4182efa972f5aff5d383832f4801df9 100644 (file)
@@ -3,7 +3,7 @@
 </HEAD>
 <BODY><TABLE WIDTH=100%>
 <TR>
-<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2024 April 23<TH ALIGN=RIGHT width=33%>BASH(1)
+<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2024 July 2<TH ALIGN=RIGHT width=33%>BASH(1)
 </TR>
 </TABLE>
 <BR><A HREF="#index">Index</A>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 
 
 
@@ -465,10 +440,10 @@ This may be inhibited by using the
 <B>--norc</B>
 
 option.
-The <B>--rcfile</B> <I>file</I> option will force
+The <B>--rcfile</B> <I>file</I> option will cause
 <B>bash</B>
 
-to read and execute commands from <I>file</I> instead of <A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>.
+to use <I>file</I> instead of <A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>.
 <P>
 
 When
@@ -601,7 +576,8 @@ The
 option may be used to inhibit this behavior, and the
 <B>--rcfile</B>
 
-option may be used to force another file to be read, but neither
+option will make <B>bash</B> use a different file instead of
+<A HREF="file:~/.bashrc"><I>~/.bashrc</I></A>, but neither
 <I>rshd</I> nor <I>sshd</I> generally invoke the shell with those options
 or allow them to be specified.
 <P>
@@ -978,8 +954,7 @@ The words between the <B>[[</B> and <B>]]</B> do not undergo word splitting
 and pathname expansion.
 The shell performs tilde expansion, parameter and
 variable expansion, arithmetic expansion, command substitution, process
-substitution, and quote removal on those words
-(the expansions that would occur if the words were enclosed in double quotes).
+substitution, and quote removal on those words.
 Conditional operators such as <B>-f</B> must be unquoted to be recognized
 as primaries.
 <DT><DD>
@@ -2936,17 +2911,21 @@ it is removed from the list of matches.
 <DT><B>GLOBSORT</B>
 
 <DD>
+
 Control how the results of pathname expansion are sorted.
 The value of this variable specifies the sort criteria and sort order for
 the results of pathname expansion.
 If this variable is unset or set to the null string, pathname expansion
 uses the historical behavior of sorting by name.
+<DT><DD>
 If set, a valid value begins with an optional <I>+</I>, which is ignored,
 or <I>-</I>, which reverses the sort order from ascending to descending,
 followed by a sort specifier.
 The valid sort specifiers are
 <I>name</I>,
 
+<I>numeric</I>,
+
 <I>size</I>,
 
 <I>mtime</I>,
@@ -2958,16 +2937,28 @@ The valid sort specifiers are
 and
 <I>blocks</I>,
 
-which sort the files on name, file size, modification time, access time,
+which sort the files on name, names in numeric rather than lexicographic order,
+file size, modification time, access time,
 inode change time, and number of blocks, respectively.
+If any of the non-name keys compare as equal (e.g., if two files are
+the same size), sorting uses the name as a secondary sort key.
 For example, a value of <I>-mtime</I> sorts the results in descending
 order by modification time (newest first).
+<DT><DD>
+The <I>numeric</I> specifier treats names consisting solely of digits as
+numbers and sorts them using the numeric value (so &quot;2&quot; will sort before
+&quot;10&quot;, for example).
+When using <I>numeric</I>, names containing non-digits sort after all
+the all-digit names and are sorted by name using the traditional behavior.
+<DT><DD>
 A sort specifier of <I>nosort</I> disables sorting completely; the results
-are returned in the order they are read from the file system,.
+are returned in the order they are read from the file system,
+and any leading <I>+</I> or <I>-</I> is ignored.
 If the sort specifier is missing, it defaults to <I>name</I>,
 so a value of <I>+</I> is equivalent to the null string,
 and a value of <I>-</I> sorts by name in descending order.
 Any invalid value restores the historical sorting behavior.
+
 <DT><B>HISTCONTROL</B>
 
 <DD>
@@ -8552,10 +8543,12 @@ The text between the point and mark is referred to as the <I>region</I>.
 
 <DD>
 Move to the start of the current line.
+This may also be bound to the Home key on some keyboards.
 <DT><B>end-of-line (C-e)</B>
 
 <DD>
 Move to the end of the line.
+This may also be bound to the End key on some keyboards.
 <DT><B>forward-char (C-f)</B>
 
 <DD>
@@ -8690,18 +8683,20 @@ using a non-incremental search for a string supplied by the user.
 <DD>
 Search forward through the history using a non-incremental search for
 a string supplied by the user.
-<DT><B>history-search-forward</B>
+<DT><B>history-search-backward</B>
 
 <DD>
-Search forward through the history for the string of characters
+Search backward through the history for the string of characters
 between the start of the current line and the point.
 This is a non-incremental search.
-<DT><B>history-search-backward</B>
+This may be bound to the Page Up key on some keyboards.
+<DT><B>history-search-forward</B>
 
 <DD>
-Search backward through the history for the string of characters
+Search forward through the history for the string of characters
 between the start of the current line and the point.
 This is a non-incremental search.
+This may be bound to the Page Down key on some keyboards.
 <DT><B>history-substring-search-backward</B>
 
 <DD>
@@ -8896,15 +8891,18 @@ capitalize the previous word, but do not move point.
 <DT><B>overwrite-mode</B>
 
 <DD>
-Toggle overwrite mode.  With an explicit positive numeric argument,
-switches to overwrite mode.  With an explicit non-positive numeric
-argument, switches to insert mode.  This command affects only
-<B>emacs</B> mode; <B>vi</B> mode does overwrite differently.
+Toggle overwrite mode.
+With an explicit positive numeric argument, switches to overwrite mode.
+With an explicit non-positive numeric argument, switches to insert mode.
+This command affects only <B>emacs</B> mode;
+<B>vi</B> mode does overwrite differently.
 Each call to <I>readline()</I> starts in insert mode.
 In overwrite mode, characters bound to <B>self-insert</B> replace
 the text at point rather than pushing the text to the right.
 Characters bound to <B>backward-delete-char</B> replace the character
-before point with a space.  By default, this command is unbound.
+before point with a space.
+By default, this command is unbound,
+but may be bound to the Insert key on some keyboards.
 
 </DL>
 <A NAME="lbCQ">&nbsp;</A>
@@ -10203,53 +10201,47 @@ No effect; the command does nothing beyond expanding
 and performing any specified
 redirections.
 The return status is zero.
-<DT><B>. </B> <I>filename</I> [<I>arguments</I>]<DD>
+<DT><B>. </B> [<B>-p</B> <I>path</I>] <I>filename</I> [<I>arguments</I>]<DD>
 
-<DT><B>source</B> <I>filename</I> [<I>arguments</I>]<DD>
+<DT><B>source</B> [<B>-p</B> <I>path</I>] <I>filename</I> [<I>arguments</I>]<DD>
 
-Read and execute commands from
+The <B>. </B> command (<B>source</B>) reads and execute commands from
 <I>filename</I>
 
-in the current
-shell environment and return the exit status of the last command
-executed from
+in the current shell environment and returns the exit status of the
+last command executed from
 <I>filename</I>.
 
-If
-<I>filename</I>
-
-does not contain a slash, filenames in
+If <I>filename</I> does not contain a slash, <B>. </B> searchs for it.
+If the <B>-p</B> option is supplied, <B>. </B> treats <I>path</I>
+as a colon-separated list of directories in which to find <I>filename</I>;
+otherwise, <B>. </B> uses the entries in
 <FONT SIZE=-1><B>PATH</B>
 
 </FONT>
-are used to find the directory containing
-<I>filename</I>,
-
-but <I>filename</I> does not need to be executable.
-The file searched for in
-<FONT SIZE=-1><B>PATH</B>
+to find the directory containing
+<I>filename</I>.
 
-</FONT>
-need not be executable.
+<I>filename</I> does not need to be executable.
 When <B>bash</B> is not in <I>posix mode</I>, it searches
 the current directory if no file is found in
-<FONT SIZE=-1><B>PATH</B>.
+<FONT SIZE=-1><B>PATH</B>,
 
 </FONT>
+but does not search the current directory if <B>-p</B> is supplied.
 If the
 <B>sourcepath</B>
 
 option to the
 <B>shopt</B>
 
-builtin command is turned off, the
-<FONT SIZE=-1><B>PATH</B>
+builtin command is turned off, <B>. </B> does not search
+<FONT SIZE=-1><B>PATH</B>.
 
 </FONT>
-is not searched.
 If any <I>arguments</I> are supplied, they become the positional
-parameters when <I>filename</I> is executed.  Otherwise the positional
-parameters are unchanged.
+parameters when <I>filename</I> is executed.
+Otherwise the positional parameters are unchanged.
 If the <B>-T</B> option is enabled, <B>.</B> inherits any trap on
 <B>DEBUG</B>; if it is not, any <B>DEBUG</B> trap string is saved and
 restored around the call to <B>.</B>, and <B>.</B> unsets the
@@ -12498,8 +12490,8 @@ any supplied field width and precision in terms of characters, not bytes.
 
 Arguments to non-string format specifiers are treated as C constants,
 except that a leading plus or minus sign is allowed, and if the leading
-character is a single or double quote, the value is the ASCII value of
-the following character.
+character is a single or double quote, the value is the numeric value of
+the following character, using the current locale.
 <P>
 
 The <I>format</I> is reused as necessary to consume all of the <I>arguments</I>.
@@ -14083,7 +14075,8 @@ If set, the
 <FONT SIZE=-1><B>PATH</B>
 
 </FONT>
-to find the directory containing the file supplied as an argument.
+to find the directory containing the file supplied as an argument when
+the <B>-p</B> option is not supplied.
 This option is enabled by default.
 <DT><B>varredir_close</B>
 
@@ -15051,11 +15044,6 @@ are not special within double-quoted word expansions
 <DL COMPACT><DT><DD>
 <DL COMPACT>
 <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='(1 2)'). Later versions warn that this usage is
-deprecated
-<DT>*<DD>
 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
@@ -15496,7 +15484,7 @@ There may be only one active coprocess at a time.
 <HR>
 <TABLE WIDTH=100%>
 <TR>
-<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2024 April 23<TH ALIGN=RIGHT width=33%>BASH(1)
+<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2024 July 2<TH ALIGN=RIGHT width=33%>BASH(1)
 </TR>
 </TABLE>
 <HR>
@@ -15602,7 +15590,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-20240422/doc/bash.1.<BR>
-Time: 23 April 2024 17:29:53 EDT
+This document was created by man2html from /usr/local/src/bash/bash-20240701/doc/bash.1.<BR>
+Time: 03 July 2024 10:54:15 EDT
 </BODY>
 </HTML>
index 14b721d6de7006f97dee4ce57a348f8c92580ae3..a716bffa1c5d84374d54d7ce116a686df77269c8 100644 (file)
@@ -1,9 +1,9 @@
 This is bash.info, produced by makeinfo version 7.1 from bashref.texi.
 
 This text is a brief description of the features that are present in the
-Bash shell (version 5.3, 12 June 2024).
+Bash shell (version 5.3, 2 July 2024).
 
-   This is Edition 5.3, last updated 12 June 2024, of â€˜The GNU Bash
+   This is Edition 5.3, last updated 2 July 2024, of â€˜The GNU Bash
 Reference Manual’, for â€˜Bash’, Version 5.3.
 
    Copyright Â© 1988-2023 Free Software Foundation, Inc.
@@ -26,10 +26,10 @@ Bash Features
 *************
 
 This text is a brief description of the features that are present in the
-Bash shell (version 5.3, 12 June 2024).  The Bash home page is
+Bash shell (version 5.3, 2 July 2024).  The Bash home page is
 <http://www.gnu.org/software/bash/>.
 
-   This is Edition 5.3, last updated 12 June 2024, of â€˜The GNU Bash
+   This is Edition 5.3, last updated 2 July 2024, of â€˜The GNU Bash
 Reference Manual’, for â€˜Bash’, Version 5.3.
 
    Bash contains features that appear in other popular shells, and some
@@ -4274,7 +4274,8 @@ standard.
      Arguments to non-string format specifiers are treated as C language
      constants, except that a leading plus or minus sign is allowed, and
      if the leading character is a single or double quote, the value is
-     the ASCII value of the following character.
+     the numeric value of the following character, using the current
+     locale.
 
      The FORMAT is reused as necessary to consume all of the ARGUMENTS.
      If the FORMAT requires more ARGUMENTS than are supplied, the extra
@@ -6341,8 +6342,7 @@ Invoked as an interactive non-login shell
 When an interactive shell that is not a login shell is started, Bash
 reads and executes commands from â€˜~/.bashrc’, if that file exists.  This
 may be inhibited by using the â€˜--norc’ option.  The â€˜--rcfile FILE’
-option will force Bash to read and execute commands from FILE instead of
-‘~/.bashrc’.
+option will cause Bash to use FILE instead of â€˜~/.bashrc’.
 
    So, typically, your â€˜~/.bash_profile’ contains the line
      if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
@@ -6404,10 +6404,10 @@ remote shell daemon, usually â€˜rshd’, or the secure shell daemon â€˜sshd’.
 If Bash determines it is being run non-interactively in this fashion, it
 reads and executes commands from â€˜~/.bashrc’, if that file exists and is
 readable.  It will not do this if invoked as â€˜sh’.  The â€˜--norc’ option
-may be used to inhibit this behavior, and the â€˜--rcfile’ option may be
-used to force another file to be read, but neither â€˜rshd’ nor â€˜sshd’
-generally invoke the shell with those options or allow them to be
-specified.
+may be used to inhibit this behavior, and the â€˜--rcfile’ option will
+make Bash use a different file instead of â€˜~/.bashrc’, but neither
+‘rshd’ nor â€˜sshd’ generally invoke the shell with those options or allow
+them to be specified.
 
 Invoked with unequal effective and real UID/GIDs
 ................................................
@@ -7722,10 +7722,6 @@ required for bash-5.1 and later versions.
           double-quoted word expansions
 
 â€˜compat43’
-        â€¢ 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='(1 2)').  Later versions warn
-          that this usage is deprecated
         â€¢ 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
@@ -12294,8 +12290,8 @@ D.1 Index of Shell Builtin Commands
                                                               (line  69)
 * pwd:                                   Bourne Shell Builtins.
                                                               (line 226)
-* read:                                  Bash Builtins.       (line 523)
-* readarray:                             Bash Builtins.       (line 629)
+* read:                                  Bash Builtins.       (line 524)
+* readarray:                             Bash Builtins.       (line 630)
 * readonly:                              Bourne Shell Builtins.
                                                               (line 236)
 * return:                                Bourne Shell Builtins.
@@ -12304,7 +12300,7 @@ D.1 Index of Shell Builtin Commands
 * shift:                                 Bourne Shell Builtins.
                                                               (line 276)
 * shopt:                                 The Shopt Builtin.   (line   9)
-* source:                                Bash Builtins.       (line 638)
+* source:                                Bash Builtins.       (line 639)
 * suspend:                               Job Control Builtins.
                                                               (line 116)
 * test:                                  Bourne Shell Builtins.
@@ -12315,12 +12311,12 @@ D.1 Index of Shell Builtin Commands
                                                               (line 397)
 * true:                                  Bourne Shell Builtins.
                                                               (line 459)
-* type:                                  Bash Builtins.       (line 643)
-* typeset:                               Bash Builtins.       (line 681)
-* ulimit:                                Bash Builtins.       (line 687)
+* type:                                  Bash Builtins.       (line 644)
+* typeset:                               Bash Builtins.       (line 682)
+* ulimit:                                Bash Builtins.       (line 688)
 * umask:                                 Bourne Shell Builtins.
                                                               (line 464)
-* unalias:                               Bash Builtins.       (line 793)
+* unalias:                               Bash Builtins.       (line 794)
 * unset:                                 Bourne Shell Builtins.
                                                               (line 482)
 * wait:                                  Job Control Builtins.
@@ -12998,138 +12994,138 @@ D.5 Concept Index
 
 \1f
 Tag Table:
-Node: Top\7f893
-Node: Introduction\7f2826
-Node: What is Bash?\7f3039
-Node: What is a shell?\7f4180
-Node: Definitions\7f6759
-Node: Basic Shell Features\7f9935
-Node: Shell Syntax\7f11155
-Node: Shell Operation\7f12182
-Node: Quoting\7f13480
-Node: Escape Character\7f14793
-Node: Single Quotes\7f15291
-Node: Double Quotes\7f15640
-Node: ANSI-C Quoting\7f16983
-Node: Locale Translation\7f18368
-Node: Creating Internationalized Scripts\7f19712
-Node: Comments\7f23910
-Node: Shell Commands\7f24545
-Node: Reserved Words\7f25484
-Node: Simple Commands\7f26349
-Node: Pipelines\7f27008
-Node: Lists\7f30071
-Node: Compound Commands\7f31943
-Node: Looping Constructs\7f32952
-Node: Conditional Constructs\7f35496
-Node: Command Grouping\7f50317
-Node: Coprocesses\7f51804
-Node: GNU Parallel\7f54500
-Node: Shell Functions\7f55418
-Node: Shell Parameters\7f63524
-Node: Positional Parameters\7f68057
-Node: Special Parameters\7f68992
-Node: Shell Expansions\7f72298
-Node: Brace Expansion\7f74487
-Node: Tilde Expansion\7f77150
-Node: Shell Parameter Expansion\7f79916
-Node: Command Substitution\7f99023
-Node: Arithmetic Expansion\7f102556
-Node: Process Substitution\7f103521
-Node: Word Splitting\7f104658
-Node: Filename Expansion\7f106799
-Node: Pattern Matching\7f109895
-Node: Quote Removal\7f115128
-Node: Redirections\7f115432
-Node: Executing Commands\7f125241
-Node: Simple Command Expansion\7f125908
-Node: Command Search and Execution\7f128019
-Node: Command Execution Environment\7f130427
-Node: Environment\7f133736
-Node: Exit Status\7f135440
-Node: Signals\7f137225
-Node: Shell Scripts\7f140839
-Node: Shell Builtin Commands\7f143931
-Node: Bourne Shell Builtins\7f146042
-Node: Bash Builtins\7f170812
-Node: Modifying Shell Behavior\7f205793
-Node: The Set Builtin\7f206135
-Node: The Shopt Builtin\7f217650
-Node: Special Builtins\7f234437
-Node: Shell Variables\7f235426
-Node: Bourne Shell Variables\7f235860
-Node: Bash Variables\7f238053
-Node: Bash Features\7f275218
-Node: Invoking Bash\7f276232
-Node: Bash Startup Files\7f282631
-Node: Interactive Shells\7f287943
-Node: What is an Interactive Shell?\7f288351
-Node: Is this Shell Interactive?\7f289017
-Node: Interactive Shell Behavior\7f289841
-Node: Bash Conditional Expressions\7f293595
-Node: Shell Arithmetic\7f298769
-Node: Aliases\7f301851
-Node: Arrays\7f304806
-Node: The Directory Stack\7f311605
-Node: Directory Stack Builtins\7f312402
-Node: Controlling the Prompt\7f316851
-Node: The Restricted Shell\7f319989
-Node: Bash POSIX Mode\7f322776
-Node: Shell Compatibility Mode\7f340287
-Node: Job Control\7f349306
-Node: Job Control Basics\7f349763
-Node: Job Control Builtins\7f354937
-Node: Job Control Variables\7f360897
-Node: Command Line Editing\7f362074
-Node: Introduction and Notation\7f363778
-Node: Readline Interaction\7f365422
-Node: Readline Bare Essentials\7f366610
-Node: Readline Movement Commands\7f368428
-Node: Readline Killing Commands\7f369425
-Node: Readline Arguments\7f371403
-Node: Searching\7f372460
-Node: Readline Init File\7f374689
-Node: Readline Init File Syntax\7f375971
-Node: Conditional Init Constructs\7f400909
-Node: Sample Init File\7f405274
-Node: Bindable Readline Commands\7f408395
-Node: Commands For Moving\7f409620
-Node: Commands For History\7f411847
-Node: Commands For Text\7f417052
-Node: Commands For Killing\7f421186
-Node: Numeric Arguments\7f423987
-Node: Commands For Completion\7f425139
-Node: Keyboard Macros\7f429455
-Node: Miscellaneous Commands\7f430156
-Node: Readline vi Mode\7f436810
-Node: Programmable Completion\7f437762
-Node: Programmable Completion Builtins\7f445719
-Node: A Programmable Completion Example\7f457285
-Node: Using History Interactively\7f462630
-Node: Bash History Facilities\7f463311
-Node: Bash History Builtins\7f466423
-Node: History Interaction\7f471666
-Node: Event Designators\7f475991
-Node: Word Designators\7f477574
-Node: Modifiers\7f479560
-Node: Installing Bash\7f481469
-Node: Basic Installation\7f482603
-Node: Compilers and Options\7f486482
-Node: Compiling For Multiple Architectures\7f487232
-Node: Installation Names\7f488981
-Node: Specifying the System Type\7f491215
-Node: Sharing Defaults\7f491961
-Node: Operation Controls\7f492675
-Node: Optional Features\7f493694
-Node: Reporting Bugs\7f505496
-Node: Major Differences From The Bourne Shell\7f506845
-Node: GNU Free Documentation License\7f526580
-Node: Indexes\7f551757
-Node: Builtin Index\7f552208
-Node: Reserved Word Index\7f559306
-Node: Variable Index\7f561751
-Node: Function Index\7f578882
-Node: Concept Index\7f592738
+Node: Top\7f891
+Node: Introduction\7f2822
+Node: What is Bash?\7f3035
+Node: What is a shell?\7f4176
+Node: Definitions\7f6755
+Node: Basic Shell Features\7f9931
+Node: Shell Syntax\7f11151
+Node: Shell Operation\7f12178
+Node: Quoting\7f13476
+Node: Escape Character\7f14789
+Node: Single Quotes\7f15287
+Node: Double Quotes\7f15636
+Node: ANSI-C Quoting\7f16979
+Node: Locale Translation\7f18364
+Node: Creating Internationalized Scripts\7f19708
+Node: Comments\7f23906
+Node: Shell Commands\7f24541
+Node: Reserved Words\7f25480
+Node: Simple Commands\7f26345
+Node: Pipelines\7f27004
+Node: Lists\7f30067
+Node: Compound Commands\7f31939
+Node: Looping Constructs\7f32948
+Node: Conditional Constructs\7f35492
+Node: Command Grouping\7f50313
+Node: Coprocesses\7f51800
+Node: GNU Parallel\7f54496
+Node: Shell Functions\7f55414
+Node: Shell Parameters\7f63520
+Node: Positional Parameters\7f68053
+Node: Special Parameters\7f68988
+Node: Shell Expansions\7f72294
+Node: Brace Expansion\7f74483
+Node: Tilde Expansion\7f77146
+Node: Shell Parameter Expansion\7f79912
+Node: Command Substitution\7f99019
+Node: Arithmetic Expansion\7f102552
+Node: Process Substitution\7f103517
+Node: Word Splitting\7f104654
+Node: Filename Expansion\7f106795
+Node: Pattern Matching\7f109891
+Node: Quote Removal\7f115124
+Node: Redirections\7f115428
+Node: Executing Commands\7f125237
+Node: Simple Command Expansion\7f125904
+Node: Command Search and Execution\7f128015
+Node: Command Execution Environment\7f130423
+Node: Environment\7f133732
+Node: Exit Status\7f135436
+Node: Signals\7f137221
+Node: Shell Scripts\7f140835
+Node: Shell Builtin Commands\7f143927
+Node: Bourne Shell Builtins\7f146038
+Node: Bash Builtins\7f170808
+Node: Modifying Shell Behavior\7f205822
+Node: The Set Builtin\7f206164
+Node: The Shopt Builtin\7f217679
+Node: Special Builtins\7f234466
+Node: Shell Variables\7f235455
+Node: Bourne Shell Variables\7f235889
+Node: Bash Variables\7f238082
+Node: Bash Features\7f275247
+Node: Invoking Bash\7f276261
+Node: Bash Startup Files\7f282660
+Node: Interactive Shells\7f287963
+Node: What is an Interactive Shell?\7f288371
+Node: Is this Shell Interactive?\7f289037
+Node: Interactive Shell Behavior\7f289861
+Node: Bash Conditional Expressions\7f293615
+Node: Shell Arithmetic\7f298789
+Node: Aliases\7f301871
+Node: Arrays\7f304826
+Node: The Directory Stack\7f311625
+Node: Directory Stack Builtins\7f312422
+Node: Controlling the Prompt\7f316871
+Node: The Restricted Shell\7f320009
+Node: Bash POSIX Mode\7f322796
+Node: Shell Compatibility Mode\7f340307
+Node: Job Control\7f349074
+Node: Job Control Basics\7f349531
+Node: Job Control Builtins\7f354705
+Node: Job Control Variables\7f360665
+Node: Command Line Editing\7f361842
+Node: Introduction and Notation\7f363546
+Node: Readline Interaction\7f365190
+Node: Readline Bare Essentials\7f366378
+Node: Readline Movement Commands\7f368196
+Node: Readline Killing Commands\7f369193
+Node: Readline Arguments\7f371171
+Node: Searching\7f372228
+Node: Readline Init File\7f374457
+Node: Readline Init File Syntax\7f375739
+Node: Conditional Init Constructs\7f400677
+Node: Sample Init File\7f405042
+Node: Bindable Readline Commands\7f408163
+Node: Commands For Moving\7f409388
+Node: Commands For History\7f411615
+Node: Commands For Text\7f416820
+Node: Commands For Killing\7f420954
+Node: Numeric Arguments\7f423755
+Node: Commands For Completion\7f424907
+Node: Keyboard Macros\7f429223
+Node: Miscellaneous Commands\7f429924
+Node: Readline vi Mode\7f436578
+Node: Programmable Completion\7f437530
+Node: Programmable Completion Builtins\7f445487
+Node: A Programmable Completion Example\7f457053
+Node: Using History Interactively\7f462398
+Node: Bash History Facilities\7f463079
+Node: Bash History Builtins\7f466191
+Node: History Interaction\7f471434
+Node: Event Designators\7f475759
+Node: Word Designators\7f477342
+Node: Modifiers\7f479328
+Node: Installing Bash\7f481237
+Node: Basic Installation\7f482371
+Node: Compilers and Options\7f486250
+Node: Compiling For Multiple Architectures\7f487000
+Node: Installation Names\7f488749
+Node: Specifying the System Type\7f490983
+Node: Sharing Defaults\7f491729
+Node: Operation Controls\7f492443
+Node: Optional Features\7f493462
+Node: Reporting Bugs\7f505264
+Node: Major Differences From The Bourne Shell\7f506613
+Node: GNU Free Documentation License\7f526348
+Node: Indexes\7f551525
+Node: Builtin Index\7f551976
+Node: Reserved Word Index\7f559074
+Node: Variable Index\7f561519
+Node: Function Index\7f578650
+Node: Concept Index\7f592506
 \1f
 End Tag Table
 
index 4848eb464c52fd9391c2139bfcb36f9438e37e4f..b9dba237fff32e3784f4f13e71f76a239db70538 100644 (file)
Binary files a/doc/bash.pdf and b/doc/bash.pdf differ
index 3a8aee60decb9fefb7fae6b4c563811441dc0c44..13877bc533fdfe706856a8e85ab8f2b432706df2 100644 (file)
 @xrdef{Interactive Shells-snt}{Section@tie 6.3}
 @xrdef{What is an Interactive Shell?-title}{What is an Interactive Shell?}
 @xrdef{What is an Interactive Shell?-snt}{Section@tie 6.3.1}
-@xrdef{Interactive Shells-pg}{97}
 @xrdef{Is this Shell Interactive?-title}{Is this Shell Interactive?}
 @xrdef{Is this Shell Interactive?-snt}{Section@tie 6.3.2}
 @xrdef{Interactive Shell Behavior-title}{Interactive Shell Behavior}
 @xrdef{Interactive Shell Behavior-snt}{Section@tie 6.3.3}
+@xrdef{Interactive Shells-pg}{98}
 @xrdef{What is an Interactive Shell?-pg}{98}
 @xrdef{Is this Shell Interactive?-pg}{98}
 @xrdef{Interactive Shell Behavior-pg}{98}
index 8fc1e8515d0b64275a6719f45692bf8b8ce470f9..1eeb53cc1de83c4c422cb5082b1864c2ed9ed9fb 100644 (file)
@@ -78,8 +78,8 @@
 \entry{login shell}{96}{login shell}
 \entry{interactive shell}{96}{interactive shell}
 \entry{startup files}{96}{startup files}
-\entry{interactive shell}{97}{interactive shell}
-\entry{shell, interactive}{97}{shell, interactive}
+\entry{interactive shell}{98}{interactive shell}
+\entry{shell, interactive}{98}{shell, interactive}
 \entry{expressions, conditional}{99}{expressions, conditional}
 \entry{arithmetic, shell}{101}{arithmetic, shell}
 \entry{shell arithmetic}{101}{shell arithmetic}
index 5a4099c815e047b3fa940a943480c310b276e474..2fc1931000665288578b6908d42155df29a74288 100644 (file)
@@ -73,7 +73,7 @@
 \entry{initialization file, readline}{125}
 \entry{installation}{165}
 \entry{interaction, readline}{122}
-\entry{interactive shell}{96, 97}
+\entry{interactive shell}{96, 98}
 \entry{internationalization}{7}
 \entry{internationalized scripts}{7}
 \initial {J}
 \entry{shell function}{19}
 \entry{shell script}{47}
 \entry{shell variable}{21}
-\entry{shell, interactive}{97}
+\entry{shell, interactive}{98}
 \entry{signal}{4}
 \entry{signal handling}{46}
 \entry{special builtin}{4, 80}
index 214b51e8993b4f6a8ca1e1a4b3df9fce67a01a7f..242e27b3eed291cc09ef485b75594126ff52e5c7 100644 (file)
@@ -4,9 +4,9 @@
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <!-- This text is a brief description of the features that are present in
-the Bash shell (version 5.3, 23 April 2024).
+the Bash shell (version 5.3, 2 July 2024).
 
-This is Edition 5.3, last updated 23 April 2024,
+This is Edition 5.3, last updated 2 July 2024,
 of The GNU Bash Reference Manual,
 for Bash, Version 5.3.
 
@@ -77,10 +77,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
 <h1 class="top" id="Bash-Features-1"><span>Bash Features<a class="copiable-link" href="#Bash-Features-1"> &para;</a></span></h1>
 
 <p>This text is a brief description of the features that are present in
-the Bash shell (version 5.3, 23 April 2024).
+the Bash shell (version 5.3, 2 July 2024).
 The Bash home page is <a class="url" href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
 </p>
-<p>This is Edition 5.3, last updated 23 April 2024,
+<p>This is Edition 5.3, last updated 2 July 2024,
 of <cite class="cite">The GNU Bash Reference Manual</cite>,
 for <code class="code">Bash</code>, Version 5.3.
 </p>
@@ -1482,8 +1482,7 @@ The words between the <code class="code">[[</code> and <code class="code">]]</co
 and filename expansion.
 The shell performs tilde expansion, parameter and
 variable expansion, arithmetic expansion, command substitution, process
-substitution, and quote removal on those words
-(the expansions that would occur if the words were enclosed in double quotes).
+substitution, and quote removal on those words.
 Conditional operators such as &lsquo;<samp class="samp">-f</samp>&rsquo; must be unquoted to be recognized
 as primaries.
 </p>
@@ -4375,18 +4374,24 @@ The return status is zero.
 </dd>
 <dt><a id="index-_002e"></a><span><code class="code">.    <span class="r">(a period)</span></code><a class="copiable-link" href="#index-_002e"> &para;</a></span></dt>
 <dd><div class="example">
-<pre class="example-preformatted">. <var class="var">filename</var> [<var class="var">arguments</var>]
+<pre class="example-preformatted">. [-p <var class="var">path</var>] <var class="var">filename</var> [<var class="var">arguments</var>]
 </pre></div>
 
 <p>Read and execute commands from the <var class="var">filename</var> argument in the
-current shell context.  If <var class="var">filename</var> does not contain a slash,
-the <code class="env">PATH</code> variable is used to find <var class="var">filename</var>,
-but <var class="var">filename</var> does not need to be executable.
+current shell context.
+If <var class="var">filename</var> does not contain a slash, <code class="code">.</code> searches for it.
+If <samp class="option">-p</samp> is supplied, <code class="code">.</code> treats <var class="var">path</var>
+as a colon-separated list of directories in which to find <var class="var">filename</var>;
+otherwise, <code class="code">.</code> uses the directories in <code class="env">PATH</code> to find <var class="var">filename</var>.
+<var class="var">filename</var> does not need to be executable.
 When Bash is not in <small class="sc">POSIX</small> mode, it searches the current directory
-if <var class="var">filename</var> is not found in <code class="env">$PATH</code>.
+if <var class="var">filename</var> is not found in <code class="env">$PATH</code>,
+but does not search the current directory if <samp class="option">-p</samp> is supplied.
+If the <code class="code">sourcepath</code> option (see <a class="pxref" href="#The-Shopt-Builtin">The Shopt Builtin</a>) is turned off
+<code class="code">.</code> does not search <code class="env">PATH</code>.
 If any <var class="var">arguments</var> are supplied, they become the positional
-parameters when <var class="var">filename</var> is executed.  Otherwise the positional
-parameters are unchanged.
+parameters when <var class="var">filename</var> is executed.
+Otherwise the positional parameters are unchanged.
 If the <samp class="option">-T</samp> option is enabled, <code class="code">.</code> inherits any trap on
 <code class="code">DEBUG</code>; if it is not, any <code class="code">DEBUG</code> trap string is saved and
 restored around the call to <code class="code">.</code>, and <code class="code">.</code> unsets the
@@ -5655,8 +5660,8 @@ any supplied field width and precision in terms of characters, not bytes.
 
 <p>Arguments to non-string format specifiers are treated as C language constants,
 except that a leading plus or minus sign is allowed, and if the leading
-character is a single or double quote, the value is the ASCII value of
-the following character.
+character is a single or double quote, the value is the numeric value of
+the following character, using the current locale.
 </p>
 <p>The <var class="var">format</var> is reused as necessary to consume all of the <var class="var">arguments</var>.
 If the <var class="var">format</var> requires more <var class="var">arguments</var> than are supplied, the
@@ -5813,7 +5818,7 @@ if the <samp class="option">-u</samp> option is supplied.
 </dd>
 <dt><a id="index-source"></a><span><code class="code">source</code><a class="copiable-link" href="#index-source"> &para;</a></span></dt>
 <dd><div class="example">
-<pre class="example-preformatted">source <var class="var">filename</var>
+<pre class="example-preformatted">source [-p <var class="var">path</var>] <var class="var">filename</var> [<var class="var">arguments</var>]
 </pre></div>
 
 <p>A synonym for <code class="code">.</code> (see <a class="pxref" href="#Bourne-Shell-Builtins">Bourne Shell Builtins</a>).
@@ -6835,7 +6840,8 @@ number of positional parameters.
 </dd>
 <dt><code class="code">sourcepath</code></dt>
 <dd><p>If set, the <code class="code">.</code> (<code class="code">source</code>) builtin uses the value of <code class="env">PATH</code>
-to find the directory containing the file supplied as an argument.
+to find the directory containing the file supplied as an argument
+when the <samp class="option">-p</samp> option is not supplied.
 This option is enabled by default.
 </p>
 </dd>
@@ -7480,20 +7486,31 @@ or &lsquo;<samp class="samp">-</samp>&rsquo;, which reverses the sort order from
 followed by a sort specifier.
 The valid sort specifiers are
 &lsquo;<samp class="samp">name</samp>&rsquo;,
+&lsquo;<samp class="samp">numeric</samp>&rsquo;,
 &lsquo;<samp class="samp">size</samp>&rsquo;,
 &lsquo;<samp class="samp">mtime</samp>&rsquo;,
 &lsquo;<samp class="samp">atime</samp>&rsquo;,
 &lsquo;<samp class="samp">ctime</samp>&rsquo;,
 and
 &lsquo;<samp class="samp">blocks</samp>&rsquo;,
-which sort the files on name, file size, modification time, access time,
+which sort the files on name, names in numeric rather than lexicographic order,
+file size, modification time, access time,
 inode change time, and number of blocks, respectively.
+If any of the non-name keys compare as equal (e.g., if two files are
+the same size), sorting uses the name as a secondary sort key.
 </p>
 <p>For example, a value of <code class="code">-mtime</code> sorts the results in descending
 order by modification time (newest first).
 </p>
+<p>The &lsquo;<samp class="samp">numeric</samp>&rsquo; specifier treats names consisting solely of digits as
+numbers and sorts them using the numeric value (so &quot;2&quot; will sort before
+&quot;10&quot;, for example).
+When using &lsquo;<samp class="samp">numeric</samp>&rsquo;, names containing non-digits sort after all
+the all-digit names and are sorted by name using the traditional behavior.
+</p>
 <p>A sort specifier of &lsquo;<samp class="samp">nosort</samp>&rsquo; disables sorting completely; the results
-are returned in the order they are read from the file system,.
+are returned in the order they are read from the file system,
+and any leading &lsquo;<samp class="samp">-</samp>&rsquo; is ignored.
 </p>
 <p>If the sort specifier is missing, it defaults to <var class="var">name</var>,
 so a value of &lsquo;<samp class="samp">+</samp>&rsquo; is equivalent to the null string,
@@ -8243,8 +8260,9 @@ the file <samp class="file">~/.bash_logout</samp>, if it exists.
 <p>When an interactive shell that is not a login shell is started, Bash
 reads and executes commands from <samp class="file">~/.bashrc</samp>, if that file exists.
 This may be inhibited by using the <samp class="option">--norc</samp> option.
-The <samp class="option">--rcfile <var class="var">file</var></samp> option will force Bash to read and
-execute commands from <var class="var">file</var> instead of <samp class="file">~/.bashrc</samp>.
+The <samp class="option">--rcfile <var class="var">file</var></samp> option will
+cause Bash to
+use <var class="var">file</var> instead of <samp class="file">~/.bashrc</samp>.
 </p>
 <p>So, typically, your <samp class="file">~/.bash_profile</samp> contains the line
 </p><div class="example">
@@ -8314,8 +8332,10 @@ it reads and executes commands from <samp class="file">~/.bashrc</samp>, if that
 file exists and is readable.
 It will not do this if invoked as <code class="code">sh</code>.
 The <samp class="option">--norc</samp> option may be used to inhibit this behavior, and the
-<samp class="option">--rcfile</samp> option may be used to force another file to be read, but
-neither <code class="code">rshd</code> nor <code class="code">sshd</code> generally invoke the shell with those
+<samp class="option">--rcfile</samp> option
+will make Bash use a different file instead of
+<samp class="file">~/.bashrc</samp>, but neither
+<code class="code">rshd</code> nor <code class="code">sshd</code> generally invoke the shell with those
 options or allow them to be specified.
 </p>
 <h4 class="subsubheading" id="Invoked-with-unequal-effective-and-real-uid_002fgids"><span>Invoked with unequal effective and real <small class="sc">UID/GID</small>s<a class="copiable-link" href="#Invoked-with-unequal-effective-and-real-uid_002fgids"> &para;</a></span></h4>
@@ -9944,11 +9964,7 @@ are not special within double-quoted word expansions
 </dd>
 <dt><code class="code">compat43</code></dt>
 <dd><ul class="itemize mark-bullet">
-<li>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=&rsquo;(1 2)&rsquo;). Later versions warn that this usage is
-deprecated
-</li><li>word expansion errors are considered non-fatal errors that cause the
+<li>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)
@@ -11680,10 +11696,12 @@ Next: <a href="#Commands-For-History" accesskey="n" rel="next">Commands For Mani
 <dl class="ftable">
 <dt><a id="index-beginning_002dof_002dline-_0028C_002da_0029"></a><span><code class="code">beginning-of-line (C-a)</code><a class="copiable-link" href="#index-beginning_002dof_002dline-_0028C_002da_0029"> &para;</a></span></dt>
 <dd><p>Move to the start of the current line.
+This may also be bound to the Home key on some keyboards.
 </p>
 </dd>
 <dt><a id="index-end_002dof_002dline-_0028C_002de_0029"></a><span><code class="code">end-of-line (C-e)</code><a class="copiable-link" href="#index-end_002dof_002dline-_0028C_002de_0029"> &para;</a></span></dt>
 <dd><p>Move to the end of the line.
+This may also be bound to the End key on some keyboards.
 </p>
 </dd>
 <dt><a id="index-forward_002dchar-_0028C_002df_0029"></a><span><code class="code">forward-char (C-f)</code><a class="copiable-link" href="#index-forward_002dchar-_0028C_002df_0029"> &para;</a></span></dt>
@@ -11809,32 +11827,34 @@ for a string supplied by the user.
 The search string may match anywhere in a history line.
 </p>
 </dd>
-<dt><a id="index-history_002dsearch_002dforward-_0028_0029"></a><span><code class="code">history-search-forward ()</code><a class="copiable-link" href="#index-history_002dsearch_002dforward-_0028_0029"> &para;</a></span></dt>
-<dd><p>Search forward through the history for the string of characters
+<dt><a id="index-history_002dsearch_002dbackward-_0028_0029"></a><span><code class="code">history-search-backward ()</code><a class="copiable-link" href="#index-history_002dsearch_002dbackward-_0028_0029"> &para;</a></span></dt>
+<dd><p>Search backward through the history for the string of characters
 between the start of the current line and the point.
 The search string must match at the beginning of a history line.
 This is a non-incremental search.
-By default, this command is unbound.
+By default, this command is unbound, but may be bound to the Page Down
+key on some keyboards.
 </p>
 </dd>
-<dt><a id="index-history_002dsearch_002dbackward-_0028_0029"></a><span><code class="code">history-search-backward ()</code><a class="copiable-link" href="#index-history_002dsearch_002dbackward-_0028_0029"> &para;</a></span></dt>
-<dd><p>Search backward through the history for the string of characters
+<dt><a id="index-history_002dsearch_002dforward-_0028_0029"></a><span><code class="code">history-search-forward ()</code><a class="copiable-link" href="#index-history_002dsearch_002dforward-_0028_0029"> &para;</a></span></dt>
+<dd><p>Search forward through the history for the string of characters
 between the start of the current line and the point.
 The search string must match at the beginning of a history line.
 This is a non-incremental search.
-By default, this command is unbound.
+By default, this command is unbound, but may be bound to the Page Up
+key on some keyboards.
 </p>
 </dd>
-<dt><a id="index-history_002dsubstring_002dsearch_002dforward-_0028_0029"></a><span><code class="code">history-substring-search-forward ()</code><a class="copiable-link" href="#index-history_002dsubstring_002dsearch_002dforward-_0028_0029"> &para;</a></span></dt>
-<dd><p>Search forward through the history for the string of characters
+<dt><a id="index-history_002dsubstring_002dsearch_002dbackward-_0028_0029"></a><span><code class="code">history-substring-search-backward ()</code><a class="copiable-link" href="#index-history_002dsubstring_002dsearch_002dbackward-_0028_0029"> &para;</a></span></dt>
+<dd><p>Search backward through the history for the string of characters
 between the start of the current line and the point.
 The search string may match anywhere in a history line.
 This is a non-incremental search.
 By default, this command is unbound.
 </p>
 </dd>
-<dt><a id="index-history_002dsubstring_002dsearch_002dbackward-_0028_0029"></a><span><code class="code">history-substring-search-backward ()</code><a class="copiable-link" href="#index-history_002dsubstring_002dsearch_002dbackward-_0028_0029"> &para;</a></span></dt>
-<dd><p>Search backward through the history for the string of characters
+<dt><a id="index-history_002dsubstring_002dsearch_002dforward-_0028_0029"></a><span><code class="code">history-substring-search-forward ()</code><a class="copiable-link" href="#index-history_002dsubstring_002dsearch_002dforward-_0028_0029"> &para;</a></span></dt>
+<dd><p>Search forward through the history for the string of characters
 between the start of the current line and the point.
 The search string may match anywhere in a history line.
 This is a non-incremental search.
@@ -11993,7 +12013,8 @@ the text at point rather than pushing the text to the right.
 Characters bound to <code class="code">backward-delete-char</code> replace the character
 before point with a space.
 </p>
-<p>By default, this command is unbound.
+<p>By default, this command is unbound, but may be bound to the Insert
+key on some keyboards.
 </p>
 </dd>
 </dl>
index 0bafcd38418cc894d951960b65d105c938971f9a..a2e969d501443a16f985419e0f1ff327c29209ee 100644 (file)
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 7.1 from
 bashref.texi.
 
 This text is a brief description of the features that are present in the
-Bash shell (version 5.3, 12 June 2024).
+Bash shell (version 5.3, 2 July 2024).
 
-   This is Edition 5.3, last updated 12 June 2024, of â€˜The GNU Bash
+   This is Edition 5.3, last updated 2 July 2024, of â€˜The GNU Bash
 Reference Manual’, for â€˜Bash’, Version 5.3.
 
    Copyright Â© 1988-2023 Free Software Foundation, Inc.
@@ -27,10 +27,10 @@ Bash Features
 *************
 
 This text is a brief description of the features that are present in the
-Bash shell (version 5.3, 12 June 2024).  The Bash home page is
+Bash shell (version 5.3, 2 July 2024).  The Bash home page is
 <http://www.gnu.org/software/bash/>.
 
-   This is Edition 5.3, last updated 12 June 2024, of â€˜The GNU Bash
+   This is Edition 5.3, last updated 2 July 2024, of â€˜The GNU Bash
 Reference Manual’, for â€˜Bash’, Version 5.3.
 
    Bash contains features that appear in other popular shells, and some
@@ -4275,7 +4275,8 @@ standard.
      Arguments to non-string format specifiers are treated as C language
      constants, except that a leading plus or minus sign is allowed, and
      if the leading character is a single or double quote, the value is
-     the ASCII value of the following character.
+     the numeric value of the following character, using the current
+     locale.
 
      The FORMAT is reused as necessary to consume all of the ARGUMENTS.
      If the FORMAT requires more ARGUMENTS than are supplied, the extra
@@ -6342,8 +6343,7 @@ Invoked as an interactive non-login shell
 When an interactive shell that is not a login shell is started, Bash
 reads and executes commands from â€˜~/.bashrc’, if that file exists.  This
 may be inhibited by using the â€˜--norc’ option.  The â€˜--rcfile FILE’
-option will force Bash to read and execute commands from FILE instead of
-‘~/.bashrc’.
+option will cause Bash to use FILE instead of â€˜~/.bashrc’.
 
    So, typically, your â€˜~/.bash_profile’ contains the line
      if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
@@ -6405,10 +6405,10 @@ remote shell daemon, usually â€˜rshd’, or the secure shell daemon â€˜sshd’.
 If Bash determines it is being run non-interactively in this fashion, it
 reads and executes commands from â€˜~/.bashrc’, if that file exists and is
 readable.  It will not do this if invoked as â€˜sh’.  The â€˜--norc’ option
-may be used to inhibit this behavior, and the â€˜--rcfile’ option may be
-used to force another file to be read, but neither â€˜rshd’ nor â€˜sshd’
-generally invoke the shell with those options or allow them to be
-specified.
+may be used to inhibit this behavior, and the â€˜--rcfile’ option will
+make Bash use a different file instead of â€˜~/.bashrc’, but neither
+‘rshd’ nor â€˜sshd’ generally invoke the shell with those options or allow
+them to be specified.
 
 Invoked with unequal effective and real UID/GIDs
 ................................................
@@ -7723,10 +7723,6 @@ required for bash-5.1 and later versions.
           double-quoted word expansions
 
 â€˜compat43’
-        â€¢ 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='(1 2)').  Later versions warn
-          that this usage is deprecated
         â€¢ 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
@@ -12295,8 +12291,8 @@ D.1 Index of Shell Builtin Commands
                                                               (line  69)
 * pwd:                                   Bourne Shell Builtins.
                                                               (line 226)
-* read:                                  Bash Builtins.       (line 523)
-* readarray:                             Bash Builtins.       (line 629)
+* read:                                  Bash Builtins.       (line 524)
+* readarray:                             Bash Builtins.       (line 630)
 * readonly:                              Bourne Shell Builtins.
                                                               (line 236)
 * return:                                Bourne Shell Builtins.
@@ -12305,7 +12301,7 @@ D.1 Index of Shell Builtin Commands
 * shift:                                 Bourne Shell Builtins.
                                                               (line 276)
 * shopt:                                 The Shopt Builtin.   (line   9)
-* source:                                Bash Builtins.       (line 638)
+* source:                                Bash Builtins.       (line 639)
 * suspend:                               Job Control Builtins.
                                                               (line 116)
 * test:                                  Bourne Shell Builtins.
@@ -12316,12 +12312,12 @@ D.1 Index of Shell Builtin Commands
                                                               (line 397)
 * true:                                  Bourne Shell Builtins.
                                                               (line 459)
-* type:                                  Bash Builtins.       (line 643)
-* typeset:                               Bash Builtins.       (line 681)
-* ulimit:                                Bash Builtins.       (line 687)
+* type:                                  Bash Builtins.       (line 644)
+* typeset:                               Bash Builtins.       (line 682)
+* ulimit:                                Bash Builtins.       (line 688)
 * umask:                                 Bourne Shell Builtins.
                                                               (line 464)
-* unalias:                               Bash Builtins.       (line 793)
+* unalias:                               Bash Builtins.       (line 794)
 * unset:                                 Bourne Shell Builtins.
                                                               (line 482)
 * wait:                                  Job Control Builtins.
@@ -12999,138 +12995,138 @@ D.5 Concept Index
 
 \1f
 Tag Table:
-Node: Top\7f896
-Node: Introduction\7f2832
-Node: What is Bash?\7f3048
-Node: What is a shell?\7f4192
-Node: Definitions\7f6774
-Node: Basic Shell Features\7f9953
-Node: Shell Syntax\7f11176
-Node: Shell Operation\7f12206
-Node: Quoting\7f13507
-Node: Escape Character\7f14823
-Node: Single Quotes\7f15324
-Node: Double Quotes\7f15676
-Node: ANSI-C Quoting\7f17022
-Node: Locale Translation\7f18410
-Node: Creating Internationalized Scripts\7f19757
-Node: Comments\7f23958
-Node: Shell Commands\7f24596
-Node: Reserved Words\7f25538
-Node: Simple Commands\7f26406
-Node: Pipelines\7f27068
-Node: Lists\7f30134
-Node: Compound Commands\7f32009
-Node: Looping Constructs\7f33021
-Node: Conditional Constructs\7f35568
-Node: Command Grouping\7f50392
-Node: Coprocesses\7f51882
-Node: GNU Parallel\7f54581
-Node: Shell Functions\7f55502
-Node: Shell Parameters\7f63611
-Node: Positional Parameters\7f68147
-Node: Special Parameters\7f69085
-Node: Shell Expansions\7f72394
-Node: Brace Expansion\7f74586
-Node: Tilde Expansion\7f77252
-Node: Shell Parameter Expansion\7f80021
-Node: Command Substitution\7f99131
-Node: Arithmetic Expansion\7f102667
-Node: Process Substitution\7f103635
-Node: Word Splitting\7f104775
-Node: Filename Expansion\7f106919
-Node: Pattern Matching\7f110018
-Node: Quote Removal\7f115254
-Node: Redirections\7f115561
-Node: Executing Commands\7f125373
-Node: Simple Command Expansion\7f126043
-Node: Command Search and Execution\7f128157
-Node: Command Execution Environment\7f130568
-Node: Environment\7f133880
-Node: Exit Status\7f135587
-Node: Signals\7f137375
-Node: Shell Scripts\7f140992
-Node: Shell Builtin Commands\7f144087
-Node: Bourne Shell Builtins\7f146201
-Node: Bash Builtins\7f170974
-Node: Modifying Shell Behavior\7f205958
-Node: The Set Builtin\7f206303
-Node: The Shopt Builtin\7f217821
-Node: Special Builtins\7f234611
-Node: Shell Variables\7f235603
-Node: Bourne Shell Variables\7f236040
-Node: Bash Variables\7f238236
-Node: Bash Features\7f275404
-Node: Invoking Bash\7f276421
-Node: Bash Startup Files\7f282823
-Node: Interactive Shells\7f288138
-Node: What is an Interactive Shell?\7f288549
-Node: Is this Shell Interactive?\7f289218
-Node: Interactive Shell Behavior\7f290045
-Node: Bash Conditional Expressions\7f293802
-Node: Shell Arithmetic\7f298979
-Node: Aliases\7f302064
-Node: Arrays\7f305022
-Node: The Directory Stack\7f311824
-Node: Directory Stack Builtins\7f312624
-Node: Controlling the Prompt\7f317076
-Node: The Restricted Shell\7f320217
-Node: Bash POSIX Mode\7f323007
-Node: Shell Compatibility Mode\7f340521
-Node: Job Control\7f349543
-Node: Job Control Basics\7f350003
-Node: Job Control Builtins\7f355180
-Node: Job Control Variables\7f361143
-Node: Command Line Editing\7f362323
-Node: Introduction and Notation\7f364030
-Node: Readline Interaction\7f365677
-Node: Readline Bare Essentials\7f366868
-Node: Readline Movement Commands\7f368689
-Node: Readline Killing Commands\7f369689
-Node: Readline Arguments\7f371670
-Node: Searching\7f372730
-Node: Readline Init File\7f374962
-Node: Readline Init File Syntax\7f376247
-Node: Conditional Init Constructs\7f401188
-Node: Sample Init File\7f405556
-Node: Bindable Readline Commands\7f408680
-Node: Commands For Moving\7f409908
-Node: Commands For History\7f412138
-Node: Commands For Text\7f417346
-Node: Commands For Killing\7f421483
-Node: Numeric Arguments\7f424287
-Node: Commands For Completion\7f425442
-Node: Keyboard Macros\7f429761
-Node: Miscellaneous Commands\7f430465
-Node: Readline vi Mode\7f437122
-Node: Programmable Completion\7f438077
-Node: Programmable Completion Builtins\7f446037
-Node: A Programmable Completion Example\7f457606
-Node: Using History Interactively\7f462954
-Node: Bash History Facilities\7f463638
-Node: Bash History Builtins\7f466753
-Node: History Interaction\7f471999
-Node: Event Designators\7f476327
-Node: Word Designators\7f477913
-Node: Modifiers\7f479902
-Node: Installing Bash\7f481814
-Node: Basic Installation\7f482951
-Node: Compilers and Options\7f486833
-Node: Compiling For Multiple Architectures\7f487586
-Node: Installation Names\7f489338
-Node: Specifying the System Type\7f491575
-Node: Sharing Defaults\7f492324
-Node: Operation Controls\7f493041
-Node: Optional Features\7f494063
-Node: Reporting Bugs\7f505868
-Node: Major Differences From The Bourne Shell\7f507220
-Node: GNU Free Documentation License\7f526958
-Node: Indexes\7f552138
-Node: Builtin Index\7f552592
-Node: Reserved Word Index\7f559693
-Node: Variable Index\7f562141
-Node: Function Index\7f579275
-Node: Concept Index\7f593134
+Node: Top\7f894
+Node: Introduction\7f2828
+Node: What is Bash?\7f3044
+Node: What is a shell?\7f4188
+Node: Definitions\7f6770
+Node: Basic Shell Features\7f9949
+Node: Shell Syntax\7f11172
+Node: Shell Operation\7f12202
+Node: Quoting\7f13503
+Node: Escape Character\7f14819
+Node: Single Quotes\7f15320
+Node: Double Quotes\7f15672
+Node: ANSI-C Quoting\7f17018
+Node: Locale Translation\7f18406
+Node: Creating Internationalized Scripts\7f19753
+Node: Comments\7f23954
+Node: Shell Commands\7f24592
+Node: Reserved Words\7f25534
+Node: Simple Commands\7f26402
+Node: Pipelines\7f27064
+Node: Lists\7f30130
+Node: Compound Commands\7f32005
+Node: Looping Constructs\7f33017
+Node: Conditional Constructs\7f35564
+Node: Command Grouping\7f50388
+Node: Coprocesses\7f51878
+Node: GNU Parallel\7f54577
+Node: Shell Functions\7f55498
+Node: Shell Parameters\7f63607
+Node: Positional Parameters\7f68143
+Node: Special Parameters\7f69081
+Node: Shell Expansions\7f72390
+Node: Brace Expansion\7f74582
+Node: Tilde Expansion\7f77248
+Node: Shell Parameter Expansion\7f80017
+Node: Command Substitution\7f99127
+Node: Arithmetic Expansion\7f102663
+Node: Process Substitution\7f103631
+Node: Word Splitting\7f104771
+Node: Filename Expansion\7f106915
+Node: Pattern Matching\7f110014
+Node: Quote Removal\7f115250
+Node: Redirections\7f115557
+Node: Executing Commands\7f125369
+Node: Simple Command Expansion\7f126039
+Node: Command Search and Execution\7f128153
+Node: Command Execution Environment\7f130564
+Node: Environment\7f133876
+Node: Exit Status\7f135583
+Node: Signals\7f137371
+Node: Shell Scripts\7f140988
+Node: Shell Builtin Commands\7f144083
+Node: Bourne Shell Builtins\7f146197
+Node: Bash Builtins\7f170970
+Node: Modifying Shell Behavior\7f205987
+Node: The Set Builtin\7f206332
+Node: The Shopt Builtin\7f217850
+Node: Special Builtins\7f234640
+Node: Shell Variables\7f235632
+Node: Bourne Shell Variables\7f236069
+Node: Bash Variables\7f238265
+Node: Bash Features\7f275433
+Node: Invoking Bash\7f276450
+Node: Bash Startup Files\7f282852
+Node: Interactive Shells\7f288158
+Node: What is an Interactive Shell?\7f288569
+Node: Is this Shell Interactive?\7f289238
+Node: Interactive Shell Behavior\7f290065
+Node: Bash Conditional Expressions\7f293822
+Node: Shell Arithmetic\7f298999
+Node: Aliases\7f302084
+Node: Arrays\7f305042
+Node: The Directory Stack\7f311844
+Node: Directory Stack Builtins\7f312644
+Node: Controlling the Prompt\7f317096
+Node: The Restricted Shell\7f320237
+Node: Bash POSIX Mode\7f323027
+Node: Shell Compatibility Mode\7f340541
+Node: Job Control\7f349311
+Node: Job Control Basics\7f349771
+Node: Job Control Builtins\7f354948
+Node: Job Control Variables\7f360911
+Node: Command Line Editing\7f362091
+Node: Introduction and Notation\7f363798
+Node: Readline Interaction\7f365445
+Node: Readline Bare Essentials\7f366636
+Node: Readline Movement Commands\7f368457
+Node: Readline Killing Commands\7f369457
+Node: Readline Arguments\7f371438
+Node: Searching\7f372498
+Node: Readline Init File\7f374730
+Node: Readline Init File Syntax\7f376015
+Node: Conditional Init Constructs\7f400956
+Node: Sample Init File\7f405324
+Node: Bindable Readline Commands\7f408448
+Node: Commands For Moving\7f409676
+Node: Commands For History\7f411906
+Node: Commands For Text\7f417114
+Node: Commands For Killing\7f421251
+Node: Numeric Arguments\7f424055
+Node: Commands For Completion\7f425210
+Node: Keyboard Macros\7f429529
+Node: Miscellaneous Commands\7f430233
+Node: Readline vi Mode\7f436890
+Node: Programmable Completion\7f437845
+Node: Programmable Completion Builtins\7f445805
+Node: A Programmable Completion Example\7f457374
+Node: Using History Interactively\7f462722
+Node: Bash History Facilities\7f463406
+Node: Bash History Builtins\7f466521
+Node: History Interaction\7f471767
+Node: Event Designators\7f476095
+Node: Word Designators\7f477681
+Node: Modifiers\7f479670
+Node: Installing Bash\7f481582
+Node: Basic Installation\7f482719
+Node: Compilers and Options\7f486601
+Node: Compiling For Multiple Architectures\7f487354
+Node: Installation Names\7f489106
+Node: Specifying the System Type\7f491343
+Node: Sharing Defaults\7f492092
+Node: Operation Controls\7f492809
+Node: Optional Features\7f493831
+Node: Reporting Bugs\7f505636
+Node: Major Differences From The Bourne Shell\7f506988
+Node: GNU Free Documentation License\7f526726
+Node: Indexes\7f551906
+Node: Builtin Index\7f552360
+Node: Reserved Word Index\7f559461
+Node: Variable Index\7f561909
+Node: Function Index\7f579043
+Node: Concept Index\7f592902
 \1f
 End Tag Table
 
index 1167104994af2fde39e42d577f7f590433626c51..c8a390a7a1051c882f2a9b72e859e67de5dcfe4d 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)  12 JUN 2024 15:53
+This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=pdfetex 2024.4.9)  3 JUL 2024 10:54
 entering extended mode
  restricted \write18 enabled.
  file:line:error style messages enabled.
  %&-line parsing enabled.
-**\input /usr/local/src/bash/bash-20240609/doc/bashref.texi \input /usr/local/s
-rc/bash/bash-20240609/doc/bashref.texi
-(/usr/local/src/bash/bash-20240609/doc/bashref.texi
-(/usr/local/src/bash/bash-20240609/doc/texinfo.tex
+**\input /usr/local/src/bash/bash-20240701/doc/bashref.texi \input /usr/local/s
+rc/bash/bash-20240701/doc/bashref.texi
+(/usr/local/src/bash/bash-20240701/doc/bashref.texi
+(/usr/local/src/bash/bash-20240701/doc/texinfo.tex
 Loading texinfo [version 2015-11-22.14]:
 \outerhsize=\dimen16
 \outervsize=\dimen17
@@ -162,15 +162,15 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
 texinfo.tex: doing @include of version.texi
 
 
-(/usr/local/src/bash/bash-20240609/doc/version.texi) [1{/opt/local/var/db/texmf
+(/usr/local/src/bash/bash-20240701/doc/version.texi) [1{/opt/local/var/db/texmf
 /fonts/map/pdftex/updmap/pdftex.map}] [2]
-(/usr/local/build/bash/bash-20240609/doc/bashref.toc [-1] [-2] [-3]) [-4]
-(/usr/local/build/bash/bash-20240609/doc/bashref.toc)
-(/usr/local/build/bash/bash-20240609/doc/bashref.toc) Chapter 1
+(/usr/local/build/bash/bash-20240701/doc/bashref.toc [-1] [-2] [-3]) [-4]
+(/usr/local/build/bash/bash-20240701/doc/bashref.toc)
+(/usr/local/build/bash/bash-20240701/doc/bashref.toc) Chapter 1
 \openout0 = `bashref.toc'.
 
 
-(/usr/local/build/bash/bash-20240609/doc/bashref.aux)
+(/usr/local/build/bash/bash-20240701/doc/bashref.aux)
 \openout1 = `bashref.aux'.
 
  Chapter 2 [1] [2]
@@ -263,7 +263,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5447--5447
 [119] [120]
 texinfo.tex: doing @include of rluser.texi
 
- (/usr/local/src/bash/bash-20240609/lib/readline/doc/rluser.texi
+ (/usr/local/src/bash/bash-20240701/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,10 +313,10 @@ gnored[]
 texinfo.tex: doing @include of hsuser.texi
 
 
-(/usr/local/src/bash/bash-20240609/lib/readline/doc/hsuser.texi Chapter 9
+(/usr/local/src/bash/bash-20240701/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 9844--9853
+Underfull \hbox (badness 10000) in paragraph at lines 9842--9851
 []@textrm All of the fol-low-ing op-tions ex-cept for `@texttt alt-array-implem
 entation[]@textrm '[],
 
@@ -329,7 +329,7 @@ entation[]@textrm '[],
 .etc.
 
 
-Underfull \hbox (badness 10000) in paragraph at lines 9844--9853
+Underfull \hbox (badness 10000) in paragraph at lines 9842--9851
 @textrm `@texttt disabled-builtins[]@textrm '[], `@texttt direxpand-default[]@t
 extrm '[], `@texttt strict-posix-default[]@textrm '[], and
 
@@ -345,13 +345,13 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
 [178] [179] Appendix C [180]
 texinfo.tex: doing @include of fdl.texi
 
- (/usr/local/src/bash/bash-20240609/doc/fdl.texi
+ (/usr/local/src/bash/bash-20240701/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
- 143252 words of memory out of 5000000
+ 143267 words of memory out of 5000000
  5048 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
@@ -372,10 +372,10 @@ 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, 820685 bytes).
+Output written on bashref.pdf (203 pages, 820627 bytes).
 PDF statistics:
- 2835 PDF objects out of 2984 (max. 8388607)
- 2585 compressed objects within 26 object streams
+ 2836 PDF objects out of 2984 (max. 8388607)
+ 2586 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)
 
index 4f3245f81466912f1f4da5ef347238f3d5f546c6..a10e3caba38efafb16ff2719bd2f3fa4f198881a 100644 (file)
Binary files a/doc/bashref.pdf and b/doc/bashref.pdf differ
index cd2e7b281e325c4cc85d7c072a73a46176195b57..510b43f6fa767378ebba3d57aaad139daf35c1af 100644 (file)
@@ -7370,7 +7370,7 @@ reads and executes commands from @file{~/.bashrc}, if that file exists.
 This may be inhibited by using the @option{--norc} option.
 The @option{--rcfile @var{file}} option will
 cause Bash to
-replace @file{~/.bashrc} with @var{file}.
+use @var{file} instead of @file{~/.bashrc}.
 
 So, typically, your @file{~/.bash_profile} contains the line
 @example
@@ -7443,8 +7443,8 @@ file exists and is readable.
 It will not do this if invoked as @code{sh}.
 The @option{--norc} option may be used to inhibit this behavior, and the
 @option{--rcfile} option
-will make Bash replace @file{~/.bashrc} with a different file,
-but neither
+will make Bash use a different file instead of
+@file{~/.bashrc}, but neither
 @code{rshd} nor @code{sshd} generally invoke the shell with those
 options or allow them to be specified.
 
@@ -9015,11 +9015,6 @@ are not special within double-quoted word expansions
 @item compat43
 @itemize @bullet
 @item
-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='(1 2)'). Later versions warn that this usage is
-deprecated
-@item
 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
index 0e55790f94b6c5ed22f98dd769ece0cbde6d5056..5212e8ce99c4157ef0719c886795be3d9c3e5915 100644 (file)
@@ -70,7 +70,7 @@
 @numchapentry{Bash Features}{6}{Bash Features}{94}
 @numsecentry{Invoking Bash}{6.1}{Invoking Bash}{94}
 @numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{96}
-@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{97}
+@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{98}
 @numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{98}
 @numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{98}
 @numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{98}
index bef2da69ba65b9d3aa4e8cc7340fe3025b6296dd..08d1fb60d8174783582b3f55052837eddbbdb5cf 100644 (file)
@@ -2,10 +2,10 @@
 Copyright (C) 1988-2024 Free Software Foundation, Inc.
 @end ignore
 
-@set LASTCHANGE Mon Jul  1 09:45:45 EDT 2024
+@set LASTCHANGE Tue Jul  2 14:29:06 EDT 2024
 
 @set EDITION 5.3
 @set VERSION 5.3
 
-@set UPDATED 1 July 2024
+@set UPDATED 2 July 2024
 @set UPDATED-MONTH July 2024
index 96c82b54d1bae8e8d33adced07af230ef9b4bcdb..7f28cbdf14f71afe3f5ea6f83984969d77473b58 100644 (file)
@@ -332,7 +332,7 @@ _rl_free_history_entry (HIST_ENTRY *entry)
 
 /* Perhaps put back the current line if it has changed. */
 int
-rl_maybe_replace_line (void)
+_rl_maybe_replace_line (int clear_undo)
 {
   HIST_ENTRY *temp;
 
@@ -350,12 +350,19 @@ rl_maybe_replace_line (void)
       if (_rl_saved_line_for_history && (UNDO_LIST *)_rl_saved_line_for_history->data == rl_undo_list)
        _rl_saved_line_for_history->data = 0;
       /* Do we want to set rl_undo_list = 0 here since we just saved it into
-        a history entry? */
-      rl_undo_list = 0;
+        a history entry? We let the caller decide. */
+      if (clear_undo)
+       rl_undo_list = 0;
     }
   return 0;
 }
 
+int
+rl_maybe_replace_line (void)
+{
+  return (_rl_maybe_replace_line (0));
+}
+
 void
 _rl_unsave_line (HIST_ENTRY *entry)
 {
index 61d04a459f84dc06ed249598aa2606284a02cd20..56160b13139ea3143e7b2c950d89767d6ce66224 100644 (file)
@@ -399,6 +399,7 @@ extern void _rl_free_saved_line (HIST_ENTRY *);
 extern void _rl_unsave_line (HIST_ENTRY *);
 #endif
 extern int _rl_free_saved_history_line (void);
+extern int _rl_maybe_replace_line (int);
 
 extern void _rl_set_insert_mode (int, int);
 
index a22c43d4fc6e925c38a96ec23b91f38492302c13..96bb83a5fda242979dcc73779be48b63c7a1d453 100644 (file)
@@ -101,7 +101,7 @@ _rl_unsave_saved_search_line (void)
    from a history entry. We assume the undo list does not come from a
    history entry if we are at the end of the history, entering a new line.
 
-   The call to rl_maybe_replace_line() has already ensured that any undo
+   The call to _rl_maybe_replace_line() has already ensured that any undo
    list pointing to a history entry has already been saved back to the
    history and set rl_undo_list to NULL. */
 
@@ -271,8 +271,9 @@ _rl_nsearch_init (int dir, int pchar)
   cxt->direction = dir;
   cxt->history_pos = cxt->save_line;
 
-  /* If the current line has changed, put it back into the history if necessary. */
-  rl_maybe_replace_line ();
+  /* If the current line has changed, put it back into the history if necessary
+     and clear the undo list. */
+  _rl_maybe_replace_line (1);
 
   _rl_saved_line_for_search = _rl_alloc_saved_line ();
 
@@ -603,12 +604,15 @@ rl_history_search_internal (int count, int dir)
   int ret, oldpos, newcol;
   char *t;
 
-  /* If the current line has changed, put it back into the history if necessary. */
-  rl_maybe_replace_line ();
+  /* If the current line has changed, put it back into the history if necessary
+     and clear the undo list. */
+  _rl_maybe_replace_line (1);
 
   _rl_saved_line_for_search = _rl_alloc_saved_line ();
   temp = (HIST_ENTRY *)NULL;
 
+  oldpos = where_history ();
+
   /* Search COUNT times through the history for a line matching
      history_search_string.  If history_search_string[0] == '^', the
      line must match from the start; otherwise any substring can match.
@@ -623,10 +627,8 @@ rl_history_search_internal (int count, int dir)
 
       /* Get the history entry we found. */
       _rl_history_search_pos = ret;
-      oldpos = where_history ();
       history_set_pos (_rl_history_search_pos);
       temp = current_history ();       /* will never be NULL after successful search */
-      history_set_pos (oldpos);
 
       /* Don't find multiple instances of the same line. */
       if (prev_line_found && STREQ (prev_line_found, temp->line))
@@ -635,7 +637,7 @@ rl_history_search_internal (int count, int dir)
       count--;
     }
 
-  /* If we didn't find anything at all, return. */
+  /* If we didn't find anything at all, return without changing history offset */
   if (temp == 0)
     {
       _rl_unsave_saved_search_line ();