new readline application variable rl_full_quoting_desired; new programmable completion option "fullquote"; TIMEFORMAT now accepts precisions up to six digits

This commit is contained in:
Chet Ramey
2023-06-16 12:49:11 -04:00
parent 76112093ec
commit b91488b51c
39 changed files with 5541 additions and 5354 deletions
+63
View File
@@ -6614,3 +6614,66 @@ builtins/shopt.def
doc/bash.1,doc/bashref.texi
- array_expand_once: document new shopt option
6/15
----
lib/readline/complete.c
- rl_full_quoting_desired: new application-settable variable, if set
to non-zero by an application completion function, all completions
will be quoted as if they were filenames, subject to the value of
rl_filename_quote_characters. Initialized to 0 and reset to 0
by set_completion_defaults.
From a contribution by Grisha Levit <grishalevit@gmail.com>
- QUOTING_DESIRED: new macro to check whether we should quote completions
lib/readline/readline.h
- rl_full_quoting_desired: extern declaration
lib/readline/doc/rltech.texi
- rl_full_quoting_desired: document
configure.ac
- bumped version to 5.3-devel
pcomplete.h
- COPT_FULLQUOTE: new compspec option, for rl_full_quoting_desired
pcomplete.c
- pcomp_set_readline_variables: set rl_full_quoting_desired according
to COPT_FULLQUOTE
builtins/complete.def
- fullquote: add new complete/compopt option value
doc/bash.1,lib/readline/doc/rluser.texi
- fullquote: document new complete/compopt option
lib/sh/timeval.c
- timeval_to_secs: sfp argument is now a long *; there is a new
maxval argument (always 10^6 for now) that determines how to
round; returns tv_usec in *sfp if maxval == 10^6; otherwise
return value is basically tv_usec/maxval with rounding
- print_timeval: change argument type in call to timeval_to_secs
lib/sh/clock.c
- clock_t_to_secs: sfp argument is now a long *
- print_clock_t: change argument type in call to clock_t_to_secs
externs.h
- timeval_to_seconds, clock_t_to_seconds: change prototypes
execute_cmd.c
- mkfmt,print_formatted_time: fractional seconds arguments are now
longs
- mkfmt: accept precisions up to 6; since sec_fraction is in usecs,
perform any necessary rounding for precisions < 6
- print_formatted_time: allow precision specifiers up to 6; default
is still 3
- time_command: fractional seconds variables are now long; add new
argument to timeval_to_secs (always 1000000)
- time_command: if we call clock_t_to_secs, multiply the return
fractional seconds value by 1000 to convert it from msec to usec
doc/bash.1,doc/bashref.texi
- TIMEFORMAT: document that the max precision is now 6
From https://savannah.gnu.org/support/?110343
+1
View File
@@ -145,6 +145,7 @@ static const struct _compopt {
{ "default", COPT_DEFAULT },
{ "dirnames", COPT_DIRNAMES },
{ "filenames",COPT_FILENAMES},
{ "fullquote",COPT_FULLQUOTE},
{ "noquote", COPT_NOQUOTE },
{ "nosort", COPT_NOSORT },
{ "nospace", COPT_NOSPACE },
Vendored
+12 -12
View File
@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.ac for Bash 5.2, version 5.052.
# From configure.ac for Bash 5.2, version 5.053.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for bash 5.2-maint.
# Generated by GNU Autoconf 2.71 for bash 5.3-devel.
#
# Report bugs to <bug-bash@gnu.org>.
#
@@ -612,8 +612,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='bash'
PACKAGE_TARNAME='bash'
PACKAGE_VERSION='5.2-maint'
PACKAGE_STRING='bash 5.2-maint'
PACKAGE_VERSION='5.3-devel'
PACKAGE_STRING='bash 5.3-devel'
PACKAGE_BUGREPORT='bug-bash@gnu.org'
PACKAGE_URL=''
@@ -1467,7 +1467,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures bash 5.2-maint to adapt to many kinds of systems.
\`configure' configures bash 5.3-devel to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1533,7 +1533,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of bash 5.2-maint:";;
short | recursive ) echo "Configuration of bash 5.3-devel:";;
esac
cat <<\_ACEOF
@@ -1740,7 +1740,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
bash configure 5.2-maint
bash configure 5.3-devel
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2397,7 +2397,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by bash $as_me 5.2-maint, which was
It was created by bash $as_me 5.3-devel, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -3175,8 +3175,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
ac_config_headers="$ac_config_headers config.h"
BASHVERS=5.2
RELSTATUS=maint
BASHVERS=5.3
RELSTATUS=devel
case "$RELSTATUS" in
alp*|bet*|dev*|rc*|releng*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
@@ -22407,7 +22407,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by bash $as_me 5.2-maint, which was
This file was extended by bash $as_me 5.3-devel, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -22475,7 +22475,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
bash config.status 5.2-maint
bash config.status 5.3-devel
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
+3 -3
View File
@@ -21,10 +21,10 @@ dnl Process this file with autoconf to produce a configure script.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AC_REVISION([for Bash 5.2, version 5.052])dnl
AC_REVISION([for Bash 5.2, version 5.053])dnl
define(bashvers, 5.2)
define(relstatus, maint)
define(bashvers, 5.3)
define(relstatus, devel)
AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org])
+896 -892
View File
File diff suppressed because it is too large Load Diff
+10 -6
View File
@@ -5,12 +5,12 @@
.\" Case Western Reserve University
.\" chet.ramey@case.edu
.\"
.\" Last Change: Tue Jun 13 10:33:46 EDT 2023
.\" Last Change: Thu Jun 15 18:11:33 EDT 2023
.\"
.\" bash_builtins, strip all but Built-Ins section
.if \n(zZ=1 .ig zZ
.if \n(zY=1 .ig zY
.TH BASH 1 "2023 June 13" "GNU Bash 5.2"
.TH BASH 1 "2023 June 15" "GNU Bash 5.3"
.\"
.\" There's some problem with having a `@'
.\" in a tagged paragraph with the BSD man macros.
@@ -588,8 +588,7 @@ total user and system time consumed by the shell and its children.
The
.SM
.B TIMEFORMAT
variable may be used to specify the format of
the time information.
variable specifies the format of the time information.
.PP
Each command in a multi-command pipeline,
where pipes are created,
@@ -2658,8 +2657,8 @@ The CPU percentage, computed as (%U + %S) / %R.
The optional \fIp\fP is a digit specifying the \fIprecision\fP,
the number of fractional digits after a decimal point.
A value of 0 causes no decimal point or fraction to be output.
At most three places after the decimal point may be specified;
values of \fIp\fP greater than 3 are changed to 3.
At most six places after the decimal point may be specified;
values of \fIp\fP greater than 6 are changed to 6.
If \fIp\fP is not specified, the value 3 is used.
.IP
The optional \fBl\fP specifies a longer format, including
@@ -8219,6 +8218,7 @@ The arguments to the \fB\-G\fP, \fB\-W\fP, and \fB\-X\fP options
should be quoted to protect them from expansion before the
.B complete
builtin is invoked.
.sp 1
.RS
.PD 0
.TP 8
@@ -8245,6 +8245,10 @@ filename\-specific processing (like adding a slash to directory names,
quoting special characters, or suppressing trailing spaces).
Intended to be used with shell functions.
.TP 8
.B fullquote
Tell readline to quote all the completed words even if they are not
filenames.
.TP 8
.B noquote
Tell readline not to quote the completed words if they are filenames
(quoting filenames is the default).
+13 -8
View File
@@ -3,7 +3,7 @@
</HEAD>
<BODY><TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2023 June 13<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2023 June 15<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<BR><A HREF="#index">Index</A>
@@ -785,8 +785,7 @@ The
<FONT SIZE=-1><B>TIMEFORMAT</B>
</FONT>
variable may be used to specify the format of
the time information.
variable specifies the format of the time information.
<P>
Each command in a multi-command pipeline,
@@ -3360,8 +3359,8 @@ The CPU percentage, computed as (%U + %S) / %R.
The optional <I>p</I> is a digit specifying the <I>precision</I>,
the number of fractional digits after a decimal point.
A value of 0 causes no decimal point or fraction to be output.
At most three places after the decimal point may be specified;
values of <I>p</I> greater than 3 are changed to 3.
At most six places after the decimal point may be specified;
values of <I>p</I> greater than 6 are changed to 6.
If <I>p</I> is not specified, the value 3 is used.
<DT><DD>
The optional <B>l</B> specifies a longer format, including
@@ -10387,6 +10386,7 @@ should be quoted to protect them from expansion before the
<B>complete</B>
builtin is invoked.
<P>
<DL COMPACT><DT><DD>
<DL COMPACT>
@@ -10417,6 +10417,11 @@ Tell readline that the compspec generates filenames, so it can perform any
filename-specific processing (like adding a slash to directory names,
quoting special characters, or suppressing trailing spaces).
Intended to be used with shell functions.
<DT><B>fullquote</B>
<DD>
Tell readline to quote all the completed words even if they are not
filenames.
<DT><B>noquote</B>
<DD>
@@ -15004,7 +15009,7 @@ There may be only one active coprocess at a time.
<HR>
<TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>GNU Bash 5.2<TH ALIGN=CENTER width=33%>2023 June 13<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2023 June 15<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<HR>
@@ -15110,7 +15115,7 @@ There may be only one active coprocess at a time.
<DT><A HREF="#lbDI">BUGS</A><DD>
</DL>
<HR>
This document was created by man2html from /usr/local/src/bash/bash-20230612/doc/bash.1.<BR>
Time: 13 June 2023 10:42:12 EDT
This document was created by man2html from /usr/local/src/bash/bash-20230614/doc/bash.1.<BR>
Time: 15 June 2023 18:17:34 EDT
</BODY>
</HTML>
+127 -124
View File
@@ -1,10 +1,10 @@
This is bash.info, produced by makeinfo version 6.8 from bashref.texi.
This text is a brief description of the features that are present in the
Bash shell (version 5.2, 13 June 2023).
Bash shell (version 5.3, 15 June 2023).
This is Edition 5.2, last updated 13 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.2.
This is Edition 5.3, last updated 15 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.3.
Copyright (C) 1988-2023 Free Software Foundation, Inc.
@@ -26,11 +26,11 @@ Bash Features
*************
This text is a brief description of the features that are present in the
Bash shell (version 5.2, 13 June 2023). The Bash home page is
Bash shell (version 5.3, 15 June 2023). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.2, last updated 13 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.2.
This is Edition 5.3, last updated 15 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.3.
Bash contains features that appear in other popular shells, and some
features that only appear in Bash. Some of the shells that Bash has
@@ -698,8 +698,7 @@ command cannot time these easily.
When the shell is in POSIX mode (*note Bash POSIX Mode::), 'time' may
be followed by a newline. In this case, the shell displays the total
user and system time consumed by the shell and its children. The
'TIMEFORMAT' variable may be used to specify the format of the time
information.
'TIMEFORMAT' variable specifies the format of the time information.
If the pipeline is not executed asynchronously (*note Lists::), the
shell waits for all commands in the pipeline to complete.
@@ -5991,9 +5990,9 @@ Variables::).
The optional P is a digit specifying the precision, the number of
fractional digits after a decimal point. A value of 0 causes no
decimal point or fraction to be output. At most three places after
the decimal point may be specified; values of P greater than 3 are
changed to 3. If P is not specified, the value 3 is used.
decimal point or fraction to be output. At most six places after
the decimal point may be specified; values of P greater than 6 are
changed to 6. If P is not specified, the value 3 is used.
The optional 'l' specifies a longer format, including minutes, of
the form MMmSS.FFs. The value of P determines whether or not the
@@ -9841,6 +9840,10 @@ happening.
is intended to be used with shell functions specified
with '-F'.
'fullquote'
Tell Readline to quote all the completed words even if
they are not filenames.
'noquote'
Tell Readline not to quote the completed words if they
are filenames (quoting filenames is the default).
@@ -12023,7 +12026,7 @@ D.1 Index of Shell Builtin Commands
* complete: Programmable Completion Builtins.
(line 36)
* compopt: Programmable Completion Builtins.
(line 244)
(line 248)
* continue: Bourne Shell Builtins.
(line 90)
* declare: Bash Builtins. (line 154)
@@ -12790,118 +12793,118 @@ Node: Shell Commands23880
Node: Reserved Words24815
Node: Simple Commands25568
Node: Pipelines26219
Node: Lists29215
Node: Compound Commands31007
Node: Looping Constructs32016
Node: Conditional Constructs34508
Node: Command Grouping48993
Node: Coprocesses50468
Node: GNU Parallel53128
Node: Shell Functions54042
Node: Shell Parameters61924
Node: Positional Parameters66309
Node: Special Parameters67208
Node: Shell Expansions70419
Node: Brace Expansion72543
Node: Tilde Expansion75274
Node: Shell Parameter Expansion77892
Node: Command Substitution96291
Node: Arithmetic Expansion99752
Node: Process Substitution100717
Node: Word Splitting101834
Node: Filename Expansion103879
Node: Pattern Matching106809
Node: Quote Removal111808
Node: Redirections112100
Node: Executing Commands121790
Node: Simple Command Expansion122457
Node: Command Search and Execution124564
Node: Command Execution Environment126948
Node: Environment129980
Node: Exit Status131640
Node: Signals133421
Node: Shell Scripts136867
Node: Shell Builtin Commands139891
Node: Bourne Shell Builtins141926
Node: Bash Builtins164257
Node: Modifying Shell Behavior196253
Node: The Set Builtin196595
Node: The Shopt Builtin207190
Node: Special Builtins223194
Node: Shell Variables224170
Node: Bourne Shell Variables224604
Node: Bash Variables226705
Node: Bash Features260767
Node: Invoking Bash261777
Node: Bash Startup Files267787
Node: Interactive Shells272915
Node: What is an Interactive Shell?273323
Node: Is this Shell Interactive?273969
Node: Interactive Shell Behavior274781
Node: Bash Conditional Expressions278407
Node: Shell Arithmetic283046
Node: Aliases286004
Node: Arrays288895
Node: The Directory Stack295455
Node: Directory Stack Builtins296236
Node: Controlling the Prompt300493
Node: The Restricted Shell303455
Node: Bash POSIX Mode306062
Node: Shell Compatibility Mode321852
Node: Job Control330093
Node: Job Control Basics330550
Node: Job Control Builtins335549
Node: Job Control Variables341341
Node: Command Line Editing342494
Node: Introduction and Notation344162
Node: Readline Interaction345782
Node: Readline Bare Essentials346970
Node: Readline Movement Commands348756
Node: Readline Killing Commands349713
Node: Readline Arguments351631
Node: Searching352672
Node: Readline Init File354855
Node: Readline Init File Syntax356113
Node: Conditional Init Constructs379901
Node: Sample Init File384094
Node: Bindable Readline Commands387215
Node: Commands For Moving388416
Node: Commands For History390464
Node: Commands For Text395455
Node: Commands For Killing399101
Node: Numeric Arguments402131
Node: Commands For Completion403267
Node: Keyboard Macros407455
Node: Miscellaneous Commands408140
Node: Readline vi Mode414175
Node: Programmable Completion415079
Node: Programmable Completion Builtins422856
Node: A Programmable Completion Example433841
Node: Using History Interactively439086
Node: Bash History Facilities439767
Node: Bash History Builtins442769
Node: History Interaction447790
Node: Event Designators451407
Node: Word Designators452758
Node: Modifiers454515
Node: Installing Bash456320
Node: Basic Installation457454
Node: Compilers and Options461173
Node: Compiling For Multiple Architectures461911
Node: Installation Names463600
Node: Specifying the System Type465706
Node: Sharing Defaults466420
Node: Operation Controls467090
Node: Optional Features468045
Node: Reporting Bugs479261
Node: Major Differences From The Bourne Shell480592
Node: GNU Free Documentation License497438
Node: Indexes522612
Node: Builtin Index523063
Node: Reserved Word Index530161
Node: Variable Index532606
Node: Function Index549591
Node: Concept Index563372
Node: Lists29202
Node: Compound Commands30994
Node: Looping Constructs32003
Node: Conditional Constructs34495
Node: Command Grouping48980
Node: Coprocesses50455
Node: GNU Parallel53115
Node: Shell Functions54029
Node: Shell Parameters61911
Node: Positional Parameters66296
Node: Special Parameters67195
Node: Shell Expansions70406
Node: Brace Expansion72530
Node: Tilde Expansion75261
Node: Shell Parameter Expansion77879
Node: Command Substitution96278
Node: Arithmetic Expansion99739
Node: Process Substitution100704
Node: Word Splitting101821
Node: Filename Expansion103866
Node: Pattern Matching106796
Node: Quote Removal111795
Node: Redirections112087
Node: Executing Commands121777
Node: Simple Command Expansion122444
Node: Command Search and Execution124551
Node: Command Execution Environment126935
Node: Environment129967
Node: Exit Status131627
Node: Signals133408
Node: Shell Scripts136854
Node: Shell Builtin Commands139878
Node: Bourne Shell Builtins141913
Node: Bash Builtins164244
Node: Modifying Shell Behavior196240
Node: The Set Builtin196582
Node: The Shopt Builtin207177
Node: Special Builtins223181
Node: Shell Variables224157
Node: Bourne Shell Variables224591
Node: Bash Variables226692
Node: Bash Features260752
Node: Invoking Bash261762
Node: Bash Startup Files267772
Node: Interactive Shells272900
Node: What is an Interactive Shell?273308
Node: Is this Shell Interactive?273954
Node: Interactive Shell Behavior274766
Node: Bash Conditional Expressions278392
Node: Shell Arithmetic283031
Node: Aliases285989
Node: Arrays288880
Node: The Directory Stack295440
Node: Directory Stack Builtins296221
Node: Controlling the Prompt300478
Node: The Restricted Shell303440
Node: Bash POSIX Mode306047
Node: Shell Compatibility Mode321837
Node: Job Control330078
Node: Job Control Basics330535
Node: Job Control Builtins335534
Node: Job Control Variables341326
Node: Command Line Editing342479
Node: Introduction and Notation344147
Node: Readline Interaction345767
Node: Readline Bare Essentials346955
Node: Readline Movement Commands348741
Node: Readline Killing Commands349698
Node: Readline Arguments351616
Node: Searching352657
Node: Readline Init File354840
Node: Readline Init File Syntax356098
Node: Conditional Init Constructs379886
Node: Sample Init File384079
Node: Bindable Readline Commands387200
Node: Commands For Moving388401
Node: Commands For History390449
Node: Commands For Text395440
Node: Commands For Killing399086
Node: Numeric Arguments402116
Node: Commands For Completion403252
Node: Keyboard Macros407440
Node: Miscellaneous Commands408125
Node: Readline vi Mode414160
Node: Programmable Completion415064
Node: Programmable Completion Builtins422841
Node: A Programmable Completion Example433958
Node: Using History Interactively439203
Node: Bash History Facilities439884
Node: Bash History Builtins442886
Node: History Interaction447907
Node: Event Designators451524
Node: Word Designators452875
Node: Modifiers454632
Node: Installing Bash456437
Node: Basic Installation457571
Node: Compilers and Options461290
Node: Compiling For Multiple Architectures462028
Node: Installation Names463717
Node: Specifying the System Type465823
Node: Sharing Defaults466537
Node: Operation Controls467207
Node: Optional Features468162
Node: Reporting Bugs479378
Node: Major Differences From The Bourne Shell480709
Node: GNU Free Documentation License497555
Node: Indexes522729
Node: Builtin Index523180
Node: Reserved Word Index530278
Node: Variable Index532723
Node: Function Index549708
Node: Concept Index563489

