[PATCH] Quote ' as \(aq in manpages
- From
Thomas Rast <trast@student.ethz.ch>
- Date
- Oct 21, 2009, 08:24 UTC
- Message-ID
- <ab31eb03b25272341b91e1f1132dab9d8a49e5b6.1256113282.git.trast@student.ethz.ch>
- In-Reply-To
- <200910151402.56295.trast@student.ethz.ch>
The docbook/xmlto toolchain insists on quoting ' as \'. This does achieve the quoting goal, but modern 'man' implementations turn the apostrophe into a unicode "proper" apostrophe (given the right circumstances), breaking code examples in many of our manpages.
Quote them as \(aq instead, which is an "apostrophe quote" as per the groff_char manpage.
Signed-off-by: Thomas Rast <trast@student.ethz.ch> ---
I've had this around since my last rant, and it actually gives good results with both setups I can test on, which are:
- asciidoc 8.4.5, docbook-xsl 1.75.2, xmlto 0.0.18 - asciidoc 8.2.7, docbook-xsl 1.73.2, xmlto 0.0.20
Documentation/manpage-base.xsl | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/Documentation/manpage-base.xsl b/Documentation/manpage-base.xsl index a264fa6..bf74bb7 100644 --- a/Documentation/manpage-base.xsl +++ b/Documentation/manpage-base.xsl @@ -7,6 +7,15 @@ <xsl:param name="man.output.quietly" select="1"/> <xsl:param name="refentry.meta.get.quietly" select="1"/> +<xsl:template name="escape.apostrophe"> + <xsl:param name="content"/> + <xsl:call-template name="string.subst"> + <xsl:with-param name="string" select="$content"/> + <xsl:with-param name="target">'</xsl:with-param> + <xsl:with-param name="replacement">\(aq</xsl:with-param> + </xsl:call-template> +</xsl:template> + <!-- convert asciidoc callouts to man page format; git.docbook.backslash and git.docbook.dot params must be supplied by another XSL file or other means -->
-- 1.6.5.1.144.g40216