Bash-4.3 distribution sources and documentation
[platform/upstream/bash.git] / po / en@boldquot.po
index 9fd27a0..05e6b8b 100644 (file)
@@ -1,7 +1,7 @@
 # English translations for GNU bash package.
 # English translations for GNU bash package.
-# Copyright (C) 2011 Free Software Foundation, Inc.
+# Copyright (C) 2014 Free Software Foundation, Inc.
 # This file is distributed under the same license as the GNU bash package.
 # This file is distributed under the same license as the GNU bash package.
-# Automatically generated, 2011.
+# Automatically generated, 2014.
 #
 # All this catalog "translates" are quotation characters.
 # The msgids must be ASCII and therefore cannot contain real quotation
 #
 # All this catalog "translates" are quotation characters.
 # The msgids must be ASCII and therefore cannot contain real quotation
 #
 msgid ""
 msgstr ""
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: GNU bash 4.2-release\n"
+"Project-Id-Version: GNU bash 4.3-release\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-01-28 22:09-0500\n"
-"PO-Revision-Date: 2011-01-28 22:09-0500\n"
+"POT-Creation-Date: 2014-02-11 11:19-0500\n"
+"PO-Revision-Date: 2014-02-11 11:19-0500\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
+"Language: en\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: arrayfunc.c:50
+#: arrayfunc.c:51
 msgid "bad array subscript"
 msgstr "bad array subscript"
 
 msgid "bad array subscript"
 msgstr "bad array subscript"
 
-#: arrayfunc.c:313 builtins/declare.def:487
+#: arrayfunc.c:356 builtins/declare.def:566
 #, c-format
 msgid "%s: cannot convert indexed to associative array"
 msgstr "%s: cannot convert indexed to associative array"
 
 #, c-format
 msgid "%s: cannot convert indexed to associative array"
 msgstr "%s: cannot convert indexed to associative array"
 
-#: arrayfunc.c:480
+#: arrayfunc.c:539
 #, c-format
 msgid "%s: invalid associative array key"
 msgstr "%s: invalid associative array key"
 
 #, c-format
 msgid "%s: invalid associative array key"
 msgstr "%s: invalid associative array key"
 
-#: arrayfunc.c:482
+#: arrayfunc.c:541
 #, c-format
 msgid "%s: cannot assign to non-numeric index"
 msgstr "%s: cannot assign to non-numeric index"
 
 #, c-format
 msgid "%s: cannot assign to non-numeric index"
 msgstr "%s: cannot assign to non-numeric index"
 
-#: arrayfunc.c:518
+#: arrayfunc.c:586
 #, c-format
 msgid "%s: %s: must use subscript when assigning associative array"
 msgstr "%s: %s: must use subscript when assigning associative array"
 
 #, c-format
 msgid "%s: %s: must use subscript when assigning associative array"
 msgstr "%s: %s: must use subscript when assigning associative array"
 
-#: bashhist.c:387
+#: bashhist.c:388
 #, c-format
 msgid "%s: cannot create: %s"
 msgstr "%s: cannot create: %s"
 
 #, c-format
 msgid "%s: cannot create: %s"
 msgstr "%s: cannot create: %s"
 
-#: bashline.c:3498
+#: bashline.c:3982
 msgid "bash_execute_unix_command: cannot find keymap for command"
 msgstr "bash_execute_unix_command: cannot find keymap for command"
 
 msgid "bash_execute_unix_command: cannot find keymap for command"
 msgstr "bash_execute_unix_command: cannot find keymap for command"
 
-#: bashline.c:3584
+#: bashline.c:4069
 #, c-format
 msgid "%s: first non-whitespace character is not `\"'"
 msgstr "%s: first non-whitespace character is not ‘\e[1m\"\e[0m’"
 
 #, c-format
 msgid "%s: first non-whitespace character is not `\"'"
 msgstr "%s: first non-whitespace character is not ‘\e[1m\"\e[0m’"
 
-#: bashline.c:3613
+#: bashline.c:4098
 #, c-format
 msgid "no closing `%c' in %s"
 msgstr "no closing ‘\e[1m%c\e[0m’ in %s"
 
 #, c-format
 msgid "no closing `%c' in %s"
 msgstr "no closing ‘\e[1m%c\e[0m’ in %s"
 
-#: bashline.c:3647
+#: bashline.c:4132
 #, c-format
 msgid "%s: missing colon separator"
 msgstr "%s: missing colon separator"
 
 #, c-format
 msgid "%s: missing colon separator"
 msgstr "%s: missing colon separator"
 
+#: braces.c:321
+#, c-format
+msgid "brace expansion: cannot allocate memory for %s"
+msgstr "brace expansion: cannot allocate memory for %s"
+
+#: braces.c:413
+#, c-format
+msgid "brace expansion: failed to allocate memory for %d elements"
+msgstr "brace expansion: failed to allocate memory for %d elements"
+
+#: braces.c:452
+#, c-format
+msgid "brace expansion: failed to allocate memory for `%s'"
+msgstr "brace expansion: failed to allocate memory for ‘\e[1m%s\e[0m’"
+
 #: builtins/alias.def:132
 #, c-format
 msgid "`%s': invalid alias name"
 msgstr "‘\e[1m%s\e[0m’: invalid alias name"
 
 #: builtins/alias.def:132
 #, c-format
 msgid "`%s': invalid alias name"
 msgstr "‘\e[1m%s\e[0m’: invalid alias name"
 
-#: builtins/bind.def:120 builtins/bind.def:123
+#: builtins/bind.def:123 builtins/bind.def:126
 msgid "line editing not enabled"
 msgstr "line editing not enabled"
 
 msgid "line editing not enabled"
 msgstr "line editing not enabled"
 
-#: builtins/bind.def:206
+#: builtins/bind.def:212
 #, c-format
 msgid "`%s': invalid keymap name"
 msgstr "‘\e[1m%s\e[0m’: invalid keymap name"
 
 #, c-format
 msgid "`%s': invalid keymap name"
 msgstr "‘\e[1m%s\e[0m’: invalid keymap name"
 
-#: builtins/bind.def:245
+#: builtins/bind.def:251
 #, c-format
 msgid "%s: cannot read: %s"
 msgstr "%s: cannot read: %s"
 
 #, c-format
 msgid "%s: cannot read: %s"
 msgstr "%s: cannot read: %s"
 
-#: builtins/bind.def:260
+#: builtins/bind.def:266
 #, c-format
 msgid "`%s': cannot unbind"
 msgstr "‘\e[1m%s\e[0m’: cannot unbind"
 
 #, c-format
 msgid "`%s': cannot unbind"
 msgstr "‘\e[1m%s\e[0m’: cannot unbind"
 
-#: builtins/bind.def:295 builtins/bind.def:325
+#: builtins/bind.def:304 builtins/bind.def:334
 #, c-format
 msgid "`%s': unknown function name"
 msgstr "‘\e[1m%s\e[0m’: unknown function name"
 
 #, c-format
 msgid "`%s': unknown function name"
 msgstr "‘\e[1m%s\e[0m’: unknown function name"
 
-#: builtins/bind.def:303
+#: builtins/bind.def:312
 #, c-format
 msgid "%s is not bound to any keys.\n"
 msgstr "%s is not bound to any keys.\n"
 
 #, c-format
 msgid "%s is not bound to any keys.\n"
 msgstr "%s is not bound to any keys.\n"
 
-#: builtins/bind.def:307
+#: builtins/bind.def:316
 #, c-format
 msgid "%s can be invoked via "
 msgstr "%s can be invoked via "
 #, c-format
 msgid "%s can be invoked via "
 msgstr "%s can be invoked via "
@@ -136,7 +152,7 @@ msgstr "loop count"
 msgid "only meaningful in a `for', `while', or `until' loop"
 msgstr "only meaningful in a ‘\e[1mfor\e[0m’, ‘\e[1mwhile\e[0m’, or ‘\e[1muntil\e[0m’ loop"
 
 msgid "only meaningful in a `for', `while', or `until' loop"
 msgstr "only meaningful in a ‘\e[1mfor\e[0m’, ‘\e[1mwhile\e[0m’, or ‘\e[1muntil\e[0m’ loop"
 
-#: builtins/caller.def:133
+#: builtins/caller.def:134
 msgid ""
 "Returns the context of the current subroutine call.\n"
 "    \n"
 msgid ""
 "Returns the context of the current subroutine call.\n"
 "    \n"
@@ -146,11 +162,15 @@ msgstr ""
 "    \n"
 "    Without EXPR, returns "
 
 "    \n"
 "    Without EXPR, returns "
 
-#: builtins/cd.def:235
+#: builtins/cd.def:319
 msgid "HOME not set"
 msgstr "HOME not set"
 
 msgid "HOME not set"
 msgstr "HOME not set"
 
-#: builtins/cd.def:247
+#: builtins/cd.def:327 builtins/common.c:166 test.c:876
+msgid "too many arguments"
+msgstr "too many arguments"
+
+#: builtins/cd.def:338
 msgid "OLDPWD not set"
 msgstr "OLDPWD not set"
 
 msgid "OLDPWD not set"
 msgstr "OLDPWD not set"
 
@@ -159,7 +179,7 @@ msgstr "OLDPWD not set"
 msgid "line %d: "
 msgstr "line %d: "
 
 msgid "line %d: "
 msgstr "line %d: "
 
-#: builtins/common.c:139 error.c:261
+#: builtins/common.c:139 error.c:265
 #, c-format
 msgid "warning: "
 msgstr "warning: "
 #, c-format
 msgid "warning: "
 msgstr "warning: "
@@ -169,11 +189,7 @@ msgstr "warning: "
 msgid "%s: usage: "
 msgstr "%s: usage: "
 
 msgid "%s: usage: "
 msgstr "%s: usage: "
 
-#: builtins/common.c:166 test.c:832
-msgid "too many arguments"
-msgstr "too many arguments"
-
-#: builtins/common.c:191 shell.c:500 shell.c:782
+#: builtins/common.c:191 shell.c:506 shell.c:788
 #, c-format
 msgid "%s: option requires an argument"
 msgstr "%s: option requires an argument"
 #, c-format
 msgid "%s: option requires an argument"
 msgstr "%s: option requires an argument"
@@ -188,7 +204,7 @@ msgstr "%s: numeric argument required"
 msgid "%s: not found"
 msgstr "%s: not found"
 
 msgid "%s: not found"
 msgstr "%s: not found"
 
-#: builtins/common.c:214 shell.c:795
+#: builtins/common.c:214 shell.c:801
 #, c-format
 msgid "%s: invalid option"
 msgstr "%s: invalid option"
 #, c-format
 msgid "%s: invalid option"
 msgstr "%s: invalid option"
@@ -198,7 +214,7 @@ msgstr "%s: invalid option"
 msgid "%s: invalid option name"
 msgstr "%s: invalid option name"
 
 msgid "%s: invalid option name"
 msgstr "%s: invalid option name"
 
-#: builtins/common.c:228 general.c:231 general.c:236
+#: builtins/common.c:228 general.c:235 general.c:240
 #, c-format
 msgid "`%s': not a valid identifier"
 msgstr "‘\e[1m%s\e[0m’: not a valid identifier"
 #, c-format
 msgid "`%s': not a valid identifier"
 msgstr "‘\e[1m%s\e[0m’: not a valid identifier"
@@ -211,7 +227,7 @@ msgstr "invalid octal number"
 msgid "invalid hex number"
 msgstr "invalid hex number"
 
 msgid "invalid hex number"
 msgstr "invalid hex number"
 
-#: builtins/common.c:242 expr.c:1362
+#: builtins/common.c:242 expr.c:1470
 msgid "invalid number"
 msgstr "invalid number"
 
 msgid "invalid number"
 msgstr "invalid number"
 
@@ -225,7 +241,7 @@ msgstr "%s: invalid signal specification"
 msgid "`%s': not a pid or valid job spec"
 msgstr "‘\e[1m%s\e[0m’: not a pid or valid job spec"
 
 msgid "`%s': not a pid or valid job spec"
 msgstr "‘\e[1m%s\e[0m’: not a pid or valid job spec"
 
-#: builtins/common.c:264 error.c:454
+#: builtins/common.c:264 error.c:488
 #, c-format
 msgid "%s: readonly variable"
 msgstr "%s: readonly variable"
 #, c-format
 msgid "%s: readonly variable"
 msgstr "%s: readonly variable"
@@ -297,48 +313,58 @@ msgstr "%s: error retrieving current directory: %s: %s\n"
 msgid "%s: ambiguous job spec"
 msgstr "%s: ambiguous job spec"
 
 msgid "%s: ambiguous job spec"
 msgstr "%s: ambiguous job spec"
 
-#: builtins/complete.def:276
+#: builtins/complete.def:277
 #, c-format
 msgid "%s: invalid action name"
 msgstr "%s: invalid action name"
 
 #, c-format
 msgid "%s: invalid action name"
 msgstr "%s: invalid action name"
 
-#: builtins/complete.def:449 builtins/complete.def:644
-#: builtins/complete.def:853
+#: builtins/complete.def:450 builtins/complete.def:645
+#: builtins/complete.def:855
 #, c-format
 msgid "%s: no completion specification"
 msgstr "%s: no completion specification"
 
 #, c-format
 msgid "%s: no completion specification"
 msgstr "%s: no completion specification"
 
-#: builtins/complete.def:696
+#: builtins/complete.def:697
 msgid "warning: -F option may not work as you expect"
 msgstr "warning: -F option may not work as you expect"
 
 msgid "warning: -F option may not work as you expect"
 msgstr "warning: -F option may not work as you expect"
 
-#: builtins/complete.def:698
+#: builtins/complete.def:699
 msgid "warning: -C option may not work as you expect"
 msgstr "warning: -C option may not work as you expect"
 
 msgid "warning: -C option may not work as you expect"
 msgstr "warning: -C option may not work as you expect"
 
-#: builtins/complete.def:826
+#: builtins/complete.def:828
 msgid "not currently executing completion function"
 msgstr "not currently executing completion function"
 
 msgid "not currently executing completion function"
 msgstr "not currently executing completion function"
 
-#: builtins/declare.def:124
+#: builtins/declare.def:126
 msgid "can only be used in a function"
 msgstr "can only be used in a function"
 
 msgid "can only be used in a function"
 msgstr "can only be used in a function"
 
-#: builtins/declare.def:366
+#: builtins/declare.def:315 builtins/declare.def:509
+#, c-format
+msgid "%s: reference variable cannot be an array"
+msgstr "%s: reference variable cannot be an array"
+
+#: builtins/declare.def:324
+#, c-format
+msgid "%s: nameref variable self references not allowed"
+msgstr "%s: nameref variable self references not allowed"
+
+#: builtins/declare.def:398
 msgid "cannot use `-f' to make functions"
 msgstr "cannot use ‘\e[1m-f\e[0m’ to make functions"
 
 msgid "cannot use `-f' to make functions"
 msgstr "cannot use ‘\e[1m-f\e[0m’ to make functions"
 
-#: builtins/declare.def:378 execute_cmd.c:5105
+#: builtins/declare.def:410 execute_cmd.c:5361
 #, c-format
 msgid "%s: readonly function"
 msgstr "%s: readonly function"
 
 #, c-format
 msgid "%s: readonly function"
 msgstr "%s: readonly function"
 
-#: builtins/declare.def:474
+#: builtins/declare.def:553
 #, c-format
 msgid "%s: cannot destroy array variables in this way"
 msgstr "%s: cannot destroy array variables in this way"
 
 #, c-format
 msgid "%s: cannot destroy array variables in this way"
 msgstr "%s: cannot destroy array variables in this way"
 
-#: builtins/declare.def:481
+#: builtins/declare.def:560 builtins/read.def:733
 #, c-format
 msgid "%s: cannot convert associative to indexed array"
 msgstr "%s: cannot convert associative to indexed array"
 #, c-format
 msgid "%s: cannot convert associative to indexed array"
 msgstr "%s: cannot convert associative to indexed array"
@@ -367,24 +393,23 @@ msgstr "%s: not dynamically loaded"
 msgid "%s: cannot delete: %s"
 msgstr "%s: cannot delete: %s"
 
 msgid "%s: cannot delete: %s"
 msgstr "%s: cannot delete: %s"
 
-#: builtins/evalfile.c:135 builtins/hash.def:171 execute_cmd.c:4961
-#: shell.c:1457
+#: builtins/evalfile.c:140 builtins/hash.def:171 execute_cmd.c:5208
+#: shell.c:1481
 #, c-format
 msgid "%s: is a directory"
 msgstr "%s: is a directory"
 
 #, c-format
 msgid "%s: is a directory"
 msgstr "%s: is a directory"
 
-#: builtins/evalfile.c:140
+#: builtins/evalfile.c:146
 #, c-format
 msgid "%s: not a regular file"
 msgstr "%s: not a regular file"
 
 #, c-format
 msgid "%s: not a regular file"
 msgstr "%s: not a regular file"
 
-#: builtins/evalfile.c:148
+#: builtins/evalfile.c:155
 #, c-format
 msgid "%s: file is too large"
 msgstr "%s: file is too large"
 
 #, c-format
 msgid "%s: file is too large"
 msgstr "%s: file is too large"
 
-#: builtins/evalfile.c:182 builtins/evalfile.c:200 execute_cmd.c:5032
-#: shell.c:1467
+#: builtins/evalfile.c:190 builtins/evalfile.c:208 shell.c:1491
 #, c-format
 msgid "%s: cannot execute binary file"
 msgstr "%s: cannot execute binary file"
 #, c-format
 msgid "%s: cannot execute binary file"
 msgstr "%s: cannot execute binary file"
@@ -417,11 +442,11 @@ msgstr "There are running jobs.\n"
 msgid "no command found"
 msgstr "no command found"
 
 msgid "no command found"
 msgstr "no command found"
 
-#: builtins/fc.def:312 builtins/fc.def:359
+#: builtins/fc.def:320 builtins/fc.def:369
 msgid "history specification"
 msgstr "history specification"
 
 msgid "history specification"
 msgstr "history specification"
 
-#: builtins/fc.def:380
+#: builtins/fc.def:390
 #, c-format
 msgid "%s: cannot open temp file: %s"
 msgstr "%s: cannot open temp file: %s"
 #, c-format
 msgid "%s: cannot open temp file: %s"
 msgstr "%s: cannot open temp file: %s"
@@ -466,7 +491,7 @@ msgid_plural "Shell commands matching keywords `"
 msgstr[0] "Shell commands matching keyword `"
 msgstr[1] "Shell commands matching keywords `"
 
 msgstr[0] "Shell commands matching keyword `"
 msgstr[1] "Shell commands matching keywords `"
 
-#: builtins/help.def:168
+#: builtins/help.def:182
 #, c-format
 msgid ""
 "no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
 #, c-format
 msgid ""
 "no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
@@ -474,12 +499,12 @@ msgstr ""
 "no help topics match ‘\e[1m%s\e[0m’.  Try ‘\e[1mhelp help\e[0m’ or ‘\e[1mman -k %s\e[0m’ "
 "or ‘\e[1minfo %s\e[0m’."
 
 "no help topics match ‘\e[1m%s\e[0m’.  Try ‘\e[1mhelp help\e[0m’ or ‘\e[1mman -k %s\e[0m’ "
 "or ‘\e[1minfo %s\e[0m’."
 
