groff_char - GNU roff special character and glyph repertoire
Contents
Description
The GNU roff typesetting system has a large glyph repertoire suitable for production of varied literary,
professional, technical, and mathematical documents. groff works with characters; an output device
renders glyphs.groff's input character set is restricted to that defined by the standards ISO Latin-1
(ISO 8859-1) and CCSID โcode pageโ 1047 (an EBCDIC arrangement of Latin-1). For ease of document
maintenance in UTF-8 environments, it is advisable to use only the Unicode basic Latin code points, a
subset of all of the foregoing historically referred to as US-ASCII, which has only 94 visible, printable
code points. In groff, these are termed ordinarycharacters. Often, many more are desired in output.
AT&T troff in the 1970s faced a similar problem: the available typesetter's glyph repertoire differed
from that of the computers that controlled it. troff's solution was a form of escape sequence known as a
specialcharacter to access several dozen additional glyphs available in the fonts prepared for mounting
in the phototypesetter. These glyphs were mapped onto a two-character name space for a degree of
mnemonic convenience; for example, the escape sequence \(aa encoded an acute accent and \(sc a section
sign.
groff has lifted historical roff limitations on special character name lengths, but recognizes and
retains compatibility with the historical names. groff expands the lexicon of glyphs available by name
and permits users to define their own special character escape sequences with the char request. Special
character names are groff identifiers; see section โIdentifiersโ in groff(7). Our discussion uses the
terms โglyph nameโ and โspecial character nameโ interchangeably; we assume no character translations or
redefinitions.
This document lists all of the glyph names predefined by groff's font description files and presents the
systematic notation by which it enables access to arbitrary Unicode code points and construction of
composite glyphs. Glyphs listed may be unavailable, or may vary in appearance, depending on the output
device and font chosen when the page was formatted. This page was rendered for device utf8 using font R.
A few escape sequences that are not groff special characters also produce glyphs; these exist for
syntactical or historical reasons. \', \`, \-, and \_ are translated on input to the special character
escape sequences \[aa], \[ga], \[-], and \[ul], respectively. Others include \\, \. (backslash-dot), and
\e; see groff(7). A small number of special characters represent glyphs that are not encoded in Unicode;
examples include the baseline rule \[ru] and the Bell System logo \[bs].
In groff, you can test output device support for any character (ordinary or special) with the conditional
expression operator โcโ.
.ie c \[bs] \{Welcome to the \[bs] Bell System;
did you get the Wehrmacht helmet or the Death Star?\}
.el No Bell System logo.
For brevity in the remainder of this document, we shall refer to systems conforming to the ISO 646:1991
IRV, ISO 8859, or ISO 10646 (โUnicodeโ) character encoding standards as โISOโ systems, and those
employing IBM code page 1047 as โEBCDICโ systems. That said, EBCDIC systems that support groff are known
to also support UTF-8.
While groff accepts eight-bit encoded input, not all such code points are valid as input. On ISO
platforms, character codes 0, 11, 13โ31, and 128โ159 are invalid. (This is all C0 and C1 controls except
for SOH through LF [Control+A to Control+J], and FF [Control+L].) On EBCDIC platforms, 0, 8โ9, 11,
13โ20, 23โ31, and 48โ63 are invalid. Some of these code points are used by groff for internal purposes,
which is one reason it does not support UTF-8 natively.
Fundamentalcharacterset
The ordinary characters catalogued above, plus the space, tab, newline, and leader (Control+A), form the
fundamental character set for groff input; anything in the language, even over one million code points in
Unicode, can be expressed using it. On ISO systems, code points in the range 33โ126 comprise a common
set of printable glyphs in all of the aforementioned ISO character encoding standards. It is this
character set and (with some noteworthy exceptions) the corresponding glyph repertoire for which AT&T
troff was implemented. On EBCDIC systems, printable characters are in the range 66โ201 and 203โ254;
those without counterparts in the ISO range 33โ126 are discussed in the next subsection.
All of the following characters map to glyphs as you would expect.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ! # $ % & ( ) * + , . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ โ
โ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] _ โ
โ a b c d e f g h i j k l m n o p q r s t u v w x y z { | } โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
The remaining ordinary characters surprise computing professionals and others intimately familiar with
the ISO character encodings. The developers of AT&T troff chose mappings for them that would be useful
for typesetting technical literature in a broad range of scientific disciplines: Bell Labs used the
system for preparation of AT&T's patent filings with the U.S. government. Further, the prevailing
character encoding standard in the 1970s, USAS X3.4-1968 (โASCIIโ), deliberately supported semantic
ambiguity at some code points, and outright substitution at several others, to suit the localization
demands of various national standards bodies.
The table below presents the seven exceptional code points with their typical keycap engravings, their
glyph mappings and semantics in roff systems, and the escape sequences producing the Unicode basic Latin
character they replace. The first, the neutral double quote, is a partial exception because it does
represent itself, but since the roff language also uses it to quote macro arguments, groff supports a
special character escape sequence as an alternative form so that the glyph can be easily included in
macro arguments without requiring the user to master the quoting rules that AT&T troff required in that
context. (Some requests, like ds, also treat " non-literally.) Furthermore, not all of the special
character escape sequences are portable to AT&T troff and all of its descendants; these groff extensions
are presented using its special character form \[], whereas portable special character escape sequences
are shown in the traditional \( form. \- and \e are portable to all known troffs. \e means โthe glyph
of the current escape characterโ; it therefore can produce unexpected output if the ec request is used.
On devices with a limited glyph repertoire, glyphs in the โkeycapโ and โappearanceโ columns on the same
row of the table may look identical; except for the neutral double quote, this will not be the case on
more-capable devices. Review your document using as many different output devices as possible.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Keycap Appearance and meaning Special character and meaning โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ " " neutral double quote \[dq] neutral double quote โ
โ ' โ closing single quote \[aq] neutral apostrophe โ
โ - - hyphen \- or \[-] minus sign/Unix dash โ
โ \ (escape character) \e or \[rs] reverse solidus โ
โ ^ ห modifier circumflex \(ha circumflex/caret/โhatโ โ
โ ` โ opening single quote \(ga grave accent โ
โ ~ ห modifier tilde \(ti tilde โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
The hyphen-minus is a particularly unfortunate case of overloading. Its awkward name in ISO 8859 and
later standards reflects the many distinguishable purposes to which it had already been put by the 1980s,
including a hyphen, a minus sign, and (alone or in repetition) dashes of varying widths. For best
results in roff systems, use the โ-โ character in input outside an escape sequence only to mean a hyphen,
as in the phrase โlong-termโ. For a minus sign in running text or a Unix command-line option dash, use
\- (or \[-] in groff if you find it helps the clarity of the source document). (Another minus sign, for
use in mathematical equations, is available as \[mi]). AT&T troff supported em-dashes as \(em, as does
groff.
The special character escape sequence for the apostrophe as a neutral single quote is typically needed
only in technical content; typing words like โcan'tโ and โAnne'sโ in a natural way will render correctly,
because in ordinary prose an apostrophe is typeset either as a closing single quotation mark or as a
neutral single quote, depending on the capabilities of the output device. By contrast, special character
escape sequences should be used for quotation marks unless portability to limited or historical troff
implementations is necessary; on those systems, the input convention is to pair the grave accent with the
apostrophe for single quotes, and to double both characters for double quotes. AT&T troff defined no
special characters for quotation marks or the apostrophe. Repeated single quotes (โโthusโโ) will be
visually distinguishable from double quotes (โthusโ) on terminal devices, and perhaps on others
(depending on the font selected).
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ AT&T troff input recommended groff input โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ A Winter's Tale A Winter's Tale โ
โ `U.K. outer quotes' \[oq]U.K. outer quotes\[cq] โ
โ `U.K. ``inner'' quotes' \[oq]U.K. \[lq]inner\[rq] quotes\[cq] โ
โ ``U.S. outer quotes'' \[lq]U.S. outer quotes\[rq] โ
โ ``U.S. `inner' quotes'' \[lq]U.S. \[oq]inner\[cq] quotes\[rq] โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
If you frequently require quotation marks in your document, see if the macro package you're using
supplies strings or macros to facilitate quotation, or define them yourself (except in man pages).
Using Unicode basic Latin characters to compose boxes and lines is ill-advised. roff systems have
special characters for drawing horizontal and vertical lines; see subsection โRules and linesโ below.
Preprocessors like tbl(1) and pic(1) draw boxes and will produce the best possible output for the device,
falling back to basic Latin glyphs only when necessary.
Eight-bitencodingsandLatin-1supplement
ISO 646 is a seven-bit code encoding 128 code points; eight-bit codes are twice the size. ISO 8859-1 and
code page 1047 allocated the additional space to what Unicode calls โC1 controlsโ (control characters)
and the โLatin-1 supplementโ. The C1 controls are neither printable nor usable as groff input.
Two Latin-1 supplement characters are handled specially on input. troff never produces them as output.
NBSP encodes a no-break space; it is mapped to \~, the adjustable non-breaking space escape sequence.
SHY encodes a soft hyphen; it is mapped to \%, the hyphenation control escape sequence.
The remaining characters in the Latin-1 supplement represent themselves. Although they can be specified
directly with the keyboard on systems configured to use Latin-1 as the character encoding, it is more
portable, both to other roff systems and to UTF-8 environments, to use their special character escape
sequences, shown below. The glyph descriptions we use are non-standard in some cases, for brevity.
ยก \[r!] inverted exclamation mark ร \[~N] N tilde
ยข \[ct] cent sign ร \[`O] O grave
ยฃ \[Po] pound sign ร \['O] O acute
ยค \[Cs] currency sign ร \[^O] O circumflex
ยฅ \[Ye] yen sign ร \[~O] O tilde
ยฆ \[bb] broken bar ร \[:O] O dieresis
ยง \[sc] section sign ร \[mu] multiplication sign
ยจ \[ad] dieresis accent ร \[/O] O slash
ยฉ \[co] copyright sign ร \[`U] U grave
ยช \[Of] feminine ordinal indicator ร \['U] U acute
ยซ \[Fo] left double chevron ร \[^U] U circumflex
ยฌ \[no] logical not ร \[:U] U dieresis
ยฎ \[rg] registered sign ร \['Y] Y acute
ยฏ \[a-] macron accent ร \[TP] uppercase thorn
ยฐ \[de] degree sign ร \[ss] lowercase sharp s
ยฑ \[+-] plus-minus ร \[`a] a grave
ยฒ \[S2] superscript two รก \['a] a acute
ยณ \[S3] superscript three รข \[^a] a circumflex
ยด \[aa] acute accent รฃ \[~a] a tilde
ยต \[mc] micro sign รค \[:a] a dieresis
ยถ \[ps] pilcrow sign รฅ \[oa] a ring
ยท \[pc] centered period รฆ \[ae] ae ligature
ยธ \[ac] cedilla accent รง \[,c] c cedilla
ยน \[S1] superscript one รจ \[`e] e grave
ยบ \[Om] masculine ordinal indicator รฉ \['e] e acute
ยป \[Fc] right double chevron รช \[^e] e circumflex
ยผ \[14] one quarter symbol รซ \[:e] e dieresis
ยฝ \[12] one half symbol รฌ \[`i] i grave
ยพ \[34] three quarters symbol รญ \['i] e acute
ยฟ \[r?] inverted question mark รฎ \[^i] i circumflex
ร \[`A] A grave รฏ \[:i] i dieresis
ร \['A] A acute รฐ \[Sd] lowercase eth
ร \[^A] A circumflex รฑ \[~n] n tilde
ร \[~A] A tilde รฒ \[`o] o grave
ร \[:A] A dieresis รณ \['o] o acute
ร
\[oA] A ring รด \[^o] o circumflex
ร \[AE] AE ligature รต \[~o] o tilde
ร \[,C] C cedilla รถ \[:o] o dieresis
ร \[`E] E grave รท \[di] division sign
ร \['E] E acute รธ \[/o] o slash
ร \[^E] E circumflex รน \[`u] u grave
ร \[:E] E dieresis รบ \['u] u acute
ร \[`I] I grave รป \[^u] u circumflex
ร \['I] I acute รผ \[:u] u dieresis
ร \[^I] I circumflex รฝ \['y] y acute
ร \[:I] I dieresis รพ \[Tp] lowercase thorn
ร \[-D] uppercase eth รฟ \[:y] y dieresis
Specialcharacterescapeforms
Glyphs that lack a character code in the basic Latin repertoire to directly represent them are entered by
one of several special character escape forms. Such glyphs can be simple or composite, and accessed
either by name or numerically by code point. Code points and combining properties are determined by
character encoding standards, whereas glyph names as used here originated in AT&T troff special character
escape sequences. Predefined glyph names use only characters in the basic Latin repertoire.
\(gl is a special character escape sequence for the glyph with the two-character name gl. This is the
original syntax form supported by AT&T troff. The acute accent, \(aa, is an example.
\C'glyph-name'
is a special character escape sequence for glyph-name, which can be of arbitrary length. The
delimiter, shown here as a neutral apostrophe, can be any character not occurring in glyph-name.
This syntax form was introduced in later versions of AT&T device-independent troff. The foregoing
acute accent example can be expressed as \C'aa'.
\[glyph-name]
is a special character escape sequence for glyph-name, which can be of arbitrary length but must
not contain a closing square bracket โ]โ. (No glyph names predefined by groff employ โ]โ.) The
foregoing acute accent example can be expressed in groff as \[aa].
\C'c' and \[c] are not synonyms for the ordinary character โcโ, but request the special character named
โ\cโ. For example, โ\[a]โ is not โaโ, but rather a special character with the internal glyph name (used
in font description files and diagnostic messages) \a, which is typically undefined. The only such glyph
name groff predefines is the minus sign, which can therefore be accessed as \C'-' or \[-].
\[base-charcomposite-1composite-2 ... composite-n]
is a composite glyph. Glyphs like a lowercase โeโ with an acute accent, as in the word โcafรฉโ,
can be expressed as \[eaa]. See subsection โAccentsโ below for a table of combining glyph names.
Unicode encodes far more characters than groff has glyph names for; special character escape forms based
on numerical code points enable access to any of them. Frequently used glyphs or glyph combinations can
be stored in strings, and new glyph names can be created adhoc with the char request; see groff(7).
\[unnnn[n[n]]]
is a Unicode numeric special character escape sequence. Any Unicode code point can be accessed
with four to six hexadecimal digits, with hexadecimal letters accepted in uppercase form only.
Thus, \[u02DA] accesses the (spacing) ring accent, producing โหโ.
Unicode code points can be composed as well; when they are, GNU troff requires NFD (Normalization Form
D), where all Unicode glyphs are maximally decomposed. (Exception: precomposed characters in the Latin-1
supplement described above are also accepted. Do not count on this exception remaining in a future GNU
troff that accepts UTF-8 input directly.) Thus, GNU troff accepts โcaf\['e]โ, โcaf\[eaa]โ, and
โcaf\[u0065_0301]โ, as ways to input โcafรฉโ. (Due to its legacy 8-bit encoding compatibility, at present
it also accepts โcaf\[u00E9]โ on ISO Latin-1 systems.)
\[ubase-char[_combining-component]...]
constructs a composite glyph from Unicode numeric special character escape sequences. The code
points of the base glyph and the combining components are each expressed in hexadecimal, with an
underscore (_) separating each component. Thus, \[u006E_0303] produces โรฑโ.
\[charnnn]
expresses an eight-bit code point where nnn is the code point of the character, a decimal number
between 0 and 255 without leading zeroes. This legacy numeric special character escape sequence
is used to map characters onto glyphs via the trin request in macro files loaded by grotty(1).
Files
The files below are loaded automatically by the default troffrc.
/usr/share/groff/1.23.0/tmac/composite.tmac
assigns alternate mappings for identifiers after the first in a composite special character escape
sequence. See subsection โAccentsโ above.
/usr/share/groff/1.23.0/tmac/fallbacks.tmac
defines fallback mappings for Unicode code points such as the increment sign (U+2206) and upper-
and lowercase Roman numerals.
Glyph Tables
In this section, groff's glyph name repertoire is presented in tabular form. The meanings of the columns
are as follows.
Output shows the glyph as it appears on the device used to render this document; although it can have a
notably different shape on other devices (and is subject to user-directed translation and
replacement), groff attempts reasonable equivalency on all output devices.
Input shows the groff character (ordinary or special) that normally produces the glyph. Some code
points have multiple glyph names.
Unicode is the code point notation for the glyph or combining glyph sequence as described in subsection
โSpecial character escape formsโ above. It corresponds to the standard notation for Unicode
short identifiers such that groff's unnnn is equivalent to Unicode's U+nnnn.
Notes describes the glyph, elucidating the mnemonic value of the glyph name where possible.
A plus sign โ+โ indicates that the glyph name appears in the AT&T troff user's manual, CSTR #54
(1992 revision). When using the AT&T special character syntax \(xx, widespread portability can
be expected from such names.
Entries marked with โ***โ denote glyphs used for mathematical purposes. On typesetting devices,
such glyphs are typically drawn from a special font (see groff_font(5)). Often, such glyphs lack
bold or italic style forms or have metrics that look incongruous in ordinary prose. A few which
are not uncommon in running text have โtext variantsโ, which should work better in that context.
Conversely, a handful of glyphs that are normally drawn from a text font may be required in
mathematical equations. Both sets of exceptions are noted in the tables where they appear
(โLogical symbolsโ and โMathematical symbolsโ).
BasicLatin
Apart from basic Latin characters with special mappings, described in subsection โFundamental character
setโ above, a few others in that range have special character glyph names. These were defined for ease
of input on non-U.S. keyboards lacking keycaps for them, or for symmetry with other special character
glyph names serving a similar purpose.
The vertical bar is overloaded; the \[ba] and \[or] escape sequences may render differently. See
subsection โMathematical symbolsโ below for special variants of the plus, minus, and equals signs
normally drawn from this range.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
" \[dq] u0022 neutral double quote
# \[sh] u0023 number sign
$ \[Do] u0024 dollar sign
' \[aq] u0027 apostrophe, neutral single quote
/ \[sl] u002F slash, solidus +
@ \[at] u0040 at sign
[ \[lB] u005B left square bracket
\ \[rs] u005C reverse solidus
] \[rB] u005D right square bracket
^ \[ha] u005E circumflex, caret, โhatโ
{ \[lC] u007B left brace
| | u007C bar
| \[ba] u007C bar
| \[or] u007C bitwise or +
} \[rC] u007D right brace
~ \[ti] u007E tilde
SupplementaryLatinletters
Historically, \[ss] could be considered a ligature of โszโ. An uppercase form is available as \[u1E9E],
but in the German language it is of specialized use; ร does not normally uppercase-transform to it, but
rather to โSSโ. โLowercase f with hookโ is also used as a function symbol; see subsection โMathematical
symbolsโ below.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ร \[-D] u00D0 uppercase eth
รฐ \[Sd] u00F0 lowercase eth
ร \[TP] u00DE uppercase thorn
รพ \[Tp] u00FE lowercase thorn
ร \[ss] u00DF lowercase sharp s
ฤฑ \[.i] u0131 i without tittle
ศท \[.j] u0237 j without tittle
ฦ \[Fn] u0192 lowercase f with hook, function
ล \[/L] u0141 L with stroke
ล \[/l] u0142 l with stroke
ร \[/O] u00D8 O with stroke
รธ \[/o] u00F8 o with stroke
Ligaturesanddigraphs
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ff \[ff] u0066_0066 ff ligature +
fi \[fi] u0066_0069 fi ligature +
fl \[fl] u0066_006C fl ligature +
ffi \[Fi] u0066_0066_0069 ffi ligature +
ffl \[Fl] u0066_0066_006C ffl ligature +
ร \[AE] u00C6 AE ligature
รฆ \[ae] u00E6 ae ligature
ล \[OE] u0152 OE ligature
ล \[oe] u0153 oe ligature
ฤฒ \[IJ] u0132 IJ digraph
ฤณ \[ij] u0133 ij digraph
Accents
Normally, the formatting of a special character advances the drawing position as an ordinary character
does. groff's composite request designates a special character as combining. The composite.tmac macro
file, loaded automatically by the default troffrc, maps the following special characters to the combining
characters shown below. The non-combining code point in parentheses is used when the special character
occurs in isolation (compare โcaf\[eaa]โ and โcaf\[aa]eโ).
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ห \[a"] u030B (u02DD) double acute accent
ยฏ \[a-] u0304 (u00AF) macron accent
ห \[a.] u0307 (u02D9) dot accent
^ \[a^] u0302 (u005E) circumflex accent
ยด \[aa] u0301 (u00B4) acute accent +
` \[ga] u0300 (u0060) grave accent +
ห \[ab] u0306 (u02D8) breve accent
ยธ \[ac] u0327 (u00B8) cedilla accent
ยจ \[ad] u0308 (u00A8) dieresis accent
ห \[ah] u030C (u02C7) caron accent
ห \[ao] u030A (u02DA) ring accent
~ \[a~] u0303 (u007E) tilde accent
ห \[ho] u0328 (u02DB) hook accent
Accentedcharacters
All of these glyphs can be composed using combining glyph names as described in subsection โSpecial
character escape formsโ above; the names below are short aliases for convenience.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ร \['A] u0041_0301 A acute
ฤ \['C] u0043_0301 C acute
ร \['E] u0045_0301 E acute
ร \['I] u0049_0301 I acute
ร \['O] u004F_0301 O acute
ร \['U] u0055_0301 U acute
ร \['Y] u0059_0301 Y acute
รก \['a] u0061_0301 a acute
ฤ \['c] u0063_0301 c acute
รฉ \['e] u0065_0301 e acute
รญ \['i] u0069_0301 i acute
รณ \['o] u006F_0301 o acute
รบ \['u] u0075_0301 u acute
รฝ \['y] u0079_0301 y acute
ร \[:A] u0041_0308 A dieresis
ร \[:E] u0045_0308 E dieresis
ร \[:I] u0049_0308 I dieresis
ร \[:O] u004F_0308 O dieresis
ร \[:U] u0055_0308 U dieresis
ลธ \[:Y] u0059_0308 Y dieresis
รค \[:a] u0061_0308 a dieresis
รซ \[:e] u0065_0308 e dieresis
รฏ \[:i] u0069_0308 i dieresis
รถ \[:o] u006F_0308 o dieresis
รผ \[:u] u0075_0308 u dieresis
รฟ \[:y] u0079_0308 y dieresis
ร \[^A] u0041_0302 A circumflex
ร \[^E] u0045_0302 E circumflex
ร \[^I] u0049_0302 I circumflex
ร \[^O] u004F_0302 O circumflex
ร \[^U] u0055_0302 U circumflex
รข \[^a] u0061_0302 a circumflex
รช \[^e] u0065_0302 e circumflex
รฎ \[^i] u0069_0302 i circumflex
รด \[^o] u006F_0302 o circumflex
รป \[^u] u0075_0302 u circumflex
ร \[`A] u0041_0300 A grave
ร \[`E] u0045_0300 E grave
ร \[`I] u0049_0300 I grave
ร \[`O] u004F_0300 O grave
ร \[`U] u0055_0300 U grave
ร \[`a] u0061_0300 a grave
รจ \[`e] u0065_0300 e grave
รฌ \[`i] u0069_0300 i grave
รฒ \[`o] u006F_0300 o grave
รน \[`u] u0075_0300 u grave
ร \[~A] u0041_0303 A tilde
ร \[~N] u004E_0303 N tilde
ร \[~O] u004F_0303 O tilde
รฃ \[~a] u0061_0303 a tilde
รฑ \[~n] u006E_0303 n tilde
รต \[~o] u006F_0303 o tilde
ล \[vS] u0053_030C S caron
ลก \[vs] u0073_030C s caron
ลฝ \[vZ] u005A_030C Z caron
ลพ \[vz] u007A_030C z caron
ร \[,C] u0043_0327 C cedilla
รง \[,c] u0063_0327 c cedilla
ร
\[oA] u0041_030A A ring
รฅ \[oa] u0061_030A a ring
Quotationmarks
The neutral double quote, often useful when documenting programming languages, is also available as a
special character for convenient embedding in macro arguments; see subsection โFundamental character setโ
above.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ \[Bq] u201E low double comma quote
โ \[bq] u201A low single comma quote
โ \[lq] u201C left double quote
โ \[rq] u201D right double quote
โ \[oq] u2018 single opening (left) quote
โ \[cq] u2019 single closing (right) quote
' \[aq] u0027 apostrophe, neutral single quote
" " u0022 neutral double quote
" \[dq] u0022 neutral double quote
ยซ \[Fo] u00AB left double chevron
ยป \[Fc] u00BB right double chevron
โน \[fo] u2039 left single chevron
โบ \[fc] u203A right single chevron
Punctuation
The Unicode name for U+00B7 is โmiddle dotโ, which is unfortunately confusable with the groff mnemonic
for the visually similar but semantically distinct multiplication dot; see subsection โMathematical
symbolsโ below.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ยก \[r!] u00A1 inverted exclamation mark
ยฟ \[r?] u00BF inverted question mark
ยท \[pc] u00B7 centered period
โ \[em] u2014 em-dash +
โ \[en] u2013 en-dash
โ \[hy] u2010 hyphen +
Brackets
On typesetting devices, the bracket extensions are font-invariant glyphs; that is, they are rendered the
same way regardless of font (with a drawing escape sequence). On terminals, they are not font-invariant;
groff maps them rather arbitrarily to U+23AA (โcurly bracket extensionโ). In AT&T troff, only one glyph
was available to vertically extend brackets, braces, and parentheses: \(bv.
Not all devices supply bracket pieces that 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 AT&T troff can be
used for other mathematical symbols as well, for example \(lf and \(rf, which provide the floor operator.
Some output devices, such as dvi, don't unify such glyphs. For this reason, the glyphs \[lf], \[rf],
\[lc], and \[rc] are not unified with similar-looking bracket pieces. In groff, only glyphs with long
names are guaranteed to pile up correctly for all devicesโprovided those glyphs are available.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[ [ u005B left square bracket
[ \[lB] u005B left square bracket
] ] u005D right square bracket
] \[rB] u005D right square bracket
{ { u007B left brace
{ \[lC] u007B left brace
} } u007D right brace
} \[rC] u007D right brace
โจ \[la] u27E8 left angle bracket
โฉ \[ra] u27E9 right angle bracket
โช \[bv] u23AA brace vertical extension + ***
โช \[braceex] u23AA brace vertical extension
โก \[bracketlefttp] u23A1 left square bracket top
โข \[bracketleftex] u23A2 left square bracket extension
โฃ \[bracketleftbt] u23A3 left square bracket bottom
โค \[bracketrighttp] u23A4 right square bracket top
โฅ \[bracketrightex] u23A5 right square bracket extension
โฆ \[bracketrightbt] u23A6 right square bracket bottom
โง \[lt] u23A7 left brace top +
โจ \[lk] u23A8 left brace middle +
โฉ \[lb] u23A9 left brace bottom +
โง \[bracelefttp] u23A7 left brace top
โจ \[braceleftmid] u23A8 left brace middle
โฉ \[braceleftbt] u23A9 left brace bottom
โช \[braceleftex] u23AA left brace extension
โซ \[rt] u23AB right brace top +
โฌ \[rk] u23AC right brace middle +
โญ \[rb] u23AD right brace bottom +
โซ \[bracerighttp] u23AB right brace top
โฌ \[bracerightmid] u23AC right brace middle
โญ \[bracerightbt] u23AD right brace bottom
โช \[bracerightex] u23AA right brace extension
โ \[parenlefttp] u239B left parenthesis top
โ \[parenleftex] u239C left parenthesis extension
โ \[parenleftbt] u239D left parenthesis bottom
โ \[parenrighttp] u239E right parenthesis top
โ \[parenrightex] u239F right parenthesis extension
โ \[parenrightbt] u23A0 right parenthesis bottom
Arrows
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ \[<-] u2190 horizontal arrow left +
โ \[->] u2192 horizontal arrow right +
โ \[<>] u2194 bidirectional horizontal arrow
โ \[da] u2193 vertical arrow down +
โ \[ua] u2191 vertical arrow up +
โ \[va] u2195 bidirectional vertical arrow
โ \[lA] u21D0 horizontal double arrow left
โ \[rA] u21D2 horizontal double arrow right
โ \[hA] u21D4 bidirectional horizontal double arrow
โ \[dA] u21D3 vertical double arrow down
โ \[uA] u21D1 vertical double arrow up
โ \[vA] u21D5 bidirectional vertical double arrow
โฏ \[an] u23AF horizontal arrow extension
Rulesandlines
On typesetting devices, the font-invariant glyphs (see subsection โBracketsโ above) \[br], \[ul], and
\[rn] form corners when adjacent; they can be used to build boxes. On terminal devices, they are mapped
as shown in the table. The Unicode-derived names of these three glyphs are approximations.
The input character _ always accesses the underscore glyph in a font; \[ul], by contrast, may be font-
invariant on typesetting devices.
The baseline rule \[ru] is a font-invariant glyph, namely a rule of one-half em.
In AT&T troff, \[rn] also served as a one en extension of the square root symbol. groff favors
\[radicalex] for this purpose; see subsection โMathematical symbolsโ below.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
| | u007C bar
| \[ba] u007C bar
โ \[br] u2502 box rule +
_ _ u005F underscore, low line +
_ \[ul] --- underrule +
โพ \[rn] u203E overline +
_ \[ru] --- baseline rule +
ยฆ \[bb] u00A6 broken bar
/ / u002F slash, solidus +
/ \[sl] u002F slash, solidus +
\ \[rs] u005C reverse solidus
Textmarkers
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ \[ci] u25CB circle +
โข \[bu] u2022 bullet +
โ \[dg] u2020 dagger +
โก \[dd] u2021 double dagger +
โ \[lz] u25CA lozenge, diamond
โก \[sq] u25A1 square +
ยถ \[ps] u00B6 pilcrow sign
ยง \[sc] u00A7 section sign +
โ \[lh] u261C hand pointing left +
โ \[rh] u261E hand pointing right +
@ @ u0040 at sign
@ \[at] u0040 at sign
# # u0023 number sign
# \[sh] u0023 number sign
โต \[CR] u21B5 carriage return
โ \[OK] u2713 check mark
Legalsymbols
The Bell System logo is not supported in groff.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ยฉ \[co] u00A9 copyright sign +
ยฎ \[rg] u00AE registered sign +
โข \[tm] u2122 trade mark sign
\[bs] --- Bell System logo +
Currencysymbols
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
$ $ u0024 dollar sign
$ \[Do] u0024 dollar sign
ยข \[ct] u00A2 cent sign +
โฌ \[eu] u20AC Euro sign
โฌ \[Eu] u20AC variant Euro sign
ยฅ \[Ye] u00A5 yen sign
ยฃ \[Po] u00A3 pound sign
ยค \[Cs] u00A4 currency sign
Units
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ยฐ \[de] u00B0 degree sign +
โฐ \[%0] u2030 per thousand, per mille sign
โฒ \[fm] u2032 arc minute sign, foot mark +
โณ \[sd] u2033 arc second sign
ยต \[mc] u00B5 micro sign
ยช \[Of] u00AA feminine ordinal indicator
ยบ \[Om] u00BA masculine ordinal indicator
Logicalsymbols
The variants of the not sign may differ in appearance or spacing depending on the device and font
selected. Unicode does not encode a discrete โbitwise orโ sign: on typesetting devices, it is drawn
shorter than the bar, about the same height as a capital letter. Terminal devices unify \[ba] and \[or].
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โง \[AN] u2227 logical and
โจ \[OR] u2228 logical or
ยฌ \[no] u00AC logical not + ***
ยฌ \[tno] u00AC text variant of \[no]
โ \[te] u2203 there exists
โ \[fa] u2200 for all
โ \[st] u220B such that
โด \[3d] u2234 therefore
โด \[tf] u2234 therefore
| | u007C bar
| \[or] u007C bitwise or +
Mathematicalsymbols\[Fn] also appears in subsection โSupplementary Latin lettersโ above. Observe the two varieties of the
plus-minus, multiplication, and division signs; \[+-], \[mu], and \[di] are normally drawn from the
special font, but have text font variants. Also be aware of three glyphs available in special font
variants that are normally drawn from text fonts: the plus, minus, and equals signs. These variants may
differ in appearance or spacing depending on the device and font selected.
In AT&T troff, \(rn (โroot en extenderโ) served as the horizontal extension of the radical (square root)
sign, \(sr, and was drawn at the maximum height of the typeface's bounding box; this enabled the special
character to double as an overline (see subsection โRules and linesโ above). A contemporary font's
radical sign might not ascend to such an extreme. In groff, you can instead use \[radicalex] to continue
the radical sign \[sr]; these special characters are intended for use with text fonts. \[sqrt] and
\[sqrtex] are their counterparts with mathematical spacing.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ยฝ \[12] u00BD one half symbol +
ยผ \[14] u00BC one quarter symbol +
ยพ \[34] u00BE three quarters symbol +
โ
\[18] u215B one eighth symbol
โ
\[38] u215C three eighths symbol
โ
\[58] u215D five eighths symbol
โ
\[78] u215E seven eighths symbol
ยน \[S1] u00B9 superscript one
ยฒ \[S2] u00B2 superscript two
ยณ \[S3] u00B3 superscript three
+ + u002B plus
+ \[pl] u002B special variant of plus + ***
- \[-] u002D minus
โ \[mi] u2212 special variant of minus + ***
โ \[-+] u2213 minus-plus
ยฑ \[+-] u00B1 plus-minus + ***
ยฑ \[t+-] u00B1 text variant of \[+-]
โ
\[md] u22C5 multiplication dot
ร \[mu] u00D7 multiplication sign + ***
ร \[tmu] u00D7 text variant of \[mu]
โ \[c*] u2297 circled times
โ \[c+] u2295 circled plus
รท \[di] u00F7 division sign + ***
รท \[tdi] u00F7 text variant of \[di]
โ \[f/] u2044 fraction slash
* * u002A asterisk
โ \[**] u2217 mathematical asterisk +
โค \[<=] u2264 less than or equal to +
โฅ \[>=] u2265 greater than or equal to +
โช \[<<] u226A much less than
โซ \[>>] u226B much greater than
= = u003D equals
= \[eq] u003D special variant of equals + ***
โ \[!=] u003D_0338 not equals +
โก \[==] u2261 equivalent +
โข \[ne] u2261_0338 not equivalent
โ
\[=~] u2245 approximately equal to
โ \[|=] u2243 asymptotically equal to +
~ \[ti] u007E tilde +
โผ \[ap] u223C similar to, tilde operator +
โ \[~~] u2248 almost equal to
โ \[~=] u2248 almost equal to
โ \[pt] u221D proportional to +
โ
\[es] u2205 empty set +
โ \[mo] u2208 element of a set +
โ \[nm] u2208_0338 not element of set
โ \[sb] u2282 proper subset +
โ \[nb] u2282_0338 not subset
โ \[sp] u2283 proper superset +
โ
\[nc] u2283_0338 not superset
โ \[ib] u2286 subset or equal +
โ \[ip] u2287 superset or equal +
โฉ \[ca] u2229 intersection, cap +
โช \[cu] u222A union, cup +
โ \[/_] u2220 angle
โฅ \[pp] u22A5 perpendicular
โซ \[is] u222B integral +
โซ \[integral] u222B integral ***
โ \[sum] u2211 summation ***
โ \[product] u220F product ***
โ \[coproduct] u2210 coproduct ***
โ \[gr] u2207 gradient +
โ \[sr] u221A radical sign, square root +
โพ \[rn] u203E overline +
โพ \[radicalex] --- radical extension
โ \[sqrt] u221A radical sign, square root ***
โพ \[sqrtex] --- radical extension ***
โ \[lc] u2308 left ceiling +
โ \[rc] u2309 right ceiling +
โ \[lf] u230A left floor +
โ \[rf] u230B right floor +
โ \[if] u221E infinity +
โต \[Ah] u2135 aleph symbol
ฦ \[Fn] u0192 lowercase f with hook, function
โ \[Im] u2111 blackletter I, imaginary part
โ \[Re] u211C blackletter R, real part
โ \[wp] u2118 Weierstrass p
โ \[pd] u2202 partial differential
โ \[-h] u210F h bar
โ \[hbar] u210F h bar
Greekglyphs
These glyphs are intended for technical use, not for typesetting Greek language text; normally, the
uppercase letters have upright shape, and the lowercase ones are slanted.
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ฮ \[*A] u0391 uppercase alpha +
ฮ \[*B] u0392 uppercase beta +
ฮ \[*G] u0393 uppercase gamma +
ฮ \[*D] u0394 uppercase delta +
ฮ \[*E] u0395 uppercase epsilon +
ฮ \[*Z] u0396 uppercase zeta +
ฮ \[*Y] u0397 uppercase eta +
ฮ \[*H] u0398 uppercase theta +
ฮ \[*I] u0399 uppercase iota +
ฮ \[*K] u039A uppercase kappa +
ฮ \[*L] u039B uppercase lambda +
ฮ \[*M] u039C uppercase mu +
ฮ \[*N] u039D uppercase nu +
ฮ \[*C] u039E uppercase xi +
ฮ \[*O] u039F uppercase omicron +
ฮ \[*P] u03A0 uppercase pi +
ฮก \[*R] u03A1 uppercase rho +
ฮฃ \[*S] u03A3 uppercase sigma +
ฮค \[*T] u03A4 uppercase tau +
ฮฅ \[*U] u03A5 uppercase upsilon +
ฮฆ \[*F] u03A6 uppercase phi +
ฮง \[*X] u03A7 uppercase chi +
ฮจ \[*Q] u03A8 uppercase psi +
ฮฉ \[*W] u03A9 uppercase omega +
ฮฑ \[*a] u03B1 lowercase alpha +
ฮฒ \[*b] u03B2 lowercase beta +
ฮณ \[*g] u03B3 lowercase gamma +
ฮด \[*d] u03B4 lowercase delta +
ฮต \[*e] u03B5 lowercase epsilon +
ฮถ \[*z] u03B6 lowercase zeta +
ฮท \[*y] u03B7 lowercase eta +
ฮธ \[*h] u03B8 lowercase theta +
ฮน \[*i] u03B9 lowercase iota +
ฮบ \[*k] u03BA lowercase kappa +
ฮป \[*l] u03BB lowercase lambda +
ฮผ \[*m] u03BC lowercase mu +
ฮฝ \[*n] u03BD lowercase nu +
ฮพ \[*c] u03BE lowercase xi +
ฮฟ \[*o] u03BF lowercase omicron +
ฯ \[*p] u03C0 lowercase pi +
ฯ \[*r] u03C1 lowercase rho +
ฯ \[*s] u03C3 lowercase sigma +
ฯ \[*t] u03C4 lowercase tau +
ฯ
\[*u] u03C5 lowercase upsilon +
ฯ \[*f] u03D5 lowercase phi +
ฯ \[*x] u03C7 lowercase chi +
ฯ \[*q] u03C8 lowercase psi +
ฯ \[*w] u03C9 lowercase omega +
ฯต \[+e] u03F5 variant epsilon (lunate)
ฯ \[+h] u03D1 variant theta (cursive form)
ฯ \[+p] u03D6 variant pi (similar to omega)
ฯ \[+f] u03C6 variant phi (curly shape)
ฯ \[ts] u03C2 terminal lowercase sigma +
Playingcardsymbols
Output Input Unicode Notes
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โฃ \[CL] u2663 solid club suit
โ \[SP] u2660 solid spade suit
โฅ \[HE] u2665 solid heart suit
โฆ \[DI] u2666 solid diamond suit
History
A consideration of the typefaces originally available to AT&T nroff and troff illuminates many
conventions that one might regard as idiosyncratic fifty years afterward. (See section โHistoryโ of
roff(7) for more context.) The face used by the Teletype Model 37 terminals of the Murray Hill Unix Room
was based on ASCII, but assigned multiple meanings to several code points, as suggested by that standard.
Decimal 34 (") served as a dieresis accent and neutral double quotation mark; decimal 39 (') as an acute
accent, apostrophe, and closing (right) single quotation mark; decimal 45 (-) as a hyphen and a minus
sign; decimal 94 (^) as a circumflex accent and caret; decimal 96 (`) as a grave accent and opening
(left) single quotation mark; and decimal 126 (~) as a tilde accent and (with a half-line motion) swung
dash. The Model 37 bore an optional extended character set offering upright Greek letters and several
mathematical symbols; these were documented as early as the kbd(VII) man page of the (First Edition) UnixProgrammer'sManual.
At the time Graphic Systems delivered the C/A/T phototypesetter to AT&T, the ASCII character set was not
considered a standard basis for a glyph repertoire by traditional typographers. In the stock Times
roman, italic, and bold styles available, several ASCII characters were not present at all, nor was most
of the Teletype's extended character set. AT&T commissioned a โspecialโ font to ensure no loss of
repertoire.
A representation of the coverage of the C/A/T's text fonts follows. The glyph resembling an underscore
is a baseline rule, and that resembling a vertical line is a box rule. In italics, the box rule was not
slanted. We also observe that the hyphen and minus sign were already โde-unifiedโ by the fonts provided;
a decision whither to map an input โ-โ therefore had to be taken.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z โ
โ a b c d e f g h i j k l m n o p q r s t u v w x y z โ
โ 0 1 2 3 4 5 6 7 8 9 fi fl ffi ffl โ
โ ! $ % & ( ) โ โ * + - . , / : ; = ? [ ] โ โ
โ โข โก โ โ _ ยผ ยฝ ยพ ยฐ โ โฒ ยข ยฎ ยฉ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
The special font supplied the missing ASCII and Teletype extended glyphs, among several others. The
plus, minus, and equals signs appeared in the special font despite availability in text fonts โto
insulate the appearance of equations from the choice of standard [read: text] fontsโโa priority since
troff was turned to the task of mathematical typesetting as soon as it was developed.
We note that AT&T took the opportunity to de-unify the apostrophe/right single quotation mark from the
acute accent (a choice ISO later duplicated in its 8859 series of standards). A slash intended to be
mirror-symmetric with the backslash was also included, as was the Bell System logo; we do not attempt to
depict the latter.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ฮฑฮฒฮณฮดฮตฮถฮทฮธฮนฮบฮปฮผฮฝฮพฮฟฯฯฯฯฯฯ
ฯฯฯฯ โ
โ ฮ ฮ ฮ ฮ ฮ ฮ ฮฃ ฮฅ ฮฆ ฮจ ฮฉ โ
โ " ยด \ ^ _ ` ~ / < > { } # @ + โ = โ โ
โ โฅ โค โก โ โผ โ โ โ โ โ ร รท ยฑ โ โ โ ยฌ โซ โ โ โพ โช โฉ โ โ โ โ โ
โ โ
โ ยง โก โ โ | โ โง โฉ โซ โญ โจ โฌ โช โ โ โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
One ASCII character as rendered by the Model 37 was apparently abandoned. That device printed decimal
124 (|) as a broken vertical line, like Unicode U+00A6 (ยฆ). No equivalent was available on the C/A/T;
the box rule \[br], brace vertical extension \[bv], and โorโ operator \[or] were used as contextually
appropriate.
Devices supported by AT&T device-independent troff exhibited some differences in glyph detail. For
example, on the Autologic APS-5 phototypesetter, the square \(sq became filled in the Times bold face.
Name
groff_char - GNU roff special character and glyph repertoire
See Also
Groff:TheGNUImplementationoftroff, by Trent A. Fisher and Werner Lemberg, is the primary groff
manual. Section โUsing Symbolsโ may be of particular note. You can browse it interactively with โinfo
'(groff) Using Symbols'โ.
โAn extension to the troff character set for Europeโ, E.G. Keizer, K.J. Simonsen, J. Akkerhuis; EUUG
Newsletter, Volume 9, No. 2, Summer 1989
The Unicode Standard
โ7-bit Character Setsโ by Tuomas Salste documents the inherent ambiguity and configurable code points of
the ASCII encoding standard.
โNroff/Troff User's Manualโ by Joseph F. Ossanna, 1976, AT&T Bell Laboratories Computing Science
Technical Report No. 54, features two tables that throw light on the glyph repertoire available to
โtypesetter roffโ when it was first written. Be careful of re-typeset versions of this document that can
be found on the Internet. Some do not accurately represent the original document: several glyphs are
obviously missing. More subtly, lowercase Greek letters are rendered upright, not slanted as they
appeared in the C/A/T's special font and as expected by troff users.
groff_rfc1345(7) describes an alternative set of special character glyph names, which extends and in some
cases overrides the definitions listed above.
groff(1), troff(1), groff(7)
groff 1.23.0 3 June 2025 groff_char(7)

