Add hack for ignoring link/text() for LaTeX output.
authorJelmer Vernooij <jelmer@samba.org>
Tue, 14 Jun 2005 19:55:00 +0000 (19:55 +0000)
committerGerald W. Carter <jerry@samba.org>
Wed, 23 Apr 2008 14:00:30 +0000 (09:00 -0500)
docs/xslt/latex.xsl

index 0abd611312aa462c0ad3b399565876843ffa6812..17ae95e18e0a1cbe9cdf26f8c422d0953d9cec5f 100644 (file)
 </xsl:param>
 
 <!-- Show real name of the link rather then user specified description -->
-<xsl:template name="link">
-       <xsl:element name="link">
-               <xsl:copy-of select="@*"/>
-       </xsl:element>
+<xsl:template match="link">
+       <xsl:variable name="target" select="key('id',@linkend)[1]"/>
+       <xsl:variable name="refelem" select="local-name($target)"/>
+       <xsl:if test="$refelem=''">
+               <xsl:message><xsl:text>XRef to nonexistent id: </xsl:text><xsl:value-of select="@linkend"/></xsl:message>
+               <xsl:text>XrefId[?</xsl:text>
+               <xsl:apply-templates/>
+               <xsl:text>?]</xsl:text>
+       </xsl:if>
+
+       <xsl:call-template name="generate.hyperlink">
+               <xsl:with-param name="target" select="$target"/>
+               <xsl:with-param name="text">
+                       <xsl:call-template name="generate.xref.text">
+                               <xsl:with-param name="target" select="$target"/>
+                       </xsl:call-template>
+               </xsl:with-param>
+       </xsl:call-template>
 </xsl:template>
 
 <!-- LaTeX doesn't accept verbatim stuff in titles -->