[BACK]Return to mandoc_char.7 CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/mandoc_char.7 between version 1.25 and 1.49

version 1.25, 2009/10/07 14:37:13 version 1.49, 2011/08/30 13:14:01
Line 1 
Line 1 
 .\"     $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
Line 13 
Line 13 
 .\" 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
Line 54  and
Line 49  and
 .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
Line 70  and
Line 65  and
 .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 -compact -offset indent -column 10m 20m  .Bl -column "Input" "Description" -offset indent -compact
 .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
Line 91  Spacing:
Line 83  Spacing:
 .It \e&      Ta zero-width space  .It \e&      Ta zero-width space
 .It \e|      Ta zero-width space  .It \e|      Ta zero-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)
 .El  .El
 .  
 .Pp  .Pp
 Lines:  Lines:
 .Bl -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 105  Lines:
Line 97  Lines:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 125  Text markers:
Line 116  Text markers:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 166  Quotes:
Line 153  Quotes:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "xxbracketrightbpx" Rendered Description -offset indent -compact
 .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
Line 206  Brackets:
Line 192  Brackets:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 224  Arrows:
Line 209  Arrows:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 240  Logical:
Line 224  Logical:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "xxcoproductxx" "Rendered" "Description" -offset indent -compact
 .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
Line 305  Mathematical:
Line 288  Mathematical:
 .It \e(Re    Ta \(Re        Ta real  .It \e(Re    Ta \(Re        Ta real
 .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
   .It \e[12]   Ta \[12]       Ta one-half
   .It \e[14]   Ta \[14]       Ta one-fourth
   .It \e[34]   Ta \[34]       Ta three-fourths
 .El  .El
 .  
 .Pp  .Pp
 Ligatures:  Ligatures:
 .Bl -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 324  Ligatures:
Line 309  Ligatures:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 347  Accents:
Line 331  Accents:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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 408  Accented letters:
Line 391  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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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 420  Special letters:
Line 402  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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 434  Currency:
Line 415  Currency:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 445  Units:
Line 425  Units:
 .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 -compact -offset indent -column 10m 10m 10m  .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .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
Line 504  Greek letters:
Line 483  Greek letters:
 .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  Predefined strings are inherited from the macro packages of historical
 implementations:  troff implementations.
 .  They are
 .Pp  .Em not recommended
 .Bl -compact -offset indent -column 10m 10m 10m  for use, as they differ across implementations.
   Manuals using these predefined strings are almost certainly not
   portable.
   .Bl -column "Input" "Rendered" "Description" -offset indent
 .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 539  implementations:
Line 519  implementations:
 .It \e*(>=   Ta \*(>=       Ta greater-than-equal  .It \e*(>=   Ta \*(>=       Ta greater-than-equal
 .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
   .It \e*(Px   Ta \*(Px       Ta POSIX standard name
   .It \e*(Ai   Ta \*(Ai       Ta ANSI standard name
 .El  .El
 .  .Sh UNICODE CHARACTERS
 .  The escape sequence
 .Sh COMPATIBILITY  
 This section documents compatibility of  
 .Nm  
 with older or existing versions of  
 .Xr groff 1 .  
 .  
 .Pp  .Pp
 The following render differently in  .Dl \e[uXXXX]
 .Fl T Ns Ar ascii  
 output mode:  
 .Bd -ragged -offset indent  
 \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.  
 .Ed  
 .  
 .Pp  .Pp
 The following render differently in  is interpreted as a Unicode codepoint.
 .Fl T Ns Ar html  The codepoint must be in the range above U+0080 and less than U+10FFFF.
 output mode:  For compatibility, points must be zero-padded to four characters; if
 .Bd -ragged -offset indent  greater than four characters, no zero padding is allowed.
 \e(~=, \e(nb, \e(nc  Unicode surrogates are not allowed.
 .Ed  .\" .Pp
 .  .\" Unicode glyphs attenuate to the
   .\" .Sq \&?
   .\" character if invalid or not rendered by current output media.
   .Sh NUMBERED CHARACTERS
   For backward compatibility with existing manuals,
   .Xr mandoc 1
   also supports the
 .Pp  .Pp
 Finally, the following have been omitted by being poorly documented or  .Dl \eN\(aq Ns Ar number Ns \(aq
 having no known representation:  .Pp
 .Bd -ragged -offset indent  escape sequence, inserting the character
 \e[radicalex], \e[sqrtex], \e(ru  .Ar number
 .Ed  from the current character set into the output.
 .  Of course, this is inherently non-portable and is already marked
 .  as deprecated in the Heirloom roff manual.
   For example, do not use \eN'34', use \e(dq, or even the plain
   .Sq \(dq
   character where possible.
   .Sh COMPATIBILITY
   This section documents compatibility between mandoc and other other
   troff implementations, at this time limited to GNU troff
   .Pq Qq groff .
   .Pp
   .Bl -dash -compact
   .It
   The \eN\(aq\(aq escape sequence is limited to printable characters; in
   groff, it accepts arbitrary character numbers.
   .It
   In
   .Fl T Ns Cm ascii ,
   the
   \e(ss, \e(nm, \e(nb, \e(nc, \e(ib, \e(ip, \e(pp, \e[sum], \e[product],
   \e[coproduct], \e(gr, \e(\-h, and \e(a. special characters render
   differently between mandoc and groff.
   .It
   In
   .Fl T Ns Cm html
   and
   .Fl T Ns Cm xhtml ,
   the \e(~=, \e(nb, and \e(nc special characters render differently
   between mandoc and groff.
   .It
   The
   .Fl T Ns Cm ps
   and
   .Fl T Ns Cm pdf
   modes format like
   .Fl T Ns Cm ascii
   instead of rendering glyphs as in groff.
   .It
   The \e[radicalex], \e[sqrtex], and \e(ru special characters have been omitted
   from mandoc either because they are poorly documented or they have no
   known representation.
   .El
 .Sh SEE ALSO  .Sh SEE ALSO
 .Xr mandoc 1  .Xr mandoc 1
 .  
 .  
 .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 ,
   .Mt 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.

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.49

CVSweb