File: groff.info, Node: Font Positions, Next: Using Symbols, Prev: Font Families, Up: Using Fonts 5.19.3 Font Positions --------------------- To support typeface indirection through abstract styles, and for compatibility with AT&T 'troff', the formatter maintains a list of font "positions" at which fonts required by a document are "mounted". An output device's description file 'DESC' typically configures a set of pre-mounted fonts; see *note Device and Font Description Files::. A font need not be explicitly mounted before it is selected; GNU 'troff' will search 'GROFF_FONT_PATH' for it by name and mount it at the first free mounting position on demand. -- Request: .fp pos id [font-description-file-name] -- Register: \n[.f] -- Register: \n[.fp] Mount a font under the name ID at mounting position POS, a non-negative integer. When the formatter starts up, it reads the output device's description to mount an initial set of faces, and selects font position 1. Position 0 is unused by default. Unless the FONT-DESCRIPTION-FILE-NAME argument is given, ID should be the name of a font description file stored in a directory corresponding to the selected output device. GNU 'troff' does not traverse directories to locate the font description file. The optional third argument enables font names to be aliased, which can be necessary in compatibility mode since AT&T 'troff' syntax affords no means of identifying fonts with names longer than two characters, like 'TBI' or 'ZCMI', in a font selection escape sequence. *Note Compatibility Mode::. You can also alias fonts on mounting for convenience or abstraction. (See below regarding the '.fp' register.) .fp \n[.fp] SC ZCMI Send a \f(SChand-written\fP thank-you note. .fp \n[.fp] Emph TI .fp \n[.fp] Strong TB Are \f[Emph]these names\f[] \f[Strong]comfortable\f[]? 'DESC', 'P', and non-negative integers are not usable as font identifiers. The position of the currently selected font (or abstract style) is available in the read-only register '.f'. It is associated with the environment (*note Environments::). You can copy the value of '.f' to another register to save it for later use. .nr saved-font \n[.f] ... text involving many font changes ... .ft \n[saved-font] The index of the next (non-zero) free font position is available in the read-only register '.fp'. Fonts not listed in the 'DESC' file are automatically mounted at position '\n[.fp]' when selected with the 'ft' request or '\f' escape sequence. When mounting a font at a position explicitly with the 'fp' request, this same practice should be followed, although GNU 'troff' does not enforce this strictly.