From 54a79f8f1dbb86f92dcb0c7623fddbde1c81278c Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Mon, 3 Jun 2013 20:59:26 +0300 Subject: Clarify a bit on FUNCTAB. --- doc/gawk.info | 699 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 351 insertions(+), 348 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index bc407397..f1fc615e 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -9737,8 +9737,11 @@ with a pound sign (`#'). `FUNCTAB #' An array whose indices and corresponding values are the names of all the user-defined or extension functions in the program. - *NOTE*: You may not use the `delete' statement with the `FUNCTAB' - array. + + NOTE: Attempting to use the `delete' statement with the + `FUNCTAB' array will cause a fatal error. Any attempt to + assign to an element of the `FUNCTAB' array will also cause a + fatal error. `NR' The number of input records `awk' has processed since the @@ -30056,7 +30059,7 @@ Index (line 46) * dark corner, FILENAME variable <1>: Auto-set. (line 93) * dark corner, FILENAME variable: Getline Notes. (line 19) -* dark corner, FNR/NR variables: Auto-set. (line 311) +* dark corner, FNR/NR variables: Auto-set. (line 314) * dark corner, format-control characters: Control Letters. (line 18) * dark corner, FS as null string: Single Character Fields. (line 20) @@ -30253,14 +30256,14 @@ Index (line 261) * differences in awk and gawk, print/printf statements: Format Modifiers. (line 13) -* differences in awk and gawk, PROCINFO array: Auto-set. (line 130) +* differences in awk and gawk, PROCINFO array: Auto-set. (line 133) * differences in awk and gawk, record separators: Records. (line 117) * differences in awk and gawk, regexp constants: Using Constant Regexps. (line 43) * differences in awk and gawk, regular expressions: Case-sensitivity. (line 26) * differences in awk and gawk, RS/RT variables: Records. (line 172) -* differences in awk and gawk, RT variable: Auto-set. (line 263) +* differences in awk and gawk, RT variable: Auto-set. (line 266) * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. @@ -30269,7 +30272,7 @@ Index * differences in awk and gawk, strings, storing: Records. (line 191) * differences in awk and gawk, strtonum() function (gawk): String Functions. (line 406) -* differences in awk and gawk, SYMTAB variable: Auto-set. (line 271) +* differences in awk and gawk, SYMTAB variable: Auto-set. (line 274) * differences in awk and gawk, TEXTDOMAIN variable: User-modified. (line 162) * differences in awk and gawk, trunc-mod operation: Arithmetic Ops. @@ -30537,7 +30540,7 @@ Index (line 6) * FNR variable <1>: Auto-set. (line 103) * FNR variable: Records. (line 6) -* FNR variable, changing: Auto-set. (line 311) +* FNR variable, changing: Auto-set. (line 314) * for statement: For Statement. (line 6) * for statement, looping over arrays: Scanning an Array. (line 20) * fork extension function: Extension Sample Fork. @@ -30701,7 +30704,7 @@ Index * gawk, OS/2 version of: PC Using. (line 11) * gawk, PROCINFO array in <1>: Two-way I/O. (line 116) * gawk, PROCINFO array in <2>: Time Functions. (line 47) -* gawk, PROCINFO array in: Auto-set. (line 130) +* gawk, PROCINFO array in: Auto-set. (line 133) * gawk, regexp constants and: Using Constant Regexps. (line 28) * gawk, regular expressions, case sensitivity: Case-sensitivity. @@ -30709,7 +30712,7 @@ Index * gawk, regular expressions, operators: GNU Regexp Operators. (line 6) * gawk, regular expressions, precedence: Regexp Operators. (line 161) -* gawk, RT variable in <1>: Auto-set. (line 263) +* gawk, RT variable in <1>: Auto-set. (line 266) * gawk, RT variable in <2>: Getline/Variable/File. (line 10) * gawk, RT variable in <3>: Multiple Line. (line 129) @@ -30718,7 +30721,7 @@ Index * gawk, source code, obtaining: Getting. (line 6) * gawk, splitting fields and: Constant Size. (line 87) * gawk, string-translation functions: I18N Functions. (line 6) -* gawk, SYMTAB array in: Auto-set. (line 271) +* gawk, SYMTAB array in: Auto-set. (line 274) * gawk, TEXTDOMAIN variable in: User-modified. (line 162) * gawk, timestamps: Time Functions. (line 6) * gawk, uses for: Preface. (line 36) @@ -31126,9 +31129,9 @@ Index (line 49) * noassign.awk program: Ignoring Assigns. (line 15) * not Boolean-logic operator: Boolean Ops. (line 6) -* NR variable <1>: Auto-set. (line 125) +* NR variable <1>: Auto-set. (line 128) * NR variable: Records. (line 6) -* NR variable, changing: Auto-set. (line 311) +* NR variable, changing: Auto-set. (line 314) * null strings <1>: Basic Data Typing. (line 26) * null strings <2>: Truth Values. (line 6) * null strings <3>: Regexp Field Splitting. @@ -31408,7 +31411,7 @@ Index * PROCINFO array <3>: Group Functions. (line 6) * PROCINFO array <4>: Passwd Functions. (line 6) * PROCINFO array <5>: Time Functions. (line 47) -* PROCINFO array <6>: Auto-set. (line 130) +* PROCINFO array <6>: Auto-set. (line 133) * PROCINFO array: Obsolete. (line 11) * profiling awk programs: Profiling. (line 6) * profiling awk programs, dynamically: Profiling. (line 172) @@ -31561,7 +31564,7 @@ Index * right angle bracket (>), >> operator (I/O): Redirection. (line 50) * right shift, bitwise: Bitwise Functions. (line 32) * Ritchie, Dennis: Basic Data Typing. (line 55) -* RLENGTH variable: Auto-set. (line 250) +* RLENGTH variable: Auto-set. (line 253) * RLENGTH variable, match() function and: String Functions. (line 225) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 32) @@ -31588,9 +31591,9 @@ Index * RS variable: Records. (line 20) * RS variable, multiline records and: Multiple Line. (line 17) * rshift() function (gawk): Bitwise Functions. (line 52) -* RSTART variable: Auto-set. (line 256) +* RSTART variable: Auto-set. (line 259) * RSTART variable, match() function and: String Functions. (line 225) -* RT variable <1>: Auto-set. (line 263) +* RT variable <1>: Auto-set. (line 266) * RT variable <2>: Getline/Variable/File. (line 10) * RT variable <3>: Multiple Line. (line 129) @@ -31673,7 +31676,7 @@ Index (line 110) * sidebar, Changing FS Does Not Affect the Fields: Field Splitting Summary. (line 38) -* sidebar, Changing NR and FNR: Auto-set. (line 309) +* sidebar, Changing NR and FNR: Auto-set. (line 312) * sidebar, Controlling Output Buffering with system(): I/O Functions. (line 135) * sidebar, Escape Sequences for Metacharacters: Escape Sequences. @@ -31815,7 +31818,7 @@ Index * substr() function: String Functions. (line 483) * Sumner, Andrew: Other Versions. (line 64) * switch statement: Switch Statement. (line 6) -* SYMTAB array: Auto-set. (line 271) +* SYMTAB array: Auto-set. (line 274) * syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops. (line 147) * system() function: I/O Functions. (line 72) @@ -32256,335 +32259,335 @@ Node: Built-in Variables402949 Node: User-modified404044 Ref: User-modified-Footnote-1412404 Node: Auto-set412466 -Ref: Auto-set-Footnote-1425397 -Ref: Auto-set-Footnote-2425602 -Node: ARGC and ARGV425658 -Node: Arrays429509 -Node: Array Basics431014 -Node: Array Intro431840 -Node: Reference to Elements436158 -Node: Assigning Elements438428 -Node: Array Example438919 -Node: Scanning an Array440651 -Node: Controlling Scanning442965 -Ref: Controlling Scanning-Footnote-1447888 -Node: Delete448204 -Ref: Delete-Footnote-1450969 -Node: Numeric Array Subscripts451026 -Node: Uninitialized Subscripts453209 -Node: Multi-dimensional454837 -Node: Multi-scanning457931 -Node: Arrays of Arrays459522 -Node: Functions464163 -Node: Built-in464982 -Node: Calling Built-in466060 -Node: Numeric Functions468048 -Ref: Numeric Functions-Footnote-1471880 -Ref: Numeric Functions-Footnote-2472237 -Ref: Numeric Functions-Footnote-3472285 -Node: String Functions472554 -Ref: String Functions-Footnote-1496112 -Ref: String Functions-Footnote-2496241 -Ref: String Functions-Footnote-3496489 -Node: Gory Details496576 -Ref: table-sub-escapes498255 -Ref: table-sub-posix-92499609 -Ref: table-sub-proposed500960 -Ref: table-posix-sub502314 -Ref: table-gensub-escapes503859 -Ref: Gory Details-Footnote-1505035 -Ref: Gory Details-Footnote-2505086 -Node: I/O Functions505237 -Ref: I/O Functions-Footnote-1512222 -Node: Time Functions512369 -Ref: Time Functions-Footnote-1523302 -Ref: Time Functions-Footnote-2523370 -Ref: Time Functions-Footnote-3523528 -Ref: Time Functions-Footnote-4523639 -Ref: Time Functions-Footnote-5523751 -Ref: Time Functions-Footnote-6523978 -Node: Bitwise Functions524244 -Ref: table-bitwise-ops524802 -Ref: Bitwise Functions-Footnote-1529023 -Node: Type Functions529207 -Node: I18N Functions529677 -Node: User-defined531304 -Node: Definition Syntax532108 -Ref: Definition Syntax-Footnote-1537018 -Node: Function Example537087 -Node: Function Caveats539681 -Node: Calling A Function540102 -Node: Variable Scope541217 -Node: Pass By Value/Reference544180 -Node: Return Statement547688 -Node: Dynamic Typing550669 -Node: Indirect Calls551600 -Node: Library Functions561285 -Ref: Library Functions-Footnote-1564798 -Ref: Library Functions-Footnote-2564941 -Node: Library Names565112 -Ref: Library Names-Footnote-1568583 -Ref: Library Names-Footnote-2568803 -Node: General Functions568889 -Node: Strtonum Function569842 -Node: Assert Function572772 -Node: Round Function576098 -Node: Cliff Random Function577641 -Node: Ordinal Functions578657 -Ref: Ordinal Functions-Footnote-1581727 -Ref: Ordinal Functions-Footnote-2581979 -Node: Join Function582188 -Ref: Join Function-Footnote-1583959 -Node: Getlocaltime Function584159 -Node: Data File Management587874 -Node: Filetrans Function588506 -Node: Rewind Function592575 -Node: File Checking593962 -Node: Empty Files595056 -Node: Ignoring Assigns597286 -Node: Getopt Function598839 -Ref: Getopt Function-Footnote-1610143 -Node: Passwd Functions610346 -Ref: Passwd Functions-Footnote-1619321 -Node: Group Functions619409 -Node: Walking Arrays627493 -Node: Sample Programs629630 -Node: Running Examples630304 -Node: Clones631032 -Node: Cut Program632256 -Node: Egrep Program642101 -Ref: Egrep Program-Footnote-1649874 -Node: Id Program649984 -Node: Split Program653600 -Ref: Split Program-Footnote-1657119 -Node: Tee Program657247 -Node: Uniq Program660050 -Node: Wc Program667479 -Ref: Wc Program-Footnote-1671745 -Ref: Wc Program-Footnote-2671945 -Node: Miscellaneous Programs672037 -Node: Dupword Program673225 -Node: Alarm Program675256 -Node: Translate Program680005 -Ref: Translate Program-Footnote-1684392 -Ref: Translate Program-Footnote-2684620 -Node: Labels Program684754 -Ref: Labels Program-Footnote-1688125 -Node: Word Sorting688209 -Node: History Sorting692093 -Node: Extract Program693932 -Ref: Extract Program-Footnote-1701433 -Node: Simple Sed701561 -Node: Igawk Program704623 -Ref: Igawk Program-Footnote-1719780 -Ref: Igawk Program-Footnote-2719981 -Node: Anagram Program720119 -Node: Signature Program723187 -Node: Advanced Features724287 -Node: Nondecimal Data726169 -Node: Array Sorting727752 -Node: Controlling Array Traversal728449 -Node: Array Sorting Functions736687 -Ref: Array Sorting Functions-Footnote-1740361 -Ref: Array Sorting Functions-Footnote-2740454 -Node: Two-way I/O740648 -Ref: Two-way I/O-Footnote-1746080 -Node: TCP/IP Networking746150 -Node: Profiling748994 -Node: Internationalization756491 -Node: I18N and L10N757916 -Node: Explaining gettext758602 -Ref: Explaining gettext-Footnote-1763670 -Ref: Explaining gettext-Footnote-2763854 -Node: Programmer i18n764019 -Node: Translator i18n768221 -Node: String Extraction769014 -Ref: String Extraction-Footnote-1769975 -Node: Printf Ordering770061 -Ref: Printf Ordering-Footnote-1772845 -Node: I18N Portability772909 -Ref: I18N Portability-Footnote-1775358 -Node: I18N Example775421 -Ref: I18N Example-Footnote-1778059 -Node: Gawk I18N778131 -Node: Debugger778752 -Node: Debugging779723 -Node: Debugging Concepts780156 -Node: Debugging Terms782012 -Node: Awk Debugging784609 -Node: Sample Debugging Session785501 -Node: Debugger Invocation786021 -Node: Finding The Bug787353 -Node: List of Debugger Commands793841 -Node: Breakpoint Control795175 -Node: Debugger Execution Control798839 -Node: Viewing And Changing Data802199 -Node: Execution Stack805555 -Node: Debugger Info807022 -Node: Miscellaneous Debugger Commands811004 -Node: Readline Support816180 -Node: Limitations817011 -Node: Arbitrary Precision Arithmetic819263 -Ref: Arbitrary Precision Arithmetic-Footnote-1820914 -Node: General Arithmetic821062 -Node: Floating Point Issues822782 -Node: String Conversion Precision823663 -Ref: String Conversion Precision-Footnote-1825369 -Node: Unexpected Results825478 -Node: POSIX Floating Point Problems827631 -Ref: POSIX Floating Point Problems-Footnote-1831456 -Node: Integer Programming831494 -Node: Floating-point Programming833233 -Ref: Floating-point Programming-Footnote-1839564 -Ref: Floating-point Programming-Footnote-2839834 -Node: Floating-point Representation840098 -Node: Floating-point Context841263 -Ref: table-ieee-formats842102 -Node: Rounding Mode843486 -Ref: table-rounding-modes843965 -Ref: Rounding Mode-Footnote-1846980 -Node: Gawk and MPFR847159 -Node: Arbitrary Precision Floats848414 -Ref: Arbitrary Precision Floats-Footnote-1850857 -Node: Setting Precision851173 -Ref: table-predefined-precision-strings851859 -Node: Setting Rounding Mode854004 -Ref: table-gawk-rounding-modes854408 -Node: Floating-point Constants855595 -Node: Changing Precision857024 -Ref: Changing Precision-Footnote-1858424 -Node: Exact Arithmetic858598 -Node: Arbitrary Precision Integers861736 -Ref: Arbitrary Precision Integers-Footnote-1864754 -Node: Dynamic Extensions864901 -Node: Extension Intro866359 -Node: Plugin License867624 -Node: Extension Mechanism Outline868309 -Ref: load-extension868726 -Ref: load-new-function870204 -Ref: call-new-function871199 -Node: Extension API Description873214 -Node: Extension API Functions Introduction874427 -Node: General Data Types879293 -Ref: General Data Types-Footnote-1884895 -Node: Requesting Values885194 -Ref: table-value-types-returned885925 -Node: Constructor Functions886879 -Node: Registration Functions889899 -Node: Extension Functions890584 -Node: Exit Callback Functions892809 -Node: Extension Version String894058 -Node: Input Parsers894708 -Node: Output Wrappers904465 -Node: Two-way processors908975 -Node: Printing Messages911183 -Ref: Printing Messages-Footnote-1912260 -Node: Updating `ERRNO'912412 -Node: Accessing Parameters913151 -Node: Symbol Table Access914381 -Node: Symbol table by name914893 -Node: Symbol table by cookie916640 -Ref: Symbol table by cookie-Footnote-1920770 -Node: Cached values920833 -Ref: Cached values-Footnote-1924282 -Node: Array Manipulation924373 -Ref: Array Manipulation-Footnote-1925471 -Node: Array Data Types925510 -Ref: Array Data Types-Footnote-1928213 -Node: Array Functions928305 -Node: Flattening Arrays932071 -Node: Creating Arrays938923 -Node: Extension API Variables943648 -Node: Extension Versioning944284 -Node: Extension API Informational Variables946185 -Node: Extension API Boilerplate947271 -Node: Finding Extensions951075 -Node: Extension Example951635 -Node: Internal File Description952366 -Node: Internal File Ops956457 -Ref: Internal File Ops-Footnote-1967965 -Node: Using Internal File Ops968105 -Ref: Using Internal File Ops-Footnote-1970458 -Node: Extension Samples970724 -Node: Extension Sample File Functions972248 -Node: Extension Sample Fnmatch980735 -Node: Extension Sample Fork982461 -Node: Extension Sample Inplace983679 -Node: Extension Sample Ord985457 -Node: Extension Sample Readdir986293 -Node: Extension Sample Revout987825 -Node: Extension Sample Rev2way988418 -Node: Extension Sample Read write array989108 -Node: Extension Sample Readfile990991 -Node: Extension Sample API Tests991809 -Node: Extension Sample Time992334 -Node: gawkextlib993698 -Node: Language History996458 -Node: V7/SVR3.1997980 -Node: SVR41000301 -Node: POSIX1001743 -Node: BTL1003129 -Node: POSIX/GNU1003863 -Node: Common Extensions1009398 -Node: Ranges and Locales1010704 -Ref: Ranges and Locales-Footnote-11015322 -Ref: Ranges and Locales-Footnote-21015349 -Ref: Ranges and Locales-Footnote-31015609 -Node: Contributors1015830 -Node: Installation1020709 -Node: Gawk Distribution1021603 -Node: Getting1022087 -Node: Extracting1022913 -Node: Distribution contents1024605 -Node: Unix Installation1029866 -Node: Quick Installation1030483 -Node: Additional Configuration Options1032927 -Node: Configuration Philosophy1034404 -Node: Non-Unix Installation1036758 -Node: PC Installation1037216 -Node: PC Binary Installation1038515 -Node: PC Compiling1040363 -Node: PC Testing1043307 -Node: PC Using1044483 -Node: Cygwin1048668 -Node: MSYS1049668 -Node: VMS Installation1050182 -Node: VMS Compilation1050785 -Ref: VMS Compilation-Footnote-11051792 -Node: VMS Installation Details1051850 -Node: VMS Running1053485 -Node: VMS Old Gawk1055092 -Node: Bugs1055566 -Node: Other Versions1059418 -Node: Notes1065019 -Node: Compatibility Mode1065819 -Node: Additions1066602 -Node: Accessing The Source1067529 -Node: Adding Code1068969 -Node: New Ports1075014 -Node: Derived Files1079149 -Ref: Derived Files-Footnote-11084470 -Ref: Derived Files-Footnote-21084504 -Ref: Derived Files-Footnote-31085104 -Node: Future Extensions1085202 -Node: Implementation Limitations1085783 -Node: Extension Design1087035 -Node: Old Extension Problems1088189 -Ref: Old Extension Problems-Footnote-11089697 -Node: Extension New Mechanism Goals1089754 -Ref: Extension New Mechanism Goals-Footnote-11093120 -Node: Extension Other Design Decisions1093306 -Node: Extension Future Growth1095412 -Node: Old Extension Mechanism1096248 -Node: Basic Concepts1097988 -Node: Basic High Level1098669 -Ref: figure-general-flow1098940 -Ref: figure-process-flow1099539 -Ref: Basic High Level-Footnote-11102768 -Node: Basic Data Typing1102953 -Node: Glossary1106308 -Node: Copying1131770 -Node: GNU Free Documentation License1169327 -Node: Index1194464 +Ref: Auto-set-Footnote-1425544 +Ref: Auto-set-Footnote-2425749 +Node: ARGC and ARGV425805 +Node: Arrays429656 +Node: Array Basics431161 +Node: Array Intro431987 +Node: Reference to Elements436305 +Node: Assigning Elements438575 +Node: Array Example439066 +Node: Scanning an Array440798 +Node: Controlling Scanning443112 +Ref: Controlling Scanning-Footnote-1448035 +Node: Delete448351 +Ref: Delete-Footnote-1451116 +Node: Numeric Array Subscripts451173 +Node: Uninitialized Subscripts453356 +Node: Multi-dimensional454984 +Node: Multi-scanning458078 +Node: Arrays of Arrays459669 +Node: Functions464310 +Node: Built-in465129 +Node: Calling Built-in466207 +Node: Numeric Functions468195 +Ref: Numeric Functions-Footnote-1472027 +Ref: Numeric Functions-Footnote-2472384 +Ref: Numeric Functions-Footnote-3472432 +Node: String Functions472701 +Ref: String Functions-Footnote-1496259 +Ref: String Functions-Footnote-2496388 +Ref: String Functions-Footnote-3496636 +Node: Gory Details496723 +Ref: table-sub-escapes498402 +Ref: table-sub-posix-92499756 +Ref: table-sub-proposed501107 +Ref: table-posix-sub502461 +Ref: table-gensub-escapes504006 +Ref: Gory Details-Footnote-1505182 +Ref: Gory Details-Footnote-2505233 +Node: I/O Functions505384 +Ref: I/O Functions-Footnote-1512369 +Node: Time Functions512516 +Ref: Time Functions-Footnote-1523449 +Ref: Time Functions-Footnote-2523517 +Ref: Time Functions-Footnote-3523675 +Ref: Time Functions-Footnote-4523786 +Ref: Time Functions-Footnote-5523898 +Ref: Time Functions-Footnote-6524125 +Node: Bitwise Functions524391 +Ref: table-bitwise-ops524949 +Ref: Bitwise Functions-Footnote-1529170 +Node: Type Functions529354 +Node: I18N Functions529824 +Node: User-defined531451 +Node: Definition Syntax532255 +Ref: Definition Syntax-Footnote-1537165 +Node: Function Example537234 +Node: Function Caveats539828 +Node: Calling A Function540249 +Node: Variable Scope541364 +Node: Pass By Value/Reference544327 +Node: Return Statement547835 +Node: Dynamic Typing550816 +Node: Indirect Calls551747 +Node: Library Functions561432 +Ref: Library Functions-Footnote-1564945 +Ref: Library Functions-Footnote-2565088 +Node: Library Names565259 +Ref: Library Names-Footnote-1568730 +Ref: Library Names-Footnote-2568950 +Node: General Functions569036 +Node: Strtonum Function569989 +Node: Assert Function572919 +Node: Round Function576245 +Node: Cliff Random Function577788 +Node: Ordinal Functions578804 +Ref: Ordinal Functions-Footnote-1581874 +Ref: Ordinal Functions-Footnote-2582126 +Node: Join Function582335 +Ref: Join Function-Footnote-1584106 +Node: Getlocaltime Function584306 +Node: Data File Management588021 +Node: Filetrans Function588653 +Node: Rewind Function592722 +Node: File Checking594109 +Node: Empty Files595203 +Node: Ignoring Assigns597433 +Node: Getopt Function598986 +Ref: Getopt Function-Footnote-1610290 +Node: Passwd Functions610493 +Ref: Passwd Functions-Footnote-1619468 +Node: Group Functions619556 +Node: Walking Arrays627640 +Node: Sample Programs629777 +Node: Running Examples630451 +Node: Clones631179 +Node: Cut Program632403 +Node: Egrep Program642248 +Ref: Egrep Program-Footnote-1650021 +Node: Id Program650131 +Node: Split Program653747 +Ref: Split Program-Footnote-1657266 +Node: Tee Program657394 +Node: Uniq Program660197 +Node: Wc Program667626 +Ref: Wc Program-Footnote-1671892 +Ref: Wc Program-Footnote-2672092 +Node: Miscellaneous Programs672184 +Node: Dupword Program673372 +Node: Alarm Program675403 +Node: Translate Program680152 +Ref: Translate Program-Footnote-1684539 +Ref: Translate Program-Footnote-2684767 +Node: Labels Program684901 +Ref: Labels Program-Footnote-1688272 +Node: Word Sorting688356 +Node: History Sorting692240 +Node: Extract Program694079 +Ref: Extract Program-Footnote-1701580 +Node: Simple Sed701708 +Node: Igawk Program704770 +Ref: Igawk Program-Footnote-1719927 +Ref: Igawk Program-Footnote-2720128 +Node: Anagram Program720266 +Node: Signature Program723334 +Node: Advanced Features724434 +Node: Nondecimal Data726316 +Node: Array Sorting727899 +Node: Controlling Array Traversal728596 +Node: Array Sorting Functions736834 +Ref: Array Sorting Functions-Footnote-1740508 +Ref: Array Sorting Functions-Footnote-2740601 +Node: Two-way I/O740795 +Ref: Two-way I/O-Footnote-1746227 +Node: TCP/IP Networking746297 +Node: Profiling749141 +Node: Internationalization756638 +Node: I18N and L10N758063 +Node: Explaining gettext758749 +Ref: Explaining gettext-Footnote-1763817 +Ref: Explaining gettext-Footnote-2764001 +Node: Programmer i18n764166 +Node: Translator i18n768368 +Node: String Extraction769161 +Ref: String Extraction-Footnote-1770122 +Node: Printf Ordering770208 +Ref: Printf Ordering-Footnote-1772992 +Node: I18N Portability773056 +Ref: I18N Portability-Footnote-1775505 +Node: I18N Example775568 +Ref: I18N Example-Footnote-1778206 +Node: Gawk I18N778278 +Node: Debugger778899 +Node: Debugging779870 +Node: Debugging Concepts780303 +Node: Debugging Terms782159 +Node: Awk Debugging784756 +Node: Sample Debugging Session785648 +Node: Debugger Invocation786168 +Node: Finding The Bug787500 +Node: List of Debugger Commands793988 +Node: Breakpoint Control795322 +Node: Debugger Execution Control798986 +Node: Viewing And Changing Data802346 +Node: Execution Stack805702 +Node: Debugger Info807169 +Node: Miscellaneous Debugger Commands811151 +Node: Readline Support816327 +Node: Limitations817158 +Node: Arbitrary Precision Arithmetic819410 +Ref: Arbitrary Precision Arithmetic-Footnote-1821061 +Node: General Arithmetic821209 +Node: Floating Point Issues822929 +Node: String Conversion Precision823810 +Ref: String Conversion Precision-Footnote-1825516 +Node: Unexpected Results825625 +Node: POSIX Floating Point Problems827778 +Ref: POSIX Floating Point Problems-Footnote-1831603 +Node: Integer Programming831641 +Node: Floating-point Programming833380 +Ref: Floating-point Programming-Footnote-1839711 +Ref: Floating-point Programming-Footnote-2839981 +Node: Floating-point Representation840245 +Node: Floating-point Context841410 +Ref: table-ieee-formats842249 +Node: Rounding Mode843633 +Ref: table-rounding-modes844112 +Ref: Rounding Mode-Footnote-1847127 +Node: Gawk and MPFR847306 +Node: Arbitrary Precision Floats848561 +Ref: Arbitrary Precision Floats-Footnote-1851004 +Node: Setting Precision851320 +Ref: table-predefined-precision-strings852006 +Node: Setting Rounding Mode854151 +Ref: table-gawk-rounding-modes854555 +Node: Floating-point Constants855742 +Node: Changing Precision857171 +Ref: Changing Precision-Footnote-1858571 +Node: Exact Arithmetic858745 +Node: Arbitrary Precision Integers861883 +Ref: Arbitrary Precision Integers-Footnote-1864901 +Node: Dynamic Extensions865048 +Node: Extension Intro866506 +Node: Plugin License867771 +Node: Extension Mechanism Outline868456 +Ref: load-extension868873 +Ref: load-new-function870351 +Ref: call-new-function871346 +Node: Extension API Description873361 +Node: Extension API Functions Introduction874574 +Node: General Data Types879440 +Ref: General Data Types-Footnote-1885042 +Node: Requesting Values885341 +Ref: table-value-types-returned886072 +Node: Constructor Functions887026 +Node: Registration Functions890046 +Node: Extension Functions890731 +Node: Exit Callback Functions892956 +Node: Extension Version String894205 +Node: Input Parsers894855 +Node: Output Wrappers904612 +Node: Two-way processors909122 +Node: Printing Messages911330 +Ref: Printing Messages-Footnote-1912407 +Node: Updating `ERRNO'912559 +Node: Accessing Parameters913298 +Node: Symbol Table Access914528 +Node: Symbol table by name915040 +Node: Symbol table by cookie916787 +Ref: Symbol table by cookie-Footnote-1920917 +Node: Cached values920980 +Ref: Cached values-Footnote-1924429 +Node: Array Manipulation924520 +Ref: Array Manipulation-Footnote-1925618 +Node: Array Data Types925657 +Ref: Array Data Types-Footnote-1928360 +Node: Array Functions928452 +Node: Flattening Arrays932218 +Node: Creating Arrays939070 +Node: Extension API Variables943795 +Node: Extension Versioning944431 +Node: Extension API Informational Variables946332 +Node: Extension API Boilerplate947418 +Node: Finding Extensions951222 +Node: Extension Example951782 +Node: Internal File Description952513 +Node: Internal File Ops956604 +Ref: Internal File Ops-Footnote-1968112 +Node: Using Internal File Ops968252 +Ref: Using Internal File Ops-Footnote-1970605 +Node: Extension Samples970871 +Node: Extension Sample File Functions972395 +Node: Extension Sample Fnmatch980882 +Node: Extension Sample Fork982608 +Node: Extension Sample Inplace983826 +Node: Extension Sample Ord985604 +Node: Extension Sample Readdir986440 +Node: Extension Sample Revout987972 +Node: Extension Sample Rev2way988565 +Node: Extension Sample Read write array989255 +Node: Extension Sample Readfile991138 +Node: Extension Sample API Tests991956 +Node: Extension Sample Time992481 +Node: gawkextlib993845 +Node: Language History996605 +Node: V7/SVR3.1998127 +Node: SVR41000448 +Node: POSIX1001890 +Node: BTL1003276 +Node: POSIX/GNU1004010 +Node: Common Extensions1009545 +Node: Ranges and Locales1010851 +Ref: Ranges and Locales-Footnote-11015469 +Ref: Ranges and Locales-Footnote-21015496 +Ref: Ranges and Locales-Footnote-31015756 +Node: Contributors1015977 +Node: Installation1020856 +Node: Gawk Distribution1021750 +Node: Getting1022234 +Node: Extracting1023060 +Node: Distribution contents1024752 +Node: Unix Installation1030013 +Node: Quick Installation1030630 +Node: Additional Configuration Options1033074 +Node: Configuration Philosophy1034551 +Node: Non-Unix Installation1036905 +Node: PC Installation1037363 +Node: PC Binary Installation1038662 +Node: PC Compiling1040510 +Node: PC Testing1043454 +Node: PC Using1044630 +Node: Cygwin1048815 +Node: MSYS1049815 +Node: VMS Installation1050329 +Node: VMS Compilation1050932 +Ref: VMS Compilation-Footnote-11051939 +Node: VMS Installation Details1051997 +Node: VMS Running1053632 +Node: VMS Old Gawk1055239 +Node: Bugs1055713 +Node: Other Versions1059565 +Node: Notes1065166 +Node: Compatibility Mode1065966 +Node: Additions1066749 +Node: Accessing The Source1067676 +Node: Adding Code1069116 +Node: New Ports1075161 +Node: Derived Files1079296 +Ref: Derived Files-Footnote-11084617 +Ref: Derived Files-Footnote-21084651 +Ref: Derived Files-Footnote-31085251 +Node: Future Extensions1085349 +Node: Implementation Limitations1085930 +Node: Extension Design1087182 +Node: Old Extension Problems1088336 +Ref: Old Extension Problems-Footnote-11089844 +Node: Extension New Mechanism Goals1089901 +Ref: Extension New Mechanism Goals-Footnote-11093267 +Node: Extension Other Design Decisions1093453 +Node: Extension Future Growth1095559 +Node: Old Extension Mechanism1096395 +Node: Basic Concepts1098135 +Node: Basic High Level1098816 +Ref: figure-general-flow1099087 +Ref: figure-process-flow1099686 +Ref: Basic High Level-Footnote-11102915 +Node: Basic Data Typing1103100 +Node: Glossary1106455 +Node: Copying1131917 +Node: GNU Free Documentation License1169474 +Node: Index1194611  End Tag Table -- cgit v1.2.3 From b2c75c65c62fde77e26660119f795d3380a18528 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Sat, 22 Jun 2013 22:20:54 +0300 Subject: Doc update for isarray. --- doc/gawk.info | 571 ++++++++++++++++++++++++++++++---------------------------- 1 file changed, 292 insertions(+), 279 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index f1fc615e..9072bf06 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -12557,6 +12557,19 @@ of Arrays::). `isarray(X)' Return a true value if X is an array. Otherwise return false. + `isarray()' is meant for use in two circumstances. The first is when +traversing a multidimensional array: you can test if an element is +itself an array or not. The second is inside the body of a +user-defined function (not discussed yet; *note User-defined::), to +test if a paramater is an array or not. + + Note, however, that using `isarray()' at the global level to test +variables makes no sense. Since you are the one writing the program, you +are supposed to know if your variables are arrays or not. And in fact, +due to the way `gawk' works, if you pass the name of a variable that +has not been previously used to `isarray()', `gawk' will end up turning +it into a scalar. +  File: gawk.info, Node: I18N Functions, Prev: Type Functions, Up: Built-in @@ -32310,284 +32323,284 @@ Node: Bitwise Functions524391 Ref: table-bitwise-ops524949 Ref: Bitwise Functions-Footnote-1529170 Node: Type Functions529354 -Node: I18N Functions529824 -Node: User-defined531451 -Node: Definition Syntax532255 -Ref: Definition Syntax-Footnote-1537165 -Node: Function Example537234 -Node: Function Caveats539828 -Node: Calling A Function540249 -Node: Variable Scope541364 -Node: Pass By Value/Reference544327 -Node: Return Statement547835 -Node: Dynamic Typing550816 -Node: Indirect Calls551747 -Node: Library Functions561432 -Ref: Library Functions-Footnote-1564945 -Ref: Library Functions-Footnote-2565088 -Node: Library Names565259 -Ref: Library Names-Footnote-1568730 -Ref: Library Names-Footnote-2568950 -Node: General Functions569036 -Node: Strtonum Function569989 -Node: Assert Function572919 -Node: Round Function576245 -Node: Cliff Random Function577788 -Node: Ordinal Functions578804 -Ref: Ordinal Functions-Footnote-1581874 -Ref: Ordinal Functions-Footnote-2582126 -Node: Join Function582335 -Ref: Join Function-Footnote-1584106 -Node: Getlocaltime Function584306 -Node: Data File Management588021 -Node: Filetrans Function588653 -Node: Rewind Function592722 -Node: File Checking594109 -Node: Empty Files595203 -Node: Ignoring Assigns597433 -Node: Getopt Function598986 -Ref: Getopt Function-Footnote-1610290 -Node: Passwd Functions610493 -Ref: Passwd Functions-Footnote-1619468 -Node: Group Functions619556 -Node: Walking Arrays627640 -Node: Sample Programs629777 -Node: Running Examples630451 -Node: Clones631179 -Node: Cut Program632403 -Node: Egrep Program642248 -Ref: Egrep Program-Footnote-1650021 -Node: Id Program650131 -Node: Split Program653747 -Ref: Split Program-Footnote-1657266 -Node: Tee Program657394 -Node: Uniq Program660197 -Node: Wc Program667626 -Ref: Wc Program-Footnote-1671892 -Ref: Wc Program-Footnote-2672092 -Node: Miscellaneous Programs672184 -Node: Dupword Program673372 -Node: Alarm Program675403 -Node: Translate Program680152 -Ref: Translate Program-Footnote-1684539 -Ref: Translate Program-Footnote-2684767 -Node: Labels Program684901 -Ref: Labels Program-Footnote-1688272 -Node: Word Sorting688356 -Node: History Sorting692240 -Node: Extract Program694079 -Ref: Extract Program-Footnote-1701580 -Node: Simple Sed701708 -Node: Igawk Program704770 -Ref: Igawk Program-Footnote-1719927 -Ref: Igawk Program-Footnote-2720128 -Node: Anagram Program720266 -Node: Signature Program723334 -Node: Advanced Features724434 -Node: Nondecimal Data726316 -Node: Array Sorting727899 -Node: Controlling Array Traversal728596 -Node: Array Sorting Functions736834 -Ref: Array Sorting Functions-Footnote-1740508 -Ref: Array Sorting Functions-Footnote-2740601 -Node: Two-way I/O740795 -Ref: Two-way I/O-Footnote-1746227 -Node: TCP/IP Networking746297 -Node: Profiling749141 -Node: Internationalization756638 -Node: I18N and L10N758063 -Node: Explaining gettext758749 -Ref: Explaining gettext-Footnote-1763817 -Ref: Explaining gettext-Footnote-2764001 -Node: Programmer i18n764166 -Node: Translator i18n768368 -Node: String Extraction769161 -Ref: String Extraction-Footnote-1770122 -Node: Printf Ordering770208 -Ref: Printf Ordering-Footnote-1772992 -Node: I18N Portability773056 -Ref: I18N Portability-Footnote-1775505 -Node: I18N Example775568 -Ref: I18N Example-Footnote-1778206 -Node: Gawk I18N778278 -Node: Debugger778899 -Node: Debugging779870 -Node: Debugging Concepts780303 -Node: Debugging Terms782159 -Node: Awk Debugging784756 -Node: Sample Debugging Session785648 -Node: Debugger Invocation786168 -Node: Finding The Bug787500 -Node: List of Debugger Commands793988 -Node: Breakpoint Control795322 -Node: Debugger Execution Control798986 -Node: Viewing And Changing Data802346 -Node: Execution Stack805702 -Node: Debugger Info807169 -Node: Miscellaneous Debugger Commands811151 -Node: Readline Support816327 -Node: Limitations817158 -Node: Arbitrary Precision Arithmetic819410 -Ref: Arbitrary Precision Arithmetic-Footnote-1821061 -Node: General Arithmetic821209 -Node: Floating Point Issues822929 -Node: String Conversion Precision823810 -Ref: String Conversion Precision-Footnote-1825516 -Node: Unexpected Results825625 -Node: POSIX Floating Point Problems827778 -Ref: POSIX Floating Point Problems-Footnote-1831603 -Node: Integer Programming831641 -Node: Floating-point Programming833380 -Ref: Floating-point Programming-Footnote-1839711 -Ref: Floating-point Programming-Footnote-2839981 -Node: Floating-point Representation840245 -Node: Floating-point Context841410 -Ref: table-ieee-formats842249 -Node: Rounding Mode843633 -Ref: table-rounding-modes844112 -Ref: Rounding Mode-Footnote-1847127 -Node: Gawk and MPFR847306 -Node: Arbitrary Precision Floats848561 -Ref: Arbitrary Precision Floats-Footnote-1851004 -Node: Setting Precision851320 -Ref: table-predefined-precision-strings852006 -Node: Setting Rounding Mode854151 -Ref: table-gawk-rounding-modes854555 -Node: Floating-point Constants855742 -Node: Changing Precision857171 -Ref: Changing Precision-Footnote-1858571 -Node: Exact Arithmetic858745 -Node: Arbitrary Precision Integers861883 -Ref: Arbitrary Precision Integers-Footnote-1864901 -Node: Dynamic Extensions865048 -Node: Extension Intro866506 -Node: Plugin License867771 -Node: Extension Mechanism Outline868456 -Ref: load-extension868873 -Ref: load-new-function870351 -Ref: call-new-function871346 -Node: Extension API Description873361 -Node: Extension API Functions Introduction874574 -Node: General Data Types879440 -Ref: General Data Types-Footnote-1885042 -Node: Requesting Values885341 -Ref: table-value-types-returned886072 -Node: Constructor Functions887026 -Node: Registration Functions890046 -Node: Extension Functions890731 -Node: Exit Callback Functions892956 -Node: Extension Version String894205 -Node: Input Parsers894855 -Node: Output Wrappers904612 -Node: Two-way processors909122 -Node: Printing Messages911330 -Ref: Printing Messages-Footnote-1912407 -Node: Updating `ERRNO'912559 -Node: Accessing Parameters913298 -Node: Symbol Table Access914528 -Node: Symbol table by name915040 -Node: Symbol table by cookie916787 -Ref: Symbol table by cookie-Footnote-1920917 -Node: Cached values920980 -Ref: Cached values-Footnote-1924429 -Node: Array Manipulation924520 -Ref: Array Manipulation-Footnote-1925618 -Node: Array Data Types925657 -Ref: Array Data Types-Footnote-1928360 -Node: Array Functions928452 -Node: Flattening Arrays932218 -Node: Creating Arrays939070 -Node: Extension API Variables943795 -Node: Extension Versioning944431 -Node: Extension API Informational Variables946332 -Node: Extension API Boilerplate947418 -Node: Finding Extensions951222 -Node: Extension Example951782 -Node: Internal File Description952513 -Node: Internal File Ops956604 -Ref: Internal File Ops-Footnote-1968112 -Node: Using Internal File Ops968252 -Ref: Using Internal File Ops-Footnote-1970605 -Node: Extension Samples970871 -Node: Extension Sample File Functions972395 -Node: Extension Sample Fnmatch980882 -Node: Extension Sample Fork982608 -Node: Extension Sample Inplace983826 -Node: Extension Sample Ord985604 -Node: Extension Sample Readdir986440 -Node: Extension Sample Revout987972 -Node: Extension Sample Rev2way988565 -Node: Extension Sample Read write array989255 -Node: Extension Sample Readfile991138 -Node: Extension Sample API Tests991956 -Node: Extension Sample Time992481 -Node: gawkextlib993845 -Node: Language History996605 -Node: V7/SVR3.1998127 -Node: SVR41000448 -Node: POSIX1001890 -Node: BTL1003276 -Node: POSIX/GNU1004010 -Node: Common Extensions1009545 -Node: Ranges and Locales1010851 -Ref: Ranges and Locales-Footnote-11015469 -Ref: Ranges and Locales-Footnote-21015496 -Ref: Ranges and Locales-Footnote-31015756 -Node: Contributors1015977 -Node: Installation1020856 -Node: Gawk Distribution1021750 -Node: Getting1022234 -Node: Extracting1023060 -Node: Distribution contents1024752 -Node: Unix Installation1030013 -Node: Quick Installation1030630 -Node: Additional Configuration Options1033074 -Node: Configuration Philosophy1034551 -Node: Non-Unix Installation1036905 -Node: PC Installation1037363 -Node: PC Binary Installation1038662 -Node: PC Compiling1040510 -Node: PC Testing1043454 -Node: PC Using1044630 -Node: Cygwin1048815 -Node: MSYS1049815 -Node: VMS Installation1050329 -Node: VMS Compilation1050932 -Ref: VMS Compilation-Footnote-11051939 -Node: VMS Installation Details1051997 -Node: VMS Running1053632 -Node: VMS Old Gawk1055239 -Node: Bugs1055713 -Node: Other Versions1059565 -Node: Notes1065166 -Node: Compatibility Mode1065966 -Node: Additions1066749 -Node: Accessing The Source1067676 -Node: Adding Code1069116 -Node: New Ports1075161 -Node: Derived Files1079296 -Ref: Derived Files-Footnote-11084617 -Ref: Derived Files-Footnote-21084651 -Ref: Derived Files-Footnote-31085251 -Node: Future Extensions1085349 -Node: Implementation Limitations1085930 -Node: Extension Design1087182 -Node: Old Extension Problems1088336 -Ref: Old Extension Problems-Footnote-11089844 -Node: Extension New Mechanism Goals1089901 -Ref: Extension New Mechanism Goals-Footnote-11093267 -Node: Extension Other Design Decisions1093453 -Node: Extension Future Growth1095559 -Node: Old Extension Mechanism1096395 -Node: Basic Concepts1098135 -Node: Basic High Level1098816 -Ref: figure-general-flow1099087 -Ref: figure-process-flow1099686 -Ref: Basic High Level-Footnote-11102915 -Node: Basic Data Typing1103100 -Node: Glossary1106455 -Node: Copying1131917 -Node: GNU Free Documentation License1169474 -Node: Index1194611 +Node: I18N Functions530505 +Node: User-defined532132 +Node: Definition Syntax532936 +Ref: Definition Syntax-Footnote-1537846 +Node: Function Example537915 +Node: Function Caveats540509 +Node: Calling A Function540930 +Node: Variable Scope542045 +Node: Pass By Value/Reference545008 +Node: Return Statement548516 +Node: Dynamic Typing551497 +Node: Indirect Calls552428 +Node: Library Functions562113 +Ref: Library Functions-Footnote-1565626 +Ref: Library Functions-Footnote-2565769 +Node: Library Names565940 +Ref: Library Names-Footnote-1569411 +Ref: Library Names-Footnote-2569631 +Node: General Functions569717 +Node: Strtonum Function570670 +Node: Assert Function573600 +Node: Round Function576926 +Node: Cliff Random Function578469 +Node: Ordinal Functions579485 +Ref: Ordinal Functions-Footnote-1582555 +Ref: Ordinal Functions-Footnote-2582807 +Node: Join Function583016 +Ref: Join Function-Footnote-1584787 +Node: Getlocaltime Function584987 +Node: Data File Management588702 +Node: Filetrans Function589334 +Node: Rewind Function593403 +Node: File Checking594790 +Node: Empty Files595884 +Node: Ignoring Assigns598114 +Node: Getopt Function599667 +Ref: Getopt Function-Footnote-1610971 +Node: Passwd Functions611174 +Ref: Passwd Functions-Footnote-1620149 +Node: Group Functions620237 +Node: Walking Arrays628321 +Node: Sample Programs630458 +Node: Running Examples631132 +Node: Clones631860 +Node: Cut Program633084 +Node: Egrep Program642929 +Ref: Egrep Program-Footnote-1650702 +Node: Id Program650812 +Node: Split Program654428 +Ref: Split Program-Footnote-1657947 +Node: Tee Program658075 +Node: Uniq Program660878 +Node: Wc Program668307 +Ref: Wc Program-Footnote-1672573 +Ref: Wc Program-Footnote-2672773 +Node: Miscellaneous Programs672865 +Node: Dupword Program674053 +Node: Alarm Program676084 +Node: Translate Program680833 +Ref: Translate Program-Footnote-1685220 +Ref: Translate Program-Footnote-2685448 +Node: Labels Program685582 +Ref: Labels Program-Footnote-1688953 +Node: Word Sorting689037 +Node: History Sorting692921 +Node: Extract Program694760 +Ref: Extract Program-Footnote-1702261 +Node: Simple Sed702389 +Node: Igawk Program705451 +Ref: Igawk Program-Footnote-1720608 +Ref: Igawk Program-Footnote-2720809 +Node: Anagram Program720947 +Node: Signature Program724015 +Node: Advanced Features725115 +Node: Nondecimal Data726997 +Node: Array Sorting728580 +Node: Controlling Array Traversal729277 +Node: Array Sorting Functions737515 +Ref: Array Sorting Functions-Footnote-1741189 +Ref: Array Sorting Functions-Footnote-2741282 +Node: Two-way I/O741476 +Ref: Two-way I/O-Footnote-1746908 +Node: TCP/IP Networking746978 +Node: Profiling749822 +Node: Internationalization757319 +Node: I18N and L10N758744 +Node: Explaining gettext759430 +Ref: Explaining gettext-Footnote-1764498 +Ref: Explaining gettext-Footnote-2764682 +Node: Programmer i18n764847 +Node: Translator i18n769049 +Node: String Extraction769842 +Ref: String Extraction-Footnote-1770803 +Node: Printf Ordering770889 +Ref: Printf Ordering-Footnote-1773673 +Node: I18N Portability773737 +Ref: I18N Portability-Footnote-1776186 +Node: I18N Example776249 +Ref: I18N Example-Footnote-1778887 +Node: Gawk I18N778959 +Node: Debugger779580 +Node: Debugging780551 +Node: Debugging Concepts780984 +Node: Debugging Terms782840 +Node: Awk Debugging785437 +Node: Sample Debugging Session786329 +Node: Debugger Invocation786849 +Node: Finding The Bug788181 +Node: List of Debugger Commands794669 +Node: Breakpoint Control796003 +Node: Debugger Execution Control799667 +Node: Viewing And Changing Data803027 +Node: Execution Stack806383 +Node: Debugger Info807850 +Node: Miscellaneous Debugger Commands811832 +Node: Readline Support817008 +Node: Limitations817839 +Node: Arbitrary Precision Arithmetic820091 +Ref: Arbitrary Precision Arithmetic-Footnote-1821742 +Node: General Arithmetic821890 +Node: Floating Point Issues823610 +Node: String Conversion Precision824491 +Ref: String Conversion Precision-Footnote-1826197 +Node: Unexpected Results826306 +Node: POSIX Floating Point Problems828459 +Ref: POSIX Floating Point Problems-Footnote-1832284 +Node: Integer Programming832322 +Node: Floating-point Programming834061 +Ref: Floating-point Programming-Footnote-1840392 +Ref: Floating-point Programming-Footnote-2840662 +Node: Floating-point Representation840926 +Node: Floating-point Context842091 +Ref: table-ieee-formats842930 +Node: Rounding Mode844314 +Ref: table-rounding-modes844793 +Ref: Rounding Mode-Footnote-1847808 +Node: Gawk and MPFR847987 +Node: Arbitrary Precision Floats849242 +Ref: Arbitrary Precision Floats-Footnote-1851685 +Node: Setting Precision852001 +Ref: table-predefined-precision-strings852687 +Node: Setting Rounding Mode854832 +Ref: table-gawk-rounding-modes855236 +Node: Floating-point Constants856423 +Node: Changing Precision857852 +Ref: Changing Precision-Footnote-1859252 +Node: Exact Arithmetic859426 +Node: Arbitrary Precision Integers862564 +Ref: Arbitrary Precision Integers-Footnote-1865582 +Node: Dynamic Extensions865729 +Node: Extension Intro867187 +Node: Plugin License868452 +Node: Extension Mechanism Outline869137 +Ref: load-extension869554 +Ref: load-new-function871032 +Ref: call-new-function872027 +Node: Extension API Description874042 +Node: Extension API Functions Introduction875255 +Node: General Data Types880121 +Ref: General Data Types-Footnote-1885723 +Node: Requesting Values886022 +Ref: table-value-types-returned886753 +Node: Constructor Functions887707 +Node: Registration Functions890727 +Node: Extension Functions891412 +Node: Exit Callback Functions893637 +Node: Extension Version String894886 +Node: Input Parsers895536 +Node: Output Wrappers905293 +Node: Two-way processors909803 +Node: Printing Messages912011 +Ref: Printing Messages-Footnote-1913088 +Node: Updating `ERRNO'913240 +Node: Accessing Parameters913979 +Node: Symbol Table Access915209 +Node: Symbol table by name915721 +Node: Symbol table by cookie917468 +Ref: Symbol table by cookie-Footnote-1921598 +Node: Cached values921661 +Ref: Cached values-Footnote-1925110 +Node: Array Manipulation925201 +Ref: Array Manipulation-Footnote-1926299 +Node: Array Data Types926338 +Ref: Array Data Types-Footnote-1929041 +Node: Array Functions929133 +Node: Flattening Arrays932899 +Node: Creating Arrays939751 +Node: Extension API Variables944476 +Node: Extension Versioning945112 +Node: Extension API Informational Variables947013 +Node: Extension API Boilerplate948099 +Node: Finding Extensions951903 +Node: Extension Example952463 +Node: Internal File Description953194 +Node: Internal File Ops957285 +Ref: Internal File Ops-Footnote-1968793 +Node: Using Internal File Ops968933 +Ref: Using Internal File Ops-Footnote-1971286 +Node: Extension Samples971552 +Node: Extension Sample File Functions973076 +Node: Extension Sample Fnmatch981563 +Node: Extension Sample Fork983289 +Node: Extension Sample Inplace984507 +Node: Extension Sample Ord986285 +Node: Extension Sample Readdir987121 +Node: Extension Sample Revout988653 +Node: Extension Sample Rev2way989246 +Node: Extension Sample Read write array989936 +Node: Extension Sample Readfile991819 +Node: Extension Sample API Tests992637 +Node: Extension Sample Time993162 +Node: gawkextlib994526 +Node: Language History997286 +Node: V7/SVR3.1998808 +Node: SVR41001129 +Node: POSIX1002571 +Node: BTL1003957 +Node: POSIX/GNU1004691 +Node: Common Extensions1010226 +Node: Ranges and Locales1011532 +Ref: Ranges and Locales-Footnote-11016150 +Ref: Ranges and Locales-Footnote-21016177 +Ref: Ranges and Locales-Footnote-31016437 +Node: Contributors1016658 +Node: Installation1021537 +Node: Gawk Distribution1022431 +Node: Getting1022915 +Node: Extracting1023741 +Node: Distribution contents1025433 +Node: Unix Installation1030694 +Node: Quick Installation1031311 +Node: Additional Configuration Options1033755 +Node: Configuration Philosophy1035232 +Node: Non-Unix Installation1037586 +Node: PC Installation1038044 +Node: PC Binary Installation1039343 +Node: PC Compiling1041191 +Node: PC Testing1044135 +Node: PC Using1045311 +Node: Cygwin1049496 +Node: MSYS1050496 +Node: VMS Installation1051010 +Node: VMS Compilation1051613 +Ref: VMS Compilation-Footnote-11052620 +Node: VMS Installation Details1052678 +Node: VMS Running1054313 +Node: VMS Old Gawk1055920 +Node: Bugs1056394 +Node: Other Versions1060246 +Node: Notes1065847 +Node: Compatibility Mode1066647 +Node: Additions1067430 +Node: Accessing The Source1068357 +Node: Adding Code1069797 +Node: New Ports1075842 +Node: Derived Files1079977 +Ref: Derived Files-Footnote-11085298 +Ref: Derived Files-Footnote-21085332 +Ref: Derived Files-Footnote-31085932 +Node: Future Extensions1086030 +Node: Implementation Limitations1086611 +Node: Extension Design1087863 +Node: Old Extension Problems1089017 +Ref: Old Extension Problems-Footnote-11090525 +Node: Extension New Mechanism Goals1090582 +Ref: Extension New Mechanism Goals-Footnote-11093948 +Node: Extension Other Design Decisions1094134 +Node: Extension Future Growth1096240 +Node: Old Extension Mechanism1097076 +Node: Basic Concepts1098816 +Node: Basic High Level1099497 +Ref: figure-general-flow1099768 +Ref: figure-process-flow1100367 +Ref: Basic High Level-Footnote-11103596 +Node: Basic Data Typing1103781 +Node: Glossary1107136 +Node: Copying1132598 +Node: GNU Free Documentation License1170155 +Node: Index1195292  End Tag Table -- cgit v1.2.3 From 7d19cbd54ad60474aded4b9fe587c7f53a14d488 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Mon, 19 Aug 2013 20:47:49 +0300 Subject: Changes to ENVIRON reflect into the environment. --- doc/gawk.info | 729 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 369 insertions(+), 360 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 9072bf06..12e0c432 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -9679,9 +9679,18 @@ with a pound sign (`#'). An associative array containing the values of the environment. The array indices are the environment variable names; the elements are the values of the particular environment variables. For - example, `ENVIRON["HOME"]' might be `/home/arnold'. Changing this - array does not affect the environment passed on to any programs - that `awk' may spawn via redirection or the `system()' function. + example, `ENVIRON["HOME"]' might be `/home/arnold'. + + For POSIX `awk', changing this array does not affect the + environment passed on to any programs that `awk' may spawn via + redirection or the `system()' function. + + However, beginning with version 4.2, if not in POSIX compatibility + mode, `gawk' does update its own environment when `ENVIRON' is + changed, thus changing the environment seen by programs that it + creates. You should therefore be especially careful if you modify + `ENVIRON["PATH"]"', which is the search path for finding + executable programs. Some operating systems may not have environment variables. On such systems, the `ENVIRON' array is empty (except for @@ -30070,9 +30079,9 @@ Index * dark corner, exit statement: Exit Statement. (line 30) * dark corner, field separators: Field Splitting Summary. (line 46) -* dark corner, FILENAME variable <1>: Auto-set. (line 93) +* dark corner, FILENAME variable <1>: Auto-set. (line 102) * dark corner, FILENAME variable: Getline Notes. (line 19) -* dark corner, FNR/NR variables: Auto-set. (line 314) +* dark corner, FNR/NR variables: Auto-set. (line 323) * dark corner, format-control characters: Control Letters. (line 18) * dark corner, FS as null string: Single Character Fields. (line 20) @@ -30241,12 +30250,12 @@ Index (line 23) * differences in awk and gawk, close() function: Close Files And Pipes. (line 81) -* differences in awk and gawk, ERRNO variable: Auto-set. (line 73) +* differences in awk and gawk, ERRNO variable: Auto-set. (line 82) * differences in awk and gawk, error messages: Special FD. (line 16) * differences in awk and gawk, FIELDWIDTHS variable: User-modified. (line 35) * differences in awk and gawk, FPAT variable: User-modified. (line 45) -* differences in awk and gawk, FUNCTAB variable: Auto-set. (line 119) +* differences in awk and gawk, FUNCTAB variable: Auto-set. (line 128) * differences in awk and gawk, function arguments (gawk): Calling Built-in. (line 16) * differences in awk and gawk, getline command: Getline. (line 19) @@ -30269,14 +30278,14 @@ Index (line 261) * differences in awk and gawk, print/printf statements: Format Modifiers. (line 13) -* differences in awk and gawk, PROCINFO array: Auto-set. (line 133) +* differences in awk and gawk, PROCINFO array: Auto-set. (line 142) * differences in awk and gawk, record separators: Records. (line 117) * differences in awk and gawk, regexp constants: Using Constant Regexps. (line 43) * differences in awk and gawk, regular expressions: Case-sensitivity. (line 26) * differences in awk and gawk, RS/RT variables: Records. (line 172) -* differences in awk and gawk, RT variable: Auto-set. (line 266) +* differences in awk and gawk, RT variable: Auto-set. (line 275) * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. @@ -30285,7 +30294,7 @@ Index * differences in awk and gawk, strings, storing: Records. (line 191) * differences in awk and gawk, strtonum() function (gawk): String Functions. (line 406) -* differences in awk and gawk, SYMTAB variable: Auto-set. (line 274) +* differences in awk and gawk, SYMTAB variable: Auto-set. (line 283) * differences in awk and gawk, TEXTDOMAIN variable: User-modified. (line 162) * differences in awk and gawk, trunc-mod operation: Arithmetic Ops. @@ -30366,13 +30375,13 @@ Index (line 11) * EREs (Extended Regular Expressions): Bracket Expressions. (line 24) * ERRNO variable <1>: TCP/IP Networking. (line 54) -* ERRNO variable <2>: Auto-set. (line 73) +* ERRNO variable <2>: Auto-set. (line 82) * ERRNO variable <3>: BEGINFILE/ENDFILE. (line 26) * ERRNO variable <4>: Close Files And Pipes. (line 138) * ERRNO variable: Getline. (line 19) * error handling: Special FD. (line 16) -* error handling, ERRNO variable and: Auto-set. (line 73) +* error handling, ERRNO variable and: Auto-set. (line 82) * error output: Special FD. (line 6) * escape processing, gsub()/gensub()/sub() functions: Gory Details. (line 6) @@ -30484,7 +30493,7 @@ Index * file names, distinguishing: Auto-set. (line 52) * file names, in compatibility mode: Special Caveats. (line 9) * file names, standard streams in gawk: Special FD. (line 46) -* FILENAME variable <1>: Auto-set. (line 93) +* FILENAME variable <1>: Auto-set. (line 102) * FILENAME variable: Reading Files. (line 6) * FILENAME variable, getline, setting with: Getline Notes. (line 19) * filenames, assignments as: Ignoring Assigns. (line 6) @@ -30551,9 +30560,9 @@ Index * floating-point, numbers: General Arithmetic. (line 6) * fnmatch extension function: Extension Sample Fnmatch. (line 6) -* FNR variable <1>: Auto-set. (line 103) +* FNR variable <1>: Auto-set. (line 112) * FNR variable: Records. (line 6) -* FNR variable, changing: Auto-set. (line 314) +* FNR variable, changing: Auto-set. (line 323) * for statement: For Statement. (line 6) * for statement, looping over arrays: Scanning an Array. (line 20) * fork extension function: Extension Sample Fork. @@ -30600,7 +30609,7 @@ Index * FSF (Free Software Foundation): Manual History. (line 6) * fts extension function: Extension Sample File Functions. (line 77) -* FUNCTAB array: Auto-set. (line 119) +* FUNCTAB array: Auto-set. (line 128) * function calls: Function Calls. (line 6) * function calls, indirect: Indirect Calls. (line 6) * function pointers: Indirect Calls. (line 6) @@ -30669,7 +30678,7 @@ Index * gawk, distribution: Distribution contents. (line 6) * gawk, ERRNO variable in <1>: TCP/IP Networking. (line 54) -* gawk, ERRNO variable in <2>: Auto-set. (line 73) +* gawk, ERRNO variable in <2>: Auto-set. (line 82) * gawk, ERRNO variable in <3>: BEGINFILE/ENDFILE. (line 26) * gawk, ERRNO variable in <4>: Close Files And Pipes. (line 138) @@ -30686,7 +30695,7 @@ Index * gawk, FPAT variable in <1>: User-modified. (line 45) * gawk, FPAT variable in: Splitting By Content. (line 26) -* gawk, FUNCTAB array in: Auto-set. (line 119) +* gawk, FUNCTAB array in: Auto-set. (line 128) * gawk, function arguments and: Calling Built-in. (line 16) * gawk, hexadecimal numbers and: Nondecimal-numbers. (line 42) * gawk, IGNORECASE variable in <1>: Array Sorting Functions. @@ -30717,7 +30726,7 @@ Index * gawk, OS/2 version of: PC Using. (line 11) * gawk, PROCINFO array in <1>: Two-way I/O. (line 116) * gawk, PROCINFO array in <2>: Time Functions. (line 47) -* gawk, PROCINFO array in: Auto-set. (line 133) +* gawk, PROCINFO array in: Auto-set. (line 142) * gawk, regexp constants and: Using Constant Regexps. (line 28) * gawk, regular expressions, case sensitivity: Case-sensitivity. @@ -30725,7 +30734,7 @@ Index * gawk, regular expressions, operators: GNU Regexp Operators. (line 6) * gawk, regular expressions, precedence: Regexp Operators. (line 161) -* gawk, RT variable in <1>: Auto-set. (line 266) +* gawk, RT variable in <1>: Auto-set. (line 275) * gawk, RT variable in <2>: Getline/Variable/File. (line 10) * gawk, RT variable in <3>: Multiple Line. (line 129) @@ -30734,7 +30743,7 @@ Index * gawk, source code, obtaining: Getting. (line 6) * gawk, splitting fields and: Constant Size. (line 87) * gawk, string-translation functions: I18N Functions. (line 6) -* gawk, SYMTAB array in: Auto-set. (line 274) +* gawk, SYMTAB array in: Auto-set. (line 283) * gawk, TEXTDOMAIN variable in: User-modified. (line 162) * gawk, timestamps: Time Functions. (line 6) * gawk, uses for: Preface. (line 36) @@ -31135,16 +31144,16 @@ Index (line 47) * nexti debugger command: Debugger Execution Control. (line 49) -* NF variable <1>: Auto-set. (line 108) +* NF variable <1>: Auto-set. (line 117) * NF variable: Fields. (line 33) * NF variable, decrementing: Changing Fields. (line 107) * ni debugger command (alias for nexti): Debugger Execution Control. (line 49) * noassign.awk program: Ignoring Assigns. (line 15) * not Boolean-logic operator: Boolean Ops. (line 6) -* NR variable <1>: Auto-set. (line 128) +* NR variable <1>: Auto-set. (line 137) * NR variable: Records. (line 6) -* NR variable, changing: Auto-set. (line 314) +* NR variable, changing: Auto-set. (line 323) * null strings <1>: Basic Data Typing. (line 26) * null strings <2>: Truth Values. (line 6) * null strings <3>: Regexp Field Splitting. @@ -31424,7 +31433,7 @@ Index * PROCINFO array <3>: Group Functions. (line 6) * PROCINFO array <4>: Passwd Functions. (line 6) * PROCINFO array <5>: Time Functions. (line 47) -* PROCINFO array <6>: Auto-set. (line 133) +* PROCINFO array <6>: Auto-set. (line 142) * PROCINFO array: Obsolete. (line 11) * profiling awk programs: Profiling. (line 6) * profiling awk programs, dynamically: Profiling. (line 172) @@ -31577,7 +31586,7 @@ Index * right angle bracket (>), >> operator (I/O): Redirection. (line 50) * right shift, bitwise: Bitwise Functions. (line 32) * Ritchie, Dennis: Basic Data Typing. (line 55) -* RLENGTH variable: Auto-set. (line 253) +* RLENGTH variable: Auto-set. (line 262) * RLENGTH variable, match() function and: String Functions. (line 225) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 32) @@ -31604,9 +31613,9 @@ Index * RS variable: Records. (line 20) * RS variable, multiline records and: Multiple Line. (line 17) * rshift() function (gawk): Bitwise Functions. (line 52) -* RSTART variable: Auto-set. (line 259) +* RSTART variable: Auto-set. (line 268) * RSTART variable, match() function and: String Functions. (line 225) -* RT variable <1>: Auto-set. (line 266) +* RT variable <1>: Auto-set. (line 275) * RT variable <2>: Getline/Variable/File. (line 10) * RT variable <3>: Multiple Line. (line 129) @@ -31689,7 +31698,7 @@ Index (line 110) * sidebar, Changing FS Does Not Affect the Fields: Field Splitting Summary. (line 38) -* sidebar, Changing NR and FNR: Auto-set. (line 312) +* sidebar, Changing NR and FNR: Auto-set. (line 321) * sidebar, Controlling Output Buffering with system(): I/O Functions. (line 135) * sidebar, Escape Sequences for Metacharacters: Escape Sequences. @@ -31831,7 +31840,7 @@ Index * substr() function: String Functions. (line 483) * Sumner, Andrew: Other Versions. (line 64) * switch statement: Switch Statement. (line 6) -* SYMTAB array: Auto-set. (line 274) +* SYMTAB array: Auto-set. (line 283) * syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops. (line 147) * system() function: I/O Functions. (line 72) @@ -32272,335 +32281,335 @@ Node: Built-in Variables402949 Node: User-modified404044 Ref: User-modified-Footnote-1412404 Node: Auto-set412466 -Ref: Auto-set-Footnote-1425544 -Ref: Auto-set-Footnote-2425749 -Node: ARGC and ARGV425805 -Node: Arrays429656 -Node: Array Basics431161 -Node: Array Intro431987 -Node: Reference to Elements436305 -Node: Assigning Elements438575 -Node: Array Example439066 -Node: Scanning an Array440798 -Node: Controlling Scanning443112 -Ref: Controlling Scanning-Footnote-1448035 -Node: Delete448351 -Ref: Delete-Footnote-1451116 -Node: Numeric Array Subscripts451173 -Node: Uninitialized Subscripts453356 -Node: Multi-dimensional454984 -Node: Multi-scanning458078 -Node: Arrays of Arrays459669 -Node: Functions464310 -Node: Built-in465129 -Node: Calling Built-in466207 -Node: Numeric Functions468195 -Ref: Numeric Functions-Footnote-1472027 -Ref: Numeric Functions-Footnote-2472384 -Ref: Numeric Functions-Footnote-3472432 -Node: String Functions472701 -Ref: String Functions-Footnote-1496259 -Ref: String Functions-Footnote-2496388 -Ref: String Functions-Footnote-3496636 -Node: Gory Details496723 -Ref: table-sub-escapes498402 -Ref: table-sub-posix-92499756 -Ref: table-sub-proposed501107 -Ref: table-posix-sub502461 -Ref: table-gensub-escapes504006 -Ref: Gory Details-Footnote-1505182 -Ref: Gory Details-Footnote-2505233 -Node: I/O Functions505384 -Ref: I/O Functions-Footnote-1512369 -Node: Time Functions512516 -Ref: Time Functions-Footnote-1523449 -Ref: Time Functions-Footnote-2523517 -Ref: Time Functions-Footnote-3523675 -Ref: Time Functions-Footnote-4523786 -Ref: Time Functions-Footnote-5523898 -Ref: Time Functions-Footnote-6524125 -Node: Bitwise Functions524391 -Ref: table-bitwise-ops524949 -Ref: Bitwise Functions-Footnote-1529170 -Node: Type Functions529354 -Node: I18N Functions530505 -Node: User-defined532132 -Node: Definition Syntax532936 -Ref: Definition Syntax-Footnote-1537846 -Node: Function Example537915 -Node: Function Caveats540509 -Node: Calling A Function540930 -Node: Variable Scope542045 -Node: Pass By Value/Reference545008 -Node: Return Statement548516 -Node: Dynamic Typing551497 -Node: Indirect Calls552428 -Node: Library Functions562113 -Ref: Library Functions-Footnote-1565626 -Ref: Library Functions-Footnote-2565769 -Node: Library Names565940 -Ref: Library Names-Footnote-1569411 -Ref: Library Names-Footnote-2569631 -Node: General Functions569717 -Node: Strtonum Function570670 -Node: Assert Function573600 -Node: Round Function576926 -Node: Cliff Random Function578469 -Node: Ordinal Functions579485 -Ref: Ordinal Functions-Footnote-1582555 -Ref: Ordinal Functions-Footnote-2582807 -Node: Join Function583016 -Ref: Join Function-Footnote-1584787 -Node: Getlocaltime Function584987 -Node: Data File Management588702 -Node: Filetrans Function589334 -Node: Rewind Function593403 -Node: File Checking594790 -Node: Empty Files595884 -Node: Ignoring Assigns598114 -Node: Getopt Function599667 -Ref: Getopt Function-Footnote-1610971 -Node: Passwd Functions611174 -Ref: Passwd Functions-Footnote-1620149 -Node: Group Functions620237 -Node: Walking Arrays628321 -Node: Sample Programs630458 -Node: Running Examples631132 -Node: Clones631860 -Node: Cut Program633084 -Node: Egrep Program642929 -Ref: Egrep Program-Footnote-1650702 -Node: Id Program650812 -Node: Split Program654428 -Ref: Split Program-Footnote-1657947 -Node: Tee Program658075 -Node: Uniq Program660878 -Node: Wc Program668307 -Ref: Wc Program-Footnote-1672573 -Ref: Wc Program-Footnote-2672773 -Node: Miscellaneous Programs672865 -Node: Dupword Program674053 -Node: Alarm Program676084 -Node: Translate Program680833 -Ref: Translate Program-Footnote-1685220 -Ref: Translate Program-Footnote-2685448 -Node: Labels Program685582 -Ref: Labels Program-Footnote-1688953 -Node: Word Sorting689037 -Node: History Sorting692921 -Node: Extract Program694760 -Ref: Extract Program-Footnote-1702261 -Node: Simple Sed702389 -Node: Igawk Program705451 -Ref: Igawk Program-Footnote-1720608 -Ref: Igawk Program-Footnote-2720809 -Node: Anagram Program720947 -Node: Signature Program724015 -Node: Advanced Features725115 -Node: Nondecimal Data726997 -Node: Array Sorting728580 -Node: Controlling Array Traversal729277 -Node: Array Sorting Functions737515 -Ref: Array Sorting Functions-Footnote-1741189 -Ref: Array Sorting Functions-Footnote-2741282 -Node: Two-way I/O741476 -Ref: Two-way I/O-Footnote-1746908 -Node: TCP/IP Networking746978 -Node: Profiling749822 -Node: Internationalization757319 -Node: I18N and L10N758744 -Node: Explaining gettext759430 -Ref: Explaining gettext-Footnote-1764498 -Ref: Explaining gettext-Footnote-2764682 -Node: Programmer i18n764847 -Node: Translator i18n769049 -Node: String Extraction769842 -Ref: String Extraction-Footnote-1770803 -Node: Printf Ordering770889 -Ref: Printf Ordering-Footnote-1773673 -Node: I18N Portability773737 -Ref: I18N Portability-Footnote-1776186 -Node: I18N Example776249 -Ref: I18N Example-Footnote-1778887 -Node: Gawk I18N778959 -Node: Debugger779580 -Node: Debugging780551 -Node: Debugging Concepts780984 -Node: Debugging Terms782840 -Node: Awk Debugging785437 -Node: Sample Debugging Session786329 -Node: Debugger Invocation786849 -Node: Finding The Bug788181 -Node: List of Debugger Commands794669 -Node: Breakpoint Control796003 -Node: Debugger Execution Control799667 -Node: Viewing And Changing Data803027 -Node: Execution Stack806383 -Node: Debugger Info807850 -Node: Miscellaneous Debugger Commands811832 -Node: Readline Support817008 -Node: Limitations817839 -Node: Arbitrary Precision Arithmetic820091 -Ref: Arbitrary Precision Arithmetic-Footnote-1821742 -Node: General Arithmetic821890 -Node: Floating Point Issues823610 -Node: String Conversion Precision824491 -Ref: String Conversion Precision-Footnote-1826197 -Node: Unexpected Results826306 -Node: POSIX Floating Point Problems828459 -Ref: POSIX Floating Point Problems-Footnote-1832284 -Node: Integer Programming832322 -Node: Floating-point Programming834061 -Ref: Floating-point Programming-Footnote-1840392 -Ref: Floating-point Programming-Footnote-2840662 -Node: Floating-point Representation840926 -Node: Floating-point Context842091 -Ref: table-ieee-formats842930 -Node: Rounding Mode844314 -Ref: table-rounding-modes844793 -Ref: Rounding Mode-Footnote-1847808 -Node: Gawk and MPFR847987 -Node: Arbitrary Precision Floats849242 -Ref: Arbitrary Precision Floats-Footnote-1851685 -Node: Setting Precision852001 -Ref: table-predefined-precision-strings852687 -Node: Setting Rounding Mode854832 -Ref: table-gawk-rounding-modes855236 -Node: Floating-point Constants856423 -Node: Changing Precision857852 -Ref: Changing Precision-Footnote-1859252 -Node: Exact Arithmetic859426 -Node: Arbitrary Precision Integers862564 -Ref: Arbitrary Precision Integers-Footnote-1865582 -Node: Dynamic Extensions865729 -Node: Extension Intro867187 -Node: Plugin License868452 -Node: Extension Mechanism Outline869137 -Ref: load-extension869554 -Ref: load-new-function871032 -Ref: call-new-function872027 -Node: Extension API Description874042 -Node: Extension API Functions Introduction875255 -Node: General Data Types880121 -Ref: General Data Types-Footnote-1885723 -Node: Requesting Values886022 -Ref: table-value-types-returned886753 -Node: Constructor Functions887707 -Node: Registration Functions890727 -Node: Extension Functions891412 -Node: Exit Callback Functions893637 -Node: Extension Version String894886 -Node: Input Parsers895536 -Node: Output Wrappers905293 -Node: Two-way processors909803 -Node: Printing Messages912011 -Ref: Printing Messages-Footnote-1913088 -Node: Updating `ERRNO'913240 -Node: Accessing Parameters913979 -Node: Symbol Table Access915209 -Node: Symbol table by name915721 -Node: Symbol table by cookie917468 -Ref: Symbol table by cookie-Footnote-1921598 -Node: Cached values921661 -Ref: Cached values-Footnote-1925110 -Node: Array Manipulation925201 -Ref: Array Manipulation-Footnote-1926299 -Node: Array Data Types926338 -Ref: Array Data Types-Footnote-1929041 -Node: Array Functions929133 -Node: Flattening Arrays932899 -Node: Creating Arrays939751 -Node: Extension API Variables944476 -Node: Extension Versioning945112 -Node: Extension API Informational Variables947013 -Node: Extension API Boilerplate948099 -Node: Finding Extensions951903 -Node: Extension Example952463 -Node: Internal File Description953194 -Node: Internal File Ops957285 -Ref: Internal File Ops-Footnote-1968793 -Node: Using Internal File Ops968933 -Ref: Using Internal File Ops-Footnote-1971286 -Node: Extension Samples971552 -Node: Extension Sample File Functions973076 -Node: Extension Sample Fnmatch981563 -Node: Extension Sample Fork983289 -Node: Extension Sample Inplace984507 -Node: Extension Sample Ord986285 -Node: Extension Sample Readdir987121 -Node: Extension Sample Revout988653 -Node: Extension Sample Rev2way989246 -Node: Extension Sample Read write array989936 -Node: Extension Sample Readfile991819 -Node: Extension Sample API Tests992637 -Node: Extension Sample Time993162 -Node: gawkextlib994526 -Node: Language History997286 -Node: V7/SVR3.1998808 -Node: SVR41001129 -Node: POSIX1002571 -Node: BTL1003957 -Node: POSIX/GNU1004691 -Node: Common Extensions1010226 -Node: Ranges and Locales1011532 -Ref: Ranges and Locales-Footnote-11016150 -Ref: Ranges and Locales-Footnote-21016177 -Ref: Ranges and Locales-Footnote-31016437 -Node: Contributors1016658 -Node: Installation1021537 -Node: Gawk Distribution1022431 -Node: Getting1022915 -Node: Extracting1023741 -Node: Distribution contents1025433 -Node: Unix Installation1030694 -Node: Quick Installation1031311 -Node: Additional Configuration Options1033755 -Node: Configuration Philosophy1035232 -Node: Non-Unix Installation1037586 -Node: PC Installation1038044 -Node: PC Binary Installation1039343 -Node: PC Compiling1041191 -Node: PC Testing1044135 -Node: PC Using1045311 -Node: Cygwin1049496 -Node: MSYS1050496 -Node: VMS Installation1051010 -Node: VMS Compilation1051613 -Ref: VMS Compilation-Footnote-11052620 -Node: VMS Installation Details1052678 -Node: VMS Running1054313 -Node: VMS Old Gawk1055920 -Node: Bugs1056394 -Node: Other Versions1060246 -Node: Notes1065847 -Node: Compatibility Mode1066647 -Node: Additions1067430 -Node: Accessing The Source1068357 -Node: Adding Code1069797 -Node: New Ports1075842 -Node: Derived Files1079977 -Ref: Derived Files-Footnote-11085298 -Ref: Derived Files-Footnote-21085332 -Ref: Derived Files-Footnote-31085932 -Node: Future Extensions1086030 -Node: Implementation Limitations1086611 -Node: Extension Design1087863 -Node: Old Extension Problems1089017 -Ref: Old Extension Problems-Footnote-11090525 -Node: Extension New Mechanism Goals1090582 -Ref: Extension New Mechanism Goals-Footnote-11093948 -Node: Extension Other Design Decisions1094134 -Node: Extension Future Growth1096240 -Node: Old Extension Mechanism1097076 -Node: Basic Concepts1098816 -Node: Basic High Level1099497 -Ref: figure-general-flow1099768 -Ref: figure-process-flow1100367 -Ref: Basic High Level-Footnote-11103596 -Node: Basic Data Typing1103781 -Node: Glossary1107136 -Node: Copying1132598 -Node: GNU Free Documentation License1170155 -Node: Index1195292 +Ref: Auto-set-Footnote-1425936 +Ref: Auto-set-Footnote-2426141 +Node: ARGC and ARGV426197 +Node: Arrays430048 +Node: Array Basics431553 +Node: Array Intro432379 +Node: Reference to Elements436697 +Node: Assigning Elements438967 +Node: Array Example439458 +Node: Scanning an Array441190 +Node: Controlling Scanning443504 +Ref: Controlling Scanning-Footnote-1448427 +Node: Delete448743 +Ref: Delete-Footnote-1451508 +Node: Numeric Array Subscripts451565 +Node: Uninitialized Subscripts453748 +Node: Multi-dimensional455376 +Node: Multi-scanning458470 +Node: Arrays of Arrays460061 +Node: Functions464702 +Node: Built-in465521 +Node: Calling Built-in466599 +Node: Numeric Functions468587 +Ref: Numeric Functions-Footnote-1472419 +Ref: Numeric Functions-Footnote-2472776 +Ref: Numeric Functions-Footnote-3472824 +Node: String Functions473093 +Ref: String Functions-Footnote-1496651 +Ref: String Functions-Footnote-2496780 +Ref: String Functions-Footnote-3497028 +Node: Gory Details497115 +Ref: table-sub-escapes498794 +Ref: table-sub-posix-92500148 +Ref: table-sub-proposed501499 +Ref: table-posix-sub502853 +Ref: table-gensub-escapes504398 +Ref: Gory Details-Footnote-1505574 +Ref: Gory Details-Footnote-2505625 +Node: I/O Functions505776 +Ref: I/O Functions-Footnote-1512761 +Node: Time Functions512908 +Ref: Time Functions-Footnote-1523841 +Ref: Time Functions-Footnote-2523909 +Ref: Time Functions-Footnote-3524067 +Ref: Time Functions-Footnote-4524178 +Ref: Time Functions-Footnote-5524290 +Ref: Time Functions-Footnote-6524517 +Node: Bitwise Functions524783 +Ref: table-bitwise-ops525341 +Ref: Bitwise Functions-Footnote-1529562 +Node: Type Functions529746 +Node: I18N Functions530897 +Node: User-defined532524 +Node: Definition Syntax533328 +Ref: Definition Syntax-Footnote-1538238 +Node: Function Example538307 +Node: Function Caveats540901 +Node: Calling A Function541322 +Node: Variable Scope542437 +Node: Pass By Value/Reference545400 +Node: Return Statement548908 +Node: Dynamic Typing551889 +Node: Indirect Calls552820 +Node: Library Functions562505 +Ref: Library Functions-Footnote-1566018 +Ref: Library Functions-Footnote-2566161 +Node: Library Names566332 +Ref: Library Names-Footnote-1569803 +Ref: Library Names-Footnote-2570023 +Node: General Functions570109 +Node: Strtonum Function571062 +Node: Assert Function573992 +Node: Round Function577318 +Node: Cliff Random Function578861 +Node: Ordinal Functions579877 +Ref: Ordinal Functions-Footnote-1582947 +Ref: Ordinal Functions-Footnote-2583199 +Node: Join Function583408 +Ref: Join Function-Footnote-1585179 +Node: Getlocaltime Function585379 +Node: Data File Management589094 +Node: Filetrans Function589726 +Node: Rewind Function593795 +Node: File Checking595182 +Node: Empty Files596276 +Node: Ignoring Assigns598506 +Node: Getopt Function600059 +Ref: Getopt Function-Footnote-1611363 +Node: Passwd Functions611566 +Ref: Passwd Functions-Footnote-1620541 +Node: Group Functions620629 +Node: Walking Arrays628713 +Node: Sample Programs630850 +Node: Running Examples631524 +Node: Clones632252 +Node: Cut Program633476 +Node: Egrep Program643321 +Ref: Egrep Program-Footnote-1651094 +Node: Id Program651204 +Node: Split Program654820 +Ref: Split Program-Footnote-1658339 +Node: Tee Program658467 +Node: Uniq Program661270 +Node: Wc Program668699 +Ref: Wc Program-Footnote-1672965 +Ref: Wc Program-Footnote-2673165 +Node: Miscellaneous Programs673257 +Node: Dupword Program674445 +Node: Alarm Program676476 +Node: Translate Program681225 +Ref: Translate Program-Footnote-1685612 +Ref: Translate Program-Footnote-2685840 +Node: Labels Program685974 +Ref: Labels Program-Footnote-1689345 +Node: Word Sorting689429 +Node: History Sorting693313 +Node: Extract Program695152 +Ref: Extract Program-Footnote-1702653 +Node: Simple Sed702781 +Node: Igawk Program705843 +Ref: Igawk Program-Footnote-1721000 +Ref: Igawk Program-Footnote-2721201 +Node: Anagram Program721339 +Node: Signature Program724407 +Node: Advanced Features725507 +Node: Nondecimal Data727389 +Node: Array Sorting728972 +Node: Controlling Array Traversal729669 +Node: Array Sorting Functions737907 +Ref: Array Sorting Functions-Footnote-1741581 +Ref: Array Sorting Functions-Footnote-2741674 +Node: Two-way I/O741868 +Ref: Two-way I/O-Footnote-1747300 +Node: TCP/IP Networking747370 +Node: Profiling750214 +Node: Internationalization757711 +Node: I18N and L10N759136 +Node: Explaining gettext759822 +Ref: Explaining gettext-Footnote-1764890 +Ref: Explaining gettext-Footnote-2765074 +Node: Programmer i18n765239 +Node: Translator i18n769441 +Node: String Extraction770234 +Ref: String Extraction-Footnote-1771195 +Node: Printf Ordering771281 +Ref: Printf Ordering-Footnote-1774065 +Node: I18N Portability774129 +Ref: I18N Portability-Footnote-1776578 +Node: I18N Example776641 +Ref: I18N Example-Footnote-1779279 +Node: Gawk I18N779351 +Node: Debugger779972 +Node: Debugging780943 +Node: Debugging Concepts781376 +Node: Debugging Terms783232 +Node: Awk Debugging785829 +Node: Sample Debugging Session786721 +Node: Debugger Invocation787241 +Node: Finding The Bug788573 +Node: List of Debugger Commands795061 +Node: Breakpoint Control796395 +Node: Debugger Execution Control800059 +Node: Viewing And Changing Data803419 +Node: Execution Stack806775 +Node: Debugger Info808242 +Node: Miscellaneous Debugger Commands812224 +Node: Readline Support817400 +Node: Limitations818231 +Node: Arbitrary Precision Arithmetic820483 +Ref: Arbitrary Precision Arithmetic-Footnote-1822134 +Node: General Arithmetic822282 +Node: Floating Point Issues824002 +Node: String Conversion Precision824883 +Ref: String Conversion Precision-Footnote-1826589 +Node: Unexpected Results826698 +Node: POSIX Floating Point Problems828851 +Ref: POSIX Floating Point Problems-Footnote-1832676 +Node: Integer Programming832714 +Node: Floating-point Programming834453 +Ref: Floating-point Programming-Footnote-1840784 +Ref: Floating-point Programming-Footnote-2841054 +Node: Floating-point Representation841318 +Node: Floating-point Context842483 +Ref: table-ieee-formats843322 +Node: Rounding Mode844706 +Ref: table-rounding-modes845185 +Ref: Rounding Mode-Footnote-1848200 +Node: Gawk and MPFR848379 +Node: Arbitrary Precision Floats849634 +Ref: Arbitrary Precision Floats-Footnote-1852077 +Node: Setting Precision852393 +Ref: table-predefined-precision-strings853079 +Node: Setting Rounding Mode855224 +Ref: table-gawk-rounding-modes855628 +Node: Floating-point Constants856815 +Node: Changing Precision858244 +Ref: Changing Precision-Footnote-1859644 +Node: Exact Arithmetic859818 +Node: Arbitrary Precision Integers862956 +Ref: Arbitrary Precision Integers-Footnote-1865974 +Node: Dynamic Extensions866121 +Node: Extension Intro867579 +Node: Plugin License868844 +Node: Extension Mechanism Outline869529 +Ref: load-extension869946 +Ref: load-new-function871424 +Ref: call-new-function872419 +Node: Extension API Description874434 +Node: Extension API Functions Introduction875647 +Node: General Data Types880513 +Ref: General Data Types-Footnote-1886115 +Node: Requesting Values886414 +Ref: table-value-types-returned887145 +Node: Constructor Functions888099 +Node: Registration Functions891119 +Node: Extension Functions891804 +Node: Exit Callback Functions894029 +Node: Extension Version String895278 +Node: Input Parsers895928 +Node: Output Wrappers905685 +Node: Two-way processors910195 +Node: Printing Messages912403 +Ref: Printing Messages-Footnote-1913480 +Node: Updating `ERRNO'913632 +Node: Accessing Parameters914371 +Node: Symbol Table Access915601 +Node: Symbol table by name916113 +Node: Symbol table by cookie917860 +Ref: Symbol table by cookie-Footnote-1921990 +Node: Cached values922053 +Ref: Cached values-Footnote-1925502 +Node: Array Manipulation925593 +Ref: Array Manipulation-Footnote-1926691 +Node: Array Data Types926730 +Ref: Array Data Types-Footnote-1929433 +Node: Array Functions929525 +Node: Flattening Arrays933291 +Node: Creating Arrays940143 +Node: Extension API Variables944868 +Node: Extension Versioning945504 +Node: Extension API Informational Variables947405 +Node: Extension API Boilerplate948491 +Node: Finding Extensions952295 +Node: Extension Example952855 +Node: Internal File Description953586 +Node: Internal File Ops957677 +Ref: Internal File Ops-Footnote-1969185 +Node: Using Internal File Ops969325 +Ref: Using Internal File Ops-Footnote-1971678 +Node: Extension Samples971944 +Node: Extension Sample File Functions973468 +Node: Extension Sample Fnmatch981955 +Node: Extension Sample Fork983681 +Node: Extension Sample Inplace984899 +Node: Extension Sample Ord986677 +Node: Extension Sample Readdir987513 +Node: Extension Sample Revout989045 +Node: Extension Sample Rev2way989638 +Node: Extension Sample Read write array990328 +Node: Extension Sample Readfile992211 +Node: Extension Sample API Tests993029 +Node: Extension Sample Time993554 +Node: gawkextlib994918 +Node: Language History997678 +Node: V7/SVR3.1999200 +Node: SVR41001521 +Node: POSIX1002963 +Node: BTL1004349 +Node: POSIX/GNU1005083 +Node: Common Extensions1010618 +Node: Ranges and Locales1011924 +Ref: Ranges and Locales-Footnote-11016542 +Ref: Ranges and Locales-Footnote-21016569 +Ref: Ranges and Locales-Footnote-31016829 +Node: Contributors1017050 +Node: Installation1021929 +Node: Gawk Distribution1022823 +Node: Getting1023307 +Node: Extracting1024133 +Node: Distribution contents1025825 +Node: Unix Installation1031086 +Node: Quick Installation1031703 +Node: Additional Configuration Options1034147 +Node: Configuration Philosophy1035624 +Node: Non-Unix Installation1037978 +Node: PC Installation1038436 +Node: PC Binary Installation1039735 +Node: PC Compiling1041583 +Node: PC Testing1044527 +Node: PC Using1045703 +Node: Cygwin1049888 +Node: MSYS1050888 +Node: VMS Installation1051402 +Node: VMS Compilation1052005 +Ref: VMS Compilation-Footnote-11053012 +Node: VMS Installation Details1053070 +Node: VMS Running1054705 +Node: VMS Old Gawk1056312 +Node: Bugs1056786 +Node: Other Versions1060638 +Node: Notes1066239 +Node: Compatibility Mode1067039 +Node: Additions1067822 +Node: Accessing The Source1068749 +Node: Adding Code1070189 +Node: New Ports1076234 +Node: Derived Files1080369 +Ref: Derived Files-Footnote-11085690 +Ref: Derived Files-Footnote-21085724 +Ref: Derived Files-Footnote-31086324 +Node: Future Extensions1086422 +Node: Implementation Limitations1087003 +Node: Extension Design1088255 +Node: Old Extension Problems1089409 +Ref: Old Extension Problems-Footnote-11090917 +Node: Extension New Mechanism Goals1090974 +Ref: Extension New Mechanism Goals-Footnote-11094340 +Node: Extension Other Design Decisions1094526 +Node: Extension Future Growth1096632 +Node: Old Extension Mechanism1097468 +Node: Basic Concepts1099208 +Node: Basic High Level1099889 +Ref: figure-general-flow1100160 +Ref: figure-process-flow1100759 +Ref: Basic High Level-Footnote-11103988 +Node: Basic Data Typing1104173 +Node: Glossary1107528 +Node: Copying1132990 +Node: GNU Free Documentation License1170547 +Node: Index1195684  End Tag Table -- cgit v1.2.3 From 08e8087fc3b1b9839e464ee436e8b24a45b024aa Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Tue, 24 Sep 2013 15:35:02 +0300 Subject: Add readfile function. --- doc/gawk.info | 1097 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 581 insertions(+), 516 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 9072bf06..0bbf9dde 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -401,6 +401,8 @@ texts being (a) (see below), and with the Back-Cover Texts being (b) * Join Function:: A function to join an array into a string. * Getlocaltime Function:: A function to get formatted times. +* Readfile Function:: A function to read an entire file at + once. * Data File Management:: Functions for managing command-line data files. * Filetrans Function:: A function for handling data file @@ -13663,6 +13665,7 @@ programming use. vice versa. * Join Function:: A function to join an array into a string. * Getlocaltime Function:: A function to get formatted times. +* Readfile Function:: A function to read an entire file at once.  File: gawk.info, Node: Strtonum Function, Next: Assert Function, Up: General Functions @@ -14055,7 +14058,7 @@ concatenation. The lack of an explicit operator for concatenation makes string operations more difficult than they really need to be.  -File: gawk.info, Node: Getlocaltime Function, Prev: Join Function, Up: General Functions +File: gawk.info, Node: Getlocaltime Function, Next: Readfile Function, Prev: Join Function, Up: General Functions 10.2.7 Managing the Time of Day ------------------------------- @@ -14136,6 +14139,66 @@ formats required by `strftime()'. The `alarm' program presented in the `getlocaltime()' function would have allowed the user to supply an optional timestamp value to use instead of the current time. + +File: gawk.info, Node: Readfile Function, Prev: Getlocaltime Function, Up: General Functions + +10.2.8 Reading A Whole File At Once +----------------------------------- + +Often, it is convenient to have the entire contents of a file available +in memory as a single string. A straightforward but naive way to do +that might be as follows: + + function readfile(file, tmp, contents) + { + if ((getline tmp < file) < 0) + return + + contents = tmp + while (getline tmp < file) > 0) + contents = contents RT tmp + + close(file) + return contents + } + + This function reads from `file' one record at a time, building up +the full contents of the file in the local variable `contents'. It +works, but is not necessarily efficient. + + The following function, based on a suggestion by Denis Shirokov, +reads the entire contents of the named file in one shot: + + # readfile.awk --- read an entire file at once + + function readfile(file, tmp, save_rs) + { + save_rs = RS + RS = "^$" + getline tmp < file + close(file) + RS = save_rs + + return tmp + } + + It works by setting `RS' to `^$', a regular expression that will +never match if the file has contents. `gawk' reads data from the file +into `tmp' attempting to match `RS'. The match fails after each read, +but fails quickly, such that `gawk' fills `tmp' with the entire +contents of the file. (*Note Records::, for information on `RT' and +`RS'.) + + In the case that `file' is empty, the return value is the null +string. Thus calling code may use something like: + + contents = readfile("/some/path") + if (length(contents) == 0) + # file was empty ... + + This tests the result to see if it is empty or not. An equivalent +test would be `contents == ""'. +  File: gawk.info, Node: Data File Management, Next: Getopt Function, Prev: General Functions, Up: Library Functions @@ -31492,6 +31555,7 @@ Index (line 9) * readfile extension function: Extension Sample Readfile. (line 11) +* readfile() user-defined function: Readfile Function. (line 30) * recipe for a programming language: History. (line 6) * record separators <1>: User-modified. (line 143) * record separators: Records. (line 14) @@ -32087,520 +32151,521 @@ Index  Tag Table: Node: Top1360 -Node: Foreword40338 -Node: Preface44683 -Ref: Preface-Footnote-147736 -Ref: Preface-Footnote-247832 -Node: History48064 -Node: Names50438 -Ref: Names-Footnote-151915 -Node: This Manual51987 -Ref: This Manual-Footnote-157761 -Node: Conventions57861 -Node: Manual History60013 -Ref: Manual History-Footnote-163461 -Ref: Manual History-Footnote-263502 -Node: How To Contribute63576 -Node: Acknowledgments64720 -Node: Getting Started68929 -Node: Running gawk71308 -Node: One-shot72494 -Node: Read Terminal73719 -Ref: Read Terminal-Footnote-175369 -Ref: Read Terminal-Footnote-275645 -Node: Long75816 -Node: Executable Scripts77192 -Ref: Executable Scripts-Footnote-179025 -Ref: Executable Scripts-Footnote-279127 -Node: Comments79674 -Node: Quoting82141 -Node: DOS Quoting86764 -Node: Sample Data Files87439 -Node: Very Simple90471 -Node: Two Rules95070 -Node: More Complex97217 -Ref: More Complex-Footnote-1100147 -Node: Statements/Lines100232 -Ref: Statements/Lines-Footnote-1104694 -Node: Other Features104959 -Node: When105887 -Node: Invoking Gawk108034 -Node: Command Line109495 -Node: Options110278 -Ref: Options-Footnote-1125670 -Node: Other Arguments125695 -Node: Naming Standard Input128353 -Node: Environment Variables129447 -Node: AWKPATH Variable130005 -Ref: AWKPATH Variable-Footnote-1132763 -Node: AWKLIBPATH Variable133023 -Node: Other Environment Variables133741 -Node: Exit Status136236 -Node: Include Files136911 -Node: Loading Shared Libraries140480 -Node: Obsolete141844 -Node: Undocumented142541 -Node: Regexp142784 -Node: Regexp Usage144173 -Node: Escape Sequences146199 -Node: Regexp Operators151868 -Ref: Regexp Operators-Footnote-1159248 -Ref: Regexp Operators-Footnote-2159395 -Node: Bracket Expressions159493 -Ref: table-char-classes161383 -Node: GNU Regexp Operators163906 -Node: Case-sensitivity167629 -Ref: Case-sensitivity-Footnote-1170597 -Ref: Case-sensitivity-Footnote-2170832 -Node: Leftmost Longest170940 -Node: Computed Regexps172141 -Node: Reading Files175478 -Node: Records177481 -Ref: Records-Footnote-1186370 -Node: Fields186407 -Ref: Fields-Footnote-1189440 -Node: Nonconstant Fields189526 -Node: Changing Fields191728 -Node: Field Separators197687 -Node: Default Field Splitting200316 -Node: Regexp Field Splitting201433 -Node: Single Character Fields204775 -Node: Command Line Field Separator205834 -Node: Field Splitting Summary209275 -Ref: Field Splitting Summary-Footnote-1212386 -Node: Constant Size212487 -Node: Splitting By Content217071 -Ref: Splitting By Content-Footnote-1220797 -Node: Multiple Line220837 -Ref: Multiple Line-Footnote-1226684 -Node: Getline226863 -Node: Plain Getline229079 -Node: Getline/Variable231174 -Node: Getline/File232321 -Node: Getline/Variable/File233662 -Ref: Getline/Variable/File-Footnote-1235261 -Node: Getline/Pipe235348 -Node: Getline/Variable/Pipe238048 -Node: Getline/Coprocess239155 -Node: Getline/Variable/Coprocess240407 -Node: Getline Notes241144 -Node: Getline Summary243931 -Ref: table-getline-variants244339 -Node: Read Timeout245251 -Ref: Read Timeout-Footnote-1248992 -Node: Command line directories249049 -Node: Printing249679 -Node: Print251310 -Node: Print Examples252647 -Node: Output Separators255431 -Node: OFMT257191 -Node: Printf258549 -Node: Basic Printf259455 -Node: Control Letters260994 -Node: Format Modifiers264806 -Node: Printf Examples270815 -Node: Redirection273530 -Node: Special Files280495 -Node: Special FD281028 -Ref: Special FD-Footnote-1284653 -Node: Special Network284727 -Node: Special Caveats285577 -Node: Close Files And Pipes286373 -Ref: Close Files And Pipes-Footnote-1293356 -Ref: Close Files And Pipes-Footnote-2293504 -Node: Expressions293654 -Node: Values294786 -Node: Constants295462 -Node: Scalar Constants296142 -Ref: Scalar Constants-Footnote-1297001 -Node: Nondecimal-numbers297183 -Node: Regexp Constants300183 -Node: Using Constant Regexps300658 -Node: Variables303713 -Node: Using Variables304368 -Node: Assignment Options306092 -Node: Conversion307964 -Ref: table-locale-affects313464 -Ref: Conversion-Footnote-1314088 -Node: All Operators314197 -Node: Arithmetic Ops314827 -Node: Concatenation317332 -Ref: Concatenation-Footnote-1320125 -Node: Assignment Ops320245 -Ref: table-assign-ops325233 -Node: Increment Ops326564 -Node: Truth Values and Conditions329999 -Node: Truth Values331082 -Node: Typing and Comparison332131 -Node: Variable Typing332920 -Ref: Variable Typing-Footnote-1336817 -Node: Comparison Operators336939 -Ref: table-relational-ops337349 -Node: POSIX String Comparison340898 -Ref: POSIX String Comparison-Footnote-1341854 -Node: Boolean Ops341992 -Ref: Boolean Ops-Footnote-1346070 -Node: Conditional Exp346161 -Node: Function Calls347893 -Node: Precedence351487 -Node: Locales355156 -Node: Patterns and Actions356245 -Node: Pattern Overview357299 -Node: Regexp Patterns358968 -Node: Expression Patterns359511 -Node: Ranges363196 -Node: BEGIN/END366162 -Node: Using BEGIN/END366924 -Ref: Using BEGIN/END-Footnote-1369655 -Node: I/O And BEGIN/END369761 -Node: BEGINFILE/ENDFILE372043 -Node: Empty374957 -Node: Using Shell Variables375273 -Node: Action Overview377558 -Node: Statements379915 -Node: If Statement381769 -Node: While Statement383268 -Node: Do Statement385312 -Node: For Statement386468 -Node: Switch Statement389620 -Node: Break Statement391717 -Node: Continue Statement393707 -Node: Next Statement395500 -Node: Nextfile Statement397890 -Node: Exit Statement400533 -Node: Built-in Variables402949 -Node: User-modified404044 -Ref: User-modified-Footnote-1412404 -Node: Auto-set412466 -Ref: Auto-set-Footnote-1425544 -Ref: Auto-set-Footnote-2425749 -Node: ARGC and ARGV425805 -Node: Arrays429656 -Node: Array Basics431161 -Node: Array Intro431987 -Node: Reference to Elements436305 -Node: Assigning Elements438575 -Node: Array Example439066 -Node: Scanning an Array440798 -Node: Controlling Scanning443112 -Ref: Controlling Scanning-Footnote-1448035 -Node: Delete448351 -Ref: Delete-Footnote-1451116 -Node: Numeric Array Subscripts451173 -Node: Uninitialized Subscripts453356 -Node: Multi-dimensional454984 -Node: Multi-scanning458078 -Node: Arrays of Arrays459669 -Node: Functions464310 -Node: Built-in465129 -Node: Calling Built-in466207 -Node: Numeric Functions468195 -Ref: Numeric Functions-Footnote-1472027 -Ref: Numeric Functions-Footnote-2472384 -Ref: Numeric Functions-Footnote-3472432 -Node: String Functions472701 -Ref: String Functions-Footnote-1496259 -Ref: String Functions-Footnote-2496388 -Ref: String Functions-Footnote-3496636 -Node: Gory Details496723 -Ref: table-sub-escapes498402 -Ref: table-sub-posix-92499756 -Ref: table-sub-proposed501107 -Ref: table-posix-sub502461 -Ref: table-gensub-escapes504006 -Ref: Gory Details-Footnote-1505182 -Ref: Gory Details-Footnote-2505233 -Node: I/O Functions505384 -Ref: I/O Functions-Footnote-1512369 -Node: Time Functions512516 -Ref: Time Functions-Footnote-1523449 -Ref: Time Functions-Footnote-2523517 -Ref: Time Functions-Footnote-3523675 -Ref: Time Functions-Footnote-4523786 -Ref: Time Functions-Footnote-5523898 -Ref: Time Functions-Footnote-6524125 -Node: Bitwise Functions524391 -Ref: table-bitwise-ops524949 -Ref: Bitwise Functions-Footnote-1529170 -Node: Type Functions529354 -Node: I18N Functions530505 -Node: User-defined532132 -Node: Definition Syntax532936 -Ref: Definition Syntax-Footnote-1537846 -Node: Function Example537915 -Node: Function Caveats540509 -Node: Calling A Function540930 -Node: Variable Scope542045 -Node: Pass By Value/Reference545008 -Node: Return Statement548516 -Node: Dynamic Typing551497 -Node: Indirect Calls552428 -Node: Library Functions562113 -Ref: Library Functions-Footnote-1565626 -Ref: Library Functions-Footnote-2565769 -Node: Library Names565940 -Ref: Library Names-Footnote-1569411 -Ref: Library Names-Footnote-2569631 -Node: General Functions569717 -Node: Strtonum Function570670 -Node: Assert Function573600 -Node: Round Function576926 -Node: Cliff Random Function578469 -Node: Ordinal Functions579485 -Ref: Ordinal Functions-Footnote-1582555 -Ref: Ordinal Functions-Footnote-2582807 -Node: Join Function583016 -Ref: Join Function-Footnote-1584787 -Node: Getlocaltime Function584987 -Node: Data File Management588702 -Node: Filetrans Function589334 -Node: Rewind Function593403 -Node: File Checking594790 -Node: Empty Files595884 -Node: Ignoring Assigns598114 -Node: Getopt Function599667 -Ref: Getopt Function-Footnote-1610971 -Node: Passwd Functions611174 -Ref: Passwd Functions-Footnote-1620149 -Node: Group Functions620237 -Node: Walking Arrays628321 -Node: Sample Programs630458 -Node: Running Examples631132 -Node: Clones631860 -Node: Cut Program633084 -Node: Egrep Program642929 -Ref: Egrep Program-Footnote-1650702 -Node: Id Program650812 -Node: Split Program654428 -Ref: Split Program-Footnote-1657947 -Node: Tee Program658075 -Node: Uniq Program660878 -Node: Wc Program668307 -Ref: Wc Program-Footnote-1672573 -Ref: Wc Program-Footnote-2672773 -Node: Miscellaneous Programs672865 -Node: Dupword Program674053 -Node: Alarm Program676084 -Node: Translate Program680833 -Ref: Translate Program-Footnote-1685220 -Ref: Translate Program-Footnote-2685448 -Node: Labels Program685582 -Ref: Labels Program-Footnote-1688953 -Node: Word Sorting689037 -Node: History Sorting692921 -Node: Extract Program694760 -Ref: Extract Program-Footnote-1702261 -Node: Simple Sed702389 -Node: Igawk Program705451 -Ref: Igawk Program-Footnote-1720608 -Ref: Igawk Program-Footnote-2720809 -Node: Anagram Program720947 -Node: Signature Program724015 -Node: Advanced Features725115 -Node: Nondecimal Data726997 -Node: Array Sorting728580 -Node: Controlling Array Traversal729277 -Node: Array Sorting Functions737515 -Ref: Array Sorting Functions-Footnote-1741189 -Ref: Array Sorting Functions-Footnote-2741282 -Node: Two-way I/O741476 -Ref: Two-way I/O-Footnote-1746908 -Node: TCP/IP Networking746978 -Node: Profiling749822 -Node: Internationalization757319 -Node: I18N and L10N758744 -Node: Explaining gettext759430 -Ref: Explaining gettext-Footnote-1764498 -Ref: Explaining gettext-Footnote-2764682 -Node: Programmer i18n764847 -Node: Translator i18n769049 -Node: String Extraction769842 -Ref: String Extraction-Footnote-1770803 -Node: Printf Ordering770889 -Ref: Printf Ordering-Footnote-1773673 -Node: I18N Portability773737 -Ref: I18N Portability-Footnote-1776186 -Node: I18N Example776249 -Ref: I18N Example-Footnote-1778887 -Node: Gawk I18N778959 -Node: Debugger779580 -Node: Debugging780551 -Node: Debugging Concepts780984 -Node: Debugging Terms782840 -Node: Awk Debugging785437 -Node: Sample Debugging Session786329 -Node: Debugger Invocation786849 -Node: Finding The Bug788181 -Node: List of Debugger Commands794669 -Node: Breakpoint Control796003 -Node: Debugger Execution Control799667 -Node: Viewing And Changing Data803027 -Node: Execution Stack806383 -Node: Debugger Info807850 -Node: Miscellaneous Debugger Commands811832 -Node: Readline Support817008 -Node: Limitations817839 -Node: Arbitrary Precision Arithmetic820091 -Ref: Arbitrary Precision Arithmetic-Footnote-1821742 -Node: General Arithmetic821890 -Node: Floating Point Issues823610 -Node: String Conversion Precision824491 -Ref: String Conversion Precision-Footnote-1826197 -Node: Unexpected Results826306 -Node: POSIX Floating Point Problems828459 -Ref: POSIX Floating Point Problems-Footnote-1832284 -Node: Integer Programming832322 -Node: Floating-point Programming834061 -Ref: Floating-point Programming-Footnote-1840392 -Ref: Floating-point Programming-Footnote-2840662 -Node: Floating-point Representation840926 -Node: Floating-point Context842091 -Ref: table-ieee-formats842930 -Node: Rounding Mode844314 -Ref: table-rounding-modes844793 -Ref: Rounding Mode-Footnote-1847808 -Node: Gawk and MPFR847987 -Node: Arbitrary Precision Floats849242 -Ref: Arbitrary Precision Floats-Footnote-1851685 -Node: Setting Precision852001 -Ref: table-predefined-precision-strings852687 -Node: Setting Rounding Mode854832 -Ref: table-gawk-rounding-modes855236 -Node: Floating-point Constants856423 -Node: Changing Precision857852 -Ref: Changing Precision-Footnote-1859252 -Node: Exact Arithmetic859426 -Node: Arbitrary Precision Integers862564 -Ref: Arbitrary Precision Integers-Footnote-1865582 -Node: Dynamic Extensions865729 -Node: Extension Intro867187 -Node: Plugin License868452 -Node: Extension Mechanism Outline869137 -Ref: load-extension869554 -Ref: load-new-function871032 -Ref: call-new-function872027 -Node: Extension API Description874042 -Node: Extension API Functions Introduction875255 -Node: General Data Types880121 -Ref: General Data Types-Footnote-1885723 -Node: Requesting Values886022 -Ref: table-value-types-returned886753 -Node: Constructor Functions887707 -Node: Registration Functions890727 -Node: Extension Functions891412 -Node: Exit Callback Functions893637 -Node: Extension Version String894886 -Node: Input Parsers895536 -Node: Output Wrappers905293 -Node: Two-way processors909803 -Node: Printing Messages912011 -Ref: Printing Messages-Footnote-1913088 -Node: Updating `ERRNO'913240 -Node: Accessing Parameters913979 -Node: Symbol Table Access915209 -Node: Symbol table by name915721 -Node: Symbol table by cookie917468 -Ref: Symbol table by cookie-Footnote-1921598 -Node: Cached values921661 -Ref: Cached values-Footnote-1925110 -Node: Array Manipulation925201 -Ref: Array Manipulation-Footnote-1926299 -Node: Array Data Types926338 -Ref: Array Data Types-Footnote-1929041 -Node: Array Functions929133 -Node: Flattening Arrays932899 -Node: Creating Arrays939751 -Node: Extension API Variables944476 -Node: Extension Versioning945112 -Node: Extension API Informational Variables947013 -Node: Extension API Boilerplate948099 -Node: Finding Extensions951903 -Node: Extension Example952463 -Node: Internal File Description953194 -Node: Internal File Ops957285 -Ref: Internal File Ops-Footnote-1968793 -Node: Using Internal File Ops968933 -Ref: Using Internal File Ops-Footnote-1971286 -Node: Extension Samples971552 -Node: Extension Sample File Functions973076 -Node: Extension Sample Fnmatch981563 -Node: Extension Sample Fork983289 -Node: Extension Sample Inplace984507 -Node: Extension Sample Ord986285 -Node: Extension Sample Readdir987121 -Node: Extension Sample Revout988653 -Node: Extension Sample Rev2way989246 -Node: Extension Sample Read write array989936 -Node: Extension Sample Readfile991819 -Node: Extension Sample API Tests992637 -Node: Extension Sample Time993162 -Node: gawkextlib994526 -Node: Language History997286 -Node: V7/SVR3.1998808 -Node: SVR41001129 -Node: POSIX1002571 -Node: BTL1003957 -Node: POSIX/GNU1004691 -Node: Common Extensions1010226 -Node: Ranges and Locales1011532 -Ref: Ranges and Locales-Footnote-11016150 -Ref: Ranges and Locales-Footnote-21016177 -Ref: Ranges and Locales-Footnote-31016437 -Node: Contributors1016658 -Node: Installation1021537 -Node: Gawk Distribution1022431 -Node: Getting1022915 -Node: Extracting1023741 -Node: Distribution contents1025433 -Node: Unix Installation1030694 -Node: Quick Installation1031311 -Node: Additional Configuration Options1033755 -Node: Configuration Philosophy1035232 -Node: Non-Unix Installation1037586 -Node: PC Installation1038044 -Node: PC Binary Installation1039343 -Node: PC Compiling1041191 -Node: PC Testing1044135 -Node: PC Using1045311 -Node: Cygwin1049496 -Node: MSYS1050496 -Node: VMS Installation1051010 -Node: VMS Compilation1051613 -Ref: VMS Compilation-Footnote-11052620 -Node: VMS Installation Details1052678 -Node: VMS Running1054313 -Node: VMS Old Gawk1055920 -Node: Bugs1056394 -Node: Other Versions1060246 -Node: Notes1065847 -Node: Compatibility Mode1066647 -Node: Additions1067430 -Node: Accessing The Source1068357 -Node: Adding Code1069797 -Node: New Ports1075842 -Node: Derived Files1079977 -Ref: Derived Files-Footnote-11085298 -Ref: Derived Files-Footnote-21085332 -Ref: Derived Files-Footnote-31085932 -Node: Future Extensions1086030 -Node: Implementation Limitations1086611 -Node: Extension Design1087863 -Node: Old Extension Problems1089017 -Ref: Old Extension Problems-Footnote-11090525 -Node: Extension New Mechanism Goals1090582 -Ref: Extension New Mechanism Goals-Footnote-11093948 -Node: Extension Other Design Decisions1094134 -Node: Extension Future Growth1096240 -Node: Old Extension Mechanism1097076 -Node: Basic Concepts1098816 -Node: Basic High Level1099497 -Ref: figure-general-flow1099768 -Ref: figure-process-flow1100367 -Ref: Basic High Level-Footnote-11103596 -Node: Basic Data Typing1103781 -Node: Glossary1107136 -Node: Copying1132598 -Node: GNU Free Documentation License1170155 -Node: Index1195292 +Node: Foreword40461 +Node: Preface44806 +Ref: Preface-Footnote-147859 +Ref: Preface-Footnote-247955 +Node: History48187 +Node: Names50561 +Ref: Names-Footnote-152038 +Node: This Manual52110 +Ref: This Manual-Footnote-157884 +Node: Conventions57984 +Node: Manual History60136 +Ref: Manual History-Footnote-163584 +Ref: Manual History-Footnote-263625 +Node: How To Contribute63699 +Node: Acknowledgments64843 +Node: Getting Started69052 +Node: Running gawk71431 +Node: One-shot72617 +Node: Read Terminal73842 +Ref: Read Terminal-Footnote-175492 +Ref: Read Terminal-Footnote-275768 +Node: Long75939 +Node: Executable Scripts77315 +Ref: Executable Scripts-Footnote-179148 +Ref: Executable Scripts-Footnote-279250 +Node: Comments79797 +Node: Quoting82264 +Node: DOS Quoting86887 +Node: Sample Data Files87562 +Node: Very Simple90594 +Node: Two Rules95193 +Node: More Complex97340 +Ref: More Complex-Footnote-1100270 +Node: Statements/Lines100355 +Ref: Statements/Lines-Footnote-1104817 +Node: Other Features105082 +Node: When106010 +Node: Invoking Gawk108157 +Node: Command Line109618 +Node: Options110401 +Ref: Options-Footnote-1125793 +Node: Other Arguments125818 +Node: Naming Standard Input128476 +Node: Environment Variables129570 +Node: AWKPATH Variable130128 +Ref: AWKPATH Variable-Footnote-1132886 +Node: AWKLIBPATH Variable133146 +Node: Other Environment Variables133864 +Node: Exit Status136359 +Node: Include Files137034 +Node: Loading Shared Libraries140603 +Node: Obsolete141967 +Node: Undocumented142664 +Node: Regexp142907 +Node: Regexp Usage144296 +Node: Escape Sequences146322 +Node: Regexp Operators151991 +Ref: Regexp Operators-Footnote-1159371 +Ref: Regexp Operators-Footnote-2159518 +Node: Bracket Expressions159616 +Ref: table-char-classes161506 +Node: GNU Regexp Operators164029 +Node: Case-sensitivity167752 +Ref: Case-sensitivity-Footnote-1170720 +Ref: Case-sensitivity-Footnote-2170955 +Node: Leftmost Longest171063 +Node: Computed Regexps172264 +Node: Reading Files175601 +Node: Records177604 +Ref: Records-Footnote-1186493 +Node: Fields186530 +Ref: Fields-Footnote-1189563 +Node: Nonconstant Fields189649 +Node: Changing Fields191851 +Node: Field Separators197810 +Node: Default Field Splitting200439 +Node: Regexp Field Splitting201556 +Node: Single Character Fields204898 +Node: Command Line Field Separator205957 +Node: Field Splitting Summary209398 +Ref: Field Splitting Summary-Footnote-1212509 +Node: Constant Size212610 +Node: Splitting By Content217194 +Ref: Splitting By Content-Footnote-1220920 +Node: Multiple Line220960 +Ref: Multiple Line-Footnote-1226807 +Node: Getline226986 +Node: Plain Getline229202 +Node: Getline/Variable231297 +Node: Getline/File232444 +Node: Getline/Variable/File233785 +Ref: Getline/Variable/File-Footnote-1235384 +Node: Getline/Pipe235471 +Node: Getline/Variable/Pipe238171 +Node: Getline/Coprocess239278 +Node: Getline/Variable/Coprocess240530 +Node: Getline Notes241267 +Node: Getline Summary244054 +Ref: table-getline-variants244462 +Node: Read Timeout245374 +Ref: Read Timeout-Footnote-1249115 +Node: Command line directories249172 +Node: Printing249802 +Node: Print251433 +Node: Print Examples252770 +Node: Output Separators255554 +Node: OFMT257314 +Node: Printf258672 +Node: Basic Printf259578 +Node: Control Letters261117 +Node: Format Modifiers264929 +Node: Printf Examples270938 +Node: Redirection273653 +Node: Special Files280618 +Node: Special FD281151 +Ref: Special FD-Footnote-1284776 +Node: Special Network284850 +Node: Special Caveats285700 +Node: Close Files And Pipes286496 +Ref: Close Files And Pipes-Footnote-1293479 +Ref: Close Files And Pipes-Footnote-2293627 +Node: Expressions293777 +Node: Values294909 +Node: Constants295585 +Node: Scalar Constants296265 +Ref: Scalar Constants-Footnote-1297124 +Node: Nondecimal-numbers297306 +Node: Regexp Constants300306 +Node: Using Constant Regexps300781 +Node: Variables303836 +Node: Using Variables304491 +Node: Assignment Options306215 +Node: Conversion308087 +Ref: table-locale-affects313587 +Ref: Conversion-Footnote-1314211 +Node: All Operators314320 +Node: Arithmetic Ops314950 +Node: Concatenation317455 +Ref: Concatenation-Footnote-1320248 +Node: Assignment Ops320368 +Ref: table-assign-ops325356 +Node: Increment Ops326687 +Node: Truth Values and Conditions330122 +Node: Truth Values331205 +Node: Typing and Comparison332254 +Node: Variable Typing333043 +Ref: Variable Typing-Footnote-1336940 +Node: Comparison Operators337062 +Ref: table-relational-ops337472 +Node: POSIX String Comparison341021 +Ref: POSIX String Comparison-Footnote-1341977 +Node: Boolean Ops342115 +Ref: Boolean Ops-Footnote-1346193 +Node: Conditional Exp346284 +Node: Function Calls348016 +Node: Precedence351610 +Node: Locales355279 +Node: Patterns and Actions356368 +Node: Pattern Overview357422 +Node: Regexp Patterns359091 +Node: Expression Patterns359634 +Node: Ranges363319 +Node: BEGIN/END366285 +Node: Using BEGIN/END367047 +Ref: Using BEGIN/END-Footnote-1369778 +Node: I/O And BEGIN/END369884 +Node: BEGINFILE/ENDFILE372166 +Node: Empty375080 +Node: Using Shell Variables375396 +Node: Action Overview377681 +Node: Statements380038 +Node: If Statement381892 +Node: While Statement383391 +Node: Do Statement385435 +Node: For Statement386591 +Node: Switch Statement389743 +Node: Break Statement391840 +Node: Continue Statement393830 +Node: Next Statement395623 +Node: Nextfile Statement398013 +Node: Exit Statement400656 +Node: Built-in Variables403072 +Node: User-modified404167 +Ref: User-modified-Footnote-1412527 +Node: Auto-set412589 +Ref: Auto-set-Footnote-1425667 +Ref: Auto-set-Footnote-2425872 +Node: ARGC and ARGV425928 +Node: Arrays429779 +Node: Array Basics431284 +Node: Array Intro432110 +Node: Reference to Elements436428 +Node: Assigning Elements438698 +Node: Array Example439189 +Node: Scanning an Array440921 +Node: Controlling Scanning443235 +Ref: Controlling Scanning-Footnote-1448158 +Node: Delete448474 +Ref: Delete-Footnote-1451239 +Node: Numeric Array Subscripts451296 +Node: Uninitialized Subscripts453479 +Node: Multi-dimensional455107 +Node: Multi-scanning458201 +Node: Arrays of Arrays459792 +Node: Functions464433 +Node: Built-in465252 +Node: Calling Built-in466330 +Node: Numeric Functions468318 +Ref: Numeric Functions-Footnote-1472150 +Ref: Numeric Functions-Footnote-2472507 +Ref: Numeric Functions-Footnote-3472555 +Node: String Functions472824 +Ref: String Functions-Footnote-1496382 +Ref: String Functions-Footnote-2496511 +Ref: String Functions-Footnote-3496759 +Node: Gory Details496846 +Ref: table-sub-escapes498525 +Ref: table-sub-posix-92499879 +Ref: table-sub-proposed501230 +Ref: table-posix-sub502584 +Ref: table-gensub-escapes504129 +Ref: Gory Details-Footnote-1505305 +Ref: Gory Details-Footnote-2505356 +Node: I/O Functions505507 +Ref: I/O Functions-Footnote-1512492 +Node: Time Functions512639 +Ref: Time Functions-Footnote-1523572 +Ref: Time Functions-Footnote-2523640 +Ref: Time Functions-Footnote-3523798 +Ref: Time Functions-Footnote-4523909 +Ref: Time Functions-Footnote-5524021 +Ref: Time Functions-Footnote-6524248 +Node: Bitwise Functions524514 +Ref: table-bitwise-ops525072 +Ref: Bitwise Functions-Footnote-1529293 +Node: Type Functions529477 +Node: I18N Functions530628 +Node: User-defined532255 +Node: Definition Syntax533059 +Ref: Definition Syntax-Footnote-1537969 +Node: Function Example538038 +Node: Function Caveats540632 +Node: Calling A Function541053 +Node: Variable Scope542168 +Node: Pass By Value/Reference545131 +Node: Return Statement548639 +Node: Dynamic Typing551620 +Node: Indirect Calls552551 +Node: Library Functions562236 +Ref: Library Functions-Footnote-1565749 +Ref: Library Functions-Footnote-2565892 +Node: Library Names566063 +Ref: Library Names-Footnote-1569534 +Ref: Library Names-Footnote-2569754 +Node: General Functions569840 +Node: Strtonum Function570868 +Node: Assert Function573798 +Node: Round Function577124 +Node: Cliff Random Function578667 +Node: Ordinal Functions579683 +Ref: Ordinal Functions-Footnote-1582753 +Ref: Ordinal Functions-Footnote-2583005 +Node: Join Function583214 +Ref: Join Function-Footnote-1584985 +Node: Getlocaltime Function585185 +Node: Readfile Function588926 +Node: Data File Management590765 +Node: Filetrans Function591397 +Node: Rewind Function595466 +Node: File Checking596853 +Node: Empty Files597947 +Node: Ignoring Assigns600177 +Node: Getopt Function601730 +Ref: Getopt Function-Footnote-1613034 +Node: Passwd Functions613237 +Ref: Passwd Functions-Footnote-1622212 +Node: Group Functions622300 +Node: Walking Arrays630384 +Node: Sample Programs632521 +Node: Running Examples633195 +Node: Clones633923 +Node: Cut Program635147 +Node: Egrep Program644992 +Ref: Egrep Program-Footnote-1652765 +Node: Id Program652875 +Node: Split Program656491 +Ref: Split Program-Footnote-1660010 +Node: Tee Program660138 +Node: Uniq Program662941 +Node: Wc Program670370 +Ref: Wc Program-Footnote-1674636 +Ref: Wc Program-Footnote-2674836 +Node: Miscellaneous Programs674928 +Node: Dupword Program676116 +Node: Alarm Program678147 +Node: Translate Program682896 +Ref: Translate Program-Footnote-1687283 +Ref: Translate Program-Footnote-2687511 +Node: Labels Program687645 +Ref: Labels Program-Footnote-1691016 +Node: Word Sorting691100 +Node: History Sorting694984 +Node: Extract Program696823 +Ref: Extract Program-Footnote-1704324 +Node: Simple Sed704452 +Node: Igawk Program707514 +Ref: Igawk Program-Footnote-1722671 +Ref: Igawk Program-Footnote-2722872 +Node: Anagram Program723010 +Node: Signature Program726078 +Node: Advanced Features727178 +Node: Nondecimal Data729060 +Node: Array Sorting730643 +Node: Controlling Array Traversal731340 +Node: Array Sorting Functions739578 +Ref: Array Sorting Functions-Footnote-1743252 +Ref: Array Sorting Functions-Footnote-2743345 +Node: Two-way I/O743539 +Ref: Two-way I/O-Footnote-1748971 +Node: TCP/IP Networking749041 +Node: Profiling751885 +Node: Internationalization759382 +Node: I18N and L10N760807 +Node: Explaining gettext761493 +Ref: Explaining gettext-Footnote-1766561 +Ref: Explaining gettext-Footnote-2766745 +Node: Programmer i18n766910 +Node: Translator i18n771112 +Node: String Extraction771905 +Ref: String Extraction-Footnote-1772866 +Node: Printf Ordering772952 +Ref: Printf Ordering-Footnote-1775736 +Node: I18N Portability775800 +Ref: I18N Portability-Footnote-1778249 +Node: I18N Example778312 +Ref: I18N Example-Footnote-1780950 +Node: Gawk I18N781022 +Node: Debugger781643 +Node: Debugging782614 +Node: Debugging Concepts783047 +Node: Debugging Terms784903 +Node: Awk Debugging787500 +Node: Sample Debugging Session788392 +Node: Debugger Invocation788912 +Node: Finding The Bug790244 +Node: List of Debugger Commands796732 +Node: Breakpoint Control798066 +Node: Debugger Execution Control801730 +Node: Viewing And Changing Data805090 +Node: Execution Stack808446 +Node: Debugger Info809913 +Node: Miscellaneous Debugger Commands813895 +Node: Readline Support819071 +Node: Limitations819902 +Node: Arbitrary Precision Arithmetic822154 +Ref: Arbitrary Precision Arithmetic-Footnote-1823805 +Node: General Arithmetic823953 +Node: Floating Point Issues825673 +Node: String Conversion Precision826554 +Ref: String Conversion Precision-Footnote-1828260 +Node: Unexpected Results828369 +Node: POSIX Floating Point Problems830522 +Ref: POSIX Floating Point Problems-Footnote-1834347 +Node: Integer Programming834385 +Node: Floating-point Programming836124 +Ref: Floating-point Programming-Footnote-1842455 +Ref: Floating-point Programming-Footnote-2842725 +Node: Floating-point Representation842989 +Node: Floating-point Context844154 +Ref: table-ieee-formats844993 +Node: Rounding Mode846377 +Ref: table-rounding-modes846856 +Ref: Rounding Mode-Footnote-1849871 +Node: Gawk and MPFR850050 +Node: Arbitrary Precision Floats851305 +Ref: Arbitrary Precision Floats-Footnote-1853748 +Node: Setting Precision854064 +Ref: table-predefined-precision-strings854750 +Node: Setting Rounding Mode856895 +Ref: table-gawk-rounding-modes857299 +Node: Floating-point Constants858486 +Node: Changing Precision859915 +Ref: Changing Precision-Footnote-1861315 +Node: Exact Arithmetic861489 +Node: Arbitrary Precision Integers864627 +Ref: Arbitrary Precision Integers-Footnote-1867645 +Node: Dynamic Extensions867792 +Node: Extension Intro869250 +Node: Plugin License870515 +Node: Extension Mechanism Outline871200 +Ref: load-extension871617 +Ref: load-new-function873095 +Ref: call-new-function874090 +Node: Extension API Description876105 +Node: Extension API Functions Introduction877318 +Node: General Data Types882184 +Ref: General Data Types-Footnote-1887786 +Node: Requesting Values888085 +Ref: table-value-types-returned888816 +Node: Constructor Functions889770 +Node: Registration Functions892790 +Node: Extension Functions893475 +Node: Exit Callback Functions895700 +Node: Extension Version String896949 +Node: Input Parsers897599 +Node: Output Wrappers907356 +Node: Two-way processors911866 +Node: Printing Messages914074 +Ref: Printing Messages-Footnote-1915151 +Node: Updating `ERRNO'915303 +Node: Accessing Parameters916042 +Node: Symbol Table Access917272 +Node: Symbol table by name917784 +Node: Symbol table by cookie919531 +Ref: Symbol table by cookie-Footnote-1923661 +Node: Cached values923724 +Ref: Cached values-Footnote-1927173 +Node: Array Manipulation927264 +Ref: Array Manipulation-Footnote-1928362 +Node: Array Data Types928401 +Ref: Array Data Types-Footnote-1931104 +Node: Array Functions931196 +Node: Flattening Arrays934962 +Node: Creating Arrays941814 +Node: Extension API Variables946539 +Node: Extension Versioning947175 +Node: Extension API Informational Variables949076 +Node: Extension API Boilerplate950162 +Node: Finding Extensions953966 +Node: Extension Example954526 +Node: Internal File Description955257 +Node: Internal File Ops959348 +Ref: Internal File Ops-Footnote-1970856 +Node: Using Internal File Ops970996 +Ref: Using Internal File Ops-Footnote-1973349 +Node: Extension Samples973615 +Node: Extension Sample File Functions975139 +Node: Extension Sample Fnmatch983626 +Node: Extension Sample Fork985352 +Node: Extension Sample Inplace986570 +Node: Extension Sample Ord988348 +Node: Extension Sample Readdir989184 +Node: Extension Sample Revout990716 +Node: Extension Sample Rev2way991309 +Node: Extension Sample Read write array991999 +Node: Extension Sample Readfile993882 +Node: Extension Sample API Tests994700 +Node: Extension Sample Time995225 +Node: gawkextlib996589 +Node: Language History999349 +Node: V7/SVR3.11000871 +Node: SVR41003192 +Node: POSIX1004634 +Node: BTL1006020 +Node: POSIX/GNU1006754 +Node: Common Extensions1012289 +Node: Ranges and Locales1013595 +Ref: Ranges and Locales-Footnote-11018213 +Ref: Ranges and Locales-Footnote-21018240 +Ref: Ranges and Locales-Footnote-31018500 +Node: Contributors1018721 +Node: Installation1023600 +Node: Gawk Distribution1024494 +Node: Getting1024978 +Node: Extracting1025804 +Node: Distribution contents1027496 +Node: Unix Installation1032757 +Node: Quick Installation1033374 +Node: Additional Configuration Options1035818 +Node: Configuration Philosophy1037295 +Node: Non-Unix Installation1039649 +Node: PC Installation1040107 +Node: PC Binary Installation1041406 +Node: PC Compiling1043254 +Node: PC Testing1046198 +Node: PC Using1047374 +Node: Cygwin1051559 +Node: MSYS1052559 +Node: VMS Installation1053073 +Node: VMS Compilation1053676 +Ref: VMS Compilation-Footnote-11054683 +Node: VMS Installation Details1054741 +Node: VMS Running1056376 +Node: VMS Old Gawk1057983 +Node: Bugs1058457 +Node: Other Versions1062309 +Node: Notes1067910 +Node: Compatibility Mode1068710 +Node: Additions1069493 +Node: Accessing The Source1070420 +Node: Adding Code1071860 +Node: New Ports1077905 +Node: Derived Files1082040 +Ref: Derived Files-Footnote-11087361 +Ref: Derived Files-Footnote-21087395 +Ref: Derived Files-Footnote-31087995 +Node: Future Extensions1088093 +Node: Implementation Limitations1088674 +Node: Extension Design1089926 +Node: Old Extension Problems1091080 +Ref: Old Extension Problems-Footnote-11092588 +Node: Extension New Mechanism Goals1092645 +Ref: Extension New Mechanism Goals-Footnote-11096011 +Node: Extension Other Design Decisions1096197 +Node: Extension Future Growth1098303 +Node: Old Extension Mechanism1099139 +Node: Basic Concepts1100879 +Node: Basic High Level1101560 +Ref: figure-general-flow1101831 +Ref: figure-process-flow1102430 +Ref: Basic High Level-Footnote-11105659 +Node: Basic Data Typing1105844 +Node: Glossary1109199 +Node: Copying1134661 +Node: GNU Free Documentation License1172218 +Node: Index1197355  End Tag Table -- cgit v1.2.3 From 66fd6df0ec28a87e823b0c8e1768a0660d82f33b Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Sun, 29 Sep 2013 20:58:19 +0300 Subject: Doc updates. --- doc/gawk.info | 106 +++++++++++++++++++++++++++++++++------------------------- 1 file changed, 60 insertions(+), 46 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 0bbf9dde..b5120148 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -26521,12 +26521,18 @@ Busybox Awk The OpenSolaris POSIX `awk' The version of `awk' in `/usr/xpg4/bin' on Solaris is more-or-less POSIX-compliant. It is based on the `awk' from Mortice Kern - Systems for PCs. The source code can be downloaded from the - OpenSolaris web site (http://www.opensolaris.org). This author - was able to make it compile and work under GNU/Linux with 1-2 - hours of work. Making it more generally portable (using GNU - Autoconf and/or Automake) would take more work, and this has not - been done, at least to our knowledge. + Systems for PCs. This author was able to make it compile and work + under GNU/Linux with 1-2 hours of work. Making it more generally + portable (using GNU Autoconf and/or Automake) would take more + work, and this has not been done, at least to our knowledge. + + The source code used to be available from the OpenSolaris web site. + However, that project was ended and the web site shut down. + Fortunately, the Illumos project + (http://wiki.illumos.org/display/illumos/illumos+Home) makes this + implementation available. You can view the files one at a time + from + `https://github.com/joyent/illumos-joyent/blob/master/usr/src/cmd/awk_xpg4'. `jawk' This is an interpreter for `awk' written in Java. It claims to be @@ -26556,6 +26562,11 @@ QSE Awk `http://www.quiktrim.org/QTawk.html' for more information, including the manual and a download link. +Other Versions + See also the Wikipedia article + (http://en.wikipedia.org/wiki/Awk_language#Versions_and_implementations), + for information on additional versions. +  File: gawk.info, Node: Notes, Next: Basic Concepts, Prev: Installation, Up: Top @@ -30923,6 +30934,8 @@ Index * IGNORECASE variable, array subscripts and: Array Intro. (line 92) * IGNORECASE variable, in example programs: Library Functions. (line 53) +* Illumos: Other Versions. (line 104) +* Illumos, POSIX-compliant awk: Other Versions. (line 104) * implementation issues, gawk: Notes. (line 6) * implementation issues, gawk, debugging: Compatibility Mode. (line 6) * implementation issues, gawk, limits <1>: Redirection. (line 135) @@ -31002,9 +31015,9 @@ Index * Jacobs, Andrew: Passwd Functions. (line 90) * Jaegermann, Michal <1>: Contributors. (line 46) * Jaegermann, Michal: Acknowledgments. (line 60) -* Java implementation of awk: Other Versions. (line 106) +* Java implementation of awk: Other Versions. (line 112) * Java programming language: Glossary. (line 388) -* jawk: Other Versions. (line 106) +* jawk: Other Versions. (line 112) * Jedi knights: Undocumented. (line 6) * join() user-defined function: Join Function. (line 18) * Kahrs, Ju"rgen <1>: Contributors. (line 71) @@ -31051,7 +31064,7 @@ Index * length() function: String Functions. (line 168) * Lesser General Public License (LGPL): Glossary. (line 405) * LGPL (Lesser General Public License): Glossary. (line 405) -* libmawk: Other Versions. (line 114) +* libmawk: Other Versions. (line 120) * libraries of awk functions: Library Functions. (line 6) * libraries of awk functions, assertions: Assert Function. (line 6) * libraries of awk functions, associative arrays and: Library Names. @@ -31338,7 +31351,7 @@ Index * patterns, types of: Pattern Overview. (line 15) * pawk (profiling version of Brian Kernighan's awk): Other Versions. (line 78) -* pawk, awk-like facilities for Python: Other Versions. (line 118) +* pawk, awk-like facilities for Python: Other Versions. (line 124) * PC operating systems, gawk on: PC Using. (line 6) * PC operating systems, gawk on, installing: PC Installation. (line 6) * percent sign (%), % operator: Precedence. (line 55) @@ -31517,12 +31530,12 @@ Index * pwcat program: Passwd Functions. (line 23) * q debugger command (alias for quit): Miscellaneous Debugger Commands. (line 99) -* QSE Awk: Other Versions. (line 124) +* QSE Awk: Other Versions. (line 130) * question mark (?) regexp operator <1>: GNU Regexp Operators. (line 59) * question mark (?) regexp operator: Regexp Operators. (line 111) * question mark (?), ?: operator: Precedence. (line 92) -* QuikTrim Awk: Other Versions. (line 128) +* QuikTrim Awk: Other Versions. (line 134) * quit debugger command: Miscellaneous Debugger Commands. (line 99) * QUIT signal (MS-Windows): Profiling. (line 207) @@ -31811,13 +31824,14 @@ Index * source code, Brian Kernighan's awk: Other Versions. (line 13) * source code, Busybox Awk: Other Versions. (line 88) * source code, gawk: Gawk Distribution. (line 6) -* source code, jawk: Other Versions. (line 106) -* source code, libmawk: Other Versions. (line 114) +* source code, Illumos awk: Other Versions. (line 104) +* source code, jawk: Other Versions. (line 112) +* source code, libmawk: Other Versions. (line 120) * source code, mawk: Other Versions. (line 44) * source code, mixing: Options. (line 131) * source code, pawk: Other Versions. (line 78) -* source code, QSE Awk: Other Versions. (line 124) -* source code, QuikTrim Awk: Other Versions. (line 128) +* source code, QSE Awk: Other Versions. (line 130) +* source code, QuikTrim Awk: Other Versions. (line 134) * source code, Solaris awk: Other Versions. (line 96) * source files, search path for: Igawk Program. (line 368) * sparse arrays: Array Intro. (line 71) @@ -32637,35 +32651,35 @@ Node: VMS Running1056376 Node: VMS Old Gawk1057983 Node: Bugs1058457 Node: Other Versions1062309 -Node: Notes1067910 -Node: Compatibility Mode1068710 -Node: Additions1069493 -Node: Accessing The Source1070420 -Node: Adding Code1071860 -Node: New Ports1077905 -Node: Derived Files1082040 -Ref: Derived Files-Footnote-11087361 -Ref: Derived Files-Footnote-21087395 -Ref: Derived Files-Footnote-31087995 -Node: Future Extensions1088093 -Node: Implementation Limitations1088674 -Node: Extension Design1089926 -Node: Old Extension Problems1091080 -Ref: Old Extension Problems-Footnote-11092588 -Node: Extension New Mechanism Goals1092645 -Ref: Extension New Mechanism Goals-Footnote-11096011 -Node: Extension Other Design Decisions1096197 -Node: Extension Future Growth1098303 -Node: Old Extension Mechanism1099139 -Node: Basic Concepts1100879 -Node: Basic High Level1101560 -Ref: figure-general-flow1101831 -Ref: figure-process-flow1102430 -Ref: Basic High Level-Footnote-11105659 -Node: Basic Data Typing1105844 -Node: Glossary1109199 -Node: Copying1134661 -Node: GNU Free Documentation License1172218 -Node: Index1197355 +Node: Notes1068390 +Node: Compatibility Mode1069190 +Node: Additions1069973 +Node: Accessing The Source1070900 +Node: Adding Code1072340 +Node: New Ports1078385 +Node: Derived Files1082520 +Ref: Derived Files-Footnote-11087841 +Ref: Derived Files-Footnote-21087875 +Ref: Derived Files-Footnote-31088475 +Node: Future Extensions1088573 +Node: Implementation Limitations1089154 +Node: Extension Design1090406 +Node: Old Extension Problems1091560 +Ref: Old Extension Problems-Footnote-11093068 +Node: Extension New Mechanism Goals1093125 +Ref: Extension New Mechanism Goals-Footnote-11096491 +Node: Extension Other Design Decisions1096677 +Node: Extension Future Growth1098783 +Node: Old Extension Mechanism1099619 +Node: Basic Concepts1101359 +Node: Basic High Level1102040 +Ref: figure-general-flow1102311 +Ref: figure-process-flow1102910 +Ref: Basic High Level-Footnote-11106139 +Node: Basic Data Typing1106324 +Node: Glossary1109679 +Node: Copying1135141 +Node: GNU Free Documentation License1172698 +Node: Index1197835  End Tag Table -- cgit v1.2.3 From 409702f929f765cd7ac7b959633ec4c694e493de Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Fri, 11 Oct 2013 14:18:24 +0300 Subject: Minor wording improvements in gawk manual. --- doc/gawk.info | 456 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 228 insertions(+), 228 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index b5120148..5b3e4ac7 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -7097,7 +7097,7 @@ controlled by the `awk' built-in variable `CONVFMT' (*note Built-in Variables::). Numbers are converted using the `sprintf()' function with `CONVFMT' as the format specifier (*note String Functions::). - `CONVFMT''s default value is `"%.6g"', which prints a value with at + `CONVFMT''s default value is `"%.6g"', which creates a value with at most six significant digits. For some applications, you might want to change it to specify more precision. On most modern machines, 17 digits is usually enough to capture a floating-point number's value @@ -20571,7 +20571,7 @@ automatic conversion (via `CONVFMT') and from printing (via `OFMT'). what the default string representations show. `CONVFMT''s default value is `"%.6g"', which yields a value with at -least six significant digits. For some applications, you might want to +most six significant digits. For some applications, you might want to change it to specify more precision. On most modern machines, most of the time, 17 digits is enough to capture a floating-point number's value exactly.(1) @@ -32298,232 +32298,232 @@ Node: Variables303836 Node: Using Variables304491 Node: Assignment Options306215 Node: Conversion308087 -Ref: table-locale-affects313587 -Ref: Conversion-Footnote-1314211 -Node: All Operators314320 -Node: Arithmetic Ops314950 -Node: Concatenation317455 -Ref: Concatenation-Footnote-1320248 -Node: Assignment Ops320368 -Ref: table-assign-ops325356 -Node: Increment Ops326687 -Node: Truth Values and Conditions330122 -Node: Truth Values331205 -Node: Typing and Comparison332254 -Node: Variable Typing333043 -Ref: Variable Typing-Footnote-1336940 -Node: Comparison Operators337062 -Ref: table-relational-ops337472 -Node: POSIX String Comparison341021 -Ref: POSIX String Comparison-Footnote-1341977 -Node: Boolean Ops342115 -Ref: Boolean Ops-Footnote-1346193 -Node: Conditional Exp346284 -Node: Function Calls348016 -Node: Precedence351610 -Node: Locales355279 -Node: Patterns and Actions356368 -Node: Pattern Overview357422 -Node: Regexp Patterns359091 -Node: Expression Patterns359634 -Node: Ranges363319 -Node: BEGIN/END366285 -Node: Using BEGIN/END367047 -Ref: Using BEGIN/END-Footnote-1369778 -Node: I/O And BEGIN/END369884 -Node: BEGINFILE/ENDFILE372166 -Node: Empty375080 -Node: Using Shell Variables375396 -Node: Action Overview377681 -Node: Statements380038 -Node: If Statement381892 -Node: While Statement383391 -Node: Do Statement385435 -Node: For Statement386591 -Node: Switch Statement389743 -Node: Break Statement391840 -Node: Continue Statement393830 -Node: Next Statement395623 -Node: Nextfile Statement398013 -Node: Exit Statement400656 -Node: Built-in Variables403072 -Node: User-modified404167 -Ref: User-modified-Footnote-1412527 -Node: Auto-set412589 -Ref: Auto-set-Footnote-1425667 -Ref: Auto-set-Footnote-2425872 -Node: ARGC and ARGV425928 -Node: Arrays429779 -Node: Array Basics431284 -Node: Array Intro432110 -Node: Reference to Elements436428 -Node: Assigning Elements438698 -Node: Array Example439189 -Node: Scanning an Array440921 -Node: Controlling Scanning443235 -Ref: Controlling Scanning-Footnote-1448158 -Node: Delete448474 -Ref: Delete-Footnote-1451239 -Node: Numeric Array Subscripts451296 -Node: Uninitialized Subscripts453479 -Node: Multi-dimensional455107 -Node: Multi-scanning458201 -Node: Arrays of Arrays459792 -Node: Functions464433 -Node: Built-in465252 -Node: Calling Built-in466330 -Node: Numeric Functions468318 -Ref: Numeric Functions-Footnote-1472150 -Ref: Numeric Functions-Footnote-2472507 -Ref: Numeric Functions-Footnote-3472555 -Node: String Functions472824 -Ref: String Functions-Footnote-1496382 -Ref: String Functions-Footnote-2496511 -Ref: String Functions-Footnote-3496759 -Node: Gory Details496846 -Ref: table-sub-escapes498525 -Ref: table-sub-posix-92499879 -Ref: table-sub-proposed501230 -Ref: table-posix-sub502584 -Ref: table-gensub-escapes504129 -Ref: Gory Details-Footnote-1505305 -Ref: Gory Details-Footnote-2505356 -Node: I/O Functions505507 -Ref: I/O Functions-Footnote-1512492 -Node: Time Functions512639 -Ref: Time Functions-Footnote-1523572 -Ref: Time Functions-Footnote-2523640 -Ref: Time Functions-Footnote-3523798 -Ref: Time Functions-Footnote-4523909 -Ref: Time Functions-Footnote-5524021 -Ref: Time Functions-Footnote-6524248 -Node: Bitwise Functions524514 -Ref: table-bitwise-ops525072 -Ref: Bitwise Functions-Footnote-1529293 -Node: Type Functions529477 -Node: I18N Functions530628 -Node: User-defined532255 -Node: Definition Syntax533059 -Ref: Definition Syntax-Footnote-1537969 -Node: Function Example538038 -Node: Function Caveats540632 -Node: Calling A Function541053 -Node: Variable Scope542168 -Node: Pass By Value/Reference545131 -Node: Return Statement548639 -Node: Dynamic Typing551620 -Node: Indirect Calls552551 -Node: Library Functions562236 -Ref: Library Functions-Footnote-1565749 -Ref: Library Functions-Footnote-2565892 -Node: Library Names566063 -Ref: Library Names-Footnote-1569534 -Ref: Library Names-Footnote-2569754 -Node: General Functions569840 -Node: Strtonum Function570868 -Node: Assert Function573798 -Node: Round Function577124 -Node: Cliff Random Function578667 -Node: Ordinal Functions579683 -Ref: Ordinal Functions-Footnote-1582753 -Ref: Ordinal Functions-Footnote-2583005 -Node: Join Function583214 -Ref: Join Function-Footnote-1584985 -Node: Getlocaltime Function585185 -Node: Readfile Function588926 -Node: Data File Management590765 -Node: Filetrans Function591397 -Node: Rewind Function595466 -Node: File Checking596853 -Node: Empty Files597947 -Node: Ignoring Assigns600177 -Node: Getopt Function601730 -Ref: Getopt Function-Footnote-1613034 -Node: Passwd Functions613237 -Ref: Passwd Functions-Footnote-1622212 -Node: Group Functions622300 -Node: Walking Arrays630384 -Node: Sample Programs632521 -Node: Running Examples633195 -Node: Clones633923 -Node: Cut Program635147 -Node: Egrep Program644992 -Ref: Egrep Program-Footnote-1652765 -Node: Id Program652875 -Node: Split Program656491 -Ref: Split Program-Footnote-1660010 -Node: Tee Program660138 -Node: Uniq Program662941 -Node: Wc Program670370 -Ref: Wc Program-Footnote-1674636 -Ref: Wc Program-Footnote-2674836 -Node: Miscellaneous Programs674928 -Node: Dupword Program676116 -Node: Alarm Program678147 -Node: Translate Program682896 -Ref: Translate Program-Footnote-1687283 -Ref: Translate Program-Footnote-2687511 -Node: Labels Program687645 -Ref: Labels Program-Footnote-1691016 -Node: Word Sorting691100 -Node: History Sorting694984 -Node: Extract Program696823 -Ref: Extract Program-Footnote-1704324 -Node: Simple Sed704452 -Node: Igawk Program707514 -Ref: Igawk Program-Footnote-1722671 -Ref: Igawk Program-Footnote-2722872 -Node: Anagram Program723010 -Node: Signature Program726078 -Node: Advanced Features727178 -Node: Nondecimal Data729060 -Node: Array Sorting730643 -Node: Controlling Array Traversal731340 -Node: Array Sorting Functions739578 -Ref: Array Sorting Functions-Footnote-1743252 -Ref: Array Sorting Functions-Footnote-2743345 -Node: Two-way I/O743539 -Ref: Two-way I/O-Footnote-1748971 -Node: TCP/IP Networking749041 -Node: Profiling751885 -Node: Internationalization759382 -Node: I18N and L10N760807 -Node: Explaining gettext761493 -Ref: Explaining gettext-Footnote-1766561 -Ref: Explaining gettext-Footnote-2766745 -Node: Programmer i18n766910 -Node: Translator i18n771112 -Node: String Extraction771905 -Ref: String Extraction-Footnote-1772866 -Node: Printf Ordering772952 -Ref: Printf Ordering-Footnote-1775736 -Node: I18N Portability775800 -Ref: I18N Portability-Footnote-1778249 -Node: I18N Example778312 -Ref: I18N Example-Footnote-1780950 -Node: Gawk I18N781022 -Node: Debugger781643 -Node: Debugging782614 -Node: Debugging Concepts783047 -Node: Debugging Terms784903 -Node: Awk Debugging787500 -Node: Sample Debugging Session788392 -Node: Debugger Invocation788912 -Node: Finding The Bug790244 -Node: List of Debugger Commands796732 -Node: Breakpoint Control798066 -Node: Debugger Execution Control801730 -Node: Viewing And Changing Data805090 -Node: Execution Stack808446 -Node: Debugger Info809913 -Node: Miscellaneous Debugger Commands813895 -Node: Readline Support819071 -Node: Limitations819902 -Node: Arbitrary Precision Arithmetic822154 -Ref: Arbitrary Precision Arithmetic-Footnote-1823805 -Node: General Arithmetic823953 -Node: Floating Point Issues825673 -Node: String Conversion Precision826554 +Ref: table-locale-affects313588 +Ref: Conversion-Footnote-1314212 +Node: All Operators314321 +Node: Arithmetic Ops314951 +Node: Concatenation317456 +Ref: Concatenation-Footnote-1320249 +Node: Assignment Ops320369 +Ref: table-assign-ops325357 +Node: Increment Ops326688 +Node: Truth Values and Conditions330123 +Node: Truth Values331206 +Node: Typing and Comparison332255 +Node: Variable Typing333044 +Ref: Variable Typing-Footnote-1336941 +Node: Comparison Operators337063 +Ref: table-relational-ops337473 +Node: POSIX String Comparison341022 +Ref: POSIX String Comparison-Footnote-1341978 +Node: Boolean Ops342116 +Ref: Boolean Ops-Footnote-1346194 +Node: Conditional Exp346285 +Node: Function Calls348017 +Node: Precedence351611 +Node: Locales355280 +Node: Patterns and Actions356369 +Node: Pattern Overview357423 +Node: Regexp Patterns359092 +Node: Expression Patterns359635 +Node: Ranges363320 +Node: BEGIN/END366286 +Node: Using BEGIN/END367048 +Ref: Using BEGIN/END-Footnote-1369779 +Node: I/O And BEGIN/END369885 +Node: BEGINFILE/ENDFILE372167 +Node: Empty375081 +Node: Using Shell Variables375397 +Node: Action Overview377682 +Node: Statements380039 +Node: If Statement381893 +Node: While Statement383392 +Node: Do Statement385436 +Node: For Statement386592 +Node: Switch Statement389744 +Node: Break Statement391841 +Node: Continue Statement393831 +Node: Next Statement395624 +Node: Nextfile Statement398014 +Node: Exit Statement400657 +Node: Built-in Variables403073 +Node: User-modified404168 +Ref: User-modified-Footnote-1412528 +Node: Auto-set412590 +Ref: Auto-set-Footnote-1425668 +Ref: Auto-set-Footnote-2425873 +Node: ARGC and ARGV425929 +Node: Arrays429780 +Node: Array Basics431285 +Node: Array Intro432111 +Node: Reference to Elements436429 +Node: Assigning Elements438699 +Node: Array Example439190 +Node: Scanning an Array440922 +Node: Controlling Scanning443236 +Ref: Controlling Scanning-Footnote-1448159 +Node: Delete448475 +Ref: Delete-Footnote-1451240 +Node: Numeric Array Subscripts451297 +Node: Uninitialized Subscripts453480 +Node: Multi-dimensional455108 +Node: Multi-scanning458202 +Node: Arrays of Arrays459793 +Node: Functions464434 +Node: Built-in465253 +Node: Calling Built-in466331 +Node: Numeric Functions468319 +Ref: Numeric Functions-Footnote-1472151 +Ref: Numeric Functions-Footnote-2472508 +Ref: Numeric Functions-Footnote-3472556 +Node: String Functions472825 +Ref: String Functions-Footnote-1496383 +Ref: String Functions-Footnote-2496512 +Ref: String Functions-Footnote-3496760 +Node: Gory Details496847 +Ref: table-sub-escapes498526 +Ref: table-sub-posix-92499880 +Ref: table-sub-proposed501231 +Ref: table-posix-sub502585 +Ref: table-gensub-escapes504130 +Ref: Gory Details-Footnote-1505306 +Ref: Gory Details-Footnote-2505357 +Node: I/O Functions505508 +Ref: I/O Functions-Footnote-1512493 +Node: Time Functions512640 +Ref: Time Functions-Footnote-1523573 +Ref: Time Functions-Footnote-2523641 +Ref: Time Functions-Footnote-3523799 +Ref: Time Functions-Footnote-4523910 +Ref: Time Functions-Footnote-5524022 +Ref: Time Functions-Footnote-6524249 +Node: Bitwise Functions524515 +Ref: table-bitwise-ops525073 +Ref: Bitwise Functions-Footnote-1529294 +Node: Type Functions529478 +Node: I18N Functions530629 +Node: User-defined532256 +Node: Definition Syntax533060 +Ref: Definition Syntax-Footnote-1537970 +Node: Function Example538039 +Node: Function Caveats540633 +Node: Calling A Function541054 +Node: Variable Scope542169 +Node: Pass By Value/Reference545132 +Node: Return Statement548640 +Node: Dynamic Typing551621 +Node: Indirect Calls552552 +Node: Library Functions562237 +Ref: Library Functions-Footnote-1565750 +Ref: Library Functions-Footnote-2565893 +Node: Library Names566064 +Ref: Library Names-Footnote-1569535 +Ref: Library Names-Footnote-2569755 +Node: General Functions569841 +Node: Strtonum Function570869 +Node: Assert Function573799 +Node: Round Function577125 +Node: Cliff Random Function578668 +Node: Ordinal Functions579684 +Ref: Ordinal Functions-Footnote-1582754 +Ref: Ordinal Functions-Footnote-2583006 +Node: Join Function583215 +Ref: Join Function-Footnote-1584986 +Node: Getlocaltime Function585186 +Node: Readfile Function588927 +Node: Data File Management590766 +Node: Filetrans Function591398 +Node: Rewind Function595467 +Node: File Checking596854 +Node: Empty Files597948 +Node: Ignoring Assigns600178 +Node: Getopt Function601731 +Ref: Getopt Function-Footnote-1613035 +Node: Passwd Functions613238 +Ref: Passwd Functions-Footnote-1622213 +Node: Group Functions622301 +Node: Walking Arrays630385 +Node: Sample Programs632522 +Node: Running Examples633196 +Node: Clones633924 +Node: Cut Program635148 +Node: Egrep Program644993 +Ref: Egrep Program-Footnote-1652766 +Node: Id Program652876 +Node: Split Program656492 +Ref: Split Program-Footnote-1660011 +Node: Tee Program660139 +Node: Uniq Program662942 +Node: Wc Program670371 +Ref: Wc Program-Footnote-1674637 +Ref: Wc Program-Footnote-2674837 +Node: Miscellaneous Programs674929 +Node: Dupword Program676117 +Node: Alarm Program678148 +Node: Translate Program682897 +Ref: Translate Program-Footnote-1687284 +Ref: Translate Program-Footnote-2687512 +Node: Labels Program687646 +Ref: Labels Program-Footnote-1691017 +Node: Word Sorting691101 +Node: History Sorting694985 +Node: Extract Program696824 +Ref: Extract Program-Footnote-1704325 +Node: Simple Sed704453 +Node: Igawk Program707515 +Ref: Igawk Program-Footnote-1722672 +Ref: Igawk Program-Footnote-2722873 +Node: Anagram Program723011 +Node: Signature Program726079 +Node: Advanced Features727179 +Node: Nondecimal Data729061 +Node: Array Sorting730644 +Node: Controlling Array Traversal731341 +Node: Array Sorting Functions739579 +Ref: Array Sorting Functions-Footnote-1743253 +Ref: Array Sorting Functions-Footnote-2743346 +Node: Two-way I/O743540 +Ref: Two-way I/O-Footnote-1748972 +Node: TCP/IP Networking749042 +Node: Profiling751886 +Node: Internationalization759383 +Node: I18N and L10N760808 +Node: Explaining gettext761494 +Ref: Explaining gettext-Footnote-1766562 +Ref: Explaining gettext-Footnote-2766746 +Node: Programmer i18n766911 +Node: Translator i18n771113 +Node: String Extraction771906 +Ref: String Extraction-Footnote-1772867 +Node: Printf Ordering772953 +Ref: Printf Ordering-Footnote-1775737 +Node: I18N Portability775801 +Ref: I18N Portability-Footnote-1778250 +Node: I18N Example778313 +Ref: I18N Example-Footnote-1780951 +Node: Gawk I18N781023 +Node: Debugger781644 +Node: Debugging782615 +Node: Debugging Concepts783048 +Node: Debugging Terms784904 +Node: Awk Debugging787501 +Node: Sample Debugging Session788393 +Node: Debugger Invocation788913 +Node: Finding The Bug790245 +Node: List of Debugger Commands796733 +Node: Breakpoint Control798067 +Node: Debugger Execution Control801731 +Node: Viewing And Changing Data805091 +Node: Execution Stack808447 +Node: Debugger Info809914 +Node: Miscellaneous Debugger Commands813896 +Node: Readline Support819072 +Node: Limitations819903 +Node: Arbitrary Precision Arithmetic822155 +Ref: Arbitrary Precision Arithmetic-Footnote-1823806 +Node: General Arithmetic823954 +Node: Floating Point Issues825674 +Node: String Conversion Precision826555 Ref: String Conversion Precision-Footnote-1828260 Node: Unexpected Results828369 Node: POSIX Floating Point Problems830522 -- cgit v1.2.3 From 0307bffa31f7c7b51531bd74b730c035c8f1dfa1 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Sat, 19 Oct 2013 20:19:58 +0300 Subject: Finish removing PVERSION from doc. --- doc/gawk.info | 674 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 337 insertions(+), 337 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index e8ea41db..bf131b48 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -9687,12 +9687,12 @@ with a pound sign (`#'). environment passed on to any programs that `awk' may spawn via redirection or the `system()' function. - However, beginning with {No value for `PVERSION'} 4.2, if not in - POSIX compatibility mode, `gawk' does update its own environment - when `ENVIRON' is changed, thus changing the environment seen by - programs that it creates. You should therefore be especially - careful if you modify `ENVIRON["PATH"]"', which is the search path - for finding executable programs. + However, beginning with version 4.2, if not in POSIX compatibility + mode, `gawk' does update its own environment when `ENVIRON' is + changed, thus changing the environment seen by programs that it + creates. You should therefore be especially careful if you modify + `ENVIRON["PATH"]"', which is the search path for finding + executable programs. Some operating systems may not have environment variables. On such systems, the `ENVIRON' array is empty (except for @@ -32359,336 +32359,336 @@ Node: Built-in Variables403073 Node: User-modified404168 Ref: User-modified-Footnote-1412528 Node: Auto-set412590 -Ref: Auto-set-Footnote-1426078 -Ref: Auto-set-Footnote-2426283 -Node: ARGC and ARGV426339 -Node: Arrays430190 -Node: Array Basics431695 -Node: Array Intro432521 -Node: Reference to Elements436839 -Node: Assigning Elements439109 -Node: Array Example439600 -Node: Scanning an Array441332 -Node: Controlling Scanning443646 -Ref: Controlling Scanning-Footnote-1448569 -Node: Delete448885 -Ref: Delete-Footnote-1451650 -Node: Numeric Array Subscripts451707 -Node: Uninitialized Subscripts453890 -Node: Multi-dimensional455518 -Node: Multi-scanning458612 -Node: Arrays of Arrays460203 -Node: Functions464844 -Node: Built-in465663 -Node: Calling Built-in466741 -Node: Numeric Functions468729 -Ref: Numeric Functions-Footnote-1472561 -Ref: Numeric Functions-Footnote-2472918 -Ref: Numeric Functions-Footnote-3472966 -Node: String Functions473235 -Ref: String Functions-Footnote-1496793 -Ref: String Functions-Footnote-2496922 -Ref: String Functions-Footnote-3497170 -Node: Gory Details497257 -Ref: table-sub-escapes498936 -Ref: table-sub-posix-92500290 -Ref: table-sub-proposed501641 -Ref: table-posix-sub502995 -Ref: table-gensub-escapes504540 -Ref: Gory Details-Footnote-1505716 -Ref: Gory Details-Footnote-2505767 -Node: I/O Functions505918 -Ref: I/O Functions-Footnote-1512903 -Node: Time Functions513050 -Ref: Time Functions-Footnote-1523983 -Ref: Time Functions-Footnote-2524051 -Ref: Time Functions-Footnote-3524209 -Ref: Time Functions-Footnote-4524320 -Ref: Time Functions-Footnote-5524432 -Ref: Time Functions-Footnote-6524659 -Node: Bitwise Functions524925 -Ref: table-bitwise-ops525483 -Ref: Bitwise Functions-Footnote-1529704 -Node: Type Functions529888 -Node: I18N Functions531039 -Node: User-defined532666 -Node: Definition Syntax533470 -Ref: Definition Syntax-Footnote-1538380 -Node: Function Example538449 -Node: Function Caveats541043 -Node: Calling A Function541464 -Node: Variable Scope542579 -Node: Pass By Value/Reference545542 -Node: Return Statement549050 -Node: Dynamic Typing552031 -Node: Indirect Calls552962 -Node: Library Functions562647 -Ref: Library Functions-Footnote-1566160 -Ref: Library Functions-Footnote-2566303 -Node: Library Names566474 -Ref: Library Names-Footnote-1569945 -Ref: Library Names-Footnote-2570165 -Node: General Functions570251 -Node: Strtonum Function571279 -Node: Assert Function574209 -Node: Round Function577535 -Node: Cliff Random Function579078 -Node: Ordinal Functions580094 -Ref: Ordinal Functions-Footnote-1583164 -Ref: Ordinal Functions-Footnote-2583416 -Node: Join Function583625 -Ref: Join Function-Footnote-1585396 -Node: Getlocaltime Function585596 -Node: Readfile Function589337 -Node: Data File Management591176 -Node: Filetrans Function591808 -Node: Rewind Function595877 -Node: File Checking597264 -Node: Empty Files598358 -Node: Ignoring Assigns600588 -Node: Getopt Function602141 -Ref: Getopt Function-Footnote-1613445 -Node: Passwd Functions613648 -Ref: Passwd Functions-Footnote-1622623 -Node: Group Functions622711 -Node: Walking Arrays630795 -Node: Sample Programs632932 -Node: Running Examples633606 -Node: Clones634334 -Node: Cut Program635558 -Node: Egrep Program645403 -Ref: Egrep Program-Footnote-1653176 -Node: Id Program653286 -Node: Split Program656902 -Ref: Split Program-Footnote-1660421 -Node: Tee Program660549 -Node: Uniq Program663352 -Node: Wc Program670781 -Ref: Wc Program-Footnote-1675047 -Ref: Wc Program-Footnote-2675247 -Node: Miscellaneous Programs675339 -Node: Dupword Program676527 -Node: Alarm Program678558 -Node: Translate Program683307 -Ref: Translate Program-Footnote-1687694 -Ref: Translate Program-Footnote-2687922 -Node: Labels Program688056 -Ref: Labels Program-Footnote-1691427 -Node: Word Sorting691511 -Node: History Sorting695395 -Node: Extract Program697234 -Ref: Extract Program-Footnote-1704735 -Node: Simple Sed704863 -Node: Igawk Program707925 -Ref: Igawk Program-Footnote-1723082 -Ref: Igawk Program-Footnote-2723283 -Node: Anagram Program723421 -Node: Signature Program726489 -Node: Advanced Features727589 -Node: Nondecimal Data729471 -Node: Array Sorting731054 -Node: Controlling Array Traversal731751 -Node: Array Sorting Functions739989 -Ref: Array Sorting Functions-Footnote-1743663 -Ref: Array Sorting Functions-Footnote-2743756 -Node: Two-way I/O743950 -Ref: Two-way I/O-Footnote-1749382 -Node: TCP/IP Networking749452 -Node: Profiling752296 -Node: Internationalization759793 -Node: I18N and L10N761218 -Node: Explaining gettext761904 -Ref: Explaining gettext-Footnote-1766972 -Ref: Explaining gettext-Footnote-2767156 -Node: Programmer i18n767321 -Node: Translator i18n771523 -Node: String Extraction772316 -Ref: String Extraction-Footnote-1773277 -Node: Printf Ordering773363 -Ref: Printf Ordering-Footnote-1776147 -Node: I18N Portability776211 -Ref: I18N Portability-Footnote-1778660 -Node: I18N Example778723 -Ref: I18N Example-Footnote-1781361 -Node: Gawk I18N781433 -Node: Debugger782054 -Node: Debugging783025 -Node: Debugging Concepts783458 -Node: Debugging Terms785314 -Node: Awk Debugging787911 -Node: Sample Debugging Session788803 -Node: Debugger Invocation789323 -Node: Finding The Bug790655 -Node: List of Debugger Commands797143 -Node: Breakpoint Control798477 -Node: Debugger Execution Control802141 -Node: Viewing And Changing Data805501 -Node: Execution Stack808857 -Node: Debugger Info810324 -Node: Miscellaneous Debugger Commands814306 -Node: Readline Support819482 -Node: Limitations820313 -Node: Arbitrary Precision Arithmetic822565 -Ref: Arbitrary Precision Arithmetic-Footnote-1824216 -Node: General Arithmetic824364 -Node: Floating Point Issues826084 -Node: String Conversion Precision826965 -Ref: String Conversion Precision-Footnote-1828670 -Node: Unexpected Results828779 -Node: POSIX Floating Point Problems830932 -Ref: POSIX Floating Point Problems-Footnote-1834757 -Node: Integer Programming834795 -Node: Floating-point Programming836534 -Ref: Floating-point Programming-Footnote-1842865 -Ref: Floating-point Programming-Footnote-2843135 -Node: Floating-point Representation843399 -Node: Floating-point Context844564 -Ref: table-ieee-formats845403 -Node: Rounding Mode846787 -Ref: table-rounding-modes847266 -Ref: Rounding Mode-Footnote-1850281 -Node: Gawk and MPFR850460 -Node: Arbitrary Precision Floats851715 -Ref: Arbitrary Precision Floats-Footnote-1854158 -Node: Setting Precision854474 -Ref: table-predefined-precision-strings855160 -Node: Setting Rounding Mode857305 -Ref: table-gawk-rounding-modes857709 -Node: Floating-point Constants858896 -Node: Changing Precision860325 -Ref: Changing Precision-Footnote-1861725 -Node: Exact Arithmetic861899 -Node: Arbitrary Precision Integers865037 -Ref: Arbitrary Precision Integers-Footnote-1868055 -Node: Dynamic Extensions868202 -Node: Extension Intro869660 -Node: Plugin License870925 -Node: Extension Mechanism Outline871610 -Ref: load-extension872027 -Ref: load-new-function873505 -Ref: call-new-function874500 -Node: Extension API Description876515 -Node: Extension API Functions Introduction877728 -Node: General Data Types882594 -Ref: General Data Types-Footnote-1888196 -Node: Requesting Values888495 -Ref: table-value-types-returned889226 -Node: Constructor Functions890180 -Node: Registration Functions893200 -Node: Extension Functions893885 -Node: Exit Callback Functions896110 -Node: Extension Version String897359 -Node: Input Parsers898009 -Node: Output Wrappers907766 -Node: Two-way processors912276 -Node: Printing Messages914484 -Ref: Printing Messages-Footnote-1915561 -Node: Updating `ERRNO'915713 -Node: Accessing Parameters916452 -Node: Symbol Table Access917682 -Node: Symbol table by name918194 -Node: Symbol table by cookie919941 -Ref: Symbol table by cookie-Footnote-1924071 -Node: Cached values924134 -Ref: Cached values-Footnote-1927583 -Node: Array Manipulation927674 -Ref: Array Manipulation-Footnote-1928772 -Node: Array Data Types928811 -Ref: Array Data Types-Footnote-1931514 -Node: Array Functions931606 -Node: Flattening Arrays935372 -Node: Creating Arrays942224 -Node: Extension API Variables946949 -Node: Extension Versioning947585 -Node: Extension API Informational Variables949486 -Node: Extension API Boilerplate950572 -Node: Finding Extensions954376 -Node: Extension Example954936 -Node: Internal File Description955667 -Node: Internal File Ops959758 -Ref: Internal File Ops-Footnote-1971266 -Node: Using Internal File Ops971406 -Ref: Using Internal File Ops-Footnote-1973759 -Node: Extension Samples974025 -Node: Extension Sample File Functions975549 -Node: Extension Sample Fnmatch984036 -Node: Extension Sample Fork985762 -Node: Extension Sample Inplace986980 -Node: Extension Sample Ord988758 -Node: Extension Sample Readdir989594 -Node: Extension Sample Revout991126 -Node: Extension Sample Rev2way991719 -Node: Extension Sample Read write array992409 -Node: Extension Sample Readfile994292 -Node: Extension Sample API Tests995110 -Node: Extension Sample Time995635 -Node: gawkextlib996999 -Node: Language History999759 -Node: V7/SVR3.11001281 -Node: SVR41003602 -Node: POSIX1005044 -Node: BTL1006430 -Node: POSIX/GNU1007164 -Node: Common Extensions1012699 -Node: Ranges and Locales1014005 -Ref: Ranges and Locales-Footnote-11018623 -Ref: Ranges and Locales-Footnote-21018650 -Ref: Ranges and Locales-Footnote-31018910 -Node: Contributors1019131 -Node: Installation1024010 -Node: Gawk Distribution1024904 -Node: Getting1025388 -Node: Extracting1026214 -Node: Distribution contents1027906 -Node: Unix Installation1033167 -Node: Quick Installation1033784 -Node: Additional Configuration Options1036228 -Node: Configuration Philosophy1037705 -Node: Non-Unix Installation1040059 -Node: PC Installation1040517 -Node: PC Binary Installation1041816 -Node: PC Compiling1043664 -Node: PC Testing1046608 -Node: PC Using1047784 -Node: Cygwin1051969 -Node: MSYS1052969 -Node: VMS Installation1053483 -Node: VMS Compilation1054086 -Ref: VMS Compilation-Footnote-11055093 -Node: VMS Installation Details1055151 -Node: VMS Running1056786 -Node: VMS Old Gawk1058393 -Node: Bugs1058867 -Node: Other Versions1062719 -Node: Notes1068800 -Node: Compatibility Mode1069600 -Node: Additions1070383 -Node: Accessing The Source1071310 -Node: Adding Code1072750 -Node: New Ports1078795 -Node: Derived Files1082930 -Ref: Derived Files-Footnote-11088251 -Ref: Derived Files-Footnote-21088285 -Ref: Derived Files-Footnote-31088885 -Node: Future Extensions1088983 -Node: Implementation Limitations1089564 -Node: Extension Design1090816 -Node: Old Extension Problems1091970 -Ref: Old Extension Problems-Footnote-11093478 -Node: Extension New Mechanism Goals1093535 -Ref: Extension New Mechanism Goals-Footnote-11096901 -Node: Extension Other Design Decisions1097087 -Node: Extension Future Growth1099193 -Node: Old Extension Mechanism1100029 -Node: Basic Concepts1101769 -Node: Basic High Level1102450 -Ref: figure-general-flow1102721 -Ref: figure-process-flow1103320 -Ref: Basic High Level-Footnote-11106549 -Node: Basic Data Typing1106734 -Node: Glossary1110089 -Node: Copying1135551 -Node: GNU Free Documentation License1173108 -Node: Index1198245 +Ref: Auto-set-Footnote-1426060 +Ref: Auto-set-Footnote-2426265 +Node: ARGC and ARGV426321 +Node: Arrays430172 +Node: Array Basics431677 +Node: Array Intro432503 +Node: Reference to Elements436821 +Node: Assigning Elements439091 +Node: Array Example439582 +Node: Scanning an Array441314 +Node: Controlling Scanning443628 +Ref: Controlling Scanning-Footnote-1448551 +Node: Delete448867 +Ref: Delete-Footnote-1451632 +Node: Numeric Array Subscripts451689 +Node: Uninitialized Subscripts453872 +Node: Multi-dimensional455500 +Node: Multi-scanning458594 +Node: Arrays of Arrays460185 +Node: Functions464826 +Node: Built-in465645 +Node: Calling Built-in466723 +Node: Numeric Functions468711 +Ref: Numeric Functions-Footnote-1472543 +Ref: Numeric Functions-Footnote-2472900 +Ref: Numeric Functions-Footnote-3472948 +Node: String Functions473217 +Ref: String Functions-Footnote-1496775 +Ref: String Functions-Footnote-2496904 +Ref: String Functions-Footnote-3497152 +Node: Gory Details497239 +Ref: table-sub-escapes498918 +Ref: table-sub-posix-92500272 +Ref: table-sub-proposed501623 +Ref: table-posix-sub502977 +Ref: table-gensub-escapes504522 +Ref: Gory Details-Footnote-1505698 +Ref: Gory Details-Footnote-2505749 +Node: I/O Functions505900 +Ref: I/O Functions-Footnote-1512885 +Node: Time Functions513032 +Ref: Time Functions-Footnote-1523965 +Ref: Time Functions-Footnote-2524033 +Ref: Time Functions-Footnote-3524191 +Ref: Time Functions-Footnote-4524302 +Ref: Time Functions-Footnote-5524414 +Ref: Time Functions-Footnote-6524641 +Node: Bitwise Functions524907 +Ref: table-bitwise-ops525465 +Ref: Bitwise Functions-Footnote-1529686 +Node: Type Functions529870 +Node: I18N Functions531021 +Node: User-defined532648 +Node: Definition Syntax533452 +Ref: Definition Syntax-Footnote-1538362 +Node: Function Example538431 +Node: Function Caveats541025 +Node: Calling A Function541446 +Node: Variable Scope542561 +Node: Pass By Value/Reference545524 +Node: Return Statement549032 +Node: Dynamic Typing552013 +Node: Indirect Calls552944 +Node: Library Functions562629 +Ref: Library Functions-Footnote-1566142 +Ref: Library Functions-Footnote-2566285 +Node: Library Names566456 +Ref: Library Names-Footnote-1569927 +Ref: Library Names-Footnote-2570147 +Node: General Functions570233 +Node: Strtonum Function571261 +Node: Assert Function574191 +Node: Round Function577517 +Node: Cliff Random Function579060 +Node: Ordinal Functions580076 +Ref: Ordinal Functions-Footnote-1583146 +Ref: Ordinal Functions-Footnote-2583398 +Node: Join Function583607 +Ref: Join Function-Footnote-1585378 +Node: Getlocaltime Function585578 +Node: Readfile Function589319 +Node: Data File Management591158 +Node: Filetrans Function591790 +Node: Rewind Function595859 +Node: File Checking597246 +Node: Empty Files598340 +Node: Ignoring Assigns600570 +Node: Getopt Function602123 +Ref: Getopt Function-Footnote-1613427 +Node: Passwd Functions613630 +Ref: Passwd Functions-Footnote-1622605 +Node: Group Functions622693 +Node: Walking Arrays630777 +Node: Sample Programs632914 +Node: Running Examples633588 +Node: Clones634316 +Node: Cut Program635540 +Node: Egrep Program645385 +Ref: Egrep Program-Footnote-1653158 +Node: Id Program653268 +Node: Split Program656884 +Ref: Split Program-Footnote-1660403 +Node: Tee Program660531 +Node: Uniq Program663334 +Node: Wc Program670763 +Ref: Wc Program-Footnote-1675029 +Ref: Wc Program-Footnote-2675229 +Node: Miscellaneous Programs675321 +Node: Dupword Program676509 +Node: Alarm Program678540 +Node: Translate Program683289 +Ref: Translate Program-Footnote-1687676 +Ref: Translate Program-Footnote-2687904 +Node: Labels Program688038 +Ref: Labels Program-Footnote-1691409 +Node: Word Sorting691493 +Node: History Sorting695377 +Node: Extract Program697216 +Ref: Extract Program-Footnote-1704717 +Node: Simple Sed704845 +Node: Igawk Program707907 +Ref: Igawk Program-Footnote-1723064 +Ref: Igawk Program-Footnote-2723265 +Node: Anagram Program723403 +Node: Signature Program726471 +Node: Advanced Features727571 +Node: Nondecimal Data729453 +Node: Array Sorting731036 +Node: Controlling Array Traversal731733 +Node: Array Sorting Functions739971 +Ref: Array Sorting Functions-Footnote-1743645 +Ref: Array Sorting Functions-Footnote-2743738 +Node: Two-way I/O743932 +Ref: Two-way I/O-Footnote-1749364 +Node: TCP/IP Networking749434 +Node: Profiling752278 +Node: Internationalization759775 +Node: I18N and L10N761200 +Node: Explaining gettext761886 +Ref: Explaining gettext-Footnote-1766954 +Ref: Explaining gettext-Footnote-2767138 +Node: Programmer i18n767303 +Node: Translator i18n771505 +Node: String Extraction772298 +Ref: String Extraction-Footnote-1773259 +Node: Printf Ordering773345 +Ref: Printf Ordering-Footnote-1776129 +Node: I18N Portability776193 +Ref: I18N Portability-Footnote-1778642 +Node: I18N Example778705 +Ref: I18N Example-Footnote-1781343 +Node: Gawk I18N781415 +Node: Debugger782036 +Node: Debugging783007 +Node: Debugging Concepts783440 +Node: Debugging Terms785296 +Node: Awk Debugging787893 +Node: Sample Debugging Session788785 +Node: Debugger Invocation789305 +Node: Finding The Bug790637 +Node: List of Debugger Commands797125 +Node: Breakpoint Control798459 +Node: Debugger Execution Control802123 +Node: Viewing And Changing Data805483 +Node: Execution Stack808839 +Node: Debugger Info810306 +Node: Miscellaneous Debugger Commands814288 +Node: Readline Support819464 +Node: Limitations820295 +Node: Arbitrary Precision Arithmetic822547 +Ref: Arbitrary Precision Arithmetic-Footnote-1824198 +Node: General Arithmetic824346 +Node: Floating Point Issues826066 +Node: String Conversion Precision826947 +Ref: String Conversion Precision-Footnote-1828652 +Node: Unexpected Results828761 +Node: POSIX Floating Point Problems830914 +Ref: POSIX Floating Point Problems-Footnote-1834739 +Node: Integer Programming834777 +Node: Floating-point Programming836516 +Ref: Floating-point Programming-Footnote-1842847 +Ref: Floating-point Programming-Footnote-2843117 +Node: Floating-point Representation843381 +Node: Floating-point Context844546 +Ref: table-ieee-formats845385 +Node: Rounding Mode846769 +Ref: table-rounding-modes847248 +Ref: Rounding Mode-Footnote-1850263 +Node: Gawk and MPFR850442 +Node: Arbitrary Precision Floats851697 +Ref: Arbitrary Precision Floats-Footnote-1854140 +Node: Setting Precision854456 +Ref: table-predefined-precision-strings855142 +Node: Setting Rounding Mode857287 +Ref: table-gawk-rounding-modes857691 +Node: Floating-point Constants858878 +Node: Changing Precision860307 +Ref: Changing Precision-Footnote-1861707 +Node: Exact Arithmetic861881 +Node: Arbitrary Precision Integers865019 +Ref: Arbitrary Precision Integers-Footnote-1868037 +Node: Dynamic Extensions868184 +Node: Extension Intro869642 +Node: Plugin License870907 +Node: Extension Mechanism Outline871592 +Ref: load-extension872009 +Ref: load-new-function873487 +Ref: call-new-function874482 +Node: Extension API Description876497 +Node: Extension API Functions Introduction877710 +Node: General Data Types882576 +Ref: General Data Types-Footnote-1888178 +Node: Requesting Values888477 +Ref: table-value-types-returned889208 +Node: Constructor Functions890162 +Node: Registration Functions893182 +Node: Extension Functions893867 +Node: Exit Callback Functions896092 +Node: Extension Version String897341 +Node: Input Parsers897991 +Node: Output Wrappers907748 +Node: Two-way processors912258 +Node: Printing Messages914466 +Ref: Printing Messages-Footnote-1915543 +Node: Updating `ERRNO'915695 +Node: Accessing Parameters916434 +Node: Symbol Table Access917664 +Node: Symbol table by name918176 +Node: Symbol table by cookie919923 +Ref: Symbol table by cookie-Footnote-1924053 +Node: Cached values924116 +Ref: Cached values-Footnote-1927565 +Node: Array Manipulation927656 +Ref: Array Manipulation-Footnote-1928754 +Node: Array Data Types928793 +Ref: Array Data Types-Footnote-1931496 +Node: Array Functions931588 +Node: Flattening Arrays935354 +Node: Creating Arrays942206 +Node: Extension API Variables946931 +Node: Extension Versioning947567 +Node: Extension API Informational Variables949468 +Node: Extension API Boilerplate950554 +Node: Finding Extensions954358 +Node: Extension Example954918 +Node: Internal File Description955649 +Node: Internal File Ops959740 +Ref: Internal File Ops-Footnote-1971248 +Node: Using Internal File Ops971388 +Ref: Using Internal File Ops-Footnote-1973741 +Node: Extension Samples974007 +Node: Extension Sample File Functions975531 +Node: Extension Sample Fnmatch984018 +Node: Extension Sample Fork985744 +Node: Extension Sample Inplace986962 +Node: Extension Sample Ord988740 +Node: Extension Sample Readdir989576 +Node: Extension Sample Revout991108 +Node: Extension Sample Rev2way991701 +Node: Extension Sample Read write array992391 +Node: Extension Sample Readfile994274 +Node: Extension Sample API Tests995092 +Node: Extension Sample Time995617 +Node: gawkextlib996981 +Node: Language History999741 +Node: V7/SVR3.11001263 +Node: SVR41003584 +Node: POSIX1005026 +Node: BTL1006412 +Node: POSIX/GNU1007146 +Node: Common Extensions1012681 +Node: Ranges and Locales1013987 +Ref: Ranges and Locales-Footnote-11018605 +Ref: Ranges and Locales-Footnote-21018632 +Ref: Ranges and Locales-Footnote-31018892 +Node: Contributors1019113 +Node: Installation1023992 +Node: Gawk Distribution1024886 +Node: Getting1025370 +Node: Extracting1026196 +Node: Distribution contents1027888 +Node: Unix Installation1033149 +Node: Quick Installation1033766 +Node: Additional Configuration Options1036210 +Node: Configuration Philosophy1037687 +Node: Non-Unix Installation1040041 +Node: PC Installation1040499 +Node: PC Binary Installation1041798 +Node: PC Compiling1043646 +Node: PC Testing1046590 +Node: PC Using1047766 +Node: Cygwin1051951 +Node: MSYS1052951 +Node: VMS Installation1053465 +Node: VMS Compilation1054068 +Ref: VMS Compilation-Footnote-11055075 +Node: VMS Installation Details1055133 +Node: VMS Running1056768 +Node: VMS Old Gawk1058375 +Node: Bugs1058849 +Node: Other Versions1062701 +Node: Notes1068782 +Node: Compatibility Mode1069582 +Node: Additions1070365 +Node: Accessing The Source1071292 +Node: Adding Code1072732 +Node: New Ports1078777 +Node: Derived Files1082912 +Ref: Derived Files-Footnote-11088233 +Ref: Derived Files-Footnote-21088267 +Ref: Derived Files-Footnote-31088867 +Node: Future Extensions1088965 +Node: Implementation Limitations1089546 +Node: Extension Design1090798 +Node: Old Extension Problems1091952 +Ref: Old Extension Problems-Footnote-11093460 +Node: Extension New Mechanism Goals1093517 +Ref: Extension New Mechanism Goals-Footnote-11096883 +Node: Extension Other Design Decisions1097069 +Node: Extension Future Growth1099175 +Node: Old Extension Mechanism1100011 +Node: Basic Concepts1101751 +Node: Basic High Level1102432 +Ref: figure-general-flow1102703 +Ref: figure-process-flow1103302 +Ref: Basic High Level-Footnote-11106531 +Node: Basic Data Typing1106716 +Node: Glossary1110071 +Node: Copying1135533 +Node: GNU Free Documentation License1173090 +Node: Index1198227  End Tag Table -- cgit v1.2.3 From 25520aab6144927a20d501c0396e9597f36fc871 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Thu, 24 Oct 2013 22:03:09 +0300 Subject: Improve handling of writes to dead pipes. --- doc/gawk.info | 955 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 483 insertions(+), 472 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 5b3e4ac7..8fc3b2e9 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -2851,10 +2851,6 @@ used by regular users. the `gawk' developers for testing and tuning. They are subject to change. The variables are: -`AVG_CHAIN_MAX' - The average number of items `gawk' will maintain on a hash chain - for managing arrays. - `AWK_HASH' If this variable exists with a value of `gst', `gawk' will switch to using the hash function from GNU Smalltalk for managing arrays. @@ -2866,6 +2862,13 @@ change. The variables are: debugging problems on filesystems on non-POSIX operating systems where I/O is performed in records, not in blocks. +`GAWK_MSG_SRC' + If this variable exists, `gawk' includes the source file name and + line number from which warning and/or fatal messages are + generated. Its purpose is to help isolate the source of a + message, since there can be multiple places which produce the same + warning or error message. + `GAWK_NO_DFA' If this variable exists, `gawk' does not use the DFA regexp matcher for "does it match" kinds of tests. This can cause `gawk' to be @@ -2878,6 +2881,14 @@ change. The variables are: This specifies the amount by which `gawk' should grow its internal evaluation stack, when needed. +`INT_CHAIN_MAX' + The average number of items `gawk' will maintain on a hash chain + for managing arrays indexed by integers. + +`STR_CHAIN_MAX' + The average number of items `gawk' will maintain on a hash chain + for managing arrays indexed by strings. + `TIDYMEM' If this variable exists, `gawk' uses the `mtrace()' library calls from GNU LIBC to help track down possible memory leaks. @@ -32213,473 +32224,473 @@ Node: AWKPATH Variable130128 Ref: AWKPATH Variable-Footnote-1132886 Node: AWKLIBPATH Variable133146 Node: Other Environment Variables133864 -Node: Exit Status136359 -Node: Include Files137034 -Node: Loading Shared Libraries140603 -Node: Obsolete141967 -Node: Undocumented142664 -Node: Regexp142907 -Node: Regexp Usage144296 -Node: Escape Sequences146322 -Node: Regexp Operators151991 -Ref: Regexp Operators-Footnote-1159371 -Ref: Regexp Operators-Footnote-2159518 -Node: Bracket Expressions159616 -Ref: table-char-classes161506 -Node: GNU Regexp Operators164029 -Node: Case-sensitivity167752 -Ref: Case-sensitivity-Footnote-1170720 -Ref: Case-sensitivity-Footnote-2170955 -Node: Leftmost Longest171063 -Node: Computed Regexps172264 -Node: Reading Files175601 -Node: Records177604 -Ref: Records-Footnote-1186493 -Node: Fields186530 -Ref: Fields-Footnote-1189563 -Node: Nonconstant Fields189649 -Node: Changing Fields191851 -Node: Field Separators197810 -Node: Default Field Splitting200439 -Node: Regexp Field Splitting201556 -Node: Single Character Fields204898 -Node: Command Line Field Separator205957 -Node: Field Splitting Summary209398 -Ref: Field Splitting Summary-Footnote-1212509 -Node: Constant Size212610 -Node: Splitting By Content217194 -Ref: Splitting By Content-Footnote-1220920 -Node: Multiple Line220960 -Ref: Multiple Line-Footnote-1226807 -Node: Getline226986 -Node: Plain Getline229202 -Node: Getline/Variable231297 -Node: Getline/File232444 -Node: Getline/Variable/File233785 -Ref: Getline/Variable/File-Footnote-1235384 -Node: Getline/Pipe235471 -Node: Getline/Variable/Pipe238171 -Node: Getline/Coprocess239278 -Node: Getline/Variable/Coprocess240530 -Node: Getline Notes241267 -Node: Getline Summary244054 -Ref: table-getline-variants244462 -Node: Read Timeout245374 -Ref: Read Timeout-Footnote-1249115 -Node: Command line directories249172 -Node: Printing249802 -Node: Print251433 -Node: Print Examples252770 -Node: Output Separators255554 -Node: OFMT257314 -Node: Printf258672 -Node: Basic Printf259578 -Node: Control Letters261117 -Node: Format Modifiers264929 -Node: Printf Examples270938 -Node: Redirection273653 -Node: Special Files280618 -Node: Special FD281151 -Ref: Special FD-Footnote-1284776 -Node: Special Network284850 -Node: Special Caveats285700 -Node: Close Files And Pipes286496 -Ref: Close Files And Pipes-Footnote-1293479 -Ref: Close Files And Pipes-Footnote-2293627 -Node: Expressions293777 -Node: Values294909 -Node: Constants295585 -Node: Scalar Constants296265 -Ref: Scalar Constants-Footnote-1297124 -Node: Nondecimal-numbers297306 -Node: Regexp Constants300306 -Node: Using Constant Regexps300781 -Node: Variables303836 -Node: Using Variables304491 -Node: Assignment Options306215 -Node: Conversion308087 -Ref: table-locale-affects313588 -Ref: Conversion-Footnote-1314212 -Node: All Operators314321 -Node: Arithmetic Ops314951 -Node: Concatenation317456 -Ref: Concatenation-Footnote-1320249 -Node: Assignment Ops320369 -Ref: table-assign-ops325357 -Node: Increment Ops326688 -Node: Truth Values and Conditions330123 -Node: Truth Values331206 -Node: Typing and Comparison332255 -Node: Variable Typing333044 -Ref: Variable Typing-Footnote-1336941 -Node: Comparison Operators337063 -Ref: table-relational-ops337473 -Node: POSIX String Comparison341022 -Ref: POSIX String Comparison-Footnote-1341978 -Node: Boolean Ops342116 -Ref: Boolean Ops-Footnote-1346194 -Node: Conditional Exp346285 -Node: Function Calls348017 -Node: Precedence351611 -Node: Locales355280 -Node: Patterns and Actions356369 -Node: Pattern Overview357423 -Node: Regexp Patterns359092 -Node: Expression Patterns359635 -Node: Ranges363320 -Node: BEGIN/END366286 -Node: Using BEGIN/END367048 -Ref: Using BEGIN/END-Footnote-1369779 -Node: I/O And BEGIN/END369885 -Node: BEGINFILE/ENDFILE372167 -Node: Empty375081 -Node: Using Shell Variables375397 -Node: Action Overview377682 -Node: Statements380039 -Node: If Statement381893 -Node: While Statement383392 -Node: Do Statement385436 -Node: For Statement386592 -Node: Switch Statement389744 -Node: Break Statement391841 -Node: Continue Statement393831 -Node: Next Statement395624 -Node: Nextfile Statement398014 -Node: Exit Statement400657 -Node: Built-in Variables403073 -Node: User-modified404168 -Ref: User-modified-Footnote-1412528 -Node: Auto-set412590 -Ref: Auto-set-Footnote-1425668 -Ref: Auto-set-Footnote-2425873 -Node: ARGC and ARGV425929 -Node: Arrays429780 -Node: Array Basics431285 -Node: Array Intro432111 -Node: Reference to Elements436429 -Node: Assigning Elements438699 -Node: Array Example439190 -Node: Scanning an Array440922 -Node: Controlling Scanning443236 -Ref: Controlling Scanning-Footnote-1448159 -Node: Delete448475 -Ref: Delete-Footnote-1451240 -Node: Numeric Array Subscripts451297 -Node: Uninitialized Subscripts453480 -Node: Multi-dimensional455108 -Node: Multi-scanning458202 -Node: Arrays of Arrays459793 -Node: Functions464434 -Node: Built-in465253 -Node: Calling Built-in466331 -Node: Numeric Functions468319 -Ref: Numeric Functions-Footnote-1472151 -Ref: Numeric Functions-Footnote-2472508 -Ref: Numeric Functions-Footnote-3472556 -Node: String Functions472825 -Ref: String Functions-Footnote-1496383 -Ref: String Functions-Footnote-2496512 -Ref: String Functions-Footnote-3496760 -Node: Gory Details496847 -Ref: table-sub-escapes498526 -Ref: table-sub-posix-92499880 -Ref: table-sub-proposed501231 -Ref: table-posix-sub502585 -Ref: table-gensub-escapes504130 -Ref: Gory Details-Footnote-1505306 -Ref: Gory Details-Footnote-2505357 -Node: I/O Functions505508 -Ref: I/O Functions-Footnote-1512493 -Node: Time Functions512640 -Ref: Time Functions-Footnote-1523573 -Ref: Time Functions-Footnote-2523641 -Ref: Time Functions-Footnote-3523799 -Ref: Time Functions-Footnote-4523910 -Ref: Time Functions-Footnote-5524022 -Ref: Time Functions-Footnote-6524249 -Node: Bitwise Functions524515 -Ref: table-bitwise-ops525073 -Ref: Bitwise Functions-Footnote-1529294 -Node: Type Functions529478 -Node: I18N Functions530629 -Node: User-defined532256 -Node: Definition Syntax533060 -Ref: Definition Syntax-Footnote-1537970 -Node: Function Example538039 -Node: Function Caveats540633 -Node: Calling A Function541054 -Node: Variable Scope542169 -Node: Pass By Value/Reference545132 -Node: Return Statement548640 -Node: Dynamic Typing551621 -Node: Indirect Calls552552 -Node: Library Functions562237 -Ref: Library Functions-Footnote-1565750 -Ref: Library Functions-Footnote-2565893 -Node: Library Names566064 -Ref: Library Names-Footnote-1569535 -Ref: Library Names-Footnote-2569755 -Node: General Functions569841 -Node: Strtonum Function570869 -Node: Assert Function573799 -Node: Round Function577125 -Node: Cliff Random Function578668 -Node: Ordinal Functions579684 -Ref: Ordinal Functions-Footnote-1582754 -Ref: Ordinal Functions-Footnote-2583006 -Node: Join Function583215 -Ref: Join Function-Footnote-1584986 -Node: Getlocaltime Function585186 -Node: Readfile Function588927 -Node: Data File Management590766 -Node: Filetrans Function591398 -Node: Rewind Function595467 -Node: File Checking596854 -Node: Empty Files597948 -Node: Ignoring Assigns600178 -Node: Getopt Function601731 -Ref: Getopt Function-Footnote-1613035 -Node: Passwd Functions613238 -Ref: Passwd Functions-Footnote-1622213 -Node: Group Functions622301 -Node: Walking Arrays630385 -Node: Sample Programs632522 -Node: Running Examples633196 -Node: Clones633924 -Node: Cut Program635148 -Node: Egrep Program644993 -Ref: Egrep Program-Footnote-1652766 -Node: Id Program652876 -Node: Split Program656492 -Ref: Split Program-Footnote-1660011 -Node: Tee Program660139 -Node: Uniq Program662942 -Node: Wc Program670371 -Ref: Wc Program-Footnote-1674637 -Ref: Wc Program-Footnote-2674837 -Node: Miscellaneous Programs674929 -Node: Dupword Program676117 -Node: Alarm Program678148 -Node: Translate Program682897 -Ref: Translate Program-Footnote-1687284 -Ref: Translate Program-Footnote-2687512 -Node: Labels Program687646 -Ref: Labels Program-Footnote-1691017 -Node: Word Sorting691101 -Node: History Sorting694985 -Node: Extract Program696824 -Ref: Extract Program-Footnote-1704325 -Node: Simple Sed704453 -Node: Igawk Program707515 -Ref: Igawk Program-Footnote-1722672 -Ref: Igawk Program-Footnote-2722873 -Node: Anagram Program723011 -Node: Signature Program726079 -Node: Advanced Features727179 -Node: Nondecimal Data729061 -Node: Array Sorting730644 -Node: Controlling Array Traversal731341 -Node: Array Sorting Functions739579 -Ref: Array Sorting Functions-Footnote-1743253 -Ref: Array Sorting Functions-Footnote-2743346 -Node: Two-way I/O743540 -Ref: Two-way I/O-Footnote-1748972 -Node: TCP/IP Networking749042 -Node: Profiling751886 -Node: Internationalization759383 -Node: I18N and L10N760808 -Node: Explaining gettext761494 -Ref: Explaining gettext-Footnote-1766562 -Ref: Explaining gettext-Footnote-2766746 -Node: Programmer i18n766911 -Node: Translator i18n771113 -Node: String Extraction771906 -Ref: String Extraction-Footnote-1772867 -Node: Printf Ordering772953 -Ref: Printf Ordering-Footnote-1775737 -Node: I18N Portability775801 -Ref: I18N Portability-Footnote-1778250 -Node: I18N Example778313 -Ref: I18N Example-Footnote-1780951 -Node: Gawk I18N781023 -Node: Debugger781644 -Node: Debugging782615 -Node: Debugging Concepts783048 -Node: Debugging Terms784904 -Node: Awk Debugging787501 -Node: Sample Debugging Session788393 -Node: Debugger Invocation788913 -Node: Finding The Bug790245 -Node: List of Debugger Commands796733 -Node: Breakpoint Control798067 -Node: Debugger Execution Control801731 -Node: Viewing And Changing Data805091 -Node: Execution Stack808447 -Node: Debugger Info809914 -Node: Miscellaneous Debugger Commands813896 -Node: Readline Support819072 -Node: Limitations819903 -Node: Arbitrary Precision Arithmetic822155 -Ref: Arbitrary Precision Arithmetic-Footnote-1823806 -Node: General Arithmetic823954 -Node: Floating Point Issues825674 -Node: String Conversion Precision826555 -Ref: String Conversion Precision-Footnote-1828260 -Node: Unexpected Results828369 -Node: POSIX Floating Point Problems830522 -Ref: POSIX Floating Point Problems-Footnote-1834347 -Node: Integer Programming834385 -Node: Floating-point Programming836124 -Ref: Floating-point Programming-Footnote-1842455 -Ref: Floating-point Programming-Footnote-2842725 -Node: Floating-point Representation842989 -Node: Floating-point Context844154 -Ref: table-ieee-formats844993 -Node: Rounding Mode846377 -Ref: table-rounding-modes846856 -Ref: Rounding Mode-Footnote-1849871 -Node: Gawk and MPFR850050 -Node: Arbitrary Precision Floats851305 -Ref: Arbitrary Precision Floats-Footnote-1853748 -Node: Setting Precision854064 -Ref: table-predefined-precision-strings854750 -Node: Setting Rounding Mode856895 -Ref: table-gawk-rounding-modes857299 -Node: Floating-point Constants858486 -Node: Changing Precision859915 -Ref: Changing Precision-Footnote-1861315 -Node: Exact Arithmetic861489 -Node: Arbitrary Precision Integers864627 -Ref: Arbitrary Precision Integers-Footnote-1867645 -Node: Dynamic Extensions867792 -Node: Extension Intro869250 -Node: Plugin License870515 -Node: Extension Mechanism Outline871200 -Ref: load-extension871617 -Ref: load-new-function873095 -Ref: call-new-function874090 -Node: Extension API Description876105 -Node: Extension API Functions Introduction877318 -Node: General Data Types882184 -Ref: General Data Types-Footnote-1887786 -Node: Requesting Values888085 -Ref: table-value-types-returned888816 -Node: Constructor Functions889770 -Node: Registration Functions892790 -Node: Extension Functions893475 -Node: Exit Callback Functions895700 -Node: Extension Version String896949 -Node: Input Parsers897599 -Node: Output Wrappers907356 -Node: Two-way processors911866 -Node: Printing Messages914074 -Ref: Printing Messages-Footnote-1915151 -Node: Updating `ERRNO'915303 -Node: Accessing Parameters916042 -Node: Symbol Table Access917272 -Node: Symbol table by name917784 -Node: Symbol table by cookie919531 -Ref: Symbol table by cookie-Footnote-1923661 -Node: Cached values923724 -Ref: Cached values-Footnote-1927173 -Node: Array Manipulation927264 -Ref: Array Manipulation-Footnote-1928362 -Node: Array Data Types928401 -Ref: Array Data Types-Footnote-1931104 -Node: Array Functions931196 -Node: Flattening Arrays934962 -Node: Creating Arrays941814 -Node: Extension API Variables946539 -Node: Extension Versioning947175 -Node: Extension API Informational Variables949076 -Node: Extension API Boilerplate950162 -Node: Finding Extensions953966 -Node: Extension Example954526 -Node: Internal File Description955257 -Node: Internal File Ops959348 -Ref: Internal File Ops-Footnote-1970856 -Node: Using Internal File Ops970996 -Ref: Using Internal File Ops-Footnote-1973349 -Node: Extension Samples973615 -Node: Extension Sample File Functions975139 -Node: Extension Sample Fnmatch983626 -Node: Extension Sample Fork985352 -Node: Extension Sample Inplace986570 -Node: Extension Sample Ord988348 -Node: Extension Sample Readdir989184 -Node: Extension Sample Revout990716 -Node: Extension Sample Rev2way991309 -Node: Extension Sample Read write array991999 -Node: Extension Sample Readfile993882 -Node: Extension Sample API Tests994700 -Node: Extension Sample Time995225 -Node: gawkextlib996589 -Node: Language History999349 -Node: V7/SVR3.11000871 -Node: SVR41003192 -Node: POSIX1004634 -Node: BTL1006020 -Node: POSIX/GNU1006754 -Node: Common Extensions1012289 -Node: Ranges and Locales1013595 -Ref: Ranges and Locales-Footnote-11018213 -Ref: Ranges and Locales-Footnote-21018240 -Ref: Ranges and Locales-Footnote-31018500 -Node: Contributors1018721 -Node: Installation1023600 -Node: Gawk Distribution1024494 -Node: Getting1024978 -Node: Extracting1025804 -Node: Distribution contents1027496 -Node: Unix Installation1032757 -Node: Quick Installation1033374 -Node: Additional Configuration Options1035818 -Node: Configuration Philosophy1037295 -Node: Non-Unix Installation1039649 -Node: PC Installation1040107 -Node: PC Binary Installation1041406 -Node: PC Compiling1043254 -Node: PC Testing1046198 -Node: PC Using1047374 -Node: Cygwin1051559 -Node: MSYS1052559 -Node: VMS Installation1053073 -Node: VMS Compilation1053676 -Ref: VMS Compilation-Footnote-11054683 -Node: VMS Installation Details1054741 -Node: VMS Running1056376 -Node: VMS Old Gawk1057983 -Node: Bugs1058457 -Node: Other Versions1062309 -Node: Notes1068390 -Node: Compatibility Mode1069190 -Node: Additions1069973 -Node: Accessing The Source1070900 -Node: Adding Code1072340 -Node: New Ports1078385 -Node: Derived Files1082520 -Ref: Derived Files-Footnote-11087841 -Ref: Derived Files-Footnote-21087875 -Ref: Derived Files-Footnote-31088475 -Node: Future Extensions1088573 -Node: Implementation Limitations1089154 -Node: Extension Design1090406 -Node: Old Extension Problems1091560 -Ref: Old Extension Problems-Footnote-11093068 -Node: Extension New Mechanism Goals1093125 -Ref: Extension New Mechanism Goals-Footnote-11096491 -Node: Extension Other Design Decisions1096677 -Node: Extension Future Growth1098783 -Node: Old Extension Mechanism1099619 -Node: Basic Concepts1101359 -Node: Basic High Level1102040 -Ref: figure-general-flow1102311 -Ref: figure-process-flow1102910 -Ref: Basic High Level-Footnote-11106139 -Node: Basic Data Typing1106324 -Node: Glossary1109679 -Node: Copying1135141 -Node: GNU Free Documentation License1172698 -Node: Index1197835 +Node: Exit Status136827 +Node: Include Files137502 +Node: Loading Shared Libraries141071 +Node: Obsolete142435 +Node: Undocumented143132 +Node: Regexp143375 +Node: Regexp Usage144764 +Node: Escape Sequences146790 +Node: Regexp Operators152459 +Ref: Regexp Operators-Footnote-1159839 +Ref: Regexp Operators-Footnote-2159986 +Node: Bracket Expressions160084 +Ref: table-char-classes161974 +Node: GNU Regexp Operators164497 +Node: Case-sensitivity168220 +Ref: Case-sensitivity-Footnote-1171188 +Ref: Case-sensitivity-Footnote-2171423 +Node: Leftmost Longest171531 +Node: Computed Regexps172732 +Node: Reading Files176069 +Node: Records178072 +Ref: Records-Footnote-1186961 +Node: Fields186998 +Ref: Fields-Footnote-1190031 +Node: Nonconstant Fields190117 +Node: Changing Fields192319 +Node: Field Separators198278 +Node: Default Field Splitting200907 +Node: Regexp Field Splitting202024 +Node: Single Character Fields205366 +Node: Command Line Field Separator206425 +Node: Field Splitting Summary209866 +Ref: Field Splitting Summary-Footnote-1212977 +Node: Constant Size213078 +Node: Splitting By Content217662 +Ref: Splitting By Content-Footnote-1221388 +Node: Multiple Line221428 +Ref: Multiple Line-Footnote-1227275 +Node: Getline227454 +Node: Plain Getline229670 +Node: Getline/Variable231765 +Node: Getline/File232912 +Node: Getline/Variable/File234253 +Ref: Getline/Variable/File-Footnote-1235852 +Node: Getline/Pipe235939 +Node: Getline/Variable/Pipe238639 +Node: Getline/Coprocess239746 +Node: Getline/Variable/Coprocess240998 +Node: Getline Notes241735 +Node: Getline Summary244522 +Ref: table-getline-variants244930 +Node: Read Timeout245842 +Ref: Read Timeout-Footnote-1249583 +Node: Command line directories249640 +Node: Printing250270 +Node: Print251901 +Node: Print Examples253238 +Node: Output Separators256022 +Node: OFMT257782 +Node: Printf259140 +Node: Basic Printf260046 +Node: Control Letters261585 +Node: Format Modifiers265397 +Node: Printf Examples271406 +Node: Redirection274121 +Node: Special Files281086 +Node: Special FD281619 +Ref: Special FD-Footnote-1285244 +Node: Special Network285318 +Node: Special Caveats286168 +Node: Close Files And Pipes286964 +Ref: Close Files And Pipes-Footnote-1293947 +Ref: Close Files And Pipes-Footnote-2294095 +Node: Expressions294245 +Node: Values295377 +Node: Constants296053 +Node: Scalar Constants296733 +Ref: Scalar Constants-Footnote-1297592 +Node: Nondecimal-numbers297774 +Node: Regexp Constants300774 +Node: Using Constant Regexps301249 +Node: Variables304304 +Node: Using Variables304959 +Node: Assignment Options306683 +Node: Conversion308555 +Ref: table-locale-affects314056 +Ref: Conversion-Footnote-1314680 +Node: All Operators314789 +Node: Arithmetic Ops315419 +Node: Concatenation317924 +Ref: Concatenation-Footnote-1320717 +Node: Assignment Ops320837 +Ref: table-assign-ops325825 +Node: Increment Ops327156 +Node: Truth Values and Conditions330591 +Node: Truth Values331674 +Node: Typing and Comparison332723 +Node: Variable Typing333512 +Ref: Variable Typing-Footnote-1337409 +Node: Comparison Operators337531 +Ref: table-relational-ops337941 +Node: POSIX String Comparison341490 +Ref: POSIX String Comparison-Footnote-1342446 +Node: Boolean Ops342584 +Ref: Boolean Ops-Footnote-1346662 +Node: Conditional Exp346753 +Node: Function Calls348485 +Node: Precedence352079 +Node: Locales355748 +Node: Patterns and Actions356837 +Node: Pattern Overview357891 +Node: Regexp Patterns359560 +Node: Expression Patterns360103 +Node: Ranges363788 +Node: BEGIN/END366754 +Node: Using BEGIN/END367516 +Ref: Using BEGIN/END-Footnote-1370247 +Node: I/O And BEGIN/END370353 +Node: BEGINFILE/ENDFILE372635 +Node: Empty375549 +Node: Using Shell Variables375865 +Node: Action Overview378150 +Node: Statements380507 +Node: If Statement382361 +Node: While Statement383860 +Node: Do Statement385904 +Node: For Statement387060 +Node: Switch Statement390212 +Node: Break Statement392309 +Node: Continue Statement394299 +Node: Next Statement396092 +Node: Nextfile Statement398482 +Node: Exit Statement401125 +Node: Built-in Variables403541 +Node: User-modified404636 +Ref: User-modified-Footnote-1412996 +Node: Auto-set413058 +Ref: Auto-set-Footnote-1426136 +Ref: Auto-set-Footnote-2426341 +Node: ARGC and ARGV426397 +Node: Arrays430248 +Node: Array Basics431753 +Node: Array Intro432579 +Node: Reference to Elements436897 +Node: Assigning Elements439167 +Node: Array Example439658 +Node: Scanning an Array441390 +Node: Controlling Scanning443704 +Ref: Controlling Scanning-Footnote-1448627 +Node: Delete448943 +Ref: Delete-Footnote-1451708 +Node: Numeric Array Subscripts451765 +Node: Uninitialized Subscripts453948 +Node: Multi-dimensional455576 +Node: Multi-scanning458670 +Node: Arrays of Arrays460261 +Node: Functions464902 +Node: Built-in465721 +Node: Calling Built-in466799 +Node: Numeric Functions468787 +Ref: Numeric Functions-Footnote-1472619 +Ref: Numeric Functions-Footnote-2472976 +Ref: Numeric Functions-Footnote-3473024 +Node: String Functions473293 +Ref: String Functions-Footnote-1496851 +Ref: String Functions-Footnote-2496980 +Ref: String Functions-Footnote-3497228 +Node: Gory Details497315 +Ref: table-sub-escapes498994 +Ref: table-sub-posix-92500348 +Ref: table-sub-proposed501699 +Ref: table-posix-sub503053 +Ref: table-gensub-escapes504598 +Ref: Gory Details-Footnote-1505774 +Ref: Gory Details-Footnote-2505825 +Node: I/O Functions505976 +Ref: I/O Functions-Footnote-1512961 +Node: Time Functions513108 +Ref: Time Functions-Footnote-1524041 +Ref: Time Functions-Footnote-2524109 +Ref: Time Functions-Footnote-3524267 +Ref: Time Functions-Footnote-4524378 +Ref: Time Functions-Footnote-5524490 +Ref: Time Functions-Footnote-6524717 +Node: Bitwise Functions524983 +Ref: table-bitwise-ops525541 +Ref: Bitwise Functions-Footnote-1529762 +Node: Type Functions529946 +Node: I18N Functions531097 +Node: User-defined532724 +Node: Definition Syntax533528 +Ref: Definition Syntax-Footnote-1538438 +Node: Function Example538507 +Node: Function Caveats541101 +Node: Calling A Function541522 +Node: Variable Scope542637 +Node: Pass By Value/Reference545600 +Node: Return Statement549108 +Node: Dynamic Typing552089 +Node: Indirect Calls553020 +Node: Library Functions562705 +Ref: Library Functions-Footnote-1566218 +Ref: Library Functions-Footnote-2566361 +Node: Library Names566532 +Ref: Library Names-Footnote-1570003 +Ref: Library Names-Footnote-2570223 +Node: General Functions570309 +Node: Strtonum Function571337 +Node: Assert Function574267 +Node: Round Function577593 +Node: Cliff Random Function579136 +Node: Ordinal Functions580152 +Ref: Ordinal Functions-Footnote-1583222 +Ref: Ordinal Functions-Footnote-2583474 +Node: Join Function583683 +Ref: Join Function-Footnote-1585454 +Node: Getlocaltime Function585654 +Node: Readfile Function589395 +Node: Data File Management591234 +Node: Filetrans Function591866 +Node: Rewind Function595935 +Node: File Checking597322 +Node: Empty Files598416 +Node: Ignoring Assigns600646 +Node: Getopt Function602199 +Ref: Getopt Function-Footnote-1613503 +Node: Passwd Functions613706 +Ref: Passwd Functions-Footnote-1622681 +Node: Group Functions622769 +Node: Walking Arrays630853 +Node: Sample Programs632990 +Node: Running Examples633664 +Node: Clones634392 +Node: Cut Program635616 +Node: Egrep Program645461 +Ref: Egrep Program-Footnote-1653234 +Node: Id Program653344 +Node: Split Program656960 +Ref: Split Program-Footnote-1660479 +Node: Tee Program660607 +Node: Uniq Program663410 +Node: Wc Program670839 +Ref: Wc Program-Footnote-1675105 +Ref: Wc Program-Footnote-2675305 +Node: Miscellaneous Programs675397 +Node: Dupword Program676585 +Node: Alarm Program678616 +Node: Translate Program683365 +Ref: Translate Program-Footnote-1687752 +Ref: Translate Program-Footnote-2687980 +Node: Labels Program688114 +Ref: Labels Program-Footnote-1691485 +Node: Word Sorting691569 +Node: History Sorting695453 +Node: Extract Program697292 +Ref: Extract Program-Footnote-1704793 +Node: Simple Sed704921 +Node: Igawk Program707983 +Ref: Igawk Program-Footnote-1723140 +Ref: Igawk Program-Footnote-2723341 +Node: Anagram Program723479 +Node: Signature Program726547 +Node: Advanced Features727647 +Node: Nondecimal Data729529 +Node: Array Sorting731112 +Node: Controlling Array Traversal731809 +Node: Array Sorting Functions740047 +Ref: Array Sorting Functions-Footnote-1743721 +Ref: Array Sorting Functions-Footnote-2743814 +Node: Two-way I/O744008 +Ref: Two-way I/O-Footnote-1749440 +Node: TCP/IP Networking749510 +Node: Profiling752354 +Node: Internationalization759851 +Node: I18N and L10N761276 +Node: Explaining gettext761962 +Ref: Explaining gettext-Footnote-1767030 +Ref: Explaining gettext-Footnote-2767214 +Node: Programmer i18n767379 +Node: Translator i18n771581 +Node: String Extraction772374 +Ref: String Extraction-Footnote-1773335 +Node: Printf Ordering773421 +Ref: Printf Ordering-Footnote-1776205 +Node: I18N Portability776269 +Ref: I18N Portability-Footnote-1778718 +Node: I18N Example778781 +Ref: I18N Example-Footnote-1781419 +Node: Gawk I18N781491 +Node: Debugger782112 +Node: Debugging783083 +Node: Debugging Concepts783516 +Node: Debugging Terms785372 +Node: Awk Debugging787969 +Node: Sample Debugging Session788861 +Node: Debugger Invocation789381 +Node: Finding The Bug790713 +Node: List of Debugger Commands797201 +Node: Breakpoint Control798535 +Node: Debugger Execution Control802199 +Node: Viewing And Changing Data805559 +Node: Execution Stack808915 +Node: Debugger Info810382 +Node: Miscellaneous Debugger Commands814364 +Node: Readline Support819540 +Node: Limitations820371 +Node: Arbitrary Precision Arithmetic822623 +Ref: Arbitrary Precision Arithmetic-Footnote-1824274 +Node: General Arithmetic824422 +Node: Floating Point Issues826142 +Node: String Conversion Precision827023 +Ref: String Conversion Precision-Footnote-1828728 +Node: Unexpected Results828837 +Node: POSIX Floating Point Problems830990 +Ref: POSIX Floating Point Problems-Footnote-1834815 +Node: Integer Programming834853 +Node: Floating-point Programming836592 +Ref: Floating-point Programming-Footnote-1842923 +Ref: Floating-point Programming-Footnote-2843193 +Node: Floating-point Representation843457 +Node: Floating-point Context844622 +Ref: table-ieee-formats845461 +Node: Rounding Mode846845 +Ref: table-rounding-modes847324 +Ref: Rounding Mode-Footnote-1850339 +Node: Gawk and MPFR850518 +Node: Arbitrary Precision Floats851773 +Ref: Arbitrary Precision Floats-Footnote-1854216 +Node: Setting Precision854532 +Ref: table-predefined-precision-strings855218 +Node: Setting Rounding Mode857363 +Ref: table-gawk-rounding-modes857767 +Node: Floating-point Constants858954 +Node: Changing Precision860383 +Ref: Changing Precision-Footnote-1861783 +Node: Exact Arithmetic861957 +Node: Arbitrary Precision Integers865095 +Ref: Arbitrary Precision Integers-Footnote-1868113 +Node: Dynamic Extensions868260 +Node: Extension Intro869718 +Node: Plugin License870983 +Node: Extension Mechanism Outline871668 +Ref: load-extension872085 +Ref: load-new-function873563 +Ref: call-new-function874558 +Node: Extension API Description876573 +Node: Extension API Functions Introduction877786 +Node: General Data Types882652 +Ref: General Data Types-Footnote-1888254 +Node: Requesting Values888553 +Ref: table-value-types-returned889284 +Node: Constructor Functions890238 +Node: Registration Functions893258 +Node: Extension Functions893943 +Node: Exit Callback Functions896168 +Node: Extension Version String897417 +Node: Input Parsers898067 +Node: Output Wrappers907824 +Node: Two-way processors912334 +Node: Printing Messages914542 +Ref: Printing Messages-Footnote-1915619 +Node: Updating `ERRNO'915771 +Node: Accessing Parameters916510 +Node: Symbol Table Access917740 +Node: Symbol table by name918252 +Node: Symbol table by cookie919999 +Ref: Symbol table by cookie-Footnote-1924129 +Node: Cached values924192 +Ref: Cached values-Footnote-1927641 +Node: Array Manipulation927732 +Ref: Array Manipulation-Footnote-1928830 +Node: Array Data Types928869 +Ref: Array Data Types-Footnote-1931572 +Node: Array Functions931664 +Node: Flattening Arrays935430 +Node: Creating Arrays942282 +Node: Extension API Variables947007 +Node: Extension Versioning947643 +Node: Extension API Informational Variables949544 +Node: Extension API Boilerplate950630 +Node: Finding Extensions954434 +Node: Extension Example954994 +Node: Internal File Description955725 +Node: Internal File Ops959816 +Ref: Internal File Ops-Footnote-1971324 +Node: Using Internal File Ops971464 +Ref: Using Internal File Ops-Footnote-1973817 +Node: Extension Samples974083 +Node: Extension Sample File Functions975607 +Node: Extension Sample Fnmatch984094 +Node: Extension Sample Fork985820 +Node: Extension Sample Inplace987038 +Node: Extension Sample Ord988816 +Node: Extension Sample Readdir989652 +Node: Extension Sample Revout991184 +Node: Extension Sample Rev2way991777 +Node: Extension Sample Read write array992467 +Node: Extension Sample Readfile994350 +Node: Extension Sample API Tests995168 +Node: Extension Sample Time995693 +Node: gawkextlib997057 +Node: Language History999817 +Node: V7/SVR3.11001339 +Node: SVR41003660 +Node: POSIX1005102 +Node: BTL1006488 +Node: POSIX/GNU1007222 +Node: Common Extensions1012757 +Node: Ranges and Locales1014063 +Ref: Ranges and Locales-Footnote-11018681 +Ref: Ranges and Locales-Footnote-21018708 +Ref: Ranges and Locales-Footnote-31018968 +Node: Contributors1019189 +Node: Installation1024068 +Node: Gawk Distribution1024962 +Node: Getting1025446 +Node: Extracting1026272 +Node: Distribution contents1027964 +Node: Unix Installation1033225 +Node: Quick Installation1033842 +Node: Additional Configuration Options1036286 +Node: Configuration Philosophy1037763 +Node: Non-Unix Installation1040117 +Node: PC Installation1040575 +Node: PC Binary Installation1041874 +Node: PC Compiling1043722 +Node: PC Testing1046666 +Node: PC Using1047842 +Node: Cygwin1052027 +Node: MSYS1053027 +Node: VMS Installation1053541 +Node: VMS Compilation1054144 +Ref: VMS Compilation-Footnote-11055151 +Node: VMS Installation Details1055209 +Node: VMS Running1056844 +Node: VMS Old Gawk1058451 +Node: Bugs1058925 +Node: Other Versions1062777 +Node: Notes1068858 +Node: Compatibility Mode1069658 +Node: Additions1070441 +Node: Accessing The Source1071368 +Node: Adding Code1072808 +Node: New Ports1078853 +Node: Derived Files1082988 +Ref: Derived Files-Footnote-11088309 +Ref: Derived Files-Footnote-21088343 +Ref: Derived Files-Footnote-31088943 +Node: Future Extensions1089041 +Node: Implementation Limitations1089622 +Node: Extension Design1090874 +Node: Old Extension Problems1092028 +Ref: Old Extension Problems-Footnote-11093536 +Node: Extension New Mechanism Goals1093593 +Ref: Extension New Mechanism Goals-Footnote-11096959 +Node: Extension Other Design Decisions1097145 +Node: Extension Future Growth1099251 +Node: Old Extension Mechanism1100087 +Node: Basic Concepts1101827 +Node: Basic High Level1102508 +Ref: figure-general-flow1102779 +Ref: figure-process-flow1103378 +Ref: Basic High Level-Footnote-11106607 +Node: Basic Data Typing1106792 +Node: Glossary1110147 +Node: Copying1135609 +Node: GNU Free Documentation License1173166 +Node: Index1198303  End Tag Table -- cgit v1.2.3 From 4e8bd99197f48cfaa79b095a34a88223f96f429d Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Fri, 25 Oct 2013 12:13:26 +0300 Subject: Documentation updates. --- doc/gawk.info | 1097 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 555 insertions(+), 542 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 8fc3b2e9..e9965f69 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -196,7 +196,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b) * Field Splitting Summary:: Some final points and a summary table. * Constant Size:: Reading constant width data. * Splitting By Content:: Defining Fields By Content -* Multiple Line:: Reading multi-line records. +* Multiple Line:: Reading multiline records. * Getline:: Reading files under explicit program control using the `getline' function. @@ -347,9 +347,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b) `awk'. * Uninitialized Subscripts:: Using Uninitialized variables as subscripts. -* Multi-dimensional:: Emulating multidimensional arrays in +* Multidimensional:: Emulating multidimensional arrays in `awk'. -* Multi-scanning:: Scanning multidimensional arrays. +* Multiscanning:: Scanning multidimensional arrays. * Arrays of Arrays:: True multidimensional arrays. * Built-in:: Summarizes the built-in functions. * Calling Built-in:: How to call built-in functions. @@ -1821,7 +1821,7 @@ information). Using this information, create your own `BBS-list' and If you are using the stand-alone version of Info, see *note Extract Program::, for an `awk' program that extracts these data files from -`gawk.texi', the Texinfo source file for this Info file. +`gawk.texi', the (generated) Texinfo source file for this Info file.  File: gawk.info, Node: Very Simple, Next: Two Rules, Prev: Sample Data Files, Up: Getting Started @@ -3889,7 +3889,7 @@ have to be named on the `awk' command line (*note Getline::). * Field Separators:: The field separator and how to change it. * Constant Size:: Reading constant width data. * Splitting By Content:: Defining Fields By Content -* Multiple Line:: Reading multi-line records. +* Multiple Line:: Reading multiline records. * Getline:: Reading files under explicit program control using the `getline' function. * Read Timeout:: Reading input with a timeout. @@ -9508,7 +9508,7 @@ specific to `gawk' are marked with a pound sign (`#'). `FS' This is the input field separator (*note Field Separators::). The - value is a single-character string or a multi-character regular + value is a single-character string or a multicharacter regular expression that matches the separations between fields in an input record. If the value is the null string (`""'), then each character in the record becomes a separate field. (This behavior @@ -9610,7 +9610,7 @@ specific to `gawk' are marked with a pound sign (`#'). This is the subscript separator. It has the default value of `"\034"' and is used to separate the parts of the indices of a multidimensional array. Thus, the expression `foo["A", "B"]' - really accesses `foo["A\034B"]' (*note Multi-dimensional::). + really accesses `foo["A\034B"]' (*note Multidimensional::). `TEXTDOMAIN #' This variable is used for internationalization of programs at the @@ -10101,7 +10101,7 @@ cannot have a variable and an array with the same name in the same * Numeric Array Subscripts:: How to use numbers as subscripts in `awk'. * Uninitialized Subscripts:: Using Uninitialized variables as subscripts. -* Multi-dimensional:: Emulating multidimensional arrays in +* Multidimensional:: Emulating multidimensional arrays in `awk'. * Arrays of Arrays:: True multidimensional arrays. @@ -10682,7 +10682,7 @@ knowledge of the actual rules since they can sometimes have a subtle effect on your programs.  -File: gawk.info, Node: Uninitialized Subscripts, Next: Multi-dimensional, Prev: Numeric Array Subscripts, Up: Arrays +File: gawk.info, Node: Uninitialized Subscripts, Next: Multidimensional, Prev: Numeric Array Subscripts, Up: Arrays 8.4 Using Uninitialized Variables as Subscripts =============================================== @@ -10730,14 +10730,14 @@ string as a subscript if `--lint' is provided on the command line (*note Options::).  -File: gawk.info, Node: Multi-dimensional, Next: Arrays of Arrays, Prev: Uninitialized Subscripts, Up: Arrays +File: gawk.info, Node: Multidimensional, Next: Arrays of Arrays, Prev: Uninitialized Subscripts, Up: Arrays 8.5 Multidimensional Arrays =========================== * Menu: -* Multi-scanning:: Scanning multidimensional arrays. +* Multiscanning:: Scanning multidimensional arrays. A multidimensional array is an array in which an element is identified by a sequence of indices instead of a single index. For @@ -10816,7 +10816,7 @@ the program produces the following output: 3 2 1 6  -File: gawk.info, Node: Multi-scanning, Up: Multi-dimensional +File: gawk.info, Node: Multiscanning, Up: Multidimensional 8.5.1 Scanning Multidimensional Arrays -------------------------------------- @@ -10856,7 +10856,7 @@ The result is to set `separate[1]' to `"1"' and `separate[2]' to recovered.  -File: gawk.info, Node: Arrays of Arrays, Prev: Multi-dimensional, Up: Arrays +File: gawk.info, Node: Arrays of Arrays, Prev: Multidimensional, Up: Arrays 8.6 Arrays of Arrays ==================== @@ -14617,7 +14617,7 @@ characters (*note String Functions::).(1) # a character representing the current option # Private Data: - # _opti -- index in multi-flag option, e.g., -abc + # _opti -- index in multiflag option, e.g., -abc The function starts out with comments presenting a list of the global variables it uses, what the return values are, what they mean, @@ -17198,11 +17198,11 @@ are simply removed. `extract.awk' uses the `join()' library function (*note Join Function::). The example programs in the online Texinfo source for `GAWK: -Effective AWK Programming' (`gawk.texi') have all been bracketed inside -`file' and `endfile' lines. The `gawk' distribution uses a copy of -`extract.awk' to extract the sample programs and install many of them -in a standard directory where `gawk' can find them. The Texinfo file -looks something like this: +Effective AWK Programming' (`gawktexi.in') have all been bracketed +inside `file' and `endfile' lines. The `gawk' distribution uses a copy +of `extract.awk' to extract the sample programs and install many of +them in a standard directory where `gawk' can find them. The Texinfo +file looks something like this: ... This program has a @code{BEGIN} rule, @@ -24323,7 +24323,7 @@ follows: The usage is: The `fts()' function provides a hook to the C library `fts()' routines for traversing file hierarchies. Instead of returning data -about one file at a time in a stream, it fills in a multi-dimensional +about one file at a time in a stream, it fills in a multidimensional array with data about each file and directory encountered in the requested hierarchies. @@ -24418,7 +24418,7 @@ Otherwise it returns -1. lack of a comparison function, since `gawk' already provides powerful array sorting facilities. While an `fts_read()'-like interface could have been provided, this felt less natural than - simply creating a multi-dimensional array to represent the file + simply creating a multidimensional array to represent the file hierarchy and its information. See `test/fts.awk' in the `gawk' distribution for an example. @@ -24956,7 +24956,7 @@ the changes, with cross-references to further details: * Multiple `BEGIN' and `END' rules (*note BEGIN/END::). - * Multidimensional arrays (*note Multi-dimensional::). + * Multidimensional arrays (*note Multidimensional::).  File: gawk.info, Node: SVR4, Next: POSIX, Prev: V7/SVR3.1, Up: Language History @@ -25467,6 +25467,9 @@ Info file, in approximate chronological order: - The modifications to convert `gawk' into a byte-code interpreter, including the debugger. + - The addition of true multidimensional arrays. *note Arrays + of Arrays::. + - The additional modifications for support of arbitrary precision arithmetic. @@ -25477,6 +25480,9 @@ Info file, in approximate chronological order: - Improved array internals for arrays indexed by integers. + - The improved array sorting features were driven by John + together with Pat Rankin. + * Efraim Yawitz contributed the original text for *note Debugger::. * The development of the extension API first released with `gawk' @@ -25665,11 +25671,18 @@ Various `.c', `.y', and `.h' files The `troff' source for a manual page describing `gawk'. This is distributed for the convenience of Unix users. -`doc/gawk.texi' +`doc/gawktexi.in' +`doc/sidebar.awk' The Texinfo source file for this Info file. It should be - processed with TeX (via `texi2dvi' or `texi2pdf') to produce a - printed document, and with `makeinfo' to produce an Info or HTML - file. + processed by `doc/sidebar.awk' before processing with TeX It + should be processed with to produce a printed document, and with + `makeinfo' to produce an Info or HTML file. The `Makefile' takes + care of this processing and produces printable output via + `texi2dvi' or `texi2pdf'. + +`doc/gawk.texi' + The file produced after processing `gawktexi.in' with + `sidebar.awk'. `doc/gawk.info' The generated Info file for this Info file. @@ -25699,6 +25712,7 @@ Various `.c', `.y', and `.h' files `Makefile.in' `aclocal.m4' +`config.guess' `configh.in' `configure.ac' `configure' @@ -27181,7 +27195,7 @@ Some goals for the new API were: fashion for C code. - The ability to create arrays (including `gawk''s true - multi-dimensional arrays). + multidimensional arrays). Some additional important goals were: @@ -29717,8 +29731,8 @@ Index * arrays, IGNORECASE variable and: Array Intro. (line 92) * arrays, indexing: Array Intro. (line 50) * arrays, merging into strings: Join Function. (line 6) -* arrays, multidimensional: Multi-dimensional. (line 10) -* arrays, multidimensional, scanning: Multi-scanning. (line 11) +* arrays, multidimensional: Multidimensional. (line 10) +* arrays, multidimensional, scanning: Multiscanning. (line 11) * arrays, names of: Arrays. (line 18) * arrays, scanning: Scanning an Array. (line 6) * arrays, sorting: Array Sorting Functions. @@ -31669,7 +31683,7 @@ Index * RLENGTH variable, match() function and: String Functions. (line 225) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 32) -* Robbins, Arnold <3>: Contributors. (line 125) +* Robbins, Arnold <3>: Contributors. (line 131) * Robbins, Arnold <4>: Alarm Program. (line 6) * Robbins, Arnold <5>: Passwd Functions. (line 90) * Robbins, Arnold <6>: Getline/Pipe. (line 40) @@ -31709,7 +31723,7 @@ Index (line 68) * sandbox mode: Options. (line 279) * scalar values: Basic Data Typing. (line 13) -* Schorr, Andrew <1>: Contributors. (line 121) +* Schorr, Andrew <1>: Contributors. (line 127) * Schorr, Andrew: Acknowledgments. (line 60) * Schreiber, Bert: Acknowledgments. (line 38) * Schreiber, Rita: Acknowledgments. (line 38) @@ -31907,16 +31921,15 @@ Index * sub() function, arguments of: String Functions. (line 464) * sub() function, escape processing: Gory Details. (line 6) * subscript separators: User-modified. (line 156) -* subscripts in arrays, multidimensional: Multi-dimensional. (line 10) -* subscripts in arrays, multidimensional, scanning: Multi-scanning. +* subscripts in arrays, multidimensional: Multidimensional. (line 10) +* subscripts in arrays, multidimensional, scanning: Multiscanning. (line 11) * subscripts in arrays, numbers as: Numeric Array Subscripts. (line 6) * subscripts in arrays, uninitialized variables as: Uninitialized Subscripts. (line 6) * SUBSEP variable: User-modified. (line 156) -* SUBSEP variable, multidimensional arrays: Multi-dimensional. - (line 16) +* SUBSEP variable, multidimensional arrays: Multidimensional. (line 16) * substr() function: String Functions. (line 483) * Sumner, Andrew: Other Versions. (line 64) * switch statement: Switch Statement. (line 6) @@ -32141,7 +32154,7 @@ Index * xgettext utility: String Extraction. (line 13) * XOR bitwise operation: Bitwise Functions. (line 6) * xor() function (gawk): Bitwise Functions. (line 55) -* Yawitz, Efraim: Contributors. (line 119) +* Yawitz, Efraim: Contributors. (line 125) * Zaretskii, Eli <1>: Bugs. (line 70) * Zaretskii, Eli <2>: Contributors. (line 56) * Zaretskii, Eli: Acknowledgments. (line 60) @@ -32176,457 +32189,457 @@ Index  Tag Table: Node: Top1360 -Node: Foreword40461 -Node: Preface44806 -Ref: Preface-Footnote-147859 -Ref: Preface-Footnote-247955 -Node: History48187 -Node: Names50561 -Ref: Names-Footnote-152038 -Node: This Manual52110 -Ref: This Manual-Footnote-157884 -Node: Conventions57984 -Node: Manual History60136 -Ref: Manual History-Footnote-163584 -Ref: Manual History-Footnote-263625 -Node: How To Contribute63699 -Node: Acknowledgments64843 -Node: Getting Started69052 -Node: Running gawk71431 -Node: One-shot72617 -Node: Read Terminal73842 -Ref: Read Terminal-Footnote-175492 -Ref: Read Terminal-Footnote-275768 -Node: Long75939 -Node: Executable Scripts77315 -Ref: Executable Scripts-Footnote-179148 -Ref: Executable Scripts-Footnote-279250 -Node: Comments79797 -Node: Quoting82264 -Node: DOS Quoting86887 -Node: Sample Data Files87562 -Node: Very Simple90594 -Node: Two Rules95193 -Node: More Complex97340 -Ref: More Complex-Footnote-1100270 -Node: Statements/Lines100355 -Ref: Statements/Lines-Footnote-1104817 -Node: Other Features105082 -Node: When106010 -Node: Invoking Gawk108157 -Node: Command Line109618 -Node: Options110401 -Ref: Options-Footnote-1125793 -Node: Other Arguments125818 -Node: Naming Standard Input128476 -Node: Environment Variables129570 -Node: AWKPATH Variable130128 -Ref: AWKPATH Variable-Footnote-1132886 -Node: AWKLIBPATH Variable133146 -Node: Other Environment Variables133864 -Node: Exit Status136827 -Node: Include Files137502 -Node: Loading Shared Libraries141071 -Node: Obsolete142435 -Node: Undocumented143132 -Node: Regexp143375 -Node: Regexp Usage144764 -Node: Escape Sequences146790 -Node: Regexp Operators152459 -Ref: Regexp Operators-Footnote-1159839 -Ref: Regexp Operators-Footnote-2159986 -Node: Bracket Expressions160084 -Ref: table-char-classes161974 -Node: GNU Regexp Operators164497 -Node: Case-sensitivity168220 -Ref: Case-sensitivity-Footnote-1171188 -Ref: Case-sensitivity-Footnote-2171423 -Node: Leftmost Longest171531 -Node: Computed Regexps172732 -Node: Reading Files176069 -Node: Records178072 -Ref: Records-Footnote-1186961 -Node: Fields186998 -Ref: Fields-Footnote-1190031 -Node: Nonconstant Fields190117 -Node: Changing Fields192319 -Node: Field Separators198278 -Node: Default Field Splitting200907 -Node: Regexp Field Splitting202024 -Node: Single Character Fields205366 -Node: Command Line Field Separator206425 -Node: Field Splitting Summary209866 -Ref: Field Splitting Summary-Footnote-1212977 -Node: Constant Size213078 -Node: Splitting By Content217662 -Ref: Splitting By Content-Footnote-1221388 -Node: Multiple Line221428 -Ref: Multiple Line-Footnote-1227275 -Node: Getline227454 -Node: Plain Getline229670 -Node: Getline/Variable231765 -Node: Getline/File232912 -Node: Getline/Variable/File234253 -Ref: Getline/Variable/File-Footnote-1235852 -Node: Getline/Pipe235939 -Node: Getline/Variable/Pipe238639 -Node: Getline/Coprocess239746 -Node: Getline/Variable/Coprocess240998 -Node: Getline Notes241735 -Node: Getline Summary244522 -Ref: table-getline-variants244930 -Node: Read Timeout245842 -Ref: Read Timeout-Footnote-1249583 -Node: Command line directories249640 -Node: Printing250270 -Node: Print251901 -Node: Print Examples253238 -Node: Output Separators256022 -Node: OFMT257782 -Node: Printf259140 -Node: Basic Printf260046 -Node: Control Letters261585 -Node: Format Modifiers265397 -Node: Printf Examples271406 -Node: Redirection274121 -Node: Special Files281086 -Node: Special FD281619 -Ref: Special FD-Footnote-1285244 -Node: Special Network285318 -Node: Special Caveats286168 -Node: Close Files And Pipes286964 -Ref: Close Files And Pipes-Footnote-1293947 -Ref: Close Files And Pipes-Footnote-2294095 -Node: Expressions294245 -Node: Values295377 -Node: Constants296053 -Node: Scalar Constants296733 -Ref: Scalar Constants-Footnote-1297592 -Node: Nondecimal-numbers297774 -Node: Regexp Constants300774 -Node: Using Constant Regexps301249 -Node: Variables304304 -Node: Using Variables304959 -Node: Assignment Options306683 -Node: Conversion308555 -Ref: table-locale-affects314056 -Ref: Conversion-Footnote-1314680 -Node: All Operators314789 -Node: Arithmetic Ops315419 -Node: Concatenation317924 -Ref: Concatenation-Footnote-1320717 -Node: Assignment Ops320837 -Ref: table-assign-ops325825 -Node: Increment Ops327156 -Node: Truth Values and Conditions330591 -Node: Truth Values331674 -Node: Typing and Comparison332723 -Node: Variable Typing333512 -Ref: Variable Typing-Footnote-1337409 -Node: Comparison Operators337531 -Ref: table-relational-ops337941 -Node: POSIX String Comparison341490 -Ref: POSIX String Comparison-Footnote-1342446 -Node: Boolean Ops342584 -Ref: Boolean Ops-Footnote-1346662 -Node: Conditional Exp346753 -Node: Function Calls348485 -Node: Precedence352079 -Node: Locales355748 -Node: Patterns and Actions356837 -Node: Pattern Overview357891 -Node: Regexp Patterns359560 -Node: Expression Patterns360103 -Node: Ranges363788 -Node: BEGIN/END366754 -Node: Using BEGIN/END367516 -Ref: Using BEGIN/END-Footnote-1370247 -Node: I/O And BEGIN/END370353 -Node: BEGINFILE/ENDFILE372635 -Node: Empty375549 -Node: Using Shell Variables375865 -Node: Action Overview378150 -Node: Statements380507 -Node: If Statement382361 -Node: While Statement383860 -Node: Do Statement385904 -Node: For Statement387060 -Node: Switch Statement390212 -Node: Break Statement392309 -Node: Continue Statement394299 -Node: Next Statement396092 -Node: Nextfile Statement398482 -Node: Exit Statement401125 -Node: Built-in Variables403541 -Node: User-modified404636 -Ref: User-modified-Footnote-1412996 -Node: Auto-set413058 -Ref: Auto-set-Footnote-1426136 -Ref: Auto-set-Footnote-2426341 -Node: ARGC and ARGV426397 -Node: Arrays430248 -Node: Array Basics431753 -Node: Array Intro432579 -Node: Reference to Elements436897 -Node: Assigning Elements439167 -Node: Array Example439658 -Node: Scanning an Array441390 -Node: Controlling Scanning443704 -Ref: Controlling Scanning-Footnote-1448627 -Node: Delete448943 -Ref: Delete-Footnote-1451708 -Node: Numeric Array Subscripts451765 -Node: Uninitialized Subscripts453948 -Node: Multi-dimensional455576 -Node: Multi-scanning458670 -Node: Arrays of Arrays460261 -Node: Functions464902 -Node: Built-in465721 -Node: Calling Built-in466799 -Node: Numeric Functions468787 -Ref: Numeric Functions-Footnote-1472619 -Ref: Numeric Functions-Footnote-2472976 -Ref: Numeric Functions-Footnote-3473024 -Node: String Functions473293 -Ref: String Functions-Footnote-1496851 -Ref: String Functions-Footnote-2496980 -Ref: String Functions-Footnote-3497228 -Node: Gory Details497315 -Ref: table-sub-escapes498994 -Ref: table-sub-posix-92500348 -Ref: table-sub-proposed501699 -Ref: table-posix-sub503053 -Ref: table-gensub-escapes504598 -Ref: Gory Details-Footnote-1505774 -Ref: Gory Details-Footnote-2505825 -Node: I/O Functions505976 -Ref: I/O Functions-Footnote-1512961 -Node: Time Functions513108 -Ref: Time Functions-Footnote-1524041 -Ref: Time Functions-Footnote-2524109 -Ref: Time Functions-Footnote-3524267 -Ref: Time Functions-Footnote-4524378 -Ref: Time Functions-Footnote-5524490 -Ref: Time Functions-Footnote-6524717 -Node: Bitwise Functions524983 -Ref: table-bitwise-ops525541 -Ref: Bitwise Functions-Footnote-1529762 -Node: Type Functions529946 -Node: I18N Functions531097 -Node: User-defined532724 -Node: Definition Syntax533528 -Ref: Definition Syntax-Footnote-1538438 -Node: Function Example538507 -Node: Function Caveats541101 -Node: Calling A Function541522 -Node: Variable Scope542637 -Node: Pass By Value/Reference545600 -Node: Return Statement549108 -Node: Dynamic Typing552089 -Node: Indirect Calls553020 -Node: Library Functions562705 -Ref: Library Functions-Footnote-1566218 -Ref: Library Functions-Footnote-2566361 -Node: Library Names566532 -Ref: Library Names-Footnote-1570003 -Ref: Library Names-Footnote-2570223 -Node: General Functions570309 -Node: Strtonum Function571337 -Node: Assert Function574267 -Node: Round Function577593 -Node: Cliff Random Function579136 -Node: Ordinal Functions580152 -Ref: Ordinal Functions-Footnote-1583222 -Ref: Ordinal Functions-Footnote-2583474 -Node: Join Function583683 -Ref: Join Function-Footnote-1585454 -Node: Getlocaltime Function585654 -Node: Readfile Function589395 -Node: Data File Management591234 -Node: Filetrans Function591866 -Node: Rewind Function595935 -Node: File Checking597322 -Node: Empty Files598416 -Node: Ignoring Assigns600646 -Node: Getopt Function602199 -Ref: Getopt Function-Footnote-1613503 -Node: Passwd Functions613706 -Ref: Passwd Functions-Footnote-1622681 -Node: Group Functions622769 -Node: Walking Arrays630853 -Node: Sample Programs632990 -Node: Running Examples633664 -Node: Clones634392 -Node: Cut Program635616 -Node: Egrep Program645461 -Ref: Egrep Program-Footnote-1653234 -Node: Id Program653344 -Node: Split Program656960 -Ref: Split Program-Footnote-1660479 -Node: Tee Program660607 -Node: Uniq Program663410 -Node: Wc Program670839 -Ref: Wc Program-Footnote-1675105 -Ref: Wc Program-Footnote-2675305 -Node: Miscellaneous Programs675397 -Node: Dupword Program676585 -Node: Alarm Program678616 -Node: Translate Program683365 -Ref: Translate Program-Footnote-1687752 -Ref: Translate Program-Footnote-2687980 -Node: Labels Program688114 -Ref: Labels Program-Footnote-1691485 -Node: Word Sorting691569 -Node: History Sorting695453 -Node: Extract Program697292 -Ref: Extract Program-Footnote-1704793 -Node: Simple Sed704921 -Node: Igawk Program707983 -Ref: Igawk Program-Footnote-1723140 -Ref: Igawk Program-Footnote-2723341 -Node: Anagram Program723479 -Node: Signature Program726547 -Node: Advanced Features727647 -Node: Nondecimal Data729529 -Node: Array Sorting731112 -Node: Controlling Array Traversal731809 -Node: Array Sorting Functions740047 -Ref: Array Sorting Functions-Footnote-1743721 -Ref: Array Sorting Functions-Footnote-2743814 -Node: Two-way I/O744008 -Ref: Two-way I/O-Footnote-1749440 -Node: TCP/IP Networking749510 -Node: Profiling752354 -Node: Internationalization759851 -Node: I18N and L10N761276 -Node: Explaining gettext761962 -Ref: Explaining gettext-Footnote-1767030 -Ref: Explaining gettext-Footnote-2767214 -Node: Programmer i18n767379 -Node: Translator i18n771581 -Node: String Extraction772374 -Ref: String Extraction-Footnote-1773335 -Node: Printf Ordering773421 -Ref: Printf Ordering-Footnote-1776205 -Node: I18N Portability776269 -Ref: I18N Portability-Footnote-1778718 -Node: I18N Example778781 -Ref: I18N Example-Footnote-1781419 -Node: Gawk I18N781491 -Node: Debugger782112 -Node: Debugging783083 -Node: Debugging Concepts783516 -Node: Debugging Terms785372 -Node: Awk Debugging787969 -Node: Sample Debugging Session788861 -Node: Debugger Invocation789381 -Node: Finding The Bug790713 -Node: List of Debugger Commands797201 -Node: Breakpoint Control798535 -Node: Debugger Execution Control802199 -Node: Viewing And Changing Data805559 -Node: Execution Stack808915 -Node: Debugger Info810382 -Node: Miscellaneous Debugger Commands814364 -Node: Readline Support819540 -Node: Limitations820371 -Node: Arbitrary Precision Arithmetic822623 -Ref: Arbitrary Precision Arithmetic-Footnote-1824274 -Node: General Arithmetic824422 -Node: Floating Point Issues826142 -Node: String Conversion Precision827023 -Ref: String Conversion Precision-Footnote-1828728 -Node: Unexpected Results828837 -Node: POSIX Floating Point Problems830990 -Ref: POSIX Floating Point Problems-Footnote-1834815 -Node: Integer Programming834853 -Node: Floating-point Programming836592 -Ref: Floating-point Programming-Footnote-1842923 -Ref: Floating-point Programming-Footnote-2843193 -Node: Floating-point Representation843457 -Node: Floating-point Context844622 -Ref: table-ieee-formats845461 -Node: Rounding Mode846845 -Ref: table-rounding-modes847324 -Ref: Rounding Mode-Footnote-1850339 -Node: Gawk and MPFR850518 -Node: Arbitrary Precision Floats851773 -Ref: Arbitrary Precision Floats-Footnote-1854216 -Node: Setting Precision854532 -Ref: table-predefined-precision-strings855218 -Node: Setting Rounding Mode857363 -Ref: table-gawk-rounding-modes857767 -Node: Floating-point Constants858954 -Node: Changing Precision860383 -Ref: Changing Precision-Footnote-1861783 -Node: Exact Arithmetic861957 -Node: Arbitrary Precision Integers865095 -Ref: Arbitrary Precision Integers-Footnote-1868113 -Node: Dynamic Extensions868260 -Node: Extension Intro869718 -Node: Plugin License870983 -Node: Extension Mechanism Outline871668 -Ref: load-extension872085 -Ref: load-new-function873563 -Ref: call-new-function874558 -Node: Extension API Description876573 -Node: Extension API Functions Introduction877786 -Node: General Data Types882652 -Ref: General Data Types-Footnote-1888254 -Node: Requesting Values888553 -Ref: table-value-types-returned889284 -Node: Constructor Functions890238 -Node: Registration Functions893258 -Node: Extension Functions893943 -Node: Exit Callback Functions896168 -Node: Extension Version String897417 -Node: Input Parsers898067 -Node: Output Wrappers907824 -Node: Two-way processors912334 -Node: Printing Messages914542 -Ref: Printing Messages-Footnote-1915619 -Node: Updating `ERRNO'915771 -Node: Accessing Parameters916510 -Node: Symbol Table Access917740 -Node: Symbol table by name918252 -Node: Symbol table by cookie919999 -Ref: Symbol table by cookie-Footnote-1924129 -Node: Cached values924192 -Ref: Cached values-Footnote-1927641 -Node: Array Manipulation927732 -Ref: Array Manipulation-Footnote-1928830 -Node: Array Data Types928869 -Ref: Array Data Types-Footnote-1931572 -Node: Array Functions931664 -Node: Flattening Arrays935430 -Node: Creating Arrays942282 -Node: Extension API Variables947007 -Node: Extension Versioning947643 -Node: Extension API Informational Variables949544 -Node: Extension API Boilerplate950630 -Node: Finding Extensions954434 -Node: Extension Example954994 -Node: Internal File Description955725 -Node: Internal File Ops959816 -Ref: Internal File Ops-Footnote-1971324 -Node: Using Internal File Ops971464 -Ref: Using Internal File Ops-Footnote-1973817 -Node: Extension Samples974083 -Node: Extension Sample File Functions975607 -Node: Extension Sample Fnmatch984094 -Node: Extension Sample Fork985820 -Node: Extension Sample Inplace987038 -Node: Extension Sample Ord988816 -Node: Extension Sample Readdir989652 -Node: Extension Sample Revout991184 -Node: Extension Sample Rev2way991777 -Node: Extension Sample Read write array992467 -Node: Extension Sample Readfile994350 -Node: Extension Sample API Tests995168 -Node: Extension Sample Time995693 -Node: gawkextlib997057 -Node: Language History999817 -Node: V7/SVR3.11001339 +Node: Foreword40460 +Node: Preface44805 +Ref: Preface-Footnote-147858 +Ref: Preface-Footnote-247954 +Node: History48186 +Node: Names50560 +Ref: Names-Footnote-152037 +Node: This Manual52109 +Ref: This Manual-Footnote-157883 +Node: Conventions57983 +Node: Manual History60135 +Ref: Manual History-Footnote-163583 +Ref: Manual History-Footnote-263624 +Node: How To Contribute63698 +Node: Acknowledgments64842 +Node: Getting Started69051 +Node: Running gawk71430 +Node: One-shot72616 +Node: Read Terminal73841 +Ref: Read Terminal-Footnote-175491 +Ref: Read Terminal-Footnote-275767 +Node: Long75938 +Node: Executable Scripts77314 +Ref: Executable Scripts-Footnote-179147 +Ref: Executable Scripts-Footnote-279249 +Node: Comments79796 +Node: Quoting82263 +Node: DOS Quoting86886 +Node: Sample Data Files87561 +Node: Very Simple90605 +Node: Two Rules95204 +Node: More Complex97351 +Ref: More Complex-Footnote-1100281 +Node: Statements/Lines100366 +Ref: Statements/Lines-Footnote-1104828 +Node: Other Features105093 +Node: When106021 +Node: Invoking Gawk108168 +Node: Command Line109629 +Node: Options110412 +Ref: Options-Footnote-1125804 +Node: Other Arguments125829 +Node: Naming Standard Input128487 +Node: Environment Variables129581 +Node: AWKPATH Variable130139 +Ref: AWKPATH Variable-Footnote-1132897 +Node: AWKLIBPATH Variable133157 +Node: Other Environment Variables133875 +Node: Exit Status136838 +Node: Include Files137513 +Node: Loading Shared Libraries141082 +Node: Obsolete142446 +Node: Undocumented143143 +Node: Regexp143386 +Node: Regexp Usage144775 +Node: Escape Sequences146801 +Node: Regexp Operators152470 +Ref: Regexp Operators-Footnote-1159850 +Ref: Regexp Operators-Footnote-2159997 +Node: Bracket Expressions160095 +Ref: table-char-classes161985 +Node: GNU Regexp Operators164508 +Node: Case-sensitivity168231 +Ref: Case-sensitivity-Footnote-1171199 +Ref: Case-sensitivity-Footnote-2171434 +Node: Leftmost Longest171542 +Node: Computed Regexps172743 +Node: Reading Files176080 +Node: Records178082 +Ref: Records-Footnote-1186971 +Node: Fields187008 +Ref: Fields-Footnote-1190041 +Node: Nonconstant Fields190127 +Node: Changing Fields192329 +Node: Field Separators198288 +Node: Default Field Splitting200917 +Node: Regexp Field Splitting202034 +Node: Single Character Fields205376 +Node: Command Line Field Separator206435 +Node: Field Splitting Summary209876 +Ref: Field Splitting Summary-Footnote-1212987 +Node: Constant Size213088 +Node: Splitting By Content217672 +Ref: Splitting By Content-Footnote-1221398 +Node: Multiple Line221438 +Ref: Multiple Line-Footnote-1227285 +Node: Getline227464 +Node: Plain Getline229680 +Node: Getline/Variable231775 +Node: Getline/File232922 +Node: Getline/Variable/File234263 +Ref: Getline/Variable/File-Footnote-1235862 +Node: Getline/Pipe235949 +Node: Getline/Variable/Pipe238649 +Node: Getline/Coprocess239756 +Node: Getline/Variable/Coprocess241008 +Node: Getline Notes241745 +Node: Getline Summary244532 +Ref: table-getline-variants244940 +Node: Read Timeout245852 +Ref: Read Timeout-Footnote-1249593 +Node: Command line directories249650 +Node: Printing250280 +Node: Print251911 +Node: Print Examples253248 +Node: Output Separators256032 +Node: OFMT257792 +Node: Printf259150 +Node: Basic Printf260056 +Node: Control Letters261595 +Node: Format Modifiers265407 +Node: Printf Examples271416 +Node: Redirection274131 +Node: Special Files281096 +Node: Special FD281629 +Ref: Special FD-Footnote-1285254 +Node: Special Network285328 +Node: Special Caveats286178 +Node: Close Files And Pipes286974 +Ref: Close Files And Pipes-Footnote-1293957 +Ref: Close Files And Pipes-Footnote-2294105 +Node: Expressions294255 +Node: Values295387 +Node: Constants296063 +Node: Scalar Constants296743 +Ref: Scalar Constants-Footnote-1297602 +Node: Nondecimal-numbers297784 +Node: Regexp Constants300784 +Node: Using Constant Regexps301259 +Node: Variables304314 +Node: Using Variables304969 +Node: Assignment Options306693 +Node: Conversion308565 +Ref: table-locale-affects314066 +Ref: Conversion-Footnote-1314690 +Node: All Operators314799 +Node: Arithmetic Ops315429 +Node: Concatenation317934 +Ref: Concatenation-Footnote-1320727 +Node: Assignment Ops320847 +Ref: table-assign-ops325835 +Node: Increment Ops327166 +Node: Truth Values and Conditions330601 +Node: Truth Values331684 +Node: Typing and Comparison332733 +Node: Variable Typing333522 +Ref: Variable Typing-Footnote-1337419 +Node: Comparison Operators337541 +Ref: table-relational-ops337951 +Node: POSIX String Comparison341500 +Ref: POSIX String Comparison-Footnote-1342456 +Node: Boolean Ops342594 +Ref: Boolean Ops-Footnote-1346672 +Node: Conditional Exp346763 +Node: Function Calls348495 +Node: Precedence352089 +Node: Locales355758 +Node: Patterns and Actions356847 +Node: Pattern Overview357901 +Node: Regexp Patterns359570 +Node: Expression Patterns360113 +Node: Ranges363798 +Node: BEGIN/END366764 +Node: Using BEGIN/END367526 +Ref: Using BEGIN/END-Footnote-1370257 +Node: I/O And BEGIN/END370363 +Node: BEGINFILE/ENDFILE372645 +Node: Empty375559 +Node: Using Shell Variables375875 +Node: Action Overview378160 +Node: Statements380517 +Node: If Statement382371 +Node: While Statement383870 +Node: Do Statement385914 +Node: For Statement387070 +Node: Switch Statement390222 +Node: Break Statement392319 +Node: Continue Statement394309 +Node: Next Statement396102 +Node: Nextfile Statement398492 +Node: Exit Statement401135 +Node: Built-in Variables403551 +Node: User-modified404646 +Ref: User-modified-Footnote-1413004 +Node: Auto-set413066 +Ref: Auto-set-Footnote-1426144 +Ref: Auto-set-Footnote-2426349 +Node: ARGC and ARGV426405 +Node: Arrays430256 +Node: Array Basics431761 +Node: Array Intro432587 +Node: Reference to Elements436905 +Node: Assigning Elements439175 +Node: Array Example439666 +Node: Scanning an Array441398 +Node: Controlling Scanning443712 +Ref: Controlling Scanning-Footnote-1448635 +Node: Delete448951 +Ref: Delete-Footnote-1451716 +Node: Numeric Array Subscripts451773 +Node: Uninitialized Subscripts453956 +Node: Multidimensional455583 +Node: Multiscanning458675 +Node: Arrays of Arrays460264 +Node: Functions464904 +Node: Built-in465723 +Node: Calling Built-in466801 +Node: Numeric Functions468789 +Ref: Numeric Functions-Footnote-1472621 +Ref: Numeric Functions-Footnote-2472978 +Ref: Numeric Functions-Footnote-3473026 +Node: String Functions473295 +Ref: String Functions-Footnote-1496853 +Ref: String Functions-Footnote-2496982 +Ref: String Functions-Footnote-3497230 +Node: Gory Details497317 +Ref: table-sub-escapes498996 +Ref: table-sub-posix-92500350 +Ref: table-sub-proposed501701 +Ref: table-posix-sub503055 +Ref: table-gensub-escapes504600 +Ref: Gory Details-Footnote-1505776 +Ref: Gory Details-Footnote-2505827 +Node: I/O Functions505978 +Ref: I/O Functions-Footnote-1512963 +Node: Time Functions513110 +Ref: Time Functions-Footnote-1524043 +Ref: Time Functions-Footnote-2524111 +Ref: Time Functions-Footnote-3524269 +Ref: Time Functions-Footnote-4524380 +Ref: Time Functions-Footnote-5524492 +Ref: Time Functions-Footnote-6524719 +Node: Bitwise Functions524985 +Ref: table-bitwise-ops525543 +Ref: Bitwise Functions-Footnote-1529764 +Node: Type Functions529948 +Node: I18N Functions531099 +Node: User-defined532726 +Node: Definition Syntax533530 +Ref: Definition Syntax-Footnote-1538440 +Node: Function Example538509 +Node: Function Caveats541103 +Node: Calling A Function541524 +Node: Variable Scope542639 +Node: Pass By Value/Reference545602 +Node: Return Statement549110 +Node: Dynamic Typing552091 +Node: Indirect Calls553022 +Node: Library Functions562707 +Ref: Library Functions-Footnote-1566220 +Ref: Library Functions-Footnote-2566363 +Node: Library Names566534 +Ref: Library Names-Footnote-1570005 +Ref: Library Names-Footnote-2570225 +Node: General Functions570311 +Node: Strtonum Function571339 +Node: Assert Function574269 +Node: Round Function577595 +Node: Cliff Random Function579138 +Node: Ordinal Functions580154 +Ref: Ordinal Functions-Footnote-1583224 +Ref: Ordinal Functions-Footnote-2583476 +Node: Join Function583685 +Ref: Join Function-Footnote-1585456 +Node: Getlocaltime Function585656 +Node: Readfile Function589397 +Node: Data File Management591236 +Node: Filetrans Function591868 +Node: Rewind Function595937 +Node: File Checking597324 +Node: Empty Files598418 +Node: Ignoring Assigns600648 +Node: Getopt Function602201 +Ref: Getopt Function-Footnote-1613504 +Node: Passwd Functions613707 +Ref: Passwd Functions-Footnote-1622682 +Node: Group Functions622770 +Node: Walking Arrays630854 +Node: Sample Programs632991 +Node: Running Examples633665 +Node: Clones634393 +Node: Cut Program635617 +Node: Egrep Program645462 +Ref: Egrep Program-Footnote-1653235 +Node: Id Program653345 +Node: Split Program656961 +Ref: Split Program-Footnote-1660480 +Node: Tee Program660608 +Node: Uniq Program663411 +Node: Wc Program670840 +Ref: Wc Program-Footnote-1675106 +Ref: Wc Program-Footnote-2675306 +Node: Miscellaneous Programs675398 +Node: Dupword Program676586 +Node: Alarm Program678617 +Node: Translate Program683366 +Ref: Translate Program-Footnote-1687753 +Ref: Translate Program-Footnote-2687981 +Node: Labels Program688115 +Ref: Labels Program-Footnote-1691486 +Node: Word Sorting691570 +Node: History Sorting695454 +Node: Extract Program697293 +Ref: Extract Program-Footnote-1704796 +Node: Simple Sed704924 +Node: Igawk Program707986 +Ref: Igawk Program-Footnote-1723143 +Ref: Igawk Program-Footnote-2723344 +Node: Anagram Program723482 +Node: Signature Program726550 +Node: Advanced Features727650 +Node: Nondecimal Data729532 +Node: Array Sorting731115 +Node: Controlling Array Traversal731812 +Node: Array Sorting Functions740050 +Ref: Array Sorting Functions-Footnote-1743724 +Ref: Array Sorting Functions-Footnote-2743817 +Node: Two-way I/O744011 +Ref: Two-way I/O-Footnote-1749443 +Node: TCP/IP Networking749513 +Node: Profiling752357 +Node: Internationalization759854 +Node: I18N and L10N761279 +Node: Explaining gettext761965 +Ref: Explaining gettext-Footnote-1767033 +Ref: Explaining gettext-Footnote-2767217 +Node: Programmer i18n767382 +Node: Translator i18n771584 +Node: String Extraction772377 +Ref: String Extraction-Footnote-1773338 +Node: Printf Ordering773424 +Ref: Printf Ordering-Footnote-1776208 +Node: I18N Portability776272 +Ref: I18N Portability-Footnote-1778721 +Node: I18N Example778784 +Ref: I18N Example-Footnote-1781422 +Node: Gawk I18N781494 +Node: Debugger782115 +Node: Debugging783086 +Node: Debugging Concepts783519 +Node: Debugging Terms785375 +Node: Awk Debugging787972 +Node: Sample Debugging Session788864 +Node: Debugger Invocation789384 +Node: Finding The Bug790716 +Node: List of Debugger Commands797204 +Node: Breakpoint Control798538 +Node: Debugger Execution Control802202 +Node: Viewing And Changing Data805562 +Node: Execution Stack808918 +Node: Debugger Info810385 +Node: Miscellaneous Debugger Commands814367 +Node: Readline Support819543 +Node: Limitations820374 +Node: Arbitrary Precision Arithmetic822626 +Ref: Arbitrary Precision Arithmetic-Footnote-1824277 +Node: General Arithmetic824425 +Node: Floating Point Issues826145 +Node: String Conversion Precision827026 +Ref: String Conversion Precision-Footnote-1828731 +Node: Unexpected Results828840 +Node: POSIX Floating Point Problems830993 +Ref: POSIX Floating Point Problems-Footnote-1834818 +Node: Integer Programming834856 +Node: Floating-point Programming836595 +Ref: Floating-point Programming-Footnote-1842926 +Ref: Floating-point Programming-Footnote-2843196 +Node: Floating-point Representation843460 +Node: Floating-point Context844625 +Ref: table-ieee-formats845464 +Node: Rounding Mode846848 +Ref: table-rounding-modes847327 +Ref: Rounding Mode-Footnote-1850342 +Node: Gawk and MPFR850521 +Node: Arbitrary Precision Floats851776 +Ref: Arbitrary Precision Floats-Footnote-1854219 +Node: Setting Precision854535 +Ref: table-predefined-precision-strings855221 +Node: Setting Rounding Mode857366 +Ref: table-gawk-rounding-modes857770 +Node: Floating-point Constants858957 +Node: Changing Precision860386 +Ref: Changing Precision-Footnote-1861786 +Node: Exact Arithmetic861960 +Node: Arbitrary Precision Integers865098 +Ref: Arbitrary Precision Integers-Footnote-1868116 +Node: Dynamic Extensions868263 +Node: Extension Intro869721 +Node: Plugin License870986 +Node: Extension Mechanism Outline871671 +Ref: load-extension872088 +Ref: load-new-function873566 +Ref: call-new-function874561 +Node: Extension API Description876576 +Node: Extension API Functions Introduction877789 +Node: General Data Types882655 +Ref: General Data Types-Footnote-1888257 +Node: Requesting Values888556 +Ref: table-value-types-returned889287 +Node: Constructor Functions890241 +Node: Registration Functions893261 +Node: Extension Functions893946 +Node: Exit Callback Functions896171 +Node: Extension Version String897420 +Node: Input Parsers898070 +Node: Output Wrappers907827 +Node: Two-way processors912337 +Node: Printing Messages914545 +Ref: Printing Messages-Footnote-1915622 +Node: Updating `ERRNO'915774 +Node: Accessing Parameters916513 +Node: Symbol Table Access917743 +Node: Symbol table by name918255 +Node: Symbol table by cookie920002 +Ref: Symbol table by cookie-Footnote-1924132 +Node: Cached values924195 +Ref: Cached values-Footnote-1927644 +Node: Array Manipulation927735 +Ref: Array Manipulation-Footnote-1928833 +Node: Array Data Types928872 +Ref: Array Data Types-Footnote-1931575 +Node: Array Functions931667 +Node: Flattening Arrays935433 +Node: Creating Arrays942285 +Node: Extension API Variables947010 +Node: Extension Versioning947646 +Node: Extension API Informational Variables949547 +Node: Extension API Boilerplate950633 +Node: Finding Extensions954437 +Node: Extension Example954997 +Node: Internal File Description955728 +Node: Internal File Ops959819 +Ref: Internal File Ops-Footnote-1971327 +Node: Using Internal File Ops971467 +Ref: Using Internal File Ops-Footnote-1973820 +Node: Extension Samples974086 +Node: Extension Sample File Functions975610 +Node: Extension Sample Fnmatch984095 +Node: Extension Sample Fork985821 +Node: Extension Sample Inplace987039 +Node: Extension Sample Ord988817 +Node: Extension Sample Readdir989653 +Node: Extension Sample Revout991185 +Node: Extension Sample Rev2way991778 +Node: Extension Sample Read write array992468 +Node: Extension Sample Readfile994351 +Node: Extension Sample API Tests995169 +Node: Extension Sample Time995694 +Node: gawkextlib997058 +Node: Language History999818 +Node: V7/SVR3.11001340 Node: SVR41003660 Node: POSIX1005102 Node: BTL1006488 @@ -32637,60 +32650,60 @@ Ref: Ranges and Locales-Footnote-11018681 Ref: Ranges and Locales-Footnote-21018708 Ref: Ranges and Locales-Footnote-31018968 Node: Contributors1019189 -Node: Installation1024068 -Node: Gawk Distribution1024962 -Node: Getting1025446 -Node: Extracting1026272 -Node: Distribution contents1027964 -Node: Unix Installation1033225 -Node: Quick Installation1033842 -Node: Additional Configuration Options1036286 -Node: Configuration Philosophy1037763 -Node: Non-Unix Installation1040117 -Node: PC Installation1040575 -Node: PC Binary Installation1041874 -Node: PC Compiling1043722 -Node: PC Testing1046666 -Node: PC Using1047842 -Node: Cygwin1052027 -Node: MSYS1053027 -Node: VMS Installation1053541 -Node: VMS Compilation1054144 -Ref: VMS Compilation-Footnote-11055151 -Node: VMS Installation Details1055209 -Node: VMS Running1056844 -Node: VMS Old Gawk1058451 -Node: Bugs1058925 -Node: Other Versions1062777 -Node: Notes1068858 -Node: Compatibility Mode1069658 -Node: Additions1070441 -Node: Accessing The Source1071368 -Node: Adding Code1072808 -Node: New Ports1078853 -Node: Derived Files1082988 -Ref: Derived Files-Footnote-11088309 -Ref: Derived Files-Footnote-21088343 -Ref: Derived Files-Footnote-31088943 -Node: Future Extensions1089041 -Node: Implementation Limitations1089622 -Node: Extension Design1090874 -Node: Old Extension Problems1092028 -Ref: Old Extension Problems-Footnote-11093536 -Node: Extension New Mechanism Goals1093593 -Ref: Extension New Mechanism Goals-Footnote-11096959 -Node: Extension Other Design Decisions1097145 -Node: Extension Future Growth1099251 -Node: Old Extension Mechanism1100087 -Node: Basic Concepts1101827 -Node: Basic High Level1102508 -Ref: figure-general-flow1102779 -Ref: figure-process-flow1103378 -Ref: Basic High Level-Footnote-11106607 -Node: Basic Data Typing1106792 -Node: Glossary1110147 -Node: Copying1135609 -Node: GNU Free Documentation License1173166 -Node: Index1198303 +Node: Installation1024265 +Node: Gawk Distribution1025159 +Node: Getting1025643 +Node: Extracting1026469 +Node: Distribution contents1028161 +Node: Unix Installation1033705 +Node: Quick Installation1034322 +Node: Additional Configuration Options1036766 +Node: Configuration Philosophy1038243 +Node: Non-Unix Installation1040597 +Node: PC Installation1041055 +Node: PC Binary Installation1042354 +Node: PC Compiling1044202 +Node: PC Testing1047146 +Node: PC Using1048322 +Node: Cygwin1052507 +Node: MSYS1053507 +Node: VMS Installation1054021 +Node: VMS Compilation1054624 +Ref: VMS Compilation-Footnote-11055631 +Node: VMS Installation Details1055689 +Node: VMS Running1057324 +Node: VMS Old Gawk1058931 +Node: Bugs1059405 +Node: Other Versions1063257 +Node: Notes1069338 +Node: Compatibility Mode1070138 +Node: Additions1070921 +Node: Accessing The Source1071848 +Node: Adding Code1073288 +Node: New Ports1079333 +Node: Derived Files1083468 +Ref: Derived Files-Footnote-11088789 +Ref: Derived Files-Footnote-21088823 +Ref: Derived Files-Footnote-31089423 +Node: Future Extensions1089521 +Node: Implementation Limitations1090102 +Node: Extension Design1091354 +Node: Old Extension Problems1092508 +Ref: Old Extension Problems-Footnote-11094016 +Node: Extension New Mechanism Goals1094073 +Ref: Extension New Mechanism Goals-Footnote-11097438 +Node: Extension Other Design Decisions1097624 +Node: Extension Future Growth1099730 +Node: Old Extension Mechanism1100566 +Node: Basic Concepts1102306 +Node: Basic High Level1102987 +Ref: figure-general-flow1103258 +Ref: figure-process-flow1103857 +Ref: Basic High Level-Footnote-11107086 +Node: Basic Data Typing1107271 +Node: Glossary1110626 +Node: Copying1136088 +Node: GNU Free Documentation License1173645 +Node: Index1198782  End Tag Table -- cgit v1.2.3 From 07aa3d5dafee42fcaa3eaa0370a187c5cb53570e Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Sun, 3 Nov 2013 22:15:37 +0200 Subject: Doc fixes. --- doc/gawk.info | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index e9965f69..efd6af7c 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -1081,7 +1081,7 @@ by first pressing and holding the `CONTROL' key, next pressing the `d' key and finally releasing both keys. Dark Corners -............ +------------ Dark corners are basically fractal -- no matter how much you illuminate, there's always a smaller but darker one. -- cgit v1.2.3 From 733c86921bbd3bbeb63adce2a242a73236556ada Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Fri, 8 Nov 2013 10:03:01 +0200 Subject: Doc updates on distribution contents. --- doc/gawk.info | 142 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 72 insertions(+), 70 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index efd6af7c..0bbd7728 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -25605,6 +25605,13 @@ to different non-Unix operating systems: Various `.c', `.y', and `.h' files The actual `gawk' source code. +`ABOUT-NLS' + Information about GNU `gettext' and translations. + +`AUTHORS' + A file with some information about the authorship of `gawk'. It + exists only to satisfy the pedants at the Free Software Foundation. + `README' `README_d/README.*' Descriptive files: `README' for `gawk' under Unix and the rest for @@ -25630,16 +25637,6 @@ Various `.c', `.y', and `.h' files `COPYING' The GNU General Public License. -`FUTURES' - A brief list of features and changes being contemplated for future - releases, with some indication of the time frame for the feature, - based on its difficulty. - -`LIMITATIONS' - A list of those factors that limit `gawk''s performance. Most of - these depend on the hardware or operating system software and are - not limits in `gawk' itself. - `POSIX.STD' A description of behaviors in the POSIX standard for `awk' which are left undefined, or where `gawk' may not comply fully, as well @@ -25674,11 +25671,11 @@ Various `.c', `.y', and `.h' files `doc/gawktexi.in' `doc/sidebar.awk' The Texinfo source file for this Info file. It should be - processed by `doc/sidebar.awk' before processing with TeX It - should be processed with to produce a printed document, and with - `makeinfo' to produce an Info or HTML file. The `Makefile' takes - care of this processing and produces printable output via - `texi2dvi' or `texi2pdf'. + processed by `doc/sidebar.awk' before processing with `texi2dvi' + or `texi2pdf' to produce a printed document, and with `makeinfo' + to produce an Info or HTML file. The `Makefile' takes care of + this processing and produces printable output via `texi2dvi' or + `texi2pdf'. `doc/gawk.texi' The file produced after processing `gawktexi.in' with @@ -25712,16 +25709,21 @@ Various `.c', `.y', and `.h' files `Makefile.in' `aclocal.m4' +`bisonfix.awk' `config.guess' `configh.in' `configure.ac' `configure' `custom.h' +`depcomp' +`install-sh' `missing_d/*' +`mkinstalldirs' `m4/*' - These files and subdirectories are used when configuring `gawk' - for various Unix systems. They are explained in *note Unix - Installation::. + These files and subdirectories are used when configuring and + compiling `gawk' for various Unix systems. Most of them are + explained in *note Unix Installation::. The rest are there to + support the main infrastructure. `po/*' The `po' library contains message translations. @@ -29745,7 +29747,7 @@ Index * arrays, subscripts, uninitialized variables as: Uninitialized Subscripts. (line 6) * artificial intelligence, gawk and: Distribution contents. - (line 55) + (line 52) * ASCII <1>: Glossary. (line 141) * ASCII: Ordinal Functions. (line 45) * asort() function (gawk) <1>: Array Sorting Functions. @@ -31951,7 +31953,7 @@ Index (line 6) * Texinfo <1>: Adding Code. (line 99) * Texinfo <2>: Distribution contents. - (line 80) + (line 77) * Texinfo <3>: Extract Program. (line 12) * Texinfo <4>: Dupword Program. (line 17) * Texinfo <5>: Library Functions. (line 33) @@ -32655,55 +32657,55 @@ Node: Gawk Distribution1025159 Node: Getting1025643 Node: Extracting1026469 Node: Distribution contents1028161 -Node: Unix Installation1033705 -Node: Quick Installation1034322 -Node: Additional Configuration Options1036766 -Node: Configuration Philosophy1038243 -Node: Non-Unix Installation1040597 -Node: PC Installation1041055 -Node: PC Binary Installation1042354 -Node: PC Compiling1044202 -Node: PC Testing1047146 -Node: PC Using1048322 -Node: Cygwin1052507 -Node: MSYS1053507 -Node: VMS Installation1054021 -Node: VMS Compilation1054624 -Ref: VMS Compilation-Footnote-11055631 -Node: VMS Installation Details1055689 -Node: VMS Running1057324 -Node: VMS Old Gawk1058931 -Node: Bugs1059405 -Node: Other Versions1063257 -Node: Notes1069338 -Node: Compatibility Mode1070138 -Node: Additions1070921 -Node: Accessing The Source1071848 -Node: Adding Code1073288 -Node: New Ports1079333 -Node: Derived Files1083468 -Ref: Derived Files-Footnote-11088789 -Ref: Derived Files-Footnote-21088823 -Ref: Derived Files-Footnote-31089423 -Node: Future Extensions1089521 -Node: Implementation Limitations1090102 -Node: Extension Design1091354 -Node: Old Extension Problems1092508 -Ref: Old Extension Problems-Footnote-11094016 -Node: Extension New Mechanism Goals1094073 -Ref: Extension New Mechanism Goals-Footnote-11097438 -Node: Extension Other Design Decisions1097624 -Node: Extension Future Growth1099730 -Node: Old Extension Mechanism1100566 -Node: Basic Concepts1102306 -Node: Basic High Level1102987 -Ref: figure-general-flow1103258 -Ref: figure-process-flow1103857 -Ref: Basic High Level-Footnote-11107086 -Node: Basic Data Typing1107271 -Node: Glossary1110626 -Node: Copying1136088 -Node: GNU Free Documentation License1173645 -Node: Index1198782 +Node: Unix Installation1033681 +Node: Quick Installation1034298 +Node: Additional Configuration Options1036742 +Node: Configuration Philosophy1038219 +Node: Non-Unix Installation1040573 +Node: PC Installation1041031 +Node: PC Binary Installation1042330 +Node: PC Compiling1044178 +Node: PC Testing1047122 +Node: PC Using1048298 +Node: Cygwin1052483 +Node: MSYS1053483 +Node: VMS Installation1053997 +Node: VMS Compilation1054600 +Ref: VMS Compilation-Footnote-11055607 +Node: VMS Installation Details1055665 +Node: VMS Running1057300 +Node: VMS Old Gawk1058907 +Node: Bugs1059381 +Node: Other Versions1063233 +Node: Notes1069314 +Node: Compatibility Mode1070114 +Node: Additions1070897 +Node: Accessing The Source1071824 +Node: Adding Code1073264 +Node: New Ports1079309 +Node: Derived Files1083444 +Ref: Derived Files-Footnote-11088765 +Ref: Derived Files-Footnote-21088799 +Ref: Derived Files-Footnote-31089399 +Node: Future Extensions1089497 +Node: Implementation Limitations1090078 +Node: Extension Design1091330 +Node: Old Extension Problems1092484 +Ref: Old Extension Problems-Footnote-11093992 +Node: Extension New Mechanism Goals1094049 +Ref: Extension New Mechanism Goals-Footnote-11097414 +Node: Extension Other Design Decisions1097600 +Node: Extension Future Growth1099706 +Node: Old Extension Mechanism1100542 +Node: Basic Concepts1102282 +Node: Basic High Level1102963 +Ref: figure-general-flow1103234 +Ref: figure-process-flow1103833 +Ref: Basic High Level-Footnote-11107062 +Node: Basic Data Typing1107247 +Node: Glossary1110602 +Node: Copying1136064 +Node: GNU Free Documentation License1173621 +Node: Index1198758  End Tag Table -- cgit v1.2.3 From eac9994fe3f765848d7815bb32ece216cd3a7cac Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Thu, 28 Nov 2013 21:49:56 +0200 Subject: Some doc edits. --- doc/gawk.info | 1212 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 598 insertions(+), 614 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 0bbd7728..24f08018 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -1084,8 +1084,8 @@ Dark Corners ------------ Dark corners are basically fractal -- no matter how much you - illuminate, there's always a smaller but darker one. - Brian Kernighan + illuminate, there's always a smaller but darker one. -- Brian + Kernighan Until the POSIX standard (and `GAWK: Effective AWK Programming'), many features of `awk' were either poorly documented or not documented @@ -3065,8 +3065,7 @@ File: gawk.info, Node: Undocumented, Prev: Obsolete, Up: Invoking Gawk 2.10 Undocumented Options and Features ====================================== - Use the Source, Luke! - Obi-Wan + Use the Source, Luke! -- Obi-Wan This minor node intentionally left blank. @@ -5304,8 +5303,7 @@ File: gawk.info, Node: Getline/Pipe, Next: Getline/Variable/Pipe, Prev: Getli --------------------------------- Omniscience has much to recommend it. Failing that, attention to - details would be useful. - Brian Kernighan + details would be useful. -- Brian Kernighan The output of a command can also be piped into `getline', using `COMMAND | getline'. In this case, the string COMMAND is run as a @@ -7315,8 +7313,7 @@ File: gawk.info, Node: Concatenation, Next: Assignment Ops, Prev: Arithmetic 6.2.2 String Concatenation -------------------------- - It seemed like a good idea at the time. - Brian Kernighan + It seemed like a good idea at the time. -- Brian Kernighan There is only one string operation: concatenation. It does not have a specific operator to represent it. Instead, concatenation is @@ -7622,8 +7619,7 @@ is a summary of increment and decrement expressions: Operator Evaluation Order Doctor, doctor! It hurts when I do this! - So don't do that! - Groucho Marx + So don't do that! -- Groucho Marx What happens for something like the following? @@ -7704,8 +7700,8 @@ File: gawk.info, Node: Typing and Comparison, Next: Boolean Ops, Prev: Truth 6.3.2 Variable Typing and Comparison Expressions ------------------------------------------------ - The Guide is definitive. Reality is frequently inaccurate. - The Hitchhiker's Guide to the Galaxy + The Guide is definitive. Reality is frequently inaccurate. -- The + Hitchhiker's Guide to the Galaxy Unlike other programming languages, `awk' variables do not have a fixed type. Instead, they can be either a number or a string, depending @@ -10133,8 +10129,7 @@ File: gawk.info, Node: Array Intro, Next: Reference to Elements, Up: Array Ba ---------------------------- Doing linear scans over an associative array is like trying to - club someone to death with a loaded Uzi. - Larry Wall + club someone to death with a loaded Uzi. -- Larry Wall The `awk' language provides one-dimensional arrays for storing groups of related strings or numbers. Every `awk' array must have a @@ -12430,7 +12425,7 @@ File: gawk.info, Node: Bitwise Functions, Next: Type Functions, Prev: Time Fu 9.1.6 Bit-Manipulation Functions -------------------------------- - I can explain it for you, but I can't understand it for you. + I can explain it for you, but I can't understand it for you. -- Anonymous Many languages provide the ability to perform "bitwise" operations @@ -13500,7 +13495,7 @@ algorithms and program tasks in a single place. It simplifies programming, making program development more manageable, and making programs more readable. - In their seminal 1976 book, `Software Tools'(1), Brian Kernighan and + In their seminal 1976 book, `Software Tools',(1) Brian Kernighan and P.J. Plauger wrote: Good Programming is not learned from generalities, but by seeing @@ -16640,8 +16635,8 @@ File: gawk.info, Node: Alarm Program, Next: Translate Program, Prev: Dupword 11.3.2 An Alarm Clock Program ----------------------------- - Nothing cures insomnia like a ringing alarm clock. - Arnold Robbins + Nothing cures insomnia like a ringing alarm clock. -- Arnold + Robbins The following program is a simple "alarm clock" program. You give it a time of day and an optional message. At the specified time, it @@ -16885,10 +16880,10 @@ program. ---------- Footnotes ---------- - (1) On some older systems, `tr' may require that the lists be -written as range expressions enclosed in square brackets (`[a-z]') and -quoted, to prevent the shell from attempting a file name expansion. -This is not a feature. + (1) On some older systems, including Solaris, `tr' may require that +the lists be written as range expressions enclosed in square brackets +(`[a-z]') and quoted, to prevent the shell from attempting a file name +expansion. This is not a feature. (2) This program was written before `gawk' acquired the ability to split each character in a string into separate array elements. @@ -17954,8 +17949,8 @@ File: gawk.info, Node: Advanced Features, Next: Internationalization, Prev: S ****************************** Write documentation as if whoever reads it is a violent psychopath - who knows where you live. - Steve English, as quoted by Peter Langston + who knows where you live. -- Steve English, as quoted by Peter + Langston This major node discusses advanced features in `gawk'. It's a bit of a "grab bag" of items that are otherwise unrelated to each other. @@ -20452,8 +20447,7 @@ File: gawk.info, Node: Arbitrary Precision Arithmetic, Next: Dynamic Extension authority; they tend to believe that all digits of a printed answer are significant. Disillusioned computer users have just the opposite approach; they are constantly afraid that their answers - are almost meaningless. - Donald Knuth(1) + are almost meaningless.(1) -- Donald Knuth This major node discusses issues that you may encounter when performing arithmetic. It begins by discussing some of the general @@ -21334,9 +21328,7 @@ File: gawk.info, Node: Changing Precision, Next: Exact Arithmetic, Prev: Floa them to full membership of the high-precision club, or do we treat them and all their associates as second-class citizens? Sometimes the first course is proper, sometimes the second, and it takes - careful analysis to tell which. - - Dirk Laurie(1) + careful analysis to tell which.(1) -- Dirk Laurie `gawk' does not implicitly modify the precision of any previously computed results when the working precision is changed with an @@ -21844,12 +21836,9 @@ File: gawk.info, Node: General Data Types, Next: Requesting Values, Prev: Ext 16.4.2 General Purpose Data Types --------------------------------- - I have a true love/hate relationship with unions. - Arnold Robbins - - That's the thing about unions: the compiler will arrange things so - they can accommodate both love and hate. - Chet Ramey + I have a true love/hate relationship with unions. -- Arnold + Robbins That's the thing about unions: the compiler will arrange + things so they can accommodate both love and hate. -- Chet Ramey The extension API defines a number of simple types and structures for general purpose use. Additional, more specialized, data structures @@ -23632,8 +23621,7 @@ File: gawk.info, Node: Extension Example, Next: Extension Samples, Prev: Find 16.6 Example: Some File Functions ================================= - No matter where you go, there you are. - Buckaroo Bonzai + No matter where you go, there you are. -- Buckaroo Bonzai Two useful functions that are not in `awk' are `chdir()' (so that an `awk' program can change its directory) and `stat()' (so that an `awk' @@ -25364,8 +25352,7 @@ File: gawk.info, Node: Contributors, Prev: Ranges and Locales, Up: Language H A.8 Major Contributors to `gawk' ================================ - Always give credit where credit is due. - Anonymous + Always give credit where credit is due. -- Anonymous This minor node names the major contributors to `gawk' and/or this Info file, in approximate chronological order: @@ -26376,8 +26363,8 @@ File: gawk.info, Node: Bugs, Next: Other Versions, Prev: Non-Unix Installatio B.4 Reporting Problems and Bugs =============================== - There is nothing more dangerous than a bored archeologist. - The Hitchhiker's Guide to the Galaxy + There is nothing more dangerous than a bored archeologist. -- The + Hitchhiker's Guide to the Galaxy If you have problems with `gawk' or think that you have found a bug, please report it to the developers; we cannot promise to do anything @@ -26456,8 +26443,8 @@ B.5 Other Freely Available `awk' Implementations ================================================ It's kind of fun to put comments like this in your awk code. - `// Do C++ comments work? answer: yes! of course' - Michael Brennan + `// Do C++ comments work? answer: yes! of course' -- Michael + Brennan There are a number of other freely available `awk' implementations. This minor node briefly describes where to get them: @@ -27060,10 +27047,7 @@ C.3 Probable Future Extensions ============================== AWK is a language similar to PERL, only considerably more elegant. - Arnold Robbins - - Hey! - Larry Wall + -- Arnold Robbins Hey! -- Larry Wall The `TODO' file in the `gawk' Git repository lists possible future enhancements. Some of these relate to the source code, and others to @@ -29681,7 +29665,7 @@ Index (line 23) * advanced features, specifying field content: Splitting By Content. (line 9) -* Aho, Alfred <1>: Contributors. (line 12) +* Aho, Alfred <1>: Contributors. (line 11) * Aho, Alfred: History. (line 17) * alarm clock example program: Alarm Program. (line 9) * alarm.awk program: Alarm Program. (line 29) @@ -29720,7 +29704,7 @@ Index * arrays: Arrays. (line 6) * arrays, as parameters to functions: Pass By Value/Reference. (line 47) -* arrays, associative: Array Intro. (line 50) +* arrays, associative: Array Intro. (line 49) * arrays, associative, library functions and: Library Names. (line 57) * arrays, deleting entire contents: Delete. (line 39) * arrays, elements, assigning: Assigning Elements. (line 6) @@ -29730,8 +29714,8 @@ Index (line 6) * arrays, elements, retrieving number of: String Functions. (line 29) * arrays, for statement and: Scanning an Array. (line 20) -* arrays, IGNORECASE variable and: Array Intro. (line 92) -* arrays, indexing: Array Intro. (line 50) +* arrays, IGNORECASE variable and: Array Intro. (line 91) +* arrays, indexing: Array Intro. (line 49) * arrays, merging into strings: Join Function. (line 6) * arrays, multidimensional: Multidimensional. (line 10) * arrays, multidimensional, scanning: Multiscanning. (line 11) @@ -29741,7 +29725,7 @@ Index (line 6) * arrays, sorting, IGNORECASE variable and: Array Sorting Functions. (line 81) -* arrays, sparse: Array Intro. (line 71) +* arrays, sparse: Array Intro. (line 70) * arrays, subscripts: Numeric Array Subscripts. (line 6) * arrays, subscripts, uninitialized variables as: Uninitialized Subscripts. @@ -29763,7 +29747,7 @@ Index * assignment operators, evaluation order: Assignment Ops. (line 111) * assignment operators, lvalues/rvalues: Assignment Ops. (line 32) * assignments as filenames: Ignoring Assigns. (line 6) -* associative arrays: Array Intro. (line 50) +* associative arrays: Array Intro. (line 49) * asterisk (*), * operator, as multiplication operator: Precedence. (line 55) * asterisk (*), * operator, as regexp operator: Regexp Operators. @@ -29917,7 +29901,7 @@ Index * BEGINFILE pattern, Boolean patterns and: Expression Patterns. (line 73) * beginfile() user-defined function: Filetrans Function. (line 62) -* Benzinger, Michael: Contributors. (line 98) +* Benzinger, Michael: Contributors. (line 97) * Berry, Karl: Acknowledgments. (line 33) * binary input/output: User-modified. (line 10) * bindtextdomain() function (C library): Explaining gettext. (line 49) @@ -29962,12 +29946,12 @@ Index * Brennan, Michael: Delete. (line 56) * Brian Kernighan's awk: Other Versions. (line 13) * Brian Kernighan's awk, extensions: BTL. (line 6) -* Broder, Alan J.: Contributors. (line 89) -* Brown, Martin: Contributors. (line 83) +* Broder, Alan J.: Contributors. (line 88) +* Brown, Martin: Contributors. (line 82) * BSD-based operating systems: Glossary. (line 624) * bt debugger command (alias for backtrace): Execution Stack. (line 13) * Buening, Andreas <1>: Bugs. (line 71) -* Buening, Andreas <2>: Contributors. (line 93) +* Buening, Andreas <2>: Contributors. (line 92) * Buening, Andreas: Acknowledgments. (line 60) * buffering, input/output <1>: Two-way I/O. (line 70) * buffering, input/output: I/O Functions. (line 137) @@ -29996,7 +29980,7 @@ Index * caret (^), in bracket expressions: Bracket Expressions. (line 17) * caret (^), regexp operator: Regexp Operators. (line 22) * case keyword: Switch Statement. (line 6) -* case sensitivity, array indices and: Array Intro. (line 92) +* case sensitivity, array indices and: Array Intro. (line 91) * case sensitivity, converting case: String Functions. (line 524) * case sensitivity, example programs: Library Functions. (line 53) * case sensitivity, gawk: Case-sensitivity. (line 26) @@ -30028,13 +30012,13 @@ Index * close() function <1>: I/O Functions. (line 10) * close() function <2>: Close Files And Pipes. (line 18) -* close() function <3>: Getline/Pipe. (line 28) +* close() function <3>: Getline/Pipe. (line 27) * close() function: Getline/Variable/File. (line 30) * close() function, return value: Close Files And Pipes. (line 130) * close() function, two-way pipes and: Two-way I/O. (line 77) -* Close, Diane <1>: Contributors. (line 21) +* Close, Diane <1>: Contributors. (line 20) * Close, Diane: Manual History. (line 41) * Collado, Manuel: Acknowledgments. (line 60) * collating elements: Bracket Expressions. (line 69) @@ -30100,7 +30084,7 @@ Index * compl() function (gawk): Bitwise Functions. (line 43) * complement, bitwise: Bitwise Functions. (line 25) * compound statements, control statements and: Statements. (line 10) -* concatenating: Concatenation. (line 9) +* concatenating: Concatenation. (line 8) * condition debugger command: Breakpoint Control. (line 54) * conditional expressions: Conditional Exp. (line 6) * configuration option, --disable-lint: Additional Configuration Options. @@ -30202,7 +30186,7 @@ Index * dates, converting to timestamps: Time Functions. (line 75) * dates, information related to, localization: Explaining gettext. (line 115) -* Davies, Stephen <1>: Contributors. (line 75) +* Davies, Stephen <1>: Contributors. (line 74) * Davies, Stephen: Acknowledgments. (line 60) * dcgettext() function (gawk) <1>: Programmer i18n. (line 19) * dcgettext() function (gawk): I18N Functions. (line 22) @@ -30315,7 +30299,7 @@ Index * decrement operators: Increment Ops. (line 35) * default keyword: Switch Statement. (line 6) * Deifik, Scott <1>: Bugs. (line 70) -* Deifik, Scott <2>: Contributors. (line 54) +* Deifik, Scott <2>: Contributors. (line 53) * Deifik, Scott: Acknowledgments. (line 60) * delete debugger command: Breakpoint Control. (line 64) * delete statement: Delete. (line 6) @@ -30481,7 +30465,7 @@ Index * eval debugger command: Viewing And Changing Data. (line 23) * evaluation order: Increment Ops. (line 60) -* evaluation order, concatenation: Concatenation. (line 42) +* evaluation order, concatenation: Concatenation. (line 41) * evaluation order, functions: Calling Built-in. (line 30) * examining fields: Fields. (line 6) * exclamation point (!), ! operator <1>: Egrep Program. (line 170) @@ -30544,7 +30528,7 @@ Index * features, advanced, See advanced features: Obsolete. (line 6) * features, deprecated: Obsolete. (line 6) * features, undocumented: Undocumented. (line 6) -* Fenlason, Jay <1>: Contributors. (line 19) +* Fenlason, Jay <1>: Contributors. (line 18) * Fenlason, Jay: History. (line 30) * fflush() function: I/O Functions. (line 25) * field numbers: Nonconstant Fields. (line 6) @@ -30642,7 +30626,7 @@ Index * files, Texinfo, extracting programs from: Extract Program. (line 6) * finish debugger command: Debugger Execution Control. (line 39) -* Fish, Fred: Contributors. (line 51) +* Fish, Fred: Contributors. (line 50) * fixed-width data: Constant Size. (line 9) * flag variables <1>: Tee Program. (line 20) * flag variables: Boolean Ops. (line 67) @@ -30748,7 +30732,7 @@ Index * functions, user-defined, next/nextfile statements and: Next Statement. (line 45) * G-d: Acknowledgments. (line 78) -* Garfinkle, Scott: Contributors. (line 35) +* Garfinkle, Scott: Contributors. (line 34) * gawk program, dynamic profiling: Profiling. (line 172) * gawk, ARGIND variable in: Other Arguments. (line 12) * gawk, awk and <1>: This Manual. (line 14) @@ -30793,7 +30777,7 @@ Index * gawk, IGNORECASE variable in <1>: Array Sorting Functions. (line 81) * gawk, IGNORECASE variable in <2>: String Functions. (line 29) -* gawk, IGNORECASE variable in <3>: Array Intro. (line 92) +* gawk, IGNORECASE variable in <3>: Array Intro. (line 91) * gawk, IGNORECASE variable in <4>: User-modified. (line 82) * gawk, IGNORECASE variable in: Case-sensitivity. (line 26) * gawk, implementation issues: Notes. (line 6) @@ -30909,7 +30893,7 @@ Index * GPL (General Public License): Manual History. (line 11) * GPL (General Public License), printing: Options. (line 102) * grcat program: Group Functions. (line 16) -* Grigera, Juan: Contributors. (line 58) +* Grigera, Juan: Contributors. (line 57) * group database, reading: Group Functions. (line 6) * group file: Group Functions. (line 6) * groups, information about: Group Functions. (line 6) @@ -30920,12 +30904,12 @@ Index * gsub() function, escape processing: Gory Details. (line 6) * h debugger command (alias for help): Miscellaneous Debugger Commands. (line 66) -* Hankerson, Darrel <1>: Contributors. (line 61) +* Hankerson, Darrel <1>: Contributors. (line 60) * Hankerson, Darrel: Acknowledgments. (line 60) -* Haque, John: Contributors. (line 104) +* Haque, John: Contributors. (line 103) * Hartholz, Elaine: Acknowledgments. (line 38) * Hartholz, Marshall: Acknowledgments. (line 38) -* Hasegawa, Isamu: Contributors. (line 95) +* Hasegawa, Isamu: Contributors. (line 94) * help debugger command: Miscellaneous Debugger Commands. (line 66) * hexadecimal numbers: Nondecimal-numbers. (line 6) @@ -30953,12 +30937,12 @@ Index * IGNORECASE variable <1>: Array Sorting Functions. (line 81) * IGNORECASE variable <2>: String Functions. (line 29) -* IGNORECASE variable <3>: Array Intro. (line 92) +* IGNORECASE variable <3>: Array Intro. (line 91) * IGNORECASE variable <4>: User-modified. (line 82) * IGNORECASE variable: Case-sensitivity. (line 26) * IGNORECASE variable, array sorting and: Array Sorting Functions. (line 81) -* IGNORECASE variable, array subscripts and: Array Intro. (line 92) +* IGNORECASE variable, array subscripts and: Array Intro. (line 91) * IGNORECASE variable, in example programs: Library Functions. (line 53) * Illumos: Other Versions. (line 104) @@ -30977,7 +30961,7 @@ Index (line 11) * increment operators: Increment Ops. (line 6) * index() function: String Functions. (line 155) -* indexing arrays: Array Intro. (line 50) +* indexing arrays: Array Intro. (line 49) * indirect function calls: Indirect Calls. (line 6) * infinite precision: Arbitrary Precision Arithmetic. (line 6) @@ -30993,7 +30977,7 @@ Index * input files, reading: Reading Files. (line 6) * input files, running awk without: Read Terminal. (line 6) * input files, variable assignments and: Other Arguments. (line 19) -* input pipeline: Getline/Pipe. (line 10) +* input pipeline: Getline/Pipe. (line 9) * input redirection: Getline/File. (line 6) * input, data, nondecimal: Nondecimal Data. (line 6) * input, explicit: Getline. (line 6) @@ -31040,20 +31024,20 @@ Index * ISO 8859-1: Glossary. (line 141) * ISO Latin-1: Glossary. (line 141) * Jacobs, Andrew: Passwd Functions. (line 90) -* Jaegermann, Michal <1>: Contributors. (line 46) +* Jaegermann, Michal <1>: Contributors. (line 45) * Jaegermann, Michal: Acknowledgments. (line 60) * Java implementation of awk: Other Versions. (line 112) * Java programming language: Glossary. (line 388) * jawk: Other Versions. (line 112) * Jedi knights: Undocumented. (line 6) * join() user-defined function: Join Function. (line 18) -* Kahrs, Ju"rgen <1>: Contributors. (line 71) +* Kahrs, Ju"rgen <1>: Contributors. (line 70) * Kahrs, Ju"rgen: Acknowledgments. (line 60) * Kasal, Stepan: Acknowledgments. (line 60) * Kenobi, Obi-Wan: Undocumented. (line 6) * Kernighan, Brian <1>: Basic Data Typing. (line 55) * Kernighan, Brian <2>: Other Versions. (line 13) -* Kernighan, Brian <3>: Contributors. (line 12) +* Kernighan, Brian <3>: Contributors. (line 11) * Kernighan, Brian <4>: BTL. (line 6) * Kernighan, Brian <5>: Concatenation. (line 6) * Kernighan, Brian <6>: Acknowledgments. (line 72) @@ -31063,7 +31047,7 @@ Index * Knights, jedi: Undocumented. (line 6) * Knuth, Donald: Arbitrary Precision Arithmetic. (line 6) -* Kwok, Conrad: Contributors. (line 35) +* Kwok, Conrad: Contributors. (line 34) * l debugger command (alias for list): Miscellaneous Debugger Commands. (line 72) * labels.awk program: Labels Program. (line 51) @@ -31178,7 +31162,7 @@ Index * matching, leftmost longest: Multiple Line. (line 26) * matching, null strings: Gory Details. (line 164) * mawk program: Other Versions. (line 44) -* McPhee, Patrick: Contributors. (line 101) +* McPhee, Patrick: Contributors. (line 100) * message object files: Explaining gettext. (line 41) * message object files, converting from portable object files: I18N Example. (line 62) @@ -31310,7 +31294,7 @@ Index * operators, input/output <1>: Precedence. (line 65) * operators, input/output <2>: Redirection. (line 22) * operators, input/output <3>: Getline/Coprocess. (line 6) -* operators, input/output <4>: Getline/Pipe. (line 10) +* operators, input/output <4>: Getline/Pipe. (line 9) * operators, input/output: Getline/File. (line 6) * operators, logical, See Boolean expressions: Boolean Ops. (line 6) * operators, precedence <1>: Precedence. (line 6) @@ -31318,7 +31302,7 @@ Index * operators, relational, See operators, comparison: Typing and Comparison. (line 9) * operators, short-circuit: Boolean Ops. (line 57) -* operators, string: Concatenation. (line 9) +* operators, string: Concatenation. (line 8) * operators, string-matching: Regexp Usage. (line 19) * operators, string-matching, for buffers: GNU Regexp Operators. (line 48) @@ -31342,7 +31326,7 @@ Index * ord extension function: Extension Sample Ord. (line 12) * ord() user-defined function: Ordinal Functions. (line 16) -* order of evaluation, concatenation: Concatenation. (line 42) +* order of evaluation, concatenation: Concatenation. (line 41) * ORS variable <1>: User-modified. (line 129) * ORS variable: Output Separators. (line 20) * output field separator, See OFS variable: Changing Fields. (line 64) @@ -31386,11 +31370,11 @@ Index * percent sign (%), %= operator: Assignment Ops. (line 129) * period (.): Regexp Operators. (line 43) * Perl: Future Extensions. (line 6) -* Peters, Arno: Contributors. (line 86) -* Peterson, Hal: Contributors. (line 40) +* Peters, Arno: Contributors. (line 85) +* Peterson, Hal: Contributors. (line 39) * pipes, closing: Close Files And Pipes. (line 6) -* pipes, input: Getline/Pipe. (line 10) +* pipes, input: Getline/Pipe. (line 9) * pipes, output: Redirection. (line 57) * Pitts, Dave <1>: Bugs. (line 73) * Pitts, Dave: Acknowledgments. (line 60) @@ -31474,7 +31458,7 @@ Index * POSIX awk, printf format strings and: Format Modifiers. (line 159) * POSIX awk, regular expressions and: Regexp Operators. (line 161) * POSIX awk, timestamps and: Time Functions. (line 6) -* POSIX awk, | I/O operator and: Getline/Pipe. (line 56) +* POSIX awk, | I/O operator and: Getline/Pipe. (line 55) * POSIX mode: Options. (line 247) * POSIX, awk and: Preface. (line 23) * POSIX, gawk extensions not included in: POSIX/GNU. (line 6) @@ -31584,7 +31568,7 @@ Index * range expressions (regexps): Bracket Expressions. (line 6) * range patterns: Ranges. (line 6) * Rankin, Pat <1>: Bugs. (line 72) -* Rankin, Pat <2>: Contributors. (line 38) +* Rankin, Pat <2>: Contributors. (line 37) * Rankin, Pat <3>: Assignment Ops. (line 100) * Rankin, Pat: Acknowledgments. (line 60) * reada extension function: Extension Sample Read write array. @@ -31685,19 +31669,19 @@ Index * RLENGTH variable, match() function and: String Functions. (line 225) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 32) -* Robbins, Arnold <3>: Contributors. (line 131) +* Robbins, Arnold <3>: Contributors. (line 130) * Robbins, Arnold <4>: Alarm Program. (line 6) * Robbins, Arnold <5>: Passwd Functions. (line 90) -* Robbins, Arnold <6>: Getline/Pipe. (line 40) +* Robbins, Arnold <6>: Getline/Pipe. (line 39) * Robbins, Arnold: Command Line Field Separator. (line 80) -* Robbins, Bill: Getline/Pipe. (line 40) +* Robbins, Bill: Getline/Pipe. (line 39) * Robbins, Harry: Acknowledgments. (line 78) * Robbins, Jean: Acknowledgments. (line 78) * Robbins, Miriam <1>: Passwd Functions. (line 90) -* Robbins, Miriam <2>: Getline/Pipe. (line 40) +* Robbins, Miriam <2>: Getline/Pipe. (line 39) * Robbins, Miriam: Acknowledgments. (line 78) -* Rommel, Kai Uwe: Contributors. (line 43) +* Rommel, Kai Uwe: Contributors. (line 42) * round() user-defined function: Round Function. (line 16) * rounding mode, floating-point: Rounding Mode. (line 6) * rounding numbers: Round Function. (line 6) @@ -31715,7 +31699,7 @@ Index (line 10) * RT variable <3>: Multiple Line. (line 129) * RT variable: Records. (line 117) -* Rubin, Paul <1>: Contributors. (line 16) +* Rubin, Paul <1>: Contributors. (line 15) * Rubin, Paul: History. (line 30) * rule, definition of: Getting Started. (line 21) * run debugger command: Debugger Execution Control. @@ -31725,7 +31709,7 @@ Index (line 68) * sandbox mode: Options. (line 279) * scalar values: Basic Data Typing. (line 13) -* Schorr, Andrew <1>: Contributors. (line 127) +* Schorr, Andrew <1>: Contributors. (line 126) * Schorr, Andrew: Acknowledgments. (line 60) * Schreiber, Bert: Acknowledgments. (line 38) * Schreiber, Rita: Acknowledgments. (line 38) @@ -31775,7 +31759,7 @@ Index * si debugger command (alias for stepi): Debugger Execution Control. (line 76) * side effects <1>: Increment Ops. (line 11) -* side effects: Concatenation. (line 42) +* side effects: Concatenation. (line 41) * side effects, array indexing: Reference to Elements. (line 42) * side effects, asort() function: Array Sorting Functions. @@ -31861,7 +31845,7 @@ Index * source code, QuikTrim Awk: Other Versions. (line 134) * source code, Solaris awk: Other Versions. (line 96) * source files, search path for: Igawk Program. (line 368) -* sparse arrays: Array Intro. (line 71) +* sparse arrays: Array Intro. (line 70) * Spencer, Henry: Glossary. (line 12) * split utility: Split Program. (line 6) * split() function: String Functions. (line 317) @@ -31876,7 +31860,7 @@ Index * square brackets ([]): Regexp Operators. (line 55) * srand() function: Numeric Functions. (line 82) * Stallman, Richard <1>: Glossary. (line 305) -* Stallman, Richard <2>: Contributors. (line 24) +* Stallman, Richard <2>: Contributors. (line 23) * Stallman, Richard <3>: Acknowledgments. (line 18) * Stallman, Richard: Manual History. (line 6) * standard error: Special FD. (line 6) @@ -31900,7 +31884,7 @@ Index * string constants, vs. regexp constants: Computed Regexps. (line 38) * string extraction (internationalization): String Extraction. (line 6) -* string operators: Concatenation. (line 9) +* string operators: Concatenation. (line 8) * string-matching operators: Regexp Usage. (line 19) * strings, converting <1>: Bitwise Functions. (line 109) * strings, converting: Conversion. (line 6) @@ -32021,13 +32005,13 @@ Index * troubleshooting, readable data files: File Checking. (line 6) * troubleshooting, regexp constants vs. string constants: Computed Regexps. (line 38) -* troubleshooting, string concatenation: Concatenation. (line 27) +* troubleshooting, string concatenation: Concatenation. (line 26) * troubleshooting, substr() function: String Functions. (line 501) * troubleshooting, system() function: I/O Functions. (line 94) * troubleshooting, typographical errors, global variables: Options. (line 112) * true, logical: Truth Values. (line 6) -* Trueman, David <1>: Contributors. (line 31) +* Trueman, David <1>: Contributors. (line 30) * Trueman, David <2>: Acknowledgments. (line 47) * Trueman, David: History. (line 30) * trunc-mod operation: Arithmetic Ops. (line 66) @@ -32107,7 +32091,7 @@ Index * variables, user-defined: Variables. (line 6) * vertical bar (|): Regexp Operators. (line 69) * vertical bar (|), | operator (I/O) <1>: Precedence. (line 65) -* vertical bar (|), | operator (I/O): Getline/Pipe. (line 10) +* vertical bar (|), | operator (I/O): Getline/Pipe. (line 9) * vertical bar (|), |& operator (I/O) <1>: Two-way I/O. (line 44) * vertical bar (|), |& operator (I/O) <2>: Precedence. (line 65) * vertical bar (|), |& operator (I/O): Getline/Coprocess. (line 6) @@ -32130,7 +32114,7 @@ Index (line 67) * wc utility: Wc Program. (line 6) * wc.awk program: Wc Program. (line 46) -* Weinberger, Peter <1>: Contributors. (line 12) +* Weinberger, Peter <1>: Contributors. (line 11) * Weinberger, Peter: History. (line 17) * while statement <1>: While Statement. (line 6) * while statement: Regexp Usage. (line 19) @@ -32138,9 +32122,9 @@ Index (line 6) * whitespace, functions, calling: Calling Built-in. (line 10) * whitespace, newlines as: Options. (line 253) -* Williams, Kent: Contributors. (line 35) -* Woehlke, Matthew: Contributors. (line 80) -* Woods, John: Contributors. (line 28) +* Williams, Kent: Contributors. (line 34) +* Woehlke, Matthew: Contributors. (line 79) +* Woods, John: Contributors. (line 27) * word boundaries, matching: GNU Regexp Operators. (line 38) * word, regexp definition of: GNU Regexp Operators. @@ -32156,20 +32140,20 @@ Index * xgettext utility: String Extraction. (line 13) * XOR bitwise operation: Bitwise Functions. (line 6) * xor() function (gawk): Bitwise Functions. (line 55) -* Yawitz, Efraim: Contributors. (line 125) +* Yawitz, Efraim: Contributors. (line 124) * Zaretskii, Eli <1>: Bugs. (line 70) -* Zaretskii, Eli <2>: Contributors. (line 56) +* Zaretskii, Eli <2>: Contributors. (line 55) * Zaretskii, Eli: Acknowledgments. (line 60) * zero, negative vs. positive: Unexpected Results. (line 34) * zerofile.awk program: Empty Files. (line 21) -* Zoulas, Christos: Contributors. (line 67) +* Zoulas, Christos: Contributors. (line 66) * {} (braces): Profiling. (line 134) * {} (braces), actions and: Action Overview. (line 19) * {} (braces), statements, grouping: Statements. (line 10) * | (vertical bar): Regexp Operators. (line 69) * | (vertical bar), | operator (I/O) <1>: Precedence. (line 65) * | (vertical bar), | operator (I/O) <2>: Redirection. (line 57) -* | (vertical bar), | operator (I/O): Getline/Pipe. (line 10) +* | (vertical bar), | operator (I/O): Getline/Pipe. (line 9) * | (vertical bar), |& operator (I/O) <1>: Two-way I/O. (line 44) * | (vertical bar), |& operator (I/O) <2>: Precedence. (line 65) * | (vertical bar), |& operator (I/O) <3>: Redirection. (line 102) @@ -32201,511 +32185,511 @@ Ref: Names-Footnote-152037 Node: This Manual52109 Ref: This Manual-Footnote-157883 Node: Conventions57983 -Node: Manual History60135 -Ref: Manual History-Footnote-163583 -Ref: Manual History-Footnote-263624 -Node: How To Contribute63698 -Node: Acknowledgments64842 -Node: Getting Started69051 -Node: Running gawk71430 -Node: One-shot72616 -Node: Read Terminal73841 -Ref: Read Terminal-Footnote-175491 -Ref: Read Terminal-Footnote-275767 -Node: Long75938 -Node: Executable Scripts77314 -Ref: Executable Scripts-Footnote-179147 -Ref: Executable Scripts-Footnote-279249 -Node: Comments79796 -Node: Quoting82263 -Node: DOS Quoting86886 -Node: Sample Data Files87561 -Node: Very Simple90605 -Node: Two Rules95204 -Node: More Complex97351 -Ref: More Complex-Footnote-1100281 -Node: Statements/Lines100366 -Ref: Statements/Lines-Footnote-1104828 -Node: Other Features105093 -Node: When106021 -Node: Invoking Gawk108168 -Node: Command Line109629 -Node: Options110412 -Ref: Options-Footnote-1125804 -Node: Other Arguments125829 -Node: Naming Standard Input128487 -Node: Environment Variables129581 -Node: AWKPATH Variable130139 -Ref: AWKPATH Variable-Footnote-1132897 -Node: AWKLIBPATH Variable133157 -Node: Other Environment Variables133875 -Node: Exit Status136838 -Node: Include Files137513 -Node: Loading Shared Libraries141082 -Node: Obsolete142446 -Node: Undocumented143143 -Node: Regexp143386 -Node: Regexp Usage144775 -Node: Escape Sequences146801 -Node: Regexp Operators152470 -Ref: Regexp Operators-Footnote-1159850 -Ref: Regexp Operators-Footnote-2159997 -Node: Bracket Expressions160095 -Ref: table-char-classes161985 -Node: GNU Regexp Operators164508 -Node: Case-sensitivity168231 -Ref: Case-sensitivity-Footnote-1171199 -Ref: Case-sensitivity-Footnote-2171434 -Node: Leftmost Longest171542 -Node: Computed Regexps172743 -Node: Reading Files176080 -Node: Records178082 -Ref: Records-Footnote-1186971 -Node: Fields187008 -Ref: Fields-Footnote-1190041 -Node: Nonconstant Fields190127 -Node: Changing Fields192329 -Node: Field Separators198288 -Node: Default Field Splitting200917 -Node: Regexp Field Splitting202034 -Node: Single Character Fields205376 -Node: Command Line Field Separator206435 -Node: Field Splitting Summary209876 -Ref: Field Splitting Summary-Footnote-1212987 -Node: Constant Size213088 -Node: Splitting By Content217672 -Ref: Splitting By Content-Footnote-1221398 -Node: Multiple Line221438 -Ref: Multiple Line-Footnote-1227285 -Node: Getline227464 -Node: Plain Getline229680 -Node: Getline/Variable231775 -Node: Getline/File232922 -Node: Getline/Variable/File234263 -Ref: Getline/Variable/File-Footnote-1235862 -Node: Getline/Pipe235949 -Node: Getline/Variable/Pipe238649 -Node: Getline/Coprocess239756 -Node: Getline/Variable/Coprocess241008 -Node: Getline Notes241745 -Node: Getline Summary244532 -Ref: table-getline-variants244940 -Node: Read Timeout245852 -Ref: Read Timeout-Footnote-1249593 -Node: Command line directories249650 -Node: Printing250280 -Node: Print251911 -Node: Print Examples253248 -Node: Output Separators256032 -Node: OFMT257792 -Node: Printf259150 -Node: Basic Printf260056 -Node: Control Letters261595 -Node: Format Modifiers265407 -Node: Printf Examples271416 -Node: Redirection274131 -Node: Special Files281096 -Node: Special FD281629 -Ref: Special FD-Footnote-1285254 -Node: Special Network285328 -Node: Special Caveats286178 -Node: Close Files And Pipes286974 -Ref: Close Files And Pipes-Footnote-1293957 -Ref: Close Files And Pipes-Footnote-2294105 -Node: Expressions294255 -Node: Values295387 -Node: Constants296063 -Node: Scalar Constants296743 -Ref: Scalar Constants-Footnote-1297602 -Node: Nondecimal-numbers297784 -Node: Regexp Constants300784 -Node: Using Constant Regexps301259 -Node: Variables304314 -Node: Using Variables304969 -Node: Assignment Options306693 -Node: Conversion308565 -Ref: table-locale-affects314066 -Ref: Conversion-Footnote-1314690 -Node: All Operators314799 -Node: Arithmetic Ops315429 -Node: Concatenation317934 -Ref: Concatenation-Footnote-1320727 -Node: Assignment Ops320847 -Ref: table-assign-ops325835 -Node: Increment Ops327166 +Node: Manual History60139 +Ref: Manual History-Footnote-163587 +Ref: Manual History-Footnote-263628 +Node: How To Contribute63702 +Node: Acknowledgments64846 +Node: Getting Started69055 +Node: Running gawk71434 +Node: One-shot72620 +Node: Read Terminal73845 +Ref: Read Terminal-Footnote-175495 +Ref: Read Terminal-Footnote-275771 +Node: Long75942 +Node: Executable Scripts77318 +Ref: Executable Scripts-Footnote-179151 +Ref: Executable Scripts-Footnote-279253 +Node: Comments79800 +Node: Quoting82267 +Node: DOS Quoting86890 +Node: Sample Data Files87565 +Node: Very Simple90609 +Node: Two Rules95208 +Node: More Complex97355 +Ref: More Complex-Footnote-1100285 +Node: Statements/Lines100370 +Ref: Statements/Lines-Footnote-1104832 +Node: Other Features105097 +Node: When106025 +Node: Invoking Gawk108172 +Node: Command Line109633 +Node: Options110416 +Ref: Options-Footnote-1125808 +Node: Other Arguments125833 +Node: Naming Standard Input128491 +Node: Environment Variables129585 +Node: AWKPATH Variable130143 +Ref: AWKPATH Variable-Footnote-1132901 +Node: AWKLIBPATH Variable133161 +Node: Other Environment Variables133879 +Node: Exit Status136842 +Node: Include Files137517 +Node: Loading Shared Libraries141086 +Node: Obsolete142450 +Node: Undocumented143147 +Node: Regexp143389 +Node: Regexp Usage144778 +Node: Escape Sequences146804 +Node: Regexp Operators152473 +Ref: Regexp Operators-Footnote-1159853 +Ref: Regexp Operators-Footnote-2160000 +Node: Bracket Expressions160098 +Ref: table-char-classes161988 +Node: GNU Regexp Operators164511 +Node: Case-sensitivity168234 +Ref: Case-sensitivity-Footnote-1171202 +Ref: Case-sensitivity-Footnote-2171437 +Node: Leftmost Longest171545 +Node: Computed Regexps172746 +Node: Reading Files176083 +Node: Records178085 +Ref: Records-Footnote-1186974 +Node: Fields187011 +Ref: Fields-Footnote-1190044 +Node: Nonconstant Fields190130 +Node: Changing Fields192332 +Node: Field Separators198291 +Node: Default Field Splitting200920 +Node: Regexp Field Splitting202037 +Node: Single Character Fields205379 +Node: Command Line Field Separator206438 +Node: Field Splitting Summary209879 +Ref: Field Splitting Summary-Footnote-1212990 +Node: Constant Size213091 +Node: Splitting By Content217675 +Ref: Splitting By Content-Footnote-1221401 +Node: Multiple Line221441 +Ref: Multiple Line-Footnote-1227288 +Node: Getline227467 +Node: Plain Getline229683 +Node: Getline/Variable231778 +Node: Getline/File232925 +Node: Getline/Variable/File234266 +Ref: Getline/Variable/File-Footnote-1235865 +Node: Getline/Pipe235952 +Node: Getline/Variable/Pipe238651 +Node: Getline/Coprocess239758 +Node: Getline/Variable/Coprocess241010 +Node: Getline Notes241747 +Node: Getline Summary244534 +Ref: table-getline-variants244942 +Node: Read Timeout245854 +Ref: Read Timeout-Footnote-1249595 +Node: Command line directories249652 +Node: Printing250282 +Node: Print251913 +Node: Print Examples253250 +Node: Output Separators256034 +Node: OFMT257794 +Node: Printf259152 +Node: Basic Printf260058 +Node: Control Letters261597 +Node: Format Modifiers265409 +Node: Printf Examples271418 +Node: Redirection274133 +Node: Special Files281098 +Node: Special FD281631 +Ref: Special FD-Footnote-1285256 +Node: Special Network285330 +Node: Special Caveats286180 +Node: Close Files And Pipes286976 +Ref: Close Files And Pipes-Footnote-1293959 +Ref: Close Files And Pipes-Footnote-2294107 +Node: Expressions294257 +Node: Values295389 +Node: Constants296065 +Node: Scalar Constants296745 +Ref: Scalar Constants-Footnote-1297604 +Node: Nondecimal-numbers297786 +Node: Regexp Constants300786 +Node: Using Constant Regexps301261 +Node: Variables304316 +Node: Using Variables304971 +Node: Assignment Options306695 +Node: Conversion308567 +Ref: table-locale-affects314068 +Ref: Conversion-Footnote-1314692 +Node: All Operators314801 +Node: Arithmetic Ops315431 +Node: Concatenation317936 +Ref: Concatenation-Footnote-1320728 +Node: Assignment Ops320848 +Ref: table-assign-ops325836 +Node: Increment Ops327167 Node: Truth Values and Conditions330601 Node: Truth Values331684 Node: Typing and Comparison332733 -Node: Variable Typing333522 -Ref: Variable Typing-Footnote-1337419 -Node: Comparison Operators337541 -Ref: table-relational-ops337951 -Node: POSIX String Comparison341500 -Ref: POSIX String Comparison-Footnote-1342456 -Node: Boolean Ops342594 -Ref: Boolean Ops-Footnote-1346672 -Node: Conditional Exp346763 -Node: Function Calls348495 -Node: Precedence352089 -Node: Locales355758 -Node: Patterns and Actions356847 -Node: Pattern Overview357901 -Node: Regexp Patterns359570 -Node: Expression Patterns360113 -Node: Ranges363798 -Node: BEGIN/END366764 -Node: Using BEGIN/END367526 -Ref: Using BEGIN/END-Footnote-1370257 -Node: I/O And BEGIN/END370363 -Node: BEGINFILE/ENDFILE372645 -Node: Empty375559 -Node: Using Shell Variables375875 -Node: Action Overview378160 -Node: Statements380517 -Node: If Statement382371 -Node: While Statement383870 -Node: Do Statement385914 -Node: For Statement387070 -Node: Switch Statement390222 -Node: Break Statement392319 -Node: Continue Statement394309 -Node: Next Statement396102 -Node: Nextfile Statement398492 -Node: Exit Statement401135 -Node: Built-in Variables403551 -Node: User-modified404646 -Ref: User-modified-Footnote-1413004 -Node: Auto-set413066 -Ref: Auto-set-Footnote-1426144 -Ref: Auto-set-Footnote-2426349 -Node: ARGC and ARGV426405 -Node: Arrays430256 -Node: Array Basics431761 -Node: Array Intro432587 -Node: Reference to Elements436905 -Node: Assigning Elements439175 -Node: Array Example439666 -Node: Scanning an Array441398 -Node: Controlling Scanning443712 -Ref: Controlling Scanning-Footnote-1448635 -Node: Delete448951 -Ref: Delete-Footnote-1451716 -Node: Numeric Array Subscripts451773 -Node: Uninitialized Subscripts453956 -Node: Multidimensional455583 -Node: Multiscanning458675 -Node: Arrays of Arrays460264 -Node: Functions464904 -Node: Built-in465723 -Node: Calling Built-in466801 -Node: Numeric Functions468789 -Ref: Numeric Functions-Footnote-1472621 -Ref: Numeric Functions-Footnote-2472978 -Ref: Numeric Functions-Footnote-3473026 -Node: String Functions473295 -Ref: String Functions-Footnote-1496853 -Ref: String Functions-Footnote-2496982 -Ref: String Functions-Footnote-3497230 -Node: Gory Details497317 -Ref: table-sub-escapes498996 -Ref: table-sub-posix-92500350 -Ref: table-sub-proposed501701 -Ref: table-posix-sub503055 -Ref: table-gensub-escapes504600 -Ref: Gory Details-Footnote-1505776 -Ref: Gory Details-Footnote-2505827 -Node: I/O Functions505978 -Ref: I/O Functions-Footnote-1512963 -Node: Time Functions513110 -Ref: Time Functions-Footnote-1524043 -Ref: Time Functions-Footnote-2524111 -Ref: Time Functions-Footnote-3524269 -Ref: Time Functions-Footnote-4524380 -Ref: Time Functions-Footnote-5524492 -Ref: Time Functions-Footnote-6524719 -Node: Bitwise Functions524985 -Ref: table-bitwise-ops525543 -Ref: Bitwise Functions-Footnote-1529764 -Node: Type Functions529948 -Node: I18N Functions531099 -Node: User-defined532726 -Node: Definition Syntax533530 -Ref: Definition Syntax-Footnote-1538440 -Node: Function Example538509 -Node: Function Caveats541103 -Node: Calling A Function541524 -Node: Variable Scope542639 -Node: Pass By Value/Reference545602 -Node: Return Statement549110 -Node: Dynamic Typing552091 -Node: Indirect Calls553022 -Node: Library Functions562707 -Ref: Library Functions-Footnote-1566220 -Ref: Library Functions-Footnote-2566363 -Node: Library Names566534 -Ref: Library Names-Footnote-1570005 -Ref: Library Names-Footnote-2570225 -Node: General Functions570311 -Node: Strtonum Function571339 -Node: Assert Function574269 -Node: Round Function577595 -Node: Cliff Random Function579138 -Node: Ordinal Functions580154 -Ref: Ordinal Functions-Footnote-1583224 -Ref: Ordinal Functions-Footnote-2583476 -Node: Join Function583685 -Ref: Join Function-Footnote-1585456 -Node: Getlocaltime Function585656 -Node: Readfile Function589397 -Node: Data File Management591236 -Node: Filetrans Function591868 -Node: Rewind Function595937 -Node: File Checking597324 -Node: Empty Files598418 -Node: Ignoring Assigns600648 -Node: Getopt Function602201 -Ref: Getopt Function-Footnote-1613504 -Node: Passwd Functions613707 -Ref: Passwd Functions-Footnote-1622682 -Node: Group Functions622770 -Node: Walking Arrays630854 -Node: Sample Programs632991 -Node: Running Examples633665 -Node: Clones634393 -Node: Cut Program635617 -Node: Egrep Program645462 -Ref: Egrep Program-Footnote-1653235 -Node: Id Program653345 -Node: Split Program656961 -Ref: Split Program-Footnote-1660480 -Node: Tee Program660608 -Node: Uniq Program663411 -Node: Wc Program670840 -Ref: Wc Program-Footnote-1675106 -Ref: Wc Program-Footnote-2675306 -Node: Miscellaneous Programs675398 -Node: Dupword Program676586 -Node: Alarm Program678617 -Node: Translate Program683366 -Ref: Translate Program-Footnote-1687753 -Ref: Translate Program-Footnote-2687981 -Node: Labels Program688115 -Ref: Labels Program-Footnote-1691486 -Node: Word Sorting691570 -Node: History Sorting695454 -Node: Extract Program697293 -Ref: Extract Program-Footnote-1704796 -Node: Simple Sed704924 -Node: Igawk Program707986 -Ref: Igawk Program-Footnote-1723143 -Ref: Igawk Program-Footnote-2723344 -Node: Anagram Program723482 -Node: Signature Program726550 -Node: Advanced Features727650 -Node: Nondecimal Data729532 -Node: Array Sorting731115 -Node: Controlling Array Traversal731812 -Node: Array Sorting Functions740050 -Ref: Array Sorting Functions-Footnote-1743724 -Ref: Array Sorting Functions-Footnote-2743817 -Node: Two-way I/O744011 -Ref: Two-way I/O-Footnote-1749443 -Node: TCP/IP Networking749513 -Node: Profiling752357 -Node: Internationalization759854 -Node: I18N and L10N761279 -Node: Explaining gettext761965 -Ref: Explaining gettext-Footnote-1767033 -Ref: Explaining gettext-Footnote-2767217 -Node: Programmer i18n767382 -Node: Translator i18n771584 -Node: String Extraction772377 -Ref: String Extraction-Footnote-1773338 -Node: Printf Ordering773424 -Ref: Printf Ordering-Footnote-1776208 -Node: I18N Portability776272 -Ref: I18N Portability-Footnote-1778721 -Node: I18N Example778784 -Ref: I18N Example-Footnote-1781422 -Node: Gawk I18N781494 -Node: Debugger782115 -Node: Debugging783086 -Node: Debugging Concepts783519 -Node: Debugging Terms785375 -Node: Awk Debugging787972 -Node: Sample Debugging Session788864 -Node: Debugger Invocation789384 -Node: Finding The Bug790716 -Node: List of Debugger Commands797204 -Node: Breakpoint Control798538 -Node: Debugger Execution Control802202 -Node: Viewing And Changing Data805562 -Node: Execution Stack808918 -Node: Debugger Info810385 -Node: Miscellaneous Debugger Commands814367 -Node: Readline Support819543 -Node: Limitations820374 -Node: Arbitrary Precision Arithmetic822626 -Ref: Arbitrary Precision Arithmetic-Footnote-1824277 -Node: General Arithmetic824425 -Node: Floating Point Issues826145 -Node: String Conversion Precision827026 -Ref: String Conversion Precision-Footnote-1828731 -Node: Unexpected Results828840 -Node: POSIX Floating Point Problems830993 -Ref: POSIX Floating Point Problems-Footnote-1834818 -Node: Integer Programming834856 -Node: Floating-point Programming836595 -Ref: Floating-point Programming-Footnote-1842926 -Ref: Floating-point Programming-Footnote-2843196 -Node: Floating-point Representation843460 -Node: Floating-point Context844625 -Ref: table-ieee-formats845464 -Node: Rounding Mode846848 -Ref: table-rounding-modes847327 -Ref: Rounding Mode-Footnote-1850342 -Node: Gawk and MPFR850521 -Node: Arbitrary Precision Floats851776 -Ref: Arbitrary Precision Floats-Footnote-1854219 -Node: Setting Precision854535 -Ref: table-predefined-precision-strings855221 -Node: Setting Rounding Mode857366 -Ref: table-gawk-rounding-modes857770 -Node: Floating-point Constants858957 -Node: Changing Precision860386 -Ref: Changing Precision-Footnote-1861786 -Node: Exact Arithmetic861960 -Node: Arbitrary Precision Integers865098 -Ref: Arbitrary Precision Integers-Footnote-1868116 -Node: Dynamic Extensions868263 -Node: Extension Intro869721 -Node: Plugin License870986 -Node: Extension Mechanism Outline871671 -Ref: load-extension872088 -Ref: load-new-function873566 -Ref: call-new-function874561 -Node: Extension API Description876576 -Node: Extension API Functions Introduction877789 -Node: General Data Types882655 -Ref: General Data Types-Footnote-1888257 -Node: Requesting Values888556 -Ref: table-value-types-returned889287 -Node: Constructor Functions890241 -Node: Registration Functions893261 -Node: Extension Functions893946 -Node: Exit Callback Functions896171 -Node: Extension Version String897420 -Node: Input Parsers898070 -Node: Output Wrappers907827 -Node: Two-way processors912337 -Node: Printing Messages914545 -Ref: Printing Messages-Footnote-1915622 -Node: Updating `ERRNO'915774 -Node: Accessing Parameters916513 -Node: Symbol Table Access917743 -Node: Symbol table by name918255 -Node: Symbol table by cookie920002 -Ref: Symbol table by cookie-Footnote-1924132 -Node: Cached values924195 -Ref: Cached values-Footnote-1927644 -Node: Array Manipulation927735 -Ref: Array Manipulation-Footnote-1928833 -Node: Array Data Types928872 -Ref: Array Data Types-Footnote-1931575 -Node: Array Functions931667 -Node: Flattening Arrays935433 -Node: Creating Arrays942285 -Node: Extension API Variables947010 -Node: Extension Versioning947646 -Node: Extension API Informational Variables949547 -Node: Extension API Boilerplate950633 -Node: Finding Extensions954437 -Node: Extension Example954997 -Node: Internal File Description955728 -Node: Internal File Ops959819 -Ref: Internal File Ops-Footnote-1971327 -Node: Using Internal File Ops971467 -Ref: Using Internal File Ops-Footnote-1973820 -Node: Extension Samples974086 -Node: Extension Sample File Functions975610 -Node: Extension Sample Fnmatch984095 -Node: Extension Sample Fork985821 -Node: Extension Sample Inplace987039 -Node: Extension Sample Ord988817 -Node: Extension Sample Readdir989653 -Node: Extension Sample Revout991185 -Node: Extension Sample Rev2way991778 -Node: Extension Sample Read write array992468 -Node: Extension Sample Readfile994351 -Node: Extension Sample API Tests995169 -Node: Extension Sample Time995694 -Node: gawkextlib997058 -Node: Language History999818 -Node: V7/SVR3.11001340 -Node: SVR41003660 -Node: POSIX1005102 -Node: BTL1006488 -Node: POSIX/GNU1007222 -Node: Common Extensions1012757 -Node: Ranges and Locales1014063 -Ref: Ranges and Locales-Footnote-11018681 -Ref: Ranges and Locales-Footnote-21018708 -Ref: Ranges and Locales-Footnote-31018968 -Node: Contributors1019189 -Node: Installation1024265 -Node: Gawk Distribution1025159 -Node: Getting1025643 -Node: Extracting1026469 -Node: Distribution contents1028161 -Node: Unix Installation1033681 -Node: Quick Installation1034298 -Node: Additional Configuration Options1036742 -Node: Configuration Philosophy1038219 -Node: Non-Unix Installation1040573 -Node: PC Installation1041031 -Node: PC Binary Installation1042330 -Node: PC Compiling1044178 -Node: PC Testing1047122 -Node: PC Using1048298 -Node: Cygwin1052483 -Node: MSYS1053483 -Node: VMS Installation1053997 -Node: VMS Compilation1054600 -Ref: VMS Compilation-Footnote-11055607 -Node: VMS Installation Details1055665 -Node: VMS Running1057300 -Node: VMS Old Gawk1058907 -Node: Bugs1059381 -Node: Other Versions1063233 -Node: Notes1069314 -Node: Compatibility Mode1070114 -Node: Additions1070897 -Node: Accessing The Source1071824 -Node: Adding Code1073264 -Node: New Ports1079309 -Node: Derived Files1083444 -Ref: Derived Files-Footnote-11088765 -Ref: Derived Files-Footnote-21088799 -Ref: Derived Files-Footnote-31089399 -Node: Future Extensions1089497 -Node: Implementation Limitations1090078 -Node: Extension Design1091330 -Node: Old Extension Problems1092484 -Ref: Old Extension Problems-Footnote-11093992 -Node: Extension New Mechanism Goals1094049 -Ref: Extension New Mechanism Goals-Footnote-11097414 -Node: Extension Other Design Decisions1097600 -Node: Extension Future Growth1099706 -Node: Old Extension Mechanism1100542 -Node: Basic Concepts1102282 -Node: Basic High Level1102963 -Ref: figure-general-flow1103234 -Ref: figure-process-flow1103833 -Ref: Basic High Level-Footnote-11107062 -Node: Basic Data Typing1107247 -Node: Glossary1110602 -Node: Copying1136064 -Node: GNU Free Documentation License1173621 -Node: Index1198758 +Node: Variable Typing333526 +Ref: Variable Typing-Footnote-1337423 +Node: Comparison Operators337545 +Ref: table-relational-ops337955 +Node: POSIX String Comparison341504 +Ref: POSIX String Comparison-Footnote-1342460 +Node: Boolean Ops342598 +Ref: Boolean Ops-Footnote-1346676 +Node: Conditional Exp346767 +Node: Function Calls348499 +Node: Precedence352093 +Node: Locales355762 +Node: Patterns and Actions356851 +Node: Pattern Overview357905 +Node: Regexp Patterns359574 +Node: Expression Patterns360117 +Node: Ranges363802 +Node: BEGIN/END366768 +Node: Using BEGIN/END367530 +Ref: Using BEGIN/END-Footnote-1370261 +Node: I/O And BEGIN/END370367 +Node: BEGINFILE/ENDFILE372649 +Node: Empty375563 +Node: Using Shell Variables375879 +Node: Action Overview378164 +Node: Statements380521 +Node: If Statement382375 +Node: While Statement383874 +Node: Do Statement385918 +Node: For Statement387074 +Node: Switch Statement390226 +Node: Break Statement392323 +Node: Continue Statement394313 +Node: Next Statement396106 +Node: Nextfile Statement398496 +Node: Exit Statement401139 +Node: Built-in Variables403555 +Node: User-modified404650 +Ref: User-modified-Footnote-1413008 +Node: Auto-set413070 +Ref: Auto-set-Footnote-1426148 +Ref: Auto-set-Footnote-2426353 +Node: ARGC and ARGV426409 +Node: Arrays430260 +Node: Array Basics431765 +Node: Array Intro432591 +Node: Reference to Elements436908 +Node: Assigning Elements439178 +Node: Array Example439669 +Node: Scanning an Array441401 +Node: Controlling Scanning443715 +Ref: Controlling Scanning-Footnote-1448638 +Node: Delete448954 +Ref: Delete-Footnote-1451719 +Node: Numeric Array Subscripts451776 +Node: Uninitialized Subscripts453959 +Node: Multidimensional455586 +Node: Multiscanning458678 +Node: Arrays of Arrays460267 +Node: Functions464907 +Node: Built-in465726 +Node: Calling Built-in466804 +Node: Numeric Functions468792 +Ref: Numeric Functions-Footnote-1472624 +Ref: Numeric Functions-Footnote-2472981 +Ref: Numeric Functions-Footnote-3473029 +Node: String Functions473298 +Ref: String Functions-Footnote-1496856 +Ref: String Functions-Footnote-2496985 +Ref: String Functions-Footnote-3497233 +Node: Gory Details497320 +Ref: table-sub-escapes498999 +Ref: table-sub-posix-92500353 +Ref: table-sub-proposed501704 +Ref: table-posix-sub503058 +Ref: table-gensub-escapes504603 +Ref: Gory Details-Footnote-1505779 +Ref: Gory Details-Footnote-2505830 +Node: I/O Functions505981 +Ref: I/O Functions-Footnote-1512966 +Node: Time Functions513113 +Ref: Time Functions-Footnote-1524046 +Ref: Time Functions-Footnote-2524114 +Ref: Time Functions-Footnote-3524272 +Ref: Time Functions-Footnote-4524383 +Ref: Time Functions-Footnote-5524495 +Ref: Time Functions-Footnote-6524722 +Node: Bitwise Functions524988 +Ref: table-bitwise-ops525550 +Ref: Bitwise Functions-Footnote-1529771 +Node: Type Functions529955 +Node: I18N Functions531106 +Node: User-defined532733 +Node: Definition Syntax533537 +Ref: Definition Syntax-Footnote-1538447 +Node: Function Example538516 +Node: Function Caveats541110 +Node: Calling A Function541531 +Node: Variable Scope542646 +Node: Pass By Value/Reference545609 +Node: Return Statement549117 +Node: Dynamic Typing552098 +Node: Indirect Calls553029 +Node: Library Functions562714 +Ref: Library Functions-Footnote-1566227 +Ref: Library Functions-Footnote-2566370 +Node: Library Names566541 +Ref: Library Names-Footnote-1570012 +Ref: Library Names-Footnote-2570232 +Node: General Functions570318 +Node: Strtonum Function571346 +Node: Assert Function574276 +Node: Round Function577602 +Node: Cliff Random Function579145 +Node: Ordinal Functions580161 +Ref: Ordinal Functions-Footnote-1583231 +Ref: Ordinal Functions-Footnote-2583483 +Node: Join Function583692 +Ref: Join Function-Footnote-1585463 +Node: Getlocaltime Function585663 +Node: Readfile Function589404 +Node: Data File Management591243 +Node: Filetrans Function591875 +Node: Rewind Function595944 +Node: File Checking597331 +Node: Empty Files598425 +Node: Ignoring Assigns600655 +Node: Getopt Function602208 +Ref: Getopt Function-Footnote-1613511 +Node: Passwd Functions613714 +Ref: Passwd Functions-Footnote-1622689 +Node: Group Functions622777 +Node: Walking Arrays630861 +Node: Sample Programs632998 +Node: Running Examples633672 +Node: Clones634400 +Node: Cut Program635624 +Node: Egrep Program645469 +Ref: Egrep Program-Footnote-1653242 +Node: Id Program653352 +Node: Split Program656968 +Ref: Split Program-Footnote-1660487 +Node: Tee Program660615 +Node: Uniq Program663418 +Node: Wc Program670847 +Ref: Wc Program-Footnote-1675113 +Ref: Wc Program-Footnote-2675313 +Node: Miscellaneous Programs675405 +Node: Dupword Program676593 +Node: Alarm Program678624 +Node: Translate Program683377 +Ref: Translate Program-Footnote-1687764 +Ref: Translate Program-Footnote-2688012 +Node: Labels Program688146 +Ref: Labels Program-Footnote-1691517 +Node: Word Sorting691601 +Node: History Sorting695485 +Node: Extract Program697324 +Ref: Extract Program-Footnote-1704827 +Node: Simple Sed704955 +Node: Igawk Program708017 +Ref: Igawk Program-Footnote-1723174 +Ref: Igawk Program-Footnote-2723375 +Node: Anagram Program723513 +Node: Signature Program726581 +Node: Advanced Features727681 +Node: Nondecimal Data729567 +Node: Array Sorting731150 +Node: Controlling Array Traversal731847 +Node: Array Sorting Functions740085 +Ref: Array Sorting Functions-Footnote-1743759 +Ref: Array Sorting Functions-Footnote-2743852 +Node: Two-way I/O744046 +Ref: Two-way I/O-Footnote-1749478 +Node: TCP/IP Networking749548 +Node: Profiling752392 +Node: Internationalization759889 +Node: I18N and L10N761314 +Node: Explaining gettext762000 +Ref: Explaining gettext-Footnote-1767068 +Ref: Explaining gettext-Footnote-2767252 +Node: Programmer i18n767417 +Node: Translator i18n771619 +Node: String Extraction772412 +Ref: String Extraction-Footnote-1773373 +Node: Printf Ordering773459 +Ref: Printf Ordering-Footnote-1776243 +Node: I18N Portability776307 +Ref: I18N Portability-Footnote-1778756 +Node: I18N Example778819 +Ref: I18N Example-Footnote-1781457 +Node: Gawk I18N781529 +Node: Debugger782150 +Node: Debugging783121 +Node: Debugging Concepts783554 +Node: Debugging Terms785410 +Node: Awk Debugging788007 +Node: Sample Debugging Session788899 +Node: Debugger Invocation789419 +Node: Finding The Bug790751 +Node: List of Debugger Commands797239 +Node: Breakpoint Control798573 +Node: Debugger Execution Control802237 +Node: Viewing And Changing Data805597 +Node: Execution Stack808953 +Node: Debugger Info810420 +Node: Miscellaneous Debugger Commands814402 +Node: Readline Support819578 +Node: Limitations820409 +Node: Arbitrary Precision Arithmetic822661 +Ref: Arbitrary Precision Arithmetic-Footnote-1824310 +Node: General Arithmetic824458 +Node: Floating Point Issues826178 +Node: String Conversion Precision827059 +Ref: String Conversion Precision-Footnote-1828764 +Node: Unexpected Results828873 +Node: POSIX Floating Point Problems831026 +Ref: POSIX Floating Point Problems-Footnote-1834851 +Node: Integer Programming834889 +Node: Floating-point Programming836628 +Ref: Floating-point Programming-Footnote-1842959 +Ref: Floating-point Programming-Footnote-2843229 +Node: Floating-point Representation843493 +Node: Floating-point Context844658 +Ref: table-ieee-formats845497 +Node: Rounding Mode846881 +Ref: table-rounding-modes847360 +Ref: Rounding Mode-Footnote-1850375 +Node: Gawk and MPFR850554 +Node: Arbitrary Precision Floats851809 +Ref: Arbitrary Precision Floats-Footnote-1854252 +Node: Setting Precision854568 +Ref: table-predefined-precision-strings855254 +Node: Setting Rounding Mode857399 +Ref: table-gawk-rounding-modes857803 +Node: Floating-point Constants858990 +Node: Changing Precision860419 +Ref: Changing Precision-Footnote-1861816 +Node: Exact Arithmetic861990 +Node: Arbitrary Precision Integers865128 +Ref: Arbitrary Precision Integers-Footnote-1868146 +Node: Dynamic Extensions868293 +Node: Extension Intro869751 +Node: Plugin License871016 +Node: Extension Mechanism Outline871701 +Ref: load-extension872118 +Ref: load-new-function873596 +Ref: call-new-function874591 +Node: Extension API Description876606 +Node: Extension API Functions Introduction877819 +Node: General Data Types882685 +Ref: General Data Types-Footnote-1888284 +Node: Requesting Values888583 +Ref: table-value-types-returned889314 +Node: Constructor Functions890268 +Node: Registration Functions893288 +Node: Extension Functions893973 +Node: Exit Callback Functions896198 +Node: Extension Version String897447 +Node: Input Parsers898097 +Node: Output Wrappers907854 +Node: Two-way processors912364 +Node: Printing Messages914572 +Ref: Printing Messages-Footnote-1915649 +Node: Updating `ERRNO'915801 +Node: Accessing Parameters916540 +Node: Symbol Table Access917770 +Node: Symbol table by name918282 +Node: Symbol table by cookie920029 +Ref: Symbol table by cookie-Footnote-1924159 +Node: Cached values924222 +Ref: Cached values-Footnote-1927671 +Node: Array Manipulation927762 +Ref: Array Manipulation-Footnote-1928860 +Node: Array Data Types928899 +Ref: Array Data Types-Footnote-1931602 +Node: Array Functions931694 +Node: Flattening Arrays935460 +Node: Creating Arrays942312 +Node: Extension API Variables947037 +Node: Extension Versioning947673 +Node: Extension API Informational Variables949574 +Node: Extension API Boilerplate950660 +Node: Finding Extensions954464 +Node: Extension Example955024 +Node: Internal File Description955754 +Node: Internal File Ops959845 +Ref: Internal File Ops-Footnote-1971353 +Node: Using Internal File Ops971493 +Ref: Using Internal File Ops-Footnote-1973846 +Node: Extension Samples974112 +Node: Extension Sample File Functions975636 +Node: Extension Sample Fnmatch984121 +Node: Extension Sample Fork985847 +Node: Extension Sample Inplace987065 +Node: Extension Sample Ord988843 +Node: Extension Sample Readdir989679 +Node: Extension Sample Revout991211 +Node: Extension Sample Rev2way991804 +Node: Extension Sample Read write array992494 +Node: Extension Sample Readfile994377 +Node: Extension Sample API Tests995195 +Node: Extension Sample Time995720 +Node: gawkextlib997084 +Node: Language History999844 +Node: V7/SVR3.11001366 +Node: SVR41003686 +Node: POSIX1005128 +Node: BTL1006514 +Node: POSIX/GNU1007248 +Node: Common Extensions1012783 +Node: Ranges and Locales1014089 +Ref: Ranges and Locales-Footnote-11018707 +Ref: Ranges and Locales-Footnote-21018734 +Ref: Ranges and Locales-Footnote-31018994 +Node: Contributors1019215 +Node: Installation1024290 +Node: Gawk Distribution1025184 +Node: Getting1025668 +Node: Extracting1026494 +Node: Distribution contents1028186 +Node: Unix Installation1033706 +Node: Quick Installation1034323 +Node: Additional Configuration Options1036767 +Node: Configuration Philosophy1038244 +Node: Non-Unix Installation1040598 +Node: PC Installation1041056 +Node: PC Binary Installation1042355 +Node: PC Compiling1044203 +Node: PC Testing1047147 +Node: PC Using1048323 +Node: Cygwin1052508 +Node: MSYS1053508 +Node: VMS Installation1054022 +Node: VMS Compilation1054625 +Ref: VMS Compilation-Footnote-11055632 +Node: VMS Installation Details1055690 +Node: VMS Running1057325 +Node: VMS Old Gawk1058932 +Node: Bugs1059406 +Node: Other Versions1063262 +Node: Notes1069346 +Node: Compatibility Mode1070146 +Node: Additions1070929 +Node: Accessing The Source1071856 +Node: Adding Code1073296 +Node: New Ports1079341 +Node: Derived Files1083476 +Ref: Derived Files-Footnote-11088797 +Ref: Derived Files-Footnote-21088831 +Ref: Derived Files-Footnote-31089431 +Node: Future Extensions1089529 +Node: Implementation Limitations1090106 +Node: Extension Design1091358 +Node: Old Extension Problems1092512 +Ref: Old Extension Problems-Footnote-11094020 +Node: Extension New Mechanism Goals1094077 +Ref: Extension New Mechanism Goals-Footnote-11097442 +Node: Extension Other Design Decisions1097628 +Node: Extension Future Growth1099734 +Node: Old Extension Mechanism1100570 +Node: Basic Concepts1102310 +Node: Basic High Level1102991 +Ref: figure-general-flow1103262 +Ref: figure-process-flow1103861 +Ref: Basic High Level-Footnote-11107090 +Node: Basic Data Typing1107275 +Node: Glossary1110630 +Node: Copying1136092 +Node: GNU Free Documentation License1173649 +Node: Index1198786  End Tag Table -- cgit v1.2.3 From 5f7c3c807cb7e7f63925bb7d0c18ba3a1c0014c3 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Thu, 28 Nov 2013 22:32:43 +0200 Subject: Fix doc/gawk.info. --- doc/gawk.info | 1036 ++++++++++++++++++--------------------------------------- 1 file changed, 331 insertions(+), 705 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 0de77caf..4e31aa3b 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -32329,379 +32329,6 @@ Node: Increment Ops327167 Node: Truth Values and Conditions330601 Node: Truth Values331684 Node: Typing and Comparison332733 -<<<<<<< HEAD -Node: Variable Typing333522 -Ref: Variable Typing-Footnote-1337419 -Node: Comparison Operators337541 -Ref: table-relational-ops337951 -Node: POSIX String Comparison341500 -Ref: POSIX String Comparison-Footnote-1342456 -Node: Boolean Ops342594 -Ref: Boolean Ops-Footnote-1346672 -Node: Conditional Exp346763 -Node: Function Calls348495 -Node: Precedence352089 -Node: Locales355758 -Node: Patterns and Actions356847 -Node: Pattern Overview357901 -Node: Regexp Patterns359570 -Node: Expression Patterns360113 -Node: Ranges363798 -Node: BEGIN/END366764 -Node: Using BEGIN/END367526 -Ref: Using BEGIN/END-Footnote-1370257 -Node: I/O And BEGIN/END370363 -Node: BEGINFILE/ENDFILE372645 -Node: Empty375559 -Node: Using Shell Variables375875 -Node: Action Overview378160 -Node: Statements380517 -Node: If Statement382371 -Node: While Statement383870 -Node: Do Statement385914 -Node: For Statement387070 -Node: Switch Statement390222 -Node: Break Statement392319 -Node: Continue Statement394309 -Node: Next Statement396102 -Node: Nextfile Statement398492 -Node: Exit Statement401135 -Node: Built-in Variables403551 -Node: User-modified404646 -Ref: User-modified-Footnote-1413004 -Node: Auto-set413066 -Ref: Auto-set-Footnote-1426536 -Ref: Auto-set-Footnote-2426741 -Node: ARGC and ARGV426797 -Node: Arrays430648 -Node: Array Basics432153 -Node: Array Intro432979 -Node: Reference to Elements437297 -Node: Assigning Elements439567 -Node: Array Example440058 -Node: Scanning an Array441790 -Node: Controlling Scanning444104 -Ref: Controlling Scanning-Footnote-1449027 -Node: Delete449343 -Ref: Delete-Footnote-1452108 -Node: Numeric Array Subscripts452165 -Node: Uninitialized Subscripts454348 -Node: Multidimensional455975 -Node: Multiscanning459067 -Node: Arrays of Arrays460656 -Node: Functions465296 -Node: Built-in466115 -Node: Calling Built-in467193 -Node: Numeric Functions469181 -Ref: Numeric Functions-Footnote-1473013 -Ref: Numeric Functions-Footnote-2473370 -Ref: Numeric Functions-Footnote-3473418 -Node: String Functions473687 -Ref: String Functions-Footnote-1497245 -Ref: String Functions-Footnote-2497374 -Ref: String Functions-Footnote-3497622 -Node: Gory Details497709 -Ref: table-sub-escapes499388 -Ref: table-sub-posix-92500742 -Ref: table-sub-proposed502093 -Ref: table-posix-sub503447 -Ref: table-gensub-escapes504992 -Ref: Gory Details-Footnote-1506168 -Ref: Gory Details-Footnote-2506219 -Node: I/O Functions506370 -Ref: I/O Functions-Footnote-1513355 -Node: Time Functions513502 -Ref: Time Functions-Footnote-1524435 -Ref: Time Functions-Footnote-2524503 -Ref: Time Functions-Footnote-3524661 -Ref: Time Functions-Footnote-4524772 -Ref: Time Functions-Footnote-5524884 -Ref: Time Functions-Footnote-6525111 -Node: Bitwise Functions525377 -Ref: table-bitwise-ops525935 -Ref: Bitwise Functions-Footnote-1530156 -Node: Type Functions530340 -Node: I18N Functions531491 -Node: User-defined533118 -Node: Definition Syntax533922 -Ref: Definition Syntax-Footnote-1538832 -Node: Function Example538901 -Node: Function Caveats541495 -Node: Calling A Function541916 -Node: Variable Scope543031 -Node: Pass By Value/Reference545994 -Node: Return Statement549502 -Node: Dynamic Typing552483 -Node: Indirect Calls553414 -Node: Library Functions563099 -Ref: Library Functions-Footnote-1566612 -Ref: Library Functions-Footnote-2566755 -Node: Library Names566926 -Ref: Library Names-Footnote-1570397 -Ref: Library Names-Footnote-2570617 -Node: General Functions570703 -Node: Strtonum Function571731 -Node: Assert Function574661 -Node: Round Function577987 -Node: Cliff Random Function579530 -Node: Ordinal Functions580546 -Ref: Ordinal Functions-Footnote-1583616 -Ref: Ordinal Functions-Footnote-2583868 -Node: Join Function584077 -Ref: Join Function-Footnote-1585848 -Node: Getlocaltime Function586048 -Node: Readfile Function589789 -Node: Data File Management591628 -Node: Filetrans Function592260 -Node: Rewind Function596329 -Node: File Checking597716 -Node: Empty Files598810 -Node: Ignoring Assigns601040 -Node: Getopt Function602593 -Ref: Getopt Function-Footnote-1613896 -Node: Passwd Functions614099 -Ref: Passwd Functions-Footnote-1623074 -Node: Group Functions623162 -Node: Walking Arrays631246 -Node: Sample Programs633383 -Node: Running Examples634057 -Node: Clones634785 -Node: Cut Program636009 -Node: Egrep Program645854 -Ref: Egrep Program-Footnote-1653627 -Node: Id Program653737 -Node: Split Program657353 -Ref: Split Program-Footnote-1660872 -Node: Tee Program661000 -Node: Uniq Program663803 -Node: Wc Program671232 -Ref: Wc Program-Footnote-1675498 -Ref: Wc Program-Footnote-2675698 -Node: Miscellaneous Programs675790 -Node: Dupword Program676978 -Node: Alarm Program679009 -Node: Translate Program683758 -Ref: Translate Program-Footnote-1688145 -Ref: Translate Program-Footnote-2688373 -Node: Labels Program688507 -Ref: Labels Program-Footnote-1691878 -Node: Word Sorting691962 -Node: History Sorting695846 -Node: Extract Program697685 -Ref: Extract Program-Footnote-1705188 -Node: Simple Sed705316 -Node: Igawk Program708378 -Ref: Igawk Program-Footnote-1723535 -Ref: Igawk Program-Footnote-2723736 -Node: Anagram Program723874 -Node: Signature Program726942 -Node: Advanced Features728042 -Node: Nondecimal Data729924 -Node: Array Sorting731507 -Node: Controlling Array Traversal732204 -Node: Array Sorting Functions740442 -Ref: Array Sorting Functions-Footnote-1744116 -Ref: Array Sorting Functions-Footnote-2744209 -Node: Two-way I/O744403 -Ref: Two-way I/O-Footnote-1749835 -Node: TCP/IP Networking749905 -Node: Profiling752749 -Node: Internationalization760246 -Node: I18N and L10N761671 -Node: Explaining gettext762357 -Ref: Explaining gettext-Footnote-1767425 -Ref: Explaining gettext-Footnote-2767609 -Node: Programmer i18n767774 -Node: Translator i18n771976 -Node: String Extraction772769 -Ref: String Extraction-Footnote-1773730 -Node: Printf Ordering773816 -Ref: Printf Ordering-Footnote-1776600 -Node: I18N Portability776664 -Ref: I18N Portability-Footnote-1779113 -Node: I18N Example779176 -Ref: I18N Example-Footnote-1781814 -Node: Gawk I18N781886 -Node: Debugger782507 -Node: Debugging783478 -Node: Debugging Concepts783911 -Node: Debugging Terms785767 -Node: Awk Debugging788364 -Node: Sample Debugging Session789256 -Node: Debugger Invocation789776 -Node: Finding The Bug791108 -Node: List of Debugger Commands797596 -Node: Breakpoint Control798930 -Node: Debugger Execution Control802594 -Node: Viewing And Changing Data805954 -Node: Execution Stack809310 -Node: Debugger Info810777 -Node: Miscellaneous Debugger Commands814759 -Node: Readline Support819935 -Node: Limitations820766 -Node: Arbitrary Precision Arithmetic823018 -Ref: Arbitrary Precision Arithmetic-Footnote-1824669 -Node: General Arithmetic824817 -Node: Floating Point Issues826537 -Node: String Conversion Precision827418 -Ref: String Conversion Precision-Footnote-1829123 -Node: Unexpected Results829232 -Node: POSIX Floating Point Problems831385 -Ref: POSIX Floating Point Problems-Footnote-1835210 -Node: Integer Programming835248 -Node: Floating-point Programming836987 -Ref: Floating-point Programming-Footnote-1843318 -Ref: Floating-point Programming-Footnote-2843588 -Node: Floating-point Representation843852 -Node: Floating-point Context845017 -Ref: table-ieee-formats845856 -Node: Rounding Mode847240 -Ref: table-rounding-modes847719 -Ref: Rounding Mode-Footnote-1850734 -Node: Gawk and MPFR850913 -Node: Arbitrary Precision Floats852168 -Ref: Arbitrary Precision Floats-Footnote-1854611 -Node: Setting Precision854927 -Ref: table-predefined-precision-strings855613 -Node: Setting Rounding Mode857758 -Ref: table-gawk-rounding-modes858162 -Node: Floating-point Constants859349 -Node: Changing Precision860778 -Ref: Changing Precision-Footnote-1862178 -Node: Exact Arithmetic862352 -Node: Arbitrary Precision Integers865490 -Ref: Arbitrary Precision Integers-Footnote-1868508 -Node: Dynamic Extensions868655 -Node: Extension Intro870113 -Node: Plugin License871378 -Node: Extension Mechanism Outline872063 -Ref: load-extension872480 -Ref: load-new-function873958 -Ref: call-new-function874953 -Node: Extension API Description876968 -Node: Extension API Functions Introduction878181 -Node: General Data Types883047 -Ref: General Data Types-Footnote-1888649 -Node: Requesting Values888948 -Ref: table-value-types-returned889679 -Node: Constructor Functions890633 -Node: Registration Functions893653 -Node: Extension Functions894338 -Node: Exit Callback Functions896563 -Node: Extension Version String897812 -Node: Input Parsers898462 -Node: Output Wrappers908219 -Node: Two-way processors912729 -Node: Printing Messages914937 -Ref: Printing Messages-Footnote-1916014 -Node: Updating `ERRNO'916166 -Node: Accessing Parameters916905 -Node: Symbol Table Access918135 -Node: Symbol table by name918647 -Node: Symbol table by cookie920394 -Ref: Symbol table by cookie-Footnote-1924524 -Node: Cached values924587 -Ref: Cached values-Footnote-1928036 -Node: Array Manipulation928127 -Ref: Array Manipulation-Footnote-1929225 -Node: Array Data Types929264 -Ref: Array Data Types-Footnote-1931967 -Node: Array Functions932059 -Node: Flattening Arrays935825 -Node: Creating Arrays942677 -Node: Extension API Variables947402 -Node: Extension Versioning948038 -Node: Extension API Informational Variables949939 -Node: Extension API Boilerplate951025 -Node: Finding Extensions954829 -Node: Extension Example955389 -Node: Internal File Description956120 -Node: Internal File Ops960211 -Ref: Internal File Ops-Footnote-1971719 -Node: Using Internal File Ops971859 -Ref: Using Internal File Ops-Footnote-1974212 -Node: Extension Samples974478 -Node: Extension Sample File Functions976002 -Node: Extension Sample Fnmatch984487 -Node: Extension Sample Fork986213 -Node: Extension Sample Inplace987431 -Node: Extension Sample Ord989209 -Node: Extension Sample Readdir990045 -Node: Extension Sample Revout991577 -Node: Extension Sample Rev2way992170 -Node: Extension Sample Read write array992860 -Node: Extension Sample Readfile994743 -Node: Extension Sample API Tests995561 -Node: Extension Sample Time996086 -Node: gawkextlib997450 -Node: Language History1000210 -Node: V7/SVR3.11001732 -Node: SVR41004052 -Node: POSIX1005494 -Node: BTL1006880 -Node: POSIX/GNU1007614 -Node: Common Extensions1013149 -Node: Ranges and Locales1014455 -Ref: Ranges and Locales-Footnote-11019073 -Ref: Ranges and Locales-Footnote-21019100 -Ref: Ranges and Locales-Footnote-31019360 -Node: Contributors1019581 -Node: Installation1024657 -Node: Gawk Distribution1025551 -Node: Getting1026035 -Node: Extracting1026861 -Node: Distribution contents1028553 -Node: Unix Installation1034073 -Node: Quick Installation1034690 -Node: Additional Configuration Options1037134 -Node: Configuration Philosophy1038611 -Node: Non-Unix Installation1040965 -Node: PC Installation1041423 -Node: PC Binary Installation1042722 -Node: PC Compiling1044570 -Node: PC Testing1047514 -Node: PC Using1048690 -Node: Cygwin1052875 -Node: MSYS1053875 -Node: VMS Installation1054389 -Node: VMS Compilation1054992 -Ref: VMS Compilation-Footnote-11055999 -Node: VMS Installation Details1056057 -Node: VMS Running1057692 -Node: VMS Old Gawk1059299 -Node: Bugs1059773 -Node: Other Versions1063625 -Node: Notes1069706 -Node: Compatibility Mode1070506 -Node: Additions1071289 -Node: Accessing The Source1072216 -Node: Adding Code1073656 -Node: New Ports1079701 -Node: Derived Files1083836 -Ref: Derived Files-Footnote-11089157 -Ref: Derived Files-Footnote-21089191 -Ref: Derived Files-Footnote-31089791 -Node: Future Extensions1089889 -Node: Implementation Limitations1090470 -Node: Extension Design1091722 -Node: Old Extension Problems1092876 -Ref: Old Extension Problems-Footnote-11094384 -Node: Extension New Mechanism Goals1094441 -Ref: Extension New Mechanism Goals-Footnote-11097806 -Node: Extension Other Design Decisions1097992 -Node: Extension Future Growth1100098 -Node: Old Extension Mechanism1100934 -Node: Basic Concepts1102674 -Node: Basic High Level1103355 -Ref: figure-general-flow1103626 -Ref: figure-process-flow1104225 -Ref: Basic High Level-Footnote-11107454 -Node: Basic Data Typing1107639 -Node: Glossary1110994 -Node: Copying1136456 -Node: GNU Free Documentation License1174013 -Node: Index1199150 -======= Node: Variable Typing333526 Ref: Variable Typing-Footnote-1337423 Node: Comparison Operators337545 @@ -32742,337 +32369,336 @@ Node: Built-in Variables403555 Node: User-modified404650 Ref: User-modified-Footnote-1413008 Node: Auto-set413070 -Ref: Auto-set-Footnote-1426148 -Ref: Auto-set-Footnote-2426353 -Node: ARGC and ARGV426409 -Node: Arrays430260 -Node: Array Basics431765 -Node: Array Intro432591 -Node: Reference to Elements436908 -Node: Assigning Elements439178 -Node: Array Example439669 -Node: Scanning an Array441401 -Node: Controlling Scanning443715 -Ref: Controlling Scanning-Footnote-1448638 -Node: Delete448954 -Ref: Delete-Footnote-1451719 -Node: Numeric Array Subscripts451776 -Node: Uninitialized Subscripts453959 -Node: Multidimensional455586 -Node: Multiscanning458678 -Node: Arrays of Arrays460267 -Node: Functions464907 -Node: Built-in465726 -Node: Calling Built-in466804 -Node: Numeric Functions468792 -Ref: Numeric Functions-Footnote-1472624 -Ref: Numeric Functions-Footnote-2472981 -Ref: Numeric Functions-Footnote-3473029 -Node: String Functions473298 -Ref: String Functions-Footnote-1496856 -Ref: String Functions-Footnote-2496985 -Ref: String Functions-Footnote-3497233 -Node: Gory Details497320 -Ref: table-sub-escapes498999 -Ref: table-sub-posix-92500353 -Ref: table-sub-proposed501704 -Ref: table-posix-sub503058 -Ref: table-gensub-escapes504603 -Ref: Gory Details-Footnote-1505779 -Ref: Gory Details-Footnote-2505830 -Node: I/O Functions505981 -Ref: I/O Functions-Footnote-1512966 -Node: Time Functions513113 -Ref: Time Functions-Footnote-1524046 -Ref: Time Functions-Footnote-2524114 -Ref: Time Functions-Footnote-3524272 -Ref: Time Functions-Footnote-4524383 -Ref: Time Functions-Footnote-5524495 -Ref: Time Functions-Footnote-6524722 -Node: Bitwise Functions524988 -Ref: table-bitwise-ops525550 -Ref: Bitwise Functions-Footnote-1529771 -Node: Type Functions529955 -Node: I18N Functions531106 -Node: User-defined532733 -Node: Definition Syntax533537 -Ref: Definition Syntax-Footnote-1538447 -Node: Function Example538516 -Node: Function Caveats541110 -Node: Calling A Function541531 -Node: Variable Scope542646 -Node: Pass By Value/Reference545609 -Node: Return Statement549117 -Node: Dynamic Typing552098 -Node: Indirect Calls553029 -Node: Library Functions562714 -Ref: Library Functions-Footnote-1566227 -Ref: Library Functions-Footnote-2566370 -Node: Library Names566541 -Ref: Library Names-Footnote-1570012 -Ref: Library Names-Footnote-2570232 -Node: General Functions570318 -Node: Strtonum Function571346 -Node: Assert Function574276 -Node: Round Function577602 -Node: Cliff Random Function579145 -Node: Ordinal Functions580161 -Ref: Ordinal Functions-Footnote-1583231 -Ref: Ordinal Functions-Footnote-2583483 -Node: Join Function583692 -Ref: Join Function-Footnote-1585463 -Node: Getlocaltime Function585663 -Node: Readfile Function589404 -Node: Data File Management591243 -Node: Filetrans Function591875 -Node: Rewind Function595944 -Node: File Checking597331 -Node: Empty Files598425 -Node: Ignoring Assigns600655 -Node: Getopt Function602208 -Ref: Getopt Function-Footnote-1613511 -Node: Passwd Functions613714 -Ref: Passwd Functions-Footnote-1622689 -Node: Group Functions622777 -Node: Walking Arrays630861 -Node: Sample Programs632998 -Node: Running Examples633672 -Node: Clones634400 -Node: Cut Program635624 -Node: Egrep Program645469 -Ref: Egrep Program-Footnote-1653242 -Node: Id Program653352 -Node: Split Program656968 -Ref: Split Program-Footnote-1660487 -Node: Tee Program660615 -Node: Uniq Program663418 -Node: Wc Program670847 -Ref: Wc Program-Footnote-1675113 -Ref: Wc Program-Footnote-2675313 -Node: Miscellaneous Programs675405 -Node: Dupword Program676593 -Node: Alarm Program678624 -Node: Translate Program683377 -Ref: Translate Program-Footnote-1687764 -Ref: Translate Program-Footnote-2688012 -Node: Labels Program688146 -Ref: Labels Program-Footnote-1691517 -Node: Word Sorting691601 -Node: History Sorting695485 -Node: Extract Program697324 -Ref: Extract Program-Footnote-1704827 -Node: Simple Sed704955 -Node: Igawk Program708017 -Ref: Igawk Program-Footnote-1723174 -Ref: Igawk Program-Footnote-2723375 -Node: Anagram Program723513 -Node: Signature Program726581 -Node: Advanced Features727681 -Node: Nondecimal Data729567 -Node: Array Sorting731150 -Node: Controlling Array Traversal731847 -Node: Array Sorting Functions740085 -Ref: Array Sorting Functions-Footnote-1743759 -Ref: Array Sorting Functions-Footnote-2743852 -Node: Two-way I/O744046 -Ref: Two-way I/O-Footnote-1749478 -Node: TCP/IP Networking749548 -Node: Profiling752392 -Node: Internationalization759889 -Node: I18N and L10N761314 -Node: Explaining gettext762000 -Ref: Explaining gettext-Footnote-1767068 -Ref: Explaining gettext-Footnote-2767252 -Node: Programmer i18n767417 -Node: Translator i18n771619 -Node: String Extraction772412 -Ref: String Extraction-Footnote-1773373 -Node: Printf Ordering773459 -Ref: Printf Ordering-Footnote-1776243 -Node: I18N Portability776307 -Ref: I18N Portability-Footnote-1778756 -Node: I18N Example778819 -Ref: I18N Example-Footnote-1781457 -Node: Gawk I18N781529 -Node: Debugger782150 -Node: Debugging783121 -Node: Debugging Concepts783554 -Node: Debugging Terms785410 -Node: Awk Debugging788007 -Node: Sample Debugging Session788899 -Node: Debugger Invocation789419 -Node: Finding The Bug790751 -Node: List of Debugger Commands797239 -Node: Breakpoint Control798573 -Node: Debugger Execution Control802237 -Node: Viewing And Changing Data805597 -Node: Execution Stack808953 -Node: Debugger Info810420 -Node: Miscellaneous Debugger Commands814402 -Node: Readline Support819578 -Node: Limitations820409 -Node: Arbitrary Precision Arithmetic822661 -Ref: Arbitrary Precision Arithmetic-Footnote-1824310 -Node: General Arithmetic824458 -Node: Floating Point Issues826178 -Node: String Conversion Precision827059 -Ref: String Conversion Precision-Footnote-1828764 -Node: Unexpected Results828873 -Node: POSIX Floating Point Problems831026 -Ref: POSIX Floating Point Problems-Footnote-1834851 -Node: Integer Programming834889 -Node: Floating-point Programming836628 -Ref: Floating-point Programming-Footnote-1842959 -Ref: Floating-point Programming-Footnote-2843229 -Node: Floating-point Representation843493 -Node: Floating-point Context844658 -Ref: table-ieee-formats845497 -Node: Rounding Mode846881 -Ref: table-rounding-modes847360 -Ref: Rounding Mode-Footnote-1850375 -Node: Gawk and MPFR850554 -Node: Arbitrary Precision Floats851809 -Ref: Arbitrary Precision Floats-Footnote-1854252 -Node: Setting Precision854568 -Ref: table-predefined-precision-strings855254 -Node: Setting Rounding Mode857399 -Ref: table-gawk-rounding-modes857803 -Node: Floating-point Constants858990 -Node: Changing Precision860419 -Ref: Changing Precision-Footnote-1861816 -Node: Exact Arithmetic861990 -Node: Arbitrary Precision Integers865128 -Ref: Arbitrary Precision Integers-Footnote-1868146 -Node: Dynamic Extensions868293 -Node: Extension Intro869751 -Node: Plugin License871016 -Node: Extension Mechanism Outline871701 -Ref: load-extension872118 -Ref: load-new-function873596 -Ref: call-new-function874591 -Node: Extension API Description876606 -Node: Extension API Functions Introduction877819 -Node: General Data Types882685 -Ref: General Data Types-Footnote-1888284 -Node: Requesting Values888583 -Ref: table-value-types-returned889314 -Node: Constructor Functions890268 -Node: Registration Functions893288 -Node: Extension Functions893973 -Node: Exit Callback Functions896198 -Node: Extension Version String897447 -Node: Input Parsers898097 -Node: Output Wrappers907854 -Node: Two-way processors912364 -Node: Printing Messages914572 -Ref: Printing Messages-Footnote-1915649 -Node: Updating `ERRNO'915801 -Node: Accessing Parameters916540 -Node: Symbol Table Access917770 -Node: Symbol table by name918282 -Node: Symbol table by cookie920029 -Ref: Symbol table by cookie-Footnote-1924159 -Node: Cached values924222 -Ref: Cached values-Footnote-1927671 -Node: Array Manipulation927762 -Ref: Array Manipulation-Footnote-1928860 -Node: Array Data Types928899 -Ref: Array Data Types-Footnote-1931602 -Node: Array Functions931694 -Node: Flattening Arrays935460 -Node: Creating Arrays942312 -Node: Extension API Variables947037 -Node: Extension Versioning947673 -Node: Extension API Informational Variables949574 -Node: Extension API Boilerplate950660 -Node: Finding Extensions954464 -Node: Extension Example955024 -Node: Internal File Description955754 -Node: Internal File Ops959845 -Ref: Internal File Ops-Footnote-1971353 -Node: Using Internal File Ops971493 -Ref: Using Internal File Ops-Footnote-1973846 -Node: Extension Samples974112 -Node: Extension Sample File Functions975636 -Node: Extension Sample Fnmatch984121 -Node: Extension Sample Fork985847 -Node: Extension Sample Inplace987065 -Node: Extension Sample Ord988843 -Node: Extension Sample Readdir989679 -Node: Extension Sample Revout991211 -Node: Extension Sample Rev2way991804 -Node: Extension Sample Read write array992494 -Node: Extension Sample Readfile994377 -Node: Extension Sample API Tests995195 -Node: Extension Sample Time995720 -Node: gawkextlib997084 -Node: Language History999844 -Node: V7/SVR3.11001366 -Node: SVR41003686 -Node: POSIX1005128 -Node: BTL1006514 -Node: POSIX/GNU1007248 -Node: Common Extensions1012783 -Node: Ranges and Locales1014089 -Ref: Ranges and Locales-Footnote-11018707 -Ref: Ranges and Locales-Footnote-21018734 -Ref: Ranges and Locales-Footnote-31018994 -Node: Contributors1019215 -Node: Installation1024290 -Node: Gawk Distribution1025184 -Node: Getting1025668 -Node: Extracting1026494 -Node: Distribution contents1028186 -Node: Unix Installation1033706 -Node: Quick Installation1034323 -Node: Additional Configuration Options1036767 -Node: Configuration Philosophy1038244 -Node: Non-Unix Installation1040598 -Node: PC Installation1041056 -Node: PC Binary Installation1042355 -Node: PC Compiling1044203 -Node: PC Testing1047147 -Node: PC Using1048323 -Node: Cygwin1052508 -Node: MSYS1053508 -Node: VMS Installation1054022 -Node: VMS Compilation1054625 -Ref: VMS Compilation-Footnote-11055632 -Node: VMS Installation Details1055690 -Node: VMS Running1057325 -Node: VMS Old Gawk1058932 -Node: Bugs1059406 -Node: Other Versions1063262 -Node: Notes1069346 -Node: Compatibility Mode1070146 -Node: Additions1070929 -Node: Accessing The Source1071856 -Node: Adding Code1073296 -Node: New Ports1079341 -Node: Derived Files1083476 -Ref: Derived Files-Footnote-11088797 -Ref: Derived Files-Footnote-21088831 -Ref: Derived Files-Footnote-31089431 -Node: Future Extensions1089529 -Node: Implementation Limitations1090106 -Node: Extension Design1091358 -Node: Old Extension Problems1092512 -Ref: Old Extension Problems-Footnote-11094020 -Node: Extension New Mechanism Goals1094077 -Ref: Extension New Mechanism Goals-Footnote-11097442 -Node: Extension Other Design Decisions1097628 -Node: Extension Future Growth1099734 -Node: Old Extension Mechanism1100570 -Node: Basic Concepts1102310 -Node: Basic High Level1102991 -Ref: figure-general-flow1103262 -Ref: figure-process-flow1103861 -Ref: Basic High Level-Footnote-11107090 -Node: Basic Data Typing1107275 -Node: Glossary1110630 -Node: Copying1136092 -Node: GNU Free Documentation License1173649 -Node: Index1198786 ->>>>>>> gawk-4.1-stable +Ref: Auto-set-Footnote-1426540 +Ref: Auto-set-Footnote-2426745 +Node: ARGC and ARGV426801 +Node: Arrays430652 +Node: Array Basics432157 +Node: Array Intro432983 +Node: Reference to Elements437300 +Node: Assigning Elements439570 +Node: Array Example440061 +Node: Scanning an Array441793 +Node: Controlling Scanning444107 +Ref: Controlling Scanning-Footnote-1449030 +Node: Delete449346 +Ref: Delete-Footnote-1452111 +Node: Numeric Array Subscripts452168 +Node: Uninitialized Subscripts454351 +Node: Multidimensional455978 +Node: Multiscanning459070 +Node: Arrays of Arrays460659 +Node: Functions465299 +Node: Built-in466118 +Node: Calling Built-in467196 +Node: Numeric Functions469184 +Ref: Numeric Functions-Footnote-1473016 +Ref: Numeric Functions-Footnote-2473373 +Ref: Numeric Functions-Footnote-3473421 +Node: String Functions473690 +Ref: String Functions-Footnote-1497248 +Ref: String Functions-Footnote-2497377 +Ref: String Functions-Footnote-3497625 +Node: Gory Details497712 +Ref: table-sub-escapes499391 +Ref: table-sub-posix-92500745 +Ref: table-sub-proposed502096 +Ref: table-posix-sub503450 +Ref: table-gensub-escapes504995 +Ref: Gory Details-Footnote-1506171 +Ref: Gory Details-Footnote-2506222 +Node: I/O Functions506373 +Ref: I/O Functions-Footnote-1513358 +Node: Time Functions513505 +Ref: Time Functions-Footnote-1524438 +Ref: Time Functions-Footnote-2524506 +Ref: Time Functions-Footnote-3524664 +Ref: Time Functions-Footnote-4524775 +Ref: Time Functions-Footnote-5524887 +Ref: Time Functions-Footnote-6525114 +Node: Bitwise Functions525380 +Ref: table-bitwise-ops525942 +Ref: Bitwise Functions-Footnote-1530163 +Node: Type Functions530347 +Node: I18N Functions531498 +Node: User-defined533125 +Node: Definition Syntax533929 +Ref: Definition Syntax-Footnote-1538839 +Node: Function Example538908 +Node: Function Caveats541502 +Node: Calling A Function541923 +Node: Variable Scope543038 +Node: Pass By Value/Reference546001 +Node: Return Statement549509 +Node: Dynamic Typing552490 +Node: Indirect Calls553421 +Node: Library Functions563106 +Ref: Library Functions-Footnote-1566619 +Ref: Library Functions-Footnote-2566762 +Node: Library Names566933 +Ref: Library Names-Footnote-1570404 +Ref: Library Names-Footnote-2570624 +Node: General Functions570710 +Node: Strtonum Function571738 +Node: Assert Function574668 +Node: Round Function577994 +Node: Cliff Random Function579537 +Node: Ordinal Functions580553 +Ref: Ordinal Functions-Footnote-1583623 +Ref: Ordinal Functions-Footnote-2583875 +Node: Join Function584084 +Ref: Join Function-Footnote-1585855 +Node: Getlocaltime Function586055 +Node: Readfile Function589796 +Node: Data File Management591635 +Node: Filetrans Function592267 +Node: Rewind Function596336 +Node: File Checking597723 +Node: Empty Files598817 +Node: Ignoring Assigns601047 +Node: Getopt Function602600 +Ref: Getopt Function-Footnote-1613903 +Node: Passwd Functions614106 +Ref: Passwd Functions-Footnote-1623081 +Node: Group Functions623169 +Node: Walking Arrays631253 +Node: Sample Programs633390 +Node: Running Examples634064 +Node: Clones634792 +Node: Cut Program636016 +Node: Egrep Program645861 +Ref: Egrep Program-Footnote-1653634 +Node: Id Program653744 +Node: Split Program657360 +Ref: Split Program-Footnote-1660879 +Node: Tee Program661007 +Node: Uniq Program663810 +Node: Wc Program671239 +Ref: Wc Program-Footnote-1675505 +Ref: Wc Program-Footnote-2675705 +Node: Miscellaneous Programs675797 +Node: Dupword Program676985 +Node: Alarm Program679016 +Node: Translate Program683769 +Ref: Translate Program-Footnote-1688156 +Ref: Translate Program-Footnote-2688404 +Node: Labels Program688538 +Ref: Labels Program-Footnote-1691909 +Node: Word Sorting691993 +Node: History Sorting695877 +Node: Extract Program697716 +Ref: Extract Program-Footnote-1705219 +Node: Simple Sed705347 +Node: Igawk Program708409 +Ref: Igawk Program-Footnote-1723566 +Ref: Igawk Program-Footnote-2723767 +Node: Anagram Program723905 +Node: Signature Program726973 +Node: Advanced Features728073 +Node: Nondecimal Data729959 +Node: Array Sorting731542 +Node: Controlling Array Traversal732239 +Node: Array Sorting Functions740477 +Ref: Array Sorting Functions-Footnote-1744151 +Ref: Array Sorting Functions-Footnote-2744244 +Node: Two-way I/O744438 +Ref: Two-way I/O-Footnote-1749870 +Node: TCP/IP Networking749940 +Node: Profiling752784 +Node: Internationalization760281 +Node: I18N and L10N761706 +Node: Explaining gettext762392 +Ref: Explaining gettext-Footnote-1767460 +Ref: Explaining gettext-Footnote-2767644 +Node: Programmer i18n767809 +Node: Translator i18n772011 +Node: String Extraction772804 +Ref: String Extraction-Footnote-1773765 +Node: Printf Ordering773851 +Ref: Printf Ordering-Footnote-1776635 +Node: I18N Portability776699 +Ref: I18N Portability-Footnote-1779148 +Node: I18N Example779211 +Ref: I18N Example-Footnote-1781849 +Node: Gawk I18N781921 +Node: Debugger782542 +Node: Debugging783513 +Node: Debugging Concepts783946 +Node: Debugging Terms785802 +Node: Awk Debugging788399 +Node: Sample Debugging Session789291 +Node: Debugger Invocation789811 +Node: Finding The Bug791143 +Node: List of Debugger Commands797631 +Node: Breakpoint Control798965 +Node: Debugger Execution Control802629 +Node: Viewing And Changing Data805989 +Node: Execution Stack809345 +Node: Debugger Info810812 +Node: Miscellaneous Debugger Commands814794 +Node: Readline Support819970 +Node: Limitations820801 +Node: Arbitrary Precision Arithmetic823053 +Ref: Arbitrary Precision Arithmetic-Footnote-1824702 +Node: General Arithmetic824850 +Node: Floating Point Issues826570 +Node: String Conversion Precision827451 +Ref: String Conversion Precision-Footnote-1829156 +Node: Unexpected Results829265 +Node: POSIX Floating Point Problems831418 +Ref: POSIX Floating Point Problems-Footnote-1835243 +Node: Integer Programming835281 +Node: Floating-point Programming837020 +Ref: Floating-point Programming-Footnote-1843351 +Ref: Floating-point Programming-Footnote-2843621 +Node: Floating-point Representation843885 +Node: Floating-point Context845050 +Ref: table-ieee-formats845889 +Node: Rounding Mode847273 +Ref: table-rounding-modes847752 +Ref: Rounding Mode-Footnote-1850767 +Node: Gawk and MPFR850946 +Node: Arbitrary Precision Floats852201 +Ref: Arbitrary Precision Floats-Footnote-1854644 +Node: Setting Precision854960 +Ref: table-predefined-precision-strings855646 +Node: Setting Rounding Mode857791 +Ref: table-gawk-rounding-modes858195 +Node: Floating-point Constants859382 +Node: Changing Precision860811 +Ref: Changing Precision-Footnote-1862208 +Node: Exact Arithmetic862382 +Node: Arbitrary Precision Integers865520 +Ref: Arbitrary Precision Integers-Footnote-1868538 +Node: Dynamic Extensions868685 +Node: Extension Intro870143 +Node: Plugin License871408 +Node: Extension Mechanism Outline872093 +Ref: load-extension872510 +Ref: load-new-function873988 +Ref: call-new-function874983 +Node: Extension API Description876998 +Node: Extension API Functions Introduction878211 +Node: General Data Types883077 +Ref: General Data Types-Footnote-1888676 +Node: Requesting Values888975 +Ref: table-value-types-returned889706 +Node: Constructor Functions890660 +Node: Registration Functions893680 +Node: Extension Functions894365 +Node: Exit Callback Functions896590 +Node: Extension Version String897839 +Node: Input Parsers898489 +Node: Output Wrappers908246 +Node: Two-way processors912756 +Node: Printing Messages914964 +Ref: Printing Messages-Footnote-1916041 +Node: Updating `ERRNO'916193 +Node: Accessing Parameters916932 +Node: Symbol Table Access918162 +Node: Symbol table by name918674 +Node: Symbol table by cookie920421 +Ref: Symbol table by cookie-Footnote-1924551 +Node: Cached values924614 +Ref: Cached values-Footnote-1928063 +Node: Array Manipulation928154 +Ref: Array Manipulation-Footnote-1929252 +Node: Array Data Types929291 +Ref: Array Data Types-Footnote-1931994 +Node: Array Functions932086 +Node: Flattening Arrays935852 +Node: Creating Arrays942704 +Node: Extension API Variables947429 +Node: Extension Versioning948065 +Node: Extension API Informational Variables949966 +Node: Extension API Boilerplate951052 +Node: Finding Extensions954856 +Node: Extension Example955416 +Node: Internal File Description956146 +Node: Internal File Ops960237 +Ref: Internal File Ops-Footnote-1971745 +Node: Using Internal File Ops971885 +Ref: Using Internal File Ops-Footnote-1974238 +Node: Extension Samples974504 +Node: Extension Sample File Functions976028 +Node: Extension Sample Fnmatch984513 +Node: Extension Sample Fork986239 +Node: Extension Sample Inplace987457 +Node: Extension Sample Ord989235 +Node: Extension Sample Readdir990071 +Node: Extension Sample Revout991603 +Node: Extension Sample Rev2way992196 +Node: Extension Sample Read write array992886 +Node: Extension Sample Readfile994769 +Node: Extension Sample API Tests995587 +Node: Extension Sample Time996112 +Node: gawkextlib997476 +Node: Language History1000236 +Node: V7/SVR3.11001758 +Node: SVR41004078 +Node: POSIX1005520 +Node: BTL1006906 +Node: POSIX/GNU1007640 +Node: Common Extensions1013175 +Node: Ranges and Locales1014481 +Ref: Ranges and Locales-Footnote-11019099 +Ref: Ranges and Locales-Footnote-21019126 +Ref: Ranges and Locales-Footnote-31019386 +Node: Contributors1019607 +Node: Installation1024682 +Node: Gawk Distribution1025576 +Node: Getting1026060 +Node: Extracting1026886 +Node: Distribution contents1028578 +Node: Unix Installation1034098 +Node: Quick Installation1034715 +Node: Additional Configuration Options1037159 +Node: Configuration Philosophy1038636 +Node: Non-Unix Installation1040990 +Node: PC Installation1041448 +Node: PC Binary Installation1042747 +Node: PC Compiling1044595 +Node: PC Testing1047539 +Node: PC Using1048715 +Node: Cygwin1052900 +Node: MSYS1053900 +Node: VMS Installation1054414 +Node: VMS Compilation1055017 +Ref: VMS Compilation-Footnote-11056024 +Node: VMS Installation Details1056082 +Node: VMS Running1057717 +Node: VMS Old Gawk1059324 +Node: Bugs1059798 +Node: Other Versions1063654 +Node: Notes1069738 +Node: Compatibility Mode1070538 +Node: Additions1071321 +Node: Accessing The Source1072248 +Node: Adding Code1073688 +Node: New Ports1079733 +Node: Derived Files1083868 +Ref: Derived Files-Footnote-11089189 +Ref: Derived Files-Footnote-21089223 +Ref: Derived Files-Footnote-31089823 +Node: Future Extensions1089921 +Node: Implementation Limitations1090498 +Node: Extension Design1091750 +Node: Old Extension Problems1092904 +Ref: Old Extension Problems-Footnote-11094412 +Node: Extension New Mechanism Goals1094469 +Ref: Extension New Mechanism Goals-Footnote-11097834 +Node: Extension Other Design Decisions1098020 +Node: Extension Future Growth1100126 +Node: Old Extension Mechanism1100962 +Node: Basic Concepts1102702 +Node: Basic High Level1103383 +Ref: figure-general-flow1103654 +Ref: figure-process-flow1104253 +Ref: Basic High Level-Footnote-11107482 +Node: Basic Data Typing1107667 +Node: Glossary1111022 +Node: Copying1136484 +Node: GNU Free Documentation License1174041 +Node: Index1199178  End Tag Table -- cgit v1.2.3 From 70778853494d7ec00a77d42617fdd030c74c9bec Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Thu, 12 Dec 2013 12:30:20 +0200 Subject: Fix presentation of asort and asorti. --- doc/gawk.info | 934 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 467 insertions(+), 467 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 24f08018..42228cae 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -10439,42 +10439,45 @@ available: default `awk' behavior. `"@ind_str_asc"' - Order by indices compared as strings; this is the most basic sort. - (Internally, array indices are always strings, so with `a[2*5] = 1' - the index is `"10"' rather than numeric 10.) + Order by indices in ascending order compared as strings; this is + the most basic sort. (Internally, array indices are always + strings, so with `a[2*5] = 1' the index is `"10"' rather than + numeric 10.) `"@ind_num_asc"' - Order by indices but force them to be treated as numbers in the - process. Any index with a non-numeric value will end up - positioned as if it were zero. + Order by indices in ascending order but force them to be treated + as numbers in the process. Any index with a non-numeric value + will end up positioned as if it were zero. `"@val_type_asc"' - Order by element values rather than indices. Ordering is by the - type assigned to the element (*note Typing and Comparison::). All - numeric values come before all string values, which in turn come - before all subarrays. (Subarrays have not been described yet; - *note Arrays of Arrays::). + Order by element values in ascending order (rather than by + indices). Ordering is by the type assigned to the element (*note + Typing and Comparison::). All numeric values come before all + string values, which in turn come before all subarrays. + (Subarrays have not been described yet; *note Arrays of Arrays::.) `"@val_str_asc"' - Order by element values rather than by indices. Scalar values are - compared as strings. Subarrays, if present, come out last. + Order by element values in ascending order (rather than by + indices). Scalar values are compared as strings. Subarrays, if + present, come out last. `"@val_num_asc"' - Order by element values rather than by indices. Scalar values are - compared as numbers. Subarrays, if present, come out last. When - numeric values are equal, the string values are used to provide an - ordering: this guarantees consistent results across different - versions of the C `qsort()' function,(1) which `gawk' uses - internally to perform the sorting. + Order by element values in ascending order (rather than by + indices). Scalar values are compared as numbers. Subarrays, if + present, come out last. When numeric values are equal, the string + values are used to provide an ordering: this guarantees consistent + results across different versions of the C `qsort()' function,(1) + which `gawk' uses internally to perform the sorting. `"@ind_str_desc"' - Reverse order from the most basic sort. + String indices ordered from high to low. `"@ind_num_desc"' Numeric indices ordered from high to low. `"@val_type_desc"' - Element values, based on type, in descending order. + Element values, based on type, ordered from high to low. + Subarrays, if present, come out first. `"@val_str_desc"' Element values, treated as strings, ordered from high to low. @@ -11187,13 +11190,15 @@ File: gawk.info, Node: String Functions, Next: I/O Functions, Prev: Numeric F ----------------------------------- The functions in this minor node look at or change the text of one or -more strings. `gawk' understands locales (*note Locales::), and does -all string processing in terms of _characters_, not _bytes_. This -distinction is particularly important to understand for locales where -one character may be represented by multiple bytes. Thus, for example, -`length()' returns the number of characters in a string, and not the -number of bytes used to represent those characters, Similarly, -`index()' works with character indices, and not byte indices. +more strings. + + `gawk' understands locales (*note Locales::), and does all string +processing in terms of _characters_, not _bytes_. This distinction is +particularly important to understand for locales where one character +may be represented by multiple bytes. Thus, for example, `length()' +returns the number of characters in a string, and not the number of +bytes used to represent those characters. Similarly, `index()' works +with character indices, and not byte indices. In the following list, optional parameters are enclosed in square brackets ([ ]). Several functions perform string substitution; the @@ -11209,26 +11214,26 @@ pound sign (`#'): `gensub()'. `asort(SOURCE [, DEST [, HOW ] ]) #' - Return the number of elements in the array SOURCE. `gawk' sorts - the contents of SOURCE and replaces the indices of the sorted - values of SOURCE with sequential integers starting with one. If - the optional array DEST is specified, then SOURCE is duplicated - into DEST. DEST is then sorted, leaving the indices of SOURCE - unchanged. The optional third argument HOW is a string which - controls the rule for comparing values, and the sort direction. A - single space is required between the comparison mode, `string' or - `number', and the direction specification, `ascending' or - `descending'. You can omit direction and/or mode in which case it - will default to `ascending' and `string', respectively. An empty - string "" is the same as the default `"ascending string"' for the - value of HOW. If the `source' array contains subarrays as values, - they will come out last(first) in the `dest' array for - `ascending'(`descending') order specification. The value of - `IGNORECASE' affects the sorting. The third argument can also be - a user-defined function name in which case the value returned by - the function is used to order the array elements before - constructing the result array. *Note Array Sorting Functions::, - for more information. +`asorti(SOURCE [, DEST [, HOW ] ]) #' + These two functions are similar in behavior, so they are described + together. + + NOTE: The following description ignores the third argument, + HOW, since it requires understanding features that we have + not discussed yet. Thus, the discussion here is a deliberate + simplification. (We do provide all the details later on: + *Note Array Sorting Functions::, for the full story.) + + Both functions return the number of elements in the array SOURCE. + For `asort()', `gawk' sorts the values of SOURCE and replaces the + indices of the sorted values of SOURCE with sequential integers + starting with one. If the optional array DEST is specified, then + SOURCE is duplicated into DEST. DEST is then sorted, leaving the + indices of SOURCE unchanged. + + When comparing strings, `IGNORECASE' affects the sorting. If the + SOURCE array contains subarrays as values (*note Arrays of + Arrays::), they will come last, after all scalar values. For example, if the contents of `a' are as follows: @@ -11246,23 +11251,16 @@ pound sign (`#'): a[2] = "de" a[3] = "sac" - In order to reverse the direction of the sorted results in the - above example, `asort()' can be called with three arguments as - follows: - - asort(a, a, "descending") - - The `asort()' function is described in more detail in *note Array - Sorting Functions::. `asort()' is a `gawk' extension; it is not - available in compatibility mode (*note Options::). + The `asorti()' function works similarly to `asort()', however, the + _indices_ are sorted, instead of the values. Thus, in the previous + example, starting with the same initial set of indices and values + in `a', calling `asorti(a)' would yield: -`asorti(SOURCE [, DEST [, HOW ] ]) #' - Return the number of elements in the array SOURCE. It works - similarly to `asort()', however, the _indices_ are sorted, instead - of the values. (Here too, `IGNORECASE' affects the sorting.) + a[1] = "first" + a[2] = "last" + a[3] = "middle" - The `asorti()' function is described in more detail in *note Array - Sorting Functions::. `asorti()' is a `gawk' extension; it is not + `asort()' and `asorti()' are `gawk' extensions; they are not available in compatibility mode (*note Options::). `gensub(REGEXP, REPLACEMENT, HOW [, TARGET]) #' @@ -18226,7 +18224,7 @@ seemingly ordered data: function cmp_randomize(i1, v1, i2, v2) { - # random order + # random order (caution: this may never terminate!) return (2 - 4 * rand()) } @@ -18240,7 +18238,7 @@ elements with otherwise equal values is to include the indices in the comparison rules. Note that doing this may make the loop traversal less efficient, so consider it only if necessary. The following comparison functions force a deterministic order, and are based on the -fact that the indices of two elements are never equal: +fact that the (string) indices of two elements are never equal: function cmp_numeric(i1, v1, i2, v2) { @@ -18299,9 +18297,9 @@ functions (*note String Functions::) for sorting arrays. For example: After the call to `asort()', the array `data' is indexed from 1 to some number N, the total number of elements in `data'. (This count is `asort()''s return value.) `data[1]' <= `data[2]' <= `data[3]', and so -on. The comparison is based on the type of the elements (*note Typing -and Comparison::). All numeric values come before all string values, -which in turn come before all subarrays. +on. The default comparison is based on the type of the elements (*note +Typing and Comparison::). All numeric values come before all string +values, which in turn come before all subarrays. An important side effect of calling `asort()' is that _the array's original indices are irrevocably lost_. As this isn't always @@ -18316,21 +18314,11 @@ desirable, `asort()' accepts a second argument: and then sorts `dest', destroying its indices. However, the `source' array is not affected. - `asort()' accepts a third string argument to control comparison of -array elements. As with `PROCINFO["sorted_in"]', this argument may be -one of the predefined names that `gawk' provides (*note Controlling -Scanning::), or the name of a user-defined function (*note Controlling -Array Traversal::). - - NOTE: In all cases, the sorted element values consist of the - original array's element values. The ability to control - comparison merely affects the way in which they are sorted. - Often, what's needed is to sort on the values of the _indices_ instead of the values of the elements. To do that, use the `asorti()' -function. The interface is identical to that of `asort()', except that -the index values are used for sorting, and become the values of the -result array: +function. The interface and behavior are identical to that of +`asort()', except that the index values are used for sorting, and +become the values of the result array: { source[$0] = some_func($0) } @@ -18345,32 +18333,41 @@ result array: } } - Similar to `asort()', in all cases, the sorted element values -consist of the original array's indices. The ability to control -comparison merely affects the way in which they are sorted. - - Sorting the array by replacing the indices provides maximal -flexibility. To traverse the elements in decreasing order, use a loop -that goes from N down to 1, either over the elements or over the -indices.(1) - - Copying array indices and elements isn't expensive in terms of -memory. Internally, `gawk' maintains "reference counts" to data. For -example, when `asort()' copies the first array to the second one, there -is only one copy of the original array elements' data, even though both -arrays use the values. + So far, so good. Now it starts to get interesting. Both `asort()' +and `asorti()' accept a third string argument to control comparison of +array elements. In *note String Functions::, we ignored this third +argument; however, the time has now come to describe how this argument +affects these two functions. + + Basically, the third argument specifies how the array is to be +sorted. There are two possibilities. As with `PROCINFO["sorted_in"]', +this argument may be one of the predefined names that `gawk' provides +(*note Controlling Scanning::), or it may be the name of a user-defined +function (*note Controlling Array Traversal::). + + In the latter case, _the function can compare elements in any way it +chooses_, taking into account just the indices, just the values, or +both. This is extremely powerful. + + Once the array is sorted, `asort()' takes the _values_ in their +final order, and uses them to fill in the result array, whereas +`asorti()' takes the _indices_ in their final order, and uses them to +fill in the result array. + + NOTE: Copying array indices and elements isn't expensive in terms + of memory. Internally, `gawk' maintains "reference counts" to + data. For example, when `asort()' copies the first array to the + second one, there is only one copy of the original array elements' + data, even though both arrays use the values. Because `IGNORECASE' affects string comparisons, the value of `IGNORECASE' also affects sorting for both `asort()' and `asorti()'. Note also that the locale's sorting order does _not_ come into play; -comparisons are based on character values only.(2) Caveat Emptor. +comparisons are based on character values only.(1) Caveat Emptor. ---------- Footnotes ---------- - (1) You may also use one of the predefined sorting names that sorts -in decreasing order. - - (2) This is true because locale-based comparison occurs only when in + (1) This is true because locale-based comparison occurs only when in POSIX compatibility mode, and since `asort()' and `asorti()' are `gawk' extensions, they are not available in that case. @@ -29712,7 +29709,7 @@ Index * arrays, elements, order of: Scanning an Array. (line 48) * arrays, elements, referencing: Reference to Elements. (line 6) -* arrays, elements, retrieving number of: String Functions. (line 29) +* arrays, elements, retrieving number of: String Functions. (line 32) * arrays, for statement and: Scanning an Array. (line 20) * arrays, IGNORECASE variable and: Array Intro. (line 91) * arrays, indexing: Array Intro. (line 49) @@ -29724,7 +29721,7 @@ Index * arrays, sorting: Array Sorting Functions. (line 6) * arrays, sorting, IGNORECASE variable and: Array Sorting Functions. - (line 81) + (line 83) * arrays, sparse: Array Intro. (line 70) * arrays, subscripts: Numeric Array Subscripts. (line 6) @@ -29736,10 +29733,14 @@ Index * ASCII: Ordinal Functions. (line 45) * asort() function (gawk) <1>: Array Sorting Functions. (line 6) -* asort() function (gawk): String Functions. (line 29) +* asort() function (gawk): String Functions. (line 32) * asort() function (gawk), arrays, sorting: Array Sorting Functions. (line 6) -* asorti() function (gawk): String Functions. (line 77) +* asorti() function (gawk) <1>: Array Sorting Functions. + (line 6) +* asorti() function (gawk): String Functions. (line 32) +* asorti() function (gawk), arrays, sorting: Array Sorting Functions. + (line 6) * assert() function (C library): Assert Function. (line 6) * assert() user-defined function: Assert Function. (line 28) * assertions: Assert Function. (line 6) @@ -29981,7 +29982,7 @@ Index * caret (^), regexp operator: Regexp Operators. (line 22) * case keyword: Switch Statement. (line 6) * case sensitivity, array indices and: Array Intro. (line 91) -* case sensitivity, converting case: String Functions. (line 524) +* case sensitivity, converting case: String Functions. (line 519) * case sensitivity, example programs: Library Functions. (line 53) * case sensitivity, gawk: Case-sensitivity. (line 26) * case sensitivity, regexps and <1>: User-modified. (line 82) @@ -30058,7 +30059,7 @@ Index * common extensions, delete to delete entire arrays: Delete. (line 39) * common extensions, func keyword: Definition Syntax. (line 83) * common extensions, length() applied to an array: String Functions. - (line 198) + (line 193) * common extensions, RS as a regexp: Records. (line 120) * common extensions, single character fields: Single Character Fields. (line 6) @@ -30103,7 +30104,7 @@ Index (line 6) * continue statement: Continue Statement. (line 6) * control statements: Statements. (line 6) -* converting, case: String Functions. (line 524) +* converting, case: String Functions. (line 519) * converting, dates to timestamps: Time Functions. (line 75) * converting, during subscripting: Numeric Array Subscripts. (line 31) @@ -30163,7 +30164,7 @@ Index (line 20) * dark corner, input files: Records. (line 103) * dark corner, invoking awk: Command Line. (line 16) -* dark corner, length() function: String Functions. (line 184) +* dark corner, length() function: String Functions. (line 179) * dark corner, locale's decimal point character: Conversion. (line 77) * dark corner, multiline records: Multiple Line. (line 35) * dark corner, NF variable, decrementing: Changing Fields. (line 107) @@ -30174,7 +30175,7 @@ Index (line 147) * dark corner, regexp constants, as arguments to user-defined functions: Using Constant Regexps. (line 43) -* dark corner, split() function: String Functions. (line 363) +* dark corner, split() function: String Functions. (line 358) * dark corner, strings, storing: Records. (line 195) * dark corner, value of ARGV[0]: Auto-set. (line 35) * data, fixed-width: Constant Size. (line 9) @@ -30306,7 +30307,7 @@ Index * deleting elements in arrays: Delete. (line 6) * deleting entire arrays: Delete. (line 39) * Demaille, Akim: Acknowledgments. (line 60) -* differences between gawk and awk: String Functions. (line 198) +* differences between gawk and awk: String Functions. (line 193) * differences in awk and gawk, ARGC/ARGV variables: ARGC and ARGV. (line 88) * differences in awk and gawk, ARGIND variable: Auto-set. (line 40) @@ -30351,7 +30352,7 @@ Index (line 34) * differences in awk and gawk, LINT variable: User-modified. (line 98) * differences in awk and gawk, match() function: String Functions. - (line 261) + (line 256) * differences in awk and gawk, print/printf statements: Format Modifiers. (line 13) * differences in awk and gawk, PROCINFO array: Auto-set. (line 133) @@ -30365,11 +30366,11 @@ Index * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. - (line 351) + (line 346) * differences in awk and gawk, strings: Scalar Constants. (line 20) * differences in awk and gawk, strings, storing: Records. (line 191) * differences in awk and gawk, strtonum() function (gawk): String Functions. - (line 406) + (line 401) * differences in awk and gawk, SYMTAB variable: Auto-set. (line 274) * differences in awk and gawk, TEXTDOMAIN variable: User-modified. (line 162) @@ -30511,7 +30512,7 @@ Index * extensions, common, delete to delete entire arrays: Delete. (line 39) * extensions, common, func keyword: Definition Syntax. (line 83) * extensions, common, length() applied to an array: String Functions. - (line 198) + (line 193) * extensions, common, RS as a regexp: Records. (line 120) * extensions, common, single character fields: Single Character Fields. (line 6) @@ -30775,8 +30776,8 @@ Index * gawk, function arguments and: Calling Built-in. (line 16) * gawk, hexadecimal numbers and: Nondecimal-numbers. (line 42) * gawk, IGNORECASE variable in <1>: Array Sorting Functions. - (line 81) -* gawk, IGNORECASE variable in <2>: String Functions. (line 29) + (line 83) +* gawk, IGNORECASE variable in <2>: String Functions. (line 32) * gawk, IGNORECASE variable in <3>: Array Intro. (line 91) * gawk, IGNORECASE variable in <4>: User-modified. (line 82) * gawk, IGNORECASE variable in: Case-sensitivity. (line 26) @@ -30830,7 +30831,7 @@ Index * gawkextlib project: gawkextlib. (line 6) * General Public License (GPL): Glossary. (line 314) * General Public License, See GPL: Manual History. (line 11) -* gensub() function (gawk) <1>: String Functions. (line 86) +* gensub() function (gawk) <1>: String Functions. (line 81) * gensub() function (gawk): Using Constant Regexps. (line 43) * gensub() function (gawk), escape processing: Gory Details. (line 6) @@ -30897,10 +30898,10 @@ Index * group database, reading: Group Functions. (line 6) * group file: Group Functions. (line 6) * groups, information about: Group Functions. (line 6) -* gsub() function <1>: String Functions. (line 139) +* gsub() function <1>: String Functions. (line 134) * gsub() function: Using Constant Regexps. (line 43) -* gsub() function, arguments of: String Functions. (line 464) +* gsub() function, arguments of: String Functions. (line 459) * gsub() function, escape processing: Gory Details. (line 6) * h debugger command (alias for help): Miscellaneous Debugger Commands. (line 66) @@ -30935,13 +30936,13 @@ Index * igawk.sh program: Igawk Program. (line 124) * ignore debugger command: Breakpoint Control. (line 87) * IGNORECASE variable <1>: Array Sorting Functions. - (line 81) -* IGNORECASE variable <2>: String Functions. (line 29) + (line 83) +* IGNORECASE variable <2>: String Functions. (line 32) * IGNORECASE variable <3>: Array Intro. (line 91) * IGNORECASE variable <4>: User-modified. (line 82) * IGNORECASE variable: Case-sensitivity. (line 26) * IGNORECASE variable, array sorting and: Array Sorting Functions. - (line 81) + (line 83) * IGNORECASE variable, array subscripts and: Array Intro. (line 91) * IGNORECASE variable, in example programs: Library Functions. (line 53) @@ -30960,7 +30961,7 @@ Index * in operator: Comparison Operators. (line 11) * increment operators: Increment Ops. (line 6) -* index() function: String Functions. (line 155) +* index() function: String Functions. (line 150) * indexing arrays: Array Intro. (line 49) * indirect function calls: Indirect Calls. (line 6) * infinite precision: Arbitrary Precision Arithmetic. @@ -31072,7 +31073,7 @@ Index (line 11) * left shift, bitwise: Bitwise Functions. (line 32) * leftmost longest match: Multiple Line. (line 26) -* length() function: String Functions. (line 168) +* length() function: String Functions. (line 163) * Lesser General Public License (LGPL): Glossary. (line 405) * LGPL (Lesser General Public License): Glossary. (line 405) * libmawk: Other Versions. (line 120) @@ -31154,9 +31155,9 @@ Index (line 6) * marked strings, extracting: String Extraction. (line 6) * Marx, Groucho: Increment Ops. (line 60) -* match() function: String Functions. (line 208) +* match() function: String Functions. (line 203) * match() function, RSTART/RLENGTH variables: String Functions. - (line 225) + (line 220) * matching, expressions, See comparison expressions: Typing and Comparison. (line 9) * matching, leftmost longest: Multiple Line. (line 26) @@ -31349,7 +31350,7 @@ Index * parentheses () <1>: Profiling. (line 138) * parentheses (): Regexp Operators. (line 79) * password file: Passwd Functions. (line 16) -* patsplit() function (gawk): String Functions. (line 295) +* patsplit() function (gawk): String Functions. (line 290) * patterns: Patterns and Actions. (line 6) * patterns, comparison expressions as: Expression Patterns. (line 14) @@ -31402,7 +31403,7 @@ Index * portability, gawk: New Ports. (line 6) * portability, gettext library and: Explaining gettext. (line 10) * portability, internationalization and: I18N Portability. (line 6) -* portability, length() function: String Functions. (line 177) +* portability, length() function: String Functions. (line 172) * portability, new awk vs. old awk: Conversion. (line 55) * portability, next statement in user-defined functions: Pass By Value/Reference. (line 91) @@ -31410,7 +31411,7 @@ Index * portability, operators: Increment Ops. (line 60) * portability, operators, not in POSIX awk: Precedence. (line 98) * portability, POSIXLY_CORRECT environment variable: Options. (line 353) -* portability, substr() function: String Functions. (line 514) +* portability, substr() function: String Functions. (line 509) * portable object files <1>: Translator i18n. (line 6) * portable object files: Explaining gettext. (line 36) * portable object files, converting to message object files: I18N Example. @@ -31447,7 +31448,7 @@ Index * POSIX awk, FS variable and: User-modified. (line 66) * POSIX awk, function keyword in: Definition Syntax. (line 83) * POSIX awk, functions and, gsub()/sub(): Gory Details. (line 54) -* POSIX awk, functions and, length(): String Functions. (line 177) +* POSIX awk, functions and, length(): String Functions. (line 172) * POSIX awk, GNU long options and: Options. (line 15) * POSIX awk, interval expressions in: Regexp Operators. (line 135) * POSIX awk, next/nextfile statements and: Next Statement. (line 45) @@ -31597,7 +31598,7 @@ Index * redirection of input: Getline/File. (line 6) * redirection of output: Redirection. (line 6) * reference counting, sorting arrays: Array Sorting Functions. - (line 75) + (line 77) * regexp constants <1>: Comparison Operators. (line 103) * regexp constants <2>: Regexp Constants. (line 6) @@ -31666,7 +31667,7 @@ Index * right shift, bitwise: Bitwise Functions. (line 32) * Ritchie, Dennis: Basic Data Typing. (line 55) * RLENGTH variable: Auto-set. (line 253) -* RLENGTH variable, match() function and: String Functions. (line 225) +* RLENGTH variable, match() function and: String Functions. (line 220) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 32) * Robbins, Arnold <3>: Contributors. (line 130) @@ -31693,7 +31694,7 @@ Index * RS variable, multiline records and: Multiple Line. (line 17) * rshift() function (gawk): Bitwise Functions. (line 52) * RSTART variable: Auto-set. (line 259) -* RSTART variable, match() function and: String Functions. (line 225) +* RSTART variable, match() function and: String Functions. (line 220) * RT variable <1>: Auto-set. (line 266) * RT variable <2>: Getline/Variable/File. (line 10) @@ -31723,7 +31724,7 @@ Index * search paths, for source files <2>: PC Using. (line 11) * search paths, for source files <3>: Igawk Program. (line 368) * search paths, for source files: AWKPATH Variable. (line 6) -* searching: String Functions. (line 155) +* searching: String Functions. (line 150) * searching, files for regular expressions: Egrep Program. (line 6) * searching, for words: Dupword Program. (line 6) * sed utility <1>: Glossary. (line 12) @@ -31848,10 +31849,10 @@ Index * sparse arrays: Array Intro. (line 70) * Spencer, Henry: Glossary. (line 12) * split utility: Split Program. (line 6) -* split() function: String Functions. (line 317) +* split() function: String Functions. (line 312) * split() function, array elements, deleting: Delete. (line 61) * split.awk program: Split Program. (line 30) -* sprintf() function <1>: String Functions. (line 382) +* sprintf() function <1>: String Functions. (line 377) * sprintf() function: OFMT. (line 15) * sprintf() function, OFMT variable and: User-modified. (line 124) * sprintf() function, print/printf statements and: Round Function. @@ -31897,14 +31898,14 @@ Index * strings, null: Regexp Field Splitting. (line 43) * strings, numeric: Variable Typing. (line 6) -* strings, splitting: String Functions. (line 337) -* strtonum() function (gawk): String Functions. (line 389) +* strings, splitting: String Functions. (line 332) +* strtonum() function (gawk): String Functions. (line 384) * strtonum() function (gawk), --non-decimal-data option and: Nondecimal Data. (line 36) -* sub() function <1>: String Functions. (line 410) +* sub() function <1>: String Functions. (line 405) * sub() function: Using Constant Regexps. (line 43) -* sub() function, arguments of: String Functions. (line 464) +* sub() function, arguments of: String Functions. (line 459) * sub() function, escape processing: Gory Details. (line 6) * subscript separators: User-modified. (line 156) * subscripts in arrays, multidimensional: Multidimensional. (line 10) @@ -31916,7 +31917,7 @@ Index (line 6) * SUBSEP variable: User-modified. (line 156) * SUBSEP variable, multidimensional arrays: Multidimensional. (line 16) -* substr() function: String Functions. (line 483) +* substr() function: String Functions. (line 478) * Sumner, Andrew: Other Versions. (line 64) * switch statement: Switch Statement. (line 6) * SYMTAB array: Auto-set. (line 274) @@ -31971,8 +31972,8 @@ Index * timestamps, converting dates to: Time Functions. (line 75) * timestamps, formatted: Getlocaltime Function. (line 6) -* tolower() function: String Functions. (line 525) -* toupper() function: String Functions. (line 531) +* tolower() function: String Functions. (line 520) +* toupper() function: String Functions. (line 526) * tr utility: Translate Program. (line 6) * trace debugger command: Miscellaneous Debugger Commands. (line 108) @@ -31995,9 +31996,9 @@ Index * troubleshooting, gawk, fatal errors, function arguments: Calling Built-in. (line 16) * troubleshooting, getline function: File Checking. (line 25) -* troubleshooting, gsub()/sub() functions: String Functions. (line 474) -* troubleshooting, match() function: String Functions. (line 290) -* troubleshooting, patsplit() function: String Functions. (line 313) +* troubleshooting, gsub()/sub() functions: String Functions. (line 469) +* troubleshooting, match() function: String Functions. (line 285) +* troubleshooting, patsplit() function: String Functions. (line 308) * troubleshooting, print statement, omitting commas: Print Examples. (line 31) * troubleshooting, printing: Redirection. (line 118) @@ -32006,7 +32007,7 @@ Index * troubleshooting, regexp constants vs. string constants: Computed Regexps. (line 38) * troubleshooting, string concatenation: Concatenation. (line 26) -* troubleshooting, substr() function: String Functions. (line 501) +* troubleshooting, substr() function: String Functions. (line 496) * troubleshooting, system() function: I/O Functions. (line 94) * troubleshooting, typographical errors, global variables: Options. (line 112) @@ -32371,325 +32372,324 @@ Node: Assigning Elements439178 Node: Array Example439669 Node: Scanning an Array441401 Node: Controlling Scanning443715 -Ref: Controlling Scanning-Footnote-1448638 -Node: Delete448954 -Ref: Delete-Footnote-1451719 -Node: Numeric Array Subscripts451776 -Node: Uninitialized Subscripts453959 -Node: Multidimensional455586 -Node: Multiscanning458678 -Node: Arrays of Arrays460267 -Node: Functions464907 -Node: Built-in465726 -Node: Calling Built-in466804 -Node: Numeric Functions468792 -Ref: Numeric Functions-Footnote-1472624 -Ref: Numeric Functions-Footnote-2472981 -Ref: Numeric Functions-Footnote-3473029 -Node: String Functions473298 -Ref: String Functions-Footnote-1496856 -Ref: String Functions-Footnote-2496985 -Ref: String Functions-Footnote-3497233 -Node: Gory Details497320 -Ref: table-sub-escapes498999 -Ref: table-sub-posix-92500353 -Ref: table-sub-proposed501704 -Ref: table-posix-sub503058 -Ref: table-gensub-escapes504603 -Ref: Gory Details-Footnote-1505779 -Ref: Gory Details-Footnote-2505830 -Node: I/O Functions505981 -Ref: I/O Functions-Footnote-1512966 -Node: Time Functions513113 -Ref: Time Functions-Footnote-1524046 -Ref: Time Functions-Footnote-2524114 -Ref: Time Functions-Footnote-3524272 -Ref: Time Functions-Footnote-4524383 -Ref: Time Functions-Footnote-5524495 -Ref: Time Functions-Footnote-6524722 -Node: Bitwise Functions524988 -Ref: table-bitwise-ops525550 -Ref: Bitwise Functions-Footnote-1529771 -Node: Type Functions529955 -Node: I18N Functions531106 -Node: User-defined532733 -Node: Definition Syntax533537 -Ref: Definition Syntax-Footnote-1538447 -Node: Function Example538516 -Node: Function Caveats541110 -Node: Calling A Function541531 -Node: Variable Scope542646 -Node: Pass By Value/Reference545609 -Node: Return Statement549117 -Node: Dynamic Typing552098 -Node: Indirect Calls553029 -Node: Library Functions562714 -Ref: Library Functions-Footnote-1566227 -Ref: Library Functions-Footnote-2566370 -Node: Library Names566541 -Ref: Library Names-Footnote-1570012 -Ref: Library Names-Footnote-2570232 -Node: General Functions570318 -Node: Strtonum Function571346 -Node: Assert Function574276 -Node: Round Function577602 -Node: Cliff Random Function579145 -Node: Ordinal Functions580161 -Ref: Ordinal Functions-Footnote-1583231 -Ref: Ordinal Functions-Footnote-2583483 -Node: Join Function583692 -Ref: Join Function-Footnote-1585463 -Node: Getlocaltime Function585663 -Node: Readfile Function589404 -Node: Data File Management591243 -Node: Filetrans Function591875 -Node: Rewind Function595944 -Node: File Checking597331 -Node: Empty Files598425 -Node: Ignoring Assigns600655 -Node: Getopt Function602208 -Ref: Getopt Function-Footnote-1613511 -Node: Passwd Functions613714 -Ref: Passwd Functions-Footnote-1622689 -Node: Group Functions622777 -Node: Walking Arrays630861 -Node: Sample Programs632998 -Node: Running Examples633672 -Node: Clones634400 -Node: Cut Program635624 -Node: Egrep Program645469 -Ref: Egrep Program-Footnote-1653242 -Node: Id Program653352 -Node: Split Program656968 -Ref: Split Program-Footnote-1660487 -Node: Tee Program660615 -Node: Uniq Program663418 -Node: Wc Program670847 -Ref: Wc Program-Footnote-1675113 -Ref: Wc Program-Footnote-2675313 -Node: Miscellaneous Programs675405 -Node: Dupword Program676593 -Node: Alarm Program678624 -Node: Translate Program683377 -Ref: Translate Program-Footnote-1687764 -Ref: Translate Program-Footnote-2688012 -Node: Labels Program688146 -Ref: Labels Program-Footnote-1691517 -Node: Word Sorting691601 -Node: History Sorting695485 -Node: Extract Program697324 -Ref: Extract Program-Footnote-1704827 -Node: Simple Sed704955 -Node: Igawk Program708017 -Ref: Igawk Program-Footnote-1723174 -Ref: Igawk Program-Footnote-2723375 -Node: Anagram Program723513 -Node: Signature Program726581 -Node: Advanced Features727681 -Node: Nondecimal Data729567 -Node: Array Sorting731150 -Node: Controlling Array Traversal731847 -Node: Array Sorting Functions740085 -Ref: Array Sorting Functions-Footnote-1743759 -Ref: Array Sorting Functions-Footnote-2743852 -Node: Two-way I/O744046 -Ref: Two-way I/O-Footnote-1749478 -Node: TCP/IP Networking749548 -Node: Profiling752392 -Node: Internationalization759889 -Node: I18N and L10N761314 -Node: Explaining gettext762000 -Ref: Explaining gettext-Footnote-1767068 -Ref: Explaining gettext-Footnote-2767252 -Node: Programmer i18n767417 -Node: Translator i18n771619 -Node: String Extraction772412 -Ref: String Extraction-Footnote-1773373 -Node: Printf Ordering773459 -Ref: Printf Ordering-Footnote-1776243 -Node: I18N Portability776307 -Ref: I18N Portability-Footnote-1778756 -Node: I18N Example778819 -Ref: I18N Example-Footnote-1781457 -Node: Gawk I18N781529 -Node: Debugger782150 -Node: Debugging783121 -Node: Debugging Concepts783554 -Node: Debugging Terms785410 -Node: Awk Debugging788007 -Node: Sample Debugging Session788899 -Node: Debugger Invocation789419 -Node: Finding The Bug790751 -Node: List of Debugger Commands797239 -Node: Breakpoint Control798573 -Node: Debugger Execution Control802237 -Node: Viewing And Changing Data805597 -Node: Execution Stack808953 -Node: Debugger Info810420 -Node: Miscellaneous Debugger Commands814402 -Node: Readline Support819578 -Node: Limitations820409 -Node: Arbitrary Precision Arithmetic822661 -Ref: Arbitrary Precision Arithmetic-Footnote-1824310 -Node: General Arithmetic824458 -Node: Floating Point Issues826178 -Node: String Conversion Precision827059 -Ref: String Conversion Precision-Footnote-1828764 -Node: Unexpected Results828873 -Node: POSIX Floating Point Problems831026 -Ref: POSIX Floating Point Problems-Footnote-1834851 -Node: Integer Programming834889 -Node: Floating-point Programming836628 -Ref: Floating-point Programming-Footnote-1842959 -Ref: Floating-point Programming-Footnote-2843229 -Node: Floating-point Representation843493 -Node: Floating-point Context844658 -Ref: table-ieee-formats845497 -Node: Rounding Mode846881 -Ref: table-rounding-modes847360 -Ref: Rounding Mode-Footnote-1850375 -Node: Gawk and MPFR850554 -Node: Arbitrary Precision Floats851809 -Ref: Arbitrary Precision Floats-Footnote-1854252 -Node: Setting Precision854568 -Ref: table-predefined-precision-strings855254 -Node: Setting Rounding Mode857399 -Ref: table-gawk-rounding-modes857803 -Node: Floating-point Constants858990 -Node: Changing Precision860419 -Ref: Changing Precision-Footnote-1861816 -Node: Exact Arithmetic861990 -Node: Arbitrary Precision Integers865128 -Ref: Arbitrary Precision Integers-Footnote-1868146 -Node: Dynamic Extensions868293 -Node: Extension Intro869751 -Node: Plugin License871016 -Node: Extension Mechanism Outline871701 -Ref: load-extension872118 -Ref: load-new-function873596 -Ref: call-new-function874591 -Node: Extension API Description876606 -Node: Extension API Functions Introduction877819 -Node: General Data Types882685 -Ref: General Data Types-Footnote-1888284 -Node: Requesting Values888583 -Ref: table-value-types-returned889314 -Node: Constructor Functions890268 -Node: Registration Functions893288 -Node: Extension Functions893973 -Node: Exit Callback Functions896198 -Node: Extension Version String897447 -Node: Input Parsers898097 -Node: Output Wrappers907854 -Node: Two-way processors912364 -Node: Printing Messages914572 -Ref: Printing Messages-Footnote-1915649 -Node: Updating `ERRNO'915801 -Node: Accessing Parameters916540 -Node: Symbol Table Access917770 -Node: Symbol table by name918282 -Node: Symbol table by cookie920029 -Ref: Symbol table by cookie-Footnote-1924159 -Node: Cached values924222 -Ref: Cached values-Footnote-1927671 -Node: Array Manipulation927762 -Ref: Array Manipulation-Footnote-1928860 -Node: Array Data Types928899 -Ref: Array Data Types-Footnote-1931602 -Node: Array Functions931694 -Node: Flattening Arrays935460 -Node: Creating Arrays942312 -Node: Extension API Variables947037 -Node: Extension Versioning947673 -Node: Extension API Informational Variables949574 -Node: Extension API Boilerplate950660 -Node: Finding Extensions954464 -Node: Extension Example955024 -Node: Internal File Description955754 -Node: Internal File Ops959845 -Ref: Internal File Ops-Footnote-1971353 -Node: Using Internal File Ops971493 -Ref: Using Internal File Ops-Footnote-1973846 -Node: Extension Samples974112 -Node: Extension Sample File Functions975636 -Node: Extension Sample Fnmatch984121 -Node: Extension Sample Fork985847 -Node: Extension Sample Inplace987065 -Node: Extension Sample Ord988843 -Node: Extension Sample Readdir989679 -Node: Extension Sample Revout991211 -Node: Extension Sample Rev2way991804 -Node: Extension Sample Read write array992494 -Node: Extension Sample Readfile994377 -Node: Extension Sample API Tests995195 -Node: Extension Sample Time995720 -Node: gawkextlib997084 -Node: Language History999844 -Node: V7/SVR3.11001366 -Node: SVR41003686 -Node: POSIX1005128 -Node: BTL1006514 -Node: POSIX/GNU1007248 -Node: Common Extensions1012783 -Node: Ranges and Locales1014089 -Ref: Ranges and Locales-Footnote-11018707 -Ref: Ranges and Locales-Footnote-21018734 -Ref: Ranges and Locales-Footnote-31018994 -Node: Contributors1019215 -Node: Installation1024290 -Node: Gawk Distribution1025184 -Node: Getting1025668 -Node: Extracting1026494 -Node: Distribution contents1028186 -Node: Unix Installation1033706 -Node: Quick Installation1034323 -Node: Additional Configuration Options1036767 -Node: Configuration Philosophy1038244 -Node: Non-Unix Installation1040598 -Node: PC Installation1041056 -Node: PC Binary Installation1042355 -Node: PC Compiling1044203 -Node: PC Testing1047147 -Node: PC Using1048323 -Node: Cygwin1052508 -Node: MSYS1053508 -Node: VMS Installation1054022 -Node: VMS Compilation1054625 -Ref: VMS Compilation-Footnote-11055632 -Node: VMS Installation Details1055690 -Node: VMS Running1057325 -Node: VMS Old Gawk1058932 -Node: Bugs1059406 -Node: Other Versions1063262 -Node: Notes1069346 -Node: Compatibility Mode1070146 -Node: Additions1070929 -Node: Accessing The Source1071856 -Node: Adding Code1073296 -Node: New Ports1079341 -Node: Derived Files1083476 -Ref: Derived Files-Footnote-11088797 -Ref: Derived Files-Footnote-21088831 -Ref: Derived Files-Footnote-31089431 -Node: Future Extensions1089529 -Node: Implementation Limitations1090106 -Node: Extension Design1091358 -Node: Old Extension Problems1092512 -Ref: Old Extension Problems-Footnote-11094020 -Node: Extension New Mechanism Goals1094077 -Ref: Extension New Mechanism Goals-Footnote-11097442 -Node: Extension Other Design Decisions1097628 -Node: Extension Future Growth1099734 -Node: Old Extension Mechanism1100570 -Node: Basic Concepts1102310 -Node: Basic High Level1102991 -Ref: figure-general-flow1103262 -Ref: figure-process-flow1103861 -Ref: Basic High Level-Footnote-11107090 -Node: Basic Data Typing1107275 -Node: Glossary1110630 -Node: Copying1136092 -Node: GNU Free Documentation License1173649 -Node: Index1198786 +Ref: Controlling Scanning-Footnote-1448802 +Node: Delete449118 +Ref: Delete-Footnote-1451883 +Node: Numeric Array Subscripts451940 +Node: Uninitialized Subscripts454123 +Node: Multidimensional455750 +Node: Multiscanning458842 +Node: Arrays of Arrays460431 +Node: Functions465071 +Node: Built-in465890 +Node: Calling Built-in466968 +Node: Numeric Functions468956 +Ref: Numeric Functions-Footnote-1472788 +Ref: Numeric Functions-Footnote-2473145 +Ref: Numeric Functions-Footnote-3473193 +Node: String Functions473462 +Ref: String Functions-Footnote-1496382 +Ref: String Functions-Footnote-2496511 +Ref: String Functions-Footnote-3496759 +Node: Gory Details496846 +Ref: table-sub-escapes498525 +Ref: table-sub-posix-92499879 +Ref: table-sub-proposed501230 +Ref: table-posix-sub502584 +Ref: table-gensub-escapes504129 +Ref: Gory Details-Footnote-1505305 +Ref: Gory Details-Footnote-2505356 +Node: I/O Functions505507 +Ref: I/O Functions-Footnote-1512492 +Node: Time Functions512639 +Ref: Time Functions-Footnote-1523572 +Ref: Time Functions-Footnote-2523640 +Ref: Time Functions-Footnote-3523798 +Ref: Time Functions-Footnote-4523909 +Ref: Time Functions-Footnote-5524021 +Ref: Time Functions-Footnote-6524248 +Node: Bitwise Functions524514 +Ref: table-bitwise-ops525076 +Ref: Bitwise Functions-Footnote-1529297 +Node: Type Functions529481 +Node: I18N Functions530632 +Node: User-defined532259 +Node: Definition Syntax533063 +Ref: Definition Syntax-Footnote-1537973 +Node: Function Example538042 +Node: Function Caveats540636 +Node: Calling A Function541057 +Node: Variable Scope542172 +Node: Pass By Value/Reference545135 +Node: Return Statement548643 +Node: Dynamic Typing551624 +Node: Indirect Calls552555 +Node: Library Functions562240 +Ref: Library Functions-Footnote-1565753 +Ref: Library Functions-Footnote-2565896 +Node: Library Names566067 +Ref: Library Names-Footnote-1569538 +Ref: Library Names-Footnote-2569758 +Node: General Functions569844 +Node: Strtonum Function570872 +Node: Assert Function573802 +Node: Round Function577128 +Node: Cliff Random Function578671 +Node: Ordinal Functions579687 +Ref: Ordinal Functions-Footnote-1582757 +Ref: Ordinal Functions-Footnote-2583009 +Node: Join Function583218 +Ref: Join Function-Footnote-1584989 +Node: Getlocaltime Function585189 +Node: Readfile Function588930 +Node: Data File Management590769 +Node: Filetrans Function591401 +Node: Rewind Function595470 +Node: File Checking596857 +Node: Empty Files597951 +Node: Ignoring Assigns600181 +Node: Getopt Function601734 +Ref: Getopt Function-Footnote-1613037 +Node: Passwd Functions613240 +Ref: Passwd Functions-Footnote-1622215 +Node: Group Functions622303 +Node: Walking Arrays630387 +Node: Sample Programs632524 +Node: Running Examples633198 +Node: Clones633926 +Node: Cut Program635150 +Node: Egrep Program644995 +Ref: Egrep Program-Footnote-1652768 +Node: Id Program652878 +Node: Split Program656494 +Ref: Split Program-Footnote-1660013 +Node: Tee Program660141 +Node: Uniq Program662944 +Node: Wc Program670373 +Ref: Wc Program-Footnote-1674639 +Ref: Wc Program-Footnote-2674839 +Node: Miscellaneous Programs674931 +Node: Dupword Program676119 +Node: Alarm Program678150 +Node: Translate Program682903 +Ref: Translate Program-Footnote-1687290 +Ref: Translate Program-Footnote-2687538 +Node: Labels Program687672 +Ref: Labels Program-Footnote-1691043 +Node: Word Sorting691127 +Node: History Sorting695011 +Node: Extract Program696850 +Ref: Extract Program-Footnote-1704353 +Node: Simple Sed704481 +Node: Igawk Program707543 +Ref: Igawk Program-Footnote-1722700 +Ref: Igawk Program-Footnote-2722901 +Node: Anagram Program723039 +Node: Signature Program726107 +Node: Advanced Features727207 +Node: Nondecimal Data729093 +Node: Array Sorting730676 +Node: Controlling Array Traversal731373 +Node: Array Sorting Functions739657 +Ref: Array Sorting Functions-Footnote-1743526 +Node: Two-way I/O743720 +Ref: Two-way I/O-Footnote-1749152 +Node: TCP/IP Networking749222 +Node: Profiling752066 +Node: Internationalization759563 +Node: I18N and L10N760988 +Node: Explaining gettext761674 +Ref: Explaining gettext-Footnote-1766742 +Ref: Explaining gettext-Footnote-2766926 +Node: Programmer i18n767091 +Node: Translator i18n771293 +Node: String Extraction772086 +Ref: String Extraction-Footnote-1773047 +Node: Printf Ordering773133 +Ref: Printf Ordering-Footnote-1775917 +Node: I18N Portability775981 +Ref: I18N Portability-Footnote-1778430 +Node: I18N Example778493 +Ref: I18N Example-Footnote-1781131 +Node: Gawk I18N781203 +Node: Debugger781824 +Node: Debugging782795 +Node: Debugging Concepts783228 +Node: Debugging Terms785084 +Node: Awk Debugging787681 +Node: Sample Debugging Session788573 +Node: Debugger Invocation789093 +Node: Finding The Bug790425 +Node: List of Debugger Commands796913 +Node: Breakpoint Control798247 +Node: Debugger Execution Control801911 +Node: Viewing And Changing Data805271 +Node: Execution Stack808627 +Node: Debugger Info810094 +Node: Miscellaneous Debugger Commands814076 +Node: Readline Support819252 +Node: Limitations820083 +Node: Arbitrary Precision Arithmetic822335 +Ref: Arbitrary Precision Arithmetic-Footnote-1823984 +Node: General Arithmetic824132 +Node: Floating Point Issues825852 +Node: String Conversion Precision826733 +Ref: String Conversion Precision-Footnote-1828438 +Node: Unexpected Results828547 +Node: POSIX Floating Point Problems830700 +Ref: POSIX Floating Point Problems-Footnote-1834525 +Node: Integer Programming834563 +Node: Floating-point Programming836302 +Ref: Floating-point Programming-Footnote-1842633 +Ref: Floating-point Programming-Footnote-2842903 +Node: Floating-point Representation843167 +Node: Floating-point Context844332 +Ref: table-ieee-formats845171 +Node: Rounding Mode846555 +Ref: table-rounding-modes847034 +Ref: Rounding Mode-Footnote-1850049 +Node: Gawk and MPFR850228 +Node: Arbitrary Precision Floats851483 +Ref: Arbitrary Precision Floats-Footnote-1853926 +Node: Setting Precision854242 +Ref: table-predefined-precision-strings854928 +Node: Setting Rounding Mode857073 +Ref: table-gawk-rounding-modes857477 +Node: Floating-point Constants858664 +Node: Changing Precision860093 +Ref: Changing Precision-Footnote-1861490 +Node: Exact Arithmetic861664 +Node: Arbitrary Precision Integers864802 +Ref: Arbitrary Precision Integers-Footnote-1867820 +Node: Dynamic Extensions867967 +Node: Extension Intro869425 +Node: Plugin License870690 +Node: Extension Mechanism Outline871375 +Ref: load-extension871792 +Ref: load-new-function873270 +Ref: call-new-function874265 +Node: Extension API Description876280 +Node: Extension API Functions Introduction877493 +Node: General Data Types882359 +Ref: General Data Types-Footnote-1887958 +Node: Requesting Values888257 +Ref: table-value-types-returned888988 +Node: Constructor Functions889942 +Node: Registration Functions892962 +Node: Extension Functions893647 +Node: Exit Callback Functions895872 +Node: Extension Version String897121 +Node: Input Parsers897771 +Node: Output Wrappers907528 +Node: Two-way processors912038 +Node: Printing Messages914246 +Ref: Printing Messages-Footnote-1915323 +Node: Updating `ERRNO'915475 +Node: Accessing Parameters916214 +Node: Symbol Table Access917444 +Node: Symbol table by name917956 +Node: Symbol table by cookie919703 +Ref: Symbol table by cookie-Footnote-1923833 +Node: Cached values923896 +Ref: Cached values-Footnote-1927345 +Node: Array Manipulation927436 +Ref: Array Manipulation-Footnote-1928534 +Node: Array Data Types928573 +Ref: Array Data Types-Footnote-1931276 +Node: Array Functions931368 +Node: Flattening Arrays935134 +Node: Creating Arrays941986 +Node: Extension API Variables946711 +Node: Extension Versioning947347 +Node: Extension API Informational Variables949248 +Node: Extension API Boilerplate950334 +Node: Finding Extensions954138 +Node: Extension Example954698 +Node: Internal File Description955428 +Node: Internal File Ops959519 +Ref: Internal File Ops-Footnote-1971027 +Node: Using Internal File Ops971167 +Ref: Using Internal File Ops-Footnote-1973520 +Node: Extension Samples973786 +Node: Extension Sample File Functions975310 +Node: Extension Sample Fnmatch983795 +Node: Extension Sample Fork985521 +Node: Extension Sample Inplace986739 +Node: Extension Sample Ord988517 +Node: Extension Sample Readdir989353 +Node: Extension Sample Revout990885 +Node: Extension Sample Rev2way991478 +Node: Extension Sample Read write array992168 +Node: Extension Sample Readfile994051 +Node: Extension Sample API Tests994869 +Node: Extension Sample Time995394 +Node: gawkextlib996758 +Node: Language History999518 +Node: V7/SVR3.11001040 +Node: SVR41003360 +Node: POSIX1004802 +Node: BTL1006188 +Node: POSIX/GNU1006922 +Node: Common Extensions1012457 +Node: Ranges and Locales1013763 +Ref: Ranges and Locales-Footnote-11018381 +Ref: Ranges and Locales-Footnote-21018408 +Ref: Ranges and Locales-Footnote-31018668 +Node: Contributors1018889 +Node: Installation1023964 +Node: Gawk Distribution1024858 +Node: Getting1025342 +Node: Extracting1026168 +Node: Distribution contents1027860 +Node: Unix Installation1033380 +Node: Quick Installation1033997 +Node: Additional Configuration Options1036441 +Node: Configuration Philosophy1037918 +Node: Non-Unix Installation1040272 +Node: PC Installation1040730 +Node: PC Binary Installation1042029 +Node: PC Compiling1043877 +Node: PC Testing1046821 +Node: PC Using1047997 +Node: Cygwin1052182 +Node: MSYS1053182 +Node: VMS Installation1053696 +Node: VMS Compilation1054299 +Ref: VMS Compilation-Footnote-11055306 +Node: VMS Installation Details1055364 +Node: VMS Running1056999 +Node: VMS Old Gawk1058606 +Node: Bugs1059080 +Node: Other Versions1062936 +Node: Notes1069020 +Node: Compatibility Mode1069820 +Node: Additions1070603 +Node: Accessing The Source1071530 +Node: Adding Code1072970 +Node: New Ports1079015 +Node: Derived Files1083150 +Ref: Derived Files-Footnote-11088471 +Ref: Derived Files-Footnote-21088505 +Ref: Derived Files-Footnote-31089105 +Node: Future Extensions1089203 +Node: Implementation Limitations1089780 +Node: Extension Design1091032 +Node: Old Extension Problems1092186 +Ref: Old Extension Problems-Footnote-11093694 +Node: Extension New Mechanism Goals1093751 +Ref: Extension New Mechanism Goals-Footnote-11097116 +Node: Extension Other Design Decisions1097302 +Node: Extension Future Growth1099408 +Node: Old Extension Mechanism1100244 +Node: Basic Concepts1101984 +Node: Basic High Level1102665 +Ref: figure-general-flow1102936 +Ref: figure-process-flow1103535 +Ref: Basic High Level-Footnote-11106764 +Node: Basic Data Typing1106949 +Node: Glossary1110304 +Node: Copying1135766 +Node: GNU Free Documentation License1173323 +Node: Index1198460  End Tag Table -- cgit v1.2.3 From b058d18ea65146294c6396e6439accfe3ccdcb6c Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Sat, 21 Dec 2013 21:08:18 +0200 Subject: Make extensions controlled by configure time option. --- doc/gawk.info | 116 +++++++++++++++++++++++++++++++--------------------------- 1 file changed, 63 insertions(+), 53 deletions(-) (limited to 'doc/gawk.info') diff --git a/doc/gawk.info b/doc/gawk.info index 42228cae..ed3ab7b3 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -25827,6 +25827,12 @@ B.2.2 Additional Configuration Options There are several additional options you may use on the `configure' command line when compiling `gawk' from scratch, including: +`--disable-extensions' + Disable configuring and building the sample extensions in the + `extension' directory. This is useful for cross-compiling. The + default action is to dynamically check if the extensions can be + configured and compiled. + `--disable-lint' Disable all lint checking within `gawk'. The `--lint' and `--lint-old' options (*note Options::) are accepted, but silently @@ -29452,10 +29458,12 @@ Index * --characters-as-bytes option: Options. (line 82) * --copyright option: Options. (line 102) * --debug option: Options. (line 122) -* --disable-lint configuration option: Additional Configuration Options. +* --disable-extensions configuration option: Additional Configuration Options. (line 9) +* --disable-lint configuration option: Additional Configuration Options. + (line 15) * --disable-nls configuration option: Additional Configuration Options. - (line 24) + (line 30) * --dump-variables option <1>: Library Names. (line 45) * --dump-variables option: Options. (line 107) * --exec option: Options. (line 139) @@ -29493,7 +29501,7 @@ Index * --use-lc-numeric option: Options. (line 215) * --version option: Options. (line 293) * --with-whiny-user-strftime configuration option: Additional Configuration Options. - (line 29) + (line 35) * -b option: Options. (line 82) * -C option: Options. (line 102) * -D option: Options. (line 122) @@ -30088,12 +30096,14 @@ Index * concatenating: Concatenation. (line 8) * condition debugger command: Breakpoint Control. (line 54) * conditional expressions: Conditional Exp. (line 6) -* configuration option, --disable-lint: Additional Configuration Options. +* configuration option, --disable-extensions: Additional Configuration Options. (line 9) +* configuration option, --disable-lint: Additional Configuration Options. + (line 15) * configuration option, --disable-nls: Additional Configuration Options. - (line 24) + (line 30) * configuration option, --with-whiny-user-strftime: Additional Configuration Options. - (line 29) + (line 35) * configuration options, gawk: Additional Configuration Options. (line 6) * constants, floating-point: Floating-point Constants. @@ -32644,52 +32654,52 @@ Node: Distribution contents1027860 Node: Unix Installation1033380 Node: Quick Installation1033997 Node: Additional Configuration Options1036441 -Node: Configuration Philosophy1037918 -Node: Non-Unix Installation1040272 -Node: PC Installation1040730 -Node: PC Binary Installation1042029 -Node: PC Compiling1043877 -Node: PC Testing1046821 -Node: PC Using1047997 -Node: Cygwin1052182 -Node: MSYS1053182 -Node: VMS Installation1053696 -Node: VMS Compilation1054299 -Ref: VMS Compilation-Footnote-11055306 -Node: VMS Installation Details1055364 -Node: VMS Running1056999 -Node: VMS Old Gawk1058606 -Node: Bugs1059080 -Node: Other Versions1062936 -Node: Notes1069020 -Node: Compatibility Mode1069820 -Node: Additions1070603 -Node: Accessing The Source1071530 -Node: Adding Code1072970 -Node: New Ports1079015 -Node: Derived Files1083150 -Ref: Derived Files-Footnote-11088471 -Ref: Derived Files-Footnote-21088505 -Ref: Derived Files-Footnote-31089105 -Node: Future Extensions1089203 -Node: Implementation Limitations1089780 -Node: Extension Design1091032 -Node: Old Extension Problems1092186 -Ref: Old Extension Problems-Footnote-11093694 -Node: Extension New Mechanism Goals1093751 -Ref: Extension New Mechanism Goals-Footnote-11097116 -Node: Extension Other Design Decisions1097302 -Node: Extension Future Growth1099408 -Node: Old Extension Mechanism1100244 -Node: Basic Concepts1101984 -Node: Basic High Level1102665 -Ref: figure-general-flow1102936 -Ref: figure-process-flow1103535 -Ref: Basic High Level-Footnote-11106764 -Node: Basic Data Typing1106949 -Node: Glossary1110304 -Node: Copying1135766 -Node: GNU Free Documentation License1173323 -Node: Index1198460 +Node: Configuration Philosophy1038177 +Node: Non-Unix Installation1040531 +Node: PC Installation1040989 +Node: PC Binary Installation1042288 +Node: PC Compiling1044136 +Node: PC Testing1047080 +Node: PC Using1048256 +Node: Cygwin1052441 +Node: MSYS1053441 +Node: VMS Installation1053955 +Node: VMS Compilation1054558 +Ref: VMS Compilation-Footnote-11055565 +Node: VMS Installation Details1055623 +Node: VMS Running1057258 +Node: VMS Old Gawk1058865 +Node: Bugs1059339 +Node: Other Versions1063195 +Node: Notes1069279 +Node: Compatibility Mode1070079 +Node: Additions1070862 +Node: Accessing The Source1071789 +Node: Adding Code1073229 +Node: New Ports1079274 +Node: Derived Files1083409 +Ref: Derived Files-Footnote-11088730 +Ref: Derived Files-Footnote-21088764 +Ref: Derived Files-Footnote-31089364 +Node: Future Extensions1089462 +Node: Implementation Limitations1090039 +Node: Extension Design1091291 +Node: Old Extension Problems1092445 +Ref: Old Extension Problems-Footnote-11093953 +Node: Extension New Mechanism Goals1094010 +Ref: Extension New Mechanism Goals-Footnote-11097375 +Node: Extension Other Design Decisions1097561 +Node: Extension Future Growth1099667 +Node: Old Extension Mechanism1100503 +Node: Basic Concepts1102243 +Node: Basic High Level1102924 +Ref: figure-general-flow1103195 +Ref: figure-process-flow1103794 +Ref: Basic High Level-Footnote-11107023 +Node: Basic Data Typing1107208 +Node: Glossary1110563 +Node: Copying1136025 +Node: GNU Free Documentation License1173582 +Node: Index1198719  End Tag Table -- cgit v1.2.3