aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/ChangeLog35
-rw-r--r--doc/Makefile.am12
-rw-r--r--doc/Makefile.in103
-rw-r--r--doc/ad.block4
-rw-r--r--doc/awkcard.in16
-rw-r--r--doc/gawk.155
-rw-r--r--doc/gawk.info4303
-rwxr-xr-x[-rw-r--r--]doc/gawk.texi221
-rw-r--r--doc/gawkinet.info4
-rw-r--r--doc/gawkinet.texi6
-rw-r--r--doc/macros2
-rw-r--r--doc/setter.outline2
-rw-r--r--doc/texinfo.tex446
13 files changed, 2758 insertions, 2451 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 5c8e4376..7d7f2050 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,38 @@
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Sun Jun 26 16:24:07 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document `length(array)'.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Mon May 23 20:56:32 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Removed references to `--with-included-gettext'.
+
+Fri Apr 1 06:25:30 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2005-01-30.17.
+
+Wed Feb 9 11:39:38 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Per Stepan Kasal, removed html rules, since
+ Automake does it for us.
+
+Tue Jan 4 18:47:34 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2004-11-25.16.
+
+Mon Jan 3 14:09:57 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2004-10-31.06.
+
+Wed Sep 22 11:40:06 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, gawk.texi, awkcard.in: Documented new --exec option.
+
Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.4: Release tar file made.
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 54106624..f3a26815 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,7 +1,7 @@
#
# doc/Makefile.am --- automake input file for gawk
#
-# Copyright (C) 2000, 2001, 2002, 2004 the Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2002, 2004, 2005 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -18,7 +18,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
#
## process this file with automake to produce Makefile.in
@@ -91,13 +91,5 @@ awkcard.ps: $(CARDFILES)
awkcard.nc: $(CARDFILES)
$(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps && touch awkcard.nc
-html: gawk.html gawkinet.html
-
-gawk.html: gawk.texi
- $(MAKEINFO) --html $<
-
-gawkinet.html: gawkinet.texi
- $(MAKEINFO) --html $<
-
clean:
rm -f *.ps *~ awkcard.nc awkcard.tr *.html
diff --git a/doc/Makefile.in b/doc/Makefile.in
index 38f01b1c..93a4d28f 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.8.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004 Free Software Foundation, Inc.
+# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -17,7 +17,7 @@
#
# doc/Makefile.am --- automake input file for gawk
#
-# Copyright (C) 2000, 2001, 2002, 2004 the Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2002, 2004, 2005 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -34,7 +34,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
#
srcdir = @srcdir@
top_srcdir = @top_srcdir@
@@ -56,27 +56,21 @@ POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
+build_triplet = @build@
host_triplet = @host@
subdir = doc
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \
texinfo.tex
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
- $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \
- $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/intdiv0.m4 $(top_srcdir)/m4/intmax.m4 \
- $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/longdouble.m4 $(top_srcdir)/m4/longlong.m4 \
+ $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes_h.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/longlong.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
- $(top_srcdir)/m4/printf-posix.m4 $(top_srcdir)/m4/progtest.m4 \
- $(top_srcdir)/m4/signed.m4 $(top_srcdir)/m4/size_max.m4 \
- $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \
- $(top_srcdir)/m4/strtod.m4 $(top_srcdir)/m4/uintmax_t.m4 \
- $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/m4/wchar_t.m4 \
- $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xsize.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \
+ $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/strtod.m4 \
+ $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
@@ -103,7 +97,6 @@ NROFF = nroff
MANS = $(man_MANS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
-ALLOCA = @ALLOCA@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
@@ -111,15 +104,12 @@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
-BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
-CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
-DATADIRNAME = @DATADIRNAME@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
@@ -127,22 +117,13 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
-GENCAT = @GENCAT@
-GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
-HAVE_ASPRINTF = @HAVE_ASPRINTF@
-HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@
-HAVE_SNPRINTF = @HAVE_SNPRINTF@
-HAVE_WPRINTF = @HAVE_WPRINTF@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INSTOBJEXT = @INSTOBJEXT@
-INTLBISON = @INTLBISON@
INTLLIBS = @INTLLIBS@
-INTLOBJS = @INTLOBJS@
-INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
+INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
@@ -171,7 +152,6 @@ SHELL = @SHELL@
SOCKET_LIBS = @SOCKET_LIBS@
STRIP = @STRIP@
U = @U@
-USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
@@ -184,6 +164,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@@ -277,15 +259,11 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
.texi.info:
- restore=: && \
- backupdir="$(am__leading_dot)am$$$$" && \
+ restore=: && backupdir="$(am__leading_dot)am$$$$" && \
am__cwd=`pwd` && cd $(srcdir) && \
rm -rf $$backupdir && mkdir $$backupdir && \
for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
- if test -f $$f; then \
- mv $$f $$backupdir; \
- restore=mv; \
- fi; \
+ if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
done; \
cd "$$am__cwd"; \
if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
@@ -298,8 +276,7 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(srcdir) && \
$$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
fi; \
- rm -rf $$backupdir; \
- exit $$rc
+ rm -rf $$backupdir; exit $$rc
.texi.dvi:
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
@@ -312,21 +289,31 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
$(TEXI2PDF) $<
.texi.html:
- $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
- -o $@ $<
- if test ! -d $@ && test -d $(@:.html=); then \
- mv $(@:.html=) $@; else :; fi
+ rm -rf $(@:.html=.htp)
+ if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
+ -o $(@:.html=.htp) $<; \
+ then \
+ rm -rf $@; \
+ if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
+ mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
+ else \
+ if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
+ rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
+ exit 1; \
+ fi
$(srcdir)/gawk.info: gawk.texi
gawk.dvi: gawk.texi
gawk.pdf: gawk.texi
+gawk.html: gawk.texi
$(srcdir)/gawkinet.info: gawkinet.texi
gawkinet.dvi: gawkinet.texi
gawkinet.pdf: gawkinet.texi
+gawkinet.html: gawkinet.texi
.dvi.ps:
$(DVIPS) -o $@ $<
uninstall-info-am:
- $(PRE_UNINSTALL)
+ @$(PRE_UNINSTALL)
@if (install-info --version && \
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
list='$(INFO_DEPS)'; \
@@ -342,7 +329,7 @@ uninstall-info-am:
relfile=`echo "$$file" | sed 's|^.*/||'`; \
relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
(if cd "$(DESTDIR)$(infodir)"; then \
- echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \
+ echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \
rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
else :; fi); \
done
@@ -485,7 +472,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
- -rm -f $(CONFIG_CLEAN_FILES)
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -500,6 +487,8 @@ dvi: dvi-am
dvi-am: $(DVIS)
+html: html-am
+
html-am: $(HTMLS)
info: info-am
@@ -574,13 +563,13 @@ uninstall-man: uninstall-man1
.PHONY: all all-am check check-am clean clean-generic dist-info \
distclean distclean-generic distdir dvi dvi-am html html-am \
info info-am install install-am install-data install-data-am \
- install-exec install-exec-am install-info install-info-am \
- install-man install-man1 install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
+ install-data-hook install-exec install-exec-am install-info \
+ install-info-am install-man install-man1 install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-aminfo maintainer-clean-generic mostlyclean \
mostlyclean-aminfo mostlyclean-generic pdf pdf-am ps ps-am \
- uninstall uninstall-am uninstall-info-am uninstall-man \
- uninstall-man1
+ uninstall uninstall-am uninstall-hook uninstall-info-am \
+ uninstall-man uninstall-man1
# Link gawk.1 to pgawk.1
@@ -616,14 +605,6 @@ awkcard.ps: $(CARDFILES)
awkcard.nc: $(CARDFILES)
$(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps && touch awkcard.nc
-html: gawk.html gawkinet.html
-
-gawk.html: gawk.texi
- $(MAKEINFO) --html $<
-
-gawkinet.html: gawkinet.texi
- $(MAKEINFO) --html $<
-
clean:
rm -f *.ps *~ awkcard.nc awkcard.tr *.html
# Tell versions [3.59,3.63) of GNU make to not export all variables.
diff --git a/doc/ad.block b/doc/ad.block
index 7d3b2665..6093c45b 100644
--- a/doc/ad.block
+++ b/doc/ad.block
@@ -30,8 +30,8 @@
.ce 7
\*(CBFree Software Foundation, Inc.
.ft H
-59 Temple Place \(em Suite 330
-Boston, MA 02111-1307 USA
+51 Franklin Street, Fifth Floor
+Boston, MA 02110-1301 USA
Phone: +1-617-542-5942
Fax (including Japan): +1-617-542-2652
E-mail: gnu@gnu.org
diff --git a/doc/awkcard.in b/doc/awkcard.in
index fd7e4975..7d55d977 100644
--- a/doc/awkcard.in
+++ b/doc/awkcard.in
@@ -1,6 +1,7 @@
.\" AWK Reference Card --- Arnold Robbins, arnold@skeeve.com
.\"
-.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+.\" 2003, 2004, 2005 Free Software Foundation, Inc.
.\"
.\" Permission is granted to make and distribute verbatim copies of
.\" this reference card provided the copyright notice and this permission
@@ -264,13 +265,18 @@ ls
l lw(2.2i).
\*(FC\-\^\-dump-variables\*(FR[\*(FC=\*(FIfile\*(FR]
%T{
-Print a sorted list of global variables,
+print a sorted list of global variables,
their types and final values to
\*(FIfile\*(FR.
If no \*(FIfile\*(FR
is provided, \*(FCgawk\*(FR
uses \*(FCawkvars.out\*(FR.
T}
+\*(FC\-\^\-exec \*(FIfile\*(FR%T{
+read program text from \*(FIfile\fP. No other
+options are processed. Useful with \*(FC#!\fP.
+Also disables command-line variable assignments.
+T}
\*(FC\-\^\-gen\-po\*(FR%T{
process the program and print a GNU \*(FCgettext\*(FR
format \*(FC\&.po\*(FR format file on standard output,
@@ -1568,6 +1574,8 @@ returns the index of the string
.br
returns the length of the string
\*(FIs\*(FR, or the length of \*(FC$0\fP if \*(FIs\fP is not supplied.
+\*(CBWith an array argument, returns the number of elements
+in the array.\*(CD
.ti -.2i
\*(FCmatch(\*(FIs\*(FC, \*(FIr \*(CB\*(FR[\*(FC, \*(FIa\*(FR]\*(CD\*(FC)\*(FR
.br
@@ -1894,7 +1902,7 @@ to use the current domain.\*(CB
.ES
.nf
\*(CDHost: \*(FCftp.gnu.org\*(FR
-File: \*(FC/gnu/gawk/gawk-3.1.4.tar.gz\fP
+File: \*(FC/gnu/gawk/gawk-3.1.5.tar.gz\fP
.in +.2i
.fi
GNU \*(AK (\*(GK). There may be a later version.
@@ -1921,7 +1929,7 @@ Michael Brennan's \*(MK. There may be a newer version.\*(CX
.\" --- Copying Permissions
.ES
.fi
-\*(CDCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+\*(CDCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation, Inc.
.sp .5
Permission is granted to make and distribute verbatim copies of this
diff --git a/doc/gawk.1 b/doc/gawk.1
index 8250236c..9859e7d3 100644
--- a/doc/gawk.1
+++ b/doc/gawk.1
@@ -14,7 +14,7 @@
. if \w'\(rq' .ds rq "\(rq
. \}
.\}
-.TH GAWK 1 "July 28 2004" "Free Software Foundation" "Utility Commands"
+.TH GAWK 1 "June 26 2005" "Free Software Foundation" "Utility Commands"
.SH NAME
gawk \- pattern scanning and processing language
.SH SYNOPSIS
@@ -248,6 +248,36 @@ names like
and so on.)
.TP
.PD 0
+.BI "\-W exec " file
+.TP
+.PD
+.BI \-\^\-exec " file"
+Similar to
+.BR \-f ,
+however, this is option is the last one processed.
+This should be used with
+.B #!
+scripts, particularly for CGI applications, to avoid
+passing in options or source code (!) on the command line
+from a URL.
+This option disables command-line variable assignments.
+.TP
+.PD 0
+.B "\-W gen\-po"
+.TP
+.PD
+.B \-\^\-gen\-po
+Scan and parse the \*(AK program, and generate a \*(GN
+.B \&.po
+format file on standard output with entries for all localizable
+strings in the program. The program itself is not executed.
+See the \*(GN
+.I gettext
+distribution for more information on
+.B \&.po
+files.
+.TP
+.PD 0
.B "\-W help"
.TP
.PD 0
@@ -291,21 +321,6 @@ not portable to the original version of Unix
.IR awk .
.TP
.PD 0
-.B "\-W gen\-po"
-.TP
-.PD
-.B \-\^\-gen\-po
-Scan and parse the \*(AK program, and generate a \*(GN
-.B \&.po
-format file on standard output with entries for all localizable
-strings in the program. The program itself is not executed.
-See the \*(GN
-.I gettext
-distribution for more information on
-.B \&.po
-files.
-.TP
-.PD 0
.B "\-W non\-decimal\-data"
.TP
.PD
@@ -2386,6 +2401,10 @@ or the length of
if
.I s
is not supplied.
+Starting with version 3.1.5,
+as a non-standard extension, with an array argument,
+.B length()
+returns the number of elements in the array.
.TP
\fBmatch(\fIs\fB, \fIr \fR[\fB, \fIa\fR]\fB)\fR
Returns the position in
@@ -3372,7 +3391,7 @@ and Martin Brown provided the BeOS port.
.SH VERSION INFORMATION
This man page documents
.IR gawk ,
-version 3.1.4.
+version 3.1.5.
.SH BUG REPORTS
If you find a bug in
.IR gawk ,
@@ -3416,7 +3435,7 @@ provided valuable assistance during testing and debugging.
We thank him.
.SH COPYING PERMISSIONS
Copyright \(co 1989, 1991, 1992, 1993, 1994, 1995, 1996,
-1997, 1998, 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual page provided the copyright notice and this permission
diff --git a/doc/gawk.info b/doc/gawk.info
index e60d0038..edc9939c 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -10,11 +10,11 @@ START-INFO-DIR-ENTRY
END-INFO-DIR-ENTRY
Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003 Free Software Foundation, Inc.
+2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
This is Edition 3 of `GAWK: Effective AWK Programming: A User's
-Guide for GNU Awk', for the 3.1.4 (or later) version of the GNU
+Guide for GNU Awk', for the 3.1.5 (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
@@ -41,11 +41,11 @@ This file documents `awk', a program that you can use to select
particular records in a file and perform operations upon them.
Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003 Free Software Foundation, Inc.
+2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
This is Edition 3 of `GAWK: Effective AWK Programming: A User's
-Guide for GNU Awk', for the 3.1.4 (or later) version of the GNU
+Guide for GNU Awk', for the 3.1.5 (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
@@ -1714,7 +1714,7 @@ the date the file was last modified. Its output looks like this:
-rw-r--r-- 1 arnold user 1933 Nov 7 13:05 Makefile
-rw-r--r-- 1 arnold user 10809 Nov 7 13:03 awk.h
-rw-r--r-- 1 arnold user 983 Apr 13 12:14 awk.tab.h
- -rw-r--r-- 1 arnold user 31869 Jun 15 12:20 awk.y
+ -rw-r--r-- 1 arnold user 31869 Jun 15 12:20 awkgram.y
-rw-r--r-- 1 arnold user 22414 Nov 7 13:03 awk1.c
-rw-r--r-- 1 arnold user 37455 Nov 7 13:03 awk2.c
-rw-r--r-- 1 arnold user 27511 Dec 9 13:07 awk3.c
@@ -2960,6 +2960,14 @@ that could match the trailing part is fairly long. `gawk' attempts to
avoid this problem, but currently, there's no guarantee that this will
never happen.
+ NOTE: Remember that in `awk', the `^' and `$' anchor
+ metacharacters match the beginning and end of a _string_, and not
+ the beginning and end of a _line_. As a result, something like
+ `RS = "^[[:upper:]]"' can only match at the beginning of a file.
+ This is because `gawk' views the input file as one long string
+ that happens to contain newline characters in it. It is thus best
+ to avoid anchor characters in the value of `RS'.
+
The use of `RS' as a regular expression and the `RT' variable are
`gawk' extensions; they are not available in compatibility mode (*note
Options::). In compatibility mode, only the first character of the
@@ -4677,12 +4685,12 @@ which they may appear:
-| 1,234,567
For more information about locales and internationalization issues,
- *FIXME: see xxxx*.
+ see *Note Locales::.
NOTE: The `'' flag is a nice feature, but its use complicates
things: it now becomes difficult to use it in command-line
- programs. For information on appropriate quoting tricks,
- *FIXME: see XXXX*.
+ programs. For information on appropriate quoting tricks, see
+ *Note Quoting::.
`WIDTH'
This is a number specifying the desired minimum width of a field.
@@ -5326,11 +5334,11 @@ if there is a system problem closing the file or process. In these
cases, `gawk' sets the built-in variable `ERRNO' to a string describing
the problem.
-In `gawk', when closing a pipe or coprocess, the return value is the
-exit status of the command.(2) Otherwise, it is the return value from
-the system's `close' or `fclose' C functions when closing input or
-output files, respectively. This value is zero if the close succeeds,
-or -1 if it fails.
+In `gawk', when closing a pipe or coprocess (input or output), the
+return value is the exit status of the command.(2) Otherwise, it is the
+return value from the system's `close' or `fclose' C functions when
+closing input or output files, respectively. This value is zero if the
+close succeeds, or -1 if it fails.
The POSIX standard is very vague; it says that `close' returns zero on
success and non-zero otherwise. In general, different implementations
@@ -7453,11 +7461,11 @@ File: gawk.info, Node: Switch Statement, Next: Break Statement, Prev: For Sta
6.4.5 The `switch' Statement
----------------------------
-*NOTE:* This node describes an experimental feature added in `gawk'
-3.1.3. It is _not_ enabled by default. To enable it, use the
-`--enable-switch' option to `configure' when `gawk' is being configured
-and built. *Note Additional Configuration Options::, for more
-information.
+ NOTE: This node describes an experimental feature added in `gawk'
+ 3.1.3. It is _not_ enabled by default. To enable it, use the
+ `--enable-switch' option to `configure' when `gawk' is being
+ configured and built. *Note Additional Configuration Options::,
+ for more information.
The `switch' statement allows the evaluation of an expression and the
execution of statements based on a `case' match. Case statements are
@@ -9235,6 +9243,15 @@ with a pound sign (`#'):
for programs to be maximally portable, always supply the
parentheses.
+ Beginning with `gawk' version 3.2, when supplied an array
+ argument, the `length' function returns the number of elements in
+ the array. This is less useful than it might seem at first, as the
+ array is not guaranteed to be indexed from one to the number of
+ elements in it. If `--lint' is provided on the command line
+ (*note Options::), `gawk' warns that passing an array argument is
+ not portable. If `--posix' is supplied, using an array argument
+ is a fatal error (*note Arrays::).
+
`match(STRING, REGEXP [, ARRAY])'
The `match' function searches STRING for the longest, leftmost
substring matched by the regular expression, REGEXP. It returns
@@ -9399,6 +9416,9 @@ with a pound sign (`#'):
a string value; the automatic coercion of strings to numbers works
only for decimal data, not for octal or hexadecimal.(1)
+ Note also that `strtonum' uses the current locale's decimal point
+ for recognizing numbers.
+
`strtonum' is a `gawk' extension; it is not available in
compatibility mode (*note Options::).
@@ -11420,11 +11440,6 @@ in *Note Top::.) As of this writing, the latest version of GNU
If a translation of `gawk''s messages exists, then `gawk' produces
usage messages, warnings, and fatal errors in the local language.
-On systems that do not use version 2 (or later) of the GNU C library,
-you should configure `gawk' with the `--with-included-gettext' option
-before compiling and installing it. *Note Additional Configuration
-Options::, for more information.
-

File: gawk.info, Node: Advanced Features, Next: Invoking Gawk, Prev: Internationalization, Up: Top
@@ -12097,6 +12112,25 @@ The following list describes `gawk'-specific options:
particularly easy mistake to make with simple variable names like
`i', `j', etc.)
+`-W exec FILE'
+`--exec FILE'
+ Similar to `-f', reads `awk' program text from FILE. There are
+ two differences. The fist is that this option also terminates
+ option processing; anything else on the command line is passed on
+ directly to the `awk' program. The second is that command line
+ variable assignments of the form `VAR=VALUE' are disallowed.
+
+ This option is particularly necessary for World Wide Web CGI
+ applications that pass arguments through the URL; using this
+ option prevents a malicious (or other) user from passing in
+ options, assignments, or `awk' source code (via `--source') to the
+ CGI application. This option should be used with `#!' scripts
+ (*note Executable Scripts::), like so:
+
+ #! /usr/local/bin/gawk --exec
+
+ AWK PROGRAM HERE ...
+
`-W gen-po'
`--gen-po'
Analyzes the source program and generates a GNU `gettext' Portable
@@ -17006,6 +17040,12 @@ Version 3.1 of `gawk' introduced the following features:
* POSIX compliance for `sub' and `gsub' (*note Gory Details::).
+ * The `--exec' option, for use in CGI scripts. (*note Options::).
+
+ * The `length' function was extended to accept an array argument and
+ return the number of elements in the array (*note String
+ Functions::).
+

File: gawk.info, Node: Contributors, Prev: POSIX/GNU, Up: Language History
@@ -17155,8 +17195,8 @@ There are three ways to get GNU software:
in several CD packages. Their address is:
Free Software Foundation
- 59 Temple Place, Suite 330
- Boston, MA 02111-1307 USA
+ 51 Franklin Street, Fifth Floor
+ Boston, MA 02110-1301 USA
Phone: +1-617-542-5942
Fax (including Japan): +1-617-542-2652
Email: <gnu@gnu.org>
@@ -17183,20 +17223,20 @@ B.1.2 Extracting the Distribution
`gawk' is distributed as a `tar' file compressed with the GNU Zip
program, `gzip'.
-Once you have the distribution (for example, `gawk-3.1.4.tar.gz'), use
+Once you have the distribution (for example, `gawk-3.1.5.tar.gz'), use
`gzip' to expand the file and then use `tar' to extract it. You can
use the following pipeline to produce the `gawk' distribution:
# Under System V, add 'o' to the tar options
- gzip -d -c gawk-3.1.4.tar.gz | tar -xvpf -
+ gzip -d -c gawk-3.1.5.tar.gz | tar -xvpf -
-This creates a directory named `gawk-3.1.4' in the current directory.
+This creates a directory named `gawk-3.1.5' in the current directory.
The distribution file name is of the form `gawk-V.R.P.tar.gz'. The V
represents the major version of `gawk', the R represents the current
release of version V, and the P represents a "patch level", meaning
that minor bugs have been fixed in the release. The current patch
-level is 4, but when retrieving distributions, you should get the
+level is 5, but when retrieving distributions, you should get the
version with the highest version, release, and patch level. (Note,
however, that patch levels greater than or equal to 80 denote "beta" or
nonproduction software; you might not want to retrieve such a version
@@ -17315,11 +17355,8 @@ Various `.c', `.y', and `.h' files
for various Unix systems. They are explained in *Note Unix
Installation::.
-`intl/*'
`po/*'
- The `intl' directory provides the GNU `gettext' library, which
- implements `gawk''s internationalization features, while the `po'
- library contains message translations.
+ The `po' library contains message translations.
`awklib/extract.awk'
`awklib/Makefile.am'
@@ -17385,7 +17422,7 @@ B.2.1 Compiling `gawk' for Unix
-------------------------------
After you have extracted the `gawk' distribution, `cd' to
-`gawk-3.1.4'. Like most GNU software, `gawk' is configured
+`gawk-3.1.5'. Like most GNU software, `gawk' is configured
automatically for your Unix system by running the `configure' program.
This program is a Bourne shell script that is generated automatically
using GNU `autoconf'. (The `autoconf' software is described fully
@@ -17437,12 +17474,6 @@ command line when compiling `gawk' from scratch, including:
Enable the recognition and execution of C-style `switch' statements
in `awk' programs (*note Switch Statement::.)
-`--with-included-gettext'
- Use the version of the `gettext' library that comes with `gawk'.
- This option should be used on systems that do _not_ use version 2
- (or later) of the GNU C library. All known modern GNU/Linux
- systems use Glibc 2. Use this option on any other system.
-
`--disable-lint'
This option disables all lint checking within `gawk'. The
`--lint' and `--lint-old' options (*note Options::) are accepted,
@@ -17461,8 +17492,11 @@ command line when compiling `gawk' from scratch, including:
`--disable-nls'
Disable all message-translation facilities. This is usually not
desirable, but it may bring you some slight performance
- improvement. You should also use this option if
- `--with-included-gettext' doesn't work on your system.
+ improvement.
+
+As of version 3.1.5, the `--with-included-gettext' configuration option
+is no longer available, since `gawk' expects the GNU `gettext' library
+to be installed as an external library.

File: gawk.info, Node: Configuration Philosophy, Prev: Additional Configuration Options, Up: Unix Installation
@@ -17711,7 +17745,7 @@ use the following commands at your `sh' prompt:
$ export CPPFLAGS
$ CFLAGS="-O2 -Zomf -Zmt"
$ export CFLAGS
- $ LDFLAGS="-s -Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x8000"
+ $ LDFLAGS="-s -Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x6000"
$ export LDFLAGS
$ RANLIB="echo"
$ export RANLIB
@@ -17725,12 +17759,7 @@ To get an FHS-compliant file hierarchy it is recommended to use the
additional `configure' options `--infodir=c:/usr/share/info',
`--mandir=c:/usr/share/man' and `--libexecdir=c:/usr/lib'.
-The internal `gettext' library tends to be problematic. It is therefore
-recommended to use either an external one
-(`--without-included-gettext') or to disable NLS entirely
-(`--disable-nls').
-
-If you use GCC 2.95 or newer it is recommended to use also:
+If you use GCC 2.95 it is recommended to use also:
$ LIBS="-lgcc"
$ export LIBS
@@ -17741,12 +17770,15 @@ You can also get an `a.out' executable if you prefer:
$ export CPPFLAGS
$ CFLAGS="-O2 -Zmt"
$ export CFLAGS
- $ LDFLAGS="-s -Zstack 0x8000"
+ $ LDFLAGS="-s -Zstack 0x6000"
$ LIBS="-lgcc"
$ unset RANLIB
- $ ./configure --prefix=c:/usr --without-included-gettext
+ $ ./configure --prefix=c:/usr
$ make
+ NOTE: Versions later than GCC 2.95, i.e., GCC 3.x using the
+ Innotek libc were not tested.
+
NOTE: Even if the compiled `gawk.exe' (`a.out') executable
contains a DOS header, it does _not_ work under DOS. To compile an
executable that runs under DOS, `"-DPIPES_SIMULATED"' must be
@@ -17754,9 +17786,9 @@ You can also get an `a.out' executable if you prefer:
`gawk' (e.g., `|&') do not work!
After compilation the internal tests can be performed. Enter `make
-check CMP="diff -a"' at your command prompt. All tests but the `pid'
-test are expected to work properly. The `pid' test fails because child
-processes are not started by `fork()'.
+check CMP="diff -a"' at your command prompt. All tests except for the
+`pid' test are expected to work properly. The `pid' test fails because
+child processes are not started by `fork()'.
`make install' works as expected.
@@ -17923,8 +17955,8 @@ simulation of Unix, using the GNU tools, such as `bash', the GNU
Compiler Collection (GCC), GNU Make, and other GNU tools. Compilation
and installation for Cygwin is the same as for a Unix system:
- tar -xvpzf gawk-3.1.4.tar.gz
- cd gawk-3.1.4
+ tar -xvpzf gawk-3.1.5.tar.gz
+ cd gawk-3.1.5
./configure
make
@@ -18741,6 +18773,11 @@ in C or C++ is necessary when reading this minor node.
subject to change in a future `gawk' release. Be aware that you may
have to re-do everything, perhaps from scratch, at some future time.
+*Caution:* If you have written your own dynamic extensions, be sure to
+recompile them for each new `gawk' release. There is no guarantee of
+binary compatibility between different releases, no will there ever be
+such a guarantee.
+
* Menu:
* Internals:: A brief look at some `gawk' internals.
@@ -18758,7 +18795,7 @@ are something of a "bag on the side." Thus, this tour is brief and
simplistic; would-be `gawk' hackers are encouraged to spend some time
reading the source code before trying to write extensions based on the
material presented here. Of particular note are the files `awk.h',
-`builtin.c', and `eval.c'. Reading `awk.y' in order to see how the
+`builtin.c', and `eval.c'. Reading `awkgram.y' in order to see how the
parse tree is built would also be of use.
With the disclaimers out of the way, the following types, structure
@@ -18903,6 +18940,60 @@ when writing extensions. The next minor node shows how they are used:
the value of `gawk''s `ERRNO' variable, based on the current value
of the C `errno' variable. It is provided as a convenience.
+`void update_ERRNO_saved(int errno_saved)'
+ This function is called from within a C extension function to set
+ the value of `gawk''s `ERRNO' variable, based on the saved value
+ of the C `errno' variable provided as the argument. It is
+ provided as a convenience.
+
+ *Caution:* This function is new as of `gawk' 3.1.5.
+
+`void register_deferred_variable(const char *name, NODE *(*load_func)(void))'
+ This function is called to register a function to be called when a
+ reference to an undefined variable with the given name is
+ encountered. The callback function will never be called if the
+ variable exists already, so, unless the calling code is running at
+ program startup, it should first check whether a variable of the
+ given name already exists. The argument function must return a
+ pointer to a NODE containing the newly created variable. This
+ function is used to implement the builtin `ENVIRON' and `PROCINFO'
+ variables, so you can refer to them for examples.
+
+ *Caution:* This function is new as of `gawk' 3.1.5.
+
+`void register_open_hook(void *(*open_func)(IOBUF *))'
+ This function is called to register a function to be called
+ whenever a new data file is opened, leading to the creation of an
+ `IOBUF' structure in `iop_alloc'. After creating the new `IOBUF',
+ `iop_alloc' will call (in reverse order of registration, so the
+ last function registered is called first) each open hook until one
+ returns non-NULL. If any hook returns a non-NULL value, that
+ value is assigned to the `IOBUF''s `opaque' field (which will
+ presumably point to a structure containing additional state
+ associated with the input processing), and no further open hooks
+ are called.
+
+ The function called will most likely want to set the `IOBUF'
+ `get_record' method to indicate that future input records should
+ be retrieved by calling that method instead of using the standard
+ `gawk' input processing.
+
+ And the function will also probably want to set the `IOBUF'
+ `close_func' method to be called when the file is closed to clean
+ up any state associated with the input.
+
+ Finally, hook functions should be prepared to receive an `IOBUF'
+ structure where the `fd' field is set to `INVALID_HANDLE', meaning
+ that `gawk' was not able to open the file itself. In this case,
+ the hook function must be able to successfully open the file and
+ place a valid file descriptor there.
+
+ Currently, for example, the hook function facility is used to
+ implement the XML parser shared library extension. For more info,
+ please look in `awk.h' and in `io.c'.
+
+ *Caution:* This function is new as of `gawk' 3.1.5.
+
An argument that is supposed to be an array needs to be handled with
some extra code, in case the array being passed in is actually from a
function parameter.
@@ -19366,13 +19457,6 @@ Databases
It may be possible to map a GDBM/NDBM/SDBM file into an `awk'
array.
-Large character sets
- It would be nice if `gawk' could handle UTF-8 and other character
- sets that are larger than eight bits. (`gawk' currently has
- partial multi-byte support, but it needs an expert to really think
- out the multi-byte issues and consult with the maintainer on the
- appropriate changes.)
-
More `lint' warnings
There are more things that could be checked for portability.
@@ -20344,7 +20428,7 @@ GNU General Public License
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111, USA
+ 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -20659,7 +20743,7 @@ the exclusion of warranty; and each file should have at least the
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA.
Also add information on how to contact you by electronic and paper mail.
@@ -20704,7 +20788,7 @@ GNU Free Documentation License
Version 1.2, November 2002
Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -21135,23 +21219,23 @@ Index
* Menu:
-* ! (exclamation point), ! operator: Boolean Ops. (line 6516)
-* ! (exclamation point), ! operator <1>: Egrep Program. (line 14645)
-* ! (exclamation point), ! operator: Precedence. (line 6690)
-* ! (exclamation point), != operator <1>: Precedence. (line 6703)
+* ! (exclamation point), ! operator: Boolean Ops. (line 6524)
+* ! (exclamation point), ! operator <1>: Egrep Program. (line 14679)
+* ! (exclamation point), ! operator: Precedence. (line 6698)
+* ! (exclamation point), != operator <1>: Precedence. (line 6711)
* ! (exclamation point), != operator: Typing and Comparison.
- (line 6334)
+ (line 6342)
* ! (exclamation point), !~ operator <1>: Expression Patterns.
- (line 6843)
-* ! (exclamation point), !~ operator <2>: Precedence. (line 6719)
+ (line 6851)
+* ! (exclamation point), !~ operator <2>: Precedence. (line 6727)
* ! (exclamation point), !~ operator <3>: Typing and Comparison.
- (line 6334)
-* ! (exclamation point), !~ operator <4>: Regexp Constants. (line 5524)
+ (line 6342)
+* ! (exclamation point), !~ operator <4>: Regexp Constants. (line 5532)
* ! (exclamation point), !~ operator <5>: Computed Regexps. (line 2656)
* ! (exclamation point), !~ operator <6>: Case-sensitivity. (line 2569)
* ! (exclamation point), !~ operator: Regexp Usage. (line 1989)
-* ! operator <1>: Egrep Program. (line 14653)
-* ! operator: Ranges. (line 6947)
+* ! operator <1>: Egrep Program. (line 14687)
+* ! operator: Ranges. (line 6955)
* " (double quote) <1>: Quoting. (line 1376)
* " (double quote): Read Terminal. (line 1165)
* " (double quote), regexp constants: Computed Regexps. (line 2677)
@@ -21161,165 +21245,161 @@ Index
(line 1233)
* # (number sign), commenting: Comments. (line 1296)
* $ (dollar sign): Regexp Operators. (line 2210)
-* $ (dollar sign), $ field operator <1>: Precedence. (line 6681)
-* $ (dollar sign), $ field operator: Fields. (line 3019)
+* $ (dollar sign), $ field operator <1>: Precedence. (line 6689)
+* $ (dollar sign), $ field operator: Fields. (line 3027)
* $ (dollar sign), incrementing fields and arrays: Increment Ops.
- (line 6176)
-* $ field operator: Fields. (line 3019)
-* % (percent sign), % operator: Precedence. (line 6693)
-* % (percent sign), %= operator <1>: Precedence. (line 6734)
-* % (percent sign), %= operator: Assignment Ops. (line 6103)
-* & (ampersand), && operator <1>: Precedence. (line 6725)
-* & (ampersand), && operator: Boolean Ops. (line 6506)
+ (line 6184)
+* $ field operator: Fields. (line 3027)
+* % (percent sign), % operator: Precedence. (line 6701)
+* % (percent sign), %= operator <1>: Precedence. (line 6742)
+* % (percent sign), %= operator: Assignment Ops. (line 6111)
+* & (ampersand), && operator <1>: Precedence. (line 6733)
+* & (ampersand), && operator: Boolean Ops. (line 6514)
* & (ampersand), gsub/gensub/sub functions and: Gory Details.
- (line 9622)
+ (line 9642)
* ' (single quote) <1>: Quoting. (line 1370)
* ' (single quote) <2>: Long. (line 1223)
* ' (single quote): One-shot. (line 1126)
* ' (single quote), vs. apostrophe: Comments. (line 1317)
* ' (single quote), with double quotes: Quoting. (line 1392)
* () (parentheses): Regexp Operators. (line 2253)
-* () (parentheses), pgawk program: Profiling. (line 11862)
+* () (parentheses), pgawk program: Profiling. (line 11877)
* * (asterisk), * operator, as multiplication operator: Precedence.
- (line 6693)
+ (line 6701)
* * (asterisk), * operator, as regexp operator: Regexp Operators.
(line 2261)
* * (asterisk), * operator, null strings, matching: Gory Details.
- (line 9776)
-* * (asterisk), ** operator <1>: Options. (line 12157)
-* * (asterisk), ** operator <2>: Precedence. (line 6687)
-* * (asterisk), ** operator: Arithmetic Ops. (line 5890)
-* * (asterisk), **= operator <1>: Options. (line 12157)
-* * (asterisk), **= operator <2>: Precedence. (line 6734)
-* * (asterisk), **= operator: Assignment Ops. (line 6103)
-* * (asterisk), *= operator <1>: Precedence. (line 6734)
-* * (asterisk), *= operator: Assignment Ops. (line 6103)
+ (line 9796)
+* * (asterisk), ** operator <1>: Options. (line 12191)
+* * (asterisk), ** operator <2>: Precedence. (line 6695)
+* * (asterisk), ** operator: Arithmetic Ops. (line 5898)
+* * (asterisk), **= operator <1>: Options. (line 12191)
+* * (asterisk), **= operator <2>: Precedence. (line 6742)
+* * (asterisk), **= operator: Assignment Ops. (line 6111)
+* * (asterisk), *= operator <1>: Precedence. (line 6742)
+* * (asterisk), *= operator: Assignment Ops. (line 6111)
* + (plus sign): Regexp Operators. (line 2276)
-* + (plus sign), + operator: Precedence. (line 6690)
-* + (plus sign), ++ operator <1>: Precedence. (line 6684)
-* + (plus sign), ++ operator: Increment Ops. (line 6186)
-* + (plus sign), += operator <1>: Precedence. (line 6734)
-* + (plus sign), += operator: Assignment Ops. (line 6056)
+* + (plus sign), + operator: Precedence. (line 6698)
+* + (plus sign), ++ operator <1>: Precedence. (line 6692)
+* + (plus sign), ++ operator: Increment Ops. (line 6194)
+* + (plus sign), += operator <1>: Precedence. (line 6742)
+* + (plus sign), += operator: Assignment Ops. (line 6064)
* + (plus sign), decrement/increment operators: Increment Ops.
- (line 6157)
-* , (comma), in range patterns: Ranges. (line 6905)
-* - (hyphen), - operator: Precedence. (line 6690)
+ (line 6165)
+* , (comma), in range patterns: Ranges. (line 6913)
+* - (hyphen), - operator: Precedence. (line 6698)
* - (hyphen), -- (decrement/increment) operator: Precedence.
- (line 6684)
-* - (hyphen), -- operator: Increment Ops. (line 6194)
-* - (hyphen), -= operator <1>: Precedence. (line 6734)
-* - (hyphen), -= operator: Assignment Ops. (line 6103)
-* - (hyphen), filenames beginning with: Options. (line 12058)
+ (line 6692)
+* - (hyphen), -- operator: Increment Ops. (line 6202)
+* - (hyphen), -= operator <1>: Precedence. (line 6742)
+* - (hyphen), -= operator: Assignment Ops. (line 6111)
+* - (hyphen), filenames beginning with: Options. (line 12073)
* - (hyphen), in character lists: Character Lists. (line 2364)
-* --assign option: Options. (line 12021)
-* --compat option: Options. (line 12070)
-* --copyleft option: Options. (line 12083)
-* --copyright option: Options. (line 12078)
+* --assign option: Options. (line 12036)
+* --compat option: Options. (line 12085)
+* --copyleft option: Options. (line 12098)
+* --copyright option: Options. (line 12093)
* --disable-lint configuration option: Additional Configuration Options.
- (line 17446)
+ (line 17477)
* --disable-nls configuration option: Additional Configuration Options.
- (line 17461)
-* --dump-variables option <1>: Library Names. (line 12546)
-* --dump-variables option: Options. (line 12086)
+ (line 17492)
+* --dump-variables option <1>: Library Names. (line 12580)
+* --dump-variables option: Options. (line 12101)
* --enable-portals configuration option <1>: Additional Configuration Options.
- (line 17432)
-* --enable-portals configuration option: Portal Files. (line 11710)
+ (line 17469)
+* --enable-portals configuration option: Portal Files. (line 11725)
* --enable-switch configuration option: Additional Configuration Options.
- (line 17436)
-* --field-separator option: Options. (line 12012)
-* --file option: Options. (line 12016)
-* --gen-po option <1>: Options. (line 12102)
-* --gen-po option: String Extraction. (line 11157)
-* --help option: Options. (line 12111)
-* --lint option <1>: Options. (line 12116)
-* --lint option: Command Line. (line 11987)
-* --lint-old option: Options. (line 12128)
-* --non-decimal-data option <1>: Options. (line 12133)
-* --non-decimal-data option: Nondecimal Data. (line 11465)
+ (line 17473)
+* --exec option: Options. (line 12117)
+* --field-separator option: Options. (line 12027)
+* --file option: Options. (line 12031)
+* --gen-po option <1>: Options. (line 12136)
+* --gen-po option: String Extraction. (line 11177)
+* --help option: Options. (line 12145)
+* --lint option <1>: Options. (line 12150)
+* --lint option: Command Line. (line 12002)
+* --lint-old option: Options. (line 12162)
+* --non-decimal-data option <1>: Options. (line 12167)
+* --non-decimal-data option: Nondecimal Data. (line 11480)
* --non-decimal-data option, strtonum function and: Nondecimal Data.
- (line 11495)
-* --posix option: Options. (line 12141)
-* --posix option, --traditional option and: Options. (line 12168)
-* --profile option <1>: Options. (line 12174)
-* --profile option: Profiling. (line 11734)
-* --re-interval option: Options. (line 12186)
-* --source option: Options. (line 12193)
-* --traditional option: Options. (line 12070)
-* --traditional option, --posix option and: Options. (line 12168)
-* --usage option: Options. (line 12111)
-* --version option: Options. (line 12201)
-* --with-included-gettext configuration option <1>: Additional Configuration Options.
- (line 17440)
-* --with-included-gettext configuration option: Gawk I18N. (line 11423)
-* --with-included-gettext configuration option, configuring gawk with: Additional Configuration Options.
- (line 17440)
-* -f option: Options. (line 12016)
-* -F option <1>: Options. (line 12012)
+ (line 11510)
+* --posix option: Options. (line 12175)
+* --posix option, --traditional option and: Options. (line 12202)
+* --profile option <1>: Options. (line 12208)
+* --profile option: Profiling. (line 11749)
+* --re-interval option: Options. (line 12220)
+* --source option: Options. (line 12227)
+* --traditional option: Options. (line 12085)
+* --traditional option, --posix option and: Options. (line 12202)
+* --usage option: Options. (line 12145)
+* --version option: Options. (line 12235)
+* -f option: Options. (line 12031)
+* -F option <1>: Options. (line 12027)
* -F option: Command Line Field Separator.
- (line 3419)
+ (line 3427)
* -f option: Long. (line 1202)
-* -F option, -Ft sets FS to TAB: Options. (line 12209)
-* -f option, on command line: Options. (line 12214)
-* -F option, troubleshooting: Known Bugs. (line 12420)
-* -mf/-mr options: Options. (line 12036)
-* -v option: Options. (line 12021)
+* -F option, -Ft sets FS to TAB: Options. (line 12243)
+* -f option, on command line: Options. (line 12248)
+* -F option, troubleshooting: Known Bugs. (line 12454)
+* -mf/-mr options: Options. (line 12051)
+* -v option: Options. (line 12036)
* -v option, variables, assigning: Assignment Options.
- (line 5669)
-* -W option: Options. (line 12046)
+ (line 5677)
+* -W option: Options. (line 12061)
* . (period): Regexp Operators. (line 2218)
* .mo files: Explaining gettext.
- (line 10934)
-* .mo files, converting from .po: I18N Example. (line 11380)
-* .mo files, specifying directory of <1>: Programmer i18n. (line 11070)
+ (line 10954)
+* .mo files, converting from .po: I18N Example. (line 11400)
+* .mo files, specifying directory of <1>: Programmer i18n. (line 11090)
* .mo files, specifying directory of: Explaining gettext.
- (line 10946)
-* .po files <1>: Translator i18n. (line 11136)
+ (line 10966)
+* .po files <1>: Translator i18n. (line 11156)
* .po files: Explaining gettext.
- (line 10931)
-* .po files, converting to .mo: I18N Example. (line 11380)
+ (line 10951)
+* .po files, converting to .mo: I18N Example. (line 11400)
* / (forward slash): Regexp. (line 1949)
-* / (forward slash), / operator: Precedence. (line 6693)
-* / (forward slash), /= operator <1>: Precedence. (line 6734)
-* / (forward slash), /= operator: Assignment Ops. (line 6103)
+* / (forward slash), / operator: Precedence. (line 6701)
+* / (forward slash), /= operator <1>: Precedence. (line 6742)
+* / (forward slash), /= operator: Assignment Ops. (line 6111)
* / (forward slash), /= operator, vs. /=.../ regexp constant: Assignment Ops.
- (line 6129)
+ (line 6137)
* / (forward slash), patterns and: Expression Patterns.
- (line 6843)
-* /= operator vs. /=.../ regexp constant: Assignment Ops. (line 6129)
-* /dev/... special files (gawk): Special FD. (line 5046)
-* /inet/ files (gawk): TCP/IP Networking. (line 11643)
-* /p files (gawk): Portal Files. (line 11710)
+ (line 6851)
+* /= operator vs. /=.../ regexp constant: Assignment Ops. (line 6137)
+* /dev/... special files (gawk): Special FD. (line 5054)
+* /inet/ files (gawk): TCP/IP Networking. (line 11658)
+* /p files (gawk): Portal Files. (line 11725)
* ; (semicolon): Statements/Lines. (line 1853)
-* ; (semicolon), AWKPATH variable and: PC Using. (line 17826)
+* ; (semicolon), AWKPATH variable and: PC Using. (line 17858)
* ; (semicolon), separating statements in actions <1>: Statements.
- (line 7220)
+ (line 7228)
* ; (semicolon), separating statements in actions: Action Overview.
- (line 7170)
-* < (left angle bracket), < operator <1>: Precedence. (line 6703)
+ (line 7178)
+* < (left angle bracket), < operator <1>: Precedence. (line 6711)
* < (left angle bracket), < operator: Typing and Comparison.
- (line 6334)
-* < (left angle bracket), < operator (I/O): Getline/File. (line 3971)
-* < (left angle bracket), <= operator <1>: Precedence. (line 6703)
+ (line 6342)
+* < (left angle bracket), < operator (I/O): Getline/File. (line 3979)
+* < (left angle bracket), <= operator <1>: Precedence. (line 6711)
* < (left angle bracket), <= operator: Typing and Comparison.
- (line 6334)
-* = (equals sign), = operator: Assignment Ops. (line 5981)
-* = (equals sign), == operator <1>: Precedence. (line 6703)
+ (line 6342)
+* = (equals sign), = operator: Assignment Ops. (line 5989)
+* = (equals sign), == operator <1>: Precedence. (line 6711)
* = (equals sign), == operator: Typing and Comparison.
- (line 6334)
-* > (right angle bracket), > operator <1>: Precedence. (line 6703)
+ (line 6342)
+* > (right angle bracket), > operator <1>: Precedence. (line 6711)
* > (right angle bracket), > operator: Typing and Comparison.
- (line 6334)
-* > (right angle bracket), > operator (I/O): Redirection. (line 4856)
-* > (right angle bracket), >= operator <1>: Precedence. (line 6703)
+ (line 6342)
+* > (right angle bracket), > operator (I/O): Redirection. (line 4864)
+* > (right angle bracket), >= operator <1>: Precedence. (line 6711)
* > (right angle bracket), >= operator: Typing and Comparison.
- (line 6334)
+ (line 6342)
* > (right angle bracket), >> operator (I/O) <1>: Precedence.
- (line 6703)
-* > (right angle bracket), >> operator (I/O): Redirection. (line 4884)
+ (line 6711)
+* > (right angle bracket), >> operator (I/O): Redirection. (line 4892)
* ? (question mark) <1>: GNU Regexp Operators.
(line 2506)
* ? (question mark): Regexp Operators. (line 2285)
-* ? (question mark), ?: operator: Precedence. (line 6731)
+* ? (question mark), ?: operator: Precedence. (line 6739)
* [] (square brackets): Regexp Operators. (line 2230)
* \ (backslash) <1>: Regexp Operators. (line 2193)
* \ (backslash) <2>: Quoting. (line 1370)
@@ -21353,8 +21433,8 @@ Index
* \ (backslash), \y operator (gawk): GNU Regexp Operators.
(line 2485)
* \ (backslash), as field separators: Command Line Field Separator.
- (line 3440)
-* \ (backslash), continuing lines and <1>: Egrep Program. (line 14703)
+ (line 3448)
+* \ (backslash), continuing lines and <1>: Egrep Program. (line 14737)
* \ (backslash), continuing lines and: Statements/Lines. (line 1783)
* \ (backslash), continuing lines and, comments and: Statements/Lines.
(line 1838)
@@ -21363,7 +21443,7 @@ Index
* \ (backslash), continuing lines and, in csh: More Complex.
(line 1708)
* \ (backslash), gsub/gensub/sub functions and: Gory Details.
- (line 9622)
+ (line 9642)
* \ (backslash), in character lists: Character Lists. (line 2364)
* \ (backslash), in escape sequences: Escape Sequences. (line 2038)
* \ (backslash), in escape sequences, POSIX and: Escape Sequences.
@@ -21372,214 +21452,214 @@ Index
* ^ (caret) <1>: GNU Regexp Operators.
(line 2506)
* ^ (caret): Regexp Operators. (line 2197)
-* ^ (caret), ^ operator <1>: Options. (line 12157)
-* ^ (caret), ^ operator: Precedence. (line 6687)
-* ^ (caret), ^= operator <1>: Options. (line 12157)
-* ^ (caret), ^= operator <2>: Precedence. (line 6734)
-* ^ (caret), ^= operator: Assignment Ops. (line 6103)
+* ^ (caret), ^ operator <1>: Options. (line 12191)
+* ^ (caret), ^ operator: Precedence. (line 6695)
+* ^ (caret), ^= operator <1>: Options. (line 12191)
+* ^ (caret), ^= operator <2>: Precedence. (line 6742)
+* ^ (caret), ^= operator: Assignment Ops. (line 6111)
* ^ (caret), in character lists: Character Lists. (line 2364)
* _ (underscore), _ C macro: Explaining gettext.
- (line 10963)
+ (line 10983)
* _ (underscore), in names of private variables: Library Names.
- (line 12530)
-* _ (underscore), translatable string: Programmer i18n. (line 11092)
-* _gr_init user-defined function: Group Functions. (line 14008)
-* _pw_init user-defined function: Passwd Functions. (line 13794)
-* accessing fields: Fields. (line 3006)
-* account information <1>: Group Functions. (line 13934)
-* account information: Passwd Functions. (line 13719)
-* actions: Action Overview. (line 7157)
-* actions, control statements in: Statements. (line 7216)
+ (line 12564)
+* _ (underscore), translatable string: Programmer i18n. (line 11112)
+* _gr_init user-defined function: Group Functions. (line 14042)
+* _pw_init user-defined function: Passwd Functions. (line 13828)
+* accessing fields: Fields. (line 3014)
+* account information <1>: Group Functions. (line 13968)
+* account information: Passwd Functions. (line 13753)
+* actions: Action Overview. (line 7165)
+* actions, control statements in: Statements. (line 7224)
* actions, default: Very Simple. (line 1559)
* actions, empty: Very Simple. (line 1564)
-* adding, features to gawk: Adding Code. (line 18515)
-* adding, fields: Changing Fields. (line 3169)
+* adding, features to gawk: Adding Code. (line 18547)
+* adding, fields: Changing Fields. (line 3177)
* adding, functions to gawk: Dynamic Extensions.
- (line 18733)
-* advanced features, buffering: I/O Functions. (line 9884)
+ (line 18765)
+* advanced features, buffering: I/O Functions. (line 9904)
* advanced features, close function: Close Files And Pipes.
- (line 5315)
+ (line 5323)
* advanced features, constants, values of: Nondecimal-numbers.
- (line 5510)
-* advanced features, data files as single record: Records. (line 2971)
-* advanced features, fixed-width data: Constant Size. (line 3597)
-* advanced features, FNR/NR variables: Auto-set. (line 8140)
-* advanced features, gawk: Advanced Features. (line 11434)
-* advanced features, gawk, BSD portals: Portal Files. (line 11710)
+ (line 5518)
+* advanced features, data files as single record: Records. (line 2979)
+* advanced features, fixed-width data: Constant Size. (line 3605)
+* advanced features, FNR/NR variables: Auto-set. (line 8148)
+* advanced features, gawk: Advanced Features. (line 11449)
+* advanced features, gawk, BSD portals: Portal Files. (line 11725)
* advanced features, gawk, network programming: TCP/IP Networking.
- (line 11643)
+ (line 11658)
* advanced features, gawk, nondecimal input data: Nondecimal Data.
- (line 11465)
+ (line 11480)
* advanced features, gawk, processes, communicating with: Two-way I/O.
- (line 11524)
+ (line 11539)
* advanced features, network connections, See Also networks, connections: Advanced Features.
- (line 11434)
-* advanced features, null strings, matching: Gory Details. (line 9776)
-* advanced features, operators, precedence: Increment Ops. (line 6207)
-* advanced features, piping into sh: Redirection. (line 4973)
-* advanced features, regexp constants: Assignment Ops. (line 6129)
-* Aho, Alfred <1>: Contributors. (line 17022)
+ (line 11449)
+* advanced features, null strings, matching: Gory Details. (line 9796)
+* advanced features, operators, precedence: Increment Ops. (line 6215)
+* advanced features, piping into sh: Redirection. (line 4981)
+* advanced features, regexp constants: Assignment Ops. (line 6137)
+* Aho, Alfred <1>: Contributors. (line 17062)
* Aho, Alfred: History. (line 640)
-* alarm clock example program: Alarm Program. (line 15446)
-* alarm.awk program: Alarm Program. (line 15464)
-* algorithms: Basic High Level. (line 19519)
+* alarm clock example program: Alarm Program. (line 15480)
+* alarm.awk program: Alarm Program. (line 15498)
+* algorithms: Basic High Level. (line 19603)
* Alpha (DEC): Manual History. (line 886)
-* amazing awk assembler (aaa): Glossary. (line 19753)
-* amazingly workable formatter (awf): Glossary. (line 19761)
+* amazing awk assembler (aaa): Glossary. (line 19837)
+* amazingly workable formatter (awf): Glossary. (line 19845)
* ambiguity, syntactic: /= operator vs. /=.../ regexp constant: Assignment Ops.
- (line 6129)
+ (line 6137)
* amiga: Amiga Installation.
- (line 17535)
-* ampersand (&), && operator: Boolean Ops. (line 6506)
-* ampersand (&), &&operator: Precedence. (line 6725)
+ (line 17569)
+* ampersand (&), && operator: Boolean Ops. (line 6514)
+* ampersand (&), &&operator: Precedence. (line 6733)
* ampersand (&), gsub/gensub/sub functions and: Gory Details.
- (line 9622)
-* AND bitwise operation: Bitwise Functions. (line 10294)
-* and Boolean-logic operator: Boolean Ops. (line 6455)
-* and function (gawk): Bitwise Functions. (line 10327)
-* ANSI: Glossary. (line 19772)
-* archeologists: Bugs. (line 18282)
-* ARGC/ARGV variables <1>: ARGC and ARGV. (line 8172)
-* ARGC/ARGV variables: Auto-set. (line 7964)
+ (line 9642)
+* AND bitwise operation: Bitwise Functions. (line 10314)
+* and Boolean-logic operator: Boolean Ops. (line 6463)
+* and function (gawk): Bitwise Functions. (line 10347)
+* ANSI: Glossary. (line 19856)
+* archeologists: Bugs. (line 18314)
+* ARGC/ARGV variables <1>: ARGC and ARGV. (line 8180)
+* ARGC/ARGV variables: Auto-set. (line 7972)
* ARGC/ARGV variables, command-line arguments: Other Arguments.
- (line 12277)
+ (line 12311)
* ARGC/ARGV variables, portability and: Executable Scripts.
(line 1270)
-* ARGIND variable: Auto-set. (line 7993)
-* ARGIND variable, command-line arguments: Other Arguments. (line 12277)
-* arguments, command-line <1>: Other Arguments. (line 12271)
-* arguments, command-line <2>: ARGC and ARGV. (line 8172)
-* arguments, command-line: Auto-set. (line 7964)
-* arguments, command-line, invoking awk: Command Line. (line 11973)
-* arguments, in function calls: Function Calls. (line 6595)
-* arguments, processing: Getopt Function. (line 13426)
-* arguments, retrieving: Internals. (line 18870)
-* arithmetic operators: Arithmetic Ops. (line 5815)
-* arrays: Arrays. (line 8268)
-* arrays, as parameters to functions: Function Caveats. (line 10696)
-* arrays, associative: Array Intro. (line 8348)
-* arrays, associative, clearing: Internals. (line 18815)
+* ARGIND variable: Auto-set. (line 8001)
+* ARGIND variable, command-line arguments: Other Arguments. (line 12311)
+* arguments, command-line <1>: Other Arguments. (line 12305)
+* arguments, command-line <2>: ARGC and ARGV. (line 8180)
+* arguments, command-line: Auto-set. (line 7972)
+* arguments, command-line, invoking awk: Command Line. (line 11988)
+* arguments, in function calls: Function Calls. (line 6603)
+* arguments, processing: Getopt Function. (line 13460)
+* arguments, retrieving: Internals. (line 18907)
+* arithmetic operators: Arithmetic Ops. (line 5823)
+* arrays: Arrays. (line 8276)
+* arrays, as parameters to functions: Function Caveats. (line 10716)
+* arrays, associative: Array Intro. (line 8356)
+* arrays, associative, clearing: Internals. (line 18852)
* arrays, associative, library functions and: Library Names.
- (line 12558)
-* arrays, deleting entire contents: Delete. (line 8610)
+ (line 12592)
+* arrays, deleting entire contents: Delete. (line 8618)
* arrays, elements, assigning: Assigning Elements.
- (line 8452)
-* arrays, elements, deleting: Delete. (line 8577)
-* arrays, elements, installing: Internals. (line 18819)
-* arrays, elements, order of: Scanning an Array. (line 8563)
+ (line 8460)
+* arrays, elements, deleting: Delete. (line 8585)
+* arrays, elements, installing: Internals. (line 18856)
+* arrays, elements, order of: Scanning an Array. (line 8571)
* arrays, elements, referencing: Reference to Elements.
- (line 8405)
-* arrays, elements, retrieving number of: String Functions. (line 9168)
-* arrays, for statement and: Scanning an Array. (line 8536)
-* arrays, IGNORECASE variable and: Array Intro. (line 8390)
-* arrays, indexing: Array Intro. (line 8348)
-* arrays, merging into strings: Join Function. (line 13033)
-* arrays, multidimensional: Multi-dimensional. (line 8746)
-* arrays, multidimensional, scanning: Multi-scanning. (line 8832)
-* arrays, names of: Arrays. (line 8279)
-* arrays, scanning: Scanning an Array. (line 8522)
-* arrays, sorting: Array Sorting. (line 8867)
-* arrays, sorting, IGNORECASE variable and: Array Sorting. (line 8945)
-* arrays, sparse: Array Intro. (line 8369)
+ (line 8413)
+* arrays, elements, retrieving number of: String Functions. (line 9176)
+* arrays, for statement and: Scanning an Array. (line 8544)
+* arrays, IGNORECASE variable and: Array Intro. (line 8398)
+* arrays, indexing: Array Intro. (line 8356)
+* arrays, merging into strings: Join Function. (line 13067)
+* arrays, multidimensional: Multi-dimensional. (line 8754)
+* arrays, multidimensional, scanning: Multi-scanning. (line 8840)
+* arrays, names of: Arrays. (line 8287)
+* arrays, scanning: Scanning an Array. (line 8530)
+* arrays, sorting: Array Sorting. (line 8875)
+* arrays, sorting, IGNORECASE variable and: Array Sorting. (line 8953)
+* arrays, sparse: Array Intro. (line 8377)
* arrays, subscripts: Numeric Array Subscripts.
- (line 8648)
+ (line 8656)
* arrays, subscripts, uninitialized variables as: Uninitialized Subscripts.
- (line 8699)
+ (line 8707)
* artificial intelligence, gawk and: Distribution contents.
- (line 17254)
-* ASCII: Ordinal Functions. (line 12980)
-* asort function (gawk) <1>: String Functions. (line 9168)
-* asort function (gawk): Array Sorting. (line 8867)
-* asort function (gawk), arrays, sorting: Array Sorting. (line 8867)
-* asorti function (gawk): String Functions. (line 9197)
-* assert function (C library): Assert Function. (line 12781)
-* assert user-defined function: Assert Function. (line 12803)
-* assertions: Assert Function. (line 12781)
-* assignment operators: Assignment Ops. (line 5981)
-* assignment operators, evaluation order: Assignment Ops. (line 6085)
-* assignment operators, lvalues/rvalues: Assignment Ops. (line 6006)
-* assignments as filenames: Ignoring Assigns. (line 13384)
-* assoc_clear internal function: Internals. (line 18815)
-* assoc_lookup internal function: Internals. (line 18819)
-* associative arrays: Array Intro. (line 8348)
+ (line 17294)
+* ASCII: Ordinal Functions. (line 13014)
+* asort function (gawk) <1>: String Functions. (line 9176)
+* asort function (gawk): Array Sorting. (line 8875)
+* asort function (gawk), arrays, sorting: Array Sorting. (line 8875)
+* asorti function (gawk): String Functions. (line 9205)
+* assert function (C library): Assert Function. (line 12815)
+* assert user-defined function: Assert Function. (line 12837)
+* assertions: Assert Function. (line 12815)
+* assignment operators: Assignment Ops. (line 5989)
+* assignment operators, evaluation order: Assignment Ops. (line 6093)
+* assignment operators, lvalues/rvalues: Assignment Ops. (line 6014)
+* assignments as filenames: Ignoring Assigns. (line 13418)
+* assoc_clear internal function: Internals. (line 18852)
+* assoc_lookup internal function: Internals. (line 18856)
+* associative arrays: Array Intro. (line 8356)
* asterisk (*), * operator, as multiplication operator: Precedence.
- (line 6693)
+ (line 6701)
* asterisk (*), * operator, as regexp operator: Regexp Operators.
(line 2261)
* asterisk (*), * operator, null strings, matching: Gory Details.
- (line 9776)
-* asterisk (*), ** operator <1>: Options. (line 12157)
-* asterisk (*), ** operator <2>: Precedence. (line 6687)
-* asterisk (*), ** operator: Arithmetic Ops. (line 5890)
-* asterisk (*), **= operator <1>: Options. (line 12157)
-* asterisk (*), **= operator <2>: Precedence. (line 6734)
-* asterisk (*), **= operator: Assignment Ops. (line 6103)
-* asterisk (*), *= operator <1>: Precedence. (line 6734)
-* asterisk (*), *= operator: Assignment Ops. (line 6103)
-* atan2 function: Numeric Functions. (line 9074)
+ (line 9796)
+* asterisk (*), ** operator <1>: Options. (line 12191)
+* asterisk (*), ** operator <2>: Precedence. (line 6695)
+* asterisk (*), ** operator: Arithmetic Ops. (line 5898)
+* asterisk (*), **= operator <1>: Options. (line 12191)
+* asterisk (*), **= operator <2>: Precedence. (line 6742)
+* asterisk (*), **= operator: Assignment Ops. (line 6111)
+* asterisk (*), *= operator <1>: Precedence. (line 6742)
+* asterisk (*), *= operator: Assignment Ops. (line 6111)
+* atan2 function: Numeric Functions. (line 9082)
* atari: Atari Installation.
- (line 18129)
-* awf (amazingly workable formatter) program: Glossary. (line 19761)
-* awk language, POSIX version: Assignment Ops. (line 6114)
+ (line 18161)
+* awf (amazingly workable formatter) program: Glossary. (line 19845)
+* awk language, POSIX version: Assignment Ops. (line 6122)
* awk programs <1>: Two Rules. (line 1647)
* awk programs <2>: Executable Scripts.
(line 1233)
* awk programs: Getting Started. (line 1038)
* awk programs, complex: When. (line 1923)
-* awk programs, documenting <1>: Library Names. (line 12507)
+* awk programs, documenting <1>: Library Names. (line 12541)
* awk programs, documenting: Comments. (line 1296)
-* awk programs, examples of: Sample Programs. (line 14166)
-* awk programs, execution of: Next Statement. (line 7637)
-* awk programs, internationalizing <1>: Programmer i18n. (line 11031)
-* awk programs, internationalizing: I18N Functions. (line 10416)
+* awk programs, examples of: Sample Programs. (line 14200)
+* awk programs, execution of: Next Statement. (line 7645)
+* awk programs, internationalizing <1>: Programmer i18n. (line 11051)
+* awk programs, internationalizing: I18N Functions. (line 10436)
* awk programs, lengthy: Long. (line 1196)
-* awk programs, lengthy, assertions: Assert Function. (line 12781)
-* awk programs, location of: Options. (line 12016)
+* awk programs, lengthy, assertions: Assert Function. (line 12815)
+* awk programs, location of: Options. (line 12031)
* awk programs, one-line examples: Very Simple. (line 1570)
-* awk programs, profiling: Profiling. (line 11725)
-* awk programs, profiling, enabling: Options. (line 12174)
+* awk programs, profiling: Profiling. (line 11740)
+* awk programs, profiling, enabling: Options. (line 12208)
* awk programs, running <1>: Long. (line 1196)
* awk programs, running: Running gawk. (line 1084)
* awk programs, running, from shell scripts: One-shot. (line 1133)
* awk programs, running, without input files: Read Terminal.
(line 1157)
* awk programs, shell variables in: Using Shell Variables.
- (line 7106)
+ (line 7114)
* awk, function of: Getting Started. (line 1032)
* awk, gawk and <1>: This Manual. (line 718)
* awk, gawk and: Preface. (line 569)
* awk, history of: History. (line 640)
-* awk, implementation issues, pipes: Redirection. (line 4965)
-* awk, implementations: Other Versions. (line 18351)
-* awk, implementations, limits: Getline Notes. (line 4185)
-* awk, invoking: Command Line. (line 11973)
+* awk, implementation issues, pipes: Redirection. (line 4973)
+* awk, implementations: Other Versions. (line 18383)
+* awk, implementations, limits: Getline Notes. (line 4193)
+* awk, invoking: Command Line. (line 11988)
* awk, new vs. old: Names. (line 677)
-* awk, new vs. old, OFMT variable: Conversion. (line 5759)
+* awk, new vs. old, OFMT variable: Conversion. (line 5767)
* awk, POSIX and: Preface. (line 569)
* awk, POSIX and, See Also POSIX awk: Preface. (line 569)
* awk, regexp constants and: Typing and Comparison.
- (line 6434)
+ (line 6442)
* awk, See Also gawk: Preface. (line 582)
* awk, terms describing: This Manual. (line 711)
* awk, uses for <1>: When. (line 1899)
* awk, uses for <2>: Getting Started. (line 1038)
* awk, uses for: Preface. (line 569)
-* awk, versions of <1>: V7/SVR3.1. (line 16631)
+* awk, versions of <1>: V7/SVR3.1. (line 16665)
* awk, versions of: Names. (line 681)
-* awk, versions of, changes between SVR3.1 and SVR4: SVR4. (line 16690)
+* awk, versions of, changes between SVR3.1 and SVR4: SVR4. (line 16724)
* awk, versions of, changes between SVR4 and POSIX awk: POSIX.
- (line 16731)
+ (line 16765)
* awk, versions of, changes between V7 and SVR3.1: V7/SVR3.1.
- (line 16631)
-* awk, versions of, See Also Bell Laboratories awk: BTL. (line 16775)
-* awk.h file (internal): Internals. (line 18764)
-* awka compiler for awk: Other Versions. (line 18421)
-* AWKNUM internal type: Internals. (line 18768)
-* AWKPATH environment variable <1>: PC Using. (line 17826)
-* AWKPATH environment variable: AWKPATH Variable. (line 12327)
-* awkprof.out file: Profiling. (line 11729)
-* awksed.awk program: Simple Sed. (line 16155)
-* awkvars.out file: Options. (line 12086)
+ (line 16665)
+* awk, versions of, See Also Bell Laboratories awk: BTL. (line 16809)
+* awk.h file (internal): Internals. (line 18801)
+* awka compiler for awk: Other Versions. (line 18453)
+* AWKNUM internal type: Internals. (line 18805)
+* AWKPATH environment variable <1>: PC Using. (line 17858)
+* AWKPATH environment variable: AWKPATH Variable. (line 12361)
+* awkprof.out file: Profiling. (line 11744)
+* awksed.awk program: Simple Sed. (line 16189)
+* awkvars.out file: Options. (line 12101)
* backslash (\) <1>: Regexp Operators. (line 2193)
* backslash (\) <2>: Quoting. (line 1370)
* backslash (\) <3>: Comments. (line 1339)
@@ -21612,8 +21692,8 @@ Index
* backslash (\), \y operator (gawk): GNU Regexp Operators.
(line 2485)
* backslash (\), as field separators: Command Line Field Separator.
- (line 3440)
-* backslash (\), continuing lines and <1>: Egrep Program. (line 14703)
+ (line 3448)
+* backslash (\), continuing lines and <1>: Egrep Program. (line 14737)
* backslash (\), continuing lines and: Statements/Lines. (line 1783)
* backslash (\), continuing lines and, comments and: Statements/Lines.
(line 1838)
@@ -21622,7 +21702,7 @@ Index
* backslash (\), continuing lines and, in csh: More Complex.
(line 1708)
* backslash (\), gsub/gensub/sub functions and: Gory Details.
- (line 9622)
+ (line 9642)
* backslash (\), in character lists: Character Lists. (line 2364)
* backslash (\), in escape sequences: Escape Sequences. (line 2038)
* backslash (\), in escape sequences, POSIX and: Escape Sequences.
@@ -21630,108 +21710,109 @@ Index
* backslash (\), regexp constants: Computed Regexps. (line 2677)
* BBS-list file: Sample Data Files. (line 1461)
* Beebe, Nelson: Acknowledgments. (line 995)
-* Beebe, Nelson H.F.: Other Versions. (line 18433)
-* BEGIN pattern <1>: BEGIN/END. (line 6972)
-* BEGIN pattern <2>: Field Separators. (line 3292)
+* Beebe, Nelson H.F.: Other Versions. (line 18465)
+* BEGIN pattern <1>: BEGIN/END. (line 6980)
+* BEGIN pattern <2>: Field Separators. (line 3300)
* BEGIN pattern: Records. (line 2839)
* BEGIN pattern, assert user-defined function and: Assert Function.
- (line 12857)
+ (line 12891)
* BEGIN pattern, Boolean patterns and: Expression Patterns.
- (line 6892)
-* BEGIN pattern, exit statement and: Exit Statement. (line 7735)
-* BEGIN pattern, getline and: Getline Notes. (line 4190)
-* BEGIN pattern, headings, adding: Print Examples. (line 4342)
+ (line 6900)
+* BEGIN pattern, exit statement and: Exit Statement. (line 7743)
+* BEGIN pattern, getline and: Getline Notes. (line 4198)
+* BEGIN pattern, headings, adding: Print Examples. (line 4350)
* BEGIN pattern, next/nextfile statements and <1>: Next Statement.
- (line 7660)
+ (line 7668)
* BEGIN pattern, next/nextfile statements and: I/O And BEGIN/END.
- (line 7080)
+ (line 7088)
* BEGIN pattern, OFS/ORS variables, assigning values to: Output Separators.
- (line 4399)
-* BEGIN pattern, operators and: Using BEGIN/END. (line 7002)
-* BEGIN pattern, pgawk program: Profiling. (line 11787)
-* BEGIN pattern, print statement and: I/O And BEGIN/END. (line 7060)
-* BEGIN pattern, pwcat program: Passwd Functions. (line 13828)
-* BEGIN pattern, running awk programs and: Cut Program. (line 14297)
-* BEGIN pattern, TEXTDOMAIN variable and: Programmer i18n. (line 11083)
+ (line 4407)
+* BEGIN pattern, operators and: Using BEGIN/END. (line 7010)
+* BEGIN pattern, pgawk program: Profiling. (line 11802)
+* BEGIN pattern, print statement and: I/O And BEGIN/END. (line 7068)
+* BEGIN pattern, pwcat program: Passwd Functions. (line 13862)
+* BEGIN pattern, running awk programs and: Cut Program. (line 14331)
+* BEGIN pattern, TEXTDOMAIN variable and: Programmer i18n. (line 11103)
* beginfile user-defined function: Filetrans Function.
- (line 13231)
-* Bell Laboratories awk extensions: BTL. (line 16775)
-* Benzinger, Michael: Contributors. (line 17095)
-* BeOS: BeOS Installation. (line 17568)
+ (line 13265)
+* Bell Laboratories awk extensions: BTL. (line 16809)
+* Benzinger, Michael: Contributors. (line 17135)
+* BeOS: BeOS Installation. (line 17602)
* Berry, Karl: Acknowledgments. (line 972)
-* binary input/output: User-modified. (line 7809)
+* binary input/output: User-modified. (line 7817)
* bindtextdomain function (C library): Explaining gettext.
- (line 10942)
-* bindtextdomain function (gawk) <1>: Programmer i18n. (line 11070)
-* bindtextdomain function (gawk): I18N Functions. (line 10436)
+ (line 10962)
+* bindtextdomain function (gawk) <1>: Programmer i18n. (line 11090)
+* bindtextdomain function (gawk): I18N Functions. (line 10456)
* bindtextdomain function (gawk), portability and: I18N Portability.
- (line 11286)
-* BINMODE variable <1>: PC Using. (line 17855)
-* BINMODE variable: User-modified. (line 7809)
-* bits2str user-defined function: Bitwise Functions. (line 10348)
-* bitwise, complement: Bitwise Functions. (line 10313)
-* bitwise, operations: Bitwise Functions. (line 10294)
-* bitwise, shift: Bitwise Functions. (line 10320)
-* body, in actions: Statements. (line 7220)
-* body, in loops: While Statement. (line 7299)
-* Boolean expressions: Boolean Ops. (line 6455)
+ (line 11306)
+* BINMODE variable <1>: PC Using. (line 17887)
+* BINMODE variable: User-modified. (line 7817)
+* bits2str user-defined function: Bitwise Functions. (line 10368)
+* bitwise, complement: Bitwise Functions. (line 10333)
+* bitwise, operations: Bitwise Functions. (line 10314)
+* bitwise, shift: Bitwise Functions. (line 10340)
+* body, in actions: Statements. (line 7228)
+* body, in loops: While Statement. (line 7307)
+* Boolean expressions: Boolean Ops. (line 6463)
* Boolean expressions, as patterns: Expression Patterns.
- (line 6860)
-* Boolean operators, See Boolean expressions: Boolean Ops. (line 6455)
+ (line 6868)
+* Boolean operators, See Boolean expressions: Boolean Ops. (line 6463)
* Bourne shell, quoting rules for: Quoting. (line 1357)
-* braces ({}), actions and: Action Overview. (line 7170)
-* braces ({}), pgawk program: Profiling. (line 11858)
-* braces ({}), statements, grouping: Statements. (line 7220)
+* braces ({}), actions and: Action Overview. (line 7178)
+* braces ({}), pgawk program: Profiling. (line 11873)
+* braces ({}), statements, grouping: Statements. (line 7228)
* bracket expressions, See character lists: Regexp Operators.
(line 2230)
-* break statement: Break Statement. (line 7517)
-* Brennan, Michael <1>: Other Versions. (line 18351)
-* Brennan, Michael <2>: Simple Sed. (line 16155)
-* Brennan, Michael <3>: Two-way I/O. (line 11507)
-* Brennan, Michael: Delete. (line 8622)
-* Broder, Alan J.: Contributors. (line 17086)
-* Brown, Martin <1>: Bugs. (line 18332)
-* Brown, Martin <2>: Contributors. (line 17081)
+* break statement: Break Statement. (line 7525)
+* Brennan, Michael <1>: Other Versions. (line 18383)
+* Brennan, Michael <2>: Simple Sed. (line 16189)
+* Brennan, Michael <3>: Two-way I/O. (line 11522)
+* Brennan, Michael: Delete. (line 8630)
+* Broder, Alan J.: Contributors. (line 17126)
+* Brown, Martin <1>: Bugs. (line 18364)
+* Brown, Martin <2>: Contributors. (line 17121)
* Brown, Martin: Acknowledgments. (line 995)
-* BSD portals: Portal Files. (line 11710)
-* BSD-based operating systems: Glossary. (line 20320)
-* Buening, Andreas <1>: Contributors. (line 17090)
+* BSD portals: Portal Files. (line 11725)
+* BSD-based operating systems: Glossary. (line 20404)
+* Buening, Andreas <1>: Contributors. (line 17130)
* Buening, Andreas: Acknowledgments. (line 995)
-* buffering, input/output <1>: Two-way I/O. (line 11572)
-* buffering, input/output: I/O Functions. (line 9916)
-* buffering, interactive vs. noninteractive: I/O Functions. (line 9884)
-* buffers, flushing: I/O Functions. (line 9818)
+* buffering, input/output <1>: Two-way I/O. (line 11587)
+* buffering, input/output: I/O Functions. (line 9936)
+* buffering, interactive vs. noninteractive: I/O Functions. (line 9904)
+* buffers, flushing: I/O Functions. (line 9838)
* buffers, operators for: GNU Regexp Operators.
(line 2495)
-* bug reports, email address, bug-gawk@gnu.org: Bugs. (line 18303)
-* bug-gawk@gnu.org bug reporting address: Bugs. (line 18303)
-* built-in functions: Functions. (line 8956)
-* built-in functions, evaluation order: Calling Built-in. (line 9023)
+* bug reports, email address, bug-gawk@gnu.org: Bugs. (line 18335)
+* bug-gawk@gnu.org bug reporting address: Bugs. (line 18335)
+* built-in functions: Functions. (line 8964)
+* built-in functions, evaluation order: Calling Built-in. (line 9031)
* built-in variables: Built-in Variables.
- (line 7779)
-* built-in variables, -v option, setting with: Options. (line 12029)
-* built-in variables, conveying information: Auto-set. (line 7959)
-* built-in variables, user-modifiable: User-modified. (line 7805)
-* call by reference: Function Caveats. (line 10696)
-* call by value: Function Caveats. (line 10667)
+ (line 7787)
+* built-in variables, -v option, setting with: Options. (line 12044)
+* built-in variables, conveying information: Auto-set. (line 7967)
+* built-in variables, user-modifiable: User-modified. (line 7813)
+* call by reference: Function Caveats. (line 10716)
+* call by value: Function Caveats. (line 10687)
* caret (^) <1>: GNU Regexp Operators.
(line 2506)
* caret (^): Regexp Operators. (line 2197)
-* caret (^), ^ operator <1>: Options. (line 12157)
-* caret (^), ^ operator: Precedence. (line 6687)
-* caret (^), ^= operator <1>: Options. (line 12157)
-* caret (^), ^= operator <2>: Precedence. (line 6734)
-* caret (^), ^= operator: Assignment Ops. (line 6103)
+* caret (^), ^ operator <1>: Options. (line 12191)
+* caret (^), ^ operator: Precedence. (line 6695)
+* caret (^), ^= operator <1>: Options. (line 12191)
+* caret (^), ^= operator <2>: Precedence. (line 6742)
+* caret (^), ^= operator: Assignment Ops. (line 6111)
* caret (^), in character lists: Character Lists. (line 2364)
-* case keyword: Switch Statement. (line 7456)
-* case sensitivity, array indices and: Array Intro. (line 8390)
-* case sensitivity, converting case: String Functions. (line 9591)
-* case sensitivity, example programs: Library Functions. (line 12472)
+* case keyword: Switch Statement. (line 7464)
+* case sensitivity, array indices and: Array Intro. (line 8398)
+* case sensitivity, converting case: String Functions. (line 9611)
+* case sensitivity, example programs: Library Functions. (line 12506)
* case sensitivity, gawk: Case-sensitivity. (line 2569)
-* case sensitivity, regexps and <1>: User-modified. (line 7867)
+* case sensitivity, regexps and <1>: User-modified. (line 7875)
* case sensitivity, regexps and: Case-sensitivity. (line 2549)
-* case sensitivity, string comparisons and: User-modified. (line 7867)
-* character encodings: Ordinal Functions. (line 12980)
+* case sensitivity, string comparisons and: User-modified. (line 7875)
+* CGI, awk scripts for: Options. (line 12117)
+* character encodings: Ordinal Functions. (line 13014)
* character lists <1>: Character Lists. (line 2353)
* character lists: Regexp Operators. (line 2230)
* character lists, character classes: Character Lists. (line 2377)
@@ -21741,1243 +21822,1242 @@ Index
* character lists, equivalence classes: Character Lists. (line 2443)
* character lists, non-ASCII: Character Lists. (line 2430)
* character lists, range expressions: Character Lists. (line 2353)
-* character sets: Ordinal Functions. (line 12980)
-* character sets (machine character encodings): Glossary. (line 19879)
+* character sets: Ordinal Functions. (line 13014)
+* character sets (machine character encodings): Glossary. (line 19963)
* character sets, See Also character lists: Regexp Operators.
(line 2230)
-* characters, counting: Wc Program. (line 15230)
-* characters, transliterating: Translate Program. (line 15567)
-* characters, values of as numbers: Ordinal Functions. (line 12942)
+* characters, counting: Wc Program. (line 15264)
+* characters, transliterating: Translate Program. (line 15601)
+* characters, values of as numbers: Ordinal Functions. (line 12976)
* Chassell, Robert J.: Acknowledgments. (line 972)
-* chdir function, implementing in gawk: Sample Library. (line 18963)
-* chem utility: Glossary. (line 19887)
-* chr user-defined function: Ordinal Functions. (line 12952)
+* chdir function, implementing in gawk: Sample Library. (line 19054)
+* chem utility: Glossary. (line 19971)
+* chr user-defined function: Ordinal Functions. (line 12986)
* Cliff random numbers: Cliff Random Function.
- (line 12911)
+ (line 12945)
* cliff_rand user-defined function: Cliff Random Function.
- (line 12916)
-* close function <1>: I/O Functions. (line 9799)
+ (line 12950)
+* close function <1>: I/O Functions. (line 9819)
* close function <2>: Close Files And Pipes.
- (line 5203)
-* close function <3>: Getline/Pipe. (line 4061)
+ (line 5211)
+* close function <3>: Getline/Pipe. (line 4069)
* close function: Getline/Variable/File.
- (line 4028)
+ (line 4036)
* close function, return values: Close Files And Pipes.
- (line 5315)
-* close function, two-way pipes and: Two-way I/O. (line 11579)
-* Close, Diane <1>: Contributors. (line 17031)
+ (line 5323)
+* close function, two-way pipes and: Two-way I/O. (line 11594)
+* Close, Diane <1>: Contributors. (line 17071)
* Close, Diane: Manual History. (line 898)
+* close_func input method: Internals. (line 18964)
* collating elements: Character Lists. (line 2430)
* collating symbols: Character Lists. (line 2437)
-* columns, aligning: Print Examples. (line 4369)
-* columns, cutting: Cut Program. (line 14237)
-* comma (,), in range patterns: Ranges. (line 6905)
-* command line, arguments <1>: Other Arguments. (line 12271)
-* command line, arguments <2>: ARGC and ARGV. (line 8172)
-* command line, arguments: Auto-set. (line 7964)
+* columns, aligning: Print Examples. (line 4377)
+* columns, cutting: Cut Program. (line 14271)
+* comma (,), in range patterns: Ranges. (line 6913)
+* command line, arguments <1>: Other Arguments. (line 12305)
+* command line, arguments <2>: ARGC and ARGV. (line 8180)
+* command line, arguments: Auto-set. (line 7972)
* command line, formats: Running gawk. (line 1090)
* command line, FS on, setting: Command Line Field Separator.
- (line 3419)
-* command line, invoking awk from: Command Line. (line 11973)
-* command line, options <1>: Options. (line 11997)
+ (line 3427)
+* command line, invoking awk from: Command Line. (line 11988)
+* command line, options <1>: Options. (line 12012)
* command line, options <2>: Command Line Field Separator.
- (line 3419)
+ (line 3427)
* command line, options: Long. (line 1202)
-* command line, options, end of: Options. (line 12053)
+* command line, options, end of: Options. (line 12068)
* command line, variables, assigning on: Assignment Options.
- (line 5663)
-* command-line options, processing: Getopt Function. (line 13426)
+ (line 5671)
+* command-line options, processing: Getopt Function. (line 13460)
* command-line options, string extraction: String Extraction.
- (line 11157)
+ (line 11177)
* commenting: Comments. (line 1296)
* commenting, backslash continuation and: Statements/Lines. (line 1838)
-* comp.lang.awk newsgroup: Bugs. (line 18312)
+* comp.lang.awk newsgroup: Bugs. (line 18344)
* comparison expressions: Typing and Comparison.
- (line 6269)
+ (line 6277)
* comparison expressions, as patterns: Expression Patterns.
- (line 6833)
+ (line 6841)
* comparison expressions, string vs. regexp: Typing and Comparison.
- (line 6411)
-* compatibility mode (gawk), extensions: POSIX/GNU. (line 16818)
-* compatibility mode (gawk), file names: Special Caveats. (line 5159)
+ (line 6419)
+* compatibility mode (gawk), extensions: POSIX/GNU. (line 16852)
+* compatibility mode (gawk), file names: Special Caveats. (line 5167)
* compatibility mode (gawk), hexadecimal numbers: Nondecimal-numbers.
- (line 5503)
+ (line 5511)
* compatibility mode (gawk), octal numbers: Nondecimal-numbers.
- (line 5503)
-* compatibility mode (gawk), specifying: Options. (line 12070)
-* compiled programs <1>: Glossary. (line 19897)
-* compiled programs: Basic High Level. (line 19467)
-* compl function (gawk): Bitwise Functions. (line 10331)
-* complement, bitwise: Bitwise Functions. (line 10313)
-* compound statements, control statements and: Statements. (line 7220)
-* concatenating: Concatenation. (line 5903)
-* conditional expressions: Conditional Exp. (line 6545)
+ (line 5511)
+* compatibility mode (gawk), specifying: Options. (line 12085)
+* compiled programs <1>: Glossary. (line 19981)
+* compiled programs: Basic High Level. (line 19551)
+* compl function (gawk): Bitwise Functions. (line 10351)
+* complement, bitwise: Bitwise Functions. (line 10333)
+* compound statements, control statements and: Statements. (line 7228)
+* concatenating: Concatenation. (line 5911)
+* conditional expressions: Conditional Exp. (line 6553)
* configuration option, --disable-lint: Additional Configuration Options.
- (line 17446)
+ (line 17477)
* configuration option, --disable-nls: Additional Configuration Options.
- (line 17461)
+ (line 17492)
* configuration option, --enable-portals: Additional Configuration Options.
- (line 17432)
+ (line 17469)
* configuration option, --enable-switch: Additional Configuration Options.
- (line 17436)
-* configuration option, --with-included-gettext <1>: Additional Configuration Options.
- (line 17440)
-* configuration option, --with-included-gettext: Gawk I18N. (line 11423)
+ (line 17473)
* configuration options, gawk: Additional Configuration Options.
- (line 17429)
-* constants, nondecimal: Nondecimal Data. (line 11465)
-* constants, types of: Constants. (line 5397)
+ (line 17466)
+* constants, nondecimal: Nondecimal Data. (line 11480)
+* constants, types of: Constants. (line 5405)
* continue statement: Continue Statement.
- (line 7574)
-* control statements: Statements. (line 7216)
-* converting, case: String Functions. (line 9591)
-* converting, dates to timestamps: Time Functions. (line 10030)
+ (line 7582)
+* control statements: Statements. (line 7224)
+* converting, case: String Functions. (line 9611)
+* converting, dates to timestamps: Time Functions. (line 10050)
* converting, during subscripting: Numeric Array Subscripts.
- (line 8673)
-* converting, numbers: Conversion. (line 5711)
-* converting, numbers, to strings: Bitwise Functions. (line 10387)
-* converting, strings to numbers: Conversion. (line 5711)
-* CONVFMT variable <1>: User-modified. (line 7825)
-* CONVFMT variable: Conversion. (line 5734)
+ (line 8681)
+* converting, numbers: Conversion. (line 5719)
+* converting, numbers, to strings: Bitwise Functions. (line 10407)
+* converting, strings to numbers: Conversion. (line 5719)
+* CONVFMT variable <1>: User-modified. (line 7833)
+* CONVFMT variable: Conversion. (line 5742)
* CONVFMT variable, array subscripts and: Numeric Array Subscripts.
- (line 8648)
-* coprocesses <1>: Two-way I/O. (line 11545)
-* coprocesses: Redirection. (line 4936)
+ (line 8656)
+* coprocesses <1>: Two-way I/O. (line 11560)
+* coprocesses: Redirection. (line 4944)
* coprocesses, closing: Close Files And Pipes.
- (line 5191)
-* coprocesses, getline from: Getline/Coprocess. (line 4129)
-* cos function: Numeric Functions. (line 9071)
-* counting: Wc Program. (line 15230)
+ (line 5199)
+* coprocesses, getline from: Getline/Coprocess. (line 4137)
+* cos function: Numeric Functions. (line 9079)
+* counting: Wc Program. (line 15264)
* csh utility: Statements/Lines. (line 1807)
* csh utility, backslash continuation and: More Complex. (line 1708)
* csh utility, POSIXLY_CORRECT environment variable: Options.
- (line 12252)
-* csh utility, |& operator, comparison with: Two-way I/O. (line 11545)
-* ctime user-defined function: Function Example. (line 10629)
+ (line 12286)
+* csh utility, |& operator, comparison with: Two-way I/O. (line 11560)
+* ctime user-defined function: Function Example. (line 10649)
* currency symbols, localization: Explaining gettext.
- (line 10994)
+ (line 11014)
* custom.h file: Configuration Philosophy.
- (line 17496)
-* cut utility: Cut Program. (line 14237)
-* cut.awk program: Cut Program. (line 14275)
+ (line 17530)
+* cut utility: Cut Program. (line 14271)
+* cut.awk program: Cut Program. (line 14309)
* d.c., See dark corner: Conventions. (line 850)
-* dark corner <1>: Glossary. (line 19929)
-* dark corner <2>: Truth Values. (line 6256)
-* dark corner <3>: Assignment Ops. (line 6129)
-* dark corner <4>: Format Modifiers. (line 4659)
+* dark corner <1>: Glossary. (line 20013)
+* dark corner <2>: Truth Values. (line 6264)
+* dark corner <3>: Assignment Ops. (line 6137)
+* dark corner <4>: Format Modifiers. (line 4667)
* dark corner: Conventions. (line 850)
* dark corner, array subscripts: Uninitialized Subscripts.
- (line 8735)
-* dark corner, break statement: Break Statement. (line 7558)
+ (line 8743)
+* dark corner, break statement: Break Statement. (line 7566)
* dark corner, close function: Close Files And Pipes.
- (line 5315)
+ (line 5323)
* dark corner, command-line arguments: Assignment Options.
- (line 5700)
+ (line 5708)
* dark corner, continue statement: Continue Statement.
- (line 7611)
-* dark corner, CONVFMT variable: Conversion. (line 5745)
-* dark corner, escape sequences: Other Arguments. (line 12296)
+ (line 7619)
+* dark corner, CONVFMT variable: Conversion. (line 5753)
+* dark corner, escape sequences: Other Arguments. (line 12330)
* dark corner, escape sequences, for metacharacters: Escape Sequences.
(line 2168)
-* dark corner, exit statement: Exit Statement. (line 7752)
+* dark corner, exit statement: Exit Statement. (line 7760)
* dark corner, field separators: Field Splitting Summary.
- (line 3547)
-* dark corner, FILENAME variable <1>: Auto-set. (line 8041)
-* dark corner, FILENAME variable: Getline Notes. (line 4190)
-* dark corner, FNR/NR variables: Auto-set. (line 8140)
-* dark corner, format-control characters: Control Letters. (line 4593)
+ (line 3555)
+* dark corner, FILENAME variable <1>: Auto-set. (line 8049)
+* dark corner, FILENAME variable: Getline Notes. (line 4198)
+* dark corner, FNR/NR variables: Auto-set. (line 8148)
+* dark corner, format-control characters: Control Letters. (line 4601)
* dark corner, FS as null string: Single Character Fields.
- (line 3407)
+ (line 3415)
* dark corner, input files: Records. (line 2908)
-* dark corner, invoking awk: Command Line. (line 11983)
-* dark corner, multiline records: Multiple Line. (line 3726)
-* dark corner, NF variable, decrementing: Changing Fields. (line 3223)
-* dark corner, OFMT variable: OFMT. (line 4447)
+* dark corner, invoking awk: Command Line. (line 11998)
+* dark corner, multiline records: Multiple Line. (line 3734)
+* dark corner, NF variable, decrementing: Changing Fields. (line 3231)
+* dark corner, OFMT variable: OFMT. (line 4455)
* dark corner, regexp constants: Using Constant Regexps.
- (line 5536)
+ (line 5544)
* dark corner, regexp constants, /= operator and: Assignment Ops.
- (line 6129)
+ (line 6137)
* dark corner, regexp constants, as arguments to user-defined functions: Using Constant Regexps.
- (line 5574)
-* dark corner, split function: String Functions. (line 9361)
-* dark corner, strings, storing: Records. (line 2987)
-* data, fixed-width: Constant Size. (line 3597)
-* data-driven languages: Basic High Level. (line 19536)
-* database, group, reading: Group Functions. (line 13934)
-* database, users, reading: Passwd Functions. (line 13709)
-* date utility, GNU: Time Functions. (line 9978)
-* date utility, POSIX: Time Functions. (line 10225)
-* dates, converting to timestamps: Time Functions. (line 10030)
+ (line 5582)
+* dark corner, split function: String Functions. (line 9378)
+* dark corner, strings, storing: Records. (line 2995)
+* data, fixed-width: Constant Size. (line 3605)
+* data-driven languages: Basic High Level. (line 19620)
+* database, group, reading: Group Functions. (line 13968)
+* database, users, reading: Passwd Functions. (line 13743)
+* date utility, GNU: Time Functions. (line 9998)
+* date utility, POSIX: Time Functions. (line 10245)
+* dates, converting to timestamps: Time Functions. (line 10050)
* dates, information related to, localization: Explaining gettext.
- (line 11006)
-* Davies, Stephen <1>: Bugs. (line 18337)
-* Davies, Stephen: Contributors. (line 17078)
-* dcgettext function (gawk) <1>: Programmer i18n. (line 11044)
-* dcgettext function (gawk): I18N Functions. (line 10422)
+ (line 11026)
+* Davies, Stephen <1>: Bugs. (line 18369)
+* Davies, Stephen: Contributors. (line 17118)
+* dcgettext function (gawk) <1>: Programmer i18n. (line 11064)
+* dcgettext function (gawk): I18N Functions. (line 10442)
* dcgettext function (gawk), portability and: I18N Portability.
- (line 11286)
-* dcngettext function (gawk) <1>: Programmer i18n. (line 11060)
-* dcngettext function (gawk): I18N Functions. (line 10428)
+ (line 11306)
+* dcngettext function (gawk) <1>: Programmer i18n. (line 11080)
+* dcngettext function (gawk): I18N Functions. (line 10448)
* dcngettext function (gawk), portability and: I18N Portability.
- (line 11286)
-* deadlocks: Two-way I/O. (line 11572)
-* debugging gawk: Known Bugs. (line 12420)
-* debugging gawk, bug reports: Bugs. (line 18285)
-* decrement operators: Increment Ops. (line 6181)
-* default keyword: Switch Statement. (line 7456)
-* Deifik, Scott <1>: Bugs. (line 18333)
-* Deifik, Scott <2>: Contributors. (line 17062)
+ (line 11306)
+* deadlocks: Two-way I/O. (line 11587)
+* debugging gawk: Known Bugs. (line 12454)
+* debugging gawk, bug reports: Bugs. (line 18317)
+* decrement operators: Increment Ops. (line 6189)
+* default keyword: Switch Statement. (line 7464)
+* Deifik, Scott <1>: Bugs. (line 18365)
+* Deifik, Scott <2>: Contributors. (line 17102)
* Deifik, Scott: Acknowledgments. (line 995)
-* delete statement: Delete. (line 8577)
-* deleting elements in arrays: Delete. (line 8577)
-* deleting entire arrays: Delete. (line 8610)
+* delete statement: Delete. (line 8585)
+* deleting elements in arrays: Delete. (line 8585)
+* deleting entire arrays: Delete. (line 8618)
+* differences between gawk and awk: String Functions. (line 9246)
* differences in awk and gawk, ARGC/ARGV variables: ARGC and ARGV.
- (line 8251)
-* differences in awk and gawk, ARGIND variable: Auto-set. (line 7993)
+ (line 8259)
+* differences in awk and gawk, ARGIND variable: Auto-set. (line 8001)
* differences in awk and gawk, array elements, deleting: Delete.
- (line 8610)
+ (line 8618)
* differences in awk and gawk, AWKPATH environment variable: AWKPATH Variable.
- (line 12327)
+ (line 12361)
* differences in awk and gawk, BEGIN/END patterns: I/O And BEGIN/END.
- (line 7060)
+ (line 7068)
* differences in awk and gawk, BINMODE variable <1>: PC Using.
- (line 17855)
+ (line 17887)
* differences in awk and gawk, BINMODE variable: User-modified.
- (line 7820)
+ (line 7828)
* differences in awk and gawk, close function: Close Files And Pipes.
- (line 5266)
-* differences in awk and gawk, ERRNO variable: Auto-set. (line 8025)
-* differences in awk and gawk, error messages: Special FD. (line 5020)
+ (line 5274)
+* differences in awk and gawk, ERRNO variable: Auto-set. (line 8033)
+* differences in awk and gawk, error messages: Special FD. (line 5028)
* differences in awk and gawk, FIELDWIDTHS variable: User-modified.
- (line 7832)
+ (line 7840)
* differences in awk and gawk, function arguments (gawk): Calling Built-in.
- (line 9009)
-* differences in awk and gawk, getline command: Getline. (line 3848)
+ (line 9017)
+* differences in awk and gawk, getline command: Getline. (line 3856)
* differences in awk and gawk, IGNORECASE variable: User-modified.
- (line 7867)
+ (line 7875)
* differences in awk and gawk, implementation limitations <1>: Redirection.
- (line 4965)
+ (line 4973)
* differences in awk and gawk, implementation limitations: Getline Notes.
- (line 4185)
+ (line 4193)
* differences in awk and gawk, input/output operators <1>: Redirection.
- (line 4936)
+ (line 4944)
* differences in awk and gawk, input/output operators: Getline/Coprocess.
- (line 4129)
+ (line 4137)
* differences in awk and gawk, line continuations: Conditional Exp.
- (line 6573)
+ (line 6581)
* differences in awk and gawk, LINT variable: User-modified.
- (line 7882)
+ (line 7890)
* differences in awk and gawk, match function: String Functions.
- (line 9292)
+ (line 9309)
* differences in awk and gawk, next/nextfile statements: Nextfile Statement.
- (line 7676)
+ (line 7684)
* differences in awk and gawk, print/printf statements: Format Modifiers.
- (line 4613)
-* differences in awk and gawk, PROCINFO array: Auto-set. (line 8072)
+ (line 4621)
+* differences in awk and gawk, PROCINFO array: Auto-set. (line 8080)
* differences in awk and gawk, record separators: Records. (line 2921)
* differences in awk and gawk, regexp constants: Using Constant Regexps.
- (line 5574)
+ (line 5582)
* differences in awk and gawk, regular expressions: Case-sensitivity.
(line 2569)
-* differences in awk and gawk, RS/RT variables: Records. (line 2963)
-* differences in awk and gawk, RT variable: Auto-set. (line 8129)
+* differences in awk and gawk, RS/RT variables: Records. (line 2971)
+* differences in awk and gawk, RT variable: Auto-set. (line 8137)
* differences in awk and gawk, single-character fields: Single Character Fields.
- (line 3393)
+ (line 3401)
* differences in awk and gawk, split function: String Functions.
- (line 9350)
-* differences in awk and gawk, strings: Scalar Constants. (line 5431)
-* differences in awk and gawk, strings, storing: Records. (line 2983)
+ (line 9367)
+* differences in awk and gawk, strings: Scalar Constants. (line 5439)
+* differences in awk and gawk, strings, storing: Records. (line 2991)
* differences in awk and gawk, strtonum function (gawk): String Functions.
- (line 9388)
+ (line 9405)
* differences in awk and gawk, TEXTDOMAIN variable: User-modified.
- (line 7937)
+ (line 7945)
* differences in awk and gawk, trunc-mod operation: Arithmetic Ops.
- (line 5875)
-* directories, changing: Sample Library. (line 18963)
-* directories, searching <1>: Igawk Program. (line 16567)
-* directories, searching: AWKPATH Variable. (line 12327)
-* division: Arithmetic Ops. (line 5853)
-* do-while statement <1>: Do Statement. (line 7338)
+ (line 5883)
+* directories, changing: Sample Library. (line 19054)
+* directories, searching <1>: Igawk Program. (line 16601)
+* directories, searching: AWKPATH Variable. (line 12361)
+* division: Arithmetic Ops. (line 5861)
+* do-while statement <1>: Do Statement. (line 7346)
* do-while statement: Regexp Usage. (line 1989)
-* documentation, of awk programs: Library Names. (line 12507)
+* documentation, of awk programs: Library Names. (line 12541)
* documentation, online: Manual History. (line 870)
-* documents, searching: Dupword Program. (line 15395)
+* documents, searching: Dupword Program. (line 15429)
* dollar sign ($): Regexp Operators. (line 2210)
-* dollar sign ($), $ field operator <1>: Precedence. (line 6681)
-* dollar sign ($), $ field operator: Fields. (line 3019)
+* dollar sign ($), $ field operator <1>: Precedence. (line 6689)
+* dollar sign ($), $ field operator: Fields. (line 3027)
* dollar sign ($), incrementing fields and arrays: Increment Ops.
- (line 6176)
+ (line 6184)
* double quote (") <1>: Quoting. (line 1376)
* double quote ("): Read Terminal. (line 1165)
* double quote ("), regexp constants: Computed Regexps. (line 2677)
-* double-precision floating-point: Basic Data Typing. (line 19582)
+* double-precision floating-point: Basic Data Typing. (line 19666)
* Drepper, Ulrich: Acknowledgments. (line 991)
-* dupnode internal function: Internals. (line 18846)
-* dupword.awk program: Dupword Program. (line 15420)
-* EBCDIC: Ordinal Functions. (line 12980)
-* egrep utility <1>: Egrep Program. (line 14491)
+* dupnode internal function: Internals. (line 18883)
+* dupword.awk program: Dupword Program. (line 15454)
+* EBCDIC: Ordinal Functions. (line 13014)
+* egrep utility <1>: Egrep Program. (line 14525)
* egrep utility: Character Lists. (line 2371)
-* egrep.awk program: Egrep Program. (line 14539)
+* egrep.awk program: Egrep Program. (line 14573)
* elements in arrays: Reference to Elements.
- (line 8405)
+ (line 8413)
* elements in arrays, assigning: Assigning Elements.
- (line 8452)
-* elements in arrays, deleting: Delete. (line 8577)
-* elements in arrays, order of: Scanning an Array. (line 8563)
-* elements in arrays, scanning: Scanning an Array. (line 8522)
-* email address for bug reports, bug-gawk@gnu.org: Bugs. (line 18303)
-* EMISTERED: TCP/IP Networking. (line 11643)
-* empty pattern: Empty. (line 7093)
+ (line 8460)
+* elements in arrays, deleting: Delete. (line 8585)
+* elements in arrays, order of: Scanning an Array. (line 8571)
+* elements in arrays, scanning: Scanning an Array. (line 8530)
+* email address for bug reports, bug-gawk@gnu.org: Bugs. (line 18335)
+* EMISTERED: TCP/IP Networking. (line 11658)
+* empty pattern: Empty. (line 7101)
* empty strings, See null strings: Regexp Field Splitting.
- (line 3371)
-* END pattern: BEGIN/END. (line 6972)
+ (line 3379)
+* END pattern: BEGIN/END. (line 6980)
* END pattern, assert user-defined function and: Assert Function.
- (line 12849)
-* END pattern, backslash continuation and: Egrep Program. (line 14703)
+ (line 12883)
+* END pattern, backslash continuation and: Egrep Program. (line 14737)
* END pattern, Boolean patterns and: Expression Patterns.
- (line 6892)
-* END pattern, exit statement and: Exit Statement. (line 7735)
+ (line 6900)
+* END pattern, exit statement and: Exit Statement. (line 7743)
* END pattern, next/nextfile statements and <1>: Next Statement.
- (line 7660)
+ (line 7668)
* END pattern, next/nextfile statements and: I/O And BEGIN/END.
- (line 7080)
-* END pattern, operators and: Using BEGIN/END. (line 7002)
-* END pattern, pgawk program: Profiling. (line 11787)
-* END pattern, print statement and: I/O And BEGIN/END. (line 7060)
+ (line 7088)
+* END pattern, operators and: Using BEGIN/END. (line 7010)
+* END pattern, pgawk program: Profiling. (line 11802)
+* END pattern, print statement and: I/O And BEGIN/END. (line 7068)
* endfile user-defined function: Filetrans Function.
- (line 13231)
-* endgrent function (C library): Group Functions. (line 14141)
-* endgrent user-defined function: Group Functions. (line 14144)
-* endpwent function (C library): Passwd Functions. (line 13895)
-* endpwent user-defined function: Passwd Functions. (line 13898)
-* ENVIRON variable: Auto-set. (line 8013)
-* environment variables: Auto-set. (line 8013)
-* epoch, definition of: Glossary. (line 19971)
-* equals sign (=), = operator: Assignment Ops. (line 5981)
-* equals sign (=), == operator <1>: Precedence. (line 6703)
+ (line 13265)
+* endgrent function (C library): Group Functions. (line 14175)
+* endgrent user-defined function: Group Functions. (line 14178)
+* endpwent function (C library): Passwd Functions. (line 13929)
+* endpwent user-defined function: Passwd Functions. (line 13932)
+* ENVIRON variable <1>: Internals. (line 18951)
+* ENVIRON variable: Auto-set. (line 8021)
+* environment variables: Auto-set. (line 8021)
+* epoch, definition of: Glossary. (line 20055)
+* equals sign (=), = operator: Assignment Ops. (line 5989)
+* equals sign (=), == operator <1>: Precedence. (line 6711)
* equals sign (=), == operator: Typing and Comparison.
- (line 6334)
+ (line 6342)
* EREs (Extended Regular Expressions): Character Lists. (line 2371)
-* ERRNO variable <1>: Internals. (line 18901)
-* ERRNO variable <2>: Auto-set. (line 8025)
-* ERRNO variable: Getline. (line 3848)
-* error handling: Special FD. (line 5020)
-* error handling, ERRNO variable and: Auto-set. (line 8025)
-* error output: Special FD. (line 5011)
+* ERRNO variable <1>: Internals. (line 18938)
+* ERRNO variable <2>: Auto-set. (line 8033)
+* ERRNO variable: Getline. (line 3856)
+* error handling: Special FD. (line 5028)
+* error handling, ERRNO variable and: Auto-set. (line 8033)
+* error output: Special FD. (line 5019)
* escape processing, gsub/gensub/sub functions: Gory Details.
- (line 9622)
+ (line 9642)
* escape sequences: Escape Sequences. (line 2038)
-* escape sequences, unrecognized: Options. (line 12145)
-* evaluation order: Increment Ops. (line 6207)
-* evaluation order, concatenation: Concatenation. (line 5935)
-* evaluation order, functions: Calling Built-in. (line 9023)
-* examining fields: Fields. (line 3006)
-* exclamation point (!), ! operator <1>: Egrep Program. (line 14645)
-* exclamation point (!), ! operator <2>: Precedence. (line 6690)
-* exclamation point (!), ! operator: Boolean Ops. (line 6516)
-* exclamation point (!), != operator <1>: Precedence. (line 6703)
+* escape sequences, unrecognized: Options. (line 12179)
+* evaluation order: Increment Ops. (line 6215)
+* evaluation order, concatenation: Concatenation. (line 5943)
+* evaluation order, functions: Calling Built-in. (line 9031)
+* examining fields: Fields. (line 3014)
+* exclamation point (!), ! operator <1>: Egrep Program. (line 14679)
+* exclamation point (!), ! operator <2>: Precedence. (line 6698)
+* exclamation point (!), ! operator: Boolean Ops. (line 6524)
+* exclamation point (!), != operator <1>: Precedence. (line 6711)
* exclamation point (!), != operator: Typing and Comparison.
- (line 6334)
+ (line 6342)
* exclamation point (!), !~ operator <1>: Expression Patterns.
- (line 6843)
-* exclamation point (!), !~ operator <2>: Precedence. (line 6719)
+ (line 6851)
+* exclamation point (!), !~ operator <2>: Precedence. (line 6727)
* exclamation point (!), !~ operator <3>: Typing and Comparison.
- (line 6334)
-* exclamation point (!), !~ operator <4>: Regexp Constants. (line 5524)
+ (line 6342)
+* exclamation point (!), !~ operator <4>: Regexp Constants. (line 5532)
* exclamation point (!), !~ operator <5>: Computed Regexps. (line 2656)
* exclamation point (!), !~ operator <6>: Case-sensitivity. (line 2569)
* exclamation point (!), !~ operator: Regexp Usage. (line 1989)
-* exit statement: Exit Statement. (line 7729)
-* exp function: Numeric Functions. (line 9059)
+* exit statement: Exit Statement. (line 7737)
+* exp function: Numeric Functions. (line 9067)
* expand utility: Very Simple. (line 1594)
-* expressions: Expressions. (line 5354)
+* expressions: Expressions. (line 5362)
* expressions, as patterns: Expression Patterns.
- (line 6825)
-* expressions, assignment: Assignment Ops. (line 5981)
-* expressions, Boolean: Boolean Ops. (line 6455)
+ (line 6833)
+* expressions, assignment: Assignment Ops. (line 5989)
+* expressions, Boolean: Boolean Ops. (line 6463)
* expressions, comparison: Typing and Comparison.
- (line 6269)
-* expressions, conditional: Conditional Exp. (line 6545)
+ (line 6277)
+* expressions, conditional: Conditional Exp. (line 6553)
* expressions, matching, See comparison expressions: Typing and Comparison.
- (line 6269)
-* expressions, selecting: Conditional Exp. (line 6545)
+ (line 6277)
+* expressions, selecting: Conditional Exp. (line 6553)
* Extended Regular Expressions (EREs): Character Lists. (line 2371)
* extension function (gawk): Using Internal File Ops.
- (line 19282)
-* extensions, Bell Laboratories awk: BTL. (line 16775)
-* extensions, in gawk, not in POSIX awk: POSIX/GNU. (line 16818)
-* extensions, mawk: Other Versions. (line 18391)
-* extract.awk program: Extract Program. (line 16016)
+ (line 19373)
+* extensions, Bell Laboratories awk: BTL. (line 16809)
+* extensions, in gawk, not in POSIX awk: POSIX/GNU. (line 16852)
+* extensions, mawk: Other Versions. (line 18423)
+* extract.awk program: Extract Program. (line 16050)
* extraction, of marked strings (internationalization): String Extraction.
- (line 11157)
-* false, logical: Truth Values. (line 6238)
+ (line 11177)
+* false, logical: Truth Values. (line 6246)
* FDL (Free Documentation License): GNU Free Documentation License.
- (line 20705)
-* features, adding to gawk: Adding Code. (line 18515)
-* features, advanced, See advanced features: Obsolete. (line 12387)
-* features, deprecated: Obsolete. (line 12387)
-* features, undocumented: Undocumented. (line 12409)
-* Fenlason, Jay <1>: Contributors. (line 17029)
+ (line 20789)
+* features, adding to gawk: Adding Code. (line 18547)
+* features, advanced, See advanced features: Obsolete. (line 12421)
+* features, deprecated: Obsolete. (line 12421)
+* features, undocumented: Undocumented. (line 12443)
+* Fenlason, Jay <1>: Contributors. (line 17069)
* Fenlason, Jay: History. (line 653)
-* fflush function: I/O Functions. (line 9814)
-* fflush function, unsupported: Options. (line 12165)
+* fflush function: I/O Functions. (line 9834)
+* fflush function, unsupported: Options. (line 12199)
* field numbers: Nonconstant Fields.
- (line 3077)
-* field operator $: Fields. (line 3019)
-* field operators, dollar sign as: Fields. (line 3019)
-* field separators <1>: User-modified. (line 7842)
-* field separators: Field Separators. (line 3263)
-* field separators, choice of: Field Separators. (line 3298)
+ (line 3085)
+* field operator $: Fields. (line 3027)
+* field operators, dollar sign as: Fields. (line 3027)
+* field separators <1>: User-modified. (line 7850)
+* field separators: Field Separators. (line 3271)
+* field separators, choice of: Field Separators. (line 3306)
* field separators, FIELDWIDTHS variable and: User-modified.
- (line 7832)
-* field separators, in multiline records: Multiple Line. (line 3732)
+ (line 7840)
+* field separators, in multiline records: Multiple Line. (line 3740)
* field separators, on command line: Command Line Field Separator.
- (line 3419)
+ (line 3427)
* field separators, POSIX and <1>: Field Splitting Summary.
- (line 3541)
-* field separators, POSIX and: Fields. (line 3006)
+ (line 3549)
+* field separators, POSIX and: Fields. (line 3014)
* field separators, regular expressions as <1>: Regexp Field Splitting.
- (line 3335)
+ (line 3343)
* field separators, regular expressions as: Field Separators.
- (line 3298)
-* field separators, See Also OFS: Changing Fields. (line 3180)
-* field separators, spaces as: Cut Program. (line 14337)
-* fields <1>: Basic High Level. (line 19524)
-* fields <2>: Fields. (line 3006)
+ (line 3306)
+* field separators, See Also OFS: Changing Fields. (line 3188)
+* field separators, spaces as: Cut Program. (line 14371)
+* fields <1>: Basic High Level. (line 19608)
+* fields <2>: Fields. (line 3014)
* fields: Reading Files. (line 2788)
-* fields, adding: Changing Fields. (line 3169)
-* fields, changing contents of: Changing Fields. (line 3122)
-* fields, cutting: Cut Program. (line 14237)
-* fields, examining: Fields. (line 3006)
-* fields, number of: Fields. (line 3033)
+* fields, adding: Changing Fields. (line 3177)
+* fields, changing contents of: Changing Fields. (line 3130)
+* fields, cutting: Cut Program. (line 14271)
+* fields, examining: Fields. (line 3014)
+* fields, number of: Fields. (line 3041)
* fields, numbers: Nonconstant Fields.
- (line 3077)
-* fields, printing: Print Examples. (line 4321)
-* fields, separating: Field Separators. (line 3263)
+ (line 3085)
+* fields, printing: Print Examples. (line 4329)
+* fields, separating: Field Separators. (line 3271)
* fields, single-character: Single Character Fields.
- (line 3393)
-* FIELDWIDTHS variable <1>: User-modified. (line 7832)
-* FIELDWIDTHS variable: Constant Size. (line 3610)
-* file descriptors: Special FD. (line 5011)
-* file names, distinguishing: Auto-set. (line 8005)
-* file names, in compatibility mode: Special Caveats. (line 5159)
-* file names, standard streams in gawk: Special FD. (line 5046)
-* FILENAME variable <1>: Auto-set. (line 8041)
+ (line 3401)
+* FIELDWIDTHS variable <1>: User-modified. (line 7840)
+* FIELDWIDTHS variable: Constant Size. (line 3618)
+* file descriptors: Special FD. (line 5019)
+* file names, distinguishing: Auto-set. (line 8013)
+* file names, in compatibility mode: Special Caveats. (line 5167)
+* file names, standard streams in gawk: Special FD. (line 5054)
+* FILENAME variable <1>: Auto-set. (line 8049)
* FILENAME variable: Reading Files. (line 2780)
-* FILENAME variable, getline, setting with: Getline Notes. (line 4190)
-* filenames, assignments as: Ignoring Assigns. (line 13384)
+* FILENAME variable, getline, setting with: Getline Notes. (line 4198)
+* filenames, assignments as: Ignoring Assigns. (line 13418)
* files, .mo: Explaining gettext.
- (line 10934)
-* files, .mo, converting from .po: I18N Example. (line 11380)
-* files, .mo, specifying directory of <1>: Programmer i18n. (line 11070)
+ (line 10954)
+* files, .mo, converting from .po: I18N Example. (line 11400)
+* files, .mo, specifying directory of <1>: Programmer i18n. (line 11090)
* files, .mo, specifying directory of: Explaining gettext.
- (line 10946)
-* files, .po <1>: Translator i18n. (line 11136)
+ (line 10966)
+* files, .po <1>: Translator i18n. (line 11156)
* files, .po: Explaining gettext.
- (line 10931)
-* files, .po, converting to .mo: I18N Example. (line 11380)
-* files, /dev/... special files: Special FD. (line 5046)
-* files, /inet/ (gawk): TCP/IP Networking. (line 11643)
-* files, /p (gawk): Portal Files. (line 11710)
-* files, as single records: Records. (line 2992)
+ (line 10951)
+* files, .po, converting to .mo: I18N Example. (line 11400)
+* files, /dev/... special files: Special FD. (line 5054)
+* files, /inet/ (gawk): TCP/IP Networking. (line 11658)
+* files, /p (gawk): Portal Files. (line 11725)
+* files, as single records: Records. (line 3000)
* files, awk programs in: Long. (line 1196)
-* files, awkprof.out: Profiling. (line 11729)
-* files, awkvars.out: Options. (line 12086)
-* files, closing: I/O Functions. (line 9799)
-* files, descriptors, See file descriptors: Special FD. (line 5011)
-* files, for process information: Special Process. (line 5078)
-* files, group: Group Functions. (line 13934)
-* files, information about, retrieving: Sample Library. (line 18963)
+* files, awkprof.out: Profiling. (line 11744)
+* files, awkvars.out: Options. (line 12101)
+* files, closing: I/O Functions. (line 9819)
+* files, descriptors, See file descriptors: Special FD. (line 5019)
+* files, for process information: Special Process. (line 5086)
+* files, group: Group Functions. (line 13968)
+* files, information about, retrieving: Sample Library. (line 19054)
* files, initialization and cleanup: Filetrans Function.
- (line 13177)
+ (line 13211)
* files, input, See input files: Read Terminal. (line 1157)
-* files, log, timestamps in: Time Functions. (line 9967)
+* files, log, timestamps in: Time Functions. (line 9987)
* files, managing: Data File Management.
- (line 13160)
+ (line 13194)
* files, managing, data file boundaries: Filetrans Function.
- (line 13177)
+ (line 13211)
* files, message object: Explaining gettext.
- (line 10934)
+ (line 10954)
* files, message object, converting from portable object files: I18N Example.
- (line 11380)
+ (line 11400)
* files, message object, specifying directory of <1>: Programmer i18n.
- (line 11070)
+ (line 11090)
* files, message object, specifying directory of: Explaining gettext.
- (line 10946)
-* files, multiple passes over: Other Arguments. (line 12314)
-* files, multiple, duplicating output into: Tee Program. (line 14930)
+ (line 10966)
+* files, multiple passes over: Other Arguments. (line 12348)
+* files, multiple, duplicating output into: Tee Program. (line 14964)
* files, output, See output files: Close Files And Pipes.
- (line 5191)
-* files, password: Passwd Functions. (line 13719)
-* files, portable object <1>: Translator i18n. (line 11136)
+ (line 5199)
+* files, password: Passwd Functions. (line 13753)
+* files, portable object <1>: Translator i18n. (line 11156)
* files, portable object: Explaining gettext.
- (line 10931)
+ (line 10951)
* files, portable object, converting to message object files: I18N Example.
- (line 11380)
-* files, portable object, generating: Options. (line 12102)
-* files, portal: Portal Files. (line 11710)
-* files, processing, ARGIND variable and: Auto-set. (line 8000)
-* files, reading: Rewind Function. (line 13258)
-* files, reading, multiline records: Multiple Line. (line 3697)
-* files, searching for regular expressions: Egrep Program. (line 14491)
-* files, skipping: File Checking. (line 13300)
-* files, source, search path for: Igawk Program. (line 16567)
-* files, splitting: Split Program. (line 14828)
+ (line 11400)
+* files, portable object, generating: Options. (line 12136)
+* files, portal: Portal Files. (line 11725)
+* files, processing, ARGIND variable and: Auto-set. (line 8008)
+* files, reading: Rewind Function. (line 13292)
+* files, reading, multiline records: Multiple Line. (line 3705)
+* files, searching for regular expressions: Egrep Program. (line 14525)
+* files, skipping: File Checking. (line 13334)
+* files, source, search path for: Igawk Program. (line 16601)
+* files, splitting: Split Program. (line 14862)
* files, Texinfo, extracting programs from: Extract Program.
- (line 15945)
-* Fish, Fred <1>: Bugs. (line 18332)
-* Fish, Fred: Contributors. (line 17060)
-* fixed-width data: Constant Size. (line 3597)
-* flag variables <1>: Tee Program. (line 14944)
-* flag variables: Boolean Ops. (line 6516)
+ (line 15979)
+* Fish, Fred <1>: Bugs. (line 18364)
+* Fish, Fred: Contributors. (line 17100)
+* fixed-width data: Constant Size. (line 3605)
+* flag variables <1>: Tee Program. (line 14978)
+* flag variables: Boolean Ops. (line 6524)
* floating-point: Floating Point Issues.
- (line 19692)
-* floating-point, numbers: Basic Data Typing. (line 19570)
-* floating-point, numbers, AWKNUM internal type: Internals. (line 18768)
-* FNR variable <1>: Auto-set. (line 8051)
+ (line 19776)
+* floating-point, numbers: Basic Data Typing. (line 19654)
+* floating-point, numbers, AWKNUM internal type: Internals. (line 18805)
+* FNR variable <1>: Auto-set. (line 8059)
* FNR variable: Records. (line 2817)
-* FNR variable, changing: Auto-set. (line 8140)
-* for statement: For Statement. (line 7374)
-* for statement, in arrays: Scanning an Array. (line 8536)
-* force_number internal function: Internals. (line 18776)
-* force_string internal function: Internals. (line 18781)
+* FNR variable, changing: Auto-set. (line 8148)
+* for statement: For Statement. (line 7382)
+* for statement, in arrays: Scanning an Array. (line 8544)
+* force_number internal function: Internals. (line 18813)
+* force_string internal function: Internals. (line 18818)
* format specifiers, mixing regular with positional specifiers: Printf Ordering.
- (line 11234)
-* format specifiers, printf statement: Control Letters. (line 4519)
+ (line 11254)
+* format specifiers, printf statement: Control Letters. (line 4527)
* format specifiers, strftime function (gawk): Time Functions.
- (line 10043)
-* format strings: Basic Printf. (line 4487)
-* formats, numeric output: OFMT. (line 4426)
-* formatting output: Printf. (line 4457)
+ (line 10063)
+* format strings: Basic Printf. (line 4495)
+* formats, numeric output: OFMT. (line 4434)
+* formatting output: Printf. (line 4465)
* forward slash (/): Regexp. (line 1949)
-* forward slash (/), / operator: Precedence. (line 6693)
-* forward slash (/), /= operator <1>: Precedence. (line 6734)
-* forward slash (/), /= operator: Assignment Ops. (line 6103)
+* forward slash (/), / operator: Precedence. (line 6701)
+* forward slash (/), /= operator <1>: Precedence. (line 6742)
+* forward slash (/), /= operator: Assignment Ops. (line 6111)
* forward slash (/), /= operator, vs. /=.../ regexp constant: Assignment Ops.
- (line 6129)
+ (line 6137)
* forward slash (/), patterns and: Expression Patterns.
- (line 6843)
+ (line 6851)
* Free Documentation License (FDL): GNU Free Documentation License.
- (line 20705)
-* Free Software Foundation (FSF) <1>: Glossary. (line 20025)
-* Free Software Foundation (FSF) <2>: Getting. (line 17153)
+ (line 20789)
+* Free Software Foundation (FSF) <1>: Glossary. (line 20109)
+* Free Software Foundation (FSF) <2>: Getting. (line 17193)
* Free Software Foundation (FSF): Manual History. (line 865)
-* free_temp internal macro: Internals. (line 18851)
-* FreeBSD: Glossary. (line 20320)
-* FS variable <1>: User-modified. (line 7842)
-* FS variable: Field Separators. (line 3263)
-* FS variable, --field-separator option and: Options. (line 12012)
+* free_temp internal macro: Internals. (line 18888)
+* FreeBSD: Glossary. (line 20404)
+* FS variable <1>: User-modified. (line 7850)
+* FS variable: Field Separators. (line 3271)
+* FS variable, --field-separator option and: Options. (line 12027)
* FS variable, as null string: Single Character Fields.
- (line 3407)
-* FS variable, as TAB character: Options. (line 12161)
-* FS variable, changing value of <1>: Known Bugs. (line 12420)
-* FS variable, changing value of: Field Separators. (line 3282)
-* FS variable, running awk programs and: Cut Program. (line 14297)
+ (line 3415)
+* FS variable, as TAB character: Options. (line 12195)
+* FS variable, changing value of <1>: Known Bugs. (line 12454)
+* FS variable, changing value of: Field Separators. (line 3290)
+* FS variable, running awk programs and: Cut Program. (line 14331)
* FS variable, setting from command line: Command Line Field Separator.
- (line 3419)
-* FSF (Free Software Foundation) <1>: Glossary. (line 20025)
-* FSF (Free Software Foundation) <2>: Getting. (line 17153)
+ (line 3427)
+* FSF (Free Software Foundation) <1>: Glossary. (line 20109)
+* FSF (Free Software Foundation) <2>: Getting. (line 17193)
* FSF (Free Software Foundation): Manual History. (line 865)
-* function calls: Function Calls. (line 6585)
-* functions, arrays as parameters to: Function Caveats. (line 10696)
-* functions, built-in <1>: Functions. (line 8956)
-* functions, built-in: Function Calls. (line 6589)
+* function calls: Function Calls. (line 6593)
+* functions, arrays as parameters to: Function Caveats. (line 10716)
+* functions, built-in <1>: Functions. (line 8964)
+* functions, built-in: Function Calls. (line 6597)
* functions, built-in, adding to gawk: Dynamic Extensions.
- (line 18733)
-* functions, built-in, evaluation order: Calling Built-in. (line 9023)
-* functions, defining: Definition Syntax. (line 10472)
-* functions, library: Library Functions. (line 12435)
-* functions, library, assertions: Assert Function. (line 12781)
+ (line 18765)
+* functions, built-in, evaluation order: Calling Built-in. (line 9031)
+* functions, defining: Definition Syntax. (line 10492)
+* functions, library: Library Functions. (line 12469)
+* functions, library, assertions: Assert Function. (line 12815)
* functions, library, associative arrays and: Library Names.
- (line 12558)
-* functions, library, C library: Getopt Function. (line 13426)
+ (line 12592)
+* functions, library, C library: Getopt Function. (line 13460)
* functions, library, character values as numbers: Ordinal Functions.
- (line 12942)
+ (line 12976)
* functions, library, Cliff random numbers: Cliff Random Function.
- (line 12911)
+ (line 12945)
* functions, library, command-line options: Getopt Function.
- (line 13426)
+ (line 13460)
* functions, library, example program for using: Igawk Program.
- (line 16216)
+ (line 16250)
* functions, library, group database, reading: Group Functions.
- (line 13934)
+ (line 13968)
* functions, library, managing data files: Data File Management.
- (line 13160)
+ (line 13194)
* functions, library, managing time: Gettimeofday Function.
- (line 13078)
+ (line 13112)
* functions, library, merging arrays into strings: Join Function.
- (line 13033)
+ (line 13067)
* functions, library, nextfile statement: Nextfile Function.
- (line 12611)
-* functions, library, rounding numbers: Round Function. (line 12866)
+ (line 12645)
+* functions, library, rounding numbers: Round Function. (line 12900)
* functions, library, user database, reading: Passwd Functions.
- (line 13709)
-* functions, names of <1>: Definition Syntax. (line 10486)
-* functions, names of: Arrays. (line 8279)
-* functions, recursive: Definition Syntax. (line 10534)
-* functions, return values, setting: Internals. (line 18895)
-* functions, string-translation: I18N Functions. (line 10416)
-* functions, undefined: Function Caveats. (line 10720)
-* functions, user-defined: User-defined. (line 10452)
-* functions, user-defined, calling: Function Caveats. (line 10647)
-* functions, user-defined, counts: Profiling. (line 11853)
-* functions, user-defined, library of: Library Functions. (line 12435)
+ (line 13743)
+* functions, names of <1>: Definition Syntax. (line 10506)
+* functions, names of: Arrays. (line 8287)
+* functions, recursive: Definition Syntax. (line 10554)
+* functions, return values, setting: Internals. (line 18932)
+* functions, string-translation: I18N Functions. (line 10436)
+* functions, undefined: Function Caveats. (line 10740)
+* functions, user-defined: User-defined. (line 10472)
+* functions, user-defined, calling: Function Caveats. (line 10667)
+* functions, user-defined, counts: Profiling. (line 11868)
+* functions, user-defined, library of: Library Functions. (line 12469)
* functions, user-defined, next/nextfile statements and <1>: Nextfile Statement.
- (line 7709)
+ (line 7717)
* functions, user-defined, next/nextfile statements and: Next Statement.
- (line 7660)
+ (line 7668)
* G-d: Acknowledgments. (line 1012)
-* Garfinkle, Scott: Contributors. (line 17047)
+* Garfinkle, Scott: Contributors. (line 17087)
* gawk, awk and <1>: This Manual. (line 718)
* gawk, awk and: Preface. (line 569)
-* gawk, bitwise operations in: Bitwise Functions. (line 10327)
-* gawk, break statement in: Break Statement. (line 7558)
+* gawk, bitwise operations in: Bitwise Functions. (line 10347)
+* gawk, break statement in: Break Statement. (line 7566)
* gawk, built-in variables and: Built-in Variables.
- (line 7787)
+ (line 7795)
* gawk, character classes and: Character Lists. (line 2451)
-* gawk, coding style in: Adding Code. (line 18541)
+* gawk, coding style in: Adding Code. (line 18573)
* gawk, command-line options: GNU Regexp Operators.
(line 2517)
* gawk, comparison operators and: Typing and Comparison.
- (line 6382)
+ (line 6390)
* gawk, configuring: Configuration Philosophy.
- (line 17473)
+ (line 17507)
* gawk, configuring, options: Additional Configuration Options.
- (line 17429)
+ (line 17466)
* gawk, continue statement in: Continue Statement.
- (line 7611)
-* gawk, debugging: Known Bugs. (line 12420)
+ (line 7619)
+* gawk, debugging: Known Bugs. (line 12454)
* gawk, distribution: Distribution contents.
- (line 17213)
+ (line 17253)
* gawk, escape sequences: Escape Sequences. (line 2157)
-* gawk, extensions, disabling: Options. (line 12141)
-* gawk, features, adding: Adding Code. (line 18515)
-* gawk, features, advanced: Advanced Features. (line 11434)
-* gawk, fflush function in: I/O Functions. (line 9834)
-* gawk, field separators and: User-modified. (line 7862)
-* gawk, FIELDWIDTHS variable in: User-modified. (line 7838)
-* gawk, file names in: Special Files. (line 4994)
-* gawk, format-control characters: Control Letters. (line 4593)
-* gawk, function arguments and: Calling Built-in. (line 9009)
+* gawk, extensions, disabling: Options. (line 12175)
+* gawk, features, adding: Adding Code. (line 18547)
+* gawk, features, advanced: Advanced Features. (line 11449)
+* gawk, fflush function in: I/O Functions. (line 9854)
+* gawk, field separators and: User-modified. (line 7870)
+* gawk, FIELDWIDTHS variable in: User-modified. (line 7846)
+* gawk, file names in: Special Files. (line 5002)
+* gawk, format-control characters: Control Letters. (line 4601)
+* gawk, function arguments and: Calling Built-in. (line 9017)
* gawk, functions, adding: Dynamic Extensions.
- (line 18733)
+ (line 18765)
* gawk, hexadecimal numbers and: Nondecimal-numbers.
- (line 5485)
-* gawk, IGNORECASE variable in: User-modified. (line 7878)
-* gawk, implementation issues: Notes. (line 18452)
+ (line 5493)
+* gawk, IGNORECASE variable in: User-modified. (line 7886)
+* gawk, implementation issues: Notes. (line 18484)
* gawk, implementation issues, debugging: Compatibility Mode.
- (line 18471)
+ (line 18503)
* gawk, implementation issues, downward compatibility: Compatibility Mode.
- (line 18471)
-* gawk, implementation issues, limits: Getline Notes. (line 4185)
-* gawk, implementation issues, pipes: Redirection. (line 4965)
-* gawk, installing: Installation. (line 17111)
-* gawk, internals: Internals. (line 18755)
+ (line 18503)
+* gawk, implementation issues, limits: Getline Notes. (line 4193)
+* gawk, implementation issues, pipes: Redirection. (line 4973)
+* gawk, installing: Installation. (line 17151)
+* gawk, internals: Internals. (line 18792)
* gawk, internationalization and, See internationalization: Internationalization.
- (line 10863)
-* gawk, interpreter, adding code to <1>: Future Extensions. (line 19421)
+ (line 10883)
+* gawk, interpreter, adding code to <1>: Future Extensions. (line 19505)
* gawk, interpreter, adding code to: Using Internal File Ops.
- (line 19273)
+ (line 19364)
* gawk, interval expressions and: Regexp Operators. (line 2313)
-* gawk, line continuation in: Conditional Exp. (line 6573)
-* gawk, LINT variable in: User-modified. (line 7891)
-* gawk, list of contributors to: Contributors. (line 17016)
-* gawk, MS-DOS version of: PC Using. (line 17826)
+* gawk, line continuation in: Conditional Exp. (line 6581)
+* gawk, LINT variable in: User-modified. (line 7899)
+* gawk, list of contributors to: Contributors. (line 17056)
+* gawk, MS-DOS version of: PC Using. (line 17858)
* gawk, newlines in: Statements/Lines. (line 1776)
* gawk, next file statement in: Nextfile Statement.
- (line 7716)
-* gawk, nextfile statement in <1>: Nextfile Function. (line 12611)
+ (line 7724)
+* gawk, nextfile statement in <1>: Nextfile Function. (line 12645)
* gawk, nextfile statement in: Nextfile Statement.
- (line 7716)
+ (line 7724)
* gawk, octal numbers and: Nondecimal-numbers.
- (line 5485)
-* gawk, OS/2 version of: PC Using. (line 17826)
+ (line 5493)
+* gawk, OS/2 version of: PC Using. (line 17858)
* gawk, regexp constants and: Using Constant Regexps.
- (line 5558)
+ (line 5566)
* gawk, regular expressions, case sensitivity: Case-sensitivity.
(line 2569)
* gawk, regular expressions, operators: GNU Regexp Operators.
(line 2461)
* gawk, regular expressions, precedence: Regexp Operators. (line 2329)
* gawk, See Also awk: Preface. (line 582)
-* gawk, source code, obtaining: Getting. (line 17149)
-* gawk, splitting fields and: Constant Size. (line 3674)
-* gawk, string-translation functions: I18N Functions. (line 10416)
-* gawk, timestamps: Time Functions. (line 9967)
+* gawk, source code, obtaining: Getting. (line 17189)
+* gawk, splitting fields and: Constant Size. (line 3682)
+* gawk, string-translation functions: I18N Functions. (line 10436)
+* gawk, timestamps: Time Functions. (line 9987)
* gawk, uses for: Preface. (line 582)
-* gawk, versions of, information about, printing: Options. (line 12201)
+* gawk, versions of, information about, printing: Options. (line 12235)
* gawk, word-boundary operator: GNU Regexp Operators.
(line 2510)
-* General Public License (GPL): Glossary. (line 20034)
+* General Public License (GPL): Glossary. (line 20118)
* General Public License, See GPL: Manual History. (line 870)
-* gensub function (gawk) <1>: String Functions. (line 9499)
+* gensub function (gawk) <1>: String Functions. (line 9519)
* gensub function (gawk): Using Constant Regexps.
- (line 5574)
-* gensub function (gawk), escape processing: Gory Details. (line 9622)
-* get_actual_argument internal function: Internals. (line 18875)
-* get_argument internal function: Internals. (line 18870)
-* get_array_argument internal macro: Internals. (line 18890)
-* get_curfunc_arg_count internal function: Internals. (line 18786)
-* get_scalar_argument internal macro: Internals. (line 18885)
-* getgrent function (C library): Group Functions. (line 13934)
-* getgrent user-defined function: Group Functions. (line 13934)
-* getgrgid function (C library): Group Functions. (line 14108)
-* getgrgid user-defined function: Group Functions. (line 14111)
-* getgrnam function (C library): Group Functions. (line 14096)
-* getgrnam user-defined function: Group Functions. (line 14100)
-* getgruser function (C library): Group Functions. (line 14119)
-* getgruser function, user-defined: Group Functions. (line 14122)
+ (line 5582)
+* gensub function (gawk), escape processing: Gory Details. (line 9642)
+* get_actual_argument internal function: Internals. (line 18912)
+* get_argument internal function: Internals. (line 18907)
+* get_array_argument internal macro: Internals. (line 18927)
+* get_curfunc_arg_count internal function: Internals. (line 18823)
+* get_record input method: Internals. (line 18964)
+* get_scalar_argument internal macro: Internals. (line 18922)
+* getgrent function (C library): Group Functions. (line 13968)
+* getgrent user-defined function: Group Functions. (line 13968)
+* getgrgid function (C library): Group Functions. (line 14142)
+* getgrgid user-defined function: Group Functions. (line 14145)
+* getgrnam function (C library): Group Functions. (line 14130)
+* getgrnam user-defined function: Group Functions. (line 14134)
+* getgruser function (C library): Group Functions. (line 14153)
+* getgruser function, user-defined: Group Functions. (line 14156)
* getline command: Reading Files. (line 2794)
* getline command, _gr_init user-defined function: Group Functions.
- (line 14008)
-* getline command, _pw_init function: Passwd Functions. (line 13839)
+ (line 14042)
+* getline command, _pw_init function: Passwd Functions. (line 13873)
* getline command, coprocesses, using from <1>: Close Files And Pipes.
- (line 5191)
+ (line 5199)
* getline command, coprocesses, using from: Getline/Coprocess.
- (line 4129)
-* getline command, deadlock and: Two-way I/O. (line 11572)
-* getline command, explicit input with: Getline. (line 3835)
-* getline command, FILENAME variable and: Getline Notes. (line 4190)
-* getline command, return values: Getline. (line 3848)
-* getline command, variants: Getline Summary. (line 4211)
-* getopt function (C library): Getopt Function. (line 13435)
-* getopt user-defined function: Getopt Function. (line 13525)
-* getpwent function (C library): Passwd Functions. (line 13719)
-* getpwent user-defined function: Passwd Functions. (line 13719)
-* getpwnam function (C library): Passwd Functions. (line 13859)
-* getpwnam user-defined function: Passwd Functions. (line 13863)
-* getpwuid function (C library): Passwd Functions. (line 13871)
-* getpwuid user-defined function: Passwd Functions. (line 13875)
-* getservbyname function (C library): TCP/IP Networking. (line 11671)
+ (line 4137)
+* getline command, deadlock and: Two-way I/O. (line 11587)
+* getline command, explicit input with: Getline. (line 3843)
+* getline command, FILENAME variable and: Getline Notes. (line 4198)
+* getline command, return values: Getline. (line 3856)
+* getline command, variants: Getline Summary. (line 4219)
+* getopt function (C library): Getopt Function. (line 13469)
+* getopt user-defined function: Getopt Function. (line 13559)
+* getpwent function (C library): Passwd Functions. (line 13753)
+* getpwent user-defined function: Passwd Functions. (line 13753)
+* getpwnam function (C library): Passwd Functions. (line 13893)
+* getpwnam user-defined function: Passwd Functions. (line 13897)
+* getpwuid function (C library): Passwd Functions. (line 13905)
+* getpwuid user-defined function: Passwd Functions. (line 13909)
+* getservbyname function (C library): TCP/IP Networking. (line 11686)
* gettext function (C library): Explaining gettext.
- (line 10955)
+ (line 10975)
* gettext library: Explaining gettext.
- (line 10901)
+ (line 10921)
* gettext library, locale categories: Explaining gettext.
- (line 10973)
+ (line 10993)
* gettimeofday user-defined function: Gettimeofday Function.
- (line 13088)
+ (line 13122)
* GNITS mailing list: Acknowledgments. (line 991)
* GNU awk, See gawk: Preface. (line 595)
* GNU Free Documentation License: GNU Free Documentation License.
- (line 20705)
-* GNU General Public License: Glossary. (line 20034)
-* GNU Lesser General Public License: Glossary. (line 20111)
-* GNU long options <1>: Options. (line 11997)
-* GNU long options: Command Line. (line 11980)
-* GNU long options, printing list of: Options. (line 12111)
-* GNU Project <1>: Glossary. (line 20043)
+ (line 20789)
+* GNU General Public License: Glossary. (line 20118)
+* GNU Lesser General Public License: Glossary. (line 20195)
+* GNU long options <1>: Options. (line 12012)
+* GNU long options: Command Line. (line 11995)
+* GNU long options, printing list of: Options. (line 12145)
+* GNU Project <1>: Glossary. (line 20127)
* GNU Project: Manual History. (line 870)
-* GNU/Linux <1>: Glossary. (line 20320)
-* GNU/Linux <2>: Atari Compiling. (line 18166)
-* GNU/Linux <3>: Additional Configuration Options.
- (line 17440)
-* GNU/Linux <4>: I18N Example. (line 11373)
+* GNU/Linux <1>: Glossary. (line 20404)
+* GNU/Linux <2>: Atari Compiling. (line 18198)
+* GNU/Linux <3>: I18N Example. (line 11393)
* GNU/Linux: Manual History. (line 886)
-* GPL (General Public License) <1>: Glossary. (line 20034)
+* GPL (General Public License) <1>: Glossary. (line 20118)
* GPL (General Public License): Manual History. (line 870)
-* GPL (General Public License), printing: Options. (line 12078)
-* grcat program: Group Functions. (line 13943)
-* Grigera, Juan <1>: Bugs. (line 18334)
-* Grigera, Juan: Contributors. (line 17064)
-* group database, reading: Group Functions. (line 13934)
-* group file: Group Functions. (line 13934)
-* groups, information about: Group Functions. (line 13934)
-* gsub function <1>: String Functions. (line 9483)
+* GPL (General Public License), printing: Options. (line 12093)
+* grcat program: Group Functions. (line 13977)
+* Grigera, Juan <1>: Bugs. (line 18366)
+* Grigera, Juan: Contributors. (line 17104)
+* group database, reading: Group Functions. (line 13968)
+* group file: Group Functions. (line 13968)
+* groups, information about: Group Functions. (line 13968)
+* gsub function <1>: String Functions. (line 9503)
* gsub function: Using Constant Regexps.
- (line 5574)
-* gsub function, arguments of: String Functions. (line 9463)
-* gsub function, escape processing: Gory Details. (line 9622)
-* Hankerson, Darrel <1>: Bugs. (line 18333)
-* Hankerson, Darrel <2>: Contributors. (line 17066)
+ (line 5582)
+* gsub function, arguments of: String Functions. (line 9483)
+* gsub function, escape processing: Gory Details. (line 9642)
+* Hankerson, Darrel <1>: Bugs. (line 18365)
+* Hankerson, Darrel <2>: Contributors. (line 17106)
* Hankerson, Darrel: Acknowledgments. (line 995)
* Hartholz, Elaine: Acknowledgments. (line 977)
* Hartholz, Marshall: Acknowledgments. (line 977)
-* Hasegawa, Isamu <1>: Contributors. (line 17092)
+* Hasegawa, Isamu <1>: Contributors. (line 17132)
* Hasegawa, Isamu: Acknowledgments. (line 995)
* hexadecimal numbers: Nondecimal-numbers.
- (line 5449)
-* hexadecimal values, enabling interpretation of: Options. (line 12133)
-* histsort.awk program: History Sorting. (line 15919)
+ (line 5457)
+* hexadecimal values, enabling interpretation of: Options. (line 12167)
+* histsort.awk program: History Sorting. (line 15953)
* Hughes, Phil: Acknowledgments. (line 982)
-* HUP signal: Profiling. (line 11928)
-* hyphen (-), - operator: Precedence. (line 6690)
+* HUP signal: Profiling. (line 11943)
+* hyphen (-), - operator: Precedence. (line 6698)
* hyphen (-), -- (decrement/increment) operators: Precedence.
- (line 6684)
-* hyphen (-), -- operator: Increment Ops. (line 6194)
-* hyphen (-), -= operator <1>: Precedence. (line 6734)
-* hyphen (-), -= operator: Assignment Ops. (line 6103)
-* hyphen (-), filenames beginning with: Options. (line 12058)
+ (line 6692)
+* hyphen (-), -- operator: Increment Ops. (line 6202)
+* hyphen (-), -= operator <1>: Precedence. (line 6742)
+* hyphen (-), -= operator: Assignment Ops. (line 6111)
+* hyphen (-), filenames beginning with: Options. (line 12073)
* hyphen (-), in character lists: Character Lists. (line 2364)
-* id utility: Id Program. (line 14721)
-* id.awk program: Id Program. (line 14745)
-* if statement <1>: If Statement. (line 7252)
+* id utility: Id Program. (line 14755)
+* id.awk program: Id Program. (line 14779)
+* if statement <1>: If Statement. (line 7260)
* if statement: Regexp Usage. (line 1989)
-* if statement, actions, changing: Ranges. (line 6924)
-* igawk.sh program: Igawk Program. (line 16328)
-* IGNORECASE variable <1>: User-modified. (line 7867)
+* if statement, actions, changing: Ranges. (line 6932)
+* igawk.sh program: Igawk Program. (line 16362)
+* IGNORECASE variable <1>: User-modified. (line 7875)
* IGNORECASE variable: Case-sensitivity. (line 2569)
-* IGNORECASE variable, array sorting and: Array Sorting. (line 8945)
-* IGNORECASE variable, array subscripts and: Array Intro. (line 8390)
+* IGNORECASE variable, array sorting and: Array Sorting. (line 8953)
+* IGNORECASE variable, array subscripts and: Array Intro. (line 8398)
* IGNORECASE variable, in example programs: Library Functions.
- (line 12472)
-* implementation issues, gawk: Notes. (line 18452)
+ (line 12506)
+* implementation issues, gawk: Notes. (line 18484)
* implementation issues, gawk, debugging: Compatibility Mode.
- (line 18471)
-* implementation issues, gawk, limits <1>: Redirection. (line 4965)
-* implementation issues, gawk, limits: Getline Notes. (line 4185)
-* in operator <1>: Id Program. (line 14808)
-* in operator <2>: For Statement. (line 7441)
-* in operator <3>: Precedence. (line 6722)
+ (line 18503)
+* implementation issues, gawk, limits <1>: Redirection. (line 4973)
+* implementation issues, gawk, limits: Getline Notes. (line 4193)
+* in operator <1>: Id Program. (line 14842)
+* in operator <2>: For Statement. (line 7449)
+* in operator <3>: Precedence. (line 6730)
* in operator: Typing and Comparison.
- (line 6334)
-* in operator, arrays and <1>: Scanning an Array. (line 8533)
+ (line 6342)
+* in operator, arrays and <1>: Scanning an Array. (line 8541)
* in operator, arrays and: Reference to Elements.
- (line 8424)
-* increment operators: Increment Ops. (line 6152)
-* index function: String Functions. (line 9210)
-* indexing arrays: Array Intro. (line 8348)
+ (line 8432)
+* increment operators: Increment Ops. (line 6160)
+* index function: String Functions. (line 9218)
+* indexing arrays: Array Intro. (line 8356)
* initialization, automatic: More Complex. (line 1731)
* input files: Reading Files. (line 2780)
* input files, closing: Close Files And Pipes.
- (line 5191)
-* input files, counting elements in: Wc Program. (line 15230)
+ (line 5199)
+* input files, counting elements in: Wc Program. (line 15264)
* input files, examples: Sample Data Files. (line 1461)
* input files, reading: Reading Files. (line 2780)
* input files, running awk without: Read Terminal. (line 1146)
-* input files, skipping: Nextfile Function. (line 12611)
-* input files, variable assignments and: Other Arguments. (line 12284)
-* input pipeline: Getline/Pipe. (line 4043)
-* input redirection: Getline/File. (line 3971)
-* input, data, nondecimal: Nondecimal Data. (line 11465)
-* input, explicit: Getline. (line 3835)
-* input, files, See input files: Multiple Line. (line 3697)
-* input, multiline records: Multiple Line. (line 3697)
+* input files, skipping: Nextfile Function. (line 12645)
+* input files, variable assignments and: Other Arguments. (line 12318)
+* input pipeline: Getline/Pipe. (line 4051)
+* input redirection: Getline/File. (line 3979)
+* input, data, nondecimal: Nondecimal Data. (line 11480)
+* input, explicit: Getline. (line 3843)
+* input, files, See input files: Multiple Line. (line 3705)
+* input, multiline records: Multiple Line. (line 3705)
* input, splitting into records: Records. (line 2817)
-* input, standard <1>: Special FD. (line 5011)
+* input, standard <1>: Special FD. (line 5019)
* input, standard: Read Terminal. (line 1146)
-* input/output, binary: User-modified. (line 7809)
-* input/output, from BEGIN and END: I/O And BEGIN/END. (line 7050)
-* input/output, two-way: Two-way I/O. (line 11545)
-* insomnia, cure for: Alarm Program. (line 15443)
+* input/output, binary: User-modified. (line 7817)
+* input/output, from BEGIN and END: I/O And BEGIN/END. (line 7058)
+* input/output, two-way: Two-way I/O. (line 11560)
+* insomnia, cure for: Alarm Program. (line 15477)
* installation, amiga: Amiga Installation.
- (line 17535)
+ (line 17569)
* installation, atari: Atari Installation.
- (line 18129)
-* installation, beos: BeOS Installation. (line 17568)
+ (line 18161)
+* installation, beos: BeOS Installation. (line 17602)
* installation, tandem: Tandem Installation.
- (line 18246)
-* installation, vms: VMS Installation. (line 17949)
-* installing gawk: Installation. (line 17111)
-* int function: Numeric Functions. (line 9048)
-* INT signal (MS-DOS): Profiling. (line 11931)
-* integers: Basic Data Typing. (line 19570)
-* integers, unsigned: Basic Data Typing. (line 19577)
-* interacting with other programs: I/O Functions. (line 9852)
-* internationalization <1>: I18N and L10N. (line 10886)
-* internationalization: I18N Functions. (line 10416)
+ (line 18278)
+* installation, vms: VMS Installation. (line 17981)
+* installing gawk: Installation. (line 17151)
+* int function: Numeric Functions. (line 9056)
+* INT signal (MS-DOS): Profiling. (line 11946)
+* integers: Basic Data Typing. (line 19654)
+* integers, unsigned: Basic Data Typing. (line 19661)
+* interacting with other programs: I/O Functions. (line 9872)
+* internationalization <1>: I18N and L10N. (line 10906)
+* internationalization: I18N Functions. (line 10436)
* internationalization, localization <1>: Internationalization.
- (line 10863)
-* internationalization, localization: User-modified. (line 7937)
+ (line 10883)
+* internationalization, localization: User-modified. (line 7945)
* internationalization, localization, character classes: Character Lists.
(line 2451)
* internationalization, localization, gawk and: Internationalization.
- (line 10863)
+ (line 10883)
* internationalization, localization, locale categories: Explaining gettext.
- (line 10973)
+ (line 10993)
* internationalization, localization, marked strings: Programmer i18n.
- (line 11039)
+ (line 11059)
* internationalization, localization, portability and: I18N Portability.
- (line 11260)
+ (line 11280)
* internationalizing a program: Explaining gettext.
- (line 10901)
-* interpreted programs <1>: Glossary. (line 20083)
-* interpreted programs: Basic High Level. (line 19467)
+ (line 10921)
+* interpreted programs <1>: Glossary. (line 20167)
+* interpreted programs: Basic High Level. (line 19551)
* interval expressions: Regexp Operators. (line 2290)
* inventory-shipped file: Sample Data Files. (line 1487)
-* ISO: Glossary. (line 20094)
-* ISO 8859-1: Glossary. (line 19879)
-* ISO Latin-1: Glossary. (line 19879)
-* Jacobs, Andrew: Passwd Functions. (line 13779)
-* Jaegermann, Michal <1>: Contributors. (line 17055)
+* IOBUF internal structure: Internals. (line 18964)
+* iop_alloc internal function: Internals. (line 18964)
+* ISO: Glossary. (line 20178)
+* ISO 8859-1: Glossary. (line 19963)
+* ISO Latin-1: Glossary. (line 19963)
+* Jacobs, Andrew: Passwd Functions. (line 13813)
+* Jaegermann, Michal <1>: Contributors. (line 17095)
* Jaegermann, Michal: Acknowledgments. (line 995)
-* Jedi knights: Undocumented. (line 12409)
-* join user-defined function: Join Function. (line 13045)
-* Kahrs, Ju"rgen <1>: Contributors. (line 17074)
+* Jedi knights: Undocumented. (line 12443)
+* join user-defined function: Join Function. (line 13079)
+* Kahrs, Ju"rgen <1>: Contributors. (line 17114)
* Kahrs, Ju"rgen: Acknowledgments. (line 995)
-* Kenobi, Obi-Wan: Undocumented. (line 12409)
-* Kernighan, Brian <1>: Basic Data Typing. (line 19620)
-* Kernighan, Brian <2>: Other Versions. (line 18358)
-* Kernighan, Brian <3>: Contributors. (line 17022)
-* Kernighan, Brian <4>: BTL. (line 16775)
-* Kernighan, Brian <5>: Concatenation. (line 5900)
+* Kenobi, Obi-Wan: Undocumented. (line 12443)
+* Kernighan, Brian <1>: Basic Data Typing. (line 19704)
+* Kernighan, Brian <2>: Other Versions. (line 18390)
+* Kernighan, Brian <3>: Contributors. (line 17062)
+* Kernighan, Brian <4>: BTL. (line 16809)
+* Kernighan, Brian <5>: Concatenation. (line 5908)
* Kernighan, Brian <6>: Acknowledgments. (line 1002)
* Kernighan, Brian <7>: Conventions. (line 846)
* Kernighan, Brian: History. (line 640)
-* kill command, dynamic profiling: Profiling. (line 11906)
-* Knights, jedi: Undocumented. (line 12409)
-* Kwok, Conrad: Contributors. (line 17047)
-* labels.awk program: Labels Program. (line 15731)
-* languages, data-driven: Basic High Level. (line 19536)
+* kill command, dynamic profiling: Profiling. (line 11921)
+* Knights, jedi: Undocumented. (line 12443)
+* Kwok, Conrad: Contributors. (line 17087)
+* labels.awk program: Labels Program. (line 15765)
+* languages, data-driven: Basic High Level. (line 19620)
* LC_ALL locale category: Explaining gettext.
- (line 11011)
+ (line 11031)
* LC_COLLATE locale category: Explaining gettext.
- (line 10984)
+ (line 11004)
* LC_CTYPE locale category: Explaining gettext.
- (line 10988)
+ (line 11008)
* LC_MESSAGES locale category: Explaining gettext.
- (line 10978)
+ (line 10998)
* LC_MESSAGES locale category, bindtextdomain function (gawk): Programmer i18n.
- (line 11111)
+ (line 11131)
* LC_MONETARY locale category: Explaining gettext.
- (line 10994)
+ (line 11014)
* LC_NUMERIC locale category: Explaining gettext.
- (line 10998)
+ (line 11018)
* LC_RESPONSE locale category: Explaining gettext.
- (line 11002)
+ (line 11022)
* LC_TIME locale category: Explaining gettext.
- (line 11006)
-* left angle bracket (<), < operator <1>: Precedence. (line 6703)
+ (line 11026)
+* left angle bracket (<), < operator <1>: Precedence. (line 6711)
* left angle bracket (<), < operator: Typing and Comparison.
- (line 6334)
-* left angle bracket (<), < operator (I/O): Getline/File. (line 3971)
-* left angle bracket (<), <= operator <1>: Precedence. (line 6703)
+ (line 6342)
+* left angle bracket (<), < operator (I/O): Getline/File. (line 3979)
+* left angle bracket (<), <= operator <1>: Precedence. (line 6711)
* left angle bracket (<), <= operator: Typing and Comparison.
- (line 6334)
-* left shift, bitwise: Bitwise Functions. (line 10320)
-* leftmost longest match: Multiple Line. (line 3717)
-* length function: String Functions. (line 9221)
-* Lesser General Public License (LGPL): Glossary. (line 20111)
-* LGPL (Lesser General Public License): Glossary. (line 20111)
-* libraries of awk functions: Library Functions. (line 12435)
-* libraries of awk functions, assertions: Assert Function. (line 12781)
+ (line 6342)
+* left shift, bitwise: Bitwise Functions. (line 10340)
+* leftmost longest match: Multiple Line. (line 3725)
+* length function: String Functions. (line 9229)
+* Lesser General Public License (LGPL): Glossary. (line 20195)
+* LGPL (Lesser General Public License): Glossary. (line 20195)
+* libraries of awk functions: Library Functions. (line 12469)
+* libraries of awk functions, assertions: Assert Function. (line 12815)
* libraries of awk functions, associative arrays and: Library Names.
- (line 12558)
+ (line 12592)
* libraries of awk functions, character values as numbers: Ordinal Functions.
- (line 12942)
+ (line 12976)
* libraries of awk functions, command-line options: Getopt Function.
- (line 13426)
+ (line 13460)
* libraries of awk functions, example program for using: Igawk Program.
- (line 16216)
+ (line 16250)
* libraries of awk functions, group database, reading: Group Functions.
- (line 13934)
+ (line 13968)
* libraries of awk functions, managing, data files: Data File Management.
- (line 13160)
+ (line 13194)
* libraries of awk functions, managing, time: Gettimeofday Function.
- (line 13078)
+ (line 13112)
* libraries of awk functions, merging arrays into strings: Join Function.
- (line 13033)
+ (line 13067)
* libraries of awk functions, nextfile statement: Nextfile Function.
- (line 12611)
+ (line 12645)
* libraries of awk functions, rounding numbers: Round Function.
- (line 12866)
+ (line 12900)
* libraries of awk functions, user database, reading: Passwd Functions.
- (line 13709)
+ (line 13743)
* line breaks: Statements/Lines. (line 1770)
-* line continuations: Boolean Ops. (line 6511)
-* line continuations, gawk: Conditional Exp. (line 6573)
-* line continuations, in print statement: Print Examples. (line 4375)
+* line continuations: Boolean Ops. (line 6519)
+* line continuations, gawk: Conditional Exp. (line 6581)
+* line continuations, in print statement: Print Examples. (line 4383)
* line continuations, with C shell: More Complex. (line 1723)
-* lines, blank, printing: Print. (line 4292)
-* lines, counting: Wc Program. (line 15230)
-* lines, duplicate, removing: History Sorting. (line 15900)
-* lines, matching ranges of: Ranges. (line 6905)
-* lines, skipping between markers: Ranges. (line 6942)
-* lint checking: User-modified. (line 7882)
-* lint checking, array elements: Delete. (line 8605)
+* lines, blank, printing: Print. (line 4300)
+* lines, counting: Wc Program. (line 15264)
+* lines, duplicate, removing: History Sorting. (line 15934)
+* lines, matching ranges of: Ranges. (line 6913)
+* lines, skipping between markers: Ranges. (line 6950)
+* lint checking: User-modified. (line 7890)
+* lint checking, array elements: Delete. (line 8613)
* lint checking, array subscripts: Uninitialized Subscripts.
- (line 8735)
-* lint checking, empty programs: Command Line. (line 11983)
-* lint checking, issuing warnings: Options. (line 12116)
+ (line 8743)
+* lint checking, empty programs: Command Line. (line 11998)
+* lint checking, issuing warnings: Options. (line 12150)
* lint checking, POSIXLY_CORRECT environment variable: Options.
- (line 12239)
-* lint checking, undefined functions: Function Caveats. (line 10737)
-* LINT variable: User-modified. (line 7882)
-* Linux <1>: Glossary. (line 20320)
-* Linux <2>: Atari Compiling. (line 18166)
-* Linux <3>: Additional Configuration Options.
- (line 17440)
-* Linux <4>: I18N Example. (line 11373)
+ (line 12273)
+* lint checking, undefined functions: Function Caveats. (line 10757)
+* LINT variable: User-modified. (line 7890)
+* Linux <1>: Glossary. (line 20404)
+* Linux <2>: Atari Compiling. (line 18198)
+* Linux <3>: I18N Example. (line 11393)
* Linux: Manual History. (line 886)
* locale categories: Explaining gettext.
- (line 10973)
-* localization: I18N and L10N. (line 10886)
+ (line 10993)
+* localization: I18N and L10N. (line 10906)
* localization, See internationalization, localization: I18N and L10N.
- (line 10886)
-* log files, timestamps in: Time Functions. (line 9967)
-* log function: Numeric Functions. (line 9064)
-* logical false/true: Truth Values. (line 6238)
-* logical operators, See Boolean expressions: Boolean Ops. (line 6455)
-* login information: Passwd Functions. (line 13719)
-* long options: Command Line. (line 11980)
-* loops: While Statement. (line 7291)
-* loops, continue statements and: For Statement. (line 7430)
-* loops, count for header: Profiling. (line 11847)
-* loops, exiting: Break Statement. (line 7517)
-* loops, See Also while statement: While Statement. (line 7291)
+ (line 10906)
+* log files, timestamps in: Time Functions. (line 9987)
+* log function: Numeric Functions. (line 9072)
+* logical false/true: Truth Values. (line 6246)
+* logical operators, See Boolean expressions: Boolean Ops. (line 6463)
+* login information: Passwd Functions. (line 13753)
+* long options: Command Line. (line 11995)
+* loops: While Statement. (line 7299)
+* loops, continue statements and: For Statement. (line 7438)
+* loops, count for header: Profiling. (line 11862)
+* loops, exiting: Break Statement. (line 7525)
+* loops, See Also while statement: While Statement. (line 7299)
* Lost In Space: Dynamic Extensions.
- (line 18729)
+ (line 18761)
* ls utility: More Complex. (line 1708)
-* lshift function (gawk): Bitwise Functions. (line 10333)
-* lvalues/rvalues: Assignment Ops. (line 6006)
-* mailing labels, printing: Labels Program. (line 15689)
+* lshift function (gawk): Bitwise Functions. (line 10353)
+* lvalues/rvalues: Assignment Ops. (line 6014)
+* mailing labels, printing: Labels Program. (line 15723)
* mailing list, GNITS: Acknowledgments. (line 991)
-* make_builtin internal function: Internals. (line 18856)
-* make_number internal function: Internals. (line 18831)
-* make_string internal function: Internals. (line 18826)
-* mark parity: Ordinal Functions. (line 12980)
+* make_builtin internal function: Internals. (line 18893)
+* make_number internal function: Internals. (line 18868)
+* make_string internal function: Internals. (line 18863)
+* mark parity: Ordinal Functions. (line 13014)
* marked string extraction (internationalization): String Extraction.
- (line 11157)
-* marked strings, extracting: String Extraction. (line 11157)
-* Marx, Groucho: Increment Ops. (line 6207)
-* match function: String Functions. (line 9239)
+ (line 11177)
+* marked strings, extracting: String Extraction. (line 11177)
+* Marx, Groucho: Increment Ops. (line 6215)
+* match function: String Functions. (line 9256)
* match function, RSTART/RLENGTH variables: String Functions.
- (line 9256)
+ (line 9273)
* matching, expressions, See comparison expressions: Typing and Comparison.
- (line 6269)
-* matching, leftmost longest: Multiple Line. (line 3717)
-* matching, null strings: Gory Details. (line 9776)
-* mawk program: Other Versions. (line 18378)
-* McPhee, Patrick: Contributors. (line 17098)
-* memory, releasing: Internals. (line 18851)
-* memory, setting limits: Options. (line 12036)
+ (line 6277)
+* matching, leftmost longest: Multiple Line. (line 3725)
+* matching, null strings: Gory Details. (line 9796)
+* mawk program: Other Versions. (line 18410)
+* McPhee, Patrick: Contributors. (line 17138)
+* memory, releasing: Internals. (line 18888)
+* memory, setting limits: Options. (line 12051)
* message object files: Explaining gettext.
- (line 10934)
+ (line 10954)
* message object files, converting from portable object files: I18N Example.
- (line 11380)
+ (line 11400)
* message object files, specifying directory of <1>: Programmer i18n.
- (line 11070)
+ (line 11090)
* message object files, specifying directory of: Explaining gettext.
- (line 10946)
+ (line 10966)
* metacharacters, escape sequences for: Escape Sequences. (line 2164)
-* mktime function (gawk): Time Functions. (line 9991)
-* modifiers, in format specifiers: Format Modifiers. (line 4606)
+* mktime function (gawk): Time Functions. (line 10011)
+* modifiers, in format specifiers: Format Modifiers. (line 4614)
* monetary information, localization: Explaining gettext.
- (line 10994)
-* msgfmt utility: I18N Example. (line 11380)
-* names, arrays/variables <1>: Library Names. (line 12507)
-* names, arrays/variables: Arrays. (line 8279)
-* names, functions <1>: Library Names. (line 12507)
-* names, functions: Definition Syntax. (line 10486)
-* namespace issues <1>: Library Names. (line 12507)
-* namespace issues: Arrays. (line 8279)
-* namespace issues, functions: Definition Syntax. (line 10486)
+ (line 11014)
+* msgfmt utility: I18N Example. (line 11400)
+* names, arrays/variables <1>: Library Names. (line 12541)
+* names, arrays/variables: Arrays. (line 8287)
+* names, functions <1>: Library Names. (line 12541)
+* names, functions: Definition Syntax. (line 10506)
+* namespace issues <1>: Library Names. (line 12541)
+* namespace issues: Arrays. (line 8287)
+* namespace issues, functions: Definition Syntax. (line 10506)
* nawk utility: Names. (line 688)
* negative zero: Floating Point Issues.
- (line 19714)
-* NetBSD: Glossary. (line 20320)
-* networks, programming: TCP/IP Networking. (line 11643)
-* networks, support for: Special Network. (line 5137)
-* newlines <1>: Options. (line 12148)
-* newlines <2>: Boolean Ops. (line 6516)
+ (line 19798)
+* NetBSD: Glossary. (line 20404)
+* networks, programming: TCP/IP Networking. (line 11658)
+* networks, support for: Special Network. (line 5145)
+* newlines <1>: Options. (line 12182)
+* newlines <2>: Boolean Ops. (line 6524)
* newlines: Statements/Lines. (line 1770)
-* newlines, as field separators: Field Separators. (line 3312)
+* newlines, as field separators: Field Separators. (line 3320)
* newlines, as record separators: Records. (line 2831)
* newlines, in dynamic regexps: Computed Regexps. (line 2708)
* newlines, in regexp constants: Computed Regexps. (line 2718)
-* newlines, printing: Print Examples. (line 4312)
+* newlines, printing: Print Examples. (line 4320)
* newlines, separating statements in actions <1>: Statements.
- (line 7220)
+ (line 7228)
* newlines, separating statements in actions: Action Overview.
- (line 7170)
-* next file statement: POSIX/GNU. (line 16967)
-* next file statement, deprecated: Obsolete. (line 12392)
+ (line 7178)
+* next file statement: POSIX/GNU. (line 17001)
+* next file statement, deprecated: Obsolete. (line 12426)
* next file statement, in gawk: Nextfile Statement.
- (line 7716)
-* next statement <1>: Next Statement. (line 7627)
-* next statement: Boolean Ops. (line 6533)
+ (line 7724)
+* next statement <1>: Next Statement. (line 7635)
+* next statement: Boolean Ops. (line 6541)
* next statement, BEGIN/END patterns and: I/O And BEGIN/END.
- (line 7080)
+ (line 7088)
* next statement, user-defined functions and: Next Statement.
- (line 7660)
+ (line 7668)
* nextfile statement: Nextfile Statement.
- (line 7676)
+ (line 7684)
* nextfile statement, BEGIN/END patterns and: I/O And BEGIN/END.
- (line 7080)
-* nextfile statement, implementing: Nextfile Function. (line 12611)
+ (line 7088)
+* nextfile statement, implementing: Nextfile Function. (line 12645)
* nextfile statement, in gawk: Nextfile Statement.
- (line 7716)
-* nextfile statement, next file statement and: Obsolete. (line 12392)
+ (line 7724)
+* nextfile statement, next file statement and: Obsolete. (line 12426)
* nextfile statement, user-defined functions and: Nextfile Statement.
- (line 7709)
-* nextfile user-defined function: Nextfile Function. (line 12643)
-* NF variable <1>: Auto-set. (line 8056)
-* NF variable: Fields. (line 3033)
-* NF variable, decrementing: Changing Fields. (line 3223)
-* noassign.awk program: Ignoring Assigns. (line 13393)
-* NODE internal type: Internals. (line 18772)
-* nodes, duplicating: Internals. (line 18846)
-* not Boolean-logic operator: Boolean Ops. (line 6455)
-* NR variable <1>: Auto-set. (line 8067)
+ (line 7717)
+* nextfile user-defined function: Nextfile Function. (line 12677)
+* NF variable <1>: Auto-set. (line 8064)
+* NF variable: Fields. (line 3041)
+* NF variable, decrementing: Changing Fields. (line 3231)
+* noassign.awk program: Ignoring Assigns. (line 13427)
+* NODE internal type: Internals. (line 18809)
+* nodes, duplicating: Internals. (line 18883)
+* not Boolean-logic operator: Boolean Ops. (line 6463)
+* NR variable <1>: Auto-set. (line 8075)
* NR variable: Records. (line 2817)
-* NR variable, changing: Auto-set. (line 8140)
-* null strings <1>: Basic Data Typing. (line 19596)
-* null strings <2>: Truth Values. (line 6238)
+* NR variable, changing: Auto-set. (line 8148)
+* null strings <1>: Basic Data Typing. (line 19680)
+* null strings <2>: Truth Values. (line 6246)
* null strings <3>: Regexp Field Splitting.
- (line 3371)
+ (line 3379)
* null strings: Records. (line 2912)
-* null strings, array elements and: Delete. (line 8598)
+* null strings, array elements and: Delete. (line 8606)
* null strings, as array subscripts: Uninitialized Subscripts.
- (line 8735)
-* null strings, converting numbers to strings: Conversion. (line 5726)
-* null strings, matching: Gory Details. (line 9776)
+ (line 8743)
+* null strings, converting numbers to strings: Conversion. (line 5734)
+* null strings, matching: Gory Details. (line 9796)
* null strings, quoting and: Quoting. (line 1401)
* number sign (#), #! (executable scripts): Executable Scripts.
(line 1233)
* number sign (#), #! (executable scripts), portability issues with: Executable Scripts.
(line 1233)
* number sign (#), commenting: Comments. (line 1296)
-* numbers: Internals. (line 18831)
+* numbers: Internals. (line 18868)
* numbers, as array subscripts: Numeric Array Subscripts.
- (line 8648)
-* numbers, as values of characters: Ordinal Functions. (line 12942)
+ (line 8656)
+* numbers, as values of characters: Ordinal Functions. (line 12976)
* numbers, Cliff random: Cliff Random Function.
- (line 12911)
-* numbers, converting: Conversion. (line 5711)
-* numbers, converting, to strings <1>: Bitwise Functions. (line 10387)
-* numbers, converting, to strings: User-modified. (line 7825)
-* numbers, floating-point: Basic Data Typing. (line 19570)
-* numbers, floating-point, AWKNUM internal type: Internals. (line 18768)
+ (line 12945)
+* numbers, converting: Conversion. (line 5719)
+* numbers, converting, to strings <1>: Bitwise Functions. (line 10407)
+* numbers, converting, to strings: User-modified. (line 7833)
+* numbers, floating-point: Basic Data Typing. (line 19654)
+* numbers, floating-point, AWKNUM internal type: Internals. (line 18805)
* numbers, hexadecimal: Nondecimal-numbers.
- (line 5449)
-* numbers, NODE internal type: Internals. (line 18772)
+ (line 5457)
+* numbers, NODE internal type: Internals. (line 18809)
* numbers, octal: Nondecimal-numbers.
- (line 5449)
-* numbers, random: Numeric Functions. (line 9107)
-* numbers, rounding: Round Function. (line 12866)
-* numeric, constants: Scalar Constants. (line 5417)
-* numeric, output format: OFMT. (line 4426)
+ (line 5457)
+* numbers, random: Numeric Functions. (line 9115)
+* numbers, rounding: Round Function. (line 12900)
+* numeric, constants: Scalar Constants. (line 5425)
+* numeric, output format: OFMT. (line 4434)
* numeric, strings: Typing and Comparison.
- (line 6273)
-* numeric, values: Internals. (line 18776)
+ (line 6281)
+* numeric, values: Internals. (line 18813)
* oawk utility: Names. (line 688)
-* obsolete features: Obsolete. (line 12387)
+* obsolete features: Obsolete. (line 12421)
* octal numbers: Nondecimal-numbers.
- (line 5449)
-* octal values, enabling interpretation of: Options. (line 12133)
-* OFMT variable <1>: User-modified. (line 7899)
-* OFMT variable <2>: Conversion. (line 5759)
-* OFMT variable: OFMT. (line 4435)
-* OFMT variable, POSIX awk and: OFMT. (line 4447)
-* OFS variable <1>: User-modified. (line 7908)
-* OFS variable <2>: Output Separators. (line 4385)
-* OFS variable: Changing Fields. (line 3180)
-* OpenBSD: Glossary. (line 20320)
-* operating systems, BSD-based <1>: Portal Files. (line 11710)
+ (line 5457)
+* octal values, enabling interpretation of: Options. (line 12167)
+* OFMT variable <1>: User-modified. (line 7907)
+* OFMT variable <2>: Conversion. (line 5767)
+* OFMT variable: OFMT. (line 4443)
+* OFMT variable, POSIX awk and: OFMT. (line 4455)
+* OFS variable <1>: User-modified. (line 7916)
+* OFS variable <2>: Output Separators. (line 4393)
+* OFS variable: Changing Fields. (line 3188)
+* OpenBSD: Glossary. (line 20404)
+* operating systems, BSD-based <1>: Portal Files. (line 11725)
* operating systems, BSD-based: Manual History. (line 886)
-* operating systems, PC, gawk on: PC Using. (line 17821)
+* operating systems, PC, gawk on: PC Using. (line 17853)
* operating systems, PC, gawk on, installing: PC Installation.
- (line 17600)
-* operating systems, porting gawk to: New Ports. (line 18648)
+ (line 17634)
+* operating systems, porting gawk to: New Ports. (line 18680)
* operating systems, See Also GNU/Linux, PC operating systems, Unix: Installation.
- (line 17111)
-* operations, bitwise: Bitwise Functions. (line 10294)
-* operators, arithmetic: Arithmetic Ops. (line 5815)
-* operators, assignment: Assignment Ops. (line 5981)
-* operators, assignment, evaluation order: Assignment Ops. (line 6085)
-* operators, Boolean, See Boolean expressions: Boolean Ops. (line 6455)
-* operators, decrement/increment: Increment Ops. (line 6152)
+ (line 17151)
+* operations, bitwise: Bitwise Functions. (line 10314)
+* operators, arithmetic: Arithmetic Ops. (line 5823)
+* operators, assignment: Assignment Ops. (line 5989)
+* operators, assignment, evaluation order: Assignment Ops. (line 6093)
+* operators, Boolean, See Boolean expressions: Boolean Ops. (line 6463)
+* operators, decrement/increment: Increment Ops. (line 6160)
* operators, GNU-specific: GNU Regexp Operators.
(line 2461)
-* operators, input/output <1>: Precedence. (line 6703)
-* operators, input/output <2>: Redirection. (line 4856)
-* operators, input/output <3>: Getline/Coprocess. (line 4129)
-* operators, input/output <4>: Getline/Pipe. (line 4043)
-* operators, input/output: Getline/File. (line 3971)
-* operators, logical, See Boolean expressions: Boolean Ops. (line 6455)
-* operators, precedence <1>: Precedence. (line 6649)
-* operators, precedence: Increment Ops. (line 6207)
+* operators, input/output <1>: Precedence. (line 6711)
+* operators, input/output <2>: Redirection. (line 4864)
+* operators, input/output <3>: Getline/Coprocess. (line 4137)
+* operators, input/output <4>: Getline/Pipe. (line 4051)
+* operators, input/output: Getline/File. (line 3979)
+* operators, logical, See Boolean expressions: Boolean Ops. (line 6463)
+* operators, precedence <1>: Precedence. (line 6657)
+* operators, precedence: Increment Ops. (line 6215)
* operators, relational, See operators, comparison: Typing and Comparison.
- (line 6269)
-* operators, short-circuit: Boolean Ops. (line 6506)
-* operators, string: Concatenation. (line 5903)
+ (line 6277)
+* operators, short-circuit: Boolean Ops. (line 6514)
+* operators, string: Concatenation. (line 5911)
* operators, string-matching: Regexp Usage. (line 1989)
* operators, string-matching, for buffers: GNU Regexp Operators.
(line 2495)
* operators, word-boundary (gawk): GNU Regexp Operators.
(line 2510)
-* options, command-line <1>: Options. (line 11997)
+* options, command-line <1>: Options. (line 12012)
* options, command-line <2>: Command Line Field Separator.
- (line 3419)
+ (line 3427)
* options, command-line: Long. (line 1202)
-* options, command-line, end of: Options. (line 12053)
-* options, command-line, invoking awk: Command Line. (line 11973)
-* options, command-line, processing: Getopt Function. (line 13426)
-* options, deprecated: Obsolete. (line 12387)
-* options, long <1>: Options. (line 11997)
-* options, long: Command Line. (line 11980)
-* options, printing list of: Options. (line 12111)
-* OR bitwise operation: Bitwise Functions. (line 10294)
-* or Boolean-logic operator: Boolean Ops. (line 6455)
-* or function (gawk): Bitwise Functions. (line 10327)
-* ord user-defined function: Ordinal Functions. (line 12952)
-* order of evaluation, concatenation: Concatenation. (line 5935)
-* ORS variable <1>: User-modified. (line 7913)
-* ORS variable: Output Separators. (line 4399)
+* options, command-line, end of: Options. (line 12068)
+* options, command-line, invoking awk: Command Line. (line 11988)
+* options, command-line, processing: Getopt Function. (line 13460)
+* options, deprecated: Obsolete. (line 12421)
+* options, long <1>: Options. (line 12012)
+* options, long: Command Line. (line 11995)
+* options, printing list of: Options. (line 12145)
+* OR bitwise operation: Bitwise Functions. (line 10314)
+* or Boolean-logic operator: Boolean Ops. (line 6463)
+* or function (gawk): Bitwise Functions. (line 10347)
+* ord user-defined function: Ordinal Functions. (line 12986)
+* order of evaluation, concatenation: Concatenation. (line 5943)
+* ORS variable <1>: User-modified. (line 7921)
+* ORS variable: Output Separators. (line 4407)
* output field separator, See OFS variable: Changing Fields.
- (line 3180)
+ (line 3188)
* output record separator, See ORS variable: Output Separators.
- (line 4399)
-* output redirection: Redirection. (line 4843)
-* output, buffering: I/O Functions. (line 9818)
-* output, duplicating into files: Tee Program. (line 14930)
+ (line 4407)
+* output redirection: Redirection. (line 4851)
+* output, buffering: I/O Functions. (line 9838)
+* output, duplicating into files: Tee Program. (line 14964)
* output, files, closing: Close Files And Pipes.
- (line 5191)
-* output, format specifier, OFMT: OFMT. (line 4435)
-* output, formatted: Printf. (line 4457)
-* output, pipes: Redirection. (line 4891)
-* output, printing, See printing: Printing. (line 4241)
-* output, records: Output Separators. (line 4399)
-* output, standard: Special FD. (line 5011)
-* P1003.2 POSIX standard: Glossary. (line 20164)
-* param_cnt internal variable: Internals. (line 18795)
-* parameters, number of: Internals. (line 18795)
+ (line 5199)
+* output, format specifier, OFMT: OFMT. (line 4443)
+* output, formatted: Printf. (line 4465)
+* output, pipes: Redirection. (line 4899)
+* output, printing, See printing: Printing. (line 4249)
+* output, records: Output Separators. (line 4407)
+* output, standard: Special FD. (line 5019)
+* P1003.2 POSIX standard: Glossary. (line 20248)
+* param_cnt internal variable: Internals. (line 18832)
+* parameters, number of: Internals. (line 18832)
* parentheses (): Regexp Operators. (line 2253)
-* parentheses (), pgawk program: Profiling. (line 11862)
-* password file: Passwd Functions. (line 13719)
+* parentheses (), pgawk program: Profiling. (line 11877)
+* password file: Passwd Functions. (line 13753)
* patterns: Patterns and Actions.
- (line 6747)
+ (line 6755)
* patterns, comparison expressions as: Expression Patterns.
- (line 6833)
-* patterns, counts: Profiling. (line 11834)
+ (line 6841)
+* patterns, counts: Profiling. (line 11849)
* patterns, default: Very Simple. (line 1559)
-* patterns, empty: Empty. (line 7093)
-* patterns, expressions as: Regexp Patterns. (line 6811)
-* patterns, ranges in: Ranges. (line 6905)
+* patterns, empty: Empty. (line 7101)
+* patterns, expressions as: Regexp Patterns. (line 6819)
+* patterns, ranges in: Ranges. (line 6913)
* patterns, regexp constants as: Expression Patterns.
- (line 6855)
-* patterns, types of: Pattern Overview. (line 6780)
-* pawk profiling Bell Labs awk: Other Versions. (line 18433)
-* PC operating systems, gawk on: PC Using. (line 17821)
+ (line 6863)
+* patterns, types of: Pattern Overview. (line 6788)
+* pawk profiling Bell Labs awk: Other Versions. (line 18465)
+* PC operating systems, gawk on: PC Using. (line 17853)
* PC operating systems, gawk on, installing: PC Installation.
- (line 17600)
-* percent sign (%), % operator: Precedence. (line 6693)
-* percent sign (%), %= operator <1>: Precedence. (line 6734)
-* percent sign (%), %= operator: Assignment Ops. (line 6103)
+ (line 17634)
+* percent sign (%), % operator: Precedence. (line 6701)
+* percent sign (%), %= operator <1>: Precedence. (line 6742)
+* percent sign (%), %= operator: Assignment Ops. (line 6111)
* period (.): Regexp Operators. (line 2218)
-* PERL: Future Extensions. (line 19333)
-* Peters, Arno: Contributors. (line 17083)
-* Peterson, Hal: Contributors. (line 17050)
-* pgawk program: Profiling. (line 11725)
-* pgawk program, awkprof.out file: Profiling. (line 11729)
-* pgawk program, dynamic profiling: Profiling. (line 11898)
+* PERL: Future Extensions. (line 19424)
+* Peters, Arno: Contributors. (line 17123)
+* Peterson, Hal: Contributors. (line 17090)
+* pgawk program: Profiling. (line 11740)
+* pgawk program, awkprof.out file: Profiling. (line 11744)
+* pgawk program, dynamic profiling: Profiling. (line 11913)
* pipes, closing: Close Files And Pipes.
- (line 5191)
-* pipes, input: Getline/Pipe. (line 4043)
-* pipes, output: Redirection. (line 4891)
+ (line 5199)
+* pipes, input: Getline/Pipe. (line 4051)
+* pipes, output: Redirection. (line 4899)
* plus sign (+): Regexp Operators. (line 2276)
-* plus sign (+), + operator: Precedence. (line 6690)
-* plus sign (+), ++ operator <1>: Precedence. (line 6684)
-* plus sign (+), ++ operator: Increment Ops. (line 6186)
-* plus sign (+), += operator <1>: Precedence. (line 6734)
-* plus sign (+), += operator: Assignment Ops. (line 6056)
+* plus sign (+), + operator: Precedence. (line 6698)
+* plus sign (+), ++ operator <1>: Precedence. (line 6692)
+* plus sign (+), ++ operator: Increment Ops. (line 6194)
+* plus sign (+), += operator <1>: Precedence. (line 6742)
+* plus sign (+), += operator: Assignment Ops. (line 6064)
* plus sign (+), decrement/increment operators: Increment Ops.
- (line 6157)
+ (line 6165)
* portability: Escape Sequences. (line 2126)
* portability, #! (executable scripts): Executable Scripts.
(line 1261)
-* portability, ** operator and: Arithmetic Ops. (line 5890)
-* portability, **= operator and: Assignment Ops. (line 6123)
+* portability, ** operator and: Arithmetic Ops. (line 5898)
+* portability, **= operator and: Assignment Ops. (line 6131)
* portability, ARGV variable: Executable Scripts.
(line 1270)
* portability, backslash continuation and: Statements/Lines.
@@ -22985,218 +23065,221 @@ Index
* portability, backslash in escape sequences: Escape Sequences.
(line 2145)
* portability, close function and: Close Files And Pipes.
- (line 5266)
-* portability, data files as single record: Records. (line 2971)
-* portability, deleting array elements: Delete. (line 8622)
-* portability, example programs: Library Functions. (line 12460)
-* portability, fflush function and: I/O Functions. (line 9818)
-* portability, functions, defining: Definition Syntax. (line 10554)
-* portability, gawk: New Ports. (line 18648)
+ (line 5274)
+* portability, data files as single record: Records. (line 2979)
+* portability, deleting array elements: Delete. (line 8630)
+* portability, example programs: Library Functions. (line 12494)
+* portability, fflush function and: I/O Functions. (line 9838)
+* portability, functions, defining: Definition Syntax. (line 10574)
+* portability, gawk: New Ports. (line 18680)
* portability, gettext library and: Explaining gettext.
- (line 10905)
-* portability, internationalization and: I18N Portability. (line 11260)
-* portability, length function: String Functions. (line 9230)
-* portability, new awk vs. old awk: Conversion. (line 5759)
+ (line 10925)
+* portability, internationalization and: I18N Portability. (line 11280)
+* portability, length function: String Functions. (line 9238)
+* portability, new awk vs. old awk: Conversion. (line 5767)
* portability, next statement in user-defined functions: Function Caveats.
- (line 10740)
-* portability, NF variable, decrementing: Changing Fields. (line 3231)
-* portability, operators: Increment Ops. (line 6207)
-* portability, operators, not in POSIX awk: Precedence. (line 6738)
+ (line 10760)
+* portability, NF variable, decrementing: Changing Fields. (line 3239)
+* portability, operators: Increment Ops. (line 6215)
+* portability, operators, not in POSIX awk: Precedence. (line 6746)
* portability, POSIXLY_CORRECT environment variable: Options.
- (line 12257)
-* portability, substr function: String Functions. (line 9581)
-* portable object files <1>: Translator i18n. (line 11136)
+ (line 12291)
+* portability, substr function: String Functions. (line 9601)
+* portable object files <1>: Translator i18n. (line 11156)
* portable object files: Explaining gettext.
- (line 10931)
+ (line 10951)
* portable object files, converting to message object files: I18N Example.
- (line 11380)
-* portable object files, generating: Options. (line 12102)
-* portal files: Portal Files. (line 11710)
-* porting gawk: New Ports. (line 18648)
+ (line 11400)
+* portable object files, generating: Options. (line 12136)
+* portal files: Portal Files. (line 11725)
+* porting gawk: New Ports. (line 18680)
* positional specifiers, printf statement <1>: Printf Ordering.
- (line 11183)
+ (line 11203)
* positional specifiers, printf statement: Format Modifiers.
- (line 4613)
+ (line 4621)
* positional specifiers, printf statement, mixing with regular formats: Printf Ordering.
- (line 11234)
+ (line 11254)
* positive zero: Floating Point Issues.
- (line 19714)
-* POSIX awk <1>: Assignment Ops. (line 6114)
+ (line 19798)
+* POSIX awk <1>: Assignment Ops. (line 6122)
* POSIX awk: This Manual. (line 718)
-* POSIX awk, **= operator and: Assignment Ops. (line 6123)
-* POSIX awk, < operator and: Getline/File. (line 3991)
-* POSIX awk, arithmetic operators and: Arithmetic Ops. (line 5845)
+* POSIX awk, **= operator and: Assignment Ops. (line 6131)
+* POSIX awk, < operator and: Getline/File. (line 3999)
+* POSIX awk, arithmetic operators and: Arithmetic Ops. (line 5853)
* POSIX awk, backslashes in string constants: Escape Sequences.
(line 2145)
-* POSIX awk, BEGIN/END patterns: I/O And BEGIN/END. (line 7060)
-* POSIX awk, break statement and: Break Statement. (line 7558)
-* POSIX awk, changes in awk versions: POSIX. (line 16731)
+* POSIX awk, BEGIN/END patterns: I/O And BEGIN/END. (line 7068)
+* POSIX awk, break statement and: Break Statement. (line 7566)
+* POSIX awk, changes in awk versions: POSIX. (line 16765)
* POSIX awk, character lists and: Character Lists. (line 2371)
* POSIX awk, character lists and, character classes: Character Lists.
(line 2377)
* POSIX awk, continue statement and: Continue Statement.
- (line 7611)
-* POSIX awk, CONVFMT variable and: User-modified. (line 7825)
-* POSIX awk, date utility and: Time Functions. (line 10225)
+ (line 7619)
+* POSIX awk, CONVFMT variable and: User-modified. (line 7833)
+* POSIX awk, date utility and: Time Functions. (line 10245)
* POSIX awk, field separators and <1>: Field Splitting Summary.
- (line 3541)
-* POSIX awk, field separators and: Fields. (line 3006)
-* POSIX awk, FS variable and: User-modified. (line 7851)
-* POSIX awk, function keyword in: Definition Syntax. (line 10539)
-* POSIX awk, functions and, gsub/sub: Gory Details. (line 9669)
-* POSIX awk, functions and, length: String Functions. (line 9230)
-* POSIX awk, GNU long options and: Options. (line 12006)
+ (line 3549)
+* POSIX awk, field separators and: Fields. (line 3014)
+* POSIX awk, FS variable and: User-modified. (line 7859)
+* POSIX awk, function keyword in: Definition Syntax. (line 10559)
+* POSIX awk, functions and, gsub/sub: Gory Details. (line 9689)
+* POSIX awk, functions and, length: String Functions. (line 9238)
+* POSIX awk, GNU long options and: Options. (line 12021)
* POSIX awk, interval expressions in: Regexp Operators. (line 2309)
-* POSIX awk, next/nextfile statements and: Next Statement. (line 7660)
+* POSIX awk, next/nextfile statements and: Next Statement. (line 7668)
* POSIX awk, numeric strings and: Typing and Comparison.
- (line 6273)
-* POSIX awk, OFMT variable and <1>: Conversion. (line 5759)
-* POSIX awk, OFMT variable and: OFMT. (line 4447)
+ (line 6281)
+* POSIX awk, OFMT variable and <1>: Conversion. (line 5767)
+* POSIX awk, OFMT variable and: OFMT. (line 4455)
* POSIX awk, period (.), using: Regexp Operators. (line 2225)
-* POSIX awk, printf format strings and: Format Modifiers. (line 4759)
+* POSIX awk, printf format strings and: Format Modifiers. (line 4767)
* POSIX awk, regular expressions and: Regexp Operators. (line 2329)
-* POSIX awk, timestamps and: Time Functions. (line 9967)
-* POSIX awk, | I/O operator and: Getline/Pipe. (line 4089)
-* POSIX mode: Options. (line 12141)
+* POSIX awk, timestamps and: Time Functions. (line 9987)
+* POSIX awk, | I/O operator and: Getline/Pipe. (line 4097)
+* POSIX mode: Options. (line 12175)
* POSIX, awk and: Preface. (line 569)
-* POSIX, gawk extensions not included in: POSIX/GNU. (line 16818)
-* POSIX, programs, implementing in awk: Clones. (line 14209)
-* POSIXLY_CORRECT environment variable: Options. (line 12239)
-* precedence <1>: Precedence. (line 6649)
-* precedence: Increment Ops. (line 6207)
+* POSIX, gawk extensions not included in: POSIX/GNU. (line 16852)
+* POSIX, programs, implementing in awk: Clones. (line 14243)
+* POSIXLY_CORRECT environment variable: Options. (line 12273)
+* precedence <1>: Precedence. (line 6657)
+* precedence: Increment Ops. (line 6215)
* precedence, regexp operators: Regexp Operators. (line 2324)
-* print statement: Printing. (line 4251)
+* print statement: Printing. (line 4259)
* print statement, BEGIN/END patterns and: I/O And BEGIN/END.
- (line 7060)
-* print statement, commas, omitting: Print Examples. (line 4330)
-* print statement, I/O operators in: Precedence. (line 6710)
-* print statement, line continuations and: Print Examples. (line 4375)
-* print statement, OFMT variable and: User-modified. (line 7908)
+ (line 7068)
+* print statement, commas, omitting: Print Examples. (line 4338)
+* print statement, I/O operators in: Precedence. (line 6718)
+* print statement, line continuations and: Print Examples. (line 4383)
+* print statement, OFMT variable and: User-modified. (line 7916)
* print statement, See Also redirection, of output: Redirection.
- (line 4851)
-* print statement, sprintf function and: Round Function. (line 12866)
-* printf statement <1>: Printf. (line 4457)
-* printf statement: Printing. (line 4251)
-* printf statement, columns, aligning: Print Examples. (line 4369)
+ (line 4859)
+* print statement, sprintf function and: Round Function. (line 12900)
+* printf statement <1>: Printf. (line 4465)
+* printf statement: Printing. (line 4259)
+* printf statement, columns, aligning: Print Examples. (line 4377)
* printf statement, format-control characters: Control Letters.
- (line 4519)
-* printf statement, I/O operators in: Precedence. (line 6710)
-* printf statement, modifiers: Format Modifiers. (line 4606)
+ (line 4527)
+* printf statement, I/O operators in: Precedence. (line 6718)
+* printf statement, modifiers: Format Modifiers. (line 4614)
* printf statement, positional specifiers <1>: Printf Ordering.
- (line 11183)
+ (line 11203)
* printf statement, positional specifiers: Format Modifiers.
- (line 4613)
+ (line 4621)
* printf statement, positional specifiers, mixing with regular formats: Printf Ordering.
- (line 11234)
+ (line 11254)
* printf statement, See Also redirection, of output: Redirection.
- (line 4851)
-* printf statement, sprintf function and: Round Function. (line 12866)
-* printf statement, syntax of: Basic Printf. (line 4478)
-* printing: Printing. (line 4241)
-* printing, list of options: Options. (line 12111)
-* printing, mailing labels: Labels Program. (line 15689)
-* printing, unduplicated lines of text: Uniq Program. (line 15014)
-* printing, user information: Id Program. (line 14721)
-* private variables: Library Names. (line 12512)
-* process information, files for: Special Process. (line 5078)
-* processes, two-way communications with: Two-way I/O. (line 11524)
-* processing data: Basic High Level. (line 19459)
-* PROCINFO array <1>: Group Functions. (line 13934)
-* PROCINFO array <2>: Passwd Functions. (line 13709)
-* PROCINFO array <3>: Auto-set. (line 8072)
-* PROCINFO array: Special Caveats. (line 5162)
-* profiling awk programs: Profiling. (line 11725)
-* profiling awk programs, dynamically: Profiling. (line 11898)
-* profiling gawk, See pgawk program: Profiling. (line 11725)
+ (line 4859)
+* printf statement, sprintf function and: Round Function. (line 12900)
+* printf statement, syntax of: Basic Printf. (line 4486)
+* printing: Printing. (line 4249)
+* printing, list of options: Options. (line 12145)
+* printing, mailing labels: Labels Program. (line 15723)
+* printing, unduplicated lines of text: Uniq Program. (line 15048)
+* printing, user information: Id Program. (line 14755)
+* private variables: Library Names. (line 12546)
+* process information, files for: Special Process. (line 5086)
+* processes, two-way communications with: Two-way I/O. (line 11539)
+* processing data: Basic High Level. (line 19543)
+* PROCINFO array <1>: Group Functions. (line 13968)
+* PROCINFO array <2>: Passwd Functions. (line 13743)
+* PROCINFO array <3>: Auto-set. (line 8080)
+* PROCINFO array: Special Caveats. (line 5170)
+* PROCINFO variable: Internals. (line 18951)
+* profiling awk programs: Profiling. (line 11740)
+* profiling awk programs, dynamically: Profiling. (line 11913)
+* profiling gawk, See pgawk program: Profiling. (line 11740)
* program, definition of: Getting Started. (line 1047)
-* programmers, attractiveness of: Two-way I/O. (line 11507)
+* programmers, attractiveness of: Two-way I/O. (line 11522)
* programming conventions, --non-decimal-data option: Nondecimal Data.
- (line 11495)
-* programming conventions, ARGC/ARGV variables: Auto-set. (line 7984)
-* programming conventions, exit statement: Exit Statement. (line 7759)
+ (line 11510)
+* programming conventions, ARGC/ARGV variables: Auto-set. (line 7992)
+* programming conventions, exit statement: Exit Statement. (line 7767)
* programming conventions, function parameters: Return Statement.
- (line 10783)
+ (line 10803)
* programming conventions, functions, calling: Calling Built-in.
- (line 9003)
+ (line 9011)
* programming conventions, functions, writing: Definition Syntax.
- (line 10516)
+ (line 10536)
* programming conventions, gawk internals: Internal File Ops.
- (line 19129)
+ (line 19220)
* programming conventions, nextfile statement: Nextfile Function.
- (line 12625)
+ (line 12659)
* programming conventions, private variable names: Library Names.
- (line 12524)
+ (line 12558)
* programming language, recipe for: History. (line 630)
* programming languages, data-driven vs. procedural: Getting Started.
(line 1038)
-* programming, basic steps: Basic High Level. (line 19472)
-* programming, concepts: Basic Concepts. (line 19440)
-* pwcat program: Passwd Functions. (line 13726)
+* programming, basic steps: Basic High Level. (line 19556)
+* programming, concepts: Basic Concepts. (line 19524)
+* pwcat program: Passwd Functions. (line 13760)
* question mark (?) <1>: GNU Regexp Operators.
(line 2506)
* question mark (?): Regexp Operators. (line 2285)
-* question mark (?), ?: operator: Precedence. (line 6731)
-* QUIT signal (MS-DOS): Profiling. (line 11931)
+* question mark (?), ?: operator: Precedence. (line 6739)
+* QUIT signal (MS-DOS): Profiling. (line 11946)
* quoting <1>: Comments. (line 1317)
* quoting <2>: Long. (line 1216)
* quoting: Read Terminal. (line 1165)
* quoting, rules for: Quoting. (line 1349)
* quoting, tricks for: Quoting. (line 1410)
-* Rakitzis, Byron: History Sorting. (line 15919)
-* rand function: Numeric Functions. (line 9077)
+* Rakitzis, Byron: History Sorting. (line 15953)
+* rand function: Numeric Functions. (line 9085)
* random numbers, Cliff: Cliff Random Function.
- (line 12911)
-* random numbers, rand/srand functions: Numeric Functions. (line 9077)
-* random numbers, seed of: Numeric Functions. (line 9107)
+ (line 12945)
+* random numbers, rand/srand functions: Numeric Functions. (line 9085)
+* random numbers, seed of: Numeric Functions. (line 9115)
* range expressions: Character Lists. (line 2353)
-* range patterns: Ranges. (line 6905)
-* Rankin, Pat <1>: Bugs. (line 18339)
-* Rankin, Pat <2>: Contributors. (line 17045)
-* Rankin, Pat <3>: Assignment Ops. (line 6074)
+* range patterns: Ranges. (line 6913)
+* Rankin, Pat <1>: Bugs. (line 18371)
+* Rankin, Pat <2>: Contributors. (line 17085)
+* Rankin, Pat <3>: Assignment Ops. (line 6082)
* Rankin, Pat: Acknowledgments. (line 995)
-* raw sockets: TCP/IP Networking. (line 11667)
-* readable data files, checking: File Checking. (line 13300)
-* readable.awk program: File Checking. (line 13305)
+* raw sockets: TCP/IP Networking. (line 11682)
+* readable data files, checking: File Checking. (line 13334)
+* readable.awk program: File Checking. (line 13339)
* recipe for a programming language: History. (line 630)
-* record separators <1>: User-modified. (line 7918)
+* record separators <1>: User-modified. (line 7926)
* record separators: Records. (line 2825)
* record separators, changing: Records. (line 2891)
* record separators, regular expressions as: Records. (line 2921)
-* record separators, with multiline records: Multiple Line. (line 3701)
-* records <1>: Basic High Level. (line 19524)
+* record separators, with multiline records: Multiple Line. (line 3709)
+* records <1>: Basic High Level. (line 19608)
* records: Reading Files. (line 2788)
-* records, multiline: Multiple Line. (line 3697)
-* records, printing: Print. (line 4292)
+* records, multiline: Multiple Line. (line 3705)
+* records, printing: Print. (line 4300)
* records, splitting input into: Records. (line 2817)
* records, terminating: Records. (line 2921)
-* records, treating files as: Records. (line 2992)
-* recursive functions: Definition Syntax. (line 10534)
-* redirection of input: Getline/File. (line 3971)
-* redirection of output: Redirection. (line 4843)
-* reference counting, sorting arrays: Array Sorting. (line 8938)
+* records, treating files as: Records. (line 3000)
+* recursive functions: Definition Syntax. (line 10554)
+* redirection of input: Getline/File. (line 3979)
+* redirection of output: Redirection. (line 4851)
+* reference counting, sorting arrays: Array Sorting. (line 8946)
* regexp constants <1>: Typing and Comparison.
- (line 6434)
-* regexp constants <2>: Regexp Constants. (line 5524)
+ (line 6442)
+* regexp constants <2>: Regexp Constants. (line 5532)
* regexp constants: Regexp Usage. (line 2028)
* regexp constants, /=.../, /= operator and: Assignment Ops.
- (line 6129)
+ (line 6137)
* regexp constants, as patterns: Expression Patterns.
- (line 6855)
+ (line 6863)
* regexp constants, in gawk: Using Constant Regexps.
- (line 5558)
+ (line 5566)
* regexp constants, slashes vs. quotes: Computed Regexps. (line 2677)
* regexp constants, vs. string constants: Computed Regexps. (line 2687)
* regexp, See regular expressions: Regexp. (line 1945)
+* register_deferred_variable internal function: Internals. (line 18951)
+* register_open_hook internal function: Internals. (line 18964)
* regular expressions: Regexp. (line 1945)
* regular expressions as field separators: Field Separators.
- (line 3298)
+ (line 3306)
* regular expressions, anchors in: Regexp Operators. (line 2197)
* regular expressions, as field separators: Regexp Field Splitting.
- (line 3335)
-* regular expressions, as patterns <1>: Regexp Patterns. (line 6811)
+ (line 3343)
+* regular expressions, as patterns <1>: Regexp Patterns. (line 6819)
* regular expressions, as patterns: Regexp Usage. (line 1976)
* regular expressions, as record separators: Records. (line 2921)
-* regular expressions, case sensitivity <1>: User-modified. (line 7867)
+* regular expressions, case sensitivity <1>: User-modified. (line 7875)
* regular expressions, case sensitivity: Case-sensitivity. (line 2549)
* regular expressions, computed: Computed Regexps. (line 2656)
* regular expressions, constants, See regexp constants: Regexp Usage.
@@ -23206,7 +23289,7 @@ Index
(line 2708)
* regular expressions, gawk, command-line options: GNU Regexp Operators.
(line 2517)
-* regular expressions, interval expressions and: Options. (line 12186)
+* regular expressions, interval expressions and: Options. (line 12220)
* regular expressions, leftmost longest match: Leftmost Longest.
(line 2626)
* regular expressions, operators <1>: Regexp Operators. (line 2181)
@@ -23219,808 +23302,810 @@ Index
(line 2461)
* regular expressions, operators, precedence of: Regexp Operators.
(line 2324)
-* regular expressions, searching for: Egrep Program. (line 14491)
+* regular expressions, searching for: Egrep Program. (line 14525)
* relational operators, See comparison operators: Typing and Comparison.
- (line 6269)
+ (line 6277)
* return statement, user-defined functions: Return Statement.
- (line 10750)
+ (line 10770)
* return values, close function: Close Files And Pipes.
- (line 5315)
-* rev user-defined function: Function Example. (line 10609)
-* rewind user-defined function: Rewind Function. (line 13268)
-* right angle bracket (>), > operator <1>: Precedence. (line 6703)
+ (line 5323)
+* rev user-defined function: Function Example. (line 10629)
+* rewind user-defined function: Rewind Function. (line 13302)
+* right angle bracket (>), > operator <1>: Precedence. (line 6711)
* right angle bracket (>), > operator: Typing and Comparison.
- (line 6334)
-* right angle bracket (>), > operator (I/O): Redirection. (line 4856)
-* right angle bracket (>), >= operator <1>: Precedence. (line 6703)
+ (line 6342)
+* right angle bracket (>), > operator (I/O): Redirection. (line 4864)
+* right angle bracket (>), >= operator <1>: Precedence. (line 6711)
* right angle bracket (>), >= operator: Typing and Comparison.
- (line 6334)
+ (line 6342)
* right angle bracket (>), >> operator (I/O) <1>: Precedence.
- (line 6703)
-* right angle bracket (>), >> operator (I/O): Redirection. (line 4884)
-* right shift, bitwise: Bitwise Functions. (line 10320)
-* Ritchie, Dennis: Basic Data Typing. (line 19620)
-* RLENGTH variable: Auto-set. (line 8116)
-* RLENGTH variable, match function and: String Functions. (line 9256)
-* Robbins, Arnold <1>: Future Extensions. (line 19333)
-* Robbins, Arnold <2>: Bugs. (line 18305)
-* Robbins, Arnold <3>: Contributors. (line 17101)
-* Robbins, Arnold <4>: Alarm Program. (line 15443)
-* Robbins, Arnold <5>: Passwd Functions. (line 13779)
-* Robbins, Arnold <6>: Getline/Pipe. (line 4073)
+ (line 6711)
+* right angle bracket (>), >> operator (I/O): Redirection. (line 4892)
+* right shift, bitwise: Bitwise Functions. (line 10340)
+* Ritchie, Dennis: Basic Data Typing. (line 19704)
+* RLENGTH variable: Auto-set. (line 8124)
+* RLENGTH variable, match function and: String Functions. (line 9273)
+* Robbins, Arnold <1>: Future Extensions. (line 19424)
+* Robbins, Arnold <2>: Bugs. (line 18337)
+* Robbins, Arnold <3>: Contributors. (line 17141)
+* Robbins, Arnold <4>: Alarm Program. (line 15477)
+* Robbins, Arnold <5>: Passwd Functions. (line 13813)
+* Robbins, Arnold <6>: Getline/Pipe. (line 4081)
* Robbins, Arnold: Command Line Field Separator.
- (line 3493)
-* Robbins, Bill: Getline/Pipe. (line 4073)
+ (line 3501)
+* Robbins, Bill: Getline/Pipe. (line 4081)
* Robbins, Harry: Acknowledgments. (line 1012)
* Robbins, Jean: Acknowledgments. (line 1012)
-* Robbins, Miriam <1>: Passwd Functions. (line 13779)
-* Robbins, Miriam <2>: Getline/Pipe. (line 4073)
+* Robbins, Miriam <1>: Passwd Functions. (line 13813)
+* Robbins, Miriam <2>: Getline/Pipe. (line 4081)
* Robbins, Miriam: Acknowledgments. (line 1012)
* Robinson, Will: Dynamic Extensions.
- (line 18729)
+ (line 18761)
* robot, the: Dynamic Extensions.
- (line 18729)
-* Rommel, Kai Uwe <1>: Contributors. (line 17052)
+ (line 18761)
+* Rommel, Kai Uwe <1>: Contributors. (line 17092)
* Rommel, Kai Uwe: Acknowledgments. (line 995)
-* round user-defined function: Round Function. (line 12876)
-* rounding: Round Function. (line 12866)
-* rounding numbers: Round Function. (line 12866)
-* RS variable <1>: User-modified. (line 7918)
+* round user-defined function: Round Function. (line 12910)
+* rounding: Round Function. (line 12900)
+* rounding numbers: Round Function. (line 12900)
+* RS variable <1>: User-modified. (line 7926)
* RS variable: Records. (line 2831)
-* RS variable, multiline records and: Multiple Line. (line 3708)
-* rshift function (gawk): Bitwise Functions. (line 10334)
-* RSTART variable: Auto-set. (line 8122)
-* RSTART variable, match function and: String Functions. (line 9256)
-* RT variable <1>: Auto-set. (line 8129)
-* RT variable <2>: Multiple Line. (line 3820)
+* RS variable, multiline records and: Multiple Line. (line 3716)
+* rshift function (gawk): Bitwise Functions. (line 10354)
+* RSTART variable: Auto-set. (line 8130)
+* RSTART variable, match function and: String Functions. (line 9273)
+* RT variable <1>: Auto-set. (line 8137)
+* RT variable <2>: Multiple Line. (line 3828)
* RT variable: Records. (line 2921)
-* Rubin, Paul <1>: Contributors. (line 17026)
+* Rubin, Paul <1>: Contributors. (line 17066)
* Rubin, Paul: History. (line 653)
* rule, definition of: Getting Started. (line 1047)
-* rvalues/lvalues: Assignment Ops. (line 6006)
-* scalar values: Basic Data Typing. (line 19562)
+* rvalues/lvalues: Assignment Ops. (line 6014)
+* scalar values: Basic Data Typing. (line 19646)
* Schreiber, Bert: Acknowledgments. (line 977)
* Schreiber, Rita: Acknowledgments. (line 977)
-* search paths <1>: VMS Running. (line 18070)
-* search paths: PC Using. (line 17826)
-* search paths, for source files <1>: VMS Running. (line 18070)
-* search paths, for source files <2>: Igawk Program. (line 16567)
-* search paths, for source files: AWKPATH Variable. (line 12327)
-* searching: String Functions. (line 9210)
-* searching, files for regular expressions: Egrep Program. (line 14491)
-* searching, for words: Dupword Program. (line 15395)
-* sed utility <1>: Glossary. (line 19753)
-* sed utility <2>: Simple Sed. (line 16136)
+* search paths <1>: VMS Running. (line 18102)
+* search paths: PC Using. (line 17858)
+* search paths, for source files <1>: VMS Running. (line 18102)
+* search paths, for source files <2>: Igawk Program. (line 16601)
+* search paths, for source files: AWKPATH Variable. (line 12361)
+* searching: String Functions. (line 9218)
+* searching, files for regular expressions: Egrep Program. (line 14525)
+* searching, for words: Dupword Program. (line 15429)
+* sed utility <1>: Glossary. (line 19837)
+* sed utility <2>: Simple Sed. (line 16170)
* sed utility: Field Splitting Summary.
- (line 3547)
+ (line 3555)
* semicolon (;): Statements/Lines. (line 1853)
-* semicolon (;), AWKPATH variable and: PC Using. (line 17826)
+* semicolon (;), AWKPATH variable and: PC Using. (line 17858)
* semicolon (;), separating statements in actions <1>: Statements.
- (line 7220)
+ (line 7228)
* semicolon (;), separating statements in actions: Action Overview.
- (line 7170)
-* separators, field: User-modified. (line 7842)
+ (line 7178)
+* separators, field: User-modified. (line 7850)
* separators, field, FIELDWIDTHS variable and: User-modified.
- (line 7832)
-* separators, field, POSIX and: Fields. (line 3006)
+ (line 7840)
+* separators, field, POSIX and: Fields. (line 3014)
* separators, for records: Records. (line 2825)
* separators, for records, regular expressions as: Records. (line 2921)
-* separators, for statements in actions: Action Overview. (line 7170)
-* separators, record: User-modified. (line 7918)
-* separators, subscript: User-modified. (line 7931)
-* set_value internal function: Internals. (line 18895)
-* shells, piping commands into: Redirection. (line 4973)
+* separators, for statements in actions: Action Overview. (line 7178)
+* separators, record: User-modified. (line 7926)
+* separators, subscript: User-modified. (line 7939)
+* set_value internal function: Internals. (line 18932)
+* shells, piping commands into: Redirection. (line 4981)
* shells, quoting: Using Shell Variables.
- (line 7112)
+ (line 7120)
* shells, quoting, rules for: Quoting. (line 1357)
* shells, scripts: One-shot. (line 1133)
* shells, variables: Using Shell Variables.
- (line 7106)
-* shift, bitwise: Bitwise Functions. (line 10320)
-* short-circuit operators: Boolean Ops. (line 6506)
-* side effects <1>: Increment Ops. (line 6157)
-* side effects: Concatenation. (line 5935)
+ (line 7114)
+* shift, bitwise: Bitwise Functions. (line 10340)
+* short-circuit operators: Boolean Ops. (line 6514)
+* side effects <1>: Increment Ops. (line 6165)
+* side effects: Concatenation. (line 5943)
* side effects, array indexing: Reference to Elements.
- (line 8429)
-* side effects, asort function: Array Sorting. (line 8886)
-* side effects, assignment expressions: Assignment Ops. (line 5997)
-* side effects, Boolean operators: Boolean Ops. (line 6479)
-* side effects, conditional expressions: Conditional Exp. (line 6561)
+ (line 8437)
+* side effects, asort function: Array Sorting. (line 8894)
+* side effects, assignment expressions: Assignment Ops. (line 6005)
+* side effects, Boolean operators: Boolean Ops. (line 6487)
+* side effects, conditional expressions: Conditional Exp. (line 6569)
* side effects, decrement/increment operators: Increment Ops.
- (line 6157)
-* side effects, FILENAME variable: Getline Notes. (line 4190)
-* side effects, function calls: Function Calls. (line 6627)
-* side effects, statements: Action Overview. (line 7183)
-* signals, HUP/SIGHUP: Profiling. (line 11928)
-* signals, INT/SIGINT (MS-DOS): Profiling. (line 11931)
-* signals, QUIT/SIGQUIT (MS-DOS): Profiling. (line 11931)
-* signals, USR1/SIGUSR1: Profiling. (line 11906)
-* sin function: Numeric Functions. (line 9068)
+ (line 6165)
+* side effects, FILENAME variable: Getline Notes. (line 4198)
+* side effects, function calls: Function Calls. (line 6635)
+* side effects, statements: Action Overview. (line 7191)
+* signals, HUP/SIGHUP: Profiling. (line 11943)
+* signals, INT/SIGINT (MS-DOS): Profiling. (line 11946)
+* signals, QUIT/SIGQUIT (MS-DOS): Profiling. (line 11946)
+* signals, USR1/SIGUSR1: Profiling. (line 11921)
+* sin function: Numeric Functions. (line 9076)
* single quote (') <1>: Quoting. (line 1370)
* single quote (') <2>: Long. (line 1223)
* single quote ('): One-shot. (line 1126)
* single quote ('), vs. apostrophe: Comments. (line 1317)
* single quote ('), with double quotes: Quoting. (line 1392)
* single-character fields: Single Character Fields.
- (line 3393)
-* single-precision floating-point: Basic Data Typing. (line 19582)
-* Skywalker, Luke: Undocumented. (line 12409)
-* sleep utility: Alarm Program. (line 15538)
-* sockets: TCP/IP Networking. (line 11667)
-* sort function, arrays, sorting: Array Sorting. (line 8867)
-* sort utility: Word Sorting. (line 15842)
-* sort utility, coprocesses and: Two-way I/O. (line 11585)
+ (line 3401)
+* single-precision floating-point: Basic Data Typing. (line 19666)
+* Skywalker, Luke: Undocumented. (line 12443)
+* sleep utility: Alarm Program. (line 15572)
+* sockets: TCP/IP Networking. (line 11682)
+* sort function, arrays, sorting: Array Sorting. (line 8875)
+* sort utility: Word Sorting. (line 15876)
+* sort utility, coprocesses and: Two-way I/O. (line 11600)
* sorting characters in different languages: Explaining gettext.
- (line 10984)
-* source code, awka: Other Versions. (line 18421)
-* source code, Bell Laboratories awk: Other Versions. (line 18358)
-* source code, gawk: Gawk Distribution. (line 17134)
-* source code, mawk: Other Versions. (line 18378)
-* source code, mixing: Options. (line 12193)
-* source files, search path for: Igawk Program. (line 16567)
-* sparse arrays: Array Intro. (line 8369)
-* Spencer, Henry: Glossary. (line 19753)
-* split function: String Functions. (line 9327)
-* split function, array elements, deleting: Delete. (line 8627)
-* split utility: Split Program. (line 14828)
-* split.awk program: Split Program. (line 14852)
-* sprintf function <1>: String Functions. (line 9380)
-* sprintf function: OFMT. (line 4435)
-* sprintf function, OFMT variable and: User-modified. (line 7908)
+ (line 11004)
+* source code, awka: Other Versions. (line 18453)
+* source code, Bell Laboratories awk: Other Versions. (line 18390)
+* source code, gawk: Gawk Distribution. (line 17174)
+* source code, mawk: Other Versions. (line 18410)
+* source code, mixing: Options. (line 12227)
+* source files, search path for: Igawk Program. (line 16601)
+* sparse arrays: Array Intro. (line 8377)
+* Spencer, Henry: Glossary. (line 19837)
+* split function: String Functions. (line 9344)
+* split function, array elements, deleting: Delete. (line 8635)
+* split utility: Split Program. (line 14862)
+* split.awk program: Split Program. (line 14886)
+* sprintf function <1>: String Functions. (line 9397)
+* sprintf function: OFMT. (line 4443)
+* sprintf function, OFMT variable and: User-modified. (line 7916)
* sprintf function, print/printf statements and: Round Function.
- (line 12866)
-* sqrt function: Numeric Functions. (line 9055)
+ (line 12900)
+* sqrt function: Numeric Functions. (line 9063)
* square brackets ([]): Regexp Operators. (line 2230)
-* srand function: Numeric Functions. (line 9117)
-* Stallman, Richard <1>: Glossary. (line 20025)
-* Stallman, Richard <2>: Contributors. (line 17034)
+* srand function: Numeric Functions. (line 9125)
+* Stallman, Richard <1>: Glossary. (line 20109)
+* Stallman, Richard <2>: Contributors. (line 17074)
* Stallman, Richard <3>: Acknowledgments. (line 960)
* Stallman, Richard: Manual History. (line 865)
-* standard input <1>: Special FD. (line 5011)
+* standard input <1>: Special FD. (line 5019)
* standard input: Read Terminal. (line 1146)
-* standard output: Special FD. (line 5011)
-* stat function, implementing in gawk: Sample Library. (line 18963)
-* statements, compound, control statements and: Statements. (line 7220)
-* statements, control, in actions: Statements. (line 7216)
+* standard output: Special FD. (line 5019)
+* stat function, implementing in gawk: Sample Library. (line 19054)
+* statements, compound, control statements and: Statements. (line 7228)
+* statements, control, in actions: Statements. (line 7224)
* statements, multiple: Statements/Lines. (line 1853)
-* stlen internal variable: Internals. (line 18799)
-* stptr internal variable: Internals. (line 18799)
-* stream editors <1>: Simple Sed. (line 16136)
+* stlen internal variable: Internals. (line 18836)
+* stptr internal variable: Internals. (line 18836)
+* stream editors <1>: Simple Sed. (line 16170)
* stream editors: Field Splitting Summary.
- (line 3547)
-* strftime function (gawk): Time Functions. (line 10014)
-* string constants: Scalar Constants. (line 5426)
+ (line 3555)
+* strftime function (gawk): Time Functions. (line 10034)
+* string constants: Scalar Constants. (line 5434)
* string constants, vs. regexp constants: Computed Regexps. (line 2687)
* string extraction (internationalization): String Extraction.
- (line 11157)
-* string operators: Concatenation. (line 5903)
+ (line 11177)
+* string operators: Concatenation. (line 5911)
* string-matching operators: Regexp Usage. (line 1989)
-* strings: Internals. (line 18826)
-* strings, converting: Conversion. (line 5711)
-* strings, converting, numbers to <1>: Bitwise Functions. (line 10387)
-* strings, converting, numbers to: User-modified. (line 7825)
+* strings: Internals. (line 18863)
+* strings, converting: Conversion. (line 5719)
+* strings, converting, numbers to <1>: Bitwise Functions. (line 10407)
+* strings, converting, numbers to: User-modified. (line 7833)
* strings, empty, See null strings: Records. (line 2912)
-* strings, extracting: String Extraction. (line 11157)
-* strings, for localization: Programmer i18n. (line 11039)
-* strings, length of: Scalar Constants. (line 5431)
-* strings, merging arrays into: Join Function. (line 13033)
-* strings, NODE internal type: Internals. (line 18772)
+* strings, extracting: String Extraction. (line 11177)
+* strings, for localization: Programmer i18n. (line 11059)
+* strings, length of: Scalar Constants. (line 5439)
+* strings, merging arrays into: Join Function. (line 13067)
+* strings, NODE internal type: Internals. (line 18809)
* strings, null: Regexp Field Splitting.
- (line 3371)
+ (line 3379)
* strings, numeric: Typing and Comparison.
- (line 6273)
-* strings, splitting: String Functions. (line 9341)
-* strtonum function (gawk): String Functions. (line 9388)
+ (line 6281)
+* strings, splitting: String Functions. (line 9358)
+* strtonum function (gawk): String Functions. (line 9405)
* strtonum function (gawk), --non-decimal-data option and: Nondecimal Data.
- (line 11495)
-* sub function <1>: String Functions. (line 9406)
+ (line 11510)
+* sub function <1>: String Functions. (line 9426)
* sub function: Using Constant Regexps.
- (line 5574)
-* sub function, arguments of: String Functions. (line 9463)
-* sub function, escape processing: Gory Details. (line 9622)
-* subscript separators: User-modified. (line 7931)
+ (line 5582)
+* sub function, arguments of: String Functions. (line 9483)
+* sub function, escape processing: Gory Details. (line 9642)
+* subscript separators: User-modified. (line 7939)
* subscripts in arrays, multidimensional: Multi-dimensional.
- (line 8746)
+ (line 8754)
* subscripts in arrays, multidimensional, scanning: Multi-scanning.
- (line 8832)
+ (line 8840)
* subscripts in arrays, numbers as: Numeric Array Subscripts.
- (line 8648)
+ (line 8656)
* subscripts in arrays, uninitialized variables as: Uninitialized Subscripts.
- (line 8699)
-* SUBSEP variable: User-modified. (line 7931)
+ (line 8707)
+* SUBSEP variable: User-modified. (line 7939)
* SUBSEP variable, multidimensional arrays: Multi-dimensional.
- (line 8752)
-* substr function: String Functions. (line 9550)
-* Sumner, Andrew: Other Versions. (line 18421)
-* switch statement: Switch Statement. (line 7456)
+ (line 8760)
+* substr function: String Functions. (line 9570)
+* Sumner, Andrew: Other Versions. (line 18453)
+* switch statement: Switch Statement. (line 7464)
* syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops.
- (line 6129)
-* system function: I/O Functions. (line 9852)
-* systime function (gawk): Time Functions. (line 9985)
+ (line 6137)
+* system function: I/O Functions. (line 9872)
+* systime function (gawk): Time Functions. (line 10005)
* tandem: Tandem Installation.
- (line 18246)
-* Tcl: Library Names. (line 12558)
-* TCP/IP: TCP/IP Networking. (line 11643)
-* TCP/IP, support for: Special Network. (line 5137)
-* tee utility: Tee Program. (line 14930)
-* tee.awk program: Tee Program. (line 14950)
+ (line 18278)
+* Tcl: Library Names. (line 12592)
+* TCP/IP: TCP/IP Networking. (line 11658)
+* TCP/IP, support for: Special Network. (line 5145)
+* tee utility: Tee Program. (line 14964)
+* tee.awk program: Tee Program. (line 14984)
* terminating records: Records. (line 2921)
-* testbits.awk program: Bitwise Functions. (line 10348)
-* Texinfo <1>: Adding Code. (line 18608)
+* testbits.awk program: Bitwise Functions. (line 10368)
+* Texinfo <1>: Adding Code. (line 18640)
* Texinfo <2>: Distribution contents.
- (line 17275)
-* Texinfo <3>: Extract Program. (line 15951)
-* Texinfo <4>: Dupword Program. (line 15406)
-* Texinfo <5>: Library Functions. (line 12451)
+ (line 17315)
+* Texinfo <3>: Extract Program. (line 15985)
+* Texinfo <4>: Dupword Program. (line 15440)
+* Texinfo <5>: Library Functions. (line 12485)
* Texinfo <6>: Sample Data Files. (line 1521)
* Texinfo: Conventions. (line 819)
* Texinfo, chapter beginnings in files: Regexp Operators. (line 2197)
* Texinfo, extracting programs from source files: Extract Program.
- (line 15945)
-* text, printing: Print. (line 4292)
-* text, printing, unduplicated lines of: Uniq Program. (line 15014)
+ (line 15979)
+* text, printing: Print. (line 4300)
+* text, printing, unduplicated lines of: Uniq Program. (line 15048)
* textdomain function (C library): Explaining gettext.
- (line 10922)
-* TEXTDOMAIN variable <1>: Programmer i18n. (line 11034)
-* TEXTDOMAIN variable: User-modified. (line 7937)
-* TEXTDOMAIN variable, BEGIN pattern and: Programmer i18n. (line 11083)
-* TEXTDOMAIN variable, portability and: I18N Portability. (line 11274)
+ (line 10942)
+* TEXTDOMAIN variable <1>: Programmer i18n. (line 11054)
+* TEXTDOMAIN variable: User-modified. (line 7945)
+* TEXTDOMAIN variable, BEGIN pattern and: Programmer i18n. (line 11103)
+* TEXTDOMAIN variable, portability and: I18N Portability. (line 11294)
* tilde (~), ~ operator <1>: Expression Patterns.
- (line 6843)
-* tilde (~), ~ operator <2>: Precedence. (line 6719)
+ (line 6851)
+* tilde (~), ~ operator <2>: Precedence. (line 6727)
* tilde (~), ~ operator <3>: Typing and Comparison.
- (line 6334)
-* tilde (~), ~ operator <4>: Regexp Constants. (line 5524)
+ (line 6342)
+* tilde (~), ~ operator <4>: Regexp Constants. (line 5532)
* tilde (~), ~ operator <5>: Computed Regexps. (line 2656)
* tilde (~), ~ operator <6>: Case-sensitivity. (line 2569)
* tilde (~), ~ operator: Regexp Usage. (line 1989)
-* time, alarm clock example program: Alarm Program. (line 15446)
+* time, alarm clock example program: Alarm Program. (line 15480)
* time, localization and: Explaining gettext.
- (line 11006)
+ (line 11026)
* time, managing: Gettimeofday Function.
- (line 13078)
-* time, retrieving: Time Functions. (line 9978)
-* timestamps: Time Functions. (line 9967)
-* timestamps, converting dates to: Time Functions. (line 10030)
+ (line 13112)
+* time, retrieving: Time Functions. (line 9998)
+* timestamps: Time Functions. (line 9987)
+* timestamps, converting dates to: Time Functions. (line 10050)
* timestamps, formatted: Gettimeofday Function.
- (line 13078)
-* tmp_number internal function: Internals. (line 18841)
-* tmp_string internal function: Internals. (line 18836)
-* tolower function: String Functions. (line 9592)
-* toupper function: String Functions. (line 9598)
-* tr utility: Translate Program. (line 15567)
-* translate.awk program: Translate Program. (line 15615)
-* troubleshooting, --non-decimal-data option: Options. (line 12136)
-* troubleshooting, -F option: Known Bugs. (line 12420)
+ (line 13112)
+* tmp_number internal function: Internals. (line 18878)
+* tmp_string internal function: Internals. (line 18873)
+* tolower function: String Functions. (line 9612)
+* toupper function: String Functions. (line 9618)
+* tr utility: Translate Program. (line 15601)
+* translate.awk program: Translate Program. (line 15649)
+* troubleshooting, --non-decimal-data option: Options. (line 12170)
+* troubleshooting, -F option: Known Bugs. (line 12454)
* troubleshooting, == operator: Typing and Comparison.
- (line 6369)
-* troubleshooting, awk uses FS not IFS: Field Separators. (line 3277)
+ (line 6377)
+* troubleshooting, awk uses FS not IFS: Field Separators. (line 3285)
* troubleshooting, backslash before nonspecial character: Escape Sequences.
(line 2145)
-* troubleshooting, division: Arithmetic Ops. (line 5853)
+* troubleshooting, division: Arithmetic Ops. (line 5861)
* troubleshooting, fatal errors, field widths, specifying: Constant Size.
- (line 3610)
+ (line 3618)
* troubleshooting, fatal errors, printf format strings: Format Modifiers.
- (line 4759)
-* troubleshooting, fflush function: I/O Functions. (line 9840)
-* troubleshooting, function call syntax: Function Calls. (line 6607)
+ (line 4767)
+* troubleshooting, fflush function: I/O Functions. (line 9860)
+* troubleshooting, function call syntax: Function Calls. (line 6615)
* troubleshooting, gawk <1>: Compatibility Mode.
- (line 18471)
-* troubleshooting, gawk: Known Bugs. (line 12420)
-* troubleshooting, gawk, bug reports: Bugs. (line 18285)
+ (line 18503)
+* troubleshooting, gawk: Known Bugs. (line 12454)
+* troubleshooting, gawk, bug reports: Bugs. (line 18317)
* troubleshooting, gawk, fatal errors, function arguments: Calling Built-in.
- (line 9009)
-* troubleshooting, getline function: File Checking. (line 13318)
-* troubleshooting, gsub/sub functions: String Functions. (line 9473)
-* troubleshooting, match function: String Functions. (line 9322)
+ (line 9017)
+* troubleshooting, getline function: File Checking. (line 13352)
+* troubleshooting, gsub/sub functions: String Functions. (line 9493)
+* troubleshooting, match function: String Functions. (line 9339)
* troubleshooting, print statement, omitting commas: Print Examples.
- (line 4330)
-* troubleshooting, printing: Redirection. (line 4951)
-* troubleshooting, quotes with file names: Special FD. (line 5068)
-* troubleshooting, readable data files: File Checking. (line 13300)
+ (line 4338)
+* troubleshooting, printing: Redirection. (line 4959)
+* troubleshooting, quotes with file names: Special FD. (line 5076)
+* troubleshooting, readable data files: File Checking. (line 13334)
* troubleshooting, regexp constants vs. string constants: Computed Regexps.
(line 2687)
-* troubleshooting, string concatenation: Concatenation. (line 5921)
-* troubleshooting, substr function: String Functions. (line 9568)
-* troubleshooting, system function: I/O Functions. (line 9876)
+* troubleshooting, string concatenation: Concatenation. (line 5929)
+* troubleshooting, substr function: String Functions. (line 9588)
+* troubleshooting, system function: I/O Functions. (line 9896)
* troubleshooting, typographical errors, global variables: Options.
- (line 12092)
-* true, logical: Truth Values. (line 6238)
-* Trueman, David <1>: Contributors. (line 17041)
+ (line 12107)
+* true, logical: Truth Values. (line 6246)
+* Trueman, David <1>: Contributors. (line 17081)
* Trueman, David <2>: Acknowledgments. (line 986)
* Trueman, David: History. (line 653)
-* trunc-mod operation: Arithmetic Ops. (line 5875)
-* truth values: Truth Values. (line 6238)
-* type conversion: Conversion. (line 5726)
-* type internal variable: Internals. (line 18807)
-* undefined functions: Function Caveats. (line 10720)
+* trunc-mod operation: Arithmetic Ops. (line 5883)
+* truth values: Truth Values. (line 6246)
+* type conversion: Conversion. (line 5734)
+* type internal variable: Internals. (line 18844)
+* undefined functions: Function Caveats. (line 10740)
* underscore (_), _ C macro: Explaining gettext.
- (line 10963)
+ (line 10983)
* underscore (_), in names of private variables: Library Names.
- (line 12530)
-* underscore (_), translatable string: Programmer i18n. (line 11092)
-* undocumented features: Undocumented. (line 12409)
+ (line 12564)
+* underscore (_), translatable string: Programmer i18n. (line 11112)
+* undocumented features: Undocumented. (line 12443)
* uninitialized variables, as array subscripts: Uninitialized Subscripts.
- (line 8699)
-* uniq utility: Uniq Program. (line 15014)
-* uniq.awk program: Uniq Program. (line 15073)
-* Unix: Glossary. (line 20320)
+ (line 8707)
+* uniq utility: Uniq Program. (line 15048)
+* uniq.awk program: Uniq Program. (line 15107)
+* Unix: Glossary. (line 20404)
* Unix awk, backslashes in escape sequences: Escape Sequences.
(line 2157)
* Unix awk, close function and: Close Files And Pipes.
- (line 5315)
+ (line 5323)
* Unix awk, password files, field separators and: Command Line Field Separator.
- (line 3485)
+ (line 3493)
* Unix, awk scripts and: Executable Scripts.
(line 1233)
-* unsigned integers: Basic Data Typing. (line 19577)
-* update_ERRNO internal function: Internals. (line 18901)
-* user database, reading: Passwd Functions. (line 13709)
-* user-defined, functions: User-defined. (line 10452)
-* user-defined, functions, counts: Profiling. (line 11853)
-* user-defined, variables: Variables. (line 5613)
-* user-modifiable variables: User-modified. (line 7805)
-* users, information about, printing: Id Program. (line 14721)
-* users, information about, retrieving: Passwd Functions. (line 13719)
-* USR1 signal: Profiling. (line 11906)
-* values, numeric: Basic Data Typing. (line 19562)
-* values, string: Basic Data Typing. (line 19562)
+* unsigned integers: Basic Data Typing. (line 19661)
+* update_ERRNO internal function: Internals. (line 18938)
+* update_ERRNO_saved internal function: Internals. (line 18943)
+* user database, reading: Passwd Functions. (line 13743)
+* user-defined, functions: User-defined. (line 10472)
+* user-defined, functions, counts: Profiling. (line 11868)
+* user-defined, variables: Variables. (line 5621)
+* user-modifiable variables: User-modified. (line 7813)
+* users, information about, printing: Id Program. (line 14755)
+* users, information about, retrieving: Passwd Functions. (line 13753)
+* USR1 signal: Profiling. (line 11921)
+* values, numeric: Basic Data Typing. (line 19646)
+* values, string: Basic Data Typing. (line 19646)
* variable typing: Typing and Comparison.
- (line 6269)
-* variables <1>: Basic Data Typing. (line 19555)
+ (line 6277)
+* variables <1>: Basic Data Typing. (line 19639)
* variables: Other Features. (line 1879)
* variables, assigning on command line: Assignment Options.
- (line 5663)
+ (line 5671)
* variables, built-in <1>: Built-in Variables.
- (line 7779)
-* variables, built-in: Using Variables. (line 5642)
-* variables, built-in, -v option, setting with: Options. (line 12029)
-* variables, built-in, conveying information: Auto-set. (line 7959)
-* variables, flag: Boolean Ops. (line 6516)
+ (line 7787)
+* variables, built-in: Using Variables. (line 5650)
+* variables, built-in, -v option, setting with: Options. (line 12044)
+* variables, built-in, conveying information: Auto-set. (line 7967)
+* variables, flag: Boolean Ops. (line 6524)
* variables, getline command into, using <1>: Getline/Variable/Coprocess.
- (line 4159)
+ (line 4167)
* variables, getline command into, using <2>: Getline/Variable/Pipe.
- (line 4102)
+ (line 4110)
* variables, getline command into, using <3>: Getline/Variable/File.
- (line 4004)
-* variables, getline command into, using: Getline/Variable. (line 3930)
-* variables, global, for library functions: Library Names. (line 12512)
-* variables, global, printing list of: Options. (line 12086)
-* variables, initializing: Using Variables. (line 5642)
-* variables, names of: Arrays. (line 8279)
-* variables, private: Library Names. (line 12512)
-* variables, setting: Options. (line 12021)
-* variables, shadowing: Definition Syntax. (line 10522)
-* variables, types of: Assignment Ops. (line 6014)
+ (line 4012)
+* variables, getline command into, using: Getline/Variable. (line 3938)
+* variables, global, for library functions: Library Names. (line 12546)
+* variables, global, printing list of: Options. (line 12101)
+* variables, initializing: Using Variables. (line 5650)
+* variables, names of: Arrays. (line 8287)
+* variables, private: Library Names. (line 12546)
+* variables, setting: Options. (line 12036)
+* variables, shadowing: Definition Syntax. (line 10542)
+* variables, types of: Assignment Ops. (line 6022)
* variables, types of, comparison expressions and: Typing and Comparison.
- (line 6269)
+ (line 6277)
* variables, uninitialized, as array subscripts: Uninitialized Subscripts.
- (line 8699)
-* variables, user-defined: Variables. (line 5613)
+ (line 8707)
+* variables, user-defined: Variables. (line 5621)
* vertical bar (|): Regexp Operators. (line 2243)
-* vertical bar (|), | operator (I/O) <1>: Precedence. (line 6703)
-* vertical bar (|), | operator (I/O): Getline/Pipe. (line 4043)
-* vertical bar (|), |& I/O operator (I/O): Two-way I/O. (line 11545)
-* vertical bar (|), |& operator (I/O) <1>: Precedence. (line 6703)
-* vertical bar (|), |& operator (I/O): Getline/Coprocess. (line 4129)
+* vertical bar (|), | operator (I/O) <1>: Precedence. (line 6711)
+* vertical bar (|), | operator (I/O): Getline/Pipe. (line 4051)
+* vertical bar (|), |& I/O operator (I/O): Two-way I/O. (line 11560)
+* vertical bar (|), |& operator (I/O) <1>: Precedence. (line 6711)
+* vertical bar (|), |& operator (I/O): Getline/Coprocess. (line 4137)
* vertical bar (|), |& operator (I/O), two-way communications: Portal Files.
- (line 11714)
-* vertical bar (|), || operator <1>: Precedence. (line 6728)
-* vertical bar (|), || operator: Boolean Ops. (line 6506)
-* vname internal variable: Internals. (line 18811)
-* w utility: Constant Size. (line 3610)
-* Wall, Larry: Future Extensions. (line 19333)
-* warnings, issuing: Options. (line 12116)
-* wc utility: Wc Program. (line 15230)
-* wc.awk program: Wc Program. (line 15269)
-* Weinberger, Peter <1>: Contributors. (line 17022)
+ (line 11729)
+* vertical bar (|), || operator <1>: Precedence. (line 6736)
+* vertical bar (|), || operator: Boolean Ops. (line 6514)
+* vname internal variable: Internals. (line 18848)
+* w utility: Constant Size. (line 3618)
+* Wall, Larry: Future Extensions. (line 19424)
+* warnings, issuing: Options. (line 12150)
+* wc utility: Wc Program. (line 15264)
+* wc.awk program: Wc Program. (line 15303)
+* Weinberger, Peter <1>: Contributors. (line 17062)
* Weinberger, Peter: History. (line 640)
-* while statement <1>: While Statement. (line 7291)
+* while statement <1>: While Statement. (line 7299)
* while statement: Regexp Usage. (line 1989)
-* whitespace, as field separators: Field Separators. (line 3312)
-* whitespace, functions, calling: Calling Built-in. (line 9003)
-* whitespace, newlines as: Options. (line 12148)
-* Williams, Kent: Contributors. (line 17047)
-* Woods, John: Contributors. (line 17038)
+* whitespace, as field separators: Field Separators. (line 3320)
+* whitespace, functions, calling: Calling Built-in. (line 9011)
+* whitespace, newlines as: Options. (line 12182)
+* Williams, Kent: Contributors. (line 17087)
+* Woods, John: Contributors. (line 17078)
* word boundaries, matching: GNU Regexp Operators.
(line 2485)
* word, regexp definition of: GNU Regexp Operators.
(line 2461)
* word-boundary operator (gawk): GNU Regexp Operators.
(line 2510)
-* wordfreq.awk program: Word Sorting. (line 15848)
-* words, counting: Wc Program. (line 15230)
-* words, duplicate, searching for: Dupword Program. (line 15395)
-* words, usage counts, generating: Word Sorting. (line 15794)
-* xgettext utility: String Extraction. (line 11164)
-* XOR bitwise operation: Bitwise Functions. (line 10294)
-* xor function (gawk): Bitwise Functions. (line 10329)
+* wordfreq.awk program: Word Sorting. (line 15882)
+* words, counting: Wc Program. (line 15264)
+* words, duplicate, searching for: Dupword Program. (line 15429)
+* words, usage counts, generating: Word Sorting. (line 15828)
+* xgettext utility: String Extraction. (line 11184)
+* XML: Internals. (line 18964)
+* XOR bitwise operation: Bitwise Functions. (line 10314)
+* xor function (gawk): Bitwise Functions. (line 10349)
* Zaretskii, Eli: Acknowledgments. (line 995)
* zero, negative vs. positive: Floating Point Issues.
- (line 19714)
-* zerofile.awk program: Empty Files. (line 13343)
-* Zoulas, Christos: Contributors. (line 17071)
-* {} (braces), actions and: Action Overview. (line 7170)
-* {} (braces), pgawk program: Profiling. (line 11858)
-* {} (braces), statements, grouping: Statements. (line 7220)
+ (line 19798)
+* zerofile.awk program: Empty Files. (line 13377)
+* Zoulas, Christos: Contributors. (line 17111)
+* {} (braces), actions and: Action Overview. (line 7178)
+* {} (braces), pgawk program: Profiling. (line 11873)
+* {} (braces), statements, grouping: Statements. (line 7228)
* | (vertical bar): Regexp Operators. (line 2243)
-* | (vertical bar), | operator (I/O) <1>: Precedence. (line 6703)
-* | (vertical bar), | operator (I/O) <2>: Redirection. (line 4891)
-* | (vertical bar), | operator (I/O): Getline/Pipe. (line 4043)
-* | (vertical bar), |& operator (I/O) <1>: Two-way I/O. (line 11545)
-* | (vertical bar), |& operator (I/O) <2>: Precedence. (line 6703)
-* | (vertical bar), |& operator (I/O) <3>: Redirection. (line 4936)
-* | (vertical bar), |& operator (I/O): Getline/Coprocess. (line 4129)
+* | (vertical bar), | operator (I/O) <1>: Precedence. (line 6711)
+* | (vertical bar), | operator (I/O) <2>: Redirection. (line 4899)
+* | (vertical bar), | operator (I/O): Getline/Pipe. (line 4051)
+* | (vertical bar), |& operator (I/O) <1>: Two-way I/O. (line 11560)
+* | (vertical bar), |& operator (I/O) <2>: Precedence. (line 6711)
+* | (vertical bar), |& operator (I/O) <3>: Redirection. (line 4944)
+* | (vertical bar), |& operator (I/O): Getline/Coprocess. (line 4137)
* | (vertical bar), |& operator (I/O), pipes, closing: Close Files And Pipes.
- (line 5302)
+ (line 5310)
* | (vertical bar), |& operator (I/O), two-way communications: Portal Files.
- (line 11714)
-* | (vertical bar), || operator <1>: Precedence. (line 6728)
-* | (vertical bar), || operator: Boolean Ops. (line 6506)
+ (line 11729)
+* | (vertical bar), || operator <1>: Precedence. (line 6736)
+* | (vertical bar), || operator: Boolean Ops. (line 6514)
* ~ (tilde), ~ operator <1>: Expression Patterns.
- (line 6843)
-* ~ (tilde), ~ operator <2>: Precedence. (line 6719)
+ (line 6851)
+* ~ (tilde), ~ operator <2>: Precedence. (line 6727)
* ~ (tilde), ~ operator <3>: Typing and Comparison.
- (line 6334)
-* ~ (tilde), ~ operator <4>: Regexp Constants. (line 5524)
+ (line 6342)
+* ~ (tilde), ~ operator <4>: Regexp Constants. (line 5532)
* ~ (tilde), ~ operator <5>: Computed Regexps. (line 2656)
* ~ (tilde), ~ operator: Case-sensitivity. (line 2569)

Tag Table:
-Node: Top1314
-Node: Foreword26871
-Node: Preface31192
-Ref: Preface-Footnote-134053
-Node: History34282
-Node: Names36485
-Ref: Names-Footnote-137945
-Node: This Manual38014
-Ref: This Manual-Footnote-142699
-Node: Conventions42796
-Node: Manual History44658
-Ref: Manual History-Footnote-148078
-Ref: Manual History-Footnote-248116
-Node: How To Contribute48187
-Node: Acknowledgments48785
-Node: Getting Started52552
-Node: Running gawk54916
-Node: One-shot56096
-Node: Read Terminal57312
-Ref: Read Terminal-Footnote-158958
-Node: Long59126
-Node: Executable Scripts60496
-Ref: Executable Scripts-Footnote-162380
-Ref: Executable Scripts-Footnote-262528
-Node: Comments62976
-Node: Quoting65329
-Node: Sample Data Files69809
-Node: Very Simple72829
-Node: Two Rules77419
-Node: More Complex79557
-Ref: More Complex-Footnote-182461
-Ref: More Complex-Footnote-282906
-Node: Statements/Lines82986
-Ref: Statements/Lines-Footnote-187344
-Node: Other Features87606
-Node: When88452
-Ref: When-Footnote-190678
-Node: Regexp90756
-Node: Regexp Usage92207
-Node: Escape Sequences94244
-Node: Regexp Operators99960
-Ref: Regexp Operators-Footnote-1107049
-Ref: Regexp Operators-Footnote-2107193
-Node: Character Lists107288
-Ref: table-char-classes109232
-Node: GNU Regexp Operators112756
-Node: Case-sensitivity116327
-Ref: Case-sensitivity-Footnote-1119477
-Node: Leftmost Longest119709
-Node: Computed Regexps120891
-Node: Locales124254
-Node: Reading Files126274
-Node: Records128025
-Ref: Records-Footnote-1136064
-Node: Fields136098
-Ref: Fields-Footnote-1139110
-Node: Nonconstant Fields139193
-Node: Changing Fields141385
-Node: Field Separators146631
-Node: Regexp Field Splitting150100
-Node: Single Character Fields152556
-Node: Command Line Field Separator153605
-Node: Field Splitting Summary157022
-Ref: Field Splitting Summary-Footnote-1160200
-Node: Constant Size160298
-Node: Multiple Line164754
-Ref: Multiple Line-Footnote-1170417
-Node: Getline170593
-Node: Plain Getline172652
-Node: Getline/Variable174694
-Node: Getline/File175832
-Node: Getline/Variable/File177150
-Node: Getline/Pipe178697
-Node: Getline/Variable/Pipe180753
-Node: Getline/Coprocess181854
-Node: Getline/Variable/Coprocess183085
-Node: Getline Notes183793
-Node: Getline Summary185436
-Ref: table-getline-variants185720
-Node: Printing186885
-Node: Print188514
-Node: Print Examples189834
-Node: Output Separators192614
-Node: OFMT194366
-Node: Printf195718
-Node: Basic Printf196637
-Node: Control Letters198164
-Node: Format Modifiers201384
-Node: Printf Examples207419
-Node: Redirection210118
-Node: Special Files216680
-Node: Special FD217314
-Node: Special Process220328
-Node: Special Network222560
-Node: Special Caveats223399
-Ref: Special Caveats-Footnote-1224594
-Node: Close Files And Pipes224974
-Ref: Close Files And Pipes-Footnote-1231835
-Ref: Close Files And Pipes-Footnote-2231980
-Node: Expressions232125
-Node: Constants234311
-Node: Scalar Constants234989
-Ref: Scalar Constants-Footnote-1235838
-Node: Nondecimal-numbers236017
-Node: Regexp Constants239059
-Node: Using Constant Regexps239532
-Node: Variables242609
-Node: Using Variables243265
-Node: Assignment Options244766
-Node: Conversion246640
-Ref: Conversion-Footnote-1251389
-Node: Arithmetic Ops251495
-Node: Concatenation253990
-Node: Assignment Ops256674
-Ref: table-assign-ops261623
-Node: Increment Ops263527
-Node: Truth Values267002
-Node: Typing and Comparison268049
-Ref: table-relational-ops271096
-Ref: Typing and Comparison-Footnote-1275337
-Node: Boolean Ops275479
-Node: Conditional Exp279485
-Node: Function Calls281216
-Node: Precedence284099
-Node: Patterns and Actions287520
-Node: Pattern Overview288571
-Node: Regexp Patterns290005
-Node: Expression Patterns290548
-Node: Ranges294080
-Node: BEGIN/END297154
-Node: Using BEGIN/END297904
-Ref: Using BEGIN/END-Footnote-1300622
-Node: I/O And BEGIN/END300733
-Node: Empty302990
-Node: Using Shell Variables303298
-Node: Action Overview305569
-Node: Statements307921
-Node: If Statement309774
-Node: While Statement311270
-Node: Do Statement313299
-Node: For Statement314445
-Node: Switch Statement317561
-Node: Break Statement319802
-Node: Continue Statement321850
-Node: Next Statement323748
-Node: Nextfile Statement326016
-Node: Exit Statement328592
-Node: Built-in Variables330647
-Node: User-modified331739
-Ref: User-modified-Footnote-1338979
-Node: Auto-set339038
-Ref: Auto-set-Footnote-1347375
-Node: ARGC and ARGV347577
-Node: Arrays351271
-Node: Array Intro353173
-Node: Reference to Elements357347
-Node: Assigning Elements359202
-Node: Array Example359669
-Node: Scanning an Array361385
-Node: Delete363646
-Ref: Delete-Footnote-1365998
-Node: Numeric Array Subscripts366052
-Node: Uninitialized Subscripts368230
-Node: Multi-dimensional369821
-Node: Multi-scanning372817
-Node: Array Sorting374426
-Node: Functions378063
-Node: Built-in378795
-Node: Calling Built-in379765
-Node: Numeric Functions381720
-Ref: Numeric Functions-Footnote-1385459
-Ref: Numeric Functions-Footnote-2385782
-Node: String Functions386048
-Ref: String Functions-Footnote-1405281
-Ref: String Functions-Footnote-2405407
-Ref: String Functions-Footnote-3405651
-Node: Gory Details405735
-Ref: table-sub-escapes407361
-Ref: table-sub-posix-92408696
-Ref: table-sub-proposed410035
-Ref: table-posix-2001-sub411388
-Ref: table-gensub-escapes412725
-Ref: Gory Details-Footnote-1413908
-Node: I/O Functions413956
-Ref: I/O Functions-Footnote-1420518
-Node: Time Functions420606
-Ref: Time Functions-Footnote-1431290
-Ref: Time Functions-Footnote-2431355
-Ref: Time Functions-Footnote-3431510
-Ref: Time Functions-Footnote-4431618
-Ref: Time Functions-Footnote-5431740
-Ref: Time Functions-Footnote-6431964
-Node: Bitwise Functions432223
-Ref: table-bitwise-ops432798
-Ref: Bitwise Functions-Footnote-1437020
-Node: I18N Functions437201
-Node: User-defined438924
-Node: Definition Syntax439705
-Node: Function Example444031
-Node: Function Caveats446596
-Node: Return Statement450500
-Node: Dynamic Typing453139
-Node: Internationalization453873
-Node: I18N and L10N455289
-Node: Explaining gettext455973
-Ref: Explaining gettext-Footnote-1460861
-Ref: Explaining gettext-Footnote-2461097
-Node: Programmer i18n461263
-Node: Translator i18n465480
-Node: String Extraction466267
-Ref: String Extraction-Footnote-1467211
-Node: Printf Ordering467334
-Ref: Printf Ordering-Footnote-1470086
-Node: I18N Portability470147
-Ref: I18N Portability-Footnote-1472571
-Node: I18N Example472631
-Ref: I18N Example-Footnote-1475223
-Node: Gawk I18N475292
-Node: Advanced Features476113
-Node: Nondecimal Data477507
-Node: Two-way I/O479057
-Ref: Two-way I/O-Footnote-1484506
-Node: TCP/IP Networking484580
-Node: Portal Files486991
-Node: Profiling487632
-Node: Invoking Gawk495148
-Node: Command Line496325
-Node: Options497104
-Ref: Options-Footnote-1508439
-Node: Other Arguments508461
-Node: AWKPATH Variable511121
-Ref: AWKPATH Variable-Footnote-1513878
-Node: Obsolete514135
-Node: Undocumented515129
-Node: Known Bugs515388
-Node: Library Functions515990
-Ref: Library Functions-Footnote-1518944
-Node: Library Names519112
-Ref: Library Names-Footnote-1522559
-Ref: Library Names-Footnote-2522775
-Node: General Functions522858
-Node: Nextfile Function523917
-Node: Strtonum Function528256
-Node: Assert Function531178
-Node: Round Function534464
-Node: Cliff Random Function535971
-Ref: Cliff Random Function-Footnote-1536954
-Node: Ordinal Functions537022
-Ref: Ordinal Functions-Footnote-1540070
-Node: Join Function540283
-Ref: Join Function-Footnote-1542034
-Node: Gettimeofday Function542231
-Node: Data File Management545928
-Node: Filetrans Function546560
-Node: Rewind Function549968
-Node: File Checking551405
-Node: Empty Files552453
-Node: Ignoring Assigns554660
-Node: Getopt Function556196
-Ref: Getopt Function-Footnote-1567160
-Node: Passwd Functions567358
-Ref: Passwd Functions-Footnote-1575966
-Node: Group Functions576051
-Node: Sample Programs583990
-Node: Running Examples584664
-Node: Clones585386
-Node: Cut Program586512
-Node: Egrep Program596185
-Ref: Egrep Program-Footnote-1603887
-Node: Id Program603994
-Node: Split Program607584
-Node: Tee Program611032
-Node: Uniq Program613694
-Node: Wc Program621032
-Ref: Wc Program-Footnote-1625246
-Node: Miscellaneous Programs625439
-Node: Dupword Program626435
-Node: Alarm Program628457
-Node: Translate Program632982
-Ref: Translate Program-Footnote-1637201
-Ref: Translate Program-Footnote-2637435
-Node: Labels Program637566
-Ref: Labels Program-Footnote-1640839
-Node: Word Sorting640920
-Node: History Sorting645183
-Node: Extract Program647009
-Node: Simple Sed654330
-Node: Igawk Program657364
-Ref: Igawk Program-Footnote-1671993
-Ref: Igawk Program-Footnote-2672191
-Node: Language History672326
-Node: V7/SVR3.1673710
-Node: SVR4675790
-Node: POSIX677229
-Node: BTL678736
-Node: POSIX/GNU680258
-Node: Contributors687406
-Node: Installation690849
-Node: Gawk Distribution691820
-Node: Getting692304
-Node: Extracting693530
-Node: Distribution contents694912
-Node: Unix Installation700132
-Node: Quick Installation700723
-Node: Additional Configuration Options702414
-Node: Configuration Philosophy704372
-Node: Non-Unix Installation706720
-Node: Amiga Installation707307
-Node: BeOS Installation708394
-Node: PC Installation709535
-Node: PC Binary Installation710762
-Node: PC Compiling712593
-Node: PC Dynamic717232
-Node: PC Using719578
-Node: Cygwin724172
-Ref: Cygwin-Footnote-1725164
-Node: VMS Installation725193
-Node: VMS Compilation725721
-Node: VMS Installation Details727292
-Node: VMS Running728916
-Node: VMS POSIX730505
-Node: Unsupported731776
-Node: Atari Installation732179
-Node: Atari Compiling733462
-Node: Atari Using735334
-Node: Tandem Installation738167
-Node: Bugs739832
-Node: Other Versions743095
-Ref: Other Versions-Footnote-1746696
-Node: Notes746735
-Node: Compatibility Mode747427
-Node: Additions748215
-Node: Adding Code748962
-Node: New Ports755009
-Node: Dynamic Extensions759064
-Node: Internals760080
-Node: Sample Library768299
-Node: Internal File Description768958
-Node: Internal File Ops772639
-Ref: Internal File Ops-Footnote-1777929
-Node: Using Internal File Ops778074
-Node: Future Extensions780091
-Node: Basic Concepts784355
-Node: Basic High Level785112
-Ref: Basic High Level-Footnote-1789123
-Node: Basic Data Typing789314
-Node: Floating Point Issues793716
-Ref: Floating Point Issues-Footnote-1797569
-Ref: Floating Point Issues-Footnote-2797619
-Node: Glossary797725
-Node: Copying821334
-Node: GNU Free Documentation License840460
-Node: Index862846
+Node: Top1326
+Node: Foreword26895
+Node: Preface31216
+Ref: Preface-Footnote-134077
+Node: History34306
+Node: Names36509
+Ref: Names-Footnote-137969
+Node: This Manual38038
+Ref: This Manual-Footnote-142723
+Node: Conventions42820
+Node: Manual History44682
+Ref: Manual History-Footnote-148102
+Ref: Manual History-Footnote-248140
+Node: How To Contribute48211
+Node: Acknowledgments48809
+Node: Getting Started52576
+Node: Running gawk54940
+Node: One-shot56120
+Node: Read Terminal57336
+Ref: Read Terminal-Footnote-158982
+Node: Long59150
+Node: Executable Scripts60520
+Ref: Executable Scripts-Footnote-162404
+Ref: Executable Scripts-Footnote-262552
+Node: Comments63000
+Node: Quoting65353
+Node: Sample Data Files69833
+Node: Very Simple72853
+Node: Two Rules77443
+Node: More Complex79581
+Ref: More Complex-Footnote-182489
+Ref: More Complex-Footnote-282934
+Node: Statements/Lines83014
+Ref: Statements/Lines-Footnote-187372
+Node: Other Features87634
+Node: When88480
+Ref: When-Footnote-190706
+Node: Regexp90784
+Node: Regexp Usage92235
+Node: Escape Sequences94272
+Node: Regexp Operators99988
+Ref: Regexp Operators-Footnote-1107077
+Ref: Regexp Operators-Footnote-2107221
+Node: Character Lists107316
+Ref: table-char-classes109260
+Node: GNU Regexp Operators112784
+Node: Case-sensitivity116355
+Ref: Case-sensitivity-Footnote-1119505
+Node: Leftmost Longest119737
+Node: Computed Regexps120919
+Node: Locales124282
+Node: Reading Files126302
+Node: Records128053
+Ref: Records-Footnote-1136555
+Node: Fields136589
+Ref: Fields-Footnote-1139601
+Node: Nonconstant Fields139684
+Node: Changing Fields141876
+Node: Field Separators147122
+Node: Regexp Field Splitting150591
+Node: Single Character Fields153047
+Node: Command Line Field Separator154096
+Node: Field Splitting Summary157513
+Ref: Field Splitting Summary-Footnote-1160691
+Node: Constant Size160789
+Node: Multiple Line165245
+Ref: Multiple Line-Footnote-1170908
+Node: Getline171084
+Node: Plain Getline173143
+Node: Getline/Variable175185
+Node: Getline/File176323
+Node: Getline/Variable/File177641
+Node: Getline/Pipe179188
+Node: Getline/Variable/Pipe181244
+Node: Getline/Coprocess182345
+Node: Getline/Variable/Coprocess183576
+Node: Getline Notes184284
+Node: Getline Summary185927
+Ref: table-getline-variants186211
+Node: Printing187376
+Node: Print189005
+Node: Print Examples190325
+Node: Output Separators193105
+Node: OFMT194857
+Node: Printf196209
+Node: Basic Printf197128
+Node: Control Letters198655
+Node: Format Modifiers201875
+Node: Printf Examples207914
+Node: Redirection210613
+Node: Special Files217175
+Node: Special FD217809
+Node: Special Process220823
+Node: Special Network223055
+Node: Special Caveats223894
+Ref: Special Caveats-Footnote-1225089
+Node: Close Files And Pipes225469
+Ref: Close Files And Pipes-Footnote-1232348
+Ref: Close Files And Pipes-Footnote-2232493
+Node: Expressions232638
+Node: Constants234824
+Node: Scalar Constants235502
+Ref: Scalar Constants-Footnote-1236351
+Node: Nondecimal-numbers236530
+Node: Regexp Constants239572
+Node: Using Constant Regexps240045
+Node: Variables243122
+Node: Using Variables243778
+Node: Assignment Options245279
+Node: Conversion247153
+Ref: Conversion-Footnote-1251902
+Node: Arithmetic Ops252008
+Node: Concatenation254503
+Node: Assignment Ops257187
+Ref: table-assign-ops262136
+Node: Increment Ops264040
+Node: Truth Values267515
+Node: Typing and Comparison268562
+Ref: table-relational-ops271609
+Ref: Typing and Comparison-Footnote-1275850
+Node: Boolean Ops275992
+Node: Conditional Exp279998
+Node: Function Calls281729
+Node: Precedence284612
+Node: Patterns and Actions288033
+Node: Pattern Overview289084
+Node: Regexp Patterns290518
+Node: Expression Patterns291061
+Node: Ranges294593
+Node: BEGIN/END297667
+Node: Using BEGIN/END298417
+Ref: Using BEGIN/END-Footnote-1301135
+Node: I/O And BEGIN/END301246
+Node: Empty303503
+Node: Using Shell Variables303811
+Node: Action Overview306082
+Node: Statements308434
+Node: If Statement310287
+Node: While Statement311783
+Node: Do Statement313812
+Node: For Statement314958
+Node: Switch Statement318074
+Node: Break Statement320338
+Node: Continue Statement322386
+Node: Next Statement324284
+Node: Nextfile Statement326552
+Node: Exit Statement329128
+Node: Built-in Variables331183
+Node: User-modified332275
+Ref: User-modified-Footnote-1339515
+Node: Auto-set339574
+Ref: Auto-set-Footnote-1347911
+Node: ARGC and ARGV348113
+Node: Arrays351807
+Node: Array Intro353709
+Node: Reference to Elements357883
+Node: Assigning Elements359738
+Node: Array Example360205
+Node: Scanning an Array361921
+Node: Delete364182
+Ref: Delete-Footnote-1366534
+Node: Numeric Array Subscripts366588
+Node: Uninitialized Subscripts368766
+Node: Multi-dimensional370357
+Node: Multi-scanning373353
+Node: Array Sorting374962
+Node: Functions378599
+Node: Built-in379331
+Node: Calling Built-in380301
+Node: Numeric Functions382256
+Ref: Numeric Functions-Footnote-1385995
+Ref: Numeric Functions-Footnote-2386318
+Node: String Functions386584
+Ref: String Functions-Footnote-1406443
+Ref: String Functions-Footnote-2406569
+Ref: String Functions-Footnote-3406813
+Node: Gory Details406897
+Ref: table-sub-escapes408523
+Ref: table-sub-posix-92409858
+Ref: table-sub-proposed411197
+Ref: table-posix-2001-sub412550
+Ref: table-gensub-escapes413887
+Ref: Gory Details-Footnote-1415070
+Node: I/O Functions415118
+Ref: I/O Functions-Footnote-1421680
+Node: Time Functions421768
+Ref: Time Functions-Footnote-1432452
+Ref: Time Functions-Footnote-2432517
+Ref: Time Functions-Footnote-3432672
+Ref: Time Functions-Footnote-4432780
+Ref: Time Functions-Footnote-5432902
+Ref: Time Functions-Footnote-6433126
+Node: Bitwise Functions433385
+Ref: table-bitwise-ops433960
+Ref: Bitwise Functions-Footnote-1438182
+Node: I18N Functions438363
+Node: User-defined440086
+Node: Definition Syntax440867
+Node: Function Example445193
+Node: Function Caveats447758
+Node: Return Statement451662
+Node: Dynamic Typing454301
+Node: Internationalization455035
+Node: I18N and L10N456451
+Node: Explaining gettext457135
+Ref: Explaining gettext-Footnote-1462023
+Ref: Explaining gettext-Footnote-2462259
+Node: Programmer i18n462425
+Node: Translator i18n466642
+Node: String Extraction467429
+Ref: String Extraction-Footnote-1468373
+Node: Printf Ordering468496
+Ref: Printf Ordering-Footnote-1471248
+Node: I18N Portability471309
+Ref: I18N Portability-Footnote-1473733
+Node: I18N Example473793
+Ref: I18N Example-Footnote-1476385
+Node: Gawk I18N476454
+Node: Advanced Features477033
+Node: Nondecimal Data478427
+Node: Two-way I/O479977
+Ref: Two-way I/O-Footnote-1485426
+Node: TCP/IP Networking485500
+Node: Portal Files487911
+Node: Profiling488552
+Node: Invoking Gawk496068
+Node: Command Line497245
+Node: Options498024
+Ref: Options-Footnote-1510187
+Node: Other Arguments510209
+Node: AWKPATH Variable512869
+Ref: AWKPATH Variable-Footnote-1515626
+Node: Obsolete515883
+Node: Undocumented516877
+Node: Known Bugs517136
+Node: Library Functions517738
+Ref: Library Functions-Footnote-1520692
+Node: Library Names520860
+Ref: Library Names-Footnote-1524307
+Ref: Library Names-Footnote-2524523
+Node: General Functions524606
+Node: Nextfile Function525665
+Node: Strtonum Function530004
+Node: Assert Function532926
+Node: Round Function536212
+Node: Cliff Random Function537719
+Ref: Cliff Random Function-Footnote-1538702
+Node: Ordinal Functions538770
+Ref: Ordinal Functions-Footnote-1541818
+Node: Join Function542031
+Ref: Join Function-Footnote-1543782
+Node: Gettimeofday Function543979
+Node: Data File Management547676
+Node: Filetrans Function548308
+Node: Rewind Function551716
+Node: File Checking553153
+Node: Empty Files554201
+Node: Ignoring Assigns556408
+Node: Getopt Function557944
+Ref: Getopt Function-Footnote-1568908
+Node: Passwd Functions569106
+Ref: Passwd Functions-Footnote-1577714
+Node: Group Functions577799
+Node: Sample Programs585738
+Node: Running Examples586412
+Node: Clones587134
+Node: Cut Program588260
+Node: Egrep Program597933
+Ref: Egrep Program-Footnote-1605635
+Node: Id Program605742
+Node: Split Program609332
+Node: Tee Program612780
+Node: Uniq Program615442
+Node: Wc Program622780
+Ref: Wc Program-Footnote-1626994
+Node: Miscellaneous Programs627187
+Node: Dupword Program628183
+Node: Alarm Program630205
+Node: Translate Program634730
+Ref: Translate Program-Footnote-1638949
+Ref: Translate Program-Footnote-2639183
+Node: Labels Program639314
+Ref: Labels Program-Footnote-1642587
+Node: Word Sorting642668
+Node: History Sorting646931
+Node: Extract Program648757
+Node: Simple Sed656078
+Node: Igawk Program659112
+Ref: Igawk Program-Footnote-1673741
+Ref: Igawk Program-Footnote-2673939
+Node: Language History674074
+Node: V7/SVR3.1675458
+Node: SVR4677538
+Node: POSIX678977
+Node: BTL680484
+Node: POSIX/GNU682006
+Node: Contributors689379
+Node: Installation692822
+Node: Gawk Distribution693793
+Node: Getting694277
+Node: Extracting695508
+Node: Distribution contents696890
+Node: Unix Installation701971
+Node: Quick Installation702562
+Node: Additional Configuration Options704253
+Node: Configuration Philosophy706001
+Node: Non-Unix Installation708349
+Node: Amiga Installation708936
+Node: BeOS Installation710023
+Node: PC Installation711164
+Node: PC Binary Installation712391
+Node: PC Compiling714222
+Node: PC Dynamic718742
+Node: PC Using721088
+Node: Cygwin725682
+Ref: Cygwin-Footnote-1726674
+Node: VMS Installation726703
+Node: VMS Compilation727231
+Node: VMS Installation Details728802
+Node: VMS Running730426
+Node: VMS POSIX732015
+Node: Unsupported733286
+Node: Atari Installation733689
+Node: Atari Compiling734972
+Node: Atari Using736844
+Node: Tandem Installation739677
+Node: Bugs741342
+Node: Other Versions744605
+Ref: Other Versions-Footnote-1748206
+Node: Notes748245
+Node: Compatibility Mode748937
+Node: Additions749725
+Node: Adding Code750472
+Node: New Ports756519
+Node: Dynamic Extensions760574
+Node: Internals761821
+Node: Sample Library772806
+Node: Internal File Description773465
+Node: Internal File Ops777146
+Ref: Internal File Ops-Footnote-1782436
+Node: Using Internal File Ops782581
+Node: Future Extensions784598
+Node: Basic Concepts788534
+Node: Basic High Level789291
+Ref: Basic High Level-Footnote-1793302
+Node: Basic Data Typing793493
+Node: Floating Point Issues797895
+Ref: Floating Point Issues-Footnote-1801748
+Ref: Floating Point Issues-Footnote-2801798
+Node: Glossary801904
+Node: Copying825513
+Node: GNU Free Documentation License844649
+Node: Index867040

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 4ba65e3f..c0b738c7 100644..100755
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -20,9 +20,9 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH June, 2004
+@set UPDATE-MONTH June, 2005
@set VERSION 3.1
-@set PATCHLEVEL 4
+@set PATCHLEVEL 5
@set FSF
@@ -110,7 +110,7 @@ Some comments on the layout for TeX.
@end iftex
@copying
-Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
@sp 2
This is Edition @value{EDITION} of @cite{@value{TITLE}: @value{SUBTITLE}},
@@ -187,8 +187,8 @@ Published by:
@sp 1
Free Software Foundation @*
-59 Temple Place --- Suite 330 @*
-Boston, MA 02111-1307 USA @*
+51 Franklin Street, Fifth Floor @*
+Boston, MA 02110-1301 USA @*
Phone: +1-617-542-5942 @*
Fax: +1-617-542-2652 @*
Email: @email{gnu@@gnu.org} @*
@@ -2465,7 +2465,7 @@ the file was last modified. Its output looks like this:
-rw-r--r-- 1 arnold user 1933 Nov 7 13:05 Makefile
-rw-r--r-- 1 arnold user 10809 Nov 7 13:03 awk.h
-rw-r--r-- 1 arnold user 983 Apr 13 12:14 awk.tab.h
--rw-r--r-- 1 arnold user 31869 Jun 15 12:20 awk.y
+-rw-r--r-- 1 arnold user 31869 Jun 15 12:20 awkgram.y
-rw-r--r-- 1 arnold user 22414 Nov 7 13:03 awk1.c
-rw-r--r-- 1 arnold user 37455 Nov 7 13:03 awk2.c
-rw-r--r-- 1 arnold user 27511 Dec 9 13:07 awk3.c
@@ -4129,6 +4129,16 @@ if the input text that could match the trailing part is fairly long.
@command{gawk} attempts to avoid this problem, but currently, there's
no guarantee that this will never happen.
+@quotation NOTE
+Remember that in @command{awk}, the @samp{^} and @samp{$} anchor
+metacharacters match the beginning and end of a @emph{string}, and not
+the beginning and end of a @emph{line}. As a result, something like
+@samp{RS = "^[[:upper:]]"} can only match at the beginning of a file.
+This is because @command{gawk} views the input file as one long string
+that happens to contain newline characters in it.
+It is thus best to avoid anchor characters in the value of @code{RS}.
+@end quotation
+
@cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables
The use of @code{RS} as a regular expression and the @code{RT}
variable are @command{gawk} extensions; they are not available in
@@ -6320,12 +6330,12 @@ $ @kbd{LC_ALL=en_US.UTF-8 gawk -f thousands.awk} @i{Run in US Engli
@noindent
For more information about locales and internationalization issues,
-@strong{FIXME: see xxxx}.
+see @ref{Locales}.
@quotation NOTE
The @samp{'} flag is a nice feature, but its use complicates things: it
now becomes difficult to use it in command-line programs. For information
-on appropriate quoting tricks, @strong{FIXME: see XXXX}.
+on appropriate quoting tricks, see @ref{Quoting}.
@end quotation
@item @var{width}
@@ -7191,7 +7201,7 @@ In these cases, @command{gawk} sets the built-in variable
@code{ERRNO} to a string describing the problem.
In @command{gawk},
-when closing a pipe or coprocess,
+when closing a pipe or coprocess (input or output),
the return value is the exit status of the command.@footnote{
This is a full 16-bit value as returned by the @code{wait}
system call. See the system manual pages for information on
@@ -10132,11 +10142,13 @@ for more information on this version of the @code{for} loop.
@cindex @code{case} keyword
@cindex @code{default} keyword
-@strong{NOTE:} This @value{SUBSECTION} describes an experimental feature
+@quotation NOTE
+This @value{SUBSECTION} describes an experimental feature
added in @command{gawk} 3.1.3. It is @emph{not} enabled by default. To
enable it, use the @option{--enable-switch} option to @command{configure}
when @command{gawk} is being configured and built.
@xref{Additional Configuration Options}, for more information.
+@end quotation
The @code{switch} statement allows the evaluation of an expression and
the execution of statements based on a @code{case} match. Case statements
@@ -12429,6 +12441,18 @@ version of the standard. Therefore, for programs to be maximally portable,
always supply the parentheses.
@end quotation
+@cindex differences between @command{gawk} and @command{awk}
+Beginning with @command{gawk} @value{PVERSION} 3.2, when supplied an
+array argument, the @code{length} function returns the number of elements
+in the array. This is less useful than it might seem at first, as the
+array is not guaranteed to be indexed from one to the number of elements
+in it.
+If @option{--lint} is provided on the command line
+(@pxref{Options}),
+@command{gawk} warns that passing an array argument is not portable.
+If @option{--posix} is supplied, using an array argument is a fatal error
+(@pxref{Arrays}).
+
@item match(@var{string}, @var{regexp} @r{[}, @var{array}@r{]})
@cindex @code{match} function
The @code{match} function searches @var{string} for the
@@ -12645,6 +12669,9 @@ works only for decimal data, not for octal or hexadecimal.@footnote{Unless
you use the @option{--non-decimal-data} option, which isn't recommended.
@xref{Nondecimal Data}, for more information.}
+Note also that @code{strtonum} uses the current locale's decimal point
+for recognizing numbers.
+
@cindex differences in @command{awk} and @command{gawk}, @code{strtonum} function (@command{gawk})
@code{strtonum} is a @command{gawk} extension; it is not available
in compatibility mode (@pxref{Options}).
@@ -15516,14 +15543,6 @@ As of this writing, the latest version of GNU @code{gettext} is
If a translation of @command{gawk}'s messages exists,
then @command{gawk} produces usage messages, warnings,
and fatal errors in the local language.
-
-@cindex @code{--with-included-gettext} configuration option
-@cindex configuration option, @code{--with-included-gettext}
-On systems that do not use @value{PVERSION} 2 (or later) of the GNU C library, you should
-configure @command{gawk} with the @option{--with-included-gettext} option
-before compiling and installing it.
-@xref{Additional Configuration Options},
-for more information.
@c ENDOFRANGE inloc
@node Advanced Features
@@ -16444,6 +16463,29 @@ inadvertently use global variables that you meant to be local.
(This is a particularly easy mistake to make with simple variable
names like @code{i}, @code{j}, etc.)
+@item -W exec @var{file}
+@itemx --exec @var{file}
+@cindex @code{--exec} option
+@cindex @command{awk} programs, location of
+@cindex CGI, @command{awk} scripts for
+Similar to @option{-f}, reads @command{awk} program text from @var{file}.
+There are two differences. The fist is that this option also terminates option processing; anything
+else on the command line is passed on directly to the @command{awk} program.
+The second is that command line variable assignments of the form
+@samp{@var{var}=@var{value}} are disallowed.
+
+This option is particularly necessary for World Wide Web CGI applications
+that pass arguments through the URL; using this option prevents a malicious
+(or other) user from passing in options, assignments, or @command{awk} source code (via
+@option{--source}) to the CGI application. This option should be used
+with @samp{#!} scripts (@pxref{Executable Scripts}), like so:
+
+@example
+#! /usr/local/bin/gawk --exec
+
+@var{awk program here @dots{}}
+@end example
+
@item -W gen-po
@itemx --gen-po
@cindex @code{--gen-po} option
@@ -23291,6 +23333,15 @@ at compile time
POSIX compliance for @code{sub} and @code{gsub}
(@pxref{Gory Details}).
+@item
+The @option{--exec} option, for use in CGI scripts.
+(@pxref{Options}).
+
+@item
+The @code{length} function was extended to accept an array argument
+and return the number of elements in the array
+(@pxref{String Functions}).
+
@end itemize
@c XXX ADD MORE STUFF HERE
@@ -23533,8 +23584,8 @@ Their address is:
@display
Free Software Foundation
-59 Temple Place, Suite 330
-Boston, MA 02111-1307 USA
+51 Franklin Street, Fifth Floor
+Boston, MA 02110-1301 USA
Phone: +1-617-542-5942
Fax (including Japan): +1-617-542-2652
Email: @email{gnu@@gnu.org}
@@ -23714,11 +23765,8 @@ These files and subdirectories are used when configuring @command{gawk}
for various Unix systems. They are explained in
@ref{Unix Installation}.
-@item intl/*
-@itemx po/*
-The @file{intl} directory provides the GNU @code{gettext} library, which implements
-@command{gawk}'s internationalization features, while the @file{po} library
-contains message translations.
+@item po/*
+The @file{po} library contains message translations.
@item awklib/extract.awk
@itemx awklib/Makefile.am
@@ -23868,17 +23916,6 @@ Enable the recognition and execution of C-style @code{switch} statements
in @command{awk} programs
(@pxref{Switch Statement}.)
-@cindex Linux
-@cindex GNU/Linux
-@cindex @code{--with-included-gettext} configuration option
-@cindex @code{--with-included-gettext} configuration option, configuring @command{gawk} with
-@cindex configuration option, @code{--with-included-gettext}
-@item --with-included-gettext
-Use the version of the @code{gettext} library that comes with @command{gawk}.
-This option should be used on systems that do @emph{not} use @value{PVERSION} 2 (or later)
-of the GNU C library.
-All known modern GNU/Linux systems use Glibc 2. Use this option on any other system.
-
@cindex @code{--disable-lint} configuration option
@cindex configuration option, @code{--disable-lint}
@item --disable-lint
@@ -23905,10 +23942,12 @@ to fail. This option may be removed at a later date.
Disable all message-translation facilities.
This is usually not desirable, but it may bring you some slight performance
improvement.
-You should also use this option if @option{--with-included-gettext}
-doesn't work on your system.
@end table
+As of version 3.1.5, the @option{--with-included-gettext} configuration
+option is no longer available, since @command{gawk} expects the
+GNU @code{gettext} library to be installed as an external library.
+
@node Configuration Philosophy
@appendixsubsec The Configuration Process
@@ -24171,7 +24210,7 @@ $ CPPFLAGS="-D__ST_MT_ERRNO__"
$ export CPPFLAGS
$ CFLAGS="-O2 -Zomf -Zmt"
$ export CFLAGS
-$ LDFLAGS="-s -Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x8000"
+$ LDFLAGS="-s -Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x6000"
$ export LDFLAGS
$ RANLIB="echo"
$ export RANLIB
@@ -24186,11 +24225,13 @@ To get an FHS-compliant file hierarchy it is recommended to use the additional
@command{configure} options @option{--infodir=c:/usr/share/info}, @option{--mandir=c:/usr/share/man}
and @option{--libexecdir=c:/usr/lib}.
+@ignore
The internal @code{gettext} library tends to be problematic. It is therefore recommended
to use either an external one (@option{--without-included-gettext}) or to disable
NLS entirely (@option{--disable-nls}).
+@end ignore
-If you use GCC 2.95 or newer it is recommended to use also:
+If you use GCC 2.95 it is recommended to use also:
@example
$ LIBS="-lgcc"
@@ -24204,14 +24245,19 @@ $ CPPFLAGS="-D__ST_MT_ERRNO__"
$ export CPPFLAGS
$ CFLAGS="-O2 -Zmt"
$ export CFLAGS
-$ LDFLAGS="-s -Zstack 0x8000"
+$ LDFLAGS="-s -Zstack 0x6000"
$ LIBS="-lgcc"
$ unset RANLIB
-$ ./configure --prefix=c:/usr --without-included-gettext
+@c $ ./configure --prefix=c:/usr --without-included-gettext
+$ ./configure --prefix=c:/usr
$ make
@end example
@quotation NOTE
+Versions later than GCC 2.95, i.e., GCC 3.x using the Innotek libc were not tested.
+@end quotation
+
+@quotation NOTE
Even if the compiled @command{gawk.exe} (@code{a.out}) executable
contains a DOS header, it does @emph{not} work under DOS. To compile an executable
that runs under DOS, @code{"-DPIPES_SIMULATED"} must be added to @env{CPPFLAGS}.
@@ -24220,8 +24266,9 @@ But then some nonstandard extensions of @command{gawk} (e.g., @samp{|&}) do not
After compilation the internal tests can be performed. Enter
@samp{make check CMP="diff -a"} at your command prompt. All tests
-but the @code{pid} test are expected to work properly. The @code{pid}
-test fails because child processes are not started by @code{fork()}.
+except for the @code{pid} test are expected to work properly.
+The @code{pid} test fails because child processes are not started by
+@code{fork()}.
@samp{make install} works as expected.
@@ -24891,7 +24938,7 @@ Darrel Hankerson, @email{hankedr@@mail.auburn.edu}.
Juan Grigera, @email{juan@@biophnet.unlp.edu.ar}.
@item OS/2
-The Unix for OS/2 team, @email{gawk-maintainer@@unixos2.org}.
+Andreas Buening, @email{andreas.buening@@nexgo.de}.
@cindex Davies, Stephen
@item Tandem
@@ -25453,6 +25500,11 @@ are very much subject to change in a future @command{gawk} release.
Be aware that you may have to re-do everything, perhaps from scratch,
at some future time.
+@strong{Caution:} If you have written your own dynamic extensions,
+be sure to recompile them for each new @command{gawk} release.
+There is no guarantee of binary compatibility between different
+releases, no will there ever be such a guarantee.
+
@menu
* Internals:: A brief look at some @command{gawk} internals.
* Sample Library:: A example of new functions.
@@ -25470,7 +25522,7 @@ brief and simplistic; would-be @command{gawk} hackers are encouraged to
spend some time reading the source code before trying to write
extensions based on the material presented here. Of particular note
are the files @file{awk.h}, @file{builtin.c}, and @file{eval.c}.
-Reading @file{awk.y} in order to see how the parse tree is built
+Reading @file{awkgram.y} in order to see how the parse tree is built
would also be of use.
@cindex @code{awk.h} file (internal)
@@ -25663,6 +25715,70 @@ This function is called from within a C extension function to set
the value of @command{gawk}'s @code{ERRNO} variable, based on the current
value of the C @code{errno} variable.
It is provided as a convenience.
+
+@cindex @code{ERRNO} variable
+@cindex @code{update_ERRNO_saved} internal function
+@item void update_ERRNO_saved(int errno_saved)
+This function is called from within a C extension function to set
+the value of @command{gawk}'s @code{ERRNO} variable, based on the saved
+value of the C @code{errno} variable provided as the argument.
+It is provided as a convenience.
+
+@strong{Caution:} This function is new as of @command{gawk} 3.1.5.
+
+@cindex @code{ENVIRON} variable
+@cindex @code{PROCINFO} variable
+@cindex @code{register_deferred_variable} internal function
+@item void register_deferred_variable(const char *name, NODE *(*load_func)(void))
+This function is called to register a function to be called when a
+reference to an undefined variable with the given name is encountered.
+The callback function will never be called if the variable exists already,
+so, unless the calling code is running at program startup, it should first
+check whether a variable of the given name already exists.
+The argument function must return a pointer to a NODE containing the
+newly created variable. This function is used to implement the builtin
+@code{ENVIRON} and @code{PROCINFO} variables, so you can refer to them
+for examples.
+
+@strong{Caution:} This function is new as of @command{gawk} 3.1.5.
+
+@cindex @code{IOBUF} internal structure
+@cindex @code{iop_alloc} internal function
+@cindex @code{get_record} input method
+@cindex @code{close_func} input method
+@cindex XML
+@cindex @code{register_open_hook} internal function
+@item void register_open_hook(void *(*open_func)(IOBUF *))
+This function is called to register a function to be called whenever
+a new data file is opened, leading to the creation of an @code{IOBUF}
+structure in @code{iop_alloc}. After creating the new @code{IOBUF},
+@code{iop_alloc} will call (in reverse order of registration, so the last
+function registered is called first) each open hook until one returns
+non-NULL. If any hook returns a non-NULL value, that value is assigned
+to the @code{IOBUF}'s @code{opaque} field (which will presumably point
+to a structure containing additional state associated with the input
+processing), and no further open hooks are called.
+
+The function called will most likely want to set the @code{IOBUF}
+@code{get_record} method to indicate that future input records should
+be retrieved by calling that method instead of using the standard
+@command{gawk} input processing.
+
+And the function will also probably want to set the @code{IOBUF}
+@code{close_func} method to be called when the file is closed to clean
+up any state associated with the input.
+
+Finally, hook functions should be prepared to receive an @code{IOBUF}
+structure where the @code{fd} field is set to @code{INVALID_HANDLE},
+meaning that @command{gawk} was not able to open the file itself. In
+this case, the hook function must be able to successfully open the file
+and place a valid file descriptor there.
+
+Currently, for example, the hook function facility is used to implement
+the XML parser shared library extension. For more info, please look in
+@file{awk.h} and in @file{io.c}.
+
+@strong{Caution:} This function is new as of @command{gawk} 3.1.5.
@end table
An argument that is supposed to be an array needs to be handled with
@@ -26235,13 +26351,6 @@ in @command{gawk}.
@item Databases
It may be possible to map a GDBM/NDBM/SDBM file into an @command{awk} array.
-@item Large character sets
-It would be nice if @command{gawk} could handle UTF-8 and other
-character sets that are larger than eight bits.
-(@command{gawk} currently has partial multi-byte support, but it
-needs an expert to really think out the multi-byte issues and consult
-with the maintainer on the appropriate changes.)
-
@item More @code{lint} warnings
There are more things that could be checked for portability.
@end table
@@ -27516,7 +27625,7 @@ record or a string.
@display
Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc.
-59 Temple Place, Suite 330, Boston, MA 02111, USA
+51 Franklin Street, Fifth Floor, Boston, MA 02111, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -27867,7 +27976,7 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA.
@end smallexample
Also add information on how to contact you by electronic and paper mail.
@@ -27921,7 +28030,7 @@ Public License instead of this License.
@display
Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc.
-59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
diff --git a/doc/gawkinet.info b/doc/gawkinet.info
index de6ce30b..3c23e3c5 100644
--- a/doc/gawkinet.info
+++ b/doc/gawkinet.info
@@ -3741,7 +3741,7 @@ GNU Free Documentation License
Version 1.2, November 2002
Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -4422,6 +4422,6 @@ Node: STOXPRED140599
Node: PROTBASE154809
Node: Links167844
Node: GNU Free Documentation License171278
-Node: Index193666
+Node: Index193671

End Tag Table
diff --git a/doc/gawkinet.texi b/doc/gawkinet.texi
index 27cf6050..9ddabc04 100644
--- a/doc/gawkinet.texi
+++ b/doc/gawkinet.texi
@@ -118,8 +118,8 @@ Published by:
@sp 1
Free Software Foundation @*
-59 Temple Place --- Suite 330 @*
-Boston, MA 02111-1307 USA @*
+51 Franklin Street, Fifth Floor @*
+Boston, MA 02110-1301 USA @*
Phone: +1-617-542-5942 @*
Fax: +1-617-542-2652 @*
Email: @email{gnu@@gnu.org} @*
@@ -4733,7 +4733,7 @@ They are presented in the order in which they appear.
@display
Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc.
-59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
diff --git a/doc/macros b/doc/macros
index bdfc5c8c..112e3c86 100644
--- a/doc/macros
+++ b/doc/macros
@@ -14,7 +14,7 @@
.\"
.\" You should have received a copy of the GNU General Public License
.\" along with this program; if not, write to the Free Software
-.\" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+.\" Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
.\"
.\" Generic SSC "card" macros
.\" based on lots of other macros
diff --git a/doc/setter.outline b/doc/setter.outline
index 67ade73a..37e5cbfa 100644
--- a/doc/setter.outline
+++ b/doc/setter.outline
@@ -15,7 +15,7 @@
%
% You should have received a copy of the GNU General Public License
% along with this program; if not, write to the Free Software
-% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+% Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
%
%! page cut marks and stuff for Pocket References - 10-26-88 - ph
%! modified to move the cut marks onto the page
diff --git a/doc/texinfo.tex b/doc/texinfo.tex
index 9fd4df16..e0fbe635 100644
--- a/doc/texinfo.tex
+++ b/doc/texinfo.tex
@@ -3,10 +3,10 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2004-06-14.14}
+\def\texinfoversion{2005-01-30.17}
%
% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
-% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
+% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software
% Foundation, Inc.
%
% This texinfo.tex file is free software; you can redistribute it and/or
@@ -21,8 +21,8 @@
%
% You should have received a copy of the GNU General Public License
% along with this texinfo.tex file; see the file COPYING. If not, write
-% to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-% Boston, MA 02111-1307, USA.
+% to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+% Boston, MA 02110-1301, USA.
%
% As a special exception, when this file is read by TeX when processing
% a Texinfo source document, you may use the result without
@@ -89,10 +89,11 @@
\let\ptexhat=^
\let\ptexi=\i
\let\ptexindent=\indent
-\let\ptexnoindent=\noindent
\let\ptexinsert=\insert
\let\ptexlbrace=\{
\let\ptexless=<
+\let\ptexnewwrite\newwrite
+\let\ptexnoindent=\noindent
\let\ptexplus=+
\let\ptexrbrace=\}
\let\ptexslash=\/
@@ -608,7 +609,7 @@
% The \TeX{} logo, as in plain, but resetting the spacing so that a
% period following counts as ending a sentence. (Idea found in latex.)
%
-\edef\TeX{\TeX \spacefactor=3000 }
+\edef\TeX{\TeX \spacefactor=1000 }
% @LaTeX{} logo. Not quite the same results as the definition in
% latex.ltx, since we use a different font for the raised A; it's most
@@ -1242,13 +1243,13 @@ where each line of input produces a line of output.}
% Read toc silently, to get counts of subentries for \pdfoutline.
\def\numchapentry##1##2##3##4{%
\def\thischapnum{##2}%
- \let\thissecnum\empty
- \let\thissubsecnum\empty
+ \def\thissecnum{0}%
+ \def\thissubsecnum{0}%
}%
\def\numsecentry##1##2##3##4{%
\advancenumber{chap\thischapnum}%
\def\thissecnum{##2}%
- \let\thissubsecnum\empty
+ \def\thissubsecnum{0}%
}%
\def\numsubsecentry##1##2##3##4{%
\advancenumber{sec\thissecnum}%
@@ -1257,9 +1258,9 @@ where each line of input produces a line of output.}
\def\numsubsubsecentry##1##2##3##4{%
\advancenumber{subsec\thissubsecnum}%
}%
- \let\thischapnum\empty
- \let\thissecnum\empty
- \let\thissubsecnum\empty
+ \def\thischapnum{0}%
+ \def\thissecnum{0}%
+ \def\thissubsecnum{0}%
%
% use \def rather than \let here because we redefine \chapentry et
% al. a second time, below.
@@ -1406,7 +1407,7 @@ where each line of input produces a line of output.}
\def\rm{\fam=0 \setfontstyle{rm}}
\def\it{\fam=\itfam \setfontstyle{it}}
\def\sl{\fam=\slfam \setfontstyle{sl}}
-\def\bf{\fam=\bffam \setfontstyle{bf}}
+\def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf}
\def\tt{\fam=\ttfam \setfontstyle{tt}}
% Texinfo sort of supports the sans serif font style, which plain TeX does not.
@@ -1468,17 +1469,10 @@ where each line of input produces a line of output.}
\def\scbshape{csc}
% Text fonts (11.2pt, magstep1).
-\newcount\mainmagstep
-\ifx\bigger\relax
- % not really supported.
- \mainmagstep=\magstep1
- \setfont\textrm\rmshape{12}{1000}
- \setfont\texttt\ttshape{12}{1000}
-\else
- \mainmagstep=\magstephalf
- \setfont\textrm\rmshape{10}{\mainmagstep}
- \setfont\texttt\ttshape{10}{\mainmagstep}
-\fi
+\def\textnominalsize{11pt}
+\edef\mainmagstep{\magstephalf}
+\setfont\textrm\rmshape{10}{\mainmagstep}
+\setfont\texttt\ttshape{10}{\mainmagstep}
\setfont\textbf\bfshape{10}{\mainmagstep}
\setfont\textit\itshape{10}{\mainmagstep}
\setfont\textsl\slshape{10}{\mainmagstep}
@@ -1495,6 +1489,7 @@ where each line of input produces a line of output.}
\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
% Fonts for indices, footnotes, small examples (9pt).
+\def\smallnominalsize{9pt}
\setfont\smallrm\rmshape{9}{1000}
\setfont\smalltt\ttshape{9}{1000}
\setfont\smallbf\bfshape{10}{900}
@@ -1507,6 +1502,7 @@ where each line of input produces a line of output.}
\font\smallsy=cmsy9
% Fonts for small examples (8pt).
+\def\smallernominalsize{8pt}
\setfont\smallerrm\rmshape{8}{1000}
\setfont\smallertt\ttshape{8}{1000}
\setfont\smallerbf\bfshape{10}{800}
@@ -1519,6 +1515,7 @@ where each line of input produces a line of output.}
\font\smallersy=cmsy8
% Fonts for title page (20.4pt):
+\def\titlenominalsize{20pt}
\setfont\titlerm\rmbshape{12}{\magstep3}
\setfont\titleit\itbshape{10}{\magstep4}
\setfont\titlesl\slbshape{10}{\magstep4}
@@ -1533,6 +1530,7 @@ where each line of input produces a line of output.}
\def\authortt{\sectt}
% Chapter (and unnumbered) fonts (17.28pt).
+\def\chapnominalsize{17pt}
\setfont\chaprm\rmbshape{12}{\magstep2}
\setfont\chapit\itbshape{10}{\magstep3}
\setfont\chapsl\slbshape{10}{\magstep3}
@@ -1545,6 +1543,7 @@ where each line of input produces a line of output.}
\font\chapsy=cmsy10 scaled \magstep3
% Section fonts (14.4pt).
+\def\secnominalsize{14pt}
\setfont\secrm\rmbshape{12}{\magstep1}
\setfont\secit\itbshape{10}{\magstep2}
\setfont\secsl\slbshape{10}{\magstep2}
@@ -1557,6 +1556,7 @@ where each line of input produces a line of output.}
\font\secsy=cmsy10 scaled \magstep2
% Subsection fonts (13.15pt).
+\def\ssecnominalsize{13pt}
\setfont\ssecrm\rmbshape{12}{\magstephalf}
\setfont\ssecit\itbshape{10}{1315}
\setfont\ssecsl\slbshape{10}{1315}
@@ -1569,6 +1569,7 @@ where each line of input produces a line of output.}
\font\ssecsy=cmsy10 scaled 1315
% Reduced fonts for @acro in text (10pt).
+\def\reducednominalsize{10pt}
\setfont\reducedrm\rmshape{10}{1000}
\setfont\reducedtt\ttshape{10}{1000}
\setfont\reducedbf\bfshape{10}{1000}
@@ -1608,6 +1609,7 @@ where each line of input produces a line of output.}
\let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc
\let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy
\let\tenttsl=\textttsl
+ \def\curfontsize{text}%
\def\lsize{reduced}\def\lllsize{smaller}%
\resetmathfonts \setleading{\textleading}}
\def\titlefonts{%
@@ -1615,13 +1617,16 @@ where each line of input produces a line of output.}
\let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc
\let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy
\let\tenttsl=\titlettsl
+ \def\curfontsize{title}%
\def\lsize{chap}\def\lllsize{subsec}%
\resetmathfonts \setleading{25pt}}
\def\titlefont#1{{\titlefonts\rm #1}}
\def\chapfonts{%
\let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl
\let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc
- \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy \let\tenttsl=\chapttsl
+ \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy
+ \let\tenttsl=\chapttsl
+ \def\curfontsize{chap}%
\def\lsize{sec}\def\lllsize{text}%
\resetmathfonts \setleading{19pt}}
\def\secfonts{%
@@ -1629,6 +1634,7 @@ where each line of input produces a line of output.}
\let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc
\let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy
\let\tenttsl=\secttsl
+ \def\curfontsize{sec}%
\def\lsize{subsec}\def\lllsize{reduced}%
\resetmathfonts \setleading{16pt}}
\def\subsecfonts{%
@@ -1636,6 +1642,7 @@ where each line of input produces a line of output.}
\let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc
\let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy
\let\tenttsl=\ssecttsl
+ \def\curfontsize{ssec}%
\def\lsize{text}\def\lllsize{small}%
\resetmathfonts \setleading{15pt}}
\let\subsubsecfonts = \subsecfonts
@@ -1644,6 +1651,7 @@ where each line of input produces a line of output.}
\let\tenbf=\reducedbf \let\tentt=\reducedtt \let\reducedcaps=\reducedsc
\let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy
\let\tenttsl=\reducedttsl
+ \def\curfontsize{reduced}%
\def\lsize{small}\def\lllsize{smaller}%
\resetmathfonts \setleading{10.5pt}}
\def\smallfonts{%
@@ -1651,6 +1659,7 @@ where each line of input produces a line of output.}
\let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc
\let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy
\let\tenttsl=\smallttsl
+ \def\curfontsize{small}%
\def\lsize{smaller}\def\lllsize{smaller}%
\resetmathfonts \setleading{10.5pt}}
\def\smallerfonts{%
@@ -1658,6 +1667,7 @@ where each line of input produces a line of output.}
\let\tenbf=\smallerbf \let\tentt=\smallertt \let\smallcaps=\smallersc
\let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy
\let\tenttsl=\smallerttsl
+ \def\curfontsize{smaller}%
\def\lsize{smaller}\def\lllsize{smaller}%
\resetmathfonts \setleading{9.5pt}}
@@ -1715,13 +1725,18 @@ where each line of input produces a line of output.}
\def\cite#1{{\sl #1}\futurelet\next\smartitalicx}
\let\i=\smartitalic
+\let\slanted=\smartslanted
\let\var=\smartslanted
\let\dfn=\smartslanted
\let\emph=\smartitalic
+% @b, explicit bold.
\def\b#1{{\bf #1}}
\let\strong=\b
+% @sansserif, explicit sans.
+\def\sansserif#1{{\sf #1}}
+
% We can't just use \exhyphenpenalty, because that only has effect at
% the end of a paragraph. Restore normal hyphenation at the end of the
% group within which \nohyphenation is presumably called.
@@ -1929,6 +1944,10 @@ where each line of input produces a line of output.}
\def\sc#1{{\smallcaps#1}} % smallcaps font
\def\ii#1{{\it #1}} % italic font
+% @acronym for "FBI", "NATO", and the like.
+% We print this one point size smaller, since it's intended for
+% all-uppercase.
+%
\def\acronym#1{\doacronym #1,,\finish}
\def\doacronym#1,#2,#3\finish{%
{\selectfonts\lsize #1}%
@@ -1938,10 +1957,70 @@ where each line of input produces a line of output.}
\fi
}
-% @pounds{} is a sterling sign, which is in the CM italic font.
+% @abbr for "Comput. J." and the like.
+% No font change, but don't do end-of-sentence spacing.
+%
+\def\abbr#1{\doabbr #1,,\finish}
+\def\doabbr#1,#2,#3\finish{%
+ {\frenchspacing #1}%
+ \def\temp{#2}%
+ \ifx\temp\empty \else
+ \space ({\unsepspaces \ignorespaces \temp \unskip})%
+ \fi
+}
+
+% @pounds{} is a sterling sign, which Knuth put in the CM italic font.
%
\def\pounds{{\it\$}}
+% @euro{} comes from a separate font, depending on the current style.
+% We use the free feym* fonts from the eurosym package by Henrik
+% Theiling, which support regular, slanted, bold and bold slanted (and
+% "outlined" (blackboard board, sort of) versions, which we don't need).
+% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
+%
+% Although only regular is the truly official Euro symbol, we ignore
+% that. The Euro is designed to be slightly taller than the regular
+% font height.
+%
+% feymr - regular
+% feymo - slanted
+% feybr - bold
+% feybo - bold slanted
+%
+% There is no good (free) typewriter version, to my knowledge.
+% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
+% Hmm.
+%
+% Also doesn't work in math. Do we need to do math with euro symbols?
+% Hope not.
+%
+%
+\def\euro{{\eurofont e}}
+\def\eurofont{%
+ % We set the font at each command, rather than predefining it in
+ % \textfonts and the other font-switching commands, so that
+ % installations which never need the symbol don't have to have the
+ % font installed.
+ %
+ % There is only one designed size (nominal 10pt), so we always scale
+ % that to the current nominal size.
+ %
+ % By the way, simply using "at 1em" works for cmr10 and the like, but
+ % does not work for cmbx10 and other extended/shrunken fonts.
+ %
+ \def\eurosize{\csname\curfontsize nominalsize\endcsname}%
+ %
+ \ifx\curfontstyle\bfstylename
+ % bold:
+ \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
+ \else
+ % regular:
+ \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
+ \fi
+ \thiseurofont
+}
+
% @registeredsymbol - R in a circle. The font for the R should really
% be smaller yet, but lllsize is the best we can do for now.
% Adapted from the plain.tex definition of \copyright.
@@ -2265,17 +2344,13 @@ where each line of input produces a line of output.}
% \parskip glue -- logically it's part of the @item we just started.
\nobreak \vskip-\parskip
%
- % Stop a page break at the \parskip glue coming up. (Unfortunately
- % we can't prevent a possible page break at the following
- % \baselineskip glue.) However, if what follows is an environment
- % such as @example, there will be no \parskip glue; then
- % the negative vskip we just would cause the example and the item to
- % crash together. So we use this bizarre value of 10001 as a signal
- % to \aboveenvbreak to insert \parskip glue after all.
- % (Possibly there are other commands that could be followed by
- % @example which need the same treatment, but not section titles; or
- % maybe section titles are the only special case and they should be
- % penalty 10001...)
+ % Stop a page break at the \parskip glue coming up. However, if
+ % what follows is an environment such as @example, there will be no
+ % \parskip glue; then the negative vskip we just inserted would
+ % cause the example and the item to crash together. So we use this
+ % bizarre value of 10001 as a signal to \aboveenvbreak to insert
+ % \parskip glue after all. Section titles are handled this way also.
+ %
\penalty 10001
\endgroup
\itemxneedsnegativevskipfalse
@@ -2301,15 +2376,26 @@ where each line of input produces a line of output.}
% @table, @ftable, @vtable.
\envdef\table{%
\let\itemindex\gobble
- \tablex
+ \tablecheck{table}%
}
\envdef\ftable{%
\def\itemindex ##1{\doind {fn}{\code{##1}}}%
- \tablex
+ \tablecheck{ftable}%
}
\envdef\vtable{%
\def\itemindex ##1{\doind {vr}{\code{##1}}}%
- \tablex
+ \tablecheck{vtable}%
+}
+\def\tablecheck#1{%
+ \ifnum \the\catcode`\^^M=\active
+ \endgroup
+ \errmessage{This command won't work in this context; perhaps the problem is
+ that we are \inenvironment\thisenv}%
+ \def\next{\doignore{#1}}%
+ \else
+ \let\next\tablex
+ \fi
+ \next
}
\def\tablex#1{%
\def\itemindicate{#1}%
@@ -2620,7 +2706,10 @@ where each line of input produces a line of output.}
\startsavinginserts
%
% @item within a multitable starts a normal row.
- \let\item\crcr
+ % We use \def instead of \let so that if one of the multitable entries
+ % contains an @itemize, we don't choke on the \item (seen as \crcr aka
+ % \endtemplate) expanding \doitemize.
+ \def\item{\crcr}%
%
\tolerance=9500
\hbadness=9500
@@ -2705,19 +2794,17 @@ where each line of input produces a line of output.}
\global\setpercentfalse
}
-\def\setmultitablespacing{% test to see if user has set \multitablelinespace.
-% If so, do nothing. If not, give it an appropriate dimension based on
-% current baselineskip.
+\def\setmultitablespacing{%
+ \def\multistrut{\strut}% just use the standard line spacing
+ %
+ % Compute \multitablelinespace (if not defined by user) for use in
+ % \multitableparskip calculation. We used define \multistrut based on
+ % this, but (ironically) that caused the spacing to be off.
+ % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100.
\ifdim\multitablelinespace=0pt
\setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip
\global\advance\multitablelinespace by-\ht0
-%% strut to put in table in case some entry doesn't have descenders,
-%% to keep lines equally spaced
-\let\multistrut = \strut
-\else
-%% FIXME: what is \box0 supposed to be?
-\gdef\multistrut{\vrule height\multitablelinespace depth\dp0
-width0pt\relax} \fi
+\fi
%% Test to see if parskip is larger than space between lines of
%% table. If not, do nothing.
%% If so, set to same dimension as multitablelinespace.
@@ -2786,14 +2873,14 @@ width0pt\relax} \fi
\doignorecount = 0
%
% Swallow text until we reach the matching `@end #1'.
- \dodoignore {#1}%
+ \dodoignore{#1}%
}
{ \catcode`_=11 % We want to use \_STOP_ which cannot appear in texinfo source.
\obeylines %
%
\gdef\dodoignore#1{%
- % #1 contains the string `ifinfo'.
+ % #1 contains the command name as a string, e.g., `ifinfo'.
%
% Define a command to find the next `@end #1', which must be on a line
% by itself.
@@ -2947,9 +3034,8 @@ width0pt\relax} \fi
% Index generation facilities
% Define \newwrite to be identical to plain tex's \newwrite
-% except not \outer, so it can be used within \newindex.
-{\catcode`\@=11
-\gdef\newwrite{\alloc@7\write\chardef\sixt@@n}}
+% except not \outer, so it can be used within macros and \if's.
+\edef\newwrite{\makecsname{ptexnewwrite}}
% \newindex {foo} defines an index named foo.
% It automatically defines \fooindex such that
@@ -3141,6 +3227,7 @@ width0pt\relax} \fi
\definedummyword{enddots}%
\definedummyword{equiv}%
\definedummyword{error}%
+ \definedummyword{euro}%
\definedummyword{expansion}%
\definedummyword{minus}%
\definedummyword{pounds}%
@@ -3279,6 +3366,7 @@ width0pt\relax} \fi
\def\enddots{...}%
\def\equiv{==}%
\def\error{error}%
+ \def\euro{euro}%
\def\expansion{==>}%
\def\minus{-}%
\def\pounds{pounds}%
@@ -3408,17 +3496,18 @@ width0pt\relax} \fi
\dosubindwrite
%
\ifx\lastskipmacro\zeroskipmacro
- % if \lastskip was zero, perhaps the last item was a
- % penalty, and perhaps it was >=10000, e.g., a \nobreak.
- % In that case, we want to re-insert the penalty; since we
- % just inserted a non-discardable item, any following glue
- % (such as a \parskip) would be a breakpoint. For example:
+ % If \lastskip was zero, perhaps the last item was a penalty, and
+ % perhaps it was >=10000, e.g., a \nobreak. In that case, we want
+ % to re-insert the same penalty (values >10000 are used for various
+ % signals); since we just inserted a non-discardable item, any
+ % following glue (such as a \parskip) would be a breakpoint. For example:
+ %
% @deffn deffn-whatever
% @vindex index-whatever
% Description.
% would allow a break between the index-whatever whatsit
% and the "Description." paragraph.
- \ifnum\count255>9999 \nobreak \fi
+ \ifnum\count255>9999 \penalty\count255 \fi
\else
% On the other hand, if we had a nonzero \lastskip,
% this make-up glue would be preceded by a non-discardable item
@@ -3516,7 +3605,10 @@ width0pt\relax} \fi
\removelastskip
%
% We like breaks before the index initials, so insert a bonus.
- \penalty -300
+ \nobreak
+ \vskip 0pt plus 3\baselineskip
+ \penalty 0
+ \vskip 0pt plus -3\baselineskip
%
% Typeset the initial. Making this add up to a whole number of
% baselineskips increases the chance of the dots lining up from column
@@ -3526,10 +3618,9 @@ width0pt\relax} \fi
% No shrink because it confuses \balancecolumns.
\vskip 1.67\baselineskip plus .5\baselineskip
\leftline{\secbf #1}%
- \vskip .33\baselineskip plus .1\baselineskip
- %
% Do our best not to break after the initial.
\nobreak
+ \vskip .33\baselineskip plus .1\baselineskip
}}
% \entry typesets a paragraph consisting of the text (#1), dot leaders, and
@@ -4198,11 +4289,11 @@ width0pt\relax} \fi
\ifx\temptype\Ynothingkeyword
\setbox0 = \hbox{}%
\def\toctype{unnchap}%
- \def\thischapter{#1}%
+ \gdef\thischapter{#1}%
\else\ifx\temptype\Yomitfromtockeyword
\setbox0 = \hbox{}% contents like unnumbered, but no toc entry
\def\toctype{omit}%
- \xdef\thischapter{}%
+ \gdef\thischapter{}%
\else\ifx\temptype\Yappendixkeyword
\setbox0 = \hbox{\putwordAppendix{} #3\enspace}%
\def\toctype{app}%
@@ -4350,14 +4441,14 @@ width0pt\relax} \fi
% glue accumulate. (Not a breakpoint because it's preceded by a
% discardable item.)
\vskip-\parskip
- %
- % This \nobreak is purely so the last item on the list is a \penalty
- % of 10000. This is so other code, for instance \parsebodycommon, can
- % check for and avoid allowing breakpoints. Otherwise, it would
- % insert a valid breakpoint between:
+ %
+ % This is purely so the last item on the list is a known \penalty >
+ % 10000. This is so \startdefun can avoid allowing breakpoints after
+ % section headings. Otherwise, it would insert a valid breakpoint between:
+ %
% @section sec-whatever
% @deffn def-whatever
- \nobreak
+ \penalty 10001
}
@@ -4702,7 +4793,8 @@ width0pt\relax} \fi
% start of the next paragraph will insert \parskip.
%
\def\aboveenvbreak{{%
- % =10000 instead of <10000 because of a special case in \itemzzz, q.v.
+ % =10000 instead of <10000 because of a special case in \itemzzz and
+ % \sectionheading, q.v.
\ifnum \lastpenalty=10000 \else
\advance\envskipamount by \parskip
\endgraf
@@ -5063,8 +5155,7 @@ width0pt\relax} \fi
}
% @copying ... @end copying.
-% Save the text away for @insertcopying later. Many commands won't be
-% allowed in this context, but that's ok.
+% Save the text away for @insertcopying later.
%
% We save the uninterpreted tokens, rather than creating a box.
% Saving the text in a box would be much easier, but then all the
@@ -5073,62 +5164,14 @@ width0pt\relax} \fi
% file; b) letting users define the frontmatter in as flexible order as
% possible is very desirable.
%
-\def\copying{\begingroup
- % Define a command to swallow text until we reach `@end copying'.
- % \ is the escape char in this texinfo.tex file, so it is the
- % delimiter for the command; @ will be the escape char when we read
- % it, but that doesn't matter.
- \long\def\docopying##1\end copying{\gdef\copyingtext{##1}\enddocopying}%
- %
- % We must preserve ^^M's in the input file; see \insertcopying below.
- \catcode`\^^M = \active
- \docopying
-}
-
-% What we do to finish off the copying text.
-%
-\def\enddocopying{\endgroup\ignorespaces}
-
-% @insertcopying. Here we must play games with ^^M's. On the one hand,
-% we need them to delimit commands such as `@end quotation', so they
-% must be active. On the other hand, we certainly don't want every
-% end-of-line to be a \par, as would happen with the normal active
-% definition of ^^M. On the third hand, two ^^M's in a row should still
-% generate a \par.
-%
-% Our approach is to make ^^M insert a space and a penalty1 normally;
-% then it can also check if \lastpenalty=1. If it does, then manually
-% do \par.
-%
-% This messes up the normal definitions of @c[omment], so we redefine
-% it. Similarly for @ignore. (These commands are used in the gcc
-% manual for man page generation.)
-%
-% Seems pretty fragile, most line-oriented commands will presumably
-% fail, but for the limited use of getting the copying text (which
-% should be quite simple) inserted, we can hope it's ok.
-%
-{\catcode`\^^M=\active %
-\gdef\insertcopying{\begingroup %
- \parindent = 0pt % looks wrong on title page
- \def^^M{%
- \ifnum \lastpenalty=1 %
- \par %
- \else %
- \space \penalty 1 %
- \fi %
- }%
- %
- % Fix @c[omment] for catcode 13 ^^M's.
- \def\c##1^^M{\ignorespaces}%
- \let\comment = \c %
- %
- % Don't bother jumping through all the hoops that \doignore does, it
- % would be very hard since the catcodes are already set.
- \long\def\ignore##1\end ignore{\ignorespaces}%
- %
- \copyingtext %
-\endgroup}%
+\def\copying{\checkenv{}\begingroup\scanargctxt\docopying}
+\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}}
+%
+\def\insertcopying{%
+ \begingroup
+ \parindent = 0pt % paragraph indentation looks wrong on title page
+ \scanexp\copyingtext
+ \endgroup
}
\message{defuns,}
@@ -5146,10 +5189,11 @@ width0pt\relax} \fi
% If there are two @def commands in a row, we'll have a \nobreak,
% which is there to keep the function description together with its
% header. But if there's nothing but headers, we need to allow a
- % break somewhere. Check for penalty 10002 (inserted by
- % \defargscommonending) instead of 10000, since the sectioning
- % commands insert a \penalty10000, and we don't want to allow a break
- % between a section heading and a defun.
+ % break somewhere. Check specifically for penalty 10002, inserted
+ % by \defargscommonending, instead of 10000, since the sectioning
+ % commands also insert a nobreak penalty, and we don't want to allow
+ % a break between a section heading and a defun.
+ %
\ifnum\lastpenalty=10002 \penalty2000 \fi
%
% Similarly, after a section heading, do not allow a break.
@@ -5473,7 +5517,7 @@ width0pt\relax} \fi
\ifx\eTeXversion\undefined
\newwrite\macscribble
\def\scantokens#1{%
- \toks0={#1\endinput}%
+ \toks0={#1}%
\immediate\openout\macscribble=\jobname.tmp
\immediate\write\macscribble{\the\toks0}%
\immediate\closeout\macscribble
@@ -5486,7 +5530,11 @@ width0pt\relax} \fi
\newlinechar`\^^M
\let\xeatspaces\eatspaces
% Undo catcode changes of \startcontents and \doprintindex
- \catcode`\@=0 \catcode`\\=\other \escapechar=`\@
+ % When called from @insertcopying or (short)caption, we need active
+ % backslash to get it printed correctly. Previously, we had
+ % \catcode`\\=\other instead. We'll see whether a problem appears
+ % with macro expansion. --kasal, 19aug04
+ \catcode`\@=0 \catcode`\\=\active \escapechar=`\@
% ... and \example
\spaceisspace
%
@@ -5498,6 +5546,11 @@ width0pt\relax} \fi
\endgroup
}
+\def\scanexp#1{%
+ \edef\temp{\noexpand\scanmacro{#1}}%
+ \temp
+}
+
\newcount\paramno % Count of parameters
\newtoks\macname % Macro name
\newif\ifrecursive % Is it recursive?
@@ -5505,13 +5558,15 @@ width0pt\relax} \fi
% \do\macro1\do\macro2...
% Utility routines.
-% This does \let #1 = #2, except with \csnames.
+% This does \let #1 = #2, with \csnames; that is,
+% \let \csname#1\endcsname = \csname#2\endcsname
+% (except of course we have to play expansion games).
+%
\def\cslet#1#2{%
-\expandafter\expandafter
-\expandafter\let
-\expandafter\expandafter
-\csname#1\endcsname
-\csname#2\endcsname}
+ \expandafter\let
+ \csname#1\expandafter\endcsname
+ \csname#2\endcsname
+}
% Trim leading and trailing spaces off a string.
% Concepts from aro-bend problem 15 (see CTAN).
@@ -5538,30 +5593,36 @@ width0pt\relax} \fi
% done by making ^^M (\endlinechar) catcode 12 when reading the macro
% body, and then making it the \newlinechar in \scanmacro.
-\def\macrobodyctxt{%
- \catcode`\~=\other
+\def\scanctxt{%
+ \catcode`\"=\other
+ \catcode`\+=\other
+ \catcode`\<=\other
+ \catcode`\>=\other
+ \catcode`\@=\other
\catcode`\^=\other
\catcode`\_=\other
\catcode`\|=\other
- \catcode`\<=\other
- \catcode`\>=\other
- \catcode`\+=\other
+ \catcode`\~=\other
+}
+
+\def\scanargctxt{%
+ \scanctxt
+ \catcode`\\=\other
+ \catcode`\^^M=\other
+}
+
+\def\macrobodyctxt{%
+ \scanctxt
\catcode`\{=\other
\catcode`\}=\other
- \catcode`\@=\other
\catcode`\^^M=\other
- \usembodybackslash}
+ \usembodybackslash
+}
\def\macroargctxt{%
- \catcode`\~=\other
- \catcode`\^=\other
- \catcode`\_=\other
- \catcode`\|=\other
- \catcode`\<=\other
- \catcode`\>=\other
- \catcode`\+=\other
- \catcode`\@=\other
- \catcode`\\=\other}
+ \scanctxt
+ \catcode`\\=\other
+}
% \mbodybackslash is the definition of \ in @macro bodies.
% It maps \foo\ => \csname macarg.foo\endcsname => #N
@@ -6367,11 +6428,14 @@ width0pt\relax} \fi
\endgroup}
-% @float FLOATTYPE,LOC ... @end float for displayed figures, tables, etc.
-% We don't actually implement floating yet, we just plop the float "here".
-% But it seemed the best name for the future.
+% @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables,
+% etc. We don't actually implement floating yet, we always include the
+% float "here". But it seemed the best name for the future.
%
-\envparseargdef\float{\dofloat #1,,,\finish}
+\envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish}
+
+% There may be a space before second and/or third parameter; delete it.
+\def\eatcommaspace#1, {#1,}
% #1 is the optional FLOATTYPE, the text label for this float, typically
% "Figure", "Table", "Example", etc. Can't contain commas. If omitted,
@@ -6392,6 +6456,10 @@ width0pt\relax} \fi
\let\thisshortcaption=\empty
%
% don't lose footnotes inside @float.
+ %
+ % BEWARE: when the floats start float, we have to issue warning whenever an
+ % insert appears inside a float which could possibly float. --kasal, 26may04
+ %
\startsavinginserts
%
% We can't be used inside a paragraph.
@@ -6476,7 +6544,7 @@ width0pt\relax} \fi
\fi
%
% caption text.
- \appendtomacro\captionline\thiscaption
+ \appendtomacro\captionline{\scanexp\thiscaption}%
\fi
%
% If we have anything to print, print it, with space before.
@@ -6484,6 +6552,9 @@ width0pt\relax} \fi
\ifx\captionline\empty \else
\vskip.5\parskip
\captionline
+ %
+ % Space below caption.
+ \vskip\parskip
\fi
%
% If have an xref label, write the list of floats info. Do this
@@ -6494,37 +6565,44 @@ width0pt\relax} \fi
% caption if specified, else the full caption if specified, else nothing.
{%
\atdummies \turnoffactive \otherbackslash
- \immediate\write\auxfile{@xrdef{\floatlabel-lof}{%
- \floatident
- \ifx\thisshortcaption\empty
- \ifx\thiscaption\empty \else : \thiscaption \fi
- \else
- : \thisshortcaption
- \fi
- }}%
+ % since we read the caption text in the macro world, where ^^M
+ % is turned into a normal character, we have to scan it back, so
+ % we don't write the literal three characters "^^M" into the aux file.
+ \scanexp{%
+ \xdef\noexpand\gtemp{%
+ \ifx\thisshortcaption\empty
+ \thiscaption
+ \else
+ \thisshortcaption
+ \fi
+ }%
+ }%
+ \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident
+ \ifx\gtemp\empty \else : \gtemp \fi}}%
}%
\fi
- %
- % Space below caption, if we printed anything.
- \ifx\printedsomething\empty \else \vskip\parskip \fi
\egroup % end of \vtop
+ %
+ % place the captured inserts
+ %
+ % BEWARE: when the floats start float, we have to issue warning whenever an
+ % insert appears inside a float which could possibly float. --kasal, 26may04
+ %
\checkinserts
}
% Append the tokens #2 to the definition of macro #1, not expanding either.
%
-\newtoks\appendtomacroAtoks
-\newtoks\appendtomacroBtoks
\def\appendtomacro#1#2{%
- \appendtomacroAtoks = \expandafter{#1}%
- \appendtomacroBtoks = {#2}%
- \edef#1{\the\appendtomacroAtoks \the\appendtomacroBtoks}%
+ \expandafter\def\expandafter#1\expandafter{#1#2}%
}
-% @caption, @shortcaption are easy.
+% @caption, @shortcaption
%
-\long\def\caption#1{\checkenv\float \def\thiscaption{#1}}
-\def\shortcaption#1{\checkenv\float \def\thisshortcaption{#1}}
+\def\caption{\docaption\thiscaption}
+\def\shortcaption{\docaption\thisshortcaption}
+\def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption}
+\def\defcaption#1#2{\egroup \def#1{#2}}
% The parameter is the control sequence identifying the counter we are
% going to use. Create it if it doesn't exist and assign it to \floatno.