logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

mandoc_char.7 (29833B)


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