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