-#: builtins/help.def:185
+#: builtins/help.def:199
 #, c-format
 msgid "%s: cannot open: %s"
 msgstr "%s: cannot open: %s"
 
 #, c-format
 msgid "%s: cannot open: %s"
 msgstr "%s: cannot open: %s"
 
-#: builtins/help.def:337
+#: builtins/help.def:485
 #, c-format
 msgid ""
 "These shell commands are defined internally.  Type `help' to see this list.\n"
 #, c-format
 msgid ""
 "These shell commands are defined internally.  Type `help' to see this list.\n"
@@ -508,7 +533,7 @@ msgstr "cannot use more than one of -anrw"
 msgid "history position"
 msgstr "history position"
 
 msgid "history position"
 msgstr "history position"
 
-#: builtins/history.def:365
+#: builtins/history.def:366
 #, c-format
 msgid "%s: history expansion failed"
 msgstr "%s: history expansion failed"
 #, c-format
 msgid "%s: history expansion failed"
 msgstr "%s: history expansion failed"
@@ -522,16 +547,16 @@ msgstr "%s: inlib failed"
 msgid "no other options allowed with `-x'"
 msgstr "no other options allowed with ‘\e[1m-x\e[0m’"
 
 msgid "no other options allowed with `-x'"
 msgstr "no other options allowed with ‘\e[1m-x\e[0m’"
 
-#: builtins/kill.def:198
+#: builtins/kill.def:200
 #, c-format
 msgid "%s: arguments must be process or job IDs"
 msgstr "%s: arguments must be process or job IDs"
 
 #, c-format
 msgid "%s: arguments must be process or job IDs"
 msgstr "%s: arguments must be process or job IDs"
 
-#: builtins/kill.def:261
+#: builtins/kill.def:263
 msgid "Unknown error"
 msgstr "Unknown error"
 
 msgid "Unknown error"
 msgstr "Unknown error"
 
-#: builtins/let.def:95 builtins/let.def:120 expr.c:552 expr.c:567
+#: builtins/let.def:95 builtins/let.def:120 expr.c:583 expr.c:598
 msgid "expression expected"
 msgstr "expression expected"
 
 msgid "expression expected"
 msgstr "expression expected"
 
@@ -540,64 +565,69 @@ msgstr "expression expected"
 msgid "%s: not an indexed array"
 msgstr "%s: not an indexed array"
 
 msgid "%s: not an indexed array"
 msgstr "%s: not an indexed array"
 
-#: builtins/mapfile.def:256 builtins/read.def:279
+#: builtins/mapfile.def:259 builtins/read.def:302
 #, c-format
 msgid "%s: invalid file descriptor specification"
 msgstr "%s: invalid file descriptor specification"
 
 #, c-format
 msgid "%s: invalid file descriptor specification"
 msgstr "%s: invalid file descriptor specification"
 
-#: builtins/mapfile.def:264 builtins/read.def:286
+#: builtins/mapfile.def:267 builtins/read.def:309
 #, c-format
 msgid "%d: invalid file descriptor: %s"
 msgstr "%d: invalid file descriptor: %s"
 
 #, c-format
 msgid "%d: invalid file descriptor: %s"
 msgstr "%d: invalid file descriptor: %s"
 
-#: builtins/mapfile.def:273 builtins/mapfile.def:311
+#: builtins/mapfile.def:276 builtins/mapfile.def:314
 #, c-format
 msgid "%s: invalid line count"
 msgstr "%s: invalid line count"
 
 #, c-format
 msgid "%s: invalid line count"
 msgstr "%s: invalid line count"
 
-#: builtins/mapfile.def:284
+#: builtins/mapfile.def:287
 #, c-format
 msgid "%s: invalid array origin"
 msgstr "%s: invalid array origin"
 
 #, c-format
 msgid "%s: invalid array origin"
 msgstr "%s: invalid array origin"
 
-#: builtins/mapfile.def:301
+#: builtins/mapfile.def:304
 #, c-format
 msgid "%s: invalid callback quantum"
 msgstr "%s: invalid callback quantum"
 
 #, c-format
 msgid "%s: invalid callback quantum"
 msgstr "%s: invalid callback quantum"
 
-#: builtins/mapfile.def:333
+#: builtins/mapfile.def:336
 msgid "empty array variable name"
 msgstr "empty array variable name"
 
 msgid "empty array variable name"
 msgstr "empty array variable name"
 
-#: builtins/mapfile.def:354
+#: builtins/mapfile.def:357
 msgid "array variable support required"
 msgstr "array variable support required"
 
 msgid "array variable support required"
 msgstr "array variable support required"
 
-#: builtins/printf.def:394
+#: builtins/printf.def:402
 #, c-format
 msgid "`%s': missing format character"
 msgstr "‘\e[1m%s\e[0m’: missing format character"
 
 #, c-format
 msgid "`%s': missing format character"
 msgstr "‘\e[1m%s\e[0m’: missing format character"
 
-#: builtins/printf.def:448
+#: builtins/printf.def:456
 #, c-format
 msgid "`%c': invalid time format specification"
 msgstr "‘\e[1m%c\e[0m’: invalid time format specification"
 
 #, c-format
 msgid "`%c': invalid time format specification"
 msgstr "‘\e[1m%c\e[0m’: invalid time format specification"
 
-#: builtins/printf.def:635
+#: builtins/printf.def:658
 #, c-format
 msgid "`%c': invalid format character"
 msgstr "‘\e[1m%c\e[0m’: invalid format character"
 
 #, c-format
 msgid "`%c': invalid format character"
 msgstr "‘\e[1m%c\e[0m’: invalid format character"
 
-#: builtins/printf.def:662
+#: builtins/printf.def:684
 #, c-format
 msgid "warning: %s: %s"
 msgstr "warning: %s: %s"
 
 #, c-format
 msgid "warning: %s: %s"
 msgstr "warning: %s: %s"
 
-#: builtins/printf.def:840
+#: builtins/printf.def:768
+#, c-format
+msgid "format parsing problem: %s"
+msgstr "format parsing problem: %s"
+
+#: builtins/printf.def:865
 msgid "missing hex digit for \\x"
 msgstr "missing hex digit for \\x"
 
 msgid "missing hex digit for \\x"
 msgstr "missing hex digit for \\x"
 
-#: builtins/printf.def:855
+#: builtins/printf.def:880
 #, c-format
 msgid "missing unicode digit for \\%c"
 msgstr "missing unicode digit for \\%c"
 #, c-format
 msgid "missing unicode digit for \\%c"
 msgstr "missing unicode digit for \\%c"
@@ -606,19 +636,24 @@ msgstr "missing unicode digit for \\%c"
 msgid "no other directory"
 msgstr "no other directory"
 
 msgid "no other directory"
 msgstr "no other directory"
 
-#: builtins/pushd.def:462
+#: builtins/pushd.def:354
+#, c-format
+msgid "%s: invalid argument"
+msgstr "%s: invalid argument"
+
+#: builtins/pushd.def:468
 msgid "<no current directory>"
 msgstr "<no current directory>"
 
 msgid "<no current directory>"
 msgstr "<no current directory>"
 
-#: builtins/pushd.def:506
+#: builtins/pushd.def:512
 msgid "directory stack empty"
 msgstr "directory stack empty"
 
 msgid "directory stack empty"
 msgstr "directory stack empty"
 
-#: builtins/pushd.def:508
+#: builtins/pushd.def:514
 msgid "directory stack index"
 msgstr "directory stack index"
 
 msgid "directory stack index"
 msgstr "directory stack index"
 
-#: builtins/pushd.def:683
+#: builtins/pushd.def:689
 msgid ""
 "Display the list of currently remembered directories.  Directories\n"
 "    find their way onto the list with the `pushd' command; you can get\n"
 msgid ""
 "Display the list of currently remembered directories.  Directories\n"
 "    find their way onto the list with the `pushd' command; you can get\n"
@@ -663,7 +698,7 @@ msgstr ""
 "by\n"
 "\tdirs when invoked without options, starting with zero."
 
 "by\n"
 "\tdirs when invoked without options, starting with zero."
 
-#: builtins/pushd.def:705
+#: builtins/pushd.def:711
 msgid ""
 "Adds a directory to the top of the directory stack, or rotates\n"
 "    the stack, making the new top of the stack the current working\n"
 msgid ""
 "Adds a directory to the top of the directory stack, or rotates\n"
 "    the stack, making the new top of the stack the current working\n"
@@ -709,7 +744,7 @@ msgstr ""
 "    \n"
 "    The ‘\e[1mdirs\e[0m’ builtin displays the directory stack."
 
 "    \n"
 "    The ‘\e[1mdirs\e[0m’ builtin displays the directory stack."
 
-#: builtins/pushd.def:730
+#: builtins/pushd.def:736
 msgid ""
 "Removes entries from the directory stack.  With no arguments, removes\n"
 "    the top directory from the stack, and changes to the new top directory.\n"
 msgid ""
 "Removes entries from the directory stack.  With no arguments, removes\n"
 "    the top directory from the stack, and changes to the new top directory.\n"
@@ -738,51 +773,51 @@ msgstr ""
 "    \n"
 "    Arguments:\n"
 "      +N\tRemoves the Nth entry counting from the left of the list\n"
 "    \n"
 "    Arguments:\n"
 "      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd +0\e"
-"[0m’\n"
+"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd "
+"+0\e[0m’\n"
 "    \tremoves the first directory, ‘\e[1mpopd +1\e[0m’ the second.\n"
 "    \n"
 "      -N\tRemoves the Nth entry counting from the right of the list\n"
 "    \tremoves the first directory, ‘\e[1mpopd +1\e[0m’ the second.\n"
 "    \n"
 "      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd -0\e"
-"[0m’\n"
+"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd "
+"-0\e[0m’\n"
 "    \tremoves the last directory, ‘\e[1mpopd -1\e[0m’ the next to last.\n"
 "    \n"
 "    The ‘\e[1mdirs\e[0m’ builtin displays the directory stack."
 
 "    \tremoves the last directory, ‘\e[1mpopd -1\e[0m’ the next to last.\n"
 "    \n"
 "    The ‘\e[1mdirs\e[0m’ builtin displays the directory stack."
 
-#: builtins/read.def:252
+#: builtins/read.def:275
 #, c-format
 msgid "%s: invalid timeout specification"
 msgstr "%s: invalid timeout specification"
 
 #, c-format
 msgid "%s: invalid timeout specification"
 msgstr "%s: invalid timeout specification"
 
-#: builtins/read.def:588
+#: builtins/read.def:678
 #, c-format
 msgid "read error: %d: %s"
 msgstr "read error: %d: %s"
 
 #, c-format
 msgid "read error: %d: %s"
 msgstr "read error: %d: %s"
 
-#: builtins/return.def:73
+#: builtins/return.def:75
 msgid "can only `return' from a function or sourced script"
 msgstr "can only ‘\e[1mreturn\e[0m’ from a function or sourced script"
 
 msgid "can only `return' from a function or sourced script"
 msgstr "can only ‘\e[1mreturn\e[0m’ from a function or sourced script"
 
-#: builtins/set.def:771
+#: builtins/set.def:782
 msgid "cannot simultaneously unset a function and a variable"
 msgstr "cannot simultaneously unset a function and a variable"
 
 msgid "cannot simultaneously unset a function and a variable"
 msgstr "cannot simultaneously unset a function and a variable"
 
-#: builtins/set.def:808
+#: builtins/set.def:826
 #, c-format
 msgid "%s: cannot unset"
 msgstr "%s: cannot unset"
 
 #, c-format
 msgid "%s: cannot unset"
 msgstr "%s: cannot unset"
 
-#: builtins/set.def:815
+#: builtins/set.def:843
 #, c-format
 msgid "%s: cannot unset: readonly %s"
 msgstr "%s: cannot unset: readonly %s"
 
 #, c-format
 msgid "%s: cannot unset: readonly %s"
 msgstr "%s: cannot unset: readonly %s"
 
-#: builtins/set.def:826
+#: builtins/set.def:854
 #, c-format
 msgid "%s: not an array variable"
 msgstr "%s: not an array variable"
 
 #, c-format
 msgid "%s: not an array variable"
 msgstr "%s: not an array variable"
 
-#: builtins/setattr.def:186
+#: builtins/setattr.def:187
 #, c-format
 msgid "%s: not a function"
 msgstr "%s: not a function"
 #, c-format
 msgid "%s: not a function"
 msgstr "%s: not a function"
@@ -791,11 +826,11 @@ msgstr "%s: not a function"
 msgid "shift count"
 msgstr "shift count"
 
 msgid "shift count"
 msgstr "shift count"
 
-#: builtins/shopt.def:264
+#: builtins/shopt.def:279
 msgid "cannot set and unset shell options simultaneously"
 msgstr "cannot set and unset shell options simultaneously"
 
 msgid "cannot set and unset shell options simultaneously"
 msgstr "cannot set and unset shell options simultaneously"
 
-#: builtins/shopt.def:329
+#: builtins/shopt.def:346
 #, c-format
 msgid "%s: invalid shell option name"
 msgstr "%s: invalid shell option name"
 #, c-format
 msgid "%s: invalid shell option name"
 msgstr "%s: invalid shell option name"
@@ -837,7 +872,7 @@ msgstr "%s is a function\n"
 msgid "%s is a shell builtin\n"
 msgstr "%s is a shell builtin\n"
 
 msgid "%s is a shell builtin\n"
 msgstr "%s is a shell builtin\n"
 
-#: builtins/type.def:317 builtins/type.def:391
+#: builtins/type.def:317 builtins/type.def:393
 #, c-format
 msgid "%s is %s\n"
 msgstr "%s is %s\n"
 #, c-format
 msgid "%s is %s\n"
 msgstr "%s is %s\n"
@@ -847,45 +882,45 @@ msgstr "%s is %s\n"
 msgid "%s is hashed (%s)\n"
 msgstr "%s is hashed (%s)\n"
 
 msgid "%s is hashed (%s)\n"
 msgstr "%s is hashed (%s)\n"
 
-#: builtins/ulimit.def:376
+#: builtins/ulimit.def:383
 #, c-format
 msgid "%s: invalid limit argument"
 msgstr "%s: invalid limit argument"
 
 #, c-format
 msgid "%s: invalid limit argument"
 msgstr "%s: invalid limit argument"
 
-#: builtins/ulimit.def:402
+#: builtins/ulimit.def:409
 #, c-format
 msgid "`%c': bad command"
 msgstr "‘\e[1m%c\e[0m’: bad command"
 
 #, c-format
 msgid "`%c': bad command"
 msgstr "‘\e[1m%c\e[0m’: bad command"
 
-#: builtins/ulimit.def:431
+#: builtins/ulimit.def:438
 #, c-format
 msgid "%s: cannot get limit: %s"
 msgstr "%s: cannot get limit: %s"
 
 #, c-format
 msgid "%s: cannot get limit: %s"
 msgstr "%s: cannot get limit: %s"
 
-#: builtins/ulimit.def:457
+#: builtins/ulimit.def:464
 msgid "limit"
 msgstr "limit"
 
 msgid "limit"
 msgstr "limit"
 
-#: builtins/ulimit.def:469 builtins/ulimit.def:769
+#: builtins/ulimit.def:476 builtins/ulimit.def:776
 #, c-format
 msgid "%s: cannot modify limit: %s"
 msgstr "%s: cannot modify limit: %s"
 
 #, c-format
 msgid "%s: cannot modify limit: %s"
 msgstr "%s: cannot modify limit: %s"
 
-#: builtins/umask.def:118
+#: builtins/umask.def:114
 msgid "octal number"
 msgstr "octal number"
 
 msgid "octal number"
 msgstr "octal number"
 
-#: builtins/umask.def:231
+#: builtins/umask.def:227
 #, c-format
 msgid "`%c': invalid symbolic mode operator"
 msgstr "‘\e[1m%c\e[0m’: invalid symbolic mode operator"
 
 #, c-format
 msgid "`%c': invalid symbolic mode operator"
 msgstr "‘\e[1m%c\e[0m’: invalid symbolic mode operator"
 
-#: builtins/umask.def:286
+#: builtins/umask.def:282
 #, c-format
 msgid "`%c': invalid symbolic mode character"
 msgstr "‘\e[1m%c\e[0m’: invalid symbolic mode character"
 
 #, c-format
 msgid "`%c': invalid symbolic mode character"
 msgstr "‘\e[1m%c\e[0m’: invalid symbolic mode character"
 
-#: error.c:90 error.c:321 error.c:323 error.c:325
+#: error.c:90 error.c:325 error.c:327 error.c:329
 msgid " line "
 msgstr " line "
 
 msgid " line "
 msgstr " line "
 
@@ -899,298 +934,313 @@ msgstr "last command: %s\n"
 msgid "Aborting..."
 msgstr "Aborting..."
 
 msgid "Aborting..."
 msgstr "Aborting..."
 
-#: error.c:406
+#: error.c:440
 msgid "unknown command error"
 msgstr "unknown command error"
 
 msgid "unknown command error"
 msgstr "unknown command error"
 
-#: error.c:407
+#: error.c:441
 msgid "bad command type"
 msgstr "bad command type"
 
 msgid "bad command type"
 msgstr "bad command type"
 
-#: error.c:408
+#: error.c:442
 msgid "bad connector"
 msgstr "bad connector"
 
 msgid "bad connector"
 msgstr "bad connector"
 
-#: error.c:409
+#: error.c:443
 msgid "bad jump"
 msgstr "bad jump"
 
 msgid "bad jump"
 msgstr "bad jump"
 
-#: error.c:447
+#: error.c:481
 #, c-format
 msgid "%s: unbound variable"
 msgstr "%s: unbound variable"
 
 #, c-format
 msgid "%s: unbound variable"
 msgstr "%s: unbound variable"
 
-#: eval.c:181
+#: eval.c:189
 #, c-format
 msgid "\atimed out waiting for input: auto-logout\n"
 msgstr "\atimed out waiting for input: auto-logout\n"
 
 #, c-format
 msgid "\atimed out waiting for input: auto-logout\n"
 msgstr "\atimed out waiting for input: auto-logout\n"
 
-#: execute_cmd.c:504
+#: execute_cmd.c:512
 #, c-format
 msgid "cannot redirect standard input from /dev/null: %s"
 msgstr "cannot redirect standard input from /dev/null: %s"
 
 #, c-format
 msgid "cannot redirect standard input from /dev/null: %s"
 msgstr "cannot redirect standard input from /dev/null: %s"
 
-#: execute_cmd.c:1168
+#: execute_cmd.c:1233
 #, c-format
 msgid "TIMEFORMAT: `%c': invalid format character"
 msgstr "TIMEFORMAT: ‘\e[1m%c\e[0m’: invalid format character"
 
 #, c-format
 msgid "TIMEFORMAT: `%c': invalid format character"
 msgstr "TIMEFORMAT: ‘\e[1m%c\e[0m’: invalid format character"
 
-#: execute_cmd.c:2121
+#: execute_cmd.c:2287
 msgid "pipe error"
 msgstr "pipe error"
 
 msgid "pipe error"
 msgstr "pipe error"
 
