groff_char(7) — Linux manual page

Name | Description | Glyph tables | Authors | See Also | COLOPHON

groff_char(7)         Miscellaneous Information Manual         groff_char(7)

Name         top

       groff_char - GNU roff special character and glyph repertoire

Description         top

       The GNU roff typesetting system has a large glyph repertoire suitable
       for production of varied literary, professional, technical, and
       mathematical documents.  However, its input character set is
       restricted to that defined by the standards ISO Latin-1 (ISO 8859-1)
       and IBM code page 1047 (an arrangement of EBCDIC).  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.

       AT&T troff in the 1970s faced a similar problem of typesetter devices
       with a glyph repertoire differing from that of the computers that
       controlled them.  The solution troff adopted was a form of escape
       sequence known as a special character 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.

       As in other respects, groff has removed historical roff limitations
       on the lengths of special character escapes, 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 escapes with the .char request.

       This document lists all of the glyph names predefined by groff and
       describes the systematic notation by which it enables access to
       arbitrary Unicode code points and construction of composite glyphs.
       The glyphs listed in this document may not be available, or may vary
       in appearance, depending on the output device chosen when the page
       was rendered (with the -T option to the man(1) or roff programs).
       The device used in generation of this page was “utf8”.

       A few escape sequences that are not special character escapes also
       produce glyphs; these exist for syntactical or historical reasons.
       They include \\, \', \`, \-, \. (backslash-dot), and \e; see
       groff(7).  Of these, only \- is also available as a special character
       of the same name, in the form \[-].  A small number of special
       characters represent glyphs that are not encoded in Unicode; examples
       include the baseline rule \[ru] and the Bell Systems logo \[bs].

       In groff, you can test output device support for any character
       (ordinary or special) with the conditional “c”.
              .ie c \[bs] \{Welcome to the \[bs] Bell System;
              did you get the Wehrmacht helmet or the Death Star?\}
              .el No Bell Systems logo.

       For brevity in the remainder of this document, we shall refer to sys‐
       tems 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.

   Fundamental character set
       The ninety-four characters catalogued above, plus the space and the
       newline, 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 aforemen‐
       tioned ISO character encoding standards.  It is this character set
       and (with some noteworthy exceptions) the corresponding glyph reper‐
       toire for which AT&T troff was implemented.  On EBCDIC systems,
       printable characters are in the range 66–201 and 203–254; those with‐
       out counterparts in the ISO range 33–126 are discussed in the next

       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 seven of the ninety-four code points in this range sur‐
       prise 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; the preparation of AT&T's
       patent filings with the U.S. government was the application of the
       system that “paid the bills” at the Bell Labs site where troff and
       Unix were first developed.  It is also worth noting that the prevail‐
       ing 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 lo‐
       calization 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 escapes producing the Unicode basic Latin character
       they replace.  The first, the neutral double quote, is a partial ex‐
       ception because it does represent itself, but since it is also used
       by roff systems to quote macro arguments, groff supports a special
       character escape as an alternative form so that the glyph can be eas‐
       ily included in macro arguments without requiring the user to master
       the quoting rules that AT&T troff required in that context.  Further‐
       more, not all of the special character escapes are portable to AT&T
       troff and all of its descendants; these groff extensions are pre‐
       sented using its special character escape form \[], whereas portable
       special character escapes 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 or .eo requests are used.  On devices with a limited glyph
       repertoire, the appearances of glyphs on the same row of the table
       may be identical; except for the neutral double quote, this will not
       be the case on more-capable devices.  Review your document using as
       many different postprocessors 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 \[-] hyphen-minus       │
         │\        (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
       conflicting purposes to which it had already been put in the 1980s,
       including a hyphen, a minus sign, and (alone or in repetition) dashes
       of varying widths.  For best results in groff, use the character in
       input without an escape only to mean a hyphen, as in the phrase
       “long-term”.  For a minus sign in running prose or a Unix command-
       line option dash, use \- (or \[-] in groff if you find it helps the
       clarity of the source document).  AT&T troff supported em-dashes as

       The special character escape 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, be‐
       cause 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
       escapes should be used for quotation marks unless portability to lim‐
       ited or historical troff implementations is necessary; on those sys‐
       tems, the input convention is to pair the grave accent with the apos‐
       trophe 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 vis‐
       ually distinguishable from double quotes (“thus”) on terminal de‐
       vices, 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 expect to use quotation marks frequently in your document, see
       if the macro package you're using defines strings or macros to facil‐
       itate quotation.

       Using Unicode basic Latin characters to compose boxes and lines is
       ill-advised.  roff systems have special characters for drawing
       straight 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-bit encodings and Latin-1 supplement
       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 ad‐
       ditional space to what Unicode calls “C1 controls” (control charac‐
       ters) and the “Latin-1 supplement”.  The C1 controls are neither
       printable nor usable as groff input.

       Two characters in the Latin-1 supplement are handled specially.
       troff never produces them as output.

       NBSP   encodes the no-break space.  On input it is mapped to \~, the
              adjustable non-breaking space escape.

       SHY    encodes the soft hyphen character.  On input it is mapped to
              \%, the hyphenation control escape.

       The remaining characters in the Latin-1 supplement represent them‐
       selves.  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 glyph names, shown below.

       ¡  \[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] a+e combined
       ¸  \[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] A+E combined                  õ  \[~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

   Special character escape forms
       Glyphs that lack a character code in the basic Latin repertoire to
       directly represent them are entered by one of several special charac‐
       ter escape forms.  Such glyphs can be simple or composite, and ac‐
       cessed either by name or numerically by code point.  Code points and
       combining properties are determined by character encoding standards,
       whereas glyph names originated in AT&T troff special character es‐
       capes.  Glyph names are not limited to alphanumeric characters; any
       of the printable characters from the Unicode basic Latin repertoire
       may be used.

       \(gl   is a special character escape for the glyph with the two-char‐
              acter name gl.  This is the syntax form supported by AT&T
              troff.  The acute accent, \(aa, is an example.

              is a special character escape for glyph-name, which can be of
              arbitrary length.  The foregoing acute accent example could be
              expressed in groff as \[aa].

              An ordinary input character “c” is not the same as \[c]; the
              latter is internally mapped to glyph name “\c”.  In other
              words, “\[a]” is not “a”, but rather \a, the uninterpreted
              leader escape sequence.  By default, groff defines a single
              glyph name of length one, namely the hyphen-minus, which can
              be accessed as either \- or \[-].

       \[base-glyph composite-1 composite-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 \[e
              aa].  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 with the
       .char request, enabling the user to devise ad hoc names for them; see

              is a Unicode numeric special character escape.  With this
              form, any Unicode point can be indicated using four to six
              hexadecimal digits, with hexadecimal letters accepted in up‐
              percase form only.  Thus, \[u02DA] accesses the (spacing) ring
              accent, producing “˚”.

       Unicode code points can be composed as well; when they are, troff re‐
       quires NFD (Normalization Form D), where all Unicode glyphs are maxi‐
       mally decomposed.  (Exception: precomposed characters in the Latin-1
       supplement described above are also accepted.  Do not count on this
       exception remaining in a future troff that accepts UTF-8 input di‐
       rectly.)  Thus, troff accepts “caf\['e]”, “caf\[e aa]”, and
       “caf\[u0065_0301]”, as ways to input “café”.  (Due to its ISO Latin-1
       and IBM code page 1047 compatibility, at present it also accepts

              constructs a composite glyph from Unicode numeric special
              character escapes.  The code points of the base glyph and the
              combining components are each expressed in hexadecimal, with
              an underscore (_) separating each component.  Thus,
              \[u0065_0301] produces “é”.

              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
              is used to map characters onto glyphs via the .trin request in
              macro files loaded by grotty(1).

Glyph tables         top

       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

       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 typesetter devices, such glyphs are typically
               drawn from a special font (see groff_font(5)).  Often, such
               glyphs have metrics which look incongruous in normal text.  A
               few which are not uncommon in running prose have “text
               variants”, which should work better in that context.
               Conversely, a handful of glyphs that are normally drawn from
               a regular font are required in mathematical text.  Both sets
               of exceptions are noted in the tables where they appear
               (“Logical symbols” and “Mathematical symbols”).

   Basic Latin
       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

       The vertical bar is overloaded; the \[ba] and \[or] escapes 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” +
       _        \[ul]   u005F     underscore, low line +
       {        \[lC]   u007B     left brace
       |        |       u007C     bar
       |        \[ba]   u007C     bar
       |        \[or]   u007C     bitwise or +
       }        \[rC]   u007D     right brace
       ~        \[ti]   u007E     tilde +

   Supplementary Latin letters
       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

   Ligatures and digraphs
       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        \[IJ]   u0132             IJ digraph
       ij        \[ij]   u0133             ij digraph
       Ł        \[/L]   u0141             L with stroke
       ł        \[/l]   u0142             l with stroke
       Ø        \[/O]   u00D8             O with stroke
       ø        \[/o]   u00F8             o with stroke

   Accented characters
       All of these glyphs can be composed using combining glyph names as
       described in subsection “Special character escape forms” above; the
       names below can be thought of 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

       The .composite request is used to map the accents to code points with
       non-spacing semantics; the values given in parentheses are their
       spacing counterparts.

       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

   Quotation marks
       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 open (left) quote
       ’        \[cq]   u2019     single closing (right) quote
       '        \[aq]   u0027     apostrophe, neutral single 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

       Output   Input   Unicode   Notes

       ¡        \[r!]   u00A1     inverted exclamation mark
       ¿        \[r?]   u00BF     inverted question mark
       —        \[em]   u2014     em-dash +
       –        \[en]   u2013     en-dash
       ‐        \[hy]   u2010     hyphen +

       On typestter devices, the bracket extensions are font-invariant
       glyphs; that is, they are rendered the same way regardless of font.
       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'.
              .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'\"

       Another complication is the fact that some glyphs which represent
       bracket pieces in AT&T troff can be used for other mathematical sym‐
       bols as well, for example \(lf and \(rf which provide the floor oper‐
       ator.  Some output postprocessors, such as grodvi(1), don't unify
       such glyphs.  For this reason, the four 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 cor‐
       rectly for all devices—provided those glyphs exist.

       Output   Input               Unicode   Notes
       [        \[lB]               u005B     left square bracket
       ]        \[rB]               u005D     right square bracket
       {        \[lC]               u007B     left 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
       ⎣        \[bracketleftbt]    u23A3     left square bracket bottom
       ⎢        \[bracketleftex]    u23A2     left square bracket extension

       ⎤        \[bracketrighttp]   u23A4     right square bracket top

       ⎦        \[bracketrightbt]   u23A6     right square bracket bottom
       ⎥        \[bracketrightex]   u23A5     right square bracket extension

       ⎧        \[lt]               u23A7     left brace top +
       ⎧        \[bracelefttp]      u23A7     left brace top
       ⎨        \[lk]               u23A8     left brace middle +
       ⎨        \[braceleftmid]     u23A8     left brace middle
       ⎩        \[lb]               u23A9     left brace bottom +
       ⎩        \[braceleftbt]      u23A9     left brace bottom
       ⎪        \[braceleftex]      u23AA     left brace extension

       ⎫        \[rt]               u23AB     right brace top +
       ⎫        \[bracerighttp]     u23AB     right brace top
       ⎬        \[rk]               u23AC     right brace middle +
       ⎬        \[bracerightmid]    u23AC     right brace middle
       ⎭        \[rb]               u23AD     right brace bottom +
       ⎭        \[bracerightbt]     u23AD     right brace bottom
       ⎪        \[bracerightex]     u23AA     right brace extension

       ⎛        \[parenlefttp]      u239B     left parenthesis top
       ⎝        \[parenleftbt]      u239D     left parenthesis bottom
       ⎜        \[parenleftex]      u239C     left parenthesis extension
       ⎞        \[parenrighttp]     u239E     right parenthesis top
       ⎠        \[parenrightbt]     u23A0     right parenthesis bottom
       ⎟        \[parenrightex]     u239F     right parenthesis extension

       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

   Rules and lines
       On typesetter 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.

       \[rn] also serves in AT&T troff as the horizontal extension of the
       radical (square root) sign.  The baseline rule \[ru] is a font-in‐
       variant glyph, namely a rule of one-half em.  In groff, use \[radi‐
       calex] (see subsection “Mathematical symbols” below) instead of
       \[rn], for continuation of radical signs (e.g., square roots).

       Output   Input   Unicode   Notes
       |        |       u007C     bar
       |        \[ba]   u007C     bar
       │        \[br]   u2502     box rule +
       _        \[ul]   u005F     underscore, low line +
       ‾        \[rn]   u203E     overline +
       _        \[ru]   ---       baseline rule +
       ¦        \[bb]   u00A6     broken bar
       /        \[sl]   u002F     slash, solidus +
       \        \[rs]   u005C     reverse solidus

   Text markers
       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 +
       @        \[at]   u0040     at sign
       #        \[sh]   u0023     number sign
       ↵        \[CR]   u21B5     carriage return
       ✓        \[OK]   u2713     check mark

   Legal symbols
       The Bell Systems 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 Systems logo +

   Currency symbols
       Output   Input   Unicode   Notes
       $        \[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

       Output   Input   Unicode   Notes
       °        \[de]   u00B0     degree sign +
       ‰        \[%0]   u2030     per thousand, per mille sign
       ′        \[fm]   u2032     arc minute sign +
       ″        \[sd]   u2033     arc second sign
       µ        \[mc]   u00B5     micro sign
       ª        \[Of]   u00AA     feminine ordinal indicator
       º        \[Om]   u00BA     masculine ordinal indicator

   Logical symbols
       Whether the two variants of the not sign differ in appearance or
       spacing will depend on the device and font selected.

       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
       |        \[or]    u007C     bitwise or +

   Mathematical symbols
       \[Fn] also appears in subsection “Supplementary Latin letters” above.
       Observe the two varieties of the plus-minus, multiplication, and di‐
       vision signs; \[+-], \[mu], and \[di] are normally drawn from the
       special font, but have regular (“text”) font variants.  Also be aware
       of three glyphs available in special font variants that are normally
       drawn from regular fonts: the plus, minus, and equals signs.  Whether
       these variants differ in appearance or spacing will depend on the de‐
       vice and font selected.

       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 \[+-]
       ·        \[pc]          u00B7        centered period
       ⋅        \[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
       ∗        \[**]          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 +
       ∼        \[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 +
       √        \[sqrt]        u221A        radical sign, square root
                \[radicalex]   ---          radical extension ***
                \[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

   Greek glyphs
       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 +
       ς        \[ts]   u03C2     terminal lowercase sigma +

       σ        \[*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 +

       ϑ        \[+h]   u03D1     variant theta
       φ        \[+f]   u03C6     variant phi (curly shape)
       ϖ        \[+p]   u03D6     variant pi (similar to omega)
       ϵ        \[+e]   u03F5     variant epsilon (lunate)

   Playing card symbols
       Output   Input   Unicode   Notes
       ♣        \[CL]   u2663     solid club suit
       ♠        \[SP]   u2660     solid spade suit
       ♥        \[HE]   u2665     solid heart suit
       ♦        \[DI]   u2666     solid diamond suit

Authors         top

       This document was written by James Clark ⟨⟩, with addi‐
       tions by Werner Lemberg ⟨⟩ and Bernd Warken ⟨groff-bernd⟩, revised to use tbl(1) by Eric S. Raymond ⟨esr@⟩, and largely rewritten by G. Branden Robinson ⟨g.branden⟩.

See Also         top

       Groff: The GNU Implementation of troff, 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

       The Unicode Standard ⟨⟩

       “7-bit Character Sets” 
       ⟨⟩ by Tuomas Salste
       documents the inherent ambiguity and configurability (in terms of
       variable code points) of the ASCII encoding standard.

       groff(1), troff(1), groff(7)

COLOPHON         top

       This page is part of the groff (GNU troff) project.  Information
       about the project can be found at 
       ⟨⟩.  If you have a bug report for
       this manual page, see ⟨⟩.  This
       page was obtained from the project's upstream Git repository
       ⟨⟩ on 2020-11-01.  (At that
       time, the date of the most recent commit that was found in the repos‐
       itory was 2020-11-01.)  If you discover any rendering problems in
       this HTML version of the page, or you believe there is a better or
       more up-to-date source for the page, or you have corrections or im‐
       provements to the information in this COLOPHON (which is not part of
       the original manual page), send a mail to

groff    31 October 2020                 groff_char(7)

Pages that refer to this page: addftinfo(1)gpinyin(1)grodvi(1)groff(1)groffer(1)grolbp(1)grolj4(1)grops(1)grotty(1)hpftodit(1)pic(1)groff(7)groff_diff(7)groff_man(7)groff_man_style(7)