Glyph names can be embedded into the document text by using escape sequences.
groff(7) describes how these escape sequences look. Glyph names can consist of quite arbitrary characters from the ASCII or Latin-1 code set, not only alphanumeric characters. Here some examples:
\c
A glyph having the name c, which consists of a single character (length 1).
\(ch
A glyph having the 2-character name ch.
\[char_name]
A glyph having the name char_name (having length 1, 2, 3, ...).
\[base_glyph composite_1 composite_2 ...]
A composite glyph; see below for a more detailed description.
In groff, each 8-bit input character can also referred to by the construct `\[char n]' where n is the decimal code of the character, a number between 0 and 255 without leading zeros (those entities are not glyph names). They are normally mapped onto glyphs using the .trin request. Another special convention is the handling of glyphs with names directly derived from a Unicode code point; this is discussed below. Moreover, new glyph names can be created by the .char request; see groff(7).
In the following, a plus sign in the `Notes' column indicates that this particular glyph name appears in the PS version of the original troff documentation, CSTR 54.
Ligatures and Other Latin Glyphs
Accented Characters
Accents
The composite request is used to map most of the accents to non-spacing glyph names; the values given in parentheses are the original (spacing) ones.
Quotes
Punctuation
Brackets
The extensible bracket pieces are font-invariant glyphs. In classical troff only one glyph was available to vertically extend brackets, braces, and parentheses: `bv'. We map it rather arbitrarily to u23AA.
Note that not all devices contain extensible bracket pieces which can be piled up with `\b ' due to the restrictions of the escape's piling algorithm. A general solution to build brackets out of pieces is the following macro:
.\" Make a pile centered vertically 0.5em
.\" above the baseline.
.\" The first argument is placed at the top.
.\" The pile is returned in string `pile'
.eo
.de pile-make
. nr pile-wd 0
. nr pile-ht 0
. ds pile-args
.
. nr pile-# \n[.$]
. while \n[pile-#] \{\
. nr pile-wd (\n[pile-wd] >? \w'\$[\n[pile-#]]')
. nr pile-ht +(\n[rst] - \n[rsb])
. as pile-args \v'\n[rsb]u'\"
. as pile-args \Z'\$[\n[pile-#]]'\"
. as pile-args \v'-\n[rst]u'\"
. nr pile-# -1
. \}
.
. ds pile \v'(-0.5m + (\n[pile-ht]u / 2u))'\"
. as pile \*[pile-args]\"
. as pile \v'((\n[pile-ht]u / 2u) + 0.5m)'\"
. as pile \h'\n[pile-wd]u'\"
..
.ec
Another complication is the fact that some glyphs which represent bracket pieces in original troff can be used for other mathematical symbols also, for example `lf' and `rf' which provide the `floor' operator. Other devices (most notably for DVI output) don't unify such glyphs. For this reason, the four glyphs `lf', `rf', `lc', and `rc' are not unified with similarly looking bracket pieces. In groff, only glyphs with long names are guaranteed to pile up correctly for all devices (provided those glyphs exist).
Arrows
Lines
The font-invariant glyphs `br', `ul', and `rn' form corners; they can be used to build boxes. Note that both the PostScript and the Unicode-derived names of these three glyphs are just rough approximations.
`rn' also serves in classical troff as the horizontal extension of the square root sign.
`ru' is a font-invariant glyph, namely a rule of length 0.5m.
Text markers
Legal Symbols
Currency symbols
Units
Logical Symbols
Mathematical Symbols
Greek characters
These glyphs are intended for technical use, not for real Greek; normally, the uppercase letters have upright shape, and the lowercase ones are slanted. There is a problem with the mapping of letter phi to Unicode. Prior to Unicode version 3.0, the difference between U+03C6, GREEK SMALL LETTER PHI, and U+03D5, GREEK PHI SYMBOL, was not clearly described; only the glyph shapes in the Unicode book could be used as a reference. Starting with Unicode 3.0, the reference glyphs have been exchanged and described verbally also: In mathematical context, U+03D5 is the stroked variant and U+03C5 the curly glyph. Unfortunately, most font vendors didn't update their fonts to this (incompatible) change in Unicode. At the time of this writing (February 2003), it is not clear yet whether the Adobe Glyph Names `phi' and `phi1' also change its meaning if used for mathematics, thus compatibility problems are likely to happen – being conservative, groff currently assumes that `phi' in a PostScript symbol font is the stroked version.
In groff, symbol `\[*f]' always denotes the stroked version of phi, and `\[+f] ' the curly variant.
Card symbols