diff options
-rw-r--r-- | doc/ChangeLog | 4 | ||||
-rw-r--r-- | doc/gawk.info | 1112 | ||||
-rw-r--r-- | doc/gawk.texi | 33 | ||||
-rw-r--r-- | doc/gawktexi.in | 31 |
4 files changed, 596 insertions, 584 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 1e53c5b7..96c48a39 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2014-12-05 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in: Various minor fixes and updates. + 2014-11-19 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in: Update that RFC 4180 documents CSV data. diff --git a/doc/gawk.info b/doc/gawk.info index 6026b543..f77d742e 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -1341,7 +1341,7 @@ continues to be a pleasure working with this team of fine people. Notable code and documentation contributions were made by a number of people. *Note Contributors::, for the full list. - Thanks to Michael Brennan for the Foreword. + Thanks to Michael Brennan for the Forewords. Thanks to Patrice Dumas for the new `makeinfo' program. Thanks to Karl Berry who continues to work to keep the Texinfo markup language @@ -4989,7 +4989,7 @@ which usually prints: on an incorrect implementation of `awk', while `gawk' prints the full first line of the file, something like: - root:nSijPlPhZZwgE:0:0:Root:/: + root:x:0:0:Root:/: ---------- Footnotes ---------- @@ -5242,7 +5242,7 @@ being used. NOTE: Some programs export CSV data that contains embedded newlines between the double quotes. `gawk' provides no way to - deal with this. Because no formal specification for CSV data + deal with this. Even though a formal specification for CSV data exists, there isn't much more to be done; the `FPAT' mechanism provides an elegant solution for the majority of cases, and the `gawk' developers are satisfied with that. @@ -5809,7 +5809,7 @@ in mind: * Using `FILENAME' with `getline' (`getline < FILENAME') is likely to be a source for confusion. `awk' opens a separate input stream from the current input file. However, by not using a variable, - `$0' and `NR' are still updated. If you're doing this, it's + `$0' and `NF' are still updated. If you're doing this, it's probably by accident, and you should reconsider what it is you're trying to accomplish. @@ -5928,7 +5928,7 @@ input to arrive: PROCINFO[Service, "READ_TIMEOUT"] = 1000 while ((Service |& getline) > 0) { print $0 - PROCINFO[S, "READ_TIMEOUT"] -= 100 + PROCINFO[Service, "READ_TIMEOUT"] -= 100 } NOTE: You should not assume that the read operation will block @@ -15839,7 +15839,7 @@ Login shell A few lines representative of `pwcat''s output are as follows: $ pwcat - -| root:3Ov02d5VaUPB6:0:1:Operator:/:/bin/sh + -| root:x:0:1:Operator:/:/bin/sh -| nobody:*:65534:65534::/: -| daemon:*:1:1::/: -| sys:*:2:2::/:/bin/csh @@ -25908,7 +25908,7 @@ provides a number of `gawk' extensions, including one for processing XML files. This is the evolution of the original `xgawk' (XML `gawk') project. - As of this writing, there are five extensions: + As of this writing, there are six extensions: * GD graphics library extension @@ -25919,6 +25919,8 @@ project. * MPFR library extension (this provides access to a number of MPFR functions which `gawk''s native MPFR support does not) + * Redis extension + * XML parser extension, using the Expat (http://expat.sourceforge.net) XML parsing library @@ -29401,6 +29403,11 @@ Action pattern matches an input record, `awk' executes the rule's action. Actions are always enclosed in braces. (*Note Action Overview::.) +Ada + A programming language originally defined by the U.S. Department of + Defense for embedded programming. It was designed to enforce good + Software Engineering practices. + Amazing `awk' Assembler Henry Spencer at the University of Toronto wrote a retargetable assembler completely as `sed' and `awk' scripts. It is thousands @@ -29409,11 +29416,6 @@ Amazing `awk' Assembler been better written in another language. You can get it from `http://awk.info/?awk100/aaa'. -Ada - A programming language originally defined by the U.S. Department of - Defense for embedded programming. It was designed to enforce good - Software Engineering practices. - Amazingly Workable Formatter (`awf') Henry Spencer at the University of Toronto wrote a formatter that accepts a large subset of the `nroff -ms' and `nroff -man' @@ -31516,7 +31518,7 @@ Index * actions, control statements in: Statements. (line 6) * actions, default: Very Simple. (line 34) * actions, empty: Very Simple. (line 39) -* Ada programming language: Glossary. (line 19) +* Ada programming language: Glossary. (line 11) * adding, features to gawk: Adding Code. (line 6) * adding, fields: Changing Fields. (line 53) * advanced features, fixed-width data: Constant Size. (line 6) @@ -31534,7 +31536,7 @@ Index * algorithms: Basic High Level. (line 68) * allocating memory for extensions: Memory Allocation Functions. (line 6) -* amazing awk assembler (aaa): Glossary. (line 11) +* amazing awk assembler (aaa): Glossary. (line 16) * amazingly workable formatter (awf): Glossary. (line 24) * ambiguity, syntactic: /= operator vs. /=.../ regexp constant: Assignment Ops. (line 148) @@ -32464,7 +32466,7 @@ Index (line 99) * exp: Numeric Functions. (line 18) * expand utility: Very Simple. (line 72) -* Expat XML parser library: gawkextlib. (line 31) +* Expat XML parser library: gawkextlib. (line 33) * exponent: Numeric Functions. (line 18) * expressions: Expressions. (line 6) * expressions, as patterns: Expression Patterns. (line 6) @@ -32878,7 +32880,7 @@ Index * git utility <2>: Accessing The Source. (line 10) * git utility <3>: Other Versions. (line 29) -* git utility: gawkextlib. (line 25) +* git utility: gawkextlib. (line 27) * Git, use of for gawk source code: Derived Files. (line 6) * GNITS mailing list: Acknowledgments. (line 52) * GNU awk, See gawk: Preface. (line 51) @@ -33584,7 +33586,7 @@ Index * programming conventions, private variable names: Library Names. (line 23) * programming language, recipe for: History. (line 6) -* programming languages, Ada: Glossary. (line 19) +* programming languages, Ada: Glossary. (line 11) * programming languages, data-driven vs. procedural: Getting Started. (line 12) * programming languages, Java: Glossary. (line 379) @@ -33789,7 +33791,7 @@ Index * search paths, for source files: AWKPATH Variable. (line 6) * searching, files for regular expressions: Egrep Program. (line 6) * searching, for words: Dupword Program. (line 6) -* sed utility <1>: Glossary. (line 11) +* sed utility <1>: Glossary. (line 16) * sed utility <2>: Simple Sed. (line 6) * sed utility: Full Line Fields. (line 22) * seeding random number generator: Numeric Functions. (line 63) @@ -33933,7 +33935,7 @@ Index * source code, Solaris awk: Other Versions. (line 100) * source files, search path for: Programs Exercises. (line 70) * sparse arrays: Array Intro. (line 72) -* Spencer, Henry: Glossary. (line 11) +* Spencer, Henry: Glossary. (line 16) * split: String Functions. (line 316) * split string into array: String Functions. (line 297) * split utility: Split Program. (line 6) @@ -34307,541 +34309,541 @@ Ref: Manual History-Footnote-166877 Ref: Manual History-Footnote-266918 Node: How To Contribute66992 Node: Acknowledgments68121 -Node: Getting Started72925 -Node: Running gawk75358 -Node: One-shot76548 -Node: Read Terminal77796 -Node: Long79823 -Node: Executable Scripts81339 -Ref: Executable Scripts-Footnote-184128 -Node: Comments84231 -Node: Quoting86713 -Node: DOS Quoting92237 -Node: Sample Data Files92912 -Node: Very Simple95507 -Node: Two Rules100405 -Node: More Complex102291 -Node: Statements/Lines105153 -Ref: Statements/Lines-Footnote-1109608 -Node: Other Features109873 -Node: When110804 -Ref: When-Footnote-1112558 -Node: Intro Summary112623 -Node: Invoking Gawk113506 -Node: Command Line115020 -Node: Options115818 -Ref: Options-Footnote-1131749 -Node: Other Arguments131774 -Node: Naming Standard Input134722 -Node: Environment Variables135815 -Node: AWKPATH Variable136373 -Ref: AWKPATH Variable-Footnote-1139676 -Ref: AWKPATH Variable-Footnote-2139721 -Node: AWKLIBPATH Variable139981 -Node: Other Environment Variables141124 -Node: Exit Status144852 -Node: Include Files145528 -Node: Loading Shared Libraries149125 -Node: Obsolete150552 -Node: Undocumented151249 -Node: Invoking Summary151516 -Node: Regexp153180 -Node: Regexp Usage154634 -Node: Escape Sequences156671 -Node: Regexp Operators162682 -Ref: Regexp Operators-Footnote-1170108 -Ref: Regexp Operators-Footnote-2170255 -Node: Bracket Expressions170353 -Ref: table-char-classes172368 -Node: Leftmost Longest175292 -Node: Computed Regexps176594 -Node: GNU Regexp Operators179991 -Node: Case-sensitivity183664 -Ref: Case-sensitivity-Footnote-1186549 -Ref: Case-sensitivity-Footnote-2186784 -Node: Regexp Summary186892 -Node: Reading Files188359 -Node: Records190453 -Node: awk split records191186 -Node: gawk split records196101 -Ref: gawk split records-Footnote-1200641 -Node: Fields200678 -Ref: Fields-Footnote-1203454 -Node: Nonconstant Fields203540 -Ref: Nonconstant Fields-Footnote-1205783 -Node: Changing Fields205987 -Node: Field Separators211916 -Node: Default Field Splitting214621 -Node: Regexp Field Splitting215738 -Node: Single Character Fields219088 -Node: Command Line Field Separator220147 -Node: Full Line Fields223359 -Ref: Full Line Fields-Footnote-1224888 -Ref: Full Line Fields-Footnote-2224934 -Node: Field Splitting Summary225035 -Node: Constant Size227109 -Node: Splitting By Content231698 -Ref: Splitting By Content-Footnote-1235689 -Node: Multiple Line235852 -Ref: Multiple Line-Footnote-1241738 -Node: Getline241917 -Node: Plain Getline244129 -Node: Getline/Variable246769 -Node: Getline/File247917 -Node: Getline/Variable/File249301 -Ref: Getline/Variable/File-Footnote-1250904 -Node: Getline/Pipe250991 -Node: Getline/Variable/Pipe253674 -Node: Getline/Coprocess254805 -Node: Getline/Variable/Coprocess256057 -Node: Getline Notes256796 -Node: Getline Summary259588 -Ref: table-getline-variants260000 -Node: Read Timeout260829 -Ref: Read Timeout-Footnote-1264648 -Node: Command-line directories264706 -Node: Input Summary265611 -Node: Input Exercises268864 -Node: Printing269592 -Node: Print271369 -Node: Print Examples272826 -Node: Output Separators275605 -Node: OFMT277623 -Node: Printf278977 -Node: Basic Printf279762 -Node: Control Letters281331 -Node: Format Modifiers285315 -Node: Printf Examples291316 -Node: Redirection293802 -Node: Special FD300643 -Ref: Special FD-Footnote-1303803 -Node: Special Files303877 -Node: Other Inherited Files304494 -Node: Special Network305494 -Node: Special Caveats306356 -Node: Close Files And Pipes307307 -Ref: Close Files And Pipes-Footnote-1314489 -Ref: Close Files And Pipes-Footnote-2314637 -Node: Output Summary314787 -Node: Output Exercises315785 -Node: Expressions316465 -Node: Values317650 -Node: Constants318328 -Node: Scalar Constants319019 -Ref: Scalar Constants-Footnote-1319878 -Node: Nondecimal-numbers320128 -Node: Regexp Constants323146 -Node: Using Constant Regexps323671 -Node: Variables326814 -Node: Using Variables327469 -Node: Assignment Options329380 -Node: Conversion331255 -Node: Strings And Numbers331779 -Ref: Strings And Numbers-Footnote-1334844 -Node: Locale influences conversions334953 -Ref: table-locale-affects337700 -Node: All Operators338288 -Node: Arithmetic Ops338918 -Node: Concatenation341423 -Ref: Concatenation-Footnote-1344242 -Node: Assignment Ops344348 -Ref: table-assign-ops349327 -Node: Increment Ops350599 -Node: Truth Values and Conditions354037 -Node: Truth Values355122 -Node: Typing and Comparison356171 -Node: Variable Typing356981 -Node: Comparison Operators360634 -Ref: table-relational-ops361044 -Node: POSIX String Comparison364539 -Ref: POSIX String Comparison-Footnote-1365611 -Node: Boolean Ops365749 -Ref: Boolean Ops-Footnote-1370228 -Node: Conditional Exp370319 -Node: Function Calls372046 -Node: Precedence375926 -Node: Locales379587 -Node: Expressions Summary381219 -Node: Patterns and Actions383779 -Node: Pattern Overview384899 -Node: Regexp Patterns386578 -Node: Expression Patterns387121 -Node: Ranges390902 -Node: BEGIN/END394008 -Node: Using BEGIN/END394769 -Ref: Using BEGIN/END-Footnote-1397503 -Node: I/O And BEGIN/END397609 -Node: BEGINFILE/ENDFILE399923 -Node: Empty402824 -Node: Using Shell Variables403141 -Node: Action Overview405414 -Node: Statements407740 -Node: If Statement409588 -Node: While Statement411083 -Node: Do Statement413112 -Node: For Statement414256 -Node: Switch Statement417413 -Node: Break Statement419795 -Node: Continue Statement421836 -Node: Next Statement423663 -Node: Nextfile Statement426044 -Node: Exit Statement428674 -Node: Built-in Variables431077 -Node: User-modified432210 -Ref: User-modified-Footnote-1439891 -Node: Auto-set439953 -Ref: Auto-set-Footnote-1452988 -Ref: Auto-set-Footnote-2453193 -Node: ARGC and ARGV453249 -Node: Pattern Action Summary457467 -Node: Arrays459894 -Node: Array Basics461223 -Node: Array Intro462067 -Ref: figure-array-elements464031 -Ref: Array Intro-Footnote-1466557 -Node: Reference to Elements466685 -Node: Assigning Elements469137 -Node: Array Example469628 -Node: Scanning an Array471386 -Node: Controlling Scanning474402 -Ref: Controlling Scanning-Footnote-1479598 -Node: Numeric Array Subscripts479914 -Node: Uninitialized Subscripts482099 -Node: Delete483716 -Ref: Delete-Footnote-1486459 -Node: Multidimensional486516 -Node: Multiscanning489613 -Node: Arrays of Arrays491202 -Node: Arrays Summary495961 -Node: Functions498053 -Node: Built-in498926 -Node: Calling Built-in500004 -Node: Numeric Functions501995 -Ref: Numeric Functions-Footnote-1506012 -Ref: Numeric Functions-Footnote-2506369 -Ref: Numeric Functions-Footnote-3506417 -Node: String Functions506689 -Ref: String Functions-Footnote-1530164 -Ref: String Functions-Footnote-2530293 -Ref: String Functions-Footnote-3530541 -Node: Gory Details530628 -Ref: table-sub-escapes532409 -Ref: table-sub-proposed533929 -Ref: table-posix-sub535293 -Ref: table-gensub-escapes536829 -Ref: Gory Details-Footnote-1537661 -Node: I/O Functions537812 -Ref: I/O Functions-Footnote-1545030 -Node: Time Functions545177 -Ref: Time Functions-Footnote-1555665 -Ref: Time Functions-Footnote-2555733 -Ref: Time Functions-Footnote-3555891 -Ref: Time Functions-Footnote-4556002 -Ref: Time Functions-Footnote-5556114 -Ref: Time Functions-Footnote-6556341 -Node: Bitwise Functions556607 -Ref: table-bitwise-ops557169 -Ref: Bitwise Functions-Footnote-1561478 -Node: Type Functions561647 -Node: I18N Functions562798 -Node: User-defined564443 -Node: Definition Syntax565248 -Ref: Definition Syntax-Footnote-1570655 -Node: Function Example570726 -Ref: Function Example-Footnote-1573645 -Node: Function Caveats573667 -Node: Calling A Function574185 -Node: Variable Scope575143 -Node: Pass By Value/Reference578131 -Node: Return Statement581626 -Node: Dynamic Typing584607 -Node: Indirect Calls585536 -Ref: Indirect Calls-Footnote-1596838 -Node: Functions Summary596966 -Node: Library Functions599668 -Ref: Library Functions-Footnote-1603277 -Ref: Library Functions-Footnote-2603420 -Node: Library Names603591 -Ref: Library Names-Footnote-1607045 -Ref: Library Names-Footnote-2607268 -Node: General Functions607354 -Node: Strtonum Function608457 -Node: Assert Function611479 -Node: Round Function614803 -Node: Cliff Random Function616344 -Node: Ordinal Functions617360 -Ref: Ordinal Functions-Footnote-1620423 -Ref: Ordinal Functions-Footnote-2620675 -Node: Join Function620886 -Ref: Join Function-Footnote-1622655 -Node: Getlocaltime Function622855 -Node: Readfile Function626599 -Node: Shell Quoting628569 -Node: Data File Management629970 -Node: Filetrans Function630602 -Node: Rewind Function634658 -Node: File Checking636045 -Ref: File Checking-Footnote-1637377 -Node: Empty Files637578 -Node: Ignoring Assigns639557 -Node: Getopt Function641108 -Ref: Getopt Function-Footnote-1652570 -Node: Passwd Functions652770 -Ref: Passwd Functions-Footnote-1661619 -Node: Group Functions661707 -Ref: Group Functions-Footnote-1669601 -Node: Walking Arrays669814 -Node: Library Functions Summary671417 -Node: Library Exercises672818 -Node: Sample Programs674098 -Node: Running Examples674868 -Node: Clones675596 -Node: Cut Program676820 -Node: Egrep Program686539 -Ref: Egrep Program-Footnote-1694037 -Node: Id Program694147 -Node: Split Program697792 -Ref: Split Program-Footnote-1701240 -Node: Tee Program701368 -Node: Uniq Program704157 -Node: Wc Program711576 -Ref: Wc Program-Footnote-1715826 -Node: Miscellaneous Programs715920 -Node: Dupword Program717133 -Node: Alarm Program719164 -Node: Translate Program723968 -Ref: Translate Program-Footnote-1728533 -Node: Labels Program728803 -Ref: Labels Program-Footnote-1732154 -Node: Word Sorting732238 -Node: History Sorting736309 -Node: Extract Program738145 -Node: Simple Sed745670 -Node: Igawk Program748738 -Ref: Igawk Program-Footnote-1763062 -Ref: Igawk Program-Footnote-2763263 -Ref: Igawk Program-Footnote-3763385 -Node: Anagram Program763500 -Node: Signature Program766557 -Node: Programs Summary767804 -Node: Programs Exercises768997 -Ref: Programs Exercises-Footnote-1773128 -Node: Advanced Features773219 -Node: Nondecimal Data775167 -Node: Array Sorting776757 -Node: Controlling Array Traversal777454 -Ref: Controlling Array Traversal-Footnote-1785787 -Node: Array Sorting Functions785905 -Ref: Array Sorting Functions-Footnote-1789794 -Node: Two-way I/O789990 -Ref: Two-way I/O-Footnote-1794931 -Ref: Two-way I/O-Footnote-2795117 -Node: TCP/IP Networking795199 -Node: Profiling798072 -Node: Advanced Features Summary805619 -Node: Internationalization807552 -Node: I18N and L10N809032 -Node: Explaining gettext809718 -Ref: Explaining gettext-Footnote-1814743 -Ref: Explaining gettext-Footnote-2814927 -Node: Programmer i18n815092 -Ref: Programmer i18n-Footnote-1819958 -Node: Translator i18n820007 -Node: String Extraction820801 -Ref: String Extraction-Footnote-1821932 -Node: Printf Ordering822018 -Ref: Printf Ordering-Footnote-1824804 -Node: I18N Portability824868 -Ref: I18N Portability-Footnote-1827323 -Node: I18N Example827386 -Ref: I18N Example-Footnote-1830189 -Node: Gawk I18N830261 -Node: I18N Summary830899 -Node: Debugger832238 -Node: Debugging833260 -Node: Debugging Concepts833701 -Node: Debugging Terms835554 -Node: Awk Debugging838126 -Node: Sample Debugging Session839020 -Node: Debugger Invocation839540 -Node: Finding The Bug840924 -Node: List of Debugger Commands847399 -Node: Breakpoint Control848732 -Node: Debugger Execution Control852428 -Node: Viewing And Changing Data855792 -Node: Execution Stack859170 -Node: Debugger Info860807 -Node: Miscellaneous Debugger Commands864824 -Node: Readline Support869853 -Node: Limitations870745 -Node: Debugging Summary872859 -Node: Arbitrary Precision Arithmetic874027 -Node: Computer Arithmetic875443 -Ref: table-numeric-ranges879041 -Ref: Computer Arithmetic-Footnote-1879900 -Node: Math Definitions879957 -Ref: table-ieee-formats883245 -Ref: Math Definitions-Footnote-1883849 -Node: MPFR features883954 -Node: FP Math Caution885625 -Ref: FP Math Caution-Footnote-1886675 -Node: Inexactness of computations887044 -Node: Inexact representation888003 -Node: Comparing FP Values889360 -Node: Errors accumulate890442 -Node: Getting Accuracy891875 -Node: Try To Round894537 -Node: Setting precision895436 -Ref: table-predefined-precision-strings896120 -Node: Setting the rounding mode897909 -Ref: table-gawk-rounding-modes898273 -Ref: Setting the rounding mode-Footnote-1901728 -Node: Arbitrary Precision Integers901907 -Ref: Arbitrary Precision Integers-Footnote-1904893 -Node: POSIX Floating Point Problems905042 -Ref: POSIX Floating Point Problems-Footnote-1908915 -Node: Floating point summary908953 -Node: Dynamic Extensions911147 -Node: Extension Intro912699 -Node: Plugin License913965 -Node: Extension Mechanism Outline914762 -Ref: figure-load-extension915190 -Ref: figure-register-new-function916670 -Ref: figure-call-new-function917674 -Node: Extension API Description919660 -Node: Extension API Functions Introduction921110 -Node: General Data Types925934 -Ref: General Data Types-Footnote-1931673 -Node: Memory Allocation Functions931972 -Ref: Memory Allocation Functions-Footnote-1934811 -Node: Constructor Functions934907 -Node: Registration Functions936641 -Node: Extension Functions937326 -Node: Exit Callback Functions939623 -Node: Extension Version String940871 -Node: Input Parsers941536 -Node: Output Wrappers951413 -Node: Two-way processors955928 -Node: Printing Messages958132 -Ref: Printing Messages-Footnote-1959208 -Node: Updating `ERRNO'959360 -Node: Requesting Values960100 -Ref: table-value-types-returned960828 -Node: Accessing Parameters961785 -Node: Symbol Table Access963016 -Node: Symbol table by name963530 -Node: Symbol table by cookie965511 -Ref: Symbol table by cookie-Footnote-1969655 -Node: Cached values969718 -Ref: Cached values-Footnote-1973217 -Node: Array Manipulation973308 -Ref: Array Manipulation-Footnote-1974406 -Node: Array Data Types974443 -Ref: Array Data Types-Footnote-1977098 -Node: Array Functions977190 -Node: Flattening Arrays981044 -Node: Creating Arrays987936 -Node: Extension API Variables992705 -Node: Extension Versioning993341 -Node: Extension API Informational Variables995242 -Node: Extension API Boilerplate996330 -Node: Finding Extensions1000139 -Node: Extension Example1000699 -Node: Internal File Description1001471 -Node: Internal File Ops1005538 -Ref: Internal File Ops-Footnote-11017208 -Node: Using Internal File Ops1017348 -Ref: Using Internal File Ops-Footnote-11019731 -Node: Extension Samples1020004 -Node: Extension Sample File Functions1021530 -Node: Extension Sample Fnmatch1029168 -Node: Extension Sample Fork1030659 -Node: Extension Sample Inplace1031874 -Node: Extension Sample Ord1033549 -Node: Extension Sample Readdir1034385 -Ref: table-readdir-file-types1035261 -Node: Extension Sample Revout1036072 -Node: Extension Sample Rev2way1036662 -Node: Extension Sample Read write array1037402 -Node: Extension Sample Readfile1039342 -Node: Extension Sample Time1040437 -Node: Extension Sample API Tests1041786 -Node: gawkextlib1042277 -Node: Extension summary1044914 -Node: Extension Exercises1048591 -Node: Language History1049313 -Node: V7/SVR3.11050969 -Node: SVR41053150 -Node: POSIX1054595 -Node: BTL1055984 -Node: POSIX/GNU1056718 -Node: Feature History1062282 -Node: Common Extensions1075380 -Node: Ranges and Locales1076704 -Ref: Ranges and Locales-Footnote-11081322 -Ref: Ranges and Locales-Footnote-21081349 -Ref: Ranges and Locales-Footnote-31081583 -Node: Contributors1081804 -Node: History summary1087345 -Node: Installation1088715 -Node: Gawk Distribution1089661 -Node: Getting1090145 -Node: Extracting1090968 -Node: Distribution contents1092603 -Node: Unix Installation1098320 -Node: Quick Installation1098937 -Node: Additional Configuration Options1101361 -Node: Configuration Philosophy1103099 -Node: Non-Unix Installation1105468 -Node: PC Installation1105926 -Node: PC Binary Installation1107245 -Node: PC Compiling1109093 -Ref: PC Compiling-Footnote-11112114 -Node: PC Testing1112223 -Node: PC Using1113399 -Node: Cygwin1117514 -Node: MSYS1118337 -Node: VMS Installation1118837 -Node: VMS Compilation1119629 -Ref: VMS Compilation-Footnote-11120851 -Node: VMS Dynamic Extensions1120909 -Node: VMS Installation Details1122593 -Node: VMS Running1124845 -Node: VMS GNV1127681 -Node: VMS Old Gawk1128415 -Node: Bugs1128885 -Node: Other Versions1132768 -Node: Installation summary1139190 -Node: Notes1140246 -Node: Compatibility Mode1141111 -Node: Additions1141893 -Node: Accessing The Source1142818 -Node: Adding Code1144254 -Node: New Ports1150419 -Node: Derived Files1154901 -Ref: Derived Files-Footnote-11160376 -Ref: Derived Files-Footnote-21160410 -Ref: Derived Files-Footnote-31161006 -Node: Future Extensions1161120 -Node: Implementation Limitations1161726 -Node: Extension Design1162974 -Node: Old Extension Problems1164128 -Ref: Old Extension Problems-Footnote-11165645 -Node: Extension New Mechanism Goals1165702 -Ref: Extension New Mechanism Goals-Footnote-11169062 -Node: Extension Other Design Decisions1169251 -Node: Extension Future Growth1171359 -Node: Old Extension Mechanism1172195 -Node: Notes summary1173957 -Node: Basic Concepts1175143 -Node: Basic High Level1175824 -Ref: figure-general-flow1176096 -Ref: figure-process-flow1176695 -Ref: Basic High Level-Footnote-11179924 -Node: Basic Data Typing1180109 -Node: Glossary1183437 -Node: Copying1208595 -Node: GNU Free Documentation License1246151 -Node: Index1271287 +Node: Getting Started72926 +Node: Running gawk75359 +Node: One-shot76549 +Node: Read Terminal77797 +Node: Long79824 +Node: Executable Scripts81340 +Ref: Executable Scripts-Footnote-184129 +Node: Comments84232 +Node: Quoting86714 +Node: DOS Quoting92238 +Node: Sample Data Files92913 +Node: Very Simple95508 +Node: Two Rules100406 +Node: More Complex102292 +Node: Statements/Lines105154 +Ref: Statements/Lines-Footnote-1109609 +Node: Other Features109874 +Node: When110805 +Ref: When-Footnote-1112559 +Node: Intro Summary112624 +Node: Invoking Gawk113507 +Node: Command Line115021 +Node: Options115819 +Ref: Options-Footnote-1131750 +Node: Other Arguments131775 +Node: Naming Standard Input134723 +Node: Environment Variables135816 +Node: AWKPATH Variable136374 +Ref: AWKPATH Variable-Footnote-1139677 +Ref: AWKPATH Variable-Footnote-2139722 +Node: AWKLIBPATH Variable139982 +Node: Other Environment Variables141125 +Node: Exit Status144853 +Node: Include Files145529 +Node: Loading Shared Libraries149126 +Node: Obsolete150553 +Node: Undocumented151250 +Node: Invoking Summary151517 +Node: Regexp153181 +Node: Regexp Usage154635 +Node: Escape Sequences156672 +Node: Regexp Operators162683 +Ref: Regexp Operators-Footnote-1170109 +Ref: Regexp Operators-Footnote-2170256 +Node: Bracket Expressions170354 +Ref: table-char-classes172369 +Node: Leftmost Longest175293 +Node: Computed Regexps176595 +Node: GNU Regexp Operators179992 +Node: Case-sensitivity183665 +Ref: Case-sensitivity-Footnote-1186550 +Ref: Case-sensitivity-Footnote-2186785 +Node: Regexp Summary186893 +Node: Reading Files188360 +Node: Records190454 +Node: awk split records191187 +Node: gawk split records196102 +Ref: gawk split records-Footnote-1200642 +Node: Fields200679 +Ref: Fields-Footnote-1203455 +Node: Nonconstant Fields203541 +Ref: Nonconstant Fields-Footnote-1205784 +Node: Changing Fields205988 +Node: Field Separators211917 +Node: Default Field Splitting214622 +Node: Regexp Field Splitting215739 +Node: Single Character Fields219089 +Node: Command Line Field Separator220148 +Node: Full Line Fields223360 +Ref: Full Line Fields-Footnote-1224877 +Ref: Full Line Fields-Footnote-2224923 +Node: Field Splitting Summary225024 +Node: Constant Size227098 +Node: Splitting By Content231687 +Ref: Splitting By Content-Footnote-1235681 +Node: Multiple Line235844 +Ref: Multiple Line-Footnote-1241730 +Node: Getline241909 +Node: Plain Getline244121 +Node: Getline/Variable246761 +Node: Getline/File247909 +Node: Getline/Variable/File249293 +Ref: Getline/Variable/File-Footnote-1250896 +Node: Getline/Pipe250983 +Node: Getline/Variable/Pipe253666 +Node: Getline/Coprocess254797 +Node: Getline/Variable/Coprocess256049 +Node: Getline Notes256788 +Node: Getline Summary259580 +Ref: table-getline-variants259992 +Node: Read Timeout260821 +Ref: Read Timeout-Footnote-1264646 +Node: Command-line directories264704 +Node: Input Summary265609 +Node: Input Exercises268862 +Node: Printing269590 +Node: Print271367 +Node: Print Examples272824 +Node: Output Separators275603 +Node: OFMT277621 +Node: Printf278975 +Node: Basic Printf279760 +Node: Control Letters281329 +Node: Format Modifiers285313 +Node: Printf Examples291314 +Node: Redirection293800 +Node: Special FD300641 +Ref: Special FD-Footnote-1303801 +Node: Special Files303875 +Node: Other Inherited Files304492 +Node: Special Network305492 +Node: Special Caveats306354 +Node: Close Files And Pipes307305 +Ref: Close Files And Pipes-Footnote-1314487 +Ref: Close Files And Pipes-Footnote-2314635 +Node: Output Summary314785 +Node: Output Exercises315783 +Node: Expressions316463 +Node: Values317648 +Node: Constants318326 +Node: Scalar Constants319017 +Ref: Scalar Constants-Footnote-1319876 +Node: Nondecimal-numbers320126 +Node: Regexp Constants323144 +Node: Using Constant Regexps323669 +Node: Variables326812 +Node: Using Variables327467 +Node: Assignment Options329378 +Node: Conversion331253 +Node: Strings And Numbers331777 +Ref: Strings And Numbers-Footnote-1334842 +Node: Locale influences conversions334951 +Ref: table-locale-affects337698 +Node: All Operators338286 +Node: Arithmetic Ops338916 +Node: Concatenation341421 +Ref: Concatenation-Footnote-1344240 +Node: Assignment Ops344346 +Ref: table-assign-ops349325 +Node: Increment Ops350597 +Node: Truth Values and Conditions354035 +Node: Truth Values355120 +Node: Typing and Comparison356169 +Node: Variable Typing356979 +Node: Comparison Operators360632 +Ref: table-relational-ops361042 +Node: POSIX String Comparison364537 +Ref: POSIX String Comparison-Footnote-1365609 +Node: Boolean Ops365747 +Ref: Boolean Ops-Footnote-1370226 +Node: Conditional Exp370317 +Node: Function Calls372044 +Node: Precedence375924 +Node: Locales379585 +Node: Expressions Summary381217 +Node: Patterns and Actions383777 +Node: Pattern Overview384897 +Node: Regexp Patterns386576 +Node: Expression Patterns387119 +Node: Ranges390900 +Node: BEGIN/END394006 +Node: Using BEGIN/END394767 +Ref: Using BEGIN/END-Footnote-1397501 +Node: I/O And BEGIN/END397607 +Node: BEGINFILE/ENDFILE399921 +Node: Empty402822 +Node: Using Shell Variables403139 +Node: Action Overview405412 +Node: Statements407738 +Node: If Statement409586 +Node: While Statement411081 +Node: Do Statement413110 +Node: For Statement414254 +Node: Switch Statement417411 +Node: Break Statement419793 +Node: Continue Statement421834 +Node: Next Statement423661 +Node: Nextfile Statement426042 +Node: Exit Statement428672 +Node: Built-in Variables431075 +Node: User-modified432208 +Ref: User-modified-Footnote-1439889 +Node: Auto-set439951 +Ref: Auto-set-Footnote-1452986 +Ref: Auto-set-Footnote-2453191 +Node: ARGC and ARGV453247 +Node: Pattern Action Summary457465 +Node: Arrays459892 +Node: Array Basics461221 +Node: Array Intro462065 +Ref: figure-array-elements464029 +Ref: Array Intro-Footnote-1466555 +Node: Reference to Elements466683 +Node: Assigning Elements469135 +Node: Array Example469626 +Node: Scanning an Array471384 +Node: Controlling Scanning474400 +Ref: Controlling Scanning-Footnote-1479596 +Node: Numeric Array Subscripts479912 +Node: Uninitialized Subscripts482097 +Node: Delete483714 +Ref: Delete-Footnote-1486457 +Node: Multidimensional486514 +Node: Multiscanning489611 +Node: Arrays of Arrays491200 +Node: Arrays Summary495959 +Node: Functions498051 +Node: Built-in498924 +Node: Calling Built-in500002 +Node: Numeric Functions501993 +Ref: Numeric Functions-Footnote-1506010 +Ref: Numeric Functions-Footnote-2506367 +Ref: Numeric Functions-Footnote-3506415 +Node: String Functions506687 +Ref: String Functions-Footnote-1530162 +Ref: String Functions-Footnote-2530291 +Ref: String Functions-Footnote-3530539 +Node: Gory Details530626 +Ref: table-sub-escapes532407 +Ref: table-sub-proposed533927 +Ref: table-posix-sub535291 +Ref: table-gensub-escapes536827 +Ref: Gory Details-Footnote-1537659 +Node: I/O Functions537810 +Ref: I/O Functions-Footnote-1545028 +Node: Time Functions545175 +Ref: Time Functions-Footnote-1555663 +Ref: Time Functions-Footnote-2555731 +Ref: Time Functions-Footnote-3555889 +Ref: Time Functions-Footnote-4556000 +Ref: Time Functions-Footnote-5556112 +Ref: Time Functions-Footnote-6556339 +Node: Bitwise Functions556605 +Ref: table-bitwise-ops557167 +Ref: Bitwise Functions-Footnote-1561476 +Node: Type Functions561645 +Node: I18N Functions562796 +Node: User-defined564441 +Node: Definition Syntax565246 +Ref: Definition Syntax-Footnote-1570653 +Node: Function Example570724 +Ref: Function Example-Footnote-1573643 +Node: Function Caveats573665 +Node: Calling A Function574183 +Node: Variable Scope575141 +Node: Pass By Value/Reference578129 +Node: Return Statement581624 +Node: Dynamic Typing584605 +Node: Indirect Calls585534 +Ref: Indirect Calls-Footnote-1596836 +Node: Functions Summary596964 +Node: Library Functions599666 +Ref: Library Functions-Footnote-1603275 +Ref: Library Functions-Footnote-2603418 +Node: Library Names603589 +Ref: Library Names-Footnote-1607043 +Ref: Library Names-Footnote-2607266 +Node: General Functions607352 +Node: Strtonum Function608455 +Node: Assert Function611477 +Node: Round Function614801 +Node: Cliff Random Function616342 +Node: Ordinal Functions617358 +Ref: Ordinal Functions-Footnote-1620421 +Ref: Ordinal Functions-Footnote-2620673 +Node: Join Function620884 +Ref: Join Function-Footnote-1622653 +Node: Getlocaltime Function622853 +Node: Readfile Function626597 +Node: Shell Quoting628567 +Node: Data File Management629968 +Node: Filetrans Function630600 +Node: Rewind Function634656 +Node: File Checking636043 +Ref: File Checking-Footnote-1637375 +Node: Empty Files637576 +Node: Ignoring Assigns639555 +Node: Getopt Function641106 +Ref: Getopt Function-Footnote-1652568 +Node: Passwd Functions652768 +Ref: Passwd Functions-Footnote-1661605 +Node: Group Functions661693 +Ref: Group Functions-Footnote-1669587 +Node: Walking Arrays669800 +Node: Library Functions Summary671403 +Node: Library Exercises672804 +Node: Sample Programs674084 +Node: Running Examples674854 +Node: Clones675582 +Node: Cut Program676806 +Node: Egrep Program686525 +Ref: Egrep Program-Footnote-1694023 +Node: Id Program694133 +Node: Split Program697778 +Ref: Split Program-Footnote-1701226 +Node: Tee Program701354 +Node: Uniq Program704143 +Node: Wc Program711562 +Ref: Wc Program-Footnote-1715812 +Node: Miscellaneous Programs715906 +Node: Dupword Program717119 +Node: Alarm Program719150 +Node: Translate Program723954 +Ref: Translate Program-Footnote-1728519 +Node: Labels Program728789 +Ref: Labels Program-Footnote-1732140 +Node: Word Sorting732224 +Node: History Sorting736295 +Node: Extract Program738131 +Node: Simple Sed745656 +Node: Igawk Program748724 +Ref: Igawk Program-Footnote-1763048 +Ref: Igawk Program-Footnote-2763249 +Ref: Igawk Program-Footnote-3763371 +Node: Anagram Program763486 +Node: Signature Program766543 +Node: Programs Summary767790 +Node: Programs Exercises768983 +Ref: Programs Exercises-Footnote-1773114 +Node: Advanced Features773205 +Node: Nondecimal Data775153 +Node: Array Sorting776743 +Node: Controlling Array Traversal777440 +Ref: Controlling Array Traversal-Footnote-1785773 +Node: Array Sorting Functions785891 +Ref: Array Sorting Functions-Footnote-1789780 +Node: Two-way I/O789976 +Ref: Two-way I/O-Footnote-1794917 +Ref: Two-way I/O-Footnote-2795103 +Node: TCP/IP Networking795185 +Node: Profiling798058 +Node: Advanced Features Summary805605 +Node: Internationalization807538 +Node: I18N and L10N809018 +Node: Explaining gettext809704 +Ref: Explaining gettext-Footnote-1814729 +Ref: Explaining gettext-Footnote-2814913 +Node: Programmer i18n815078 +Ref: Programmer i18n-Footnote-1819944 +Node: Translator i18n819993 +Node: String Extraction820787 +Ref: String Extraction-Footnote-1821918 +Node: Printf Ordering822004 +Ref: Printf Ordering-Footnote-1824790 +Node: I18N Portability824854 +Ref: I18N Portability-Footnote-1827309 +Node: I18N Example827372 +Ref: I18N Example-Footnote-1830175 +Node: Gawk I18N830247 +Node: I18N Summary830885 +Node: Debugger832224 +Node: Debugging833246 +Node: Debugging Concepts833687 +Node: Debugging Terms835540 +Node: Awk Debugging838112 +Node: Sample Debugging Session839006 +Node: Debugger Invocation839526 +Node: Finding The Bug840910 +Node: List of Debugger Commands847385 +Node: Breakpoint Control848718 +Node: Debugger Execution Control852414 +Node: Viewing And Changing Data855778 +Node: Execution Stack859156 +Node: Debugger Info860793 +Node: Miscellaneous Debugger Commands864810 +Node: Readline Support869839 +Node: Limitations870731 +Node: Debugging Summary872845 +Node: Arbitrary Precision Arithmetic874013 +Node: Computer Arithmetic875429 +Ref: table-numeric-ranges879027 +Ref: Computer Arithmetic-Footnote-1879886 +Node: Math Definitions879943 +Ref: table-ieee-formats883231 +Ref: Math Definitions-Footnote-1883835 +Node: MPFR features883940 +Node: FP Math Caution885611 +Ref: FP Math Caution-Footnote-1886661 +Node: Inexactness of computations887030 +Node: Inexact representation887989 +Node: Comparing FP Values889346 +Node: Errors accumulate890428 +Node: Getting Accuracy891861 +Node: Try To Round894523 +Node: Setting precision895422 +Ref: table-predefined-precision-strings896106 +Node: Setting the rounding mode897895 +Ref: table-gawk-rounding-modes898259 +Ref: Setting the rounding mode-Footnote-1901714 +Node: Arbitrary Precision Integers901893 +Ref: Arbitrary Precision Integers-Footnote-1904879 +Node: POSIX Floating Point Problems905028 +Ref: POSIX Floating Point Problems-Footnote-1908901 +Node: Floating point summary908939 +Node: Dynamic Extensions911133 +Node: Extension Intro912685 +Node: Plugin License913951 +Node: Extension Mechanism Outline914748 +Ref: figure-load-extension915176 +Ref: figure-register-new-function916656 +Ref: figure-call-new-function917660 +Node: Extension API Description919646 +Node: Extension API Functions Introduction921096 +Node: General Data Types925920 +Ref: General Data Types-Footnote-1931659 +Node: Memory Allocation Functions931958 +Ref: Memory Allocation Functions-Footnote-1934797 +Node: Constructor Functions934893 +Node: Registration Functions936627 +Node: Extension Functions937312 +Node: Exit Callback Functions939609 +Node: Extension Version String940857 +Node: Input Parsers941522 +Node: Output Wrappers951399 +Node: Two-way processors955914 +Node: Printing Messages958118 +Ref: Printing Messages-Footnote-1959194 +Node: Updating `ERRNO'959346 +Node: Requesting Values960086 +Ref: table-value-types-returned960814 +Node: Accessing Parameters961771 +Node: Symbol Table Access963002 +Node: Symbol table by name963516 +Node: Symbol table by cookie965497 +Ref: Symbol table by cookie-Footnote-1969641 +Node: Cached values969704 +Ref: Cached values-Footnote-1973203 +Node: Array Manipulation973294 +Ref: Array Manipulation-Footnote-1974392 +Node: Array Data Types974429 +Ref: Array Data Types-Footnote-1977084 +Node: Array Functions977176 +Node: Flattening Arrays981030 +Node: Creating Arrays987922 +Node: Extension API Variables992691 +Node: Extension Versioning993327 +Node: Extension API Informational Variables995228 +Node: Extension API Boilerplate996316 +Node: Finding Extensions1000125 +Node: Extension Example1000685 +Node: Internal File Description1001457 +Node: Internal File Ops1005524 +Ref: Internal File Ops-Footnote-11017194 +Node: Using Internal File Ops1017334 +Ref: Using Internal File Ops-Footnote-11019717 +Node: Extension Samples1019990 +Node: Extension Sample File Functions1021516 +Node: Extension Sample Fnmatch1029154 +Node: Extension Sample Fork1030645 +Node: Extension Sample Inplace1031860 +Node: Extension Sample Ord1033535 +Node: Extension Sample Readdir1034371 +Ref: table-readdir-file-types1035247 +Node: Extension Sample Revout1036058 +Node: Extension Sample Rev2way1036648 +Node: Extension Sample Read write array1037388 +Node: Extension Sample Readfile1039328 +Node: Extension Sample Time1040423 +Node: Extension Sample API Tests1041772 +Node: gawkextlib1042263 +Node: Extension summary1044921 +Node: Extension Exercises1048598 +Node: Language History1049320 +Node: V7/SVR3.11050976 +Node: SVR41053157 +Node: POSIX1054602 +Node: BTL1055991 +Node: POSIX/GNU1056725 +Node: Feature History1062289 +Node: Common Extensions1075387 +Node: Ranges and Locales1076711 +Ref: Ranges and Locales-Footnote-11081329 +Ref: Ranges and Locales-Footnote-21081356 +Ref: Ranges and Locales-Footnote-31081590 +Node: Contributors1081811 +Node: History summary1087352 +Node: Installation1088722 +Node: Gawk Distribution1089668 +Node: Getting1090152 +Node: Extracting1090975 +Node: Distribution contents1092610 +Node: Unix Installation1098327 +Node: Quick Installation1098944 +Node: Additional Configuration Options1101368 +Node: Configuration Philosophy1103106 +Node: Non-Unix Installation1105475 +Node: PC Installation1105933 +Node: PC Binary Installation1107252 +Node: PC Compiling1109100 +Ref: PC Compiling-Footnote-11112121 +Node: PC Testing1112230 +Node: PC Using1113406 +Node: Cygwin1117521 +Node: MSYS1118344 +Node: VMS Installation1118844 +Node: VMS Compilation1119636 +Ref: VMS Compilation-Footnote-11120858 +Node: VMS Dynamic Extensions1120916 +Node: VMS Installation Details1122600 +Node: VMS Running1124852 +Node: VMS GNV1127688 +Node: VMS Old Gawk1128422 +Node: Bugs1128892 +Node: Other Versions1132775 +Node: Installation summary1139197 +Node: Notes1140253 +Node: Compatibility Mode1141118 +Node: Additions1141900 +Node: Accessing The Source1142825 +Node: Adding Code1144261 +Node: New Ports1150426 +Node: Derived Files1154908 +Ref: Derived Files-Footnote-11160383 +Ref: Derived Files-Footnote-21160417 +Ref: Derived Files-Footnote-31161013 +Node: Future Extensions1161127 +Node: Implementation Limitations1161733 +Node: Extension Design1162981 +Node: Old Extension Problems1164135 +Ref: Old Extension Problems-Footnote-11165652 +Node: Extension New Mechanism Goals1165709 +Ref: Extension New Mechanism Goals-Footnote-11169069 +Node: Extension Other Design Decisions1169258 +Node: Extension Future Growth1171366 +Node: Old Extension Mechanism1172202 +Node: Notes summary1173964 +Node: Basic Concepts1175150 +Node: Basic High Level1175831 +Ref: figure-general-flow1176103 +Ref: figure-process-flow1176702 +Ref: Basic High Level-Footnote-11179931 +Node: Basic Data Typing1180116 +Node: Glossary1183444 +Node: Copying1208602 +Node: GNU Free Documentation License1246158 +Node: Index1271294 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 4da01e05..66174009 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -2233,7 +2233,7 @@ the fourth edition and for his support during the work. Thanks to Jasmine Kwityn for her copy-editing work. @end ifset -Thanks to Michael Brennan for the Foreword. +Thanks to Michael Brennan for the Forewords. @cindex Duman, Patrice @cindex Berry, Karl @@ -7495,7 +7495,7 @@ on an incorrect implementation of @command{awk}, while @command{gawk} prints the full first line of the file, something like: @example -root:nSijPlPhZZwgE:0:0:Root:/: +root:x:0:0:Root:/: @end example @docbook @@ -7548,7 +7548,7 @@ on an incorrect implementation of @command{awk}, while @command{gawk} prints the full first line of the file, something like: @example -root:nSijPlPhZZwgE:0:0:Root:/: +root:x:0:0:Root:/: @end example @end cartouche @end ifnotdocbook @@ -7885,7 +7885,7 @@ will be @code{"FPAT"} if content-based field splitting is being used. @quotation NOTE Some programs export CSV data that contains embedded newlines between the double quotes. @command{gawk} provides no way to deal with this. -Because no formal specification for CSV data exists, there isn't much +Even though a formal specification for CSV data exists, there isn't much more to be done; the @code{FPAT} mechanism provides an elegant solution for the majority of cases, and the @command{gawk} developers are satisfied with that. @@ -8617,7 +8617,7 @@ Using @code{FILENAME} with @code{getline} is likely to be a source for confusion. @command{awk} opens a separate input stream from the current input file. However, by not using a variable, @code{$0} -and @code{NR} are still updated. If you're doing this, it's +and @code{NF} are still updated. If you're doing this, it's probably by accident, and you should reconsider what it is you're trying to accomplish. @@ -8760,7 +8760,7 @@ for the input to arrive: PROCINFO[Service, "READ_TIMEOUT"] = 1000 while ((Service |& getline) > 0) @{ print $0 - PROCINFO[S, "READ_TIMEOUT"] -= 100 + PROCINFO[Service, "READ_TIMEOUT"] -= 100 @} @end example @@ -22533,7 +22533,7 @@ A few lines representative of @command{pwcat}'s output are as follows: @cindex Robbins, Miriam @example $ @kbd{pwcat} -@print{} root:3Ov02d5VaUPB6:0:1:Operator:/:/bin/sh +@print{} root:x:0:1:Operator:/:/bin/sh @print{} nobody:*:65534:65534::/: @print{} daemon:*:1:1::/: @print{} sys:*:2:2::/:/bin/csh @@ -35117,7 +35117,7 @@ project provides a number of @command{gawk} extensions, including one for processing XML files. This is the evolution of the original @command{xgawk} (XML @command{gawk}) project. -As of this writing, there are five extensions: +As of this writing, there are six extensions: @itemize @value{BULLET} @item @@ -35135,6 +35135,9 @@ MPFR library extension native MPFR support does not) @item +Redis extension + +@item XML parser extension, using the @uref{http://expat.sourceforge.net, Expat} XML parsing library @end itemize @@ -39894,6 +39897,13 @@ pattern matches an input record, @command{awk} executes the rule's action. Actions are always enclosed in braces. (@xref{Action Overview}.) +@cindex Ada programming language +@cindex programming languages, Ada +@item Ada +A programming language originally defined by the U.S.@: Department of +Defense for embedded programming. It was designed to enforce good +Software Engineering practices. + @cindex Spencer, Henry @cindex @command{sed} utility @cindex amazing @command{awk} assembler (@command{aaa}) @@ -39905,13 +39915,6 @@ microcomputers. It is a good example of a program that would have been better written in another language. You can get it from @uref{http://awk.info/?awk100/aaa}. -@cindex Ada programming language -@cindex programming languages, Ada -@item Ada -A programming language originally defined by the U.S.@: Department of -Defense for embedded programming. It was designed to enforce good -Software Engineering practices. - @cindex amazingly workable formatter (@command{awf}) @cindex @command{awf} (amazingly workable formatter) program @item Amazingly Workable Formatter (@command{awf}) diff --git a/doc/gawktexi.in b/doc/gawktexi.in index 7979b0ad..0f07e210 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -2200,7 +2200,7 @@ the fourth edition and for his support during the work. Thanks to Jasmine Kwityn for her copy-editing work. @end ifset -Thanks to Michael Brennan for the Foreword. +Thanks to Michael Brennan for the Forewords. @cindex Duman, Patrice @cindex Berry, Karl @@ -7186,7 +7186,7 @@ on an incorrect implementation of @command{awk}, while @command{gawk} prints the full first line of the file, something like: @example -root:nSijPlPhZZwgE:0:0:Root:/: +root:x:0:0:Root:/: @end example @end sidebar @@ -7486,7 +7486,7 @@ will be @code{"FPAT"} if content-based field splitting is being used. @quotation NOTE Some programs export CSV data that contains embedded newlines between the double quotes. @command{gawk} provides no way to deal with this. -Because no formal specification for CSV data exists, there isn't much +Even though a formal specification for CSV data exists, there isn't much more to be done; the @code{FPAT} mechanism provides an elegant solution for the majority of cases, and the @command{gawk} developers are satisfied with that. @@ -8218,7 +8218,7 @@ Using @code{FILENAME} with @code{getline} is likely to be a source for confusion. @command{awk} opens a separate input stream from the current input file. However, by not using a variable, @code{$0} -and @code{NR} are still updated. If you're doing this, it's +and @code{NF} are still updated. If you're doing this, it's probably by accident, and you should reconsider what it is you're trying to accomplish. @@ -8361,7 +8361,7 @@ for the input to arrive: PROCINFO[Service, "READ_TIMEOUT"] = 1000 while ((Service |& getline) > 0) @{ print $0 - PROCINFO[S, "READ_TIMEOUT"] -= 100 + PROCINFO[Service, "READ_TIMEOUT"] -= 100 @} @end example @@ -21626,7 +21626,7 @@ A few lines representative of @command{pwcat}'s output are as follows: @cindex Robbins, Miriam @example $ @kbd{pwcat} -@print{} root:3Ov02d5VaUPB6:0:1:Operator:/:/bin/sh +@print{} root:x:0:1:Operator:/:/bin/sh @print{} nobody:*:65534:65534::/: @print{} daemon:*:1:1::/: @print{} sys:*:2:2::/:/bin/csh @@ -34210,7 +34210,7 @@ project provides a number of @command{gawk} extensions, including one for processing XML files. This is the evolution of the original @command{xgawk} (XML @command{gawk}) project. -As of this writing, there are five extensions: +As of this writing, there are six extensions: @itemize @value{BULLET} @item @@ -34228,6 +34228,9 @@ MPFR library extension native MPFR support does not) @item +Redis extension + +@item XML parser extension, using the @uref{http://expat.sourceforge.net, Expat} XML parsing library @end itemize @@ -38987,6 +38990,13 @@ pattern matches an input record, @command{awk} executes the rule's action. Actions are always enclosed in braces. (@xref{Action Overview}.) +@cindex Ada programming language +@cindex programming languages, Ada +@item Ada +A programming language originally defined by the U.S.@: Department of +Defense for embedded programming. It was designed to enforce good +Software Engineering practices. + @cindex Spencer, Henry @cindex @command{sed} utility @cindex amazing @command{awk} assembler (@command{aaa}) @@ -38998,13 +39008,6 @@ microcomputers. It is a good example of a program that would have been better written in another language. You can get it from @uref{http://awk.info/?awk100/aaa}. -@cindex Ada programming language -@cindex programming languages, Ada -@item Ada -A programming language originally defined by the U.S.@: Department of -Defense for embedded programming. It was designed to enforce good -Software Engineering practices. - @cindex amazingly workable formatter (@command{awf}) @cindex @command{awf} (amazingly workable formatter) program @item Amazingly Workable Formatter (@command{awf}) |