aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/ChangeLog5
-rw-r--r--doc/gawk.info1157
-rw-r--r--doc/gawk.texi34
-rw-r--r--doc/gawkinet.info6
-rw-r--r--doc/gawkinet.texi2
-rw-r--r--doc/gawktexi.in34
6 files changed, 624 insertions, 614 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 19278667..e16bf9e9 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2015-01-19 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkinet.texi: Fix capitalization in document title.
+ * gawktexi.in: Here we again: Starting on more O'Reilly fixes.
+
2014-12-26 Antonio Giovanni Colombo <azc100@gmail.com>
* gawktexi.in (Glossary): Really sort the items.
diff --git a/doc/gawk.info b/doc/gawk.info
index e501b297..376076d9 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -9,7 +9,7 @@ START-INFO-DIR-ENTRY
* awk: (gawk)Invoking gawk. Text scanning and processing.
END-INFO-DIR-ENTRY
- Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2014
+ Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2015
Free Software Foundation, Inc.
@@ -37,7 +37,7 @@ General Introduction
This file documents `awk', a program that you can use to select
particular records in a file and perform operations upon them.
- Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2014
+ Copyright (C) 1989, 1991, 1992, 1993, 1996-2005, 2007, 2009-2015
Free Software Foundation, Inc.
@@ -748,10 +748,10 @@ and associative arrays. Those looking for something new can try out
The programs in this book make clear that an AWK program is
typically much smaller and faster to develop than a counterpart written
-in C. Consequently, there is often a payoff to prototype an algorithm
-or design in AWK to get it running quickly and expose problems early.
-Often, the interpreted performance is adequate and the AWK prototype
-becomes the product.
+in C. Consequently, there is often a payoff to prototyping an
+algorithm or design in AWK to get it running quickly and expose
+problems early. Often, the interpreted performance is adequate and the
+AWK prototype becomes the product.
The new `pgawk' (profiling `gawk'), produces program execution
counts. I recently experimented with an algorithm that for n lines of
@@ -775,16 +775,16 @@ Foreword to the Fourth Edition
******************************
Some things don't change. Thirteen years ago I wrote: "If you use AWK
-or want to learn how, then read this book." True then and still true
+or want to learn how, then read this book." True then, and still true
today.
- Learning to use a programming language is more than mastering the
-syntax. One needs to acquire an understanding of how to use the
+ Learning to use a programming language is about more than mastering
+the syntax. One needs to acquire an understanding of how to use the
features of the language to solve practical programming problems. A
focus of this book is many examples that show how to use AWK.
Some things do change. Our computers are much faster and have more
-memory. Consequently, speed and storage inefficiencies of a high level
+memory. Consequently, speed and storage inefficiencies of a high-level
language matter less. Prototyping in AWK and then rewriting in C for
performance reasons happens less, because more often the prototype is
fast enough.
@@ -793,9 +793,9 @@ fast enough.
C++. With `gawk' 4.1 and later, you do not have to choose between
writing your program in AWK or in C/C++. You can write most of your
program in AWK and the aspects that require C/C++ capabilities can be
-written in C/C++ and then the pieces glued together when the `gawk'
+written in C/C++, and then the pieces glued together when the `gawk'
module loads the C/C++ module as a dynamic plug-in. *note Dynamic
-Extensions::, has all the details, and as expected, many examples to
+Extensions::, has all the details, and, as expected, many examples to
help you learn the ins and outs.
I enjoy programming in AWK and had fun (re)reading this book. I
@@ -834,7 +834,7 @@ So most of the time, we don't distinguish between `gawk' and other
* Validate data
- * Produce indexes and perform other document preparation tasks
+ * Produce indexes and perform other document-preparation tasks
* Experiment with algorithms that you can adapt later to other
computer languages
@@ -926,7 +926,7 @@ advice from Richard Stallman. John Woods contributed parts of the code
as well. In 1988 and 1989, David Trueman, with help from me,
thoroughly reworked `gawk' for compatibility with the newer `awk'.
Circa 1994, I became the primary maintainer. Current development
-focuses on bug fixes, performance improvements, standards compliance
+focuses on bug fixes, performance improvements, standards compliance,
and, occasionally, new features.
In May 1997, Ju"rgen Kahrs felt the need for network access from
@@ -938,10 +938,10 @@ the `gawk' distribution). His code finally became part of the main
John Haque rewrote the `gawk' internals, in the process providing an
`awk'-level debugger. This version became available as `gawk' version
-4.0, in 2011.
+4.0 in 2011.
- *Note Contributors::, for a full list of those who made important
-contributions to `gawk'.
+ *Note Contributors::, for a full list of those who have made
+important contributions to `gawk'.