End Tag Table
BIN
View File
Binary file not shown.
+2002 -1998
View File
File diff suppressed because it is too large Load Diff
+25 -25
View File
@@ -319,72 +319,72 @@
@xrdef{Bash History Facilities-snt}{Section@tie 9.1}
@xrdef{Bash History Builtins-title}{Bash History Builtins}
@xrdef{Bash History Builtins-snt}{Section@tie 9.2}
@xrdef{Using History Interactively-pg}{156}
@xrdef{Bash History Facilities-pg}{156}
@xrdef{Bash History Builtins-pg}{156}
@xrdef{Using History Interactively-pg}{157}
@xrdef{Bash History Facilities-pg}{157}
@xrdef{Bash History Builtins-pg}{157}
@xrdef{History Interaction-title}{History Expansion}
@xrdef{History Interaction-snt}{Section@tie 9.3}
@xrdef{History Interaction-pg}{158}
@xrdef{History Interaction-pg}{159}
@xrdef{Event Designators-title}{Event Designators}
@xrdef{Event Designators-snt}{Section@tie 9.3.1}
@xrdef{Event Designators-pg}{159}
@xrdef{Event Designators-pg}{160}
@xrdef{Word Designators-title}{Word Designators}
@xrdef{Word Designators-snt}{Section@tie 9.3.2}
@xrdef{Modifiers-title}{Modifiers}
@xrdef{Modifiers-snt}{Section@tie 9.3.3}
@xrdef{Word Designators-pg}{160}
@xrdef{Modifiers-pg}{160}
@xrdef{Word Designators-pg}{161}
@xrdef{Modifiers-pg}{161}
@xrdef{Installing Bash-title}{Installing Bash}
@xrdef{Installing Bash-snt}{Chapter@tie 10}
@xrdef{Basic Installation-title}{Basic Installation}
@xrdef{Basic Installation-snt}{Section@tie 10.1}
@xrdef{Installing Bash-pg}{162}
@xrdef{Basic Installation-pg}{162}
@xrdef{Installing Bash-pg}{163}
@xrdef{Basic Installation-pg}{163}
@xrdef{Compilers and Options-title}{Compilers and Options}
@xrdef{Compilers and Options-snt}{Section@tie 10.2}
@xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures}
@xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3}
@xrdef{Installation Names-title}{Installation Names}
@xrdef{Installation Names-snt}{Section@tie 10.4}
@xrdef{Compilers and Options-pg}{163}
@xrdef{Compiling For Multiple Architectures-pg}{163}
@xrdef{Compilers and Options-pg}{164}
@xrdef{Compiling For Multiple Architectures-pg}{164}
@xrdef{Specifying the System Type-title}{Specifying the System Type}
@xrdef{Specifying the System Type-snt}{Section@tie 10.5}
@xrdef{Sharing Defaults-title}{Sharing Defaults}
@xrdef{Sharing Defaults-snt}{Section@tie 10.6}
@xrdef{Operation Controls-title}{Operation Controls}
@xrdef{Operation Controls-snt}{Section@tie 10.7}
@xrdef{Installation Names-pg}{164}
@xrdef{Specifying the System Type-pg}{164}
@xrdef{Sharing Defaults-pg}{164}
@xrdef{Installation Names-pg}{165}
@xrdef{Specifying the System Type-pg}{165}
@xrdef{Sharing Defaults-pg}{165}
@xrdef{Optional Features-title}{Optional Features}
@xrdef{Optional Features-snt}{Section@tie 10.8}
@xrdef{Operation Controls-pg}{165}
@xrdef{Optional Features-pg}{165}
@xrdef{Operation Controls-pg}{166}
@xrdef{Optional Features-pg}{166}
@xrdef{Reporting Bugs-title}{Reporting Bugs}
@xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}}
@xrdef{Reporting Bugs-pg}{171}
@xrdef{Reporting Bugs-pg}{172}
@xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell}
@xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}}
@xrdef{Major Differences From The Bourne Shell-pg}{172}
@xrdef{Major Differences From The Bourne Shell-pg}{173}
@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}}
@xrdef{GNU Free Documentation License-pg}{178}
@xrdef{GNU Free Documentation License-pg}{179}
@xrdef{Indexes-title}{Indexes}
@xrdef{Indexes-snt}{Appendix@tie @char68{}}
@xrdef{Builtin Index-title}{Index of Shell Builtin Commands}
@xrdef{Builtin Index-snt}{Section@tie @char68.1}
@xrdef{Indexes-pg}{186}
@xrdef{Builtin Index-pg}{186}
@xrdef{Indexes-pg}{187}
@xrdef{Builtin Index-pg}{187}
@xrdef{Reserved Word Index-title}{Index of Shell Reserved Words}
@xrdef{Reserved Word Index-snt}{Section@tie @char68.2}
@xrdef{Variable Index-title}{Parameter and Variable Index}
@xrdef{Variable Index-snt}{Section@tie @char68.3}
@xrdef{Reserved Word Index-pg}{187}
@xrdef{Variable Index-pg}{188}
@xrdef{Reserved Word Index-pg}{188}
@xrdef{Variable Index-pg}{189}
@xrdef{Function Index-title}{Function Index}
@xrdef{Function Index-snt}{Section@tie @char68.4}
@xrdef{Function Index-pg}{190}
@xrdef{Function Index-pg}{191}
@xrdef{Concept Index-title}{Concept Index}
@xrdef{Concept Index-snt}{Section@tie @char68.5}
@xrdef{Concept Index-pg}{192}
@xrdef{Concept Index-pg}{193}
+2 -2
View File
@@ -57,5 +57,5 @@
\entry{compgen}{150}{\code {compgen}}
\entry{complete}{150}{\code {complete}}
\entry{compopt}{153}{\code {compopt}}
\entry{fc}{157}{\code {fc}}
\entry{history}{157}{\code {history}}
\entry{fc}{158}{\code {fc}}
\entry{history}{158}{\code {history}}
+2 -2
View File
@@ -32,14 +32,14 @@
\entry{\code {export}}{51}
\initial {F}
\entry{\code {false}}{51}
\entry{\code {fc}}{157}
\entry{\code {fc}}{158}
\entry{\code {fg}}{118}
\initial {G}
\entry{\code {getopts}}{51}
\initial {H}
\entry{\code {hash}}{52}
\entry{\code {help}}{62}
\entry{\code {history}}{157}
\entry{\code {history}}{158}
\initial {J}
\entry{\code {jobs}}{118}
\initial {K}
+11 -11
View File
@@ -116,14 +116,14 @@
\entry{variables, readline}{125}{variables, readline}
\entry{programmable completion}{147}{programmable completion}
\entry{completion builtins}{150}{completion builtins}
\entry{History, how to use}{155}{History, how to use}
\entry{command history}{156}{command history}
\entry{history list}{156}{history list}
\entry{history builtins}{156}{history builtins}
\entry{history expansion}{158}{history expansion}
\entry{event designators}{159}{event designators}
\entry{history events}{159}{history events}
\entry{installation}{162}{installation}
\entry{configuration}{162}{configuration}
\entry{Bash installation}{162}{Bash installation}
\entry{Bash configuration}{162}{Bash configuration}
\entry{History, how to use}{156}{History, how to use}
\entry{command history}{157}{command history}
\entry{history list}{157}{history list}
\entry{history builtins}{157}{history builtins}
\entry{history expansion}{159}{history expansion}
\entry{event designators}{160}{event designators}
\entry{history events}{160}{history events}
\entry{installation}{163}{installation}
\entry{configuration}{163}{configuration}
\entry{Bash installation}{163}{Bash installation}
\entry{Bash configuration}{163}{Bash configuration}
+11 -11
View File
@@ -7,8 +7,8 @@
\entry{arrays}{102}
\initial {B}
\entry{background}{117}
\entry{Bash configuration}{162}
\entry{Bash installation}{162}
\entry{Bash configuration}{163}
\entry{Bash installation}{163}
\entry{binary arithmetic operators}{100}
\entry{bitwise arithmetic operators}{100}
\entry{Bourne shell}{5}
@@ -18,7 +18,7 @@
\entry{command editing}{122}
\entry{command execution}{43}
\entry{command expansion}{43}
\entry{command history}{156}
\entry{command history}{157}
\entry{command search}{43}
\entry{command substitution}{34}
\entry{command timing}{10}
@@ -35,7 +35,7 @@
\entry{Compatibility Mode}{113}
\entry{completion builtins}{150}
\entry{conditional arithmetic operator}{100}
\entry{configuration}{162}
\entry{configuration}{163}
\entry{control operator}{3}
\entry{coprocess}{18}
\initial {D}
@@ -44,7 +44,7 @@
\entry{editing command lines}{122}
\entry{environment}{45}
\entry{evaluation, arithmetic}{100}
\entry{event designators}{159}
\entry{event designators}{160}
\entry{execution environment}{44}
\entry{exit status}{3, 45}
\entry{expansion}{24}
@@ -63,15 +63,15 @@
\entry{foreground}{117}
\entry{functions, shell}{19}
\initial {H}
\entry{history builtins}{156}
\entry{history events}{159}
\entry{history expansion}{158}
\entry{history list}{156}
\entry{History, how to use}{155}
\entry{history builtins}{157}
\entry{history events}{160}
\entry{history expansion}{159}
\entry{history list}{157}
\entry{History, how to use}{156}
\initial {I}
\entry{identifier}{3}
\entry{initialization file, readline}{124}
\entry{installation}{162}
\entry{installation}{163}
\entry{interaction, readline}{121}
\entry{interactive shell}{95, 96}
\entry{internationalization}{7}
+14 -10
View File
@@ -4,11 +4,11 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!-- This text is a brief description of the features that are present in
the Bash shell (version 5.2, 13 June 2023).
the Bash shell (version 5.3, 15 June 2023).
This is Edition 5.2, last updated 13 June 2023,
This is Edition 5.3, last updated 15 June 2023,
of The GNU Bash Reference Manual,
for Bash, Version 5.2.
for Bash, Version 5.3.
Copyright (C) 1988-2023 Free Software Foundation, Inc.
@@ -77,12 +77,12 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
<span id="Bash-Features-1"></span><h1 class="top">Bash Features</h1>
<p>This text is a brief description of the features that are present in
the Bash shell (version 5.2, 13 June 2023).
the Bash shell (version 5.3, 15 June 2023).
The Bash home page is <a href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
</p>
<p>This is Edition 5.2, last updated 13 June 2023,
<p>This is Edition 5.3, last updated 15 June 2023,
of <cite>The GNU Bash Reference Manual</cite>,
for <code>Bash</code>, Version 5.2.
for <code>Bash</code>, Version 5.3.
</p>
<p>Bash contains features that appear in other popular shells, and some
features that only appear in Bash. Some of the shells that Bash has
@@ -1102,8 +1102,7 @@ shell builtins, shell functions, and pipelines. An external
<p>When the shell is in <small>POSIX</small> mode (see <a href="#Bash-POSIX-Mode">Bash and POSIX</a>), <code>time</code>
may be followed by a newline. In this case, the shell displays the
total user and system time consumed by the shell and its children.
The <code>TIMEFORMAT</code> variable may be used to specify the format of
the time information.
The <code>TIMEFORMAT</code> variable specifies the format of the time information.
</p>
<p>If the pipeline is not executed asynchronously (see <a href="#Lists">Lists of Commands</a>), the
shell waits for all commands in the pipeline to complete.
@@ -7812,8 +7811,8 @@ follows; the braces denote optional portions.
<p>The optional <var>p</var> is a digit specifying the precision, the number of
fractional digits after a decimal point.
A value of 0 causes no decimal point or fraction to be output.
At most three places after the decimal point may be specified; values
of <var>p</var> greater than 3 are changed to 3.
At most six places after the decimal point may be specified;
values of <var>p</var> greater than 6 are changed to 6.
If <var>p</var> is not specified, the value 3 is used.
</p>
<p>The optional <code>l</code> specifies a longer format, including minutes, of
@@ -12601,6 +12600,11 @@ This option is intended to be used with shell functions specified
with <samp>-F</samp>.
</p>
</dd>
<dt><span><code>fullquote</code></span></dt>
<dd><p>Tell Readline to quote all the completed words even if they are not
filenames.
</p>
</dd>
<dt><span><code>noquote</code></span></dt>
<dd><p>Tell Readline not to quote the completed words if they are filenames
(quoting filenames is the default).
+127 -124
View File
@@ -2,10 +2,10 @@ This is bashref.info, produced by makeinfo version 6.8 from
bashref.texi.
This text is a brief description of the features that are present in the
Bash shell (version 5.2, 13 June 2023).
Bash shell (version 5.3, 15 June 2023).
This is Edition 5.2, last updated 13 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.2.
This is Edition 5.3, last updated 15 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.3.
Copyright (C) 1988-2023 Free Software Foundation, Inc.
@@ -27,11 +27,11 @@ Bash Features
*************
This text is a brief description of the features that are present in the
Bash shell (version 5.2, 13 June 2023). The Bash home page is
Bash shell (version 5.3, 15 June 2023). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.2, last updated 13 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.2.
This is Edition 5.3, last updated 15 June 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.3.
Bash contains features that appear in other popular shells, and some
features that only appear in Bash. Some of the shells that Bash has
@@ -699,8 +699,7 @@ command cannot time these easily.
When the shell is in POSIX mode (*note Bash POSIX Mode::), 'time' may
be followed by a newline. In this case, the shell displays the total
user and system time consumed by the shell and its children. The
'TIMEFORMAT' variable may be used to specify the format of the time
information.
'TIMEFORMAT' variable specifies the format of the time information.
If the pipeline is not executed asynchronously (*note Lists::), the
shell waits for all commands in the pipeline to complete.
@@ -5992,9 +5991,9 @@ Variables::).
The optional P is a digit specifying the precision, the number of
fractional digits after a decimal point. A value of 0 causes no
decimal point or fraction to be output. At most three places after
the decimal point may be specified; values of P greater than 3 are
changed to 3. If P is not specified, the value 3 is used.
decimal point or fraction to be output. At most six places after
the decimal point may be specified; values of P greater than 6 are
changed to 6. If P is not specified, the value 3 is used.
The optional 'l' specifies a longer format, including minutes, of
the form MMmSS.FFs. The value of P determines whether or not the
@@ -9842,6 +9841,10 @@ happening.
is intended to be used with shell functions specified
with '-F'.
'fullquote'
Tell Readline to quote all the completed words even if
they are not filenames.
'noquote'
Tell Readline not to quote the completed words if they
are filenames (quoting filenames is the default).
@@ -12024,7 +12027,7 @@ D.1 Index of Shell Builtin Commands
* complete: Programmable Completion Builtins.
(line 36)
* compopt: Programmable Completion Builtins.
(line 244)
(line 248)
* continue: Bourne Shell Builtins.
(line 90)
* declare: Bash Builtins. (line 154)
@@ -12791,118 +12794,118 @@ Node: Shell Commands23931
Node: Reserved Words24869
Node: Simple Commands25625
Node: Pipelines26279
Node: Lists29278
Node: Compound Commands31073
Node: Looping Constructs32085
Node: Conditional Constructs34580
Node: Command Grouping49068
Node: Coprocesses50546
Node: GNU Parallel53209
Node: Shell Functions54126
Node: Shell Parameters62011
Node: Positional Parameters66399
Node: Special Parameters67301
Node: Shell Expansions70515
Node: Brace Expansion72642
Node: Tilde Expansion75376
Node: Shell Parameter Expansion77997
Node: Command Substitution96399
Node: Arithmetic Expansion99863
Node: Process Substitution100831
Node: Word Splitting101951
Node: Filename Expansion103999
Node: Pattern Matching106932
Node: Quote Removal111934
Node: Redirections112229
Node: Executing Commands121922
Node: Simple Command Expansion122592
Node: Command Search and Execution124702
Node: Command Execution Environment127089
Node: Environment130124
Node: Exit Status131787
Node: Signals133571
Node: Shell Scripts137020
Node: Shell Builtin Commands140047
Node: Bourne Shell Builtins142085
Node: Bash Builtins164419
Node: Modifying Shell Behavior196418
Node: The Set Builtin196763
Node: The Shopt Builtin207361
Node: Special Builtins223368
Node: Shell Variables224347
Node: Bourne Shell Variables224784
Node: Bash Variables226888
Node: Bash Features260953
Node: Invoking Bash261966
Node: Bash Startup Files267979
Node: Interactive Shells273110
Node: What is an Interactive Shell?273521
Node: Is this Shell Interactive?274170
Node: Interactive Shell Behavior274985
Node: Bash Conditional Expressions278614
Node: Shell Arithmetic283256
Node: Aliases286217
Node: Arrays289111
Node: The Directory Stack295674
Node: Directory Stack Builtins296458
Node: Controlling the Prompt300718
Node: The Restricted Shell303683
Node: Bash POSIX Mode306293
Node: Shell Compatibility Mode322086
Node: Job Control330330
Node: Job Control Basics330790
Node: Job Control Builtins335792
Node: Job Control Variables341587
Node: Command Line Editing342743
Node: Introduction and Notation344414
Node: Readline Interaction346037
Node: Readline Bare Essentials347228
Node: Readline Movement Commands349017
Node: Readline Killing Commands349977
Node: Readline Arguments351898
Node: Searching352942
Node: Readline Init File355128
Node: Readline Init File Syntax356389
Node: Conditional Init Constructs380180
Node: Sample Init File384376
Node: Bindable Readline Commands387500
Node: Commands For Moving388704
Node: Commands For History390755
Node: Commands For Text395749
Node: Commands For Killing399398
Node: Numeric Arguments402431
Node: Commands For Completion403570
Node: Keyboard Macros407761
Node: Miscellaneous Commands408449
Node: Readline vi Mode414487
Node: Programmable Completion415394
Node: Programmable Completion Builtins423174
Node: A Programmable Completion Example434162
Node: Using History Interactively439410
Node: Bash History Facilities440094
Node: Bash History Builtins443099
Node: History Interaction448123
Node: Event Designators451743
Node: Word Designators453097
Node: Modifiers454857
Node: Installing Bash456665
Node: Basic Installation457802
Node: Compilers and Options461524
Node: Compiling For Multiple Architectures462265
Node: Installation Names463957
Node: Specifying the System Type466066
Node: Sharing Defaults466783
Node: Operation Controls467456
Node: Optional Features468414
Node: Reporting Bugs479633
Node: Major Differences From The Bourne Shell480967
Node: GNU Free Documentation License497816
Node: Indexes522993
Node: Builtin Index523447
Node: Reserved Word Index530548
Node: Variable Index532996
Node: Function Index549984
Node: Concept Index563768
Node: Lists29265
Node: Compound Commands31060
Node: Looping Constructs32072
Node: Conditional Constructs34567
Node: Command Grouping49055
Node: Coprocesses50533
Node: GNU Parallel53196
Node: Shell Functions54113
Node: Shell Parameters61998
Node: Positional Parameters66386
Node: Special Parameters67288
Node: Shell Expansions70502
Node: Brace Expansion72629
Node: Tilde Expansion75363
Node: Shell Parameter Expansion77984
Node: Command Substitution96386
Node: Arithmetic Expansion99850
Node: Process Substitution100818
Node: Word Splitting101938
Node: Filename Expansion103986
Node: Pattern Matching106919
Node: Quote Removal111921
Node: Redirections112216
Node: Executing Commands121909
Node: Simple Command Expansion122579
Node: Command Search and Execution124689
Node: Command Execution Environment127076
Node: Environment130111
Node: Exit Status131774
Node: Signals133558
Node: Shell Scripts137007
Node: Shell Builtin Commands140034
Node: Bourne Shell Builtins142072
Node: Bash Builtins164406
Node: Modifying Shell Behavior196405
Node: The Set Builtin196750
Node: The Shopt Builtin207348
Node: Special Builtins223355
Node: Shell Variables224334
Node: Bourne Shell Variables224771
Node: Bash Variables226875
Node: Bash Features260938
Node: Invoking Bash261951
Node: Bash Startup Files267964
Node: Interactive Shells273095
Node: What is an Interactive Shell?273506
Node: Is this Shell Interactive?274155
Node: Interactive Shell Behavior274970
Node: Bash Conditional Expressions278599
Node: Shell Arithmetic283241
Node: Aliases286202
Node: Arrays289096
Node: The Directory Stack295659
Node: Directory Stack Builtins296443
Node: Controlling the Prompt300703
Node: The Restricted Shell303668
Node: Bash POSIX Mode306278
Node: Shell Compatibility Mode322071
Node: Job Control330315
Node: Job Control Basics330775
Node: Job Control Builtins335777
Node: Job Control Variables341572
Node: Command Line Editing342728
Node: Introduction and Notation344399
Node: Readline Interaction346022
Node: Readline Bare Essentials347213
Node: Readline Movement Commands349002
Node: Readline Killing Commands349962
Node: Readline Arguments351883
Node: Searching352927
Node: Readline Init File355113
Node: Readline Init File Syntax356374
Node: Conditional Init Constructs380165
Node: Sample Init File384361
Node: Bindable Readline Commands387485
Node: Commands For Moving388689
Node: Commands For History390740
Node: Commands For Text395734
Node: Commands For Killing399383
Node: Numeric Arguments402416
Node: Commands For Completion403555
Node: Keyboard Macros407746
Node: Miscellaneous Commands408434
Node: Readline vi Mode414472
Node: Programmable Completion415379
Node: Programmable Completion Builtins423159
Node: A Programmable Completion Example434279
Node: Using History Interactively439527
Node: Bash History Facilities440211
Node: Bash History Builtins443216
Node: History Interaction448240
Node: Event Designators451860
Node: Word Designators453214
Node: Modifiers454974
Node: Installing Bash456782
Node: Basic Installation457919
Node: Compilers and Options461641
Node: Compiling For Multiple Architectures462382
Node: Installation Names464074
Node: Specifying the System Type466183
Node: Sharing Defaults466900
Node: Operation Controls467573
Node: Optional Features468531
Node: Reporting Bugs479750
Node: Major Differences From The Bourne Shell481084
Node: GNU Free Documentation License497933
Node: Indexes523110
Node: Builtin Index523564
Node: Reserved Word Index530665
Node: Variable Index533113
Node: Function Index550101
Node: Concept Index563885

