aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--dfa.c2
-rw-r--r--doc/ChangeLog5
-rw-r--r--doc/gawk.info277
-rw-r--r--doc/gawk.texi90
-rw-r--r--doc/gawktexi.in90
6 files changed, 209 insertions, 259 deletions
diff --git a/ChangeLog b/ChangeLog
index 45125c1d..f97951bd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-20 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (dfaexec): Minor sync with GNU grep.
+
2014-05-14 Arnold D. Robbins <arnold@skeeve.com>
* custom.h (_GL_PURE): Move definition to here. Sigh.
diff --git a/dfa.c b/dfa.c
index c959ad4f..18f8faf1 100644
--- a/dfa.c
+++ b/dfa.c
@@ -3478,7 +3478,7 @@ dfaexec (struct dfa *d, char const *begin, char *end,
/* If the previous character was a newline, count it, and skip
checking of multibyte character boundary until here. */
- if (p[-1] == eol)
+ if (p[-1] == eol && (char *) p != begin)
{
nlcount++;
mbp = p;
diff --git a/doc/ChangeLog b/doc/ChangeLog
index dd90e126..975accb3 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2014-05-20 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in: Misc improvements for docbook, consistency
+ in table and figure captions.
+
2014-05-17 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in: Edits through Chapter 16.
diff --git a/doc/gawk.info b/doc/gawk.info
index 81071486..8469667b 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -21391,7 +21391,7 @@ binary format.
`"quad"' Basic 128-bit quadruple precision.
`"oct"' 256-bit octuple precision.
-Table 15.3: Predefined precision strings for `PREC'
+Table 15.3: Predefined Precision Strings For `PREC'
The following example illustrates the effects of changing precision
on arithmetic operations:
@@ -21769,7 +21769,8 @@ File: gawk.info, Node: Extension Mechanism Outline, Next: Extension API Descri
Communication between `gawk' and an extension is two-way. First, when
an extension is loaded, it is passed a pointer to a `struct' whose
-fields are function pointers. This is shown in *note load-extension::.
+fields are function pointers. This is shown in *note
+figure-load-extension::.
API
Struct
@@ -21801,7 +21802,7 @@ Figure 16.1: Loading The Extension
function pointers, at runtime, without needing (link-time) access to
`gawk''s symbols. One of these function pointers is to a function for
"registering" new built-in functions. This is shown in *note
-load-new-function::.
+figure-load-new-function::.
register_ext_func({ "chdir", do_chdir, 1 });
@@ -21821,7 +21822,7 @@ Figure 16.2: Loading The New Function
with `gawk' by passing function pointers to the functions that provide
the new feature (`do_chdir()', for example). `gawk' associates the
function pointer with a name and can then call it, using a defined
-calling convention. This is shown in *note call-new-function::.
+calling convention. This is shown in *note figure-call-new-function::.
BEGIN {
chdir("/path") (*fnptr)(1);
@@ -22196,7 +22197,7 @@ Requested: Scalar Scalar Scalar false false
Value false false false false
Cookie
-Table 16.1: Value Types Returned
+Table 16.1: API Value Types Returned

File: gawk.info, Node: Memory Allocation Functions, Next: Constructor Functions, Prev: Requesting Values, Up: Extension API Description
@@ -24834,7 +24835,7 @@ Letter File Type
`s' Socket
`u' Anything else (unknown)
-Table 16.2: File types returned by `readdir()'
+Table 16.2: File Types Returned By `readdir()'
On systems without the file type information, the third field is
always `u'.
@@ -33615,137 +33616,137 @@ Node: Dynamic Extensions875221
Node: Extension Intro876679
Node: Plugin License877944
Node: Extension Mechanism Outline878629
-Ref: load-extension879046
-Ref: load-new-function880524
-Ref: call-new-function881519
-Node: Extension API Description883503
-Node: Extension API Functions Introduction884953
-Node: General Data Types889819
-Ref: General Data Types-Footnote-1895512
-Node: Requesting Values895811
-Ref: table-value-types-returned896548
-Node: Memory Allocation Functions897502
-Ref: Memory Allocation Functions-Footnote-1900248
-Node: Constructor Functions900344
-Node: Registration Functions902102
-Node: Extension Functions902787
-Node: Exit Callback Functions905089
-Node: Extension Version String906338
-Node: Input Parsers906988
-Node: Output Wrappers916791
-Node: Two-way processors921307
-Node: Printing Messages923510
-Ref: Printing Messages-Footnote-1924587
-Node: Updating `ERRNO'924739
-Node: Accessing Parameters925478
-Node: Symbol Table Access926708
-Node: Symbol table by name927222
-Node: Symbol table by cookie929198
-Ref: Symbol table by cookie-Footnote-1933331
-Node: Cached values933394
-Ref: Cached values-Footnote-1936899
-Node: Array Manipulation936990
-Ref: Array Manipulation-Footnote-1938088
-Node: Array Data Types938127
-Ref: Array Data Types-Footnote-1940830
-Node: Array Functions940922
-Node: Flattening Arrays944796
-Node: Creating Arrays951648
-Node: Extension API Variables956379
-Node: Extension Versioning957015
-Node: Extension API Informational Variables958916
-Node: Extension API Boilerplate960002
-Node: Finding Extensions963806
-Node: Extension Example964366
-Node: Internal File Description965096
-Node: Internal File Ops969187
-Ref: Internal File Ops-Footnote-1980733
-Node: Using Internal File Ops980873
-Ref: Using Internal File Ops-Footnote-1983220
-Node: Extension Samples983486
-Node: Extension Sample File Functions985010
-Node: Extension Sample Fnmatch992577
-Node: Extension Sample Fork994056
-Node: Extension Sample Inplace995269
-Node: Extension Sample Ord997047
-Node: Extension Sample Readdir997883
-Ref: table-readdir-file-types998738
-Node: Extension Sample Revout999537
-Node: Extension Sample Rev2way1000128
-Node: Extension Sample Read write array1000869
-Node: Extension Sample Readfile1002748
-Node: Extension Sample API Tests1003848
-Node: Extension Sample Time1004373
-Node: gawkextlib1005688
-Node: Language History1008469
-Node: V7/SVR3.11010062
-Node: SVR41012382
-Node: POSIX1013824
-Node: BTL1015210
-Node: POSIX/GNU1015944
-Node: Feature History1021543
-Node: Common Extensions1034519
-Node: Ranges and Locales1035831
-Ref: Ranges and Locales-Footnote-11040448
-Ref: Ranges and Locales-Footnote-21040475
-Ref: Ranges and Locales-Footnote-31040709
-Node: Contributors1040930
-Node: Installation1046311
-Node: Gawk Distribution1047205
-Node: Getting1047689
-Node: Extracting1048515
-Node: Distribution contents1050207
-Node: Unix Installation1055928
-Node: Quick Installation1056545
-Node: Additional Configuration Options1058991
-Node: Configuration Philosophy1060727
-Node: Non-Unix Installation1063081
-Node: PC Installation1063539
-Node: PC Binary Installation1064850
-Node: PC Compiling1066698
-Node: PC Testing1069658
-Node: PC Using1070834
-Node: Cygwin1075002
-Node: MSYS1075811
-Node: VMS Installation1076325
-Node: VMS Compilation1077121
-Ref: VMS Compilation-Footnote-11078373
-Node: VMS Dynamic Extensions1078431
-Node: VMS Installation Details1079804
-Node: VMS Running1082055
-Node: VMS GNV1084889
-Node: VMS Old Gawk1085612
-Node: Bugs1086082
-Node: Other Versions1090000
-Node: Notes1096084
-Node: Compatibility Mode1096884
-Node: Additions1097667
-Node: Accessing The Source1098594
-Node: Adding Code1100034
-Node: New Ports1106079
-Node: Derived Files1110214
-Ref: Derived Files-Footnote-11115535
-Ref: Derived Files-Footnote-21115569
-Ref: Derived Files-Footnote-31116169
-Node: Future Extensions1116267
-Node: Implementation Limitations1116850
-Node: Extension Design1118098
-Node: Old Extension Problems1119252
-Ref: Old Extension Problems-Footnote-11120760
-Node: Extension New Mechanism Goals1120817
-Ref: Extension New Mechanism Goals-Footnote-11124182
-Node: Extension Other Design Decisions1124368
-Node: Extension Future Growth1126474
-Node: Old Extension Mechanism1127310
-Node: Basic Concepts1129050
-Node: Basic High Level1129731
-Ref: figure-general-flow1130003
-Ref: figure-process-flow1130602
-Ref: Basic High Level-Footnote-11133831
-Node: Basic Data Typing1134016
-Node: Glossary1137371
-Node: Copying1162602
-Node: GNU Free Documentation License1200158
-Node: Index1225294
+Ref: figure-load-extension879053
+Ref: figure-load-new-function880538
+Ref: figure-call-new-function881540
+Node: Extension API Description883524
+Node: Extension API Functions Introduction884974
+Node: General Data Types889840
+Ref: General Data Types-Footnote-1895533
+Node: Requesting Values895832
+Ref: table-value-types-returned896569
+Node: Memory Allocation Functions897527
+Ref: Memory Allocation Functions-Footnote-1900273
+Node: Constructor Functions900369
+Node: Registration Functions902127
+Node: Extension Functions902812
+Node: Exit Callback Functions905114
+Node: Extension Version String906363
+Node: Input Parsers907013
+Node: Output Wrappers916816
+Node: Two-way processors921332
+Node: Printing Messages923535
+Ref: Printing Messages-Footnote-1924612
+Node: Updating `ERRNO'924764
+Node: Accessing Parameters925503
+Node: Symbol Table Access926733
+Node: Symbol table by name927247
+Node: Symbol table by cookie929223
+Ref: Symbol table by cookie-Footnote-1933356
+Node: Cached values933419
+Ref: Cached values-Footnote-1936924
+Node: Array Manipulation937015
+Ref: Array Manipulation-Footnote-1938113
+Node: Array Data Types938152
+Ref: Array Data Types-Footnote-1940855
+Node: Array Functions940947
+Node: Flattening Arrays944821
+Node: Creating Arrays951673
+Node: Extension API Variables956404
+Node: Extension Versioning957040
+Node: Extension API Informational Variables958941
+Node: Extension API Boilerplate960027
+Node: Finding Extensions963831
+Node: Extension Example964391
+Node: Internal File Description965121
+Node: Internal File Ops969212
+Ref: Internal File Ops-Footnote-1980758
+Node: Using Internal File Ops980898
+Ref: Using Internal File Ops-Footnote-1983245
+Node: Extension Samples983511
+Node: Extension Sample File Functions985035
+Node: Extension Sample Fnmatch992602
+Node: Extension Sample Fork994081
+Node: Extension Sample Inplace995294
+Node: Extension Sample Ord997072
+Node: Extension Sample Readdir997908
+Ref: table-readdir-file-types998763
+Node: Extension Sample Revout999562
+Node: Extension Sample Rev2way1000153
+Node: Extension Sample Read write array1000894
+Node: Extension Sample Readfile1002773
+Node: Extension Sample API Tests1003873
+Node: Extension Sample Time1004398
+Node: gawkextlib1005713
+Node: Language History1008494
+Node: V7/SVR3.11010087
+Node: SVR41012407
+Node: POSIX1013849
+Node: BTL1015235
+Node: POSIX/GNU1015969
+Node: Feature History1021568
+Node: Common Extensions1034544
+Node: Ranges and Locales1035856
+Ref: Ranges and Locales-Footnote-11040473
+Ref: Ranges and Locales-Footnote-21040500
+Ref: Ranges and Locales-Footnote-31040734
+Node: Contributors1040955
+Node: Installation1046336
+Node: Gawk Distribution1047230
+Node: Getting1047714
+Node: Extracting1048540
+Node: Distribution contents1050232
+Node: Unix Installation1055953
+Node: Quick Installation1056570
+Node: Additional Configuration Options1059016
+Node: Configuration Philosophy1060752
+Node: Non-Unix Installation1063106
+Node: PC Installation1063564
+Node: PC Binary Installation1064875
+Node: PC Compiling1066723
+Node: PC Testing1069683
+Node: PC Using1070859
+Node: Cygwin1075027
+Node: MSYS1075836
+Node: VMS Installation1076350
+Node: VMS Compilation1077146
+Ref: VMS Compilation-Footnote-11078398
+Node: VMS Dynamic Extensions1078456
+Node: VMS Installation Details1079829
+Node: VMS Running1082080
+Node: VMS GNV1084914
+Node: VMS Old Gawk1085637
+Node: Bugs1086107
+Node: Other Versions1090025
+Node: Notes1096109
+Node: Compatibility Mode1096909
+Node: Additions1097692
+Node: Accessing The Source1098619
+Node: Adding Code1100059
+Node: New Ports1106104
+Node: Derived Files1110239
+Ref: Derived Files-Footnote-11115560
+Ref: Derived Files-Footnote-21115594
+Ref: Derived Files-Footnote-31116194
+Node: Future Extensions1116292
+Node: Implementation Limitations1116875
+Node: Extension Design1118123
+Node: Old Extension Problems1119277
+Ref: Old Extension Problems-Footnote-11120785
+Node: Extension New Mechanism Goals1120842
+Ref: Extension New Mechanism Goals-Footnote-11124207
+Node: Extension Other Design Decisions1124393
+Node: Extension Future Growth1126499
+Node: Old Extension Mechanism1127335
+Node: Basic Concepts1129075
+Node: Basic High Level1129756
+Ref: figure-general-flow1130028
+Ref: figure-process-flow1130627
+Ref: Basic High Level-Footnote-11133856
+Node: Basic Data Typing1134041
+Node: Glossary1137396
+Node: Copying1162627
+Node: GNU Free Documentation License1200183
+Node: Index1225319

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index c80c87e1..ab1b5259 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -1571,12 +1571,14 @@ contains additional appendices and other end material.
To save space, we have omitted them from the
printed edition. You may find them online, as follows:
-@uref{http://www.gnu.org/software/gawk/manual/html_node/Notes.html}
+@uref{http://www.gnu.org/software/gawk/manual/html_node/Notes.html,
+The appendix on implementation notes}
describes how to disable @command{gawk}'s extensions, as
well as how to contribute new code to @command{gawk},
and some possible future directions for @command{gawk} development.
-@uref{http://www.gnu.org/software/gawk/manual/html_node/Basic-Concepts.html}
+@uref{http://www.gnu.org/software/gawk/manual/html_node/Basic-Concepts.html,
+The appendix on basic concepts}
provides some very cursory background material for those who
are completely unfamiliar with computer programming.
@@ -2064,9 +2066,6 @@ May, 2014
@ifdocbook
-@docbook
-<partintro>
-@end docbook
Part I describes the @command{awk} language and @command{gawk} program
in detail. It starts with the basics, and continues through all of
the features of @command{awk}. Included also are many, but not all,
@@ -2101,9 +2100,6 @@ following chapters:
@item
@ref{Functions}.
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Getting Started
@@ -18160,8 +18156,7 @@ Operands | 0 | 1 | 0 | 1 | 0 | 1
@end tex
@docbook
-<table id="table-bitwise-ops">
-<title>Bitwise Operations</title>
+<informaltable>
<tgroup cols="7" colsep="1">
<colspec colname="c1"/>
@@ -18221,7 +18216,7 @@ Operands | 0 | 1 | 0 | 1 | 0 | 1
</tbody>
</tgroup>
-</table>
+</informaltable>
@end docbook
@end float
@@ -19526,10 +19521,6 @@ for (i = 1; i <= n; i++)
@end ifnotinfo
@ifdocbook
-
-@docbook
-<partintro>
-@end docbook
Part II shows how to use @command{awk} and @command{gawk} for problem solving.
There is lots of code here for you to read and learn from.
It contains the following chapters:
@@ -19541,9 +19532,6 @@ It contains the following chapters:
@item
@ref{Sample Programs}.
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Library Functions
@@ -25629,10 +25617,6 @@ BEGIN {
@end ifnotinfo
@ifdocbook
-
-@docbook
-<partintro>
-@end docbook
Part III focuses on features specific to @command{gawk}.
It contains the following chapters:
@@ -25652,9 +25636,6 @@ It contains the following chapters:
@item
@ref{Dynamic Extensions}.
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Advanced Features
@@ -29805,7 +29786,7 @@ shown in @ref{table-predefined-precision-strings},
to emulate an IEEE 754 binary format.
@float Table,table-predefined-precision-strings
-@caption{Predefined precision strings for @code{PREC}}
+@caption{Predefined Precision Strings For @code{PREC}}
@multitable {@code{"double"}} {12345678901234567890123456789012345}
@headitem @code{PREC} @tab IEEE 754 Binary Format
@item @code{"half"} @tab 16-bit half-precision.
@@ -30261,30 +30242,30 @@ Communication between
is loaded, it is passed a pointer to a @code{struct} whose fields are
function pointers.
@ifnotdocbook
-This is shown in @ref{load-extension}.
+This is shown in @ref{figure-load-extension}.
@end ifnotdocbook
@ifdocbook
-This is shown in @inlineraw{docbook, <xref linkend="load-extension"/>}.
+This is shown in @inlineraw{docbook, <xref linkend="figure-load-extension"/>}.
@end ifdocbook
@ifnotdocbook
-@float Figure,load-extension
+@float Figure,figure-load-extension
@caption{Loading The Extension}
@c FIXME: One day, it should not be necessary to have two cases,
@c but rather just the one without the "txt" final argument.
@c This applies to the other figures as well.
@ifinfo
-@center @image{api-figure1, , , Loading the extension, txt}
+@center @image{api-figure1, , , Loading The Extension, txt}
@end ifinfo
@ifnotinfo
-@center @image{api-figure1, , , Loading the extension}
+@center @image{api-figure1, , , Loading The Extension}
@end ifnotinfo
@end float
@end ifnotdocbook
@docbook
-<figure id="load-extension">
-<title>Loading the extension</title>
+<figure id="figure-load-extension">
+<title>Loading The Extension</title>
<graphic fileref="api-figure1.eps"/>
</figure>
@end docbook
@@ -30294,27 +30275,27 @@ function pointers, at runtime, without needing (link-time) access
to @command{gawk}'s symbols. One of these function pointers is to a
function for ``registering'' new built-in functions.
@ifnotdocbook
-This is shown in @ref{load-new-function}.
+This is shown in @ref{figure-load-new-function}.
@end ifnotdocbook
@ifdocbook
-This is shown in @inlineraw{docbook, <xref linkend="load-new-function"/>}.
+This is shown in @inlineraw{docbook, <xref linkend="figure-load-new-function"/>}.
@end ifdocbook
@ifnotdocbook
-@float Figure,load-new-function
+@float Figure,figure-load-new-function
@caption{Loading The New Function}
@ifinfo
-@center @image{api-figure2, , , Loading the new function, txt}
+@center @image{api-figure2, , , Loading The New Function, txt}
@end ifinfo
@ifnotinfo
-@center @image{api-figure2, , , Loading the new function}
+@center @image{api-figure2, , , Loading The New Function}
@end ifnotinfo
@end float
@end ifnotdocbook
@docbook
-<figure id="load-new-function">
-<title>Loading the new function</title>
+<figure id="figure-load-new-function">
+<title>Loading The New Function</title>
<graphic fileref="api-figure2.eps"/>
</figure>
@end docbook
@@ -30325,14 +30306,14 @@ provide the new feature (@code{do_chdir()}, for example). @command{gawk}
associates the function pointer with a name and can then call it, using a
defined calling convention.
@ifnotdocbook
-This is shown in @ref{call-new-function}.
+This is shown in @ref{figure-call-new-function}.
@end ifnotdocbook
@ifdocbook
-This is shown in @inlineraw{docbook, <xref linkend="call-new-function"/>}.
+This is shown in @inlineraw{docbook, <xref linkend="figure-call-new-function"/>}.
@end ifdocbook
@ifnotdocbook
-@float Figure,call-new-function
+@float Figure,figure-call-new-function
@caption{Calling The New Function}
@ifinfo
@center @image{api-figure3, , , Calling the new function, txt}
@@ -30344,7 +30325,7 @@ This is shown in @inlineraw{docbook, <xref linkend="call-new-function"/>}.
@end ifnotdocbook
@docbook
-<figure id="call-new-function">
+<figure id="figure-call-new-function">
<title>Calling The New Function</title>
<graphic fileref="api-figure3.eps"/>
</figure>
@@ -30727,9 +30708,9 @@ value type, as appropriate. This behavior is summarized in
@ref{table-value-types-returned}.
@c FIXME: Try to do this with spans...
-@ifdocbook
-@anchor{table-value-types-returned}
-@end ifdocbook
+
+@float Table,table-value-types-returned
+@caption{API Value Types Returned}
@docbook
<informaltable>
<tgroup cols="2">
@@ -30814,8 +30795,6 @@ value type, as appropriate. This behavior is summarized in
@ifnotplaintext
@ifnotdocbook
-@float Table,table-value-types-returned
-@caption{Value Types Returned}
@multitable @columnfractions .50 .50
@headitem @tab Type of Actual Value:
@end multitable
@@ -30828,12 +30807,9 @@ value type, as appropriate. This behavior is summarized in
@item @tab @b{Undefined} @tab String @tab Number @tab Array @tab Undefined
@item @tab @b{Value Cookie} @tab false @tab false @tab false @tab false
@end multitable
-@end float
@end ifnotdocbook
@end ifnotplaintext
@ifplaintext
-@float Table,table-value-types-returned
-@caption{Value Types Returned}
@example
+-------------------------------------------------+
| Type of Actual Value: |
@@ -30857,8 +30833,8 @@ value type, as appropriate. This behavior is summarized in
| | Cookie | | | | |
+-----------+-----------+------------+------------+-----------+-----------+
@end example
-@end float
@end ifplaintext
+@end float
@node Memory Allocation Functions
@subsection Memory Allocation Functions and Convenience Macros
@@ -33730,7 +33706,7 @@ indicating the type of the file. The letters are file types are shown
in @ref{table-readdir-file-types}.
@float Table,table-readdir-file-types
-@caption{File types returned by @code{readdir()}}
+@caption{File Types Returned By @code{readdir()}}
@multitable @columnfractions .1 .9
@headitem Letter @tab File Type
@item @code{b} @tab Block device
@@ -34033,9 +34009,6 @@ See the project's web site for more information.
@ifdocbook
-@docbook
-<partintro>
-@end docbook
@ifclear FOR_PRINT
Part IV contains the appendixes (including the two licenses that cover
the @command{gawk} source code and this @value{DOCUMENT}, respectively)
@@ -34070,9 +34043,6 @@ Part IV contains two appendixes:
@ref{GNU Free Documentation License}.
@end ifclear
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Language History
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 14ae09eb..5c60d3b3 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -1538,12 +1538,14 @@ contains additional appendices and other end material.
To save space, we have omitted them from the
printed edition. You may find them online, as follows:
-@uref{http://www.gnu.org/software/gawk/manual/html_node/Notes.html}
+@uref{http://www.gnu.org/software/gawk/manual/html_node/Notes.html,
+The appendix on implementation notes}
describes how to disable @command{gawk}'s extensions, as
well as how to contribute new code to @command{gawk},
and some possible future directions for @command{gawk} development.
-@uref{http://www.gnu.org/software/gawk/manual/html_node/Basic-Concepts.html}
+@uref{http://www.gnu.org/software/gawk/manual/html_node/Basic-Concepts.html,
+The appendix on basic concepts}
provides some very cursory background material for those who
are completely unfamiliar with computer programming.
@@ -2031,9 +2033,6 @@ May, 2014
@ifdocbook
-@docbook
-<partintro>
-@end docbook
Part I describes the @command{awk} language and @command{gawk} program
in detail. It starts with the basics, and continues through all of
the features of @command{awk}. Included also are many, but not all,
@@ -2068,9 +2067,6 @@ following chapters:
@item
@ref{Functions}.
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Getting Started
@@ -17333,8 +17329,7 @@ Operands | 0 | 1 | 0 | 1 | 0 | 1
@end tex
@docbook
-<table id="table-bitwise-ops">
-<title>Bitwise Operations</title>
+<informaltable>
<tgroup cols="7" colsep="1">
<colspec colname="c1"/>
@@ -17394,7 +17389,7 @@ Operands | 0 | 1 | 0 | 1 | 0 | 1
</tbody>
</tgroup>
-</table>
+</informaltable>
@end docbook
@end float
@@ -18699,10 +18694,6 @@ for (i = 1; i <= n; i++)
@end ifnotinfo
@ifdocbook
-
-@docbook
-<partintro>
-@end docbook
Part II shows how to use @command{awk} and @command{gawk} for problem solving.
There is lots of code here for you to read and learn from.
It contains the following chapters:
@@ -18714,9 +18705,6 @@ It contains the following chapters:
@item
@ref{Sample Programs}.
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Library Functions
@@ -24773,10 +24761,6 @@ BEGIN {
@end ifnotinfo
@ifdocbook
-
-@docbook
-<partintro>
-@end docbook
Part III focuses on features specific to @command{gawk}.
It contains the following chapters:
@@ -24796,9 +24780,6 @@ It contains the following chapters:
@item
@ref{Dynamic Extensions}.
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Advanced Features
@@ -28949,7 +28930,7 @@ shown in @ref{table-predefined-precision-strings},
to emulate an IEEE 754 binary format.
@float Table,table-predefined-precision-strings
-@caption{Predefined precision strings for @code{PREC}}
+@caption{Predefined Precision Strings For @code{PREC}}
@multitable {@code{"double"}} {12345678901234567890123456789012345}
@headitem @code{PREC} @tab IEEE 754 Binary Format
@item @code{"half"} @tab 16-bit half-precision.
@@ -29405,30 +29386,30 @@ Communication between
is loaded, it is passed a pointer to a @code{struct} whose fields are
function pointers.
@ifnotdocbook
-This is shown in @ref{load-extension}.
+This is shown in @ref{figure-load-extension}.
@end ifnotdocbook
@ifdocbook
-This is shown in @inlineraw{docbook, <xref linkend="load-extension"/>}.
+This is shown in @inlineraw{docbook, <xref linkend="figure-load-extension"/>}.
@end ifdocbook
@ifnotdocbook
-@float Figure,load-extension
+@float Figure,figure-load-extension
@caption{Loading The Extension}
@c FIXME: One day, it should not be necessary to have two cases,
@c but rather just the one without the "txt" final argument.
@c This applies to the other figures as well.
@ifinfo
-@center @image{api-figure1, , , Loading the extension, txt}
+@center @image{api-figure1, , , Loading The Extension, txt}
@end ifinfo
@ifnotinfo
-@center @image{api-figure1, , , Loading the extension}
+@center @image{api-figure1, , , Loading The Extension}
@end ifnotinfo
@end float
@end ifnotdocbook
@docbook
-<figure id="load-extension">
-<title>Loading the extension</title>
+<figure id="figure-load-extension">
+<title>Loading The Extension</title>
<graphic fileref="api-figure1.eps"/>
</figure>
@end docbook
@@ -29438,27 +29419,27 @@ function pointers, at runtime, without needing (link-time) access
to @command{gawk}'s symbols. One of these function pointers is to a
function for ``registering'' new built-in functions.
@ifnotdocbook
-This is shown in @ref{load-new-function}.
+This is shown in @ref{figure-load-new-function}.
@end ifnotdocbook
@ifdocbook
-This is shown in @inlineraw{docbook, <xref linkend="load-new-function"/>}.
+This is shown in @inlineraw{docbook, <xref linkend="figure-load-new-function"/>}.
@end ifdocbook
@ifnotdocbook
-@float Figure,load-new-function
+@float Figure,figure-load-new-function
@caption{Loading The New Function}
@ifinfo
-@center @image{api-figure2, , , Loading the new function, txt}
+@center @image{api-figure2, , , Loading The New Function, txt}
@end ifinfo
@ifnotinfo
-@center @image{api-figure2, , , Loading the new function}
+@center @image{api-figure2, , , Loading The New Function}
@end ifnotinfo
@end float
@end ifnotdocbook
@docbook
-<figure id="load-new-function">
-<title>Loading the new function</title>
+<figure id="figure-load-new-function">
+<title>Loading The New Function</title>
<graphic fileref="api-figure2.eps"/>
</figure>
@end docbook
@@ -29469,14 +29450,14 @@ provide the new feature (@code{do_chdir()}, for example). @command{gawk}
associates the function pointer with a name and can then call it, using a
defined calling convention.
@ifnotdocbook
-This is shown in @ref{call-new-function}.
+This is shown in @ref{figure-call-new-function}.
@end ifnotdocbook
@ifdocbook
-This is shown in @inlineraw{docbook, <xref linkend="call-new-function"/>}.
+This is shown in @inlineraw{docbook, <xref linkend="figure-call-new-function"/>}.
@end ifdocbook
@ifnotdocbook
-@float Figure,call-new-function
+@float Figure,figure-call-new-function
@caption{Calling The New Function}
@ifinfo
@center @image{api-figure3, , , Calling the new function, txt}
@@ -29488,7 +29469,7 @@ This is shown in @inlineraw{docbook, <xref linkend="call-new-function"/>}.
@end ifnotdocbook
@docbook
-<figure id="call-new-function">
+<figure id="figure-call-new-function">
<title>Calling The New Function</title>
<graphic fileref="api-figure3.eps"/>
</figure>
@@ -29871,9 +29852,9 @@ value type, as appropriate. This behavior is summarized in
@ref{table-value-types-returned}.
@c FIXME: Try to do this with spans...
-@ifdocbook
-@anchor{table-value-types-returned}
-@end ifdocbook
+
+@float Table,table-value-types-returned
+@caption{API Value Types Returned}
@docbook
<informaltable>
<tgroup cols="2">
@@ -29958,8 +29939,6 @@ value type, as appropriate. This behavior is summarized in
@ifnotplaintext
@ifnotdocbook
-@float Table,table-value-types-returned
-@caption{Value Types Returned}
@multitable @columnfractions .50 .50
@headitem @tab Type of Actual Value:
@end multitable
@@ -29972,12 +29951,9 @@ value type, as appropriate. This behavior is summarized in
@item @tab @b{Undefined} @tab String @tab Number @tab Array @tab Undefined
@item @tab @b{Value Cookie} @tab false @tab false @tab false @tab false
@end multitable
-@end float
@end ifnotdocbook
@end ifnotplaintext
@ifplaintext
-@float Table,table-value-types-returned
-@caption{Value Types Returned}
@example
+-------------------------------------------------+
| Type of Actual Value: |
@@ -30001,8 +29977,8 @@ value type, as appropriate. This behavior is summarized in
| | Cookie | | | | |
+-----------+-----------+------------+------------+-----------+-----------+
@end example
-@end float
@end ifplaintext
+@end float
@node Memory Allocation Functions
@subsection Memory Allocation Functions and Convenience Macros
@@ -32874,7 +32850,7 @@ indicating the type of the file. The letters are file types are shown
in @ref{table-readdir-file-types}.
@float Table,table-readdir-file-types
-@caption{File types returned by @code{readdir()}}
+@caption{File Types Returned By @code{readdir()}}
@multitable @columnfractions .1 .9
@headitem Letter @tab File Type
@item @code{b} @tab Block device
@@ -33177,9 +33153,6 @@ See the project's web site for more information.
@ifdocbook
-@docbook
-<partintro>
-@end docbook
@ifclear FOR_PRINT
Part IV contains the appendixes (including the two licenses that cover
the @command{gawk} source code and this @value{DOCUMENT}, respectively)
@@ -33214,9 +33187,6 @@ Part IV contains two appendixes:
@ref{GNU Free Documentation License}.
@end ifclear
@end itemize
-@docbook
-</partintro>
-@end docbook
@end ifdocbook
@node Language History