]> git.cameronkatri.com Git - mandoc.git/commitdiff
Escape punctuation characters that have a different meaning in -Tpdf.
authorIngo Schwarze <schwarze@openbsd.org>
Mon, 30 Mar 2015 16:06:14 +0000 (16:06 +0000)
committerIngo Schwarze <schwarze@openbsd.org>
Mon, 30 Mar 2015 16:06:14 +0000 (16:06 +0000)
~, `, and ' get translated to non-ASCII characters by most troff
implementations when generating PostScript/PDF output.  When the
original ASCII character is meant, it needs to be manually escaped.

Patch from bentley@.

apropos.1
eqn.7
mandoc.1
mandoc_char.7

index 532e4dd7ff74b0a15ba110378f4bf5edf3a643b8..967a3243828559ab87156e050552f8dfca1efa51 100644 (file)
--- a/apropos.1
+++ b/apropos.1
@@ -1,4 +1,4 @@
-.\"    $Id: apropos.1,v 1.37 2015/02/16 16:23:54 schwarze Exp $
+.\"    $Id: apropos.1,v 1.38 2015/03/30 16:06:14 schwarze Exp $
 .\"
 .\" Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
 .\" Copyright (c) 2011, 2012, 2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -15,7 +15,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd $Mdocdate: February 16 2015 $
+.Dd $Mdocdate: March 30 2015 $
 .Dt APROPOS 1
 .Os
 .Sh NAME
@@ -210,7 +210,7 @@ This has syntax
 .Sm off
 .Oo
 .Op Ar key Op , Ar key ...
-.Pq Cm = | ~
+.Pq Cm = | \(ti
 .Oc
 .Ar val ,
 .Sm on
@@ -227,7 +227,7 @@ for a list of available keys.
 Operator
 .Cm =
 evaluates a substring, while
-.Cm ~
+.Cm \(ti
 evaluates a regular expression.
 .It Fl i Ar term
 If
@@ -398,7 +398,7 @@ as well:
 .Pp
 Search in names and descriptions using a regular expression:
 .Pp
-.Dl $ apropos '~set.?[ug]id'
+.Dl $ apropos \(aq\(tiset.?[ug]id\(aq
 .Pp
 Search for manuals in the library section mentioning both the
 .Qq optind
@@ -413,15 +413,15 @@ Do exactly the same as calling
 with the argument
 .Qq ssh :
 .Pp
-.Dl $ apropos \-\- \-i 'Nm~[[:<:]]ssh[[:>:]]'
+.Dl $ apropos \-\- \-i \(aqNm\(ti[[:<:]]ssh[[:>:]]\(aq
 .Pp
 The following two invocations are equivalent:
 .Pp
 .D1 Li $ apropos -S Ar arch Li -s Ar section expression
 .Bd -ragged -offset indent
 .Li $ apropos \e( Ar expression Li \e)
-.Li -a arch~^( Ns Ar arch Ns Li |any)$
-.Li -a sec~^ Ns Ar section Ns Li $
+.Li -a arch\(ti^( Ns Ar arch Ns Li |any)$
+.Li -a sec\(ti^ Ns Ar section Ns Li $
 .Ed
 .Sh SEE ALSO
 .Xr man 1 ,
diff --git a/eqn.7 b/eqn.7
index 73c488550a3f586fdd4cd105e96131deb762c3b3..e3aad72e3a91f17bba8dd760b8607ace1c2b432e 100644 (file)
--- a/eqn.7
+++ b/eqn.7
@@ -1,4 +1,4 @@
-.\"    $Id: eqn.7,v 1.34 2015/03/09 20:17:23 schwarze Exp $
+.\"    $Id: eqn.7,v 1.35 2015/03/30 16:06:14 schwarze Exp $
 .\"
 .\" Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
 .\" Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -15,7 +15,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd $Mdocdate: March 9 2015 $
+.Dd $Mdocdate: March 30 2015 $
 .Dt EQN 7
 .Os
 .Sh NAME
@@ -146,7 +146,7 @@ is used as the delimiter for the value
 .Ar val .
 This allows for arbitrary enclosure of terms (not just quotes), such as
 .Pp
-.D1 Cm define Ar foo 'bar baz'
+.D1 Cm define Ar foo \(aqbar baz\(aq
 .D1 Cm define Ar foo cbar bazc
 .Pp
 It is an error to have an empty
@@ -166,8 +166,8 @@ created.
 Definitions can create arbitrary strings, for example, the following is
 a legal construction.
 .Bd -literal -offset indent
-define foo 'define'
-foo bar 'baz'
+define foo \(aqdefine\(aq
+foo bar \(aqbaz\(aq
 .Ed
 .Pp
 Self-referencing definitions will raise an error.
index 9d5e664bf9a2c466a8b74e2c33ebbfd45e37ff0e..64069067d7ed05d64227004cf27cd1452e033acc 100644 (file)
--- a/mandoc.1
+++ b/mandoc.1
@@ -1,4 +1,4 @@
-.\"    $Id: mandoc.1,v 1.157 2015/03/27 21:40:04 schwarze Exp $
+.\"    $Id: mandoc.1,v 1.158 2015/03/30 16:06:14 schwarze Exp $
 .\"
 .\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
 .\" Copyright (c) 2012, 2014, 2015 Ingo Schwarze <schwarze@openbsd.org>
@@ -15,7 +15,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd $Mdocdate: March 27 2015 $
+.Dd $Mdocdate: March 30 2015 $
 .Dt MANDOC 1
 .Os
 .Sh NAME
@@ -566,7 +566,7 @@ as the style-sheet:
 .Pp
 To check over a large set of manuals:
 .Pp
-.Dl $ mandoc \-T lint `find /usr/src -name \e*\e.[1-9]`
+.Dl $ mandoc \-T lint \(gafind /usr/src -name \e*\e.[1-9]\(ga
 .Pp
 To produce a series of PostScript manuals for A4 paper:
 .Pp
index 7b81d97edc39d90b529d0f1b2d6bcfd0ea82a120..474fba205d63ff0ba51e16e60ae5dda28eb46916 100644 (file)
@@ -1,4 +1,4 @@
-.\"    $Id: mandoc_char.7,v 1.61 2015/03/27 01:01:28 schwarze Exp $
+.\"    $Id: mandoc_char.7,v 1.62 2015/03/30 16:06:14 schwarze Exp $
 .\"
 .\" Copyright (c) 2003 Jason McIntyre <jmc@openbsd.org>
 .\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
@@ -16,7 +16,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd $Mdocdate: March 27 2015 $
+.Dd $Mdocdate: March 30 2015 $
 .Dt MANDOC_CHAR 7
 .Os
 .Sh NAME
@@ -218,7 +218,7 @@ Spacing:
 .Bl -column "Input" "Description" -offset indent -compact
 .It Em Input Ta Em Description
 .It Sq \e\ \& Ta unpaddable non-breaking space
-.It \e~      Ta paddable non-breaking space
+.It \e\(ti   Ta paddable non-breaking space
 .It \e0      Ta unpaddable, breaking digit-width space
 .It \e|      Ta one-sixth \e(em narrow space, zero width in nroff mode
 .It \e^      Ta one-twelfth \e(em half-narrow space, zero width in nroff
@@ -393,9 +393,9 @@ Mathematical:
 .It \e(ne    Ta \(ne        Ta not equivalent
 .It \e(ap    Ta \(ap        Ta tilde operator
 .It \e(|=    Ta \(|=        Ta asymptotically equal
-.It \e(=~    Ta \(=~        Ta approximately equal
-.It \e(~~    Ta \(~~        Ta almost equal
-.It \e(~=    Ta \(~=        Ta almost equal
+.It \e(=\(ti Ta \(=~        Ta approximately equal
+.It \e(\(ti\(ti Ta \(~~        Ta almost equal
+.It \e(\(ti= Ta \(~=        Ta almost equal
 .It \e(pt    Ta \(pt        Ta proportionate
 .It \e(es    Ta \(es        Ta empty set
 .It \e(mo    Ta \(mo        Ta element
@@ -458,15 +458,15 @@ Accents:
 .It \e(a.    Ta \(a.        Ta dotted
 .It \e(a^    Ta \(a^        Ta circumflex
 .It \e(aa    Ta \(aa        Ta acute
-.It \e'      Ta \'          Ta acute
+.It \e\(aq   Ta \'          Ta acute
 .It \e(ga    Ta \(ga        Ta grave
-.It \e`      Ta \`          Ta grave
+.It \e\(ga   Ta \`          Ta grave
 .It \e(ab    Ta \(ab        Ta breve
 .It \e(ac    Ta \(ac        Ta cedilla
 .It \e(ad    Ta \(ad        Ta dieresis
 .It \e(ah    Ta \(ah        Ta caron
 .It \e(ao    Ta \(ao        Ta ring
-.It \e(a~    Ta \(a~        Ta tilde
+.It \e(a\(ti Ta \(a~        Ta tilde
 .It \e(ho    Ta \(ho        Ta ogonek
 .It \e(ha    Ta \(ha        Ta hat (text)
 .It \e(ti    Ta \(ti        Ta tilde (text)
@@ -475,32 +475,32 @@ Accents:
 Accented letters:
 .Bl -column "Input" "Rendered" "Description" -offset indent -compact
 .It Em Input Ta Em Rendered Ta Em Description
-.It \e('A    Ta \('A        Ta acute A
-.It \e('E    Ta \('E        Ta acute E
-.It \e('I    Ta \('I        Ta acute I
-.It \e('O    Ta \('O        Ta acute O
-.It \e('U    Ta \('U        Ta acute U
-.It \e('a    Ta \('a        Ta acute a
-.It \e('e    Ta \('e        Ta acute e
-.It \e('i    Ta \('i        Ta acute i
-.It \e('o    Ta \('o        Ta acute o
-.It \e('u    Ta \('u        Ta acute u
-.It \e(`A    Ta \(`A        Ta grave A
-.It \e(`E    Ta \(`E        Ta grave E
-.It \e(`I    Ta \(`I        Ta grave I
-.It \e(`O    Ta \(`O        Ta grave O
-.It \e(`U    Ta \(`U        Ta grave U
-.It \e(`a    Ta \(`a        Ta grave a
-.It \e(`e    Ta \(`e        Ta grave e
-.It \e(`i    Ta \(`i        Ta grave i
-.It \e(`o    Ta \(`i        Ta grave o
-.It \e(`u    Ta \(`u        Ta grave u
-.It \e(~A    Ta \(~A        Ta tilde A
-.It \e(~N    Ta \(~N        Ta tilde N
-.It \e(~O    Ta \(~O        Ta tilde O
-.It \e(~a    Ta \(~a        Ta tilde a
-.It \e(~n    Ta \(~n        Ta tilde n
-.It \e(~o    Ta \(~o        Ta tilde o
+.It \e(\(aqA Ta \('A        Ta acute A
+.It \e(\(aqE Ta \('E        Ta acute E
+.It \e(\(aqI Ta \('I        Ta acute I
+.It \e(\(aqO Ta \('O        Ta acute O
+.It \e(\(aqU Ta \('U        Ta acute U
+.It \e(\(aqa Ta \('a        Ta acute a
+.It \e(\(aqe Ta \('e        Ta acute e
+.It \e(\(aqi Ta \('i        Ta acute i
+.It \e(\(aqo Ta \('o        Ta acute o
+.It \e(\(aqu Ta \('u        Ta acute u
+.It \e(\(gaA Ta \(`A        Ta grave A
+.It \e(\(gaE Ta \(`E        Ta grave E
+.It \e(\(gaI Ta \(`I        Ta grave I
+.It \e(\(gaO Ta \(`O        Ta grave O
+.It \e(\(gaU Ta \(`U        Ta grave U
+.It \e(\(gaa Ta \(`a        Ta grave a
+.It \e(\(gae Ta \(`e        Ta grave e
+.It \e(\(gai Ta \(`i        Ta grave i
+.It \e(\(gao Ta \(`i        Ta grave o
+.It \e(\(gau Ta \(`u        Ta grave u
+.It \e(\(tiA Ta \(~A        Ta tilde A
+.It \e(\(tiN Ta \(~N        Ta tilde N
+.It \e(\(tiO Ta \(~O        Ta tilde O
+.It \e(\(tia Ta \(~a        Ta tilde a
+.It \e(\(tin Ta \(~n        Ta tilde n
+.It \e(\(tio Ta \(~o        Ta tilde o
 .It \e(:A    Ta \(:A        Ta dieresis A
 .It \e(:E    Ta \(:E        Ta dieresis E
 .It \e(:I    Ta \(:I        Ta dieresis I
@@ -679,7 +679,7 @@ manual.
 .Sh UNICODE CHARACTERS
 The escape sequences
 .Pp
-.Dl \e[uXXXX] and \eC'uXXXX'
+.Dl \e[uXXXX] and \eC\(aquXXXX\(aq
 .Pp
 are interpreted as Unicode codepoints.
 The codepoint must be in the range above U+0080 and less than U+10FFFF.
@@ -691,10 +691,6 @@ must be given as uppercase characters,
 and points must be zero-padded to four characters; if
 greater than four characters, no zero padding is allowed.
 Unicode surrogates are not allowed.
-.\" .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
@@ -707,7 +703,7 @@ escape sequence, inserting the character
 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
+For example, do not use \eN\(aq34\(aq, use \e(dq, or even the plain
 .Sq \(dq
 character where possible.
 .Sh COMPATIBILITY
@@ -731,7 +727,7 @@ In
 .Fl T Ns Cm html
 and
 .Fl T Ns Cm xhtml ,
-the \e(~=, \e(nb, and \e(nc special characters render differently
+the \e(\(ti=, \e(nb, and \e(nc special characters render differently
 between mandoc and groff.
 .It
 The