File: gawk.info, Node: Names, Next: This Manual, Prev: History, Up: Preface
@@ -954,7 +954,7 @@ provided in *note Language History::. The language described in this
Info file is often referred to as "new `awk'." By analogy, the
original version of `awk' is referred to as "old `awk'."
- Today, on most systems, when you run the `awk' utility, you get some
+ Today, on most systems, when you run the `awk' utility you get some
version of new `awk'.(1) If your system's standard `awk' is the old
one, you will see something like this if you try the test program:
@@ -1014,9 +1014,9 @@ in *note Sample Programs::, should be of interest.
This Info file is split into several parts, as follows:
- * Part I describes the `awk' language and `gawk' program in detail.
- It starts with the basics, and continues through all of the
- features of `awk'. It contains the following chapters:
+ * Part I describes the `awk' language and the `gawk' program in
+ detail. It starts with the basics, and continues through all of
+ the features of `awk'. It contains the following chapters:
- *note Getting Started::, provides the essentials you need to
know to begin using `awk'.
@@ -1047,9 +1047,10 @@ in *note Sample Programs::, should be of interest.
`gawk' use.
- *note Arrays::, covers `awk''s one-and-only data structure:
- associative arrays. Deleting array elements and whole arrays
- is also described, as well as sorting arrays in `gawk'. It
- also describes how `gawk' provides arrays of arrays.
+ the associative array. Deleting array elements and whole
+ arrays is also described, as well as sorting arrays in
+ `gawk'. It also describes how `gawk' provides arrays of
+ arrays.
- *note Functions::, describes the built-in functions `awk' and
`gawk' provide, as well as how to define your own functions.
@@ -34454,559 +34455,559 @@ Index
Tag Table:
Node: Top1204
Node: Foreword342225
-Node: Foreword446667
-Node: Preface48189
-Ref: Preface-Footnote-151060
-Ref: Preface-Footnote-251167
-Ref: Preface-Footnote-351400
-Node: History51542
-Node: Names53888
-Ref: Names-Footnote-154982
-Node: This Manual55128
-Ref: This Manual-Footnote-161615
-Node: Conventions61715
-Node: Manual History64053
-Ref: Manual History-Footnote-167035
-Ref: Manual History-Footnote-267076
-Node: How To Contribute67150
-Node: Acknowledgments68279
-Node: Getting Started73084
-Node: Running gawk75517
-Node: One-shot76707
-Node: Read Terminal77955
-Node: Long79982
-Node: Executable Scripts81498
-Ref: Executable Scripts-Footnote-184287
-Node: Comments84390
-Node: Quoting86872
-Node: DOS Quoting92396
-Node: Sample Data Files93071
-Node: Very Simple95666
-Node: Two Rules100564
-Node: More Complex102450
-Node: Statements/Lines105312
-Ref: Statements/Lines-Footnote-1109767
-Node: Other Features110032
-Node: When110963
-Ref: When-Footnote-1112717
-Node: Intro Summary112782
-Node: Invoking Gawk113665
-Node: Command Line115179
-Node: Options115977
-Ref: Options-Footnote-1131781
-Ref: Options-Footnote-2132010
-Node: Other Arguments132035
-Node: Naming Standard Input134983
-Node: Environment Variables136076
-Node: AWKPATH Variable136634
-Ref: AWKPATH Variable-Footnote-1140047
-Ref: AWKPATH Variable-Footnote-2140092
-Node: AWKLIBPATH Variable140352
-Node: Other Environment Variables141608
-Node: Exit Status145096
-Node: Include Files145772
-Node: Loading Shared Libraries149369
-Node: Obsolete150796
-Node: Undocumented151493
-Node: Invoking Summary151760
-Node: Regexp153424
-Node: Regexp Usage154878
-Node: Escape Sequences156915
-Node: Regexp Operators163156
-Ref: Regexp Operators-Footnote-1170582
-Ref: Regexp Operators-Footnote-2170729
-Node: Bracket Expressions170827
-Ref: table-char-classes172842
-Node: Leftmost Longest175766
-Node: Computed Regexps177068
-Node: GNU Regexp Operators180465
-Node: Case-sensitivity184138
-Ref: Case-sensitivity-Footnote-1187023
-Ref: Case-sensitivity-Footnote-2187258
-Node: Regexp Summary187366
-Node: Reading Files188833
-Node: Records190927
-Node: awk split records191660
-Node: gawk split records196575
-Ref: gawk split records-Footnote-1201119
-Node: Fields201156
-Ref: Fields-Footnote-1203932
-Node: Nonconstant Fields204018
-Ref: Nonconstant Fields-Footnote-1206261
-Node: Changing Fields206465
-Node: Field Separators212394
-Node: Default Field Splitting215099
-Node: Regexp Field Splitting216216
-Node: Single Character Fields219566
-Node: Command Line Field Separator220625
-Node: Full Line Fields223837
-Ref: Full Line Fields-Footnote-1225354
-Ref: Full Line Fields-Footnote-2225400
-Node: Field Splitting Summary225501
-Node: Constant Size227575
-Node: Splitting By Content232164
-Ref: Splitting By Content-Footnote-1236158
-Node: Multiple Line236321
-Ref: Multiple Line-Footnote-1242207
-Node: Getline242386
-Node: Plain Getline244598
-Node: Getline/Variable247238
-Node: Getline/File248386
-Node: Getline/Variable/File249770
-Ref: Getline/Variable/File-Footnote-1251373
-Node: Getline/Pipe251460
-Node: Getline/Variable/Pipe254143
-Node: Getline/Coprocess255274
-Node: Getline/Variable/Coprocess256526
-Node: Getline Notes257265
-Node: Getline Summary260057
-Ref: table-getline-variants260469
-Node: Read Timeout261298
-Ref: Read Timeout-Footnote-1265123
-Node: Command-line directories265181
-Node: Input Summary266086
-Node: Input Exercises269387
-Node: Printing270115
-Node: Print271892
-Node: Print Examples273349
-Node: Output Separators276128
-Node: OFMT278146
-Node: Printf279500
-Node: Basic Printf280285
-Node: Control Letters281855
-Node: Format Modifiers285838
-Node: Printf Examples291847
-Node: Redirection294333
-Node: Special FD301174
-Ref: Special FD-Footnote-1304334
-Node: Special Files304408
-Node: Other Inherited Files305025
-Node: Special Network306025
-Node: Special Caveats306887
-Node: Close Files And Pipes307838
-Ref: Close Files And Pipes-Footnote-1315020
-Ref: Close Files And Pipes-Footnote-2315168
-Node: Output Summary315318
-Node: Output Exercises316316
-Node: Expressions316996
-Node: Values318181
-Node: Constants318859
-Node: Scalar Constants319550
-Ref: Scalar Constants-Footnote-1320409
-Node: Nondecimal-numbers320659
-Node: Regexp Constants323677
-Node: Using Constant Regexps324202
-Node: Variables327345
-Node: Using Variables328000
-Node: Assignment Options329911
-Node: Conversion331786
-Node: Strings And Numbers332310
-Ref: Strings And Numbers-Footnote-1335375
-Node: Locale influences conversions335484
-Ref: table-locale-affects338231
-Node: All Operators338819
-Node: Arithmetic Ops339449
-Node: Concatenation341954
-Ref: Concatenation-Footnote-1344773
-Node: Assignment Ops344879
-Ref: table-assign-ops349858
-Node: Increment Ops351130
-Node: Truth Values and Conditions354568
-Node: Truth Values355653
-Node: Typing and Comparison356702
-Node: Variable Typing357512
-Node: Comparison Operators361165
-Ref: table-relational-ops361575
-Node: POSIX String Comparison365070
-Ref: POSIX String Comparison-Footnote-1366142
-Node: Boolean Ops366280
-Ref: Boolean Ops-Footnote-1370759
-Node: Conditional Exp370850
-Node: Function Calls372577
-Node: Precedence376457
-Node: Locales380118
-Node: Expressions Summary381750
-Node: Patterns and Actions384310
-Node: Pattern Overview385430
-Node: Regexp Patterns387109
-Node: Expression Patterns387652
-Node: Ranges391362
-Node: BEGIN/END394468
-Node: Using BEGIN/END395229
-Ref: Using BEGIN/END-Footnote-1397963
-Node: I/O And BEGIN/END398069
-Node: BEGINFILE/ENDFILE400383
-Node: Empty403284
-Node: Using Shell Variables403601
-Node: Action Overview405874
-Node: Statements408200
-Node: If Statement410048
-Node: While Statement411543
-Node: Do Statement413572
-Node: For Statement414716
-Node: Switch Statement417873
-Node: Break Statement420255
-Node: Continue Statement422296
-Node: Next Statement424123
-Node: Nextfile Statement426504
-Node: Exit Statement429134
-Node: Built-in Variables431537
-Node: User-modified432670
-Ref: User-modified-Footnote-1440351
-Node: Auto-set440413
-Ref: Auto-set-Footnote-1454105
-Ref: Auto-set-Footnote-2454310
-Node: ARGC and ARGV454366
-Node: Pattern Action Summary458584
-Node: Arrays461011
-Node: Array Basics462340
-Node: Array Intro463184
-Ref: figure-array-elements465148
-Ref: Array Intro-Footnote-1467674
-Node: Reference to Elements467802
-Node: Assigning Elements470254
-Node: Array Example470745
-Node: Scanning an Array472503
-Node: Controlling Scanning475519
-Ref: Controlling Scanning-Footnote-1480715
-Node: Numeric Array Subscripts481031
-Node: Uninitialized Subscripts483216
-Node: Delete484833
-Ref: Delete-Footnote-1487576
-Node: Multidimensional487633
-Node: Multiscanning490730
-Node: Arrays of Arrays492319
-Node: Arrays Summary497078
-Node: Functions499170
-Node: Built-in500069
-Node: Calling Built-in501147
-Node: Numeric Functions503138
-Ref: Numeric Functions-Footnote-1507957
-Ref: Numeric Functions-Footnote-2508314
-Ref: Numeric Functions-Footnote-3508362
-Node: String Functions508634
-Ref: String Functions-Footnote-1532109
-Ref: String Functions-Footnote-2532238
-Ref: String Functions-Footnote-3532486
-Node: Gory Details532573
-Ref: table-sub-escapes534354
-Ref: table-sub-proposed535874
-Ref: table-posix-sub537238
-Ref: table-gensub-escapes538774
-Ref: Gory Details-Footnote-1539606
-Node: I/O Functions539757
-Ref: I/O Functions-Footnote-1546975
-Node: Time Functions547122
-Ref: Time Functions-Footnote-1557610
-Ref: Time Functions-Footnote-2557678
-Ref: Time Functions-Footnote-3557836
-Ref: Time Functions-Footnote-4557947
-Ref: Time Functions-Footnote-5558059
-Ref: Time Functions-Footnote-6558286
-Node: Bitwise Functions558552
-Ref: table-bitwise-ops559114
-Ref: Bitwise Functions-Footnote-1563423
-Node: Type Functions563592
-Node: I18N Functions564743
-Node: User-defined566388
-Node: Definition Syntax567193
-Ref: Definition Syntax-Footnote-1572600
-Node: Function Example572671
-Ref: Function Example-Footnote-1575590
-Node: Function Caveats575612
-Node: Calling A Function576130
-Node: Variable Scope577088
-Node: Pass By Value/Reference580076
-Node: Return Statement583571
-Node: Dynamic Typing586552
-Node: Indirect Calls587481
-Ref: Indirect Calls-Footnote-1598783
-Node: Functions Summary598911
-Node: Library Functions601613
-Ref: Library Functions-Footnote-1605222
-Ref: Library Functions-Footnote-2605365
-Node: Library Names605536
-Ref: Library Names-Footnote-1608990
-Ref: Library Names-Footnote-2609213
-Node: General Functions609299
-Node: Strtonum Function610402
-Node: Assert Function613424
-Node: Round Function616748
-Node: Cliff Random Function618289
-Node: Ordinal Functions619305
-Ref: Ordinal Functions-Footnote-1622368
-Ref: Ordinal Functions-Footnote-2622620
-Node: Join Function622831
-Ref: Join Function-Footnote-1624600
-Node: Getlocaltime Function624800
-Node: Readfile Function628544
-Node: Shell Quoting630514
-Node: Data File Management631915
-Node: Filetrans Function632547
-Node: Rewind Function636603
-Node: File Checking637990
-Ref: File Checking-Footnote-1639322
-Node: Empty Files639523
-Node: Ignoring Assigns641502
-Node: Getopt Function643053
-Ref: Getopt Function-Footnote-1654515
-Node: Passwd Functions654715
-Ref: Passwd Functions-Footnote-1663552
-Node: Group Functions663640
-Ref: Group Functions-Footnote-1671534
-Node: Walking Arrays671747
-Node: Library Functions Summary673350
-Node: Library Exercises674751
-Node: Sample Programs676031
-Node: Running Examples676801
-Node: Clones677529
-Node: Cut Program678753
-Node: Egrep Program688472
-Ref: Egrep Program-Footnote-1695970
-Node: Id Program696080
-Node: Split Program699725
-Ref: Split Program-Footnote-1703173
-Node: Tee Program703301
-Node: Uniq Program706090
-Node: Wc Program713509
-Ref: Wc Program-Footnote-1717759
-Node: Miscellaneous Programs717853
-Node: Dupword Program719066
-Node: Alarm Program721097
-Node: Translate Program725901
-Ref: Translate Program-Footnote-1730466
-Node: Labels Program730736
-Ref: Labels Program-Footnote-1734087
-Node: Word Sorting734171
-Node: History Sorting738242
-Node: Extract Program740078
-Node: Simple Sed747603
-Node: Igawk Program750671
-Ref: Igawk Program-Footnote-1764995
-Ref: Igawk Program-Footnote-2765196
-Ref: Igawk Program-Footnote-3765318
-Node: Anagram Program765433
-Node: Signature Program768490
-Node: Programs Summary769737
-Node: Programs Exercises770930
-Ref: Programs Exercises-Footnote-1775061
-Node: Advanced Features775152
-Node: Nondecimal Data777100
-Node: Array Sorting778690
-Node: Controlling Array Traversal779387
-Ref: Controlling Array Traversal-Footnote-1787720
-Node: Array Sorting Functions787838
-Ref: Array Sorting Functions-Footnote-1791727
-Node: Two-way I/O791923
-Ref: Two-way I/O-Footnote-1796868
-Ref: Two-way I/O-Footnote-2797054
-Node: TCP/IP Networking797136
-Node: Profiling800009
-Node: Advanced Features Summary808286
-Node: Internationalization810219
-Node: I18N and L10N811699
-Node: Explaining gettext812385
-Ref: Explaining gettext-Footnote-1817410
-Ref: Explaining gettext-Footnote-2817594
-Node: Programmer i18n817759
-Ref: Programmer i18n-Footnote-1822625
-Node: Translator i18n822674
-Node: String Extraction823468
-Ref: String Extraction-Footnote-1824599
-Node: Printf Ordering824685
-Ref: Printf Ordering-Footnote-1827471
-Node: I18N Portability827535
-Ref: I18N Portability-Footnote-1829990
-Node: I18N Example830053
-Ref: I18N Example-Footnote-1832856
-Node: Gawk I18N832928
-Node: I18N Summary833566
-Node: Debugger834905
-Node: Debugging835927
-Node: Debugging Concepts836368
-Node: Debugging Terms838221
-Node: Awk Debugging840793
-Node: Sample Debugging Session841687
-Node: Debugger Invocation842207
-Node: Finding The Bug843591
-Node: List of Debugger Commands850066
-Node: Breakpoint Control851399
-Node: Debugger Execution Control855095
-Node: Viewing And Changing Data858459
-Node: Execution Stack861837
-Node: Debugger Info863474
-Node: Miscellaneous Debugger Commands867491
-Node: Readline Support872520
-Node: Limitations873412
-Node: Debugging Summary875526
-Node: Arbitrary Precision Arithmetic876694
-Node: Computer Arithmetic878110
-Ref: table-numeric-ranges881708
-Ref: Computer Arithmetic-Footnote-1882567
-Node: Math Definitions882624
-Ref: table-ieee-formats885912
-Ref: Math Definitions-Footnote-1886516
-Node: MPFR features886621
-Node: FP Math Caution888292
-Ref: FP Math Caution-Footnote-1889342
-Node: Inexactness of computations889711
-Node: Inexact representation890670
-Node: Comparing FP Values892027
-Node: Errors accumulate893109
-Node: Getting Accuracy894542
-Node: Try To Round897204
-Node: Setting precision898103
-Ref: table-predefined-precision-strings898787
-Node: Setting the rounding mode900576
-Ref: table-gawk-rounding-modes900940
-Ref: Setting the rounding mode-Footnote-1904395
-Node: Arbitrary Precision Integers904574
-Ref: Arbitrary Precision Integers-Footnote-1909473
-Node: POSIX Floating Point Problems909622
-Ref: POSIX Floating Point Problems-Footnote-1913495
-Node: Floating point summary913533
-Node: Dynamic Extensions915727
-Node: Extension Intro917279
-Node: Plugin License918545
-Node: Extension Mechanism Outline919342
-Ref: figure-load-extension919770
-Ref: figure-register-new-function921250
-Ref: figure-call-new-function922254
-Node: Extension API Description924240
-Node: Extension API Functions Introduction925690
-Node: General Data Types930514
-Ref: General Data Types-Footnote-1936253
-Node: Memory Allocation Functions936552
-Ref: Memory Allocation Functions-Footnote-1939391
-Node: Constructor Functions939487
-Node: Registration Functions941221
-Node: Extension Functions941906
-Node: Exit Callback Functions944203
-Node: Extension Version String945451
-Node: Input Parsers946116
-Node: Output Wrappers955995
-Node: Two-way processors960510
-Node: Printing Messages962714
-Ref: Printing Messages-Footnote-1963790
-Node: Updating `ERRNO'963942
-Node: Requesting Values964682
-Ref: table-value-types-returned965410
-Node: Accessing Parameters966367
-Node: Symbol Table Access967598
-Node: Symbol table by name968112
-Node: Symbol table by cookie970093
-Ref: Symbol table by cookie-Footnote-1974237
-Node: Cached values974300
-Ref: Cached values-Footnote-1977799
-Node: Array Manipulation977890
-Ref: Array Manipulation-Footnote-1978988
-Node: Array Data Types979025
-Ref: Array Data Types-Footnote-1981680
-Node: Array Functions981772
-Node: Flattening Arrays985626
-Node: Creating Arrays992518
-Node: Extension API Variables997289
-Node: Extension Versioning997925
-Node: Extension API Informational Variables999826
-Node: Extension API Boilerplate1000891
-Node: Finding Extensions1004700
-Node: Extension Example1005260
-Node: Internal File Description1006032
-Node: Internal File Ops1010099
-Ref: Internal File Ops-Footnote-11021769
-Node: Using Internal File Ops1021909
-Ref: Using Internal File Ops-Footnote-11024292
-Node: Extension Samples1024565
-Node: Extension Sample File Functions1026091
-Node: Extension Sample Fnmatch1033729
-Node: Extension Sample Fork1035220
-Node: Extension Sample Inplace1036435
-Node: Extension Sample Ord1038110
-Node: Extension Sample Readdir1038946
-Ref: table-readdir-file-types1039822
-Node: Extension Sample Revout1040633
-Node: Extension Sample Rev2way1041223
-Node: Extension Sample Read write array1041963
-Node: Extension Sample Readfile1043903
-Node: Extension Sample Time1044998
-Node: Extension Sample API Tests1046347
-Node: gawkextlib1046838
-Node: Extension summary1049496
-Node: Extension Exercises1053185
-Node: Language History1053907
-Node: V7/SVR3.11055563
-Node: SVR41057744
-Node: POSIX1059189
-Node: BTL1060578
-Node: POSIX/GNU1061312
-Node: Feature History1066936
-Node: Common Extensions1080034
-Node: Ranges and Locales1081358
-Ref: Ranges and Locales-Footnote-11085976
-Ref: Ranges and Locales-Footnote-21086003
-Ref: Ranges and Locales-Footnote-31086237
-Node: Contributors1086458
-Node: History summary1091999
-Node: Installation1093369
-Node: Gawk Distribution1094315
-Node: Getting1094799
-Node: Extracting1095622
-Node: Distribution contents1097257
-Node: Unix Installation1103322
-Node: Quick Installation1104005
-Node: Shell Startup Files1106416
-Node: Additional Configuration Options1107495
-Node: Configuration Philosophy1109234
-Node: Non-Unix Installation1111603
-Node: PC Installation1112061
-Node: PC Binary Installation1113380
-Node: PC Compiling1115228
-Ref: PC Compiling-Footnote-11118249
-Node: PC Testing1118358
-Node: PC Using1119534
-Node: Cygwin1123649
-Node: MSYS1124472
-Node: VMS Installation1124972
-Node: VMS Compilation1125764
-Ref: VMS Compilation-Footnote-11126986
-Node: VMS Dynamic Extensions1127044
-Node: VMS Installation Details1128728
-Node: VMS Running1130980
-Node: VMS GNV1133816
-Node: VMS Old Gawk1134550
-Node: Bugs1135020
-Node: Other Versions1138903
-Node: Installation summary1145331
-Node: Notes1146387
-Node: Compatibility Mode1147252
-Node: Additions1148034
-Node: Accessing The Source1148959
-Node: Adding Code1150395
-Node: New Ports1156560
-Node: Derived Files1161042
-Ref: Derived Files-Footnote-11166517
-Ref: Derived Files-Footnote-21166551
-Ref: Derived Files-Footnote-31167147
-Node: Future Extensions1167261
-Node: Implementation Limitations1167867
-Node: Extension Design1169115
-Node: Old Extension Problems1170269
-Ref: Old Extension Problems-Footnote-11171786
-Node: Extension New Mechanism Goals1171843
-Ref: Extension New Mechanism Goals-Footnote-11175203
-Node: Extension Other Design Decisions1175392
-Node: Extension Future Growth1177500
-Node: Old Extension Mechanism1178336
-Node: Notes summary1180098
-Node: Basic Concepts1181284
-Node: Basic High Level1181965
-Ref: figure-general-flow1182237
-Ref: figure-process-flow1182836
-Ref: Basic High Level-Footnote-11186065
-Node: Basic Data Typing1186250
-Node: Glossary1189578
-Node: Copying1214736
-Node: GNU Free Documentation License1252292
-Node: Index1277428
+Node: Foreword446669
+Node: Preface48200
+Ref: Preface-Footnote-151071
+Ref: Preface-Footnote-251178
+Ref: Preface-Footnote-351411
+Node: History51553
+Node: Names53904
+Ref: Names-Footnote-154997
+Node: This Manual55143
+Ref: This Manual-Footnote-161648
+Node: Conventions61748
+Node: Manual History64086
+Ref: Manual History-Footnote-167068
+Ref: Manual History-Footnote-267109
+Node: How To Contribute67183
+Node: Acknowledgments68312
+Node: Getting Started73117
+Node: Running gawk75550
+Node: One-shot76740
+Node: Read Terminal77988
+Node: Long80015
+Node: Executable Scripts81531
+Ref: Executable Scripts-Footnote-184320
+Node: Comments84423
+Node: Quoting86905
+Node: DOS Quoting92429
+Node: Sample Data Files93104
+Node: Very Simple95699
+Node: Two Rules100597
+Node: More Complex102483
+Node: Statements/Lines105345
+Ref: Statements/Lines-Footnote-1109800
+Node: Other Features110065
+Node: When110996
+Ref: When-Footnote-1112750
+Node: Intro Summary112815
+Node: Invoking Gawk113698
+Node: Command Line115212
+Node: Options116010
+Ref: Options-Footnote-1131814
+Ref: Options-Footnote-2132043
+Node: Other Arguments132068
+Node: Naming Standard Input135016
+Node: Environment Variables136109
+Node: AWKPATH Variable136667
+Ref: AWKPATH Variable-Footnote-1140080
+Ref: AWKPATH Variable-Footnote-2140125
+Node: AWKLIBPATH Variable140385
+Node: Other Environment Variables141641
+Node: Exit Status145129
+Node: Include Files145805
+Node: Loading Shared Libraries149402
+Node: Obsolete150829
+Node: Undocumented151526
+Node: Invoking Summary151793
+Node: Regexp153457
+Node: Regexp Usage154911
+Node: Escape Sequences156948
+Node: Regexp Operators163189
+Ref: Regexp Operators-Footnote-1170615
+Ref: Regexp Operators-Footnote-2170762
+Node: Bracket Expressions170860
+Ref: table-char-classes172875
+Node: Leftmost Longest175799
+Node: Computed Regexps177101
+Node: GNU Regexp Operators180498
+Node: Case-sensitivity184171
+Ref: Case-sensitivity-Footnote-1187056
+Ref: Case-sensitivity-Footnote-2187291
+Node: Regexp Summary187399
+Node: Reading Files188866
+Node: Records190960
+Node: awk split records191693
+Node: gawk split records196608
+Ref: gawk split records-Footnote-1201152
+Node: Fields201189
+Ref: Fields-Footnote-1203965
+Node: Nonconstant Fields204051
+Ref: Nonconstant Fields-Footnote-1206294
+Node: Changing Fields206498
+Node: Field Separators212427
+Node: Default Field Splitting215132
+Node: Regexp Field Splitting216249
+Node: Single Character Fields219599
+Node: Command Line Field Separator220658
+Node: Full Line Fields223870
+Ref: Full Line Fields-Footnote-1225387
+Ref: Full Line Fields-Footnote-2225433
+Node: Field Splitting Summary225534
+Node: Constant Size227608
+Node: Splitting By Content232197
+Ref: Splitting By Content-Footnote-1236191
+Node: Multiple Line236354
+Ref: Multiple Line-Footnote-1242240
+Node: Getline242419
+Node: Plain Getline244631
+Node: Getline/Variable247271
+Node: Getline/File248419
+Node: Getline/Variable/File249803
+Ref: Getline/Variable/File-Footnote-1251406
+Node: Getline/Pipe251493
+Node: Getline/Variable/Pipe254176
+Node: Getline/Coprocess255307
+Node: Getline/Variable/Coprocess256559
+Node: Getline Notes257298
+Node: Getline Summary260090
+Ref: table-getline-variants260502
+Node: Read Timeout261331
+Ref: Read Timeout-Footnote-1265156
+Node: Command-line directories265214
+Node: Input Summary266119
+Node: Input Exercises269420
+Node: Printing270148
+Node: Print271925
+Node: Print Examples273382
+Node: Output Separators276161
+Node: OFMT278179
+Node: Printf279533
+Node: Basic Printf280318
+Node: Control Letters281888
+Node: Format Modifiers285871
+Node: Printf Examples291880
+Node: Redirection294366
+Node: Special FD301207
+Ref: Special FD-Footnote-1304367
+Node: Special Files304441
+Node: Other Inherited Files305058
+Node: Special Network306058
+Node: Special Caveats306920
+Node: Close Files And Pipes307871
+Ref: Close Files And Pipes-Footnote-1315053
+Ref: Close Files And Pipes-Footnote-2315201
+Node: Output Summary315351
+Node: Output Exercises316349
+Node: Expressions317029
+Node: Values318214
+Node: Constants318892
+Node: Scalar Constants319583
+Ref: Scalar Constants-Footnote-1320442
+Node: Nondecimal-numbers320692
+Node: Regexp Constants323710
+Node: Using Constant Regexps324235
+Node: Variables327378
+Node: Using Variables328033
+Node: Assignment Options329944
+Node: Conversion331819
+Node: Strings And Numbers332343
+Ref: Strings And Numbers-Footnote-1335408
+Node: Locale influences conversions335517
+Ref: table-locale-affects338264
+Node: All Operators338852
+Node: Arithmetic Ops339482
+Node: Concatenation341987
+Ref: Concatenation-Footnote-1344806
+Node: Assignment Ops344912
+Ref: table-assign-ops349891
+Node: Increment Ops351163
+Node: Truth Values and Conditions354601
+Node: Truth Values355686
+Node: Typing and Comparison356735
+Node: Variable Typing357545
+Node: Comparison Operators361198
+Ref: table-relational-ops361608
+Node: POSIX String Comparison365103
+Ref: POSIX String Comparison-Footnote-1366175
+Node: Boolean Ops366313
+Ref: Boolean Ops-Footnote-1370792
+Node: Conditional Exp370883
+Node: Function Calls372610
+Node: Precedence376490
+Node: Locales380151
+Node: Expressions Summary381783
+Node: Patterns and Actions384343
+Node: Pattern Overview385463
+Node: Regexp Patterns387142
+Node: Expression Patterns387685
+Node: Ranges391395
+Node: BEGIN/END394501
+Node: Using BEGIN/END395262
+Ref: Using BEGIN/END-Footnote-1397996
+Node: I/O And BEGIN/END398102
+Node: BEGINFILE/ENDFILE400416
+Node: Empty403317
+Node: Using Shell Variables403634
+Node: Action Overview405907
+Node: Statements408233
+Node: If Statement410081
+Node: While Statement411576
+Node: Do Statement413605
+Node: For Statement414749
+Node: Switch Statement417906
+Node: Break Statement420288
+Node: Continue Statement422329
+Node: Next Statement424156
+Node: Nextfile Statement426537
+Node: Exit Statement429167
+Node: Built-in Variables431570
+Node: User-modified432703
+Ref: User-modified-Footnote-1440384
+Node: Auto-set440446
+Ref: Auto-set-Footnote-1454138
+Ref: Auto-set-Footnote-2454343
+Node: ARGC and ARGV454399
+Node: Pattern Action Summary458617
+Node: Arrays461044
+Node: Array Basics462373
+Node: Array Intro463217
+Ref: figure-array-elements465181
+Ref: Array Intro-Footnote-1467707
+Node: Reference to Elements467835
+Node: Assigning Elements470287
+Node: Array Example470778
+Node: Scanning an Array472536
+Node: Controlling Scanning475552
+Ref: Controlling Scanning-Footnote-1480748
+Node: Numeric Array Subscripts481064
+Node: Uninitialized Subscripts483249
+Node: Delete484866
+Ref: Delete-Footnote-1487609
+Node: Multidimensional487666
+Node: Multiscanning490763
+Node: Arrays of Arrays492352
+Node: Arrays Summary497111
+Node: Functions499203
+Node: Built-in500102
+Node: Calling Built-in501180
+Node: Numeric Functions503171
+Ref: Numeric Functions-Footnote-1507990
+Ref: Numeric Functions-Footnote-2508347
+Ref: Numeric Functions-Footnote-3508395
+Node: String Functions508667
+Ref: String Functions-Footnote-1532142
+Ref: String Functions-Footnote-2532271
+Ref: String Functions-Footnote-3532519
+Node: Gory Details532606
+Ref: table-sub-escapes534387
+Ref: table-sub-proposed535907
+Ref: table-posix-sub537271
+Ref: table-gensub-escapes538807
+Ref: Gory Details-Footnote-1539639
+Node: I/O Functions539790
+Ref: I/O Functions-Footnote-1547008
+Node: Time Functions547155
+Ref: Time Functions-Footnote-1557643
+Ref: Time Functions-Footnote-2557711
+Ref: Time Functions-Footnote-3557869
+Ref: Time Functions-Footnote-4557980
+Ref: Time Functions-Footnote-5558092
+Ref: Time Functions-Footnote-6558319
+Node: Bitwise Functions558585
+Ref: table-bitwise-ops559147
+Ref: Bitwise Functions-Footnote-1563456
+Node: Type Functions563625
+Node: I18N Functions564776
+Node: User-defined566421
+Node: Definition Syntax567226
+Ref: Definition Syntax-Footnote-1572633
+Node: Function Example572704
+Ref: Function Example-Footnote-1575623
+Node: Function Caveats575645
+Node: Calling A Function576163
+Node: Variable Scope577121
+Node: Pass By Value/Reference580109
+Node: Return Statement583604
+Node: Dynamic Typing586585
+Node: Indirect Calls587514
+Ref: Indirect Calls-Footnote-1598816
+Node: Functions Summary598944
+Node: Library Functions601646
+Ref: Library Functions-Footnote-1605255
+Ref: Library Functions-Footnote-2605398
+Node: Library Names605569
+Ref: Library Names-Footnote-1609023
+Ref: Library Names-Footnote-2609246
+Node: General Functions609332
+Node: Strtonum Function610435
+Node: Assert Function613457
+Node: Round Function616781
+Node: Cliff Random Function618322
+Node: Ordinal Functions619338
+Ref: Ordinal Functions-Footnote-1622401
+Ref: Ordinal Functions-Footnote-2622653
+Node: Join Function622864
+Ref: Join Function-Footnote-1624633
+Node: Getlocaltime Function624833
+Node: Readfile Function628577
+Node: Shell Quoting630547
+Node: Data File Management631948
+Node: Filetrans Function632580
+Node: Rewind Function636636
+Node: File Checking638023
+Ref: File Checking-Footnote-1639355
+Node: Empty Files639556
+Node: Ignoring Assigns641535
+Node: Getopt Function643086
+Ref: Getopt Function-Footnote-1654548
+Node: Passwd Functions654748
+Ref: Passwd Functions-Footnote-1663585
+Node: Group Functions663673
+Ref: Group Functions-Footnote-1671567
+Node: Walking Arrays671780
+Node: Library Functions Summary673383
+Node: Library Exercises674784
+Node: Sample Programs676064
+Node: Running Examples676834
+Node: Clones677562
+Node: Cut Program678786
+Node: Egrep Program688505
+Ref: Egrep Program-Footnote-1696003
+Node: Id Program696113
+Node: Split Program699758
+Ref: Split Program-Footnote-1703206
+Node: Tee Program703334
+Node: Uniq Program706123
+Node: Wc Program713542
+Ref: Wc Program-Footnote-1717792
+Node: Miscellaneous Programs717886
+Node: Dupword Program719099
+Node: Alarm Program721130
+Node: Translate Program725934
+Ref: Translate Program-Footnote-1730499
+Node: Labels Program730769
+Ref: Labels Program-Footnote-1734120
+Node: Word Sorting734204
+Node: History Sorting738275
+Node: Extract Program740111
+Node: Simple Sed747636
+Node: Igawk Program750704
+Ref: Igawk Program-Footnote-1765028
+Ref: Igawk Program-Footnote-2765229
+Ref: Igawk Program-Footnote-3765351
+Node: Anagram Program765466
+Node: Signature Program768523
+Node: Programs Summary769770
+Node: Programs Exercises770963
+Ref: Programs Exercises-Footnote-1775094
+Node: Advanced Features775185
+Node: Nondecimal Data777133
+Node: Array Sorting778723
+Node: Controlling Array Traversal779420
+Ref: Controlling Array Traversal-Footnote-1787753
+Node: Array Sorting Functions787871
+Ref: Array Sorting Functions-Footnote-1791760
+Node: Two-way I/O791956
+Ref: Two-way I/O-Footnote-1796901
+Ref: Two-way I/O-Footnote-2797087
+Node: TCP/IP Networking797169
+Node: Profiling800042
+Node: Advanced Features Summary808319
+Node: Internationalization810252
+Node: I18N and L10N811732
+Node: Explaining gettext812418
+Ref: Explaining gettext-Footnote-1817443
+Ref: Explaining gettext-Footnote-2817627
+Node: Programmer i18n817792
+Ref: Programmer i18n-Footnote-1822658
+Node: Translator i18n822707
+Node: String Extraction823501
+Ref: String Extraction-Footnote-1824632
+Node: Printf Ordering824718
+Ref: Printf Ordering-Footnote-1827504
+Node: I18N Portability827568
+Ref: I18N Portability-Footnote-1830023
+Node: I18N Example830086
+Ref: I18N Example-Footnote-1832889
+Node: Gawk I18N832961
+Node: I18N Summary833599
+Node: Debugger834938
+Node: Debugging835960
+Node: Debugging Concepts836401
+Node: Debugging Terms838254
+Node: Awk Debugging840826
+Node: Sample Debugging Session841720
+Node: Debugger Invocation842240
+Node: Finding The Bug843624
+Node: List of Debugger Commands850099
+Node: Breakpoint Control851432
+Node: Debugger Execution Control855128
+Node: Viewing And Changing Data858492
+Node: Execution Stack861870
+Node: Debugger Info863507
+Node: Miscellaneous Debugger Commands867524
+Node: Readline Support872553
+Node: Limitations873445
+Node: Debugging Summary875559
+Node: Arbitrary Precision Arithmetic876727
+Node: Computer Arithmetic878143
+Ref: table-numeric-ranges881741
+Ref: Computer Arithmetic-Footnote-1882600
+Node: Math Definitions882657
+Ref: table-ieee-formats885945
+Ref: Math Definitions-Footnote-1886549
+Node: MPFR features886654
+Node: FP Math Caution888325
+Ref: FP Math Caution-Footnote-1889375
+Node: Inexactness of computations889744
+Node: Inexact representation890703
+Node: Comparing FP Values892060
+Node: Errors accumulate893142
+Node: Getting Accuracy894575
+Node: Try To Round897237
+Node: Setting precision898136
+Ref: table-predefined-precision-strings898820
+Node: Setting the rounding mode900609
+Ref: table-gawk-rounding-modes900973
+Ref: Setting the rounding mode-Footnote-1904428
+Node: Arbitrary Precision Integers904607
+Ref: Arbitrary Precision Integers-Footnote-1909506
+Node: POSIX Floating Point Problems909655
+Ref: POSIX Floating Point Problems-Footnote-1913528
+Node: Floating point summary913566
+Node: Dynamic Extensions915760
+Node: Extension Intro917312
+Node: Plugin License918578
+Node: Extension Mechanism Outline919375
+Ref: figure-load-extension919803
+Ref: figure-register-new-function921283
+Ref: figure-call-new-function922287
+Node: Extension API Description924273
+Node: Extension API Functions Introduction925723
+Node: General Data Types930547
+Ref: General Data Types-Footnote-1936286
+Node: Memory Allocation Functions936585
+Ref: Memory Allocation Functions-Footnote-1939424
+Node: Constructor Functions939520
+Node: Registration Functions941254
+Node: Extension Functions941939
+Node: Exit Callback Functions944236
+Node: Extension Version String945484
+Node: Input Parsers946149
+Node: Output Wrappers956028
+Node: Two-way processors960543
+Node: Printing Messages962747
+Ref: Printing Messages-Footnote-1963823
+Node: Updating `ERRNO'963975
+Node: Requesting Values964715
+Ref: table-value-types-returned965443
+Node: Accessing Parameters966400
+Node: Symbol Table Access967631
+Node: Symbol table by name968145
+Node: Symbol table by cookie970126
+Ref: Symbol table by cookie-Footnote-1974270
+Node: Cached values974333
+Ref: Cached values-Footnote-1977832
+Node: Array Manipulation977923
+Ref: Array Manipulation-Footnote-1979021
+Node: Array Data Types979058
+Ref: Array Data Types-Footnote-1981713
+Node: Array Functions981805
+Node: Flattening Arrays985659
+Node: Creating Arrays992551
+Node: Extension API Variables997322
+Node: Extension Versioning997958
+Node: Extension API Informational Variables999859
+Node: Extension API Boilerplate1000924
+Node: Finding Extensions1004733
+Node: Extension Example1005293
+Node: Internal File Description1006065
+Node: Internal File Ops1010132
+Ref: Internal File Ops-Footnote-11021802
+Node: Using Internal File Ops1021942
+Ref: Using Internal File Ops-Footnote-11024325
+Node: Extension Samples1024598
+Node: Extension Sample File Functions1026124
+Node: Extension Sample Fnmatch1033762
+Node: Extension Sample Fork1035253
+Node: Extension Sample Inplace1036468
+Node: Extension Sample Ord1038143
+Node: Extension Sample Readdir1038979
+Ref: table-readdir-file-types1039855
+Node: Extension Sample Revout1040666
+Node: Extension Sample Rev2way1041256
+Node: Extension Sample Read write array1041996
+Node: Extension Sample Readfile1043936
+Node: Extension Sample Time1045031
+Node: Extension Sample API Tests1046380
+Node: gawkextlib1046871
+Node: Extension summary1049529
+Node: Extension Exercises1053218
+Node: Language History1053940
+Node: V7/SVR3.11055596
+Node: SVR41057777
+Node: POSIX1059222
+Node: BTL1060611
+Node: POSIX/GNU1061345
+Node: Feature History1066969
+Node: Common Extensions1080067
+Node: Ranges and Locales1081391
+Ref: Ranges and Locales-Footnote-11086009
+Ref: Ranges and Locales-Footnote-21086036
+Ref: Ranges and Locales-Footnote-31086270
+Node: Contributors1086491
+Node: History summary1092032
+Node: Installation1093402
+Node: Gawk Distribution1094348
+Node: Getting1094832
+Node: Extracting1095655
+Node: Distribution contents1097290
+Node: Unix Installation1103355
+Node: Quick Installation1104038
+Node: Shell Startup Files1106449
+Node: Additional Configuration Options1107528
+Node: Configuration Philosophy1109267
+Node: Non-Unix Installation1111636
+Node: PC Installation1112094
+Node: PC Binary Installation1113413
+Node: PC Compiling1115261
+Ref: PC Compiling-Footnote-11118282
+Node: PC Testing1118391
+Node: PC Using1119567
+Node: Cygwin1123682
+Node: MSYS1124505
+Node: VMS Installation1125005
+Node: VMS Compilation1125797
+Ref: VMS Compilation-Footnote-11127019
+Node: VMS Dynamic Extensions1127077
+Node: VMS Installation Details1128761
+Node: VMS Running1131013
+Node: VMS GNV1133849
+Node: VMS Old Gawk1134583
+Node: Bugs1135053
+Node: Other Versions1138936
+Node: Installation summary1145364
+Node: Notes1146420
+Node: Compatibility Mode1147285
+Node: Additions1148067
+Node: Accessing The Source1148992
+Node: Adding Code1150428
+Node: New Ports1156593
+Node: Derived Files1161075
+Ref: Derived Files-Footnote-11166550
+Ref: Derived Files-Footnote-21166584
+Ref: Derived Files-Footnote-31167180
+Node: Future Extensions1167294
+Node: Implementation Limitations1167900
+Node: Extension Design1169148
+Node: Old Extension Problems1170302
+Ref: Old Extension Problems-Footnote-11171819
+Node: Extension New Mechanism Goals1171876
+Ref: Extension New Mechanism Goals-Footnote-11175236
+Node: Extension Other Design Decisions1175425
+Node: Extension Future Growth1177533
+Node: Old Extension Mechanism1178369
+Node: Notes summary1180131
+Node: Basic Concepts1181317
+Node: Basic High Level1181998
+Ref: figure-general-flow1182270
+Ref: figure-process-flow1182869
+Ref: Basic High Level-Footnote-11186098
+Node: Basic Data Typing1186283
+Node: Glossary1189611
+Node: Copying1214769
+Node: GNU Free Documentation License1252325
+Node: Index1277461

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 57c37746..facb8b0a 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -207,7 +207,7 @@
@set FFN Filename
@set DF datafile
@set DDF Datafile
-@set PVERSION Version
+@set PVERSION version
@end ifset
@c For HTML, spell out email addresses, to avoid problems with
@@ -304,7 +304,7 @@ All Rights Reserved.</literallayout>
@end docbook
@ifnotdocbook
-Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2014 @*
+Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2015 @*
Free Software Foundation, Inc.
@end ifnotdocbook
@sp 2
@@ -1170,7 +1170,7 @@ interface to network protocols via special @file{/inet} files.
The programs in this book make clear that an AWK program is
typically much smaller and faster to develop than
a counterpart written in C.
-Consequently, there is often a payoff to prototype an
+Consequently, there is often a payoff to prototyping an
algorithm or design in AWK to get it running quickly and expose
problems early. Often, the interpreted performance is adequate
and the AWK prototype becomes the product.
@@ -1247,15 +1247,15 @@ March 2001
Some things don't change. Thirteen years ago I wrote:
``If you use AWK or want to learn how, then read this book.''
-True then and still true today.
+True then, and still true today.
-Learning to use a programming language is more than mastering the
+Learning to use a programming language is about more than mastering the
syntax. One needs to acquire an understanding of how to use the
features of the language to solve practical programming problems.
A focus of this book is many examples that show how to use AWK.
Some things do change. Our computers are much faster and have more memory.
-Consequently, speed and storage inefficiencies of a high level language
+Consequently, speed and storage inefficiencies of a high-level language
matter less. Prototyping in AWK and then rewriting in C for performance
reasons happens less, because more often the prototype is fast enough.
@@ -1263,12 +1263,12 @@ Of course, there are computing operations that are best done in C or C++.
With @command{gawk} 4.1 and later, you do not have to choose between writing
your program in AWK or in C/C++. You can write most of your
program in AWK and the aspects that require C/C++ capabilities can be written
-in C/C++ and then the pieces glued together when the @command{gawk} module loads
+in C/C++, and then the pieces glued together when the @command{gawk} module loads
the C/C++ module as a dynamic plug-in.
@c Chapter 16
@ref{Dynamic Extensions},
has all the
-details, and as expected, many examples to help you learn the ins and outs.
+details, and, as expected, many examples to help you learn the ins and outs.
I enjoy programming in AWK and had fun (re)reading this book.
I think you will too.
@@ -1343,7 +1343,7 @@ Generate reports
Validate data
@item
-Produce indexes and perform other document preparation tasks
+Produce indexes and perform other document-preparation tasks
@item
Experiment with algorithms that you can adapt later to other computer
@@ -1490,7 +1490,7 @@ help from me, thoroughly reworked @command{gawk} for compatibility
with the newer @command{awk}.
Circa 1994, I became the primary maintainer.
Current development focuses on bug fixes,
-performance improvements, standards compliance and, occasionally, new features.
+performance improvements, standards compliance, and, occasionally, new features.
In May 1997, J@"urgen Kahrs felt the need for network access
from @command{awk}, and with a little help from me, set about adding
@@ -1503,10 +1503,10 @@ with @command{gawk} @value{PVERSION} 3.1.
John Haque rewrote the @command{gawk} internals, in the process providing
an @command{awk}-level debugger. This version became available as
-@command{gawk} @value{PVERSION} 4.0, in 2011.
+@command{gawk} @value{PVERSION} 4.0 in 2011.
@DBXREF{Contributors}
-for a full list of those who made important contributions to @command{gawk}.
+for a full list of those who have made important contributions to @command{gawk}.
@node Names
@unnumberedsec A Rose by Any Other Name
@@ -1519,7 +1519,7 @@ is often referred to as ``new @command{awk}.''
By analogy, the original version of @command{awk} is
referred to as ``old @command{awk}.''
-Today, on most systems, when you run the @command{awk} utility,
+Today, on most systems, when you run the @command{awk} utility
you get some version of new @command{awk}.@footnote{Only
Solaris systems still use an old @command{awk} for the
default @command{awk} utility. A more modern @command{awk} lives in
@@ -1579,7 +1579,9 @@ the POSIX standard for @command{awk}.
This @value{DOCUMENT} has the difficult task of being both a tutorial and a reference.
If you are a novice, feel free to skip over details that seem too complex.
You should also ignore the many cross-references; they are for the
-expert user and for the online Info and HTML versions of the @value{DOCUMENT}.
+expert user and for the Info and
+@ulink{http://www.gnu.org/software/gawk/manual/, HTML}
+versions of the @value{DOCUMENT}.
@end ifnotinfo
There are sidebars
@@ -1612,7 +1614,7 @@ This @value{DOCUMENT} is split into several parts, as follows:
@itemize @value{BULLET}
@item
-Part I describes the @command{awk} language and @command{gawk} program in detail.
+Part I describes the @command{awk} language and the @command{gawk} program in detail.
It starts with the basics, and continues through all of the features of @command{awk}.
It contains the following chapters:
@@ -1659,7 +1661,7 @@ doing something when a record is matched, and the predefined variables
@item
@ref{Arrays},
-covers @command{awk}'s one-and-only data structure: associative arrays.
+covers @command{awk}'s one-and-only data structure: the associative array.
Deleting array elements and whole arrays is also described, as well as
sorting arrays in @command{gawk}. It also describes how @command{gawk}
provides arrays of arrays.
diff --git a/doc/gawkinet.info b/doc/gawkinet.info
index 0a0d69d8..d726be0b 100644
--- a/doc/gawkinet.info
+++ b/doc/gawkinet.info
@@ -6,7 +6,7 @@ START-INFO-DIR-ENTRY
* Gawkinet: (gawkinet). TCP/IP Internetworking With `gawk'.
END-INFO-DIR-ENTRY
- This is Edition 1.3 of `TCP/IP Internetworking With `gawk'', for the
+ This is Edition 1.3 of `TCP/IP Internetworking with `gawk'', for the
4.0.0 (or later) version of the GNU implementation of AWK.
@@ -30,7 +30,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
This file documents the networking features in GNU `awk'.
- This is Edition 1.3 of `TCP/IP Internetworking With `gawk'', for the
+ This is Edition 1.3 of `TCP/IP Internetworking with `gawk'', for the
4.0.0 (or later) version of the GNU implementation of AWK.
@@ -61,7 +61,7 @@ General Introduction
This file documents the networking features in GNU Awk (`gawk') version
4.0 and later.
- This is Edition 1.3 of `TCP/IP Internetworking With `gawk'', for the
+ This is Edition 1.3 of `TCP/IP Internetworking with `gawk'', for the
4.0.0 (or later) version of the GNU implementation of AWK.
diff --git a/doc/gawkinet.texi b/doc/gawkinet.texi
index 40198e1d..10223239 100644
--- a/doc/gawkinet.texi
+++ b/doc/gawkinet.texi
@@ -60,7 +60,7 @@
@c fit into that chapter, thus this separate document. At over 50
@c pages, I think this is the right decision. ADR.
-@set TITLE TCP/IP Internetworking With @command{gawk}
+@set TITLE TCP/IP Internetworking with @command{gawk}
@set EDITION 1.3
@set UPDATE-MONTH December, 2010
@c gawk versions:
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index b850dd15..87655ef7 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -202,7 +202,7 @@
@set FFN Filename
@set DF datafile
@set DDF Datafile
-@set PVERSION Version
+@set PVERSION version
@end ifset
@c For HTML, spell out email addresses, to avoid problems with
@@ -299,7 +299,7 @@ All Rights Reserved.</literallayout>
@end docbook
@ifnotdocbook
-Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2014 @*
+Copyright @copyright{} 1989, 1991, 1992, 1993, 1996--2005, 2007, 2009--2015 @*
Free Software Foundation, Inc.
@end ifnotdocbook
@sp 2
@@ -1165,7 +1165,7 @@ interface to network protocols via special @file{/inet} files.
The programs in this book make clear that an AWK program is
typically much smaller and faster to develop than
a counterpart written in C.
-Consequently, there is often a payoff to prototype an
+Consequently, there is often a payoff to prototyping an
algorithm or design in AWK to get it running quickly and expose
problems early. Often, the interpreted performance is adequate
and the AWK prototype becomes the product.
@@ -1242,15 +1242,15 @@ March 2001
Some things don't change. Thirteen years ago I wrote:
``If you use AWK or want to learn how, then read this book.''
-True then and still true today.
+True then, and still true today.
-Learning to use a programming language is more than mastering the
+Learning to use a programming language is about more than mastering the
syntax. One needs to acquire an understanding of how to use the
features of the language to solve practical programming problems.
A focus of this book is many examples that show how to use AWK.
Some things do change. Our computers are much faster and have more memory.
-Consequently, speed and storage inefficiencies of a high level language
+Consequently, speed and storage inefficiencies of a high-level language
matter less. Prototyping in AWK and then rewriting in C for performance
reasons happens less, because more often the prototype is fast enough.
@@ -1258,12 +1258,12 @@ Of course, there are computing operations that are best done in C or C++.
With @command{gawk} 4.1 and later, you do not have to choose between writing
your program in AWK or in C/C++. You can write most of your
program in AWK and the aspects that require C/C++ capabilities can be written
-in C/C++ and then the pieces glued together when the @command{gawk} module loads
+in C/C++, and then the pieces glued together when the @command{gawk} module loads
the C/C++ module as a dynamic plug-in.
@c Chapter 16
@ref{Dynamic Extensions},
has all the
-details, and as expected, many examples to help you learn the ins and outs.
+details, and, as expected, many examples to help you learn the ins and outs.
I enjoy programming in AWK and had fun (re)reading this book.
I think you will too.
@@ -1338,7 +1338,7 @@ Generate reports
Validate data
@item
-Produce indexes and perform other document preparation tasks
+Produce indexes and perform other document-preparation tasks
@item
Experiment with algorithms that you can adapt later to other computer
@@ -1457,7 +1457,7 @@ help from me, thoroughly reworked @command{gawk} for compatibility
with the newer @command{awk}.
Circa 1994, I became the primary maintainer.
Current development focuses on bug fixes,
-performance improvements, standards compliance and, occasionally, new features.
+performance improvements, standards compliance, and, occasionally, new features.
In May 1997, J@"urgen Kahrs felt the need for network access
from @command{awk}, and with a little help from me, set about adding
@@ -1470,10 +1470,10 @@ with @command{gawk} @value{PVERSION} 3.1.
John Haque rewrote the @command{gawk} internals, in the process providing
an @command{awk}-level debugger. This version became available as
-@command{gawk} @value{PVERSION} 4.0, in 2011.
+@command{gawk} @value{PVERSION} 4.0 in 2011.
@DBXREF{Contributors}
-for a full list of those who made important contributions to @command{gawk}.
+for a full list of those who have made important contributions to @command{gawk}.
@node Names
@unnumberedsec A Rose by Any Other Name
@@ -1486,7 +1486,7 @@ is often referred to as ``new @command{awk}.''
By analogy, the original version of @command{awk} is
referred to as ``old @command{awk}.''
-Today, on most systems, when you run the @command{awk} utility,
+Today, on most systems, when you run the @command{awk} utility
you get some version of new @command{awk}.@footnote{Only
Solaris systems still use an old @command{awk} for the
default @command{awk} utility. A more modern @command{awk} lives in
@@ -1546,7 +1546,9 @@ the POSIX standard for @command{awk}.
This @value{DOCUMENT} has the difficult task of being both a tutorial and a reference.
If you are a novice, feel free to skip over details that seem too complex.
You should also ignore the many cross-references; they are for the
-expert user and for the online Info and HTML versions of the @value{DOCUMENT}.
+expert user and for the Info and
+@ulink{http://www.gnu.org/software/gawk/manual/, HTML}
+versions of the @value{DOCUMENT}.
@end ifnotinfo
There are sidebars
@@ -1579,7 +1581,7 @@ This @value{DOCUMENT} is split into several parts, as follows:
@itemize @value{BULLET}
@item
-Part I describes the @command{awk} language and @command{gawk} program in detail.
+Part I describes the @command{awk} language and the @command{gawk} program in detail.
It starts with the basics, and continues through all of the features of @command{awk}.
It contains the following chapters:
@@ -1626,7 +1628,7 @@ doing something when a record is matched, and the predefined variables
@item
@ref{Arrays},
-covers @command{awk}'s one-and-only data structure: associative arrays.
+covers @command{awk}'s one-and-only data structure: the associative array.
Deleting array elements and whole arrays is also described, as well as
sorting arrays in @command{gawk}. It also describes how @command{gawk}
provides arrays of arrays.