Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  MANDOC_CHAR (7)


mandoc_char - mandoc special characters


     Dashes and Hyphens
Special Characters
Predefined Strings
Unicode Characters
Numbered Characters
See Also


This page documents the roff(7) escape sequences accepted by mandoc(1) to represent special characters in mdoc(7) and man(7) documents.

The rendering depends on the mandoc(1) output mode; in ASCII output, most characters are completely unintelligible. For that reason, using any of the special characters documented here, except those discussed in the DESCRIPTION, is strongly discouraged; they are supported merely for backwards compatibility with existing documents.

In particular, in English manual pages, do not use special-character escape sequences to represent national language characters in author names; instead, provide ASCII transcriptions of the names.

    Dashes and Hyphens

In typography there are different types of dashes of various width: the hyphen (-), the minus sign (-), the en-dash (-), and the em-dash (—).

Hyphens are used for adjectives; to separate the two parts of a compound word; or to separate a word across two successive lines of text. The hyphen does not need to be escaped:


The mathematical minus sign is used for negative numbers or subtraction. It should be written as '\-':

a = 3 \- 1;
b = \-2;

The en-dash is used to separate the two elements of a range, or can be used the same way as an em-dash. It should be written as '\(en':

pp. 95\(en97.
Go away \(en or else!

The em-dash can be used to show an interruption or can be used the same way as colons, semi-colons, or parentheses. It should be written as '\(em':

Three things \(em apples, oranges, and bananas.
This is not that \(em rather, this is that.

Note: hyphens, minus signs, and en-dashes look identical under normal ASCII output. Other formats, such as PostScript, render them correctly, with differing widths.


To separate words in normal text, for indenting and alignment in literal context, and when none of the following special cases apply, just use the normal space character (' ').

When filling text, lines may be broken between words, i.e. at space characters. To prevent a line break between two particular words, use the non-breaking space escape sequence ('\~') instead of the normal space character. For example, the input string "number\~1" will be kept together as "number~1" on the same output line.

On request and macro lines, the normal space character serves as an argument delimiter. To include whitespace into arguments, quoting is usually the best choice. In some cases, using either the non-breaking ('\~') or the breaking ('\ ') space escape sequence may be preferable. To escape macro names and to protect whitespace at the end of input lines, the zero-width space ('\&') is often useful. For example, in mdoc(7), a normal space character can be displayed in single quotes in either of the following ways:

    .Sq \(dq \(dq

    .Sq \ \&


On request and macro lines, the double-quote character ('\(dq') is handled specially to allow quoting. One way to prevent this special handling is by using the '\(dq' escape sequence.

Note that on text lines, literal double-quote characters can be used verbatim. All other quote-like characters can be used verbatim as well, even on request and macro lines.


The period ('.') is handled specially at the beginning of an input line, where it introduces a roff(7) request or a macro, and when appearing alone as a macro argument in mdoc(7). In such situations, prepend a zero-width space ('\&.') to make it behave like normal text.

Do not use the '\.' escape sequence. It does not prevent special handling of the period.


To include a literal backslash ('\') into the output, use the ('\e') escape sequence.

Note that doubling it ('\\') is not the right way to output a backslash. Because mandoc(1) does not implement full roff(7) functionality, it may work with mandoc(1), but it may have weird effects on complete roff(7) implementations.


Special characters are encoded as '\X' (for a one-character escape), '\(XX' (two-character), and '\[N]' (N-character). For details, see the Special Characters subsection of the roff(7) manual.

Input      Description
\~      non-breaking, non-collapsing space
\      breaking, non-collapsing n-width space
\^      zero-width space
\%      zero-width space
\&      zero-width space
\|      zero-width space
\0      breaking, non-collapsing digit-width space
\c      removes any trailing space (if applicable)

Input      Rendered      Description
\(ba      \(ba      bar
\(br      |      box rule
\(ul      _      underscore
\(rl      \(rl      overline
\(bb      \(bb      broken bar
\(sl      /      forward slash
\(rs      \(rs      backward slash

Text markers:
Input      Rendered      Description
\(ci      O      circle
\(bu      o      bullet
\(dd      ‡      double dagger
\(dg      †      dagger
\(lz      \(lz      lozenge
\(sq      []      white square
\(ps      \(ps      paragraph
\(sc      §      section
\(lh      <=      left hand
\(rh      =>      right hand
\(at      \(at      at
\(sh      \(sh      hash (pound)
\(CR      \(CR      carriage return
\(OK      \(OK      check mark

Legal symbols:
Input      Rendered      Description
\(co      ©      copyright
\(rg      ®      registered
\(tm      ®      trademarked

Input      Rendered      Description
\(em      —      em-dash
\(en      -      en-dash
\(hy      -      hyphen
\e      \      back-slash
\.      .      period
\(r!      \(r!      upside-down exclamation
\(r?      \(r?      upside-down question

Input      Rendered      Description
\(Bq      \(Bq      right low double-quote
\(bq      \(bq      right low single-quote
\(lq      \(lq      left double-quote
\(rq      \(rq      right double-quote
\(oq      \(oq      left single-quote
\(cq      \(cq      right single-quote
\(aq      \(aq      apostrophe quote (text)
\(dq      \(dq      double quote (text)
\(Fo      \(Fo      left guillemet
\(Fc      \(Fc      right guillemet
\(fo      \(fo      left single guillemet
\(fc      \(fc      right single guillemet

Input      Rendered      Description
\(lB      \(lB      left bracket
\(rB      \(rB      right bracket
\(lC      \(lC      left brace
\(rC      \(rC      right brace
\(la      \(la      left angle
\(ra      \(ra      right angle
\(bv      |      brace extension
\[braceex]      [braceex]      brace extension
\[bracketlefttp]      [bracketlefttp]      top-left hooked bracket
\[bracketleftbp]      [bracketleftbp]      bottom-left hooked bracket
\[bracketleftex]      [bracketleftex]      left hooked bracket extension
\[bracketrighttp]      [bracketrighttp]      top-right hooked bracket
\[bracketrightbp]      [bracketrightbp]      bottom-right hooked bracket
\[bracketrightex]      [bracketrightex]      right hooked bracket extension
\(lt      (      top-left hooked brace
\[bracelefttp]      [bracelefttp]      top-left hooked brace
\(lk      |      mid-left hooked brace
\[braceleftmid]      [braceleftmid]      mid-left hooked brace
\(lb      (      bottom-left hooked brace
\[braceleftbp]      [braceleftbp]      bottom-left hooked brace
\[braceleftex]      [braceleftex]      left hooked brace extension
\(rt      )      top-left hooked brace
\[bracerighttp]      [bracerighttp]      top-right hooked brace
\(rk      |      mid-right hooked brace
\[bracerightmid]      [bracerightmid]      mid-right hooked brace
\(rb      )      bottom-right hooked brace
\[bracerightbp]      [bracerightbp]      bottom-right hooked brace
\[bracerightex]      [bracerightex]      right hooked brace extension
\[parenlefttp]      [parenlefttp]      top-left hooked parenthesis
\[parenleftbp]      [parenleftbp]      bottom-left hooked parenthesis
\[parenleftex]      [parenleftex]      left hooked parenthesis extension
\[parenrighttp]      [parenrighttp]      top-right hooked parenthesis
\[parenrightbp]      [parenrightbp]      bottom-right hooked parenthesis
\[parenrightex]      [parenrightex]      right hooked parenthesis extension

Input      Rendered      Description
\(<-      <-      left arrow
\(->      ->      right arrow
\(<>      \(&lt;>      left-right arrow
\(da      v      down arrow
\(ua      ^      up arrow
\(va      \(va      up-down arrow
\(lA      \(lA      left double-arrow
\(rA      \(rA      right double-arrow
\(hA      \(hA      left-right double-arrow
\(uA      \(uA      up double-arrow
\(dA      \(dA      down double-arrow
\(vA      \(vA      up-down double-arrow

Input      Rendered      Description
\(AN      \(AN      logical and
\(OR      \(OR      logical or
\(no      ¬      logical not
\[tno]      [tno]      logical not (text)
\(te      \(te      existential quantifier
\(fa      \(fa      universal quantifier
\(st      \(st      such that
\(tf      \(tf      therefore
\(3d      \(3d      therefore
\(or      |      bitwise or

Input      Rendered      Description
\(pl      +      plus
\(mi      -      minus
\-      -      minus (text)
\(-+      \(-+      minus-plus
\(+-      ±      plus-minus
\[t+-]      [t+-]      plus-minus (text)
\(pc      \(pc      centre-dot
\(mu      ×      multiply
\[tmu]      [tmu]      multiply (text)
\(c*      \(c*      circle-multiply
\(c+      \(c+      circle-plus
\(di      ÷      divide
\[tdi]      [tdi]      divide (text)
\(f/      \(f/      fraction
\(**      *      asterisk
\(<=      <=      less-than-equal
\(>=      >=      greater-than-equal
\(<<      \(&lt;<      much less
\(>>      \(&gt;>      much greater
\(eq      =      equal
\(!=      !=      not equal
\(==      ==      equivalent
\(ne      \(ne      not equivalent
\(=~      \(=~      congruent
\(-~      \(-~      asymptotically congruent
\(ap      ~      asymptotically similar
\(~~      \(~~      approximately similar
\(~=      ~=      approximately equal
\(pt      ~      proportionate
\(es      Ø      empty set
\(mo      e      element
\(nm      \(nm      not element
\(sb      (      proper subset
\(nb      \(nb      not subset
\(sp      )      proper superset
\(nc      \(nc      not superset
\(ib      (=      reflexive subset
\(ip      =)      reflexive superset
\(ca      ^      intersection
\(cu      U      union
\(/_      \(/_      angle
\(pp      \(pp      perpendicular
\(is      I      integral
\[integral]      [integral]      integral
\[sum]      [sum]      summation
\[product]      [product]      product
\[coproduct]      [coproduct]      coproduct
\(gr      V      gradient
\(sr      v/      square root
\[sqrt]      [sqrt]      square root
\(lc      |      left-ceiling
\(rc      |      right-ceiling
\(lf      |      left-floor
\(rf      |      right-floor
\(if      oo      infinity
\(Ah      \(Ah      aleph
\(Im      \(Im      imaginary
\(Re      \(Re      real
\(pd      6      partial differential
\(-h      \(-h      Planck constant over 2pi
\[12]      [12]      one-half
\[14]      [14]      one-fourth
\[34]      [34]      three-fourths

Input      Rendered      Description
\(ff      ff      ff ligature
\(fi      fi      fi ligature
\(fl      fl      fl ligature
\(Fi      ffi      ffi ligature
\(Fl      ffl      ffl ligature
\(AE      \(AE      AE
\(ae      \(ae      ae
\(OE      \(OE      OE
\(oe      \(oe      oe
\(ss      \(ss      German eszett
\(IJ      \(IJ      IJ ligature
\(ij      \(ij      ij ligature

Input      Rendered      Description
\(a Ta \(a&nbsp;     Hungarian umlaut
\(a-      \(a-      macron
\(a.      \(a.      dotted
\(a^      \(a^      circumflex
\(aa      ´      acute
\’      '      acute
\(ga      `      grave
\‘      `      grave
\(ab      \(ab      breve
\(ac      \(ac      cedilla
\(ad      \(ad      dieresis
\(ah      \(ah      caron
\(ao      \(ao      ring
\(a~      \(a~      tilde
\(ho      \(ho      ogonek
\(ha      \(ha      hat (text)
\(ti      \(ti      tilde (text)

Accented letters:
Input      Rendered      Description
\(’A      \(&#146;A      acute A
\(’E      \(&#146;E      acute E
\(’I      \(&#146;I      acute I
\(’O      \(&#146;O      acute O
\(’U      \(&#146;U      acute U
\(’a      \(&#146;a      acute a
\(’e      \(&#146;e      acute e
\(’i      \(&#146;i      acute i
\(’o      \(&#146;o      acute o
\(’u      \(&#146;u      acute u
\(‘A      \(&#145;A      grave A
\(‘E      \(&#145;E      grave E
\(‘I      \(&#145;I      grave I
\(‘O      \(&#145;O      grave O
\(‘U      \(&#145;U      grave U
\(‘a      \(&#145;a      grave a
\(‘e      \(&#145;e      grave e
\(‘i      \(&#145;i      grave i
\(‘o      \(&#145;i      grave o
\(‘u      \(&#145;u      grave u
\(~A      \(~A      tilde A
\(~N      \(~N      tilde N
\(~O      \(~O      tilde O
\(~a      \(~a      tilde a
\(~n      \(~n      tilde n
\(~o      \(~o      tilde o
\(:A      \(:A      dieresis A
\(:E      \(:E      dieresis E
\(:I      \(:I      dieresis I
\(:O      \(:O      dieresis O
\(:U      \(:U      dieresis U
\(:a      \(:a      dieresis a
\(:e      \(:e      dieresis e
\(:i      \(:i      dieresis i
\(:o      \(:o      dieresis o
\(:u      \(:u      dieresis u
\(:y      \(:y      dieresis y
\(^A      \(^A      circumflex A
\(^E      \(^E      circumflex E
\(^I      \(^I      circumflex I
\(^O      \(^O      circumflex O
\(^U      \(^U      circumflex U
\(^a      \(^a      circumflex a
\(^e      \(^e      circumflex e
\(^i      \(^i      circumflex i
\(^o      \(^o      circumflex o
\(^u      \(^u      circumflex u
\(,C      \(,C      cedilla C
\(,c      \(,c      cedilla c
\(/L      \(/L      stroke L
\(/l      \(/l      stroke l
\(/O      \(/O      stroke O
\(/o      \(/o      stroke o
\(oA      \(oA      ring A
\(oa      \(oa      ring a

Special letters:
Input      Rendered      Description
\(-D      \(-D      Eth
\(Sd      \(Sd      eth
\(TP      \(TP      Thorn
\(Tp      \(Tp      thorn
\(.i      \(.i      dotless i
\(.j      \(.j      dotless j

Input      Rendered      Description
\(Do      \(Do      dollar
\(ct      ¢      cent
\(Eu      \(Eu      Euro symbol
\(eu      \(eu      Euro symbol
\(Ye      \(Ye      yen
\(Po      \(Po      pound
\(Cs      \(Cs      Scandinavian
\(Fn      \(Fn      florin

Input      Rendered      Description
\(de      °      degree
\(%0      \(%0      per-thousand
\(fm      '      minute
\(sd      \(sd      second
\(mc      \(mc      micro

Greek letters:
Input      Rendered      Description
\(*A      A      Alpha
\(*B      B      Beta
\(*G      |_      Gamma
\(*D      /\      Delta
\(*E      E      Epsilon
\(*Z      Z      Zeta
\(*Y      H      Eta
\(*H      TH      Theta
\(*I      I      Iota
\(*K      K      Kappa
\(*L      L      Lambda
\(*M      M      Mu
\(*N      N      Nu
\(*C      Z      Xi
\(*O      O      Omicron
\(*P      ||      Pi
\(*R      P      Rho
\(*S      S      Sigma
\(*T      T      Tau
\(*U      Y      Upsilon
\(*F      PH      Phi
\(*X      X      Chi
\(*Q      PS      Psi
\(*W      O      Omega
\(*a      a      alpha
\(*b      ß      beta
\(*g      y      gamma
\(*d      d      delta
\(*e      e      epsilon
\(*z      z      zeta
\(*y      n      eta
\(*h      th      theta
\(*i      i      iota
\(*k      k      kappa
\(*l      l      lambda
\(*m      µ      mu
\(*n      v      nu
\(*c      3      xi
\(*o      o      omicron
\(*p      pi      pi
\(*r      p      rho
\(*s      s      sigma
\(*t      t      tau
\(*u      u      upsilon
\(*f      ph      phi
\(*x      x      chi
\(*q      ps      psi
\(*w      o      omega
\(+h      \(+h      theta variant
\(+f      \(+f      phi variant
\(+p      \(+p      pi variant
\(+e      \(+e      epsilon variant
\(ts      s      sigma terminal


Predefined strings are inherited from the macro packages of historical troff implementations. They are not recommended for use, as they differ across implementations. Manuals using these predefined strings are almost certainly not portable.

Their syntax is similar to special characters, using '\*X' (for a one-character escape), '\*(XX' (two-character), and '\*[N]' (N-character). For details, see the Predefined Strings subsection of the roff(7) manual.
Input      Rendered      Description
\*(Ba      |      vertical bar
\*(Ne      !=      not equal
\*(Ge      >=      greater-than-equal
\*(Le      <=      less-than-equal
\*(Gt      >      greater-than
\*(Lt      <      less-than
\*(Pm      ±      plus-minus
\*(If      oo      infinity
\*(Pi      pi      pi
\*(Na      NaN      NaN
\*(Am            ampersand
\*R      ®      restricted mark
\*(Tm            trade mark
\*q      "      double-quote
\*(Rq      ”      right-double-quote
\*(Lq      “      left-double-quote
\*(lp            right-parenthesis
\*(rp            left-parenthesis
\*(lq      “      left double-quote
\*(rq      ”      right double-quote
\*(ua      ^      up arrow
\*(va            up-down arrow
\*(<=      <=      less-than-equal
\*(>=      >=      greater-than-equal
\*(aa      ´      acute
\*(ga      `      grave
\*(Px            POSIX standard name
\*(Ai            ANSI standard name


The escape sequence


is interpreted as a Unicode codepoint. The codepoint must be in the range above U+0080 and less than U+10FFFF. For compatibility, points must be zero-padded to four characters; if greater than four characters, no zero padding is allowed. Unicode surrogates are not allowed.


For backward compatibility with existing manuals, mandoc(1) also supports the

    \N\(aq number \(aq

escape sequence, inserting the character number from the current character set into the output. Of course, this is inherently non-portable and is already marked as deprecated in the Heirloom roff manual. For example, do not use \N’34’, use \(dq, or even the plain '\(dq' character where possible.


This section documents compatibility between mandoc and other other troff implementations, at this time limited to GNU troff ("groff").

The \N\(aq\(aq escape sequence is limited to printable characters; in groff, it accepts arbitrary character numbers.
In -T ascii, the \(ss, \(nm, \(nb, \(nc, \(ib, \(ip, \(pp, \[sum], \[product], \[coproduct], \(gr, \(-h, and \(a. special characters render differently between mandoc and groff.
In -T html and -T xhtml, the \(~=, \(nb, and \(nc special characters render differently between mandoc and groff.
The -T ps and -T pdf modes format like -T ascii instead of rendering glyphs as in groff.
The \[radicalex], \[sqrtex], and \(ru special characters have been omitted from mandoc either because they are poorly documented or they have no known representation.


mandoc(1), man(7), mdoc(7), roff(7)


The mandoc_char manual page was written by
.An Kristaps Dzonsons ,
.Mt .


The '\*(Ba' escape mimics the behaviour of the '|' character in mdoc(7); thus, if you wish to render a vertical bar with no side effects, use the '\(ba' escape.
Search for    or go to Top of page |  Section 7 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.