~ubuntu-branches/ubuntu/gutsy/m4/gutsy

« back to all changes in this revision

Viewing changes to doc/m4.texinfo

  • Committer: Bazaar Package Importer
  • Author(s): Santiago Vila
  • Date: 2004-10-03 18:55:52 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20041003185552-lajte679mu9qog2g
Tags: 1.4.2-1
* New stable release (portability bug fixes, no user visible changes).
* Changed doc-base and copyright files to UTF-8 (Closes: #266018).

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
@ifinfo
26
26
This file documents the GNU @code{m4} utility.
27
27
 
28
 
Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994 Free Software Foundation, Inc.
 
28
Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 2004 Free Software
 
29
Foundation, Inc.
29
30
 
30
31
Permission is granted to make and distribute verbatim copies of
31
32
this manual provided the copyright notice and this permission notice
279
280
for many to install it, while these people will not themselves
280
281
program in @code{m4}.  GNU @code{m4} is mostly compatible with the
281
282
System V, Release 3 version, except for some minor differences.
282
 
@xref{Compatibility} for more details.
 
283
@xref{Compatibility}, for more details.
283
284
 
284
285
Some people found @code{m4} to be fairly addictive.  They first use
285
286
@code{m4} for simple problems, then take bigger and bigger challenges,
349
350
@itemx --debug=@var{flags}
350
351
Set the debug-level according to the flags @var{flags}.  The debug-level
351
352
controls the format and amount of information presented by the debugging
352
 
functions.  @xref{Debug Levels} for more details on the format and
 
353
functions.  @xref{Debug Levels}, for more details on the format and
353
354
meaning of @var{flags}.
354
355
 
355
356
@item -l@var{num}
356
357
@itemx --arglength=@var{num}
357
358
Restrict the size of the output generated by macro tracing.  @xref{Debug
358
 
Levels} for more details.
 
359
Levels}, for more details.
359
360
 
360
361
@item -o@var{file}
361
362
@itemx --error-output=@var{file}
362
363
Redirect debug and trace output to the named file.  Error messages are
363
 
still printed on the standard error output.  @xref{Debug Output} for
 
364
still printed on the standard error output.  @xref{Debug Output}, for
364
365
more details.
365
366
 
366
367
@item -I@var{dir}
367
368
@itemx --include=@var{dir}
368
369
Make @code{m4} search @var{dir} for included files that are not found in
369
 
the current working directory.  @xref{Search Path} for more details.
 
370
the current working directory.  @xref{Search Path}, for more details.
370
371
 
371
372
@item -e
372
373
@itemx --interactive
630
631
@end example
631
632
 
632
633
The quote characters can be changed at any time, using the builtin macro
633
 
@code{changequote}.  @xref{Changequote} for more information.
 
634
@code{changequote}.  @xref{Changequote}, for more information.
634
635
 
635
636
@node Other tokens, Comments, Quoted strings, Syntax
636
637
@section Other tokens
652
653
can be inhibited by quoting it.
653
654
 
654
655
The comment delimiters can be changed to any string at any time, using
655
 
the builtin macro @code{changecom}.  @xref{Changecom} for more
 
656
the builtin macro @code{changecom}.  @xref{Changecom}, for more
656
657
information.
657
658
 
658
659
@c FIXME: more examples would be useful here --ADR
738
739
 
739
740
If your version of GNU @code{m4} has the @code{changeword} feature
740
741
compiled in, there it offers far more flexibility in specifying the
741
 
syntax of macro names, both builtin or user-defined.  @xref{Changeword}
 
742
syntax of macro names, both builtin or user-defined.  @xref{Changeword},
742
743
for more information on this experimental feature.
743
744
 
744
745
Of course, the simplest way to prevent a name to be interpreted
1571
1572
 
1572
1573
The last example shows how builtin macros definitions are displayed.
1573
1574
 
1574
 
@xref{Debug Levels} for information on controlling the details of the
 
1575
@xref{Debug Levels}, for information on controlling the details of the
1575
1576
display.
1576
1577
 
1577
1578
@node Trace, Debug Levels, Dumpdef, Debugging
1622
1623
of the time, signifying an expansion at the outermost level, but it
1623
1624
increases when macro arguments contain unquoted macro calls.
1624
1625
 
1625
 
@xref{Debug Levels} for information on controlling the details of the
 
1626
@xref{Debug Levels}, for information on controlling the details of the
1626
1627
display.
1627
1628
 
1628
1629
@node Debug Levels, Debug Output, Trace, Debugging
2886
2887
 
2887
2888
The expansion of @code{syscmd} is void, @emph{not} the output from
2888
2889
@var{shell-command}!  Output or error messages from @var{shell-command}
2889
 
are not read by @code{m4}.  @xref{Esyscmd} if you need to process the
 
2890
are not read by @code{m4}.  @xref{Esyscmd}, if you need to process the
2890
2891
command output.
2891
2892
 
2892
2893
Prior to executing the command, @code{m4} flushes its output buffers.