[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] gawk branch, master, updated. gawk-4.1.0-3941-gea0baa3
From: |
Arnold Robbins |
Subject: |
[SCM] gawk branch, master, updated. gawk-4.1.0-3941-gea0baa3 |
Date: |
Mon, 30 Mar 2020 05:57:37 -0400 (EDT) |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".
The branch, master has been updated
via ea0baa3d58bf73172a6d98de8dd79a9614a35b02 (commit)
from d7990fde6e1907f103b26268656a8cc9cfc0c342 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=ea0baa3d58bf73172a6d98de8dd79a9614a35b02
commit ea0baa3d58bf73172a6d98de8dd79a9614a35b02
Author: Arnold D. Robbins <address@hidden>
Date: Mon Mar 30 03:57:16 2020 -0600
Doc updates.
diff --git a/doc/ChangeLog b/doc/ChangeLog
index bc81cbc..e55d8f2 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2020-03-30 Arnold D. Robbins <address@hidden>
+
+ * gawktexi.in, gawk.1, awkcard.in: Minor edits before release.
+
2020-03-18 Arnold D. Robbins <address@hidden>
* gawktexi.in: Fix up references to POSIX standard. Thanks to
diff --git a/doc/awkcard.in b/doc/awkcard.in
index b684947..b032276 100644
--- a/doc/awkcard.in
+++ b/doc/awkcard.in
@@ -2,7 +2,7 @@
.\"
.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
.\" 2005, 2007, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018,
-.\" 2019
+.\" 2019, 2020
.\" Free Software Foundation, Inc.
.\"
.\" Permission is granted to make and distribute verbatim copies of
@@ -100,7 +100,7 @@ Variables 5\*(CX
\*(CD
.SL
.nf
-\*(FRCopyright \(co 1996\(en2005, 2007, 2009\(en2019
+\*(FRCopyright \(co 1996\(en2005, 2007, 2009\(en2020
Free Software Foundation, Inc.
.nf
.BT
@@ -277,14 +277,12 @@ See \fHAwk Program Execution\*(FR.
Load dynamic extension \*(FIlib\fP.
See \fHDynamic Extensions\*(FR.
.TI "\*(FC\-L \*(FR[\*(FC\*(FIvalue\*(FR],
\*(FC\-\^\-lint\*(FR[\*(FC=\*(FIvalue\*(FR]
-Warn about dubious or non-portable constructs.
-If \*(FIvalue\*(FR is
+Warn about dubious or non-portable constructs. Possible optional
+\*(FIvalue\*(FRs are
\*(FCfatal\*(FR,
-lint warnings become fatal errors.
-If \*(FIvalue\*(FR is
-\*(FCinvalid\*(FR,
-only issue warnings about things that are
-actually invalid (not fully implemented yet).
+\*(FCinvalid\*(FR, and
+\*(FCno-ext\*(FR.
+See \*(AM for the details.
.TI "\*(FC\-M\*(FR, \*(FC\-\^\-bignum\*(FR
Enable arbitrary-precision arithmetic.
.TI "\*(FC\-n\*(FR, \*(FC\-\^\-non\-decimal\-data\*(FR
@@ -1462,7 +1460,7 @@ accept the following conversion specification formats:
.sp .5
.nf
\*(CB\*(FC%a\fP, \*(FC%A\fP A C99 floating point hexadecimal number.\*(CD
-\*(FC%c\fP An \s-1ASCII\s+1 character.
+\*(FC%c\fP A single character.
\*(FC%d\fP, \*(FC%i\fP A decimal number (the integer part).
\*(FC%e\fP A floating point number of the form
\*(FC[\-]d.dddddde[+\^\-]dd\*(FR.
@@ -2013,7 +2011,7 @@ maintains it.\*(CX
.ES
.fi
\*(CDCopyright \(co 1996\(en2005,
-2007, 2009\(en2019 Free Software Foundation, Inc.
+2007, 2009\(en2020 Free Software Foundation, Inc.
.sp .5
Permission is granted to make and distribute verbatim copies of this
reference card provided the copyright notice and this permission notice
diff --git a/doc/gawk.1 b/doc/gawk.1
index 1469f00..7d1561e 100644
--- a/doc/gawk.1
+++ b/doc/gawk.1
@@ -13,7 +13,7 @@
. if \w'\(rq' .ds rq "\(rq
. \}
.\}
-.TH GAWK 1 "Jul 21 2019" "Free Software Foundation" "Utility Commands"
+.TH GAWK 1 "Mar 23 2020" "Free Software Foundation" "Utility Commands"
.SH NAME
gawk \- pattern scanning and processing language
.SH SYNOPSIS
@@ -491,6 +491,7 @@ cannot be used in place of
and
.BR ^= .
.RE
+.bp \" MANUAL EDIT
.TP
.PD 0
.B \-r
@@ -1107,9 +1108,11 @@ option from within an \*(AK program.
When true,
.I gawk
prints lint warnings. When false, it does not.
-When assigned the string value \fB"fatal"\fP,
-lint warnings become fatal errors, exactly like
-.BR \-\^\-lint=fatal .
+The values allowed for the
+.B \-\^\-lint
+option may also be assinged to
+.BR LINT ,
+with the same effects.
Any other true value just prints warnings.
.TP
.B NF
@@ -4275,7 +4278,7 @@ We thank him.
.SH COPYING PERMISSIONS
Copyright \(co 1989, 1991, 1992, 1993, 1994, 1995, 1996,
1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2007, 2009,
-2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019,
+2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020,
Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
diff --git a/doc/gawk.info b/doc/gawk.info
index 270066b..a78e419 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -987,7 +987,8 @@ version of 'awk' is referred to as "old 'awk'."
On most current systems, when you run the 'awk' utility you get some
version of new 'awk'.(1) If your system's standard 'awk' is the old
-one, you will see something like this if you try the test program:
+one, you will see something like this if you try the following test
+program:
$ awk 1 /dev/null
error-> awk: syntax error near line 1
@@ -1171,11 +1172,11 @@ both the printed and online versions of the
documentation. This minor
node briefly documents the typographical conventions used in Texinfo.
Examples you would type at the command line are preceded by the
-common shell primary and secondary prompts, '$' and '>'. Input that you
-type is shown 'like this'. Output from the command is preceded by the
-glyph "-|". This typically represents the command's standard output.
-Error messages and other output on the command's standard error are
-preceded by the glyph "error->". For example:
+common shell primary and secondary prompts, '$' and '>', respectively.
+Input that you type is shown 'like this'. Output from the command is
+preceded by the glyph "-|". This typically represents the command's
+standard output. Error messages and other output on the command's
+standard error are preceded by the glyph "error->". For example:
$ echo hi on stdout
-| hi on stdout
@@ -1366,10 +1367,10 @@ acknowledgements:
Dr. Nelson Beebe, Andreas Buening, Dr. Manuel Collado, Antonio
Colombo, Stephen Davies, Scott Deifik, Akim Demaille, Daniel Richard G.,
Juan Manuel Guerrero, Darrel Hankerson, Michal Jaegermann, Jürgen Kahrs,
-Stepan Kasal, John Malmberg, Dave Pitts, Chet Ramey, Pat Rankin, Andrew
-Schorr, Corinna Vinschen, and Eli Zaretskii (in alphabetical order) make
-up the current 'gawk' "crack portability team." Without their hard work
-and help, 'gawk' would not be nearly the robust, portable program it is
+Stepan Kasal, John Malmberg, Chet Ramey, Pat Rankin, Andrew Schorr,
+Corinna Vinschen, and Eli Zaretskii (in alphabetical order) make up the
+current 'gawk' "crack portability team." Without their hard work and
+help, 'gawk' would not be nearly the robust, portable program it is
today. It has been and continues to be a pleasure working with this
team of fine people.
@@ -1379,8 +1380,8 @@ people. *Note Contributors:: for the full list.
Thanks to Michael Brennan for the Forewords.
Thanks to Patrice Dumas for the new 'makeinfo' program. Thanks to
-Karl Berry, who continues to work to keep the Texinfo markup language
-sane.
+Karl Berry for his past work on Texinfo, and to Gavin Smith, who
+continues to work to improve the Texinfo markup language.
Robert P.J. Day, Michael Brennan, and Brian Kernighan kindly acted as
reviewers for the 2015 edition of this Info file. Their feedback helped
@@ -1394,8 +1395,8 @@ or its documentation without his help.
Brian is in a class by himself as a programmer and technical author.
I have to thank him (yet again) for his ongoing friendship and for being
-a role model to me for close to 30 years! Having him as a reviewer is
-an exciting privilege. It has also been extremely humbling...
+a role model to me for over 30 years! Having him as a reviewer is an
+exciting privilege. It has also been extremely humbling...
I must thank my wonderful wife, Miriam, for her patience through the
many versions of this project, for her proofreading, and for sharing me
@@ -1409,7 +1410,7 @@ advantage of those opportunities.
Arnold Robbins
Nof Ayalon
Israel
-February 2015
+March, 2020
File: gawk.info, Node: Getting Started, Next: Invoking Gawk, Prev: Preface,
Up: Top
@@ -1637,16 +1638,12 @@ type 'advice' at the shell and the system arranges to
run 'awk' as if
you had typed 'awk -f advice':
$ chmod +x advice
- $ advice
+ $ ./advice
-| Don't Panic!
-(We assume you have the current directory in your shell's search path
-variable [typically '$PATH']. If not, you may need to type './advice'
-at the shell.)
-
- Self-contained 'awk' scripts are useful when you want to write a
-program that users can invoke without their having to know that the
-program is written in 'awk'.
+Self-contained 'awk' scripts are useful when you want to write a program
+that users can invoke without their having to know that the program is
+written in 'awk'.
Understanding '#!'
@@ -1665,7 +1662,7 @@ interpreter with the given argument and the full argument
list of the
executed program. The first argument in the list is the full file name
of the 'awk' program. The rest of the argument list contains either
options to 'awk', or data files, or both. (Note that on many systems
-'awk' may be found in '/usr/bin' instead of in '/bin'.)
+'awk' is found in '/usr/bin' instead of in '/bin'.)
Some systems limit the length of the interpreter name to 32
characters. Often, this can be dealt with by using a symbolic link.
@@ -1866,7 +1863,8 @@ so:
$ awk 'BEGIN { print "Here is a double quote <\42>" }'
-| Here is a double quote <">
-This works nicely, but you should comment clearly what the escapes mean.
+This works nicely, but you should comment clearly what the escape
+sequences mean.
A fourth option is to use command-line variable assignment, like
this:
@@ -2240,9 +2238,9 @@ A newline at any other point is considered the end of the
statement.(1)
point where a newline would terminate it, you can "continue" it by
ending the first line with a backslash character ('\'). The backslash
must be the final character on the line in order to be recognized as a
-continuation character. A backslash is allowed anywhere in the
-statement, even in the middle of a string or regular expression. For
-example:
+continuation character. A backslash followed by a newline is allowed
+anywhere in the statement, even in the middle of a string or regular
+expression. For example:
awk '/This regular expression is too long, so continue it\
on the next line/ { print $1 }'
@@ -2252,8 +2250,10 @@ programs. 'gawk' places no limit on the length of a
line, so backslash
continuation is never strictly necessary; it just makes programs more
readable. For this same reason, as well as for clarity, we have kept
most statements short in the programs presented throughout the Info
-file. Backslash continuation is most useful when your 'awk' program is
-in a separate source file instead of entered from the command line. You
+file.
+
+ Backslash continuation is most useful when your 'awk' program is in a
+separate source file instead of entered from the command line. You
should also note that many 'awk' implementations are more particular
about where you may use backslash continuation. For example, they may
not allow you to split a string constant using backslash continuation.
@@ -2502,7 +2502,7 @@ The following list describes options mandated by the
POSIX standard:
Files named with '-f' are treated as if they had '@namespace "awk"'
at their beginning. *Note Changing The Namespace::, for more
- information.
+ information on this advanced feature.
'-v VAR=VAL'
'--assign VAR=VAL'
@@ -2683,13 +2683,20 @@ The following list describes options mandated by the
POSIX standard:
'awk' implementations. No space is allowed between the '-L' and
VALUE, if VALUE is supplied. Some warnings are issued when 'gawk'
first reads your program. Others are issued at runtime, as your
- program executes. With an optional argument of 'fatal', lint
- warnings become fatal errors. This may be drastic, but its use
- will certainly encourage the development of cleaner 'awk' programs.
- With an optional argument of 'invalid', only warnings about things
- that are actually invalid are issued. (This is not fully
- implemented yet.) With an optional argument of 'no-ext', warnings
- about 'gawk' extensions are disabled.
+ program executes. The optional argument may be one of the
+ following:
+
+ 'fatal'
+ Cause lint warnings become fatal errors. This may be drastic,
+ but its use will certainly encourage the development of
+ cleaner 'awk' programs.
+
+ 'invalid'
+ Only issue warnings about things that are actually invalid are
+ issued. (This is not fully implemented yet.)
+
+ 'no-ext'
+ Disable warnings about 'gawk' extensions.
Some warnings are only printed once, even if the dubious constructs
they warn about occur multiple times in your 'awk' program. Thus,
@@ -2791,7 +2798,7 @@ The following list describes options mandated by the
POSIX standard:
not there when 'gawk' started running. This is particularly useful
when you want to run 'awk' scripts from questionable sources and
need to make sure the scripts can't access your system (other than
- the specified input data file).
+ the specified input data files).
'-t'
'--lint-old'
@@ -2836,9 +2843,9 @@ input as a source of data.)
Because it is clumsy using the standard 'awk' mechanisms to mix
source file and command-line 'awk' programs, 'gawk' provides the '-e'
option. This does not require you to preempt the standard input for
-your source code; it allows you to easily mix command-line and library
-source code (*note AWKPATH Variable::). As with '-f', the '-e' and '-i'
-options may also be used multiple times on the command line.
+your source code, and it allows you to easily mix command-line and
+library source code (*note AWKPATH Variable::). As with '-f', the '-e'
+and '-i' options may also be used multiple times on the command line.
If no '-f' option (or '-e' option for 'gawk') is specified, then
'awk' uses the first nonoption command-line argument as the text of the
@@ -2905,7 +2912,9 @@ program in the 'ARGV' array (*note Built-in Variables::).
Command-line
options and the program text (if present) are omitted from 'ARGV'. All
other arguments, including variable assignments, are included. As each
element of 'ARGV' is processed, 'gawk' sets 'ARGIND' to the index in
-'ARGV' of the current element.
+'ARGV' of the current element. ('gawk' makes the full command line,
+including program text and options, available in 'PROCINFO["argv"]';
+*note Auto-set::.)
Changing 'ARGC' and 'ARGV' in your 'awk' program lets you control how
'awk' processes the input files; this is described in more detail in
@@ -29502,6 +29511,8 @@ Info file, in approximate chronological order:
* Juan Manuel Guerrero took over maintenance of the DJGPP port.
+ * "Jannick" provided support for MSYS2.
+
* Arnold Robbins has been working on 'gawk' since 1988, at first
helping David Trueman, and as the primary maintainer since around
1994.
@@ -30676,7 +30687,6 @@ OS/2 Andreas Buening,
<address@hidden>
VMS John Malmberg, <address@hidden>
z/OS (OS/390) Daniel Richard G. <address@hidden>
- Dave Pitts (Maintainer Emeritus), <address@hidden>
If your bug is also reproducible under Unix, send a copy of your
report to the <address@hidden> email list as well.
@@ -30864,9 +30874,9 @@ B.6 Summary
file.
* 'gawk' may be built on non-POSIX systems as well. The currently
- supported systems are MS-Windows using MSYS, DJGPP, MinGW, and
- Cygwin, and both Vax/VMS and OpenVMS. Instructions for each system
- are included in this major node.
+ supported systems are MS-Windows using MSYS, MSYS2, DJGPP, MinGW,
+ and Cygwin, and both Vax/VMS and OpenVMS. Instructions for each
+ system are included in this major node.
* Bug reports should be sent via email to <address@hidden>. Bug
reports should be in English and should include the version of
@@ -33862,7 +33872,7 @@ Index
* + (plus sign), += operator <1>: Precedence. (line 94)
* , (comma), in range patterns: Ranges. (line 6)
* - (hyphen), file names beginning with: Options. (line 64)
-* - (hyphen), -- end of options marker: Options. (line 336)
+* - (hyphen), -- end of options marker: Options. (line 343)
* - (hyphen), in bracket expressions: Bracket Expressions. (line 25)
* - (hyphen), -= operator: Assignment Ops. (line 129)
* - (hyphen), -- operator: Increment Ops. (line 48)
@@ -33871,7 +33881,7 @@ Index
* - (hyphen), - operator <1>: Precedence. (line 57)
* - (hyphen), -= operator <1>: Precedence. (line 94)
* --assign option: Options. (line 36)
-* --bignum option: Options. (line 230)
+* --bignum option: Options. (line 237)
* --characters-as-bytes option: Options. (line 73)
* --copyright option: Options. (line 93)
* --debug option: Options. (line 112)
@@ -33898,21 +33908,21 @@ Index
* --include option: Options. (line 181)
* --lint option: Command Line. (line 20)
* --lint option <1>: Options. (line 210)
-* --lint-old option: Options. (line 326)
+* --lint-old option: Options. (line 333)
* --load option: Options. (line 198)
-* --no-optimize option: Options. (line 311)
-* --non-decimal-data option: Options. (line 236)
+* --no-optimize option: Options. (line 318)
+* --non-decimal-data option: Options. (line 243)
* --non-decimal-data option <1>: Nondecimal Data. (line 6)
* --non-decimal-data option, strtonum() function and: Nondecimal Data.
(line 35)
-* --optimize option: Options. (line 261)
-* --posix option: Options. (line 283)
-* --posix option, --traditional option and: Options. (line 298)
-* --pretty-print option: Options. (line 250)
-* --profile option: Options. (line 271)
+* --optimize option: Options. (line 268)
+* --posix option: Options. (line 290)
+* --posix option, --traditional option and: Options. (line 305)
+* --pretty-print option: Options. (line 257)
+* --profile option: Options. (line 278)
* --profile option <1>: Profiling. (line 12)
-* --re-interval option: Options. (line 304)
-* --sandbox option: Options. (line 316)
+* --re-interval option: Options. (line 311)
+* --sandbox option: Options. (line 323)
* --sandbox option, input redirection with getline: Getline. (line 19)
* --sandbox option, output redirection with print, printf: Redirection.
(line 6)
@@ -33920,9 +33930,9 @@ Index
(line 128)
* --source option: Options. (line 121)
* --traditional option: Options. (line 86)
-* --traditional option, --posix option and: Options. (line 298)
-* --use-lc-numeric option: Options. (line 245)
-* --version option: Options. (line 331)
+* --traditional option, --posix option and: Options. (line 305)
+* --use-lc-numeric option: Options. (line 252)
+* --version option: Options. (line 338)
* -b option: Options. (line 73)
* -c option: Options. (line 86)
* -C option: Options. (line 93)
@@ -33930,12 +33940,12 @@ Index
* -D option: Options. (line 112)
* -e option: Options. (line 121)
* -E option: Options. (line 147)
-* -e option <1>: Options. (line 371)
+* -e option <1>: Options. (line 378)
* -f option: Long. (line 12)
* -F option: Options. (line 21)
* -f option <1>: Options. (line 25)
-* -F option, -Ft sets FS to TAB: Options. (line 343)
-* -f option, multiple uses: Options. (line 348)
+* -F option, -Ft sets FS to TAB: Options. (line 350)
+* -f option, multiple uses: Options. (line 355)
* -F option, command-line: Command Line Field Separator.
(line 6)
* -g option: Options. (line 169)
@@ -33943,19 +33953,19 @@ Index
* -i option: Options. (line 181)
* -l option: Options. (line 198)
* -l option <1>: Options. (line 210)
-* -L option: Options. (line 326)
-* -M option: Options. (line 230)
-* -n option: Options. (line 236)
-* -N option: Options. (line 245)
-* -o option: Options. (line 250)
-* -O option: Options. (line 261)
-* -p option: Options. (line 271)
-* -P option: Options. (line 283)
-* -r option: Options. (line 304)
-* -s option: Options. (line 311)
-* -S option: Options. (line 316)
+* -L option: Options. (line 333)
+* -M option: Options. (line 237)
+* -n option: Options. (line 243)
+* -N option: Options. (line 252)
+* -o option: Options. (line 257)
+* -O option: Options. (line 268)
+* -p option: Options. (line 278)
+* -P option: Options. (line 290)
+* -r option: Options. (line 311)
+* -s option: Options. (line 318)
+* -S option: Options. (line 323)
* -v option: Options. (line 36)
-* -V option: Options. (line 331)
+* -V option: Options. (line 338)
* -v option <1>: Assignment Options. (line 12)
* -W option: Options. (line 51)
* . (period), regexp operator: Regexp Operator Details.
@@ -33984,8 +33994,8 @@ Index
* : (colon), ?: operator: Precedence. (line 91)
* : (colon), :: namespace separator: Qualified Names. (line 6)
* ; (semicolon), separating statements in actions: Statements/Lines.
- (line 90)
-* ; (semicolon), separating rules: Statements/Lines. (line 90)
+ (line 92)
+* ; (semicolon), separating rules: Statements/Lines. (line 92)
* ; (semicolon), separating statements in actions <1>: Action Overview.
(line 19)
* ; (semicolon), separating statements in actions <2>: Statements.
@@ -34031,9 +34041,9 @@ Index
* \ (backslash), in shell commands: Quoting. (line 48)
* \ (backslash), continuing lines and: Statements/Lines. (line 19)
* \ (backslash), continuing lines and, in csh: Statements/Lines.
- (line 43)
+ (line 45)
* \ (backslash), continuing lines and, comments and: Statements/Lines.
- (line 75)
+ (line 77)
* \ (backslash), in escape sequences: Escape Sequences. (line 6)
* \ (backslash), \a escape sequence: Escape Sequences. (line 34)
* \ (backslash), \b escape sequence: Escape Sequences. (line 38)
@@ -34176,7 +34186,7 @@ Index
(line 6)
* archaeologists: Bugs. (line 6)
* arctangent: Numeric Functions. (line 12)
-* ARGC/ARGV variables, portability and: Executable Scripts. (line 59)
+* ARGC/ARGV variables, portability and: Executable Scripts. (line 55)
* ARGC/ARGV variables, command-line arguments: Other Arguments.
(line 21)
* ARGC/ARGV variables: Auto-set. (line 15)
@@ -34189,7 +34199,7 @@ Index
* arguments, command-line <1>: Auto-set. (line 15)
* arguments, command-line <2>: ARGC and ARGV. (line 6)
* arguments, processing: Getopt Function. (line 6)
-* ARGV array: Options. (line 316)
+* ARGV array: Options. (line 323)
* ARGV array, indexing into: Other Arguments. (line 21)
* arithmetic operators: Arithmetic Ops. (line 6)
* array manipulation in extensions: Array Manipulation. (line 6)
@@ -34313,7 +34323,7 @@ Index
* awk, uses for <1>: Getting Started. (line 12)
* awk, uses for <2>: When. (line 6)
* awk, invoking: Command Line. (line 6)
-* awk, profiling, enabling: Options. (line 271)
+* awk, profiling, enabling: Options. (line 278)
* awk, implementations, limits: Getline Notes. (line 14)
* awk, implementation issues, pipes: Redirection. (line 129)
* awk, new vs. old, OFMT variable: Strings And Numbers. (line 56)
@@ -34372,9 +34382,9 @@ Index
* backslash (\), in shell commands: Quoting. (line 48)
* backslash (\), continuing lines and: Statements/Lines. (line 19)
* backslash (\), continuing lines and, in csh: Statements/Lines.
- (line 43)
+ (line 45)
* backslash (\), continuing lines and, comments and: Statements/Lines.
- (line 75)
+ (line 77)
* backslash (\), in escape sequences: Escape Sequences. (line 6)
* backslash (\), \a escape sequence: Escape Sequences. (line 34)
* backslash (\), \b escape sequence: Escape Sequences. (line 38)
@@ -34661,7 +34671,7 @@ Index
* commands to execute at breakpoint: Debugger Execution Control.
(line 10)
* commenting: Comments. (line 6)
-* commenting, backslash continuation and: Statements/Lines. (line 75)
+* commenting, backslash continuation and: Statements/Lines. (line 77)
* common extensions, \x escape sequence: Escape Sequences. (line 61)
* common extensions, RS as a regexp: gawk split records. (line 6)
* common extensions, single character fields: Single Character Fields.
@@ -34750,8 +34760,8 @@ Index
* cos: Numeric Functions. (line 16)
* cosine: Numeric Functions. (line 16)
* counting words, lines, and characters: Wc Program. (line 6)
-* csh utility: Statements/Lines. (line 43)
-* csh utility, POSIXLY_CORRECT environment variable: Options. (line 392)
+* csh utility: Statements/Lines. (line 45)
+* csh utility, POSIXLY_CORRECT environment variable: Options. (line 399)
* csh utility, |& operator, comparison with: Two-way I/O. (line 27)
* ctime() user-defined function: Function Example. (line 74)
* Curreli, Marco: Contributors. (line 147)
@@ -34770,10 +34780,10 @@ Index
* cut.awk program: Cut Program. (line 45)
* d debugger command (alias for delete): Breakpoint Control. (line 64)
* dark corner: Conventions. (line 42)
-* dark corner, ARGV variable, value of: Executable Scripts. (line 59)
+* dark corner, ARGV variable, value of: Executable Scripts. (line 55)
* dark corner, invoking awk: Command Line. (line 16)
* dark corner, empty programs: Command Line. (line 20)
-* dark corner, escape sequences: Other Arguments. (line 44)
+* dark corner, escape sequences: Other Arguments. (line 46)
* dark corner, escape sequences, for metacharacters: Escape Sequences.
(line 144)
* dark corner, input files: awk split records. (line 117)
@@ -34976,7 +34986,7 @@ Index
* debugging, example session: Sample Debugging Session.
(line 6)
* debugging gawk, bug reports: Bugs. (line 9)
-* decimal point character, locale specific: Options. (line 295)
+* decimal point character, locale specific: Options. (line 302)
* decrement operators: Increment Ops. (line 35)
* default keyword: Switch Statement. (line 6)
* Deifik, Scott: Acknowledgments. (line 60)
@@ -35163,7 +35173,7 @@ Index
* endpwent() user-defined function: Passwd Functions. (line 211)
* English, Steve: Advanced Features. (line 6)
* ENVIRON array: Auto-set. (line 59)
-* environment variables, POSIXLY_CORRECT: Options. (line 377)
+* environment variables, POSIXLY_CORRECT: Options. (line 384)
* environment variables, used by gawk: Environment Variables.
(line 6)
* environment variables, AWKPATH: AWKPATH Variable. (line 6)
@@ -35352,7 +35362,7 @@ Index
* files, awk programs in: Long. (line 6)
* files, awkvars.out: Options. (line 98)
* files, portable object, generating: Options. (line 169)
-* files, multiple passes over: Other Arguments. (line 62)
+* files, multiple passes over: Other Arguments. (line 64)
* files, reading, multiline records: Multiple Line. (line 6)
* files, descriptors: Special FD. (line 6)
* files, /dev/... special files: Special FD. (line 48)
@@ -35456,7 +35466,7 @@ Index
* Free Software Foundation (FSF) <3>: Glossary. (line 403)
* FreeBSD: Glossary. (line 747)
* FS variable, --field-separator option and: Options. (line 21)
-* FS variable, TAB character as: Options. (line 292)
+* FS variable, TAB character as: Options. (line 299)
* FS variable: Field Separators. (line 15)
* FS variable, changing value of: Field Separators. (line 34)
* FS variable, containing ^: Regexp Field Splitting.
@@ -35531,9 +35541,10 @@ Index
* gawk, uses for: Preface. (line 34)
* gawk, awk and <1>: This Manual. (line 14)
* gawk, newlines in: Statements/Lines. (line 12)
-* gawk, extensions, disabling: Options. (line 283)
-* gawk, version of, printing information about: Options. (line 331)
+* gawk, extensions, disabling: Options. (line 290)
+* gawk, version of, printing information about: Options. (line 338)
* gawk, ARGIND variable in: Other Arguments. (line 21)
+* gawk, PROCINFO array in: Other Arguments. (line 21)
* gawk, escape sequences: Escape Sequences. (line 121)
* gawk, escape sequences <1>: Escape Sequences. (line 121)
* gawk, regular expressions, precedence: Regexp Operator Details.
@@ -35583,7 +35594,7 @@ Index
* gawk, TEXTDOMAIN variable in: User-modified. (line 155)
* gawk, ERRNO variable in <3>: Auto-set. (line 87)
* gawk, FUNCTAB array in: Auto-set. (line 134)
-* gawk, PROCINFO array in: Auto-set. (line 148)
+* gawk, PROCINFO array in <1>: Auto-set. (line 148)
* gawk, version of: Auto-set. (line 262)
* gawk, RT variable in <3>: Auto-set. (line 348)
* gawk, SYMTAB array in: Auto-set. (line 352)
@@ -35591,13 +35602,13 @@ Index
* gawk, function arguments and: Calling Built-in. (line 16)
* gawk, IGNORECASE variable in <3>: String Functions. (line 58)
* gawk, timestamps: Time Functions. (line 6)
-* gawk, PROCINFO array in <1>: Time Functions. (line 49)
+* gawk, PROCINFO array in <2>: Time Functions. (line 49)
* gawk, bitwise operations in: Bitwise Functions. (line 40)
* gawk, string-translation functions: I18N Functions. (line 6)
* gawk, features, advanced: Advanced Features. (line 6)
* gawk, IGNORECASE variable in <4>: Array Sorting Functions.
(line 83)
-* gawk, PROCINFO array in <2>: Two-way I/O. (line 114)
+* gawk, PROCINFO array in <3>: Two-way I/O. (line 114)
* gawk, ERRNO variable in <4>: TCP/IP Networking. (line 54)
* gawk, dynamic profiling: Profiling. (line 179)
* gawk, profiling programs: Profiling. (line 179)
@@ -35735,13 +35746,13 @@ Index
* help debugger command: Miscellaneous Debugger Commands.
(line 67)
* hexadecimal numbers: Nondecimal-numbers. (line 6)
-* hexadecimal values, enabling interpretation of: Options. (line 236)
+* hexadecimal values, enabling interpretation of: Options. (line 243)
* history expansion, in debugger: Readline Support. (line 6)
* histsort.awk program: History Sorting. (line 25)
* Hughes, Phil: Acknowledgments. (line 43)
* HUP signal, for dynamic profiling: Profiling. (line 211)
* hyphen (-), file names beginning with: Options. (line 64)
-* hyphen (-), -- end of options marker: Options. (line 336)
+* hyphen (-), -- end of options marker: Options. (line 343)
* hyphen (-), in bracket expressions: Bracket Expressions. (line 25)
* hyphen (-), -= operator: Assignment Ops. (line 129)
* hyphen (-), -- operator: Increment Ops. (line 48)
@@ -35805,7 +35816,7 @@ Index
* input files, running awk without: Read Terminal. (line 6)
* input files, running awk without <1>: Read Terminal. (line 16)
* input files, examples: Sample Data Files. (line 6)
-* input files, variable assignments and: Other Arguments. (line 32)
+* input files, variable assignments and: Other Arguments. (line 34)
* input files, reading: Reading Files. (line 6)
* input files: Reading Files. (line 6)
* input files, closing: Close Files And Pipes.
@@ -35868,6 +35879,7 @@ Index
* Jacobs, Andrew: Passwd Functions. (line 90)
* Jaegermann, Michal: Acknowledgments. (line 60)
* Jaegermann, Michal <1>: Contributors. (line 46)
+* Jannick: Contributors. (line 152)
* Java implementation of awk: Other Versions. (line 121)
* Java programming language: Glossary. (line 466)
* jawk: Other Versions. (line 121)
@@ -35961,7 +35973,7 @@ Index
* lint checking, empty programs: Command Line. (line 16)
* lint checking, issuing warnings: Options. (line 210)
* lint checking, POSIXLY_CORRECT environment variable: Options.
- (line 377)
+ (line 384)
* lint checking: User-modified. (line 90)
* lint checking, array subscripts: Uninitialized Subscripts.
(line 43)
@@ -35980,7 +35992,7 @@ Index
* local variables, in a function: Variable Scope. (line 6)
* local variables, show in debugger: Debugger Info. (line 34)
* locale categories: Explaining gettext. (line 81)
-* locale decimal point character: Options. (line 295)
+* locale decimal point character: Options. (line 302)
* locale, definition of: Locales. (line 6)
* log: Numeric Functions. (line 29)
* log files, timestamps in: Time Functions. (line 6)
@@ -36092,7 +36104,7 @@ Index
* networks, support for: Special Network. (line 6)
* networks, programming: TCP/IP Networking. (line 6)
* newlines: Statements/Lines. (line 6)
-* newlines <1>: Options. (line 289)
+* newlines <1>: Options. (line 296)
* newlines, in dynamic regexps: Computed Regexps. (line 60)
* newlines, in regexp constants: Computed Regexps. (line 70)
* newlines, as record separators: awk split records. (line 12)
@@ -36167,7 +36179,7 @@ Index
* o debugger command (alias for option): Debugger Info. (line 57)
* obsolete features: Obsolete. (line 6)
* octal numbers: Nondecimal-numbers. (line 6)
-* octal values, enabling interpretation of: Options. (line 236)
+* octal values, enabling interpretation of: Options. (line 243)
* OFMT variable: OFMT. (line 15)
* OFMT variable, POSIX awk and: OFMT. (line 27)
* OFMT variable <1>: Strings And Numbers. (line 56)
@@ -36282,8 +36294,6 @@ Index
* pipe, output: Redirection. (line 57)
* pipe, closing: Close Files And Pipes.
(line 6)
-* Pitts, Dave: Acknowledgments. (line 60)
-* Pitts, Dave <1>: Maintainers. (line 14)
* platform running on: Auto-set. (line 224)
* Plauger, P.J.: Library Functions. (line 12)
* plug-in: Extension Intro. (line 6)
@@ -36297,10 +36307,10 @@ Index
* plus sign (+), + operator <1>: Precedence. (line 57)
* plus sign (+), += operator <1>: Precedence. (line 94)
* pointers to functions: Indirect Calls. (line 6)
-* portability, #! (executable scripts): Executable Scripts. (line 33)
-* portability, ARGV variable: Executable Scripts. (line 59)
+* portability, #! (executable scripts): Executable Scripts. (line 29)
+* portability, ARGV variable: Executable Scripts. (line 55)
* portability, backslash continuation and: Statements/Lines. (line 30)
-* portability, POSIXLY_CORRECT environment variable: Options. (line 397)
+* portability, POSIXLY_CORRECT environment variable: Options. (line 404)
* portability: Escape Sequences. (line 103)
* portability, backslash in escape sequences: Escape Sequences.
(line 108)
@@ -36376,8 +36386,8 @@ Index
* POSIX awk, date utility and: Time Functions. (line 255)
* POSIX awk, function keyword in: Definition Syntax. (line 99)
* POSIX awk, changes in awk versions: POSIX. (line 6)
-* POSIX mode: Options. (line 283)
-* POSIX mode <1>: Options. (line 377)
+* POSIX mode: Options. (line 290)
+* POSIX mode <1>: Options. (line 384)
* POSIX mode <2>: Regexp Operator Details.
(line 47)
* POSIX mode <3>: Input Summary. (line 69)
@@ -36397,7 +36407,7 @@ Index
* POSIX mode <12>: POSIX Floating Point Problems.
(line 83)
* POSIX mode <13>: Feature History. (line 313)
-* POSIXLY_CORRECT environment variable: Options. (line 377)
+* POSIXLY_CORRECT environment variable: Options. (line 384)
* PREC variable: User-modified. (line 127)
* precedence, regexp operators: Regexp Operator Details.
(line 137)
@@ -36409,7 +36419,7 @@ Index
* predefined variables, conveying information: Auto-set. (line 6)
* pretty printer, interaction with namespaces: Namespace And Features.
(line 9)
-* pretty printing: Options. (line 248)
+* pretty printing: Options. (line 255)
* pretty printing <1>: Profiling. (line 222)
* pretty printing, profiling, difference with: Profiling. (line 229)
* print debugger command: Viewing And Changing Data.
@@ -36573,7 +36583,7 @@ Index
* regexp constants, as patterns: Expression Patterns. (line 34)
* register loadable extension: Registration Functions.
(line 6)
-* regular expressions, interval expressions and: Options. (line 304)
+* regular expressions, interval expressions and: Options. (line 311)
* regular expressions: Regexp. (line 6)
* regular expressions, as patterns: Regexp Usage. (line 6)
* regular expressions, operators: Regexp Usage. (line 19)
@@ -36643,7 +36653,7 @@ Index
* Robbins, Miriam <2>: Passwd Functions. (line 90)
* Robbins, Arnold <3>: Alarm Program. (line 6)
* Robbins, Arnold <4>: General Data Types. (line 6)
-* Robbins, Arnold <5>: Contributors. (line 152)
+* Robbins, Arnold <5>: Contributors. (line 154)
* Robbins, Arnold <6>: Maintainers. (line 14)
* Robbins, Arnold <7>: Future Extensions. (line 6)
* Rommel, Kai Uwe: Contributors. (line 43)
@@ -36673,7 +36683,7 @@ Index
(line 68)
* sample debugging session: Sample Debugging Session.
(line 6)
-* sandbox mode: Options. (line 316)
+* sandbox mode: Options. (line 323)
* save debugger options: Debugger Info. (line 85)
* scalar or array: Type Functions. (line 11)
* scalar values: Basic Data Typing. (line 13)
@@ -36701,8 +36711,8 @@ Index
* sed utility <2>: Glossary. (line 16)
* seeding random number generator: Numeric Functions. (line 64)
* semicolon (;), separating statements in actions: Statements/Lines.
- (line 90)
-* semicolon (;), separating rules: Statements/Lines. (line 90)
+ (line 92)
+* semicolon (;), separating rules: Statements/Lines. (line 92)
* semicolon (;), separating statements in actions <1>: Action Overview.
(line 19)
* semicolon (;), separating statements in actions <2>: Statements.
@@ -36774,7 +36784,7 @@ Index
* side effects, asorti() function: Array Sorting Functions.
(line 24)
* sidebar, Recipe for a Programming Language: History. (line 6)
-* sidebar, Understanding #!: Executable Scripts. (line 31)
+* sidebar, Understanding #!: Executable Scripts. (line 27)
* sidebar, Backslash Before Regular Characters: Escape Sequences.
(line 106)
* sidebar, Escape Sequences for Metacharacters: Escape Sequences.
@@ -36836,6 +36846,7 @@ Index
* sleep utility: Alarm Program. (line 109)
* sleep() extension function: Extension Sample Time.
(line 31)
+* Smith, Gavin: Acknowledgments. (line 75)
* Solaris, POSIX-compliant awk: Other Versions. (line 96)
* sort array: String Functions. (line 42)
* sort array indices: String Functions. (line 42)
@@ -36892,7 +36903,7 @@ Index
* starting the debugger: Debugger Invocation. (line 6)
* stat() extension function: Extension Sample File Functions.
(line 18)
-* statements, multiple: Statements/Lines. (line 90)
+* statements, multiple: Statements/Lines. (line 92)
* statements, control, in actions: Statements. (line 6)
* statements, compound, control statements and: Statements. (line 10)
* step debugger command: Debugger Execution Control.
@@ -37022,7 +37033,7 @@ Index
* treating files, as single records: gawk split records. (line 96)
* troubleshooting, typographical errors, global variables: Options.
(line 103)
-* troubleshooting, --non-decimal-data option: Options. (line 236)
+* troubleshooting, --non-decimal-data option: Options. (line 243)
* troubleshooting, backslash before nonspecial character: Escape Sequences.
(line 108)
* troubleshooting, regexp constants vs. string constants: Computed Regexps.
@@ -37141,7 +37152,7 @@ Index
(line 24)
* values, numeric: Basic Data Typing. (line 13)
* values, string: Basic Data Typing. (line 13)
-* variable assignments and input files: Other Arguments. (line 32)
+* variable assignments and input files: Other Arguments. (line 34)
* variable type, typeof() function (gawk): Type Functions. (line 14)
* variables: Other Features. (line 6)
* variables, setting: Options. (line 36)
@@ -37209,7 +37220,7 @@ Index
(line 13)
* while statement, use of regexps in: Regexp Usage. (line 19)
* while statement: While Statement. (line 6)
-* whitespace, newlines as: Options. (line 289)
+* whitespace, newlines as: Options. (line 296)
* whitespace, as field separators: Default Field Splitting.
(line 6)
* whitespace, functions, calling: Calling Built-in. (line 10)
@@ -37250,591 +37261,591 @@ Ref: Preface-Footnote-253286
Ref: Preface-Footnote-353520
Node: History53662
Node: Names56014
-Ref: Names-Footnote-157108
-Node: This Manual57255
-Ref: This Manual-Footnote-163894
-Node: Conventions63994
-Node: Manual History66349
-Ref: Manual History-Footnote-169346
-Ref: Manual History-Footnote-269387
-Node: How To Contribute69461
-Node: Acknowledgments70387
-Node: Getting Started75295
-Node: Running gawk77734
-Node: One-shot78924
-Node: Read Terminal80187
-Node: Long82180
-Node: Executable Scripts83693
-Ref: Executable Scripts-Footnote-186488
-Node: Comments86591
-Node: Quoting89075
-Node: DOS Quoting94592
-Node: Sample Data Files96648
-Node: Very Simple99243
-Node: Two Rules104145
-Node: More Complex106030
-Node: Statements/Lines108896
-Ref: Statements/Lines-Footnote-1113355
-Node: Other Features113620
-Node: When114556
-Ref: When-Footnote-1116310
-Node: Intro Summary116375
-Node: Invoking Gawk117259
-Node: Command Line118773
-Node: Options119571
-Ref: Options-Footnote-1137173
-Ref: Options-Footnote-2137404
-Node: Other Arguments137429
-Node: Naming Standard Input140610
-Node: Environment Variables141820
-Node: AWKPATH Variable142378
-Ref: AWKPATH Variable-Footnote-1145790
-Ref: AWKPATH Variable-Footnote-2145824
-Node: AWKLIBPATH Variable146195
-Ref: AWKLIBPATH Variable-Footnote-1147892
-Node: Other Environment Variables148267
-Node: Exit Status152088
-Node: Include Files152765
-Node: Loading Shared Libraries156455
-Node: Obsolete157883
-Node: Undocumented158575
-Node: Invoking Summary158872
-Node: Regexp161713
-Node: Regexp Usage163167
-Node: Escape Sequences165204
-Node: Regexp Operators171445
-Node: Regexp Operator Details171930
-Ref: Regexp Operator Details-Footnote-1178362
-Node: Interval Expressions178509
-Ref: Interval Expressions-Footnote-1179930
-Node: Bracket Expressions180028
-Ref: table-char-classes182504
-Node: Leftmost Longest185830
-Node: Computed Regexps187133
-Node: GNU Regexp Operators190560
-Node: Case-sensitivity194239
-Ref: Case-sensitivity-Footnote-1197105
-Ref: Case-sensitivity-Footnote-2197340
-Node: Regexp Summary197448
-Node: Reading Files198914
-Node: Records201183
-Node: awk split records202258
-Node: gawk split records207533
-Ref: gawk split records-Footnote-1212266
-Node: Fields212303
-Node: Nonconstant Fields215044
-Ref: Nonconstant Fields-Footnote-1217280
-Node: Changing Fields217484
-Node: Field Separators223515
-Node: Default Field Splitting226213
-Node: Regexp Field Splitting227331
-Node: Single Character Fields230684
-Node: Command Line Field Separator231744
-Node: Full Line Fields234962
-Ref: Full Line Fields-Footnote-1236484
-Ref: Full Line Fields-Footnote-2236530
-Node: Field Splitting Summary236631
-Node: Constant Size238705
-Node: Fixed width data239437
-Node: Skipping intervening242904
-Node: Allowing trailing data243702
-Node: Fields with fixed data244739
-Node: Splitting By Content246257
-Ref: Splitting By Content-Footnote-1249907
-Node: Testing field creation250070
-Node: Multiple Line251695
-Node: Getline257972
-Node: Plain Getline260441
-Node: Getline/Variable263014
-Node: Getline/File264165
-Node: Getline/Variable/File265553
-Ref: Getline/Variable/File-Footnote-1267158
-Node: Getline/Pipe267246
-Node: Getline/Variable/Pipe269950
-Node: Getline/Coprocess271085
-Node: Getline/Variable/Coprocess272352
-Node: Getline Notes273094
-Node: Getline Summary275891
-Ref: table-getline-variants276315
-Node: Read Timeout277063
-Ref: Read Timeout-Footnote-1280969
-Node: Retrying Input281027
-Node: Command-line directories282226
-Node: Input Summary283132
-Node: Input Exercises286304
-Node: Printing286738
-Node: Print288572
-Node: Print Examples290029
-Node: Output Separators292809
-Node: OFMT294826
-Node: Printf296182
-Node: Basic Printf296967
-Node: Control Letters298541
-Node: Format Modifiers303705
-Node: Printf Examples309720
-Node: Redirection312206
-Node: Special FD319047
-Ref: Special FD-Footnote-1322215
-Node: Special Files322289
-Node: Other Inherited Files322906
-Node: Special Network323907
-Node: Special Caveats324767
-Node: Close Files And Pipes325716
-Ref: table-close-pipe-return-values332623
-Ref: Close Files And Pipes-Footnote-1333436
-Ref: Close Files And Pipes-Footnote-2333584
-Node: Nonfatal333736
-Node: Output Summary336074
-Node: Output Exercises337296
-Node: Expressions337975
-Node: Values339163
-Node: Constants339841
-Node: Scalar Constants340532
-Ref: Scalar Constants-Footnote-1343056
-Node: Nondecimal-numbers343306
-Node: Regexp Constants346307
-Node: Using Constant Regexps346833
-Node: Standard Regexp Constants347455
-Node: Strong Regexp Constants350643
-Node: Variables353601
-Node: Using Variables354258
-Node: Assignment Options356168
-Node: Conversion358639
-Node: Strings And Numbers359163
-Ref: Strings And Numbers-Footnote-1362226
-Node: Locale influences conversions362335
-Ref: table-locale-affects365093
-Node: All Operators365711
-Node: Arithmetic Ops366340
-Node: Concatenation368846
-Ref: Concatenation-Footnote-1371693
-Node: Assignment Ops371800
-Ref: table-assign-ops376791
-Node: Increment Ops378104
-Node: Truth Values and Conditions381564
-Node: Truth Values382638
-Node: Typing and Comparison383686
-Node: Variable Typing384506
-Ref: Variable Typing-Footnote-1390969
-Ref: Variable Typing-Footnote-2391041
-Node: Comparison Operators391118
-Ref: table-relational-ops391537
-Node: POSIX String Comparison395032
-Ref: POSIX String Comparison-Footnote-1396727
-Ref: POSIX String Comparison-Footnote-2396866
-Node: Boolean Ops396950
-Ref: Boolean Ops-Footnote-1401432
-Node: Conditional Exp401524
-Node: Function Calls403260
-Node: Precedence407137
-Node: Locales410796
-Node: Expressions Summary412428
-Node: Patterns and Actions415001
-Node: Pattern Overview416121
-Node: Regexp Patterns417798
-Node: Expression Patterns418340
-Node: Ranges422121
-Node: BEGIN/END425229
-Node: Using BEGIN/END425990
-Ref: Using BEGIN/END-Footnote-1428726
-Node: I/O And BEGIN/END428832
-Node: BEGINFILE/ENDFILE431146
-Node: Empty434059
-Node: Using Shell Variables434376
-Node: Action Overview436650
-Node: Statements438975
-Node: If Statement440823
-Node: While Statement442318
-Node: Do Statement444346
-Node: For Statement445494
-Node: Switch Statement448665
-Node: Break Statement451051
-Node: Continue Statement453143
-Node: Next Statement454970
-Node: Nextfile Statement457353
-Node: Exit Statement460005
-Node: Built-in Variables462408
-Node: User-modified463541
-Node: Auto-set471308
-Ref: Auto-set-Footnote-1488115
-Ref: Auto-set-Footnote-2488321
-Node: ARGC and ARGV488377
-Node: Pattern Action Summary492590
-Node: Arrays495020
-Node: Array Basics496349
-Node: Array Intro497193
-Ref: figure-array-elements499168
-Ref: Array Intro-Footnote-1501872
-Node: Reference to Elements502000
-Node: Assigning Elements504464
-Node: Array Example504955
-Node: Scanning an Array506714
-Node: Controlling Scanning509736
-Ref: Controlling Scanning-Footnote-1516192
-Node: Numeric Array Subscripts516508
-Node: Uninitialized Subscripts518692
-Node: Delete520311
-Ref: Delete-Footnote-1523063
-Node: Multidimensional523120
-Node: Multiscanning526215
-Node: Arrays of Arrays527806
-Node: Arrays Summary532574
-Node: Functions534667
-Node: Built-in535705
-Node: Calling Built-in536786
-Node: Numeric Functions538782
-Ref: Numeric Functions-Footnote-1542810
-Ref: Numeric Functions-Footnote-2543458
-Ref: Numeric Functions-Footnote-3543506
-Node: String Functions543778
-Ref: String Functions-Footnote-1567962
-Ref: String Functions-Footnote-2568090
-Ref: String Functions-Footnote-3568338
-Node: Gory Details568425
-Ref: table-sub-escapes570216
-Ref: table-sub-proposed571735
-Ref: table-posix-sub573098
-Ref: table-gensub-escapes574639
-Ref: Gory Details-Footnote-1575462
-Node: I/O Functions575616
-Ref: table-system-return-values582084
-Ref: I/O Functions-Footnote-1584164
-Ref: I/O Functions-Footnote-2584312
-Node: Time Functions584432
-Ref: Time Functions-Footnote-1595103
-Ref: Time Functions-Footnote-2595171
-Ref: Time Functions-Footnote-3595329
-Ref: Time Functions-Footnote-4595440
-Ref: Time Functions-Footnote-5595552
-Ref: Time Functions-Footnote-6595779
-Node: Bitwise Functions596045
-Ref: table-bitwise-ops596639
-Ref: Bitwise Functions-Footnote-1602702
-Ref: Bitwise Functions-Footnote-2602875
-Node: Type Functions603066
-Node: I18N Functions605929
-Node: User-defined607580
-Node: Definition Syntax608392
-Ref: Definition Syntax-Footnote-1614079
-Node: Function Example614150
-Ref: Function Example-Footnote-1617072
-Node: Function Calling617094
-Node: Calling A Function617682
-Node: Variable Scope618640
-Node: Pass By Value/Reference621634
-Node: Function Caveats624278
-Ref: Function Caveats-Footnote-1626325
-Node: Return Statement626445
-Node: Dynamic Typing629424
-Node: Indirect Calls630354
-Ref: Indirect Calls-Footnote-1640606
-Node: Functions Summary640734
-Node: Library Functions643439
-Ref: Library Functions-Footnote-1647046
-Ref: Library Functions-Footnote-2647189
-Node: Library Names647360
-Ref: Library Names-Footnote-1651027
-Ref: Library Names-Footnote-2651250
-Node: General Functions651336
-Node: Strtonum Function652439
-Node: Assert Function655461
-Node: Round Function658787
-Node: Cliff Random Function660327
-Node: Ordinal Functions661343
-Ref: Ordinal Functions-Footnote-1664406
-Ref: Ordinal Functions-Footnote-2664658
-Node: Join Function664868
-Ref: Join Function-Footnote-1666638
-Node: Getlocaltime Function666838
-Node: Readfile Function670580
-Node: Shell Quoting672557
-Node: Data File Management673958
-Node: Filetrans Function674590
-Node: Rewind Function678686
-Node: File Checking680595
-Ref: File Checking-Footnote-1681929
-Node: Empty Files682130
-Node: Ignoring Assigns684109
-Node: Getopt Function685659
-Ref: Getopt Function-Footnote-1700873
-Node: Passwd Functions701073
-Ref: Passwd Functions-Footnote-1709912
-Node: Group Functions710000
-Ref: Group Functions-Footnote-1717898
-Node: Walking Arrays718105
-Node: Library Functions Summary721113
-Node: Library Exercises722519
-Node: Sample Programs722984
-Node: Running Examples723754
-Node: Clones724482
-Node: Cut Program725706
-Node: Egrep Program735635
-Ref: Egrep Program-Footnote-1743147
-Node: Id Program743257
-Node: Split Program746937
-Ref: Split Program-Footnote-1750395
-Node: Tee Program750524
-Node: Uniq Program753314
-Node: Wc Program760935
-Ref: Wc Program-Footnote-1765190
-Node: Miscellaneous Programs765284
-Node: Dupword Program766497
-Node: Alarm Program768527
-Node: Translate Program773382
-Ref: Translate Program-Footnote-1777947
-Node: Labels Program778217
-Ref: Labels Program-Footnote-1781568
-Node: Word Sorting781652
-Node: History Sorting785724
-Node: Extract Program787949
-Node: Simple Sed796003
-Node: Igawk Program799077
-Ref: Igawk Program-Footnote-1813408
-Ref: Igawk Program-Footnote-2813610
-Ref: Igawk Program-Footnote-3813732
-Node: Anagram Program813847
-Node: Signature Program816909
-Node: Programs Summary818156
-Node: Programs Exercises819370
-Ref: Programs Exercises-Footnote-1823499
-Node: Advanced Features823590
-Node: Nondecimal Data825580
-Node: Array Sorting827171
-Node: Controlling Array Traversal827871
-Ref: Controlling Array Traversal-Footnote-1836239
-Node: Array Sorting Functions836357
-Ref: Array Sorting Functions-Footnote-1841448
-Node: Two-way I/O841644
-Ref: Two-way I/O-Footnote-1849365
-Ref: Two-way I/O-Footnote-2849552
-Node: TCP/IP Networking849634
-Node: Profiling852752
-Node: Advanced Features Summary861767
-Node: Internationalization863611
-Node: I18N and L10N865091
-Node: Explaining gettext865778
-Ref: Explaining gettext-Footnote-1871670
-Ref: Explaining gettext-Footnote-2871855
-Node: Programmer i18n872020
-Ref: Programmer i18n-Footnote-1876969
-Node: Translator i18n877018
-Node: String Extraction877812
-Ref: String Extraction-Footnote-1878944
-Node: Printf Ordering879030
-Ref: Printf Ordering-Footnote-1881816
-Node: I18N Portability881880
-Ref: I18N Portability-Footnote-1884336
-Node: I18N Example884399
-Ref: I18N Example-Footnote-1887674
-Ref: I18N Example-Footnote-2887747
-Node: Gawk I18N887856
-Node: I18N Summary888505
-Node: Debugger889846
-Node: Debugging890846
-Node: Debugging Concepts891287
-Node: Debugging Terms893096
-Node: Awk Debugging895671
-Ref: Awk Debugging-Footnote-1896616
-Node: Sample Debugging Session896748
-Node: Debugger Invocation897282
-Node: Finding The Bug898668
-Node: List of Debugger Commands905142
-Node: Breakpoint Control906475
-Node: Debugger Execution Control910169
-Node: Viewing And Changing Data913531
-Node: Execution Stack917072
-Node: Debugger Info918709
-Node: Miscellaneous Debugger Commands922780
-Node: Readline Support927842
-Node: Limitations928738
-Node: Debugging Summary931292
-Node: Namespaces932571
-Node: Global Namespace933682
-Node: Qualified Names935080
-Node: Default Namespace936079
-Node: Changing The Namespace936820
-Node: Naming Rules938434
-Node: Internal Name Management940282
-Node: Namespace Example941324
-Node: Namespace And Features943886
-Node: Namespace Summary945321
-Node: Arbitrary Precision Arithmetic946798
-Node: Computer Arithmetic948285
-Ref: table-numeric-ranges952051
-Ref: table-floating-point-ranges952544
-Ref: Computer Arithmetic-Footnote-1953202
-Node: Math Definitions953259
-Ref: table-ieee-formats956575
-Ref: Math Definitions-Footnote-1957178
-Node: MPFR features957283
-Node: FP Math Caution959001
-Ref: FP Math Caution-Footnote-1960073
-Node: Inexactness of computations960442
-Node: Inexact representation961402
-Node: Comparing FP Values962762
-Node: Errors accumulate964003
-Node: Getting Accuracy965436
-Node: Try To Round968146
-Node: Setting precision969045
-Ref: table-predefined-precision-strings969742
-Node: Setting the rounding mode971572
-Ref: table-gawk-rounding-modes971946
-Ref: Setting the rounding mode-Footnote-1975877
-Node: Arbitrary Precision Integers976056
-Ref: Arbitrary Precision Integers-Footnote-1979231
-Node: Checking for MPFR979380
-Node: POSIX Floating Point Problems980854
-Ref: POSIX Floating Point Problems-Footnote-1985139
-Node: Floating point summary985177
-Node: Dynamic Extensions987367
-Node: Extension Intro988920
-Node: Plugin License990186
-Node: Extension Mechanism Outline990983
-Ref: figure-load-extension991422
-Ref: figure-register-new-function992987
-Ref: figure-call-new-function994079
-Node: Extension API Description996141
-Node: Extension API Functions Introduction997783
-Ref: table-api-std-headers999619
-Node: General Data Types1003484
-Ref: General Data Types-Footnote-11011845
-Node: Memory Allocation Functions1012144
-Ref: Memory Allocation Functions-Footnote-11016354
-Node: Constructor Functions1016453
-Node: Registration Functions1020039
-Node: Extension Functions1020724
-Node: Exit Callback Functions1026046
-Node: Extension Version String1027296
-Node: Input Parsers1027959
-Node: Output Wrappers1040680
-Node: Two-way processors1045192
-Node: Printing Messages1047457
-Ref: Printing Messages-Footnote-11048628
-Node: Updating ERRNO1048781
-Node: Requesting Values1049520
-Ref: table-value-types-returned1050257
-Node: Accessing Parameters1051193
-Node: Symbol Table Access1052428
-Node: Symbol table by name1052940
-Ref: Symbol table by name-Footnote-11055964
-Node: Symbol table by cookie1056092
-Ref: Symbol table by cookie-Footnote-11060277
-Node: Cached values1060341
-Ref: Cached values-Footnote-11063877
-Node: Array Manipulation1064030
-Ref: Array Manipulation-Footnote-11065121
-Node: Array Data Types1065158
-Ref: Array Data Types-Footnote-11067816
-Node: Array Functions1067908
-Node: Flattening Arrays1072406
-Node: Creating Arrays1079382
-Node: Redirection API1084149
-Node: Extension API Variables1086982
-Node: Extension Versioning1087693
-Ref: gawk-api-version1088122
-Node: Extension GMP/MPFR Versioning1089853
-Node: Extension API Informational Variables1091481
-Node: Extension API Boilerplate1092554
-Node: Changes from API V11096528
-Node: Finding Extensions1098100
-Node: Extension Example1098659
-Node: Internal File Description1099457
-Node: Internal File Ops1103537
-Ref: Internal File Ops-Footnote-11114887
-Node: Using Internal File Ops1115027
-Ref: Using Internal File Ops-Footnote-11117410
-Node: Extension Samples1117684
-Node: Extension Sample File Functions1119213
-Node: Extension Sample Fnmatch1126862
-Node: Extension Sample Fork1128349
-Node: Extension Sample Inplace1129567
-Node: Extension Sample Ord1133192
-Node: Extension Sample Readdir1134028
-Ref: table-readdir-file-types1134917
-Node: Extension Sample Revout1135984
-Node: Extension Sample Rev2way1136573
-Node: Extension Sample Read write array1137313
-Node: Extension Sample Readfile1139255
-Node: Extension Sample Time1140350
-Node: Extension Sample API Tests1142102
-Node: gawkextlib1142594
-Node: Extension summary1145512
-Node: Extension Exercises1149214
-Node: Language History1150456
-Node: V7/SVR3.11152112
-Node: SVR41154264
-Node: POSIX1155698
-Node: BTL1157079
-Node: POSIX/GNU1157808
-Node: Feature History1163586
-Node: Common Extensions1179905
-Node: Ranges and Locales1181188
-Ref: Ranges and Locales-Footnote-11185804
-Ref: Ranges and Locales-Footnote-21185831
-Ref: Ranges and Locales-Footnote-31186066
-Node: Contributors1186289
-Node: History summary1192242
-Node: Installation1193622
-Node: Gawk Distribution1194566
-Node: Getting1195050
-Node: Extracting1196013
-Node: Distribution contents1197651
-Node: Unix Installation1204131
-Node: Quick Installation1204813
-Node: Shell Startup Files1207227
-Node: Additional Configuration Options1208316
-Node: Configuration Philosophy1210631
-Node: Non-Unix Installation1213000
-Node: PC Installation1213460
-Node: PC Binary Installation1214298
-Node: PC Compiling1214733
-Node: PC Using1215850
-Node: Cygwin1219403
-Node: MSYS1220627
-Node: VMS Installation1221229
-Node: VMS Compilation1222020
-Ref: VMS Compilation-Footnote-11223249
-Node: VMS Dynamic Extensions1223307
-Node: VMS Installation Details1224992
-Node: VMS Running1227245
-Node: VMS GNV1231524
-Node: VMS Old Gawk1232259
-Node: Bugs1232730
-Node: Bug address1233393
-Node: Usenet1236375
-Node: Maintainers1237379
-Node: Other Versions1238640
-Node: Installation summary1245728
-Node: Notes1246930
-Node: Compatibility Mode1247724
-Node: Additions1248506
-Node: Accessing The Source1249431
-Node: Adding Code1250868
-Node: New Ports1257087
-Node: Derived Files1261462
-Ref: Derived Files-Footnote-11267122
-Ref: Derived Files-Footnote-21267157
-Ref: Derived Files-Footnote-31267755
-Node: Future Extensions1267869
-Node: Implementation Limitations1268527
-Node: Extension Design1269710
-Node: Old Extension Problems1270854
-Ref: Old Extension Problems-Footnote-11272372
-Node: Extension New Mechanism Goals1272429
-Ref: Extension New Mechanism Goals-Footnote-11275793
-Node: Extension Other Design Decisions1275982
-Node: Extension Future Growth1278095
-Node: Notes summary1278701
-Node: Basic Concepts1279859
-Node: Basic High Level1280540
-Ref: figure-general-flow1280822
-Ref: figure-process-flow1281507
-Ref: Basic High Level-Footnote-11284808
-Node: Basic Data Typing1284993
-Node: Glossary1288321
-Node: Copying1320206
-Node: GNU Free Documentation License1357749
-Node: Index1382869
+Ref: Names-Footnote-157118
+Node: This Manual57265
+Ref: This Manual-Footnote-163904
+Node: Conventions64004
+Node: Manual History66373
+Ref: Manual History-Footnote-169370
+Ref: Manual History-Footnote-269411
+Node: How To Contribute69485
+Node: Acknowledgments70411
+Node: Getting Started75348
+Node: Running gawk77787
+Node: One-shot78977
+Node: Read Terminal80240
+Node: Long82233
+Node: Executable Scripts83746
+Ref: Executable Scripts-Footnote-186379
+Node: Comments86482
+Node: Quoting88966
+Node: DOS Quoting94492
+Node: Sample Data Files96548
+Node: Very Simple99143
+Node: Two Rules104045
+Node: More Complex105930
+Node: Statements/Lines108796
+Ref: Statements/Lines-Footnote-1113280
+Node: Other Features113545
+Node: When114481
+Ref: When-Footnote-1116235
+Node: Intro Summary116300
+Node: Invoking Gawk117184
+Node: Command Line118698
+Node: Options119496
+Ref: Options-Footnote-1137148
+Ref: Options-Footnote-2137379
+Node: Other Arguments137404
+Node: Naming Standard Input140711
+Node: Environment Variables141921
+Node: AWKPATH Variable142479
+Ref: AWKPATH Variable-Footnote-1145891
+Ref: AWKPATH Variable-Footnote-2145925
+Node: AWKLIBPATH Variable146296
+Ref: AWKLIBPATH Variable-Footnote-1147993
+Node: Other Environment Variables148368
+Node: Exit Status152189
+Node: Include Files152866
+Node: Loading Shared Libraries156556
+Node: Obsolete157984
+Node: Undocumented158676
+Node: Invoking Summary158973
+Node: Regexp161814
+Node: Regexp Usage163268
+Node: Escape Sequences165305
+Node: Regexp Operators171546
+Node: Regexp Operator Details172031
+Ref: Regexp Operator Details-Footnote-1178463
+Node: Interval Expressions178610
+Ref: Interval Expressions-Footnote-1180031
+Node: Bracket Expressions180129
+Ref: table-char-classes182605
+Node: Leftmost Longest185931
+Node: Computed Regexps187234
+Node: GNU Regexp Operators190661
+Node: Case-sensitivity194340
+Ref: Case-sensitivity-Footnote-1197206
+Ref: Case-sensitivity-Footnote-2197441
+Node: Regexp Summary197549
+Node: Reading Files199015
+Node: Records201284
+Node: awk split records202359
+Node: gawk split records207634
+Ref: gawk split records-Footnote-1212367
+Node: Fields212404
+Node: Nonconstant Fields215145
+Ref: Nonconstant Fields-Footnote-1217381
+Node: Changing Fields217585
+Node: Field Separators223616
+Node: Default Field Splitting226314
+Node: Regexp Field Splitting227432
+Node: Single Character Fields230785
+Node: Command Line Field Separator231845
+Node: Full Line Fields235063
+Ref: Full Line Fields-Footnote-1236585
+Ref: Full Line Fields-Footnote-2236631
+Node: Field Splitting Summary236732
+Node: Constant Size238806
+Node: Fixed width data239538
+Node: Skipping intervening243005
+Node: Allowing trailing data243803
+Node: Fields with fixed data244840
+Node: Splitting By Content246358
+Ref: Splitting By Content-Footnote-1250008
+Node: Testing field creation250171
+Node: Multiple Line251796
+Node: Getline258073
+Node: Plain Getline260542
+Node: Getline/Variable263115
+Node: Getline/File264266
+Node: Getline/Variable/File265654
+Ref: Getline/Variable/File-Footnote-1267259
+Node: Getline/Pipe267347
+Node: Getline/Variable/Pipe270051
+Node: Getline/Coprocess271186
+Node: Getline/Variable/Coprocess272453
+Node: Getline Notes273195
+Node: Getline Summary275992
+Ref: table-getline-variants276416
+Node: Read Timeout277164
+Ref: Read Timeout-Footnote-1281070
+Node: Retrying Input281128
+Node: Command-line directories282327
+Node: Input Summary283233
+Node: Input Exercises286405
+Node: Printing286839
+Node: Print288673
+Node: Print Examples290130
+Node: Output Separators292910
+Node: OFMT294927
+Node: Printf296283
+Node: Basic Printf297068
+Node: Control Letters298642
+Node: Format Modifiers303806
+Node: Printf Examples309821
+Node: Redirection312307
+Node: Special FD319148
+Ref: Special FD-Footnote-1322316
+Node: Special Files322390
+Node: Other Inherited Files323007
+Node: Special Network324008
+Node: Special Caveats324868
+Node: Close Files And Pipes325817
+Ref: table-close-pipe-return-values332724
+Ref: Close Files And Pipes-Footnote-1333537
+Ref: Close Files And Pipes-Footnote-2333685
+Node: Nonfatal333837
+Node: Output Summary336175
+Node: Output Exercises337397
+Node: Expressions338076
+Node: Values339264
+Node: Constants339942
+Node: Scalar Constants340633
+Ref: Scalar Constants-Footnote-1343157
+Node: Nondecimal-numbers343407
+Node: Regexp Constants346408
+Node: Using Constant Regexps346934
+Node: Standard Regexp Constants347556
+Node: Strong Regexp Constants350744
+Node: Variables353702
+Node: Using Variables354359
+Node: Assignment Options356269
+Node: Conversion358740
+Node: Strings And Numbers359264
+Ref: Strings And Numbers-Footnote-1362327
+Node: Locale influences conversions362436
+Ref: table-locale-affects365194
+Node: All Operators365812
+Node: Arithmetic Ops366441
+Node: Concatenation368947
+Ref: Concatenation-Footnote-1371794
+Node: Assignment Ops371901
+Ref: table-assign-ops376892
+Node: Increment Ops378205
+Node: Truth Values and Conditions381665
+Node: Truth Values382739
+Node: Typing and Comparison383787
+Node: Variable Typing384607
+Ref: Variable Typing-Footnote-1391070
+Ref: Variable Typing-Footnote-2391142
+Node: Comparison Operators391219
+Ref: table-relational-ops391638
+Node: POSIX String Comparison395133
+Ref: POSIX String Comparison-Footnote-1396828
+Ref: POSIX String Comparison-Footnote-2396967
+Node: Boolean Ops397051
+Ref: Boolean Ops-Footnote-1401533
+Node: Conditional Exp401625
+Node: Function Calls403361
+Node: Precedence407238
+Node: Locales410897
+Node: Expressions Summary412529
+Node: Patterns and Actions415102
+Node: Pattern Overview416222
+Node: Regexp Patterns417899
+Node: Expression Patterns418441
+Node: Ranges422222
+Node: BEGIN/END425330
+Node: Using BEGIN/END426091
+Ref: Using BEGIN/END-Footnote-1428827
+Node: I/O And BEGIN/END428933
+Node: BEGINFILE/ENDFILE431247
+Node: Empty434160
+Node: Using Shell Variables434477
+Node: Action Overview436751
+Node: Statements439076
+Node: If Statement440924
+Node: While Statement442419
+Node: Do Statement444447
+Node: For Statement445595
+Node: Switch Statement448766
+Node: Break Statement451152
+Node: Continue Statement453244
+Node: Next Statement455071
+Node: Nextfile Statement457454
+Node: Exit Statement460106
+Node: Built-in Variables462509
+Node: User-modified463642
+Node: Auto-set471409
+Ref: Auto-set-Footnote-1488216
+Ref: Auto-set-Footnote-2488422
+Node: ARGC and ARGV488478
+Node: Pattern Action Summary492691
+Node: Arrays495121
+Node: Array Basics496450
+Node: Array Intro497294
+Ref: figure-array-elements499269
+Ref: Array Intro-Footnote-1501973
+Node: Reference to Elements502101
+Node: Assigning Elements504565
+Node: Array Example505056
+Node: Scanning an Array506815
+Node: Controlling Scanning509837
+Ref: Controlling Scanning-Footnote-1516293
+Node: Numeric Array Subscripts516609
+Node: Uninitialized Subscripts518793
+Node: Delete520412
+Ref: Delete-Footnote-1523164
+Node: Multidimensional523221
+Node: Multiscanning526316
+Node: Arrays of Arrays527907
+Node: Arrays Summary532675
+Node: Functions534768
+Node: Built-in535806
+Node: Calling Built-in536887
+Node: Numeric Functions538883
+Ref: Numeric Functions-Footnote-1542911
+Ref: Numeric Functions-Footnote-2543559
+Ref: Numeric Functions-Footnote-3543607
+Node: String Functions543879
+Ref: String Functions-Footnote-1568063
+Ref: String Functions-Footnote-2568191
+Ref: String Functions-Footnote-3568439
+Node: Gory Details568526
+Ref: table-sub-escapes570317
+Ref: table-sub-proposed571836
+Ref: table-posix-sub573199
+Ref: table-gensub-escapes574740
+Ref: Gory Details-Footnote-1575563
+Node: I/O Functions575717
+Ref: table-system-return-values582185
+Ref: I/O Functions-Footnote-1584265
+Ref: I/O Functions-Footnote-2584413
+Node: Time Functions584533
+Ref: Time Functions-Footnote-1595204
+Ref: Time Functions-Footnote-2595272
+Ref: Time Functions-Footnote-3595430
+Ref: Time Functions-Footnote-4595541
+Ref: Time Functions-Footnote-5595653
+Ref: Time Functions-Footnote-6595880
+Node: Bitwise Functions596146
+Ref: table-bitwise-ops596740
+Ref: Bitwise Functions-Footnote-1602803
+Ref: Bitwise Functions-Footnote-2602976
+Node: Type Functions603167
+Node: I18N Functions606030
+Node: User-defined607681
+Node: Definition Syntax608493
+Ref: Definition Syntax-Footnote-1614180
+Node: Function Example614251
+Ref: Function Example-Footnote-1617173
+Node: Function Calling617195
+Node: Calling A Function617783
+Node: Variable Scope618741
+Node: Pass By Value/Reference621735
+Node: Function Caveats624379
+Ref: Function Caveats-Footnote-1626426
+Node: Return Statement626546
+Node: Dynamic Typing629525
+Node: Indirect Calls630455
+Ref: Indirect Calls-Footnote-1640707
+Node: Functions Summary640835
+Node: Library Functions643540
+Ref: Library Functions-Footnote-1647147
+Ref: Library Functions-Footnote-2647290
+Node: Library Names647461
+Ref: Library Names-Footnote-1651128
+Ref: Library Names-Footnote-2651351
+Node: General Functions651437
+Node: Strtonum Function652540
+Node: Assert Function655562
+Node: Round Function658888
+Node: Cliff Random Function660428
+Node: Ordinal Functions661444
+Ref: Ordinal Functions-Footnote-1664507
+Ref: Ordinal Functions-Footnote-2664759
+Node: Join Function664969
+Ref: Join Function-Footnote-1666739
+Node: Getlocaltime Function666939
+Node: Readfile Function670681
+Node: Shell Quoting672658
+Node: Data File Management674059
+Node: Filetrans Function674691
+Node: Rewind Function678787
+Node: File Checking680696
+Ref: File Checking-Footnote-1682030
+Node: Empty Files682231
+Node: Ignoring Assigns684210
+Node: Getopt Function685760
+Ref: Getopt Function-Footnote-1700974
+Node: Passwd Functions701174
+Ref: Passwd Functions-Footnote-1710013
+Node: Group Functions710101
+Ref: Group Functions-Footnote-1717999
+Node: Walking Arrays718206
+Node: Library Functions Summary721214
+Node: Library Exercises722620
+Node: Sample Programs723085
+Node: Running Examples723855
+Node: Clones724583
+Node: Cut Program725807
+Node: Egrep Program735736
+Ref: Egrep Program-Footnote-1743248
+Node: Id Program743358
+Node: Split Program747038
+Ref: Split Program-Footnote-1750496
+Node: Tee Program750625
+Node: Uniq Program753415
+Node: Wc Program761036
+Ref: Wc Program-Footnote-1765291
+Node: Miscellaneous Programs765385
+Node: Dupword Program766598
+Node: Alarm Program768628
+Node: Translate Program773483
+Ref: Translate Program-Footnote-1778048
+Node: Labels Program778318
+Ref: Labels Program-Footnote-1781669
+Node: Word Sorting781753
+Node: History Sorting785825
+Node: Extract Program788050
+Node: Simple Sed796104
+Node: Igawk Program799178
+Ref: Igawk Program-Footnote-1813509
+Ref: Igawk Program-Footnote-2813711
+Ref: Igawk Program-Footnote-3813833
+Node: Anagram Program813948
+Node: Signature Program817010
+Node: Programs Summary818257
+Node: Programs Exercises819471
+Ref: Programs Exercises-Footnote-1823600
+Node: Advanced Features823691
+Node: Nondecimal Data825681
+Node: Array Sorting827272
+Node: Controlling Array Traversal827972
+Ref: Controlling Array Traversal-Footnote-1836340
+Node: Array Sorting Functions836458
+Ref: Array Sorting Functions-Footnote-1841549
+Node: Two-way I/O841745
+Ref: Two-way I/O-Footnote-1849466
+Ref: Two-way I/O-Footnote-2849653
+Node: TCP/IP Networking849735
+Node: Profiling852853
+Node: Advanced Features Summary861868
+Node: Internationalization863712
+Node: I18N and L10N865192
+Node: Explaining gettext865879
+Ref: Explaining gettext-Footnote-1871771
+Ref: Explaining gettext-Footnote-2871956
+Node: Programmer i18n872121
+Ref: Programmer i18n-Footnote-1877070
+Node: Translator i18n877119
+Node: String Extraction877913
+Ref: String Extraction-Footnote-1879045
+Node: Printf Ordering879131
+Ref: Printf Ordering-Footnote-1881917
+Node: I18N Portability881981
+Ref: I18N Portability-Footnote-1884437
+Node: I18N Example884500
+Ref: I18N Example-Footnote-1887775
+Ref: I18N Example-Footnote-2887848
+Node: Gawk I18N887957
+Node: I18N Summary888606
+Node: Debugger889947
+Node: Debugging890947
+Node: Debugging Concepts891388
+Node: Debugging Terms893197
+Node: Awk Debugging895772
+Ref: Awk Debugging-Footnote-1896717
+Node: Sample Debugging Session896849
+Node: Debugger Invocation897383
+Node: Finding The Bug898769
+Node: List of Debugger Commands905243
+Node: Breakpoint Control906576
+Node: Debugger Execution Control910270
+Node: Viewing And Changing Data913632
+Node: Execution Stack917173
+Node: Debugger Info918810
+Node: Miscellaneous Debugger Commands922881
+Node: Readline Support927943
+Node: Limitations928839
+Node: Debugging Summary931393
+Node: Namespaces932672
+Node: Global Namespace933783
+Node: Qualified Names935181
+Node: Default Namespace936180
+Node: Changing The Namespace936921
+Node: Naming Rules938535
+Node: Internal Name Management940383
+Node: Namespace Example941425
+Node: Namespace And Features943987
+Node: Namespace Summary945422
+Node: Arbitrary Precision Arithmetic946899
+Node: Computer Arithmetic948386
+Ref: table-numeric-ranges952152
+Ref: table-floating-point-ranges952645
+Ref: Computer Arithmetic-Footnote-1953303
+Node: Math Definitions953360
+Ref: table-ieee-formats956676
+Ref: Math Definitions-Footnote-1957279
+Node: MPFR features957384
+Node: FP Math Caution959102
+Ref: FP Math Caution-Footnote-1960174
+Node: Inexactness of computations960543
+Node: Inexact representation961503
+Node: Comparing FP Values962863
+Node: Errors accumulate964104
+Node: Getting Accuracy965537
+Node: Try To Round968247
+Node: Setting precision969146
+Ref: table-predefined-precision-strings969843
+Node: Setting the rounding mode971673
+Ref: table-gawk-rounding-modes972047
+Ref: Setting the rounding mode-Footnote-1975978
+Node: Arbitrary Precision Integers976157
+Ref: Arbitrary Precision Integers-Footnote-1979332
+Node: Checking for MPFR979481
+Node: POSIX Floating Point Problems980955
+Ref: POSIX Floating Point Problems-Footnote-1985240
+Node: Floating point summary985278
+Node: Dynamic Extensions987468
+Node: Extension Intro989021
+Node: Plugin License990287
+Node: Extension Mechanism Outline991084
+Ref: figure-load-extension991523
+Ref: figure-register-new-function993088
+Ref: figure-call-new-function994180
+Node: Extension API Description996242
+Node: Extension API Functions Introduction997884
+Ref: table-api-std-headers999720
+Node: General Data Types1003585
+Ref: General Data Types-Footnote-11011946
+Node: Memory Allocation Functions1012245
+Ref: Memory Allocation Functions-Footnote-11016455
+Node: Constructor Functions1016554
+Node: Registration Functions1020140
+Node: Extension Functions1020825
+Node: Exit Callback Functions1026147
+Node: Extension Version String1027397
+Node: Input Parsers1028060
+Node: Output Wrappers1040781
+Node: Two-way processors1045293
+Node: Printing Messages1047558
+Ref: Printing Messages-Footnote-11048729
+Node: Updating ERRNO1048882
+Node: Requesting Values1049621
+Ref: table-value-types-returned1050358
+Node: Accessing Parameters1051294
+Node: Symbol Table Access1052529
+Node: Symbol table by name1053041
+Ref: Symbol table by name-Footnote-11056065
+Node: Symbol table by cookie1056193
+Ref: Symbol table by cookie-Footnote-11060378
+Node: Cached values1060442
+Ref: Cached values-Footnote-11063978
+Node: Array Manipulation1064131
+Ref: Array Manipulation-Footnote-11065222
+Node: Array Data Types1065259
+Ref: Array Data Types-Footnote-11067917
+Node: Array Functions1068009
+Node: Flattening Arrays1072507
+Node: Creating Arrays1079483
+Node: Redirection API1084250
+Node: Extension API Variables1087083
+Node: Extension Versioning1087794
+Ref: gawk-api-version1088223
+Node: Extension GMP/MPFR Versioning1089954
+Node: Extension API Informational Variables1091582
+Node: Extension API Boilerplate1092655
+Node: Changes from API V11096629
+Node: Finding Extensions1098201
+Node: Extension Example1098760
+Node: Internal File Description1099558
+Node: Internal File Ops1103638
+Ref: Internal File Ops-Footnote-11114988
+Node: Using Internal File Ops1115128
+Ref: Using Internal File Ops-Footnote-11117511
+Node: Extension Samples1117785
+Node: Extension Sample File Functions1119314
+Node: Extension Sample Fnmatch1126963
+Node: Extension Sample Fork1128450
+Node: Extension Sample Inplace1129668
+Node: Extension Sample Ord1133293
+Node: Extension Sample Readdir1134129
+Ref: table-readdir-file-types1135018
+Node: Extension Sample Revout1136085
+Node: Extension Sample Rev2way1136674
+Node: Extension Sample Read write array1137414
+Node: Extension Sample Readfile1139356
+Node: Extension Sample Time1140451
+Node: Extension Sample API Tests1142203
+Node: gawkextlib1142695
+Node: Extension summary1145613
+Node: Extension Exercises1149315
+Node: Language History1150557
+Node: V7/SVR3.11152213
+Node: SVR41154365
+Node: POSIX1155799
+Node: BTL1157180
+Node: POSIX/GNU1157909
+Node: Feature History1163687
+Node: Common Extensions1180006
+Node: Ranges and Locales1181289
+Ref: Ranges and Locales-Footnote-11185905
+Ref: Ranges and Locales-Footnote-21185932
+Ref: Ranges and Locales-Footnote-31186167
+Node: Contributors1186390
+Node: History summary1192387
+Node: Installation1193767
+Node: Gawk Distribution1194711
+Node: Getting1195195
+Node: Extracting1196158
+Node: Distribution contents1197796
+Node: Unix Installation1204276
+Node: Quick Installation1204958
+Node: Shell Startup Files1207372
+Node: Additional Configuration Options1208461
+Node: Configuration Philosophy1210776
+Node: Non-Unix Installation1213145
+Node: PC Installation1213605
+Node: PC Binary Installation1214443
+Node: PC Compiling1214878
+Node: PC Using1215995
+Node: Cygwin1219548
+Node: MSYS1220772
+Node: VMS Installation1221374
+Node: VMS Compilation1222165
+Ref: VMS Compilation-Footnote-11223394
+Node: VMS Dynamic Extensions1223452
+Node: VMS Installation Details1225137
+Node: VMS Running1227390
+Node: VMS GNV1231669
+Node: VMS Old Gawk1232404
+Node: Bugs1232875
+Node: Bug address1233538
+Node: Usenet1236520
+Node: Maintainers1237524
+Node: Other Versions1238709
+Node: Installation summary1245797
+Node: Notes1247006
+Node: Compatibility Mode1247800
+Node: Additions1248582
+Node: Accessing The Source1249507
+Node: Adding Code1250944
+Node: New Ports1257163
+Node: Derived Files1261538
+Ref: Derived Files-Footnote-11267198
+Ref: Derived Files-Footnote-21267233
+Ref: Derived Files-Footnote-31267831
+Node: Future Extensions1267945
+Node: Implementation Limitations1268603
+Node: Extension Design1269786
+Node: Old Extension Problems1270930
+Ref: Old Extension Problems-Footnote-11272448
+Node: Extension New Mechanism Goals1272505
+Ref: Extension New Mechanism Goals-Footnote-11275869
+Node: Extension Other Design Decisions1276058
+Node: Extension Future Growth1278171
+Node: Notes summary1278777
+Node: Basic Concepts1279935
+Node: Basic High Level1280616
+Ref: figure-general-flow1280898
+Ref: figure-process-flow1281583
+Ref: Basic High Level-Footnote-11284884
+Node: Basic Data Typing1285069
+Node: Glossary1288397
+Node: Copying1320282
+Node: GNU Free Documentation License1357825
+Node: Index1382945
End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 0696712..4dbefc9 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -1541,7 +1541,7 @@ Solaris systems still use an old @command{awk} for the
default @command{awk} utility. A more modern @command{awk} lives in
@file{/usr/xpg6/bin} on these systems.} If your system's standard
@command{awk} is the old one, you will see something like this
-if you try the test program:
+if you try the following test program:
@example
@group
@@ -1863,7 +1863,7 @@ This @value{SECTION} briefly documents the typographical
conventions used in Tex
@end ifinfo
Examples you would type at the command line are preceded by the common
-shell primary and secondary prompts, @samp{$} and @samp{>}.
+shell primary and secondary prompts, @samp{$} and @samp{>}, respectively.
Input that you type is shown @kbd{like this}.
@c 8/2014: @print{} is stripped from the texi to make docbook.
@ifclear FOR_PRINT
@@ -2223,7 +2223,6 @@ significant editorial help for this @value{DOCUMENT} for
the
@cindex Kahrs, J@"urgen
@cindex Kasal, Stepan
@cindex Malmberg, John
-@cindex Pitts, Dave
@cindex Ramey, Chet
@cindex Rankin, Pat
@cindex Schorr, Andrew
@@ -2244,7 +2243,6 @@ Michal Jaegermann,
J@"urgen Kahrs,
Stepan Kasal,
John Malmberg,
-Dave Pitts,
Chet Ramey,
Pat Rankin,
Andrew Schorr,
@@ -2270,9 +2268,11 @@ Thanks to Michael Brennan for the Forewords.
@cindex Duman, Patrice
@cindex Berry, Karl
+@cindex Smith, Gavin
Thanks to Patrice Dumas for the new @command{makeinfo} program.
-Thanks to Karl Berry, who continues to work to keep
-the Texinfo markup language sane.
+Thanks to Karl Berry for his past work on Texinfo, and
+to Gavin Smith, who continues to work to improve
+the Texinfo markup language.
@cindex Kernighan, Brian
@cindex Brennan, Michael
@@ -2289,7 +2289,7 @@ or its documentation without his help.
Brian is in a class by himself as a programmer and technical
author. I have to thank him (yet again) for his ongoing friendship
-and for being a role model to me for close to 30 years!
+and for being a role model to me for over 30 years!
Having him as a reviewer is an exciting privilege. It has also
been extremely humbling@enddots{}
@@ -2311,7 +2311,7 @@ take advantage of those opportunities.
Arnold Robbins @*
Nof Ayalon @*
Israel @*
-February 2015
+March, 2020
@end ifnotdocbook
@ifnotinfo
@@ -2646,15 +2646,11 @@ typed @samp{awk -f advice}:
@example
$ @kbd{chmod +x advice}
-$ @kbd{advice}
+$ @kbd{./advice}
@print{} Don't Panic!
@end example
@noindent
-(We assume you have the current directory in your shell's search
-path variable [typically @code{$PATH}]. If not, you may need
-to type @samp{./advice} at the shell.)
-
Self-contained @command{awk} scripts are useful when you want to write a
program that users can invoke without their having to know that the program is
written in @command{awk}.
@@ -2682,7 +2678,7 @@ interpreter with the given argument and the full argument
list of the
executed program. The first argument in the list is the full @value{FN}
of the @command{awk} program. The rest of the argument list contains
either options to @command{awk}, or @value{DF}s, or both. (Note that on
-many systems @command{awk} may be found in @file{/usr/bin} instead of
+many systems @command{awk} is found in @file{/usr/bin} instead of
in @file{/bin}.)
Some systems limit the length of the interpreter name to 32 characters.
@@ -2733,7 +2729,7 @@ interpreter with the given argument and the full argument
list of the
executed program. The first argument in the list is the full @value{FN}
of the @command{awk} program. The rest of the argument list contains
either options to @command{awk}, or @value{DF}s, or both. (Note that on
-many systems @command{awk} may be found in @file{/usr/bin} instead of
+many systems @command{awk} is found in @file{/usr/bin} instead of
in @file{/bin}.)
Some systems limit the length of the interpreter name to 32 characters.
@@ -3007,7 +3003,7 @@ $ @kbd{awk 'BEGIN @{ print "Here is a double quote <\42>"
@}'}
@noindent
This works nicely, but you should comment clearly what the
-escapes mean.
+escape sequences mean.
A fourth option is to use command-line variable assignment, like this:
@@ -3519,7 +3515,7 @@ If you would like to split a single statement into two
lines at a point
where a newline would terminate it, you can @dfn{continue} it by ending the
first line with a backslash character (@samp{\}). The backslash must be
the final character on the line in order to be recognized as a continuation
-character. A backslash is allowed anywhere in the statement, even
+character. A backslash followed by a newline is allowed anywhere in the
statement, even
in the middle of a string or regular expression. For example:
@example
@@ -3534,7 +3530,9 @@ We have generally not used backslash continuation in our
sample programs.
length of a line, so backslash continuation is never strictly necessary;
it just makes programs more readable. For this same reason, as well as
for clarity, we have kept most statements short in the programs
-presented throughout the @value{DOCUMENT}. Backslash continuation is
+presented throughout the @value{DOCUMENT}.
+
+Backslash continuation is
most useful when your @command{awk} program is in a separate source file
instead of entered from the command line. You should also note that
many @command{awk} implementations are more particular about where you
@@ -3850,7 +3848,8 @@ program consists of the concatenation of the contents of
each specified @var{source-file}.
Files named with @option{-f} are treated as if they had @samp{@@namespace
"awk"}
-at their beginning. @xref{Changing The Namespace}, for more information.
+at their beginning. @xref{Changing The Namespace}, for more information
+on this advanced feature.
@item -v @var{var}=@var{val}
@itemx --assign @var{var}=@var{val}
@@ -4119,15 +4118,22 @@ other @command{awk} implementations.
No space is allowed between the @option{-L} and @var{value}, if
@var{value} is supplied.
Some warnings are issued when @command{gawk} first reads your program. Others
-are issued at runtime, as your program executes.
-With an optional argument of @samp{fatal},
-lint warnings become fatal errors.
+are issued at runtime, as your program executes. The optional
+argument may be one of the following:
+
+@table @code
+@item fatal
+Cause lint warnings become fatal errors.
This may be drastic, but its use will certainly encourage the
development of cleaner @command{awk} programs.
-With an optional argument of @samp{invalid}, only warnings about things
+
+@item invalid
+Only issue warnings about things
that are actually invalid are issued. (This is not fully implemented yet.)
-With an optional argument of @samp{no-ext}, warnings about @command{gawk}
-extensions are disabled.
+
+@item no-ext
+Disable warnings about @command{gawk} extensions.
+@end table
Some warnings are only printed once, even if the dubious constructs they
warn about occur multiple times in your @command{awk} program. Thus,
@@ -4293,7 +4299,7 @@ Also, disallow adding filenames to @code{ARGV} that were
not there when @command{gawk} started running.
This is particularly useful when you want to run @command{awk} scripts
from questionable sources and need to make sure the scripts
-can't access your system (other than the specified input @value{DF}).
+can't access your system (other than the specified input @value{DF}s).
@item @option{-t}
@itemx @option{--lint-old}
@@ -4357,7 +4363,7 @@ source of data.)
Because it is clumsy using the standard @command{awk} mechanisms to mix
source file and command-line @command{awk} programs, @command{gawk}
provides the @option{-e} option. This does not require you to
-preempt the standard input for your source code; it allows you to easily
+preempt the standard input for your source code, and it allows you to easily
mix command-line and library source code (@pxref{AWKPATH Variable}).
As with @option{-f}, the @option{-e} and @option{-i}
options may also be used multiple times on the command line.
@@ -4437,13 +4443,16 @@ awk -f program.awk file1 ./count=1 file2
@cindex @code{ARGIND} variable @subentry command-line arguments
@cindex @code{ARGV} array, indexing into
@cindex @code{ARGC}/@code{ARGV} variables @subentry command-line arguments
+@cindex @command{gawk} @subentry @code{PROCINFO} array in
All the command-line arguments are made available to your @command{awk}
program in the
@code{ARGV} array (@pxref{Built-in Variables}). Command-line options
and the program text (if present) are omitted from @code{ARGV}.
All other arguments, including variable assignments, are
included. As each element of @code{ARGV} is processed, @command{gawk}
sets @code{ARGIND} to the index in @code{ARGV} of the
-current element.
+current element. (@command{gawk} makes the full command line,
+including program text and options, available in @code{PROCINFO["argv"]};
+@pxref{Auto-set}.)
@c FIXME: One day, move the ARGC and ARGV node closer to here.
Changing @code{ARGC} and @code{ARGV} in your @command{awk} program lets
@@ -40419,6 +40428,10 @@ distribution.
Juan Manuel Guerrero took over maintenance of the DJGPP port.
@item
+@cindex Jannick
+``Jannick'' provided support for MSYS2.
+
+@item
@cindex Robbins @subentry Arnold
Arnold Robbins
has been working on @command{gawk} since 1988, at first
@@ -41799,7 +41812,6 @@ The people maintaining the various @command{gawk} ports
are:
@c put the index entries outside the table, for docbook
@cindex Buening, Andreas
@cindex Malmberg, John
-@cindex Pitts, Dave
@cindex G., Daniel Richard
@cindex Robbins @subentry Arnold
@cindex Zaretskii, Eli
@@ -41818,7 +41830,6 @@ The people maintaining the various @command{gawk} ports
are:
@item VMS @tab John Malmberg, @EMAIL{wb8tyw@@qsl.net,wb8tyw at qsl.net}
@item z/OS (OS/390) @tab Daniel Richard G.@: @EMAIL{skunk@@iSKUNK.ORG,skunk at
iSKUNK.ORG}
-@item @tab Dave Pitts (Maintainer Emeritus), @EMAIL{dpitts@@cozx.com,dpitts
at cozx dot com}
@end multitable
If your bug is also reproducible under Unix, send a copy of your
@@ -42086,7 +42097,7 @@ the file.
@item
@command{gawk} may be built on non-POSIX systems as well. The currently
supported systems are MS-Windows using
-MSYS, DJGPP, MinGW, and Cygwin,
+MSYS, MSYS2, DJGPP, MinGW, and Cygwin,
@c OS/2,
and both Vax/VMS and OpenVMS.
Instructions for each system are included in this @value{APPENDIX}.
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 0d54823..9b7eb7e 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -1508,7 +1508,7 @@ Solaris systems still use an old @command{awk} for the
default @command{awk} utility. A more modern @command{awk} lives in
@file{/usr/xpg6/bin} on these systems.} If your system's standard
@command{awk} is the old one, you will see something like this
-if you try the test program:
+if you try the following test program:
@example
@group
@@ -1830,7 +1830,7 @@ This @value{SECTION} briefly documents the typographical
conventions used in Tex
@end ifinfo
Examples you would type at the command line are preceded by the common
-shell primary and secondary prompts, @samp{$} and @samp{>}.
+shell primary and secondary prompts, @samp{$} and @samp{>}, respectively.
Input that you type is shown @kbd{like this}.
@c 8/2014: @print{} is stripped from the texi to make docbook.
@ifclear FOR_PRINT
@@ -2190,7 +2190,6 @@ significant editorial help for this @value{DOCUMENT} for
the
@cindex Kahrs, J@"urgen
@cindex Kasal, Stepan
@cindex Malmberg, John
-@cindex Pitts, Dave
@cindex Ramey, Chet
@cindex Rankin, Pat
@cindex Schorr, Andrew
@@ -2211,7 +2210,6 @@ Michal Jaegermann,
J@"urgen Kahrs,
Stepan Kasal,
John Malmberg,
-Dave Pitts,
Chet Ramey,
Pat Rankin,
Andrew Schorr,
@@ -2237,9 +2235,11 @@ Thanks to Michael Brennan for the Forewords.
@cindex Duman, Patrice
@cindex Berry, Karl
+@cindex Smith, Gavin
Thanks to Patrice Dumas for the new @command{makeinfo} program.
-Thanks to Karl Berry, who continues to work to keep
-the Texinfo markup language sane.
+Thanks to Karl Berry for his past work on Texinfo, and
+to Gavin Smith, who continues to work to improve
+the Texinfo markup language.
@cindex Kernighan, Brian
@cindex Brennan, Michael
@@ -2256,7 +2256,7 @@ or its documentation without his help.
Brian is in a class by himself as a programmer and technical
author. I have to thank him (yet again) for his ongoing friendship
-and for being a role model to me for close to 30 years!
+and for being a role model to me for over 30 years!
Having him as a reviewer is an exciting privilege. It has also
been extremely humbling@enddots{}
@@ -2278,7 +2278,7 @@ take advantage of those opportunities.
Arnold Robbins @*
Nof Ayalon @*
Israel @*
-February 2015
+March, 2020
@end ifnotdocbook
@ifnotinfo
@@ -2613,15 +2613,11 @@ typed @samp{awk -f advice}:
@example
$ @kbd{chmod +x advice}
-$ @kbd{advice}
+$ @kbd{./advice}
@print{} Don't Panic!
@end example
@noindent
-(We assume you have the current directory in your shell's search
-path variable [typically @code{$PATH}]. If not, you may need
-to type @samp{./advice} at the shell.)
-
Self-contained @command{awk} scripts are useful when you want to write a
program that users can invoke without their having to know that the program is
written in @command{awk}.
@@ -2644,7 +2640,7 @@ interpreter with the given argument and the full argument
list of the
executed program. The first argument in the list is the full @value{FN}
of the @command{awk} program. The rest of the argument list contains
either options to @command{awk}, or @value{DF}s, or both. (Note that on
-many systems @command{awk} may be found in @file{/usr/bin} instead of
+many systems @command{awk} is found in @file{/usr/bin} instead of
in @file{/bin}.)
Some systems limit the length of the interpreter name to 32 characters.
@@ -2917,7 +2913,7 @@ $ @kbd{awk 'BEGIN @{ print "Here is a double quote <\42>"
@}'}
@noindent
This works nicely, but you should comment clearly what the
-escapes mean.
+escape sequences mean.
A fourth option is to use command-line variable assignment, like this:
@@ -3429,7 +3425,7 @@ If you would like to split a single statement into two
lines at a point
where a newline would terminate it, you can @dfn{continue} it by ending the
first line with a backslash character (@samp{\}). The backslash must be
the final character on the line in order to be recognized as a continuation
-character. A backslash is allowed anywhere in the statement, even
+character. A backslash followed by a newline is allowed anywhere in the
statement, even
in the middle of a string or regular expression. For example:
@example
@@ -3444,7 +3440,9 @@ We have generally not used backslash continuation in our
sample programs.
length of a line, so backslash continuation is never strictly necessary;
it just makes programs more readable. For this same reason, as well as
for clarity, we have kept most statements short in the programs
-presented throughout the @value{DOCUMENT}. Backslash continuation is
+presented throughout the @value{DOCUMENT}.
+
+Backslash continuation is
most useful when your @command{awk} program is in a separate source file
instead of entered from the command line. You should also note that
many @command{awk} implementations are more particular about where you
@@ -3760,7 +3758,8 @@ program consists of the concatenation of the contents of
each specified @var{source-file}.
Files named with @option{-f} are treated as if they had @samp{@@namespace
"awk"}
-at their beginning. @xref{Changing The Namespace}, for more information.
+at their beginning. @xref{Changing The Namespace}, for more information
+on this advanced feature.
@item -v @var{var}=@var{val}
@itemx --assign @var{var}=@var{val}
@@ -4029,15 +4028,22 @@ other @command{awk} implementations.
No space is allowed between the @option{-L} and @var{value}, if
@var{value} is supplied.
Some warnings are issued when @command{gawk} first reads your program. Others
-are issued at runtime, as your program executes.
-With an optional argument of @samp{fatal},
-lint warnings become fatal errors.
+are issued at runtime, as your program executes. The optional
+argument may be one of the following:
+
+@table @code
+@item fatal
+Cause lint warnings become fatal errors.
This may be drastic, but its use will certainly encourage the
development of cleaner @command{awk} programs.
-With an optional argument of @samp{invalid}, only warnings about things
+
+@item invalid
+Only issue warnings about things
that are actually invalid are issued. (This is not fully implemented yet.)
-With an optional argument of @samp{no-ext}, warnings about @command{gawk}
-extensions are disabled.
+
+@item no-ext
+Disable warnings about @command{gawk} extensions.
+@end table
Some warnings are only printed once, even if the dubious constructs they
warn about occur multiple times in your @command{awk} program. Thus,
@@ -4203,7 +4209,7 @@ Also, disallow adding filenames to @code{ARGV} that were
not there when @command{gawk} started running.
This is particularly useful when you want to run @command{awk} scripts
from questionable sources and need to make sure the scripts
-can't access your system (other than the specified input @value{DF}).
+can't access your system (other than the specified input @value{DF}s).
@item @option{-t}
@itemx @option{--lint-old}
@@ -4267,7 +4273,7 @@ source of data.)
Because it is clumsy using the standard @command{awk} mechanisms to mix
source file and command-line @command{awk} programs, @command{gawk}
provides the @option{-e} option. This does not require you to
-preempt the standard input for your source code; it allows you to easily
+preempt the standard input for your source code, and it allows you to easily
mix command-line and library source code (@pxref{AWKPATH Variable}).
As with @option{-f}, the @option{-e} and @option{-i}
options may also be used multiple times on the command line.
@@ -4347,13 +4353,16 @@ awk -f program.awk file1 ./count=1 file2
@cindex @code{ARGIND} variable @subentry command-line arguments
@cindex @code{ARGV} array, indexing into
@cindex @code{ARGC}/@code{ARGV} variables @subentry command-line arguments
+@cindex @command{gawk} @subentry @code{PROCINFO} array in
All the command-line arguments are made available to your @command{awk}
program in the
@code{ARGV} array (@pxref{Built-in Variables}). Command-line options
and the program text (if present) are omitted from @code{ARGV}.
All other arguments, including variable assignments, are
included. As each element of @code{ARGV} is processed, @command{gawk}
sets @code{ARGIND} to the index in @code{ARGV} of the
-current element.
+current element. (@command{gawk} makes the full command line,
+including program text and options, available in @code{PROCINFO["argv"]};
+@pxref{Auto-set}.)
@c FIXME: One day, move the ARGC and ARGV node closer to here.
Changing @code{ARGC} and @code{ARGV} in your @command{awk} program lets
@@ -39390,6 +39399,10 @@ distribution.
Juan Manuel Guerrero took over maintenance of the DJGPP port.
@item
+@cindex Jannick
+``Jannick'' provided support for MSYS2.
+
+@item
@cindex Robbins @subentry Arnold
Arnold Robbins
has been working on @command{gawk} since 1988, at first
@@ -40770,7 +40783,6 @@ The people maintaining the various @command{gawk} ports
are:
@c put the index entries outside the table, for docbook
@cindex Buening, Andreas
@cindex Malmberg, John
-@cindex Pitts, Dave
@cindex G., Daniel Richard
@cindex Robbins @subentry Arnold
@cindex Zaretskii, Eli
@@ -40789,7 +40801,6 @@ The people maintaining the various @command{gawk} ports
are:
@item VMS @tab John Malmberg, @EMAIL{wb8tyw@@qsl.net,wb8tyw at qsl.net}
@item z/OS (OS/390) @tab Daniel Richard G.@: @EMAIL{skunk@@iSKUNK.ORG,skunk at
iSKUNK.ORG}
-@item @tab Dave Pitts (Maintainer Emeritus), @EMAIL{dpitts@@cozx.com,dpitts
at cozx dot com}
@end multitable
If your bug is also reproducible under Unix, send a copy of your
@@ -41057,7 +41068,7 @@ the file.
@item
@command{gawk} may be built on non-POSIX systems as well. The currently
supported systems are MS-Windows using
-MSYS, DJGPP, MinGW, and Cygwin,
+MSYS, MSYS2, DJGPP, MinGW, and Cygwin,
@c OS/2,
and both Vax/VMS and OpenVMS.
Instructions for each system are included in this @value{APPENDIX}.
-----------------------------------------------------------------------
Summary of changes:
doc/ChangeLog | 4 +
doc/awkcard.in | 20 +-
doc/gawk.1 | 13 +-
doc/gawk.info | 1433 ++++++++++++++++++++++++++++---------------------------
doc/gawk.texi | 73 +--
doc/gawktexi.in | 71 +--
6 files changed, 826 insertions(+), 788 deletions(-)
hooks/post-receive
--
gawk
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] gawk branch, master, updated. gawk-4.1.0-3941-gea0baa3,
Arnold Robbins <=