aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--awklib/eg/lib/getopt.awk2
-rw-r--r--doc/ChangeLog6
-rw-r--r--doc/gawk.info1097
-rw-r--r--doc/gawk.texi58
-rw-r--r--doc/gawktexi.in58
5 files changed, 638 insertions, 583 deletions
diff --git a/awklib/eg/lib/getopt.awk b/awklib/eg/lib/getopt.awk
index 0b81aa09..4283a7e1 100644
--- a/awklib/eg/lib/getopt.awk
+++ b/awklib/eg/lib/getopt.awk
@@ -17,7 +17,7 @@
# <c> a character representing the current option
# Private Data:
-# _opti -- index in multi-flag option, e.g., -abc
+# _opti -- index in multiflag option, e.g., -abc
function getopt(argc, argv, options, thisopt, i)
{
if (length(options) == 0) # no options given
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 5cef4595..1dba7a7c 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,9 @@
+2013-10-25 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (Contributors): Update with more info.
+ (Distributtion contents): Ditto.
+ General: Remove all hyphens when used with "multi" prefix.
+
2013-10-22 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (Other Environment Variables): Document GAWK_MSG_SRC
diff --git a/doc/gawk.info b/doc/gawk.info
index 8fc3b2e9..e9965f69 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -196,7 +196,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
* Field Splitting Summary:: Some final points and a summary table.
* Constant Size:: Reading constant width data.
* Splitting By Content:: Defining Fields By Content
-* Multiple Line:: Reading multi-line records.
+* Multiple Line:: Reading multiline records.
* Getline:: Reading files under explicit program
control using the `getline'
function.
@@ -347,9 +347,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
`awk'.
* Uninitialized Subscripts:: Using Uninitialized variables as
subscripts.
-* Multi-dimensional:: Emulating multidimensional arrays in
+* Multidimensional:: Emulating multidimensional arrays in
`awk'.
-* Multi-scanning:: Scanning multidimensional arrays.
+* Multiscanning:: Scanning multidimensional arrays.
* Arrays of Arrays:: True multidimensional arrays.
* Built-in:: Summarizes the built-in functions.
* Calling Built-in:: How to call built-in functions.
@@ -1821,7 +1821,7 @@ information). Using this information, create your own `BBS-list' and
If you are using the stand-alone version of Info, see *note Extract
Program::, for an `awk' program that extracts these data files from
-`gawk.texi', the Texinfo source file for this Info file.
+`gawk.texi', the (generated) Texinfo source file for this Info file.

File: gawk.info, Node: Very Simple, Next: Two Rules, Prev: Sample Data Files, Up: Getting Started
@@ -3889,7 +3889,7 @@ have to be named on the `awk' command line (*note Getline::).
* Field Separators:: The field separator and how to change it.
* Constant Size:: Reading constant width data.
* Splitting By Content:: Defining Fields By Content
-* Multiple Line:: Reading multi-line records.
+* Multiple Line:: Reading multiline records.
* Getline:: Reading files under explicit program control
using the `getline' function.
* Read Timeout:: Reading input with a timeout.
@@ -9508,7 +9508,7 @@ specific to `gawk' are marked with a pound sign (`#').
`FS'
This is the input field separator (*note Field Separators::). The
- value is a single-character string or a multi-character regular
+ value is a single-character string or a multicharacter regular
expression that matches the separations between fields in an input
record. If the value is the null string (`""'), then each
character in the record becomes a separate field. (This behavior
@@ -9610,7 +9610,7 @@ specific to `gawk' are marked with a pound sign (`#').
This is the subscript separator. It has the default value of
`"\034"' and is used to separate the parts of the indices of a
multidimensional array. Thus, the expression `foo["A", "B"]'
- really accesses `foo["A\034B"]' (*note Multi-dimensional::).
+ really accesses `foo["A\034B"]' (*note Multidimensional::).
`TEXTDOMAIN #'
This variable is used for internationalization of programs at the
@@ -10101,7 +10101,7 @@ cannot have a variable and an array with the same name in the same
* Numeric Array Subscripts:: How to use numbers as subscripts in
`awk'.
* Uninitialized Subscripts:: Using Uninitialized variables as subscripts.
-* Multi-dimensional:: Emulating multidimensional arrays in
+* Multidimensional:: Emulating multidimensional arrays in
`awk'.
* Arrays of Arrays:: True multidimensional arrays.
@@ -10682,7 +10682,7 @@ knowledge of the actual rules since they can sometimes have a subtle
effect on your programs.

-File: gawk.info, Node: Uninitialized Subscripts, Next: Multi-dimensional, Prev: Numeric Array Subscripts, Up: Arrays
+File: gawk.info, Node: Uninitialized Subscripts, Next: Multidimensional, Prev: Numeric Array Subscripts, Up: Arrays
8.4 Using Uninitialized Variables as Subscripts
===============================================
@@ -10730,14 +10730,14 @@ string as a subscript if `--lint' is provided on the command line
(*note Options::).

-File: gawk.info, Node: Multi-dimensional, Next: Arrays of Arrays, Prev: Uninitialized Subscripts, Up: Arrays
+File: gawk.info, Node: Multidimensional, Next: Arrays of Arrays, Prev: Uninitialized Subscripts, Up: Arrays
8.5 Multidimensional Arrays
===========================
* Menu:
-* Multi-scanning:: Scanning multidimensional arrays.
+* Multiscanning:: Scanning multidimensional arrays.
A multidimensional array is an array in which an element is
identified by a sequence of indices instead of a single index. For
@@ -10816,7 +10816,7 @@ the program produces the following output:
3 2 1 6

-File: gawk.info, Node: Multi-scanning, Up: Multi-dimensional
+File: gawk.info, Node: Multiscanning, Up: Multidimensional
8.5.1 Scanning Multidimensional Arrays
--------------------------------------
@@ -10856,7 +10856,7 @@ The result is to set `separate[1]' to `"1"' and `separate[2]' to
recovered.

-File: gawk.info, Node: Arrays of Arrays, Prev: Multi-dimensional, Up: Arrays
+File: gawk.info, Node: Arrays of Arrays, Prev: Multidimensional, Up: Arrays
8.6 Arrays of Arrays
====================
@@ -14617,7 +14617,7 @@ characters (*note String Functions::).(1)
# <c> a character representing the current option
# Private Data:
- # _opti -- index in multi-flag option, e.g., -abc
+ # _opti -- index in multiflag option, e.g., -abc
The function starts out with comments presenting a list of the
global variables it uses, what the return values are, what they mean,
@@ -17198,11 +17198,11 @@ are simply removed. `extract.awk' uses the `join()' library function
(*note Join Function::).
The example programs in the online Texinfo source for `GAWK:
-Effective AWK Programming' (`gawk.texi') have all been bracketed inside
-`file' and `endfile' lines. The `gawk' distribution uses a copy of
-`extract.awk' to extract the sample programs and install many of them
-in a standard directory where `gawk' can find them. The Texinfo file
-looks something like this:
+Effective AWK Programming' (`gawktexi.in') have all been bracketed
+inside `file' and `endfile' lines. The `gawk' distribution uses a copy
+of `extract.awk' to extract the sample programs and install many of
+them in a standard directory where `gawk' can find them. The Texinfo
+file looks something like this:
...
This program has a @code{BEGIN} rule,
@@ -24323,7 +24323,7 @@ follows: The usage is:
The `fts()' function provides a hook to the C library `fts()'
routines for traversing file hierarchies. Instead of returning data
-about one file at a time in a stream, it fills in a multi-dimensional
+about one file at a time in a stream, it fills in a multidimensional
array with data about each file and directory encountered in the
requested hierarchies.
@@ -24418,7 +24418,7 @@ Otherwise it returns -1.
lack of a comparison function, since `gawk' already provides
powerful array sorting facilities. While an `fts_read()'-like
interface could have been provided, this felt less natural than
- simply creating a multi-dimensional array to represent the file
+ simply creating a multidimensional array to represent the file
hierarchy and its information.
See `test/fts.awk' in the `gawk' distribution for an example.
@@ -24956,7 +24956,7 @@ the changes, with cross-references to further details:
* Multiple `BEGIN' and `END' rules (*note BEGIN/END::).
- * Multidimensional arrays (*note Multi-dimensional::).
+ * Multidimensional arrays (*note Multidimensional::).

