xref: /freebsd/contrib/mandoc/mandoc_char.7 (revision 0957b409)
1.\"	$Id: mandoc_char.7,v 1.72 2018/08/08 14:30:48 schwarze Exp $
2.\"
3.\" Copyright (c) 2003 Jason McIntyre <jmc@openbsd.org>
4.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
5.\" Copyright (c) 2011, 2013, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
6.\"
7.\" Permission to use, copy, modify, and distribute this software for any
8.\" purpose with or without fee is hereby granted, provided that the above
9.\" copyright notice and this permission notice appear in all copies.
10.\"
11.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18.\"
19.Dd $Mdocdate: August 8 2018 $
20.Dt MANDOC_CHAR 7
21.Os
22.Sh NAME
23.Nm mandoc_char
24.Nd mandoc special characters
25.Sh DESCRIPTION
26This page documents the
27.Xr roff 7
28escape sequences accepted by
29.Xr mandoc 1
30to represent special characters in
31.Xr mdoc 7
32and
33.Xr man 7
34documents.
35.Pp
36The rendering depends on the
37.Xr mandoc 1
38output mode; it can be inspected by calling
39.Xr man 1
40on the
41.Nm
42manual page with different
43.Fl T
44arguments.
45In ASCII output, the rendering of some characters may be hard
46to interpret for the reader.
47Many are rendered as descriptive strings like
48.Qq <integral> ,
49.Qq <degree> ,
50or
51.Qq <Gamma> ,
52which may look ugly, and many are replaced by similar ASCII characters.
53In particular, accented characters are usually shown without the accent.
54For that reason, try to avoid using any of the special characters
55documented here except those discussed in the
56.Sx DESCRIPTION ,
57unless they are essential for explaining the subject matter at hand,
58for example when documenting complicated mathematical functions.
59.Pp
60In particular, in English manual pages, do not use special-character
61escape sequences to represent national language characters in author
62names; instead, provide ASCII transcriptions of the names.
63.Ss Dashes and Hyphens
64In typography there are different types of dashes of various width:
65the hyphen (\(hy),
66the en-dash (\(en),
67the em-dash (\(em),
68and the mathematical minus sign (\(mi).
69.Pp
70Hyphens are used for adjectives;
71to separate the two parts of a compound word;
72or to separate a word across two successive lines of text.
73The hyphen does not need to be escaped:
74.Bd -unfilled -offset indent
75blue-eyed
76lorry-driver
77.Ed
78.Pp
79The en-dash is used to separate the two elements of a range,
80or can be used the same way as an em-dash.
81It should be written as
82.Sq \e(en :
83.Bd -unfilled -offset indent
84pp. 95\e(en97.
85Go away \e(en or else!
86.Ed
87.Pp
88The em-dash can be used to show an interruption
89or can be used the same way as colons, semi-colons, or parentheses.
90It should be written as
91.Sq \e(em :
92.Bd -unfilled -offset indent
93Three things \e(em apples, oranges, and bananas.
94This is not that \e(em rather, this is that.
95.Ed
96.Pp
97In
98.Xr roff 7
99documents, the minus sign is normally written as
100.Sq \e- .
101In manual pages, some style guides recommend to also use
102.Sq \e-
103if an ASCII 0x2d
104.Dq hyphen-minus
105output glyph that can be copied and pasted is desired in output modes
106supporting it, for example in
107.Fl T Cm utf8
108and
109.Fl T Cm html .
110But currently, no practically relevant manual page formatter actually
111requires that subtlety, so in manual pages just write plain
112.Sq -
113to represent hyphen, minus, and hyphen-minus.
114.Pp
115If a word on a text input line contains a hyphen, a formatter may decide
116to insert an output line break after the hyphen if that helps filling
117the current output line, but the whole word would overflow the line.
118If it is important that the word is not broken across lines in this
119way, a zero-width space
120.Pq Sq \e&
121can be inserted before or after the hyphen.
122While
123.Xr mandoc 1
124never breaks the output line after hyphens adjacent to a zero-width
125space, after any of the other dash- or hyphen-like characters
126represented by escape sequences, or after hyphens inside words in
127macro arguments, other software may not respect these rules and may
128break the line even in such cases.
129.Pp
130Some
131.Xr roff 7
132implementations contains dictionaries allowing to break the line
133at syllable boundaries even inside words that contain no hyphens.
134Such automatic hyphenation is not supported by
135.Xr mandoc 1 ,
136which only breaks the line at whitespace, and inside words only
137after existing hyphens.
138.Ss Spaces
139To separate words in normal text, for indenting and alignment
140in literal context, and when none of the following special cases apply,
141just use the normal space character
142.Pq Sq \  .
143.Pp
144When filling text, output lines may be broken between words, i.e. at space
145characters.
146To prevent a line break between two particular words,
147use the unpaddable non-breaking space escape sequence
148.Pq Sq \e\ \&
149instead of the normal space character.
150For example, the input string
151.Dq number\e\ 1
152will be kept together as
153.Dq number\ 1
154on the same output line.
155.Pp
156On request and macro lines, the normal space character serves as an
157argument delimiter.
158To include whitespace into arguments, quoting is usually the best choice;
159see the MACRO SYNTAX section in
160.Xr roff 7 .
161In some cases, using the non-breaking space escape sequence
162.Pq Sq \e\ \&
163may be preferable.
164.Pp
165To escape macro names and to protect whitespace at the end
166of input lines, the zero-width space
167.Pq Sq \e&
168is often useful.
169For example, in
170.Xr mdoc 7 ,
171a normal space character can be displayed in single quotes in either
172of the following ways:
173.Pp
174.Dl .Sq \(dq \(dq
175.Dl .Sq \e \e&
176.Ss Quotes
177On request and macro lines, the double-quote character
178.Pq Sq \(dq
179is handled specially to allow quoting.
180One way to prevent this special handling is by using the
181.Sq \e(dq
182escape sequence.
183.Pp
184Note that on text lines, literal double-quote characters can be used
185verbatim.
186All other quote-like characters can be used verbatim as well,
187even on request and macro lines.
188.Ss Accents
189In output modes supporting such special output characters, for example
190.Fl T Cm pdf ,
191and sometimes less consistently in
192.Fl T Cm utf8 ,
193some
194.Xr roff 7
195formatters convert the following ASCII input characters to the
196following Unicode special output characters:
197.Bl -column x(ga U+2018 -offset indent
198.It \(ga Ta U+2018 Ta left single quotation mark
199.It \(aq Ta U+2019 Ta right single quotation mark
200.It \(ti Ta U+02DC Ta small tilde
201.It \(ha Ta U+02C6 Ta modifier letter circumflex
202.El
203.Pp
204In prose, this automatic substitution is often desirable;
205but when these characters have to be displayed as plain ASCII
206characters, for example in source code samples, they require
207escaping to render as follows:
208.Bl -column x(ga U+2018 -offset indent
209.It \e(ga Ta U+0060 Ta grave accent
210.It \e(aq Ta U+0027 Ta apostrophe
211.It \e(ti Ta U+007E Ta tilde
212.It \e(ha Ta U+005E Ta circumflex accent
213.El
214.Ss Periods
215The period
216.Pq Sq \&.
217is handled specially at the beginning of an input line,
218where it introduces a
219.Xr roff 7
220request or a macro, and when appearing alone as a macro argument in
221.Xr mdoc 7 .
222In such situations, prepend a zero-width space
223.Pq Sq \e&.
224to make it behave like normal text.
225.Pp
226Do not use the
227.Sq \e.
228escape sequence.
229It does not prevent special handling of the period.
230.Ss Backslashes
231To include a literal backslash
232.Pq Sq \e
233into the output, use the
234.Pq Sq \ee
235escape sequence.
236.Pp
237Note that doubling it
238.Pq Sq \e\e
239is not the right way to output a backslash.
240Because
241.Xr mandoc 1
242does not implement full
243.Xr roff 7
244functionality, it may work with
245.Xr mandoc 1 ,
246but it may have weird effects on complete
247.Xr roff 7
248implementations.
249.Sh SPECIAL CHARACTERS
250Special characters are encoded as
251.Sq \eX
252.Pq for a one-character escape ,
253.Sq \e(XX
254.Pq two-character ,
255and
256.Sq \e[N]
257.Pq N-character .
258For details, see the
259.Em Special Characters
260subsection of the
261.Xr roff 7
262manual.
263.Pp
264Spacing:
265.Bl -column "Input" "Description" -offset indent -compact
266.It Em Input Ta Em Description
267.It Sq \e\ \& Ta unpaddable non-breaking space
268.It \e\(ti   Ta paddable non-breaking space
269.It \e0      Ta unpaddable, breaking digit-width space
270.It \e|      Ta one-sixth \e(em narrow space, zero width in nroff mode
271.It \e^      Ta one-twelfth \e(em half-narrow space, zero width in nroff
272.It \e&      Ta zero-width space
273.It \e%      Ta zero-width space allowing hyphenation
274.El
275.Pp
276Lines:
277.Bl -column "Input" "Rendered" "Description" -offset indent -compact
278.It Em Input Ta Em Rendered Ta Em Description
279.It \e(ba    Ta \(ba        Ta bar
280.It \e(br    Ta \(br        Ta box rule
281.It \e(ul    Ta \(ul        Ta underscore
282.It \e(ru    Ta \(ru        Ta underscore (width 0.5m)
283.It \e(rn    Ta \(rn        Ta overline
284.It \e(bb    Ta \(bb        Ta broken bar
285.It \e(sl    Ta \(sl        Ta forward slash
286.It \e(rs    Ta \(rs        Ta backward slash
287.El
288.Pp
289Text markers:
290.Bl -column "Input" "Rendered" "Description" -offset indent -compact
291.It Em Input Ta Em Rendered Ta Em Description
292.It \e(ci    Ta \(ci        Ta circle
293.It \e(bu    Ta \(bu        Ta bullet
294.It \e(dd    Ta \(dd        Ta double dagger
295.It \e(dg    Ta \(dg        Ta dagger
296.It \e(lz    Ta \(lz        Ta lozenge
297.It \e(sq    Ta \(sq        Ta white square
298.It \e(ps    Ta \(ps        Ta paragraph
299.It \e(sc    Ta \(sc        Ta section
300.It \e(lh    Ta \(lh        Ta left hand
301.It \e(rh    Ta \(rh        Ta right hand
302.It \e(at    Ta \(at        Ta at
303.It \e(sh    Ta \(sh        Ta hash (pound)
304.It \e(CR    Ta \(CR        Ta carriage return
305.It \e(OK    Ta \(OK        Ta check mark
306.It \e(CL    Ta \(CL        Ta club suit
307.It \e(SP    Ta \(SP        Ta spade suit
308.It \e(HE    Ta \(HE        Ta heart suit
309.It \e(DI    Ta \(DI        Ta diamond suit
310.El
311.Pp
312Legal symbols:
313.Bl -column "Input" "Rendered" "Description" -offset indent -compact
314.It Em Input Ta Em Rendered Ta Em Description
315.It \e(co    Ta \(co        Ta copyright
316.It \e(rg    Ta \(rg        Ta registered
317.It \e(tm    Ta \(tm        Ta trademarked
318.El
319.Pp
320Punctuation:
321.Bl -column "Input" "Rendered" "Description" -offset indent -compact
322.It Em Input Ta Em Rendered Ta Em Description
323.It \e(em    Ta \(em        Ta em-dash
324.It \e(en    Ta \(en        Ta en-dash
325.It \e(hy    Ta \(hy        Ta hyphen
326.It \ee      Ta \e          Ta back-slash
327.It \e.      Ta \.          Ta period
328.It \e(r!    Ta \(r!        Ta upside-down exclamation
329.It \e(r?    Ta \(r?        Ta upside-down question
330.El
331.Pp
332Quotes:
333.Bl -column "Input" "Rendered" "Description" -offset indent -compact
334.It Em Input Ta Em Rendered Ta Em Description
335.It \e(Bq    Ta \(Bq        Ta right low double-quote
336.It \e(bq    Ta \(bq        Ta right low single-quote
337.It \e(lq    Ta \(lq        Ta left double-quote
338.It \e(rq    Ta \(rq        Ta right double-quote
339.It \e(oq    Ta \(oq        Ta left single-quote
340.It \e(cq    Ta \(cq        Ta right single-quote
341.It \e(aq    Ta \(aq        Ta apostrophe quote (ASCII character)
342.It \e(dq    Ta \(dq        Ta double quote (ASCII character)
343.It \e(Fo    Ta \(Fo        Ta left guillemet
344.It \e(Fc    Ta \(Fc        Ta right guillemet
345.It \e(fo    Ta \(fo        Ta left single guillemet
346.It \e(fc    Ta \(fc        Ta right single guillemet
347.El
348.Pp
349Brackets:
350.Bl -column "xxbracketrightbtx" Rendered Description -offset indent -compact
351.It Em Input Ta Em Rendered Ta Em Description
352.It \e(lB    Ta \(lB        Ta left bracket
353.It \e(rB    Ta \(rB        Ta right bracket
354.It \e(lC    Ta \(lC        Ta left brace
355.It \e(rC    Ta \(rC        Ta right brace
356.It \e(la    Ta \(la        Ta left angle
357.It \e(ra    Ta \(ra        Ta right angle
358.It \e(bv    Ta \(bv        Ta brace extension (special font)
359.It \e[braceex] Ta \[braceex] Ta brace extension
360.It \e[bracketlefttp] Ta \[bracketlefttp] Ta top-left hooked bracket
361.It \e[bracketleftbt] Ta \[bracketleftbt] Ta bottom-left hooked bracket
362.It \e[bracketleftex] Ta \[bracketleftex] Ta left hooked bracket extension
363.It \e[bracketrighttp] Ta \[bracketrighttp] Ta top-right hooked bracket
364.It \e[bracketrightbt] Ta \[bracketrightbt] Ta bottom-right hooked bracket
365.It \e[bracketrightex] Ta \[bracketrightex] Ta right hooked bracket extension
366.It \e(lt    Ta \(lt        Ta top-left hooked brace
367.It \e[bracelefttp] Ta \[bracelefttp] Ta top-left hooked brace
368.It \e(lk    Ta \(lk        Ta mid-left hooked brace
369.It \e[braceleftmid] Ta \[braceleftmid] Ta mid-left hooked brace
370.It \e(lb    Ta \(lb        Ta bottom-left hooked brace
371.It \e[braceleftbt] Ta \[braceleftbt] Ta bottom-left hooked brace
372.It \e[braceleftex] Ta \[braceleftex] Ta left hooked brace extension
373.It \e(rt    Ta \(rt        Ta top-left hooked brace
374.It \e[bracerighttp] Ta \[bracerighttp] Ta top-right hooked brace
375.It \e(rk    Ta \(rk        Ta mid-right hooked brace
376.It \e[bracerightmid] Ta \[bracerightmid] Ta mid-right hooked brace
377.It \e(rb    Ta \(rb        Ta bottom-right hooked brace
378.It \e[bracerightbt] Ta \[bracerightbt] Ta bottom-right hooked brace
379.It \e[bracerightex] Ta \[bracerightex] Ta right hooked brace extension
380.It \e[parenlefttp] Ta \[parenlefttp] Ta top-left hooked parenthesis
381.It \e[parenleftbt] Ta \[parenleftbt] Ta bottom-left hooked parenthesis
382.It \e[parenleftex] Ta \[parenleftex] Ta left hooked parenthesis extension
383.It \e[parenrighttp] Ta \[parenrighttp] Ta top-right hooked parenthesis
384.It \e[parenrightbt] Ta \[parenrightbt] Ta bottom-right hooked parenthesis
385.It \e[parenrightex] Ta \[parenrightex] Ta right hooked parenthesis extension
386.El
387.Pp
388Arrows:
389.Bl -column "Input" "Rendered" "Description" -offset indent -compact
390.It Em Input Ta Em Rendered Ta Em Description
391.It \e(<-    Ta \(<-        Ta left arrow
392.It \e(->    Ta \(->        Ta right arrow
393.It \e(<>    Ta \(<>        Ta left-right arrow
394.It \e(da    Ta \(da        Ta down arrow
395.It \e(ua    Ta \(ua        Ta up arrow
396.It \e(va    Ta \(va        Ta up-down arrow
397.It \e(lA    Ta \(lA        Ta left double-arrow
398.It \e(rA    Ta \(rA        Ta right double-arrow
399.It \e(hA    Ta \(hA        Ta left-right double-arrow
400.It \e(uA    Ta \(uA        Ta up double-arrow
401.It \e(dA    Ta \(dA        Ta down double-arrow
402.It \e(vA    Ta \(vA        Ta up-down double-arrow
403.It \e(an    Ta \(an        Ta horizontal arrow extension
404.El
405.Pp
406Logical:
407.Bl -column "Input" "Rendered" "Description" -offset indent -compact
408.It Em Input Ta Em Rendered Ta Em Description
409.It \e(AN    Ta \(AN        Ta logical and
410.It \e(OR    Ta \(OR        Ta logical or
411.It \e[tno]  Ta \[tno]      Ta logical not (text font)
412.It \e(no    Ta \(no        Ta logical not (special font)
413.It \e(te    Ta \(te        Ta existential quantifier
414.It \e(fa    Ta \(fa        Ta universal quantifier
415.It \e(st    Ta \(st        Ta such that
416.It \e(tf    Ta \(tf        Ta therefore
417.It \e(3d    Ta \(3d        Ta therefore
418.It \e(or    Ta \(or        Ta bitwise or
419.El
420.Pp
421Mathematical:
422.Bl -column "xxcoproductxx" "Rendered" "Description" -offset indent -compact
423.It Em Input Ta Em Rendered Ta Em Description
424.It \e-      Ta \-          Ta minus (text font)
425.It \e(mi    Ta \(mi        Ta minus (special font)
426.It +        Ta +           Ta plus (text font)
427.It \e(pl    Ta \(pl        Ta plus (special font)
428.It \e(-+    Ta \(-+        Ta minus-plus
429.It \e[t+-]  Ta \[t+-]      Ta plus-minus (text font)
430.It \e(+-    Ta \(+-        Ta plus-minus (special font)
431.It \e(pc    Ta \(pc        Ta center-dot
432.It \e[tmu]  Ta \[tmu]      Ta multiply (text font)
433.It \e(mu    Ta \(mu        Ta multiply (special font)
434.It \e(c*    Ta \(c*        Ta circle-multiply
435.It \e(c+    Ta \(c+        Ta circle-plus
436.It \e[tdi]  Ta \[tdi]      Ta divide (text font)
437.It \e(di    Ta \(di        Ta divide (special font)
438.It \e(f/    Ta \(f/        Ta fraction
439.It \e(**    Ta \(**        Ta asterisk
440.It \e(<=    Ta \(<=        Ta less-than-equal
441.It \e(>=    Ta \(>=        Ta greater-than-equal
442.It \e(<<    Ta \(<<        Ta much less
443.It \e(>>    Ta \(>>        Ta much greater
444.It \e(eq    Ta \(eq        Ta equal
445.It \e(!=    Ta \(!=        Ta not equal
446.It \e(==    Ta \(==        Ta equivalent
447.It \e(ne    Ta \(ne        Ta not equivalent
448.It \e(ap    Ta \(ap        Ta tilde operator
449.It \e(|=    Ta \(|=        Ta asymptotically equal
450.It \e(=\(ti Ta \(=~        Ta approximately equal
451.It \e(\(ti\(ti Ta \(~~        Ta almost equal
452.It \e(\(ti= Ta \(~=        Ta almost equal
453.It \e(pt    Ta \(pt        Ta proportionate
454.It \e(es    Ta \(es        Ta empty set
455.It \e(mo    Ta \(mo        Ta element
456.It \e(nm    Ta \(nm        Ta not element
457.It \e(sb    Ta \(sb        Ta proper subset
458.It \e(nb    Ta \(nb        Ta not subset
459.It \e(sp    Ta \(sp        Ta proper superset
460.It \e(nc    Ta \(nc        Ta not superset
461.It \e(ib    Ta \(ib        Ta reflexive subset
462.It \e(ip    Ta \(ip        Ta reflexive superset
463.It \e(ca    Ta \(ca        Ta intersection
464.It \e(cu    Ta \(cu        Ta union
465.It \e(/_    Ta \(/_        Ta angle
466.It \e(pp    Ta \(pp        Ta perpendicular
467.It \e(is    Ta \(is        Ta integral
468.It \e[integral] Ta \[integral] Ta integral
469.It \e[sum]    Ta \[sum]   Ta summation
470.It \e[product] Ta \[product] Ta product
471.It \e[coproduct] Ta \[coproduct] Ta coproduct
472.It \e(gr    Ta \(gr        Ta gradient
473.It \e(sr    Ta \(sr        Ta square root
474.It \e[sqrt] Ta \[sqrt]     Ta square root
475.It \e(lc    Ta \(lc        Ta left-ceiling
476.It \e(rc    Ta \(rc        Ta right-ceiling
477.It \e(lf    Ta \(lf        Ta left-floor
478.It \e(rf    Ta \(rf        Ta right-floor
479.It \e(if    Ta \(if        Ta infinity
480.It \e(Ah    Ta \(Ah        Ta aleph
481.It \e(Im    Ta \(Im        Ta imaginary
482.It \e(Re    Ta \(Re        Ta real
483.It \e(wp    Ta \(wp        Ta Weierstrass p
484.It \e(pd    Ta \(pd        Ta partial differential
485.It \e(-h    Ta \(-h        Ta Planck constant over 2\(*p
486.It \e[hbar] Ta \[hbar]     Ta Planck constant over 2\(*p
487.It \e(12    Ta \(12        Ta one-half
488.It \e(14    Ta \(14        Ta one-fourth
489.It \e(34    Ta \(34        Ta three-fourths
490.It \e(18    Ta \(18        Ta one-eighth
491.It \e(38    Ta \(38        Ta three-eighths
492.It \e(58    Ta \(58        Ta five-eighths
493.It \e(78    Ta \(78        Ta seven-eighths
494.It \e(S1    Ta \(S1        Ta superscript 1
495.It \e(S2    Ta \(S2        Ta superscript 2
496.It \e(S3    Ta \(S3        Ta superscript 3
497.El
498.Pp
499Ligatures:
500.Bl -column "Input" "Rendered" "Description" -offset indent -compact
501.It Em Input Ta Em Rendered Ta Em Description
502.It \e(ff    Ta \(ff        Ta ff ligature
503.It \e(fi    Ta \(fi        Ta fi ligature
504.It \e(fl    Ta \(fl        Ta fl ligature
505.It \e(Fi    Ta \(Fi        Ta ffi ligature
506.It \e(Fl    Ta \(Fl        Ta ffl ligature
507.It \e(AE    Ta \(AE        Ta AE
508.It \e(ae    Ta \(ae        Ta ae
509.It \e(OE    Ta \(OE        Ta OE
510.It \e(oe    Ta \(oe        Ta oe
511.It \e(ss    Ta \(ss        Ta German eszett
512.It \e(IJ    Ta \(IJ        Ta IJ ligature
513.It \e(ij    Ta \(ij        Ta ij ligature
514.El
515.Pp
516Accents:
517.Bl -column "Input" "Rendered" "Description" -offset indent -compact
518.It Em Input Ta Em Rendered Ta Em Description
519.It \e(a"    Ta \(a"        Ta Hungarian umlaut
520.It \e(a-    Ta \(a-        Ta macron
521.It \e(a.    Ta \(a.        Ta dotted
522.It \e(a^    Ta \(a^        Ta circumflex
523.It \e(aa    Ta \(aa        Ta acute
524.It \e\(aq   Ta \'          Ta acute
525.It \e(ga    Ta \(ga        Ta grave
526.It \e\(ga   Ta \`          Ta grave
527.It \e(ab    Ta \(ab        Ta breve
528.It \e(ac    Ta \(ac        Ta cedilla
529.It \e(ad    Ta \(ad        Ta dieresis
530.It \e(ah    Ta \(ah        Ta caron
531.It \e(ao    Ta \(ao        Ta ring
532.It \e(a\(ti Ta \(a~        Ta tilde
533.It \e(ho    Ta \(ho        Ta ogonek
534.It \e(ha    Ta \(ha        Ta hat (ASCII character)
535.It \e(ti    Ta \(ti        Ta tilde (ASCII character)
536.El
537.Pp
538Accented letters:
539.Bl -column "Input" "Rendered" "Description" -offset indent -compact
540.It Em Input Ta Em Rendered Ta Em Description
541.It \e(\(aqA Ta \('A        Ta acute A
542.It \e(\(aqE Ta \('E        Ta acute E
543.It \e(\(aqI Ta \('I        Ta acute I
544.It \e(\(aqO Ta \('O        Ta acute O
545.It \e(\(aqU Ta \('U        Ta acute U
546.It \e(\(aqa Ta \('a        Ta acute a
547.It \e(\(aqe Ta \('e        Ta acute e
548.It \e(\(aqi Ta \('i        Ta acute i
549.It \e(\(aqo Ta \('o        Ta acute o
550.It \e(\(aqu Ta \('u        Ta acute u
551.It \e(\(gaA Ta \(`A        Ta grave A
552.It \e(\(gaE Ta \(`E        Ta grave E
553.It \e(\(gaI Ta \(`I        Ta grave I
554.It \e(\(gaO Ta \(`O        Ta grave O
555.It \e(\(gaU Ta \(`U        Ta grave U
556.It \e(\(gaa Ta \(`a        Ta grave a
557.It \e(\(gae Ta \(`e        Ta grave e
558.It \e(\(gai Ta \(`i        Ta grave i
559.It \e(\(gao Ta \(`i        Ta grave o
560.It \e(\(gau Ta \(`u        Ta grave u
561.It \e(\(tiA Ta \(~A        Ta tilde A
562.It \e(\(tiN Ta \(~N        Ta tilde N
563.It \e(\(tiO Ta \(~O        Ta tilde O
564.It \e(\(tia Ta \(~a        Ta tilde a
565.It \e(\(tin Ta \(~n        Ta tilde n
566.It \e(\(tio Ta \(~o        Ta tilde o
567.It \e(:A    Ta \(:A        Ta dieresis A
568.It \e(:E    Ta \(:E        Ta dieresis E
569.It \e(:I    Ta \(:I        Ta dieresis I
570.It \e(:O    Ta \(:O        Ta dieresis O
571.It \e(:U    Ta \(:U        Ta dieresis U
572.It \e(:a    Ta \(:a        Ta dieresis a
573.It \e(:e    Ta \(:e        Ta dieresis e
574.It \e(:i    Ta \(:i        Ta dieresis i
575.It \e(:o    Ta \(:o        Ta dieresis o
576.It \e(:u    Ta \(:u        Ta dieresis u
577.It \e(:y    Ta \(:y        Ta dieresis y
578.It \e(^A    Ta \(^A        Ta circumflex A
579.It \e(^E    Ta \(^E        Ta circumflex E
580.It \e(^I    Ta \(^I        Ta circumflex I
581.It \e(^O    Ta \(^O        Ta circumflex O
582.It \e(^U    Ta \(^U        Ta circumflex U
583.It \e(^a    Ta \(^a        Ta circumflex a
584.It \e(^e    Ta \(^e        Ta circumflex e
585.It \e(^i    Ta \(^i        Ta circumflex i
586.It \e(^o    Ta \(^o        Ta circumflex o
587.It \e(^u    Ta \(^u        Ta circumflex u
588.It \e(,C    Ta \(,C        Ta cedilla C
589.It \e(,c    Ta \(,c        Ta cedilla c
590.It \e(/L    Ta \(/L        Ta stroke L
591.It \e(/l    Ta \(/l        Ta stroke l
592.It \e(/O    Ta \(/O        Ta stroke O
593.It \e(/o    Ta \(/o        Ta stroke o
594.It \e(oA    Ta \(oA        Ta ring A
595.It \e(oa    Ta \(oa        Ta ring a
596.El
597.Pp
598Special letters:
599.Bl -column "Input" "Rendered" "Description" -offset indent -compact
600.It Em Input Ta Em Rendered Ta Em Description
601.It \e(-D    Ta \(-D        Ta Eth
602.It \e(Sd    Ta \(Sd        Ta eth
603.It \e(TP    Ta \(TP        Ta Thorn
604.It \e(Tp    Ta \(Tp        Ta thorn
605.It \e(.i    Ta \(.i        Ta dotless i
606.It \e(.j    Ta \(.j        Ta dotless j
607.El
608.Pp
609Currency:
610.Bl -column "Input" "Rendered" "Description" -offset indent -compact
611.It Em Input Ta Em Rendered Ta Em Description
612.It \e(Do    Ta \(Do        Ta dollar
613.It \e(ct    Ta \(ct        Ta cent
614.It \e(Eu    Ta \(Eu        Ta Euro symbol
615.It \e(eu    Ta \(eu        Ta Euro symbol
616.It \e(Ye    Ta \(Ye        Ta yen
617.It \e(Po    Ta \(Po        Ta pound
618.It \e(Cs    Ta \(Cs        Ta Scandinavian
619.It \e(Fn    Ta \(Fn        Ta florin
620.El
621.Pp
622Units:
623.Bl -column "Input" "Rendered" "Description" -offset indent -compact
624.It Em Input Ta Em Rendered Ta Em Description
625.It \e(de    Ta \(de        Ta degree
626.It \e(%0    Ta \(%0        Ta per-thousand
627.It \e(fm    Ta \(fm        Ta minute
628.It \e(sd    Ta \(sd        Ta second
629.It \e(mc    Ta \(mc        Ta micro
630.It \e(Of    Ta \(Of        Ta Spanish female ordinal
631.It \e(Om    Ta \(Om        Ta Spanish masculine ordinal
632.El
633.Pp
634Greek letters:
635.Bl -column "Input" "Rendered" "Description" -offset indent -compact
636.It Em Input Ta Em Rendered Ta Em Description
637.It \e(*A    Ta \(*A        Ta Alpha
638.It \e(*B    Ta \(*B        Ta Beta
639.It \e(*G    Ta \(*G        Ta Gamma
640.It \e(*D    Ta \(*D        Ta Delta
641.It \e(*E    Ta \(*E        Ta Epsilon
642.It \e(*Z    Ta \(*Z        Ta Zeta
643.It \e(*Y    Ta \(*Y        Ta Eta
644.It \e(*H    Ta \(*H        Ta Theta
645.It \e(*I    Ta \(*I        Ta Iota
646.It \e(*K    Ta \(*K        Ta Kappa
647.It \e(*L    Ta \(*L        Ta Lambda
648.It \e(*M    Ta \(*M        Ta Mu
649.It \e(*N    Ta \(*N        Ta Nu
650.It \e(*C    Ta \(*C        Ta Xi
651.It \e(*O    Ta \(*O        Ta Omicron
652.It \e(*P    Ta \(*P        Ta Pi
653.It \e(*R    Ta \(*R        Ta Rho
654.It \e(*S    Ta \(*S        Ta Sigma
655.It \e(*T    Ta \(*T        Ta Tau
656.It \e(*U    Ta \(*U        Ta Upsilon
657.It \e(*F    Ta \(*F        Ta Phi
658.It \e(*X    Ta \(*X        Ta Chi
659.It \e(*Q    Ta \(*Q        Ta Psi
660.It \e(*W    Ta \(*W        Ta Omega
661.It \e(*a    Ta \(*a        Ta alpha
662.It \e(*b    Ta \(*b        Ta beta
663.It \e(*g    Ta \(*g        Ta gamma
664.It \e(*d    Ta \(*d        Ta delta
665.It \e(*e    Ta \(*e        Ta epsilon
666.It \e(*z    Ta \(*z        Ta zeta
667.It \e(*y    Ta \(*y        Ta eta
668.It \e(*h    Ta \(*h        Ta theta
669.It \e(*i    Ta \(*i        Ta iota
670.It \e(*k    Ta \(*k        Ta kappa
671.It \e(*l    Ta \(*l        Ta lambda
672.It \e(*m    Ta \(*m        Ta mu
673.It \e(*n    Ta \(*n        Ta nu
674.It \e(*c    Ta \(*c        Ta xi
675.It \e(*o    Ta \(*o        Ta omicron
676.It \e(*p    Ta \(*p        Ta pi
677.It \e(*r    Ta \(*r        Ta rho
678.It \e(*s    Ta \(*s        Ta sigma
679.It \e(*t    Ta \(*t        Ta tau
680.It \e(*u    Ta \(*u        Ta upsilon
681.It \e(*f    Ta \(*f        Ta phi
682.It \e(*x    Ta \(*x        Ta chi
683.It \e(*q    Ta \(*q        Ta psi
684.It \e(*w    Ta \(*w        Ta omega
685.It \e(+h    Ta \(+h        Ta theta variant
686.It \e(+f    Ta \(+f        Ta phi variant
687.It \e(+p    Ta \(+p        Ta pi variant
688.It \e(+e    Ta \(+e        Ta epsilon variant
689.It \e(ts    Ta \(ts        Ta sigma terminal
690.El
691.Sh PREDEFINED STRINGS
692Predefined strings are inherited from the macro packages of historical
693troff implementations.
694They are
695.Em not recommended
696for use, as they differ across implementations.
697Manuals using these predefined strings are almost certainly not
698portable.
699.Pp
700Their syntax is similar to special characters, using
701.Sq \e*X
702.Pq for a one-character escape ,
703.Sq \e*(XX
704.Pq two-character ,
705and
706.Sq \e*[N]
707.Pq N-character .
708For details, see the
709.Em Predefined Strings
710subsection of the
711.Xr roff 7
712manual.
713.Bl -column "Input" "Rendered" "Description" -offset indent
714.It Em Input Ta Em Rendered Ta Em Description
715.It \e*(Ba   Ta \*(Ba       Ta vertical bar
716.It \e*(Ne   Ta \*(Ne       Ta not equal
717.It \e*(Ge   Ta \*(Ge       Ta greater-than-equal
718.It \e*(Le   Ta \*(Le       Ta less-than-equal
719.It \e*(Gt   Ta \*(Gt       Ta greater-than
720.It \e*(Lt   Ta \*(Lt       Ta less-than
721.It \e*(Pm   Ta \*(Pm       Ta plus-minus
722.It \e*(If   Ta \*(If       Ta infinity
723.It \e*(Pi   Ta \*(Pi       Ta pi
724.It \e*(Na   Ta \*(Na       Ta NaN
725.It \e*(Am   Ta \*(Am       Ta ampersand
726.It \e*R     Ta \*R         Ta restricted mark
727.It \e*(Tm   Ta \*(Tm       Ta trade mark
728.It \e*q     Ta \*q         Ta double-quote
729.It \e*(Rq   Ta \*(Rq       Ta right-double-quote
730.It \e*(Lq   Ta \*(Lq       Ta left-double-quote
731.It \e*(lp   Ta \*(lp       Ta right-parenthesis
732.It \e*(rp   Ta \*(rp       Ta left-parenthesis
733.It \e*(lq   Ta \*(lq       Ta left double-quote
734.It \e*(rq   Ta \*(rq       Ta right double-quote
735.It \e*(ua   Ta \*(ua       Ta up arrow
736.It \e*(va   Ta \*(va       Ta up-down arrow
737.It \e*(<=   Ta \*(<=       Ta less-than-equal
738.It \e*(>=   Ta \*(>=       Ta greater-than-equal
739.It \e*(aa   Ta \*(aa       Ta acute
740.It \e*(ga   Ta \*(ga       Ta grave
741.It \e*(Px   Ta \*(Px       Ta POSIX standard name
742.It \e*(Ai   Ta \*(Ai       Ta ANSI standard name
743.El
744.Sh UNICODE CHARACTERS
745The escape sequences
746.Pp
747.Dl \e[uXXXX] and \eC\(aquXXXX\(aq
748.Pp
749are interpreted as Unicode codepoints.
750The codepoint must be in the range above U+0080 and less than U+10FFFF.
751For compatibility, the hexadecimal digits
752.Sq A
753to
754.Sq F
755must be given as uppercase characters,
756and points must be zero-padded to four characters; if
757greater than four characters, no zero padding is allowed.
758Unicode surrogates are not allowed.
759.Sh NUMBERED CHARACTERS
760For backward compatibility with existing manuals,
761.Xr mandoc 1
762also supports the
763.Pp
764.Dl \eN\(aq Ns Ar number Ns \(aq
765.Pp
766escape sequence, inserting the character
767.Ar number
768from the current character set into the output.
769Of course, this is inherently non-portable and is already marked
770as deprecated in the Heirloom roff manual.
771For example, do not use \eN\(aq34\(aq, use \e(dq, or even the plain
772.Sq \(dq
773character where possible.
774.Sh COMPATIBILITY
775This section documents compatibility between mandoc and other
776troff implementations, at this time limited to GNU troff
777.Pq Qq groff .
778.Pp
779.Bl -dash -compact
780.It
781The \eN\(aq\(aq escape sequence is limited to printable characters; in
782groff, it accepts arbitrary character numbers.
783.It
784In
785.Fl T Ns Cm ascii ,
786the
787\e(ss, \e(nm, \e(nb, \e(nc, \e(ib, \e(ip, \e(pp, \e[sum], \e[product],
788\e[coproduct], \e(gr, \e(-h, and \e(a. special characters render
789differently between mandoc and groff.
790.It
791In
792.Fl T Ns Cm html ,
793the \e(\(ti=, \e(nb, and \e(nc special characters render differently
794between mandoc and groff.
795.It
796The
797.Fl T Ns Cm ps
798and
799.Fl T Ns Cm pdf
800modes format like
801.Fl T Ns Cm ascii
802instead of rendering glyphs as in groff.
803.It
804The \e[radicalex], \e[sqrtex], and \e(ru special characters have been omitted
805from mandoc either because they are poorly documented or they have no
806known representation.
807.El
808.Sh SEE ALSO
809.Xr mandoc 1 ,
810.Xr man 7 ,
811.Xr mdoc 7 ,
812.Xr roff 7
813.Sh AUTHORS
814The
815.Nm
816manual page was written by
817.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
818.Sh CAVEATS
819The predefined string
820.Sq \e*(Ba
821mimics the behaviour of the
822.Sq \&|
823character in
824.Xr mdoc 7 ;
825thus, if you wish to render a vertical bar with no side effects, use
826the
827.Sq \e(ba
828escape.
829