-#: execute_cmd.c:4640
+#: execute_cmd.c:4386
+#, c-format
+msgid "%s: maximum function nesting level exceeded (%d)"
+msgstr "%s: maximum function nesting level exceeded (%d)"
+
+#: execute_cmd.c:4884
 #, c-format
 msgid "%s: restricted: cannot specify `/' in command names"
 msgstr "%s: restricted: cannot specify ‘\e[1m/\e[0m’ in command names"
 
 #, c-format
 msgid "%s: restricted: cannot specify `/' in command names"
 msgstr "%s: restricted: cannot specify ‘\e[1m/\e[0m’ in command names"
 
-#: execute_cmd.c:4735
+#: execute_cmd.c:4973
 #, c-format
 msgid "%s: command not found"
 msgstr "%s: command not found"
 
 #, c-format
 msgid "%s: command not found"
 msgstr "%s: command not found"
 
-#: execute_cmd.c:4959
+#: execute_cmd.c:5206
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
-#: execute_cmd.c:4995
+#: execute_cmd.c:5243
 #, c-format
 msgid "%s: %s: bad interpreter"
 msgstr "%s: %s: bad interpreter"
 
 #, c-format
 msgid "%s: %s: bad interpreter"
 msgstr "%s: %s: bad interpreter"
 
-#: execute_cmd.c:5144
+#: execute_cmd.c:5280
+#, c-format
+msgid "%s: cannot execute binary file: %s"
+msgstr "%s: cannot execute binary file: %s"
+
+#: execute_cmd.c:5352
+#, c-format
+msgid "`%s': is a special builtin"
+msgstr "‘\e[1m%s\e[0m’: is a special builtin"
+
+#: execute_cmd.c:5404
 #, c-format
 msgid "cannot duplicate fd %d to fd %d"
 msgstr "cannot duplicate fd %d to fd %d"
 
 #, c-format
 msgid "cannot duplicate fd %d to fd %d"
 msgstr "cannot duplicate fd %d to fd %d"
 
-#: expr.c:256
+#: expr.c:259
 msgid "expression recursion level exceeded"
 msgstr "expression recursion level exceeded"
 
 msgid "expression recursion level exceeded"
 msgstr "expression recursion level exceeded"
 
-#: expr.c:280
+#: expr.c:283
 msgid "recursion stack underflow"
 msgstr "recursion stack underflow"
 
 msgid "recursion stack underflow"
 msgstr "recursion stack underflow"
 
-#: expr.c:422
+#: expr.c:431
 msgid "syntax error in expression"
 msgstr "syntax error in expression"
 
 msgid "syntax error in expression"
 msgstr "syntax error in expression"
 
-#: expr.c:463
+#: expr.c:475
 msgid "attempted assignment to non-variable"
 msgstr "attempted assignment to non-variable"
 
 msgid "attempted assignment to non-variable"
 msgstr "attempted assignment to non-variable"
 
-#: expr.c:486 expr.c:491 expr.c:807
+#: expr.c:495 expr.c:858
 msgid "division by 0"
 msgstr "division by 0"
 
 msgid "division by 0"
 msgstr "division by 0"
 
-#: expr.c:517
+#: expr.c:542
 msgid "bug: bad expassign token"
 msgstr "bug: bad expassign token"
 
 msgid "bug: bad expassign token"
 msgstr "bug: bad expassign token"
 
-#: expr.c:564
+#: expr.c:595
 msgid "`:' expected for conditional expression"
 msgstr "‘\e[1m:\e[0m’ expected for conditional expression"
 
 msgid "`:' expected for conditional expression"
 msgstr "‘\e[1m:\e[0m’ expected for conditional expression"
 
-#: expr.c:832
+#: expr.c:919
 msgid "exponent less than 0"
 msgstr "exponent less than 0"
 
 msgid "exponent less than 0"
 msgstr "exponent less than 0"
 
-#: expr.c:887
+#: expr.c:976
 msgid "identifier expected after pre-increment or pre-decrement"
 msgstr "identifier expected after pre-increment or pre-decrement"
 
 msgid "identifier expected after pre-increment or pre-decrement"
 msgstr "identifier expected after pre-increment or pre-decrement"
 
-#: expr.c:910
+#: expr.c:1002
 msgid "missing `)'"
 msgstr "missing ‘\e[1m)\e[0m’"
 
 msgid "missing `)'"
 msgstr "missing ‘\e[1m)\e[0m’"
 
-#: expr.c:959 expr.c:1282
+#: expr.c:1053 expr.c:1390
 msgid "syntax error: operand expected"
 msgstr "syntax error: operand expected"
 
 msgid "syntax error: operand expected"
 msgstr "syntax error: operand expected"
 
-#: expr.c:1284
+#: expr.c:1392
 msgid "syntax error: invalid arithmetic operator"
 msgstr "syntax error: invalid arithmetic operator"
 
 msgid "syntax error: invalid arithmetic operator"
 msgstr "syntax error: invalid arithmetic operator"
 
-#: expr.c:1308
+#: expr.c:1416
 #, c-format
 msgid "%s%s%s: %s (error token is \"%s\")"
 msgstr "%s%s%s: %s (error token is “\e[1m%s\e[0m”)"
 
 #, c-format
 msgid "%s%s%s: %s (error token is \"%s\")"
 msgstr "%s%s%s: %s (error token is “\e[1m%s\e[0m”)"
 
-#: expr.c:1366
+#: expr.c:1474
 msgid "invalid arithmetic base"
 msgstr "invalid arithmetic base"
 
 msgid "invalid arithmetic base"
 msgstr "invalid arithmetic base"
 
-#: expr.c:1386
+#: expr.c:1494
 msgid "value too great for base"
 msgstr "value too great for base"
 
 msgid "value too great for base"
 msgstr "value too great for base"
 
-#: expr.c:1435
+#: expr.c:1543
 #, c-format
 msgid "%s: expression error\n"
 msgstr "%s: expression error\n"
 
 #, c-format
 msgid "%s: expression error\n"
 msgstr "%s: expression error\n"
 
-#: general.c:61
+#: general.c:62
 msgid "getcwd: cannot access parent directories"
 msgstr "getcwd: cannot access parent directories"
 
 msgid "getcwd: cannot access parent directories"
 msgstr "getcwd: cannot access parent directories"
 
-#: input.c:94 subst.c:5082
+#: input.c:102 subst.c:5168
 #, c-format
 msgid "cannot reset nodelay mode for fd %d"
 msgstr "cannot reset nodelay mode for fd %d"
 
 #, c-format
 msgid "cannot reset nodelay mode for fd %d"
 msgstr "cannot reset nodelay mode for fd %d"
 
-#: input.c:260
+#: input.c:271
 #, c-format
 msgid "cannot allocate new file descriptor for bash input from fd %d"
 msgstr "cannot allocate new file descriptor for bash input from fd %d"
 
 #, c-format
 msgid "cannot allocate new file descriptor for bash input from fd %d"
 msgstr "cannot allocate new file descriptor for bash input from fd %d"
 
-#: input.c:268
+#: input.c:279
 #, c-format
 msgid "save_bash_input: buffer already exists for new fd %d"
 msgstr "save_bash_input: buffer already exists for new fd %d"
 
 #, c-format
 msgid "save_bash_input: buffer already exists for new fd %d"
 msgstr "save_bash_input: buffer already exists for new fd %d"
 
-#: jobs.c:468
+#: jobs.c:471
 msgid "start_pipeline: pgrp pipe"
 msgstr "start_pipeline: pgrp pipe"
 
 msgid "start_pipeline: pgrp pipe"
 msgstr "start_pipeline: pgrp pipe"
 
-#: jobs.c:889
+#: jobs.c:893
 #, c-format
 msgid "forked pid %d appears in running job %d"
 msgstr "forked pid %d appears in running job %d"
 
 #, c-format
 msgid "forked pid %d appears in running job %d"
 msgstr "forked pid %d appears in running job %d"
 
-#: jobs.c:1007
+#: jobs.c:1012
 #, c-format
 msgid "deleting stopped job %d with process group %ld"
 msgstr "deleting stopped job %d with process group %ld"
 
 #, c-format
 msgid "deleting stopped job %d with process group %ld"
 msgstr "deleting stopped job %d with process group %ld"
 
-#: jobs.c:1112
+#: jobs.c:1117
 #, c-format
 msgid "add_process: process %5ld (%s) in the_pipeline"
 msgstr "add_process: process %5ld (%s) in the_pipeline"
 
 #, c-format
 msgid "add_process: process %5ld (%s) in the_pipeline"
 msgstr "add_process: process %5ld (%s) in the_pipeline"
 
-#: jobs.c:1115
+#: jobs.c:1120
 #, c-format
 msgid "add_process: pid %5ld (%s) marked as still alive"
 msgstr "add_process: pid %5ld (%s) marked as still alive"
 
 #, c-format
 msgid "add_process: pid %5ld (%s) marked as still alive"
 msgstr "add_process: pid %5ld (%s) marked as still alive"
 
-#: jobs.c:1430
+#: jobs.c:1435
 #, c-format
 msgid "describe_pid: %ld: no such pid"
 msgstr "describe_pid: %ld: no such pid"
 
 #, c-format
 msgid "describe_pid: %ld: no such pid"
 msgstr "describe_pid: %ld: no such pid"
 
-#: jobs.c:1445
+#: jobs.c:1450
 #, c-format
 msgid "Signal %d"
 msgstr "Signal %d"
 
 #, c-format
 msgid "Signal %d"
 msgstr "Signal %d"
 
-#: jobs.c:1459 jobs.c:1484
+#: jobs.c:1464 jobs.c:1489
 msgid "Done"
 msgstr "Done"
 
 msgid "Done"
 msgstr "Done"
 
-#: jobs.c:1464 siglist.c:123
+#: jobs.c:1469 siglist.c:123
 msgid "Stopped"
 msgstr "Stopped"
 
 msgid "Stopped"
 msgstr "Stopped"
 
-#: jobs.c:1468
+#: jobs.c:1473
 #, c-format
 msgid "Stopped(%s)"
 msgstr "Stopped(%s)"
 
 #, c-format
 msgid "Stopped(%s)"
 msgstr "Stopped(%s)"
 
-#: jobs.c:1472
+#: jobs.c:1477
 msgid "Running"
 msgstr "Running"
 
 msgid "Running"
 msgstr "Running"
 
-#: jobs.c:1486
+#: jobs.c:1491
 #, c-format
 msgid "Done(%d)"
 msgstr "Done(%d)"
 
 #, c-format
 msgid "Done(%d)"
 msgstr "Done(%d)"
 
-#: jobs.c:1488
+#: jobs.c:1493
 #, c-format
 msgid "Exit %d"
 msgstr "Exit %d"
 
 #, c-format
 msgid "Exit %d"
 msgstr "Exit %d"
 
-#: jobs.c:1491
+#: jobs.c:1496
 msgid "Unknown status"
 msgstr "Unknown status"
 
 msgid "Unknown status"
 msgstr "Unknown status"
 
-#: jobs.c:1578
+#: jobs.c:1583
 #, c-format
 msgid "(core dumped) "
 msgstr "(core dumped) "
 
 #, c-format
 msgid "(core dumped) "
 msgstr "(core dumped) "
 
-#: jobs.c:1597
+#: jobs.c:1602
 #, c-format
 msgid "  (wd: %s)"
 msgstr "  (wd: %s)"
 
 #, c-format
 msgid "  (wd: %s)"
 msgstr "  (wd: %s)"
 
-#: jobs.c:1805
+#: jobs.c:1819
 #, c-format
 msgid "child setpgid (%ld to %ld)"
 msgstr "child setpgid (%ld to %ld)"
 
 #, c-format
 msgid "child setpgid (%ld to %ld)"
 msgstr "child setpgid (%ld to %ld)"
 
-#: jobs.c:2133 nojobs.c:585
+#: jobs.c:2138 nojobs.c:605
 #, c-format
 msgid "wait: pid %ld is not a child of this shell"
 msgstr "wait: pid %ld is not a child of this shell"
 
 #, c-format
 msgid "wait: pid %ld is not a child of this shell"
 msgstr "wait: pid %ld is not a child of this shell"
 
-#: jobs.c:2360
+#: jobs.c:2385
 #, c-format
 msgid "wait_for: No record of process %ld"
 msgstr "wait_for: No record of process %ld"
 
 #, c-format
 msgid "wait_for: No record of process %ld"
 msgstr "wait_for: No record of process %ld"
 
-#: jobs.c:2637
+#: jobs.c:2694
 #, c-format
 msgid "wait_for_job: job %d is stopped"
 msgstr "wait_for_job: job %d is stopped"
 
 #, c-format
 msgid "wait_for_job: job %d is stopped"
 msgstr "wait_for_job: job %d is stopped"
 
-#: jobs.c:2859
+#: jobs.c:2986
 #, c-format
 msgid "%s: job has terminated"
 msgstr "%s: job has terminated"
 
 #, c-format
 msgid "%s: job has terminated"
 msgstr "%s: job has terminated"
 
-#: jobs.c:2868
+#: jobs.c:2995
 #, c-format
 msgid "%s: job %d already in background"
 msgstr "%s: job %d already in background"
 
 #, c-format
 msgid "%s: job %d already in background"
 msgstr "%s: job %d already in background"
 
-#: jobs.c:3089
+#: jobs.c:3220
 msgid "waitchld: turning on WNOHANG to avoid indefinite block"
 msgstr "waitchld: turning on WNOHANG to avoid indefinite block"
 
 msgid "waitchld: turning on WNOHANG to avoid indefinite block"
 msgstr "waitchld: turning on WNOHANG to avoid indefinite block"
 
-#: jobs.c:3538
+#: jobs.c:3711
 #, c-format
 msgid "%s: line %d: "
 msgstr "%s: line %d: "
 
 #, c-format
 msgid "%s: line %d: "
 msgstr "%s: line %d: "
 
-#: jobs.c:3552 nojobs.c:814
+#: jobs.c:3725 nojobs.c:843
 #, c-format
 msgid " (core dumped)"
 msgstr " (core dumped)"
 
 #, c-format
 msgid " (core dumped)"
 msgstr " (core dumped)"
 
-#: jobs.c:3564 jobs.c:3577
+#: jobs.c:3737 jobs.c:3750
 #, c-format
 msgid "(wd now: %s)\n"
 msgstr "(wd now: %s)\n"
 
 #, c-format
 msgid "(wd now: %s)\n"
 msgstr "(wd now: %s)\n"
 
-#: jobs.c:3609
+#: jobs.c:3782
 msgid "initialize_job_control: getpgrp failed"
 msgstr "initialize_job_control: getpgrp failed"
 
 msgid "initialize_job_control: getpgrp failed"
 msgstr "initialize_job_control: getpgrp failed"
 
-#: jobs.c:3669
+#: jobs.c:3843
 msgid "initialize_job_control: line discipline"
 msgstr "initialize_job_control: line discipline"
 
 msgid "initialize_job_control: line discipline"
 msgstr "initialize_job_control: line discipline"
 
-#: jobs.c:3679
+#: jobs.c:3853
 msgid "initialize_job_control: setpgid"
 msgstr "initialize_job_control: setpgid"
 
 msgid "initialize_job_control: setpgid"
 msgstr "initialize_job_control: setpgid"
 
-#: jobs.c:3707
+#: jobs.c:3874 jobs.c:3883
 #, c-format
 msgid "cannot set terminal process group (%d)"
 msgstr "cannot set terminal process group (%d)"
 
 #, c-format
 msgid "cannot set terminal process group (%d)"
 msgstr "cannot set terminal process group (%d)"
 
-#: jobs.c:3712
+#: jobs.c:3888
 msgid "no job control in this shell"
 msgstr "no job control in this shell"
 
 msgid "no job control in this shell"
 msgstr "no job control in this shell"
 
@@ -1212,54 +1262,54 @@ msgstr ""
 msgid "unknown"
 msgstr "unknown"
 
 msgid "unknown"
 msgstr "unknown"
 
-#: lib/malloc/malloc.c:797
+#: lib/malloc/malloc.c:801
 msgid "malloc: block on free list clobbered"
 msgstr "malloc: block on free list clobbered"
 
 msgid "malloc: block on free list clobbered"
 msgstr "malloc: block on free list clobbered"
 
-#: lib/malloc/malloc.c:874
+#: lib/malloc/malloc.c:878
 msgid "free: called with already freed block argument"
 msgstr "free: called with already freed block argument"
 
 msgid "free: called with already freed block argument"
 msgstr "free: called with already freed block argument"
 
-#: lib/malloc/malloc.c:877
+#: lib/malloc/malloc.c:881
 msgid "free: called with unallocated block argument"
 msgstr "free: called with unallocated block argument"
 
 msgid "free: called with unallocated block argument"
 msgstr "free: called with unallocated block argument"
 
-#: lib/malloc/malloc.c:896
+#: lib/malloc/malloc.c:900
 msgid "free: underflow detected; mh_nbytes out of range"
 msgstr "free: underflow detected; mh_nbytes out of range"
 
 msgid "free: underflow detected; mh_nbytes out of range"
 msgstr "free: underflow detected; mh_nbytes out of range"
 
-#: lib/malloc/malloc.c:902
+#: lib/malloc/malloc.c:906
 msgid "free: start and end chunk sizes differ"
 msgstr "free: start and end chunk sizes differ"
 
 msgid "free: start and end chunk sizes differ"
 msgstr "free: start and end chunk sizes differ"
 
-#: lib/malloc/malloc.c:1001
+#: lib/malloc/malloc.c:1005
 msgid "realloc: called with unallocated block argument"
 msgstr "realloc: called with unallocated block argument"
 
 msgid "realloc: called with unallocated block argument"
 msgstr "realloc: called with unallocated block argument"
 
-#: lib/malloc/malloc.c:1016
+#: lib/malloc/malloc.c:1020
 msgid "realloc: underflow detected; mh_nbytes out of range"
 msgstr "realloc: underflow detected; mh_nbytes out of range"
 
 msgid "realloc: underflow detected; mh_nbytes out of range"
 msgstr "realloc: underflow detected; mh_nbytes out of range"
 
-#: lib/malloc/malloc.c:1022
+#: lib/malloc/malloc.c:1026
 msgid "realloc: start and end chunk sizes differ"
 msgstr "realloc: start and end chunk sizes differ"
 
 msgid "realloc: start and end chunk sizes differ"
 msgstr "realloc: start and end chunk sizes differ"
 
-#: lib/malloc/table.c:177
+#: lib/malloc/table.c:194
 #, c-format
 msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
 msgstr "register_alloc: alloc table is full with FIND_ALLOC?\n"
 
 #, c-format
 msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
 msgstr "register_alloc: alloc table is full with FIND_ALLOC?\n"
 
-#: lib/malloc/table.c:184
+#: lib/malloc/table.c:203
 #, c-format
 msgid "register_alloc: %p already in table as allocated?\n"
 msgstr "register_alloc: %p already in table as allocated?\n"
 
 #, c-format
 msgid "register_alloc: %p already in table as allocated?\n"
 msgstr "register_alloc: %p already in table as allocated?\n"
 
-#: lib/malloc/table.c:220
+#: lib/malloc/table.c:256
 #, c-format
 msgid "register_free: %p already in table as free?\n"
 msgstr "register_free: %p already in table as free?\n"
 
 #, c-format
 msgid "register_free: %p already in table as free?\n"
 msgstr "register_free: %p already in table as free?\n"
 
-#: lib/sh/fmtulong.c:101
+#: lib/sh/fmtulong.c:102
 msgid "invalid base"
 msgstr "invalid base"
 
 msgid "invalid base"
 msgstr "invalid base"
 
