summaryrefslogtreecommitdiff
path: root/doc/gawk.info
diff options
context:
space:
mode:
Diffstat (limited to 'doc/gawk.info')
-rw-r--r--doc/gawk.info1087
1 files changed, 546 insertions, 541 deletions
diff --git a/doc/gawk.info b/doc/gawk.info
index f63c62ce..8a26992f 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -14,7 +14,7 @@ Free Software Foundation, Inc.
This is Edition 4.1 of `GAWK: Effective AWK Programming: A User's
-Guide for GNU Awk', for the 4.1.0 (or later) version of the GNU
+Guide for GNU Awk', for the 4.1.1 (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
@@ -45,7 +45,7 @@ Free Software Foundation, Inc.
This is Edition 4.1 of `GAWK: Effective AWK Programming: A User's
-Guide for GNU Awk', for the 4.1.0 (or later) version of the GNU
+Guide for GNU Awk', for the 4.1.1 (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
@@ -583,7 +583,8 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
version of `awk'.
* POSIX/GNU:: The extensions in `gawk' not
in POSIX `awk'.
-* Feature History:: The history of the features in `gawk'.
+* Feature History:: The history of the features in
+ `gawk'.
* Common Extensions:: Common Extensions Summary.
* Ranges and Locales:: How locales used to affect regexp
ranges.
@@ -9954,7 +9955,7 @@ with a pound sign (`#').
the `delete' statement with the `SYMTAB' array.
You may use an index for `SYMTAB' that is not a predefined
- identifer:
+ identifier:
SYMTAB["xxx"] = 5
print SYMTAB["xxx"]
@@ -12611,7 +12612,7 @@ of Arrays::).
traversing a multidimensional array: you can test if an element is
itself an array or not. The second is inside the body of a
user-defined function (not discussed yet; *note User-defined::), to
-test if a paramater is an array or not.
+test if a parameter is an array or not.
Note, however, that using `isarray()' at the global level to test
variables makes no sense. Since you are the one writing the program, you
@@ -21172,11 +21173,15 @@ need it.
arbitrary precision arithmetic. The easiest way to find out is to look
at the output of the following command:
- $ gawk --version
- -| GNU Awk 4.1.0, API: 1.0 (GNU MPFR 3.1.0-p3, GNU MP 5.0.2)
- -| Copyright (C) 1989, 1991-2013 Free Software Foundation.
+ $ ./gawk --version
+ -| GNU Awk 4.1.1, API: 1.1 (GNU MPFR 3.1.0-p3, GNU MP 5.0.2)
+ -| Copyright (C) 1989, 1991-2014 Free Software Foundation.
...
+(You may see different version numbers than what's shown here. That's
+OK; what's important is to see that GNU MPFR and GNU MP are listed in
+the output.)
+
`gawk' uses the GNU MPFR (http://www.mpfr.org) and GNU MP
(http://gmplib.org) (GMP) libraries for arbitrary precision arithmetic
on numbers. So if you do not see the names of these libraries in the
@@ -26046,7 +26051,7 @@ There are three ways to get GNU software:
supported. If you have the `wget' program, you can use a command
like the following:
- wget http://ftp.gnu.org/gnu/gawk/gawk-4.1.0.tar.gz
+ wget http://ftp.gnu.org/gnu/gawk/gawk-4.1.1.tar.gz
The GNU software archive is mirrored around the world. The
up-to-date list of mirror sites is available from the main FSF web site
@@ -26065,26 +26070,26 @@ compression programs: `gzip', `bzip2', and `xz'. For simplicity, the
rest of these instructions assume you are using the one compressed with
the GNU Zip program, `gzip'.
- Once you have the distribution (for example, `gawk-4.1.0.tar.gz'),
+ Once you have the distribution (for example, `gawk-4.1.1.tar.gz'),
use `gzip' to expand the file and then use `tar' to extract it. You
can use the following pipeline to produce the `gawk' distribution:
# Under System V, add 'o' to the tar options
- gzip -d -c gawk-4.1.0.tar.gz | tar -xvpf -
+ gzip -d -c gawk-4.1.1.tar.gz | tar -xvpf -
On a system with GNU `tar', you can let `tar' do the decompression
for you:
- tar -xvpzf gawk-4.1.0.tar.gz
+ tar -xvpzf gawk-4.1.1.tar.gz
-Extracting the archive creates a directory named `gawk-4.1.0' in the
+Extracting the archive creates a directory named `gawk-4.1.1' in the
current directory.
The distribution file name is of the form `gawk-V.R.P.tar.gz'. The
V represents the major version of `gawk', the R represents the current
release of version V, and the P represents a "patch level", meaning
that minor bugs have been fixed in the release. The current patch
-level is 0, but when retrieving distributions, you should get the
+level is 1, but when retrieving distributions, you should get the
version with the highest version, release, and patch level. (Note,
however, that patch levels greater than or equal to 70 denote "beta" or
nonproduction software; you might not want to retrieve such a version
@@ -26294,7 +26299,7 @@ Unix-derived systems, GNU/Linux, BSD-based systems, and the Cygwin
environment for MS-Windows.
After you have extracted the `gawk' distribution, `cd' to
-`gawk-4.1.0'. Like most GNU software, `gawk' is configured
+`gawk-4.1.1'. Like most GNU software, `gawk' is configured
automatically for your system by running the `configure' program. This
program is a Bourne shell script that is generated automatically using
GNU `autoconf'. (The `autoconf' software is described fully starting
@@ -26717,8 +26722,8 @@ GNU tools, such as Bash, the GNU Compiler Collection (GCC), GNU Make,
and other GNU programs. Compilation and installation for Cygwin is the
same as for a Unix system:
- tar -xvpzf gawk-4.1.0.tar.gz
- cd gawk-4.1.0
+ tar -xvpzf gawk-4.1.1.tar.gz
+ cd gawk-4.1.1
./configure
make
@@ -33089,529 +33094,529 @@ Index

Tag Table:
Node: Top1292
-Node: Foreword40781
-Node: Preface45126
-Ref: Preface-Footnote-148179
-Ref: Preface-Footnote-248275
-Node: History48507
-Node: Names50881
-Ref: Names-Footnote-152358
-Node: This Manual52430
-Ref: This Manual-Footnote-158204
-Node: Conventions58304
-Node: Manual History60460
-Ref: Manual History-Footnote-163908
-Ref: Manual History-Footnote-263949
-Node: How To Contribute64023
-Node: Acknowledgments65167
-Node: Getting Started69361
-Node: Running gawk71740
-Node: One-shot72926
-Node: Read Terminal74151
-Ref: Read Terminal-Footnote-175801
-Ref: Read Terminal-Footnote-276077
-Node: Long76248
-Node: Executable Scripts77624
-Ref: Executable Scripts-Footnote-179457
-Ref: Executable Scripts-Footnote-279559
-Node: Comments80106
-Node: Quoting82573
-Node: DOS Quoting87196
-Node: Sample Data Files87871
-Node: Very Simple90386
-Node: Two Rules95037
-Node: More Complex96935
-Ref: More Complex-Footnote-199865
-Node: Statements/Lines99950
-Ref: Statements/Lines-Footnote-1104413
-Node: Other Features104678
-Node: When105606
-Node: Invoking Gawk107753
-Node: Command Line109216
-Node: Options109999
-Ref: Options-Footnote-1125377
-Node: Other Arguments125402
-Node: Naming Standard Input128060
-Node: Environment Variables129154
-Node: AWKPATH Variable129712
-Ref: AWKPATH Variable-Footnote-1132493
-Ref: AWKPATH Variable-Footnote-2132538
-Node: AWKLIBPATH Variable132798
-Node: Other Environment Variables133516
-Node: Exit Status136479
-Node: Include Files137154
-Node: Loading Shared Libraries140723
-Node: Obsolete142087
-Node: Undocumented142784
-Node: Regexp143026
-Node: Regexp Usage144415
-Node: Escape Sequences146440
-Node: Regexp Operators152109
-Ref: Regexp Operators-Footnote-1159489
-Ref: Regexp Operators-Footnote-2159636
-Node: Bracket Expressions159734
-Ref: table-char-classes161624
-Node: GNU Regexp Operators164147
-Node: Case-sensitivity167870
-Ref: Case-sensitivity-Footnote-1170838
-Ref: Case-sensitivity-Footnote-2171073
-Node: Leftmost Longest171181
-Node: Computed Regexps172382
-Node: Reading Files175719
-Node: Records177721
-Ref: Records-Footnote-1187244
-Node: Fields187281
-Ref: Fields-Footnote-1190237
-Node: Nonconstant Fields190323
-Node: Changing Fields192529
-Node: Field Separators198488
-Node: Default Field Splitting201190
-Node: Regexp Field Splitting202307
-Node: Single Character Fields205649
-Node: Command Line Field Separator206708
-Node: Full Line Fields210050
-Ref: Full Line Fields-Footnote-1210558
-Node: Field Splitting Summary210604
-Ref: Field Splitting Summary-Footnote-1213703
-Node: Constant Size213804
-Node: Splitting By Content218411
-Ref: Splitting By Content-Footnote-1222160
-Node: Multiple Line222200
-Ref: Multiple Line-Footnote-1228047
-Node: Getline228226
-Node: Plain Getline230442
-Node: Getline/Variable232537
-Node: Getline/File233684
-Node: Getline/Variable/File235025
-Ref: Getline/Variable/File-Footnote-1236624
-Node: Getline/Pipe236711
-Node: Getline/Variable/Pipe239410
-Node: Getline/Coprocess240517
-Node: Getline/Variable/Coprocess241769
-Node: Getline Notes242506
-Node: Getline Summary245293
-Ref: table-getline-variants245701
-Node: Read Timeout246613
-Ref: Read Timeout-Footnote-1250354
-Node: Command line directories250411
-Node: Printing251041
-Node: Print252672
-Node: Print Examples254009
-Node: Output Separators256793
-Node: OFMT258809
-Node: Printf260167
-Node: Basic Printf261073
-Node: Control Letters262612
-Node: Format Modifiers266424
-Node: Printf Examples272433
-Node: Redirection275145
-Node: Special Files282119
-Node: Special FD282652
-Ref: Special FD-Footnote-1286277
-Node: Special Network286351
-Node: Special Caveats287201
-Node: Close Files And Pipes287997
-Ref: Close Files And Pipes-Footnote-1294980
-Ref: Close Files And Pipes-Footnote-2295128
-Node: Expressions295278
-Node: Values296410
-Node: Constants297086
-Node: Scalar Constants297766
-Ref: Scalar Constants-Footnote-1298625
-Node: Nondecimal-numbers298807
-Node: Regexp Constants301807
-Node: Using Constant Regexps302282
-Node: Variables305337
-Node: Using Variables305992
-Node: Assignment Options307716
-Node: Conversion309591
-Ref: table-locale-affects315091
-Ref: Conversion-Footnote-1315715
-Node: All Operators315824
-Node: Arithmetic Ops316454
-Node: Concatenation318959
-Ref: Concatenation-Footnote-1321747
-Node: Assignment Ops321867
-Ref: table-assign-ops326855
-Node: Increment Ops328186
-Node: Truth Values and Conditions331620
-Node: Truth Values332703
-Node: Typing and Comparison333752
-Node: Variable Typing334545
-Ref: Variable Typing-Footnote-1338442
-Node: Comparison Operators338564
-Ref: table-relational-ops338974
-Node: POSIX String Comparison342522
-Ref: POSIX String Comparison-Footnote-1343478
-Node: Boolean Ops343616
-Ref: Boolean Ops-Footnote-1347686
-Node: Conditional Exp347777
-Node: Function Calls349509
-Node: Precedence353103
-Node: Locales356772
-Node: Patterns and Actions357861
-Node: Pattern Overview358915
-Node: Regexp Patterns360584
-Node: Expression Patterns361127
-Node: Ranges364908
-Node: BEGIN/END368012
-Node: Using BEGIN/END368774
-Ref: Using BEGIN/END-Footnote-1371510
-Node: I/O And BEGIN/END371616
-Node: BEGINFILE/ENDFILE373898
-Node: Empty376812
-Node: Using Shell Variables377129
-Node: Action Overview379414
-Node: Statements381771
-Node: If Statement383625
-Node: While Statement385124
-Node: Do Statement387168
-Node: For Statement388324
-Node: Switch Statement391476
-Node: Break Statement393630
-Node: Continue Statement395620
-Node: Next Statement397413
-Node: Nextfile Statement399803
-Node: Exit Statement402458
-Node: Built-in Variables404874
-Node: User-modified405969
-Ref: User-modified-Footnote-1414327
-Node: Auto-set414389
-Ref: Auto-set-Footnote-1427453
-Ref: Auto-set-Footnote-2427658
-Node: ARGC and ARGV427714
-Node: Arrays431568
-Node: Array Basics433073
-Node: Array Intro433899
-Node: Reference to Elements438216
-Node: Assigning Elements440486
-Node: Array Example440977
-Node: Scanning an Array442709
-Node: Controlling Scanning445023
-Ref: Controlling Scanning-Footnote-1450110
-Node: Delete450426
-Ref: Delete-Footnote-1453191
-Node: Numeric Array Subscripts453248
-Node: Uninitialized Subscripts455431
-Node: Multidimensional457058
-Node: Multiscanning460151
-Node: Arrays of Arrays461740
-Node: Functions466380
-Node: Built-in467199
-Node: Calling Built-in468277
-Node: Numeric Functions470265
-Ref: Numeric Functions-Footnote-1474097
-Ref: Numeric Functions-Footnote-2474454
-Ref: Numeric Functions-Footnote-3474502
-Node: String Functions474771
-Ref: String Functions-Footnote-1497729
-Ref: String Functions-Footnote-2497858
-Ref: String Functions-Footnote-3498106
-Node: Gory Details498193
-Ref: table-sub-escapes499872
-Ref: table-sub-posix-92501226
-Ref: table-sub-proposed502577
-Ref: table-posix-sub503931
-Ref: table-gensub-escapes505476
-Ref: Gory Details-Footnote-1506652
-Ref: Gory Details-Footnote-2506703
-Node: I/O Functions506854
-Ref: I/O Functions-Footnote-1513844
-Node: Time Functions513991
-Ref: Time Functions-Footnote-1524974
-Ref: Time Functions-Footnote-2525042
-Ref: Time Functions-Footnote-3525200
-Ref: Time Functions-Footnote-4525311
-Ref: Time Functions-Footnote-5525423
-Ref: Time Functions-Footnote-6525650
-Node: Bitwise Functions525916
-Ref: table-bitwise-ops526478
-Ref: Bitwise Functions-Footnote-1530699
-Node: Type Functions530883
-Node: I18N Functions532034
-Node: User-defined533661
-Node: Definition Syntax534465
-Ref: Definition Syntax-Footnote-1539379
-Node: Function Example539448
-Ref: Function Example-Footnote-1542097
-Node: Function Caveats542119
-Node: Calling A Function542637
-Node: Variable Scope543592
-Node: Pass By Value/Reference546555
-Node: Return Statement550063
-Node: Dynamic Typing553044
-Node: Indirect Calls553975
-Node: Library Functions563662
-Ref: Library Functions-Footnote-1567175
-Ref: Library Functions-Footnote-2567318
-Node: Library Names567489
-Ref: Library Names-Footnote-1570962
-Ref: Library Names-Footnote-2571182
-Node: General Functions571268
-Node: Strtonum Function572296
-Node: Assert Function575226
-Node: Round Function578552
-Node: Cliff Random Function580093
-Node: Ordinal Functions581109
-Ref: Ordinal Functions-Footnote-1584186
-Ref: Ordinal Functions-Footnote-2584438
-Node: Join Function584649
-Ref: Join Function-Footnote-1586420
-Node: Getlocaltime Function586620
-Node: Readfile Function590361
-Node: Data File Management592200
-Node: Filetrans Function592832
-Node: Rewind Function596901
-Node: File Checking598288
-Node: Empty Files599382
-Node: Ignoring Assigns601612
-Node: Getopt Function603166
-Ref: Getopt Function-Footnote-1614469
-Node: Passwd Functions614672
-Ref: Passwd Functions-Footnote-1623650
-Node: Group Functions623738
-Node: Walking Arrays631822
-Node: Sample Programs633958
-Node: Running Examples634632
-Node: Clones635360
-Node: Cut Program636584
-Node: Egrep Program646435
-Ref: Egrep Program-Footnote-1654208
-Node: Id Program654318
-Node: Split Program657967
-Ref: Split Program-Footnote-1661486
-Node: Tee Program661614
-Node: Uniq Program664417
-Node: Wc Program671846
-Ref: Wc Program-Footnote-1676112
-Ref: Wc Program-Footnote-2676312
-Node: Miscellaneous Programs676404
-Node: Dupword Program677592
-Node: Alarm Program679623
-Node: Translate Program684430
-Ref: Translate Program-Footnote-1688817
-Ref: Translate Program-Footnote-2689065
-Node: Labels Program689199
-Ref: Labels Program-Footnote-1692570
-Node: Word Sorting692654
-Node: History Sorting696538
-Node: Extract Program698377
-Ref: Extract Program-Footnote-1705880
-Node: Simple Sed706008
-Node: Igawk Program709070
-Ref: Igawk Program-Footnote-1724227
-Ref: Igawk Program-Footnote-2724428
-Node: Anagram Program724566
-Node: Signature Program727634
-Node: Advanced Features728734
-Node: Nondecimal Data730620
-Node: Array Sorting732203
-Node: Controlling Array Traversal732900
-Node: Array Sorting Functions741184
-Ref: Array Sorting Functions-Footnote-1745053
-Node: Two-way I/O745247
-Ref: Two-way I/O-Footnote-1750679
-Node: TCP/IP Networking750761
-Node: Profiling753605
-Node: Internationalization761108
-Node: I18N and L10N762533
-Node: Explaining gettext763219
-Ref: Explaining gettext-Footnote-1768287
-Ref: Explaining gettext-Footnote-2768471
-Node: Programmer i18n768636
-Node: Translator i18n772838
-Node: String Extraction773632
-Ref: String Extraction-Footnote-1774593
-Node: Printf Ordering774679
-Ref: Printf Ordering-Footnote-1777461
-Node: I18N Portability777525
-Ref: I18N Portability-Footnote-1779974
-Node: I18N Example780037
-Ref: I18N Example-Footnote-1782675
-Node: Gawk I18N782747
-Node: Debugger783368
-Node: Debugging784339
-Node: Debugging Concepts784772
-Node: Debugging Terms786628
-Node: Awk Debugging789225
-Node: Sample Debugging Session790117
-Node: Debugger Invocation790637
-Node: Finding The Bug791970
-Node: List of Debugger Commands798457
-Node: Breakpoint Control799791
-Node: Debugger Execution Control803455
-Node: Viewing And Changing Data806815
-Node: Execution Stack810171
-Node: Debugger Info811638
-Node: Miscellaneous Debugger Commands815620
-Node: Readline Support820796
-Node: Limitations821627
-Node: Arbitrary Precision Arithmetic823879
-Ref: Arbitrary Precision Arithmetic-Footnote-1825528
-Node: General Arithmetic825676
-Node: Floating Point Issues827396
-Node: String Conversion Precision828277
-Ref: String Conversion Precision-Footnote-1829982
-Node: Unexpected Results830091
-Node: POSIX Floating Point Problems832244
-Ref: POSIX Floating Point Problems-Footnote-1836069
-Node: Integer Programming836107
-Node: Floating-point Programming837846
-Ref: Floating-point Programming-Footnote-1844177
-Ref: Floating-point Programming-Footnote-2844447
-Node: Floating-point Representation844711
-Node: Floating-point Context845876
-Ref: table-ieee-formats846715
-Node: Rounding Mode848099
-Ref: table-rounding-modes848578
-Ref: Rounding Mode-Footnote-1851593
-Node: Gawk and MPFR851772
-Node: Arbitrary Precision Floats853027
-Ref: Arbitrary Precision Floats-Footnote-1855470
-Node: Setting Precision855786
-Ref: table-predefined-precision-strings856472
-Node: Setting Rounding Mode858617
-Ref: table-gawk-rounding-modes859021
-Node: Floating-point Constants860208
-Node: Changing Precision861637
-Ref: Changing Precision-Footnote-1863034
-Node: Exact Arithmetic863208
-Node: Arbitrary Precision Integers866346
-Ref: Arbitrary Precision Integers-Footnote-1869361
-Node: Dynamic Extensions869508
-Node: Extension Intro870966
-Node: Plugin License872231
-Node: Extension Mechanism Outline872916
-Ref: load-extension873333
-Ref: load-new-function874811
-Ref: call-new-function875806
-Node: Extension API Description877821
-Node: Extension API Functions Introduction879108
-Node: General Data Types884035
-Ref: General Data Types-Footnote-1889730
-Node: Requesting Values890029
-Ref: table-value-types-returned890766
-Node: Memory Allocation Functions891720
-Ref: Memory Allocation Functions-Footnote-1894466
-Node: Constructor Functions894562
-Node: Registration Functions896320
-Node: Extension Functions897005
-Node: Exit Callback Functions899307
-Node: Extension Version String900556
-Node: Input Parsers901206
-Node: Output Wrappers910963
-Node: Two-way processors915473
-Node: Printing Messages917681
-Ref: Printing Messages-Footnote-1918758
-Node: Updating `ERRNO'918910
-Node: Accessing Parameters919649
-Node: Symbol Table Access920879
-Node: Symbol table by name921393
-Node: Symbol table by cookie923369
-Ref: Symbol table by cookie-Footnote-1927501
-Node: Cached values927564
-Ref: Cached values-Footnote-1931054
-Node: Array Manipulation931145
-Ref: Array Manipulation-Footnote-1932243
-Node: Array Data Types932282
-Ref: Array Data Types-Footnote-1934985
-Node: Array Functions935077
-Node: Flattening Arrays938913
-Node: Creating Arrays945765
-Node: Extension API Variables950490
-Node: Extension Versioning951126
-Node: Extension API Informational Variables953027
-Node: Extension API Boilerplate954113
-Node: Finding Extensions957917
-Node: Extension Example958477
-Node: Internal File Description959207
-Node: Internal File Ops963298
-Ref: Internal File Ops-Footnote-1974807
-Node: Using Internal File Ops974947
-Ref: Using Internal File Ops-Footnote-1977300
-Node: Extension Samples977566
-Node: Extension Sample File Functions979090
-Node: Extension Sample Fnmatch987575
-Node: Extension Sample Fork989344
-Node: Extension Sample Inplace990557
-Node: Extension Sample Ord992335
-Node: Extension Sample Readdir993171
-Node: Extension Sample Revout994703
-Node: Extension Sample Rev2way995296
-Node: Extension Sample Read write array995986
-Node: Extension Sample Readfile997869
-Node: Extension Sample API Tests998969
-Node: Extension Sample Time999494
-Node: gawkextlib1000858
-Node: Language History1003639
-Node: V7/SVR3.11005232
-Node: SVR41007552
-Node: POSIX1008994
-Node: BTL1010380
-Node: POSIX/GNU1011114
-Node: Feature History1016713
-Node: Common Extensions1029689
-Node: Ranges and Locales1031001
-Ref: Ranges and Locales-Footnote-11035618
-Ref: Ranges and Locales-Footnote-21035645
-Ref: Ranges and Locales-Footnote-31035879
-Node: Contributors1036100
-Node: Installation1041481
-Node: Gawk Distribution1042375
-Node: Getting1042859
-Node: Extracting1043685
-Node: Distribution contents1045377
-Node: Unix Installation1051082
-Node: Quick Installation1051699
-Node: Additional Configuration Options1054145
-Node: Configuration Philosophy1055881
-Node: Non-Unix Installation1058235
-Node: PC Installation1058693
-Node: PC Binary Installation1059992
-Node: PC Compiling1061840
-Node: PC Testing1064784
-Node: PC Using1065960
-Node: Cygwin1070128
-Node: MSYS1070937
-Node: VMS Installation1071451
-Node: VMS Compilation1072215
-Ref: VMS Compilation-Footnote-11073467
-Node: VMS Dynamic Extensions1073525
-Node: VMS Installation Details1074898
-Node: VMS Running1077149
-Node: VMS GNV1079983
-Node: VMS Old Gawk1080706
-Node: Bugs1081176
-Node: Other Versions1085094
-Node: Notes1091178
-Node: Compatibility Mode1091978
-Node: Additions1092761
-Node: Accessing The Source1093688
-Node: Adding Code1095128
-Node: New Ports1101173
-Node: Derived Files1105308
-Ref: Derived Files-Footnote-11110629
-Ref: Derived Files-Footnote-21110663
-Ref: Derived Files-Footnote-31111263
-Node: Future Extensions1111361
-Node: Implementation Limitations1111944
-Node: Extension Design1113196
-Node: Old Extension Problems1114350
-Ref: Old Extension Problems-Footnote-11115858
-Node: Extension New Mechanism Goals1115915
-Ref: Extension New Mechanism Goals-Footnote-11119280
-Node: Extension Other Design Decisions1119466
-Node: Extension Future Growth1121572
-Node: Old Extension Mechanism1122408
-Node: Basic Concepts1124148
-Node: Basic High Level1124829
-Ref: figure-general-flow1125101
-Ref: figure-process-flow1125700
-Ref: Basic High Level-Footnote-11128929
-Node: Basic Data Typing1129114
-Node: Glossary1132469
-Node: Copying1157700
-Node: GNU Free Documentation License1195256
-Node: Index1220392
+Node: Foreword40821
+Node: Preface45166
+Ref: Preface-Footnote-148219
+Ref: Preface-Footnote-248315
+Node: History48547
+Node: Names50921
+Ref: Names-Footnote-152398
+Node: This Manual52470
+Ref: This Manual-Footnote-158244
+Node: Conventions58344
+Node: Manual History60500
+Ref: Manual History-Footnote-163948
+Ref: Manual History-Footnote-263989
+Node: How To Contribute64063
+Node: Acknowledgments65207
+Node: Getting Started69401
+Node: Running gawk71780
+Node: One-shot72966
+Node: Read Terminal74191
+Ref: Read Terminal-Footnote-175841
+Ref: Read Terminal-Footnote-276117
+Node: Long76288
+Node: Executable Scripts77664
+Ref: Executable Scripts-Footnote-179497
+Ref: Executable Scripts-Footnote-279599
+Node: Comments80146
+Node: Quoting82613
+Node: DOS Quoting87236
+Node: Sample Data Files87911
+Node: Very Simple90426
+Node: Two Rules95077
+Node: More Complex96975
+Ref: More Complex-Footnote-199905
+Node: Statements/Lines99990
+Ref: Statements/Lines-Footnote-1104453
+Node: Other Features104718
+Node: When105646
+Node: Invoking Gawk107793
+Node: Command Line109256
+Node: Options110039
+Ref: Options-Footnote-1125417
+Node: Other Arguments125442
+Node: Naming Standard Input128100
+Node: Environment Variables129194
+Node: AWKPATH Variable129752
+Ref: AWKPATH Variable-Footnote-1132533
+Ref: AWKPATH Variable-Footnote-2132578
+Node: AWKLIBPATH Variable132838
+Node: Other Environment Variables133556
+Node: Exit Status136519
+Node: Include Files137194
+Node: Loading Shared Libraries140763
+Node: Obsolete142127
+Node: Undocumented142824
+Node: Regexp143066
+Node: Regexp Usage144455
+Node: Escape Sequences146480
+Node: Regexp Operators152149
+Ref: Regexp Operators-Footnote-1159529
+Ref: Regexp Operators-Footnote-2159676
+Node: Bracket Expressions159774
+Ref: table-char-classes161664
+Node: GNU Regexp Operators164187
+Node: Case-sensitivity167910
+Ref: Case-sensitivity-Footnote-1170878
+Ref: Case-sensitivity-Footnote-2171113
+Node: Leftmost Longest171221
+Node: Computed Regexps172422
+Node: Reading Files175759
+Node: Records177761
+Ref: Records-Footnote-1187284
+Node: Fields187321
+Ref: Fields-Footnote-1190277
+Node: Nonconstant Fields190363
+Node: Changing Fields192569
+Node: Field Separators198528
+Node: Default Field Splitting201230
+Node: Regexp Field Splitting202347
+Node: Single Character Fields205689
+Node: Command Line Field Separator206748
+Node: Full Line Fields210090
+Ref: Full Line Fields-Footnote-1210598
+Node: Field Splitting Summary210644
+Ref: Field Splitting Summary-Footnote-1213743
+Node: Constant Size213844
+Node: Splitting By Content218451
+Ref: Splitting By Content-Footnote-1222200
+Node: Multiple Line222240
+Ref: Multiple Line-Footnote-1228087
+Node: Getline228266
+Node: Plain Getline230482
+Node: Getline/Variable232577
+Node: Getline/File233724
+Node: Getline/Variable/File235065
+Ref: Getline/Variable/File-Footnote-1236664
+Node: Getline/Pipe236751
+Node: Getline/Variable/Pipe239450
+Node: Getline/Coprocess240557
+Node: Getline/Variable/Coprocess241809
+Node: Getline Notes242546
+Node: Getline Summary245333
+Ref: table-getline-variants245741
+Node: Read Timeout246653
+Ref: Read Timeout-Footnote-1250394
+Node: Command line directories250451
+Node: Printing251081
+Node: Print252712
+Node: Print Examples254049
+Node: Output Separators256833
+Node: OFMT258849
+Node: Printf260207
+Node: Basic Printf261113
+Node: Control Letters262652
+Node: Format Modifiers266464
+Node: Printf Examples272473
+Node: Redirection275185
+Node: Special Files282159
+Node: Special FD282692
+Ref: Special FD-Footnote-1286317
+Node: Special Network286391
+Node: Special Caveats287241
+Node: Close Files And Pipes288037
+Ref: Close Files And Pipes-Footnote-1295020
+Ref: Close Files And Pipes-Footnote-2295168
+Node: Expressions295318
+Node: Values296450
+Node: Constants297126
+Node: Scalar Constants297806
+Ref: Scalar Constants-Footnote-1298665
+Node: Nondecimal-numbers298847
+Node: Regexp Constants301847
+Node: Using Constant Regexps302322
+Node: Variables305377
+Node: Using Variables306032
+Node: Assignment Options307756
+Node: Conversion309631
+Ref: table-locale-affects315131
+Ref: Conversion-Footnote-1315755
+Node: All Operators315864
+Node: Arithmetic Ops316494
+Node: Concatenation318999
+Ref: Concatenation-Footnote-1321787
+Node: Assignment Ops321907
+Ref: table-assign-ops326895
+Node: Increment Ops328226
+Node: Truth Values and Conditions331660
+Node: Truth Values332743
+Node: Typing and Comparison333792
+Node: Variable Typing334585
+Ref: Variable Typing-Footnote-1338482
+Node: Comparison Operators338604
+Ref: table-relational-ops339014
+Node: POSIX String Comparison342562
+Ref: POSIX String Comparison-Footnote-1343518
+Node: Boolean Ops343656
+Ref: Boolean Ops-Footnote-1347726
+Node: Conditional Exp347817
+Node: Function Calls349549
+Node: Precedence353143
+Node: Locales356812
+Node: Patterns and Actions357901
+Node: Pattern Overview358955
+Node: Regexp Patterns360624
+Node: Expression Patterns361167
+Node: Ranges364948
+Node: BEGIN/END368052
+Node: Using BEGIN/END368814
+Ref: Using BEGIN/END-Footnote-1371550
+Node: I/O And BEGIN/END371656
+Node: BEGINFILE/ENDFILE373938
+Node: Empty376852
+Node: Using Shell Variables377169
+Node: Action Overview379454
+Node: Statements381811
+Node: If Statement383665
+Node: While Statement385164
+Node: Do Statement387208
+Node: For Statement388364
+Node: Switch Statement391516
+Node: Break Statement393670
+Node: Continue Statement395660
+Node: Next Statement397453
+Node: Nextfile Statement399843
+Node: Exit Statement402498
+Node: Built-in Variables404914
+Node: User-modified406009
+Ref: User-modified-Footnote-1414367
+Node: Auto-set414429
+Ref: Auto-set-Footnote-1427494
+Ref: Auto-set-Footnote-2427699
+Node: ARGC and ARGV427755
+Node: Arrays431609
+Node: Array Basics433114
+Node: Array Intro433940
+Node: Reference to Elements438257
+Node: Assigning Elements440527
+Node: Array Example441018
+Node: Scanning an Array442750
+Node: Controlling Scanning445064
+Ref: Controlling Scanning-Footnote-1450151
+Node: Delete450467
+Ref: Delete-Footnote-1453232
+Node: Numeric Array Subscripts453289
+Node: Uninitialized Subscripts455472
+Node: Multidimensional457099
+Node: Multiscanning460192
+Node: Arrays of Arrays461781
+Node: Functions466421
+Node: Built-in467240
+Node: Calling Built-in468318
+Node: Numeric Functions470306
+Ref: Numeric Functions-Footnote-1474138
+Ref: Numeric Functions-Footnote-2474495
+Ref: Numeric Functions-Footnote-3474543
+Node: String Functions474812
+Ref: String Functions-Footnote-1497770
+Ref: String Functions-Footnote-2497899
+Ref: String Functions-Footnote-3498147
+Node: Gory Details498234
+Ref: table-sub-escapes499913
+Ref: table-sub-posix-92501267
+Ref: table-sub-proposed502618
+Ref: table-posix-sub503972
+Ref: table-gensub-escapes505517
+Ref: Gory Details-Footnote-1506693
+Ref: Gory Details-Footnote-2506744
+Node: I/O Functions506895
+Ref: I/O Functions-Footnote-1513885
+Node: Time Functions514032
+Ref: Time Functions-Footnote-1525015
+Ref: Time Functions-Footnote-2525083
+Ref: Time Functions-Footnote-3525241
+Ref: Time Functions-Footnote-4525352
+Ref: Time Functions-Footnote-5525464
+Ref: Time Functions-Footnote-6525691
+Node: Bitwise Functions525957
+Ref: table-bitwise-ops526519
+Ref: Bitwise Functions-Footnote-1530740
+Node: Type Functions530924
+Node: I18N Functions532075
+Node: User-defined533702
+Node: Definition Syntax534506
+Ref: Definition Syntax-Footnote-1539420
+Node: Function Example539489
+Ref: Function Example-Footnote-1542138
+Node: Function Caveats542160
+Node: Calling A Function542678
+Node: Variable Scope543633
+Node: Pass By Value/Reference546596
+Node: Return Statement550104
+Node: Dynamic Typing553085
+Node: Indirect Calls554016
+Node: Library Functions563703
+Ref: Library Functions-Footnote-1567216
+Ref: Library Functions-Footnote-2567359
+Node: Library Names567530
+Ref: Library Names-Footnote-1571003
+Ref: Library Names-Footnote-2571223
+Node: General Functions571309
+Node: Strtonum Function572337
+Node: Assert Function575267
+Node: Round Function578593
+Node: Cliff Random Function580134
+Node: Ordinal Functions581150
+Ref: Ordinal Functions-Footnote-1584227
+Ref: Ordinal Functions-Footnote-2584479
+Node: Join Function584690
+Ref: Join Function-Footnote-1586461
+Node: Getlocaltime Function586661
+Node: Readfile Function590402
+Node: Data File Management592241
+Node: Filetrans Function592873
+Node: Rewind Function596942
+Node: File Checking598329
+Node: Empty Files599423
+Node: Ignoring Assigns601653
+Node: Getopt Function603207
+Ref: Getopt Function-Footnote-1614510
+Node: Passwd Functions614713
+Ref: Passwd Functions-Footnote-1623691
+Node: Group Functions623779
+Node: Walking Arrays631863
+Node: Sample Programs633999
+Node: Running Examples634673
+Node: Clones635401
+Node: Cut Program636625
+Node: Egrep Program646476
+Ref: Egrep Program-Footnote-1654249
+Node: Id Program654359
+Node: Split Program658008
+Ref: Split Program-Footnote-1661527
+Node: Tee Program661655
+Node: Uniq Program664458
+Node: Wc Program671887
+Ref: Wc Program-Footnote-1676153
+Ref: Wc Program-Footnote-2676353
+Node: Miscellaneous Programs676445
+Node: Dupword Program677633
+Node: Alarm Program679664
+Node: Translate Program684471
+Ref: Translate Program-Footnote-1688858
+Ref: Translate Program-Footnote-2689106
+Node: Labels Program689240
+Ref: Labels Program-Footnote-1692611
+Node: Word Sorting692695
+Node: History Sorting696579
+Node: Extract Program698418
+Ref: Extract Program-Footnote-1705921
+Node: Simple Sed706049
+Node: Igawk Program709111
+Ref: Igawk Program-Footnote-1724268
+Ref: Igawk Program-Footnote-2724469
+Node: Anagram Program724607
+Node: Signature Program727675
+Node: Advanced Features728775
+Node: Nondecimal Data730661
+Node: Array Sorting732244
+Node: Controlling Array Traversal732941
+Node: Array Sorting Functions741225
+Ref: Array Sorting Functions-Footnote-1745094
+Node: Two-way I/O745288
+Ref: Two-way I/O-Footnote-1750720
+Node: TCP/IP Networking750802
+Node: Profiling753646
+Node: Internationalization761149
+Node: I18N and L10N762574
+Node: Explaining gettext763260
+Ref: Explaining gettext-Footnote-1768328
+Ref: Explaining gettext-Footnote-2768512
+Node: Programmer i18n768677
+Node: Translator i18n772879
+Node: String Extraction773673
+Ref: String Extraction-Footnote-1774634
+Node: Printf Ordering774720
+Ref: Printf Ordering-Footnote-1777502
+Node: I18N Portability777566
+Ref: I18N Portability-Footnote-1780015
+Node: I18N Example780078
+Ref: I18N Example-Footnote-1782716
+Node: Gawk I18N782788
+Node: Debugger783409
+Node: Debugging784380
+Node: Debugging Concepts784813
+Node: Debugging Terms786669
+Node: Awk Debugging789266
+Node: Sample Debugging Session790158
+Node: Debugger Invocation790678
+Node: Finding The Bug792011
+Node: List of Debugger Commands798498
+Node: Breakpoint Control799832
+Node: Debugger Execution Control803496
+Node: Viewing And Changing Data806856
+Node: Execution Stack810212
+Node: Debugger Info811679
+Node: Miscellaneous Debugger Commands815661
+Node: Readline Support820837
+Node: Limitations821668
+Node: Arbitrary Precision Arithmetic823920
+Ref: Arbitrary Precision Arithmetic-Footnote-1825569
+Node: General Arithmetic825717
+Node: Floating Point Issues827437
+Node: String Conversion Precision828318
+Ref: String Conversion Precision-Footnote-1830023
+Node: Unexpected Results830132
+Node: POSIX Floating Point Problems832285
+Ref: POSIX Floating Point Problems-Footnote-1836110
+Node: Integer Programming836148
+Node: Floating-point Programming837887
+Ref: Floating-point Programming-Footnote-1844218
+Ref: Floating-point Programming-Footnote-2844488
+Node: Floating-point Representation844752
+Node: Floating-point Context845917
+Ref: table-ieee-formats846756
+Node: Rounding Mode848140
+Ref: table-rounding-modes848619
+Ref: Rounding Mode-Footnote-1851634
+Node: Gawk and MPFR851813
+Node: Arbitrary Precision Floats853224
+Ref: Arbitrary Precision Floats-Footnote-1855667
+Node: Setting Precision855983
+Ref: table-predefined-precision-strings856669
+Node: Setting Rounding Mode858814
+Ref: table-gawk-rounding-modes859218
+Node: Floating-point Constants860405
+Node: Changing Precision861834
+Ref: Changing Precision-Footnote-1863231
+Node: Exact Arithmetic863405
+Node: Arbitrary Precision Integers866543
+Ref: Arbitrary Precision Integers-Footnote-1869558
+Node: Dynamic Extensions869705
+Node: Extension Intro871163
+Node: Plugin License872428
+Node: Extension Mechanism Outline873113
+Ref: load-extension873530
+Ref: load-new-function875008
+Ref: call-new-function876003
+Node: Extension API Description878018
+Node: Extension API Functions Introduction879305
+Node: General Data Types884232
+Ref: General Data Types-Footnote-1889927
+Node: Requesting Values890226
+Ref: table-value-types-returned890963
+Node: Memory Allocation Functions891917
+Ref: Memory Allocation Functions-Footnote-1894663
+Node: Constructor Functions894759
+Node: Registration Functions896517
+Node: Extension Functions897202
+Node: Exit Callback Functions899504
+Node: Extension Version String900753
+Node: Input Parsers901403
+Node: Output Wrappers911160
+Node: Two-way processors915670
+Node: Printing Messages917878
+Ref: Printing Messages-Footnote-1918955
+Node: Updating `ERRNO'919107
+Node: Accessing Parameters919846
+Node: Symbol Table Access921076
+Node: Symbol table by name921590
+Node: Symbol table by cookie923566
+Ref: Symbol table by cookie-Footnote-1927698
+Node: Cached values927761
+Ref: Cached values-Footnote-1931251
+Node: Array Manipulation931342
+Ref: Array Manipulation-Footnote-1932440
+Node: Array Data Types932479
+Ref: Array Data Types-Footnote-1935182
+Node: Array Functions935274
+Node: Flattening Arrays939110
+Node: Creating Arrays945962
+Node: Extension API Variables950687
+Node: Extension Versioning951323
+Node: Extension API Informational Variables953224
+Node: Extension API Boilerplate954310
+Node: Finding Extensions958114
+Node: Extension Example958674
+Node: Internal File Description959404
+Node: Internal File Ops963495
+Ref: Internal File Ops-Footnote-1975004
+Node: Using Internal File Ops975144
+Ref: Using Internal File Ops-Footnote-1977497
+Node: Extension Samples977763
+Node: Extension Sample File Functions979287
+Node: Extension Sample Fnmatch987772
+Node: Extension Sample Fork989541
+Node: Extension Sample Inplace990754
+Node: Extension Sample Ord992532
+Node: Extension Sample Readdir993368
+Node: Extension Sample Revout994900
+Node: Extension Sample Rev2way995493
+Node: Extension Sample Read write array996183
+Node: Extension Sample Readfile998066
+Node: Extension Sample API Tests999166
+Node: Extension Sample Time999691
+Node: gawkextlib1001055
+Node: Language History1003836
+Node: V7/SVR3.11005429
+Node: SVR41007749
+Node: POSIX1009191
+Node: BTL1010577
+Node: POSIX/GNU1011311
+Node: Feature History1016910
+Node: Common Extensions1029886
+Node: Ranges and Locales1031198
+Ref: Ranges and Locales-Footnote-11035815
+Ref: Ranges and Locales-Footnote-21035842
+Ref: Ranges and Locales-Footnote-31036076
+Node: Contributors1036297
+Node: Installation1041678
+Node: Gawk Distribution1042572
+Node: Getting1043056
+Node: Extracting1043882
+Node: Distribution contents1045574
+Node: Unix Installation1051279
+Node: Quick Installation1051896
+Node: Additional Configuration Options1054342
+Node: Configuration Philosophy1056078
+Node: Non-Unix Installation1058432
+Node: PC Installation1058890
+Node: PC Binary Installation1060189
+Node: PC Compiling1062037
+Node: PC Testing1064981
+Node: PC Using1066157
+Node: Cygwin1070325
+Node: MSYS1071134
+Node: VMS Installation1071648
+Node: VMS Compilation1072412
+Ref: VMS Compilation-Footnote-11073664
+Node: VMS Dynamic Extensions1073722
+Node: VMS Installation Details1075095
+Node: VMS Running1077346
+Node: VMS GNV1080180
+Node: VMS Old Gawk1080903
+Node: Bugs1081373
+Node: Other Versions1085291
+Node: Notes1091375
+Node: Compatibility Mode1092175
+Node: Additions1092958
+Node: Accessing The Source1093885
+Node: Adding Code1095325
+Node: New Ports1101370
+Node: Derived Files1105505
+Ref: Derived Files-Footnote-11110826
+Ref: Derived Files-Footnote-21110860
+Ref: Derived Files-Footnote-31111460
+Node: Future Extensions1111558
+Node: Implementation Limitations1112141
+Node: Extension Design1113393
+Node: Old Extension Problems1114547
+Ref: Old Extension Problems-Footnote-11116055
+Node: Extension New Mechanism Goals1116112
+Ref: Extension New Mechanism Goals-Footnote-11119477
+Node: Extension Other Design Decisions1119663
+Node: Extension Future Growth1121769
+Node: Old Extension Mechanism1122605
+Node: Basic Concepts1124345
+Node: Basic High Level1125026
+Ref: figure-general-flow1125298
+Ref: figure-process-flow1125897
+Ref: Basic High Level-Footnote-11129126
+Node: Basic Data Typing1129311
+Node: Glossary1132666
+Node: Copying1157897
+Node: GNU Free Documentation License1195453
+Node: Index1220589

End Tag Table