diff options
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/gawk.info | 1035 | ||||
-rw-r--r-- | doc/gawk.texi | 20 | ||||
-rw-r--r-- | doc/gawktexi.in | 20 |
4 files changed, 549 insertions, 531 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 55a3d905..e6c864d7 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2014-10-13 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in: Fix example outputs in chapter 2. + Improve description of SYMTAB. + 2014-10-12 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in: Revise doc for {INT,STR}_CHAIN_MAX. Remove Pat diff --git a/doc/gawk.info b/doc/gawk.info index ce710af4..94170939 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -3056,8 +3056,8 @@ and here is `test2': Running `gawk' with `test2' produces the following result: $ gawk -f test2 - -| This is file test1. - -| This is file test2. + -| This is script test1. + -| This is script test2. `gawk' runs the `test2' script which includes `test1' using the `@include' keyword. So, to include external `awk' source files you just @@ -3079,9 +3079,9 @@ namely `test3': Running `gawk' with the `test3' script produces the following results: $ gawk -f test3 - -| This is file test1. - -| This is file test2. - -| This is file test3. + -| This is script test1. + -| This is script test2. + -| This is script test3. The file name can, of course, be a pathname. For example: @@ -10464,9 +10464,14 @@ Options::), they are not special. separator. It is set every time a record is read. `SYMTAB #' - An array whose indices are the names of all currently defined - global variables and arrays in the program. The array may be used - for indirect access to read or write the value of a variable: + An array whose indices are the names of all defined global + variables and arrays in the program. `SYMTAB' makes `gawk''s + symbol table visible to the `awk' programmer. It is built as + `gawk' parses the program and is complete before the program + starts to run. + + The array may be used for indirect access to read or write the + value of a variable: foo = 5 SYMTAB["foo"] = 4 @@ -32027,7 +32032,7 @@ Index (line 46) * dark corner, FILENAME variable <1>: Auto-set. (line 90) * dark corner, FILENAME variable: Getline Notes. (line 19) -* dark corner, FNR/NR variables: Auto-set. (line 308) +* dark corner, FNR/NR variables: Auto-set. (line 313) * dark corner, format-control characters: Control Letters. (line 18) * dark corner, FS as null string: Single Character Fields. (line 20) @@ -32568,7 +32573,7 @@ Index (line 12) * FNR variable <1>: Auto-set. (line 99) * FNR variable: Records. (line 6) -* FNR variable, changing: Auto-set. (line 308) +* FNR variable, changing: Auto-set. (line 313) * for statement: For Statement. (line 6) * for statement, looping over arrays: Scanning an Array. (line 20) * fork() extension function: Extension Sample Fork. @@ -33204,7 +33209,7 @@ Index * not Boolean-logic operator: Boolean Ops. (line 6) * NR variable <1>: Auto-set. (line 124) * NR variable: Records. (line 6) -* NR variable, changing: Auto-set. (line 308) +* NR variable, changing: Auto-set. (line 313) * null strings <1>: Basic Data Typing. (line 26) * null strings <2>: Truth Values. (line 6) * null strings <3>: Regexp Field Splitting. @@ -33708,7 +33713,7 @@ Index * scanning arrays: Scanning an Array. (line 6) * scanning multidimensional arrays: Multiscanning. (line 11) * Schorr, Andrew <1>: Contributors. (line 133) -* Schorr, Andrew <2>: Auto-set. (line 291) +* Schorr, Andrew <2>: Auto-set. (line 296) * Schorr, Andrew: Acknowledgments. (line 60) * Schreiber, Bert: Acknowledgments. (line 38) * Schreiber, Rita: Acknowledgments. (line 38) @@ -33792,7 +33797,7 @@ Index (line 116) * sidebar, Changing FS Does Not Affect the Fields: Field Splitting Summary. (line 38) -* sidebar, Changing NR and FNR: Auto-set. (line 306) +* sidebar, Changing NR and FNR: Auto-set. (line 311) * sidebar, Controlling Output Buffering with system(): I/O Functions. (line 137) * sidebar, Escape Sequences for Metacharacters: Escape Sequences. @@ -34277,507 +34282,507 @@ Node: AWKLIBPATH Variable137332 Node: Other Environment Variables138091 Node: Exit Status141811 Node: Include Files142486 -Node: Loading Shared Libraries146064 -Node: Obsolete147491 -Node: Undocumented148188 -Node: Invoking Summary148455 -Node: Regexp150121 -Node: Regexp Usage151580 -Node: Escape Sequences153613 -Node: Regexp Operators159630 -Ref: Regexp Operators-Footnote-1167064 -Ref: Regexp Operators-Footnote-2167211 -Node: Bracket Expressions167309 -Ref: table-char-classes169326 -Node: Leftmost Longest172266 -Node: Computed Regexps173568 -Node: GNU Regexp Operators176965 -Node: Case-sensitivity180667 -Ref: Case-sensitivity-Footnote-1183557 -Ref: Case-sensitivity-Footnote-2183792 -Node: Regexp Summary183900 -Node: Reading Files185369 -Node: Records187463 -Node: awk split records188195 -Node: gawk split records193109 -Ref: gawk split records-Footnote-1197648 -Node: Fields197685 -Ref: Fields-Footnote-1200483 -Node: Nonconstant Fields200569 -Ref: Nonconstant Fields-Footnote-1202805 -Node: Changing Fields203007 -Node: Field Separators208939 -Node: Default Field Splitting211643 -Node: Regexp Field Splitting212760 -Node: Single Character Fields216110 -Node: Command Line Field Separator217169 -Node: Full Line Fields220381 -Ref: Full Line Fields-Footnote-1220889 -Node: Field Splitting Summary220935 -Ref: Field Splitting Summary-Footnote-1224066 -Node: Constant Size224167 -Node: Splitting By Content228773 -Ref: Splitting By Content-Footnote-1232846 -Node: Multiple Line232886 -Ref: Multiple Line-Footnote-1238775 -Node: Getline238954 -Node: Plain Getline241165 -Node: Getline/Variable243805 -Node: Getline/File244952 -Node: Getline/Variable/File246336 -Ref: Getline/Variable/File-Footnote-1247937 -Node: Getline/Pipe248024 -Node: Getline/Variable/Pipe250707 -Node: Getline/Coprocess251838 -Node: Getline/Variable/Coprocess253090 -Node: Getline Notes253829 -Node: Getline Summary256621 -Ref: table-getline-variants257033 -Node: Read Timeout257862 -Ref: Read Timeout-Footnote-1261676 -Node: Command-line directories261734 -Node: Input Summary262638 -Node: Input Exercises265890 -Node: Printing266618 -Node: Print268395 -Node: Print Examples269852 -Node: Output Separators272631 -Node: OFMT274649 -Node: Printf276003 -Node: Basic Printf276788 -Node: Control Letters278359 -Node: Format Modifiers282343 -Node: Printf Examples288350 -Node: Redirection290832 -Node: Special FD297671 -Ref: Special FD-Footnote-1300828 -Node: Special Files300902 -Node: Other Inherited Files301518 -Node: Special Network302518 -Node: Special Caveats303379 -Node: Close Files And Pipes304330 -Ref: Close Files And Pipes-Footnote-1311509 -Ref: Close Files And Pipes-Footnote-2311657 -Node: Output Summary311807 -Node: Output Exercises312803 -Node: Expressions313483 -Node: Values314668 -Node: Constants315344 -Node: Scalar Constants316024 -Ref: Scalar Constants-Footnote-1316883 -Node: Nondecimal-numbers317133 -Node: Regexp Constants320133 -Node: Using Constant Regexps320658 -Node: Variables323796 -Node: Using Variables324451 -Node: Assignment Options326361 -Node: Conversion328236 -Node: Strings And Numbers328760 -Ref: Strings And Numbers-Footnote-1331824 -Node: Locale influences conversions331933 -Ref: table-locale-affects334678 -Node: All Operators335266 -Node: Arithmetic Ops335896 -Node: Concatenation338401 -Ref: Concatenation-Footnote-1341220 -Node: Assignment Ops341326 -Ref: table-assign-ops346309 -Node: Increment Ops347587 -Node: Truth Values and Conditions351025 -Node: Truth Values352108 -Node: Typing and Comparison353157 -Node: Variable Typing353950 -Node: Comparison Operators357602 -Ref: table-relational-ops358012 -Node: POSIX String Comparison361527 -Ref: POSIX String Comparison-Footnote-1362599 -Node: Boolean Ops362737 -Ref: Boolean Ops-Footnote-1367216 -Node: Conditional Exp367307 -Node: Function Calls369034 -Node: Precedence372914 -Node: Locales376582 -Node: Expressions Summary378213 -Node: Patterns and Actions380787 -Node: Pattern Overview381907 -Node: Regexp Patterns383586 -Node: Expression Patterns384129 -Node: Ranges387909 -Node: BEGIN/END391015 -Node: Using BEGIN/END391777 -Ref: Using BEGIN/END-Footnote-1394514 -Node: I/O And BEGIN/END394620 -Node: BEGINFILE/ENDFILE396934 -Node: Empty399835 -Node: Using Shell Variables400152 -Node: Action Overview402428 -Node: Statements404755 -Node: If Statement406603 -Node: While Statement408101 -Node: Do Statement410129 -Node: For Statement411271 -Node: Switch Statement414426 -Node: Break Statement416814 -Node: Continue Statement418855 -Node: Next Statement420680 -Node: Nextfile Statement423060 -Node: Exit Statement425690 -Node: Built-in Variables428093 -Node: User-modified429226 -Ref: User-modified-Footnote-1436906 -Node: Auto-set436968 -Ref: Auto-set-Footnote-1449825 -Ref: Auto-set-Footnote-2450030 -Node: ARGC and ARGV450086 -Node: Pattern Action Summary454290 -Node: Arrays456717 -Node: Array Basics458046 -Node: Array Intro458890 -Ref: figure-array-elements460854 -Ref: Array Intro-Footnote-1463378 -Node: Reference to Elements463506 -Node: Assigning Elements465956 -Node: Array Example466447 -Node: Scanning an Array468205 -Node: Controlling Scanning471221 -Ref: Controlling Scanning-Footnote-1476410 -Node: Numeric Array Subscripts476726 -Node: Uninitialized Subscripts478911 -Node: Delete480528 -Ref: Delete-Footnote-1483272 -Node: Multidimensional483329 -Node: Multiscanning486424 -Node: Arrays of Arrays488013 -Node: Arrays Summary492774 -Node: Functions494879 -Node: Built-in495752 -Node: Calling Built-in496830 -Node: Numeric Functions498818 -Ref: Numeric Functions-Footnote-1502840 -Ref: Numeric Functions-Footnote-2503197 -Ref: Numeric Functions-Footnote-3503245 -Node: String Functions503514 -Ref: String Functions-Footnote-1526986 -Ref: String Functions-Footnote-2527115 -Ref: String Functions-Footnote-3527363 -Node: Gory Details527450 -Ref: table-sub-escapes529231 -Ref: table-sub-proposed530751 -Ref: table-posix-sub532115 -Ref: table-gensub-escapes533655 -Ref: Gory Details-Footnote-1534487 -Node: I/O Functions534638 -Ref: I/O Functions-Footnote-1541739 -Node: Time Functions541886 -Ref: Time Functions-Footnote-1552355 -Ref: Time Functions-Footnote-2552423 -Ref: Time Functions-Footnote-3552581 -Ref: Time Functions-Footnote-4552692 -Ref: Time Functions-Footnote-5552804 -Ref: Time Functions-Footnote-6553031 -Node: Bitwise Functions553297 -Ref: table-bitwise-ops553859 -Ref: Bitwise Functions-Footnote-1558167 -Node: Type Functions558336 -Node: I18N Functions559485 -Node: User-defined561130 -Node: Definition Syntax561934 -Ref: Definition Syntax-Footnote-1567340 -Node: Function Example567409 -Ref: Function Example-Footnote-1570326 -Node: Function Caveats570348 -Node: Calling A Function570866 -Node: Variable Scope571821 -Node: Pass By Value/Reference574809 -Node: Return Statement578319 -Node: Dynamic Typing581303 -Node: Indirect Calls582232 -Ref: Indirect Calls-Footnote-1593536 -Node: Functions Summary593664 -Node: Library Functions596363 -Ref: Library Functions-Footnote-1599981 -Ref: Library Functions-Footnote-2600124 -Node: Library Names600295 -Ref: Library Names-Footnote-1603755 -Ref: Library Names-Footnote-2603975 -Node: General Functions604061 -Node: Strtonum Function605164 -Node: Assert Function608184 -Node: Round Function611508 -Node: Cliff Random Function613049 -Node: Ordinal Functions614065 -Ref: Ordinal Functions-Footnote-1617130 -Ref: Ordinal Functions-Footnote-2617382 -Node: Join Function617593 -Ref: Join Function-Footnote-1619364 -Node: Getlocaltime Function619564 -Node: Readfile Function623305 -Node: Shell Quoting625275 -Node: Data File Management626676 -Node: Filetrans Function627308 -Node: Rewind Function631367 -Node: File Checking632752 -Ref: File Checking-Footnote-1634080 -Node: Empty Files634281 -Node: Ignoring Assigns636260 -Node: Getopt Function637811 -Ref: Getopt Function-Footnote-1649271 -Node: Passwd Functions649474 -Ref: Passwd Functions-Footnote-1658325 -Node: Group Functions658413 -Ref: Group Functions-Footnote-1666316 -Node: Walking Arrays666529 -Node: Library Functions Summary668132 -Node: Library Exercises669533 -Node: Sample Programs670813 -Node: Running Examples671583 -Node: Clones672311 -Node: Cut Program673535 -Node: Egrep Program683265 -Ref: Egrep Program-Footnote-1690769 -Node: Id Program690879 -Node: Split Program694523 -Ref: Split Program-Footnote-1697969 -Node: Tee Program698097 -Node: Uniq Program700884 -Node: Wc Program708305 -Ref: Wc Program-Footnote-1712553 -Node: Miscellaneous Programs712645 -Node: Dupword Program713858 -Node: Alarm Program715889 -Node: Translate Program720693 -Ref: Translate Program-Footnote-1725257 -Node: Labels Program725527 -Ref: Labels Program-Footnote-1728876 -Node: Word Sorting728960 -Node: History Sorting733030 -Node: Extract Program734866 -Node: Simple Sed742398 -Node: Igawk Program745460 -Ref: Igawk Program-Footnote-1759786 -Ref: Igawk Program-Footnote-2759987 -Ref: Igawk Program-Footnote-3760109 -Node: Anagram Program760224 -Node: Signature Program763286 -Node: Programs Summary764533 -Node: Programs Exercises765726 -Ref: Programs Exercises-Footnote-1769857 -Node: Advanced Features769948 -Node: Nondecimal Data771896 -Node: Array Sorting773486 -Node: Controlling Array Traversal774183 -Ref: Controlling Array Traversal-Footnote-1782514 -Node: Array Sorting Functions782632 -Ref: Array Sorting Functions-Footnote-1786524 -Node: Two-way I/O786718 -Ref: Two-way I/O-Footnote-1791662 -Ref: Two-way I/O-Footnote-2791848 -Node: TCP/IP Networking791930 -Node: Profiling794802 -Node: Advanced Features Summary802346 -Node: Internationalization804279 -Node: I18N and L10N805759 -Node: Explaining gettext806445 -Ref: Explaining gettext-Footnote-1811474 -Ref: Explaining gettext-Footnote-2811658 -Node: Programmer i18n811823 -Ref: Programmer i18n-Footnote-1816689 -Node: Translator i18n816738 -Node: String Extraction817532 -Ref: String Extraction-Footnote-1818663 -Node: Printf Ordering818749 -Ref: Printf Ordering-Footnote-1821535 -Node: I18N Portability821599 -Ref: I18N Portability-Footnote-1824048 -Node: I18N Example824111 -Ref: I18N Example-Footnote-1826911 -Node: Gawk I18N826983 -Node: I18N Summary827621 -Node: Debugger828960 -Node: Debugging829982 -Node: Debugging Concepts830423 -Node: Debugging Terms832280 -Node: Awk Debugging834855 -Node: Sample Debugging Session835747 -Node: Debugger Invocation836267 -Node: Finding The Bug837651 -Node: List of Debugger Commands844126 -Node: Breakpoint Control845458 -Node: Debugger Execution Control849150 -Node: Viewing And Changing Data852514 -Node: Execution Stack855879 -Node: Debugger Info857517 -Node: Miscellaneous Debugger Commands861534 -Node: Readline Support866726 -Node: Limitations867618 -Node: Debugging Summary869715 -Node: Arbitrary Precision Arithmetic870883 -Node: Computer Arithmetic872299 -Ref: table-numeric-ranges875900 -Ref: Computer Arithmetic-Footnote-1876759 -Node: Math Definitions876816 -Ref: table-ieee-formats880103 -Ref: Math Definitions-Footnote-1880707 -Node: MPFR features880812 -Node: FP Math Caution882483 -Ref: FP Math Caution-Footnote-1883533 -Node: Inexactness of computations883902 -Node: Inexact representation884850 -Node: Comparing FP Values886205 -Node: Errors accumulate887278 -Node: Getting Accuracy888711 -Node: Try To Round891370 -Node: Setting precision892269 -Ref: table-predefined-precision-strings892953 -Node: Setting the rounding mode894747 -Ref: table-gawk-rounding-modes895111 -Ref: Setting the rounding mode-Footnote-1898565 -Node: Arbitrary Precision Integers898744 -Ref: Arbitrary Precision Integers-Footnote-1901735 -Node: POSIX Floating Point Problems901884 -Ref: POSIX Floating Point Problems-Footnote-1905760 -Node: Floating point summary905798 -Node: Dynamic Extensions907990 -Node: Extension Intro909542 -Node: Plugin License910808 -Node: Extension Mechanism Outline911605 -Ref: figure-load-extension912033 -Ref: figure-register-new-function913513 -Ref: figure-call-new-function914517 -Node: Extension API Description916503 -Node: Extension API Functions Introduction917953 -Node: General Data Types922789 -Ref: General Data Types-Footnote-1928476 -Node: Memory Allocation Functions928775 -Ref: Memory Allocation Functions-Footnote-1931605 -Node: Constructor Functions931701 -Node: Registration Functions933435 -Node: Extension Functions934120 -Node: Exit Callback Functions936416 -Node: Extension Version String937664 -Node: Input Parsers938314 -Node: Output Wrappers948129 -Node: Two-way processors952645 -Node: Printing Messages954849 -Ref: Printing Messages-Footnote-1955926 -Node: Updating `ERRNO'956078 -Node: Requesting Values956818 -Ref: table-value-types-returned957546 -Node: Accessing Parameters958504 -Node: Symbol Table Access959735 -Node: Symbol table by name960249 -Node: Symbol table by cookie962229 -Ref: Symbol table by cookie-Footnote-1966368 -Node: Cached values966431 -Ref: Cached values-Footnote-1969935 -Node: Array Manipulation970026 -Ref: Array Manipulation-Footnote-1971124 -Node: Array Data Types971163 -Ref: Array Data Types-Footnote-1973820 -Node: Array Functions973912 -Node: Flattening Arrays977766 -Node: Creating Arrays984653 -Node: Extension API Variables989420 -Node: Extension Versioning990056 -Node: Extension API Informational Variables991957 -Node: Extension API Boilerplate993045 -Node: Finding Extensions996861 -Node: Extension Example997421 -Node: Internal File Description998193 -Node: Internal File Ops1002260 -Ref: Internal File Ops-Footnote-11013918 -Node: Using Internal File Ops1014058 -Ref: Using Internal File Ops-Footnote-11016441 -Node: Extension Samples1016714 -Node: Extension Sample File Functions1018238 -Node: Extension Sample Fnmatch1025840 -Node: Extension Sample Fork1027322 -Node: Extension Sample Inplace1028535 -Node: Extension Sample Ord1030210 -Node: Extension Sample Readdir1031046 -Ref: table-readdir-file-types1031902 -Node: Extension Sample Revout1032713 -Node: Extension Sample Rev2way1033304 -Node: Extension Sample Read write array1034045 -Node: Extension Sample Readfile1035984 -Node: Extension Sample Time1037079 -Node: Extension Sample API Tests1038428 -Node: gawkextlib1038919 -Node: Extension summary1041569 -Node: Extension Exercises1045251 -Node: Language History1045973 -Node: V7/SVR3.11047630 -Node: SVR41049811 -Node: POSIX1051256 -Node: BTL1052645 -Node: POSIX/GNU1053379 -Node: Feature History1058948 -Node: Common Extensions1072039 -Node: Ranges and Locales1073363 -Ref: Ranges and Locales-Footnote-11078002 -Ref: Ranges and Locales-Footnote-21078029 -Ref: Ranges and Locales-Footnote-31078263 -Node: Contributors1078484 -Node: History summary1084024 -Node: Installation1085393 -Node: Gawk Distribution1086349 -Node: Getting1086833 -Node: Extracting1087657 -Node: Distribution contents1089299 -Node: Unix Installation1095016 -Node: Quick Installation1095633 -Node: Additional Configuration Options1098064 -Node: Configuration Philosophy1099804 -Node: Non-Unix Installation1102155 -Node: PC Installation1102613 -Node: PC Binary Installation1103939 -Node: PC Compiling1105787 -Ref: PC Compiling-Footnote-11108808 -Node: PC Testing1108913 -Node: PC Using1110089 -Node: Cygwin1114204 -Node: MSYS1115027 -Node: VMS Installation1115525 -Node: VMS Compilation1116317 -Ref: VMS Compilation-Footnote-11117539 -Node: VMS Dynamic Extensions1117597 -Node: VMS Installation Details1119281 -Node: VMS Running1121533 -Node: VMS GNV1124374 -Node: VMS Old Gawk1125108 -Node: Bugs1125578 -Node: Other Versions1129482 -Node: Installation summary1135695 -Node: Notes1136751 -Node: Compatibility Mode1137616 -Node: Additions1138398 -Node: Accessing The Source1139323 -Node: Adding Code1140759 -Node: New Ports1146931 -Node: Derived Files1151413 -Ref: Derived Files-Footnote-11156888 -Ref: Derived Files-Footnote-21156922 -Ref: Derived Files-Footnote-31157518 -Node: Future Extensions1157632 -Node: Implementation Limitations1158238 -Node: Extension Design1159486 -Node: Old Extension Problems1160640 -Ref: Old Extension Problems-Footnote-11162157 -Node: Extension New Mechanism Goals1162214 -Ref: Extension New Mechanism Goals-Footnote-11165574 -Node: Extension Other Design Decisions1165763 -Node: Extension Future Growth1167871 -Node: Old Extension Mechanism1168707 -Node: Notes summary1170469 -Node: Basic Concepts1171655 -Node: Basic High Level1172336 -Ref: figure-general-flow1172608 -Ref: figure-process-flow1173207 -Ref: Basic High Level-Footnote-11176436 -Node: Basic Data Typing1176621 -Node: Glossary1179949 -Node: Copying1205107 -Node: GNU Free Documentation License1242663 -Node: Index1267799 +Node: Loading Shared Libraries146074 +Node: Obsolete147501 +Node: Undocumented148198 +Node: Invoking Summary148465 +Node: Regexp150131 +Node: Regexp Usage151590 +Node: Escape Sequences153623 +Node: Regexp Operators159640 +Ref: Regexp Operators-Footnote-1167074 +Ref: Regexp Operators-Footnote-2167221 +Node: Bracket Expressions167319 +Ref: table-char-classes169336 +Node: Leftmost Longest172276 +Node: Computed Regexps173578 +Node: GNU Regexp Operators176975 +Node: Case-sensitivity180677 +Ref: Case-sensitivity-Footnote-1183567 +Ref: Case-sensitivity-Footnote-2183802 +Node: Regexp Summary183910 +Node: Reading Files185379 +Node: Records187473 +Node: awk split records188205 +Node: gawk split records193119 +Ref: gawk split records-Footnote-1197658 +Node: Fields197695 +Ref: Fields-Footnote-1200493 +Node: Nonconstant Fields200579 +Ref: Nonconstant Fields-Footnote-1202815 +Node: Changing Fields203017 +Node: Field Separators208949 +Node: Default Field Splitting211653 +Node: Regexp Field Splitting212770 +Node: Single Character Fields216120 +Node: Command Line Field Separator217179 +Node: Full Line Fields220391 +Ref: Full Line Fields-Footnote-1220899 +Node: Field Splitting Summary220945 +Ref: Field Splitting Summary-Footnote-1224076 +Node: Constant Size224177 +Node: Splitting By Content228783 +Ref: Splitting By Content-Footnote-1232856 +Node: Multiple Line232896 +Ref: Multiple Line-Footnote-1238785 +Node: Getline238964 +Node: Plain Getline241175 +Node: Getline/Variable243815 +Node: Getline/File244962 +Node: Getline/Variable/File246346 +Ref: Getline/Variable/File-Footnote-1247947 +Node: Getline/Pipe248034 +Node: Getline/Variable/Pipe250717 +Node: Getline/Coprocess251848 +Node: Getline/Variable/Coprocess253100 +Node: Getline Notes253839 +Node: Getline Summary256631 +Ref: table-getline-variants257043 +Node: Read Timeout257872 +Ref: Read Timeout-Footnote-1261686 +Node: Command-line directories261744 +Node: Input Summary262648 +Node: Input Exercises265900 +Node: Printing266628 +Node: Print268405 +Node: Print Examples269862 +Node: Output Separators272641 +Node: OFMT274659 +Node: Printf276013 +Node: Basic Printf276798 +Node: Control Letters278369 +Node: Format Modifiers282353 +Node: Printf Examples288360 +Node: Redirection290842 +Node: Special FD297681 +Ref: Special FD-Footnote-1300838 +Node: Special Files300912 +Node: Other Inherited Files301528 +Node: Special Network302528 +Node: Special Caveats303389 +Node: Close Files And Pipes304340 +Ref: Close Files And Pipes-Footnote-1311519 +Ref: Close Files And Pipes-Footnote-2311667 +Node: Output Summary311817 +Node: Output Exercises312813 +Node: Expressions313493 +Node: Values314678 +Node: Constants315354 +Node: Scalar Constants316034 +Ref: Scalar Constants-Footnote-1316893 +Node: Nondecimal-numbers317143 +Node: Regexp Constants320143 +Node: Using Constant Regexps320668 +Node: Variables323806 +Node: Using Variables324461 +Node: Assignment Options326371 +Node: Conversion328246 +Node: Strings And Numbers328770 +Ref: Strings And Numbers-Footnote-1331834 +Node: Locale influences conversions331943 +Ref: table-locale-affects334688 +Node: All Operators335276 +Node: Arithmetic Ops335906 +Node: Concatenation338411 +Ref: Concatenation-Footnote-1341230 +Node: Assignment Ops341336 +Ref: table-assign-ops346319 +Node: Increment Ops347597 +Node: Truth Values and Conditions351035 +Node: Truth Values352118 +Node: Typing and Comparison353167 +Node: Variable Typing353960 +Node: Comparison Operators357612 +Ref: table-relational-ops358022 +Node: POSIX String Comparison361537 +Ref: POSIX String Comparison-Footnote-1362609 +Node: Boolean Ops362747 +Ref: Boolean Ops-Footnote-1367226 +Node: Conditional Exp367317 +Node: Function Calls369044 +Node: Precedence372924 +Node: Locales376592 +Node: Expressions Summary378223 +Node: Patterns and Actions380797 +Node: Pattern Overview381917 +Node: Regexp Patterns383596 +Node: Expression Patterns384139 +Node: Ranges387919 +Node: BEGIN/END391025 +Node: Using BEGIN/END391787 +Ref: Using BEGIN/END-Footnote-1394524 +Node: I/O And BEGIN/END394630 +Node: BEGINFILE/ENDFILE396944 +Node: Empty399845 +Node: Using Shell Variables400162 +Node: Action Overview402438 +Node: Statements404765 +Node: If Statement406613 +Node: While Statement408111 +Node: Do Statement410139 +Node: For Statement411281 +Node: Switch Statement414436 +Node: Break Statement416824 +Node: Continue Statement418865 +Node: Next Statement420690 +Node: Nextfile Statement423070 +Node: Exit Statement425700 +Node: Built-in Variables428103 +Node: User-modified429236 +Ref: User-modified-Footnote-1436916 +Node: Auto-set436978 +Ref: Auto-set-Footnote-1450008 +Ref: Auto-set-Footnote-2450213 +Node: ARGC and ARGV450269 +Node: Pattern Action Summary454473 +Node: Arrays456900 +Node: Array Basics458229 +Node: Array Intro459073 +Ref: figure-array-elements461037 +Ref: Array Intro-Footnote-1463561 +Node: Reference to Elements463689 +Node: Assigning Elements466139 +Node: Array Example466630 +Node: Scanning an Array468388 +Node: Controlling Scanning471404 +Ref: Controlling Scanning-Footnote-1476593 +Node: Numeric Array Subscripts476909 +Node: Uninitialized Subscripts479094 +Node: Delete480711 +Ref: Delete-Footnote-1483455 +Node: Multidimensional483512 +Node: Multiscanning486607 +Node: Arrays of Arrays488196 +Node: Arrays Summary492957 +Node: Functions495062 +Node: Built-in495935 +Node: Calling Built-in497013 +Node: Numeric Functions499001 +Ref: Numeric Functions-Footnote-1503023 +Ref: Numeric Functions-Footnote-2503380 +Ref: Numeric Functions-Footnote-3503428 +Node: String Functions503697 +Ref: String Functions-Footnote-1527169 +Ref: String Functions-Footnote-2527298 +Ref: String Functions-Footnote-3527546 +Node: Gory Details527633 +Ref: table-sub-escapes529414 +Ref: table-sub-proposed530934 +Ref: table-posix-sub532298 +Ref: table-gensub-escapes533838 +Ref: Gory Details-Footnote-1534670 +Node: I/O Functions534821 +Ref: I/O Functions-Footnote-1541922 +Node: Time Functions542069 +Ref: Time Functions-Footnote-1552538 +Ref: Time Functions-Footnote-2552606 +Ref: Time Functions-Footnote-3552764 +Ref: Time Functions-Footnote-4552875 +Ref: Time Functions-Footnote-5552987 +Ref: Time Functions-Footnote-6553214 +Node: Bitwise Functions553480 +Ref: table-bitwise-ops554042 +Ref: Bitwise Functions-Footnote-1558350 +Node: Type Functions558519 +Node: I18N Functions559668 +Node: User-defined561313 +Node: Definition Syntax562117 +Ref: Definition Syntax-Footnote-1567523 +Node: Function Example567592 +Ref: Function Example-Footnote-1570509 +Node: Function Caveats570531 +Node: Calling A Function571049 +Node: Variable Scope572004 +Node: Pass By Value/Reference574992 +Node: Return Statement578502 +Node: Dynamic Typing581486 +Node: Indirect Calls582415 +Ref: Indirect Calls-Footnote-1593719 +Node: Functions Summary593847 +Node: Library Functions596546 +Ref: Library Functions-Footnote-1600164 +Ref: Library Functions-Footnote-2600307 +Node: Library Names600478 +Ref: Library Names-Footnote-1603938 +Ref: Library Names-Footnote-2604158 +Node: General Functions604244 +Node: Strtonum Function605347 +Node: Assert Function608367 +Node: Round Function611691 +Node: Cliff Random Function613232 +Node: Ordinal Functions614248 +Ref: Ordinal Functions-Footnote-1617313 +Ref: Ordinal Functions-Footnote-2617565 +Node: Join Function617776 +Ref: Join Function-Footnote-1619547 +Node: Getlocaltime Function619747 +Node: Readfile Function623488 +Node: Shell Quoting625458 +Node: Data File Management626859 +Node: Filetrans Function627491 +Node: Rewind Function631550 +Node: File Checking632935 +Ref: File Checking-Footnote-1634263 +Node: Empty Files634464 +Node: Ignoring Assigns636443 +Node: Getopt Function637994 +Ref: Getopt Function-Footnote-1649454 +Node: Passwd Functions649657 +Ref: Passwd Functions-Footnote-1658508 +Node: Group Functions658596 +Ref: Group Functions-Footnote-1666499 +Node: Walking Arrays666712 +Node: Library Functions Summary668315 +Node: Library Exercises669716 +Node: Sample Programs670996 +Node: Running Examples671766 +Node: Clones672494 +Node: Cut Program673718 +Node: Egrep Program683448 +Ref: Egrep Program-Footnote-1690952 +Node: Id Program691062 +Node: Split Program694706 +Ref: Split Program-Footnote-1698152 +Node: Tee Program698280 +Node: Uniq Program701067 +Node: Wc Program708488 +Ref: Wc Program-Footnote-1712736 +Node: Miscellaneous Programs712828 +Node: Dupword Program714041 +Node: Alarm Program716072 +Node: Translate Program720876 +Ref: Translate Program-Footnote-1725440 +Node: Labels Program725710 +Ref: Labels Program-Footnote-1729059 +Node: Word Sorting729143 +Node: History Sorting733213 +Node: Extract Program735049 +Node: Simple Sed742581 +Node: Igawk Program745643 +Ref: Igawk Program-Footnote-1759969 +Ref: Igawk Program-Footnote-2760170 +Ref: Igawk Program-Footnote-3760292 +Node: Anagram Program760407 +Node: Signature Program763469 +Node: Programs Summary764716 +Node: Programs Exercises765909 +Ref: Programs Exercises-Footnote-1770040 +Node: Advanced Features770131 +Node: Nondecimal Data772079 +Node: Array Sorting773669 +Node: Controlling Array Traversal774366 +Ref: Controlling Array Traversal-Footnote-1782697 +Node: Array Sorting Functions782815 +Ref: Array Sorting Functions-Footnote-1786707 +Node: Two-way I/O786901 +Ref: Two-way I/O-Footnote-1791845 +Ref: Two-way I/O-Footnote-2792031 +Node: TCP/IP Networking792113 +Node: Profiling794985 +Node: Advanced Features Summary802529 +Node: Internationalization804462 +Node: I18N and L10N805942 +Node: Explaining gettext806628 +Ref: Explaining gettext-Footnote-1811657 +Ref: Explaining gettext-Footnote-2811841 +Node: Programmer i18n812006 +Ref: Programmer i18n-Footnote-1816872 +Node: Translator i18n816921 +Node: String Extraction817715 +Ref: String Extraction-Footnote-1818846 +Node: Printf Ordering818932 +Ref: Printf Ordering-Footnote-1821718 +Node: I18N Portability821782 +Ref: I18N Portability-Footnote-1824231 +Node: I18N Example824294 +Ref: I18N Example-Footnote-1827094 +Node: Gawk I18N827166 +Node: I18N Summary827804 +Node: Debugger829143 +Node: Debugging830165 +Node: Debugging Concepts830606 +Node: Debugging Terms832463 +Node: Awk Debugging835038 +Node: Sample Debugging Session835930 +Node: Debugger Invocation836450 +Node: Finding The Bug837834 +Node: List of Debugger Commands844309 +Node: Breakpoint Control845641 +Node: Debugger Execution Control849333 +Node: Viewing And Changing Data852697 +Node: Execution Stack856062 +Node: Debugger Info857700 +Node: Miscellaneous Debugger Commands861717 +Node: Readline Support866909 +Node: Limitations867801 +Node: Debugging Summary869898 +Node: Arbitrary Precision Arithmetic871066 +Node: Computer Arithmetic872482 +Ref: table-numeric-ranges876083 +Ref: Computer Arithmetic-Footnote-1876942 +Node: Math Definitions876999 +Ref: table-ieee-formats880286 +Ref: Math Definitions-Footnote-1880890 +Node: MPFR features880995 +Node: FP Math Caution882666 +Ref: FP Math Caution-Footnote-1883716 +Node: Inexactness of computations884085 +Node: Inexact representation885033 +Node: Comparing FP Values886388 +Node: Errors accumulate887461 +Node: Getting Accuracy888894 +Node: Try To Round891553 +Node: Setting precision892452 +Ref: table-predefined-precision-strings893136 +Node: Setting the rounding mode894930 +Ref: table-gawk-rounding-modes895294 +Ref: Setting the rounding mode-Footnote-1898748 +Node: Arbitrary Precision Integers898927 +Ref: Arbitrary Precision Integers-Footnote-1901918 +Node: POSIX Floating Point Problems902067 +Ref: POSIX Floating Point Problems-Footnote-1905943 +Node: Floating point summary905981 +Node: Dynamic Extensions908173 +Node: Extension Intro909725 +Node: Plugin License910991 +Node: Extension Mechanism Outline911788 +Ref: figure-load-extension912216 +Ref: figure-register-new-function913696 +Ref: figure-call-new-function914700 +Node: Extension API Description916686 +Node: Extension API Functions Introduction918136 +Node: General Data Types922972 +Ref: General Data Types-Footnote-1928659 +Node: Memory Allocation Functions928958 +Ref: Memory Allocation Functions-Footnote-1931788 +Node: Constructor Functions931884 +Node: Registration Functions933618 +Node: Extension Functions934303 +Node: Exit Callback Functions936599 +Node: Extension Version String937847 +Node: Input Parsers938497 +Node: Output Wrappers948312 +Node: Two-way processors952828 +Node: Printing Messages955032 +Ref: Printing Messages-Footnote-1956109 +Node: Updating `ERRNO'956261 +Node: Requesting Values957001 +Ref: table-value-types-returned957729 +Node: Accessing Parameters958687 +Node: Symbol Table Access959918 +Node: Symbol table by name960432 +Node: Symbol table by cookie962412 +Ref: Symbol table by cookie-Footnote-1966551 +Node: Cached values966614 +Ref: Cached values-Footnote-1970118 +Node: Array Manipulation970209 +Ref: Array Manipulation-Footnote-1971307 +Node: Array Data Types971346 +Ref: Array Data Types-Footnote-1974003 +Node: Array Functions974095 +Node: Flattening Arrays977949 +Node: Creating Arrays984836 +Node: Extension API Variables989603 +Node: Extension Versioning990239 +Node: Extension API Informational Variables992140 +Node: Extension API Boilerplate993228 +Node: Finding Extensions997044 +Node: Extension Example997604 +Node: Internal File Description998376 +Node: Internal File Ops1002443 +Ref: Internal File Ops-Footnote-11014101 +Node: Using Internal File Ops1014241 +Ref: Using Internal File Ops-Footnote-11016624 +Node: Extension Samples1016897 +Node: Extension Sample File Functions1018421 +Node: Extension Sample Fnmatch1026023 +Node: Extension Sample Fork1027505 +Node: Extension Sample Inplace1028718 +Node: Extension Sample Ord1030393 +Node: Extension Sample Readdir1031229 +Ref: table-readdir-file-types1032085 +Node: Extension Sample Revout1032896 +Node: Extension Sample Rev2way1033487 +Node: Extension Sample Read write array1034228 +Node: Extension Sample Readfile1036167 +Node: Extension Sample Time1037262 +Node: Extension Sample API Tests1038611 +Node: gawkextlib1039102 +Node: Extension summary1041752 +Node: Extension Exercises1045434 +Node: Language History1046156 +Node: V7/SVR3.11047813 +Node: SVR41049994 +Node: POSIX1051439 +Node: BTL1052828 +Node: POSIX/GNU1053562 +Node: Feature History1059131 +Node: Common Extensions1072222 +Node: Ranges and Locales1073546 +Ref: Ranges and Locales-Footnote-11078185 +Ref: Ranges and Locales-Footnote-21078212 +Ref: Ranges and Locales-Footnote-31078446 +Node: Contributors1078667 +Node: History summary1084207 +Node: Installation1085576 +Node: Gawk Distribution1086532 +Node: Getting1087016 +Node: Extracting1087840 +Node: Distribution contents1089482 +Node: Unix Installation1095199 +Node: Quick Installation1095816 +Node: Additional Configuration Options1098247 +Node: Configuration Philosophy1099987 +Node: Non-Unix Installation1102338 +Node: PC Installation1102796 +Node: PC Binary Installation1104122 +Node: PC Compiling1105970 +Ref: PC Compiling-Footnote-11108991 +Node: PC Testing1109096 +Node: PC Using1110272 +Node: Cygwin1114387 +Node: MSYS1115210 +Node: VMS Installation1115708 +Node: VMS Compilation1116500 +Ref: VMS Compilation-Footnote-11117722 +Node: VMS Dynamic Extensions1117780 +Node: VMS Installation Details1119464 +Node: VMS Running1121716 +Node: VMS GNV1124557 +Node: VMS Old Gawk1125291 +Node: Bugs1125761 +Node: Other Versions1129665 +Node: Installation summary1135878 +Node: Notes1136934 +Node: Compatibility Mode1137799 +Node: Additions1138581 +Node: Accessing The Source1139506 +Node: Adding Code1140942 +Node: New Ports1147114 +Node: Derived Files1151596 +Ref: Derived Files-Footnote-11157071 +Ref: Derived Files-Footnote-21157105 +Ref: Derived Files-Footnote-31157701 +Node: Future Extensions1157815 +Node: Implementation Limitations1158421 +Node: Extension Design1159669 +Node: Old Extension Problems1160823 +Ref: Old Extension Problems-Footnote-11162340 +Node: Extension New Mechanism Goals1162397 +Ref: Extension New Mechanism Goals-Footnote-11165757 +Node: Extension Other Design Decisions1165946 +Node: Extension Future Growth1168054 +Node: Old Extension Mechanism1168890 +Node: Notes summary1170652 +Node: Basic Concepts1171838 +Node: Basic High Level1172519 +Ref: figure-general-flow1172791 +Ref: figure-process-flow1173390 +Ref: Basic High Level-Footnote-11176619 +Node: Basic Data Typing1176804 +Node: Glossary1180132 +Node: Copying1205290 +Node: GNU Free Documentation License1242846 +Node: Index1267982 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index cbd6206c..e8e9b4c0 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -4531,8 +4531,8 @@ produces the following result: @example $ @kbd{gawk -f test2} -@print{} This is file test1. -@print{} This is file test2. +@print{} This is script test1. +@print{} This is script test2. @end example @code{gawk} runs the @file{test2} script which includes @file{test1} @@ -4562,9 +4562,9 @@ following results: @example $ @kbd{gawk -f test3} -@print{} This is file test1. -@print{} This is file test2. -@print{} This is file test3. +@print{} This is script test1. +@print{} This is script test2. +@print{} This is script test3. @end example The @value{FN} can, of course, be a pathname. For example: @@ -15001,9 +15001,13 @@ the record separator. It is set every time a record is read. @cindex @code{SYMTAB} array @cindex differences in @command{awk} and @command{gawk}, @code{SYMTAB} variable @item @code{SYMTAB #} -An array whose indices are the names of all currently defined -global variables and arrays in the program. The array may be used -for indirect access to read or write the value of a variable: +An array whose indices are the names of all defined global variables and +arrays in the program. @code{SYMTAB} makes @command{gawk}'s symbol table +visible to the @command{awk} programmer. It is built as @command{gawk} +parses the program and is complete before the program starts to run. + +The array may be used for indirect access to read or write the value of +a variable: @example foo = 5 diff --git a/doc/gawktexi.in b/doc/gawktexi.in index 99cd14ea..f9aea67e 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -4442,8 +4442,8 @@ produces the following result: @example $ @kbd{gawk -f test2} -@print{} This is file test1. -@print{} This is file test2. +@print{} This is script test1. +@print{} This is script test2. @end example @code{gawk} runs the @file{test2} script which includes @file{test1} @@ -4473,9 +4473,9 @@ following results: @example $ @kbd{gawk -f test3} -@print{} This is file test1. -@print{} This is file test2. -@print{} This is file test3. +@print{} This is script test1. +@print{} This is script test2. +@print{} This is script test3. @end example The @value{FN} can, of course, be a pathname. For example: @@ -14331,9 +14331,13 @@ the record separator. It is set every time a record is read. @cindex @code{SYMTAB} array @cindex differences in @command{awk} and @command{gawk}, @code{SYMTAB} variable @item @code{SYMTAB #} -An array whose indices are the names of all currently defined -global variables and arrays in the program. The array may be used -for indirect access to read or write the value of a variable: +An array whose indices are the names of all defined global variables and +arrays in the program. @code{SYMTAB} makes @command{gawk}'s symbol table +visible to the @command{awk} programmer. It is built as @command{gawk} +parses the program and is complete before the program starts to run. + +The array may be used for indirect access to read or write the value of +a variable: @example foo = 5 |