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