diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2017-05-30 10:55:42 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2017-05-30 10:55:42 +0300 |
commit | 0eb07623dd13a31feb1ada1b3046e05349db00d9 (patch) | |
tree | 5e996fc1de120dbe0e3a83e5ae60ef97a8c918c3 | |
parent | 5fc8c257478f9c503a905c27163b038843bc591c (diff) | |
parent | 1963e23d0a9b13974f2e5a77fdea03d50dc9c654 (diff) | |
download | egawk-0eb07623dd13a31feb1ada1b3046e05349db00d9.tar.gz egawk-0eb07623dd13a31feb1ada1b3046e05349db00d9.tar.bz2 egawk-0eb07623dd13a31feb1ada1b3046e05349db00d9.zip |
Merge branch 'master' into feature/api-mpfr
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | doc/ChangeLog | 4 | ||||
-rw-r--r-- | doc/gawk.info | 806 | ||||
-rw-r--r-- | doc/gawk.texi | 44 | ||||
-rw-r--r-- | doc/gawktexi.in | 44 |
6 files changed, 475 insertions, 430 deletions
@@ -1,3 +1,7 @@ +2017-05-30 Arnold D. Robbins <arnold@skeeve.com> + + * NEWS: Mention PROCINFO["argv"]. + 2017-05-24 Andrew J. Schorr <aschorr@telemetry-investments.com> * field.c (set_FIELDWIDTHS): Add check to protect against blank @@ -115,6 +115,9 @@ Changes from 4.1.x to 4.2.0 parsing mechanism by specifying the locations of each field in the input record. When this is in effect, PROCINFO["FS"] will be set to "API". +28. The PROCINFO["argv"] array records all of gawk's command line arguments + as gawk received them (the values of the C level argv array). + Changes from 4.1.3 to 4.1.4 --------------------------- diff --git a/doc/ChangeLog b/doc/ChangeLog index 8249c0be..c63d2ccd 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2017-05-30 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in: Document PROCINFO["argv"]. + 2017-05-29 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in (Checking for MPFR): New node on checking if diff --git a/doc/gawk.info b/doc/gawk.info index b7b6b48c..953b657c 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -10853,6 +10853,25 @@ they are not special: running 'awk' program. The following elements (listed alphabetically) are guaranteed to be available: + 'PROCINFO["argv"]' + The 'PROCINFO["argv"]' array contains all of the command-line + arguments (after glob expansion and redirection processing on + platforms where that must be done manually by the program) + with subscripts ranging from 0 through 'argc' - 1. For + example, 'PROCINFO["argv"][0]' will contain the name by which + 'gawk' was invoked. Here is an example of how this feature + may be used: + + gawk ' + BEGIN { + for (i = 0; i < length(PROCINFO["argv"]); i++) + print i, PROCINFO["argv"][i] + }' + + Please note that this differs from the standard 'ARGV' array + which does not include command-line arguments that have + already been processed by 'gawk' (*note ARGC and ARGV::). + 'PROCINFO["egid"]' The value of the 'getegid()' system call. @@ -27946,6 +27965,8 @@ POSIX 'awk', in the order they were added to 'gawk'. * Changes to 'ENVIRON' are reflected into 'gawk''s environment and that of programs that it runs. *Note Auto-set::. + * The 'PROCINFO["argv"' array. *Note Auto-set::. + * The '--pretty-print' option no longer runs the 'awk' program too. *Note Options::. @@ -33276,6 +33297,7 @@ Index * columns, cutting: Cut Program. (line 6) * comma (,), in range patterns: Ranges. (line 6) * command completion, in debugger: Readline Support. (line 6) +* command line arguments, PROCINFO["argv": Auto-set. (line 154) * command line, arguments: Other Arguments. (line 6) * command line, arguments <1>: Auto-set. (line 15) * command line, arguments <2>: ARGC and ARGV. (line 6) @@ -33416,7 +33438,7 @@ Index * dark corner, field separators: Full Line Fields. (line 22) * dark corner, FILENAME variable: Getline Notes. (line 19) * dark corner, FILENAME variable <1>: Auto-set. (line 108) -* dark corner, FNR/NR variables: Auto-set. (line 358) +* dark corner, FNR/NR variables: Auto-set. (line 377) * dark corner, format-control characters: Control Letters. (line 18) * dark corner, format-control characters <1>: Control Letters. (line 93) @@ -33651,7 +33673,7 @@ Index (line 6) * differences in awk and gawk, RS/RT variables: gawk split records. (line 58) -* differences in awk and gawk, RT variable: Auto-set. (line 296) +* differences in awk and gawk, RT variable: Auto-set. (line 315) * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. @@ -33659,7 +33681,7 @@ Index * differences in awk and gawk, strings: Scalar Constants. (line 20) * differences in awk and gawk, strings, storing: gawk split records. (line 76) -* differences in awk and gawk, SYMTAB variable: Auto-set. (line 300) +* differences in awk and gawk, SYMTAB variable: Auto-set. (line 319) * differences in awk and gawk, TEXTDOMAIN variable: User-modified. (line 155) * differences in awk and gawk, trunc-mod operation: Arithmetic Ops. @@ -33699,8 +33721,8 @@ Index * dynamically loaded extensions: Dynamic Extensions. (line 6) * e debugger command (alias for enable): Breakpoint Control. (line 73) * EBCDIC: Ordinal Functions. (line 45) -* effective group ID of gawk user: Auto-set. (line 153) -* effective user ID of gawk user: Auto-set. (line 161) +* effective group ID of gawk user: Auto-set. (line 172) +* effective user ID of gawk user: Auto-set. (line 180) * egrep utility: Bracket Expressions. (line 34) * egrep utility <1>: Egrep Program. (line 6) * egrep.awk program: Egrep Program. (line 53) @@ -33822,7 +33844,7 @@ Index (line 6) * extension API version: Extension Versioning. (line 6) -* extension API, version number: Auto-set. (line 247) +* extension API, version number: Auto-set. (line 266) * extension example: Extension Example. (line 6) * extension registration: Registration Functions. (line 6) @@ -33974,7 +33996,7 @@ Index (line 12) * FNR variable: Records. (line 6) * FNR variable <1>: Auto-set. (line 118) -* FNR variable, changing: Auto-set. (line 358) +* FNR variable, changing: Auto-set. (line 377) * for statement: For Statement. (line 6) * for statement, looping over arrays: Scanning an Array. (line 20) * fork() extension function: Extension Sample Fork. @@ -34078,7 +34100,7 @@ Index * G., Daniel Richard <1>: Maintainers. (line 14) * Garfinkle, Scott: Contributors. (line 35) * gawk program, dynamic profiling: Profiling. (line 177) -* gawk version: Auto-set. (line 222) +* gawk version: Auto-set. (line 241) * gawk, ARGIND variable in: Other Arguments. (line 15) * gawk, awk and: Preface. (line 21) * gawk, awk and <1>: This Manual. (line 14) @@ -34154,13 +34176,13 @@ Index * gawk, regular expressions, precedence: Regexp Operators. (line 161) * gawk, RT variable in: awk split records. (line 124) * gawk, RT variable in <1>: Multiple Line. (line 130) -* gawk, RT variable in <2>: Auto-set. (line 296) +* gawk, RT variable in <2>: Auto-set. (line 315) * gawk, See Also awk: Preface. (line 34) * gawk, source code, obtaining: Getting. (line 6) * gawk, splitting fields and: Testing field creation. (line 6) * gawk, string-translation functions: I18N Functions. (line 6) -* gawk, SYMTAB array in: Auto-set. (line 300) +* gawk, SYMTAB array in: Auto-set. (line 319) * gawk, TEXTDOMAIN variable in: User-modified. (line 155) * gawk, timestamps: Time Functions. (line 6) * gawk, uses for: Preface. (line 34) @@ -34257,7 +34279,7 @@ Index * Grigera, Juan: Contributors. (line 58) * group database, reading: Group Functions. (line 6) * group file: Group Functions. (line 6) -* group ID of gawk user: Auto-set. (line 171) +* group ID of gawk user: Auto-set. (line 190) * groups, information about: Group Functions. (line 6) * gsub: Standard Regexp Constants. (line 43) @@ -34555,7 +34577,7 @@ Index * mawk utility <2>: Concatenation. (line 36) * mawk utility <3>: Nextfile Statement. (line 47) * mawk utility <4>: Other Versions. (line 48) -* maximum precision supported by MPFR library: Auto-set. (line 236) +* maximum precision supported by MPFR library: Auto-set. (line 255) * McIlroy, Doug: Glossary. (line 257) * McPhee, Patrick: Contributors. (line 101) * message object files: Explaining gettext. (line 42) @@ -34568,7 +34590,7 @@ Index * messages from extensions: Printing Messages. (line 6) * metacharacters in regular expressions: Regexp Operators. (line 6) * metacharacters, escape sequences for: Escape Sequences. (line 140) -* minimum precision required by MPFR library: Auto-set. (line 239) +* minimum precision required by MPFR library: Auto-set. (line 258) * mktime: Time Functions. (line 25) * modifiers, in format specifiers: Format Modifiers. (line 6) * monetary information, localization: Explaining gettext. (line 104) @@ -34627,7 +34649,7 @@ Index * not Boolean-logic operator: Boolean Ops. (line 6) * NR variable: Records. (line 6) * NR variable <1>: Auto-set. (line 143) -* NR variable, changing: Auto-set. (line 358) +* NR variable, changing: Auto-set. (line 377) * null strings: awk split records. (line 114) * null strings <1>: Regexp Field Splitting. (line 43) @@ -34747,7 +34769,7 @@ Index * p debugger command (alias for print): Viewing And Changing Data. (line 35) * Papadopoulos, Panos: Contributors. (line 129) -* parent process ID of gawk process: Auto-set. (line 211) +* parent process ID of gawk process: Auto-set. (line 230) * parentheses (), in a profile: Profiling. (line 146) * parentheses (), regexp operator: Regexp Operators. (line 81) * password file: Passwd Functions. (line 16) @@ -34916,8 +34938,8 @@ Index * printing, unduplicated lines of text: Uniq Program. (line 6) * printing, user information: Id Program. (line 6) * private variables: Library Names. (line 11) -* process group ID of gawk process: Auto-set. (line 205) -* process ID of gawk process: Auto-set. (line 208) +* process group ID of gawk process: Auto-set. (line 224) +* process ID of gawk process: Auto-set. (line 227) * processes, two-way communications with: Two-way I/O. (line 6) * processing data: Basic High Level. (line 6) * PROCINFO array: Auto-set. (line 148) @@ -34932,7 +34954,7 @@ Index (line 26) * profiling awk programs: Profiling. (line 6) * profiling awk programs, dynamically: Profiling. (line 177) -* program identifiers: Auto-set. (line 174) +* program identifiers: Auto-set. (line 193) * program, definition of: Getting Started. (line 21) * programming conventions, --non-decimal-data option: Nondecimal Data. (line 35) @@ -35093,7 +35115,7 @@ Index * right shift: Bitwise Functions. (line 54) * right shift, bitwise: Bitwise Functions. (line 32) * Ritchie, Dennis: Basic Data Typing. (line 54) -* RLENGTH variable: Auto-set. (line 283) +* RLENGTH variable: Auto-set. (line 302) * RLENGTH variable, match() function and: String Functions. (line 227) * Robbins, Arnold: Command Line Field Separator. (line 71) @@ -35119,11 +35141,11 @@ Index * RS variable <1>: User-modified. (line 136) * RS variable, multiline records and: Multiple Line. (line 17) * rshift: Bitwise Functions. (line 54) -* RSTART variable: Auto-set. (line 289) +* RSTART variable: Auto-set. (line 308) * RSTART variable, match() function and: String Functions. (line 227) * RT variable: awk split records. (line 124) * RT variable <1>: Multiple Line. (line 130) -* RT variable <2>: Auto-set. (line 296) +* RT variable <2>: Auto-set. (line 315) * Rubin, Paul: History. (line 30) * Rubin, Paul <1>: Contributors. (line 16) * rule, definition of: Getting Started. (line 21) @@ -35141,7 +35163,7 @@ Index * scanning arrays: Scanning an Array. (line 6) * scanning multidimensional arrays: Multiscanning. (line 11) * Schorr, Andrew: Acknowledgments. (line 60) -* Schorr, Andrew <1>: Auto-set. (line 328) +* Schorr, Andrew <1>: Auto-set. (line 347) * Schorr, Andrew <2>: Contributors. (line 134) * Schreiber, Bert: Acknowledgments. (line 38) * Schreiber, Rita: Acknowledgments. (line 38) @@ -35227,7 +35249,7 @@ Index * sidebar, Beware The Smoke and Mirrors!: Bitwise Functions. (line 126) * sidebar, Changing FS Does Not Affect the Fields: Full Line Fields. (line 14) -* sidebar, Changing NR and FNR: Auto-set. (line 356) +* sidebar, Changing NR and FNR: Auto-set. (line 375) * sidebar, Controlling Output Buffering with system(): I/O Functions. (line 164) * sidebar, Escape Sequences for Metacharacters: Escape Sequences. @@ -35390,9 +35412,9 @@ Index * substr: String Functions. (line 484) * substring: String Functions. (line 484) * Sumner, Andrew: Other Versions. (line 68) -* supplementary groups of gawk process: Auto-set. (line 252) +* supplementary groups of gawk process: Auto-set. (line 271) * switch statement: Switch Statement. (line 6) -* SYMTAB array: Auto-set. (line 300) +* SYMTAB array: Auto-set. (line 319) * syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops. (line 149) * system: I/O Functions. (line 107) @@ -35574,10 +35596,10 @@ Index * variables, uninitialized, as array subscripts: Uninitialized Subscripts. (line 6) * variables, user-defined: Variables. (line 6) -* version of gawk: Auto-set. (line 222) -* version of gawk extension API: Auto-set. (line 247) -* version of GNU MP library: Auto-set. (line 230) -* version of GNU MPFR library: Auto-set. (line 232) +* version of gawk: Auto-set. (line 241) +* version of gawk extension API: Auto-set. (line 266) +* version of GNU MP library: Auto-set. (line 249) +* version of GNU MPFR library: Auto-set. (line 251) * vertical bar (|): Regexp Operators. (line 70) * vertical bar (|), | operator (I/O): Getline/Pipe. (line 10) * vertical bar (|), | operator (I/O) <1>: Precedence. (line 64) @@ -35856,368 +35878,368 @@ Node: Exit Statement449516 Node: Built-in Variables451919 Node: User-modified453052 Node: Auto-set460819 -Ref: Auto-set-Footnote-1475547 -Ref: Auto-set-Footnote-2475753 -Node: ARGC and ARGV475809 -Node: Pattern Action Summary480022 -Node: Arrays482452 -Node: Array Basics483781 -Node: Array Intro484625 -Ref: figure-array-elements486600 -Ref: Array Intro-Footnote-1489304 -Node: Reference to Elements489432 -Node: Assigning Elements491896 -Node: Array Example492387 -Node: Scanning an Array494146 -Node: Controlling Scanning497168 -Ref: Controlling Scanning-Footnote-1502567 -Node: Numeric Array Subscripts502883 -Node: Uninitialized Subscripts505067 -Node: Delete506686 -Ref: Delete-Footnote-1509438 -Node: Multidimensional509495 -Node: Multiscanning512590 -Node: Arrays of Arrays514181 -Node: Arrays Summary518948 -Node: Functions521041 -Node: Built-in522079 -Node: Calling Built-in523160 -Node: Numeric Functions525156 -Ref: Numeric Functions-Footnote-1529184 -Ref: Numeric Functions-Footnote-2529541 -Ref: Numeric Functions-Footnote-3529589 -Node: String Functions529861 -Ref: String Functions-Footnote-1553519 -Ref: String Functions-Footnote-2553647 -Ref: String Functions-Footnote-3553895 -Node: Gory Details553982 -Ref: table-sub-escapes555773 -Ref: table-sub-proposed557292 -Ref: table-posix-sub558655 -Ref: table-gensub-escapes560196 -Ref: Gory Details-Footnote-1561019 -Node: I/O Functions561173 -Ref: table-system-return-values567755 -Ref: I/O Functions-Footnote-1569735 -Ref: I/O Functions-Footnote-2569883 -Node: Time Functions570003 -Ref: Time Functions-Footnote-1580670 -Ref: Time Functions-Footnote-2580738 -Ref: Time Functions-Footnote-3580896 -Ref: Time Functions-Footnote-4581007 -Ref: Time Functions-Footnote-5581119 -Ref: Time Functions-Footnote-6581346 -Node: Bitwise Functions581612 -Ref: table-bitwise-ops582206 -Ref: Bitwise Functions-Footnote-1588239 -Ref: Bitwise Functions-Footnote-2588412 -Node: Type Functions588603 -Node: I18N Functions591278 -Node: User-defined592929 -Node: Definition Syntax593734 -Ref: Definition Syntax-Footnote-1599421 -Node: Function Example599492 -Ref: Function Example-Footnote-1602414 -Node: Function Caveats602436 -Node: Calling A Function602954 -Node: Variable Scope603912 -Node: Pass By Value/Reference606906 -Node: Return Statement610405 -Node: Dynamic Typing613384 -Node: Indirect Calls614314 -Ref: Indirect Calls-Footnote-1624565 -Node: Functions Summary624693 -Node: Library Functions627398 -Ref: Library Functions-Footnote-1631005 -Ref: Library Functions-Footnote-2631148 -Node: Library Names631319 -Ref: Library Names-Footnote-1634779 -Ref: Library Names-Footnote-2635002 -Node: General Functions635088 -Node: Strtonum Function636191 -Node: Assert Function639213 -Node: Round Function642539 -Node: Cliff Random Function644080 -Node: Ordinal Functions645096 -Ref: Ordinal Functions-Footnote-1648159 -Ref: Ordinal Functions-Footnote-2648411 -Node: Join Function648621 -Ref: Join Function-Footnote-1650391 -Node: Getlocaltime Function650591 -Node: Readfile Function654333 -Node: Shell Quoting656305 -Node: Data File Management657706 -Node: Filetrans Function658338 -Node: Rewind Function662434 -Node: File Checking664340 -Ref: File Checking-Footnote-1665674 -Node: Empty Files665875 -Node: Ignoring Assigns667854 -Node: Getopt Function669404 -Ref: Getopt Function-Footnote-1680873 -Node: Passwd Functions681073 -Ref: Passwd Functions-Footnote-1689912 -Node: Group Functions690000 -Ref: Group Functions-Footnote-1697898 -Node: Walking Arrays698105 -Node: Library Functions Summary701113 -Node: Library Exercises702519 -Node: Sample Programs702984 -Node: Running Examples703754 -Node: Clones704482 -Node: Cut Program705706 -Node: Egrep Program715635 -Ref: Egrep Program-Footnote-1723147 -Node: Id Program723257 -Node: Split Program726937 -Ref: Split Program-Footnote-1730396 -Node: Tee Program730525 -Node: Uniq Program733315 -Node: Wc Program740741 -Ref: Wc Program-Footnote-1744996 -Node: Miscellaneous Programs745090 -Node: Dupword Program746303 -Node: Alarm Program748333 -Node: Translate Program753188 -Ref: Translate Program-Footnote-1757753 -Node: Labels Program758023 -Ref: Labels Program-Footnote-1761374 -Node: Word Sorting761458 -Node: History Sorting765530 -Node: Extract Program767365 -Node: Simple Sed774894 -Node: Igawk Program777968 -Ref: Igawk Program-Footnote-1792299 -Ref: Igawk Program-Footnote-2792501 -Ref: Igawk Program-Footnote-3792623 -Node: Anagram Program792738 -Node: Signature Program795800 -Node: Programs Summary797047 -Node: Programs Exercises798261 -Ref: Programs Exercises-Footnote-1802390 -Node: Advanced Features802481 -Node: Nondecimal Data804471 -Node: Array Sorting806062 -Node: Controlling Array Traversal806762 -Ref: Controlling Array Traversal-Footnote-1815129 -Node: Array Sorting Functions815247 -Ref: Array Sorting Functions-Footnote-1820338 -Node: Two-way I/O820534 -Ref: Two-way I/O-Footnote-1827085 -Ref: Two-way I/O-Footnote-2827272 -Node: TCP/IP Networking827354 -Node: Profiling830472 -Ref: Profiling-Footnote-1839144 -Node: Advanced Features Summary839467 -Node: Internationalization841311 -Node: I18N and L10N842791 -Node: Explaining gettext843478 -Ref: Explaining gettext-Footnote-1849370 -Ref: Explaining gettext-Footnote-2849555 -Node: Programmer i18n849720 -Ref: Programmer i18n-Footnote-1854669 -Node: Translator i18n854718 -Node: String Extraction855512 -Ref: String Extraction-Footnote-1856644 -Node: Printf Ordering856730 -Ref: Printf Ordering-Footnote-1859516 -Node: I18N Portability859580 -Ref: I18N Portability-Footnote-1862036 -Node: I18N Example862099 -Ref: I18N Example-Footnote-1864905 -Node: Gawk I18N864978 -Node: I18N Summary865623 -Node: Debugger866964 -Node: Debugging867986 -Node: Debugging Concepts868427 -Node: Debugging Terms870236 -Node: Awk Debugging872811 -Node: Sample Debugging Session873717 -Node: Debugger Invocation874251 -Node: Finding The Bug875637 -Node: List of Debugger Commands882115 -Node: Breakpoint Control883448 -Node: Debugger Execution Control887142 -Node: Viewing And Changing Data890504 -Node: Execution Stack893878 -Node: Debugger Info895515 -Node: Miscellaneous Debugger Commands899586 -Node: Readline Support904674 -Node: Limitations905570 -Node: Debugging Summary907679 -Node: Arbitrary Precision Arithmetic908958 -Node: Computer Arithmetic910443 -Ref: table-numeric-ranges914034 -Ref: Computer Arithmetic-Footnote-1914756 -Node: Math Definitions914813 -Ref: table-ieee-formats918127 -Ref: Math Definitions-Footnote-1918730 -Node: MPFR features918835 -Node: FP Math Caution920552 -Ref: FP Math Caution-Footnote-1921624 -Node: Inexactness of computations921993 -Node: Inexact representation922953 -Node: Comparing FP Values924313 -Node: Errors accumulate925395 -Node: Getting Accuracy926828 -Node: Try To Round929538 -Node: Setting precision930437 -Ref: table-predefined-precision-strings931134 -Node: Setting the rounding mode932964 -Ref: table-gawk-rounding-modes933338 -Ref: Setting the rounding mode-Footnote-1936746 -Node: Arbitrary Precision Integers936925 -Ref: Arbitrary Precision Integers-Footnote-1940100 -Node: Checking for MPFR940249 -Node: POSIX Floating Point Problems941546 -Ref: POSIX Floating Point Problems-Footnote-1945417 -Node: Floating point summary945455 -Node: Dynamic Extensions947645 -Node: Extension Intro949198 -Node: Plugin License950464 -Node: Extension Mechanism Outline951261 -Ref: figure-load-extension951700 -Ref: figure-register-new-function953265 -Ref: figure-call-new-function954357 -Node: Extension API Description956419 -Node: Extension API Functions Introduction958061 -Node: General Data Types963395 -Ref: General Data Types-Footnote-1970600 -Node: Memory Allocation Functions970899 -Ref: Memory Allocation Functions-Footnote-1973744 -Node: Constructor Functions973843 -Node: Registration Functions976842 -Node: Extension Functions977527 -Node: Exit Callback Functions982740 -Node: Extension Version String983990 -Node: Input Parsers984653 -Node: Output Wrappers997360 -Node: Two-way processors1001872 -Node: Printing Messages1004137 -Ref: Printing Messages-Footnote-11005308 -Node: Updating ERRNO1005461 -Node: Requesting Values1006200 -Ref: table-value-types-returned1006937 -Node: Accessing Parameters1007873 -Node: Symbol Table Access1009108 -Node: Symbol table by name1009620 -Node: Symbol table by cookie1011409 -Ref: Symbol table by cookie-Footnote-11015594 -Node: Cached values1015658 -Ref: Cached values-Footnote-11019194 -Node: Array Manipulation1019285 -Ref: Array Manipulation-Footnote-11020376 -Node: Array Data Types1020413 -Ref: Array Data Types-Footnote-11023071 -Node: Array Functions1023163 -Node: Flattening Arrays1027562 -Node: Creating Arrays1034503 -Node: Redirection API1039272 -Node: Extension API Variables1042114 -Node: Extension Versioning1042747 -Ref: gawk-api-version1043184 -Node: Extension API Informational Variables1044912 -Node: Extension API Boilerplate1045976 -Node: Changes from API V11049838 -Node: Finding Extensions1050498 -Node: Extension Example1051057 -Node: Internal File Description1051855 -Node: Internal File Ops1055935 -Ref: Internal File Ops-Footnote-11067335 -Node: Using Internal File Ops1067475 -Ref: Using Internal File Ops-Footnote-11069858 -Node: Extension Samples1070132 -Node: Extension Sample File Functions1071661 -Node: Extension Sample Fnmatch1079310 -Node: Extension Sample Fork1080797 -Node: Extension Sample Inplace1082015 -Node: Extension Sample Ord1085225 -Node: Extension Sample Readdir1086061 -Ref: table-readdir-file-types1086950 -Node: Extension Sample Revout1087755 -Node: Extension Sample Rev2way1088344 -Node: Extension Sample Read write array1089084 -Node: Extension Sample Readfile1091026 -Node: Extension Sample Time1092121 -Node: Extension Sample API Tests1093469 -Node: gawkextlib1093961 -Node: Extension summary1096408 -Node: Extension Exercises1100110 -Node: Language History1101608 -Node: V7/SVR3.11103264 -Node: SVR41105416 -Node: POSIX1106850 -Node: BTL1108229 -Node: POSIX/GNU1108958 -Node: Feature History1114736 -Node: Common Extensions1129047 -Node: Ranges and Locales1130330 -Ref: Ranges and Locales-Footnote-11134946 -Ref: Ranges and Locales-Footnote-21134973 -Ref: Ranges and Locales-Footnote-31135208 -Node: Contributors1135429 -Node: History summary1140989 -Node: Installation1142369 -Node: Gawk Distribution1143313 -Node: Getting1143797 -Node: Extracting1144758 -Node: Distribution contents1146396 -Node: Unix Installation1152738 -Node: Quick Installation1153420 -Node: Shell Startup Files1155834 -Node: Additional Configuration Options1156923 -Node: Configuration Philosophy1158912 -Node: Non-Unix Installation1161281 -Node: PC Installation1161741 -Node: PC Binary Installation1162579 -Node: PC Compiling1163014 -Node: PC Using1164131 -Node: Cygwin1167176 -Node: MSYS1167946 -Node: VMS Installation1168447 -Node: VMS Compilation1169238 -Ref: VMS Compilation-Footnote-11170467 -Node: VMS Dynamic Extensions1170525 -Node: VMS Installation Details1172210 -Node: VMS Running1174463 -Node: VMS GNV1178742 -Node: VMS Old Gawk1179477 -Node: Bugs1179948 -Node: Bug address1180611 -Node: Usenet1183008 -Node: Maintainers1183785 -Node: Other Versions1185161 -Node: Installation summary1191745 -Node: Notes1192780 -Node: Compatibility Mode1193645 -Node: Additions1194427 -Node: Accessing The Source1195352 -Node: Adding Code1196787 -Node: New Ports1203005 -Node: Derived Files1207493 -Ref: Derived Files-Footnote-11212978 -Ref: Derived Files-Footnote-21213013 -Ref: Derived Files-Footnote-31213611 -Node: Future Extensions1213725 -Node: Implementation Limitations1214383 -Node: Extension Design1215566 -Node: Old Extension Problems1216720 -Ref: Old Extension Problems-Footnote-11218238 -Node: Extension New Mechanism Goals1218295 -Ref: Extension New Mechanism Goals-Footnote-11221659 -Node: Extension Other Design Decisions1221848 -Node: Extension Future Growth1223961 -Node: Old Extension Mechanism1224797 -Node: Notes summary1226560 -Node: Basic Concepts1227742 -Node: Basic High Level1228423 -Ref: figure-general-flow1228705 -Ref: figure-process-flow1229390 -Ref: Basic High Level-Footnote-11232691 -Node: Basic Data Typing1232876 -Node: Glossary1236204 -Node: Copying1268151 -Node: GNU Free Documentation License1305690 -Node: Index1330808 +Ref: Auto-set-Footnote-1476416 +Ref: Auto-set-Footnote-2476622 +Node: ARGC and ARGV476678 +Node: Pattern Action Summary480891 +Node: Arrays483321 +Node: Array Basics484650 +Node: Array Intro485494 +Ref: figure-array-elements487469 +Ref: Array Intro-Footnote-1490173 +Node: Reference to Elements490301 +Node: Assigning Elements492765 +Node: Array Example493256 +Node: Scanning an Array495015 +Node: Controlling Scanning498037 +Ref: Controlling Scanning-Footnote-1503436 +Node: Numeric Array Subscripts503752 +Node: Uninitialized Subscripts505936 +Node: Delete507555 +Ref: Delete-Footnote-1510307 +Node: Multidimensional510364 +Node: Multiscanning513459 +Node: Arrays of Arrays515050 +Node: Arrays Summary519817 +Node: Functions521910 +Node: Built-in522948 +Node: Calling Built-in524029 +Node: Numeric Functions526025 +Ref: Numeric Functions-Footnote-1530053 +Ref: Numeric Functions-Footnote-2530410 +Ref: Numeric Functions-Footnote-3530458 +Node: String Functions530730 +Ref: String Functions-Footnote-1554388 +Ref: String Functions-Footnote-2554516 +Ref: String Functions-Footnote-3554764 +Node: Gory Details554851 +Ref: table-sub-escapes556642 +Ref: table-sub-proposed558161 +Ref: table-posix-sub559524 +Ref: table-gensub-escapes561065 +Ref: Gory Details-Footnote-1561888 +Node: I/O Functions562042 +Ref: table-system-return-values568624 +Ref: I/O Functions-Footnote-1570604 +Ref: I/O Functions-Footnote-2570752 +Node: Time Functions570872 +Ref: Time Functions-Footnote-1581539 +Ref: Time Functions-Footnote-2581607 +Ref: Time Functions-Footnote-3581765 +Ref: Time Functions-Footnote-4581876 +Ref: Time Functions-Footnote-5581988 +Ref: Time Functions-Footnote-6582215 +Node: Bitwise Functions582481 +Ref: table-bitwise-ops583075 +Ref: Bitwise Functions-Footnote-1589108 +Ref: Bitwise Functions-Footnote-2589281 +Node: Type Functions589472 +Node: I18N Functions592147 +Node: User-defined593798 +Node: Definition Syntax594603 +Ref: Definition Syntax-Footnote-1600290 +Node: Function Example600361 +Ref: Function Example-Footnote-1603283 +Node: Function Caveats603305 +Node: Calling A Function603823 +Node: Variable Scope604781 +Node: Pass By Value/Reference607775 +Node: Return Statement611274 +Node: Dynamic Typing614253 +Node: Indirect Calls615183 +Ref: Indirect Calls-Footnote-1625434 +Node: Functions Summary625562 +Node: Library Functions628267 +Ref: Library Functions-Footnote-1631874 +Ref: Library Functions-Footnote-2632017 +Node: Library Names632188 +Ref: Library Names-Footnote-1635648 +Ref: Library Names-Footnote-2635871 +Node: General Functions635957 +Node: Strtonum Function637060 +Node: Assert Function640082 +Node: Round Function643408 +Node: Cliff Random Function644949 +Node: Ordinal Functions645965 +Ref: Ordinal Functions-Footnote-1649028 +Ref: Ordinal Functions-Footnote-2649280 +Node: Join Function649490 +Ref: Join Function-Footnote-1651260 +Node: Getlocaltime Function651460 +Node: Readfile Function655202 +Node: Shell Quoting657174 +Node: Data File Management658575 +Node: Filetrans Function659207 +Node: Rewind Function663303 +Node: File Checking665209 +Ref: File Checking-Footnote-1666543 +Node: Empty Files666744 +Node: Ignoring Assigns668723 +Node: Getopt Function670273 +Ref: Getopt Function-Footnote-1681742 +Node: Passwd Functions681942 +Ref: Passwd Functions-Footnote-1690781 +Node: Group Functions690869 +Ref: Group Functions-Footnote-1698767 +Node: Walking Arrays698974 +Node: Library Functions Summary701982 +Node: Library Exercises703388 +Node: Sample Programs703853 +Node: Running Examples704623 +Node: Clones705351 +Node: Cut Program706575 +Node: Egrep Program716504 +Ref: Egrep Program-Footnote-1724016 +Node: Id Program724126 +Node: Split Program727806 +Ref: Split Program-Footnote-1731265 +Node: Tee Program731394 +Node: Uniq Program734184 +Node: Wc Program741610 +Ref: Wc Program-Footnote-1745865 +Node: Miscellaneous Programs745959 +Node: Dupword Program747172 +Node: Alarm Program749202 +Node: Translate Program754057 +Ref: Translate Program-Footnote-1758622 +Node: Labels Program758892 +Ref: Labels Program-Footnote-1762243 +Node: Word Sorting762327 +Node: History Sorting766399 +Node: Extract Program768234 +Node: Simple Sed775763 +Node: Igawk Program778837 +Ref: Igawk Program-Footnote-1793168 +Ref: Igawk Program-Footnote-2793370 +Ref: Igawk Program-Footnote-3793492 +Node: Anagram Program793607 +Node: Signature Program796669 +Node: Programs Summary797916 +Node: Programs Exercises799130 +Ref: Programs Exercises-Footnote-1803259 +Node: Advanced Features803350 +Node: Nondecimal Data805340 +Node: Array Sorting806931 +Node: Controlling Array Traversal807631 +Ref: Controlling Array Traversal-Footnote-1815998 +Node: Array Sorting Functions816116 +Ref: Array Sorting Functions-Footnote-1821207 +Node: Two-way I/O821403 +Ref: Two-way I/O-Footnote-1827954 +Ref: Two-way I/O-Footnote-2828141 +Node: TCP/IP Networking828223 +Node: Profiling831341 +Ref: Profiling-Footnote-1840013 +Node: Advanced Features Summary840336 +Node: Internationalization842180 +Node: I18N and L10N843660 +Node: Explaining gettext844347 +Ref: Explaining gettext-Footnote-1850239 +Ref: Explaining gettext-Footnote-2850424 +Node: Programmer i18n850589 +Ref: Programmer i18n-Footnote-1855538 +Node: Translator i18n855587 +Node: String Extraction856381 +Ref: String Extraction-Footnote-1857513 +Node: Printf Ordering857599 +Ref: Printf Ordering-Footnote-1860385 +Node: I18N Portability860449 +Ref: I18N Portability-Footnote-1862905 +Node: I18N Example862968 +Ref: I18N Example-Footnote-1865774 +Node: Gawk I18N865847 +Node: I18N Summary866492 +Node: Debugger867833 +Node: Debugging868855 +Node: Debugging Concepts869296 +Node: Debugging Terms871105 +Node: Awk Debugging873680 +Node: Sample Debugging Session874586 +Node: Debugger Invocation875120 +Node: Finding The Bug876506 +Node: List of Debugger Commands882984 +Node: Breakpoint Control884317 +Node: Debugger Execution Control888011 +Node: Viewing And Changing Data891373 +Node: Execution Stack894747 +Node: Debugger Info896384 +Node: Miscellaneous Debugger Commands900455 +Node: Readline Support905543 +Node: Limitations906439 +Node: Debugging Summary908548 +Node: Arbitrary Precision Arithmetic909827 +Node: Computer Arithmetic911312 +Ref: table-numeric-ranges914903 +Ref: Computer Arithmetic-Footnote-1915625 +Node: Math Definitions915682 +Ref: table-ieee-formats918996 +Ref: Math Definitions-Footnote-1919599 +Node: MPFR features919704 +Node: FP Math Caution921421 +Ref: FP Math Caution-Footnote-1922493 +Node: Inexactness of computations922862 +Node: Inexact representation923822 +Node: Comparing FP Values925182 +Node: Errors accumulate926264 +Node: Getting Accuracy927697 +Node: Try To Round930407 +Node: Setting precision931306 +Ref: table-predefined-precision-strings932003 +Node: Setting the rounding mode933833 +Ref: table-gawk-rounding-modes934207 +Ref: Setting the rounding mode-Footnote-1937615 +Node: Arbitrary Precision Integers937794 +Ref: Arbitrary Precision Integers-Footnote-1940969 +Node: Checking for MPFR941118 +Node: POSIX Floating Point Problems942415 +Ref: POSIX Floating Point Problems-Footnote-1946286 +Node: Floating point summary946324 +Node: Dynamic Extensions948514 +Node: Extension Intro950067 +Node: Plugin License951333 +Node: Extension Mechanism Outline952130 +Ref: figure-load-extension952569 +Ref: figure-register-new-function954134 +Ref: figure-call-new-function955226 +Node: Extension API Description957288 +Node: Extension API Functions Introduction958930 +Node: General Data Types964264 +Ref: General Data Types-Footnote-1971469 +Node: Memory Allocation Functions971768 +Ref: Memory Allocation Functions-Footnote-1974613 +Node: Constructor Functions974712 +Node: Registration Functions977711 +Node: Extension Functions978396 +Node: Exit Callback Functions983609 +Node: Extension Version String984859 +Node: Input Parsers985522 +Node: Output Wrappers998229 +Node: Two-way processors1002741 +Node: Printing Messages1005006 +Ref: Printing Messages-Footnote-11006177 +Node: Updating ERRNO1006330 +Node: Requesting Values1007069 +Ref: table-value-types-returned1007806 +Node: Accessing Parameters1008742 +Node: Symbol Table Access1009977 +Node: Symbol table by name1010489 +Node: Symbol table by cookie1012278 +Ref: Symbol table by cookie-Footnote-11016463 +Node: Cached values1016527 +Ref: Cached values-Footnote-11020063 +Node: Array Manipulation1020154 +Ref: Array Manipulation-Footnote-11021245 +Node: Array Data Types1021282 +Ref: Array Data Types-Footnote-11023940 +Node: Array Functions1024032 +Node: Flattening Arrays1028431 +Node: Creating Arrays1035372 +Node: Redirection API1040141 +Node: Extension API Variables1042983 +Node: Extension Versioning1043616 +Ref: gawk-api-version1044053 +Node: Extension API Informational Variables1045781 +Node: Extension API Boilerplate1046845 +Node: Changes from API V11050707 +Node: Finding Extensions1051367 +Node: Extension Example1051926 +Node: Internal File Description1052724 +Node: Internal File Ops1056804 +Ref: Internal File Ops-Footnote-11068204 +Node: Using Internal File Ops1068344 +Ref: Using Internal File Ops-Footnote-11070727 +Node: Extension Samples1071001 +Node: Extension Sample File Functions1072530 +Node: Extension Sample Fnmatch1080179 +Node: Extension Sample Fork1081666 +Node: Extension Sample Inplace1082884 +Node: Extension Sample Ord1086094 +Node: Extension Sample Readdir1086930 +Ref: table-readdir-file-types1087819 +Node: Extension Sample Revout1088624 +Node: Extension Sample Rev2way1089213 +Node: Extension Sample Read write array1089953 +Node: Extension Sample Readfile1091895 +Node: Extension Sample Time1092990 +Node: Extension Sample API Tests1094338 +Node: gawkextlib1094830 +Node: Extension summary1097277 +Node: Extension Exercises1100979 +Node: Language History1102477 +Node: V7/SVR3.11104133 +Node: SVR41106285 +Node: POSIX1107719 +Node: BTL1109098 +Node: POSIX/GNU1109827 +Node: Feature History1115605 +Node: Common Extensions1129970 +Node: Ranges and Locales1131253 +Ref: Ranges and Locales-Footnote-11135869 +Ref: Ranges and Locales-Footnote-21135896 +Ref: Ranges and Locales-Footnote-31136131 +Node: Contributors1136352 +Node: History summary1141912 +Node: Installation1143292 +Node: Gawk Distribution1144236 +Node: Getting1144720 +Node: Extracting1145681 +Node: Distribution contents1147319 +Node: Unix Installation1153661 +Node: Quick Installation1154343 +Node: Shell Startup Files1156757 +Node: Additional Configuration Options1157846 +Node: Configuration Philosophy1159835 +Node: Non-Unix Installation1162204 +Node: PC Installation1162664 +Node: PC Binary Installation1163502 +Node: PC Compiling1163937 +Node: PC Using1165054 +Node: Cygwin1168099 +Node: MSYS1168869 +Node: VMS Installation1169370 +Node: VMS Compilation1170161 +Ref: VMS Compilation-Footnote-11171390 +Node: VMS Dynamic Extensions1171448 +Node: VMS Installation Details1173133 +Node: VMS Running1175386 +Node: VMS GNV1179665 +Node: VMS Old Gawk1180400 +Node: Bugs1180871 +Node: Bug address1181534 +Node: Usenet1183931 +Node: Maintainers1184708 +Node: Other Versions1186084 +Node: Installation summary1192668 +Node: Notes1193703 +Node: Compatibility Mode1194568 +Node: Additions1195350 +Node: Accessing The Source1196275 +Node: Adding Code1197710 +Node: New Ports1203928 +Node: Derived Files1208416 +Ref: Derived Files-Footnote-11213901 +Ref: Derived Files-Footnote-21213936 +Ref: Derived Files-Footnote-31214534 +Node: Future Extensions1214648 +Node: Implementation Limitations1215306 +Node: Extension Design1216489 +Node: Old Extension Problems1217643 +Ref: Old Extension Problems-Footnote-11219161 +Node: Extension New Mechanism Goals1219218 +Ref: Extension New Mechanism Goals-Footnote-11222582 +Node: Extension Other Design Decisions1222771 +Node: Extension Future Growth1224884 +Node: Old Extension Mechanism1225720 +Node: Notes summary1227483 +Node: Basic Concepts1228665 +Node: Basic High Level1229346 +Ref: figure-general-flow1229628 +Ref: figure-process-flow1230313 +Ref: Basic High Level-Footnote-11233614 +Node: Basic Data Typing1233799 +Node: Glossary1237127 +Node: Copying1269074 +Node: GNU Free Documentation License1306613 +Node: Index1331731 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 87e46a5e..92cda7ea 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -4981,25 +4981,6 @@ function names added by @command{gawk} after the code was written. Standard @command{awk} built-in functions, such as @code{sin()} or @code{substr()} are @emph{not} shadowed in this way. -The @code{PROCINFO["argv"]} array contains all of the command-line arguments -(after glob expansion and redirection processing on platforms where that must -be done manually by the program) with subscripts ranging from 0 through -@code{argc} @minus{} 1. For example, @code{PROCINFO["argv"][0]} will contain -the name by which @command{gawk} was invoked. Here is an example of how this -feature may be used: - -@example -gawk ' -BEGIN @{ - for (i = 0; i < length(PROCINFO["argv"]); i++) - print i, PROCINFO["argv"][i] -@}' -@end example - -Please note that this differs from the standard @code{ARGV} array which does -not include command-line arguments that have already been processed by -@command{gawk} (@pxref{ARGC and ARGV}). - @end ignore @node Invoking Summary @@ -15484,6 +15465,27 @@ The following elements (listed alphabetically) are guaranteed to be available: @table @code +@item PROCINFO["argv"] +@cindex command line arguments, @code{PROCINFO["argv"} +The @code{PROCINFO["argv"]} array contains all of the command-line arguments +(after glob expansion and redirection processing on platforms where that must +be done manually by the program) with subscripts ranging from 0 through +@code{argc} @minus{} 1. For example, @code{PROCINFO["argv"][0]} will contain +the name by which @command{gawk} was invoked. Here is an example of how this +feature may be used: + +@example +gawk ' +BEGIN @{ + for (i = 0; i < length(PROCINFO["argv"]); i++) + print i, PROCINFO["argv"][i] +@}' +@end example + +Please note that this differs from the standard @code{ARGV} array which does +not include command-line arguments that have already been processed by +@command{gawk} (@pxref{ARGC and ARGV}). + @cindex effective group ID of @command{gawk} user @item PROCINFO["egid"] The value of the @code{getegid()} system call. @@ -38022,6 +38024,10 @@ environment and that of programs that it runs. @xref{Auto-set}. @item +The @code{PROCINFO["argv"} array. +@xref{Auto-set}. + +@item The @option{--pretty-print} option no longer runs the @command{awk} program too. @xref{Options}. diff --git a/doc/gawktexi.in b/doc/gawktexi.in index 402caede..ad4b3a8a 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -4892,25 +4892,6 @@ function names added by @command{gawk} after the code was written. Standard @command{awk} built-in functions, such as @code{sin()} or @code{substr()} are @emph{not} shadowed in this way. -The @code{PROCINFO["argv"]} array contains all of the command-line arguments -(after glob expansion and redirection processing on platforms where that must -be done manually by the program) with subscripts ranging from 0 through -@code{argc} @minus{} 1. For example, @code{PROCINFO["argv"][0]} will contain -the name by which @command{gawk} was invoked. Here is an example of how this -feature may be used: - -@example -gawk ' -BEGIN @{ - for (i = 0; i < length(PROCINFO["argv"]); i++) - print i, PROCINFO["argv"][i] -@}' -@end example - -Please note that this differs from the standard @code{ARGV} array which does -not include command-line arguments that have already been processed by -@command{gawk} (@pxref{ARGC and ARGV}). - @end ignore @node Invoking Summary @@ -14803,6 +14784,27 @@ The following elements (listed alphabetically) are guaranteed to be available: @table @code +@item PROCINFO["argv"] +@cindex command line arguments, @code{PROCINFO["argv"} +The @code{PROCINFO["argv"]} array contains all of the command-line arguments +(after glob expansion and redirection processing on platforms where that must +be done manually by the program) with subscripts ranging from 0 through +@code{argc} @minus{} 1. For example, @code{PROCINFO["argv"][0]} will contain +the name by which @command{gawk} was invoked. Here is an example of how this +feature may be used: + +@example +gawk ' +BEGIN @{ + for (i = 0; i < length(PROCINFO["argv"]); i++) + print i, PROCINFO["argv"][i] +@}' +@end example + +Please note that this differs from the standard @code{ARGV} array which does +not include command-line arguments that have already been processed by +@command{gawk} (@pxref{ARGC and ARGV}). + @cindex effective group ID of @command{gawk} user @item PROCINFO["egid"] The value of the @code{getegid()} system call. @@ -37036,6 +37038,10 @@ environment and that of programs that it runs. @xref{Auto-set}. @item +The @code{PROCINFO["argv"} array. +@xref{Auto-set}. + +@item The @option{--pretty-print} option no longer runs the @command{awk} program too. @xref{Options}. |