diff options
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/gawk.info | 1118 | ||||
-rw-r--r-- | doc/gawk.texi | 29 | ||||
-rw-r--r-- | doc/gawktexi.in | 27 |
4 files changed, 601 insertions, 578 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 09d5f942..1c740385 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2019-01-14 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in: More work on the indexing. + Document that `-f -' works to read source code from stdin. + 2019-01-13 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in: Work on the indexing. diff --git a/doc/gawk.info b/doc/gawk.info index d182b646..3c269bad 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -2921,7 +2921,9 @@ Here, 'awk' first reads 'file1', then it reads the output of SOME_COMMAND, and finally it reads 'file2'. You may also use '"-"' to name standard input when reading files with -'getline' (*note Getline/File::). +'getline' (*note Getline/File::). And, you can even use '"-"' with the +'-f' option to read program source code from standard input (*note +Options::). In addition, 'gawk' allows you to specify the special file name '/dev/stdin', both on the command line and with 'getline'. Some other @@ -34186,9 +34188,13 @@ Index (line 26) * differences in awk and gawk, retrying input: Retrying Input. (line 6) -* differences in awk and gawk, RS/RT variables: gawk split records. +* differences in awk and gawk, RS/RT variables: awk split records. + (line 131) +* differences in awk and gawk, RS/RT variables <1>: gawk split records. (line 58) -* differences in awk and gawk, RS/RT variables <1>: Auto-set. (line 327) +* differences in awk and gawk, RS/RT variables <2>: Multiple Line. + (line 130) +* differences in awk and gawk, RS/RT variables <3>: Auto-set. (line 327) * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. @@ -34706,8 +34712,9 @@ Index (line 6) * gawk, regular expressions, precedence: Regexp Operators. (line 161) * gawk, RT variable in: awk split records. (line 131) -* gawk, RT variable in <1>: Multiple Line. (line 130) -* gawk, RT variable in <2>: Auto-set. (line 327) +* gawk, RT variable in <1>: gawk split records. (line 58) +* gawk, RT variable in <2>: Multiple Line. (line 130) +* gawk, RT variable in <3>: Auto-set. (line 327) * gawk, See Also awk: Preface. (line 34) * gawk, source code, obtaining: Getting. (line 6) * gawk, splitting fields and: Testing field creation. @@ -35093,12 +35100,11 @@ Index * mailing labels, printing: Labels Program. (line 6) * mailing list, GNITS: Acknowledgments. (line 52) * Malmberg, John: Acknowledgments. (line 60) -* Malmberg, John <1>: Maintainers. (line 14) -* Malmberg, John E.: Contributors. (line 140) +* Malmberg, John <1>: Contributors. (line 140) +* Malmberg, John <2>: Maintainers. (line 14) * mark parity: Ordinal Functions. (line 45) * marked string extraction (internationalization): String Extraction. (line 6) -* marked strings, extracting: String Extraction. (line 6) * Marx, Groucho: Increment Ops. (line 60) * match: String Functions. (line 211) * match regexp in string: String Functions. (line 211) @@ -35201,13 +35207,13 @@ Index (line 21) * null strings, deleting array elements and: Delete. (line 27) * null strings, matching: String Functions. (line 542) -* number as string of bits: Bitwise Functions. (line 109) * number of array elements: String Functions. (line 201) * number sign (#), #! (executable scripts): Executable Scripts. (line 6) * number sign (#), commenting: Comments. (line 6) * numbers, as array subscripts: Numeric Array Subscripts. (line 6) +* numbers, as string of bits: Bitwise Functions. (line 109) * numbers, as values of characters: Ordinal Functions. (line 6) * numbers, Cliff random: Cliff Random Function. (line 6) @@ -35260,8 +35266,8 @@ Index * operators, input/output <6>: Precedence. (line 64) * operators, input/output <7>: Precedence. (line 64) * operators, logical, See Boolean expressions: Boolean Ops. (line 6) -* operators, precedence: Increment Ops. (line 60) -* operators, precedence <1>: Precedence. (line 6) +* operators, precedence: Precedence. (line 6) +* operators, precedence of: Increment Ops. (line 60) * operators, relational, See operators, comparison: Typing and Comparison. (line 9) * operators, short-circuit: Boolean Ops. (line 59) @@ -35520,6 +35526,7 @@ Index * programming languages, Ada: Glossary. (line 11) * programming languages, data-driven vs. procedural: Getting Started. (line 12) +* programming languages, Go: Other Versions. (line 113) * programming languages, Java: Glossary. (line 466) * programming, basic steps: Basic High Level. (line 18) * programming, concepts: Basic Concepts. (line 6) @@ -35537,9 +35544,9 @@ Index * quit debugger command: Miscellaneous Debugger Commands. (line 100) * QUIT signal (MS-Windows): Profiling. (line 212) -* quoting in gawk command lines: Long. (line 26) -* quoting in gawk command lines, tricks for: Quoting. (line 91) * quoting, for small awk programs: Comments. (line 27) +* quoting, in gawk command lines: Long. (line 26) +* quoting, in gawk command lines, tricks for: Quoting. (line 91) * r debugger command (alias for run): Debugger Execution Control. (line 62) * Rakitzis, Byron: History Sorting. (line 25) @@ -35604,9 +35611,9 @@ Index * register extension: Registration Functions. (line 6) * regular expressions: Regexp. (line 6) -* regular expressions as field separators: Field Separators. (line 50) * regular expressions, anchors in: Regexp Operators. (line 22) -* regular expressions, as field separators: Regexp Field Splitting. +* regular expressions, as field separators: Field Separators. (line 50) +* regular expressions, as field separators <1>: Regexp Field Splitting. (line 6) * regular expressions, as patterns: Regexp Usage. (line 6) * regular expressions, as patterns <1>: Regexp Patterns. (line 6) @@ -35694,8 +35701,9 @@ Index * RSTART variable: Auto-set. (line 320) * RSTART variable, match() function and: String Functions. (line 228) * RT variable: awk split records. (line 131) -* RT variable <1>: Multiple Line. (line 130) -* RT variable <2>: Auto-set. (line 327) +* RT variable <1>: gawk split records. (line 58) +* RT variable <2>: Multiple Line. (line 130) +* RT variable <3>: Auto-set. (line 327) * Rubin, Paul: History. (line 30) * Rubin, Paul <1>: Contributors. (line 16) * rule, definition of: Getting Started. (line 21) @@ -35890,7 +35898,6 @@ Index * split.awk program: Split Program. (line 30) * sprintf: OFMT. (line 15) * sprintf <1>: String Functions. (line 389) -* sprintf() function, OFMT variable and: User-modified. (line 116) * sprintf() function, print/printf statements and: Round Function. (line 6) * sqrt: Numeric Functions. (line 78) @@ -36120,6 +36127,8 @@ Index * users, information about, retrieving: Passwd Functions. (line 16) * USR1 signal, for dynamic profiling: Profiling. (line 186) * values, numeric: Basic Data Typing. (line 13) +* values, regexp: Strong Regexp Constants. + (line 24) * values, string: Basic Data Typing. (line 13) * variable assignments and input files: Other Arguments. (line 26) * variable type: Type Functions. (line 14) @@ -36142,8 +36151,8 @@ Index * variables, initializing: Using Variables. (line 23) * variables, local to a function: Variable Scope. (line 6) * variables, predefined: Built-in Variables. (line 6) -* variables, predefined -v option, setting with: Options. (line 41) -* variables, predefined conveying information: Auto-set. (line 6) +* variables, predefined, -v option, setting with: Options. (line 41) +* variables, predefined, conveying information: Auto-set. (line 6) * variables, private: Library Names. (line 11) * variables, setting: Options. (line 32) * variables, shadowing: Definition Syntax. (line 77) @@ -36185,7 +36194,6 @@ Index * wc.awk program: Wc Program. (line 46) * Weinberger, Peter: History. (line 17) * Weinberger, Peter <1>: Contributors. (line 12) -* where debugger command: Execution Stack. (line 13) * where debugger command (alias for backtrace): Execution Stack. (line 13) * while statement: While Statement. (line 6) @@ -36267,539 +36275,539 @@ Ref: Options-Footnote-1134953 Ref: Options-Footnote-2135184 Node: Other Arguments135209 Node: Naming Standard Input138156 -Node: Environment Variables139249 -Node: AWKPATH Variable139807 -Ref: AWKPATH Variable-Footnote-1143219 -Ref: AWKPATH Variable-Footnote-2143253 -Node: AWKLIBPATH Variable143514 -Node: Other Environment Variables145172 -Node: Exit Status148993 -Node: Include Files149670 -Node: Loading Shared Libraries153195 -Node: Obsolete154623 -Node: Undocumented155315 -Node: Invoking Summary155612 -Node: Regexp157272 -Node: Regexp Usage158726 -Node: Escape Sequences160763 -Node: Regexp Operators166995 -Ref: Regexp Operators-Footnote-1174411 -Ref: Regexp Operators-Footnote-2174558 -Node: Bracket Expressions174656 -Ref: table-char-classes177132 -Node: Leftmost Longest180458 -Node: Computed Regexps181761 -Node: GNU Regexp Operators185188 -Node: Case-sensitivity188867 -Ref: Case-sensitivity-Footnote-1191754 -Ref: Case-sensitivity-Footnote-2191989 -Node: Regexp Summary192097 -Node: Reading Files193563 -Node: Records195832 -Node: awk split records196907 -Node: gawk split records202182 -Ref: gawk split records-Footnote-1206768 -Node: Fields206805 -Node: Nonconstant Fields209546 -Ref: Nonconstant Fields-Footnote-1211782 -Node: Changing Fields211986 -Node: Field Separators218017 -Node: Default Field Splitting220715 -Node: Regexp Field Splitting221833 -Node: Single Character Fields225186 -Node: Command Line Field Separator226246 -Node: Full Line Fields229464 -Ref: Full Line Fields-Footnote-1230986 -Ref: Full Line Fields-Footnote-2231032 -Node: Field Splitting Summary231133 -Node: Constant Size233207 -Node: Fixed width data233939 -Node: Skipping intervening237406 -Node: Allowing trailing data238204 -Node: Fields with fixed data239241 -Node: Splitting By Content240759 -Ref: Splitting By Content-Footnote-1244409 -Node: Testing field creation244572 -Node: Multiple Line246197 -Ref: Multiple Line-Footnote-1252081 -Node: Getline252260 -Node: Plain Getline254729 -Node: Getline/Variable257370 -Node: Getline/File258521 -Node: Getline/Variable/File259909 -Ref: Getline/Variable/File-Footnote-1261514 -Node: Getline/Pipe261602 -Node: Getline/Variable/Pipe264309 -Node: Getline/Coprocess265444 -Node: Getline/Variable/Coprocess266711 -Node: Getline Notes267453 -Node: Getline Summary270250 -Ref: table-getline-variants270674 -Node: Read Timeout271422 -Ref: Read Timeout-Footnote-1275328 -Node: Retrying Input275386 -Node: Command-line directories276585 -Node: Input Summary277491 -Node: Input Exercises280663 -Node: Printing281391 -Node: Print283225 -Node: Print Examples284682 -Node: Output Separators287462 -Node: OFMT289479 -Node: Printf290835 -Node: Basic Printf291620 -Node: Control Letters293194 -Node: Format Modifiers298356 -Node: Printf Examples304371 -Node: Redirection306857 -Node: Special FD313698 -Ref: Special FD-Footnote-1316866 -Node: Special Files316940 -Node: Other Inherited Files317557 -Node: Special Network318558 -Node: Special Caveats319418 -Node: Close Files And Pipes320367 -Ref: table-close-pipe-return-values327274 -Ref: Close Files And Pipes-Footnote-1328087 -Ref: Close Files And Pipes-Footnote-2328235 -Node: Nonfatal328387 -Node: Output Summary330725 -Node: Output Exercises331947 -Node: Expressions332626 -Node: Values333814 -Node: Constants334492 -Node: Scalar Constants335183 -Ref: Scalar Constants-Footnote-1337708 -Node: Nondecimal-numbers337958 -Node: Regexp Constants340959 -Node: Using Constant Regexps341485 -Node: Standard Regexp Constants342107 -Node: Strong Regexp Constants345295 -Node: Variables348253 -Node: Using Variables348910 -Node: Assignment Options350820 -Node: Conversion353287 -Node: Strings And Numbers353811 -Ref: Strings And Numbers-Footnote-1356874 -Node: Locale influences conversions356983 -Ref: table-locale-affects359741 -Node: All Operators360359 -Node: Arithmetic Ops360988 -Node: Concatenation363494 -Ref: Concatenation-Footnote-1366341 -Node: Assignment Ops366448 -Ref: table-assign-ops371439 -Node: Increment Ops372752 -Node: Truth Values and Conditions376212 -Node: Truth Values377286 -Node: Typing and Comparison378334 -Node: Variable Typing379154 -Ref: Variable Typing-Footnote-1385617 -Ref: Variable Typing-Footnote-2385689 -Node: Comparison Operators385766 -Ref: table-relational-ops386185 -Node: POSIX String Comparison389680 -Ref: POSIX String Comparison-Footnote-1391375 -Ref: POSIX String Comparison-Footnote-2391514 -Node: Boolean Ops391598 -Ref: Boolean Ops-Footnote-1396080 -Node: Conditional Exp396172 -Node: Function Calls397908 -Node: Precedence401785 -Node: Locales405444 -Node: Expressions Summary407076 -Node: Patterns and Actions409649 -Node: Pattern Overview410769 -Node: Regexp Patterns412446 -Node: Expression Patterns412988 -Node: Ranges416769 -Node: BEGIN/END419877 -Node: Using BEGIN/END420638 -Ref: Using BEGIN/END-Footnote-1423374 -Node: I/O And BEGIN/END423480 -Node: BEGINFILE/ENDFILE425794 -Node: Empty428707 -Node: Using Shell Variables429024 -Node: Action Overview431298 -Node: Statements433623 -Node: If Statement435471 -Node: While Statement436966 -Node: Do Statement438994 -Node: For Statement440142 -Node: Switch Statement443313 -Node: Break Statement445699 -Node: Continue Statement447791 -Node: Next Statement449618 -Node: Nextfile Statement452001 -Node: Exit Statement454653 -Node: Built-in Variables457056 -Node: User-modified458189 -Node: Auto-set465956 -Ref: Auto-set-Footnote-1482258 -Ref: Auto-set-Footnote-2482464 -Node: ARGC and ARGV482520 -Node: Pattern Action Summary486733 -Node: Arrays489163 -Node: Array Basics490492 -Node: Array Intro491336 -Ref: figure-array-elements493311 -Ref: Array Intro-Footnote-1496015 -Node: Reference to Elements496143 -Node: Assigning Elements498607 -Node: Array Example499098 -Node: Scanning an Array500857 -Node: Controlling Scanning503879 -Ref: Controlling Scanning-Footnote-1509278 -Node: Numeric Array Subscripts509594 -Node: Uninitialized Subscripts511778 -Node: Delete513397 -Ref: Delete-Footnote-1516149 -Node: Multidimensional516206 -Node: Multiscanning519301 -Node: Arrays of Arrays520892 -Node: Arrays Summary525660 -Node: Functions527753 -Node: Built-in528791 -Node: Calling Built-in529872 -Node: Numeric Functions531868 -Ref: Numeric Functions-Footnote-1535896 -Ref: Numeric Functions-Footnote-2536253 -Ref: Numeric Functions-Footnote-3536301 -Node: String Functions536573 -Ref: String Functions-Footnote-1560431 -Ref: String Functions-Footnote-2560559 -Ref: String Functions-Footnote-3560807 -Node: Gory Details560894 -Ref: table-sub-escapes562685 -Ref: table-sub-proposed564204 -Ref: table-posix-sub565567 -Ref: table-gensub-escapes567108 -Ref: Gory Details-Footnote-1567931 -Node: I/O Functions568085 -Ref: table-system-return-values574553 -Ref: I/O Functions-Footnote-1576633 -Ref: I/O Functions-Footnote-2576781 -Node: Time Functions576901 -Ref: Time Functions-Footnote-1587572 -Ref: Time Functions-Footnote-2587640 -Ref: Time Functions-Footnote-3587798 -Ref: Time Functions-Footnote-4587909 -Ref: Time Functions-Footnote-5588021 -Ref: Time Functions-Footnote-6588248 -Node: Bitwise Functions588514 -Ref: table-bitwise-ops589108 -Ref: Bitwise Functions-Footnote-1595171 -Ref: Bitwise Functions-Footnote-2595344 -Node: Type Functions595535 -Node: I18N Functions598286 -Node: User-defined599937 -Node: Definition Syntax600742 -Ref: Definition Syntax-Footnote-1606429 -Node: Function Example606500 -Ref: Function Example-Footnote-1609422 -Node: Function Caveats609444 -Node: Calling A Function609962 -Node: Variable Scope610920 -Node: Pass By Value/Reference613914 -Node: Return Statement617413 -Node: Dynamic Typing620392 -Node: Indirect Calls621322 -Ref: Indirect Calls-Footnote-1631574 -Node: Functions Summary631702 -Node: Library Functions634407 -Ref: Library Functions-Footnote-1638014 -Ref: Library Functions-Footnote-2638157 -Node: Library Names638328 -Ref: Library Names-Footnote-1641788 -Ref: Library Names-Footnote-2642011 -Node: General Functions642097 -Node: Strtonum Function643200 -Node: Assert Function646222 -Node: Round Function649548 -Node: Cliff Random Function651088 -Node: Ordinal Functions652104 -Ref: Ordinal Functions-Footnote-1655167 -Ref: Ordinal Functions-Footnote-2655419 -Node: Join Function655629 -Ref: Join Function-Footnote-1657399 -Node: Getlocaltime Function657599 -Node: Readfile Function661341 -Node: Shell Quoting663318 -Node: Data File Management664719 -Node: Filetrans Function665351 -Node: Rewind Function669447 -Node: File Checking671357 -Ref: File Checking-Footnote-1672691 -Node: Empty Files672892 -Node: Ignoring Assigns674871 -Node: Getopt Function676421 -Ref: Getopt Function-Footnote-1687890 -Node: Passwd Functions688090 -Ref: Passwd Functions-Footnote-1696929 -Node: Group Functions697017 -Ref: Group Functions-Footnote-1704915 -Node: Walking Arrays705122 -Node: Library Functions Summary708130 -Node: Library Exercises709536 -Node: Sample Programs710001 -Node: Running Examples710771 -Node: Clones711499 -Node: Cut Program712723 -Node: Egrep Program722652 -Ref: Egrep Program-Footnote-1730164 -Node: Id Program730274 -Node: Split Program733954 -Ref: Split Program-Footnote-1737412 -Node: Tee Program737541 -Node: Uniq Program740331 -Node: Wc Program747757 -Ref: Wc Program-Footnote-1752012 -Node: Miscellaneous Programs752106 -Node: Dupword Program753319 -Node: Alarm Program755349 -Node: Translate Program760204 -Ref: Translate Program-Footnote-1764769 -Node: Labels Program765039 -Ref: Labels Program-Footnote-1768390 -Node: Word Sorting768474 -Node: History Sorting772546 -Node: Extract Program774381 -Node: Simple Sed782435 -Node: Igawk Program785509 -Ref: Igawk Program-Footnote-1799840 -Ref: Igawk Program-Footnote-2800042 -Ref: Igawk Program-Footnote-3800164 -Node: Anagram Program800279 -Node: Signature Program803341 -Node: Programs Summary804588 -Node: Programs Exercises805802 -Ref: Programs Exercises-Footnote-1809931 -Node: Advanced Features810022 -Node: Nondecimal Data812012 -Node: Array Sorting813603 -Node: Controlling Array Traversal814303 -Ref: Controlling Array Traversal-Footnote-1822671 -Node: Array Sorting Functions822789 -Ref: Array Sorting Functions-Footnote-1827880 -Node: Two-way I/O828076 -Ref: Two-way I/O-Footnote-1835797 -Ref: Two-way I/O-Footnote-2835984 -Node: TCP/IP Networking836066 -Node: Profiling839184 -Ref: Profiling-Footnote-1847869 -Node: Advanced Features Summary848192 -Node: Internationalization850036 -Node: I18N and L10N851516 -Node: Explaining gettext852203 -Ref: Explaining gettext-Footnote-1858095 -Ref: Explaining gettext-Footnote-2858280 -Node: Programmer i18n858445 -Ref: Programmer i18n-Footnote-1863394 -Node: Translator i18n863443 -Node: String Extraction864237 -Ref: String Extraction-Footnote-1865369 -Node: Printf Ordering865455 -Ref: Printf Ordering-Footnote-1868241 -Node: I18N Portability868305 -Ref: I18N Portability-Footnote-1870761 -Node: I18N Example870824 -Ref: I18N Example-Footnote-1874099 -Ref: I18N Example-Footnote-2874172 -Node: Gawk I18N874281 -Node: I18N Summary874926 -Node: Debugger876267 -Node: Debugging877287 -Node: Debugging Concepts877728 -Node: Debugging Terms879537 -Node: Awk Debugging882112 -Ref: Awk Debugging-Footnote-1883057 -Node: Sample Debugging Session883189 -Node: Debugger Invocation883723 -Node: Finding The Bug885109 -Node: List of Debugger Commands891583 -Node: Breakpoint Control892916 -Node: Debugger Execution Control896610 -Node: Viewing And Changing Data899972 -Node: Execution Stack903346 -Node: Debugger Info904983 -Node: Miscellaneous Debugger Commands909054 -Node: Readline Support914116 -Node: Limitations915012 -Node: Debugging Summary917121 -Node: Arbitrary Precision Arithmetic918400 -Node: Computer Arithmetic919885 -Ref: table-numeric-ranges923651 -Ref: table-floating-point-ranges924144 -Ref: Computer Arithmetic-Footnote-1924802 -Node: Math Definitions924859 -Ref: table-ieee-formats928175 -Ref: Math Definitions-Footnote-1928778 -Node: MPFR features928883 -Node: FP Math Caution930601 -Ref: FP Math Caution-Footnote-1931673 -Node: Inexactness of computations932042 -Node: Inexact representation933002 -Node: Comparing FP Values934362 -Node: Errors accumulate935603 -Node: Getting Accuracy937036 -Node: Try To Round939746 -Node: Setting precision940645 -Ref: table-predefined-precision-strings941342 -Node: Setting the rounding mode943172 -Ref: table-gawk-rounding-modes943546 -Ref: Setting the rounding mode-Footnote-1947477 -Node: Arbitrary Precision Integers947656 -Ref: Arbitrary Precision Integers-Footnote-1950831 -Node: Checking for MPFR950980 -Node: POSIX Floating Point Problems952454 -Ref: POSIX Floating Point Problems-Footnote-1956739 -Node: Floating point summary956777 -Node: Dynamic Extensions958967 -Node: Extension Intro960520 -Node: Plugin License961786 -Node: Extension Mechanism Outline962583 -Ref: figure-load-extension963022 -Ref: figure-register-new-function964587 -Ref: figure-call-new-function965679 -Node: Extension API Description967741 -Node: Extension API Functions Introduction969383 -Node: General Data Types974923 -Ref: General Data Types-Footnote-1983284 -Node: Memory Allocation Functions983583 -Ref: Memory Allocation Functions-Footnote-1987793 -Node: Constructor Functions987892 -Node: Registration Functions991478 -Node: Extension Functions992163 -Node: Exit Callback Functions997378 -Node: Extension Version String998628 -Node: Input Parsers999291 -Node: Output Wrappers1012012 -Node: Two-way processors1016524 -Node: Printing Messages1018789 -Ref: Printing Messages-Footnote-11019960 -Node: Updating ERRNO1020113 -Node: Requesting Values1020852 -Ref: table-value-types-returned1021589 -Node: Accessing Parameters1022525 -Node: Symbol Table Access1023760 -Node: Symbol table by name1024272 -Node: Symbol table by cookie1026061 -Ref: Symbol table by cookie-Footnote-11030246 -Node: Cached values1030310 -Ref: Cached values-Footnote-11033846 -Node: Array Manipulation1033999 -Ref: Array Manipulation-Footnote-11035090 -Node: Array Data Types1035127 -Ref: Array Data Types-Footnote-11037785 -Node: Array Functions1037877 -Node: Flattening Arrays1042375 -Node: Creating Arrays1049351 -Node: Redirection API1054118 -Node: Extension API Variables1056951 -Node: Extension Versioning1057662 -Ref: gawk-api-version1058091 -Node: Extension GMP/MPFR Versioning1059822 -Node: Extension API Informational Variables1061450 -Node: Extension API Boilerplate1062523 -Node: Changes from API V11066497 -Node: Finding Extensions1068069 -Node: Extension Example1068628 -Node: Internal File Description1069426 -Node: Internal File Ops1073506 -Ref: Internal File Ops-Footnote-11084856 -Node: Using Internal File Ops1084996 -Ref: Using Internal File Ops-Footnote-11087379 -Node: Extension Samples1087653 -Node: Extension Sample File Functions1089182 -Node: Extension Sample Fnmatch1096831 -Node: Extension Sample Fork1098318 -Node: Extension Sample Inplace1099536 -Node: Extension Sample Ord1102753 -Node: Extension Sample Readdir1103589 -Ref: table-readdir-file-types1104478 -Node: Extension Sample Revout1105283 -Node: Extension Sample Rev2way1105872 -Node: Extension Sample Read write array1106612 -Node: Extension Sample Readfile1108554 -Node: Extension Sample Time1109649 -Node: Extension Sample API Tests1110997 -Node: gawkextlib1111489 -Node: Extension summary1114407 -Node: Extension Exercises1118109 -Node: Language History1119607 -Node: V7/SVR3.11121263 -Node: SVR41123415 -Node: POSIX1124849 -Node: BTL1126229 -Node: POSIX/GNU1126958 -Node: Feature History1132736 -Node: Common Extensions1148595 -Node: Ranges and Locales1149878 -Ref: Ranges and Locales-Footnote-11154494 -Ref: Ranges and Locales-Footnote-21154521 -Ref: Ranges and Locales-Footnote-31154756 -Node: Contributors1154977 -Node: History summary1160922 -Node: Installation1162302 -Node: Gawk Distribution1163246 -Node: Getting1163730 -Node: Extracting1164693 -Node: Distribution contents1166331 -Node: Unix Installation1172811 -Node: Quick Installation1173493 -Node: Shell Startup Files1175907 -Node: Additional Configuration Options1176996 -Node: Configuration Philosophy1179289 -Node: Non-Unix Installation1181658 -Node: PC Installation1182118 -Node: PC Binary Installation1182956 -Node: PC Compiling1183391 -Node: PC Using1184508 -Node: Cygwin1187723 -Node: MSYS1188822 -Node: VMS Installation1189323 -Node: VMS Compilation1190114 -Ref: VMS Compilation-Footnote-11191343 -Node: VMS Dynamic Extensions1191401 -Node: VMS Installation Details1193086 -Node: VMS Running1195339 -Node: VMS GNV1199618 -Node: VMS Old Gawk1200353 -Node: Bugs1200824 -Node: Bug address1201487 -Node: Usenet1204469 -Node: Maintainers1205473 -Node: Other Versions1206734 -Node: Installation summary1213648 -Node: Notes1214850 -Node: Compatibility Mode1215644 -Node: Additions1216426 -Node: Accessing The Source1217351 -Node: Adding Code1218788 -Node: New Ports1225007 -Node: Derived Files1229495 -Ref: Derived Files-Footnote-11235141 -Ref: Derived Files-Footnote-21235176 -Ref: Derived Files-Footnote-31235774 -Node: Future Extensions1235888 -Node: Implementation Limitations1236546 -Node: Extension Design1237729 -Node: Old Extension Problems1238873 -Ref: Old Extension Problems-Footnote-11240391 -Node: Extension New Mechanism Goals1240448 -Ref: Extension New Mechanism Goals-Footnote-11243812 -Node: Extension Other Design Decisions1244001 -Node: Extension Future Growth1246114 -Node: Notes summary1246950 -Node: Basic Concepts1248125 -Node: Basic High Level1248806 -Ref: figure-general-flow1249088 -Ref: figure-process-flow1249773 -Ref: Basic High Level-Footnote-11253074 -Node: Basic Data Typing1253259 -Node: Glossary1256587 -Node: Copying1288425 -Node: GNU Free Documentation License1325968 -Node: Index1351088 +Node: Environment Variables139366 +Node: AWKPATH Variable139924 +Ref: AWKPATH Variable-Footnote-1143336 +Ref: AWKPATH Variable-Footnote-2143370 +Node: AWKLIBPATH Variable143631 +Node: Other Environment Variables145289 +Node: Exit Status149110 +Node: Include Files149787 +Node: Loading Shared Libraries153312 +Node: Obsolete154740 +Node: Undocumented155432 +Node: Invoking Summary155729 +Node: Regexp157389 +Node: Regexp Usage158843 +Node: Escape Sequences160880 +Node: Regexp Operators167112 +Ref: Regexp Operators-Footnote-1174528 +Ref: Regexp Operators-Footnote-2174675 +Node: Bracket Expressions174773 +Ref: table-char-classes177249 +Node: Leftmost Longest180575 +Node: Computed Regexps181878 +Node: GNU Regexp Operators185305 +Node: Case-sensitivity188984 +Ref: Case-sensitivity-Footnote-1191871 +Ref: Case-sensitivity-Footnote-2192106 +Node: Regexp Summary192214 +Node: Reading Files193680 +Node: Records195949 +Node: awk split records197024 +Node: gawk split records202299 +Ref: gawk split records-Footnote-1206885 +Node: Fields206922 +Node: Nonconstant Fields209663 +Ref: Nonconstant Fields-Footnote-1211899 +Node: Changing Fields212103 +Node: Field Separators218134 +Node: Default Field Splitting220832 +Node: Regexp Field Splitting221950 +Node: Single Character Fields225303 +Node: Command Line Field Separator226363 +Node: Full Line Fields229581 +Ref: Full Line Fields-Footnote-1231103 +Ref: Full Line Fields-Footnote-2231149 +Node: Field Splitting Summary231250 +Node: Constant Size233324 +Node: Fixed width data234056 +Node: Skipping intervening237523 +Node: Allowing trailing data238321 +Node: Fields with fixed data239358 +Node: Splitting By Content240876 +Ref: Splitting By Content-Footnote-1244526 +Node: Testing field creation244689 +Node: Multiple Line246314 +Ref: Multiple Line-Footnote-1252198 +Node: Getline252377 +Node: Plain Getline254846 +Node: Getline/Variable257487 +Node: Getline/File258638 +Node: Getline/Variable/File260026 +Ref: Getline/Variable/File-Footnote-1261631 +Node: Getline/Pipe261719 +Node: Getline/Variable/Pipe264426 +Node: Getline/Coprocess265561 +Node: Getline/Variable/Coprocess266828 +Node: Getline Notes267570 +Node: Getline Summary270367 +Ref: table-getline-variants270791 +Node: Read Timeout271539 +Ref: Read Timeout-Footnote-1275445 +Node: Retrying Input275503 +Node: Command-line directories276702 +Node: Input Summary277608 +Node: Input Exercises280780 +Node: Printing281508 +Node: Print283342 +Node: Print Examples284799 +Node: Output Separators287579 +Node: OFMT289596 +Node: Printf290952 +Node: Basic Printf291737 +Node: Control Letters293311 +Node: Format Modifiers298473 +Node: Printf Examples304488 +Node: Redirection306974 +Node: Special FD313815 +Ref: Special FD-Footnote-1316983 +Node: Special Files317057 +Node: Other Inherited Files317674 +Node: Special Network318675 +Node: Special Caveats319535 +Node: Close Files And Pipes320484 +Ref: table-close-pipe-return-values327391 +Ref: Close Files And Pipes-Footnote-1328204 +Ref: Close Files And Pipes-Footnote-2328352 +Node: Nonfatal328504 +Node: Output Summary330842 +Node: Output Exercises332064 +Node: Expressions332743 +Node: Values333931 +Node: Constants334609 +Node: Scalar Constants335300 +Ref: Scalar Constants-Footnote-1337825 +Node: Nondecimal-numbers338075 +Node: Regexp Constants341076 +Node: Using Constant Regexps341602 +Node: Standard Regexp Constants342224 +Node: Strong Regexp Constants345412 +Node: Variables348370 +Node: Using Variables349027 +Node: Assignment Options350937 +Node: Conversion353404 +Node: Strings And Numbers353928 +Ref: Strings And Numbers-Footnote-1356991 +Node: Locale influences conversions357100 +Ref: table-locale-affects359858 +Node: All Operators360476 +Node: Arithmetic Ops361105 +Node: Concatenation363611 +Ref: Concatenation-Footnote-1366458 +Node: Assignment Ops366565 +Ref: table-assign-ops371556 +Node: Increment Ops372869 +Node: Truth Values and Conditions376329 +Node: Truth Values377403 +Node: Typing and Comparison378451 +Node: Variable Typing379271 +Ref: Variable Typing-Footnote-1385734 +Ref: Variable Typing-Footnote-2385806 +Node: Comparison Operators385883 +Ref: table-relational-ops386302 +Node: POSIX String Comparison389797 +Ref: POSIX String Comparison-Footnote-1391492 +Ref: POSIX String Comparison-Footnote-2391631 +Node: Boolean Ops391715 +Ref: Boolean Ops-Footnote-1396197 +Node: Conditional Exp396289 +Node: Function Calls398025 +Node: Precedence401902 +Node: Locales405561 +Node: Expressions Summary407193 +Node: Patterns and Actions409766 +Node: Pattern Overview410886 +Node: Regexp Patterns412563 +Node: Expression Patterns413105 +Node: Ranges416886 +Node: BEGIN/END419994 +Node: Using BEGIN/END420755 +Ref: Using BEGIN/END-Footnote-1423491 +Node: I/O And BEGIN/END423597 +Node: BEGINFILE/ENDFILE425911 +Node: Empty428824 +Node: Using Shell Variables429141 +Node: Action Overview431415 +Node: Statements433740 +Node: If Statement435588 +Node: While Statement437083 +Node: Do Statement439111 +Node: For Statement440259 +Node: Switch Statement443430 +Node: Break Statement445816 +Node: Continue Statement447908 +Node: Next Statement449735 +Node: Nextfile Statement452118 +Node: Exit Statement454770 +Node: Built-in Variables457173 +Node: User-modified458306 +Node: Auto-set466073 +Ref: Auto-set-Footnote-1482375 +Ref: Auto-set-Footnote-2482581 +Node: ARGC and ARGV482637 +Node: Pattern Action Summary486850 +Node: Arrays489280 +Node: Array Basics490609 +Node: Array Intro491453 +Ref: figure-array-elements493428 +Ref: Array Intro-Footnote-1496132 +Node: Reference to Elements496260 +Node: Assigning Elements498724 +Node: Array Example499215 +Node: Scanning an Array500974 +Node: Controlling Scanning503996 +Ref: Controlling Scanning-Footnote-1509395 +Node: Numeric Array Subscripts509711 +Node: Uninitialized Subscripts511895 +Node: Delete513514 +Ref: Delete-Footnote-1516266 +Node: Multidimensional516323 +Node: Multiscanning519418 +Node: Arrays of Arrays521009 +Node: Arrays Summary525777 +Node: Functions527870 +Node: Built-in528908 +Node: Calling Built-in529989 +Node: Numeric Functions531985 +Ref: Numeric Functions-Footnote-1536013 +Ref: Numeric Functions-Footnote-2536370 +Ref: Numeric Functions-Footnote-3536418 +Node: String Functions536690 +Ref: String Functions-Footnote-1560548 +Ref: String Functions-Footnote-2560676 +Ref: String Functions-Footnote-3560924 +Node: Gory Details561011 +Ref: table-sub-escapes562802 +Ref: table-sub-proposed564321 +Ref: table-posix-sub565684 +Ref: table-gensub-escapes567225 +Ref: Gory Details-Footnote-1568048 +Node: I/O Functions568202 +Ref: table-system-return-values574670 +Ref: I/O Functions-Footnote-1576750 +Ref: I/O Functions-Footnote-2576898 +Node: Time Functions577018 +Ref: Time Functions-Footnote-1587689 +Ref: Time Functions-Footnote-2587757 +Ref: Time Functions-Footnote-3587915 +Ref: Time Functions-Footnote-4588026 +Ref: Time Functions-Footnote-5588138 +Ref: Time Functions-Footnote-6588365 +Node: Bitwise Functions588631 +Ref: table-bitwise-ops589225 +Ref: Bitwise Functions-Footnote-1595288 +Ref: Bitwise Functions-Footnote-2595461 +Node: Type Functions595652 +Node: I18N Functions598403 +Node: User-defined600054 +Node: Definition Syntax600859 +Ref: Definition Syntax-Footnote-1606546 +Node: Function Example606617 +Ref: Function Example-Footnote-1609539 +Node: Function Caveats609561 +Node: Calling A Function610079 +Node: Variable Scope611037 +Node: Pass By Value/Reference614031 +Node: Return Statement617530 +Node: Dynamic Typing620509 +Node: Indirect Calls621439 +Ref: Indirect Calls-Footnote-1631691 +Node: Functions Summary631819 +Node: Library Functions634524 +Ref: Library Functions-Footnote-1638131 +Ref: Library Functions-Footnote-2638274 +Node: Library Names638445 +Ref: Library Names-Footnote-1641905 +Ref: Library Names-Footnote-2642128 +Node: General Functions642214 +Node: Strtonum Function643317 +Node: Assert Function646339 +Node: Round Function649665 +Node: Cliff Random Function651205 +Node: Ordinal Functions652221 +Ref: Ordinal Functions-Footnote-1655284 +Ref: Ordinal Functions-Footnote-2655536 +Node: Join Function655746 +Ref: Join Function-Footnote-1657516 +Node: Getlocaltime Function657716 +Node: Readfile Function661458 +Node: Shell Quoting663435 +Node: Data File Management664836 +Node: Filetrans Function665468 +Node: Rewind Function669564 +Node: File Checking671474 +Ref: File Checking-Footnote-1672808 +Node: Empty Files673009 +Node: Ignoring Assigns674988 +Node: Getopt Function676538 +Ref: Getopt Function-Footnote-1688007 +Node: Passwd Functions688207 +Ref: Passwd Functions-Footnote-1697046 +Node: Group Functions697134 +Ref: Group Functions-Footnote-1705032 +Node: Walking Arrays705239 +Node: Library Functions Summary708247 +Node: Library Exercises709653 +Node: Sample Programs710118 +Node: Running Examples710888 +Node: Clones711616 +Node: Cut Program712840 +Node: Egrep Program722769 +Ref: Egrep Program-Footnote-1730281 +Node: Id Program730391 +Node: Split Program734071 +Ref: Split Program-Footnote-1737529 +Node: Tee Program737658 +Node: Uniq Program740448 +Node: Wc Program747874 +Ref: Wc Program-Footnote-1752129 +Node: Miscellaneous Programs752223 +Node: Dupword Program753436 +Node: Alarm Program755466 +Node: Translate Program760321 +Ref: Translate Program-Footnote-1764886 +Node: Labels Program765156 +Ref: Labels Program-Footnote-1768507 +Node: Word Sorting768591 +Node: History Sorting772663 +Node: Extract Program774498 +Node: Simple Sed782552 +Node: Igawk Program785626 +Ref: Igawk Program-Footnote-1799957 +Ref: Igawk Program-Footnote-2800159 +Ref: Igawk Program-Footnote-3800281 +Node: Anagram Program800396 +Node: Signature Program803458 +Node: Programs Summary804705 +Node: Programs Exercises805919 +Ref: Programs Exercises-Footnote-1810048 +Node: Advanced Features810139 +Node: Nondecimal Data812129 +Node: Array Sorting813720 +Node: Controlling Array Traversal814420 +Ref: Controlling Array Traversal-Footnote-1822788 +Node: Array Sorting Functions822906 +Ref: Array Sorting Functions-Footnote-1827997 +Node: Two-way I/O828193 +Ref: Two-way I/O-Footnote-1835914 +Ref: Two-way I/O-Footnote-2836101 +Node: TCP/IP Networking836183 +Node: Profiling839301 +Ref: Profiling-Footnote-1847986 +Node: Advanced Features Summary848309 +Node: Internationalization850153 +Node: I18N and L10N851633 +Node: Explaining gettext852320 +Ref: Explaining gettext-Footnote-1858212 +Ref: Explaining gettext-Footnote-2858397 +Node: Programmer i18n858562 +Ref: Programmer i18n-Footnote-1863511 +Node: Translator i18n863560 +Node: String Extraction864354 +Ref: String Extraction-Footnote-1865486 +Node: Printf Ordering865572 +Ref: Printf Ordering-Footnote-1868358 +Node: I18N Portability868422 +Ref: I18N Portability-Footnote-1870878 +Node: I18N Example870941 +Ref: I18N Example-Footnote-1874216 +Ref: I18N Example-Footnote-2874289 +Node: Gawk I18N874398 +Node: I18N Summary875043 +Node: Debugger876384 +Node: Debugging877404 +Node: Debugging Concepts877845 +Node: Debugging Terms879654 +Node: Awk Debugging882229 +Ref: Awk Debugging-Footnote-1883174 +Node: Sample Debugging Session883306 +Node: Debugger Invocation883840 +Node: Finding The Bug885226 +Node: List of Debugger Commands891700 +Node: Breakpoint Control893033 +Node: Debugger Execution Control896727 +Node: Viewing And Changing Data900089 +Node: Execution Stack903463 +Node: Debugger Info905100 +Node: Miscellaneous Debugger Commands909171 +Node: Readline Support914233 +Node: Limitations915129 +Node: Debugging Summary917238 +Node: Arbitrary Precision Arithmetic918517 +Node: Computer Arithmetic920002 +Ref: table-numeric-ranges923768 +Ref: table-floating-point-ranges924261 +Ref: Computer Arithmetic-Footnote-1924919 +Node: Math Definitions924976 +Ref: table-ieee-formats928292 +Ref: Math Definitions-Footnote-1928895 +Node: MPFR features929000 +Node: FP Math Caution930718 +Ref: FP Math Caution-Footnote-1931790 +Node: Inexactness of computations932159 +Node: Inexact representation933119 +Node: Comparing FP Values934479 +Node: Errors accumulate935720 +Node: Getting Accuracy937153 +Node: Try To Round939863 +Node: Setting precision940762 +Ref: table-predefined-precision-strings941459 +Node: Setting the rounding mode943289 +Ref: table-gawk-rounding-modes943663 +Ref: Setting the rounding mode-Footnote-1947594 +Node: Arbitrary Precision Integers947773 +Ref: Arbitrary Precision Integers-Footnote-1950948 +Node: Checking for MPFR951097 +Node: POSIX Floating Point Problems952571 +Ref: POSIX Floating Point Problems-Footnote-1956856 +Node: Floating point summary956894 +Node: Dynamic Extensions959084 +Node: Extension Intro960637 +Node: Plugin License961903 +Node: Extension Mechanism Outline962700 +Ref: figure-load-extension963139 +Ref: figure-register-new-function964704 +Ref: figure-call-new-function965796 +Node: Extension API Description967858 +Node: Extension API Functions Introduction969500 +Node: General Data Types975040 +Ref: General Data Types-Footnote-1983401 +Node: Memory Allocation Functions983700 +Ref: Memory Allocation Functions-Footnote-1987910 +Node: Constructor Functions988009 +Node: Registration Functions991595 +Node: Extension Functions992280 +Node: Exit Callback Functions997495 +Node: Extension Version String998745 +Node: Input Parsers999408 +Node: Output Wrappers1012129 +Node: Two-way processors1016641 +Node: Printing Messages1018906 +Ref: Printing Messages-Footnote-11020077 +Node: Updating ERRNO1020230 +Node: Requesting Values1020969 +Ref: table-value-types-returned1021706 +Node: Accessing Parameters1022642 +Node: Symbol Table Access1023877 +Node: Symbol table by name1024389 +Node: Symbol table by cookie1026178 +Ref: Symbol table by cookie-Footnote-11030363 +Node: Cached values1030427 +Ref: Cached values-Footnote-11033963 +Node: Array Manipulation1034116 +Ref: Array Manipulation-Footnote-11035207 +Node: Array Data Types1035244 +Ref: Array Data Types-Footnote-11037902 +Node: Array Functions1037994 +Node: Flattening Arrays1042492 +Node: Creating Arrays1049468 +Node: Redirection API1054235 +Node: Extension API Variables1057068 +Node: Extension Versioning1057779 +Ref: gawk-api-version1058208 +Node: Extension GMP/MPFR Versioning1059939 +Node: Extension API Informational Variables1061567 +Node: Extension API Boilerplate1062640 +Node: Changes from API V11066614 +Node: Finding Extensions1068186 +Node: Extension Example1068745 +Node: Internal File Description1069543 +Node: Internal File Ops1073623 +Ref: Internal File Ops-Footnote-11084973 +Node: Using Internal File Ops1085113 +Ref: Using Internal File Ops-Footnote-11087496 +Node: Extension Samples1087770 +Node: Extension Sample File Functions1089299 +Node: Extension Sample Fnmatch1096948 +Node: Extension Sample Fork1098435 +Node: Extension Sample Inplace1099653 +Node: Extension Sample Ord1102870 +Node: Extension Sample Readdir1103706 +Ref: table-readdir-file-types1104595 +Node: Extension Sample Revout1105400 +Node: Extension Sample Rev2way1105989 +Node: Extension Sample Read write array1106729 +Node: Extension Sample Readfile1108671 +Node: Extension Sample Time1109766 +Node: Extension Sample API Tests1111114 +Node: gawkextlib1111606 +Node: Extension summary1114524 +Node: Extension Exercises1118226 +Node: Language History1119724 +Node: V7/SVR3.11121380 +Node: SVR41123532 +Node: POSIX1124966 +Node: BTL1126346 +Node: POSIX/GNU1127075 +Node: Feature History1132853 +Node: Common Extensions1148712 +Node: Ranges and Locales1149995 +Ref: Ranges and Locales-Footnote-11154611 +Ref: Ranges and Locales-Footnote-21154638 +Ref: Ranges and Locales-Footnote-31154873 +Node: Contributors1155094 +Node: History summary1161039 +Node: Installation1162419 +Node: Gawk Distribution1163363 +Node: Getting1163847 +Node: Extracting1164810 +Node: Distribution contents1166448 +Node: Unix Installation1172928 +Node: Quick Installation1173610 +Node: Shell Startup Files1176024 +Node: Additional Configuration Options1177113 +Node: Configuration Philosophy1179406 +Node: Non-Unix Installation1181775 +Node: PC Installation1182235 +Node: PC Binary Installation1183073 +Node: PC Compiling1183508 +Node: PC Using1184625 +Node: Cygwin1187840 +Node: MSYS1188939 +Node: VMS Installation1189440 +Node: VMS Compilation1190231 +Ref: VMS Compilation-Footnote-11191460 +Node: VMS Dynamic Extensions1191518 +Node: VMS Installation Details1193203 +Node: VMS Running1195456 +Node: VMS GNV1199735 +Node: VMS Old Gawk1200470 +Node: Bugs1200941 +Node: Bug address1201604 +Node: Usenet1204586 +Node: Maintainers1205590 +Node: Other Versions1206851 +Node: Installation summary1213765 +Node: Notes1214967 +Node: Compatibility Mode1215761 +Node: Additions1216543 +Node: Accessing The Source1217468 +Node: Adding Code1218905 +Node: New Ports1225124 +Node: Derived Files1229612 +Ref: Derived Files-Footnote-11235258 +Ref: Derived Files-Footnote-21235293 +Ref: Derived Files-Footnote-31235891 +Node: Future Extensions1236005 +Node: Implementation Limitations1236663 +Node: Extension Design1237846 +Node: Old Extension Problems1238990 +Ref: Old Extension Problems-Footnote-11240508 +Node: Extension New Mechanism Goals1240565 +Ref: Extension New Mechanism Goals-Footnote-11243929 +Node: Extension Other Design Decisions1244118 +Node: Extension Future Growth1246231 +Node: Notes summary1247067 +Node: Basic Concepts1248242 +Node: Basic High Level1248923 +Ref: figure-general-flow1249205 +Ref: figure-process-flow1249890 +Ref: Basic High Level-Footnote-11253191 +Node: Basic Data Typing1253376 +Node: Glossary1256704 +Node: Copying1288542 +Node: GNU Free Documentation License1326085 +Node: Index1351205 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 7627fdf4..102bf23f 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -2577,7 +2577,7 @@ does the same thing as this one: awk 'BEGIN @{ print "Don\47t Panic!" @}' @end example -@cindex quoting in @command{gawk} command lines +@cindex quoting, in @command{gawk} command lines @noindent This was explained earlier (@pxref{Read Terminal}). @@ -2933,7 +2933,7 @@ as the value of @code{FS}, and the first @value{FN} as the text of the program! This results in syntax errors at best, and confusing behavior at worst. @end itemize -@cindex quoting in @command{gawk} command lines, tricks for +@cindex quoting, in @command{gawk} command lines, tricks for Mixing single and double quotes is difficult. You have to resort to shell quoting tricks, like this: @@ -3841,7 +3841,7 @@ more than once, setting another variable each time, like this: @samp{awk @w{-v foo=1} @w{-v bar=2} @dots{}}. @cindex predefined variables, @code{-v} option@comma{} setting with -@cindex variables, predefined @code{-v} option@comma{} setting with +@cindex variables, predefined, @code{-v} option@comma{} setting with @quotation CAUTION Using @option{-v} to set the values of the built-in variables may lead to surprising results. @command{awk} will reset the @@ -4458,6 +4458,8 @@ the output of @var{some_command}, and finally it reads You may also use @code{"-"} to name standard input when reading files with @code{getline} (@pxref{Getline/File}). +And, you can even use @code{"-"} with the @option{-f} option +to read program source code from standard input (@pxref{Options}). In addition, @command{gawk} allows you to specify the special @value{FN} @file{/dev/stdin}, both on the command line and @@ -6651,6 +6653,7 @@ affected. @cindex records, terminating @cindex terminating records @cindex differences in @command{awk} and @command{gawk}, record separators +@cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables @cindex regular expressions, as record separators @cindex record separators, regular expressions as @cindex separators, for records, regular expressions as @@ -6726,6 +6729,8 @@ that happens to contain newline characters. It is thus best to avoid anchor metacharacters in the value of @code{RS}. @end quotation +@cindex @command{gawk}, @code{RT} variable in +@cindex @code{RT} variable @cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables The use of @code{RS} as a regular expression and the @code{RT} variable are @command{gawk} extensions; they are not available in @@ -7273,7 +7278,7 @@ this @command{awk} program extracts and prints the string @samp{@bullet{}29@bullet{}Oak@bullet{}St.}. @cindex field separators, choice of -@cindex regular expressions as field separators +@cindex regular expressions, as field separators @cindex field separators, regular expressions as Sometimes the input data contains separator characters that don't separate fields the way you thought they would. For instance, the @@ -8320,6 +8325,7 @@ POSIX standard.) @cindex @command{gawk}, @code{RT} variable in @cindex @code{RT} variable +@cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables If not in compatibility mode (@pxref{Options}), @command{gawk} sets @code{RT} to the input text that matched the value specified by @code{RS}. But if the input file ended without any text that matches @code{RS}, @@ -11393,6 +11399,7 @@ it would be nice to have regexp constants that are @dfn{strongly typed}; in other words, that denote a regexp useful for matching, and not an expression. +@cindex values, regexp @command{gawk} provides this feature. A strongly typed regexp constant looks almost like a regular regexp constant, except that it is preceded by an @samp{@@} sign: @@ -12469,7 +12476,7 @@ like @samp{@var{lvalue}++}, but instead of adding, it subtracts.) @end docbook @cindex precedence -@cindex operators, precedence +@cindex operators, precedence of @cindex portability, operators @cindex evaluation order @cindex Marx, Groucho @@ -12521,7 +12528,7 @@ You should avoid such things in your own programs. @cindex precedence -@cindex operators, precedence +@cindex operators, precedence of @cindex portability, operators @cindex evaluation order @cindex Marx, Groucho @@ -15411,7 +15418,6 @@ Its default value is @code{"%.6g"}. Earlier versions of @command{awk} used @code{OFMT} to specify the format for converting numbers to strings in general expressions; this is now done by @code{CONVFMT}. -@cindex @code{sprintf()} function, @code{OFMT} variable and @cindex @code{print} statement, @code{OFMT} variable and @cindex @code{OFS} variable @cindex separators, field @@ -15485,7 +15491,7 @@ The default value of @code{TEXTDOMAIN} is @code{"messages"}. @subsection Built-in Variables That Convey Information @cindex predefined variables, conveying information -@cindex variables, predefined conveying information +@cindex variables, predefined, conveying information The following is an alphabetical list of variables that @command{awk} sets automatically on certain occasions in order to provide information to your program. @@ -20122,7 +20128,7 @@ $ @kbd{gawk -f testbits.awk} @cindex strings, converting @cindex numbers, converting @cindex converting, numbers to strings -@cindex number as string of bits +@cindex numbers, as string of bits The @code{bits2str()} function turns a binary number into a string. Initializing @code{mask} to one creates a binary value where the rightmost bit @@ -29779,7 +29785,6 @@ is covered. @node String Extraction @subsection Extracting Marked Strings @cindex strings, extracting -@cindex marked strings@comma{} extracting @cindex @option{--gen-pot} option @cindex command-line options, string extraction @cindex string extraction (internationalization) @@ -31128,7 +31133,6 @@ functions that called the one you are in. The commands for doing this are: @cindex debugger commands, @code{where} (@code{backtrace}) @cindex @code{backtrace} debugger command @cindex @code{bt} debugger command (alias for @code{backtrace}) -@cindex @code{where} debugger command @cindex @code{where} debugger command (alias for @code{backtrace}) @cindex call stack, display in debugger @cindex traceback, display in debugger @@ -39322,7 +39326,7 @@ The development of the extension API first released with Arnold Robbins and Andrew Schorr, with notable contributions from the rest of the development team. -@cindex Malmberg, John E. +@cindex Malmberg, John @item John Malmberg contributed significant improvements to the OpenVMS port and the related documentation. @@ -40894,6 +40898,7 @@ makes this implementation available. You can view the files one at a time from @cindex @command{goawk} @cindex Go implementation of @command{awk} @cindex source code, @command{goawk} +@cindex programming languages, Go @item @command{goawk} This is an @command{awk} interpreter written in the @uref{https://golang.org/, Go programming language}. diff --git a/doc/gawktexi.in b/doc/gawktexi.in index be3b746c..ec09b79f 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -2544,7 +2544,7 @@ does the same thing as this one: awk 'BEGIN @{ print "Don\47t Panic!" @}' @end example -@cindex quoting in @command{gawk} command lines +@cindex quoting, in @command{gawk} command lines @noindent This was explained earlier (@pxref{Read Terminal}). @@ -2843,7 +2843,7 @@ as the value of @code{FS}, and the first @value{FN} as the text of the program! This results in syntax errors at best, and confusing behavior at worst. @end itemize -@cindex quoting in @command{gawk} command lines, tricks for +@cindex quoting, in @command{gawk} command lines, tricks for Mixing single and double quotes is difficult. You have to resort to shell quoting tricks, like this: @@ -3751,7 +3751,7 @@ more than once, setting another variable each time, like this: @samp{awk @w{-v foo=1} @w{-v bar=2} @dots{}}. @cindex predefined variables, @code{-v} option@comma{} setting with -@cindex variables, predefined @code{-v} option@comma{} setting with +@cindex variables, predefined, @code{-v} option@comma{} setting with @quotation CAUTION Using @option{-v} to set the values of the built-in variables may lead to surprising results. @command{awk} will reset the @@ -4368,6 +4368,8 @@ the output of @var{some_command}, and finally it reads You may also use @code{"-"} to name standard input when reading files with @code{getline} (@pxref{Getline/File}). +And, you can even use @code{"-"} with the @option{-f} option +to read program source code from standard input (@pxref{Options}). In addition, @command{gawk} allows you to specify the special @value{FN} @file{/dev/stdin}, both on the command line and @@ -6434,6 +6436,7 @@ affected. @cindex records, terminating @cindex terminating records @cindex differences in @command{awk} and @command{gawk}, record separators +@cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables @cindex regular expressions, as record separators @cindex record separators, regular expressions as @cindex separators, for records, regular expressions as @@ -6509,6 +6512,8 @@ that happens to contain newline characters. It is thus best to avoid anchor metacharacters in the value of @code{RS}. @end quotation +@cindex @command{gawk}, @code{RT} variable in +@cindex @code{RT} variable @cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables The use of @code{RS} as a regular expression and the @code{RT} variable are @command{gawk} extensions; they are not available in @@ -6967,7 +6972,7 @@ this @command{awk} program extracts and prints the string @samp{@bullet{}29@bullet{}Oak@bullet{}St.}. @cindex field separators, choice of -@cindex regular expressions as field separators +@cindex regular expressions, as field separators @cindex field separators, regular expressions as Sometimes the input data contains separator characters that don't separate fields the way you thought they would. For instance, the @@ -7918,6 +7923,7 @@ POSIX standard.) @cindex @command{gawk}, @code{RT} variable in @cindex @code{RT} variable +@cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables If not in compatibility mode (@pxref{Options}), @command{gawk} sets @code{RT} to the input text that matched the value specified by @code{RS}. But if the input file ended without any text that matches @code{RS}, @@ -10849,6 +10855,7 @@ it would be nice to have regexp constants that are @dfn{strongly typed}; in other words, that denote a regexp useful for matching, and not an expression. +@cindex values, regexp @command{gawk} provides this feature. A strongly typed regexp constant looks almost like a regular regexp constant, except that it is preceded by an @samp{@@} sign: @@ -11839,7 +11846,7 @@ like @samp{@var{lvalue}++}, but instead of adding, it subtracts.) @sidebar Operator Evaluation Order @cindex precedence -@cindex operators, precedence +@cindex operators, precedence of @cindex portability, operators @cindex evaluation order @cindex Marx, Groucho @@ -14728,7 +14735,6 @@ Its default value is @code{"%.6g"}. Earlier versions of @command{awk} used @code{OFMT} to specify the format for converting numbers to strings in general expressions; this is now done by @code{CONVFMT}. -@cindex @code{sprintf()} function, @code{OFMT} variable and @cindex @code{print} statement, @code{OFMT} variable and @cindex @code{OFS} variable @cindex separators, field @@ -14802,7 +14808,7 @@ The default value of @code{TEXTDOMAIN} is @code{"messages"}. @subsection Built-in Variables That Convey Information @cindex predefined variables, conveying information -@cindex variables, predefined conveying information +@cindex variables, predefined, conveying information The following is an alphabetical list of variables that @command{awk} sets automatically on certain occasions in order to provide information to your program. @@ -19232,7 +19238,7 @@ $ @kbd{gawk -f testbits.awk} @cindex strings, converting @cindex numbers, converting @cindex converting, numbers to strings -@cindex number as string of bits +@cindex numbers, as string of bits The @code{bits2str()} function turns a binary number into a string. Initializing @code{mask} to one creates a binary value where the rightmost bit @@ -28791,7 +28797,6 @@ is covered. @node String Extraction @subsection Extracting Marked Strings @cindex strings, extracting -@cindex marked strings@comma{} extracting @cindex @option{--gen-pot} option @cindex command-line options, string extraction @cindex string extraction (internationalization) @@ -30140,7 +30145,6 @@ functions that called the one you are in. The commands for doing this are: @cindex debugger commands, @code{where} (@code{backtrace}) @cindex @code{backtrace} debugger command @cindex @code{bt} debugger command (alias for @code{backtrace}) -@cindex @code{where} debugger command @cindex @code{where} debugger command (alias for @code{backtrace}) @cindex call stack, display in debugger @cindex traceback, display in debugger @@ -38295,7 +38299,7 @@ The development of the extension API first released with Arnold Robbins and Andrew Schorr, with notable contributions from the rest of the development team. -@cindex Malmberg, John E. +@cindex Malmberg, John @item John Malmberg contributed significant improvements to the OpenVMS port and the related documentation. @@ -39867,6 +39871,7 @@ makes this implementation available. You can view the files one at a time from @cindex @command{goawk} @cindex Go implementation of @command{awk} @cindex source code, @command{goawk} +@cindex programming languages, Go @item @command{goawk} This is an @command{awk} interpreter written in the @uref{https://golang.org/, Go programming language}. |