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