`definfoenclose': Customized Highlighting
=========================================
A `@definfoenclose' command may be used to define a highlighting
command for Info, but not for TeX. A command defined using
`@definfoenclose' marks text by enclosing it in strings that precede
and follow the text. You can use this to get closer control of your
Info output.
Presumably, if you define a command with `@definfoenclose' for Info,
you will create a corresponding command for TeX, either in
`texinfo.tex', `texinfo.cnf', or within an `@iftex' in your document.
Write a `@definfoenclose' command on a line and follow it with three
arguments separated by commas. The first argument to `@definfoenclose'
is the @-command name (without the `@'); the second argument is the
Info start delimiter string; and the third argument is the Info end
delimiter string. The latter two arguments enclose the highlighted
text in the Info file. A delimiter string may contain spaces. Neither
the start nor end delimiter is required. If you do not want a start
delimiter but do want an end delimiter, you must follow the command
name with two commas in a row; otherwise, the Info formatting commands
will naturally misinterpret the end delimiter string you intended as
the start delimiter string.
If you do a `@definfoenclose' on the name of a pre-defined macro
(such as `@emph', `@strong', `@t', or `@i'), the enclosure definition
will override the built-in definition.
An enclosure command defined this way takes one argument in braces;
this is intended for new markup commands (Note:Marking Text).
For example, you can write:
@definfoenclose phoo,//,\\
near the beginning of a Texinfo file to define `@phoo' as an Info
formatting command that inserts `//' before and `\\' after the argument
to `@phoo'. You can then write `@phoo{bar}' wherever you want
`//bar\\' highlighted in Info.
Also, for TeX formatting, you could write
@iftex
@global@let@phoo=@i
@end iftex
to define `@phoo' as a command that causes TeX to typeset the argument
to `@phoo' in italics.
Each definition applies to its own formatter: one for TeX, the other
for `texinfo-format-buffer' or `texinfo-format-region'. The
`@definfoenclose' command need not be within `@ifinfo', but the raw TeX
commands do need to be in `@iftex'.
Here is another example: write
@definfoenclose headword, , :
near the beginning of the file, to define `@headword' as an Info
formatting command that inserts nothing before and a colon after the
argument to `@headword'.
`@definfoenclose' definitions must not be recursive, directly or
indirectly.