1<!-- 2 - Copyright (C) 2005, 2007 Internet Systems Consortium, Inc. ("ISC") 3 - 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. 7 - 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. 15--> 16 17<!-- Id: pre-latex.xsl,v 1.6 2007/06/19 23:47:13 tbox Exp --> 18 19<!-- 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. 22 --> 23 24<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> 25 26 <xsl:variable name="mdash" select="'—'"/> 27 28 <xsl:template name="fix-mdash" match="text()[contains(., '—')]"> 29 <xsl:param name="s" select="."/> 30 <xsl:choose> 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)"/> 36 </xsl:call-template> 37 </xsl:when> 38 <xsl:otherwise> 39 <xsl:value-of select="$s"/> 40 </xsl:otherwise> 41 </xsl:choose> 42 </xsl:template> 43 44 <xsl:template match="@*|node()"> 45 <xsl:copy> 46 <xsl:copy-of select="@*"/> 47 <xsl:apply-templates/> 48 </xsl:copy> 49 </xsl:template> 50 51 <xsl:template match="/"> 52 <xsl:apply-templates/> 53 </xsl:template> 54 55</xsl:stylesheet> 56