diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/gawk.1 | 143 | ||||
-rw-r--r-- | doc/gawk.info | 803 | ||||
-rw-r--r-- | doc/gawk.texi | 52 | ||||
-rw-r--r-- | doc/gawktexi.in | 52 |
5 files changed, 512 insertions, 543 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 320f8c1a..2bf3f5a3 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2015-12-18 Arnold D. Robbins <arnold@skeeve.com> + + * gawk.1: Update description of PROCINFO, and sort it properly. + * gawktexi.in: Ditto. + 2015-11-26 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in: Add "exit" as synonym for "quit" in the @@ -13,7 +13,7 @@ . if \w'\(rq' .ds rq "\(rq . \} .\} -.TH GAWK 1 "Nov 15 2015" "Free Software Foundation" "Utility Commands" +.TH GAWK 1 "Dec 17 2015" "Free Software Foundation" "Utility Commands" .SH NAME gawk \- pattern scanning and processing language .SH SYNOPSIS @@ -1094,16 +1094,12 @@ Use the operator to test for these elements. The following elements are guaranteed to be available: .RS -.TP \w'\fBPROCINFO["version"]\fR'u+1n +.TP \w'\fBPROCINFO["strftime"]\fR'u+1n \fBPROCINFO["egid"]\fP The value of the .IR getegid (2) system call. .TP -\fBPROCINFO["strftime"]\fP -The default time format string for -.BR strftime() . -.TP \fBPROCINFO["errno"]\fP The value of .IR errno (3) @@ -1127,6 +1123,11 @@ or \fB"FIELDWIDTHS"\fP if field splitting with .B FIELDWIDTHS is in effect. .TP +\fBPROCINFO["gid"]\fP +The value of the +.IR getgid (2) +system call. +.TP \fBPROCINFO["identifiers"]\fP A subarray, indexed by the names of all identifiers used in the text of the AWK program. @@ -1162,11 +1163,6 @@ doesn't know yet). The identifier is a user-defined function. .RE .TP -\fBPROCINFO["gid"]\fP -The value of the -.IR getgid (2) -system call. -.TP \fBPROCINFO["pgrpid"]\fP The process group ID of the current process. .TP @@ -1176,11 +1172,68 @@ The process ID of the current process. \fBPROCINFO["ppid"]\fP The parent process ID of the current process. .TP +\fBPROCINFO["strftime"]\fP +The default time format string for +.BR strftime() . +.TP \fBPROCINFO["uid"]\fP The value of the .IR getuid (2) system call. .TP +\fBPROCINFO["version"]\fP +the version of +.IR gawk . +.PP +The following elements are present if loading dynamic +extensions is available: +.TP +\fBPROCINFO["api_major"]\fP +The major version of the extension API. +.TP +\fBPROCINFO["api_minor"]\fP +The minor version of the extension API. +.PP +The following elements are available if MPFR support is +compiled into +.IR gawk\^ : +.TP +\fBPROCINFO["gmp_version"]\fP +The version of the GNU MP library used for arbitrary precision +number support in +.IR gawk . +.TP +\fBPROCINFO["mpfr_version"]\fP +The version of the GNU MPFR library used for arbitrary precision +number support in +.IR gawk . +.TP +\fBPROCINFO["prec_max"]\fP +The maximum precision supported by the GNU MPFR library for +arbitrary precision floating-point numbers. +.TP +\fBPROCINFO["prec_min"]\fP +The minimum precision allowed by the GNU MPFR library for +arbitrary precision floating-point numbers. +.PP +The following elements may set by a program to +change +.IR gawk 's +behavior: +.TP +\fBPROCINFO["\fIcommand\fB", "pty"]\fR +Use a pseudo-tty for two-way communication with +.I command +instead of setting up two one-way pipes. +.TP +\fBPROCINFO["\fIinput\fB", "READ_TIMEOUT"]\fR +The timeout in milliseconds for reading data from +.IR input , +where +.I input +is a redirection string or a filename. A value of zero or +less than zero means no timeout. +.TP \fBPROCINFO["sorted_in"]\fP If this element exists in .BR PROCINFO , @@ -1220,74 +1273,6 @@ are the corresponding values of the two elements being compared. It should return a number less than, equal to, or greater than 0, depending on how the elements of the array are to be ordered. -.TP -\fBPROCINFO["input", "READ_TIMEOUT"]\fP -The timeout in milliseconds for reading data from -.IR input , -where -.I input -is a redirection string or a filename. A value of zero or -less than zero means no timeout. -.TP -\fBPROCINFO["input", "RETRY"]\fP -If an I/O error that may be retried occurs when reading data from -.IR input , -and this array entry exists, then -.B getline -will return \-2 instead of following the default behavior of returning \-1 -and configuring -.IR input -to return no further data. -An I/O error that may be retried is one where -.IR errno (3) -has the value -.IR EAGAIN , -.IR EWOULDBLOCK , -.IR EINTR , -or -.IR ETIMEDOUT . -This may be useful in conjunction with -\fBPROCINFO["input", "READ_TIMEOUT"]\fP -or situations where a file descriptor has been configured to behave in a -non-blocking fashion. -.TP -\fBPROCINFO["mpfr_version"]\fP -The version of the GNU MPFR library used for arbitrary precision -number support in -.IR gawk . -This entry is not present if MPFR support is not compiled into -.IR gawk . -.TP -\fBPROCINFO["gmp_version"]\fP -The version of the GNU MP library used for arbitrary precision -number support in -.IR gawk . -This entry is not present if MPFR support is not compiled into -.IR gawk . -.TP -\fBPROCINFO["prec_max"]\fP -The maximum precision supported by the GNU MPFR library for -arbitrary precision floating-point numbers. -This entry is not present if MPFR support is not compiled into -.IR gawk . -.TP -\fBPROCINFO["prec_min"]\fP -The minimum precision allowed by the GNU MPFR library for -arbitrary precision floating-point numbers. -This entry is not present if MPFR support is not compiled into -.IR gawk . -.TP -\fBPROCINFO["api_major"]\fP -The major version of the extension API. -This entry is not present if loading dynamic extensions is not available. -.TP -\fBPROCINFO["api_minor"]\fP -The minor version of the extension API. -This entry is not present if loading dynamic extensions is not available. -.TP -\fBPROCINFO["version"]\fP -the version of -.IR gawk . .RE .TP .B ROUNDMODE diff --git a/doc/gawk.info b/doc/gawk.info index e7bb43a9..2a9b8984 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -10555,6 +10555,9 @@ they are not special: effect, or '"FPAT"' if field matching with 'FPAT' is in effect. + 'PROCINFO["gid"]' + The value of the 'getgid()' system call. + 'PROCINFO["identifiers"]' A subarray, indexed by the names of all identifiers used in the text of the 'awk' program. An "identifier" is simply the @@ -10586,9 +10589,6 @@ they are not special: after it has finished parsing the program; they are _not_ updated while the program runs. - 'PROCINFO["gid"]' - The value of the 'getgid()' system call. - 'PROCINFO["pgrpid"]' The process group ID of the current process. @@ -10598,13 +10598,6 @@ they are not special: 'PROCINFO["ppid"]' The parent process ID of the current process. - 'PROCINFO["sorted_in"]' - If this element exists in 'PROCINFO', its value controls the - order in which array indices will be processed by 'for (INDX - in ARRAY)' loops. This is an advanced feature, so we defer - the full description until later; see *note Scanning an - Array::. - 'PROCINFO["strftime"]' The default time format string for 'strftime()'. Assigning a new value to this element changes the default. *Note Time @@ -10649,19 +10642,23 @@ they are not special: groups that the process has. Use the 'in' operator to test for these elements (*note Reference to Elements::). - The 'PROCINFO' array has the following additional uses: - - * It may be used to provide a timeout when reading from any open - input file, pipe, or coprocess. *Note Read Timeout::, for - more information. + The following elements allow you to change 'gawk''s behavior: - * It may be used to indicate that input may be retried when it - fails due to certain errors. *Note Retrying Input::, for more + 'PROCINFO["COMMAND", "pty"]' + For two-way communication to COMMAND, use a pseudo-tty instead + of setting up a two-way pipe. *Note Two-way I/O::, for more information. - * It may be used to cause coprocesses to communicate over - pseudo-ttys instead of through two-way pipes; this is - discussed further in *note Two-way I/O::. + 'PROCINFO["INPUT_NAME", "READ_TIMEOUT"]' + Set a timeout for reading from input redirection INPUT_NAME. + *Note Read Timeout::, for more information. + + 'PROCINFO["sorted_in"]' + If this element exists in 'PROCINFO', its value controls the + order in which array indices will be processed by 'for (INDX + in ARRAY)' loops. This is an advanced feature, so we defer + the full description until later; see *note Scanning an + Array::. 'RLENGTH' The length of the substring matched by the 'match()' function @@ -32804,7 +32801,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 339) +* dark corner, FNR/NR variables: Auto-set. (line 336) * dark corner, format-control characters: Control Letters. (line 18) * dark corner, format-control characters <1>: Control Letters. (line 93) @@ -33039,7 +33036,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 290) +* differences in awk and gawk, RT variable: Auto-set. (line 287) * differences in awk and gawk, single-character fields: Single Character Fields. (line 6) * differences in awk and gawk, split() function: String Functions. @@ -33047,7 +33044,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 294) +* differences in awk and gawk, SYMTAB variable: Auto-set. (line 291) * differences in awk and gawk, TEXTDOMAIN variable: User-modified. (line 152) * differences in awk and gawk, trunc-mod operation: Arithmetic Ops. @@ -33209,7 +33206,7 @@ Index (line 6) * extension API version: Extension Versioning. (line 6) -* extension API, version number: Auto-set. (line 253) +* extension API, version number: Auto-set. (line 246) * extension example: Extension Example. (line 6) * extension registration: Registration Functions. (line 6) @@ -33361,7 +33358,7 @@ Index (line 12) * FNR variable: Records. (line 6) * FNR variable <1>: Auto-set. (line 118) -* FNR variable, changing: Auto-set. (line 339) +* FNR variable, changing: Auto-set. (line 336) * for statement: For Statement. (line 6) * for statement, looping over arrays: Scanning an Array. (line 20) * fork() extension function: Extension Sample Fork. @@ -33465,7 +33462,7 @@ Index * G., Daniel Richard <1>: Bugs. (line 73) * Garfinkle, Scott: Contributors. (line 35) * gawk program, dynamic profiling: Profiling. (line 177) -* gawk version: Auto-set. (line 228) +* gawk version: Auto-set. (line 221) * gawk, ARGIND variable in: Other Arguments. (line 15) * gawk, awk and: Preface. (line 21) * gawk, awk and <1>: This Manual. (line 14) @@ -33532,9 +33529,8 @@ Index * gawk, OS/2 version of: PC Using. (line 17) * gawk, predefined variables and: Built-in Variables. (line 14) * gawk, PROCINFO array in: Auto-set. (line 148) -* gawk, PROCINFO array in <1>: Auto-set. (line 263) -* gawk, PROCINFO array in <2>: Time Functions. (line 47) -* gawk, PROCINFO array in <3>: Two-way I/O. (line 99) +* gawk, PROCINFO array in <1>: Time Functions. (line 47) +* gawk, PROCINFO array in <2>: Two-way I/O. (line 99) * gawk, regexp constants and: Using Constant Regexps. (line 28) * gawk, regular expressions, case sensitivity: Case-sensitivity. @@ -33544,12 +33540,12 @@ 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 290) +* gawk, RT variable in <2>: Auto-set. (line 287) * gawk, See Also awk: Preface. (line 34) * gawk, source code, obtaining: Getting. (line 6) * gawk, splitting fields and: Constant Size. (line 86) * gawk, string-translation functions: I18N Functions. (line 6) -* gawk, SYMTAB array in: Auto-set. (line 294) +* gawk, SYMTAB array in: Auto-set. (line 291) * gawk, TEXTDOMAIN variable in: User-modified. (line 152) * gawk, timestamps: Time Functions. (line 6) * gawk, uses for: Preface. (line 34) @@ -33646,7 +33642,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 201) +* group ID of gawk user: Auto-set. (line 170) * groups, information about: Group Functions. (line 6) * gsub: Using Constant Regexps. (line 43) @@ -33945,7 +33941,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 242) +* maximum precision supported by MPFR library: Auto-set. (line 235) * McIlroy, Doug: Glossary. (line 257) * McPhee, Patrick: Contributors. (line 101) * message object files: Explaining gettext. (line 42) @@ -33958,7 +33954,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 245) +* minimum precision required by MPFR library: Auto-set. (line 238) * mktime: Time Functions. (line 25) * modifiers, in format specifiers: Format Modifiers. (line 6) * monetary information, localization: Explaining gettext. (line 104) @@ -34016,7 +34012,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 339) +* NR variable, changing: Auto-set. (line 336) * null strings: awk split records. (line 114) * null strings <1>: Regexp Field Splitting. (line 43) @@ -34317,12 +34313,11 @@ Index * PROCINFO array, and user and group ID numbers: Id Program. (line 15) * PROCINFO array, testing the field splitting: Passwd Functions. (line 154) -* PROCINFO array, uses: Auto-set. (line 263) * PROCINFO, values of sorted_in: Controlling Scanning. (line 26) * profiling awk programs: Profiling. (line 6) * profiling awk programs, dynamically: Profiling. (line 177) -* program identifiers: Auto-set. (line 170) +* program identifiers: Auto-set. (line 173) * program, definition of: Getting Started. (line 21) * programming conventions, --non-decimal-data option: Nondecimal Data. (line 35) @@ -34482,7 +34477,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 277) +* RLENGTH variable: Auto-set. (line 274) * RLENGTH variable, match() function and: String Functions. (line 227) * Robbins, Arnold: Command Line Field Separator. (line 71) @@ -34508,11 +34503,11 @@ Index * RS variable <1>: User-modified. (line 133) * RS variable, multiline records and: Multiple Line. (line 17) * rshift: Bitwise Functions. (line 54) -* RSTART variable: Auto-set. (line 283) +* RSTART variable: Auto-set. (line 280) * 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 290) +* RT variable <2>: Auto-set. (line 287) * Rubin, Paul: History. (line 30) * Rubin, Paul <1>: Contributors. (line 16) * rule, definition of: Getting Started. (line 21) @@ -34530,7 +34525,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 322) +* Schorr, Andrew <1>: Auto-set. (line 319) * Schorr, Andrew <2>: Contributors. (line 134) * Schreiber, Bert: Acknowledgments. (line 38) * Schreiber, Rita: Acknowledgments. (line 38) @@ -34615,7 +34610,7 @@ Index (line 106) * sidebar, Changing FS Does Not Affect the Fields: Full Line Fields. (line 14) -* sidebar, Changing NR and FNR: Auto-set. (line 337) +* sidebar, Changing NR and FNR: Auto-set. (line 334) * sidebar, Controlling Output Buffering with system(): I/O Functions. (line 137) * sidebar, Escape Sequences for Metacharacters: Escape Sequences. @@ -34778,9 +34773,9 @@ Index * substr: String Functions. (line 482) * substring: String Functions. (line 482) * Sumner, Andrew: Other Versions. (line 68) -* supplementary groups of gawk process: Auto-set. (line 258) +* supplementary groups of gawk process: Auto-set. (line 251) * switch statement: Switch Statement. (line 6) -* SYMTAB array: Auto-set. (line 294) +* SYMTAB array: Auto-set. (line 291) * syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops. (line 149) * system: I/O Functions. (line 107) @@ -34963,10 +34958,10 @@ Index * variables, uninitialized, as array subscripts: Uninitialized Subscripts. (line 6) * variables, user-defined: Variables. (line 6) -* version of gawk: Auto-set. (line 228) -* version of gawk extension API: Auto-set. (line 253) -* version of GNU MP library: Auto-set. (line 236) -* version of GNU MPFR library: Auto-set. (line 238) +* version of gawk: Auto-set. (line 221) +* version of gawk extension API: Auto-set. (line 246) +* version of GNU MP library: Auto-set. (line 229) +* version of GNU MPFR library: Auto-set. (line 231) * vertical bar (|): Regexp Operators. (line 70) * vertical bar (|), | operator (I/O): Getline/Pipe. (line 10) * vertical bar (|), | operator (I/O) <1>: Precedence. (line 64) @@ -35235,361 +35230,361 @@ Node: Exit Statement437104 Node: Built-in Variables439509 Node: User-modified440642 Node: Auto-set448230 -Ref: Auto-set-Footnote-1462479 -Ref: Auto-set-Footnote-2462685 -Node: ARGC and ARGV462741 -Node: Pattern Action Summary466960 -Node: Arrays469390 -Node: Array Basics470719 -Node: Array Intro471563 -Ref: figure-array-elements473538 -Ref: Array Intro-Footnote-1476242 -Node: Reference to Elements476370 -Node: Assigning Elements478834 -Node: Array Example479325 -Node: Scanning an Array481084 -Node: Controlling Scanning484108 -Ref: Controlling Scanning-Footnote-1489507 -Node: Numeric Array Subscripts489823 -Node: Uninitialized Subscripts492007 -Node: Delete493626 -Ref: Delete-Footnote-1496378 -Node: Multidimensional496435 -Node: Multiscanning499530 -Node: Arrays of Arrays501121 -Node: Arrays Summary505889 -Node: Functions507982 -Node: Built-in509020 -Node: Calling Built-in510098 -Node: Numeric Functions512094 -Ref: Numeric Functions-Footnote-1516927 -Ref: Numeric Functions-Footnote-2517284 -Ref: Numeric Functions-Footnote-3517332 -Node: String Functions517604 -Ref: String Functions-Footnote-1541112 -Ref: String Functions-Footnote-2541241 -Ref: String Functions-Footnote-3541489 -Node: Gory Details541576 -Ref: table-sub-escapes543367 -Ref: table-sub-proposed544886 -Ref: table-posix-sub546249 -Ref: table-gensub-escapes547790 -Ref: Gory Details-Footnote-1548613 -Node: I/O Functions548764 -Ref: I/O Functions-Footnote-1555985 -Node: Time Functions556133 -Ref: Time Functions-Footnote-1566638 -Ref: Time Functions-Footnote-2566706 -Ref: Time Functions-Footnote-3566864 -Ref: Time Functions-Footnote-4566975 -Ref: Time Functions-Footnote-5567087 -Ref: Time Functions-Footnote-6567314 -Node: Bitwise Functions567580 -Ref: table-bitwise-ops568174 -Ref: Bitwise Functions-Footnote-1572512 -Node: Type Functions572685 -Node: I18N Functions575346 -Node: User-defined576997 -Node: Definition Syntax577802 -Ref: Definition Syntax-Footnote-1583489 -Node: Function Example583560 -Ref: Function Example-Footnote-1586482 -Node: Function Caveats586504 -Node: Calling A Function587022 -Node: Variable Scope587980 -Node: Pass By Value/Reference590974 -Node: Return Statement594473 -Node: Dynamic Typing597452 -Node: Indirect Calls598382 -Ref: Indirect Calls-Footnote-1608633 -Node: Functions Summary608761 -Node: Library Functions611466 -Ref: Library Functions-Footnote-1615075 -Ref: Library Functions-Footnote-2615218 -Node: Library Names615389 -Ref: Library Names-Footnote-1618850 -Ref: Library Names-Footnote-2619073 -Node: General Functions619159 -Node: Strtonum Function620262 -Node: Assert Function623284 -Node: Round Function626610 -Node: Cliff Random Function628151 -Node: Ordinal Functions629167 -Ref: Ordinal Functions-Footnote-1632230 -Ref: Ordinal Functions-Footnote-2632482 -Node: Join Function632692 -Ref: Join Function-Footnote-1634462 -Node: Getlocaltime Function634662 -Node: Readfile Function638406 -Node: Shell Quoting640380 -Node: Data File Management641781 -Node: Filetrans Function642413 -Node: Rewind Function646510 -Node: File Checking647896 -Ref: File Checking-Footnote-1649230 -Node: Empty Files649431 -Node: Ignoring Assigns651410 -Node: Getopt Function652960 -Ref: Getopt Function-Footnote-1664430 -Node: Passwd Functions664630 -Ref: Passwd Functions-Footnote-1673471 -Node: Group Functions673559 -Ref: Group Functions-Footnote-1681458 -Node: Walking Arrays681665 -Node: Library Functions Summary684675 -Node: Library Exercises686081 -Node: Sample Programs686546 -Node: Running Examples687316 -Node: Clones688044 -Node: Cut Program689268 -Node: Egrep Program698989 -Ref: Egrep Program-Footnote-1706501 -Node: Id Program706611 -Node: Split Program710291 -Ref: Split Program-Footnote-1713750 -Node: Tee Program713879 -Node: Uniq Program716669 -Node: Wc Program724095 -Ref: Wc Program-Footnote-1728350 -Node: Miscellaneous Programs728444 -Node: Dupword Program729657 -Node: Alarm Program731687 -Node: Translate Program736542 -Ref: Translate Program-Footnote-1741107 -Node: Labels Program741377 -Ref: Labels Program-Footnote-1744728 -Node: Word Sorting744812 -Node: History Sorting748884 -Node: Extract Program750719 -Node: Simple Sed758250 -Node: Igawk Program761324 -Ref: Igawk Program-Footnote-1775655 -Ref: Igawk Program-Footnote-2775857 -Ref: Igawk Program-Footnote-3775979 -Node: Anagram Program776094 -Node: Signature Program779156 -Node: Programs Summary780403 -Node: Programs Exercises781618 -Ref: Programs Exercises-Footnote-1785747 -Node: Advanced Features785838 -Node: Nondecimal Data787828 -Node: Array Sorting789419 -Node: Controlling Array Traversal790119 -Ref: Controlling Array Traversal-Footnote-1798488 -Node: Array Sorting Functions798606 -Ref: Array Sorting Functions-Footnote-1802493 -Node: Two-way I/O802689 -Ref: Two-way I/O-Footnote-1807640 -Ref: Two-way I/O-Footnote-2807827 -Node: TCP/IP Networking807909 -Node: Profiling811027 -Node: Advanced Features Summary819298 -Node: Internationalization821234 -Node: I18N and L10N822714 -Node: Explaining gettext823401 -Ref: Explaining gettext-Footnote-1828424 -Ref: Explaining gettext-Footnote-2828609 -Node: Programmer i18n828774 -Ref: Programmer i18n-Footnote-1833630 -Node: Translator i18n833679 -Node: String Extraction834473 -Ref: String Extraction-Footnote-1835606 -Node: Printf Ordering835692 -Ref: Printf Ordering-Footnote-1838478 -Node: I18N Portability838542 -Ref: I18N Portability-Footnote-1840998 -Node: I18N Example841061 -Ref: I18N Example-Footnote-1843867 -Node: Gawk I18N843940 -Node: I18N Summary844585 -Node: Debugger845926 -Node: Debugging846948 -Node: Debugging Concepts847389 -Node: Debugging Terms849198 -Node: Awk Debugging851773 -Node: Sample Debugging Session852679 -Node: Debugger Invocation853213 -Node: Finding The Bug854599 -Node: List of Debugger Commands861077 -Node: Breakpoint Control862410 -Node: Debugger Execution Control866104 -Node: Viewing And Changing Data869466 -Node: Execution Stack872840 -Node: Debugger Info874477 -Node: Miscellaneous Debugger Commands878548 -Node: Readline Support883636 -Node: Limitations884532 -Ref: Limitations-Footnote-1888763 -Node: Debugging Summary888814 -Node: Arbitrary Precision Arithmetic890093 -Node: Computer Arithmetic891509 -Ref: table-numeric-ranges895100 -Ref: Computer Arithmetic-Footnote-1895822 -Node: Math Definitions895879 -Ref: table-ieee-formats899193 -Ref: Math Definitions-Footnote-1899796 -Node: MPFR features899901 -Node: FP Math Caution901574 -Ref: FP Math Caution-Footnote-1902646 -Node: Inexactness of computations903015 -Node: Inexact representation903975 -Node: Comparing FP Values905335 -Node: Errors accumulate906417 -Node: Getting Accuracy907850 -Node: Try To Round910560 -Node: Setting precision911459 -Ref: table-predefined-precision-strings912156 -Node: Setting the rounding mode913986 -Ref: table-gawk-rounding-modes914360 -Ref: Setting the rounding mode-Footnote-1917768 -Node: Arbitrary Precision Integers917947 -Ref: Arbitrary Precision Integers-Footnote-1922864 -Node: POSIX Floating Point Problems923013 -Ref: POSIX Floating Point Problems-Footnote-1926895 -Node: Floating point summary926933 -Node: Dynamic Extensions929123 -Node: Extension Intro930676 -Node: Plugin License931942 -Node: Extension Mechanism Outline932739 -Ref: figure-load-extension933178 -Ref: figure-register-new-function934743 -Ref: figure-call-new-function935835 -Node: Extension API Description937898 -Node: Extension API Functions Introduction939430 -Node: General Data Types944289 -Ref: General Data Types-Footnote-1950244 -Node: Memory Allocation Functions950543 -Ref: Memory Allocation Functions-Footnote-1953388 -Node: Constructor Functions953487 -Node: Registration Functions955232 -Node: Extension Functions955917 -Node: Exit Callback Functions958216 -Node: Extension Version String959466 -Node: Input Parsers960129 -Node: Output Wrappers970014 -Node: Two-way processors974526 -Node: Printing Messages976790 -Ref: Printing Messages-Footnote-1977864 -Node: Updating ERRNO978017 -Node: Requesting Values978756 -Ref: table-value-types-returned979493 -Node: Accessing Parameters980376 -Node: Symbol Table Access981612 -Node: Symbol table by name982124 -Node: Symbol table by cookie984145 -Ref: Symbol table by cookie-Footnote-1988294 -Node: Cached values988358 -Ref: Cached values-Footnote-1991859 -Node: Array Manipulation991950 -Ref: Array Manipulation-Footnote-1993041 -Node: Array Data Types993078 -Ref: Array Data Types-Footnote-1995736 -Node: Array Functions995828 -Node: Flattening Arrays999687 -Node: Creating Arrays1006595 -Node: Redirection API1011367 -Node: Extension API Variables1014198 -Node: Extension Versioning1014831 -Node: Extension API Informational Variables1016722 -Node: Extension API Boilerplate1017786 -Node: Finding Extensions1021600 -Node: Extension Example1022160 -Node: Internal File Description1022958 -Node: Internal File Ops1027038 -Ref: Internal File Ops-Footnote-11038800 -Node: Using Internal File Ops1038940 -Ref: Using Internal File Ops-Footnote-11041323 -Node: Extension Samples1041598 -Node: Extension Sample File Functions1043127 -Node: Extension Sample Fnmatch1050776 -Node: Extension Sample Fork1052263 -Node: Extension Sample Inplace1053481 -Node: Extension Sample Ord1056691 -Node: Extension Sample Readdir1057527 -Ref: table-readdir-file-types1058416 -Node: Extension Sample Revout1059221 -Node: Extension Sample Rev2way1059810 -Node: Extension Sample Read write array1060550 -Node: Extension Sample Readfile1062492 -Node: Extension Sample Time1063587 -Node: Extension Sample API Tests1064935 -Node: gawkextlib1065427 -Node: Extension summary1067874 -Node: Extension Exercises1071566 -Node: Language History1073063 -Node: V7/SVR3.11074719 -Node: SVR41076871 -Node: POSIX1078305 -Node: BTL1079685 -Node: POSIX/GNU1080415 -Node: Feature History1086254 -Node: Common Extensions1100574 -Node: Ranges and Locales1101857 -Ref: Ranges and Locales-Footnote-11106473 -Ref: Ranges and Locales-Footnote-21106500 -Ref: Ranges and Locales-Footnote-31106735 -Node: Contributors1106956 -Node: History summary1112525 -Node: Installation1113905 -Node: Gawk Distribution1114850 -Node: Getting1115334 -Node: Extracting1116295 -Node: Distribution contents1117933 -Node: Unix Installation1124029 -Node: Quick Installation1124711 -Node: Shell Startup Files1127125 -Node: Additional Configuration Options1128203 -Node: Configuration Philosophy1130008 -Node: Non-Unix Installation1132378 -Node: PC Installation1132836 -Node: PC Binary Installation1134156 -Node: PC Compiling1136008 -Ref: PC Compiling-Footnote-11139032 -Node: PC Testing1139141 -Node: PC Using1140321 -Node: Cygwin1144435 -Node: MSYS1145205 -Node: VMS Installation1145706 -Node: VMS Compilation1146497 -Ref: VMS Compilation-Footnote-11147727 -Node: VMS Dynamic Extensions1147785 -Node: VMS Installation Details1149470 -Node: VMS Running1151723 -Node: VMS GNV1154564 -Node: VMS Old Gawk1155299 -Node: Bugs1155770 -Node: Other Versions1159967 -Node: Installation summary1166553 -Node: Notes1167611 -Node: Compatibility Mode1168476 -Node: Additions1169258 -Node: Accessing The Source1170183 -Node: Adding Code1171619 -Node: New Ports1177838 -Node: Derived Files1182326 -Ref: Derived Files-Footnote-11187811 -Ref: Derived Files-Footnote-21187846 -Ref: Derived Files-Footnote-31188444 -Node: Future Extensions1188558 -Node: Implementation Limitations1189216 -Node: Extension Design1190399 -Node: Old Extension Problems1191553 -Ref: Old Extension Problems-Footnote-11193071 -Node: Extension New Mechanism Goals1193128 -Ref: Extension New Mechanism Goals-Footnote-11196492 -Node: Extension Other Design Decisions1196681 -Node: Extension Future Growth1198794 -Node: Old Extension Mechanism1199630 -Node: Notes summary1201393 -Node: Basic Concepts1202575 -Node: Basic High Level1203256 -Ref: figure-general-flow1203538 -Ref: figure-process-flow1204223 -Ref: Basic High Level-Footnote-11207524 -Node: Basic Data Typing1207709 -Node: Glossary1211037 -Node: Copying1242983 -Node: GNU Free Documentation License1280522 -Node: Index1305640 +Ref: Auto-set-Footnote-1462337 +Ref: Auto-set-Footnote-2462543 +Node: ARGC and ARGV462599 +Node: Pattern Action Summary466818 +Node: Arrays469248 +Node: Array Basics470577 +Node: Array Intro471421 +Ref: figure-array-elements473396 +Ref: Array Intro-Footnote-1476100 +Node: Reference to Elements476228 +Node: Assigning Elements478692 +Node: Array Example479183 +Node: Scanning an Array480942 +Node: Controlling Scanning483966 +Ref: Controlling Scanning-Footnote-1489365 +Node: Numeric Array Subscripts489681 +Node: Uninitialized Subscripts491865 +Node: Delete493484 +Ref: Delete-Footnote-1496236 +Node: Multidimensional496293 +Node: Multiscanning499388 +Node: Arrays of Arrays500979 +Node: Arrays Summary505747 +Node: Functions507840 +Node: Built-in508878 +Node: Calling Built-in509956 +Node: Numeric Functions511952 +Ref: Numeric Functions-Footnote-1516785 +Ref: Numeric Functions-Footnote-2517142 +Ref: Numeric Functions-Footnote-3517190 +Node: String Functions517462 +Ref: String Functions-Footnote-1540970 +Ref: String Functions-Footnote-2541099 +Ref: String Functions-Footnote-3541347 +Node: Gory Details541434 +Ref: table-sub-escapes543225 +Ref: table-sub-proposed544744 +Ref: table-posix-sub546107 +Ref: table-gensub-escapes547648 +Ref: Gory Details-Footnote-1548471 +Node: I/O Functions548622 +Ref: I/O Functions-Footnote-1555843 +Node: Time Functions555991 +Ref: Time Functions-Footnote-1566496 +Ref: Time Functions-Footnote-2566564 +Ref: Time Functions-Footnote-3566722 +Ref: Time Functions-Footnote-4566833 +Ref: Time Functions-Footnote-5566945 +Ref: Time Functions-Footnote-6567172 +Node: Bitwise Functions567438 +Ref: table-bitwise-ops568032 +Ref: Bitwise Functions-Footnote-1572370 +Node: Type Functions572543 +Node: I18N Functions575204 +Node: User-defined576855 +Node: Definition Syntax577660 +Ref: Definition Syntax-Footnote-1583347 +Node: Function Example583418 +Ref: Function Example-Footnote-1586340 +Node: Function Caveats586362 +Node: Calling A Function586880 +Node: Variable Scope587838 +Node: Pass By Value/Reference590832 +Node: Return Statement594331 +Node: Dynamic Typing597310 +Node: Indirect Calls598240 +Ref: Indirect Calls-Footnote-1608491 +Node: Functions Summary608619 +Node: Library Functions611324 +Ref: Library Functions-Footnote-1614933 +Ref: Library Functions-Footnote-2615076 +Node: Library Names615247 +Ref: Library Names-Footnote-1618708 +Ref: Library Names-Footnote-2618931 +Node: General Functions619017 +Node: Strtonum Function620120 +Node: Assert Function623142 +Node: Round Function626468 +Node: Cliff Random Function628009 +Node: Ordinal Functions629025 +Ref: Ordinal Functions-Footnote-1632088 +Ref: Ordinal Functions-Footnote-2632340 +Node: Join Function632550 +Ref: Join Function-Footnote-1634320 +Node: Getlocaltime Function634520 +Node: Readfile Function638264 +Node: Shell Quoting640238 +Node: Data File Management641639 +Node: Filetrans Function642271 +Node: Rewind Function646368 +Node: File Checking647754 +Ref: File Checking-Footnote-1649088 +Node: Empty Files649289 +Node: Ignoring Assigns651268 +Node: Getopt Function652818 +Ref: Getopt Function-Footnote-1664288 +Node: Passwd Functions664488 +Ref: Passwd Functions-Footnote-1673329 +Node: Group Functions673417 +Ref: Group Functions-Footnote-1681316 +Node: Walking Arrays681523 +Node: Library Functions Summary684533 +Node: Library Exercises685939 +Node: Sample Programs686404 +Node: Running Examples687174 +Node: Clones687902 +Node: Cut Program689126 +Node: Egrep Program698847 +Ref: Egrep Program-Footnote-1706359 +Node: Id Program706469 +Node: Split Program710149 +Ref: Split Program-Footnote-1713608 +Node: Tee Program713737 +Node: Uniq Program716527 +Node: Wc Program723953 +Ref: Wc Program-Footnote-1728208 +Node: Miscellaneous Programs728302 +Node: Dupword Program729515 +Node: Alarm Program731545 +Node: Translate Program736400 +Ref: Translate Program-Footnote-1740965 +Node: Labels Program741235 +Ref: Labels Program-Footnote-1744586 +Node: Word Sorting744670 +Node: History Sorting748742 +Node: Extract Program750577 +Node: Simple Sed758108 +Node: Igawk Program761182 +Ref: Igawk Program-Footnote-1775513 +Ref: Igawk Program-Footnote-2775715 +Ref: Igawk Program-Footnote-3775837 +Node: Anagram Program775952 +Node: Signature Program779014 +Node: Programs Summary780261 +Node: Programs Exercises781476 +Ref: Programs Exercises-Footnote-1785605 +Node: Advanced Features785696 +Node: Nondecimal Data787686 +Node: Array Sorting789277 +Node: Controlling Array Traversal789977 +Ref: Controlling Array Traversal-Footnote-1798346 +Node: Array Sorting Functions798464 +Ref: Array Sorting Functions-Footnote-1802351 +Node: Two-way I/O802547 +Ref: Two-way I/O-Footnote-1807498 +Ref: Two-way I/O-Footnote-2807685 +Node: TCP/IP Networking807767 +Node: Profiling810885 +Node: Advanced Features Summary819156 +Node: Internationalization821092 +Node: I18N and L10N822572 +Node: Explaining gettext823259 +Ref: Explaining gettext-Footnote-1828282 +Ref: Explaining gettext-Footnote-2828467 +Node: Programmer i18n828632 +Ref: Programmer i18n-Footnote-1833488 +Node: Translator i18n833537 +Node: String Extraction834331 +Ref: String Extraction-Footnote-1835464 +Node: Printf Ordering835550 +Ref: Printf Ordering-Footnote-1838336 +Node: I18N Portability838400 +Ref: I18N Portability-Footnote-1840856 +Node: I18N Example840919 +Ref: I18N Example-Footnote-1843725 +Node: Gawk I18N843798 +Node: I18N Summary844443 +Node: Debugger845784 +Node: Debugging846806 +Node: Debugging Concepts847247 +Node: Debugging Terms849056 +Node: Awk Debugging851631 +Node: Sample Debugging Session852537 +Node: Debugger Invocation853071 +Node: Finding The Bug854457 +Node: List of Debugger Commands860935 +Node: Breakpoint Control862268 +Node: Debugger Execution Control865962 +Node: Viewing And Changing Data869324 +Node: Execution Stack872698 +Node: Debugger Info874335 +Node: Miscellaneous Debugger Commands878406 +Node: Readline Support883494 +Node: Limitations884390 +Ref: Limitations-Footnote-1888621 +Node: Debugging Summary888672 +Node: Arbitrary Precision Arithmetic889951 +Node: Computer Arithmetic891367 +Ref: table-numeric-ranges894958 +Ref: Computer Arithmetic-Footnote-1895680 +Node: Math Definitions895737 +Ref: table-ieee-formats899051 +Ref: Math Definitions-Footnote-1899654 +Node: MPFR features899759 +Node: FP Math Caution901432 +Ref: FP Math Caution-Footnote-1902504 +Node: Inexactness of computations902873 +Node: Inexact representation903833 +Node: Comparing FP Values905193 +Node: Errors accumulate906275 +Node: Getting Accuracy907708 +Node: Try To Round910418 +Node: Setting precision911317 +Ref: table-predefined-precision-strings912014 +Node: Setting the rounding mode913844 +Ref: table-gawk-rounding-modes914218 +Ref: Setting the rounding mode-Footnote-1917626 +Node: Arbitrary Precision Integers917805 +Ref: Arbitrary Precision Integers-Footnote-1922722 +Node: POSIX Floating Point Problems922871 +Ref: POSIX Floating Point Problems-Footnote-1926753 +Node: Floating point summary926791 +Node: Dynamic Extensions928981 +Node: Extension Intro930534 +Node: Plugin License931800 +Node: Extension Mechanism Outline932597 +Ref: figure-load-extension933036 +Ref: figure-register-new-function934601 +Ref: figure-call-new-function935693 +Node: Extension API Description937756 +Node: Extension API Functions Introduction939288 +Node: General Data Types944147 +Ref: General Data Types-Footnote-1950102 +Node: Memory Allocation Functions950401 +Ref: Memory Allocation Functions-Footnote-1953246 +Node: Constructor Functions953345 +Node: Registration Functions955090 +Node: Extension Functions955775 +Node: Exit Callback Functions958074 +Node: Extension Version String959324 +Node: Input Parsers959987 +Node: Output Wrappers969872 +Node: Two-way processors974384 +Node: Printing Messages976648 +Ref: Printing Messages-Footnote-1977722 +Node: Updating ERRNO977875 +Node: Requesting Values978614 +Ref: table-value-types-returned979351 +Node: Accessing Parameters980234 +Node: Symbol Table Access981470 +Node: Symbol table by name981982 +Node: Symbol table by cookie984003 +Ref: Symbol table by cookie-Footnote-1988152 +Node: Cached values988216 +Ref: Cached values-Footnote-1991717 +Node: Array Manipulation991808 +Ref: Array Manipulation-Footnote-1992899 +Node: Array Data Types992936 +Ref: Array Data Types-Footnote-1995594 +Node: Array Functions995686 +Node: Flattening Arrays999545 +Node: Creating Arrays1006453 +Node: Redirection API1011225 +Node: Extension API Variables1014056 +Node: Extension Versioning1014689 +Node: Extension API Informational Variables1016580 +Node: Extension API Boilerplate1017644 +Node: Finding Extensions1021458 +Node: Extension Example1022018 +Node: Internal File Description1022816 +Node: Internal File Ops1026896 +Ref: Internal File Ops-Footnote-11038658 +Node: Using Internal File Ops1038798 +Ref: Using Internal File Ops-Footnote-11041181 +Node: Extension Samples1041456 +Node: Extension Sample File Functions1042985 +Node: Extension Sample Fnmatch1050634 +Node: Extension Sample Fork1052121 +Node: Extension Sample Inplace1053339 +Node: Extension Sample Ord1056549 +Node: Extension Sample Readdir1057385 +Ref: table-readdir-file-types1058274 +Node: Extension Sample Revout1059079 +Node: Extension Sample Rev2way1059668 +Node: Extension Sample Read write array1060408 +Node: Extension Sample Readfile1062350 +Node: Extension Sample Time1063445 +Node: Extension Sample API Tests1064793 +Node: gawkextlib1065285 +Node: Extension summary1067732 +Node: Extension Exercises1071424 +Node: Language History1072921 +Node: V7/SVR3.11074577 +Node: SVR41076729 +Node: POSIX1078163 +Node: BTL1079543 +Node: POSIX/GNU1080273 +Node: Feature History1086112 +Node: Common Extensions1100432 +Node: Ranges and Locales1101715 +Ref: Ranges and Locales-Footnote-11106331 +Ref: Ranges and Locales-Footnote-21106358 +Ref: Ranges and Locales-Footnote-31106593 +Node: Contributors1106814 +Node: History summary1112383 +Node: Installation1113763 +Node: Gawk Distribution1114708 +Node: Getting1115192 +Node: Extracting1116153 +Node: Distribution contents1117791 +Node: Unix Installation1123887 +Node: Quick Installation1124569 +Node: Shell Startup Files1126983 +Node: Additional Configuration Options1128061 +Node: Configuration Philosophy1129866 +Node: Non-Unix Installation1132236 +Node: PC Installation1132694 +Node: PC Binary Installation1134014 +Node: PC Compiling1135866 +Ref: PC Compiling-Footnote-11138890 +Node: PC Testing1138999 +Node: PC Using1140179 +Node: Cygwin1144293 +Node: MSYS1145063 +Node: VMS Installation1145564 +Node: VMS Compilation1146355 +Ref: VMS Compilation-Footnote-11147585 +Node: VMS Dynamic Extensions1147643 +Node: VMS Installation Details1149328 +Node: VMS Running1151581 +Node: VMS GNV1154422 +Node: VMS Old Gawk1155157 +Node: Bugs1155628 +Node: Other Versions1159825 +Node: Installation summary1166411 +Node: Notes1167469 +Node: Compatibility Mode1168334 +Node: Additions1169116 +Node: Accessing The Source1170041 +Node: Adding Code1171477 +Node: New Ports1177696 +Node: Derived Files1182184 +Ref: Derived Files-Footnote-11187669 +Ref: Derived Files-Footnote-21187704 +Ref: Derived Files-Footnote-31188302 +Node: Future Extensions1188416 +Node: Implementation Limitations1189074 +Node: Extension Design1190257 +Node: Old Extension Problems1191411 +Ref: Old Extension Problems-Footnote-11192929 +Node: Extension New Mechanism Goals1192986 +Ref: Extension New Mechanism Goals-Footnote-11196350 +Node: Extension Other Design Decisions1196539 +Node: Extension Future Growth1198652 +Node: Old Extension Mechanism1199488 +Node: Notes summary1201251 +Node: Basic Concepts1202433 +Node: Basic High Level1203114 +Ref: figure-general-flow1203396 +Ref: figure-process-flow1204081 +Ref: Basic High Level-Footnote-11207382 +Node: Basic Data Typing1207567 +Node: Glossary1210895 +Node: Copying1242841 +Node: GNU Free Documentation License1280380 +Node: Index1305498 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index bf7cd0f0..8e13df6b 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -51,7 +51,7 @@ @c applies to and all the info about who's publishing this edition @c These apply across the board. -@set UPDATE-MONTH May, 2015 +@set UPDATE-MONTH December, 2015 @set VERSION 4.1 @set PATCHLEVEL 3 @@ -15168,6 +15168,10 @@ This is @code{"FIELDWIDTHS"} if field splitting with @code{FIELDWIDTHS} is in effect, or @code{"FPAT"} if field matching with @code{FPAT} is in effect. +@item PROCINFO["gid"] +@cindex group ID of @command{gawk} user +The value of the @code{getgid()} system call. + @item PROCINFO["identifiers"] @cindex program identifiers A subarray, indexed by the names of all identifiers used in the text of @@ -15203,10 +15207,6 @@ The values indicate what @command{gawk} knows about the identifiers after it has finished parsing the program; they are @emph{not} updated while the program runs. -@item PROCINFO["gid"] -@cindex group ID of @command{gawk} user -The value of the @code{getgid()} system call. - @item PROCINFO["pgrpid"] @cindex process group ID of @command{gawk} process The process group ID of the current process. @@ -15219,14 +15219,6 @@ The process ID of the current process. @cindex parent process ID of @command{gawk} process The parent process ID of the current process. -@item PROCINFO["sorted_in"] -If this element exists in @code{PROCINFO}, its value controls the -order in which array indices will be processed by -@samp{for (@var{indx} in @var{array})} loops. -This is an advanced feature, so we defer the -full description until later; see -@ref{Scanning an Array}. - @item PROCINFO["strftime"] The default time format string for @code{strftime()}. Assigning a new value to this element changes the default. @@ -15286,26 +15278,26 @@ supplementary groups that the process has. Use the @code{in} operator to test for these elements (@pxref{Reference to Elements}). -@cindex @command{gawk}, @code{PROCINFO} array in -@cindex @code{PROCINFO} array, uses -The @code{PROCINFO} array has the following additional uses: +The following elements allow you to change @command{gawk}'s behavior: -@itemize @value{BULLET} -@item -It may be used to provide a timeout when reading from any -open input file, pipe, or coprocess. -@DBXREF{Read Timeout} for more information. +@table @code +@item PROCINFO["@var{command}", "pty"] +For two-way communication to @var{command}, use a pseudo-tty instead +of setting up a two-way pipe. +@DBXREF{Two-way I/O} for more information. -@item -It may be used to indicate that input may be retried when it fails due to -certain errors. -@DBXREF{Retrying Input} for more information. +@item PROCINFO["@var{input_name}", "READ_TIMEOUT"] +Set a timeout for reading from input redirection @var{input_name}. +@DBXREF{Read Timeout} for more information. -@item -It may be used to cause coprocesses to communicate over pseudo-ttys -instead of through two-way pipes; this is discussed further in -@ref{Two-way I/O}. -@end itemize +@item PROCINFO["sorted_in"] +If this element exists in @code{PROCINFO}, its value controls the +order in which array indices will be processed by +@samp{for (@var{indx} in @var{array})} loops. +This is an advanced feature, so we defer the +full description until later; see +@ref{Scanning an Array}. +@end table @cindex @code{RLENGTH} variable @item @code{RLENGTH} diff --git a/doc/gawktexi.in b/doc/gawktexi.in index c97ee4a9..dea589f6 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -46,7 +46,7 @@ @c applies to and all the info about who's publishing this edition @c These apply across the board. -@set UPDATE-MONTH May, 2015 +@set UPDATE-MONTH December, 2015 @set VERSION 4.1 @set PATCHLEVEL 3 @@ -14496,6 +14496,10 @@ This is @code{"FIELDWIDTHS"} if field splitting with @code{FIELDWIDTHS} is in effect, or @code{"FPAT"} if field matching with @code{FPAT} is in effect. +@item PROCINFO["gid"] +@cindex group ID of @command{gawk} user +The value of the @code{getgid()} system call. + @item PROCINFO["identifiers"] @cindex program identifiers A subarray, indexed by the names of all identifiers used in the text of @@ -14531,10 +14535,6 @@ The values indicate what @command{gawk} knows about the identifiers after it has finished parsing the program; they are @emph{not} updated while the program runs. -@item PROCINFO["gid"] -@cindex group ID of @command{gawk} user -The value of the @code{getgid()} system call. - @item PROCINFO["pgrpid"] @cindex process group ID of @command{gawk} process The process group ID of the current process. @@ -14547,14 +14547,6 @@ The process ID of the current process. @cindex parent process ID of @command{gawk} process The parent process ID of the current process. -@item PROCINFO["sorted_in"] -If this element exists in @code{PROCINFO}, its value controls the -order in which array indices will be processed by -@samp{for (@var{indx} in @var{array})} loops. -This is an advanced feature, so we defer the -full description until later; see -@ref{Scanning an Array}. - @item PROCINFO["strftime"] The default time format string for @code{strftime()}. Assigning a new value to this element changes the default. @@ -14614,26 +14606,26 @@ supplementary groups that the process has. Use the @code{in} operator to test for these elements (@pxref{Reference to Elements}). -@cindex @command{gawk}, @code{PROCINFO} array in -@cindex @code{PROCINFO} array, uses -The @code{PROCINFO} array has the following additional uses: +The following elements allow you to change @command{gawk}'s behavior: -@itemize @value{BULLET} -@item -It may be used to provide a timeout when reading from any -open input file, pipe, or coprocess. -@DBXREF{Read Timeout} for more information. +@table @code +@item PROCINFO["@var{command}", "pty"] +For two-way communication to @var{command}, use a pseudo-tty instead +of setting up a two-way pipe. +@DBXREF{Two-way I/O} for more information. -@item -It may be used to indicate that input may be retried when it fails due to -certain errors. -@DBXREF{Retrying Input} for more information. +@item PROCINFO["@var{input_name}", "READ_TIMEOUT"] +Set a timeout for reading from input redirection @var{input_name}. +@DBXREF{Read Timeout} for more information. -@item -It may be used to cause coprocesses to communicate over pseudo-ttys -instead of through two-way pipes; this is discussed further in -@ref{Two-way I/O}. -@end itemize +@item PROCINFO["sorted_in"] +If this element exists in @code{PROCINFO}, its value controls the +order in which array indices will be processed by +@samp{for (@var{indx} in @var{array})} loops. +This is an advanced feature, so we defer the +full description until later; see +@ref{Scanning an Array}. +@end table @cindex @code{RLENGTH} variable @item @code{RLENGTH} |