Sometimes, a name is desired that does not conform to the permitted lexis for a Z name recognised by cadiz. In such cases, distinct typesetting instructions can be explicitly associated with a lexically-valid Z name. The troff mark-up for this is as follows, on a line by itself.
.ZG WORD `troff typesetting instructions`
For example, the finite subsets symbol is marked-up as fss,
and its mathematical appearance is requested using this directive.
.ZG fss `\f(YBF\fP`
As the association is with a Z word rather than a Z name, this directive also serves for non-empty finite subsets. The troff instructions in the above example select the font YB, set a letter F from that font, and change back to the previous font. The available fonts are described in $CADIZ/mip/groff/man/groff.font.5. More often, such directives are used to typeset non-ASCII symbols, as in the example of the relation arrow.
.ZG rel `\(rl`
The two character names for the available non-ASCII symbols are listed in $CADIZ/mip/groff/man/groff_char.7 with additional mathematical symbols in $CADIZ/mip/groff/man/zfont.7.
With LATEX mark-up, a LATEX command name is acceptable as a Z word, and so a \newcommand solves the above problem. However, there remains the problem of relating the LATEX command name to a sequence of troff instructions for the interactive cadiz display, which is generated using troff. This is necessary for all LATEX command names, as the \ can otherwise throw troff into much confusion. (The usual evidence of a missing directive is either a garbled display or the message ``Time-out waiting for troff''.) The LATEX mark-up for relating a command name to a sequence of troff instructions is as follows, on a line by itself.
%%glyph WORD `troff typesetting instructions`
These glyph directives must be written before the declaration of associated Z names, and must appear within the same Z section, or an ancestral Z section.
In the case of a user-defined operator, separate directives may be given for each of the operator's words. A quantity of space is automatically inserted around these words, more for relations than functions and generics, so don't include any space in the directives. Any strokes are typeset directly after the words.
There is no way to write grave characters or newlines inside typesetting instructions.