@@ -1282,35 +1332,35 @@ msgstr "%s: bad network path specification"
 msgid "network operations not supported"
 msgstr "network operations not supported"
 
 msgid "network operations not supported"
 msgstr "network operations not supported"
 
-#: locale.c:192
+#: locale.c:200
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s)"
 msgstr "setlocale: LC_ALL: cannot change locale (%s)"
 
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s)"
 msgstr "setlocale: LC_ALL: cannot change locale (%s)"
 
-#: locale.c:194
+#: locale.c:202
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
 msgstr "setlocale: LC_ALL: cannot change locale (%s): %s"
 
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
 msgstr "setlocale: LC_ALL: cannot change locale (%s): %s"
 
-#: locale.c:247
+#: locale.c:259
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s)"
 msgstr "setlocale: %s: cannot change locale (%s)"
 
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s)"
 msgstr "setlocale: %s: cannot change locale (%s)"
 
-#: locale.c:249
+#: locale.c:261
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s): %s"
 msgstr "setlocale: %s: cannot change locale (%s): %s"
 
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s): %s"
 msgstr "setlocale: %s: cannot change locale (%s): %s"
 
-#: mailcheck.c:433
+#: mailcheck.c:439
 msgid "You have mail in $_"
 msgstr "You have mail in $_"
 
 msgid "You have mail in $_"
 msgstr "You have mail in $_"
 
-#: mailcheck.c:458
+#: mailcheck.c:464
 msgid "You have new mail in $_"
 msgstr "You have new mail in $_"
 
 msgid "You have new mail in $_"
 msgstr "You have new mail in $_"
 
-#: mailcheck.c:474
+#: mailcheck.c:480
 #, c-format
 msgid "The mail in %s has been read\n"
 msgstr "The mail in %s has been read\n"
 #, c-format
 msgid "The mail in %s has been read\n"
 msgstr "The mail in %s has been read\n"
@@ -1328,118 +1378,118 @@ msgstr "syntax error: ‘\e[1m;\e[0m’ unexpected"
 msgid "syntax error: `((%s))'"
 msgstr "syntax error: ‘\e[1m((%s))\e[0m’"
 
 msgid "syntax error: `((%s))'"
 msgstr "syntax error: ‘\e[1m((%s))\e[0m’"
 
-#: make_cmd.c:575
+#: make_cmd.c:578
 #, c-format
 msgid "make_here_document: bad instruction type %d"
 msgstr "make_here_document: bad instruction type %d"
 
 #, c-format
 msgid "make_here_document: bad instruction type %d"
 msgstr "make_here_document: bad instruction type %d"
 
-#: make_cmd.c:659
+#: make_cmd.c:662
 #, c-format
 msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
 msgstr "here-document at line %d delimited by end-of-file (wanted ‘\e[1m%s\e[0m’)"
 
 #, c-format
 msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
 msgstr "here-document at line %d delimited by end-of-file (wanted ‘\e[1m%s\e[0m’)"
 
-#: make_cmd.c:756
+#: make_cmd.c:759
 #, c-format
 msgid "make_redirection: redirection instruction `%d' out of range"
 msgstr "make_redirection: redirection instruction ‘\e[1m%d\e[0m’ out of range"
 
 #, c-format
 msgid "make_redirection: redirection instruction `%d' out of range"
 msgstr "make_redirection: redirection instruction ‘\e[1m%d\e[0m’ out of range"
 
-#: parse.y:3173 parse.y:3444
+#: parse.y:3278 parse.y:3561
 #, c-format
 msgid "unexpected EOF while looking for matching `%c'"
 msgstr "unexpected EOF while looking for matching ‘\e[1m%c\e[0m’"
 
 #, c-format
 msgid "unexpected EOF while looking for matching `%c'"
 msgstr "unexpected EOF while looking for matching ‘\e[1m%c\e[0m’"
 
-#: parse.y:4025
+#: parse.y:4170
 msgid "unexpected EOF while looking for `]]'"
 msgstr "unexpected EOF while looking for ‘\e[1m]]\e[0m’"
 
 msgid "unexpected EOF while looking for `]]'"
 msgstr "unexpected EOF while looking for ‘\e[1m]]\e[0m’"
 
-#: parse.y:4030
+#: parse.y:4175
 #, c-format
 msgid "syntax error in conditional expression: unexpected token `%s'"
 msgstr "syntax error in conditional expression: unexpected token ‘\e[1m%s\e[0m’"
 
 #, c-format
 msgid "syntax error in conditional expression: unexpected token `%s'"
 msgstr "syntax error in conditional expression: unexpected token ‘\e[1m%s\e[0m’"
 
-#: parse.y:4034
+#: parse.y:4179
 msgid "syntax error in conditional expression"
 msgstr "syntax error in conditional expression"
 
 msgid "syntax error in conditional expression"
 msgstr "syntax error in conditional expression"
 
-#: parse.y:4112
+#: parse.y:4257
 #, c-format
 msgid "unexpected token `%s', expected `)'"
 msgstr "unexpected token ‘\e[1m%s\e[0m’, expected ‘\e[1m)\e[0m’"
 
 #, c-format
 msgid "unexpected token `%s', expected `)'"
 msgstr "unexpected token ‘\e[1m%s\e[0m’, expected ‘\e[1m)\e[0m’"
 
-#: parse.y:4116
+#: parse.y:4261
 msgid "expected `)'"
 msgstr "expected ‘\e[1m)\e[0m’"
 
 msgid "expected `)'"
 msgstr "expected ‘\e[1m)\e[0m’"
 
-#: parse.y:4144
+#: parse.y:4289
 #, c-format
 msgid "unexpected argument `%s' to conditional unary operator"
 msgstr "unexpected argument ‘\e[1m%s\e[0m’ to conditional unary operator"
 
 #, c-format
 msgid "unexpected argument `%s' to conditional unary operator"
 msgstr "unexpected argument ‘\e[1m%s\e[0m’ to conditional unary operator"
 
-#: parse.y:4148
+#: parse.y:4293
 msgid "unexpected argument to conditional unary operator"
 msgstr "unexpected argument to conditional unary operator"
 
 msgid "unexpected argument to conditional unary operator"
 msgstr "unexpected argument to conditional unary operator"
 
-#: parse.y:4194
+#: parse.y:4339
 #, c-format
 msgid "unexpected token `%s', conditional binary operator expected"
 msgstr "unexpected token ‘\e[1m%s\e[0m’, conditional binary operator expected"
 
 #, c-format
 msgid "unexpected token `%s', conditional binary operator expected"
 msgstr "unexpected token ‘\e[1m%s\e[0m’, conditional binary operator expected"
 
-#: parse.y:4198
+#: parse.y:4343
 msgid "conditional binary operator expected"
 msgstr "conditional binary operator expected"
 
 msgid "conditional binary operator expected"
 msgstr "conditional binary operator expected"
 
-#: parse.y:4220
+#: parse.y:4365
 #, c-format
 msgid "unexpected argument `%s' to conditional binary operator"
 msgstr "unexpected argument ‘\e[1m%s\e[0m’ to conditional binary operator"
 
 #, c-format
 msgid "unexpected argument `%s' to conditional binary operator"
 msgstr "unexpected argument ‘\e[1m%s\e[0m’ to conditional binary operator"
 
-#: parse.y:4224
+#: parse.y:4369
 msgid "unexpected argument to conditional binary operator"
 msgstr "unexpected argument to conditional binary operator"
 
 msgid "unexpected argument to conditional binary operator"
 msgstr "unexpected argument to conditional binary operator"
 
-#: parse.y:4235
+#: parse.y:4380
 #, c-format
 msgid "unexpected token `%c' in conditional command"
 msgstr "unexpected token ‘\e[1m%c\e[0m’ in conditional command"
 
 #, c-format
 msgid "unexpected token `%c' in conditional command"
 msgstr "unexpected token ‘\e[1m%c\e[0m’ in conditional command"
 
-#: parse.y:4238
+#: parse.y:4383
 #, c-format
 msgid "unexpected token `%s' in conditional command"
 msgstr "unexpected token ‘\e[1m%s\e[0m’ in conditional command"
 
 #, c-format
 msgid "unexpected token `%s' in conditional command"
 msgstr "unexpected token ‘\e[1m%s\e[0m’ in conditional command"
 
-#: parse.y:4242
+#: parse.y:4387
 #, c-format
 msgid "unexpected token %d in conditional command"
 msgstr "unexpected token %d in conditional command"
 
 #, c-format
 msgid "unexpected token %d in conditional command"
 msgstr "unexpected token %d in conditional command"
 
-#: parse.y:5566
+#: parse.y:5737
 #, c-format
 msgid "syntax error near unexpected token `%s'"
 msgstr "syntax error near unexpected token ‘\e[1m%s\e[0m’"
 
 #, c-format
 msgid "syntax error near unexpected token `%s'"
 msgstr "syntax error near unexpected token ‘\e[1m%s\e[0m’"
 
-#: parse.y:5584
+#: parse.y:5755
 #, c-format
 msgid "syntax error near `%s'"
 msgstr "syntax error near ‘\e[1m%s\e[0m’"
 
 #, c-format
 msgid "syntax error near `%s'"
 msgstr "syntax error near ‘\e[1m%s\e[0m’"
 
-#: parse.y:5594
+#: parse.y:5765
 msgid "syntax error: unexpected end of file"
 msgstr "syntax error: unexpected end of file"
 
 msgid "syntax error: unexpected end of file"
 msgstr "syntax error: unexpected end of file"
 
-#: parse.y:5594
+#: parse.y:5765
 msgid "syntax error"
 msgstr "syntax error"
 
 msgid "syntax error"
 msgstr "syntax error"
 
-#: parse.y:5656
+#: parse.y:5827
 #, c-format
 msgid "Use \"%s\" to leave the shell.\n"
 msgstr "Use “\e[1m%s\e[0m” to leave the shell.\n"
 
 #, c-format
 msgid "Use \"%s\" to leave the shell.\n"
 msgstr "Use “\e[1m%s\e[0m” to leave the shell.\n"
 
-#: parse.y:5818
+#: parse.y:5989
 msgid "unexpected EOF while looking for matching `)'"
 msgstr "unexpected EOF while looking for matching ‘\e[1m)\e[0m’"
 
 msgid "unexpected EOF while looking for matching `)'"
 msgstr "unexpected EOF while looking for matching ‘\e[1m)\e[0m’"
 
-#: pcomplete.c:1030
+#: pcomplete.c:1094
 #, c-format
 msgid "completion: function `%s' not found"
 msgstr "completion: function ‘\e[1m%s\e[0m’ not found"
 #, c-format
 msgid "completion: function `%s' not found"
 msgstr "completion: function ‘\e[1m%s\e[0m’ not found"
@@ -1449,90 +1499,90 @@ msgstr "completion: function ‘\e[1m%s\e[0m’ not found"
 msgid "progcomp_insert: %s: NULL COMPSPEC"
 msgstr "progcomp_insert: %s: NULL COMPSPEC"
 
 msgid "progcomp_insert: %s: NULL COMPSPEC"
 msgstr "progcomp_insert: %s: NULL COMPSPEC"
 
-#: print_cmd.c:296
+#: print_cmd.c:300
 #, c-format
 msgid "print_command: bad connector `%d'"
 msgstr "print_command: bad connector ‘\e[1m%d\e[0m’"
 
 #, c-format
 msgid "print_command: bad connector `%d'"
 msgstr "print_command: bad connector ‘\e[1m%d\e[0m’"
 
-#: print_cmd.c:368
+#: print_cmd.c:373
 #, c-format
 msgid "xtrace_set: %d: invalid file descriptor"
 msgstr "xtrace_set: %d: invalid file descriptor"
 
 #, c-format
 msgid "xtrace_set: %d: invalid file descriptor"
 msgstr "xtrace_set: %d: invalid file descriptor"
 
-#: print_cmd.c:373
+#: print_cmd.c:378
 msgid "xtrace_set: NULL file pointer"
 msgstr "xtrace_set: NULL file pointer"
 
 msgid "xtrace_set: NULL file pointer"
 msgstr "xtrace_set: NULL file pointer"
 
-#: print_cmd.c:377
+#: print_cmd.c:382
 #, c-format
 msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
 msgstr "xtrace fd (%d) != fileno xtrace fp (%d)"
 
 #, c-format
 msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
 msgstr "xtrace fd (%d) != fileno xtrace fp (%d)"
 
-#: print_cmd.c:1478
+#: print_cmd.c:1518
 #, c-format
 msgid "cprintf: `%c': invalid format character"
 msgstr "cprintf: ‘\e[1m%c\e[0m’: invalid format character"
 
 #, c-format
 msgid "cprintf: `%c': invalid format character"
 msgstr "cprintf: ‘\e[1m%c\e[0m’: invalid format character"
 
-#: redir.c:122
+#: redir.c:123 redir.c:170
 msgid "file descriptor out of range"
 msgstr "file descriptor out of range"
 
 msgid "file descriptor out of range"
 msgstr "file descriptor out of range"
 
-#: redir.c:178
+#: redir.c:177
 #, c-format
 msgid "%s: ambiguous redirect"
 msgstr "%s: ambiguous redirect"
 
 #, c-format
 msgid "%s: ambiguous redirect"
 msgstr "%s: ambiguous redirect"
 
-#: redir.c:182
+#: redir.c:181
 #, c-format
 msgid "%s: cannot overwrite existing file"
 msgstr "%s: cannot overwrite existing file"
 
 #, c-format
 msgid "%s: cannot overwrite existing file"
 msgstr "%s: cannot overwrite existing file"
 
-#: redir.c:187
+#: redir.c:186
 #, c-format
 msgid "%s: restricted: cannot redirect output"
 msgstr "%s: restricted: cannot redirect output"
 
 #, c-format
 msgid "%s: restricted: cannot redirect output"
 msgstr "%s: restricted: cannot redirect output"
 
-#: redir.c:192
+#: redir.c:191
 #, c-format
 msgid "cannot create temp file for here-document: %s"
 msgstr "cannot create temp file for here-document: %s"
 
 #, c-format
 msgid "cannot create temp file for here-document: %s"
 msgstr "cannot create temp file for here-document: %s"
 
-#: redir.c:196
+#: redir.c:195
 #, c-format
 msgid "%s: cannot assign fd to variable"
 msgstr "%s: cannot assign fd to variable"
 
 #, c-format
 msgid "%s: cannot assign fd to variable"
 msgstr "%s: cannot assign fd to variable"
 
-#: redir.c:548
+#: redir.c:582
 msgid "/dev/(tcp|udp)/host/port not supported without networking"
 msgstr "/dev/(tcp|udp)/host/port not supported without networking"
 
 msgid "/dev/(tcp|udp)/host/port not supported without networking"
 msgstr "/dev/(tcp|udp)/host/port not supported without networking"
 
-#: redir.c:818 redir.c:930 redir.c:993 redir.c:1136
+#: redir.c:861 redir.c:973 redir.c:1034 redir.c:1199
 msgid "redirection error: cannot duplicate fd"
 msgstr "redirection error: cannot duplicate fd"
 
 msgid "redirection error: cannot duplicate fd"
 msgstr "redirection error: cannot duplicate fd"
 
-#: shell.c:333
+#: shell.c:339
 msgid "could not find /tmp, please create!"
 msgstr "could not find /tmp, please create!"
 
 msgid "could not find /tmp, please create!"
 msgstr "could not find /tmp, please create!"
 
-#: shell.c:337
+#: shell.c:343
 msgid "/tmp must be a valid directory name"
 msgstr "/tmp must be a valid directory name"
 
 msgid "/tmp must be a valid directory name"
 msgstr "/tmp must be a valid directory name"
 
-#: shell.c:884
+#: shell.c:890
 #, c-format
 msgid "%c%c: invalid option"
 msgstr "%c%c: invalid option"
 
 #, c-format
 msgid "%c%c: invalid option"
 msgstr "%c%c: invalid option"
 
-#: shell.c:1652
+#: shell.c:1682
 msgid "I have no name!"
 msgstr "I have no name!"
 
 msgid "I have no name!"
 msgstr "I have no name!"
 
-#: shell.c:1795
+#: shell.c:1827
 #, c-format
 msgid "GNU bash, version %s-(%s)\n"
 msgstr "GNU bash, version %s-(%s)\n"
 
 #, c-format
 msgid "GNU bash, version %s-(%s)\n"
 msgstr "GNU bash, version %s-(%s)\n"
 
-#: shell.c:1796
+#: shell.c:1828
 #, c-format
 msgid ""
 "Usage:\t%s [GNU long option] [option] ...\n"
 #, c-format
 msgid ""
 "Usage:\t%s [GNU long option] [option] ...\n"
@@ -1541,42 +1591,42 @@ msgstr ""
 "Usage:\t%s [GNU long option] [option] ...\n"
 "\t%s [GNU long option] [option] script-file ...\n"
 
 "Usage:\t%s [GNU long option] [option] ...\n"
 "\t%s [GNU long option] [option] script-file ...\n"
 
-#: shell.c:1798
+#: shell.c:1830
 msgid "GNU long options:\n"
 msgstr "GNU long options:\n"
 
 msgid "GNU long options:\n"
 msgstr "GNU long options:\n"
 
-#: shell.c:1802
+#: shell.c:1834
 msgid "Shell options:\n"
 msgstr "Shell options:\n"
 
 msgid "Shell options:\n"
 msgstr "Shell options:\n"
 
-#: shell.c:1803
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
+#: shell.c:1835
+msgid "\t-ilrsD or -c command or -O shopt_option\t\t(invocation only)\n"
+msgstr "\t-ilrsD or -c command or -O shopt_option\t\t(invocation only)\n"
 
 
-#: shell.c:1818
+#: shell.c:1850
 #, c-format
 msgid "\t-%s or -o option\n"
 msgstr "\t-%s or -o option\n"
 
 #, c-format
 msgid "\t-%s or -o option\n"
 msgstr "\t-%s or -o option\n"
 
-#: shell.c:1824
+#: shell.c:1856
 #, c-format
 msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
 msgstr ""
 "Type ‘\e[1m%s -c “\e[1mhelp set\e[0m”\e[0m’ for more information about shell "
 "options.\n"
 
 #, c-format
 msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
 msgstr ""
 "Type ‘\e[1m%s -c “\e[1mhelp set\e[0m”\e[0m’ for more information about shell "
 "options.\n"
 
-#: shell.c:1825
+#: shell.c:1857
 #, c-format
 msgid "Type `%s -c help' for more information about shell builtin commands.\n"
 msgstr ""
 "Type ‘\e[1m%s -c help\e[0m’ for more information about shell builtin commands.\n"
 
 #, c-format
 msgid "Type `%s -c help' for more information about shell builtin commands.\n"
 msgstr ""
 "Type ‘\e[1m%s -c help\e[0m’ for more information about shell builtin commands.\n"
 
-#: shell.c:1826
+#: shell.c:1858
 #, c-format
 msgid "Use the `bashbug' command to report bugs.\n"
 msgstr "Use the ‘\e[1mbashbug\e[0m’ command to report bugs.\n"
 
 #, c-format
 msgid "Use the `bashbug' command to report bugs.\n"
 msgstr "Use the ‘\e[1mbashbug\e[0m’ command to report bugs.\n"
 
