GNU Info

Info Node: (texinfo)Macro Details

(texinfo)Macro Details


Next: alias Prev: Invoking Macros Up: Defining New Texinfo Commands
Enter node , (file) or (file)node

Macro Details
=============

  Due to unavoidable disparities in the TeX and `makeinfo'
implementations, Texinfo macros have the following limitations.

   * All macros are expanded inside at least one TeX group.  This means
     that `@set' and other such commands will have no effect inside a
     macro.

   * Macros containing a command which must be on a line by itself,
     such as a conditional, cannot be invoked in the middle of a line.

   * Commas in macro arguments, even if escaped by a backslash, don't
     always work.

   * The TeX implementation cannot construct macros that define macros
     in the natural way.  To do this, you must use conditionals and raw
     TeX.  For example:

          @ifinfo
          @macro ctor {name, arg}
          @macro \name\
          something involving \arg\ somehow
          @end macro
          @end macro
          @end ifinfo
          @tex
          \gdef\ctor#1{\ctorx#1,}
          \gdef\ctorx#1,#2,{\def#1{something involving #2 somehow}}
          @end tex

   * It is best to avoid comments inside macro definitions.


  If some macro feature causes errors when producing the printed version
of a manual, try expanding the macros with `makeinfo' by invoking
`texi2dvi' with the `-e' option; see Note: Format with texi2dvi.


automatically generated by info2www version 1.2.2.9