m4-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Changes to m4/doc/m4.info [branch-1_4]


From: Gary V . Vaughan
Subject: Changes to m4/doc/m4.info [branch-1_4]
Date: Thu, 03 Feb 2005 10:21:07 -0500

Index: m4/doc/m4.info
diff -u m4/doc/m4.info:1.1.1.1.2.3 m4/doc/m4.info:1.1.1.1.2.4
--- m4/doc/m4.info:1.1.1.1.2.3  Thu Sep  9 21:10:27 2004
+++ m4/doc/m4.info      Thu Feb  3 15:21:06 2005
@@ -1,4 +1,4 @@
-This is m4.info, produced by makeinfo version 4.7 from m4.texinfo.
+This is m4.info, produced by makeinfo version 4.6 from m4.texinfo.
 
 START-INFO-DIR-ENTRY
 * m4: (m4).                    A powerful macro processor.
@@ -48,9 +48,10 @@
    An experimental feature, which would improve `m4' usefulness, allows
 for changing the syntax for what is a "word" in `m4'.  You should use:
      ./configure --enable-changeword
-   if you want this feature compiled in.  The current implementation
-slows down `m4' considerably and is hardly acceptable.  So, it might go
-away, do not count on it yet.
+
+if you want this feature compiled in.  The current implementation slows
+down `m4' considerably and is hardly acceptable.  So, it might go away,
+do not count on it yet.
 
 * Menu:
 
@@ -184,8 +185,8 @@
 
 File: m4.info,  Node: Preliminaries,  Next: Syntax,  Prev: Top,  Up: Top
 
-1 Introduction and preliminaries
-********************************
+Introduction and preliminaries
+******************************
 
 This first chapter explains what is GNU `m4', where `m4' comes from,
 how to read and use this documentation, how to call the `m4' program
@@ -206,8 +207,8 @@
 
 File: m4.info,  Node: Intro,  Next: History,  Prev: Preliminaries,  Up: 
Preliminaries
 
-1.1 Introduction to `m4'
-========================
+Introduction to `m4'
+====================
 
 `m4' is a macro processor, in the sense that it copies its input to the
 output, expanding macros as it goes.  Macros are either builtin or
@@ -237,8 +238,8 @@
 
 File: m4.info,  Node: History,  Next: Invoking m4,  Prev: Intro,  Up: 
Preliminaries
 
-1.2 Historical references
-=========================
+Historical references
+=====================
 
 The historical notes included here are fairly incomplete, and not
 authoritative at all.  Please knowledgeable users help us to more
@@ -260,8 +261,8 @@
 
 File: m4.info,  Node: Invoking m4,  Next: Bugs,  Prev: History,  Up: 
Preliminaries
 
-1.3 Invoking `m4'
-=================
+Invoking `m4'
+=============
 
 The format of the `m4' command is:
 
@@ -444,8 +445,8 @@
 
 File: m4.info,  Node: Bugs,  Next: Manual,  Prev: Invoking m4,  Up: 
Preliminaries
 
-1.4 Problems and bugs
-=====================
+Problems and bugs
+=================
 
 If you have problems with GNU `m4' or think you've found a bug, please
 report it.  Before reporting a bug, make sure you've actually found a
@@ -473,8 +474,8 @@
 
 File: m4.info,  Node: Manual,  Prev: Bugs,  Up: Preliminaries
 
-1.5 Using this manual
-=====================
+Using this manual
+=================
 
 This manual contains a number of examples of `m4' input and output, and
 a simple notation is used to distinguish input, output and error
@@ -512,8 +513,8 @@
 
 File: m4.info,  Node: Syntax,  Next: Macros,  Prev: Preliminaries,  Up: Top
 
-2 Lexical and syntactic conventions
-***********************************
+Lexical and syntactic conventions
+*********************************
 
 As `m4' reads its input, it separates it into "tokens".  A token is
 either a name, a quoted string, or any single character, that is not a
@@ -530,8 +531,8 @@
 
 File: m4.info,  Node: Names,  Next: Quoted strings,  Prev: Syntax,  Up: Syntax
 
-2.1 Names
-=========
+Names
+=====
 
 A name is any sequence of letters, digits, and the character `_'
 (underscore), where the first character is not a digit.  If a name has
@@ -543,8 +544,8 @@
 
 File: m4.info,  Node: Quoted strings,  Next: Other tokens,  Prev: Names,  Up: 
Syntax
 
-2.2 Quoted strings
-==================
+Quoted strings
+==============
 
 A quoted string is a sequence of characters surrounded by the quotes
 ``' and `'', where the number of start and end quotes within the string
@@ -567,8 +568,8 @@
 
 File: m4.info,  Node: Other tokens,  Next: Comments,  Prev: Quoted strings,  
Up: Syntax
 
-2.3 Other tokens
-================
+Other tokens
+============
 
 Any character, that is neither a part of a name, nor of a quoted string,
 is a token by itself.
@@ -576,8 +577,8 @@
 
 File: m4.info,  Node: Comments,  Prev: Other tokens,  Up: Syntax
 
-2.4 Comments
-============
+Comments
+========
 
 Comments in `m4' are normally delimited by the characters `#' and
 newline.  All characters between the comment delimiters are ignored,
@@ -595,8 +596,8 @@
 
 File: m4.info,  Node: Macros,  Next: Definitions,  Prev: Syntax,  Up: Top
 
-3 How to invoke macros
-**********************
+How to invoke macros
+********************
 
 This chapter covers macro invocation, macro arguments and how macro
 expansion is treated.
@@ -612,8 +613,8 @@
 
 File: m4.info,  Node: Invocation,  Next: Inhibiting Invocation,  Prev: Macros, 
 Up: Macros
 
-3.1 Macro invocation
-====================
+Macro invocation
+================
 
 Macro invocations has one of the forms
 
@@ -642,8 +643,8 @@
 
 File: m4.info,  Node: Inhibiting Invocation,  Next: Macro Arguments,  Prev: 
Invocation,  Up: Macros
 
-3.2 Preventing macro invocation
-===============================
+Preventing macro invocation
+===========================
 
 An innovation of the `m4' language, compared to some of its
 predecessors (like Stratchey's `GPM', for example), is the ability to
@@ -724,8 +725,8 @@
 
 File: m4.info,  Node: Macro Arguments,  Next: Quoting Arguments,  Prev: 
Inhibiting Invocation,  Up: Macros
 
-3.3 Macro arguments
-===================
+Macro arguments
+===============
 
 When a name is seen, and it has a macro definition, it will be expanded
 as a macro.
@@ -755,8 +756,8 @@
 
 File: m4.info,  Node: Quoting Arguments,  Next: Macro expansion,  Prev: Macro 
