Contents | < Browse | Browse >
>> Go Back to GccGuide. <<
This file documents GNU `m4', which is a simple macroprocessor. It
has been originally written by Rene' Seindal, from Denmark.
* Menu:
* Intro Introduction to m4
* Manual How to use this manual
* Bugs Reporting bugs in m4
* Invoking m4 How to run the program
* Syntax Lexical and syntactic conventions
* Macros How to invoke macros
* Definitions How to define new macros
* Conditionals Conditionals and loops
* Debugging How to debug macros and input
* Input Control Input control
* File Inclusion File inclusion
* Diversions Diverting and undiverting output
* Text handling Macros for text handling
* Arithmetic Macros for doing arithmetic
* Unix commands Macros for running Unix commands
* Miscellaneous Miscellaneous built-in macros
* Compatibility Compatibility with other versions of m4
* Concept Index Index for many concepts
* Macro Index Index for all m4 macros
-- The Detailed Node Listing --
Lexical and syntactic conventions
* Names Macro names.
* Quoted strings Quoting input to m4.
* Other tokens Other kinds of input tokens.
* Comments Comments in m4 input.
How to invoke macros
* Invocation Macro invocation
* Macro Arguments Macro arguments.
* Quoting Arguments On Quoting Arguments to macros.
* Macro expansion Expanding macros.
How to define new macros
* Define Defining a new macro
* Arguments Arguments to macros
* Pseudo Arguments Pseudo arguments to macros
* Undefine Deleting a macro
* Defn Renaming macros
* Pushdef Temporarily redefining macros
* Indir Indirect call of macros
* Builtin Indirect call of built-ins
Conditionals, loops and recursion
* Ifdef Testing if a macro is defined
* Ifelse If-else construct, or multibranch
* Loops Loops and recursion in m4
How to debug macros and input
* Dumpdef Displaying macro definitions
* Trace Tracing macro calls
* Debug Levels Controlling debugging output
* Debug Output Saving debugging output
Input control
* Dnl Deleting whitespace in input
* Changequote Changing the quote characters
* Changecom Changing the comment delimiters
* M4wrap Saving input until end of input
File inclusion
* Include Including named files
* Search Path Searching for include files
Diverting and undiverting output
* Divert Diverting output
* Undivert Undiverting output
* Divnum Diversion numbers
* Cleardiv Discarding diverted text
Macros for text handling
* Len Calculating length of strings
* Index Searching for substrings
* Regexp Searching for regular expressions
* Substr Extracting substrings
* Translit Translating characters
* Patsubst Substituting text by regular expression
* Format Formatting strings (printf-like)
Macros for doing arithmetic
* Incr Decrement and increment operators
* Eval Evaluating integer expressions
Running Unix commands
* Syscmd Executing simple commands
* Esyscmd Reading the output of commands
* Sysval Exit codes
* Maketemp Making names for temporary files
Miscellaneous built-in macros
* Errprint Printing error messages
* M4exit Exiting from m4
Compatibility with other versions of `m4'
* Extensions Extensions in GNU m4
* Incompatibilities Facilities in System V m4 not in GNU m4
* Other Incompat Other incompatibilities