diff options
-rw-r--r-- | doc/ChangeLog | 4 | ||||
-rw-r--r-- | doc/gawk.info | 1204 | ||||
-rw-r--r-- | doc/gawk.texi | 10 | ||||
-rw-r--r-- | doc/gawktexi.in | 10 |
4 files changed, 622 insertions, 606 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 04fff857..a4a4b275 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2021-04-04 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in: Update menues. + 2021-03-31 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in (Regexp Operator Details): Added a sidebar on diff --git a/doc/gawk.info b/doc/gawk.info index 4f0eef36..87f7901c 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -462,6 +462,9 @@ in (a) below. A copy of the license is included in the section entitled * Tee Program:: The 'tee' utility. * Uniq Program:: The 'uniq' utility. * Wc Program:: The 'wc' utility. +* Bytes vs. Characters:: Modern character sets. +* Using extensions:: A brief intro to extensions. +* wc program:: Code for 'wc.awk'. * Miscellaneous Programs:: Some interesting 'awk' programs. * Dupword Program:: Finding duplicated words in a @@ -495,7 +498,8 @@ in (a) below. A copy of the license is included in the section entitled * TCP/IP Networking:: Using 'gawk' for network programming. * Profiling:: Profiling your 'awk' programs. -* Extension Philosophy:: What should be built-in and what should not. +* Extension Philosophy:: What should be built-in and what + should not. * Advanced Features Summary:: Summary of advanced features. * I18N and L10N:: Internationalization and Localization. * Explaining gettext:: How GNU 'gettext' works. @@ -563,8 +567,8 @@ in (a) below. A copy of the license is included in the section entitled * Extension API Functions Introduction:: Introduction to the API functions. * General Data Types:: The data types. * Memory Allocation Functions:: Functions for allocating memory. -* API Ownership of MPFR and GMP Values:: Managing MPFR and GMP Values. * Constructor Functions:: Functions for creating values. +* API Ownership of MPFR and GMP Values:: Managing MPFR and GMP Values. * Registration Functions:: Functions to register things with 'gawk'. * Extension Functions:: Registering extension functions. @@ -19104,7 +19108,7 @@ in one or more input files. * Bytes vs. Characters:: Modern character sets. * Using extensions:: A brief intro to extensions. -* wc program:: Code for 'wc.awk'. +* wc program:: Code for 'wc.awk'. File: gawk.info, Node: Bytes vs. Characters, Next: Using extensions, Up: Wc Program @@ -38063,603 +38067,603 @@ Index Tag Table: Node: Top1200 -Node: Foreword344559 -Node: Foreword449001 -Node: Preface50533 -Ref: Preface-Footnote-153392 -Ref: Preface-Footnote-253501 -Ref: Preface-Footnote-353735 -Node: History53877 -Node: Names56229 -Ref: Names-Footnote-157333 -Node: This Manual57480 -Ref: This Manual-Footnote-164119 -Node: Conventions64219 -Node: Manual History66588 -Ref: Manual History-Footnote-169585 -Ref: Manual History-Footnote-269626 -Node: How To Contribute69700 -Node: Acknowledgments70626 -Node: Getting Started75563 -Node: Running gawk78002 -Node: One-shot79192 -Node: Read Terminal80455 -Node: Long82448 -Node: Executable Scripts83961 -Ref: Executable Scripts-Footnote-186594 -Node: Comments86697 -Node: Quoting89181 -Node: DOS Quoting94707 -Node: Sample Data Files96763 -Node: Very Simple99358 -Node: Two Rules105460 -Node: More Complex107345 -Node: Statements/Lines109677 -Ref: Statements/Lines-Footnote-1114161 -Node: Other Features114426 -Node: When115362 -Ref: When-Footnote-1117116 -Node: Intro Summary117181 -Node: Invoking Gawk118065 -Node: Command Line119579 -Node: Options120377 -Ref: Options-Footnote-1138291 -Ref: Options-Footnote-2138522 -Node: Other Arguments138547 -Node: Naming Standard Input142558 -Node: Environment Variables143768 -Node: AWKPATH Variable144326 -Ref: AWKPATH Variable-Footnote-1147738 -Ref: AWKPATH Variable-Footnote-2147772 -Node: AWKLIBPATH Variable148143 -Ref: AWKLIBPATH Variable-Footnote-1149840 -Node: Other Environment Variables150215 -Node: Exit Status154036 -Node: Include Files154713 -Node: Loading Shared Libraries158403 -Node: Obsolete159831 -Node: Undocumented160523 -Node: Invoking Summary160820 -Node: Regexp163661 -Node: Regexp Usage165115 -Node: Escape Sequences167152 -Node: Regexp Operators173393 -Node: Regexp Operator Details173878 -Ref: Regexp Operator Details-Footnote-1181242 -Node: Interval Expressions181389 -Ref: Interval Expressions-Footnote-1182810 -Node: Bracket Expressions182908 -Ref: table-char-classes185384 -Node: Leftmost Longest188710 -Node: Computed Regexps190013 -Node: GNU Regexp Operators193440 -Node: Case-sensitivity197177 -Ref: Case-sensitivity-Footnote-1200043 -Ref: Case-sensitivity-Footnote-2200278 -Node: Regexp Summary200386 -Node: Reading Files201852 -Node: Records204121 -Node: awk split records205196 -Node: gawk split records209896 -Ref: gawk split records-Footnote-1214970 -Node: Fields215007 -Node: Nonconstant Fields217748 -Ref: Nonconstant Fields-Footnote-1219984 -Node: Changing Fields220188 -Node: Field Separators226219 -Node: Default Field Splitting228917 -Node: Regexp Field Splitting230035 -Node: Single Character Fields233712 -Node: Command Line Field Separator234772 -Node: Full Line Fields237990 -Ref: Full Line Fields-Footnote-1239512 -Ref: Full Line Fields-Footnote-2239558 -Node: Field Splitting Summary239659 -Node: Constant Size241733 -Node: Fixed width data242465 -Node: Skipping intervening245932 -Node: Allowing trailing data246730 -Node: Fields with fixed data247767 -Node: Splitting By Content249285 -Ref: Splitting By Content-Footnote-1253068 -Node: More CSV253231 -Node: Testing field creation254823 -Node: Multiple Line256448 -Node: Getline262725 -Node: Plain Getline265194 -Node: Getline/Variable267767 -Node: Getline/File268918 -Node: Getline/Variable/File270306 -Ref: Getline/Variable/File-Footnote-1271911 -Node: Getline/Pipe271999 -Node: Getline/Variable/Pipe274703 -Node: Getline/Coprocess275838 -Node: Getline/Variable/Coprocess277105 -Node: Getline Notes277847 -Node: Getline Summary280644 -Ref: table-getline-variants281068 -Node: Read Timeout281816 -Ref: Read Timeout-Footnote-1285722 -Node: Retrying Input285780 -Node: Command-line directories286979 -Node: Input Summary287885 -Node: Input Exercises291057 -Node: Printing291491 -Node: Print293325 -Node: Print Examples294782 -Node: Output Separators297562 -Node: OFMT299579 -Node: Printf300935 -Node: Basic Printf301720 -Node: Control Letters303294 -Node: Format Modifiers308458 -Node: Printf Examples314473 -Node: Redirection316959 -Node: Special FD323800 -Ref: Special FD-Footnote-1326968 -Node: Special Files327042 -Node: Other Inherited Files327659 -Node: Special Network328660 -Node: Special Caveats329520 -Node: Close Files And Pipes330469 -Ref: table-close-pipe-return-values337376 -Ref: Close Files And Pipes-Footnote-1338189 -Ref: Close Files And Pipes-Footnote-2338337 -Node: Nonfatal338489 -Node: Output Summary340827 -Node: Output Exercises342049 -Node: Expressions342728 -Node: Values343916 -Node: Constants344594 -Node: Scalar Constants345285 -Ref: Scalar Constants-Footnote-1347795 -Node: Nondecimal-numbers348045 -Node: Regexp Constants351046 -Node: Using Constant Regexps351572 -Node: Standard Regexp Constants352194 -Node: Strong Regexp Constants355382 -Node: Variables358394 -Node: Using Variables359051 -Node: Assignment Options360961 -Node: Conversion363432 -Node: Strings And Numbers363956 -Ref: Strings And Numbers-Footnote-1367019 -Node: Locale influences conversions367128 -Ref: table-locale-affects369886 -Node: All Operators370504 -Node: Arithmetic Ops371133 -Node: Concatenation373849 -Ref: Concatenation-Footnote-1376696 -Node: Assignment Ops376803 -Ref: table-assign-ops381794 -Node: Increment Ops383107 -Node: Truth Values and Conditions386567 -Node: Truth Values387641 -Node: Typing and Comparison388689 -Node: Variable Typing389509 -Ref: Variable Typing-Footnote-1395972 -Ref: Variable Typing-Footnote-2396044 -Node: Comparison Operators396121 -Ref: table-relational-ops396540 -Node: POSIX String Comparison400035 -Ref: POSIX String Comparison-Footnote-1401730 -Ref: POSIX String Comparison-Footnote-2401869 -Node: Boolean Ops401953 -Ref: Boolean Ops-Footnote-1406435 -Node: Conditional Exp406527 -Node: Function Calls408263 -Node: Precedence412140 -Node: Locales415799 -Node: Expressions Summary417431 -Node: Patterns and Actions420004 -Node: Pattern Overview421124 -Node: Regexp Patterns422801 -Node: Expression Patterns423343 -Node: Ranges427124 -Node: BEGIN/END430232 -Node: Using BEGIN/END430993 -Ref: Using BEGIN/END-Footnote-1433747 -Node: I/O And BEGIN/END433853 -Node: BEGINFILE/ENDFILE436166 -Node: Empty439397 -Node: Using Shell Variables439714 -Node: Action Overview441988 -Node: Statements444313 -Node: If Statement446161 -Node: While Statement447656 -Node: Do Statement449684 -Node: For Statement450832 -Node: Switch Statement454003 -Node: Break Statement456444 -Node: Continue Statement458536 -Node: Next Statement460363 -Node: Nextfile Statement462746 -Node: Exit Statement465435 -Node: Built-in Variables467838 -Node: User-modified468971 -Node: Auto-set476738 -Ref: Auto-set-Footnote-1493545 -Ref: Auto-set-Footnote-2493751 -Node: ARGC and ARGV493807 -Node: Pattern Action Summary498020 -Node: Arrays500450 -Node: Array Basics501779 -Node: Array Intro502623 -Ref: figure-array-elements504598 -Ref: Array Intro-Footnote-1507302 -Node: Reference to Elements507430 -Node: Assigning Elements509894 -Node: Array Example510385 -Node: Scanning an Array512144 -Node: Controlling Scanning515166 -Ref: Controlling Scanning-Footnote-1521622 -Node: Numeric Array Subscripts521938 -Node: Uninitialized Subscripts524122 -Node: Delete525741 -Ref: Delete-Footnote-1528493 -Node: Multidimensional528550 -Node: Multiscanning531645 -Node: Arrays of Arrays533236 -Node: Arrays Summary538004 -Node: Functions540097 -Node: Built-in541135 -Node: Calling Built-in542216 -Node: Numeric Functions544212 -Ref: Numeric Functions-Footnote-1548240 -Ref: Numeric Functions-Footnote-2548888 -Ref: Numeric Functions-Footnote-3548936 -Node: String Functions549208 -Ref: String Functions-Footnote-1573349 -Ref: String Functions-Footnote-2573477 -Ref: String Functions-Footnote-3573725 -Node: Gory Details573812 -Ref: table-sub-escapes575603 -Ref: table-sub-proposed577122 -Ref: table-posix-sub578485 -Ref: table-gensub-escapes580026 -Ref: Gory Details-Footnote-1580849 -Node: I/O Functions581003 -Ref: table-system-return-values587457 -Ref: I/O Functions-Footnote-1589537 -Ref: I/O Functions-Footnote-2589685 -Node: Time Functions589805 -Ref: Time Functions-Footnote-1600476 -Ref: Time Functions-Footnote-2600544 -Ref: Time Functions-Footnote-3600702 -Ref: Time Functions-Footnote-4600813 -Ref: Time Functions-Footnote-5600925 -Ref: Time Functions-Footnote-6601152 -Node: Bitwise Functions601418 -Ref: table-bitwise-ops602012 -Ref: Bitwise Functions-Footnote-1608075 -Ref: Bitwise Functions-Footnote-2608248 -Node: Type Functions608439 -Node: I18N Functions611302 -Node: User-defined612953 -Node: Definition Syntax613765 -Ref: Definition Syntax-Footnote-1619459 -Node: Function Example619530 -Ref: Function Example-Footnote-1622452 -Node: Function Calling622474 -Node: Calling A Function623062 -Node: Variable Scope624020 -Node: Pass By Value/Reference627014 -Node: Function Caveats629658 -Ref: Function Caveats-Footnote-1631705 -Node: Return Statement631825 -Node: Dynamic Typing634804 -Node: Indirect Calls635734 -Ref: Indirect Calls-Footnote-1645986 -Node: Functions Summary646114 -Node: Library Functions648819 -Ref: Library Functions-Footnote-1652426 -Ref: Library Functions-Footnote-2652569 -Node: Library Names652740 -Ref: Library Names-Footnote-1656407 -Ref: Library Names-Footnote-2656630 -Node: General Functions656716 -Node: Strtonum Function657819 -Node: Assert Function660841 -Node: Round Function664167 -Node: Cliff Random Function665707 -Node: Ordinal Functions666723 -Ref: Ordinal Functions-Footnote-1669786 -Ref: Ordinal Functions-Footnote-2670038 -Node: Join Function670248 -Ref: Join Function-Footnote-1672018 -Node: Getlocaltime Function672218 -Node: Readfile Function675960 -Node: Shell Quoting677937 -Node: Data File Management679338 -Node: Filetrans Function679970 -Node: Rewind Function684066 -Node: File Checking685975 -Ref: File Checking-Footnote-1687309 -Node: Empty Files687510 -Node: Ignoring Assigns689489 -Node: Getopt Function691039 -Ref: Getopt Function-Footnote-1706250 -Node: Passwd Functions706450 -Ref: Passwd Functions-Footnote-1715289 -Node: Group Functions715377 -Ref: Group Functions-Footnote-1723275 -Node: Walking Arrays723482 -Node: Library Functions Summary726490 -Node: Library Exercises727896 -Node: Sample Programs728361 -Node: Running Examples729131 -Node: Clones729859 -Node: Cut Program731083 -Node: Egrep Program741223 -Node: Id Program750224 -Node: Split Program760171 -Ref: Split Program-Footnote-1770061 -Node: Tee Program770234 -Node: Uniq Program773024 -Node: Wc Program780612 -Node: Bytes vs. Characters781009 -Node: Using extensions782557 -Node: wc program783311 -Node: Miscellaneous Programs788176 -Node: Dupword Program789389 -Node: Alarm Program791419 -Node: Translate Program796274 -Ref: Translate Program-Footnote-1800839 -Node: Labels Program801109 -Ref: Labels Program-Footnote-1804460 -Node: Word Sorting804544 -Node: History Sorting808616 -Node: Extract Program810841 -Node: Simple Sed818895 -Node: Igawk Program821969 -Ref: Igawk Program-Footnote-1836300 -Ref: Igawk Program-Footnote-2836502 -Ref: Igawk Program-Footnote-3836624 -Node: Anagram Program836739 -Node: Signature Program839801 -Node: Programs Summary841048 -Node: Programs Exercises842262 -Ref: Programs Exercises-Footnote-1846392 -Node: Advanced Features846478 -Node: Nondecimal Data848545 -Node: Array Sorting850136 -Node: Controlling Array Traversal850836 -Ref: Controlling Array Traversal-Footnote-1859204 -Node: Array Sorting Functions859322 -Ref: Array Sorting Functions-Footnote-1864413 -Node: Two-way I/O864609 -Ref: Two-way I/O-Footnote-1872330 -Ref: Two-way I/O-Footnote-2872517 -Node: TCP/IP Networking872599 -Node: Profiling875717 -Node: Extension Philosophy885026 -Node: Advanced Features Summary886505 -Node: Internationalization888520 -Node: I18N and L10N890000 -Node: Explaining gettext890687 -Ref: Explaining gettext-Footnote-1896579 -Ref: Explaining gettext-Footnote-2896764 -Node: Programmer i18n896929 -Ref: Programmer i18n-Footnote-1901878 -Node: Translator i18n901927 -Node: String Extraction902721 -Ref: String Extraction-Footnote-1903853 -Node: Printf Ordering903939 -Ref: Printf Ordering-Footnote-1906725 -Node: I18N Portability906789 -Ref: I18N Portability-Footnote-1909245 -Node: I18N Example909308 -Ref: I18N Example-Footnote-1912583 -Ref: I18N Example-Footnote-2912656 -Node: Gawk I18N912765 -Node: I18N Summary913414 -Node: Debugger914755 -Node: Debugging915755 -Node: Debugging Concepts916196 -Node: Debugging Terms918005 -Node: Awk Debugging920580 -Ref: Awk Debugging-Footnote-1921525 -Node: Sample Debugging Session921657 -Node: Debugger Invocation922191 -Node: Finding The Bug923577 -Node: List of Debugger Commands930051 -Node: Breakpoint Control931384 -Node: Debugger Execution Control935078 -Node: Viewing And Changing Data938440 -Node: Execution Stack941981 -Node: Debugger Info943618 -Node: Miscellaneous Debugger Commands947689 -Node: Readline Support952751 -Node: Limitations953647 -Node: Debugging Summary956201 -Node: Namespaces957480 -Node: Global Namespace958591 -Node: Qualified Names959989 -Node: Default Namespace960988 -Node: Changing The Namespace961729 -Node: Naming Rules963343 -Node: Internal Name Management965191 -Node: Namespace Example966233 -Node: Namespace And Features968795 -Node: Namespace Summary970230 -Node: Arbitrary Precision Arithmetic971707 -Node: Computer Arithmetic973194 -Ref: table-numeric-ranges976960 -Ref: table-floating-point-ranges977453 -Ref: Computer Arithmetic-Footnote-1978111 -Node: Math Definitions978168 -Ref: table-ieee-formats981484 -Ref: Math Definitions-Footnote-1982087 -Node: MPFR features982192 -Node: FP Math Caution983910 -Ref: FP Math Caution-Footnote-1984982 -Node: Inexactness of computations985351 -Node: Inexact representation986311 -Node: Comparing FP Values987671 -Node: Errors accumulate988912 -Node: Getting Accuracy990345 -Node: Try To Round993055 -Node: Setting precision993954 -Ref: table-predefined-precision-strings994651 -Node: Setting the rounding mode996481 -Ref: table-gawk-rounding-modes996855 -Ref: Setting the rounding mode-Footnote-11000786 -Node: Arbitrary Precision Integers1000965 -Ref: Arbitrary Precision Integers-Footnote-11004140 -Node: Checking for MPFR1004289 -Node: POSIX Floating Point Problems1005763 -Ref: POSIX Floating Point Problems-Footnote-11010048 -Node: Floating point summary1010086 -Node: Dynamic Extensions1012276 -Node: Extension Intro1013829 -Node: Plugin License1015095 -Node: Extension Mechanism Outline1015892 -Ref: figure-load-extension1016331 -Ref: figure-register-new-function1017896 -Ref: figure-call-new-function1018988 -Node: Extension API Description1021050 -Node: Extension API Functions Introduction1022763 -Ref: table-api-std-headers1024599 -Node: General Data Types1028848 -Ref: General Data Types-Footnote-11037478 -Node: Memory Allocation Functions1037777 -Ref: Memory Allocation Functions-Footnote-11042278 -Node: Constructor Functions1042377 -Node: API Ownership of MPFR and GMP Values1045843 -Node: Registration Functions1047156 -Node: Extension Functions1047856 -Node: Exit Callback Functions1053178 -Node: Extension Version String1054428 -Node: Input Parsers1055091 -Node: Output Wrappers1067812 -Node: Two-way processors1072324 -Node: Printing Messages1074589 -Ref: Printing Messages-Footnote-11075760 -Node: Updating ERRNO1075913 -Node: Requesting Values1076652 -Ref: table-value-types-returned1077389 -Node: Accessing Parameters1078325 -Node: Symbol Table Access1079562 -Node: Symbol table by name1080074 -Ref: Symbol table by name-Footnote-11083098 -Node: Symbol table by cookie1083226 -Ref: Symbol table by cookie-Footnote-11087411 -Node: Cached values1087475 -Ref: Cached values-Footnote-11091011 -Node: Array Manipulation1091164 -Ref: Array Manipulation-Footnote-11092255 -Node: Array Data Types1092292 -Ref: Array Data Types-Footnote-11094950 -Node: Array Functions1095042 -Node: Flattening Arrays1099540 -Node: Creating Arrays1106516 -Node: Redirection API1111283 -Node: Extension API Variables1114116 -Node: Extension Versioning1114827 -Ref: gawk-api-version1115256 -Node: Extension GMP/MPFR Versioning1116987 -Node: Extension API Informational Variables1118615 -Node: Extension API Boilerplate1119688 -Node: Changes from API V11123662 -Node: Finding Extensions1125234 -Node: Extension Example1125793 -Node: Internal File Description1126591 -Node: Internal File Ops1130671 -Ref: Internal File Ops-Footnote-11142021 -Node: Using Internal File Ops1142161 -Ref: Using Internal File Ops-Footnote-11144544 -Node: Extension Samples1144818 -Node: Extension Sample File Functions1146347 -Node: Extension Sample Fnmatch1153996 -Node: Extension Sample Fork1155483 -Node: Extension Sample Inplace1156701 -Node: Extension Sample Ord1160327 -Node: Extension Sample Readdir1161163 -Ref: table-readdir-file-types1162052 -Node: Extension Sample Revout1163119 -Node: Extension Sample Rev2way1163708 -Node: Extension Sample Read write array1164448 -Node: Extension Sample Readfile1166390 -Node: Extension Sample Time1167485 -Node: Extension Sample API Tests1169237 -Node: gawkextlib1169729 -Node: Extension summary1172647 -Node: Extension Exercises1176349 -Node: Language History1177591 -Node: V7/SVR3.11179247 -Node: SVR41181399 -Node: POSIX1182833 -Node: BTL1184214 -Node: POSIX/GNU1184943 -Node: Feature History1190721 -Node: Common Extensions1207040 -Node: Ranges and Locales1208323 -Ref: Ranges and Locales-Footnote-11212939 -Ref: Ranges and Locales-Footnote-21212966 -Ref: Ranges and Locales-Footnote-31213201 -Node: Contributors1213424 -Node: History summary1219421 -Node: Installation1220801 -Node: Gawk Distribution1221745 -Node: Getting1222229 -Node: Extracting1223192 -Node: Distribution contents1224830 -Node: Unix Installation1231310 -Node: Quick Installation1231992 -Node: Shell Startup Files1234406 -Node: Additional Configuration Options1235495 -Node: Configuration Philosophy1237810 -Node: Non-Unix Installation1240179 -Node: PC Installation1240639 -Node: PC Binary Installation1241477 -Node: PC Compiling1241912 -Node: PC Using1243029 -Node: Cygwin1246582 -Node: MSYS1247806 -Node: VMS Installation1248408 -Node: VMS Compilation1249199 -Ref: VMS Compilation-Footnote-11250428 -Node: VMS Dynamic Extensions1250486 -Node: VMS Installation Details1252171 -Node: VMS Running1254424 -Node: VMS GNV1258703 -Node: VMS Old Gawk1259438 -Node: Bugs1259909 -Node: Bug address1260572 -Node: Usenet1263554 -Node: Maintainers1264558 -Node: Other Versions1265743 -Node: Installation summary1273608 -Node: Notes1274817 -Node: Compatibility Mode1275611 -Node: Additions1276393 -Node: Accessing The Source1277318 -Node: Adding Code1278755 -Node: New Ports1284974 -Node: Derived Files1289349 -Ref: Derived Files-Footnote-11295009 -Ref: Derived Files-Footnote-21295044 -Ref: Derived Files-Footnote-31295642 -Node: Future Extensions1295756 -Node: Implementation Limitations1296414 -Node: Extension Design1297624 -Node: Old Extension Problems1298768 -Ref: Old Extension Problems-Footnote-11300286 -Node: Extension New Mechanism Goals1300343 -Ref: Extension New Mechanism Goals-Footnote-11303707 -Node: Extension Other Design Decisions1303896 -Node: Extension Future Growth1306009 -Node: Notes summary1306615 -Node: Basic Concepts1307773 -Node: Basic High Level1308454 -Ref: figure-general-flow1308736 -Ref: figure-process-flow1309421 -Ref: Basic High Level-Footnote-11312722 -Node: Basic Data Typing1312907 -Node: Glossary1316235 -Node: Copying1348120 -Node: GNU Free Documentation License1385663 -Node: Index1410783 +Node: Foreword344780 +Node: Foreword449222 +Node: Preface50754 +Ref: Preface-Footnote-153613 +Ref: Preface-Footnote-253722 +Ref: Preface-Footnote-353956 +Node: History54098 +Node: Names56450 +Ref: Names-Footnote-157554 +Node: This Manual57701 +Ref: This Manual-Footnote-164340 +Node: Conventions64440 +Node: Manual History66809 +Ref: Manual History-Footnote-169806 +Ref: Manual History-Footnote-269847 +Node: How To Contribute69921 +Node: Acknowledgments70847 +Node: Getting Started75784 +Node: Running gawk78223 +Node: One-shot79413 +Node: Read Terminal80676 +Node: Long82669 +Node: Executable Scripts84182 +Ref: Executable Scripts-Footnote-186815 +Node: Comments86918 +Node: Quoting89402 +Node: DOS Quoting94928 +Node: Sample Data Files96984 +Node: Very Simple99579 +Node: Two Rules105681 +Node: More Complex107566 +Node: Statements/Lines109898 +Ref: Statements/Lines-Footnote-1114382 +Node: Other Features114647 +Node: When115583 +Ref: When-Footnote-1117337 +Node: Intro Summary117402 +Node: Invoking Gawk118286 +Node: Command Line119800 +Node: Options120598 +Ref: Options-Footnote-1138512 +Ref: Options-Footnote-2138743 +Node: Other Arguments138768 +Node: Naming Standard Input142779 +Node: Environment Variables143989 +Node: AWKPATH Variable144547 +Ref: AWKPATH Variable-Footnote-1147959 +Ref: AWKPATH Variable-Footnote-2147993 +Node: AWKLIBPATH Variable148364 +Ref: AWKLIBPATH Variable-Footnote-1150061 +Node: Other Environment Variables150436 +Node: Exit Status154257 +Node: Include Files154934 +Node: Loading Shared Libraries158624 +Node: Obsolete160052 +Node: Undocumented160744 +Node: Invoking Summary161041 +Node: Regexp163882 +Node: Regexp Usage165336 +Node: Escape Sequences167373 +Node: Regexp Operators173614 +Node: Regexp Operator Details174099 +Ref: Regexp Operator Details-Footnote-1181463 +Node: Interval Expressions181610 +Ref: Interval Expressions-Footnote-1183031 +Node: Bracket Expressions183129 +Ref: table-char-classes185605 +Node: Leftmost Longest188931 +Node: Computed Regexps190234 +Node: GNU Regexp Operators193661 +Node: Case-sensitivity197398 +Ref: Case-sensitivity-Footnote-1200264 +Ref: Case-sensitivity-Footnote-2200499 +Node: Regexp Summary200607 +Node: Reading Files202073 +Node: Records204342 +Node: awk split records205417 +Node: gawk split records210117 +Ref: gawk split records-Footnote-1215191 +Node: Fields215228 +Node: Nonconstant Fields217969 +Ref: Nonconstant Fields-Footnote-1220205 +Node: Changing Fields220409 +Node: Field Separators226440 +Node: Default Field Splitting229138 +Node: Regexp Field Splitting230256 +Node: Single Character Fields233933 +Node: Command Line Field Separator234993 +Node: Full Line Fields238211 +Ref: Full Line Fields-Footnote-1239733 +Ref: Full Line Fields-Footnote-2239779 +Node: Field Splitting Summary239880 +Node: Constant Size241954 +Node: Fixed width data242686 +Node: Skipping intervening246153 +Node: Allowing trailing data246951 +Node: Fields with fixed data247988 +Node: Splitting By Content249506 +Ref: Splitting By Content-Footnote-1253289 +Node: More CSV253452 +Node: Testing field creation255044 +Node: Multiple Line256669 +Node: Getline262946 +Node: Plain Getline265415 +Node: Getline/Variable267988 +Node: Getline/File269139 +Node: Getline/Variable/File270527 +Ref: Getline/Variable/File-Footnote-1272132 +Node: Getline/Pipe272220 +Node: Getline/Variable/Pipe274924 +Node: Getline/Coprocess276059 +Node: Getline/Variable/Coprocess277326 +Node: Getline Notes278068 +Node: Getline Summary280865 +Ref: table-getline-variants281289 +Node: Read Timeout282037 +Ref: Read Timeout-Footnote-1285943 +Node: Retrying Input286001 +Node: Command-line directories287200 +Node: Input Summary288106 +Node: Input Exercises291278 +Node: Printing291712 +Node: Print293546 +Node: Print Examples295003 +Node: Output Separators297783 +Node: OFMT299800 +Node: Printf301156 +Node: Basic Printf301941 +Node: Control Letters303515 +Node: Format Modifiers308679 +Node: Printf Examples314694 +Node: Redirection317180 +Node: Special FD324021 +Ref: Special FD-Footnote-1327189 +Node: Special Files327263 +Node: Other Inherited Files327880 +Node: Special Network328881 +Node: Special Caveats329741 +Node: Close Files And Pipes330690 +Ref: table-close-pipe-return-values337597 +Ref: Close Files And Pipes-Footnote-1338410 +Ref: Close Files And Pipes-Footnote-2338558 +Node: Nonfatal338710 +Node: Output Summary341048 +Node: Output Exercises342270 +Node: Expressions342949 +Node: Values344137 +Node: Constants344815 +Node: Scalar Constants345506 +Ref: Scalar Constants-Footnote-1348016 +Node: Nondecimal-numbers348266 +Node: Regexp Constants351267 +Node: Using Constant Regexps351793 +Node: Standard Regexp Constants352415 +Node: Strong Regexp Constants355603 +Node: Variables358615 +Node: Using Variables359272 +Node: Assignment Options361182 +Node: Conversion363653 +Node: Strings And Numbers364177 +Ref: Strings And Numbers-Footnote-1367240 +Node: Locale influences conversions367349 +Ref: table-locale-affects370107 +Node: All Operators370725 +Node: Arithmetic Ops371354 +Node: Concatenation374070 +Ref: Concatenation-Footnote-1376917 +Node: Assignment Ops377024 +Ref: table-assign-ops382015 +Node: Increment Ops383328 +Node: Truth Values and Conditions386788 +Node: Truth Values387862 +Node: Typing and Comparison388910 +Node: Variable Typing389730 +Ref: Variable Typing-Footnote-1396193 +Ref: Variable Typing-Footnote-2396265 +Node: Comparison Operators396342 +Ref: table-relational-ops396761 +Node: POSIX String Comparison400256 +Ref: POSIX String Comparison-Footnote-1401951 +Ref: POSIX String Comparison-Footnote-2402090 +Node: Boolean Ops402174 +Ref: Boolean Ops-Footnote-1406656 +Node: Conditional Exp406748 +Node: Function Calls408484 +Node: Precedence412361 +Node: Locales416020 +Node: Expressions Summary417652 +Node: Patterns and Actions420225 +Node: Pattern Overview421345 +Node: Regexp Patterns423022 +Node: Expression Patterns423564 +Node: Ranges427345 +Node: BEGIN/END430453 +Node: Using BEGIN/END431214 +Ref: Using BEGIN/END-Footnote-1433968 +Node: I/O And BEGIN/END434074 +Node: BEGINFILE/ENDFILE436387 +Node: Empty439618 +Node: Using Shell Variables439935 +Node: Action Overview442209 +Node: Statements444534 +Node: If Statement446382 +Node: While Statement447877 +Node: Do Statement449905 +Node: For Statement451053 +Node: Switch Statement454224 +Node: Break Statement456665 +Node: Continue Statement458757 +Node: Next Statement460584 +Node: Nextfile Statement462967 +Node: Exit Statement465656 +Node: Built-in Variables468059 +Node: User-modified469192 +Node: Auto-set476959 +Ref: Auto-set-Footnote-1493766 +Ref: Auto-set-Footnote-2493972 +Node: ARGC and ARGV494028 +Node: Pattern Action Summary498241 +Node: Arrays500671 +Node: Array Basics502000 +Node: Array Intro502844 +Ref: figure-array-elements504819 +Ref: Array Intro-Footnote-1507523 +Node: Reference to Elements507651 +Node: Assigning Elements510115 +Node: Array Example510606 +Node: Scanning an Array512365 +Node: Controlling Scanning515387 +Ref: Controlling Scanning-Footnote-1521843 +Node: Numeric Array Subscripts522159 +Node: Uninitialized Subscripts524343 +Node: Delete525962 +Ref: Delete-Footnote-1528714 +Node: Multidimensional528771 +Node: Multiscanning531866 +Node: Arrays of Arrays533457 +Node: Arrays Summary538225 +Node: Functions540318 +Node: Built-in541356 +Node: Calling Built-in542437 +Node: Numeric Functions544433 +Ref: Numeric Functions-Footnote-1548461 +Ref: Numeric Functions-Footnote-2549109 +Ref: Numeric Functions-Footnote-3549157 +Node: String Functions549429 +Ref: String Functions-Footnote-1573570 +Ref: String Functions-Footnote-2573698 +Ref: String Functions-Footnote-3573946 +Node: Gory Details574033 +Ref: table-sub-escapes575824 +Ref: table-sub-proposed577343 +Ref: table-posix-sub578706 +Ref: table-gensub-escapes580247 +Ref: Gory Details-Footnote-1581070 +Node: I/O Functions581224 +Ref: table-system-return-values587678 +Ref: I/O Functions-Footnote-1589758 +Ref: I/O Functions-Footnote-2589906 +Node: Time Functions590026 +Ref: Time Functions-Footnote-1600697 +Ref: Time Functions-Footnote-2600765 +Ref: Time Functions-Footnote-3600923 +Ref: Time Functions-Footnote-4601034 +Ref: Time Functions-Footnote-5601146 +Ref: Time Functions-Footnote-6601373 +Node: Bitwise Functions601639 +Ref: table-bitwise-ops602233 +Ref: Bitwise Functions-Footnote-1608296 +Ref: Bitwise Functions-Footnote-2608469 +Node: Type Functions608660 +Node: I18N Functions611523 +Node: User-defined613174 +Node: Definition Syntax613986 +Ref: Definition Syntax-Footnote-1619680 +Node: Function Example619751 +Ref: Function Example-Footnote-1622673 +Node: Function Calling622695 +Node: Calling A Function623283 +Node: Variable Scope624241 +Node: Pass By Value/Reference627235 +Node: Function Caveats629879 +Ref: Function Caveats-Footnote-1631926 +Node: Return Statement632046 +Node: Dynamic Typing635025 +Node: Indirect Calls635955 +Ref: Indirect Calls-Footnote-1646207 +Node: Functions Summary646335 +Node: Library Functions649040 +Ref: Library Functions-Footnote-1652647 +Ref: Library Functions-Footnote-2652790 +Node: Library Names652961 +Ref: Library Names-Footnote-1656628 +Ref: Library Names-Footnote-2656851 +Node: General Functions656937 +Node: Strtonum Function658040 +Node: Assert Function661062 +Node: Round Function664388 +Node: Cliff Random Function665928 +Node: Ordinal Functions666944 +Ref: Ordinal Functions-Footnote-1670007 +Ref: Ordinal Functions-Footnote-2670259 +Node: Join Function670469 +Ref: Join Function-Footnote-1672239 +Node: Getlocaltime Function672439 +Node: Readfile Function676181 +Node: Shell Quoting678158 +Node: Data File Management679559 +Node: Filetrans Function680191 +Node: Rewind Function684287 +Node: File Checking686196 +Ref: File Checking-Footnote-1687530 +Node: Empty Files687731 +Node: Ignoring Assigns689710 +Node: Getopt Function691260 +Ref: Getopt Function-Footnote-1706471 +Node: Passwd Functions706671 +Ref: Passwd Functions-Footnote-1715510 +Node: Group Functions715598 +Ref: Group Functions-Footnote-1723496 +Node: Walking Arrays723703 +Node: Library Functions Summary726711 +Node: Library Exercises728117 +Node: Sample Programs728582 +Node: Running Examples729352 +Node: Clones730080 +Node: Cut Program731304 +Node: Egrep Program741444 +Node: Id Program750445 +Node: Split Program760392 +Ref: Split Program-Footnote-1770282 +Node: Tee Program770455 +Node: Uniq Program773245 +Node: Wc Program780833 +Node: Bytes vs. Characters781220 +Node: Using extensions782768 +Node: wc program783522 +Node: Miscellaneous Programs788387 +Node: Dupword Program789600 +Node: Alarm Program791630 +Node: Translate Program796485 +Ref: Translate Program-Footnote-1801050 +Node: Labels Program801320 +Ref: Labels Program-Footnote-1804671 +Node: Word Sorting804755 +Node: History Sorting808827 +Node: Extract Program811052 +Node: Simple Sed819106 +Node: Igawk Program822180 +Ref: Igawk Program-Footnote-1836511 +Ref: Igawk Program-Footnote-2836713 +Ref: Igawk Program-Footnote-3836835 +Node: Anagram Program836950 +Node: Signature Program840012 +Node: Programs Summary841259 +Node: Programs Exercises842473 +Ref: Programs Exercises-Footnote-1846603 +Node: Advanced Features846689 +Node: Nondecimal Data848756 +Node: Array Sorting850347 +Node: Controlling Array Traversal851047 +Ref: Controlling Array Traversal-Footnote-1859415 +Node: Array Sorting Functions859533 +Ref: Array Sorting Functions-Footnote-1864624 +Node: Two-way I/O864820 +Ref: Two-way I/O-Footnote-1872541 +Ref: Two-way I/O-Footnote-2872728 +Node: TCP/IP Networking872810 +Node: Profiling875928 +Node: Extension Philosophy885237 +Node: Advanced Features Summary886716 +Node: Internationalization888731 +Node: I18N and L10N890211 +Node: Explaining gettext890898 +Ref: Explaining gettext-Footnote-1896790 +Ref: Explaining gettext-Footnote-2896975 +Node: Programmer i18n897140 +Ref: Programmer i18n-Footnote-1902089 +Node: Translator i18n902138 +Node: String Extraction902932 +Ref: String Extraction-Footnote-1904064 +Node: Printf Ordering904150 +Ref: Printf Ordering-Footnote-1906936 +Node: I18N Portability907000 +Ref: I18N Portability-Footnote-1909456 +Node: I18N Example909519 +Ref: I18N Example-Footnote-1912794 +Ref: I18N Example-Footnote-2912867 +Node: Gawk I18N912976 +Node: I18N Summary913625 +Node: Debugger914966 +Node: Debugging915966 +Node: Debugging Concepts916407 +Node: Debugging Terms918216 +Node: Awk Debugging920791 +Ref: Awk Debugging-Footnote-1921736 +Node: Sample Debugging Session921868 +Node: Debugger Invocation922402 +Node: Finding The Bug923788 +Node: List of Debugger Commands930262 +Node: Breakpoint Control931595 +Node: Debugger Execution Control935289 +Node: Viewing And Changing Data938651 +Node: Execution Stack942192 +Node: Debugger Info943829 +Node: Miscellaneous Debugger Commands947900 +Node: Readline Support952962 +Node: Limitations953858 +Node: Debugging Summary956412 +Node: Namespaces957691 +Node: Global Namespace958802 +Node: Qualified Names960200 +Node: Default Namespace961199 +Node: Changing The Namespace961940 +Node: Naming Rules963554 +Node: Internal Name Management965402 +Node: Namespace Example966444 +Node: Namespace And Features969006 +Node: Namespace Summary970441 +Node: Arbitrary Precision Arithmetic971918 +Node: Computer Arithmetic973405 +Ref: table-numeric-ranges977171 +Ref: table-floating-point-ranges977664 +Ref: Computer Arithmetic-Footnote-1978322 +Node: Math Definitions978379 +Ref: table-ieee-formats981695 +Ref: Math Definitions-Footnote-1982298 +Node: MPFR features982403 +Node: FP Math Caution984121 +Ref: FP Math Caution-Footnote-1985193 +Node: Inexactness of computations985562 +Node: Inexact representation986522 +Node: Comparing FP Values987882 +Node: Errors accumulate989123 +Node: Getting Accuracy990556 +Node: Try To Round993266 +Node: Setting precision994165 +Ref: table-predefined-precision-strings994862 +Node: Setting the rounding mode996692 +Ref: table-gawk-rounding-modes997066 +Ref: Setting the rounding mode-Footnote-11000997 +Node: Arbitrary Precision Integers1001176 +Ref: Arbitrary Precision Integers-Footnote-11004351 +Node: Checking for MPFR1004500 +Node: POSIX Floating Point Problems1005974 +Ref: POSIX Floating Point Problems-Footnote-11010259 +Node: Floating point summary1010297 +Node: Dynamic Extensions1012487 +Node: Extension Intro1014040 +Node: Plugin License1015306 +Node: Extension Mechanism Outline1016103 +Ref: figure-load-extension1016542 +Ref: figure-register-new-function1018107 +Ref: figure-call-new-function1019199 +Node: Extension API Description1021261 +Node: Extension API Functions Introduction1022974 +Ref: table-api-std-headers1024810 +Node: General Data Types1029059 +Ref: General Data Types-Footnote-11037689 +Node: Memory Allocation Functions1037988 +Ref: Memory Allocation Functions-Footnote-11042489 +Node: Constructor Functions1042588 +Node: API Ownership of MPFR and GMP Values1046054 +Node: Registration Functions1047367 +Node: Extension Functions1048067 +Node: Exit Callback Functions1053389 +Node: Extension Version String1054639 +Node: Input Parsers1055302 +Node: Output Wrappers1068023 +Node: Two-way processors1072535 +Node: Printing Messages1074800 +Ref: Printing Messages-Footnote-11075971 +Node: Updating ERRNO1076124 +Node: Requesting Values1076863 +Ref: table-value-types-returned1077600 +Node: Accessing Parameters1078536 +Node: Symbol Table Access1079773 +Node: Symbol table by name1080285 +Ref: Symbol table by name-Footnote-11083309 +Node: Symbol table by cookie1083437 +Ref: Symbol table by cookie-Footnote-11087622 +Node: Cached values1087686 +Ref: Cached values-Footnote-11091222 +Node: Array Manipulation1091375 +Ref: Array Manipulation-Footnote-11092466 +Node: Array Data Types1092503 +Ref: Array Data Types-Footnote-11095161 +Node: Array Functions1095253 +Node: Flattening Arrays1099751 +Node: Creating Arrays1106727 +Node: Redirection API1111494 +Node: Extension API Variables1114327 +Node: Extension Versioning1115038 +Ref: gawk-api-version1115467 +Node: Extension GMP/MPFR Versioning1117198 +Node: Extension API Informational Variables1118826 +Node: Extension API Boilerplate1119899 +Node: Changes from API V11123873 +Node: Finding Extensions1125445 +Node: Extension Example1126004 +Node: Internal File Description1126802 +Node: Internal File Ops1130882 +Ref: Internal File Ops-Footnote-11142232 +Node: Using Internal File Ops1142372 +Ref: Using Internal File Ops-Footnote-11144755 +Node: Extension Samples1145029 +Node: Extension Sample File Functions1146558 +Node: Extension Sample Fnmatch1154207 +Node: Extension Sample Fork1155694 +Node: Extension Sample Inplace1156912 +Node: Extension Sample Ord1160538 +Node: Extension Sample Readdir1161374 +Ref: table-readdir-file-types1162263 +Node: Extension Sample Revout1163330 +Node: Extension Sample Rev2way1163919 +Node: Extension Sample Read write array1164659 +Node: Extension Sample Readfile1166601 +Node: Extension Sample Time1167696 +Node: Extension Sample API Tests1169448 +Node: gawkextlib1169940 +Node: Extension summary1172858 +Node: Extension Exercises1176560 +Node: Language History1177802 +Node: V7/SVR3.11179458 +Node: SVR41181610 +Node: POSIX1183044 +Node: BTL1184425 +Node: POSIX/GNU1185154 +Node: Feature History1190932 +Node: Common Extensions1207251 +Node: Ranges and Locales1208534 +Ref: Ranges and Locales-Footnote-11213150 +Ref: Ranges and Locales-Footnote-21213177 +Ref: Ranges and Locales-Footnote-31213412 +Node: Contributors1213635 +Node: History summary1219632 +Node: Installation1221012 +Node: Gawk Distribution1221956 +Node: Getting1222440 +Node: Extracting1223403 +Node: Distribution contents1225041 +Node: Unix Installation1231521 +Node: Quick Installation1232203 +Node: Shell Startup Files1234617 +Node: Additional Configuration Options1235706 +Node: Configuration Philosophy1238021 +Node: Non-Unix Installation1240390 +Node: PC Installation1240850 +Node: PC Binary Installation1241688 +Node: PC Compiling1242123 +Node: PC Using1243240 +Node: Cygwin1246793 +Node: MSYS1248017 +Node: VMS Installation1248619 +Node: VMS Compilation1249410 +Ref: VMS Compilation-Footnote-11250639 +Node: VMS Dynamic Extensions1250697 +Node: VMS Installation Details1252382 +Node: VMS Running1254635 +Node: VMS GNV1258914 +Node: VMS Old Gawk1259649 +Node: Bugs1260120 +Node: Bug address1260783 +Node: Usenet1263765 +Node: Maintainers1264769 +Node: Other Versions1265954 +Node: Installation summary1273819 +Node: Notes1275028 +Node: Compatibility Mode1275822 +Node: Additions1276604 +Node: Accessing The Source1277529 +Node: Adding Code1278966 +Node: New Ports1285185 +Node: Derived Files1289560 +Ref: Derived Files-Footnote-11295220 +Ref: Derived Files-Footnote-21295255 +Ref: Derived Files-Footnote-31295853 +Node: Future Extensions1295967 +Node: Implementation Limitations1296625 +Node: Extension Design1297835 +Node: Old Extension Problems1298979 +Ref: Old Extension Problems-Footnote-11300497 +Node: Extension New Mechanism Goals1300554 +Ref: Extension New Mechanism Goals-Footnote-11303918 +Node: Extension Other Design Decisions1304107 +Node: Extension Future Growth1306220 +Node: Notes summary1306826 +Node: Basic Concepts1307984 +Node: Basic High Level1308665 +Ref: figure-general-flow1308947 +Ref: figure-process-flow1309632 +Ref: Basic High Level-Footnote-11312933 +Node: Basic Data Typing1313118 +Node: Glossary1316446 +Node: Copying1348331 +Node: GNU Free Documentation License1385874 +Node: Index1410994 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 7a746e1b..7b6cc71e 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -835,6 +835,9 @@ particular records in a file and perform operations upon them. * Tee Program:: The @command{tee} utility. * Uniq Program:: The @command{uniq} utility. * Wc Program:: The @command{wc} utility. +* Bytes vs. Characters:: Modern character sets. +* Using extensions:: A brief intro to extensions. +* @command{wc} program:: Code for @file{wc.awk}. * Miscellaneous Programs:: Some interesting @command{awk} programs. * Dupword Program:: Finding duplicated words in a @@ -868,7 +871,8 @@ particular records in a file and perform operations upon them. * TCP/IP Networking:: Using @command{gawk} for network programming. * Profiling:: Profiling your @command{awk} programs. -* Extension Philosophy:: What should be built-in and what should not. +* Extension Philosophy:: What should be built-in and what + should not. * Advanced Features Summary:: Summary of advanced features. * I18N and L10N:: Internationalization and Localization. * Explaining gettext:: How GNU @command{gettext} works. @@ -936,8 +940,8 @@ particular records in a file and perform operations upon them. * Extension API Functions Introduction:: Introduction to the API functions. * General Data Types:: The data types. * Memory Allocation Functions:: Functions for allocating memory. -* API Ownership of MPFR and GMP Values:: Managing MPFR and GMP Values. * Constructor Functions:: Functions for creating values. +* API Ownership of MPFR and GMP Values:: Managing MPFR and GMP Values. * Registration Functions:: Functions to register things with @command{gawk}. * Extension Functions:: Registering extension functions. @@ -27008,7 +27012,7 @@ and bytes in one or more input files. @menu * Bytes vs. Characters:: Modern character sets. * Using extensions:: A brief intro to extensions. -* @command{wc} program:: Code for @file{wc.awk}. +* @command{wc} program:: Code for @file{wc.awk}. @end menu @node Bytes vs. Characters diff --git a/doc/gawktexi.in b/doc/gawktexi.in index a8c1cf86..adc90c51 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -830,6 +830,9 @@ particular records in a file and perform operations upon them. * Tee Program:: The @command{tee} utility. * Uniq Program:: The @command{uniq} utility. * Wc Program:: The @command{wc} utility. +* Bytes vs. Characters:: Modern character sets. +* Using extensions:: A brief intro to extensions. +* @command{wc} program:: Code for @file{wc.awk}. * Miscellaneous Programs:: Some interesting @command{awk} programs. * Dupword Program:: Finding duplicated words in a @@ -863,7 +866,8 @@ particular records in a file and perform operations upon them. * TCP/IP Networking:: Using @command{gawk} for network programming. * Profiling:: Profiling your @command{awk} programs. -* Extension Philosophy:: What should be built-in and what should not. +* Extension Philosophy:: What should be built-in and what + should not. * Advanced Features Summary:: Summary of advanced features. * I18N and L10N:: Internationalization and Localization. * Explaining gettext:: How GNU @command{gettext} works. @@ -931,8 +935,8 @@ particular records in a file and perform operations upon them. * Extension API Functions Introduction:: Introduction to the API functions. * General Data Types:: The data types. * Memory Allocation Functions:: Functions for allocating memory. -* API Ownership of MPFR and GMP Values:: Managing MPFR and GMP Values. * Constructor Functions:: Functions for creating values. +* API Ownership of MPFR and GMP Values:: Managing MPFR and GMP Values. * Registration Functions:: Functions to register things with @command{gawk}. * Extension Functions:: Registering extension functions. @@ -25890,7 +25894,7 @@ and bytes in one or more input files. @menu * Bytes vs. Characters:: Modern character sets. * Using extensions:: A brief intro to extensions. -* @command{wc} program:: Code for @file{wc.awk}. +* @command{wc} program:: Code for @file{wc.awk}. @end menu @node Bytes vs. Characters |