Arguments,  Up: Macros
 
-3.4 Quoting macro arguments
-===========================
+Quoting macro arguments
+=======================
 
 Each argument has leading unquoted whitespace removed.  Within each
 argument, all unquoted parentheses must match.  For example, if FOO is
@@ -779,8 +780,8 @@
 
 File: m4.info,  Node: Macro expansion,  Prev: Quoting Arguments,  Up: Macros
 
-3.5 Macro expansion
-===================
+Macro expansion
+===============
 
 When the arguments, if any, to a macro call have been collected, the
 macro is expanded, and the expansion text is pushed back onto the input
@@ -799,8 +800,8 @@
 
 File: m4.info,  Node: Definitions,  Next: Conditionals,  Prev: Macros,  Up: Top
 
-4 How to define new macros
-**************************
+How to define new macros
+************************
 
 Macros can be defined, redefined and deleted in several different ways.
 Also, it is possible to redefine a macro, without losing a previous
@@ -821,8 +822,8 @@
 
 File: m4.info,  Node: Define,  Next: Arguments,  Prev: Definitions,  Up: 
Definitions
 
-4.1 Defining a macro
-====================
+Defining a macro
+================
 
 The normal way to define or redefine macros is to use the builtin
 `define':
@@ -852,8 +853,8 @@
 
 File: m4.info,  Node: Arguments,  Next: Pseudo Arguments,  Prev: Define,  Up: 
Definitions
 
-4.2 Arguments to macros
-=======================
+Arguments to macros
+===================
 
 Macros can have arguments.  The Nth argument is denoted by `$n' in the
 expansion text, and is replaced by the Nth actual argument, when the
@@ -903,8 +904,8 @@
 
 File: m4.info,  Node: Pseudo Arguments,  Next: Undefine,  Prev: Arguments,  
Up: Definitions
 
-4.3 Special arguments to macros
-===============================
+Special arguments to macros
+===========================
 
 There is a special notation for the number of actual arguments supplied,
 and for all the actual arguments.
@@ -971,8 +972,8 @@
 
 File: m4.info,  Node: Undefine,  Next: Defn,  Prev: Pseudo Arguments,  Up: 
Definitions
 
-4.4 Deleting a macro
-====================
+Deleting a macro
+================
 
 A macro definition can be removed with `undefine':
 
@@ -1002,8 +1003,8 @@
 
 File: m4.info,  Node: Defn,  Next: Pushdef,  Prev: Undefine,  Up: Definitions
 
-4.5 Renaming macros
-===================
+Renaming macros
+===============
 
 It is possible to rename an already defined macro.  To do this, you need
 the builtin `defn':
@@ -1038,8 +1039,8 @@
 
 File: m4.info,  Node: Pushdef,  Next: Indir,  Prev: Defn,  Up: Definitions
 
-4.6 Temporarily redefining macros
-=================================
+Temporarily redefining macros
+=============================
 
 It is possible to redefine a macro temporarily, reverting to the
 previous definition at a later time.  This is done with the builtins
@@ -1108,14 +1109,15 @@
 
 File: m4.info,  Node: Indir,  Next: Builtin,  Prev: Pushdef,  Up: Definitions
 
