2 - Copyright (C) 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
4 - Permission to use, copy, modify, and/or distribute this software for any
5 - purpose with or without fee is hereby granted, provided that the above
6 - copyright notice and this permission notice appear in all copies.
8 - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
9 - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10 - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
11 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12 - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
13 - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14 - PERFORMANCE OF THIS SOFTWARE.
17 <!-- Id: pre-latex.xsl,v 1.6 2007/06/19 23:47:13 tbox Exp -->
20 - Whack — into something that won't choke LaTeX.
21 - There's probably a better way to do this, but this will work for now.
24 <xsl:stylesheet xmlns:
xsl=
"http://www.w3.org/1999/XSL/Transform" version=
"1.0">
26 <xsl:variable name=
"mdash" select=
"'—'"/>
28 <xsl:template name=
"fix-mdash" match=
"text()[contains(., '—')]">
29 <xsl:param name=
"s" select=
"."/>
31 <xsl:when test=
"contains($s, $mdash)">
32 <xsl:value-of select=
"substring-before($s, $mdash)"/>
33 <xsl:text>---
</xsl:text>
34 <xsl:call-template name=
"fix-mdash">
35 <xsl:with-param name=
"s" select=
"substring-after($s, $mdash)"/>
39 <xsl:value-of select=
"$s"/>
44 <xsl:template match=
"@*|node()">
46 <xsl:copy-of select=
"@*"/>
47 <xsl:apply-templates/>
51 <xsl:template match=
"/">
52 <xsl:apply-templates/>