-#: sig.c:638
+#: sig.c:691
 #, c-format
 msgid "sigprocmask: %d: invalid operation"
 msgstr "sigprocmask: %d: invalid operation"
 #, c-format
 msgid "sigprocmask: %d: invalid operation"
 msgstr "sigprocmask: %d: invalid operation"
@@ -1750,72 +1800,77 @@ msgstr "Unknown Signal #"
 msgid "Unknown Signal #%d"
 msgstr "Unknown Signal #%d"
 
 msgid "Unknown Signal #%d"
 msgstr "Unknown Signal #%d"
 
-#: subst.c:1333 subst.c:1502
+#: subst.c:1362 subst.c:1520
 #, c-format
 msgid "bad substitution: no closing `%s' in %s"
 msgstr "bad substitution: no closing ‘\e[1m%s\e[0m’ in %s"
 
 #, c-format
 msgid "bad substitution: no closing `%s' in %s"
 msgstr "bad substitution: no closing ‘\e[1m%s\e[0m’ in %s"
 
-#: subst.c:2795
+#: subst.c:2847
 #, c-format
 msgid "%s: cannot assign list to array member"
 msgstr "%s: cannot assign list to array member"
 
 #, c-format
 msgid "%s: cannot assign list to array member"
 msgstr "%s: cannot assign list to array member"
 
-#: subst.c:4979 subst.c:4995
+#: subst.c:5065 subst.c:5081
 msgid "cannot make pipe for process substitution"
 msgstr "cannot make pipe for process substitution"
 
 msgid "cannot make pipe for process substitution"
 msgstr "cannot make pipe for process substitution"
 
-#: subst.c:5027
+#: subst.c:5113
 msgid "cannot make child for process substitution"
 msgstr "cannot make child for process substitution"
 
 msgid "cannot make child for process substitution"
 msgstr "cannot make child for process substitution"
 
-#: subst.c:5072
+#: subst.c:5158
 #, c-format
 msgid "cannot open named pipe %s for reading"
 msgstr "cannot open named pipe %s for reading"
 
 #, c-format
 msgid "cannot open named pipe %s for reading"
 msgstr "cannot open named pipe %s for reading"
 
-#: subst.c:5074
+#: subst.c:5160
 #, c-format
 msgid "cannot open named pipe %s for writing"
 msgstr "cannot open named pipe %s for writing"
 
 #, c-format
 msgid "cannot open named pipe %s for writing"
 msgstr "cannot open named pipe %s for writing"
 
-#: subst.c:5092
+#: subst.c:5178
 #, c-format
 msgid "cannot duplicate named pipe %s as fd %d"
 msgstr "cannot duplicate named pipe %s as fd %d"
 
 #, c-format
 msgid "cannot duplicate named pipe %s as fd %d"
 msgstr "cannot duplicate named pipe %s as fd %d"
 
-#: subst.c:5284
+#: subst.c:5376
 msgid "cannot make pipe for command substitution"
 msgstr "cannot make pipe for command substitution"
 
 msgid "cannot make pipe for command substitution"
 msgstr "cannot make pipe for command substitution"
 
-#: subst.c:5322
+#: subst.c:5414
 msgid "cannot make child for command substitution"
 msgstr "cannot make child for command substitution"
 
 msgid "cannot make child for command substitution"
 msgstr "cannot make child for command substitution"
 
-#: subst.c:5339
+#: subst.c:5433
 msgid "command_substitute: cannot duplicate pipe as fd 1"
 msgstr "command_substitute: cannot duplicate pipe as fd 1"
 
 msgid "command_substitute: cannot duplicate pipe as fd 1"
 msgstr "command_substitute: cannot duplicate pipe as fd 1"
 
-#: subst.c:5859
+#: subst.c:5837 subst.c:8050
+#, c-format
+msgid "%s: invalid variable name for name reference"
+msgstr "%s: invalid variable name for name reference"
+
+#: subst.c:6048
 #, c-format
 msgid "%s: parameter null or not set"
 msgstr "%s: parameter null or not set"
 
 #, c-format
 msgid "%s: parameter null or not set"
 msgstr "%s: parameter null or not set"
 
-#: subst.c:6125 subst.c:6140
+#: subst.c:6320 subst.c:6335
 #, c-format
 msgid "%s: substring expression < 0"
 msgstr "%s: substring expression < 0"
 
 #, c-format
 msgid "%s: substring expression < 0"
 msgstr "%s: substring expression < 0"
 
-#: subst.c:7271
+#: subst.c:7506
 #, c-format
 msgid "%s: bad substitution"
 msgstr "%s: bad substitution"
 
 #, c-format
 msgid "%s: bad substitution"
 msgstr "%s: bad substitution"
 
-#: subst.c:7347
+#: subst.c:7583
 #, c-format
 msgid "$%s: cannot assign in this way"
 msgstr "$%s: cannot assign in this way"
 
 #, c-format
 msgid "$%s: cannot assign in this way"
 msgstr "$%s: cannot assign in this way"
 
-#: subst.c:7684
+#: subst.c:7917
 msgid ""
 "future versions of the shell will force evaluation as an arithmetic "
 "substitution"
 msgid ""
 "future versions of the shell will force evaluation as an arithmetic "
 "substitution"
@@ -1823,129 +1878,144 @@ msgstr ""
 "future versions of the shell will force evaluation as an arithmetic "
 "substitution"
 
 "future versions of the shell will force evaluation as an arithmetic "
 "substitution"
 
-#: subst.c:8149
+#: subst.c:8421
 #, c-format
 msgid "bad substitution: no closing \"`\" in %s"
 msgstr "bad substitution: no closing “\e[1m`\e[0m” in %s"
 
 #, c-format
 msgid "bad substitution: no closing \"`\" in %s"
 msgstr "bad substitution: no closing “\e[1m`\e[0m” in %s"
 
-#: subst.c:9036
+#: subst.c:9322
 #, c-format
 msgid "no match: %s"
 msgstr "no match: %s"
 
 #, c-format
 msgid "no match: %s"
 msgstr "no match: %s"
 
-#: test.c:146
+#: test.c:147
 msgid "argument expected"
 msgstr "argument expected"
 
 msgid "argument expected"
 msgstr "argument expected"
 
-#: test.c:155
+#: test.c:156
 #, c-format
 msgid "%s: integer expression expected"
 msgstr "%s: integer expression expected"
 
 #, c-format
 msgid "%s: integer expression expected"
 msgstr "%s: integer expression expected"
 
-#: test.c:263
+#: test.c:264
 msgid "`)' expected"
 msgstr "‘\e[1m)\e[0m’ expected"
 
 msgid "`)' expected"
 msgstr "‘\e[1m)\e[0m’ expected"
 
-#: test.c:265
+#: test.c:266
 #, c-format
 msgid "`)' expected, found %s"
 msgstr "‘\e[1m)\e[0m’ expected, found %s"
 
 #, c-format
 msgid "`)' expected, found %s"
 msgstr "‘\e[1m)\e[0m’ expected, found %s"
 
-#: test.c:280 test.c:698 test.c:701
+#: test.c:281 test.c:742 test.c:745
 #, c-format
 msgid "%s: unary operator expected"
 msgstr "%s: unary operator expected"
 
 #, c-format
 msgid "%s: unary operator expected"
 msgstr "%s: unary operator expected"
 
-#: test.c:449 test.c:741
+#: test.c:468 test.c:785
 #, c-format
 msgid "%s: binary operator expected"
 msgstr "%s: binary operator expected"
 
 #, c-format
 msgid "%s: binary operator expected"
 msgstr "%s: binary operator expected"
 
-#: test.c:816
+#: test.c:860
 msgid "missing `]'"
 msgstr "missing ‘\e[1m]\e[0m’"
 
 msgid "missing `]'"
 msgstr "missing ‘\e[1m]\e[0m’"
 
-#: trap.c:207
+#: trap.c:217
 msgid "invalid signal number"
 msgstr "invalid signal number"
 
 msgid "invalid signal number"
 msgstr "invalid signal number"
 
-#: trap.c:337
+#: trap.c:371
 #, c-format
 msgid "run_pending_traps: bad value in trap_list[%d]: %p"
 msgstr "run_pending_traps: bad value in trap_list[%d]: %p"
 
 #, c-format
 msgid "run_pending_traps: bad value in trap_list[%d]: %p"
 msgstr "run_pending_traps: bad value in trap_list[%d]: %p"
 
-#: trap.c:341
+#: trap.c:375
 #, c-format
 msgid ""
 "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
 msgstr ""
 "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
 
 #, c-format
 msgid ""
 "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
 msgstr ""
 "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
 
-#: trap.c:393
+#: trap.c:428
 #, c-format
 msgid "trap_handler: bad signal %d"
 msgstr "trap_handler: bad signal %d"
 
 #, c-format
 msgid "trap_handler: bad signal %d"
 msgstr "trap_handler: bad signal %d"
 
-#: variables.c:363
+#: variables.c:382
 #, c-format
 msgid "error importing function definition for `%s'"
 msgstr "error importing function definition for ‘\e[1m%s\e[0m’"
 
 #, c-format
 msgid "error importing function definition for `%s'"
 msgstr "error importing function definition for ‘\e[1m%s\e[0m’"
 
-#: variables.c:755
+#: variables.c:780
 #, c-format
 msgid "shell level (%d) too high, resetting to 1"
 msgstr "shell level (%d) too high, resetting to 1"
 
 #, c-format
 msgid "shell level (%d) too high, resetting to 1"
 msgstr "shell level (%d) too high, resetting to 1"
 
-#: variables.c:1932
+#: variables.c:1865
+#, c-format
+msgid "%s: circular name reference"
+msgstr "%s: circular name reference"
+
+#: variables.c:2228
 msgid "make_local_variable: no function context at current scope"
 msgstr "make_local_variable: no function context at current scope"
 
 msgid "make_local_variable: no function context at current scope"
 msgstr "make_local_variable: no function context at current scope"
 
-#: variables.c:3182
+#: variables.c:2247
+#, c-format
+msgid "%s: variable may not be assigned value"
+msgstr "%s: variable may not be assigned value"
+
+#: variables.c:3646
 msgid "all_local_variables: no function context at current scope"
 msgstr "all_local_variables: no function context at current scope"
 
 msgid "all_local_variables: no function context at current scope"
 msgstr "all_local_variables: no function context at current scope"
 
-#: variables.c:3427
+#: variables.c:3891
 #, c-format
 msgid "%s has null exportstr"
 msgstr "%s has null exportstr"
 
 #, c-format
 msgid "%s has null exportstr"
 msgstr "%s has null exportstr"
 
-#: variables.c:3432 variables.c:3441
+#: variables.c:3896 variables.c:3905
 #, c-format
 msgid "invalid character %d in exportstr for %s"
 msgstr "invalid character %d in exportstr for %s"
 
 #, c-format
 msgid "invalid character %d in exportstr for %s"
 msgstr "invalid character %d in exportstr for %s"
 
-#: variables.c:3447
+#: variables.c:3911
 #, c-format
 msgid "no `=' in exportstr for %s"
 msgstr "no ‘\e[1m=\e[0m’ in exportstr for %s"
 
 #, c-format
 msgid "no `=' in exportstr for %s"
 msgstr "no ‘\e[1m=\e[0m’ in exportstr for %s"
 
-#: variables.c:3891
+#: variables.c:4344
 msgid "pop_var_context: head of shell_variables not a function context"
 msgstr "pop_var_context: head of shell_variables not a function context"
 
 msgid "pop_var_context: head of shell_variables not a function context"
 msgstr "pop_var_context: head of shell_variables not a function context"
 
-#: variables.c:3904
+#: variables.c:4357
 msgid "pop_var_context: no global_variables context"
 msgstr "pop_var_context: no global_variables context"
 
 msgid "pop_var_context: no global_variables context"
 msgstr "pop_var_context: no global_variables context"
 
-#: variables.c:3978
+#: variables.c:4431
 msgid "pop_scope: head of shell_variables not a temporary environment scope"
 msgstr "pop_scope: head of shell_variables not a temporary environment scope"
 
 msgid "pop_scope: head of shell_variables not a temporary environment scope"
 msgstr "pop_scope: head of shell_variables not a temporary environment scope"
 
-#: variables.c:4786
+#: variables.c:5257
 #, c-format
 msgid "%s: %s: cannot open as FILE"
 msgstr "%s: %s: cannot open as FILE"
 
 #, c-format
 msgid "%s: %s: cannot open as FILE"
 msgstr "%s: %s: cannot open as FILE"
 
-#: variables.c:4791
+#: variables.c:5262
 #, c-format
 msgid "%s: %s: invalid value for trace file descriptor"
 msgstr "%s: %s: invalid value for trace file descriptor"
 
 #, c-format
 msgid "%s: %s: invalid value for trace file descriptor"
 msgstr "%s: %s: invalid value for trace file descriptor"
 
+#: variables.c:5307
+#, c-format
+msgid "%s: %s: compatibility value out of range"
+msgstr "%s: %s: compatibility value out of range"
+
 #: version.c:46
 #: version.c:46
-msgid "Copyright (C) 2011 Free Software Foundation, Inc."
-msgstr "Copyright (C) 2011 Free Software Foundation, Inc."
+msgid "Copyright (C) 2013 Free Software Foundation, Inc."
+msgstr "Copyright (C) 2013 Free Software Foundation, Inc."
 
 
-#: version.c:47
+#: version.c:47 version2.c:47
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
 "html>\n"
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
 "html>\n"
@@ -1953,34 +2023,22 @@ msgstr ""
 "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
 "html>\n"
 
 "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
 "html>\n"
 
-#: version.c:86 version2.c:83
+#: version.c:86 version2.c:86
 #, c-format
 msgid "GNU bash, version %s (%s)\n"
 msgstr "GNU bash, version %s (%s)\n"
 
 #, c-format
 msgid "GNU bash, version %s (%s)\n"
 msgstr "GNU bash, version %s (%s)\n"
 
-#: version.c:91 version2.c:88
-#, c-format
-msgid "This is free software; you are free to change and redistribute it.\n"
-msgstr "This is free software; you are free to change and redistribute it.\n"
-
-#: version.c:92 version2.c:89
-#, c-format
-msgid "There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr "There is NO WARRANTY, to the extent permitted by law.\n"
+#: version.c:91 version2.c:91
+msgid "This is free software; you are free to change and redistribute it."
+msgstr "This is free software; you are free to change and redistribute it."
 
 
-#: version2.c:86
-#, c-format
-msgid "Copyright (C) 2009 Free Software Foundation, Inc.\n"
-msgstr "Copyright (C) 2009 Free Software Foundation, Inc.\n"
+#: version.c:92 version2.c:92
+msgid "There is NO WARRANTY, to the extent permitted by law."
+msgstr "There is NO WARRANTY, to the extent permitted by law."
 
 
-#: version2.c:87
-#, c-format
-msgid ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
+#: version2.c:46
+msgid "Copyright (C) 2012 Free Software Foundation, Inc."
+msgstr "Copyright (C) 2012 Free Software Foundation, Inc."
 
 #: xmalloc.c:91
 #, c-format
 
 #: xmalloc.c:91
 #, c-format
@@ -2012,10 +2070,10 @@ msgstr "unalias [-a] name [name ...]"
 
 #: builtins.c:51
 msgid ""
 
 #: builtins.c:51
 msgid ""
-"bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
+"bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
 "x keyseq:shell-command] [keyseq:readline-function or readline-command]"
 msgstr ""
 "x keyseq:shell-command] [keyseq:readline-function or readline-command]"
 msgstr ""
-"bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
+"bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
 "x keyseq:shell-command] [keyseq:readline-function or readline-command]"
 
 #: builtins.c:54
 "x keyseq:shell-command] [keyseq:readline-function or readline-command]"
 
 #: builtins.c:54
@@ -2035,8 +2093,8 @@ msgid "caller [expr]"
 msgstr "caller [expr]"
 
 #: builtins.c:64
 msgstr "caller [expr]"
 
 #: builtins.c:64
-msgid "cd [-L|[-P [-e]]] [dir]"
-msgstr "cd [-L|[-P [-e]]] [dir]"
+msgid "cd [-L|[-P [-e]] [-@]] [dir]"
+msgstr "cd [-L|[-P [-e]] [-@]] [dir]"
 
 #: builtins.c:66
 msgid "pwd [-LP]"
 
 #: builtins.c:66
 msgid "pwd [-LP]"
@@ -2059,8 +2117,8 @@ msgid "command [-pVv] command [arg ...]"
 msgstr "command [-pVv] command [arg ...]"
 
 #: builtins.c:76
 msgstr "command [-pVv] command [arg ...]"
 
 #: builtins.c:76
-msgid "declare [-aAfFgilrtux] [-p] [name[=value] ...]"
-msgstr "declare [-aAfFgilrtux] [-p] [name[=value] ...]"
+msgid "declare [-aAfFgilnrtux] [-p] [name[=value] ...]"
+msgstr "declare [-aAfFgilnrtux] [-p] [name[=value] ...]"
 
 #: builtins.c:78
 msgid "typeset [-aAfFgilrtux] [-p] name[=value] ..."
 
 #: builtins.c:78
 msgid "typeset [-aAfFgilrtux] [-p] name[=value] ..."
@@ -2167,8 +2225,8 @@ msgid "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
 msgstr "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
 
 #: builtins.c:142
 msgstr "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
 
 #: builtins.c:142
-msgid "unset [-f] [-v] [name ...]"
-msgstr "unset [-f] [-v] [name ...]"
+msgid "unset [-f] [-v] [-n] [name ...]"
+msgstr "unset [-f] [-v] [-n] [name ...]"
 
 #: builtins.c:144
 msgid "export [-fn] [name[=value] ...] or export -p"
 
 #: builtins.c:144
 msgid "export [-fn] [name[=value] ...] or export -p"
@@ -2215,20 +2273,20 @@ msgid "type [-afptP] name [name ...]"
 msgstr "type [-afptP] name [name ...]"
 
 #: builtins.c:169
 msgstr "type [-afptP] name [name ...]"
 
 #: builtins.c:169
-msgid "ulimit [-SHacdefilmnpqrstuvx] [limit]"
-msgstr "ulimit [-SHacdefilmnpqrstuvx] [limit]"
+msgid "ulimit [-SHabcdefilmnpqrstuvxT] [limit]"
+msgstr "ulimit [-SHabcdefilmnpqrstuvxT] [limit]"
 
 #: builtins.c:172
 msgid "umask [-p] [-S] [mode]"
 msgstr "umask [-p] [-S] [mode]"
 
 #: builtins.c:175
 
 #: builtins.c:172
 msgid "umask [-p] [-S] [mode]"
 msgstr "umask [-p] [-S] [mode]"
 
 #: builtins.c:175
-msgid "wait [id]"
-msgstr "wait [id]"
+msgid "wait [-n] [id ...]"
+msgstr "wait [-n] [id ...]"
 
 #: builtins.c:179
 
 #: builtins.c:179
-msgid "wait [pid]"
-msgstr "wait [pid]"
+msgid "wait [pid ...]"
+msgstr "wait [pid ...]"
 
 #: builtins.c:182
 msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
 
 #: builtins.c:182
 msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
@@ -2439,6 +2497,8 @@ msgid ""
 "      -f  filename       Read key bindings from FILENAME.\n"
 "      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
 "    \t\t\t\tKEYSEQ is entered.\n"
 "      -f  filename       Read key bindings from FILENAME.\n"
 "      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
 "    \t\t\t\tKEYSEQ is entered.\n"
