diff options
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 1066 |
1 files changed, 554 insertions, 512 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index c339dcbb..99a3c693 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -637,6 +637,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b) * Future Extensions:: New features that may be implemented one day. * Implementation Limitations:: Some limitations of the implementation. +* Old Extension Mechansim:: Some compatibility for old extensions. * Basic High Level:: The high level view. * Basic Data Typing:: A very quick intro to data types. @@ -26489,6 +26490,7 @@ and maintainers of `gawk'. Everything in it applies specifically to * Additions:: Making Additions To `gawk'. * Future Extensions:: New features that may be implemented one day. * Implementation Limitations:: Some limitations of the implementation. +* Old Extension Mechansim:: Some compatibility for old extensions. File: gawk.info, Node: Compatibility Mode, Next: Additions, Up: Notes @@ -26952,7 +26954,7 @@ Additions::, if you are interested in tackling any of the projects listed there. -File: gawk.info, Node: Implementation Limitations, Prev: Future Extensions, Up: Notes +File: gawk.info, Node: Implementation Limitations, Next: Old Extension Mechansim, Prev: Future Extensions, Up: Notes C.4 Some Limitations of the Implementation ========================================== @@ -26983,6 +26985,45 @@ Size of a literal string `MAX_INT ' Size of a printf string `MAX_INT ' +File: gawk.info, Node: Old Extension Mechansim, Prev: Implementation Limitations, Up: Notes + +C.5 Compatibility For Old Extensions +==================================== + +*note Dynamic Extensions::, describes the supported API and mechanisms +for writing extensions for `gawk'. This API was introduced in *FIXME: +VERSION*. However, for many years `gawk' provided an extension +mechanism that required knowledge of `gawk' internals and that was not +as well designed. + + In order to provide a transition period, `gawk' version *FIXME: +VERSION* continues to support the original extension mechanism. This +will be true for the life of exactly one major release. This support +will be withdrawn, and removed from the source code, at the next major +release. + + Briefly, original-style extensions should be compiled by including +the `awk.h' header file in the extension source code. Additionally, you +must define the identifier `GAWK' when building (use `-DGAWK' with +Unix-style compilers). Otherwise, the definitions in `gawkapi.h' will +cause conflicts with those in `awk.h' and your extension will not +compile. + + Just as in previous versions, you load an old-style extension with +the `extension()' built-in function (which is not otherwise documented). +This function in turn finds and loads the shared object file containing +the extension and calls its `dl_load()' C routine. + + Because original-style and new-style extensions use different +initialiation routines (`dl_load()' versus `dlload()'), they may safely +be installed in the same directory (to be found by `AWKLIBPATH') +without conflict. + + The `gawk' development team strongly recommends that you convert any +old extensions that you may have to use the new API described in *note +Dynamic Extensions::. + + File: gawk.info, Node: Basic Concepts, Next: Glossary, Prev: Notes, Up: Top Appendix D Basic Programming Concepts @@ -31773,516 +31814,517 @@ Index Tag Table: Node: Top1352 -Node: Foreword40138 -Node: Preface44483 -Ref: Preface-Footnote-147536 -Ref: Preface-Footnote-247642 -Node: History47874 -Node: Names50265 -Ref: Names-Footnote-151742 -Node: This Manual51814 -Ref: This Manual-Footnote-157720 -Node: Conventions57820 -Node: Manual History59954 -Ref: Manual History-Footnote-163224 -Ref: Manual History-Footnote-263265 -Node: How To Contribute63339 -Node: Acknowledgments64483 -Node: Getting Started68979 -Node: Running gawk71358 -Node: One-shot72544 -Node: Read Terminal73769 -Ref: Read Terminal-Footnote-175419 -Ref: Read Terminal-Footnote-275695 -Node: Long75866 -Node: Executable Scripts77242 -Ref: Executable Scripts-Footnote-179111 -Ref: Executable Scripts-Footnote-279213 -Node: Comments79760 -Node: Quoting82227 -Node: DOS Quoting86850 -Node: Sample Data Files87525 -Node: Very Simple90557 -Node: Two Rules95156 -Node: More Complex97303 -Ref: More Complex-Footnote-1100233 -Node: Statements/Lines100318 -Ref: Statements/Lines-Footnote-1104780 -Node: Other Features105045 -Node: When105973 -Node: Invoking Gawk108120 -Node: Command Line109581 -Node: Options110364 -Ref: Options-Footnote-1125762 -Node: Other Arguments125787 -Node: Naming Standard Input128445 -Node: Environment Variables129539 -Node: AWKPATH Variable130097 -Ref: AWKPATH Variable-Footnote-1132855 -Node: AWKLIBPATH Variable133115 -Node: Other Environment Variables133712 -Node: Exit Status136207 -Node: Include Files136882 -Node: Loading Shared Libraries140451 -Node: Obsolete141676 -Node: Undocumented142373 -Node: Regexp142616 -Node: Regexp Usage144005 -Node: Escape Sequences146031 -Node: Regexp Operators151794 -Ref: Regexp Operators-Footnote-1159174 -Ref: Regexp Operators-Footnote-2159321 -Node: Bracket Expressions159419 -Ref: table-char-classes161309 -Node: GNU Regexp Operators163832 -Node: Case-sensitivity167555 -Ref: Case-sensitivity-Footnote-1170523 -Ref: Case-sensitivity-Footnote-2170758 -Node: Leftmost Longest170866 -Node: Computed Regexps172067 -Node: Reading Files175477 -Node: Records177480 -Ref: Records-Footnote-1186404 -Node: Fields186441 -Ref: Fields-Footnote-1189474 -Node: Nonconstant Fields189560 -Node: Changing Fields191762 -Node: Field Separators197743 -Node: Default Field Splitting200372 -Node: Regexp Field Splitting201489 -Node: Single Character Fields204831 -Node: Command Line Field Separator205890 -Node: Field Splitting Summary209331 -Ref: Field Splitting Summary-Footnote-1212523 -Node: Constant Size212624 -Node: Splitting By Content217208 -Ref: Splitting By Content-Footnote-1220934 -Node: Multiple Line220974 -Ref: Multiple Line-Footnote-1226821 -Node: Getline227000 -Node: Plain Getline229216 -Node: Getline/Variable231305 -Node: Getline/File232446 -Node: Getline/Variable/File233768 -Ref: Getline/Variable/File-Footnote-1235367 -Node: Getline/Pipe235454 -Node: Getline/Variable/Pipe238014 -Node: Getline/Coprocess239121 -Node: Getline/Variable/Coprocess240364 -Node: Getline Notes241078 -Node: Getline Summary243865 -Ref: table-getline-variants244273 -Node: Read Timeout245131 -Ref: Read Timeout-Footnote-1248876 -Node: Command line directories248933 -Node: Printing249563 -Node: Print251194 -Node: Print Examples252531 -Node: Output Separators255315 -Node: OFMT257075 -Node: Printf258433 -Node: Basic Printf259339 -Node: Control Letters260878 -Node: Format Modifiers264690 -Node: Printf Examples270699 -Node: Redirection273414 -Node: Special Files280398 -Node: Special FD280931 -Ref: Special FD-Footnote-1284556 -Node: Special Network284630 -Node: Special Caveats285480 -Node: Close Files And Pipes286276 -Ref: Close Files And Pipes-Footnote-1293299 -Ref: Close Files And Pipes-Footnote-2293447 -Node: Expressions293597 -Node: Values294729 -Node: Constants295405 -Node: Scalar Constants296085 -Ref: Scalar Constants-Footnote-1296944 -Node: Nondecimal-numbers297126 -Node: Regexp Constants300185 -Node: Using Constant Regexps300660 -Node: Variables303715 -Node: Using Variables304370 -Node: Assignment Options306094 -Node: Conversion307966 -Ref: table-locale-affects313342 -Ref: Conversion-Footnote-1313966 -Node: All Operators314075 -Node: Arithmetic Ops314705 -Node: Concatenation317210 -Ref: Concatenation-Footnote-1320003 -Node: Assignment Ops320123 -Ref: table-assign-ops325111 -Node: Increment Ops326519 -Node: Truth Values and Conditions329989 -Node: Truth Values331072 -Node: Typing and Comparison332121 -Node: Variable Typing332910 -Ref: Variable Typing-Footnote-1336807 -Node: Comparison Operators336929 -Ref: table-relational-ops337339 -Node: POSIX String Comparison340888 -Ref: POSIX String Comparison-Footnote-1341844 -Node: Boolean Ops341982 -Ref: Boolean Ops-Footnote-1346060 -Node: Conditional Exp346151 -Node: Function Calls347883 -Node: Precedence351477 -Node: Locales355146 -Node: Patterns and Actions356235 -Node: Pattern Overview357289 -Node: Regexp Patterns358958 -Node: Expression Patterns359501 -Node: Ranges363186 -Node: BEGIN/END366152 -Node: Using BEGIN/END366914 -Ref: Using BEGIN/END-Footnote-1369645 -Node: I/O And BEGIN/END369751 -Node: BEGINFILE/ENDFILE372033 -Node: Empty374937 -Node: Using Shell Variables375253 -Node: Action Overview377538 -Node: Statements379895 -Node: If Statement381749 -Node: While Statement383248 -Node: Do Statement385292 -Node: For Statement386448 -Node: Switch Statement389600 -Node: Break Statement391697 -Node: Continue Statement393687 -Node: Next Statement395480 -Node: Nextfile Statement397870 -Node: Exit Statement400511 -Node: Built-in Variables402927 -Node: User-modified404022 -Ref: User-modified-Footnote-1412377 -Node: Auto-set412439 -Ref: Auto-set-Footnote-1424790 -Ref: Auto-set-Footnote-2424995 -Node: ARGC and ARGV425051 -Node: Arrays428902 -Node: Array Basics430407 -Node: Array Intro431233 -Node: Reference to Elements435551 -Node: Assigning Elements437821 -Node: Array Example438312 -Node: Scanning an Array440044 -Node: Controlling Scanning442358 -Ref: Controlling Scanning-Footnote-1447291 -Node: Delete447607 -Ref: Delete-Footnote-1450372 -Node: Numeric Array Subscripts450429 -Node: Uninitialized Subscripts452612 -Node: Multi-dimensional454240 -Node: Multi-scanning457334 -Node: Arrays of Arrays458925 -Node: Functions463570 -Node: Built-in464389 -Node: Calling Built-in465467 -Node: Numeric Functions467455 -Ref: Numeric Functions-Footnote-1471287 -Ref: Numeric Functions-Footnote-2471644 -Ref: Numeric Functions-Footnote-3471692 -Node: String Functions471961 -Ref: String Functions-Footnote-1495458 -Ref: String Functions-Footnote-2495587 -Ref: String Functions-Footnote-3495835 -Node: Gory Details495922 -Ref: table-sub-escapes497601 -Ref: table-sub-posix-92498955 -Ref: table-sub-proposed500306 -Ref: table-posix-sub501660 -Ref: table-gensub-escapes503205 -Ref: Gory Details-Footnote-1504412 -Ref: Gory Details-Footnote-2504463 -Node: I/O Functions504614 -Ref: I/O Functions-Footnote-1511638 -Node: Time Functions511785 -Ref: Time Functions-Footnote-1522677 -Ref: Time Functions-Footnote-2522745 -Ref: Time Functions-Footnote-3522903 -Ref: Time Functions-Footnote-4523014 -Ref: Time Functions-Footnote-5523126 -Ref: Time Functions-Footnote-6523353 -Node: Bitwise Functions523619 -Ref: table-bitwise-ops524177 -Ref: Bitwise Functions-Footnote-1528398 -Node: Type Functions528582 -Node: I18N Functions529052 -Node: User-defined530679 -Node: Definition Syntax531483 -Ref: Definition Syntax-Footnote-1536393 -Node: Function Example536462 -Node: Function Caveats539056 -Node: Calling A Function539477 -Node: Variable Scope540592 -Node: Pass By Value/Reference543555 -Node: Return Statement546995 -Node: Dynamic Typing549976 -Node: Indirect Calls550711 -Node: Library Functions560396 -Ref: Library Functions-Footnote-1563395 -Node: Library Names563566 -Ref: Library Names-Footnote-1567037 -Ref: Library Names-Footnote-2567257 -Node: General Functions567343 -Node: Strtonum Function568296 -Node: Assert Function571226 -Node: Round Function574552 -Node: Cliff Random Function576095 -Node: Ordinal Functions577111 -Ref: Ordinal Functions-Footnote-1580181 -Ref: Ordinal Functions-Footnote-2580433 -Node: Join Function580642 -Ref: Join Function-Footnote-1582413 -Node: Getlocaltime Function582613 -Node: Data File Management586328 -Node: Filetrans Function586960 -Node: Rewind Function591099 -Node: File Checking592486 -Node: Empty Files593580 -Node: Ignoring Assigns595810 -Node: Getopt Function597363 -Ref: Getopt Function-Footnote-1608667 -Node: Passwd Functions608870 -Ref: Passwd Functions-Footnote-1617845 -Node: Group Functions617933 -Node: Walking Arrays626017 -Node: Sample Programs627586 -Node: Running Examples628263 -Node: Clones628991 -Node: Cut Program630215 -Node: Egrep Program640060 -Ref: Egrep Program-Footnote-1647833 -Node: Id Program647943 -Node: Split Program651559 -Ref: Split Program-Footnote-1655078 -Node: Tee Program655206 -Node: Uniq Program658009 -Node: Wc Program665438 -Ref: Wc Program-Footnote-1669704 -Ref: Wc Program-Footnote-2669904 -Node: Miscellaneous Programs669996 -Node: Dupword Program671184 -Node: Alarm Program673215 -Node: Translate Program677964 -Ref: Translate Program-Footnote-1682351 -Ref: Translate Program-Footnote-2682579 -Node: Labels Program682713 -Ref: Labels Program-Footnote-1686084 -Node: Word Sorting686168 -Node: History Sorting690052 -Node: Extract Program691891 -Ref: Extract Program-Footnote-1699374 -Node: Simple Sed699502 -Node: Igawk Program702564 -Ref: Igawk Program-Footnote-1717721 -Ref: Igawk Program-Footnote-2717922 -Node: Anagram Program718060 -Node: Signature Program721128 -Node: Internationalization722228 -Node: I18N and L10N723660 -Node: Explaining gettext724346 -Ref: Explaining gettext-Footnote-1729412 -Ref: Explaining gettext-Footnote-2729596 -Node: Programmer i18n729761 -Node: Translator i18n733961 -Node: String Extraction734754 -Ref: String Extraction-Footnote-1735715 -Node: Printf Ordering735801 -Ref: Printf Ordering-Footnote-1738585 -Node: I18N Portability738649 -Ref: I18N Portability-Footnote-1741098 -Node: I18N Example741161 -Ref: I18N Example-Footnote-1743796 -Node: Gawk I18N743868 -Node: Advanced Features744485 -Node: Nondecimal Data745989 -Node: Array Sorting747572 -Node: Controlling Array Traversal748269 -Node: Array Sorting Functions756507 -Ref: Array Sorting Functions-Footnote-1760181 -Ref: Array Sorting Functions-Footnote-2760274 -Node: Two-way I/O760468 -Ref: Two-way I/O-Footnote-1765900 -Node: TCP/IP Networking765970 -Node: Profiling768814 -Node: Debugger776268 -Node: Debugging777236 -Node: Debugging Concepts777669 -Node: Debugging Terms779525 -Node: Awk Debugging782122 -Node: Sample Debugging Session783014 -Node: Debugger Invocation783534 -Node: Finding The Bug784863 -Node: List of Debugger Commands791351 -Node: Breakpoint Control792685 -Node: Debugger Execution Control796349 -Node: Viewing And Changing Data799709 -Node: Execution Stack803065 -Node: Debugger Info804532 -Node: Miscellaneous Debugger Commands808513 -Node: Readline Support813958 -Node: Limitations814789 -Node: Arbitrary Precision Arithmetic817041 -Ref: Arbitrary Precision Arithmetic-Footnote-1818683 -Node: General Arithmetic818831 -Node: Floating Point Issues820551 -Node: String Conversion Precision821432 -Ref: String Conversion Precision-Footnote-1823138 -Node: Unexpected Results823247 -Node: POSIX Floating Point Problems825400 -Ref: POSIX Floating Point Problems-Footnote-1829225 -Node: Integer Programming829263 -Node: Floating-point Programming831016 -Ref: Floating-point Programming-Footnote-1837325 -Node: Floating-point Representation837589 -Node: Floating-point Context838754 -Ref: table-ieee-formats839596 -Node: Rounding Mode840980 -Ref: table-rounding-modes841459 -Ref: Rounding Mode-Footnote-1844463 -Node: Gawk and MPFR844644 -Node: Arbitrary Precision Floats845886 -Ref: Arbitrary Precision Floats-Footnote-1848315 -Node: Setting Precision848626 -Node: Setting Rounding Mode851359 -Ref: table-gawk-rounding-modes851763 -Node: Floating-point Constants852943 -Node: Changing Precision854367 -Ref: Changing Precision-Footnote-1855767 -Node: Exact Arithmetic855941 -Node: Arbitrary Precision Integers859049 -Ref: Arbitrary Precision Integers-Footnote-1862049 -Node: Dynamic Extensions862196 -Node: Extension Intro863582 -Node: Plugin License864790 -Node: Extension Design865464 -Node: Old Extension Problems866535 -Ref: Old Extension Problems-Footnote-1868045 -Node: Extension New Mechanism Goals868102 -Ref: Extension New Mechanism Goals-Footnote-1870814 -Node: Extension Other Design Decisions871000 -Node: Extension Mechanism Outline873112 -Ref: load-extension874137 -Ref: load-new-function875615 -Ref: call-new-function876596 -Node: Extension Future Growth878590 -Node: Extension API Description879408 -Node: Extension API Functions Introduction880736 -Node: General Data Types885436 -Ref: General Data Types-Footnote-1891038 -Node: Requesting Values891337 -Ref: table-value-types-returned892068 -Node: Constructor Functions893022 -Node: Registration Functions896018 -Node: Extension Functions896703 -Node: Exit Callback Functions898535 -Node: Extension Version String899778 -Node: Input Parsers900428 -Node: Output Wrappers909015 -Node: Two-way processors913431 -Node: Printing Messages915561 -Ref: Printing Messages-Footnote-1916638 -Node: Updating `ERRNO'916790 -Node: Accessing Parameters917529 -Node: Symbol Table Access918759 -Node: Symbol table by name919271 -Ref: Symbol table by name-Footnote-1921441 -Node: Symbol table by cookie921521 -Ref: Symbol table by cookie-Footnote-1925650 -Node: Cached values925713 -Ref: Cached values-Footnote-1929156 -Node: Array Manipulation929247 -Ref: Array Manipulation-Footnote-1930345 -Node: Array Data Types930384 -Ref: Array Data Types-Footnote-1933087 -Node: Array Functions933179 -Node: Flattening Arrays936945 -Node: Creating Arrays943778 -Node: Extension API Variables948573 -Node: Extension Versioning949209 -Node: Extension API Informational Variables951110 -Node: Extension API Boilerplate952196 -Node: Finding Extensions956027 -Node: Extension Example956574 -Node: Internal File Description957312 -Node: Internal File Ops961000 -Ref: Internal File Ops-Footnote-1972447 -Node: Using Internal File Ops972587 -Ref: Using Internal File Ops-Footnote-1974940 -Node: Extension Samples975206 -Node: Extension Sample File Functions976649 -Node: Extension Sample Fnmatch985122 -Node: Extension Sample Fork986848 -Node: Extension Sample Ord988062 -Node: Extension Sample Readdir988838 -Node: Extension Sample Revout990342 -Node: Extension Sample Rev2way990935 -Node: Extension Sample Read write array991625 -Node: Extension Sample Readfile993508 -Node: Extension Sample API Tests994263 -Node: Extension Sample Time994788 -Node: gawkextlib996095 -Node: Language History998476 -Node: V7/SVR3.1999998 -Node: SVR41002319 -Node: POSIX1003761 -Node: BTL1004769 -Node: POSIX/GNU1005503 -Node: Common Extensions1011038 -Node: Ranges and Locales1012145 -Ref: Ranges and Locales-Footnote-11016763 -Ref: Ranges and Locales-Footnote-21016790 -Ref: Ranges and Locales-Footnote-31017050 -Node: Contributors1017271 -Node: Installation1021567 -Node: Gawk Distribution1022461 -Node: Getting1022945 -Node: Extracting1023771 -Node: Distribution contents1025463 -Node: Unix Installation1030685 -Node: Quick Installation1031302 -Node: Additional Configuration Options1033264 -Node: Configuration Philosophy1034741 -Node: Non-Unix Installation1037083 -Node: PC Installation1037541 -Node: PC Binary Installation1038840 -Node: PC Compiling1040688 -Node: PC Testing1043632 -Node: PC Using1044808 -Node: Cygwin1048993 -Node: MSYS1049993 -Node: VMS Installation1050507 -Node: VMS Compilation1051110 -Ref: VMS Compilation-Footnote-11052117 -Node: VMS Installation Details1052175 -Node: VMS Running1053810 -Node: VMS Old Gawk1055417 -Node: Bugs1055891 -Node: Other Versions1059743 -Node: Notes1065058 -Node: Compatibility Mode1065717 -Node: Additions1066500 -Node: Accessing The Source1067427 -Node: Adding Code1069030 -Node: New Ports1075072 -Node: Derived Files1079207 -Ref: Derived Files-Footnote-11084515 -Ref: Derived Files-Footnote-21084549 -Ref: Derived Files-Footnote-31085149 -Node: Future Extensions1085247 -Node: Implementation Limitations1085828 -Node: Basic Concepts1087055 -Node: Basic High Level1087736 -Ref: figure-general-flow1088007 -Ref: figure-process-flow1088606 -Ref: Basic High Level-Footnote-11091835 -Node: Basic Data Typing1092020 -Node: Glossary1095375 -Node: Copying1120686 -Node: GNU Free Documentation License1158243 -Node: Index1183380 +Node: Foreword40217 +Node: Preface44562 +Ref: Preface-Footnote-147615 +Ref: Preface-Footnote-247721 +Node: History47953 +Node: Names50344 +Ref: Names-Footnote-151821 +Node: This Manual51893 +Ref: This Manual-Footnote-157799 +Node: Conventions57899 +Node: Manual History60033 +Ref: Manual History-Footnote-163303 +Ref: Manual History-Footnote-263344 +Node: How To Contribute63418 +Node: Acknowledgments64562 +Node: Getting Started69058 +Node: Running gawk71437 +Node: One-shot72623 +Node: Read Terminal73848 +Ref: Read Terminal-Footnote-175498 +Ref: Read Terminal-Footnote-275774 +Node: Long75945 +Node: Executable Scripts77321 +Ref: Executable Scripts-Footnote-179190 +Ref: Executable Scripts-Footnote-279292 +Node: Comments79839 +Node: Quoting82306 +Node: DOS Quoting86929 +Node: Sample Data Files87604 +Node: Very Simple90636 +Node: Two Rules95235 +Node: More Complex97382 +Ref: More Complex-Footnote-1100312 +Node: Statements/Lines100397 +Ref: Statements/Lines-Footnote-1104859 +Node: Other Features105124 +Node: When106052 +Node: Invoking Gawk108199 +Node: Command Line109660 +Node: Options110443 +Ref: Options-Footnote-1125841 +Node: Other Arguments125866 +Node: Naming Standard Input128524 +Node: Environment Variables129618 +Node: AWKPATH Variable130176 +Ref: AWKPATH Variable-Footnote-1132934 +Node: AWKLIBPATH Variable133194 +Node: Other Environment Variables133791 +Node: Exit Status136286 +Node: Include Files136961 +Node: Loading Shared Libraries140530 +Node: Obsolete141755 +Node: Undocumented142452 +Node: Regexp142695 +Node: Regexp Usage144084 +Node: Escape Sequences146110 +Node: Regexp Operators151873 +Ref: Regexp Operators-Footnote-1159253 +Ref: Regexp Operators-Footnote-2159400 +Node: Bracket Expressions159498 +Ref: table-char-classes161388 +Node: GNU Regexp Operators163911 +Node: Case-sensitivity167634 +Ref: Case-sensitivity-Footnote-1170602 +Ref: Case-sensitivity-Footnote-2170837 +Node: Leftmost Longest170945 +Node: Computed Regexps172146 +Node: Reading Files175556 +Node: Records177559 +Ref: Records-Footnote-1186483 +Node: Fields186520 +Ref: Fields-Footnote-1189553 +Node: Nonconstant Fields189639 +Node: Changing Fields191841 +Node: Field Separators197822 +Node: Default Field Splitting200451 +Node: Regexp Field Splitting201568 +Node: Single Character Fields204910 +Node: Command Line Field Separator205969 +Node: Field Splitting Summary209410 +Ref: Field Splitting Summary-Footnote-1212602 +Node: Constant Size212703 +Node: Splitting By Content217287 +Ref: Splitting By Content-Footnote-1221013 +Node: Multiple Line221053 +Ref: Multiple Line-Footnote-1226900 +Node: Getline227079 +Node: Plain Getline229295 +Node: Getline/Variable231384 +Node: Getline/File232525 +Node: Getline/Variable/File233847 +Ref: Getline/Variable/File-Footnote-1235446 +Node: Getline/Pipe235533 +Node: Getline/Variable/Pipe238093 +Node: Getline/Coprocess239200 +Node: Getline/Variable/Coprocess240443 +Node: Getline Notes241157 +Node: Getline Summary243944 +Ref: table-getline-variants244352 +Node: Read Timeout245210 +Ref: Read Timeout-Footnote-1248955 +Node: Command line directories249012 +Node: Printing249642 +Node: Print251273 +Node: Print Examples252610 +Node: Output Separators255394 +Node: OFMT257154 +Node: Printf258512 +Node: Basic Printf259418 +Node: Control Letters260957 +Node: Format Modifiers264769 +Node: Printf Examples270778 +Node: Redirection273493 +Node: Special Files280477 +Node: Special FD281010 +Ref: Special FD-Footnote-1284635 +Node: Special Network284709 +Node: Special Caveats285559 +Node: Close Files And Pipes286355 +Ref: Close Files And Pipes-Footnote-1293378 +Ref: Close Files And Pipes-Footnote-2293526 +Node: Expressions293676 +Node: Values294808 +Node: Constants295484 +Node: Scalar Constants296164 +Ref: Scalar Constants-Footnote-1297023 +Node: Nondecimal-numbers297205 +Node: Regexp Constants300264 +Node: Using Constant Regexps300739 +Node: Variables303794 +Node: Using Variables304449 +Node: Assignment Options306173 +Node: Conversion308045 +Ref: table-locale-affects313421 +Ref: Conversion-Footnote-1314045 +Node: All Operators314154 +Node: Arithmetic Ops314784 +Node: Concatenation317289 +Ref: Concatenation-Footnote-1320082 +Node: Assignment Ops320202 +Ref: table-assign-ops325190 +Node: Increment Ops326598 +Node: Truth Values and Conditions330068 +Node: Truth Values331151 +Node: Typing and Comparison332200 +Node: Variable Typing332989 +Ref: Variable Typing-Footnote-1336886 +Node: Comparison Operators337008 +Ref: table-relational-ops337418 +Node: POSIX String Comparison340967 +Ref: POSIX String Comparison-Footnote-1341923 +Node: Boolean Ops342061 +Ref: Boolean Ops-Footnote-1346139 +Node: Conditional Exp346230 +Node: Function Calls347962 +Node: Precedence351556 +Node: Locales355225 +Node: Patterns and Actions356314 +Node: Pattern Overview357368 +Node: Regexp Patterns359037 +Node: Expression Patterns359580 +Node: Ranges363265 +Node: BEGIN/END366231 +Node: Using BEGIN/END366993 +Ref: Using BEGIN/END-Footnote-1369724 +Node: I/O And BEGIN/END369830 +Node: BEGINFILE/ENDFILE372112 +Node: Empty375016 +Node: Using Shell Variables375332 +Node: Action Overview377617 +Node: Statements379974 +Node: If Statement381828 +Node: While Statement383327 +Node: Do Statement385371 +Node: For Statement386527 +Node: Switch Statement389679 +Node: Break Statement391776 +Node: Continue Statement393766 +Node: Next Statement395559 +Node: Nextfile Statement397949 +Node: Exit Statement400590 +Node: Built-in Variables403006 +Node: User-modified404101 +Ref: User-modified-Footnote-1412456 +Node: Auto-set412518 +Ref: Auto-set-Footnote-1424869 +Ref: Auto-set-Footnote-2425074 +Node: ARGC and ARGV425130 +Node: Arrays428981 +Node: Array Basics430486 +Node: Array Intro431312 +Node: Reference to Elements435630 +Node: Assigning Elements437900 +Node: Array Example438391 +Node: Scanning an Array440123 +Node: Controlling Scanning442437 +Ref: Controlling Scanning-Footnote-1447370 +Node: Delete447686 +Ref: Delete-Footnote-1450451 +Node: Numeric Array Subscripts450508 +Node: Uninitialized Subscripts452691 +Node: Multi-dimensional454319 +Node: Multi-scanning457413 +Node: Arrays of Arrays459004 +Node: Functions463649 +Node: Built-in464468 +Node: Calling Built-in465546 +Node: Numeric Functions467534 +Ref: Numeric Functions-Footnote-1471366 +Ref: Numeric Functions-Footnote-2471723 +Ref: Numeric Functions-Footnote-3471771 +Node: String Functions472040 +Ref: String Functions-Footnote-1495537 +Ref: String Functions-Footnote-2495666 +Ref: String Functions-Footnote-3495914 +Node: Gory Details496001 +Ref: table-sub-escapes497680 +Ref: table-sub-posix-92499034 +Ref: table-sub-proposed500385 +Ref: table-posix-sub501739 +Ref: table-gensub-escapes503284 +Ref: Gory Details-Footnote-1504491 +Ref: Gory Details-Footnote-2504542 +Node: I/O Functions504693 +Ref: I/O Functions-Footnote-1511717 +Node: Time Functions511864 +Ref: Time Functions-Footnote-1522756 +Ref: Time Functions-Footnote-2522824 +Ref: Time Functions-Footnote-3522982 +Ref: Time Functions-Footnote-4523093 +Ref: Time Functions-Footnote-5523205 +Ref: Time Functions-Footnote-6523432 +Node: Bitwise Functions523698 +Ref: table-bitwise-ops524256 +Ref: Bitwise Functions-Footnote-1528477 +Node: Type Functions528661 +Node: I18N Functions529131 +Node: User-defined530758 +Node: Definition Syntax531562 +Ref: Definition Syntax-Footnote-1536472 +Node: Function Example536541 +Node: Function Caveats539135 +Node: Calling A Function539556 +Node: Variable Scope540671 +Node: Pass By Value/Reference543634 +Node: Return Statement547074 +Node: Dynamic Typing550055 +Node: Indirect Calls550790 +Node: Library Functions560475 +Ref: Library Functions-Footnote-1563474 +Node: Library Names563645 +Ref: Library Names-Footnote-1567116 +Ref: Library Names-Footnote-2567336 +Node: General Functions567422 +Node: Strtonum Function568375 +Node: Assert Function571305 +Node: Round Function574631 +Node: Cliff Random Function576174 +Node: Ordinal Functions577190 +Ref: Ordinal Functions-Footnote-1580260 +Ref: Ordinal Functions-Footnote-2580512 +Node: Join Function580721 +Ref: Join Function-Footnote-1582492 +Node: Getlocaltime Function582692 +Node: Data File Management586407 +Node: Filetrans Function587039 +Node: Rewind Function591178 +Node: File Checking592565 +Node: Empty Files593659 +Node: Ignoring Assigns595889 +Node: Getopt Function597442 +Ref: Getopt Function-Footnote-1608746 +Node: Passwd Functions608949 +Ref: Passwd Functions-Footnote-1617924 +Node: Group Functions618012 +Node: Walking Arrays626096 +Node: Sample Programs627665 +Node: Running Examples628342 +Node: Clones629070 +Node: Cut Program630294 +Node: Egrep Program640139 +Ref: Egrep Program-Footnote-1647912 +Node: Id Program648022 +Node: Split Program651638 +Ref: Split Program-Footnote-1655157 +Node: Tee Program655285 +Node: Uniq Program658088 +Node: Wc Program665517 +Ref: Wc Program-Footnote-1669783 +Ref: Wc Program-Footnote-2669983 +Node: Miscellaneous Programs670075 +Node: Dupword Program671263 +Node: Alarm Program673294 +Node: Translate Program678043 +Ref: Translate Program-Footnote-1682430 +Ref: Translate Program-Footnote-2682658 +Node: Labels Program682792 +Ref: Labels Program-Footnote-1686163 +Node: Word Sorting686247 +Node: History Sorting690131 +Node: Extract Program691970 +Ref: Extract Program-Footnote-1699453 +Node: Simple Sed699581 +Node: Igawk Program702643 +Ref: Igawk Program-Footnote-1717800 +Ref: Igawk Program-Footnote-2718001 +Node: Anagram Program718139 +Node: Signature Program721207 +Node: Internationalization722307 +Node: I18N and L10N723739 +Node: Explaining gettext724425 +Ref: Explaining gettext-Footnote-1729491 +Ref: Explaining gettext-Footnote-2729675 +Node: Programmer i18n729840 +Node: Translator i18n734040 +Node: String Extraction734833 +Ref: String Extraction-Footnote-1735794 +Node: Printf Ordering735880 +Ref: Printf Ordering-Footnote-1738664 +Node: I18N Portability738728 +Ref: I18N Portability-Footnote-1741177 +Node: I18N Example741240 +Ref: I18N Example-Footnote-1743875 +Node: Gawk I18N743947 +Node: Advanced Features744564 +Node: Nondecimal Data746068 +Node: Array Sorting747651 +Node: Controlling Array Traversal748348 +Node: Array Sorting Functions756586 +Ref: Array Sorting Functions-Footnote-1760260 +Ref: Array Sorting Functions-Footnote-2760353 +Node: Two-way I/O760547 +Ref: Two-way I/O-Footnote-1765979 +Node: TCP/IP Networking766049 +Node: Profiling768893 +Node: Debugger776347 +Node: Debugging777315 +Node: Debugging Concepts777748 +Node: Debugging Terms779604 +Node: Awk Debugging782201 +Node: Sample Debugging Session783093 +Node: Debugger Invocation783613 +Node: Finding The Bug784942 +Node: List of Debugger Commands791430 +Node: Breakpoint Control792764 +Node: Debugger Execution Control796428 +Node: Viewing And Changing Data799788 +Node: Execution Stack803144 +Node: Debugger Info804611 +Node: Miscellaneous Debugger Commands808592 +Node: Readline Support814037 +Node: Limitations814868 +Node: Arbitrary Precision Arithmetic817120 +Ref: Arbitrary Precision Arithmetic-Footnote-1818762 +Node: General Arithmetic818910 +Node: Floating Point Issues820630 +Node: String Conversion Precision821511 +Ref: String Conversion Precision-Footnote-1823217 +Node: Unexpected Results823326 +Node: POSIX Floating Point Problems825479 +Ref: POSIX Floating Point Problems-Footnote-1829304 +Node: Integer Programming829342 +Node: Floating-point Programming831095 +Ref: Floating-point Programming-Footnote-1837404 +Node: Floating-point Representation837668 +Node: Floating-point Context838833 +Ref: table-ieee-formats839675 +Node: Rounding Mode841059 +Ref: table-rounding-modes841538 +Ref: Rounding Mode-Footnote-1844542 +Node: Gawk and MPFR844723 +Node: Arbitrary Precision Floats845965 +Ref: Arbitrary Precision Floats-Footnote-1848394 +Node: Setting Precision848705 +Node: Setting Rounding Mode851438 +Ref: table-gawk-rounding-modes851842 +Node: Floating-point Constants853022 +Node: Changing Precision854446 +Ref: Changing Precision-Footnote-1855846 +Node: Exact Arithmetic856020 +Node: Arbitrary Precision Integers859128 +Ref: Arbitrary Precision Integers-Footnote-1862128 +Node: Dynamic Extensions862275 +Node: Extension Intro863661 +Node: Plugin License864869 +Node: Extension Design865543 +Node: Old Extension Problems866614 +Ref: Old Extension Problems-Footnote-1868124 +Node: Extension New Mechanism Goals868181 +Ref: Extension New Mechanism Goals-Footnote-1870893 +Node: Extension Other Design Decisions871079 +Node: Extension Mechanism Outline873191 +Ref: load-extension874216 +Ref: load-new-function875694 +Ref: call-new-function876675 +Node: Extension Future Growth878669 +Node: Extension API Description879487 +Node: Extension API Functions Introduction880815 +Node: General Data Types885515 +Ref: General Data Types-Footnote-1891117 +Node: Requesting Values891416 +Ref: table-value-types-returned892147 +Node: Constructor Functions893101 +Node: Registration Functions896097 +Node: Extension Functions896782 +Node: Exit Callback Functions898614 +Node: Extension Version String899857 +Node: Input Parsers900507 +Node: Output Wrappers909094 +Node: Two-way processors913510 +Node: Printing Messages915640 +Ref: Printing Messages-Footnote-1916717 +Node: Updating `ERRNO'916869 +Node: Accessing Parameters917608 +Node: Symbol Table Access918838 +Node: Symbol table by name919350 +Ref: Symbol table by name-Footnote-1921520 +Node: Symbol table by cookie921600 +Ref: Symbol table by cookie-Footnote-1925729 +Node: Cached values925792 +Ref: Cached values-Footnote-1929235 +Node: Array Manipulation929326 +Ref: Array Manipulation-Footnote-1930424 +Node: Array Data Types930463 +Ref: Array Data Types-Footnote-1933166 +Node: Array Functions933258 +Node: Flattening Arrays937024 +Node: Creating Arrays943857 +Node: Extension API Variables948652 +Node: Extension Versioning949288 +Node: Extension API Informational Variables951189 +Node: Extension API Boilerplate952275 +Node: Finding Extensions956106 +Node: Extension Example956653 +Node: Internal File Description957391 +Node: Internal File Ops961079 +Ref: Internal File Ops-Footnote-1972526 +Node: Using Internal File Ops972666 +Ref: Using Internal File Ops-Footnote-1975019 +Node: Extension Samples975285 +Node: Extension Sample File Functions976728 +Node: Extension Sample Fnmatch985201 +Node: Extension Sample Fork986927 +Node: Extension Sample Ord988141 +Node: Extension Sample Readdir988917 +Node: Extension Sample Revout990421 +Node: Extension Sample Rev2way991014 +Node: Extension Sample Read write array991704 +Node: Extension Sample Readfile993587 +Node: Extension Sample API Tests994342 +Node: Extension Sample Time994867 +Node: gawkextlib996174 +Node: Language History998555 +Node: V7/SVR3.11000077 +Node: SVR41002398 +Node: POSIX1003840 +Node: BTL1004848 +Node: POSIX/GNU1005582 +Node: Common Extensions1011117 +Node: Ranges and Locales1012224 +Ref: Ranges and Locales-Footnote-11016842 +Ref: Ranges and Locales-Footnote-21016869 +Ref: Ranges and Locales-Footnote-31017129 +Node: Contributors1017350 +Node: Installation1021646 +Node: Gawk Distribution1022540 +Node: Getting1023024 +Node: Extracting1023850 +Node: Distribution contents1025542 +Node: Unix Installation1030764 +Node: Quick Installation1031381 +Node: Additional Configuration Options1033343 +Node: Configuration Philosophy1034820 +Node: Non-Unix Installation1037162 +Node: PC Installation1037620 +Node: PC Binary Installation1038919 +Node: PC Compiling1040767 +Node: PC Testing1043711 +Node: PC Using1044887 +Node: Cygwin1049072 +Node: MSYS1050072 +Node: VMS Installation1050586 +Node: VMS Compilation1051189 +Ref: VMS Compilation-Footnote-11052196 +Node: VMS Installation Details1052254 +Node: VMS Running1053889 +Node: VMS Old Gawk1055496 +Node: Bugs1055970 +Node: Other Versions1059822 +Node: Notes1065137 +Node: Compatibility Mode1065867 +Node: Additions1066650 +Node: Accessing The Source1067577 +Node: Adding Code1069180 +Node: New Ports1075222 +Node: Derived Files1079357 +Ref: Derived Files-Footnote-11084665 +Ref: Derived Files-Footnote-21084699 +Ref: Derived Files-Footnote-31085299 +Node: Future Extensions1085397 +Node: Implementation Limitations1085978 +Node: Old Extension Mechansim1087237 +Node: Basic Concepts1089004 +Node: Basic High Level1089685 +Ref: figure-general-flow1089956 +Ref: figure-process-flow1090555 +Ref: Basic High Level-Footnote-11093784 +Node: Basic Data Typing1093969 +Node: Glossary1097324 +Node: Copying1122635 +Node: GNU Free Documentation License1160192 +Node: Index1185329 End Tag Table |