End Tag Table
+57 -32
View File
@@ -1,12 +1,12 @@
This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2021/MacPorts 2021.58693_0) (preloaded format=etex 2021.8.30) 13 JUN 2023 10:42
This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2021/MacPorts 2021.58693_0) (preloaded format=pdfetex 2021.8.30) 15 JUN 2023 18:20
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
%&-line parsing enabled.
**\nonstopmode \input /usr/local/src/bash/bash-20230612/doc/bashref.texi \input
/usr/local/src/bash/bash-20230612/doc/bashref.texi
(/usr/local/src/bash/bash-20230612/doc/bashref.texi
(/usr/local/src/bash/bash-20230612/doc/texinfo.tex
**\input /usr/local/src/bash/bash-20230614/doc/bashref.texi \input /usr/local/s
rc/bash/bash-20230614/doc/bashref.texi
(/usr/local/src/bash/bash-20230614/doc/bashref.texi
(/usr/local/src/bash/bash-20230614/doc/texinfo.tex
Loading texinfo [version 2015-11-22.14]:
\outerhsize=\dimen16
\outervsize=\dimen17
@@ -162,20 +162,23 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
texinfo.tex: doing @include of version.texi
(/usr/local/src/bash/bash-20230612/doc/version.texi) [1] [2]
(/usr/local/build/bash/bash-20230612/doc/bashref.toc [-1] [-2] [-3]) [-4]
Chapter 1
(/usr/local/src/bash/bash-20230614/doc/version.texi) [1{/opt/local/var/db/texmf
/fonts/map/pdftex/updmap/pdftex.map}] [2]
(/usr/local/build/bash/bash-20230614/doc/bashref.toc [-1] [-2] [-3]) [-4]
(/usr/local/build/bash/bash-20230614/doc/bashref.toc)
(/usr/local/build/bash/bash-20230614/doc/bashref.toc) Chapter 1
\openout0 = `bashref.toc'.
(/usr/local/build/bash/bash-20230612/doc/bashref.aux)
(/usr/local/build/bash/bash-20230614/doc/bashref.aux)
\openout1 = `bashref.aux'.
Chapter 2
[1] [2]
Chapter 2 [1] [2]
@cpindfile=@write2
\openout2 = `bashref.cp'.
[3] Chapter 3 [4] [5] [6] [7]
[3] Chapter 3 [4] [5] [6] [7]
@vrindfile=@write3
\openout3 = `bashref.vr'.
@@ -227,7 +230,7 @@ Overfull \hbox (5.95723pt too wide) in paragraph at lines 724--725
[49] [50] [51]
[52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66]
[67]
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5358--5358
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5357--5357
[]@texttt set [-abefhkmnptuvxBCEHPT] [-o @textttsl option-name@texttt ] [--] [
-] [@textttsl ar-gu-ment []@texttt ][]
@@ -240,7 +243,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5358--5358
.etc.
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5359--5359
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5358--5358
[]@texttt set [+abefhkmnptuvxBCEHPT] [+o @textttsl option-name@texttt ] [--] [
-] [@textttsl ar-gu-ment []@texttt ][]
@@ -259,7 +262,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5359--5359
[118] [119]
texinfo.tex: doing @include of rluser.texi
(/usr/local/src/bash/bash-20230612/lib/readline/doc/rluser.texi
(/usr/local/src/bash/bash-20230614/lib/readline/doc/rluser.texi
Chapter 8 [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130]
[131]
Underfull \hbox (badness 7540) in paragraph at lines 874--880
@@ -305,14 +308,14 @@ gnored[]
\openout6 = `bashref.fn'.
[137] [138] [139] [140] [141] [142] [143] [144] [145] [146]
[147] [148] [149] [150] [151] [152] [153] [154])
[147] [148] [149] [150] [151] [152] [153] [154] [155])
texinfo.tex: doing @include of hsuser.texi
(/usr/local/src/bash/bash-20230612/lib/readline/doc/hsuser.texi Chapter 9
[155] [156] [157] [158] [159] [160]) Chapter 10 [161] [162] [163] [164]
[165]
Underfull \hbox (badness 10000) in paragraph at lines 9642--9651
(/usr/local/src/bash/bash-20230614/lib/readline/doc/hsuser.texi Chapter 9
[156] [157] [158] [159] [160] [161]) Chapter 10 [162] [163] [164] [165]
[166]
Underfull \hbox (badness 10000) in paragraph at lines 9641--9650
[]@textrm All of the fol-low-ing op-tions ex-cept for `@texttt alt-array-implem
entation[]@textrm '[],
@@ -325,7 +328,7 @@ entation[]@textrm '[],
.etc.
Underfull \hbox (badness 10000) in paragraph at lines 9642--9651
Underfull \hbox (badness 10000) in paragraph at lines 9641--9650
@textrm `@texttt disabled-builtins[]@textrm '[], `@texttt direxpand-default[]@t
extrm '[], `@texttt strict-posix-default[]@textrm '[], and
@@ -337,20 +340,42 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
.@texttt a
.etc.
[166] [167] [168] [169] Appendix A [170] Appendix B [171] [172] [173] [174]
[175] [176] Appendix C [177]
[167] [168] [169] [170] Appendix A [171] Appendix B [172] [173] [174] [175]
[176] [177] Appendix C [178]
texinfo.tex: doing @include of fdl.texi
(/usr/local/src/bash/bash-20230612/doc/fdl.texi
[178] [179] [180] [181] [182] [183] [184]) Appendix D [185] [186] [187]
[188] [189] [190] [191] [192] [193] [194] )
(/usr/local/src/bash/bash-20230614/doc/fdl.texi
[179] [180] [181] [182] [183] [184] [185]) Appendix D [186] [187] [188]
[189] [190] [191] [192] [193] [194] [195] )
Here is how much of TeX's memory you used:
3531 strings out of 497096
40273 string characters out of 6206923
87714 words of memory out of 5000000
4700 multiletter control sequences out of 15000+600000
4102 strings out of 497086
47608 string characters out of 6206517
141998 words of memory out of 5000000
4869 multiletter control sequences out of 15000+600000
34315 words of font info for 116 fonts, out of 8000000 for 9000
51 hyphenation exceptions out of 8191
16i,6n,16p,402b,942s stack positions out of 5000i,500n,10000p,200000b,80000s
16i,6n,16p,389b,983s stack positions out of 5000i,500n,10000p,200000b,80000s
{/opt/local/share/texmf-texlive/font
s/enc/dvips/cm-super/cm-super-t1.enc}</opt/local/share/texmf-texlive/fonts/type
1/public/amsfonts/cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/type1/pub
lic/amsfonts/cm/cmcsc10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/
amsfonts/cm/cmmi10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfo
nts/cm/cmmi12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/c
m/cmmi9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr1
0.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr9.pfb><
/opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb></opt/
local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsltt10.pfb></opt/loc
al/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsy10.pfb></opt/local/sh
are/texmf-texlive/fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/share/t
exmf-texlive/fonts/type1/public/amsfonts/cm/cmtt10.pfb></opt/local/share/texmf-
texlive/fonts/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf-texli
ve/fonts/type1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fon
ts/type1/public/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/typ
e1/public/cm-super/sfrm1440.pfb>
Output written on bashref.pdf (201 pages, 808042 bytes).
PDF statistics:
2803 PDF objects out of 2984 (max. 8388607)
2555 compressed objects within 26 object streams
329 named destinations out of 1000 (max. 500000)
1157 words of extra memory for PDF output out of 10000 (max. 10000000)
Output written on bashref.dvi (200 pages, 840512 bytes).
BIN
View File
Binary file not shown.
+3 -4
View File
@@ -795,8 +795,7 @@ shell builtins, shell functions, and pipelines. An external
When the shell is in @sc{posix} mode (@pxref{Bash POSIX Mode}), @code{time}
may be followed by a newline. In this case, the shell displays the
total user and system time consumed by the shell and its children.
The @env{TIMEFORMAT} variable may be used to specify the format of
the time information.
The @env{TIMEFORMAT} variable specifies the format of the time information.
If the pipeline is not executed asynchronously (@pxref{Lists}), the
shell waits for all commands in the pipeline to complete.
@@ -6959,8 +6958,8 @@ The CPU percentage, computed as (%U + %S) / %R.
The optional @var{p} is a digit specifying the precision, the number of
fractional digits after a decimal point.
A value of 0 causes no decimal point or fraction to be output.
At most three places after the decimal point may be specified; values
of @var{p} greater than 3 are changed to 3.
At most six places after the decimal point may be specified;
values of @var{p} greater than 6 are changed to 6.
If @var{p} is not specified, the value 3 is used.
The optional @code{l} specifies a longer format, including minutes, of
+26 -26
View File
@@ -115,29 +115,29 @@
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{147}
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{150}
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{154}
@numchapentry{Using History Interactively}{9}{Using History Interactively}{156}
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{156}
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{156}
@numsecentry{History Expansion}{9.3}{History Interaction}{158}
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{159}
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{160}
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{160}
@numchapentry{Installing Bash}{10}{Installing Bash}{162}
@numsecentry{Basic Installation}{10.1}{Basic Installation}{162}
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{163}
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{163}
@numsecentry{Installation Names}{10.4}{Installation Names}{164}
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{164}
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{164}
@numsecentry{Operation Controls}{10.7}{Operation Controls}{165}
@numsecentry{Optional Features}{10.8}{Optional Features}{165}
@appentry{Reporting Bugs}{A}{Reporting Bugs}{171}
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{172}
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{176}
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{178}
@appentry{Indexes}{D}{Indexes}{186}
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{186}
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{187}
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{188}
@appsecentry{Function Index}{D.4}{Function Index}{190}
@appsecentry{Concept Index}{D.5}{Concept Index}{192}
@numchapentry{Using History Interactively}{9}{Using History Interactively}{157}
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{157}
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{157}
@numsecentry{History Expansion}{9.3}{History Interaction}{159}
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{160}
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{161}
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{161}
@numchapentry{Installing Bash}{10}{Installing Bash}{163}
@numsecentry{Basic Installation}{10.1}{Basic Installation}{163}
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{164}
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{164}
@numsecentry{Installation Names}{10.4}{Installation Names}{165}
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{165}
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{165}
@numsecentry{Operation Controls}{10.7}{Operation Controls}{166}
@numsecentry{Optional Features}{10.8}{Optional Features}{166}
@appentry{Reporting Bugs}{A}{Reporting Bugs}{172}
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{173}
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{177}
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{179}
@appentry{Indexes}{D}{Indexes}{187}
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{187}
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{188}
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{189}
@appsecentry{Function Index}{D.4}{Function Index}{191}
@appsecentry{Concept Index}{D.5}{Concept Index}{193}
+864 -860
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+1150 -1146
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -2,10 +2,10 @@
Copyright (C) 1988-2023 Free Software Foundation, Inc.
@end ignore
@set LASTCHANGE Tue Jun 13 10:36:04 EDT 2023
@set LASTCHANGE Thu Jun 15 18:11:16 EDT 2023
@set EDITION 5.2
@set VERSION 5.2
@set EDITION 5.3
@set VERSION 5.3
@set UPDATED 13 June 2023
@set UPDATED 15 June 2023
@set UPDATED-MONTH June 2023
+46 -17
View File
@@ -147,10 +147,10 @@ static int execute_cond_node (COND_COM *);
static int execute_cond_command (COND_COM *);
#endif
#if defined (COMMAND_TIMING)
static int mkfmt (char *, int, int, time_t, int);
static int mkfmt (char *, int, int, time_t, long);
static void print_formatted_time (FILE *, char *,
time_t, int, time_t, int,
time_t, int, int);
time_t, long, time_t, long,
time_t, long, int);
static int time_command (COMMAND *, int, int, int, struct fd_bitmap *);
#endif
#if defined (ARITH_FOR_COMMAND)
@@ -1186,11 +1186,14 @@ extern int timeval_to_cpu (struct timeval *, struct timeval *, struct timeval *)
#define POSIX_TIMEFORMAT "real %2R\nuser %2U\nsys %2S"
#define BASH_TIMEFORMAT "\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS"
static const int precs[] = { 0, 100, 10, 1 };
static const int precs[] = { 0, 100000, 10000, 1000, 100, 10, 1 };
static const int maxvals[] = { 1, 10, 100, 1000, 10000, 100000, 10000000 };
/* Expand one `%'-prefixed escape sequence from a time format string. */
static int
mkfmt (char *buf, int prec, int lng, time_t sec, int sec_fraction)
/* SEC_FRACTION is in usecs. We normalize and round that based on the
precision. */
int
mkfmt (char *buf, int prec, int lng, time_t sec, long sec_fraction)
{
time_t min;
char abuf[INT_STRLEN_BOUND(time_t) + 1];
@@ -1224,10 +1227,31 @@ mkfmt (char *buf, int prec, int lng, time_t sec, int sec_fraction)
buf[ind++] = abuf[aind++];
/* We want to add a decimal point and PREC places after it if PREC is
nonzero. PREC is not greater than 3. SEC_FRACTION is between 0
and 999. */
nonzero. PREC is not greater than 6. SEC_FRACTION is between 0
and 999999 (microseconds). */
if (prec != 0)
{
/* We round here because we changed timeval_to_secs to return
microseconds and normalized clock_t_to_secs's fractional return
value to microseconds, deferring the work to be done to now.
sec_fraction is in microseconds. Take the value, cut off what we
don't want, round up if necessary, then convert back to
microseconds. */
if (prec != 6)
{
int frac, rest, maxval;
maxval = maxvals[6 - prec];
frac = sec_fraction / maxval;
rest = sec_fraction % maxval;
if (rest >= maxval/2)
frac++;
sec_fraction = frac * (1000000 / maxvals[prec]);
}
buf[ind++] = locale_decpoint ();
for (aind = 1; aind <= prec; aind++)
{
@@ -1262,13 +1286,13 @@ mkfmt (char *buf, int prec, int lng, time_t sec, int sec_fraction)
resectively. */
static void
print_formatted_time (FILE *fp, char *format,
time_t rs, int rsf, time_t us, int usf, time_t ss, int ssf,
time_t rs, long rsf, time_t us, long usf, time_t ss, long ssf,
int cpu)
{
int prec, lng, len;
char *str, *s, ts[INT_STRLEN_BOUND (time_t) + sizeof ("mSS.FFFF")];
time_t sum;
int sum_frac;
long sum_frac;
int sindex, ssize;
len = strlen (format);
@@ -1312,7 +1336,7 @@ print_formatted_time (FILE *fp, char *format,
if (DIGIT (*s)) /* `precision' */
{
prec = *s++ - '0';
if (prec > 3) prec = 3;
if (prec > 6) prec = 6;
}
if (*s == 'l') /* `length extender' */
{
@@ -1348,8 +1372,8 @@ static int
time_command (COMMAND *command, int asynchronous, int pipe_in, int pipe_out, struct fd_bitmap *fds_to_close)
{
int rv, posix_time, old_flags, nullcmd, code;
time_t rs, us, ss;
int rsf, usf, ssf;
time_t rs, us, ss; /* seconds */
long rsf, usf, ssf; /* microseconds */
int cpu;
char *time_format;
volatile procenv_t save_top_level;
@@ -1417,7 +1441,8 @@ time_command (COMMAND *command, int asynchronous, int pipe_in, int pipe_out, str
sh_longjmp (top_level, code);
rs = us = ss = 0;
rsf = usf = ssf = cpu = 0;
rsf = usf = ssf = 0;
cpu = 0;
#if defined (HAVE_GETRUSAGE) && defined (HAVE_GETTIMEOFDAY)
# if defined (HAVE_STRUCT_TIMEZONE)
@@ -1429,15 +1454,15 @@ time_command (COMMAND *command, int asynchronous, int pipe_in, int pipe_out, str
getrusage (RUSAGE_CHILDREN, &kidsa);
difftimeval (&real, &before, &after);
timeval_to_secs (&real, &rs, &rsf);
timeval_to_secs (&real, &rs, &rsf, 1000000);
addtimeval (&user, difftimeval(&after, &selfb.ru_utime, &selfa.ru_utime),
difftimeval(&before, &kidsb.ru_utime, &kidsa.ru_utime));
timeval_to_secs (&user, &us, &usf);
timeval_to_secs (&user, &us, &usf, 1000000);
addtimeval (&sys, difftimeval(&after, &selfb.ru_stime, &selfa.ru_stime),
difftimeval(&before, &kidsb.ru_stime, &kidsa.ru_stime));
timeval_to_secs (&sys, &ss, &ssf);
timeval_to_secs (&sys, &ss, &ssf, 1000000);
cpu = timeval_to_cpu (&real, &user, &sys);
#else
@@ -1446,12 +1471,16 @@ time_command (COMMAND *command, int asynchronous, int pipe_in, int pipe_out, str
real = tafter - tbefore;
clock_t_to_secs (real, &rs, &rsf);
/* clock_t_to_secs returns RSF in milliseconds; multipy by 1000 to get microseconds. */
rsf *= 1000;
user = (after.tms_utime - before.tms_utime) + (after.tms_cutime - before.tms_cutime);
clock_t_to_secs (user, &us, &usf);
usf *= 1000;
sys = (after.tms_stime - before.tms_stime) + (after.tms_cstime - before.tms_cstime);
clock_t_to_secs (sys, &ss, &ssf);
ssf *= 1000;
cpu = (real == 0) ? 0 : ((user + sys) * 10000) / real;
+2 -2
View File
@@ -208,7 +208,7 @@ extern long get_clk_tck (void);
/* No prototypes so we don't have to have clock_t defined when this file
is included. */
#ifdef NEED_CLOCK_FUNCS_DECL
extern void clock_t_to_secs (clock_t, time_t *, int *);
extern void clock_t_to_secs (clock_t, time_t *, long *);
extern void print_clock_t (FILE *, clock_t);
#endif
@@ -494,7 +494,7 @@ extern char *sh_strvis (const char *);
so we don't have to count on having a definition of struct timeval in
scope when this file is included. */
#ifdef NEED_TIMEVAL_FUNCS_DECL
extern void timeval_to_secs (struct timeval *, time_t *, int *);
extern void timeval_to_secs (struct timeval *, time_t *, long *, int);
extern void print_timeval (FILE *, struct timeval *);
#endif
+15 -11
View File
@@ -336,6 +336,15 @@ int rl_filename_completion_desired = 0;
entry finder function. */
int rl_filename_quoting_desired = 1;
/* Non-zero means we should apply filename-type quoting to all completions
even if we are not otherwise treating the matches as filenames. This is
ALWAYS zero on entry, and can only be changed within a completion entry
finder function. */
int rl_full_quoting_desired = 0;
#define QUOTING_DESIRED() \
(rl_full_quoting_desired || (rl_filename_completion_desired && rl_filename_quoting_desired))
/* This function, if defined, is called by the completer when real
filename completion is done, after all the matching names have been
generated. It is passed a (char**) known as matches in the code below.
@@ -512,6 +521,7 @@ set_completion_defaults (int what_to_do)
/* Only the completion entry function can change these. */
rl_filename_completion_desired = 0;
rl_filename_quoting_desired = 1;
rl_full_quoting_desired = 0;
rl_completion_type = what_to_do;
rl_completion_suppress_append = rl_completion_suppress_quote = 0;
rl_completion_append_character = ' ';
@@ -1408,10 +1418,8 @@ compute_lcd_of_matches (char **match_list, int matches, const char *text)
check against the list of matches
FI */
dtext = (char *)NULL;
if (rl_filename_completion_desired &&
rl_filename_dequoting_function &&
rl_completion_found_quote &&
rl_filename_quoting_desired)
if (QUOTING_DESIRED() && rl_completion_found_quote &&
rl_filename_dequoting_function)
{
dtext = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
text = dtext;
@@ -1766,9 +1774,7 @@ make_quoted_replacement (char *match, int mtype, char *qc)
matches don't require a quoted substring. */
replacement = match;
should_quote = match && rl_completer_quote_characters &&
rl_filename_completion_desired &&
rl_filename_quoting_desired;
should_quote = match && rl_completer_quote_characters && QUOTING_DESIRED();
if (should_quote)
should_quote = should_quote && (!qc || !*qc ||
@@ -1980,8 +1986,7 @@ compare_match (char *text, const char *match)
char *temp;
int r;
if (rl_filename_completion_desired && rl_filename_quoting_desired &&
rl_completion_found_quote && rl_filename_dequoting_function)
if (QUOTING_DESIRED() && rl_completion_found_quote && rl_filename_dequoting_function)
{
temp = (*rl_filename_dequoting_function) (text, rl_completion_quote_character);
r = strcmp (temp, match);
@@ -2043,8 +2048,7 @@ rl_complete_internal (int what_to_do)
strcmp directly. */
/* nontrivial_lcd is set if the common prefix adds something to the word
being completed. */
if (rl_filename_completion_desired && rl_filename_quoting_desired &&
rl_completion_found_quote && rl_filename_dequoting_function)
if (QUOTING_DESIRED() && rl_completion_found_quote && rl_filename_dequoting_function)
{
char *t;
t = (*rl_filename_dequoting_function) (text, rl_completion_quote_character);
+10
View File
@@ -2300,6 +2300,16 @@ The quoting is effected via a call to the function pointed to
by @code{rl_filename_quoting_function}.
@end deftypevar
@deftypevar int rl_full_quoting_desired
Non-zero means that Readline should apply filename-style quoting,
including any application-specified quoting mechanism,
to all completion matches even if we are not otherwise treating the
matches as filenames.
This is @emph{always} zero when completion is attempted, and can only
be changed within an application-specific completion function.
The quoting is effected via a call to the function pointed to
by @code{rl_filename_quoting_function}.
@deftypevar int rl_attempted_completion_over
If an application-specific completion function assigned to
@code{rl_attempted_completion_function} sets this variable to a non-zero
+4
View File
@@ -2206,6 +2206,10 @@ quoting special characters, or suppressing trailing spaces).
This option is intended to be used with shell functions specified
with @option{-F}.
@item fullquote
Tell Readline to quote all the completed words even if they are not
filenames.
@item noquote
Tell Readline not to quote the completed words if they are filenames
(quoting filenames is the default).
+3 -3
View File
@@ -5,7 +5,7 @@ Copyright (C) 1988-2023 Free Software Foundation, Inc.
@set EDITION 8.2
@set VERSION 8.2
@set UPDATED 27 March 2023
@set UPDATED-MONTH March 2023
@set UPDATED 15 June 2023
@set UPDATED-MONTH June 2023
@set LASTCHANGE Mon Mar 27 11:41:20 EDT 2023
@set LASTCHANGE Thu Jun 15 14:37:40 EDT 2023
+6
View File
@@ -790,6 +790,12 @@ extern int rl_filename_completion_desired;
entry finder function. */
extern int rl_filename_quoting_desired;
/* Non-zero means we should apply filename-type quoting to all completions
even if we are not otherwise treating the matches as filenames. This is
ALWAYS zero on entry, and can only be changed within a completion entry
finder function. */
extern int rl_full_quoting_desired;
/* Set to a function to quote a filename in an application-specific fashion.
Called with the text to quote, the type of match found (single or multiple)
and a pointer to the quoting character to be used, which the function can
+4 -3
View File
@@ -38,7 +38,7 @@ extern int locale_decpoint (void);
extern long get_clk_tck (void);
void
clock_t_to_secs (clock_t t, time_t *sp, int *sfp)
clock_t_to_secs (clock_t t, time_t *sp, long *sfp)
{
static long clk_tck = -1;
@@ -67,13 +67,14 @@ print_clock_t (FILE *fp, clock_t t)
{
time_t timestamp;
long minutes;
int seconds, seconds_fraction;
int seconds;
long seconds_fraction;
clock_t_to_secs (t, &timestamp, &seconds_fraction);
minutes = timestamp / 60;
seconds = timestamp % 60;
fprintf (fp, "%ldm%d%c%03ds", minutes, seconds, locale_decpoint(), seconds_fraction);
fprintf (fp, "%ldm%d%c%03lds", minutes, seconds, locale_decpoint(), seconds_fraction);
}
#endif /* HAVE_TIMES */
+19 -13
View File
@@ -123,27 +123,32 @@ timeval_to_cpu (struct timeval *rt, struct timeval *ut, struct timeval *st)
return ((t2.tv_sec == 0) ? 0 : t1.tv_sec / t2.tv_sec);
}
/* Convert a pointer to a struct timeval to seconds and thousandths of a
second, returning the values in *SP and *SFP, respectively. This does
rounding on the fractional part, not just truncation to three places. */
/* Convert a pointer to a struct timeval to seconds and fractions of a
second, returning the values in *SP and *SFP, respectively. The precision
of the fractional part is determined by MAXVAL. For instance, if MAXVAL
is 10000000, this just returns the tv_usec field. This does rounding on
the fractional part, not just truncation to three places. */
void
timeval_to_secs (struct timeval *tvp, time_t *sp, int *sfp)
timeval_to_secs (struct timeval *tvp, time_t *sp, long *sfp, int maxval)
{
int rest;
*sp = tvp->tv_sec;
*sfp = tvp->tv_usec % 1000000; /* pretty much a no-op */
rest = *sfp % 1000;
*sfp = (*sfp * 1000) / 1000000;
if (rest >= 500)
*sfp += 1;
if (maxval < 1000000) /* don't bother otherwise */
{
rest = *sfp % maxval;
*sfp = (*sfp * maxval) / 1000000;
if (rest >= maxval/2)
*sfp += 1;
}
/* Sanity check */
if (*sfp >= 1000)
if (*sfp >= maxval)
{
*sp += 1;
*sfp -= 1000;
*sfp -= maxval;
}
}
@@ -154,14 +159,15 @@ print_timeval (FILE *fp, struct timeval *tvp)
{
time_t timestamp;
long minutes;
int seconds, seconds_fraction;
int seconds;
long seconds_fraction;
timeval_to_secs (tvp, &timestamp, &seconds_fraction);
timeval_to_secs (tvp, &timestamp, &seconds_fraction, 1000);
minutes = timestamp / 60;
seconds = timestamp % 60;
fprintf (fp, "%ldm%d%c%03ds", minutes, seconds, locale_decpoint (), seconds_fraction);
fprintf (fp, "%ldm%d%c%03lds", minutes, seconds, locale_decpoint (), seconds_fraction);
}
#endif /* HAVE_TIMEVAL */
+1 -1
View File
@@ -25,6 +25,6 @@
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
looks for to find the patch level (for the sccs version string). */
#define PATCHLEVEL 15
#define PATCHLEVEL 0
#endif /* _PATCHLEVEL_H_ */
+3
View File
@@ -1472,6 +1472,9 @@ pcomp_set_readline_variables (int flags, int nval)
sure that readline knows it. */
if (flags & COPT_FILENAMES)
rl_filename_completion_desired = nval;
/* If we want to quote everything, not just filenames, tell readline. */
if (flags & COPT_FULLQUOTE)
rl_full_quoting_desired = nval;
/* If the user doesn't want a space appended, tell readline. */
if (flags & COPT_NOSPACE)
rl_completion_suppress_append = nval;
+2 -1
View File
@@ -76,8 +76,9 @@ typedef struct compspec {
#define COPT_BASHDEFAULT (1<<6)
#define COPT_PLUSDIRS (1<<7)
#define COPT_NOSORT (1<<8)
#define COPT_FULLQUOTE (1<<9)
#define COPT_LASTUSER COPT_NOSORT
#define COPT_LASTUSER COPT_FULLQUOTE
#define PCOMP_RETRYFAIL (COPT_LASTUSER << 1)
#define PCOMP_NOTFOUND (COPT_LASTUSER << 2)
+2 -2
View File
@@ -140,9 +140,9 @@ three
one
two
three
5.2
5.3
echo ${BASH_VERSION%\.*}
5.2
5.3
echo ${BASH_VERSION%\.*}
a
b
+1 -1
View File
@@ -625,7 +625,7 @@ bash: line 1: ${x@C}: bad substitution
<'ab cd'>
<'4'> <'ab cd'>
<>
argv[1] = <host(2)[5.2]$ >
argv[1] = <host(2)[5.3]$ >
<
>
<' \t\n'>