summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2023-03-09 20:03:56 +0200
committerArnold D. Robbins <arnold@skeeve.com>2023-03-09 20:03:56 +0200
commit7d034f0a149a972b83aa2a6f1ad8b946721c5b27 (patch)
treed01ada8b08d68dc65de8497447ae3d45222b3090 /doc
parentf70b2f30551f5282e0dac96c45d21d89616ace4d (diff)
parentaf6e7bb82bed2f07f1d6e91dc96b5c6f53d759c7 (diff)
downloadgawk-7d034f0a149a972b83aa2a6f1ad8b946721c5b27.tar.gz
Merge branch 'master' into feature/docit
Diffstat (limited to 'doc')
-rw-r--r--doc/ChangeLog16
-rw-r--r--doc/Makefile.am50
-rw-r--r--doc/Makefile.in99
-rw-r--r--doc/gawk.info786
-rw-r--r--doc/gawk.texi12
-rw-r--r--doc/gawk_api-figure1.eps (renamed from doc/api-figure1.eps)0
-rw-r--r--doc/gawk_api-figure1.fig (renamed from doc/api-figure1.fig)0
-rw-r--r--doc/gawk_api-figure1.pdf (renamed from doc/api-figure1.pdf)bin10707 -> 10707 bytes
-rw-r--r--doc/gawk_api-figure1.png (renamed from doc/api-figure1.png)bin9183 -> 9183 bytes
-rw-r--r--doc/gawk_api-figure1.txt (renamed from doc/api-figure1.txt)0
-rw-r--r--doc/gawk_api-figure2.eps (renamed from doc/api-figure2.eps)0
-rw-r--r--doc/gawk_api-figure2.fig (renamed from doc/api-figure2.fig)0
-rw-r--r--doc/gawk_api-figure2.pdf (renamed from doc/api-figure2.pdf)bin12031 -> 12031 bytes
-rw-r--r--doc/gawk_api-figure2.png (renamed from doc/api-figure2.png)bin8983 -> 8983 bytes
-rw-r--r--doc/gawk_api-figure2.txt (renamed from doc/api-figure2.txt)0
-rw-r--r--doc/gawk_api-figure3.eps (renamed from doc/api-figure3.eps)0
-rw-r--r--doc/gawk_api-figure3.fig (renamed from doc/api-figure3.fig)0
-rw-r--r--doc/gawk_api-figure3.pdf (renamed from doc/api-figure3.pdf)bin12345 -> 12345 bytes
-rw-r--r--doc/gawk_api-figure3.png (renamed from doc/api-figure3.png)bin8860 -> 8860 bytes
-rw-r--r--doc/gawk_api-figure3.txt (renamed from doc/api-figure3.txt)0
-rw-r--r--doc/gawk_array-elements.eps (renamed from doc/array-elements.eps)0
-rw-r--r--doc/gawk_array-elements.fig (renamed from doc/array-elements.fig)0
-rw-r--r--doc/gawk_array-elements.pdf (renamed from doc/array-elements.pdf)bin6796 -> 6796 bytes
-rw-r--r--doc/gawk_array-elements.png (renamed from doc/array-elements.png)bin6091 -> 6091 bytes
-rw-r--r--doc/gawk_array-elements.txt (renamed from doc/array-elements.txt)0
-rw-r--r--doc/gawk_general-program.eps (renamed from doc/general-program.eps)0
-rw-r--r--doc/gawk_general-program.fig (renamed from doc/general-program.fig)0
-rw-r--r--doc/gawk_general-program.pdf (renamed from doc/general-program.pdf)bin5613 -> 5613 bytes
-rw-r--r--doc/gawk_general-program.png (renamed from doc/general-program.png)bin6078 -> 6078 bytes
-rw-r--r--doc/gawk_general-program.txt (renamed from doc/general-program.txt)0
-rw-r--r--doc/gawk_process-flow.eps (renamed from doc/process-flow.eps)0
-rw-r--r--doc/gawk_process-flow.fig (renamed from doc/process-flow.fig)0
-rw-r--r--doc/gawk_process-flow.pdf (renamed from doc/process-flow.pdf)bin6583 -> 6583 bytes
-rw-r--r--doc/gawk_process-flow.png (renamed from doc/process-flow.png)bin7856 -> 7856 bytes
-rw-r--r--doc/gawk_process-flow.txt (renamed from doc/process-flow.txt)0
-rw-r--r--doc/gawk_statist.eps (renamed from doc/statist.eps)0
-rw-r--r--doc/gawk_statist.jpg (renamed from doc/statist.jpg)bin20400 -> 20400 bytes
-rw-r--r--doc/gawk_statist.pdf (renamed from doc/statist.pdf)bin5313 -> 5313 bytes
-rw-r--r--doc/gawk_statist.txt (renamed from doc/statist.txt)0
-rw-r--r--doc/gawkinet.info22
-rw-r--r--doc/gawkinet.texi2
-rw-r--r--doc/gawktexi.in12
-rw-r--r--doc/gawkworkflow.info163
-rw-r--r--doc/gawkworkflow.texi17
44 files changed, 640 insertions, 539 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index c7c03568..26357a03 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,19 @@
+2023-03-09 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkworkflow.texi (UPDATE-MONTH, EDITION): Updated.
+ Copyright, add current year.
+ (Submitting Your Changes): Add a note about diffs for generated
+ files also being in the output of `git diff'. Thanks to Manual
+ Collado for the suggestion.
+ (New feature development): Fix the text of a command.
+
+2023-03-09 Manuel Collado <mcollado2011@gmail.com>
+
+ * gawktexi.in, gawkinet.texi, *.{png,jpg,eps,pdf,txt,fig}: rename
+ image file names to ensure a gawk_ prefix (except *flashlight*).
+ * Makefile.am: Ditto. And install image files for .info and .html
+ docs.
+
2023-03-02 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (Input Parsers): Clarify and improve some of the
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 8cb061f7..ba04c8c8 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -29,27 +29,24 @@ info_TEXINFOS = gawk.texi gawkinet.texi gawkworkflow.texi pm-gawk.texi
man_MANS = gawk.1 gawkbug.1 pm-gawk.1
+png_images = gawk_api-figure1.png gawk_api-figure2.png gawk_api-figure3.png \
+ gawk_array-elements.png gawk_general-program.png gawk_process-flow.png
+html_images = $(png_images) gawk_statist.jpg
+
+fig_images = $(png_images:%.png=%.fig)
+txt_images = $(png_images:%.png=%.txt) statist.txt
+eps_images = $(txt_images:%.txt=%.eps)
+pdf_images = $(txt_images:%.txt=%.pdf)
+
EXTRA_DIST = ChangeLog ChangeLog.0 ChangeLog.1 \
README.card ad.block setter.outline \
awkcard.in awkforai.txt texinfo.tex cardfonts \
- api-figure1.eps api-figure1.fig api-figure1.pdf \
- api-figure1.png api-figure1.txt \
- api-figure2.eps api-figure2.fig api-figure2.pdf \
- api-figure2.png api-figure2.txt \
- api-figure3.eps api-figure3.fig api-figure3.pdf \
- api-figure3.png api-figure3.txt \
- array-elements.eps array-elements.fig array-elements.pdf \
- array-elements.png array-elements.txt \
+ $(fig_images) $(txt_images) $(eps_images) $(pdf_images) \
gawktexi.in sidebar.awk \
- general-program.eps general-program.fig general-program.pdf \
- general-program.png general-program.txt \
it \
- process-flow.eps process-flow.fig process-flow.pdf \
- process-flow.png process-flow.txt \
macros colors no.colors $(man_MANS) \
lflashlight-small.xpic lflashlight.eps lflashlight.pdf \
rflashlight-small.xpic rflashlight.eps rflashlight.pdf \
- statist.jpg statist.eps statist.pdf statist.txt \
wordlist wordlist2 wordlist3 wordlist4 wordlist5 wordlist6 \
bc_notes
@@ -159,3 +156,30 @@ spellinet:
@echo ==== gawkinet.texi ====
export LC_ALL=C ; spell "$(srcdir)"/gawkinet.texi | \
sort -u | comm -23 - "$(srcdir)"/wordlist4
+
+# Install/unistall graphic image files in the info/ dir
+
+imagedir = $(infodir)
+image_DATA = $(html_images)
+
+# Install/unistall graphic image files in the html doc dir
+
+install-html-local:
+ @$(NORMAL_INSTALL)
+ @list='$(html_images)'; test -n "$(htmldir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(htmldir)" || exit 1; \
+ fi; \
+ for p in $$list; do \
+ $(INSTALL_DATA) $$p "$(DESTDIR)$(htmldir)" || exit $$?; \
+ done;
+
+uninstall-local:
+ @$(NORMAL_UNINSTALL)
+ @list='$(html_images)'; test -n "$(htmldir)" || list=; \
+ for p in $$list; do \
+ echo " rm -rf '$(DESTDIR)$(htmldir)/$$p'"; \
+ rm -rf "$(DESTDIR)$(htmldir)/$$p"; \
+ done
+
diff --git a/doc/Makefile.in b/doc/Makefile.in
index 57cea374..47a1413b 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -38,6 +38,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
#
+
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
@@ -196,7 +197,8 @@ am__can_run_installinfo = \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
-am__installdirs = "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"
+am__installdirs = "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)" \
+ "$(DESTDIR)$(imagedir)"
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -227,6 +229,7 @@ am__uninstall_files_from_dir = { \
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
+DATA = $(image_DATA)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(srcdir)/Makefile.in \
$(top_srcdir)/build-aux/texinfo.tex ChangeLog texinfo.tex
@@ -364,27 +367,23 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
info_TEXINFOS = gawk.texi gawkinet.texi gawkworkflow.texi pm-gawk.texi
man_MANS = gawk.1 gawkbug.1 pm-gawk.1
+png_images = gawk_api-figure1.png gawk_api-figure2.png gawk_api-figure3.png \
+ gawk_array-elements.png gawk_general-program.png gawk_process-flow.png
+
+html_images = $(png_images) gawk_statist.jpg
+fig_images = $(png_images:%.png=%.fig)
+txt_images = $(png_images:%.png=%.txt) statist.txt
+eps_images = $(txt_images:%.txt=%.eps)
+pdf_images = $(txt_images:%.txt=%.pdf)
EXTRA_DIST = ChangeLog ChangeLog.0 ChangeLog.1 \
README.card ad.block setter.outline \
awkcard.in awkforai.txt texinfo.tex cardfonts \
- api-figure1.eps api-figure1.fig api-figure1.pdf \
- api-figure1.png api-figure1.txt \
- api-figure2.eps api-figure2.fig api-figure2.pdf \
- api-figure2.png api-figure2.txt \
- api-figure3.eps api-figure3.fig api-figure3.pdf \
- api-figure3.png api-figure3.txt \
- array-elements.eps array-elements.fig array-elements.pdf \
- array-elements.png array-elements.txt \
+ $(fig_images) $(txt_images) $(eps_images) $(pdf_images) \
gawktexi.in sidebar.awk \
- general-program.eps general-program.fig general-program.pdf \
- general-program.png general-program.txt \
it \
- process-flow.eps process-flow.fig process-flow.pdf \
- process-flow.png process-flow.txt \
macros colors no.colors $(man_MANS) \
lflashlight-small.xpic lflashlight.eps lflashlight.pdf \
rflashlight-small.xpic rflashlight.eps rflashlight.pdf \
- statist.jpg statist.eps statist.pdf statist.txt \
wordlist wordlist2 wordlist3 wordlist4 wordlist5 wordlist6 \
bc_notes
@@ -403,6 +402,10 @@ PAPEROPTS = -dpaper=letter -P-pletter
# Use this if your troff can correctly handle macros from 'colors' file
AWKCARD = awkcard.ps
+
+# Install/unistall graphic image files in the info/ dir
+imagedir = $(infodir)
+image_DATA = $(html_images)
all: all-am
.SUFFIXES:
@@ -639,6 +642,27 @@ uninstall-man1:
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
+install-imageDATA: $(image_DATA)
+ @$(NORMAL_INSTALL)
+ @list='$(image_DATA)'; test -n "$(imagedir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(imagedir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(imagedir)" || exit 1; \
+ fi; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(imagedir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(imagedir)" || exit $$?; \
+ done
+
+uninstall-imageDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(image_DATA)'; test -n "$(imagedir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ dir='$(DESTDIR)$(imagedir)'; $(am__uninstall_files_from_dir)
tags TAGS:
ctags CTAGS:
@@ -683,9 +707,9 @@ distdir-am: $(DISTFILES)
dist-info
check-am: all-am
check: check-am
-all-am: Makefile $(INFO_DEPS) $(MANS)
+all-am: Makefile $(INFO_DEPS) $(MANS) $(DATA)
installdirs:
- for dir in "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"; do \
+ for dir in "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(imagedir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
@@ -739,7 +763,7 @@ info: info-am
info-am: $(INFO_DEPS)
-install-data-am: install-info-am install-man
+install-data-am: install-imageDATA install-info-am install-man
install-dvi: install-dvi-am
@@ -762,7 +786,7 @@ install-exec-am:
install-html: install-html-am
-install-html-am: $(HTMLS)
+install-html-am: $(HTMLS) install-html-local
@$(NORMAL_INSTALL)
@list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \
if test -n "$$list"; then \
@@ -875,8 +899,9 @@ ps: ps-am
ps-am: $(PSS)
-uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \
- uninstall-man uninstall-pdf-am uninstall-ps-am
+uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-imageDATA \
+ uninstall-info-am uninstall-local uninstall-man \
+ uninstall-pdf-am uninstall-ps-am
uninstall-man: uninstall-man1
@@ -887,15 +912,16 @@ uninstall-man: uninstall-man1
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-man1 install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-aminfo \
+ install-html-am install-html-local install-imageDATA \
+ install-info install-info-am install-man install-man1 \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-aminfo \
maintainer-clean-generic mostlyclean mostlyclean-aminfo \
mostlyclean-generic pdf pdf-am pdf-local ps ps-am tags-am \
uninstall uninstall-am uninstall-dvi-am uninstall-html-am \
- uninstall-info-am uninstall-man uninstall-man1 \
- uninstall-pdf-am uninstall-ps-am
+ uninstall-imageDATA uninstall-info-am uninstall-local \
+ uninstall-man uninstall-man1 uninstall-pdf-am uninstall-ps-am
.PRECIOUS: Makefile
@@ -989,6 +1015,27 @@ spellinet:
export LC_ALL=C ; spell "$(srcdir)"/gawkinet.texi | \
sort -u | comm -23 - "$(srcdir)"/wordlist4
+# Install/unistall graphic image files in the html doc dir
+
+install-html-local:
+ @$(NORMAL_INSTALL)
+ @list='$(html_images)'; test -n "$(htmldir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(htmldir)" || exit 1; \
+ fi; \
+ for p in $$list; do \
+ $(INSTALL_DATA) $$p "$(DESTDIR)$(htmldir)" || exit $$?; \
+ done;
+
+uninstall-local:
+ @$(NORMAL_UNINSTALL)
+ @list='$(html_images)'; test -n "$(htmldir)" || list=; \
+ for p in $$list; do \
+ echo " rm -rf '$(DESTDIR)$(htmldir)/$$p'"; \
+ rm -rf "$(DESTDIR)$(htmldir)/$$p"; \
+ done
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/doc/gawk.info b/doc/gawk.info
index a6e28330..42c7ee5b 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -12039,7 +12039,7 @@ figure-array-elements, conceptually, if the element values are eight,
‘"foo"’, ‘""’, and 30.
-
+
| 8 | \"foo\" | \"\" | 30 | Value
+---------+---------+--------+---------+
0 1 2 3 Index"
@@ -25853,7 +25853,7 @@ fields are function pointers. This is shown in *note Figure 17.1:
figure-load-extension.
-
+
Struct
+---+
| |
@@ -25887,7 +25887,7 @@ symbols. One of these function pointers is to a function for
figure-register-new-function.
-
+
+--------------------------------------------+
| |
@@ -25910,7 +25910,7 @@ calling convention. This is shown in *note Figure 17.3:
figure-call-new-function.
-
+
chdir(\"/path\") (*fnptr)(1);
}
+--------------------------------------------+
@@ -33644,7 +33644,7 @@ At the most basic level, the job of a program is to process some input
data and produce results. See *note Figure D.1: figure-general-flow.
-
+
+------+ / \\ +---------+
| Data | -----> < Program > -----> | Results |
+------+ \\_______/ +---------+"
@@ -33660,7 +33660,7 @@ uses the instructions in your program to process the data.
basic set of steps, as shown in *note Figure D.2: figure-process-flow.:
-
+
+----------------+ / More \\ No +----------+
| Initialization | -------> < Data > -------> | Clean Up |
+----------------+ ^ \\ ? / +----------+
@@ -39677,393 +39677,393 @@ Node: Arrays530410
Node: Array Basics531787
Node: Array Intro532637
Ref: figure-array-elements534653
-Ref: Array Intro-Footnote-1537517
-Node: Reference to Elements537649
-Node: Assigning Elements540171
-Node: Array Example540666
-Node: Scanning an Array542635
-Node: Controlling Scanning545732
-Ref: Controlling Scanning-Footnote-1552395
-Node: Numeric Array Subscripts552719
-Node: Uninitialized Subscripts554993
-Node: Delete556672
-Ref: Delete-Footnote-1559486
-Node: Multidimensional559543
-Node: Multiscanning562748
-Node: Arrays of Arrays564420
-Node: Arrays Summary569320
-Node: Functions571509
-Node: Built-in572569
-Node: Calling Built-in573758
-Node: Boolean Functions575805
-Node: Numeric Functions576375
-Ref: Numeric Functions-Footnote-1580568
-Ref: Numeric Functions-Footnote-2581252
-Ref: Numeric Functions-Footnote-3581304
-Node: String Functions581580
-Ref: String Functions-Footnote-1607716
-Ref: String Functions-Footnote-2607850
-Ref: String Functions-Footnote-3608110
-Node: Gory Details608197
-Ref: table-sub-escapes610104
-Ref: table-sub-proposed611750
-Ref: table-posix-sub613260
-Ref: table-gensub-escapes614948
-Ref: Gory Details-Footnote-1615882
-Node: I/O Functions616036
-Ref: table-system-return-values622723
-Ref: I/O Functions-Footnote-1624894
-Ref: I/O Functions-Footnote-2625042
-Node: Time Functions625162
-Ref: Time Functions-Footnote-1636318
-Ref: Time Functions-Footnote-2636394
-Ref: Time Functions-Footnote-3636556
-Ref: Time Functions-Footnote-4636667
-Ref: Time Functions-Footnote-5636785
-Ref: Time Functions-Footnote-6637020
-Node: Bitwise Functions637302
-Ref: table-bitwise-ops637904
-Ref: Bitwise Functions-Footnote-1644158
-Ref: Bitwise Functions-Footnote-2644337
-Node: Type Functions644534
-Node: I18N Functions648127
-Node: User-defined649870
-Node: Definition Syntax650690
-Ref: Definition Syntax-Footnote-1656518
-Node: Function Example656595
-Ref: Function Example-Footnote-1659574
-Node: Function Calling659596
-Node: Calling A Function660190
-Node: Variable Scope661160
-Node: Pass By Value/Reference664214
-Node: Function Caveats666946
-Ref: Function Caveats-Footnote-1669041
-Node: Return Statement669165
-Node: Dynamic Typing672220
-Node: Indirect Calls673176
-Node: Functions Summary684335
-Node: Library Functions687112
-Ref: Library Functions-Footnote-1690660
-Ref: Library Functions-Footnote-2690803
-Node: Library Names690978
-Ref: Library Names-Footnote-1694772
-Ref: Library Names-Footnote-2694999
-Node: General Functions695095
-Node: Strtonum Function696289
-Node: Assert Function699371
-Node: Round Function702823
-Node: Cliff Random Function704401
-Node: Ordinal Functions705434
-Ref: Ordinal Functions-Footnote-1708543
-Ref: Ordinal Functions-Footnote-2708795
-Node: Join Function709009
-Ref: Join Function-Footnote-1710812
-Node: Getlocaltime Function711016
-Node: Readfile Function714790
-Node: Shell Quoting716819
-Node: Isnumeric Function718275
-Node: Data File Management719687
-Node: Filetrans Function720319
-Node: Rewind Function724613
-Node: File Checking726592
-Ref: File Checking-Footnote-1727964
-Node: Empty Files728171
-Node: Ignoring Assigns730238
-Node: Getopt Function731812
-Ref: Getopt Function-Footnote-1747646
-Node: Passwd Functions747858
-Ref: Passwd Functions-Footnote-1757040
-Node: Group Functions757128
-Ref: Group Functions-Footnote-1765266
-Node: Walking Arrays765479
-Node: Library Functions Summary768527
-Node: Library Exercises769951
-Node: Sample Programs770438
-Node: Running Examples771220
-Node: Clones771972
-Node: Cut Program773244
-Node: Egrep Program783685
-Node: Id Program793002
-Node: Split Program803116
-Ref: Split Program-Footnote-1813351
-Node: Tee Program813538
-Node: Uniq Program816447
-Node: Wc Program824312
-Node: Bytes vs. Characters824707
-Node: Using extensions826309
-Node: wc program827089
-Node: Miscellaneous Programs832095
-Node: Dupword Program833324
-Node: Alarm Program835387
-Node: Translate Program840300
-Ref: Translate Program-Footnote-1845041
-Node: Labels Program845319
-Ref: Labels Program-Footnote-1848760
-Node: Word Sorting848852
-Node: History Sorting853046
-Node: Extract Program855321
-Node: Simple Sed863590
-Node: Igawk Program866806
-Ref: Igawk Program-Footnote-1882053
-Ref: Igawk Program-Footnote-2882259
-Ref: Igawk Program-Footnote-3882389
-Node: Anagram Program882516
-Node: Signature Program885612
-Node: Programs Summary886864
-Node: Programs Exercises888122
-Ref: Programs Exercises-Footnote-1892438
-Node: Advanced Features892524
-Node: Nondecimal Data895018
-Node: Boolean Typed Values896648
-Node: Array Sorting898623
-Node: Controlling Array Traversal899352
-Ref: Controlling Array Traversal-Footnote-1907859
-Node: Array Sorting Functions907981
-Ref: Array Sorting Functions-Footnote-1914100
-Node: Two-way I/O914308
-Ref: Two-way I/O-Footnote-1922303
-Ref: Two-way I/O-Footnote-2922494
-Node: TCP/IP Networking922576
-Node: Profiling925756
-Node: Persistent Memory935466
-Ref: Persistent Memory-Footnote-1944424
-Node: Extension Philosophy944555
-Node: Advanced Features Summary946090
-Node: Internationalization948360
-Node: I18N and L10N950066
-Node: Explaining gettext950761
-Ref: Explaining gettext-Footnote-1956914
-Ref: Explaining gettext-Footnote-2957109
-Node: Programmer i18n957274
-Ref: Programmer i18n-Footnote-1962387
-Node: Translator i18n962436
-Node: String Extraction963272
-Ref: String Extraction-Footnote-1964450
-Node: Printf Ordering964548
-Ref: Printf Ordering-Footnote-1967410
-Node: I18N Portability967478
-Ref: I18N Portability-Footnote-1970052
-Node: I18N Example970123
-Ref: I18N Example-Footnote-1973523
-Ref: I18N Example-Footnote-2973599
-Node: Gawk I18N973716
-Node: I18N Summary974372
-Node: Debugger975773
-Node: Debugging976797
-Node: Debugging Concepts977246
-Node: Debugging Terms979072
-Node: Awk Debugging981685
-Ref: Awk Debugging-Footnote-1982662
-Node: Sample Debugging Session982802
-Node: Debugger Invocation983354
-Node: Finding The Bug984983
-Node: List of Debugger Commands991669
-Node: Breakpoint Control993046
-Node: Debugger Execution Control996878
-Node: Viewing And Changing Data1000358
-Node: Execution Stack1004096
-Node: Debugger Info1005777
-Node: Miscellaneous Debugger Commands1010076
-Node: Readline Support1015329
-Node: Limitations1016275
-Node: Debugging Summary1018919
-Node: Namespaces1020222
-Node: Global Namespace1021349
-Node: Qualified Names1022794
-Node: Default Namespace1023829
-Node: Changing The Namespace1024604
-Node: Naming Rules1026298
-Node: Internal Name Management1028213
-Node: Namespace Example1029283
-Node: Namespace And Features1031866
-Node: Namespace Summary1033323
-Node: Arbitrary Precision Arithmetic1034836
-Node: Computer Arithmetic1036355
-Ref: table-numeric-ranges1040172
-Ref: table-floating-point-ranges1040670
-Ref: Computer Arithmetic-Footnote-11041329
-Node: Math Definitions1041388
-Ref: table-ieee-formats1044433
-Node: MPFR features1045007
-Node: MPFR On Parole1045460
-Ref: MPFR On Parole-Footnote-11046304
-Node: MPFR Intro1046463
-Node: FP Math Caution1048153
-Ref: FP Math Caution-Footnote-11049227
-Node: Inexactness of computations1049604
-Node: Inexact representation1050635
-Node: Comparing FP Values1052018
-Node: Errors accumulate1053276
-Node: Strange values1054743
-Ref: Strange values-Footnote-11057409
-Node: Getting Accuracy1057514
-Node: Try To Round1060251
-Node: Setting precision1061158
-Ref: table-predefined-precision-strings1061863
-Node: Setting the rounding mode1063748
-Ref: table-gawk-rounding-modes1064130
-Ref: Setting the rounding mode-Footnote-11068188
-Node: Arbitrary Precision Integers1068371
-Ref: Arbitrary Precision Integers-Footnote-11071583
-Node: Checking for MPFR1071739
-Node: POSIX Floating Point Problems1073229
-Ref: POSIX Floating Point Problems-Footnote-11078093
-Node: Floating point summary1078131
-Node: Dynamic Extensions1080395
-Node: Extension Intro1081994
-Node: Plugin License1083302
-Node: Extension Mechanism Outline1084115
-Ref: figure-load-extension1084566
-Ref: figure-register-new-function1086146
-Ref: figure-call-new-function1087251
-Node: Extension API Description1089370
-Node: Extension API Functions Introduction1091099
-Ref: table-api-std-headers1092997
-Node: General Data Types1097461
-Ref: General Data Types-Footnote-11106629
-Node: Memory Allocation Functions1106944
-Ref: Memory Allocation Functions-Footnote-11111669
-Node: Constructor Functions1111768
-Node: API Ownership of MPFR and GMP Values1115673
-Node: Registration Functions1117234
-Node: Extension Functions1117938
-Node: Exit Callback Functions1123514
-Node: Extension Version String1124833
-Node: Input Parsers1125528
-Node: Output Wrappers1140172
-Node: Two-way processors1145020
-Node: Printing Messages1147381
-Ref: Printing Messages-Footnote-11148595
-Node: Updating ERRNO1148750
-Node: Requesting Values1149549
-Ref: table-value-types-returned1150302
-Node: Accessing Parameters1151411
-Node: Symbol Table Access1152695
-Node: Symbol table by name1153211
-Ref: Symbol table by name-Footnote-11156422
-Node: Symbol table by cookie1156554
-Ref: Symbol table by cookie-Footnote-11160835
-Node: Cached values1160899
-Ref: Cached values-Footnote-11164543
-Node: Array Manipulation1164700
-Ref: Array Manipulation-Footnote-11165803
-Node: Array Data Types1165840
-Ref: Array Data Types-Footnote-11168662
-Node: Array Functions1168762
-Node: Flattening Arrays1173791
-Node: Creating Arrays1180843
-Node: Redirection API1185693
-Node: Extension API Variables1188714
-Node: Extension Versioning1189439
-Ref: gawk-api-version1189876
-Node: Extension GMP/MPFR Versioning1191664
-Node: Extension API Informational Variables1193370
-Node: Extension API Boilerplate1194531
-Node: Changes from API V11198667
-Node: Finding Extensions1200301
-Node: Extension Example1200876
-Node: Internal File Description1201700
-Node: Internal File Ops1206024
-Ref: Internal File Ops-Footnote-11217582
-Node: Using Internal File Ops1217730
-Ref: Using Internal File Ops-Footnote-11220161
-Node: Extension Samples1220439
-Node: Extension Sample File Functions1222008
-Node: Extension Sample Fnmatch1230146
-Node: Extension Sample Fork1231741
-Node: Extension Sample Inplace1233017
-Node: Extension Sample Ord1236689
-Node: Extension Sample Readdir1237565
-Ref: table-readdir-file-types1238462
-Node: Extension Sample Revout1239600
-Node: Extension Sample Rev2way1240197
-Node: Extension Sample Read write array1240949
-Node: Extension Sample Readfile1244223
-Node: Extension Sample Time1245354
-Node: Extension Sample API Tests1247644
-Node: gawkextlib1248152
-Node: Extension summary1251188
-Node: Extension Exercises1255046
-Node: Language History1256324
-Node: V7/SVR3.11258038
-Node: SVR41260388
-Node: POSIX1261920
-Node: BTL1263345
-Node: POSIX/GNU1264114
-Node: Feature History1270645
-Node: Common Extensions1290147
-Node: Ranges and Locales1291516
-Ref: Ranges and Locales-Footnote-11296317
-Ref: Ranges and Locales-Footnote-21296344
-Ref: Ranges and Locales-Footnote-31296583
-Node: Contributors1296806
-Node: History summary1303011
-Node: Installation1304457
-Node: Gawk Distribution1305421
-Node: Getting1305913
-Node: Extracting1306912
-Node: Distribution contents1308624
-Node: Unix Installation1316704
-Node: Quick Installation1317526
-Node: Compiling with MPFR1320072
-Node: Shell Startup Files1320778
-Node: Additional Configuration Options1321935
-Node: Configuration Philosophy1324322
-Node: Compiling from Git1326824
-Node: Building the Documentation1327383
-Node: Non-Unix Installation1328795
-Node: PC Installation1329271
-Node: PC Binary Installation1330144
-Node: PC Compiling1331049
-Node: PC Using1332227
-Node: Cygwin1335955
-Node: MSYS1337211
-Node: OpenVMS Installation1337843
-Node: OpenVMS Compilation1338524
-Ref: OpenVMS Compilation-Footnote-11340007
-Node: OpenVMS Dynamic Extensions1340069
-Node: OpenVMS Installation Details1341705
-Node: OpenVMS Running1344140
-Node: OpenVMS GNV1348277
-Node: Bugs1349032
-Node: Bug definition1349956
-Node: Bug address1353607
-Node: Usenet1357198
-Node: Performance bugs1358429
-Node: Asking for help1361447
-Node: Maintainers1363438
-Node: Other Versions1364465
-Node: Installation summary1373397
-Node: Notes1374781
-Node: Compatibility Mode1375591
-Node: Additions1376413
-Node: Accessing The Source1377358
-Node: Adding Code1378893
-Node: New Ports1386029
-Node: Derived Files1390539
-Ref: Derived Files-Footnote-11396386
-Ref: Derived Files-Footnote-21396421
-Ref: Derived Files-Footnote-31397038
-Node: Future Extensions1397152
-Node: Implementation Limitations1397824
-Node: Extension Design1399066
-Node: Old Extension Problems1400230
-Ref: Old Extension Problems-Footnote-11401806
-Node: Extension New Mechanism Goals1401867
-Ref: Extension New Mechanism Goals-Footnote-11405363
-Node: Extension Other Design Decisions1405564
-Node: Extension Future Growth1407763
-Node: Notes summary1408387
-Node: Basic Concepts1409600
-Node: Basic High Level1410285
-Ref: figure-general-flow1410567
-Ref: figure-process-flow1411269
-Ref: Basic High Level-Footnote-11414665
-Node: Basic Data Typing1414854
-Node: Glossary1418272
-Node: Copying1451394
-Node: GNU Free Documentation License1489155
-Node: Index1514478
+Ref: Array Intro-Footnote-1537522
+Node: Reference to Elements537654
+Node: Assigning Elements540176
+Node: Array Example540671
+Node: Scanning an Array542640
+Node: Controlling Scanning545737
+Ref: Controlling Scanning-Footnote-1552400
+Node: Numeric Array Subscripts552724
+Node: Uninitialized Subscripts554998
+Node: Delete556677
+Ref: Delete-Footnote-1559491
+Node: Multidimensional559548
+Node: Multiscanning562753
+Node: Arrays of Arrays564425
+Node: Arrays Summary569325
+Node: Functions571514
+Node: Built-in572574
+Node: Calling Built-in573763
+Node: Boolean Functions575810
+Node: Numeric Functions576380
+Ref: Numeric Functions-Footnote-1580573
+Ref: Numeric Functions-Footnote-2581257
+Ref: Numeric Functions-Footnote-3581309
+Node: String Functions581585
+Ref: String Functions-Footnote-1607721
+Ref: String Functions-Footnote-2607855
+Ref: String Functions-Footnote-3608115
+Node: Gory Details608202
+Ref: table-sub-escapes610109
+Ref: table-sub-proposed611755
+Ref: table-posix-sub613265
+Ref: table-gensub-escapes614953
+Ref: Gory Details-Footnote-1615887
+Node: I/O Functions616041
+Ref: table-system-return-values622728
+Ref: I/O Functions-Footnote-1624899
+Ref: I/O Functions-Footnote-2625047
+Node: Time Functions625167
+Ref: Time Functions-Footnote-1636323
+Ref: Time Functions-Footnote-2636399
+Ref: Time Functions-Footnote-3636561
+Ref: Time Functions-Footnote-4636672
+Ref: Time Functions-Footnote-5636790
+Ref: Time Functions-Footnote-6637025
+Node: Bitwise Functions637307
+Ref: table-bitwise-ops637909
+Ref: Bitwise Functions-Footnote-1644163
+Ref: Bitwise Functions-Footnote-2644342
+Node: Type Functions644539
+Node: I18N Functions648132
+Node: User-defined649875
+Node: Definition Syntax650695
+Ref: Definition Syntax-Footnote-1656523
+Node: Function Example656600
+Ref: Function Example-Footnote-1659579
+Node: Function Calling659601
+Node: Calling A Function660195
+Node: Variable Scope661165
+Node: Pass By Value/Reference664219
+Node: Function Caveats666951
+Ref: Function Caveats-Footnote-1669046
+Node: Return Statement669170
+Node: Dynamic Typing672225
+Node: Indirect Calls673181
+Node: Functions Summary684340
+Node: Library Functions687117
+Ref: Library Functions-Footnote-1690665
+Ref: Library Functions-Footnote-2690808
+Node: Library Names690983
+Ref: Library Names-Footnote-1694777
+Ref: Library Names-Footnote-2695004
+Node: General Functions695100
+Node: Strtonum Function696294
+Node: Assert Function699376
+Node: Round Function702828
+Node: Cliff Random Function704406
+Node: Ordinal Functions705439
+Ref: Ordinal Functions-Footnote-1708548
+Ref: Ordinal Functions-Footnote-2708800
+Node: Join Function709014
+Ref: Join Function-Footnote-1710817
+Node: Getlocaltime Function711021
+Node: Readfile Function714795
+Node: Shell Quoting716824
+Node: Isnumeric Function718280
+Node: Data File Management719692
+Node: Filetrans Function720324
+Node: Rewind Function724618
+Node: File Checking726597
+Ref: File Checking-Footnote-1727969
+Node: Empty Files728176
+Node: Ignoring Assigns730243
+Node: Getopt Function731817
+Ref: Getopt Function-Footnote-1747651
+Node: Passwd Functions747863
+Ref: Passwd Functions-Footnote-1757045
+Node: Group Functions757133
+Ref: Group Functions-Footnote-1765271
+Node: Walking Arrays765484
+Node: Library Functions Summary768532
+Node: Library Exercises769956
+Node: Sample Programs770443
+Node: Running Examples771225
+Node: Clones771977
+Node: Cut Program773249
+Node: Egrep Program783690
+Node: Id Program793007
+Node: Split Program803121
+Ref: Split Program-Footnote-1813356
+Node: Tee Program813543
+Node: Uniq Program816452
+Node: Wc Program824317
+Node: Bytes vs. Characters824712
+Node: Using extensions826314
+Node: wc program827094
+Node: Miscellaneous Programs832100
+Node: Dupword Program833329
+Node: Alarm Program835392
+Node: Translate Program840305
+Ref: Translate Program-Footnote-1845046
+Node: Labels Program845324
+Ref: Labels Program-Footnote-1848765
+Node: Word Sorting848857
+Node: History Sorting853051
+Node: Extract Program855326
+Node: Simple Sed863595
+Node: Igawk Program866811
+Ref: Igawk Program-Footnote-1882058
+Ref: Igawk Program-Footnote-2882264
+Ref: Igawk Program-Footnote-3882394
+Node: Anagram Program882521
+Node: Signature Program885617
+Node: Programs Summary886869
+Node: Programs Exercises888127
+Ref: Programs Exercises-Footnote-1892443
+Node: Advanced Features892529
+Node: Nondecimal Data895023
+Node: Boolean Typed Values896653
+Node: Array Sorting898628
+Node: Controlling Array Traversal899357
+Ref: Controlling Array Traversal-Footnote-1907864
+Node: Array Sorting Functions907986
+Ref: Array Sorting Functions-Footnote-1914105
+Node: Two-way I/O914313
+Ref: Two-way I/O-Footnote-1922308
+Ref: Two-way I/O-Footnote-2922499
+Node: TCP/IP Networking922581
+Node: Profiling925761
+Node: Persistent Memory935471
+Ref: Persistent Memory-Footnote-1944429
+Node: Extension Philosophy944560
+Node: Advanced Features Summary946095
+Node: Internationalization948365
+Node: I18N and L10N950071
+Node: Explaining gettext950766
+Ref: Explaining gettext-Footnote-1956919
+Ref: Explaining gettext-Footnote-2957114
+Node: Programmer i18n957279
+Ref: Programmer i18n-Footnote-1962392
+Node: Translator i18n962441
+Node: String Extraction963277
+Ref: String Extraction-Footnote-1964455
+Node: Printf Ordering964553
+Ref: Printf Ordering-Footnote-1967415
+Node: I18N Portability967483
+Ref: I18N Portability-Footnote-1970057
+Node: I18N Example970128
+Ref: I18N Example-Footnote-1973528
+Ref: I18N Example-Footnote-2973604
+Node: Gawk I18N973721
+Node: I18N Summary974377
+Node: Debugger975778
+Node: Debugging976802
+Node: Debugging Concepts977251
+Node: Debugging Terms979077
+Node: Awk Debugging981690
+Ref: Awk Debugging-Footnote-1982667
+Node: Sample Debugging Session982807
+Node: Debugger Invocation983359
+Node: Finding The Bug984988
+Node: List of Debugger Commands991674
+Node: Breakpoint Control993051
+Node: Debugger Execution Control996883
+Node: Viewing And Changing Data1000363
+Node: Execution Stack1004101
+Node: Debugger Info1005782
+Node: Miscellaneous Debugger Commands1010081
+Node: Readline Support1015334
+Node: Limitations1016280
+Node: Debugging Summary1018924
+Node: Namespaces1020227
+Node: Global Namespace1021354
+Node: Qualified Names1022799
+Node: Default Namespace1023834
+Node: Changing The Namespace1024609
+Node: Naming Rules1026303
+Node: Internal Name Management1028218
+Node: Namespace Example1029288
+Node: Namespace And Features1031871
+Node: Namespace Summary1033328
+Node: Arbitrary Precision Arithmetic1034841
+Node: Computer Arithmetic1036360
+Ref: table-numeric-ranges1040177
+Ref: table-floating-point-ranges1040675
+Ref: Computer Arithmetic-Footnote-11041334
+Node: Math Definitions1041393
+Ref: table-ieee-formats1044438
+Node: MPFR features1045012
+Node: MPFR On Parole1045465
+Ref: MPFR On Parole-Footnote-11046309
+Node: MPFR Intro1046468
+Node: FP Math Caution1048158
+Ref: FP Math Caution-Footnote-11049232
+Node: Inexactness of computations1049609
+Node: Inexact representation1050640
+Node: Comparing FP Values1052023
+Node: Errors accumulate1053281
+Node: Strange values1054748
+Ref: Strange values-Footnote-11057414
+Node: Getting Accuracy1057519
+Node: Try To Round1060256
+Node: Setting precision1061163
+Ref: table-predefined-precision-strings1061868
+Node: Setting the rounding mode1063753
+Ref: table-gawk-rounding-modes1064135
+Ref: Setting the rounding mode-Footnote-11068193
+Node: Arbitrary Precision Integers1068376
+Ref: Arbitrary Precision Integers-Footnote-11071588
+Node: Checking for MPFR1071744
+Node: POSIX Floating Point Problems1073234
+Ref: POSIX Floating Point Problems-Footnote-11078098
+Node: Floating point summary1078136
+Node: Dynamic Extensions1080400
+Node: Extension Intro1081999
+Node: Plugin License1083307
+Node: Extension Mechanism Outline1084120
+Ref: figure-load-extension1084571
+Ref: figure-register-new-function1086156
+Ref: figure-call-new-function1087266
+Node: Extension API Description1089390
+Node: Extension API Functions Introduction1091119
+Ref: table-api-std-headers1093017
+Node: General Data Types1097481
+Ref: General Data Types-Footnote-11106649
+Node: Memory Allocation Functions1106964
+Ref: Memory Allocation Functions-Footnote-11111689
+Node: Constructor Functions1111788
+Node: API Ownership of MPFR and GMP Values1115693
+Node: Registration Functions1117254
+Node: Extension Functions1117958
+Node: Exit Callback Functions1123534
+Node: Extension Version String1124853
+Node: Input Parsers1125548
+Node: Output Wrappers1140192
+Node: Two-way processors1145040
+Node: Printing Messages1147401
+Ref: Printing Messages-Footnote-11148615
+Node: Updating ERRNO1148770
+Node: Requesting Values1149569
+Ref: table-value-types-returned1150322
+Node: Accessing Parameters1151431
+Node: Symbol Table Access1152715
+Node: Symbol table by name1153231
+Ref: Symbol table by name-Footnote-11156442
+Node: Symbol table by cookie1156574
+Ref: Symbol table by cookie-Footnote-11160855
+Node: Cached values1160919
+Ref: Cached values-Footnote-11164563
+Node: Array Manipulation1164720
+Ref: Array Manipulation-Footnote-11165823
+Node: Array Data Types1165860
+Ref: Array Data Types-Footnote-11168682
+Node: Array Functions1168782
+Node: Flattening Arrays1173811
+Node: Creating Arrays1180863
+Node: Redirection API1185713
+Node: Extension API Variables1188734
+Node: Extension Versioning1189459
+Ref: gawk-api-version1189896
+Node: Extension GMP/MPFR Versioning1191684
+Node: Extension API Informational Variables1193390
+Node: Extension API Boilerplate1194551
+Node: Changes from API V11198687
+Node: Finding Extensions1200321
+Node: Extension Example1200896
+Node: Internal File Description1201720
+Node: Internal File Ops1206044
+Ref: Internal File Ops-Footnote-11217602
+Node: Using Internal File Ops1217750
+Ref: Using Internal File Ops-Footnote-11220181
+Node: Extension Samples1220459
+Node: Extension Sample File Functions1222028
+Node: Extension Sample Fnmatch1230166
+Node: Extension Sample Fork1231761
+Node: Extension Sample Inplace1233037
+Node: Extension Sample Ord1236709
+Node: Extension Sample Readdir1237585
+Ref: table-readdir-file-types1238482
+Node: Extension Sample Revout1239620
+Node: Extension Sample Rev2way1240217
+Node: Extension Sample Read write array1240969
+Node: Extension Sample Readfile1244243
+Node: Extension Sample Time1245374
+Node: Extension Sample API Tests1247664
+Node: gawkextlib1248172
+Node: Extension summary1251208
+Node: Extension Exercises1255066
+Node: Language History1256344
+Node: V7/SVR3.11258058
+Node: SVR41260408
+Node: POSIX1261940
+Node: BTL1263365
+Node: POSIX/GNU1264134
+Node: Feature History1270665
+Node: Common Extensions1290167
+Node: Ranges and Locales1291536
+Ref: Ranges and Locales-Footnote-11296337
+Ref: Ranges and Locales-Footnote-21296364
+Ref: Ranges and Locales-Footnote-31296603
+Node: Contributors1296826
+Node: History summary1303031
+Node: Installation1304477
+Node: Gawk Distribution1305441
+Node: Getting1305933
+Node: Extracting1306932
+Node: Distribution contents1308644
+Node: Unix Installation1316724
+Node: Quick Installation1317546
+Node: Compiling with MPFR1320092
+Node: Shell Startup Files1320798
+Node: Additional Configuration Options1321955
+Node: Configuration Philosophy1324342
+Node: Compiling from Git1326844
+Node: Building the Documentation1327403
+Node: Non-Unix Installation1328815
+Node: PC Installation1329291
+Node: PC Binary Installation1330164
+Node: PC Compiling1331069
+Node: PC Using1332247
+Node: Cygwin1335975
+Node: MSYS1337231
+Node: OpenVMS Installation1337863
+Node: OpenVMS Compilation1338544
+Ref: OpenVMS Compilation-Footnote-11340027
+Node: OpenVMS Dynamic Extensions1340089
+Node: OpenVMS Installation Details1341725
+Node: OpenVMS Running1344160
+Node: OpenVMS GNV1348297
+Node: Bugs1349052
+Node: Bug definition1349976
+Node: Bug address1353627
+Node: Usenet1357218
+Node: Performance bugs1358449
+Node: Asking for help1361467
+Node: Maintainers1363458
+Node: Other Versions1364485
+Node: Installation summary1373417
+Node: Notes1374801
+Node: Compatibility Mode1375611
+Node: Additions1376433
+Node: Accessing The Source1377378
+Node: Adding Code1378913
+Node: New Ports1386049
+Node: Derived Files1390559
+Ref: Derived Files-Footnote-11396406
+Ref: Derived Files-Footnote-21396441
+Ref: Derived Files-Footnote-31397058
+Node: Future Extensions1397172
+Node: Implementation Limitations1397844
+Node: Extension Design1399086
+Node: Old Extension Problems1400250
+Ref: Old Extension Problems-Footnote-11401826
+Node: Extension New Mechanism Goals1401887
+Ref: Extension New Mechanism Goals-Footnote-11405383
+Node: Extension Other Design Decisions1405584
+Node: Extension Future Growth1407783
+Node: Notes summary1408407
+Node: Basic Concepts1409620
+Node: Basic High Level1410305
+Ref: figure-general-flow1410587
+Ref: figure-process-flow1411294
+Ref: Basic High Level-Footnote-11414695
+Node: Basic Data Typing1414884
+Node: Glossary1418302
+Node: Copying1451424
+Node: GNU Free Documentation License1489185
+Node: Index1514508

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index d56ce420..72b13d86 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -17208,7 +17208,7 @@ conceptually, if the element values are eight, @code{"foo"},
@ifnotdocbook
@float Figure,figure-array-elements
@caption{A contiguous array}
-@center @image{array-elements, , , A Contiguous Array}
+@center @image{gawk_array-elements, , , A Contiguous Array}
@end float
@end ifnotdocbook
@@ -35996,7 +35996,7 @@ This is shown in @inlineraw{docbook, <xref linkend="figure-load-extension"/>}.
@ifnotdocbook
@float Figure,figure-load-extension
@caption{Loading the extension}
-@center @image{api-figure1, , , Loading the extension}
+@center @image{gawk_api-figure1, , , Loading the extension}
@end float
@end ifnotdocbook
@@ -36023,7 +36023,7 @@ This is shown in @inlineraw{docbook, <xref linkend="figure-register-new-function
@ifnotdocbook
@float Figure,figure-register-new-function
@caption{Registering a new function}
-@center @image{api-figure2, , , Registering a new Function}
+@center @image{gawk_api-figure2, , , Registering a new Function}
@end float
@end ifnotdocbook
@@ -36051,7 +36051,7 @@ This is shown in @inlineraw{docbook, <xref linkend="figure-call-new-function"/>}
@ifnotdocbook
@float Figure,figure-call-new-function
@caption{Calling the new function}
-@center @image{api-figure3, , , Calling the new function}
+@center @image{gawk_api-figure3, , , Calling the new function}
@end float
@end ifnotdocbook
@@ -45776,7 +45776,7 @@ See @inlineraw{docbook, <xref linkend="figure-general-flow"/>}.
@ifnotdocbook
@float Figure,figure-general-flow
@caption{General Program Flow}
-@center @image{general-program, , , General program flow}
+@center @image{gawk_general-program, , , General program flow}
@end float
@end ifnotdocbook
@@ -45814,7 +45814,7 @@ as shown in @inlineraw{docbook, <xref linkend="figure-process-flow"/>}:
@ifnotdocbook
@float Figure,figure-process-flow
@caption{Basic Program Steps}
-@center @image{process-flow, , , Basic Program Stages}
+@center @image{gawk_process-flow, , , Basic Program Stages}
@end float
@end ifnotdocbook
diff --git a/doc/api-figure1.eps b/doc/gawk_api-figure1.eps
index 7af094c9..7af094c9 100644
--- a/doc/api-figure1.eps
+++ b/doc/gawk_api-figure1.eps
diff --git a/doc/api-figure1.fig b/doc/gawk_api-figure1.fig
index 7bc47846..7bc47846 100644
--- a/doc/api-figure1.fig
+++ b/doc/gawk_api-figure1.fig
diff --git a/doc/api-figure1.pdf b/doc/gawk_api-figure1.pdf
index 0c24b67d..0c24b67d 100644
--- a/doc/api-figure1.pdf
+++ b/doc/gawk_api-figure1.pdf
Binary files differ
diff --git a/doc/api-figure1.png b/doc/gawk_api-figure1.png
index 72d552cd..72d552cd 100644
--- a/doc/api-figure1.png
+++ b/doc/gawk_api-figure1.png
Binary files differ
diff --git a/doc/api-figure1.txt b/doc/gawk_api-figure1.txt
index 686b853b..686b853b 100644
--- a/doc/api-figure1.txt
+++ b/doc/gawk_api-figure1.txt
diff --git a/doc/api-figure2.eps b/doc/gawk_api-figure2.eps
index caf5c34c..caf5c34c 100644
--- a/doc/api-figure2.eps
+++ b/doc/gawk_api-figure2.eps
diff --git a/doc/api-figure2.fig b/doc/gawk_api-figure2.fig
index 2ae60854..2ae60854 100644
--- a/doc/api-figure2.fig
+++ b/doc/gawk_api-figure2.fig
diff --git a/doc/api-figure2.pdf b/doc/gawk_api-figure2.pdf
index 20462856..20462856 100644
--- a/doc/api-figure2.pdf
+++ b/doc/gawk_api-figure2.pdf
Binary files differ
diff --git a/doc/api-figure2.png b/doc/gawk_api-figure2.png
index a6e28c98..a6e28c98 100644
--- a/doc/api-figure2.png
+++ b/doc/gawk_api-figure2.png
Binary files differ
diff --git a/doc/api-figure2.txt b/doc/gawk_api-figure2.txt
index 5ed8e2a8..5ed8e2a8 100644
--- a/doc/api-figure2.txt
+++ b/doc/gawk_api-figure2.txt
diff --git a/doc/api-figure3.eps b/doc/gawk_api-figure3.eps
index d713575f..d713575f 100644
--- a/doc/api-figure3.eps
+++ b/doc/gawk_api-figure3.eps
diff --git a/doc/api-figure3.fig b/doc/gawk_api-figure3.fig
index 5c7fdd97..5c7fdd97 100644
--- a/doc/api-figure3.fig
+++ b/doc/gawk_api-figure3.fig
diff --git a/doc/api-figure3.pdf b/doc/gawk_api-figure3.pdf
index 517b2ecc..517b2ecc 100644
--- a/doc/api-figure3.pdf
+++ b/doc/gawk_api-figure3.pdf
Binary files differ
diff --git a/doc/api-figure3.png b/doc/gawk_api-figure3.png
index f7db0794..f7db0794 100644
--- a/doc/api-figure3.png
+++ b/doc/gawk_api-figure3.png
Binary files differ
diff --git a/doc/api-figure3.txt b/doc/gawk_api-figure3.txt
index a601ce94..a601ce94 100644
--- a/doc/api-figure3.txt
+++ b/doc/gawk_api-figure3.txt
diff --git a/doc/array-elements.eps b/doc/gawk_array-elements.eps
index 041c0b39..041c0b39 100644
--- a/doc/array-elements.eps
+++ b/doc/gawk_array-elements.eps
diff --git a/doc/array-elements.fig b/doc/gawk_array-elements.fig
index 63b5ffbf..63b5ffbf 100644
--- a/doc/array-elements.fig
+++ b/doc/gawk_array-elements.fig
diff --git a/doc/array-elements.pdf b/doc/gawk_array-elements.pdf
index 328cbd1a..328cbd1a 100644
--- a/doc/array-elements.pdf
+++ b/doc/gawk_array-elements.pdf
Binary files differ
diff --git a/doc/array-elements.png b/doc/gawk_array-elements.png
index b57d66b7..b57d66b7 100644
--- a/doc/array-elements.png
+++ b/doc/gawk_array-elements.png
Binary files differ
diff --git a/doc/array-elements.txt b/doc/gawk_array-elements.txt
index 424c1708..424c1708 100644
--- a/doc/array-elements.txt
+++ b/doc/gawk_array-elements.txt
diff --git a/doc/general-program.eps b/doc/gawk_general-program.eps
index 12497168..12497168 100644
--- a/doc/general-program.eps
+++ b/doc/gawk_general-program.eps
diff --git a/doc/general-program.fig b/doc/gawk_general-program.fig
index 8ab42f3d..8ab42f3d 100644
--- a/doc/general-program.fig
+++ b/doc/gawk_general-program.fig
diff --git a/doc/general-program.pdf b/doc/gawk_general-program.pdf
index f4f7572c..f4f7572c 100644
--- a/doc/general-program.pdf
+++ b/doc/gawk_general-program.pdf
Binary files differ
diff --git a/doc/general-program.png b/doc/gawk_general-program.png
index 7737261f..7737261f 100644
--- a/doc/general-program.png
+++ b/doc/gawk_general-program.png
Binary files differ
diff --git a/doc/general-program.txt b/doc/gawk_general-program.txt
index cb85c294..cb85c294 100644
--- a/doc/general-program.txt
+++ b/doc/gawk_general-program.txt
diff --git a/doc/process-flow.eps b/doc/gawk_process-flow.eps
index 81b937ba..81b937ba 100644
--- a/doc/process-flow.eps
+++ b/doc/gawk_process-flow.eps
diff --git a/doc/process-flow.fig b/doc/gawk_process-flow.fig
index b6613137..b6613137 100644
--- a/doc/process-flow.fig
+++ b/doc/gawk_process-flow.fig
diff --git a/doc/process-flow.pdf b/doc/gawk_process-flow.pdf
index 3ff5f9e8..3ff5f9e8 100644
--- a/doc/process-flow.pdf
+++ b/doc/gawk_process-flow.pdf
Binary files differ
diff --git a/doc/process-flow.png b/doc/gawk_process-flow.png
index 97f467f4..97f467f4 100644
--- a/doc/process-flow.png
+++ b/doc/gawk_process-flow.png
Binary files differ
diff --git a/doc/process-flow.txt b/doc/gawk_process-flow.txt
index d7296385..d7296385 100644
--- a/doc/process-flow.txt
+++ b/doc/gawk_process-flow.txt
diff --git a/doc/statist.eps b/doc/gawk_statist.eps
index 1e1f09fa..1e1f09fa 100644
--- a/doc/statist.eps
+++ b/doc/gawk_statist.eps
diff --git a/doc/statist.jpg b/doc/gawk_statist.jpg
index 92428f25..92428f25 100644
--- a/doc/statist.jpg
+++ b/doc/gawk_statist.jpg
Binary files differ
diff --git a/doc/statist.pdf b/doc/gawk_statist.pdf
index 2122a33a..2122a33a 100644
--- a/doc/statist.pdf
+++ b/doc/gawk_statist.pdf
Binary files differ
diff --git a/doc/statist.txt b/doc/gawk_statist.txt
index 261019d6..261019d6 100644
--- a/doc/statist.txt
+++ b/doc/gawk_statist.txt
diff --git a/doc/gawkinet.info b/doc/gawkinet.info
index 7877e084..c961462f 100644
--- a/doc/gawkinet.info
+++ b/doc/gawkinet.info
@@ -2410,7 +2410,7 @@ File: gawkinet.info, Node: STATIST, Next: MAZE, Prev: WEBGRAB, Up: Some Appl
3.6 STATIST: Graphing a Statistical Distribution
================================================
-
+
| : : sample 1 :::: |
| : : sample 2 ---- |
0.3 |- : :_ -|
@@ -4480,16 +4480,16 @@ Node: REMCONF97637
Node: URLCHK103171
Node: WEBGRAB107043
Node: STATIST111585
-Ref: STATIST-Footnote-1124892
-Node: MAZE125347
-Node: MOBAGWHO131612
-Ref: MOBAGWHO-Footnote-1145781
-Node: STOXPRED145849
-Node: PROTBASE160242
-Ref: PROTBASE-Footnote-1173572
-Node: Links173691
-Node: GNU Free Documentation License176614
-Node: Index201937
+Ref: STATIST-Footnote-1124897
+Node: MAZE125352
+Node: MOBAGWHO131617
+Ref: MOBAGWHO-Footnote-1145786
+Node: STOXPRED145854
+Node: PROTBASE160247
+Ref: PROTBASE-Footnote-1173577
+Node: Links173696
+Node: GNU Free Documentation License176619
+Node: Index201942

End Tag Table
diff --git a/doc/gawkinet.texi b/doc/gawkinet.texi
index df22d4dd..3ba14318 100644
--- a/doc/gawkinet.texi
+++ b/doc/gawkinet.texi
@@ -3002,7 +3002,7 @@ sure that none of the above reveals too much information about your system.
@cindex PNG image format
@cindex PS image format
@cindex Boutell, Thomas
-@image{statist,3in}
+@image{gawk_statist,3in}
In the HTTP server examples we've shown thus far, we never present an image
to the browser and its user. Presenting images is one task. Generating
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index a7adaab1..5c0f7387 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -16422,7 +16422,7 @@ conceptually, if the element values are eight, @code{"foo"},
@ifnotdocbook
@float Figure,figure-array-elements
@caption{A contiguous array}
-@center @image{array-elements, , , A Contiguous Array}
+@center @image{gawk_array-elements, , , A Contiguous Array}
@end float
@end ifnotdocbook
@@ -34912,7 +34912,7 @@ This is shown in @inlineraw{docbook, <xref linkend="figure-load-extension"/>}.
@ifnotdocbook
@float Figure,figure-load-extension
@caption{Loading the extension}
-@center @image{api-figure1, , , Loading the extension}
+@center @image{gawk_api-figure1, , , Loading the extension}
@end float
@end ifnotdocbook
@@ -34939,7 +34939,7 @@ This is shown in @inlineraw{docbook, <xref linkend="figure-register-new-function
@ifnotdocbook
@float Figure,figure-register-new-function
@caption{Registering a new function}
-@center @image{api-figure2, , , Registering a new Function}
+@center @image{gawk_api-figure2, , , Registering a new Function}
@end float
@end ifnotdocbook
@@ -34967,7 +34967,7 @@ This is shown in @inlineraw{docbook, <xref linkend="figure-call-new-function"/>}
@ifnotdocbook
@float Figure,figure-call-new-function
@caption{Calling the new function}
-@center @image{api-figure3, , , Calling the new function}
+@center @image{gawk_api-figure3, , , Calling the new function}
@end float
@end ifnotdocbook
@@ -44664,7 +44664,7 @@ See @inlineraw{docbook, <xref linkend="figure-general-flow"/>}.
@ifnotdocbook
@float Figure,figure-general-flow
@caption{General Program Flow}
-@center @image{general-program, , , General program flow}
+@center @image{gawk_general-program, , , General program flow}
@end float
@end ifnotdocbook
@@ -44702,7 +44702,7 @@ as shown in @inlineraw{docbook, <xref linkend="figure-process-flow"/>}:
@ifnotdocbook
@float Figure,figure-process-flow
@caption{Basic Program Steps}
-@center @image{process-flow, , , Basic Program Stages}
+@center @image{gawk_process-flow, , , Basic Program Stages}
@end float
@end ifnotdocbook
diff --git a/doc/gawkworkflow.info b/doc/gawkworkflow.info
index 2596ec61..591ca0d6 100644
--- a/doc/gawkworkflow.info
+++ b/doc/gawkworkflow.info
@@ -1,10 +1,11 @@
This is gawkworkflow.info, produced by makeinfo version 7.0.1 from
gawkworkflow.texi.
-Copyright © 2017, 2018, 2019, 2020, 2022 Free Software Foundation, Inc.
+Copyright © 2017, 2018, 2019, 2020, 2022, 2023 Free Software Foundation,
+Inc.
- This is Edition 0.74 of ‘Participating in ‘gawk’ Development’.
+ This is Edition 0.75 of ‘Participating in ‘gawk’ Development’.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -35,11 +36,11 @@ General Introduction
This file describes how to participate in software development for GNU
Awk (‘gawk’) (http://www.gnu.org/software/gawk).
- Copyright © 2017, 2018, 2019, 2020, 2022 Free Software Foundation,
-Inc.
+ Copyright © 2017, 2018, 2019, 2020, 2022, 2023 Free Software
+Foundation, Inc.
- This is Edition 0.74 of ‘Participating in ‘gawk’ Development’.
+ This is Edition 0.75 of ‘Participating in ‘gawk’ Development’.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -1005,6 +1006,11 @@ _Generate a single large patch_
Mail the ‘python.diff’ file to the appropriate mailing list along
with a description of what you’ve changed and why.
+ The patch file will likely contain changes to generated files, such
+ as ‘awkgram.c’ or ‘Makefile.in’. If you are comfortable manually
+ editing the patch file to remove those changes, do so. If not,
+ then send the file as-is and the maintainer will handle it.
+
_Generate a set of patches that in toto comprise your changes_
To do this, use ‘git format-patch’:
@@ -1164,7 +1170,8 @@ without commit access:
3. If necessary, update the documentation: ‘doc/gawktexi.in’ and/or
‘doc/gawk.1’.
- 4. Use ‘git diff > mychange.diff’ to create a patch file.
+ 4. Use ‘git diff > mychange.diff’ to create a patch file. (If you
+ want, remove the diffs for generated files.)
5. Send it to the mailing list for discussion.
@@ -1281,7 +1288,7 @@ Savannah repo.
otherwise, you should _always_ start branches for new features from
‘master’, and not from the current “stable” branch.
- Use ‘checkout -b feature/FEATURE_NAME’ to create the initial
+ Use ‘git checkout -b feature/FEATURE_NAME’ to create the initial
branch. You may then elect to keep it purely local, or to push it
up to Savannah for review, even if the feature is not yet totally
“ready for prime time.”
@@ -1827,7 +1834,7 @@ Index
* gawktexi.in documentation: Developing patches. (line 13)
* GCC, the GNU Compiler Collection: Compilers. (line 6)
* generating a single patch: Submitting Changes. (line 14)
-* generating multiple patches: Submitting Changes. (line 24)
+* generating multiple patches: Submitting Changes. (line 29)
* gettext: GNU Tools. (line 27)
* git branch command, -a option: Remotes. (line 6)
* git command, git branch: Repo Copies. (line 39)
@@ -1868,8 +1875,8 @@ Index
* git command, git pull <2>: Rebasing. (line 10)
* git command, git checkout <5>: Submitting Changes. (line 18)
* git command, git diff <1>: Submitting Changes. (line 18)
-* git command, git format-patch: Submitting Changes. (line 24)
-* git command, git checkout <6>: Submitting Changes. (line 27)
+* git command, git format-patch: Submitting Changes. (line 29)
+* git command, git checkout <6>: Submitting Changes. (line 32)
* git command, git checkout <7>: Removing Branches. (line 9)
* git command, git pull <3>: Removing Branches. (line 9)
* git command, git branch <1>: Removing Branches. (line 9)
@@ -1883,10 +1890,10 @@ Index
* git command, git merge: Points to remember. (line 37)
* git command, git clone <2>: ssh clone. (line 10)
* git command, git diff <3>: Developing patches. (line 16)
-* git command, git diff <4>: Developing patches. (line 26)
-* git command, git add <1>: Developing patches. (line 26)
-* git command, git commit <1>: Developing patches. (line 26)
-* git command, git push <1>: Developing patches. (line 26)
+* git command, git diff <4>: Developing patches. (line 27)
+* git command, git add <1>: Developing patches. (line 27)
+* git command, git commit <1>: Developing patches. (line 27)
+* git command, git push <1>: Developing patches. (line 27)
* git command, git checkout <11>: Developing new features.
(line 9)
* git command, git pull <6>: Developing new features.
@@ -1960,7 +1967,7 @@ Index
* ownership of directories: General practices. (line 17)
* pager.status configuration setting: Configuring git. (line 24)
* patch, single, generation of: Submitting Changes. (line 14)
-* patches, multiple, generation of: Submitting Changes. (line 24)
+* patches, multiple, generation of: Submitting Changes. (line 29)
* pcc compiler: Compilers. (line 40)
* pcc compiler, Git mirror: Compilers. (line 50)
* Portable C compiler: Compilers. (line 40)
@@ -1994,69 +2001,69 @@ Index

Tag Table:
-Node: Top1162
-Node: Preface5303
-Node: Intended Audience5874
-Node: This Manual6756
-Node: Conventions8317
-Node: Acknowledgments9838
-Node: Reviewers10275
-Node: Contributing10596
-Node: Using Git14050
-Node: Push Pull14810
-Node: Repo Copies16376
-Ref: savannah-repo17391
-Ref: your-repo18448
-Ref: Repo Copies-Footnote-120167
-Node: Local Branches20224
-Ref: your-repo-222045
-Ref: Local Branches-Footnote-123131
-Node: Branches are state23189
-Node: Repo State23924
-Node: Local State26108
-Node: Remotes26776
-Node: Configuring git28133
-Ref: Configuring git-Footnote-130543
-Node: Development without commit access30714
-Node: Cloning31774
-Ref: Cloning-Footnote-133339
-Node: Switching Branches33406
-Node: Starting A New Branch34040
-Ref: Starting A New Branch-Footnote-136024
-Ref: Starting A New Branch-Footnote-236084
-Node: Undoing a change36166
-Node: Saving Without Committing36790
-Node: Updating38374
-Node: Rebasing38889
-Node: Merge Conflicts39511
-Node: Submitting Changes41788
-Ref: Submitting Changes-Footnote-143972
-Ref: Submitting Changes-Footnote-244011
-Ref: Submitting Changes-Footnote-344047
-Node: Removing Branches44095
-Node: Points to remember44631
-Node: Development with commit access46340
-Node: Initial setup46993
-Node: ssh clone47797
-Node: Developing patches48387
-Node: Developing new features49752
-Node: Developing fixes51664
-Node: General practices52755
-Node: Repo Maintenance57584
-Ref: Repo Maintenance-Footnote-160495
-Node: Development Stuff60631
-Node: Coding style61200
-Ref: Coding style-Footnote-161862
-Node: Doing paperwork61956
-Node: Tools62755
-Node: GNU Tools63345
-Node: Compilers65578
-Ref: Compilers-Footnote-168258
-Node: Debugging68296
-Node: Cheat Sheet69107
-Node: Resources73214
-Node: TODO73799
-Node: Index74021
+Node: Top1168
+Node: Preface5315
+Node: Intended Audience5886
+Node: This Manual6768
+Node: Conventions8329
+Node: Acknowledgments9850
+Node: Reviewers10287
+Node: Contributing10608
+Node: Using Git14062
+Node: Push Pull14822
+Node: Repo Copies16388
+Ref: savannah-repo17403
+Ref: your-repo18460
+Ref: Repo Copies-Footnote-120179
+Node: Local Branches20236
+Ref: your-repo-222057
+Ref: Local Branches-Footnote-123143
+Node: Branches are state23201
+Node: Repo State23936
+Node: Local State26120
+Node: Remotes26788
+Node: Configuring git28145
+Ref: Configuring git-Footnote-130555
+Node: Development without commit access30726
+Node: Cloning31786
+Ref: Cloning-Footnote-133351
+Node: Switching Branches33418
+Node: Starting A New Branch34052
+Ref: Starting A New Branch-Footnote-136036
+Ref: Starting A New Branch-Footnote-236096
+Node: Undoing a change36178
+Node: Saving Without Committing36802
+Node: Updating38386
+Node: Rebasing38901
+Node: Merge Conflicts39523
+Node: Submitting Changes41800
+Ref: Submitting Changes-Footnote-144271
+Ref: Submitting Changes-Footnote-244310
+Ref: Submitting Changes-Footnote-344346
+Node: Removing Branches44394
+Node: Points to remember44930
+Node: Development with commit access46639
+Node: Initial setup47292
+Node: ssh clone48096
+Node: Developing patches48686
+Node: Developing new features50110
+Node: Developing fixes52022
+Node: General practices53113
+Node: Repo Maintenance57946
+Ref: Repo Maintenance-Footnote-160857
+Node: Development Stuff60993
+Node: Coding style61562
+Ref: Coding style-Footnote-162224
+Node: Doing paperwork62318
+Node: Tools63117
+Node: GNU Tools63707
+Node: Compilers65940
+Ref: Compilers-Footnote-168620
+Node: Debugging68658
+Node: Cheat Sheet69469
+Node: Resources73576
+Node: TODO74161
+Node: Index74383

End Tag Table
diff --git a/doc/gawkworkflow.texi b/doc/gawkworkflow.texi
index d455c6d5..2afbb664 100644
--- a/doc/gawkworkflow.texi
+++ b/doc/gawkworkflow.texi
@@ -28,10 +28,10 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH July, 2022
+@set UPDATE-MONTH March, 2023
@set TITLE Participating in @command{gawk} Development
-@set EDITION 0.74
+@set EDITION 0.75
@iftex
@set DOCUMENT booklet
@@ -144,13 +144,13 @@ Fax: +1-617-542-2652
Email: <email>gnu@@gnu.org</email>
URL: <ulink url="http://www.gnu.org">http://www.gnu.org/</ulink></literallayout>
-<literallayout class="normal">Copyright &copy; 2017, 2018, 2019, 2020, 2022
+<literallayout class="normal">Copyright &copy; 2017, 2018, 2019, 2020, 2022, 2023
Free Software Foundation, Inc.
All Rights Reserved.</literallayout>
@end docbook
@ifnotdocbook
-Copyright @copyright{} 2017, 2018, 2019, 2020, 2022
+Copyright @copyright{} 2017, 2018, 2019, 2020, 2022, 2023
Free Software Foundation, Inc.
@end ifnotdocbook
@sp 2
@@ -1301,6 +1301,12 @@ $ @kbd{git diff master > /tmp/python.diff}
Mail the @file{python.diff} file to the appropriate mailing list
along with a description of what you've changed and why.
+The patch file will likely contain changes to generated files,
+such as @file{awkgram.c} or @file{Makefile.in}. If you are
+comfortable manually editing the patch file to remove those
+changes, do so. If not, then send the file as-is and the
+maintainer will handle it.
+
@cindex @command{git} command @subentry @code{git format-patch}
@cindex generating multiple patches
@cindex patches, multiple, generation of
@@ -1493,6 +1499,7 @@ and/or @file{doc/gawk.1}.
@cindex @command{git} command @subentry @code{git diff}
@item
Use @samp{git diff > mychange.diff} to create a patch file.
+(If you want, remove the diffs for generated files.)
@item
Send it to the mailing list for discussion.
@@ -1644,7 +1651,7 @@ Unless you can convince the maintainer (and the other developers!) otherwise,
you should @emph{always} start branches for new features from @code{master},
and not from the current ``stable'' branch.
-Use @samp{checkout -b feature/@var{feature_name}} to create the initial branch.
+Use @samp{git checkout -b feature/@var{feature_name}} to create the initial branch.
You may then elect to keep it purely local, or to push it up to Savannah for
review, even if the feature is not yet totally ``ready for prime time.''
@end table