-4.7 Indirect call of macros
-===========================
+Indirect call of macros
+=======================
 
 Any macro can be called indirectly with `indir':
 
      indir(NAME, ...)
-   which results in a call to the macro NAME, which is passed the rest
-of the arguments.  This can be used to call macros with "illegal" names
+
+which results in a call to the macro NAME, which is passed the rest of
+the arguments.  This can be used to call macros with "illegal" names
 (`define' allows such names to be defined):
 
      define(`$$internal$macro', `Internal macro (name `$0')')
@@ -1132,23 +1134,24 @@
 
 File: m4.info,  Node: Builtin,  Prev: Indir,  Up: Definitions
 
-4.8 Indirect call of builtins
-=============================
+Indirect call of builtins
+=========================
 
 Builtin macros can be called indirectly with `builtin':
 
      builtin(NAME, ...)
-   which results in a call to the builtin NAME, which is passed the
-rest of the arguments.  This can be used, if NAME has been given
-another definition that has covered the original.
+
+which results in a call to the builtin NAME, which is passed the rest
+of the arguments.  This can be used, if NAME has been given another
+definition that has covered the original.
 
    The macro `builtin' is recognized only with parameters.
 
 
 File: m4.info,  Node: Conditionals,  Next: Debugging,  Prev: Definitions,  Up: 
Top
 
-5 Conditionals, loops and recursion
-***********************************
+Conditionals, loops and recursion
+*********************************
 
 Macros, expanding to plain text, perhaps with arguments, are not quite
 enough.  We would like to have macros expand to different things, based
@@ -1166,8 +1169,8 @@
 
 File: m4.info,  Node: Ifdef,  Next: Ifelse,  Prev: Conditionals,  Up: 
Conditionals
 
-5.1 Testing macro definitions
-=============================
+Testing macro definitions
+=========================
 
 There are two different builtin conditionals in `m4'.  The first is
 `ifdef':
@@ -1191,8 +1194,8 @@
 
 File: m4.info,  Node: Ifelse,  Next: Loops,  Prev: Ifdef,  Up: Conditionals
 
-5.2 Comparing strings
-=====================
+Comparing strings
+=================
 
 The other conditional, `ifelse', is much more powerful.  It can be used
 as a way to introduce a long comment, as an if-else construct, or as a
@@ -1239,8 +1242,8 @@
 
 File: m4.info,  Node: Loops,  Prev: Ifelse,  Up: Conditionals
 
-5.3 Loops and recursion
-=======================
+Loops and recursion
+===================
 
 There is no direct support for loops in `m4', but macros can be
 recursive.  There is no limit on the number of recursion levels, other
@@ -1331,8 +1334,8 @@
 
 File: m4.info,  Node: Debugging,  Next: Input Control,  Prev: Conditionals,  
Up: Top
 
-6 How to debug macros and input
-*******************************
+How to debug macros and input
+*****************************
 
 When writing macros for `m4', most of the time they woould not work as
 intended (as is the case with most programming languages).  There is a
@@ -1348,8 +1351,8 @@
 
 File: m4.info,  Node: Dumpdef,  Next: Trace,  Prev: Debugging,  Up: Debugging
 
-6.1 Displaying macro definitions
-================================
+Displaying macro definitions
+============================
 
 If you want to see what a name expands into, you can use the builtin
 `dumpdef':
@@ -1380,8 +1383,8 @@
 
 File: m4.info,  Node: Trace,  Next: Debug Levels,  Prev: Dumpdef,  Up: 
Debugging
 
-6.2 Tracing macro calls
-=======================
+Tracing macro calls
+===================
 
 It is possible to trace macro calls and expansions through the builtins
 `traceon' and `traceoff':
@@ -1423,8 +1426,8 @@
 
 File: m4.info,  Node: Debug Levels,  Next: Debug Output,  Prev: Trace,  Up: 
Debugging
 
-6.3 Controlling debugging output
-================================
+Controlling debugging output
+============================
 
 The `-d' option to `m4' controls the amount of details presented, when
 using the macros described in the preceding sections.
@@ -1483,9 +1486,10 @@
 control of the debugging output format:
 
      debugmode(opt FLAGS)
-   The argument FLAGS should be a subset of the letters listed above.
-As special cases, if the argument starts with a `+', the flags are
-added to the current debug flags, and if it starts with a `-', they are
+
+The argument FLAGS should be a subset of the letters listed above.  As
+special cases, if the argument starts with a `+', the flags are added
+to the current debug flags, and if it starts with a `-', they are
 removed.  If no argument is present, the debugging flags are set to
 zero (as if no `-d' was given), and with an empty argument the flags
 are reset to the default.
@@ -1493,23 +1497,24 @@
 
 File: m4.info,  Node: Debug Output,  Prev: Debug Levels,  Up: Debugging
 
-6.4 Saving debugging output
-===========================
+Saving debugging output
+=======================
 
 Debug and tracing output can be redirected to files using either the
 `-o' option to `m4', or with the builtin macro `debugfile':
 
      debugfile(opt FILENAME)
-   will send all further debug and trace output to FILENAME.  If
-FILENAME is empty, debug and trace output are discarded and if
-`debugfile' is called without any arguments, debug and trace output are
-sent to the standard error output.
+
+will send all further debug and trace output to FILENAME.  If FILENAME
+is empty, debug and trace output are discarded and if `debugfile' is
+called without any arguments, debug and trace output are sent to the
+standard error output.
 
 
 File: m4.info,  Node: Input Control,  Next: File Inclusion,  Prev: Debugging,  
Up: Top
 
-7 Input control
-***************
+Input control
+*************
 
 This chapter describes various builtin macros for controlling the input
 to `m4'.
@@ -1525,15 +1530,16 @@
 
 File: m4.info,  Node: Dnl,  Next: Changequote,  Prev: Input Control,  Up: 
Input Control
 
-7.1 Deleting whitespace in input
-================================
+Deleting whitespace in input
+============================
 
 The builtin `dnl' reads and discards all characters, up to and
 including the first newline:
 
      dnl
-   and it is often used in connection with `define', to remove the
-newline that follow the call to `define'.  Thus
+
+and it is often used in connection with `define', to remove the newline
+that follow the call to `define'.  Thus
 
      define(`foo', `Macro `foo'.')dnl A very simple macro, indeed.
      foo
@@ -1554,14 +1560,15 @@
 
 File: m4.info,  Node: Changequote,  Next: Changecom,  Prev: Dnl,  Up: Input 
Control
 
-7.2 Changing the quote characters
-=================================
+Changing the quote characters
+=============================
 
 The default quote delimiters can be changed with the builtin
 `changequote':
 
      changequote(opt START, opt END)
-   where START is the new start-quote delimiter and END is the new
+
+where START is the new start-quote delimiter and END is the new
 end-quote delimiter.  If any of the arguments are missing, the default
 quotes (``' and `'') are used instead of the void arguments.
 
@@ -1606,14 +1613,15 @@
 
 File: m4.info,  Node: Changecom,  Next: Changeword,  Prev: Changequote,  Up: 
Input Control
 
-7.3 Changing comment delimiters
-===============================
+Changing comment delimiters
+===========================
 
 The default comment delimiters can be changed with the builtin macro
 `changecom':
 
      changecom(opt START, opt END)
-   where START is the new start-comment delimiter and END is the new
+
+where START is the new start-comment delimiter and END is the new
 end-comment delimiter.  If any of the arguments are void, the default
 comment delimiters (`#' and newline) are used instead of the void
 arguments.  The comment delimiters can be of any length.
@@ -1648,8 +1656,8 @@
 
 File: m4.info,  Node: Changeword,  Next: M4wrap,  Prev: Changecom,  Up: Input 
Control
 
-7.4 Changing the lexical structure of words
-===========================================
+Changing the lexical structure of words
+=======================================
 
      The macro `changeword' and all associated functionnality is
      experimental.  It is only available if the `--enable-changeword'
@@ -1734,8 +1742,8 @@
 
 File: m4.info,  Node: M4wrap,  Prev: Changeword,  Up: Input Control
 
-7.5 Saving input
-================
+Saving input
+============
 
 It is possible to `save' some text until the end of the normal input has
 been seen.  Text can be saved, to be read again by `m4' when the normal
@@ -1745,8 +1753,9 @@
    To save input text, use the builtin `m4wrap':
 
      m4wrap(STRING, ...)
-   which stores STRING and the rest of the arguments in a safe place,
-to be reread when end of input is reached.
+
+which stores STRING and the rest of the arguments in a safe place, to
+be reread when end of input is reached.
 
      define(`cleanup', `This is the `cleanup' actions.
      ')
@@ -1769,8 +1778,8 @@
 
 File: m4.info,  Node: File Inclusion,  Next: Diversions,  Prev: Input Control, 
 Up: Top
 
-8 File inclusion
-****************
+File inclusion
+**************
 
 `m4' allows you to include named files at any point in the input.
 
@@ -1782,8 +1791,8 @@
 
 File: m4.info,  Node: Include,  Next: Search Path,  Prev: File Inclusion,  Up: 
File Inclusion
 
-8.1 Including named files
-=========================
+Including named files
+=====================
 
 There are two builtin macros in `m4' for including files:
 
@@ -1811,9 +1820,10 @@
      Include file start
      foo
      Include file end
-   Normally file inclusion is used to insert the contents of a file
-into the input stream.  The contents of the file will be read by `m4'
-and macro calls in the file will be expanded:
+
+Normally file inclusion is used to insert the contents of a file into
+the input stream.  The contents of the file will be read by `m4' and
+macro calls in the file will be expanded:
 
      define(`foo', `FOO')
      =>
@@ -1846,8 +1856,8 @@
 
 File: m4.info,  Node: Search Path,  Prev: Include,  Up: File Inclusion
 
-8.2 Searching for include files
-===============================
+Searching for include files
+===========================
 
 GNU `m4' allows included files to be found in other directories than
 the current working directory.
@@ -1865,8 +1875,8 @@
 
 File: m4.info,  Node: Diversions,  Next: Text handling,  Prev: File Inclusion, 
 Up: Top
 
-9 Diverting and undiverting output
-**********************************
+Diverting and undiverting output
+********************************
 
 Diversions are a way of temporarily saving output.  The output of `m4'
 can at any time be diverted to a temporary file, and be reinserted into
@@ -1893,8 +1903,8 @@
 
 File: m4.info,  Node: Divert,  Next: Undivert,  Prev: Diversions,  Up: 
Diversions
 
-9.1 Diverting output
-====================
+Diverting output
+================
 
 Output is diverted using `divert':
 
@@ -1937,8 +1947,8 @@
 
 File: m4.info,  Node: Undivert,  Next: Divnum,  Prev: Divert,  Up: Diversions
 
-9.2 Undiverting output
-======================
+Undiverting output
+==================
 
 Diverted text can be undiverted explicitly using the builtin `undivert':
 
@@ -2005,8 +2015,8 @@
 
 File: m4.info,  Node: Divnum,  Next: Cleardiv,  Prev: Undivert,  Up: Diversions
 
-9.3 Diversion numbers
-=====================
+Diversion numbers
+=================
 
 The builtin `divnum':
 
@@ -2034,8 +2044,8 @@
 
 File: m4.info,  Node: Cleardiv,  Prev: Divnum,  Up: Diversions
 
-9.4 Discarding diverted text
-============================
+Discarding diverted text
+========================
 
 Often it is not known, when output is diverted, whether the diverted
 text is actually needed.  Since all non-empty diversion are brought back
@@ -2067,8 +2077,8 @@
 
 File: m4.info,  Node: Text handling,  Next: Arithmetic,  Prev: Diversions,  
Up: Top
 
-10 Macros for text handling
-***************************
+Macros for text handling
+************************
 
 There are a number of builtins in `m4' for manipulating text in various
 ways, extracting substrings, searching, substituting, and so on.
@@ -2086,8 +2096,8 @@
 
 File: m4.info,  Node: Len,  Next: Index,  Prev: Text handling,  Up: Text 
handling
 
-10.1 Calculating length of strings
-==================================
+Calculating length of strings
+=============================
 
 The length of a string can be calculated by `len':
 
@@ -2105,8 +2115,8 @@
 
 File: m4.info,  Node: Index,  Next: Regexp,  Prev: Len,  Up: Text handling
 
-10.2 Searching for substrings
-=============================
+Searching for substrings
+========================
 
 Searching for substrings is done with `index':
 
@@ -2126,8 +2136,8 @@
 
 File: m4.info,  Node: Regexp,  Next: Substr,  Prev: Index,  Up: Text handling
 
-10.3 Searching for regular expressions
-======================================
+Searching for regular expressions
+=================================
 
 Searching for regular expressions is done with the builtin `regexp':
 
@@ -2159,8 +2169,8 @@
 
 File: m4.info,  Node: Substr,  Next: Translit,  Prev: Regexp,  Up: Text 
handling
 
-10.4 Extracting substrings
-==========================
+Extracting substrings
+=====================
 
 Substrings are extracted with `substr':
 
@@ -2180,8 +2190,8 @@
 
 File: m4.info,  Node: Translit,  Next: Patsubst,  Prev: Substr,  Up: Text 
handling
 
-10.5 Translating characters
-===========================
+Translating characters
+======================
 
 Character translation is done with `translit':
 
@@ -2219,13 +2229,14 @@
 
 File: m4.info,  Node: Patsubst,  Next: Format,  Prev: Translit,  Up: Text 
handling
 
-10.6 Substituting text by regular expression
-============================================
+Substituting text by regular expression
+=======================================
 
 Global substitution in a string is done by `patsubst':
 
      patsubst(STRING, REGEXP, opt REPLACEMENT)
-   which searches STRING for matches of REGEXP, and substitutes
+
+which searches STRING for matches of REGEXP, and substitutes
 REPLACEMENT for each match.  The syntax for regular expressions is the
 same as in GNU Emacs.
 
@@ -2273,8 +2284,8 @@
 
 File: m4.info,  Node: Format,  Prev: Patsubst,  Up: Text handling
 
-10.7 Formatted output
-=====================
+Formatted output
+================
 
 Formatted output can be made with `format':
 
@@ -2316,8 +2327,8 @@
 
 File: m4.info,  Node: Arithmetic,  Next: UNIX commands,  Prev: Text handling,  
Up: Top
 
-11 Macros for doing arithmetic
-******************************
+Macros for doing arithmetic
+***************************
 
 Integer arithmetic is included in `m4', with a C-like syntax.  As
 convenient shorthands, there are builtins for simple increment and
@@ -2331,8 +2342,8 @@
 
 File: m4.info,  Node: Incr,  Next: Eval,  Prev: Arithmetic,  Up: Arithmetic
 
-11.1 Decrement and increment operators
-======================================
+Decrement and increment operators
+=================================
 
 Increment and decrement of integers are supported using the builtins
 `incr' and `decr':
@@ -2354,8 +2365,8 @@
 
 File: m4.info,  Node: Eval,  Prev: Incr,  Up: Arithmetic
 
-11.2 Evaluating integer expressions
-===================================
+Evaluating integer expressions
+==============================
 
 Integer expressions are evaluated with `eval':
 
@@ -2475,8 +2486,8 @@
 
 File: m4.info,  Node: UNIX commands,  Next: Miscellaneous,  Prev: Arithmetic,  
Up: Top
 
-12 Running UNIX commands
-************************
+Running UNIX commands
+*********************
 
 There are a few builtin macros in `m4' that allow you to run UNIX
 commands from within `m4'.
@@ -2491,8 +2502,8 @@
 
 File: m4.info,  Node: Syscmd,  Next: Esyscmd,  Prev: UNIX commands,  Up: UNIX 
commands
 
-12.1 Executing simple commands
-==============================
+Executing simple commands
+=========================
 
 Any shell command can be executed, using `syscmd':
 
@@ -2514,8 +2525,8 @@
 
 File: m4.info,  Node: Esyscmd,  Next: Sysval,  Prev: Syscmd,  Up: UNIX commands
 
-12.2 Reading the output of commands
-===================================
+Reading the output of commands
+==============================
 
 If you want `m4' to read the output of a UNIX command, use `esyscmd':
 
@@ -2544,8 +2555,8 @@
 
 File: m4.info,  Node: Sysval,  Next: Maketemp,  Prev: Esyscmd,  Up: UNIX 
commands
 
-12.3 Exit codes
-===============
+Exit codes
+==========
 
 To see whether a shell command succeeded, use `sysval':
 
@@ -2566,8 +2577,8 @@
 
 File: m4.info,  Node: Maketemp,  Prev: Sysval,  Up: UNIX commands
 
-12.4 Making names for temporary files
-=====================================
+Making names for temporary files
+================================
 
 Commands specified to `syscmd' or `esyscmd' might need a temporary
 file, for output or for some other purpose.  There is a builtin macro,
@@ -2588,8 +2599,8 @@
 
 File: m4.info,  Node: Miscellaneous,  Next: Frozen files,  Prev: UNIX 
commands,  Up: Top
 
-13 Miscellaneous builtin macros
-*******************************
+Miscellaneous builtin macros
+****************************
 
 This chapter describes various builtins, that do not really belong in
 any of the previous chapters.
@@ -2602,13 +2613,14 @@
 
 File: m4.info,  Node: Errprint,  Next: M4exit,  Prev: Miscellaneous,  Up: 
Miscellaneous
 
-13.1 Printing error messages
-============================
+Printing error messages
+=======================
 
 You can print error messages using `errprint':
 
      errprint(MESSAGE, ...)
-   which simply prints MESSAGE and the rest of the arguments on the
+
+which simply prints MESSAGE and the rest of the arguments on the
 standard error output.
 
    The expansion of `errprint' is void.
@@ -2627,7 +2639,8 @@
 
      __file__
      __line__
-   which expands to the quoted name of the current input file, and the
+
+which expands to the quoted name of the current input file, and the
 current input line number in that file.
 
      errprint(`m4:'__file__:__line__: `Input error
@@ -2638,15 +2651,16 @@
 
 File: m4.info,  Node: M4exit,  Prev: Errprint,  Up: Miscellaneous
 
-13.2 Exiting from `m4'
-======================
+Exiting from `m4'
+=================
 
 If you need to exit from `m4' before the entire input has been read,
 you can use `m4exit':
 
      m4exit(opt CODE)
-   which causes `m4' to exit, with exit code CODE.  If CODE is left
-out, the exit code is zero.
+
+which causes `m4' to exit, with exit code CODE.  If CODE is left out,
+the exit code is zero.
 
      define(`fatal_error', `errprint(`m4: '__file__: __line__`: fatal error: $*
      ')m4exit(1)')
@@ -2662,8 +2676,8 @@
 
 File: m4.info,  Node: Frozen files,  Next: Compatibility,  Prev: 
Miscellaneous,  Up: Top
 
-14 Fast loading of frozen states
-********************************
+Fast loading of frozen states
+*****************************
 
 Some bigger `m4' applications may be built over a common base
 containing hundreds of definitions and other costly initializations.
@@ -2777,8 +2791,8 @@
 
 File: m4.info,  Node: Compatibility,  Next: Concept index,  Prev: Frozen 
files,  Up: Top
 
-15 Compatibility with other versions of `m4'
-********************************************
+Compatibility with other versions of `m4'
+*****************************************
 
 This chapter describes the differences between this implementation of
 `m4', and the implementation found under UNIX, notably System V,
@@ -2796,8 +2810,8 @@
 
 File: m4.info,  Node: Extensions,  Next: Incompatibilities,  Prev: 
Compatibility,  Up: Compatibility
 
-15.1 Extensions in GNU `m4'
-===========================
+Extensions in GNU `m4'
+======================
 
 This version of `m4' contains a few facilities, that do not exist in
 System V `m4'.  These extra facilities are all suppressed by using the
@@ -2854,8 +2868,8 @@
 
 File: m4.info,  Node: Incompatibilities,  Next: Other Incompat,  Prev: 
Extensions,  Up: Compatibility
 
-15.2 Facilities in System V `m4' not in GNU `m4'
-================================================
+Facilities in System V `m4' not in GNU `m4'
+===========================================
 
 The version of `m4' from System V contains a few facilities that have
 not been implemented in GNU `m4' yet.
@@ -2866,8 +2880,8 @@
 
 File: m4.info,  Node: Other Incompat,  Prev: Incompatibilities,  Up: 
Compatibility
 
-15.3 Other incompatibilities
-============================
+Other incompatibilities
+=======================
 
 There are a few other incompatibilities between this implementation of
 `m4', and the System V version.
@@ -2920,142 +2934,141 @@
 Concept index
 *************
 
- * Menu:
 
-* arguments to macros:                   Macro Arguments.     (line   6)
-* Arguments to macros:                   Arguments.           (line   6)
-* arguments to macros, special:          Pseudo Arguments.    (line   6)
-* arguments, quoted macro:               Quoting Arguments.   (line   6)
-* arithmetic:                            Arithmetic.          (line   6)
-* builtins, indirect call of:            Builtin.             (line   6)
-* call of builtins, indirect:            Builtin.             (line   6)
-* call of macros, indirect:              Indir.               (line   6)
-* changing comment delimiters:           Changecom.           (line   6)
-* changing the quote delimiters:         Changequote.         (line   6)
-* characters, translating:               Translit.            (line   6)
-* command line, filenames on the:        Invoking m4.         (line 176)
-* command line, macro definitions on the: Invoking m4.        (line 143)
-* command line, options:                 Invoking m4.         (line  10)
-* commands, exit code from UNIX:         Sysval.              (line   6)
-* commands, running UNIX:                UNIX commands.       (line   6)
-* comment delimiters, changing:          Changecom.           (line   6)
-* comments:                              Comments.            (line   6)
-* comments, copied to output:            Changecom.           (line  28)
-* comparing strings:                     Ifelse.              (line   6)
-* compatibility:                         Compatibility.       (line   6)
-* conditionals:                          Ifdef.               (line   6)
-* controlling debugging output:          Debug Levels.        (line   6)
-* counting loops:                        Loops.               (line  42)
-* debugging output, controlling:         Debug Levels.        (line   6)
-* debugging output, saving:              Debug Output.        (line   6)
-* decrement operator:                    Incr.                (line   6)
-* defining new macros:                   Definitions.         (line   6)
-* definitions, displaying macro:         Dumpdef.             (line   6)
-* deleting macros:                       Undefine.            (line   6)
-* deleting whitespace in input:          Dnl.                 (line   6)
-* discarding diverted text:              Cleardiv.            (line   6)
-* displaying macro definitions:          Dumpdef.             (line   6)
-* diversion numbers:                     Divnum.              (line   6)
-* diverted text, discarding:             Cleardiv.            (line   6)
-* diverting output to files:             Divert.              (line   6)
-* dumping into frozen file:              Frozen files.        (line   6)
-* error messages, printing:              Errprint.            (line   6)
-* evaluation, of integer expressions:    Eval.                (line   6)
-* executing UNIX commands:               UNIX commands.       (line   6)
-* exit code from UNIX commands:          Sysval.              (line   6)
-* exiting from m4:                       M4exit.              (line   6)
-* expansion of macros:                   Macro expansion.     (line   6)
-* expansion, tracing macro:              Trace.               (line   6)
-* expressions, evaluation of integer:    Eval.                (line   6)
-* extracting substrings:                 Substr.              (line   6)
-* fast loading of frozen files:          Frozen files.        (line   6)
-* file inclusion <1>:                    Undivert.            (line  53)
-* file inclusion:                        File Inclusion.      (line   6)
-* filenames, on the command line:        Invoking m4.         (line 176)
-* files, diverting output to:            Divert.              (line   6)
-* files, names of temporary:             Maketemp.            (line   6)
-* forloops:                              Loops.               (line  42)
-* formatted output:                      Format.              (line   6)
-* frozen files for fast loading:         Frozen files.        (line   6)
-* GNU extensions <1>:                    Undivert.            (line  53)
-* GNU extensions <2>:                    Patsubst.            (line   6)
-* GNU extensions <3>:                    Extensions.          (line   6)
-* GNU extensions <4>:                    Search Path.         (line   6)
-* GNU extensions <5>:                    Frozen files.        (line   6)
-* GNU extensions <6>:                    Indir.               (line   6)
-* GNU extensions <7>:                    Regexp.              (line   6)
-* GNU extensions <8>:                    Debug Output.        (line   6)
-* GNU extensions <9>:                    Debug Levels.        (line  59)
-* GNU extensions <10>:                   Builtin.             (line   6)
-* GNU extensions <11>:                   Format.              (line   6)
-* GNU extensions <12>:                   Esyscmd.             (line   6)
-* GNU extensions:                        Arguments.           (line  28)
-* included files, search path for:       Search Path.         (line   6)
-* inclusion, of files <1>:               File Inclusion.      (line   6)
-* inclusion, of files:                   Undivert.            (line  53)
-* increment operator:                    Incr.                (line   6)
-* indirect call of builtins:             Builtin.             (line   6)
-* indirect call of macros:               Indir.               (line   6)
-* initialization, frozen states:         Frozen files.        (line   6)
-* input tokens:                          Syntax.              (line   6)
-* input, saving:                         M4wrap.              (line   6)
-* integer arithmetic:                    Arithmetic.          (line   6)
-* integer expression evaluation:         Eval.                (line   6)
-* length of strings:                     Len.                 (line   6)
-* lexical structure of words:            Changeword.          (line   6)
-* loops:                                 Loops.               (line  10)
-* loops, counting:                       Loops.               (line  42)
-* macro definitions, on the command line: Invoking m4.        (line 143)
-* macro expansion, tracing:              Trace.               (line   6)
-* macro invocation:                      Invocation.          (line   6)
-* macros, arguments to <1>:              Arguments.           (line   6)
-* macros, arguments to:                  Macro Arguments.     (line   6)
-* macros, displaying definitions:        Dumpdef.             (line   6)
-* macros, expansion of:                  Macro expansion.     (line   6)
-* macros, how to define new:             Definitions.         (line   6)
-* macros, how to delete:                 Undefine.            (line   6)
-* macros, how to rename:                 Defn.                (line   6)
-* macros, indirect call of:              Indir.               (line   6)
-* macros, quoted arguments to:           Quoting Arguments.   (line   6)
-* macros, recursive:                     Loops.               (line   6)
-* macros, special arguments to:          Pseudo Arguments.    (line   6)
-* macros, temporary redefinition of:     Pushdef.             (line   6)
-* messages, printing error:              Errprint.            (line   6)
-* multibranches:                         Ifelse.              (line  33)
-* names:                                 Names.               (line   6)
-* options, command line:                 Invoking m4.         (line  10)
-* output, diverting to files:            Divert.              (line   6)
-* output, formatted:                     Format.              (line   6)
-* output, saving debugging:              Debug Output.        (line   6)
-* pattern substitution:                  Patsubst.            (line   6)
-* printing error messages:               Errprint.            (line   6)
-* quote delimiters, changing the:        Changequote.         (line   6)
-* quoted macro arguments:                Quoting Arguments.   (line   6)
-* quoted string:                         Quoted strings.      (line   6)
-* recursive macros:                      Loops.               (line   6)
-* redefinition of macros, temporary:     Pushdef.             (line   6)
-* regular expressions <1>:               Patsubst.            (line   6)
-* regular expressions:                   Regexp.              (line   6)
-* reloading a frozen file:               Frozen files.        (line   6)
-* renaming macros:                       Defn.                (line   6)
-* running UNIX commands:                 UNIX commands.       (line   6)
-* saving debugging output:               Debug Output.        (line   6)
-* saving input:                          M4wrap.              (line   6)
-* search path for included files:        Search Path.         (line   6)
-* special arguments to macros:           Pseudo Arguments.    (line   6)
-* strings, length of:                    Len.                 (line   6)
-* substitution by regular expression:    Patsubst.            (line   6)
-* substrings, extracting:                Substr.              (line   6)
-* temporary filenames:                   Maketemp.            (line   6)
-* temporary redefinition of macros:      Pushdef.             (line   6)
-* tokens:                                Syntax.              (line   6)
-* tracing macro expansion:               Trace.               (line   6)
-* translating characters:                Translit.            (line   6)
-* undefining macros:                     Undefine.            (line   6)
-* UNIX commands, exit code from:         Sysval.              (line   6)
-* UNIX commands, running:                UNIX commands.       (line   6)
-* words, lexical structure of:           Changeword.          (line   6)
+* Arguments to macros:                   Arguments.
+* arguments to macros:                   Macro Arguments.
+* arguments to macros, special:          Pseudo Arguments.
+* arguments, quoted macro:               Quoting Arguments.
+* arithmetic:                            Arithmetic.
+* builtins, indirect call of:            Builtin.
+* call of builtins, indirect:            Builtin.
+* call of macros, indirect:              Indir.
+* changing comment delimiters:           Changecom.
+* changing the quote delimiters:         Changequote.
+* characters, translating:               Translit.
+* command line, filenames on the:        Invoking m4.
+* command line, macro definitions on the: Invoking m4.
+* command line, options:                 Invoking m4.
+* commands, exit code from UNIX:         Sysval.
+* commands, running UNIX:                UNIX commands.
+* comment delimiters, changing:          Changecom.
+* comments:                              Comments.
+* comments, copied to output:            Changecom.
+* comparing strings:                     Ifelse.
+* compatibility:                         Compatibility.
+* conditionals:                          Ifdef.
+* controlling debugging output:          Debug Levels.
+* counting loops:                        Loops.
+* debugging output, controlling:         Debug Levels.
+* debugging output, saving:              Debug Output.
+* decrement operator:                    Incr.
+* defining new macros:                   Definitions.
+* definitions, displaying macro:         Dumpdef.
+* deleting macros:                       Undefine.
+* deleting whitespace in input:          Dnl.
+* discarding diverted text:              Cleardiv.
+* displaying macro definitions:          Dumpdef.
+* diversion numbers:                     Divnum.
+* diverted text, discarding:             Cleardiv.
+* diverting output to files:             Divert.
+* dumping into frozen file:              Frozen files.
+* error messages, printing:              Errprint.
+* evaluation, of integer expressions:    Eval.
+* executing UNIX commands:               UNIX commands.
+* exit code from UNIX commands:          Sysval.
+* exiting from m4:                       M4exit.
+* expansion of macros:                   Macro expansion.
+* expansion, tracing macro:              Trace.
+* expressions, evaluation of integer:    Eval.
+* extracting substrings:                 Substr.
+* fast loading of frozen files:          Frozen files.
+* file inclusion <1>:                    Undivert.
+* file inclusion:                        File Inclusion.
+* filenames, on the command line:        Invoking m4.
+* files, diverting output to:            Divert.
+* files, names of temporary:             Maketemp.
+* forloops:                              Loops.
+* formatted output:                      Format.
+* frozen files for fast loading:         Frozen files.
+* GNU extensions <1>:                    Extensions.
+* GNU extensions <2>:                    Frozen files.
+* GNU extensions <3>:                    Esyscmd.
+* GNU extensions <4>:                    Format.
+* GNU extensions <5>:                    Patsubst.
+* GNU extensions <6>:                    Regexp.
+* GNU extensions <7>:                    Undivert.
+* GNU extensions <8>:                    Search Path.
+* GNU extensions <9>:                    Debug Output.
+* GNU extensions <10>:                   Debug Levels.
+* GNU extensions <11>:                   Builtin.
+* GNU extensions <12>:                   Indir.
+* GNU extensions:                        Arguments.
+* included files, search path for:       Search Path.
+* inclusion, of files <1>:               Undivert.
+* inclusion, of files:                   File Inclusion.
+* increment operator:                    Incr.
+* indirect call of builtins:             Builtin.
+* indirect call of macros:               Indir.
+* initialization, frozen states:         Frozen files.
+* input tokens:                          Syntax.
+* input, saving:                         M4wrap.
+* integer arithmetic:                    Arithmetic.
+* integer expression evaluation:         Eval.
+* length of strings:                     Len.
+* lexical structure of words:            Changeword.
+* loops:                                 Loops.
+* loops, counting:                       Loops.
+* macro definitions, on the command line: Invoking m4.
+* macro expansion, tracing:              Trace.
+* macro invocation:                      Invocation.
+* macros, arguments to <1>:              Arguments.
+* macros, arguments to:                  Macro Arguments.
+* macros, displaying definitions:        Dumpdef.
+* macros, expansion of:                  Macro expansion.
+* macros, how to define new:             Definitions.
+* macros, how to delete:                 Undefine.
+* macros, how to rename:                 Defn.
+* macros, indirect call of:              Indir.
+* macros, quoted arguments to:           Quoting Arguments.
+* macros, recursive:                     Loops.
+* macros, special arguments to:          Pseudo Arguments.
+* macros, temporary redefinition of:     Pushdef.
+* messages, printing error:              Errprint.
+* multibranches:                         Ifelse.
+* names:                                 Names.
+* options, command line:                 Invoking m4.
+* output, diverting to files:            Divert.
+* output, formatted:                     Format.
+* output, saving debugging:              Debug Output.
+* pattern substitution:                  Patsubst.
+* printing error messages:               Errprint.
+* quote delimiters, changing the:        Changequote.
+* quoted macro arguments:                Quoting Arguments.
+* quoted string:                         Quoted strings.
+* recursive macros:                      Loops.
+* redefinition of macros, temporary:     Pushdef.
+* regular expressions <1>:               Patsubst.
+* regular expressions:                   Regexp.
+* reloading a frozen file:               Frozen files.
+* renaming macros:                       Defn.
+* running UNIX commands:                 UNIX commands.
+* saving debugging output:               Debug Output.
+* saving input:                          M4wrap.
+* search path for included files:        Search Path.
+* special arguments to macros:           Pseudo Arguments.
+* strings, length of:                    Len.
+* substitution by regular expression:    Patsubst.
+* substrings, extracting:                Substr.
+* temporary filenames:                   Maketemp.
+* temporary redefinition of macros:      Pushdef.
+* tokens:                                Syntax.
+* tracing macro expansion:               Trace.
+* translating characters:                Translit.
+* undefining macros:                     Undefine.
+* UNIX commands, exit code from:         Sysval.
+* UNIX commands, running:                UNIX commands.
+* words, lexical structure of:           Changeword.
 
 
 File: m4.info,  Node: Macro index,  Prev: Concept index,  Up: Top
@@ -3067,133 +3080,132 @@
 the first time.  Names starting and ending with `__' have these
 characters removed in the index.
 
- * Menu:
 
-* builtin:                               Builtin.              (line  6)
-* changecom:                             Changecom.            (line  6)
-* changequote:                           Changequote.          (line  6)
-* changeword:                            Changeword.           (line  6)
-* debugfile:                             Debug Output.         (line  6)
-* debugmode:                             Debug Levels.         (line 59)
-* decr:                                  Incr.                 (line  6)
-* define:                                Define.               (line  6)
-* defn:                                  Defn.                 (line  6)
-* divert:                                Divert.               (line  6)
-* divnum:                                Divnum.               (line  6)
-* dnl:                                   Dnl.                  (line  6)
-* dumpdef:                               Dumpdef.              (line  6)
-* errprint:                              Errprint.             (line  6)
-* esyscmd:                               Esyscmd.              (line  6)
-* eval:                                  Eval.                 (line  6)
-* file:                                  Errprint.             (line 26)
-* format:                                Format.               (line  6)
-* gnu:                                   Other Incompat.       (line 44)
-* ifdef:                                 Ifdef.                (line  6)
-* ifelse:                                Ifelse.               (line  6)
-* include:                               Include.              (line  6)
-* incr:                                  Incr.                 (line  6)
-* index:                                 Index.                (line  6)
-* indir:                                 Indir.                (line  6)
-* len:                                   Len.                  (line  6)
-* line:                                  Errprint.             (line 26)
-* m4exit:                                M4exit.               (line  6)
-* m4wrap:                                M4wrap.               (line  6)
-* maketemp:                              Maketemp.             (line  6)
-* patsubst:                              Patsubst.             (line  6)
-* popdef:                                Pushdef.              (line  7)
-* pushdef:                               Pushdef.              (line  7)
-* regexp:                                Regexp.               (line  6)
-* shift:                                 Loops.                (line 13)
-* sinclude:                              Include.              (line  6)
-* substr:                                Substr.               (line  6)
-* syscmd:                                Syscmd.               (line  6)
-* sysval:                                Sysval.               (line  6)
-* traceoff:                              Trace.                (line  6)
-* traceon:                               Trace.                (line  6)
-* translit:                              Translit.             (line  6)
-* undefine:                              Undefine.             (line  6)
-* undivert:                              Undivert.             (line  6)
-* unix:                                  Other Incompat.       (line 47)
+* builtin:                               Builtin.
+* changecom:                             Changecom.
+* changequote:                           Changequote.
+* changeword:                            Changeword.
+* debugfile:                             Debug Output.
+* debugmode:                             Debug Levels.
+* decr:                                  Incr.
+* define:                                Define.
+* defn:                                  Defn.
+* divert:                                Divert.
+* divnum:                                Divnum.
+* dnl:                                   Dnl.
+* dumpdef:                               Dumpdef.
+* errprint:                              Errprint.
+* esyscmd:                               Esyscmd.
+* eval:                                  Eval.
+* file:                                  Errprint.
+* format:                                Format.
+* gnu:                                   Other Incompat.
+* ifdef:                                 Ifdef.
+* ifelse:                                Ifelse.
+* include:                               Include.
+* incr:                                  Incr.
+* index:                                 Index.
+* indir:                                 Indir.
+* len:                                   Len.
+* line:                                  Errprint.
+* m4exit:                                M4exit.
+* m4wrap:                                M4wrap.
+* maketemp:                              Maketemp.
+* patsubst:                              Patsubst.
+* popdef:                                Pushdef.
+* pushdef:                               Pushdef.
+* regexp:                                Regexp.
+* shift:                                 Loops.
+* sinclude:                              Include.
+* substr:                                Substr.
+* syscmd:                                Syscmd.
+* sysval:                                Sysval.
+* traceoff:                              Trace.
+* traceon:                               Trace.
+* translit:                              Translit.
+* undefine:                              Undefine.
+* undivert:                              Undivert.
+* unix:                                  Other Incompat.
 
 
 
 Tag Table:
 Node: Top947
-Node: Preliminaries6950
-Node: Intro7676
-Node: History9290
-Node: Invoking m410216
-Node: Bugs17017
-Node: Manual18290
-Node: Syntax19661
-Node: Names20249
-Node: Quoted strings20627
-Node: Other tokens21217
-Node: Comments21439
-Node: Macros22107
-Node: Invocation22601
-Node: Inhibiting Invocation23417
-Node: Macro Arguments26568
-Node: Quoting Arguments27837
-Node: Macro expansion28647
-Node: Definitions29315
-Node: Define30092
-Node: Arguments30908
-Node: Pseudo Arguments32393
-Node: Undefine34249
-Node: Defn34916
-Node: Pushdef36078
-Node: Indir37919
-Node: Builtin38688
-Node: Conditionals39139
-Node: Ifdef39847
-Node: Ifelse40621
-Node: Loops42392
-Node: Debugging45669
-Node: Dumpdef46249
-Node: Trace47103
-Node: Debug Levels48488
-Node: Debug Output50878
-Node: Input Control51405
-Node: Dnl51943
-Node: Changequote53075
-Node: Changecom54446
-Node: Changeword55737
-Node: M4wrap58954
-Node: File Inclusion60163
-Node: Include60480
-Node: Search Path62415
-Node: Diversions63206
-Node: Divert64444
-Node: Undivert65581
-Node: Divnum67520
-Node: Cleardiv68070
-Node: Text handling69111
-Node: Len69834
-Node: Index70239
-Node: Regexp70831
-Node: Substr71929
-Node: Translit72556
-Node: Patsubst74006
-Node: Format76106
-Node: Arithmetic77602
-Node: Incr78050
-Node: Eval78561
-Node: UNIX commands81567
-Node: Syscmd82041
-Node: Esyscmd82762
-Node: Sysval83715
-Node: Maketemp84129
-Node: Miscellaneous84879
-Node: Errprint85251
-Node: M4exit86253
-Node: Frozen files87047
-Node: Compatibility91970
-Node: Extensions92591
-Node: Incompatibilities94954
-Node: Other Incompat95403
-Node: Concept index97573
-Node: Macro index107424
+Node: Preliminaries6948
+Node: Intro7670
+Node: History9276
+Node: Invoking m410194
+Node: Bugs16987
+Node: Manual18252
+Node: Syntax19615
+Node: Names20199
+Node: Quoted strings20569
+Node: Other tokens21151
+Node: Comments21365
+Node: Macros22025
+Node: Invocation22515
+Node: Inhibiting Invocation23323
+Node: Macro Arguments26466
+Node: Quoting Arguments27727
+Node: Macro expansion28529
+Node: Definitions29189
+Node: Define29962
+Node: Arguments30770
+Node: Pseudo Arguments32247
+Node: Undefine34095
+Node: Defn34754
+Node: Pushdef35908
+Node: Indir37741
+Node: Builtin38500
+Node: Conditionals38941
+Node: Ifdef39645
+Node: Ifelse40411
+Node: Loops42174
+Node: Debugging45443
+Node: Dumpdef46019
+Node: Trace46865
+Node: Debug Levels48242
+Node: Debug Output50623
+Node: Input Control51140
+Node: Dnl51674
+Node: Changequote52796
+Node: Changecom54157
+Node: Changeword55438
+Node: M4wrap58647
+Node: File Inclusion59846
+Node: Include60159
+Node: Search Path62084
+Node: Diversions62867
+Node: Divert64101
+Node: Undivert65230
+Node: Divnum67161
+Node: Cleardiv67703
+Node: Text handling68736
+Node: Len69453
+Node: Index69848
+Node: Regexp70430
+Node: Substr71518
+Node: Translit72135
+Node: Patsubst73575
+Node: Format75663
+Node: Arithmetic77149
+Node: Incr77591
+Node: Eval78092
+Node: UNIX commands81088
+Node: Syscmd81556
+Node: Esyscmd82267
+Node: Sysval83210
+Node: Maketemp83614
+Node: Miscellaneous84354
+Node: Errprint84720
+Node: M4exit85708
+Node: Frozen files86490
+Node: Compatibility91407
+Node: Extensions92022
+Node: Incompatibilities94375
+Node: Other Incompat94814
+Node: Concept index96974
+Node: Macro index103979
 
 End Tag Table




reply via email to

[Prev in Thread] Current Thread [Next in Thread]