+"      -X\t\t     List key sequences bound with -x and associated commands\n"
+"                         in a form that can be reused as input.\n"
 "    \n"
 "    Exit Status:\n"
 "    bind returns 0 unless an unrecognized option is given or an error occurs."
 "    \n"
 "    Exit Status:\n"
 "    bind returns 0 unless an unrecognized option is given or an error occurs."
@@ -2475,11 +2535,13 @@ msgstr ""
 "      -f  filename       Read key bindings from FILENAME.\n"
 "      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
 "    \t\t\t\tKEYSEQ is entered.\n"
 "      -f  filename       Read key bindings from FILENAME.\n"
 "      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
 "    \t\t\t\tKEYSEQ is entered.\n"
+"      -X\t\t     List key sequences bound with -x and associated commands\n"
+"                         in a form that can be reused as input.\n"
 "    \n"
 "    Exit Status:\n"
 "    bind returns 0 unless an unrecognized option is given or an error occurs."
 
 "    \n"
 "    Exit Status:\n"
 "    bind returns 0 unless an unrecognized option is given or an error occurs."
 
-#: builtins.c:326
+#: builtins.c:328
 msgid ""
 "Exit for, while, or until loops.\n"
 "    \n"
 msgid ""
 "Exit for, while, or until loops.\n"
 "    \n"
@@ -2497,7 +2559,7 @@ msgstr ""
 "    Exit Status:\n"
 "    The exit status is 0 unless N is not greater than or equal to 1."
 
 "    Exit Status:\n"
 "    The exit status is 0 unless N is not greater than or equal to 1."
 
-#: builtins.c:338
+#: builtins.c:340
 msgid ""
 "Resume for, while, or until loops.\n"
 "    \n"
 msgid ""
 "Resume for, while, or until loops.\n"
 "    \n"
@@ -2515,7 +2577,7 @@ msgstr ""
 "    Exit Status:\n"
 "    The exit status is 0 unless N is not greater than or equal to 1."
 
 "    Exit Status:\n"
 "    The exit status is 0 unless N is not greater than or equal to 1."
 
-#: builtins.c:350
+#: builtins.c:352
 msgid ""
 "Execute shell builtins.\n"
 "    \n"
 msgid ""
 "Execute shell builtins.\n"
 "    \n"
@@ -2539,7 +2601,7 @@ msgstr ""
 "    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
 "    not a shell builtin.."
 
 "    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
 "    not a shell builtin.."
 
-#: builtins.c:365
+#: builtins.c:367
 msgid ""
 "Return the context of the current subroutine call.\n"
 "    \n"
 msgid ""
 "Return the context of the current subroutine call.\n"
 "    \n"
@@ -2568,7 +2630,7 @@ msgstr ""
 "    Returns 0 unless the shell is not executing a shell function or EXPR\n"
 "    is invalid."
 
 "    Returns 0 unless the shell is not executing a shell function or EXPR\n"
 "    is invalid."
 
-#: builtins.c:383
+#: builtins.c:385
 msgid ""
 "Change the shell working directory.\n"
 "    \n"
 msgid ""
 "Change the shell working directory.\n"
 "    \n"
@@ -2591,13 +2653,21 @@ msgid ""
 "    its value is used for DIR.\n"
 "    \n"
 "    Options:\n"
 "    its value is used for DIR.\n"
 "    \n"
 "    Options:\n"
-"        -L\tforce symbolic links to be followed\n"
+"        -L\tforce symbolic links to be followed: resolve symbolic links in\n"
+"    \tDIR after processing instances of `..'\n"
 "        -P\tuse the physical directory structure without following symbolic\n"
 "        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks\n"
+"    \tlinks: resolve symbolic links in DIR before processing instances\n"
+"    \tof `..'\n"
 "        -e\tif the -P option is supplied, and the current working directory\n"
 "    \tcannot be determined successfully, exit with a non-zero status\n"
 "        -e\tif the -P option is supplied, and the current working directory\n"
 "    \tcannot be determined successfully, exit with a non-zero status\n"
+"        -@  on systems that support it, present a file with extended "
+"attributes\n"
+"            as a directory containing the file attributes\n"
 "    \n"
 "    The default is to follow symbolic links, as if `-L' were specified.\n"
 "    \n"
 "    The default is to follow symbolic links, as if `-L' were specified.\n"
+"    `..' is processed by removing the immediately previous pathname "
+"component\n"
+"    back to a slash or the beginning of DIR.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns 0 if the directory is changed, and if $PWD is set successfully "
 "    \n"
 "    Exit Status:\n"
 "    Returns 0 if the directory is changed, and if $PWD is set successfully "
@@ -2625,21 +2695,29 @@ msgstr ""
 "    its value is used for DIR.\n"
 "    \n"
 "    Options:\n"
 "    its value is used for DIR.\n"
 "    \n"
 "    Options:\n"
-"        -L\tforce symbolic links to be followed\n"
+"        -L\tforce symbolic links to be followed: resolve symbolic links in\n"
+"    \tDIR after processing instances of ‘\e[1m..\e[0m’\n"
 "        -P\tuse the physical directory structure without following symbolic\n"
 "        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks\n"
+"    \tlinks: resolve symbolic links in DIR before processing instances\n"
+"    \tof ‘\e[1m..\e[0m’\n"
 "        -e\tif the -P option is supplied, and the current working directory\n"
 "    \tcannot be determined successfully, exit with a non-zero status\n"
 "        -e\tif the -P option is supplied, and the current working directory\n"
 "    \tcannot be determined successfully, exit with a non-zero status\n"
+"        -@  on systems that support it, present a file with extended "
+"attributes\n"
+"            as a directory containing the file attributes\n"
 "    \n"
 "    The default is to follow symbolic links, as if ‘\e[1m-L\e[0m’ were "
 "specified.\n"
 "    \n"
 "    The default is to follow symbolic links, as if ‘\e[1m-L\e[0m’ were "
 "specified.\n"
+"    ‘\e[1m..\e[0m’ is processed by removing the immediately previous pathname "
+"component\n"
+"    back to a slash or the beginning of DIR.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns 0 if the directory is changed, and if $PWD is set successfully "
 "when\n"
 "    -P is used; non-zero otherwise."
 
 "    \n"
 "    Exit Status:\n"
 "    Returns 0 if the directory is changed, and if $PWD is set successfully "
 "when\n"
 "    -P is used; non-zero otherwise."
 
-#: builtins.c:414
+#: builtins.c:422
 msgid ""
 "Print the name of the current working directory.\n"
 "    \n"
 msgid ""
 "Print the name of the current working directory.\n"
 "    \n"
@@ -2667,7 +2745,7 @@ msgstr ""
 "    Returns 0 unless an invalid option is given or the current directory\n"
 "    cannot be read."
 
 "    Returns 0 unless an invalid option is given or the current directory\n"
 "    cannot be read."
 
-#: builtins.c:431
+#: builtins.c:439
 msgid ""
 "Null command.\n"
 "    \n"
 msgid ""
 "Null command.\n"
 "    \n"
@@ -2683,7 +2761,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Always succeeds."
 
 "    Exit Status:\n"
 "    Always succeeds."
 
-#: builtins.c:442
+#: builtins.c:450
 msgid ""
 "Return a successful result.\n"
 "    \n"
 msgid ""
 "Return a successful result.\n"
 "    \n"
@@ -2695,7 +2773,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Always succeeds."
 
 "    Exit Status:\n"
 "    Always succeeds."
 
-#: builtins.c:451
+#: builtins.c:459
 msgid ""
 "Return an unsuccessful result.\n"
 "    \n"
 msgid ""
 "Return an unsuccessful result.\n"
 "    \n"
@@ -2707,7 +2785,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Always fails."
 
 "    Exit Status:\n"
 "    Always fails."
 
-#: builtins.c:460
+#: builtins.c:468
 msgid ""
 "Execute a simple command or display information about commands.\n"
 "    \n"
 msgid ""
 "Execute a simple command or display information about commands.\n"
 "    \n"
@@ -2742,7 +2820,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns exit status of COMMAND, or failure if COMMAND is not found."
 
 "    Exit Status:\n"
 "    Returns exit status of COMMAND, or failure if COMMAND is not found."
 
-#: builtins.c:479
+#: builtins.c:487
 msgid ""
 "Set variable values and attributes.\n"
 "    \n"
 msgid ""
 "Set variable values and attributes.\n"
 "    \n"
@@ -2762,6 +2840,7 @@ msgid ""
 "      -A\tto make NAMEs associative arrays (if supported)\n"
 "      -i\tto make NAMEs have the `integer' attribute\n"
 "      -l\tto convert NAMEs to lower case on assignment\n"
 "      -A\tto make NAMEs associative arrays (if supported)\n"
 "      -i\tto make NAMEs have the `integer' attribute\n"
 "      -l\tto convert NAMEs to lower case on assignment\n"
+"      -n\tmake NAME a reference to the variable named by its value\n"
 "      -r\tto make NAMEs readonly\n"
 "      -t\tto make NAMEs have the `trace' attribute\n"
 "      -u\tto convert NAMEs to upper case on assignment\n"
 "      -r\tto make NAMEs readonly\n"
 "      -t\tto make NAMEs have the `trace' attribute\n"
 "      -u\tto convert NAMEs to upper case on assignment\n"
@@ -2777,7 +2856,8 @@ msgid ""
 "    command.  The `-g' option suppresses this behavior.\n"
 "    \n"
 "    Exit Status:\n"
 "    command.  The `-g' option suppresses this behavior.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
+"    Returns success unless an invalid option is supplied or a variable\n"
+"    assignment error occurs."
 msgstr ""
 "Set variable values and attributes.\n"
 "    \n"
 msgstr ""
 "Set variable values and attributes.\n"
 "    \n"
@@ -2797,6 +2877,7 @@ msgstr ""
 "      -A\tto make NAMEs associative arrays (if supported)\n"
 "      -i\tto make NAMEs have the ‘\e[1minteger\e[0m’ attribute\n"
 "      -l\tto convert NAMEs to lower case on assignment\n"
 "      -A\tto make NAMEs associative arrays (if supported)\n"
 "      -i\tto make NAMEs have the ‘\e[1minteger\e[0m’ attribute\n"
 "      -l\tto convert NAMEs to lower case on assignment\n"
+"      -n\tmake NAME a reference to the variable named by its value\n"
 "      -r\tto make NAMEs readonly\n"
 "      -t\tto make NAMEs have the ‘\e[1mtrace\e[0m’ attribute\n"
 "      -u\tto convert NAMEs to upper case on assignment\n"
 "      -r\tto make NAMEs readonly\n"
 "      -t\tto make NAMEs have the ‘\e[1mtrace\e[0m’ attribute\n"
 "      -u\tto convert NAMEs to upper case on assignment\n"
@@ -2813,9 +2894,10 @@ msgstr ""
 "    command.  The ‘\e[1m-g\e[0m’ option suppresses this behavior.\n"
 "    \n"
 "    Exit Status:\n"
 "    command.  The ‘\e[1m-g\e[0m’ option suppresses this behavior.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
+"    Returns success unless an invalid option is supplied or a variable\n"
+"    assignment error occurs."
 
 
-#: builtins.c:517
+#: builtins.c:527
 msgid ""
 "Set variable values and attributes.\n"
 "    \n"
 msgid ""
 "Set variable values and attributes.\n"
 "    \n"
@@ -2825,7 +2907,7 @@ msgstr ""
 "    \n"
 "    Obsolete.  See ‘\e[1mhelp declare\e[0m’."
 
 "    \n"
 "    Obsolete.  See ‘\e[1mhelp declare\e[0m’."
 
-#: builtins.c:525
+#: builtins.c:535
 msgid ""
 "Define local variables.\n"
 "    \n"
 msgid ""
 "Define local variables.\n"
 "    \n"
@@ -2836,8 +2918,8 @@ msgid ""
 "    only to the function where they are defined and its children.\n"
 "    \n"
 "    Exit Status:\n"
 "    only to the function where they are defined and its children.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
+"    Returns success unless an invalid option is supplied, a variable\n"
+"    assignment error occurs, or the shell is not executing a function."
 msgstr ""
 "Define local variables.\n"
 "    \n"
 msgstr ""
 "Define local variables.\n"
 "    \n"
@@ -2848,14 +2930,16 @@ msgstr ""
 "    only to the function where they are defined and its children.\n"
 "    \n"
 "    Exit Status:\n"
 "    only to the function where they are defined and its children.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
+"    Returns success unless an invalid option is supplied, a variable\n"
+"    assignment error occurs, or the shell is not executing a function."
 
 
-#: builtins.c:542
+#: builtins.c:552
 msgid ""
 "Write arguments to the standard output.\n"
 "    \n"
 msgid ""
 "Write arguments to the standard output.\n"
 "    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
+"    Display the ARGs, separated by a single space character and followed by "
+"a\n"
+"    newline, on the standard output.\n"
 "    \n"
 "    Options:\n"
 "      -n\tdo not append a newline\n"
 "    \n"
 "    Options:\n"
 "      -n\tdo not append a newline\n"
@@ -2867,6 +2951,7 @@ msgid ""
 "      \\b\tbackspace\n"
 "      \\c\tsuppress further output\n"
 "      \\e\tescape character\n"
 "      \\b\tbackspace\n"
 "      \\c\tsuppress further output\n"
 "      \\e\tescape character\n"
+"      \\E\tescape character\n"
 "      \\f\tform feed\n"
 "      \\n\tnew line\n"
 "      \\r\tcarriage return\n"
 "      \\f\tform feed\n"
 "      \\n\tnew line\n"
 "      \\r\tcarriage return\n"
@@ -2883,7 +2968,9 @@ msgid ""
 msgstr ""
 "Write arguments to the standard output.\n"
 "    \n"
 msgstr ""
 "Write arguments to the standard output.\n"
 "    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
+"    Display the ARGs, separated by a single space character and followed by "
+"a\n"
+"    newline, on the standard output.\n"
 "    \n"
 "    Options:\n"
 "      -n\tdo not append a newline\n"
 "    \n"
 "    Options:\n"
 "      -n\tdo not append a newline\n"
@@ -2895,6 +2982,7 @@ msgstr ""
 "      \\b\tbackspace\n"
 "      \\c\tsuppress further output\n"
 "      \\e\tescape character\n"
 "      \\b\tbackspace\n"
 "      \\c\tsuppress further output\n"
 "      \\e\tescape character\n"
+"      \\E\tescape character\n"
 "      \\f\tform feed\n"
 "      \\n\tnew line\n"
 "      \\r\tcarriage return\n"
 "      \\f\tform feed\n"
 "      \\n\tnew line\n"
 "      \\r\tcarriage return\n"
@@ -2909,7 +2997,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless a write error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless a write error occurs."
 
-#: builtins.c:576
+#: builtins.c:588
 msgid ""
 "Write arguments to the standard output.\n"
 "    \n"
 msgid ""
 "Write arguments to the standard output.\n"
 "    \n"
@@ -2931,7 +3019,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless a write error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless a write error occurs."
 
-#: builtins.c:591
+#: builtins.c:603
 msgid ""
 "Enable and disable shell builtins.\n"
 "    \n"
 msgid ""
 "Enable and disable shell builtins.\n"
 "    \n"
@@ -2981,7 +3069,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless NAME is not a shell builtin or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless NAME is not a shell builtin or an error occurs."
 
-#: builtins.c:619
+#: builtins.c:631
 msgid ""
 "Execute arguments as a shell command.\n"
 "    \n"
 msgid ""
 "Execute arguments as a shell command.\n"
 "    \n"
@@ -3001,7 +3089,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns exit status of command or success if command is null."
 
 "    Exit Status:\n"
 "    Returns exit status of command or success if command is null."
 
-#: builtins.c:631
+#: builtins.c:643
 msgid ""
 "Parse option arguments.\n"
 "    \n"
 msgid ""
 "Parse option arguments.\n"
 "    \n"
@@ -3082,7 +3170,7 @@ msgstr ""
 "    Returns success if an option is found; fails if the end of options is\n"
 "    encountered or an error occurs."
 
 "    Returns success if an option is found; fails if the end of options is\n"
 "    encountered or an error occurs."
 
-#: builtins.c:673
+#: builtins.c:685
 msgid ""
 "Replace the shell with the given command.\n"
 "    \n"
 msgid ""
 "Replace the shell with the given command.\n"
 "    \n"
@@ -3124,7 +3212,7 @@ msgstr ""
 "    Returns success unless COMMAND is not found or a redirection error "
 "occurs."
 
 "    Returns success unless COMMAND is not found or a redirection error "
 "occurs."
 
-#: builtins.c:694
+#: builtins.c:706
 msgid ""
 "Exit the shell.\n"
 "    \n"
 msgid ""
 "Exit the shell.\n"
 "    \n"
@@ -3136,7 +3224,7 @@ msgstr ""
 "    Exits the shell with a status of N.  If N is omitted, the exit status\n"
 "    is that of the last command executed."
 
 "    Exits the shell with a status of N.  If N is omitted, the exit status\n"
 "    is that of the last command executed."
 
-#: builtins.c:703
+#: builtins.c:715
 msgid ""
 "Exit a login shell.\n"
 "    \n"
 msgid ""
 "Exit a login shell.\n"
 "    \n"
@@ -3150,7 +3238,7 @@ msgstr ""
 "executed\n"
 "    in a login shell."
 
 "executed\n"
 "    in a login shell."
 
-#: builtins.c:713
+#: builtins.c:725
 msgid ""
 "Display or execute commands from the history list.\n"
 "    \n"
 msgid ""
 "Display or execute commands from the history list.\n"
 "    \n"
@@ -3198,8 +3286,8 @@ msgstr ""
 "    With the ‘\e[1mfc -s [pat=rep ...] [command]\e[0m’ format, COMMAND is\n"
 "    re-executed after the substitution OLD=NEW is performed.\n"
 "    \n"
 "    With the ‘\e[1mfc -s [pat=rep ...] [command]\e[0m’ format, COMMAND is\n"
 "    re-executed after the substitution OLD=NEW is performed.\n"
 "    \n"
-"    A useful alias to use with this is r='fc -s', so that typing ‘\e[1mr cc\e"
-"[0m’\n"
+"    A useful alias to use with this is r='fc -s', so that typing ‘\e[1mr "
+"cc\e[0m’\n"
 "    runs the last command beginning with ‘\e[1mcc\e[0m’ and typing ‘\e[1mr\e[0m’ re-"
 "executes\n"
 "    the last command.\n"
 "    runs the last command beginning with ‘\e[1mcc\e[0m’ and typing ‘\e[1mr\e[0m’ re-"
 "executes\n"
 "    the last command.\n"
@@ -3208,7 +3296,7 @@ msgstr ""
 "    Returns success or status of executed command; non-zero if an error "
 "occurs."
 
 "    Returns success or status of executed command; non-zero if an error "
 "occurs."
 
-#: builtins.c:743
+#: builtins.c:755
 msgid ""
 "Move job to the foreground.\n"
 "    \n"
 msgid ""
 "Move job to the foreground.\n"
 "    \n"
@@ -3228,7 +3316,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Status of command placed in foreground, or failure if an error occurs."
 
 "    Exit Status:\n"
 "    Status of command placed in foreground, or failure if an error occurs."
 