File: gawk.info, Node: SVR4, Next: POSIX, Prev: V7/SVR3.1, Up: Language History
@@ -25467,6 +25467,9 @@ Info file, in approximate chronological order:
- The modifications to convert `gawk' into a byte-code
interpreter, including the debugger.
+ - The addition of true multidimensional arrays. *note Arrays
+ of Arrays::.
+
- The additional modifications for support of arbitrary
precision arithmetic.
@@ -25477,6 +25480,9 @@ Info file, in approximate chronological order:
- Improved array internals for arrays indexed by integers.
+ - The improved array sorting features were driven by John
+ together with Pat Rankin.
+
* Efraim Yawitz contributed the original text for *note Debugger::.
* The development of the extension API first released with `gawk'
@@ -25665,11 +25671,18 @@ Various `.c', `.y', and `.h' files
The `troff' source for a manual page describing `gawk'. This is
distributed for the convenience of Unix users.
-`doc/gawk.texi'
+`doc/gawktexi.in'
+`doc/sidebar.awk'
The Texinfo source file for this Info file. It should be
- processed with TeX (via `texi2dvi' or `texi2pdf') to produce a
- printed document, and with `makeinfo' to produce an Info or HTML
- file.
+ processed by `doc/sidebar.awk' before processing with TeX It
+ should be processed with to produce a printed document, and with
+ `makeinfo' to produce an Info or HTML file. The `Makefile' takes
+ care of this processing and produces printable output via
+ `texi2dvi' or `texi2pdf'.
+
+`doc/gawk.texi'
+ The file produced after processing `gawktexi.in' with
+ `sidebar.awk'.
`doc/gawk.info'
The generated Info file for this Info file.
@@ -25699,6 +25712,7 @@ Various `.c', `.y', and `.h' files
`Makefile.in'
`aclocal.m4'
+`config.guess'
`configh.in'
`configure.ac'
`configure'
@@ -27181,7 +27195,7 @@ Some goals for the new API were:
fashion for C code.
- The ability to create arrays (including `gawk''s true
- multi-dimensional arrays).
+ multidimensional arrays).
Some additional important goals were:
@@ -29717,8 +29731,8 @@ Index
* arrays, IGNORECASE variable and: Array Intro. (line 92)
* arrays, indexing: Array Intro. (line 50)
* arrays, merging into strings: Join Function. (line 6)
-* arrays, multidimensional: Multi-dimensional. (line 10)
-* arrays, multidimensional, scanning: Multi-scanning. (line 11)
+* arrays, multidimensional: Multidimensional. (line 10)
+* arrays, multidimensional, scanning: Multiscanning. (line 11)
* arrays, names of: Arrays. (line 18)
* arrays, scanning: Scanning an Array. (line 6)
* arrays, sorting: Array Sorting Functions.
@@ -31669,7 +31683,7 @@ Index
* RLENGTH variable, match() function and: String Functions. (line 225)
* Robbins, Arnold <1>: Future Extensions. (line 6)
* Robbins, Arnold <2>: Bugs. (line 32)
-* Robbins, Arnold <3>: Contributors. (line 125)
+* Robbins, Arnold <3>: Contributors. (line 131)
* Robbins, Arnold <4>: Alarm Program. (line 6)
* Robbins, Arnold <5>: Passwd Functions. (line 90)
* Robbins, Arnold <6>: Getline/Pipe. (line 40)
@@ -31709,7 +31723,7 @@ Index
(line 68)
* sandbox mode: Options. (line 279)
* scalar values: Basic Data Typing. (line 13)
-* Schorr, Andrew <1>: Contributors. (line 121)
+* Schorr, Andrew <1>: Contributors. (line 127)
* Schorr, Andrew: Acknowledgments. (line 60)
* Schreiber, Bert: Acknowledgments. (line 38)
* Schreiber, Rita: Acknowledgments. (line 38)
@@ -31907,16 +31921,15 @@ Index
* sub() function, arguments of: String Functions. (line 464)
* sub() function, escape processing: Gory Details. (line 6)
* subscript separators: User-modified. (line 156)
-* subscripts in arrays, multidimensional: Multi-dimensional. (line 10)
-* subscripts in arrays, multidimensional, scanning: Multi-scanning.
+* subscripts in arrays, multidimensional: Multidimensional. (line 10)
+* subscripts in arrays, multidimensional, scanning: Multiscanning.
(line 11)
* subscripts in arrays, numbers as: Numeric Array Subscripts.
(line 6)
* subscripts in arrays, uninitialized variables as: Uninitialized Subscripts.
(line 6)
* SUBSEP variable: User-modified. (line 156)
-* SUBSEP variable, multidimensional arrays: Multi-dimensional.
- (line 16)
+* SUBSEP variable, multidimensional arrays: Multidimensional. (line 16)
* substr() function: String Functions. (line 483)
* Sumner, Andrew: Other Versions. (line 64)
* switch statement: Switch Statement. (line 6)
@@ -32141,7 +32154,7 @@ Index
* xgettext utility: String Extraction. (line 13)
* XOR bitwise operation: Bitwise Functions. (line 6)
* xor() function (gawk): Bitwise Functions. (line 55)
-* Yawitz, Efraim: Contributors. (line 119)
+* Yawitz, Efraim: Contributors. (line 125)
* Zaretskii, Eli <1>: Bugs. (line 70)
* Zaretskii, Eli <2>: Contributors. (line 56)
* Zaretskii, Eli: Acknowledgments. (line 60)
@@ -32176,457 +32189,457 @@ Index

Tag Table:
Node: Top1360
-Node: Foreword40461
-Node: Preface44806
-Ref: Preface-Footnote-147859
-Ref: Preface-Footnote-247955
-Node: History48187
-Node: Names50561
-Ref: Names-Footnote-152038
-Node: This Manual52110
-Ref: This Manual-Footnote-157884
-Node: Conventions57984
-Node: Manual History60136
-Ref: Manual History-Footnote-163584
-Ref: Manual History-Footnote-263625
-Node: How To Contribute63699
-Node: Acknowledgments64843
-Node: Getting Started69052
-Node: Running gawk71431
-Node: One-shot72617
-Node: Read Terminal73842
-Ref: Read Terminal-Footnote-175492
-Ref: Read Terminal-Footnote-275768
-Node: Long75939
-Node: Executable Scripts77315
-Ref: Executable Scripts-Footnote-179148
-Ref: Executable Scripts-Footnote-279250
-Node: Comments79797
-Node: Quoting82264
-Node: DOS Quoting86887
-Node: Sample Data Files87562
-Node: Very Simple90594
-Node: Two Rules95193
-Node: More Complex97340
-Ref: More Complex-Footnote-1100270
-Node: Statements/Lines100355
-Ref: Statements/Lines-Footnote-1104817
-Node: Other Features105082
-Node: When106010
-Node: Invoking Gawk108157
-Node: Command Line109618
-Node: Options110401
-Ref: Options-Footnote-1125793
-Node: Other Arguments125818
-Node: Naming Standard Input128476
-Node: Environment Variables129570
-Node: AWKPATH Variable130128
-Ref: AWKPATH Variable-Footnote-1132886
-Node: AWKLIBPATH Variable133146
-Node: Other Environment Variables133864
-Node: Exit Status136827
-Node: Include Files137502
-Node: Loading Shared Libraries141071
-Node: Obsolete142435
-Node: Undocumented143132
-Node: Regexp143375
-Node: Regexp Usage144764
-Node: Escape Sequences146790
-Node: Regexp Operators152459
-Ref: Regexp Operators-Footnote-1159839
-Ref: Regexp Operators-Footnote-2159986
-Node: Bracket Expressions160084
-Ref: table-char-classes161974
-Node: GNU Regexp Operators164497
-Node: Case-sensitivity168220
-Ref: Case-sensitivity-Footnote-1171188
-Ref: Case-sensitivity-Footnote-2171423
-Node: Leftmost Longest171531
-Node: Computed Regexps172732
-Node: Reading Files176069
-Node: Records178072
-Ref: Records-Footnote-1186961
-Node: Fields186998
-Ref: Fields-Footnote-1190031
-Node: Nonconstant Fields190117
-Node: Changing Fields192319
-Node: Field Separators198278
-Node: Default Field Splitting200907
-Node: Regexp Field Splitting202024
-Node: Single Character Fields205366
-Node: Command Line Field Separator206425
-Node: Field Splitting Summary209866
-Ref: Field Splitting Summary-Footnote-1212977
-Node: Constant Size213078
-Node: Splitting By Content217662
-Ref: Splitting By Content-Footnote-1221388
-Node: Multiple Line221428
-Ref: Multiple Line-Footnote-1227275
-Node: Getline227454
-Node: Plain Getline229670
-Node: Getline/Variable231765
-Node: Getline/File232912
-Node: Getline/Variable/File234253
-Ref: Getline/Variable/File-Footnote-1235852
-Node: Getline/Pipe235939
-Node: Getline/Variable/Pipe238639
-Node: Getline/Coprocess239746
-Node: Getline/Variable/Coprocess240998
-Node: Getline Notes241735
-Node: Getline Summary244522
-Ref: table-getline-variants244930
-Node: Read Timeout245842
-Ref: Read Timeout-Footnote-1249583
-Node: Command line directories249640
-Node: Printing250270
-Node: Print251901
-Node: Print Examples253238
-Node: Output Separators256022
-Node: OFMT257782
-Node: Printf259140
-Node: Basic Printf260046
-Node: Control Letters261585
-Node: Format Modifiers265397
-Node: Printf Examples271406
-Node: Redirection274121
-Node: Special Files281086
-Node: Special FD281619
-Ref: Special FD-Footnote-1285244
-Node: Special Network285318
-Node: Special Caveats286168
-Node: Close Files And Pipes286964
-Ref: Close Files And Pipes-Footnote-1293947
-Ref: Close Files And Pipes-Footnote-2294095
-Node: Expressions294245
-Node: Values295377
-Node: Constants296053
-Node: Scalar Constants296733
-Ref: Scalar Constants-Footnote-1297592
-Node: Nondecimal-numbers297774
-Node: Regexp Constants300774
-Node: Using Constant Regexps301249
-Node: Variables304304
-Node: Using Variables304959
-Node: Assignment Options306683
-Node: Conversion308555
-Ref: table-locale-affects314056
-Ref: Conversion-Footnote-1314680
-Node: All Operators314789
-Node: Arithmetic Ops315419
-Node: Concatenation317924
-Ref: Concatenation-Footnote-1320717
-Node: Assignment Ops320837
-Ref: table-assign-ops325825
-Node: Increment Ops327156
-Node: Truth Values and Conditions330591
-Node: Truth Values331674
-Node: Typing and Comparison332723
-Node: Variable Typing333512
-Ref: Variable Typing-Footnote-1337409
-Node: Comparison Operators337531
-Ref: table-relational-ops337941
-Node: POSIX String Comparison341490
-Ref: POSIX String Comparison-Footnote-1342446
-Node: Boolean Ops342584
-Ref: Boolean Ops-Footnote-1346662
-Node: Conditional Exp346753
-Node: Function Calls348485
-Node: Precedence352079
-Node: Locales355748
-Node: Patterns and Actions356837
-Node: Pattern Overview357891
-Node: Regexp Patterns359560
-Node: Expression Patterns360103
-Node: Ranges363788
-Node: BEGIN/END366754
-Node: Using BEGIN/END367516
-Ref: Using BEGIN/END-Footnote-1370247
-Node: I/O And BEGIN/END370353
-Node: BEGINFILE/ENDFILE372635
-Node: Empty375549
-Node: Using Shell Variables375865
-Node: Action Overview378150
-Node: Statements380507
-Node: If Statement382361
-Node: While Statement383860
-Node: Do Statement385904
-Node: For Statement387060
-Node: Switch Statement390212
-Node: Break Statement392309
-Node: Continue Statement394299
-Node: Next Statement396092
-Node: Nextfile Statement398482
-Node: Exit Statement401125
-Node: Built-in Variables403541
-Node: User-modified404636
-Ref: User-modified-Footnote-1412996
-Node: Auto-set413058
-Ref: Auto-set-Footnote-1426136
-Ref: Auto-set-Footnote-2426341
-Node: ARGC and ARGV426397
-Node: Arrays430248
-Node: Array Basics431753
-Node: Array Intro432579
-Node: Reference to Elements436897
-Node: Assigning Elements439167
-Node: Array Example439658
-Node: Scanning an Array441390
-Node: Controlling Scanning443704
-Ref: Controlling Scanning-Footnote-1448627
-Node: Delete448943
-Ref: Delete-Footnote-1451708
-Node: Numeric Array Subscripts451765
-Node: Uninitialized Subscripts453948
-Node: Multi-dimensional455576
-Node: Multi-scanning458670
-Node: Arrays of Arrays460261
-Node: Functions464902
-Node: Built-in465721
-Node: Calling Built-in466799
-Node: Numeric Functions468787
-Ref: Numeric Functions-Footnote-1472619
-Ref: Numeric Functions-Footnote-2472976
-Ref: Numeric Functions-Footnote-3473024
-Node: String Functions473293
-Ref: String Functions-Footnote-1496851
-Ref: String Functions-Footnote-2496980
-Ref: String Functions-Footnote-3497228
-Node: Gory Details497315
-Ref: table-sub-escapes498994
-Ref: table-sub-posix-92500348
-Ref: table-sub-proposed501699
-Ref: table-posix-sub503053
-Ref: table-gensub-escapes504598
-Ref: Gory Details-Footnote-1505774
-Ref: Gory Details-Footnote-2505825
-Node: I/O Functions505976
-Ref: I/O Functions-Footnote-1512961
-Node: Time Functions513108
-Ref: Time Functions-Footnote-1524041
-Ref: Time Functions-Footnote-2524109
-Ref: Time Functions-Footnote-3524267
-Ref: Time Functions-Footnote-4524378
-Ref: Time Functions-Footnote-5524490
-Ref: Time Functions-Footnote-6524717
-Node: Bitwise Functions524983
-Ref: table-bitwise-ops525541
-Ref: Bitwise Functions-Footnote-1529762
-Node: Type Functions529946
-Node: I18N Functions531097
-Node: User-defined532724
-Node: Definition Syntax533528
-Ref: Definition Syntax-Footnote-1538438
-Node: Function Example538507
-Node: Function Caveats541101
-Node: Calling A Function541522
-Node: Variable Scope542637
-Node: Pass By Value/Reference545600
-Node: Return Statement549108
-Node: Dynamic Typing552089
-Node: Indirect Calls553020
-Node: Library Functions562705
-Ref: Library Functions-Footnote-1566218
-Ref: Library Functions-Footnote-2566361
-Node: Library Names566532
-Ref: Library Names-Footnote-1570003
-Ref: Library Names-Footnote-2570223
-Node: General Functions570309
-Node: Strtonum Function571337
-Node: Assert Function574267
-Node: Round Function577593
-Node: Cliff Random Function579136
-Node: Ordinal Functions580152
-Ref: Ordinal Functions-Footnote-1583222
-Ref: Ordinal Functions-Footnote-2583474
-Node: Join Function583683
-Ref: Join Function-Footnote-1585454
-Node: Getlocaltime Function585654
-Node: Readfile Function589395
-Node: Data File Management591234
-Node: Filetrans Function591866
-Node: Rewind Function595935
-Node: File Checking597322
-Node: Empty Files598416
-Node: Ignoring Assigns600646
-Node: Getopt Function602199
-Ref: Getopt Function-Footnote-1613503
-Node: Passwd Functions613706
-Ref: Passwd Functions-Footnote-1622681
-Node: Group Functions622769
-Node: Walking Arrays630853
-Node: Sample Programs632990
-Node: Running Examples633664
-Node: Clones634392
-Node: Cut Program635616
-Node: Egrep Program645461
-Ref: Egrep Program-Footnote-1653234
-Node: Id Program653344
-Node: Split Program656960
-Ref: Split Program-Footnote-1660479
-Node: Tee Program660607
-Node: Uniq Program663410
-Node: Wc Program670839
-Ref: Wc Program-Footnote-1675105
-Ref: Wc Program-Footnote-2675305
-Node: Miscellaneous Programs675397
-Node: Dupword Program676585
-Node: Alarm Program678616
-Node: Translate Program683365
-Ref: Translate Program-Footnote-1687752
-Ref: Translate Program-Footnote-2687980
-Node: Labels Program688114
-Ref: Labels Program-Footnote-1691485
-Node: Word Sorting691569
-Node: History Sorting695453
-Node: Extract Program697292
-Ref: Extract Program-Footnote-1704793
-Node: Simple Sed704921
-Node: Igawk Program707983
-Ref: Igawk Program-Footnote-1723140
-Ref: Igawk Program-Footnote-2723341
-Node: Anagram Program723479
-Node: Signature Program726547
-Node: Advanced Features727647
-Node: Nondecimal Data729529
-Node: Array Sorting731112
-Node: Controlling Array Traversal731809
-Node: Array Sorting Functions740047
-Ref: Array Sorting Functions-Footnote-1743721
-Ref: Array Sorting Functions-Footnote-2743814
-Node: Two-way I/O744008
-Ref: Two-way I/O-Footnote-1749440
-Node: TCP/IP Networking749510
-Node: Profiling752354
-Node: Internationalization759851
-Node: I18N and L10N761276
-Node: Explaining gettext761962
-Ref: Explaining gettext-Footnote-1767030
-Ref: Explaining gettext-Footnote-2767214
-Node: Programmer i18n767379
-Node: Translator i18n771581
-Node: String Extraction772374
-Ref: String Extraction-Footnote-1773335
-Node: Printf Ordering773421
-Ref: Printf Ordering-Footnote-1776205
-Node: I18N Portability776269
-Ref: I18N Portability-Footnote-1778718
-Node: I18N Example778781
-Ref: I18N Example-Footnote-1781419
-Node: Gawk I18N781491
-Node: Debugger782112
-Node: Debugging783083
-Node: Debugging Concepts783516
-Node: Debugging Terms785372
-Node: Awk Debugging787969
-Node: Sample Debugging Session788861
-Node: Debugger Invocation789381
-Node: Finding The Bug790713
-Node: List of Debugger Commands797201
-Node: Breakpoint Control798535
-Node: Debugger Execution Control802199
-Node: Viewing And Changing Data805559
-Node: Execution Stack808915
-Node: Debugger Info810382
-Node: Miscellaneous Debugger Commands814364
-Node: Readline Support819540
-Node: Limitations820371
-Node: Arbitrary Precision Arithmetic822623
-Ref: Arbitrary Precision Arithmetic-Footnote-1824274
-Node: General Arithmetic824422
-Node: Floating Point Issues826142
-Node: String Conversion Precision827023
-Ref: String Conversion Precision-Footnote-1828728
-Node: Unexpected Results828837
-Node: POSIX Floating Point Problems830990
-Ref: POSIX Floating Point Problems-Footnote-1834815
-Node: Integer Programming834853
-Node: Floating-point Programming836592
-Ref: Floating-point Programming-Footnote-1842923
-Ref: Floating-point Programming-Footnote-2843193
-Node: Floating-point Representation843457
-Node: Floating-point Context844622
-Ref: table-ieee-formats845461
-Node: Rounding Mode846845
-Ref: table-rounding-modes847324
-Ref: Rounding Mode-Footnote-1850339
-Node: Gawk and MPFR850518
-Node: Arbitrary Precision Floats851773
-Ref: Arbitrary Precision Floats-Footnote-1854216
-Node: Setting Precision854532
-Ref: table-predefined-precision-strings855218
-Node: Setting Rounding Mode857363
-Ref: table-gawk-rounding-modes857767
-Node: Floating-point Constants858954
-Node: Changing Precision860383
-Ref: Changing Precision-Footnote-1861783
-Node: Exact Arithmetic861957
-Node: Arbitrary Precision Integers865095
-Ref: Arbitrary Precision Integers-Footnote-1868113
-Node: Dynamic Extensions868260
-Node: Extension Intro869718
-Node: Plugin License870983
-Node: Extension Mechanism Outline871668
-Ref: load-extension872085
-Ref: load-new-function873563
-Ref: call-new-function874558
-Node: Extension API Description876573
-Node: Extension API Functions Introduction877786
-Node: General Data Types882652
-Ref: General Data Types-Footnote-1888254
-Node: Requesting Values888553
-Ref: table-value-types-returned889284
-Node: Constructor Functions890238
-Node: Registration Functions893258
-Node: Extension Functions893943
-Node: Exit Callback Functions896168
-Node: Extension Version String897417
-Node: Input Parsers898067
-Node: Output Wrappers907824
-Node: Two-way processors912334
-Node: Printing Messages914542
-Ref: Printing Messages-Footnote-1915619
-Node: Updating `ERRNO'915771
-Node: Accessing Parameters916510
-Node: Symbol Table Access917740
-Node: Symbol table by name918252
-Node: Symbol table by cookie919999
-Ref: Symbol table by cookie-Footnote-1924129
-Node: Cached values924192
-Ref: Cached values-Footnote-1927641
-Node: Array Manipulation927732
-Ref: Array Manipulation-Footnote-1928830
-Node: Array Data Types928869
-Ref: Array Data Types-Footnote-1931572
-Node: Array Functions931664
-Node: Flattening Arrays935430
-Node: Creating Arrays942282
-Node: Extension API Variables947007
-Node: Extension Versioning947643
-Node: Extension API Informational Variables949544
-Node: Extension API Boilerplate950630
-Node: Finding Extensions954434
-Node: Extension Example954994
-Node: Internal File Description955725
-Node: Internal File Ops959816
-Ref: Internal File Ops-Footnote-1971324
-Node: Using Internal File Ops971464
-Ref: Using Internal File Ops-Footnote-1973817
-Node: Extension Samples974083
-Node: Extension Sample File Functions975607
-Node: Extension Sample Fnmatch984094
-Node: Extension Sample Fork985820
-Node: Extension Sample Inplace987038
-Node: Extension Sample Ord988816
-Node: Extension Sample Readdir989652
-Node: Extension Sample Revout991184
-Node: Extension Sample Rev2way991777
-Node: Extension Sample Read write array992467
-Node: Extension Sample Readfile994350
-Node: Extension Sample API Tests995168
-Node: Extension Sample Time995693
-Node: gawkextlib997057
-Node: Language History999817
-Node: V7/SVR3.11001339
+Node: Foreword40460
+Node: Preface44805
+Ref: Preface-Footnote-147858
+Ref: Preface-Footnote-247954
+Node: History48186
+Node: Names50560
+Ref: Names-Footnote-152037
+Node: This Manual52109
+Ref: This Manual-Footnote-157883
+Node: Conventions57983
+Node: Manual History60135
+Ref: Manual History-Footnote-163583
+Ref: Manual History-Footnote-263624
+Node: How To Contribute63698
+Node: Acknowledgments64842
+Node: Getting Started69051
+Node: Running gawk71430
+Node: One-shot72616
+Node: Read Terminal73841
+Ref: Read Terminal-Footnote-175491
+Ref: Read Terminal-Footnote-275767
+Node: Long75938
+Node: Executable Scripts77314
+Ref: Executable Scripts-Footnote-179147
+Ref: Executable Scripts-Footnote-279249
+Node: Comments79796
+Node: Quoting82263
+Node: DOS Quoting86886
+Node: Sample Data Files87561
+Node: Very Simple90605
+Node: Two Rules95204
+Node: More Complex97351
+Ref: More Complex-Footnote-1100281
+Node: Statements/Lines100366
+Ref: Statements/Lines-Footnote-1104828
+Node: Other Features105093
+Node: When106021
+Node: Invoking Gawk108168
+Node: Command Line109629
+Node: Options110412
+Ref: Options-Footnote-1125804
+Node: Other Arguments125829
+Node: Naming Standard Input128487
+Node: Environment Variables129581
+Node: AWKPATH Variable130139
+Ref: AWKPATH Variable-Footnote-1132897
+Node: AWKLIBPATH Variable133157
+Node: Other Environment Variables133875
+Node: Exit Status136838
+Node: Include Files137513
+Node: Loading Shared Libraries141082
+Node: Obsolete142446
+Node: Undocumented143143
+Node: Regexp143386
+Node: Regexp Usage144775
+Node: Escape Sequences146801
+Node: Regexp Operators152470
+Ref: Regexp Operators-Footnote-1159850
+Ref: Regexp Operators-Footnote-2159997
+Node: Bracket Expressions160095
+Ref: table-char-classes161985
+Node: GNU Regexp Operators164508
+Node: Case-sensitivity168231
+Ref: Case-sensitivity-Footnote-1171199
+Ref: Case-sensitivity-Footnote-2171434
+Node: Leftmost Longest171542
+Node: Computed Regexps172743
+Node: Reading Files176080
+Node: Records178082
+Ref: Records-Footnote-1186971
+Node: Fields187008
+Ref: Fields-Footnote-1190041
+Node: Nonconstant Fields190127
+Node: Changing Fields192329
+Node: Field Separators198288
+Node: Default Field Splitting200917
+Node: Regexp Field Splitting202034
+Node: Single Character Fields205376
+Node: Command Line Field Separator206435
+Node: Field Splitting Summary209876
+Ref: Field Splitting Summary-Footnote-1212987
+Node: Constant Size213088
+Node: Splitting By Content217672
+Ref: Splitting By Content-Footnote-1221398
+Node: Multiple Line221438
+Ref: Multiple Line-Footnote-1227285
+Node: Getline227464
+Node: Plain Getline229680
+Node: Getline/Variable231775
+Node: Getline/File232922
+Node: Getline/Variable/File234263
+Ref: Getline/Variable/File-Footnote-1235862
+Node: Getline/Pipe235949
+Node: Getline/Variable/Pipe238649
+Node: Getline/Coprocess239756
+Node: Getline/Variable/Coprocess241008
+Node: Getline Notes241745
+Node: Getline Summary244532
+Ref: table-getline-variants244940
+Node: Read Timeout245852
+Ref: Read Timeout-Footnote-1249593
+Node: Command line directories249650
+Node: Printing250280
+Node: Print251911
+Node: Print Examples253248
+Node: Output Separators256032
+Node: OFMT257792
+Node: Printf259150
+Node: Basic Printf260056
+Node: Control Letters261595
+Node: Format Modifiers265407
+Node: Printf Examples271416
+Node: Redirection274131
+Node: Special Files281096
+Node: Special FD281629
+Ref: Special FD-Footnote-1285254
+Node: Special Network285328
+Node: Special Caveats286178
+Node: Close Files And Pipes286974
+Ref: Close Files And Pipes-Footnote-1293957
+Ref: Close Files And Pipes-Footnote-2294105
+Node: Expressions294255
+Node: Values295387
+Node: Constants296063
+Node: Scalar Constants296743
+Ref: Scalar Constants-Footnote-1297602
+Node: Nondecimal-numbers297784
+Node: Regexp Constants300784
+Node: Using Constant Regexps301259
+Node: Variables304314
+Node: Using Variables304969
+Node: Assignment Options306693
+Node: Conversion308565
+Ref: table-locale-affects314066
+Ref: Conversion-Footnote-1314690
+Node: All Operators314799
+Node: Arithmetic Ops315429
+Node: Concatenation317934
+Ref: Concatenation-Footnote-1320727
+Node: Assignment Ops320847
+Ref: table-assign-ops325835
+Node: Increment Ops327166
+Node: Truth Values and Conditions330601
+Node: Truth Values331684
+Node: Typing and Comparison332733
+Node: Variable Typing333522
+Ref: Variable Typing-Footnote-1337419
+Node: Comparison Operators337541
+Ref: table-relational-ops337951
+Node: POSIX String Comparison341500
+Ref: POSIX String Comparison-Footnote-1342456
+Node: Boolean Ops342594
+Ref: Boolean Ops-Footnote-1346672
+Node: Conditional Exp346763
+Node: Function Calls348495
+Node: Precedence352089
+Node: Locales355758
+Node: Patterns and Actions356847
+Node: Pattern Overview357901
+Node: Regexp Patterns359570
+Node: Expression Patterns360113
+Node: Ranges363798
+Node: BEGIN/END366764
+Node: Using BEGIN/END367526
+Ref: Using BEGIN/END-Footnote-1370257
+Node: I/O And BEGIN/END370363
+Node: BEGINFILE/ENDFILE372645
+Node: Empty375559
+Node: Using Shell Variables375875
+Node: Action Overview378160
+Node: Statements380517
+Node: If Statement382371
+Node: While Statement383870
+Node: Do Statement385914
+Node: For Statement387070
+Node: Switch Statement390222
+Node: Break Statement392319
+Node: Continue Statement394309
+Node: Next Statement396102
+Node: Nextfile Statement398492
+Node: Exit Statement401135
+Node: Built-in Variables403551
+Node: User-modified404646
+Ref: User-modified-Footnote-1413004
+Node: Auto-set413066
+Ref: Auto-set-Footnote-1426144
+Ref: Auto-set-Footnote-2426349
+Node: ARGC and ARGV426405
+Node: Arrays430256
+Node: Array Basics431761
+Node: Array Intro432587
+Node: Reference to Elements436905
+Node: Assigning Elements439175
+Node: Array Example439666
+Node: Scanning an Array441398
+Node: Controlling Scanning443712
+Ref: Controlling Scanning-Footnote-1448635
+Node: Delete448951
+Ref: Delete-Footnote-1451716
+Node: Numeric Array Subscripts451773
+Node: Uninitialized Subscripts453956
+Node: Multidimensional455583
+Node: Multiscanning458675
+Node: Arrays of Arrays460264
+Node: Functions464904
+Node: Built-in465723
+Node: Calling Built-in466801
+Node: Numeric Functions468789
+Ref: Numeric Functions-Footnote-1472621
+Ref: Numeric Functions-Footnote-2472978
+Ref: Numeric Functions-Footnote-3473026
+Node: String Functions473295
+Ref: String Functions-Footnote-1496853
+Ref: String Functions-Footnote-2496982
+Ref: String Functions-Footnote-3497230
+Node: Gory Details497317
+Ref: table-sub-escapes498996
+Ref: table-sub-posix-92500350
+Ref: table-sub-proposed501701
+Ref: table-posix-sub503055
+Ref: table-gensub-escapes504600
+Ref: Gory Details-Footnote-1505776
+Ref: Gory Details-Footnote-2505827
+Node: I/O Functions505978
+Ref: I/O Functions-Footnote-1512963
+Node: Time Functions513110
+Ref: Time Functions-Footnote-1524043
+Ref: Time Functions-Footnote-2524111
+Ref: Time Functions-Footnote-3524269
+Ref: Time Functions-Footnote-4524380
+Ref: Time Functions-Footnote-5524492
+Ref: Time Functions-Footnote-6524719
+Node: Bitwise Functions524985
+Ref: table-bitwise-ops525543
+Ref: Bitwise Functions-Footnote-1529764
+Node: Type Functions529948
+Node: I18N Functions531099
+Node: User-defined532726
+Node: Definition Syntax533530
+Ref: Definition Syntax-Footnote-1538440
+Node: Function Example538509
+Node: Function Caveats541103
+Node: Calling A Function541524
+Node: Variable Scope542639
+Node: Pass By Value/Reference545602
+Node: Return Statement549110
+Node: Dynamic Typing552091
+Node: Indirect Calls553022
+Node: Library Functions562707
+Ref: Library Functions-Footnote-1566220
+Ref: Library Functions-Footnote-2566363
+Node: Library Names566534
+Ref: Library Names-Footnote-1570005
+Ref: Library Names-Footnote-2570225
+Node: General Functions570311
+Node: Strtonum Function571339
+Node: Assert Function574269
+Node: Round Function577595
+Node: Cliff Random Function579138
+Node: Ordinal Functions580154
+Ref: Ordinal Functions-Footnote-1583224
+Ref: Ordinal Functions-Footnote-2583476
+Node: Join Function583685
+Ref: Join Function-Footnote-1585456
+Node: Getlocaltime Function585656
+Node: Readfile Function589397
+Node: Data File Management591236
+Node: Filetrans Function591868
+Node: Rewind Function595937
+Node: File Checking597324
+Node: Empty Files598418
+Node: Ignoring Assigns600648
+Node: Getopt Function602201
+Ref: Getopt Function-Footnote-1613504
+Node: Passwd Functions613707
+Ref: Passwd Functions-Footnote-1622682
+Node: Group Functions622770
+Node: Walking Arrays630854
+Node: Sample Programs632991
+Node: Running Examples633665
+Node: Clones634393
+Node: Cut Program635617
+Node: Egrep Program645462
+Ref: Egrep Program-Footnote-1653235
+Node: Id Program653345
+Node: Split Program656961
+Ref: Split Program-Footnote-1660480
+Node: Tee Program660608
+Node: Uniq Program663411
+Node: Wc Program670840
+Ref: Wc Program-Footnote-1675106
+Ref: Wc Program-Footnote-2675306
+Node: Miscellaneous Programs675398
+Node: Dupword Program676586
+Node: Alarm Program678617
+Node: Translate Program683366
+Ref: Translate Program-Footnote-1687753
+Ref: Translate Program-Footnote-2687981
+Node: Labels Program688115
+Ref: Labels Program-Footnote-1691486
+Node: Word Sorting691570
+Node: History Sorting695454
+Node: Extract Program697293
+Ref: Extract Program-Footnote-1704796
+Node: Simple Sed704924
+Node: Igawk Program707986
+Ref: Igawk Program-Footnote-1723143
+Ref: Igawk Program-Footnote-2723344
+Node: Anagram Program723482
+Node: Signature Program726550
+Node: Advanced Features727650
+Node: Nondecimal Data729532
+Node: Array Sorting731115
+Node: Controlling Array Traversal731812
+Node: Array Sorting Functions740050
+Ref: Array Sorting Functions-Footnote-1743724
+Ref: Array Sorting Functions-Footnote-2743817
+Node: Two-way I/O744011
+Ref: Two-way I/O-Footnote-1749443
+Node: TCP/IP Networking749513
+Node: Profiling752357
+Node: Internationalization759854
+Node: I18N and L10N761279
+Node: Explaining gettext761965
+Ref: Explaining gettext-Footnote-1767033
+Ref: Explaining gettext-Footnote-2767217
+Node: Programmer i18n767382
+Node: Translator i18n771584
+Node: String Extraction772377
+Ref: String Extraction-Footnote-1773338
+Node: Printf Ordering773424
+Ref: Printf Ordering-Footnote-1776208
+Node: I18N Portability776272
+Ref: I18N Portability-Footnote-1778721
+Node: I18N Example778784
+Ref: I18N Example-Footnote-1781422
+Node: Gawk I18N781494
+Node: Debugger782115
+Node: Debugging783086
+Node: Debugging Concepts783519
+Node: Debugging Terms785375
+Node: Awk Debugging787972
+Node: Sample Debugging Session788864
+Node: Debugger Invocation789384
+Node: Finding The Bug790716
+Node: List of Debugger Commands797204
+Node: Breakpoint Control798538
+Node: Debugger Execution Control802202
+Node: Viewing And Changing Data805562
+Node: Execution Stack808918
+Node: Debugger Info810385
+Node: Miscellaneous Debugger Commands814367
+Node: Readline Support819543
+Node: Limitations820374
+Node: Arbitrary Precision Arithmetic822626
+Ref: Arbitrary Precision Arithmetic-Footnote-1824277
+Node: General Arithmetic824425
+Node: Floating Point Issues826145
+Node: String Conversion Precision827026
+Ref: String Conversion Precision-Footnote-1828731
+Node: Unexpected Results828840
+Node: POSIX Floating Point Problems830993
+Ref: POSIX Floating Point Problems-Footnote-1834818
+Node: Integer Programming834856
+Node: Floating-point Programming836595
+Ref: Floating-point Programming-Footnote-1842926
+Ref: Floating-point Programming-Footnote-2843196
+Node: Floating-point Representation843460
+Node: Floating-point Context844625
+Ref: table-ieee-formats845464
+Node: Rounding Mode846848
+Ref: table-rounding-modes847327
+Ref: Rounding Mode-Footnote-1850342
+Node: Gawk and MPFR850521
+Node: Arbitrary Precision Floats851776
+Ref: Arbitrary Precision Floats-Footnote-1854219
+Node: Setting Precision854535
+Ref: table-predefined-precision-strings855221
+Node: Setting Rounding Mode857366
+Ref: table-gawk-rounding-modes857770
+Node: Floating-point Constants858957
+Node: Changing Precision860386
+Ref: Changing Precision-Footnote-1861786
+Node: Exact Arithmetic861960
+Node: Arbitrary Precision Integers865098
+Ref: Arbitrary Precision Integers-Footnote-1868116
+Node: Dynamic Extensions868263
+Node: Extension Intro869721
+Node: Plugin License870986
+Node: Extension Mechanism Outline871671
+Ref: load-extension872088
+Ref: load-new-function873566
+Ref: call-new-function874561
+Node: Extension API Description876576
+Node: Extension API Functions Introduction877789
+Node: General Data Types882655
+Ref: General Data Types-Footnote-1888257
+Node: Requesting Values888556
+Ref: table-value-types-returned889287
+Node: Constructor Functions890241
+Node: Registration Functions893261
+Node: Extension Functions893946
+Node: Exit Callback Functions896171
+Node: Extension Version String897420
+Node: Input Parsers898070
+Node: Output Wrappers907827
+Node: Two-way processors912337
+Node: Printing Messages914545
+Ref: Printing Messages-Footnote-1915622
+Node: Updating `ERRNO'915774
+Node: Accessing Parameters916513
+Node: Symbol Table Access917743
+Node: Symbol table by name918255
+Node: Symbol table by cookie920002
+Ref: Symbol table by cookie-Footnote-1924132
+Node: Cached values924195
+Ref: Cached values-Footnote-1927644
+Node: Array Manipulation927735
+Ref: Array Manipulation-Footnote-1928833
+Node: Array Data Types928872
+Ref: Array Data Types-Footnote-1931575
+Node: Array Functions931667
+Node: Flattening Arrays935433
+Node: Creating Arrays942285
+Node: Extension API Variables947010
+Node: Extension Versioning947646
+Node: Extension API Informational Variables949547
+Node: Extension API Boilerplate950633
+Node: Finding Extensions954437
+Node: Extension Example954997
+Node: Internal File Description955728
+Node: Internal File Ops959819
+Ref: Internal File Ops-Footnote-1971327
+Node: Using Internal File Ops971467
+Ref: Using Internal File Ops-Footnote-1973820
+Node: Extension Samples974086
+Node: Extension Sample File Functions975610
+Node: Extension Sample Fnmatch984095
+Node: Extension Sample Fork985821
+Node: Extension Sample Inplace987039
+Node: Extension Sample Ord988817
+Node: Extension Sample Readdir989653
+Node: Extension Sample Revout991185
+Node: Extension Sample Rev2way991778
+Node: Extension Sample Read write array992468
+Node: Extension Sample Readfile994351
+Node: Extension Sample API Tests995169
+Node: Extension Sample Time995694
+Node: gawkextlib997058
+Node: Language History999818
+Node: V7/SVR3.11001340
Node: SVR41003660
Node: POSIX1005102
Node: BTL1006488
@@ -32637,60 +32650,60 @@ Ref: Ranges and Locales-Footnote-11018681
Ref: Ranges and Locales-Footnote-21018708
Ref: Ranges and Locales-Footnote-31018968
Node: Contributors1019189
-Node: Installation1024068
-Node: Gawk Distribution1024962
-Node: Getting1025446
-Node: Extracting1026272
-Node: Distribution contents1027964
-Node: Unix Installation1033225
-Node: Quick Installation1033842
-Node: Additional Configuration Options1036286
-Node: Configuration Philosophy1037763
-Node: Non-Unix Installation1040117
-Node: PC Installation1040575
-Node: PC Binary Installation1041874
-Node: PC Compiling1043722
-Node: PC Testing1046666
-Node: PC Using1047842
-Node: Cygwin1052027
-Node: MSYS1053027
-Node: VMS Installation1053541
-Node: VMS Compilation1054144
-Ref: VMS Compilation-Footnote-11055151
-Node: VMS Installation Details1055209
-Node: VMS Running1056844
-Node: VMS Old Gawk1058451
-Node: Bugs1058925
-Node: Other Versions1062777
-Node: Notes1068858
-Node: Compatibility Mode1069658
-Node: Additions1070441
-Node: Accessing The Source1071368
-Node: Adding Code1072808
-Node: New Ports1078853
-Node: Derived Files1082988
-Ref: Derived Files-Footnote-11088309
-Ref: Derived Files-Footnote-21088343
-Ref: Derived Files-Footnote-31088943
-Node: Future Extensions1089041
-Node: Implementation Limitations1089622
-Node: Extension Design1090874
-Node: Old Extension Problems1092028
-Ref: Old Extension Problems-Footnote-11093536
-Node: Extension New Mechanism Goals1093593
-Ref: Extension New Mechanism Goals-Footnote-11096959
-Node: Extension Other Design Decisions1097145
-Node: Extension Future Growth1099251
-Node: Old Extension Mechanism1100087
-Node: Basic Concepts1101827
-Node: Basic High Level1102508
-Ref: figure-general-flow1102779
-Ref: figure-process-flow1103378
-Ref: Basic High Level-Footnote-11106607
-Node: Basic Data Typing1106792
-Node: Glossary1110147
-Node: Copying1135609
-Node: GNU Free Documentation License1173166
-Node: Index1198303
+Node: Installation1024265
+Node: Gawk Distribution1025159
+Node: Getting1025643
+Node: Extracting1026469
+Node: Distribution contents1028161
+Node: Unix Installation1033705
+Node: Quick Installation1034322
+Node: Additional Configuration Options1036766
+Node: Configuration Philosophy1038243
+Node: Non-Unix Installation1040597
+Node: PC Installation1041055
+Node: PC Binary Installation1042354
+Node: PC Compiling1044202
+Node: PC Testing1047146
+Node: PC Using1048322
+Node: Cygwin1052507
+Node: MSYS1053507
+Node: VMS Installation1054021
+Node: VMS Compilation1054624
+Ref: VMS Compilation-Footnote-11055631
+Node: VMS Installation Details1055689
+Node: VMS Running1057324
+Node: VMS Old Gawk1058931
+Node: Bugs1059405
+Node: Other Versions1063257
+Node: Notes1069338
+Node: Compatibility Mode1070138
+Node: Additions1070921
+Node: Accessing The Source1071848
+Node: Adding Code1073288
+Node: New Ports1079333
+Node: Derived Files1083468
+Ref: Derived Files-Footnote-11088789
+Ref: Derived Files-Footnote-21088823
+Ref: Derived Files-Footnote-31089423
+Node: Future Extensions1089521
+Node: Implementation Limitations1090102
+Node: Extension Design1091354
+Node: Old Extension Problems1092508
+Ref: Old Extension Problems-Footnote-11094016
+Node: Extension New Mechanism Goals1094073
+Ref: Extension New Mechanism Goals-Footnote-11097438
+Node: Extension Other Design Decisions1097624
+Node: Extension Future Growth1099730
+Node: Old Extension Mechanism1100566
+Node: Basic Concepts1102306
+Node: Basic High Level1102987
+Ref: figure-general-flow1103258
+Ref: figure-process-flow1103857
+Ref: Basic High Level-Footnote-11107086
+Node: Basic Data Typing1107271
+Node: Glossary1110626
+Node: Copying1136088
+Node: GNU Free Documentation License1173645
+Node: Index1198782

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index cd7d88a9..bc4f4459 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -403,7 +403,7 @@ particular records in a file and perform operations upon them.
* Field Splitting Summary:: Some final points and a summary table.
* Constant Size:: Reading constant width data.
* Splitting By Content:: Defining Fields By Content
-* Multiple Line:: Reading multi-line records.
+* Multiple Line:: Reading multiline records.
* Getline:: Reading files under explicit program
control using the @code{getline}
function.
@@ -554,9 +554,9 @@ particular records in a file and perform operations upon them.
@command{awk}.
* Uninitialized Subscripts:: Using Uninitialized variables as
subscripts.
-* Multi-dimensional:: Emulating multidimensional arrays in
+* Multidimensional:: Emulating multidimensional arrays in
@command{awk}.
-* Multi-scanning:: Scanning multidimensional arrays.
+* Multiscanning:: Scanning multidimensional arrays.
* Arrays of Arrays:: True multidimensional arrays.
* Built-in:: Summarizes the built-in functions.
* Calling Built-in:: How to call built-in functions.
@@ -2618,7 +2618,7 @@ learn in this @value{DOCUMENT}.
If you are using the stand-alone version of Info,
see @ref{Extract Program},
for an @command{awk} program that extracts these data files from
-@file{gawk.texi}, the Texinfo source file for this Info file.
+@file{gawk.texi}, the (generated) Texinfo source file for this Info file.
@end ifinfo
@node Very Simple
@@ -5582,7 +5582,7 @@ used with it do not have to be named on the @command{awk} command line
* Field Separators:: The field separator and how to change it.
* Constant Size:: Reading constant width data.
* Splitting By Content:: Defining Fields By Content
-* Multiple Line:: Reading multi-line records.
+* Multiple Line:: Reading multiline records.
* Getline:: Reading files under explicit program control
using the @code{getline} function.
* Read Timeout:: Reading input with a timeout.
@@ -13402,7 +13402,7 @@ exclusively on the value of @code{FS}.
@item FS
This is the input field separator
(@pxref{Field Separators}).
-The value is a single-character string or a multi-character regular
+The value is a single-character string or a multicharacter regular
expression that matches the separations between fields in an input
record. If the value is the null string (@code{""}), then each
character in the record becomes a separate field.
@@ -13548,7 +13548,7 @@ This is the subscript separator. It has the default value of
@code{"\034"} and is used to separate the parts of the indices of a
multidimensional array. Thus, the expression @code{@w{foo["A", "B"]}}
really accesses @code{foo["A\034B"]}
-(@pxref{Multi-dimensional}).
+(@pxref{Multidimensional}).
@cindex @command{gawk}, @code{TEXTDOMAIN} variable in
@cindex @code{TEXTDOMAIN} variable
@@ -14232,7 +14232,7 @@ same @command{awk} program.
* Numeric Array Subscripts:: How to use numbers as subscripts in
@command{awk}.
* Uninitialized Subscripts:: Using Uninitialized variables as subscripts.
-* Multi-dimensional:: Emulating multidimensional arrays in
+* Multidimensional:: Emulating multidimensional arrays in
@command{awk}.
* Arrays of Arrays:: True multidimensional arrays.
@end menu
@@ -15025,11 +15025,11 @@ Even though it is somewhat unusual, the null string
if @option{--lint} is provided
on the command line (@pxref{Options}).
-@node Multi-dimensional
+@node Multidimensional
@section Multidimensional Arrays
@menu
-* Multi-scanning:: Scanning multidimensional arrays.
+* Multiscanning:: Scanning multidimensional arrays.
@end menu
@cindex subscripts in arrays, multidimensional
@@ -15127,7 +15127,7 @@ the program produces the following output:
3 2 1 6
@end example
-@node Multi-scanning
+@node Multiscanning
@subsection Scanning Multidimensional Arrays
There is no special @code{for} statement for scanning a
@@ -20391,7 +20391,7 @@ The discussion that follows walks through the code a bit at a time:
# <c> a character representing the current option
# Private Data:
-# _opti -- index in multi-flag option, e.g., -abc
+# _opti -- index in multiflag option, e.g., -abc
@c endfile
@end example
@@ -23820,7 +23820,7 @@ Lines containing @samp{@@group} and @samp{@@end group} are simply removed.
(@pxref{Join Function}).
The example programs in the online Texinfo source for @cite{@value{TITLE}}
-(@file{gawk.texi}) have all been bracketed inside @samp{file} and
+(@file{gawktexi.in}) have all been bracketed inside @samp{file} and
@samp{endfile} lines. The @command{gawk} distribution uses a copy of
@file{extract.awk} to extract the sample programs and install many
of them in a standard directory where @command{gawk} can find them.
@@ -32347,7 +32347,7 @@ Return zero if there were no errors, otherwise return @minus{}1.
The @code{fts()} function provides a hook to the C library @code{fts()}
routines for traversing file hierarchies. Instead of returning data
-about one file at a time in a stream, it fills in a multi-dimensional
+about one file at a time in a stream, it fills in a multidimensional
array with data about each file and directory encountered in the requested
hierarchies.
@@ -32448,7 +32448,7 @@ be more comfortable to use from an @command{awk} program. This includes the
lack of a comparison function, since @command{gawk} already provides
powerful array sorting facilities. While an @code{fts_read()}-like
interface could have been provided, this felt less natural than simply
-creating a multi-dimensional array to represent the file hierarchy and
+creating a multidimensional array to represent the file hierarchy and
its information.
@end quotation
@@ -33106,7 +33106,7 @@ Multiple @code{BEGIN} and @code{END} rules
@item
Multidimensional arrays
-(@pxref{Multi-dimensional}).
+(@pxref{Multidimensional}).
@end itemize
@c ENDOFRANGE gawkv1
@@ -33918,6 +33918,10 @@ The modifications to convert @command{gawk}
into a byte-code interpreter, including the debugger.
@item
+The addition of true multidimensional arrays.
+@ref{Arrays of Arrays}.
+
+@item
The additional modifications for support of arbitrary precision arithmetic.
@item
@@ -33930,6 +33934,10 @@ into one, for the 4.1 release.
@item
Improved array internals for arrays indexed by integers.
+
+@item
+The improved array sorting features were driven by John together
+with Pat Rankin.
@end itemize
@item
@@ -34148,12 +34156,20 @@ The @command{troff} source for a manual page describing @command{gawk}.
This is distributed for the convenience of Unix users.
@cindex Texinfo
-@item doc/gawk.texi
+@item doc/gawktexi.in
+@itemx doc/sidebar.awk
The Texinfo source file for this @value{DOCUMENT}.
-It should be processed with @TeX{}
-(via @command{texi2dvi} or @command{texi2pdf})
+It should be processed by @file{doc/sidebar.awk}
+before processing with @TeX{}
+It should be processed with
to produce a printed document, and
with @command{makeinfo} to produce an Info or HTML file.
+The @file{Makefile} takes care of this processing and produces
+printable output via @command{texi2dvi} or @command{texi2pdf}.
+
+@item doc/gawk.texi
+The file produced after processing @file{gawktexi.in}
+with @file{sidebar.awk}.
@item doc/gawk.info
The generated Info file for this @value{DOCUMENT}.
@@ -34192,6 +34208,7 @@ the @file{Makefile.in} files used by @command{autoconf} and
@item Makefile.in
@itemx aclocal.m4
+@itemx config.guess
@itemx configh.in
@itemx configure.ac
@itemx configure
@@ -36055,7 +36072,7 @@ in order to loop over all the element in an easy fashion for C code.
@item
The ability to create arrays (including @command{gawk}'s true
-multi-dimensional arrays).
+multidimensional arrays).
@end itemize
@end itemize
@@ -38541,6 +38558,7 @@ Consistency issues:
Use MS-Windows not MS Windows
Use MS-DOS not MS-DOS
Use an empty set of parentheses after built-in and awk function names.
+ Use "multiFOO" without a hyphen.
Date: Wed, 13 Apr 94 15:20:52 -0400
From: rms@gnu.org (Richard Stallman)
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index f5e0fc06..9d50db20 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -398,7 +398,7 @@ particular records in a file and perform operations upon them.
* Field Splitting Summary:: Some final points and a summary table.
* Constant Size:: Reading constant width data.
* Splitting By Content:: Defining Fields By Content
-* Multiple Line:: Reading multi-line records.
+* Multiple Line:: Reading multiline records.
* Getline:: Reading files under explicit program
control using the @code{getline}
function.
@@ -549,9 +549,9 @@ particular records in a file and perform operations upon them.
@command{awk}.
* Uninitialized Subscripts:: Using Uninitialized variables as
subscripts.
-* Multi-dimensional:: Emulating multidimensional arrays in
+* Multidimensional:: Emulating multidimensional arrays in
@command{awk}.
-* Multi-scanning:: Scanning multidimensional arrays.
+* Multiscanning:: Scanning multidimensional arrays.
* Arrays of Arrays:: True multidimensional arrays.
* Built-in:: Summarizes the built-in functions.
* Calling Built-in:: How to call built-in functions.
@@ -2546,7 +2546,7 @@ learn in this @value{DOCUMENT}.
If you are using the stand-alone version of Info,
see @ref{Extract Program},
for an @command{awk} program that extracts these data files from
-@file{gawk.texi}, the Texinfo source file for this Info file.
+@file{gawk.texi}, the (generated) Texinfo source file for this Info file.
@end ifinfo
@node Very Simple
@@ -5385,7 +5385,7 @@ used with it do not have to be named on the @command{awk} command line
* Field Separators:: The field separator and how to change it.
* Constant Size:: Reading constant width data.
* Splitting By Content:: Defining Fields By Content
-* Multiple Line:: Reading multi-line records.
+* Multiple Line:: Reading multiline records.
* Getline:: Reading files under explicit program control
using the @code{getline} function.
* Read Timeout:: Reading input with a timeout.
@@ -12787,7 +12787,7 @@ exclusively on the value of @code{FS}.
@item FS
This is the input field separator
(@pxref{Field Separators}).
-The value is a single-character string or a multi-character regular
+The value is a single-character string or a multicharacter regular
expression that matches the separations between fields in an input
record. If the value is the null string (@code{""}), then each
character in the record becomes a separate field.
@@ -12933,7 +12933,7 @@ This is the subscript separator. It has the default value of
@code{"\034"} and is used to separate the parts of the indices of a
multidimensional array. Thus, the expression @code{@w{foo["A", "B"]}}
really accesses @code{foo["A\034B"]}
-(@pxref{Multi-dimensional}).
+(@pxref{Multidimensional}).
@cindex @command{gawk}, @code{TEXTDOMAIN} variable in
@cindex @code{TEXTDOMAIN} variable
@@ -13571,7 +13571,7 @@ same @command{awk} program.
* Numeric Array Subscripts:: How to use numbers as subscripts in
@command{awk}.
* Uninitialized Subscripts:: Using Uninitialized variables as subscripts.
-* Multi-dimensional:: Emulating multidimensional arrays in
+* Multidimensional:: Emulating multidimensional arrays in
@command{awk}.
* Arrays of Arrays:: True multidimensional arrays.
@end menu
@@ -14364,11 +14364,11 @@ Even though it is somewhat unusual, the null string
if @option{--lint} is provided
on the command line (@pxref{Options}).
-@node Multi-dimensional
+@node Multidimensional
@section Multidimensional Arrays
@menu
-* Multi-scanning:: Scanning multidimensional arrays.
+* Multiscanning:: Scanning multidimensional arrays.
@end menu
@cindex subscripts in arrays, multidimensional
@@ -14466,7 +14466,7 @@ the program produces the following output:
3 2 1 6
@end example
-@node Multi-scanning
+@node Multiscanning
@subsection Scanning Multidimensional Arrays
There is no special @code{for} statement for scanning a
@@ -19540,7 +19540,7 @@ The discussion that follows walks through the code a bit at a time:
# <c> a character representing the current option
# Private Data:
-# _opti -- index in multi-flag option, e.g., -abc
+# _opti -- index in multiflag option, e.g., -abc
@c endfile
@end example
@@ -22969,7 +22969,7 @@ Lines containing @samp{@@group} and @samp{@@end group} are simply removed.
(@pxref{Join Function}).
The example programs in the online Texinfo source for @cite{@value{TITLE}}
-(@file{gawk.texi}) have all been bracketed inside @samp{file} and
+(@file{gawktexi.in}) have all been bracketed inside @samp{file} and
@samp{endfile} lines. The @command{gawk} distribution uses a copy of
@file{extract.awk} to extract the sample programs and install many
of them in a standard directory where @command{gawk} can find them.
@@ -31496,7 +31496,7 @@ Return zero if there were no errors, otherwise return @minus{}1.
The @code{fts()} function provides a hook to the C library @code{fts()}
routines for traversing file hierarchies. Instead of returning data
-about one file at a time in a stream, it fills in a multi-dimensional
+about one file at a time in a stream, it fills in a multidimensional
array with data about each file and directory encountered in the requested
hierarchies.
@@ -31597,7 +31597,7 @@ be more comfortable to use from an @command{awk} program. This includes the
lack of a comparison function, since @command{gawk} already provides
powerful array sorting facilities. While an @code{fts_read()}-like
interface could have been provided, this felt less natural than simply
-creating a multi-dimensional array to represent the file hierarchy and
+creating a multidimensional array to represent the file hierarchy and
its information.
@end quotation
@@ -32255,7 +32255,7 @@ Multiple @code{BEGIN} and @code{END} rules
@item
Multidimensional arrays
-(@pxref{Multi-dimensional}).
+(@pxref{Multidimensional}).
@end itemize
@c ENDOFRANGE gawkv1
@@ -33067,6 +33067,10 @@ The modifications to convert @command{gawk}
into a byte-code interpreter, including the debugger.
@item
+The addition of true multidimensional arrays.
+@ref{Arrays of Arrays}.
+
+@item
The additional modifications for support of arbitrary precision arithmetic.
@item
@@ -33079,6 +33083,10 @@ into one, for the 4.1 release.
@item
Improved array internals for arrays indexed by integers.
+
+@item
+The improved array sorting features were driven by John together
+with Pat Rankin.
@end itemize
@item
@@ -33297,12 +33305,20 @@ The @command{troff} source for a manual page describing @command{gawk}.
This is distributed for the convenience of Unix users.
@cindex Texinfo
-@item doc/gawk.texi
+@item doc/gawktexi.in
+@itemx doc/sidebar.awk
The Texinfo source file for this @value{DOCUMENT}.
-It should be processed with @TeX{}
-(via @command{texi2dvi} or @command{texi2pdf})
+It should be processed by @file{doc/sidebar.awk}
+before processing with @TeX{}
+It should be processed with
to produce a printed document, and
with @command{makeinfo} to produce an Info or HTML file.
+The @file{Makefile} takes care of this processing and produces
+printable output via @command{texi2dvi} or @command{texi2pdf}.
+
+@item doc/gawk.texi
+The file produced after processing @file{gawktexi.in}
+with @file{sidebar.awk}.
@item doc/gawk.info
The generated Info file for this @value{DOCUMENT}.
@@ -33341,6 +33357,7 @@ the @file{Makefile.in} files used by @command{autoconf} and
@item Makefile.in
@itemx aclocal.m4
+@itemx config.guess
@itemx configh.in
@itemx configure.ac
@itemx configure
@@ -35204,7 +35221,7 @@ in order to loop over all the element in an easy fashion for C code.
@item
The ability to create arrays (including @command{gawk}'s true
-multi-dimensional arrays).
+multidimensional arrays).
@end itemize
@end itemize
@@ -37690,6 +37707,7 @@ Consistency issues:
Use MS-Windows not MS Windows
Use MS-DOS not MS-DOS
Use an empty set of parentheses after built-in and awk function names.
+ Use "multiFOO" without a hyphen.
Date: Wed, 13 Apr 94 15:20:52 -0400
From: rms@gnu.org (Richard Stallman)