version 1.29, 2009/11/16 09:52:47 |
version 1.39, 2010/05/12 08:29:23 |
|
|
.\" $Id$ |
.\" $Id$ |
.\" |
.\" |
.\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se> |
.\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@bsd.lv> |
.\" |
.\" |
.\" Permission to use, copy, modify, and distribute this software for any |
.\" Permission to use, copy, modify, and distribute this software for any |
.\" purpose with or without fee is hereby granted, provided that the above |
.\" purpose with or without fee is hereby granted, provided that the above |
|
|
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
.\" |
.\" |
.Dd $Mdocdate$ |
.Dd $Mdocdate$ |
.Dt MANDOC_CHAR 7 |
.Dt MANDOC_CHAR 7 |
.Os |
.Os |
. |
|
. |
|
.Sh NAME |
.Sh NAME |
.Nm mandoc_char |
.Nm mandoc_char |
.Nd mandoc special characters |
.Nd mandoc special characters |
. |
|
. |
|
.Sh DESCRIPTION |
.Sh DESCRIPTION |
This documents the special characters and predefined strings accepted by |
This page documents the special characters and predefined strings accepted by |
.Xr mandoc 1 |
.Xr mandoc 1 |
to format |
to format |
.Xr mdoc 7 |
.Xr mdoc 7 |
and |
and |
.Xr man 7 |
.Xr man 7 |
documents. |
documents. |
. |
|
.Pp |
.Pp |
Both |
Both |
.Xr mdoc 7 |
.Xr mdoc 7 |
and |
and |
.Xr man 7 |
.Xr man 7 |
encode special characters with |
encode special characters with |
.Sq \eX |
.Sq \eX |
.Pq for a one-character escape , |
.Pq for a one-character escape , |
.Sq \e(XX |
.Sq \e(XX |
|
|
.Sq \eX |
.Sq \eX |
as |
as |
.Sq \e[X] . |
.Sq \e[X] . |
Predefined strings are functionally similar to special characters, using |
Predefined strings are functionally similar to special characters, using |
.Sq \e*X |
.Sq \e*X |
.Pq for a one-character escape , |
.Pq for a one-character escape , |
.Sq \e*(XX |
.Sq \e*(XX |
|
|
.Sq \e*X |
.Sq \e*X |
as |
as |
.Sq \e*[X] . |
.Sq \e*[X] . |
. |
|
.Pp |
.Pp |
Note that each output mode will have a different rendering of the |
Note that each output mode will have a different rendering of the |
characters. It's guaranteed that each input symbol will correspond to a |
characters. |
|
It's guaranteed that each input symbol will correspond to a |
(more or less) meaningful output rendering, regardless the mode. |
(more or less) meaningful output rendering, regardless the mode. |
. |
|
. |
|
.Sh SPECIAL CHARACTERS |
.Sh SPECIAL CHARACTERS |
These are the preferred input symbols for producing special characters. |
These are the preferred input symbols for producing special characters. |
. |
|
.Pp |
.Pp |
Spacing: |
Spacing: |
.Bl -column -compact -offset indent 10m 20m |
.Bl -column -compact -offset indent "Input" "Description" |
.It Em Input Ta Em Description |
.It Em Input Ta Em Description |
.It \e~ Ta non-breaking, non-collapsing space |
.It \e~ Ta non-breaking, non-collapsing space |
.It \e Ta breaking, non-collapsing n-width space |
.It \e Ta breaking, non-collapsing n-width space |
|
|
.It \e0 Ta breaking, non-collapsing digit-width space |
.It \e0 Ta breaking, non-collapsing digit-width space |
.It \ec Ta removes any trailing space (if applicable) |
.It \ec Ta removes any trailing space (if applicable) |
.El |
.El |
. |
|
.Pp |
.Pp |
Lines: |
Lines: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(ba Ta \(ba Ta bar |
.It \e(ba Ta \(ba Ta bar |
.It \e(br Ta \(br Ta box rule |
.It \e(br Ta \(br Ta box rule |
|
|
.It \e(sl Ta \(sl Ta forward slash |
.It \e(sl Ta \(sl Ta forward slash |
.It \e(rs Ta \(rs Ta backward slash |
.It \e(rs Ta \(rs Ta backward slash |
.El |
.El |
. |
|
.Pp |
.Pp |
Text markers: |
Text markers: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(ci Ta \(ci Ta circle |
.It \e(ci Ta \(ci Ta circle |
.It \e(bu Ta \(bu Ta bullet |
.It \e(bu Ta \(bu Ta bullet |
|
|
.It \e(CR Ta \(CR Ta carriage return |
.It \e(CR Ta \(CR Ta carriage return |
.It \e(OK Ta \(OK Ta check mark |
.It \e(OK Ta \(OK Ta check mark |
.El |
.El |
. |
|
.Pp |
.Pp |
Legal symbols: |
Legal symbols: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(co Ta \(co Ta copyright |
.It \e(co Ta \(co Ta copyright |
.It \e(rg Ta \(rg Ta registered |
.It \e(rg Ta \(rg Ta registered |
.It \e(tm Ta \(tm Ta trademarked |
.It \e(tm Ta \(tm Ta trademarked |
.El |
.El |
. |
|
.Pp |
.Pp |
Punctuation: |
Punctuation: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(em Ta \(em Ta em-dash |
.It \e(em Ta \(em Ta em-dash |
.It \e(en Ta \(en Ta en-dash |
.It \e(en Ta \(en Ta en-dash |
.It \e(hy Ta \(hy Ta hyphen |
.It \e(hy Ta \(hy Ta hyphen |
.It \e\e Ta \\ Ta back-slash |
|
.It \ee Ta \e Ta back-slash |
.It \ee Ta \e Ta back-slash |
.It \e. Ta \. Ta period |
.It \e. Ta \. Ta period |
.It \e(r! Ta \(r! Ta upside-down exclamation |
.It \e(r! Ta \(r! Ta upside-down exclamation |
.It \e(r? Ta \(r? Ta upside-down question |
.It \e(r? Ta \(r? Ta upside-down question |
.El |
.El |
. |
|
.Pp |
.Pp |
Quotes: |
Quotes: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(Bq Ta \(Bq Ta right low double-quote |
.It \e(Bq Ta \(Bq Ta right low double-quote |
.It \e(bq Ta \(bq Ta right low single-quote |
.It \e(bq Ta \(bq Ta right low single-quote |
|
|
.It \e(fo Ta \(fo Ta left single guillemet |
.It \e(fo Ta \(fo Ta left single guillemet |
.It \e(fc Ta \(fc Ta right single guillemet |
.It \e(fc Ta \(fc Ta right single guillemet |
.El |
.El |
. |
|
.Pp |
.Pp |
Brackets: |
Brackets: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "xxbracketrightbpx" Rendered Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(lB Ta \(lB Ta left bracket |
.It \e(lB Ta \(lB Ta left bracket |
.It \e(rB Ta \(rB Ta right bracket |
.It \e(rB Ta \(rB Ta right bracket |
|
|
.It \e[parenrightbp] Ta \[parenrightbp] Ta bottom-right hooked parenthesis |
.It \e[parenrightbp] Ta \[parenrightbp] Ta bottom-right hooked parenthesis |
.It \e[parenrightex] Ta \[parenrightex] Ta right hooked parenthesis extension |
.It \e[parenrightex] Ta \[parenrightex] Ta right hooked parenthesis extension |
.El |
.El |
. |
|
.Pp |
.Pp |
Arrows: |
Arrows: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(<- Ta \(<- Ta left arrow |
.It \e(<- Ta \(<- Ta left arrow |
.It \e(-> Ta \(-> Ta right arrow |
.It \e(-> Ta \(-> Ta right arrow |
|
|
.It \e(dA Ta \(dA Ta down double-arrow |
.It \e(dA Ta \(dA Ta down double-arrow |
.It \e(vA Ta \(vA Ta up-down double-arrow |
.It \e(vA Ta \(vA Ta up-down double-arrow |
.El |
.El |
. |
|
.Pp |
.Pp |
Logical: |
Logical: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(AN Ta \(AN Ta logical and |
.It \e(AN Ta \(AN Ta logical and |
.It \e(OR Ta \(OR Ta logical or |
.It \e(OR Ta \(OR Ta logical or |
|
|
.It \e(3d Ta \(3d Ta therefore |
.It \e(3d Ta \(3d Ta therefore |
.It \e(or Ta \(or Ta bitwise or |
.It \e(or Ta \(or Ta bitwise or |
.El |
.El |
. |
|
.Pp |
.Pp |
Mathematical: |
Mathematical: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "xxcoproductxx" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(pl Ta \(pl Ta plus |
.It \e(pl Ta \(pl Ta plus |
.It \e(mi Ta \(mi Ta minus |
.It \e(mi Ta \(mi Ta minus |
|
|
.It \e(pd Ta \(pd Ta partial differential |
.It \e(pd Ta \(pd Ta partial differential |
.It \e(-h Ta \(-h Ta Planck constant over 2\(*p |
.It \e(-h Ta \(-h Ta Planck constant over 2\(*p |
.El |
.El |
. |
|
.Pp |
.Pp |
Ligatures: |
Ligatures: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(ff Ta \(ff Ta ff ligature |
.It \e(ff Ta \(ff Ta ff ligature |
.It \e(fi Ta \(fi Ta fi ligature |
.It \e(fi Ta \(fi Ta fi ligature |
|
|
.It \e(IJ Ta \(IJ Ta IJ ligature |
.It \e(IJ Ta \(IJ Ta IJ ligature |
.It \e(ij Ta \(ij Ta ij ligature |
.It \e(ij Ta \(ij Ta ij ligature |
.El |
.El |
. |
|
.Pp |
.Pp |
Accents: |
Accents: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(a" Ta \(a" Ta Hungarian umlaut |
.It \e(a" Ta \(a" Ta Hungarian umlaut |
.It \e(a- Ta \(a- Ta macron |
.It \e(a- Ta \(a- Ta macron |
|
|
.It \e(ha Ta \(ha Ta hat (text) |
.It \e(ha Ta \(ha Ta hat (text) |
.It \e(ti Ta \(ti Ta tilde (text) |
.It \e(ti Ta \(ti Ta tilde (text) |
.El |
.El |
. |
|
.Pp |
.Pp |
Accented letters: |
Accented letters: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e('A Ta \('A Ta acute A |
.It \e('A Ta \('A Ta acute A |
.It \e('E Ta \('E Ta acute E |
.It \e('E Ta \('E Ta acute E |
Line 409 Accented letters: |
|
Line 388 Accented letters: |
|
.It \e(oA Ta \(oA Ta ring A |
.It \e(oA Ta \(oA Ta ring A |
.It \e(oa Ta \(oa Ta ring a |
.It \e(oa Ta \(oa Ta ring a |
.El |
.El |
. |
|
.Pp |
.Pp |
Special letters: |
Special letters: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(-D Ta \(-D Ta Eth |
.It \e(-D Ta \(-D Ta Eth |
.It \e(Sd Ta \(Sd Ta eth |
.It \e(Sd Ta \(Sd Ta eth |
Line 421 Special letters: |
|
Line 399 Special letters: |
|
.It \e(.i Ta \(.i Ta dotless i |
.It \e(.i Ta \(.i Ta dotless i |
.It \e(.j Ta \(.j Ta dotless j |
.It \e(.j Ta \(.j Ta dotless j |
.El |
.El |
. |
|
.Pp |
.Pp |
Currency: |
Currency: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(Do Ta \(Do Ta dollar |
.It \e(Do Ta \(Do Ta dollar |
.It \e(ct Ta \(ct Ta cent |
.It \e(ct Ta \(ct Ta cent |
|
|
.It \e(Cs Ta \(Cs Ta Scandinavian |
.It \e(Cs Ta \(Cs Ta Scandinavian |
.It \e(Fn Ta \(Fn Ta florin |
.It \e(Fn Ta \(Fn Ta florin |
.El |
.El |
. |
|
.Pp |
.Pp |
Units: |
Units: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(de Ta \(de Ta degree |
.It \e(de Ta \(de Ta degree |
.It \e(%0 Ta \(%0 Ta per-thousand |
.It \e(%0 Ta \(%0 Ta per-thousand |
|
|
.It \e(sd Ta \(sd Ta second |
.It \e(sd Ta \(sd Ta second |
.It \e(mc Ta \(mc Ta micro |
.It \e(mc Ta \(mc Ta micro |
.El |
.El |
. |
|
.Pp |
.Pp |
Greek letters: |
Greek letters: |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e(*A Ta \(*A Ta Alpha |
.It \e(*A Ta \(*A Ta Alpha |
.It \e(*B Ta \(*B Ta Beta |
.It \e(*B Ta \(*B Ta Beta |
|
|
.It \e(+e Ta \(+e Ta epsilon variant |
.It \e(+e Ta \(+e Ta epsilon variant |
.It \e(ts Ta \(ts Ta sigma terminal |
.It \e(ts Ta \(ts Ta sigma terminal |
.El |
.El |
. |
|
. |
|
.Sh PREDEFINED STRINGS |
.Sh PREDEFINED STRINGS |
These are not recommended for use, as they differ across |
These are not recommended for use, as they differ across |
implementations: |
implementations: |
. |
|
.Pp |
.Pp |
.Bl -column -compact -offset indent 10m 10m 10m |
.Bl -column -compact -offset indent "Input" "Rendered" "Description" |
.It Em Input Ta Em Rendered Ta Em Description |
.It Em Input Ta Em Rendered Ta Em Description |
.It \e*(Ba Ta \*(Ba Ta vertical bar |
.It \e*(Ba Ta \*(Ba Ta vertical bar |
.It \e*(Ne Ta \*(Ne Ta not equal |
.It \e*(Ne Ta \*(Ne Ta not equal |
Line 541 implementations: |
|
Line 513 implementations: |
|
.It \e*(aa Ta \*(aa Ta acute |
.It \e*(aa Ta \*(aa Ta acute |
.It \e*(ga Ta \*(ga Ta grave |
.It \e*(ga Ta \*(ga Ta grave |
.El |
.El |
. |
|
. |
|
.Sh COMPATIBILITY |
.Sh COMPATIBILITY |
This section documents compatibility of |
This section documents compatibility of |
.Nm |
.Nm |
with older or existing versions of |
with older or existing versions of |
.Xr groff 1 . |
.Xr groff 1 . |
. |
|
.Pp |
.Pp |
The following render differently in |
The following render differently in |
.Fl T Ns Ar ascii |
.Fl T Ns Ar ascii |
|
|
\e(ss, \e(nm, \e(nb, \e(nc, \e(ib, \e(ip, \e(pp, \e[sum], \e[product], |
\e(ss, \e(nm, \e(nb, \e(nc, \e(ib, \e(ip, \e(pp, \e[sum], \e[product], |
\e[coproduct], \e(gr, \e(-h, \e(a. |
\e[coproduct], \e(gr, \e(-h, \e(a. |
.Ed |
.Ed |
. |
|
.Pp |
.Pp |
The following render differently in |
The following render differently in |
.Fl T Ns Ar html |
.Fl T Ns Ar html |
|
|
.Bd -ragged -offset indent |
.Bd -ragged -offset indent |
\e(~=, \e(nb, \e(nc |
\e(~=, \e(nb, \e(nc |
.Ed |
.Ed |
. |
|
.Pp |
.Pp |
Finally, the following have been omitted by being poorly documented or |
Finally, the following have been omitted by being poorly documented or |
having no known representation: |
having no known representation: |
.Bd -ragged -offset indent |
.Bd -ragged -offset indent |
\e[radicalex], \e[sqrtex], \e(ru |
\e[radicalex], \e[sqrtex], \e(ru |
.Ed |
.Ed |
. |
|
. |
|
.Sh SEE ALSO |
.Sh SEE ALSO |
.Xr mandoc 1 |
.Xr mandoc 1 |
. |
|
. |
|
.Sh STANDARDS |
|
.Rs |
|
.%A The Unicode Consortium |
|
.%T The Unicode Standard: Worldwide Character Encoding, Version 5.2 |
|
.%D 1991 |
|
.Re |
|
.Rs |
|
.%A W3C |
|
.%T HTML 4.01 Specification |
|
.%D December, 1999 |
|
.Re |
|
. |
|
. |
|
.Sh AUTHORS |
.Sh AUTHORS |
The |
The |
.Nm |
.Nm |
utility was written by |
manual page was written by |
.An Kristaps Dzonsons Aq kristaps@kth.se . |
.An Kristaps Dzonsons Aq kristaps@bsd.lv . |
|
.Sh CAVEATS |
|
The |
|
.Sq \e*(Ba |
|
escape mimics the behaviour of the |
|
.Sq \&| |
|
character in |
|
.Xr mdoc 7 ; |
|
thus, if you wish to render a vertical bar with no side effects, use |
|
the |
|
.Sq \e(ba |
|
escape. |