-#: builtins.c:758
+#: builtins.c:770
 msgid ""
 "Move jobs to the background.\n"
 "    \n"
 msgid ""
 "Move jobs to the background.\n"
 "    \n"
@@ -3252,7 +3340,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless job control is not enabled or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless job control is not enabled or an error occurs."
 
-#: builtins.c:772
+#: builtins.c:784
 msgid ""
 "Remember or display program locations.\n"
 "    \n"
 msgid ""
 "Remember or display program locations.\n"
 "    \n"
@@ -3263,7 +3351,7 @@ msgid ""
 "    Options:\n"
 "      -d\t\tforget the remembered location of each NAME\n"
 "      -l\t\tdisplay in a format that may be reused as input\n"
 "    Options:\n"
 "      -d\t\tforget the remembered location of each NAME\n"
 "      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
+"      -p pathname\tuse PATHNAME as the full pathname of NAME\n"
 "      -r\t\tforget all remembered locations\n"
 "      -t\t\tprint the remembered location of each NAME, preceding\n"
 "    \t\teach location with the corresponding NAME if multiple\n"
 "      -r\t\tforget all remembered locations\n"
 "      -t\t\tprint the remembered location of each NAME, preceding\n"
 "    \t\teach location with the corresponding NAME if multiple\n"
@@ -3284,7 +3372,7 @@ msgstr ""
 "    Options:\n"
 "      -d\t\tforget the remembered location of each NAME\n"
 "      -l\t\tdisplay in a format that may be reused as input\n"
 "    Options:\n"
 "      -d\t\tforget the remembered location of each NAME\n"
 "      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
+"      -p pathname\tuse PATHNAME as the full pathname of NAME\n"
 "      -r\t\tforget all remembered locations\n"
 "      -t\t\tprint the remembered location of each NAME, preceding\n"
 "    \t\teach location with the corresponding NAME if multiple\n"
 "      -r\t\tforget all remembered locations\n"
 "      -t\t\tprint the remembered location of each NAME, preceding\n"
 "    \t\teach location with the corresponding NAME if multiple\n"
@@ -3296,7 +3384,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless NAME is not found or an invalid option is given."
 
 "    Exit Status:\n"
 "    Returns success unless NAME is not found or an invalid option is given."
 
-#: builtins.c:797
+#: builtins.c:809
 msgid ""
 "Display information about builtin commands.\n"
 "    \n"
 msgid ""
 "Display information about builtin commands.\n"
 "    \n"
@@ -3336,7 +3424,7 @@ msgstr ""
 "    Returns success unless PATTERN is not found or an invalid option is "
 "given."
 
 "    Returns success unless PATTERN is not found or an invalid option is "
 "given."
 
-#: builtins.c:821
+#: builtins.c:833
 msgid ""
 "Display or manipulate the history list.\n"
 "    \n"
 msgid ""
 "Display or manipulate the history list.\n"
 "    \n"
@@ -3401,7 +3489,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or an error occurs."
 
-#: builtins.c:857
+#: builtins.c:869
 msgid ""
 "Display status of jobs.\n"
 "    \n"
 msgid ""
 "Display status of jobs.\n"
 "    \n"
@@ -3410,7 +3498,7 @@ msgid ""
 "    \n"
 "    Options:\n"
 "      -l\tlists process IDs in addition to the normal information\n"
 "    \n"
 "    Options:\n"
 "      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
+"      -n\tlists only processes that have changed status since the last\n"
 "    \tnotification\n"
 "      -p\tlists process IDs only\n"
 "      -r\trestrict output to running jobs\n"
 "    \tnotification\n"
 "      -p\tlists process IDs only\n"
 "      -r\trestrict output to running jobs\n"
@@ -3431,7 +3519,7 @@ msgstr ""
 "    \n"
 "    Options:\n"
 "      -l\tlists process IDs in addition to the normal information\n"
 "    \n"
 "    Options:\n"
 "      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
+"      -n\tlists only processes that have changed status since the last\n"
 "    \tnotification\n"
 "      -p\tlists process IDs only\n"
 "      -r\trestrict output to running jobs\n"
 "    \tnotification\n"
 "      -p\tlists process IDs only\n"
 "      -r\trestrict output to running jobs\n"
@@ -3445,7 +3533,7 @@ msgstr ""
 "    Returns success unless an invalid option is given or an error occurs.\n"
 "    If -x is used, returns the exit status of COMMAND."
 
 "    Returns success unless an invalid option is given or an error occurs.\n"
 "    If -x is used, returns the exit status of COMMAND."
 
-#: builtins.c:884
+#: builtins.c:896
 msgid ""
 "Remove jobs from current shell.\n"
 "    \n"
 msgid ""
 "Remove jobs from current shell.\n"
 "    \n"
@@ -3475,7 +3563,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option or JOBSPEC is given."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option or JOBSPEC is given."
 
-#: builtins.c:903
+#: builtins.c:915
 msgid ""
 "Send a signal to a job.\n"
 "    \n"
 msgid ""
 "Send a signal to a job.\n"
 "    \n"
@@ -3515,7 +3603,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or an error occurs."
 
-#: builtins.c:926
+#: builtins.c:938
 msgid ""
 "Evaluate arithmetic expressions.\n"
 "    \n"
 msgid ""
 "Evaluate arithmetic expressions.\n"
 "    \n"
@@ -3601,7 +3689,7 @@ msgstr ""
 "    Exit Status:\n"
 "    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise."
 
 "    Exit Status:\n"
 "    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise."
 
-#: builtins.c:971
+#: builtins.c:983
 msgid ""
 "Read a line from the standard input and split it into fields.\n"
 "    \n"
 msgid ""
 "Read a line from the standard input and split it into fields.\n"
 "    \n"
@@ -3636,16 +3724,19 @@ msgid ""
 "      -s\t\tdo not echo input coming from a terminal\n"
 "      -t timeout\ttime out and return failure if a complete line of input "
 "is\n"
 "      -s\t\tdo not echo input coming from a terminal\n"
 "      -t timeout\ttime out and return failure if a complete line of input "
 "is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
+"    \t\tnot read within TIMEOUT seconds.  The value of the TMOUT\n"
 "    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
 "    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns success only\n"
-"    \t\tif input is available on the specified file descriptor.  The\n"
+"    \t\tfractional number.  If TIMEOUT is 0, read returns immediately,\n"
+"    \t\twithout trying to read any data, returning success only if\n"
+"    \t\tinput is available on the specified file descriptor.  The\n"
 "    \t\texit status is greater than 128 if the timeout is exceeded\n"
 "      -u fd\t\tread from file descriptor FD instead of the standard input\n"
 "    \n"
 "    Exit Status:\n"
 "    The return code is zero, unless end-of-file is encountered, read times "
 "    \t\texit status is greater than 128 if the timeout is exceeded\n"
 "      -u fd\t\tread from file descriptor FD instead of the standard input\n"
 "    \n"
 "    Exit Status:\n"
 "    The return code is zero, unless end-of-file is encountered, read times "
-"out,\n"
+"out\n"
+"    (in which case it's greater than 128), a variable assignment error "
+"occurs,\n"
 "    or an invalid file descriptor is supplied as the argument to -u."
 msgstr ""
 "Read a line from the standard input and split it into fields.\n"
 "    or an invalid file descriptor is supplied as the argument to -u."
 msgstr ""
 "Read a line from the standard input and split it into fields.\n"
@@ -3681,19 +3772,22 @@ msgstr ""
 "      -s\t\tdo not echo input coming from a terminal\n"
 "      -t timeout\ttime out and return failure if a complete line of input "
 "is\n"
 "      -s\t\tdo not echo input coming from a terminal\n"
 "      -t timeout\ttime out and return failure if a complete line of input "
 "is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
+"    \t\tnot read within TIMEOUT seconds.  The value of the TMOUT\n"
 "    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
 "    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns success only\n"
-"    \t\tif input is available on the specified file descriptor.  The\n"
+"    \t\tfractional number.  If TIMEOUT is 0, read returns immediately,\n"
+"    \t\twithout trying to read any data, returning success only if\n"
+"    \t\tinput is available on the specified file descriptor.  The\n"
 "    \t\texit status is greater than 128 if the timeout is exceeded\n"
 "      -u fd\t\tread from file descriptor FD instead of the standard input\n"
 "    \n"
 "    Exit Status:\n"
 "    The return code is zero, unless end-of-file is encountered, read times "
 "    \t\texit status is greater than 128 if the timeout is exceeded\n"
 "      -u fd\t\tread from file descriptor FD instead of the standard input\n"
 "    \n"
 "    Exit Status:\n"
 "    The return code is zero, unless end-of-file is encountered, read times "
-"out,\n"
+"out\n"
+"    (in which case it's greater than 128), a variable assignment error "
+"occurs,\n"
 "    or an invalid file descriptor is supplied as the argument to -u."
 
 "    or an invalid file descriptor is supplied as the argument to -u."
 
-#: builtins.c:1014
+#: builtins.c:1028
 msgid ""
 "Return from a shell function.\n"
 "    \n"
 msgid ""
 "Return from a shell function.\n"
 "    \n"
@@ -3713,7 +3807,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns N, or failure if the shell is not executing a function or script."
 
 "    Exit Status:\n"
 "    Returns N, or failure if the shell is not executing a function or script."
 
-#: builtins.c:1027
+#: builtins.c:1041
 msgid ""
 "Set or unset values of shell options and positional parameters.\n"
 "    \n"
 msgid ""
 "Set or unset values of shell options and positional parameters.\n"
 "    \n"
@@ -3779,7 +3873,7 @@ msgid ""
 "      -E  If set, the ERR trap is inherited by shell functions.\n"
 "      -H  Enable ! style history substitution.  This flag is on\n"
 "          by default when the shell is interactive.\n"
 "      -E  If set, the ERR trap is inherited by shell functions.\n"
 "      -H  Enable ! style history substitution.  This flag is on\n"
 "          by default when the shell is interactive.\n"
-"      -P  If set, do not follow symbolic links when executing commands\n"
+"      -P  If set, do not resolve symbolic links when executing commands\n"
 "          such as cd which change the current directory.\n"
 "      -T  If set, the DEBUG trap is inherited by shell functions.\n"
 "      --  Assign any remaining arguments to the positional parameters.\n"
 "          such as cd which change the current directory.\n"
 "      -T  If set, the DEBUG trap is inherited by shell functions.\n"
 "      --  Assign any remaining arguments to the positional parameters.\n"
@@ -3861,7 +3955,7 @@ msgstr ""
 "      -E  If set, the ERR trap is inherited by shell functions.\n"
 "      -H  Enable ! style history substitution.  This flag is on\n"
 "          by default when the shell is interactive.\n"
 "      -E  If set, the ERR trap is inherited by shell functions.\n"
 "      -H  Enable ! style history substitution.  This flag is on\n"
 "          by default when the shell is interactive.\n"
-"      -P  If set, do not follow symbolic links when executing commands\n"
+"      -P  If set, do not resolve symbolic links when executing commands\n"
 "          such as cd which change the current directory.\n"
 "      -T  If set, the DEBUG trap is inherited by shell functions.\n"
 "      --  Assign any remaining arguments to the positional parameters.\n"
 "          such as cd which change the current directory.\n"
 "      -T  If set, the DEBUG trap is inherited by shell functions.\n"
 "      --  Assign any remaining arguments to the positional parameters.\n"
@@ -3879,7 +3973,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given."
 
-#: builtins.c:1112
+#: builtins.c:1126
 msgid ""
 "Unset values and attributes of shell variables and functions.\n"
 "    \n"
 msgid ""
 "Unset values and attributes of shell variables and functions.\n"
 "    \n"
@@ -3888,6 +3982,8 @@ msgid ""
 "    Options:\n"
 "      -f\ttreat each NAME as a shell function\n"
 "      -v\ttreat each NAME as a shell variable\n"
 "    Options:\n"
 "      -f\ttreat each NAME as a shell function\n"
 "      -v\ttreat each NAME as a shell variable\n"
+"      -n\ttreat each NAME as a name reference and unset the variable itself\n"
+"    \trather than the variable it references\n"
 "    \n"
 "    Without options, unset first tries to unset a variable, and if that "
 "fails,\n"
 "    \n"
 "    Without options, unset first tries to unset a variable, and if that "
 "fails,\n"
@@ -3905,6 +4001,8 @@ msgstr ""
 "    Options:\n"
 "      -f\ttreat each NAME as a shell function\n"
 "      -v\ttreat each NAME as a shell variable\n"
 "    Options:\n"
 "      -f\ttreat each NAME as a shell function\n"
 "      -v\ttreat each NAME as a shell variable\n"
+"      -n\ttreat each NAME as a name reference and unset the variable itself\n"
+"    \trather than the variable it references\n"
 "    \n"
 "    Without options, unset first tries to unset a variable, and if that "
 "fails,\n"
 "    \n"
 "    Without options, unset first tries to unset a variable, and if that "
 "fails,\n"
@@ -3915,7 +4013,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a NAME is read-only."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a NAME is read-only."
 
-#: builtins.c:1132
+#: builtins.c:1148
 msgid ""
 "Set export attribute for shell variables.\n"
 "    \n"
 msgid ""
 "Set export attribute for shell variables.\n"
 "    \n"
@@ -3949,7 +4047,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or NAME is invalid."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or NAME is invalid."
 
-#: builtins.c:1151
+#: builtins.c:1167
 msgid ""
 "Mark shell variables as unchangeable.\n"
 "    \n"
 msgid ""
 "Mark shell variables as unchangeable.\n"
 "    \n"
@@ -3961,7 +4059,9 @@ msgid ""
 "      -a\trefer to indexed array variables\n"
 "      -A\trefer to associative array variables\n"
 "      -f\trefer to shell functions\n"
 "      -a\trefer to indexed array variables\n"
 "      -A\trefer to associative array variables\n"
 "      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
+"      -p\tdisplay a list of all readonly variables or functions, depending "
+"on\n"
+"            whether or not the -f option is given\n"
 "    \n"
 "    An argument of `--' disables further option processing.\n"
 "    \n"
 "    \n"
 "    An argument of `--' disables further option processing.\n"
 "    \n"
@@ -3978,14 +4078,16 @@ msgstr ""
 "      -a\trefer to indexed array variables\n"
 "      -A\trefer to associative array variables\n"
 "      -f\trefer to shell functions\n"
 "      -a\trefer to indexed array variables\n"
 "      -A\trefer to associative array variables\n"
 "      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
+"      -p\tdisplay a list of all readonly variables or functions, depending "
+"on\n"
+"            whether or not the -f option is given\n"
 "    \n"
 "    An argument of ‘\e[1m--\e[0m’ disables further option processing.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or NAME is invalid."
 
 "    \n"
 "    An argument of ‘\e[1m--\e[0m’ disables further option processing.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or NAME is invalid."
 
-#: builtins.c:1172
+#: builtins.c:1189
 msgid ""
 "Shift positional parameters.\n"
 "    \n"
 msgid ""
 "Shift positional parameters.\n"
 "    \n"
@@ -4003,7 +4105,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless N is negative or greater than $#."
 
 "    Exit Status:\n"
 "    Returns success unless N is negative or greater than $#."
 
-#: builtins.c:1184 builtins.c:1199
+#: builtins.c:1201 builtins.c:1216
 msgid ""
 "Execute commands from a file in the current shell.\n"
 "    \n"
 msgid ""
 "Execute commands from a file in the current shell.\n"
 "    \n"
@@ -4027,7 +4129,7 @@ msgstr ""
 "    Returns the status of the last command executed in FILENAME; fails if\n"
 "    FILENAME cannot be read."
 
 "    Returns the status of the last command executed in FILENAME; fails if\n"
 "    FILENAME cannot be read."
 
-#: builtins.c:1215
+#: builtins.c:1232
 msgid ""
 "Suspend shell execution.\n"
 "    \n"
 msgid ""
 "Suspend shell execution.\n"
 "    \n"
@@ -4051,7 +4153,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless job control is not enabled or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless job control is not enabled or an error occurs."
 
-#: builtins.c:1231
+#: builtins.c:1248
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
@@ -4116,6 +4218,8 @@ msgid ""
 "    \n"
 "      -o OPTION      True if the shell option OPTION is enabled.\n"
 "      -v VAR\t True if the shell variable VAR is set\n"
 "    \n"
 "      -o OPTION      True if the shell option OPTION is enabled.\n"
 "      -v VAR\t True if the shell variable VAR is set\n"
+"      -R VAR\t True if the shell variable VAR is set and is a name "
+"reference.\n"
 "      ! EXPR         True if expr is false.\n"
 "      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
 "      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
 "      ! EXPR         True if expr is false.\n"
 "      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
 "      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
@@ -4194,6 +4298,8 @@ msgstr ""
 "    \n"
 "      -o OPTION      True if the shell option OPTION is enabled.\n"
 "      -v VAR\t True if the shell variable VAR is set\n"
 "    \n"
 "      -o OPTION      True if the shell option OPTION is enabled.\n"
 "      -v VAR\t True if the shell variable VAR is set\n"
+"      -R VAR\t True if the shell variable VAR is set and is a name "
+"reference.\n"
 "      ! EXPR         True if expr is false.\n"
 "      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
 "      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
 "      ! EXPR         True if expr is false.\n"
 "      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
 "      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
@@ -4209,7 +4315,7 @@ msgstr ""
 "    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
 "    false or an invalid argument is given."
 
 "    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
 "    false or an invalid argument is given."
 
-#: builtins.c:1311
+#: builtins.c:1329
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
@@ -4222,7 +4328,7 @@ msgstr ""
 "must\n"
 "    be a literal ‘\e[1m]\e[0m’, to match the opening ‘\e[1m[\e[0m’."
 
 "must\n"
 "    be a literal ‘\e[1m]\e[0m’, to match the opening ‘\e[1m[\e[0m’."
 
-#: builtins.c:1320
+#: builtins.c:1338
 msgid ""
 "Display process times.\n"
 "    \n"
 msgid ""
 "Display process times.\n"
 "    \n"
@@ -4242,7 +4348,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Always succeeds."
 
 "    Exit Status:\n"
 "    Always succeeds."
 
-#: builtins.c:1332
+#: builtins.c:1350
 msgid ""
 "Trap signals and other events.\n"
 "    \n"
 msgid ""
 "Trap signals and other events.\n"
 "    \n"
@@ -4327,7 +4433,7 @@ msgstr ""
 "    Returns success unless a SIGSPEC is invalid or an invalid option is "
 "given."
 
 "    Returns success unless a SIGSPEC is invalid or an invalid option is "
 "given."
 
-#: builtins.c:1368
+#: builtins.c:1386
 msgid ""
 "Display information about command type.\n"
 "    \n"
 msgid ""
 "Display information about command type.\n"
 "    \n"
@@ -4371,8 +4477,8 @@ msgstr ""
 "    \tthat would be executed\n"
 "      -p\treturns either the name of the disk file that would be executed,\n"
 "    \tor nothing if ‘\e[1mtype -t NAME\e[0m’ would not return ‘\e[1mfile\e[0m’.\n"
 "    \tthat would be executed\n"
 "      -p\treturns either the name of the disk file that would be executed,\n"
 "    \tor nothing if ‘\e[1mtype -t NAME\e[0m’ would not return ‘\e[1mfile\e[0m’.\n"
-"      -t\toutput a single word which is one of ‘\e[1malias\e[0m’, \e[1mkeyword\e"
-"[0m’,\n"
+"      -t\toutput a single word which is one of ‘\e[1malias\e[0m’, "
+"\e[1mkeyword\e[0m’,\n"
 "    \t‘\e[1mfunction\e[0m’, ‘\e[1mbuiltin\e[0m’, ‘\e[1mfile\e[0m’ or ‘\e[1m\e[0m’, if NAME "
 "is an alias, shell\n"
 "    \treserved word, shell function, shell builtin, disk file, or not\n"
 "    \t‘\e[1mfunction\e[0m’, ‘\e[1mbuiltin\e[0m’, ‘\e[1mfile\e[0m’ or ‘\e[1m\e[0m’, if NAME "
 "is an alias, shell\n"
 "    \treserved word, shell function, shell builtin, disk file, or not\n"
@@ -4385,7 +4491,7 @@ msgstr ""
 "    Returns success if all of the NAMEs are found; fails if any are not "
 "found."
 
 "    Returns success if all of the NAMEs are found; fails if any are not "
 "found."
 
-#: builtins.c:1399
+#: builtins.c:1417
 msgid ""
 "Modify shell resource limits.\n"
 "    \n"
 msgid ""
 "Modify shell resource limits.\n"
 "    \n"
@@ -4414,6 +4520,9 @@ msgid ""
 "      -u\tthe maximum number of user processes\n"
 "      -v\tthe size of virtual memory\n"
 "      -x\tthe maximum number of file locks\n"
 "      -u\tthe maximum number of user processes\n"
 "      -v\tthe size of virtual memory\n"
 "      -x\tthe maximum number of file locks\n"
+"      -T    the maximum number of threads\n"
+"    \n"
+"    Not all options are available on all platforms.\n"
 "    \n"
 "    If LIMIT is given, it is the new value of the specified resource; the\n"
 "    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
 "    \n"
 "    If LIMIT is given, it is the new value of the specified resource; the\n"
 "    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
@@ -4455,6 +4564,9 @@ msgstr ""
 "      -u\tthe maximum number of user processes\n"
 "      -v\tthe size of virtual memory\n"
 "      -x\tthe maximum number of file locks\n"
 "      -u\tthe maximum number of user processes\n"
 "      -v\tthe size of virtual memory\n"
 "      -x\tthe maximum number of file locks\n"
+"      -T    the maximum number of threads\n"
+"    \n"
+"    Not all options are available on all platforms.\n"
 "    \n"
 "    If LIMIT is given, it is the new value of the specified resource; the\n"
 "    special LIMIT values ‘\e[1msoft\e[0m’, ‘\e[1mhard\e[0m’, and ‘\e[1munlimited\e[0m’ "
 "    \n"
 "    If LIMIT is given, it is the new value of the specified resource; the\n"
 "    special LIMIT values ‘\e[1msoft\e[0m’, ‘\e[1mhard\e[0m’, and ‘\e[1munlimited\e[0m’ "
@@ -4470,7 +4582,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
-#: builtins.c:1444
+#: builtins.c:1465
 msgid ""
 "Display or set file mode mask.\n"
 "    \n"
 msgid ""
 "Display or set file mode mask.\n"
 "    \n"
@@ -4502,61 +4614,69 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless MODE is invalid or an invalid option is given."
 
 "    Exit Status:\n"
 "    Returns success unless MODE is invalid or an invalid option is given."
 
-#: builtins.c:1464
+#: builtins.c:1485
 msgid ""
 "Wait for job completion and return exit status.\n"
 "    \n"
 msgid ""
 "Wait for job completion and return exit status.\n"
 "    \n"
-"    Waits for the process identified by ID, which may be a process ID or a\n"
+"    Waits for each process identified by an ID, which may be a process ID or "
+"a\n"
 "    job specification, and reports its termination status.  If ID is not\n"
 "    given, waits for all currently active child processes, and the return\n"
 "    status is zero.  If ID is a a job specification, waits for all "
 "processes\n"
 "    job specification, and reports its termination status.  If ID is not\n"
 "    given, waits for all currently active child processes, and the return\n"
 "    status is zero.  If ID is a a job specification, waits for all "
 "processes\n"
-"    in the job's pipeline.\n"
+"    in that job's pipeline.\n"
+"    \n"
+"    If the -n option is supplied, waits for the next job to terminate and\n"
+"    returns its exit status.\n"
 "    \n"
 "    Exit Status:\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
+"    Returns the status of the last ID; fails if ID is invalid or an invalid\n"
+"    option is given."
 msgstr ""
 "Wait for job completion and return exit status.\n"
 "    \n"
 msgstr ""
 "Wait for job completion and return exit status.\n"
 "    \n"
-"    Waits for the process identified by ID, which may be a process ID or a\n"
+"    Waits for each process identified by an ID, which may be a process ID or "
+"a\n"
 "    job specification, and reports its termination status.  If ID is not\n"
 "    given, waits for all currently active child processes, and the return\n"
 "    status is zero.  If ID is a a job specification, waits for all "
 "processes\n"
 "    job specification, and reports its termination status.  If ID is not\n"
 "    given, waits for all currently active child processes, and the return\n"
 "    status is zero.  If ID is a a job specification, waits for all "
 "processes\n"
-"    in the job's pipeline.\n"
+"    in that job's pipeline.\n"
+"    \n"
+"    If the -n option is supplied, waits for the next job to terminate and\n"
+"    returns its exit status.\n"
 "    \n"
 "    Exit Status:\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
+"    Returns the status of the last ID; fails if ID is invalid or an invalid\n"
+"    option is given."
 
 
-#: builtins.c:1482
+#: builtins.c:1506
 msgid ""
 "Wait for process completion and return exit status.\n"
 "    \n"
 msgid ""
 "Wait for process completion and return exit status.\n"
 "    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
+"    Waits for each process specified by a PID and reports its termination "
+"status.\n"
+"    If PID is not given, waits for all currently active child processes,\n"
+"    and the return status is zero.  PID must be a process ID.\n"
 "    \n"
 "    Exit Status:\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
+"    Returns the status of the last PID; fails if PID is invalid or an "
+"invalid\n"
+"    option is given."
 msgstr ""
 "Wait for process completion and return exit status.\n"
 "    \n"
 msgstr ""
 "Wait for process completion and return exit status.\n"
 "    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
+"    Waits for each process specified by a PID and reports its termination "
+"status.\n"
+"    If PID is not given, waits for all currently active child processes,\n"
+"    and the return status is zero.  PID must be a process ID.\n"
 "    \n"
 "    Exit Status:\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
+"    Returns the status of the last PID; fails if PID is invalid or an "
+"invalid\n"
+"    option is given."
 
 
-#: builtins.c:1497
+#: builtins.c:1521
 msgid ""
 "Execute commands for each member in a list.\n"
 "    \n"
 msgid ""
 "Execute commands for each member in a list.\n"
 "    \n"
@@ -4580,7 +4700,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1511
+#: builtins.c:1535
 msgid ""
 "Arithmetic for loop.\n"
 "    \n"
 msgid ""
 "Arithmetic for loop.\n"
 "    \n"
@@ -4610,7 +4730,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1529
+#: builtins.c:1553
 msgid ""
 "Select words from a list and execute commands.\n"
 "    \n"
 msgid ""
 "Select words from a list and execute commands.\n"
 "    \n"
@@ -4633,8 +4753,8 @@ msgstr ""
 "    \n"
 "    The WORDS are expanded, generating a list of words.  The\n"
 "    set of expanded words is printed on the standard error, each\n"
 "    \n"
 "    The WORDS are expanded, generating a list of words.  The\n"
 "    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If ‘\e[1min WORDS\e[0m’ is not present, ‘\e[1min “\e[1m$@\e"
-"[0m”\e[0m’\n"
+"    preceded by a number.  If ‘\e[1min WORDS\e[0m’ is not present, ‘\e[1min “\e[1m"
+"$@\e[0m”\e[0m’\n"
 "    is assumed.  The PS3 prompt is then displayed and a line read\n"
 "    from the standard input.  If the line consists of the number\n"
 "    corresponding to one of the displayed words, then NAME is set\n"
 "    is assumed.  The PS3 prompt is then displayed and a line read\n"
 "    from the standard input.  If the line consists of the number\n"
 "    corresponding to one of the displayed words, then NAME is set\n"
@@ -4647,7 +4767,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1550
+#: builtins.c:1574
 msgid ""
 "Report time consumed by pipeline's execution.\n"
 "    \n"
 msgid ""
 "Report time consumed by pipeline's execution.\n"
 "    \n"
@@ -4675,7 +4795,7 @@ msgstr ""
 "    Exit Status:\n"
 "    The return status is the return status of PIPELINE."
 
 "    Exit Status:\n"
 "    The return status is the return status of PIPELINE."
 
-#: builtins.c:1567
+#: builtins.c:1591
 msgid ""
 "Execute commands based on pattern matching.\n"
 "    \n"
 msgid ""
 "Execute commands based on pattern matching.\n"
 "    \n"
@@ -4693,7 +4813,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1579
+#: builtins.c:1603
 msgid ""
 "Execute commands based on conditional.\n"
 "    \n"
 msgid ""
 "Execute commands based on conditional.\n"
 "    \n"
@@ -4731,7 +4851,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1596
+#: builtins.c:1620
 msgid ""
 "Execute commands as long as a test succeeds.\n"
 "    \n"
 msgid ""
 "Execute commands as long as a test succeeds.\n"
 "    \n"
@@ -4749,7 +4869,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1608
+#: builtins.c:1632
 msgid ""
 "Execute commands as long as a test does not succeed.\n"
 "    \n"
 msgid ""
 "Execute commands as long as a test does not succeed.\n"
 "    \n"
@@ -4767,7 +4887,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1620
+#: builtins.c:1644
 msgid ""
 "Create a coprocess named NAME.\n"
 "    \n"
 msgid ""
 "Create a coprocess named NAME.\n"
 "    \n"
@@ -4789,7 +4909,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the exit status of COMMAND."
 
 "    Exit Status:\n"
 "    Returns the exit status of COMMAND."
 
-#: builtins.c:1634
+#: builtins.c:1658
 msgid ""
 "Define shell function.\n"
 "    \n"
 msgid ""
 "Define shell function.\n"
 "    \n"
@@ -4813,7 +4933,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless NAME is readonly."
 
 "    Exit Status:\n"
 "    Returns success unless NAME is readonly."
 
-#: builtins.c:1648
+#: builtins.c:1672
 msgid ""
 "Group commands as a unit.\n"
 "    \n"
 msgid ""
 "Group commands as a unit.\n"
 "    \n"
@@ -4831,7 +4951,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 
-#: builtins.c:1660
+#: builtins.c:1684
 msgid ""
 "Resume job in foreground.\n"
 "    \n"
 msgid ""
 "Resume job in foreground.\n"
 "    \n"
@@ -4856,7 +4976,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns the status of the resumed job."
 
 "    Exit Status:\n"
 "    Returns the status of the resumed job."
 
-#: builtins.c:1675
+#: builtins.c:1699
 msgid ""
 "Evaluate arithmetic expression.\n"
 "    \n"
 msgid ""
 "Evaluate arithmetic expression.\n"
 "    \n"
@@ -4874,7 +4994,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
 
 "    Exit Status:\n"
 "    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
 
-#: builtins.c:1687
+#: builtins.c:1711
 msgid ""
 "Execute conditional command.\n"
 "    \n"
 msgid ""
 "Execute conditional command.\n"
 "    \n"
@@ -4928,7 +5048,7 @@ msgstr ""
 "    Exit Status:\n"
 "    0 or 1 depending on value of EXPRESSION."
 
 "    Exit Status:\n"
 "    0 or 1 depending on value of EXPRESSION."
 
-#: builtins.c:1713
+#: builtins.c:1737
 msgid ""
 "Common shell variable names and usage.\n"
 "    \n"
 msgid ""
 "Common shell variable names and usage.\n"
 "    \n"
@@ -5032,7 +5152,7 @@ msgstr ""
 "    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
 "    \t\tcommands should be saved on the history list.\n"
 
 "    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
 "    \t\tcommands should be saved on the history list.\n"
 
-#: builtins.c:1770
+#: builtins.c:1794
 msgid ""
 "Add directories to stack.\n"
 "    \n"
 msgid ""
 "Add directories to stack.\n"
 "    \n"
@@ -5090,7 +5210,7 @@ msgstr ""
 "    Returns success unless an invalid argument is supplied or the directory\n"
 "    change fails."
 
 "    Returns success unless an invalid argument is supplied or the directory\n"
 "    change fails."
 
-#: builtins.c:1804
+#: builtins.c:1828
 msgid ""
 "Remove directories from stack.\n"
 "    \n"
 msgid ""
 "Remove directories from stack.\n"
 "    \n"
@@ -5127,13 +5247,13 @@ msgstr ""
 "    \n"
 "    Arguments:\n"
 "      +N\tRemoves the Nth entry counting from the left of the list\n"
 "    \n"
 "    Arguments:\n"
 "      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd +0\e"
-"[0m’\n"
+"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd "
+"+0\e[0m’\n"
 "    \tremoves the first directory, ‘\e[1mpopd +1\e[0m’ the second.\n"
 "    \n"
 "      -N\tRemoves the Nth entry counting from the right of the list\n"
 "    \tremoves the first directory, ‘\e[1mpopd +1\e[0m’ the second.\n"
 "    \n"
 "      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd -0\e"
-"[0m’\n"
+"    \tshown by ‘\e[1mdirs\e[0m’, starting with zero.  For example: ‘\e[1mpopd "
+"-0\e[0m’\n"
 "    \tremoves the last directory, ‘\e[1mpopd -1\e[0m’ the next to last.\n"
 "    \n"
 "    The ‘\e[1mdirs\e[0m’ builtin displays the directory stack.\n"
 "    \tremoves the last directory, ‘\e[1mpopd -1\e[0m’ the next to last.\n"
 "    \n"
 "    The ‘\e[1mdirs\e[0m’ builtin displays the directory stack.\n"
@@ -5142,7 +5262,7 @@ msgstr ""
 "    Returns success unless an invalid argument is supplied or the directory\n"
 "    change fails."
 
 "    Returns success unless an invalid argument is supplied or the directory\n"
 "    change fails."
 
-#: builtins.c:1834
+#: builtins.c:1858
 msgid ""
 "Display directory stack.\n"
 "    \n"
 msgid ""
 "Display directory stack.\n"
 "    \n"
@@ -5197,7 +5317,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
-#: builtins.c:1863
+#: builtins.c:1887
 msgid ""
 "Set and unset shell options.\n"
 "    \n"
 msgid ""
 "Set and unset shell options.\n"
 "    \n"
@@ -5235,7 +5355,7 @@ msgstr ""
 "    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
 "    given or OPTNAME is disabled."
 
 "    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
 "    given or OPTNAME is disabled."
 
-#: builtins.c:1884
+#: builtins.c:1908
 msgid ""
 "Formats and prints ARGUMENTS under control of the FORMAT.\n"
 "    \n"
 msgid ""
 "Formats and prints ARGUMENTS under control of the FORMAT.\n"
 "    \n"
@@ -5252,9 +5372,9 @@ msgid ""
 "successive\n"
 "    argument.\n"
 "    \n"
 "successive\n"
 "    argument.\n"
 "    \n"
-"    In addition to the standard format specifications described in printf"
-"(1)\n"
-"    and printf(3), printf interprets:\n"
+"    In addition to the standard format specifications described in "
+"printf(1),\n"
+"    printf interprets:\n"
 "    \n"
 "      %b\texpand backslash escape sequences in the corresponding argument\n"
 "      %q\tquote the argument in a way that can be reused as shell input\n"
 "    \n"
 "      %b\texpand backslash escape sequences in the corresponding argument\n"
 "      %q\tquote the argument in a way that can be reused as shell input\n"
@@ -5262,6 +5382,12 @@ msgid ""
 "format\n"
 "            string for strftime(3)\n"
 "    \n"
 "format\n"
 "            string for strftime(3)\n"
 "    \n"
+"    The format is re-used as necessary to consume all of the arguments.  If\n"
+"    there are fewer arguments than the format requires,  extra format\n"
+"    specifications behave as if a zero value or null string, as "
+"appropriate,\n"
+"    had been supplied.\n"
+"    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a write or "
 "assignment\n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a write or "
 "assignment\n"
@@ -5282,9 +5408,9 @@ msgstr ""
 "successive\n"
 "    argument.\n"
 "    \n"
 "successive\n"
 "    argument.\n"
 "    \n"
-"    In addition to the standard format specifications described in printf"
-"(1)\n"
-"    and printf(3), printf interprets:\n"
+"    In addition to the standard format specifications described in "
+"printf(1),\n"
+"    printf interprets:\n"
 "    \n"
 "      %b\texpand backslash escape sequences in the corresponding argument\n"
 "      %q\tquote the argument in a way that can be reused as shell input\n"
 "    \n"
 "      %b\texpand backslash escape sequences in the corresponding argument\n"
 "      %q\tquote the argument in a way that can be reused as shell input\n"
@@ -5292,12 +5418,18 @@ msgstr ""
 "format\n"
 "            string for strftime(3)\n"
 "    \n"
 "format\n"
 "            string for strftime(3)\n"
 "    \n"
+"    The format is re-used as necessary to consume all of the arguments.  If\n"
+"    there are fewer arguments than the format requires,  extra format\n"
+"    specifications behave as if a zero value or null string, as "
+"appropriate,\n"
+"    had been supplied.\n"
+"    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a write or "
 "assignment\n"
 "    error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a write or "
 "assignment\n"
 "    error occurs."
 
-#: builtins.c:1913
+#: builtins.c:1942
 msgid ""
 "Specify how arguments are to be completed by Readline.\n"
 "    \n"
 msgid ""
 "Specify how arguments are to be completed by Readline.\n"
 "    \n"
@@ -5347,7 +5479,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
-#: builtins.c:1941
+#: builtins.c:1970
 msgid ""
 "Display possible completions depending on the options.\n"
 "    \n"
 msgid ""
 "Display possible completions depending on the options.\n"
 "    \n"
@@ -5369,7 +5501,7 @@ msgstr ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 
-#: builtins.c:1956
+#: builtins.c:1985
 msgid ""
 "Modify or display completion options.\n"
 "    \n"
 msgid ""
 "Modify or display completion options.\n"
 "    \n"
@@ -5428,7 +5560,7 @@ msgstr ""
 "    Returns success unless an invalid option is supplied or NAME does not\n"
 "    have a completion specification defined."
 
 "    Returns success unless an invalid option is supplied or NAME does not\n"
 "    have a completion specification defined."
 
-#: builtins.c:1986
+#: builtins.c:2015
 msgid ""
 "Read lines from the standard input into an indexed array variable.\n"
 "    \n"
 msgid ""
 "Read lines from the standard input into an indexed array variable.\n"
 "    \n"
@@ -5506,7 +5638,7 @@ msgstr ""
 "or\n"
 "    not an indexed array."
 
 "or\n"
 "    not an indexed array."
 
-#: builtins.c:2020
+#: builtins.c:2049
 msgid ""
 "Read lines from a file into an array variable.\n"
 "    \n"
 msgid ""
 "Read lines from a file into an array variable.\n"
 "    \n"