|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
XSLT Stylesheet DocBook -> LaTeX
|
|
Packit Service |
76cb02 |
############################################################################ -->
|
|
Packit Service |
76cb02 |
<xsl:param name="glossary.tocdepth">5</xsl:param>
|
|
Packit Service |
76cb02 |
<xsl:param name="glossary.numbered">1</xsl:param>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
# glossary #
|
|
Packit Service |
76cb02 |
############ -->
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossary">
|
|
Packit Service |
76cb02 |
<xsl:text>% --------
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:text>% GLOSSARY
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:text>% --------
</xsl:text>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:variable name="level">
|
|
Packit Service |
76cb02 |
<xsl:call-template name="get.sect.level"/>
|
|
Packit Service |
76cb02 |
</xsl:variable>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:variable name="title.text">
|
|
Packit Service |
76cb02 |
<xsl:call-template name="gentext">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="key" select="'Glossary'"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
</xsl:variable>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:choose>
|
|
Packit Service |
76cb02 |
<xsl:when test="$glossary.numbered = '0'">
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:call-template name="section.unnumbered">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="tocdepth" select="number($glossary.tocdepth)"/>
|
|
Packit Service |
76cb02 |
<xsl:with-param name="level" select="$level"/>
|
|
Packit Service |
76cb02 |
<xsl:with-param name="title" select="$title.text"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
</xsl:when>
|
|
Packit Service |
76cb02 |
<xsl:when test="title">
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:call-template name="makeheading">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="level" select="$level"/>
|
|
Packit Service |
76cb02 |
<xsl:with-param name="allnum" select="'1'"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="." mode="section.body"/>
|
|
Packit Service |
76cb02 |
</xsl:when>
|
|
Packit Service |
76cb02 |
<xsl:otherwise>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:call-template name="maketitle">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="level" select="$level"/>
|
|
Packit Service |
76cb02 |
<xsl:with-param name="title" select="$title.text"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="." mode="section.body"/>
|
|
Packit Service |
76cb02 |
</xsl:otherwise>
|
|
Packit Service |
76cb02 |
</xsl:choose>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossary" mode="section.body">
|
|
Packit Service |
76cb02 |
<xsl:variable name="divs" select="glossdiv"/>
|
|
Packit Service |
76cb02 |
<xsl:variable name="entries" select="glossentry"/>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
or self::subtitle
|
|
Packit Service |
76cb02 |
or self::glossdiv
|
|
Packit Service |
76cb02 |
or self::glossentry)]"/>
|
|
Packit Service |
76cb02 |
<xsl:if test="$preamble">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="$preamble"/>
|
|
Packit Service |
76cb02 |
</xsl:if>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:if test="$entries">
|
|
Packit Service |
76cb02 |
<xsl:text>
\noindent
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:text>\begin{description}
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="$entries"/>
|
|
Packit Service |
76cb02 |
<xsl:text>
\end{description}
</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:if>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:if test="$divs">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="$divs"/>
|
|
Packit Service |
76cb02 |
</xsl:if>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossary/glossaryinfo"/>
|
|
Packit Service |
76cb02 |
<xsl:template match="glossary/title"/>
|
|
Packit Service |
76cb02 |
<xsl:template match="glossary/subtitle"/>
|
|
Packit Service |
76cb02 |
<xsl:template match="glossary/titleabbrev"/>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
# glossdiv #
|
|
Packit Service |
76cb02 |
############ -->
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossdiv">
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:variable name="l">
|
|
Packit Service |
76cb02 |
<xsl:call-template name="get.sect.level">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="n" select="parent::glossary"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
</xsl:variable>
|
|
Packit Service |
76cb02 |
<xsl:call-template name="map.sect.level">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="level" select="$l+1"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
<xsl:text>{</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:call-template name="normalize-scape">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="string" select="title"/>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
<xsl:text>}
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:call-template name="label.id"/>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="*[not(self::glossentry)]"/>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:text>
\noindent
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:text>\begin{description}
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="glossentry"/>
|
|
Packit Service |
76cb02 |
<xsl:text>
\end{description}
</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
# glosslist #
|
|
Packit Service |
76cb02 |
############# -->
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossdiv/title" />
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glosslist">
|
|
Packit Service |
76cb02 |
<xsl:text>
\noindent
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:text>\begin{description}
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates/>
|
|
Packit Service |
76cb02 |
<xsl:text>
\end{description}
</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glosslist/title" />
|
|
Packit Service |
76cb02 |
<xsl:template match="glosslist/blockinfo" />
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
# glossentry #
|
|
Packit Service |
76cb02 |
############## -->
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="*[not(self::glosssee or self::glossdef)]"/>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="glosssee|glossdef"/>
|
|
Packit Service |
76cb02 |
<xsl:text>
</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry/glossterm">
|
|
Packit Service |
76cb02 |
<xsl:text>\item[</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:if test="../@id or ../@xml:id">
|
|
Packit Service |
76cb02 |
<xsl:text>\hypertarget{</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:value-of select="(../@id|../@xml:id)[1]"/>
|
|
Packit Service |
76cb02 |
<xsl:text>}</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:if>
|
|
Packit Service |
76cb02 |
<xsl:text>{</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:variable name="term">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates/>
|
|
Packit Service |
76cb02 |
</xsl:variable>
|
|
Packit Service |
76cb02 |
<xsl:value-of select="normalize-space($term)"/>
|
|
Packit Service |
76cb02 |
<xsl:text>}]~ </xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry/acronym">
|
|
Packit Service |
76cb02 |
<xsl:text> (\texttt{</xsl:text><xsl:apply-templates/><xsl:text>}) </xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry/abbrev">
|
|
Packit Service |
76cb02 |
<xsl:text> [ </xsl:text><xsl:apply-templates/><xsl:text> ] </xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry/revhistory"/>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry/glossdef">
|
|
Packit Service |
76cb02 |
<xsl:text>
</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="*[not(self::glossseealso)]"/>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="glossseealso"/>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossseealso|glosssee">
|
|
Packit Service |
76cb02 |
<xsl:variable name="oterm" select="@otherterm"/>
|
|
Packit Service |
76cb02 |
<xsl:variable name="targets" select="//node()[@id=$oterm or @xml:id=$oterm]"/>
|
|
Packit Service |
76cb02 |
<xsl:variable name="target" select="$targets[1]"/>
|
|
Packit Service |
76cb02 |
<xsl:variable name="text">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates/>
|
|
Packit Service |
76cb02 |
</xsl:variable>
|
|
Packit Service |
76cb02 |
<xsl:text> </xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:if test="position()=1">
|
|
Packit Service |
76cb02 |
<xsl:if test="self::glosssee">
|
|
Packit Service |
76cb02 |
<xsl:text>
</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:if>
|
|
Packit Service |
76cb02 |
<xsl:call-template name="gentext.element.name"/>
|
|
Packit Service |
76cb02 |
<xsl:call-template name="gentext.space"/>
|
|
Packit Service |
76cb02 |
</xsl:if>
|
|
Packit Service |
76cb02 |
<xsl:text>"</xsl:text>
|
|
Packit Service |
76cb02 |
<xsl:choose>
|
|
Packit Service |
76cb02 |
<xsl:when test="@otherterm">
|
|
Packit Service |
76cb02 |
<xsl:call-template name="hyperlink.markup">
|
|
Packit Service |
76cb02 |
<xsl:with-param name="linkend" select="@otherterm"/>
|
|
Packit Service |
76cb02 |
<xsl:with-param name="text">
|
|
Packit Service |
76cb02 |
<xsl:choose>
|
|
Packit Service |
76cb02 |
<xsl:when test="$text!=''">
|
|
Packit Service |
76cb02 |
<xsl:value-of select="$text"/>
|
|
Packit Service |
76cb02 |
</xsl:when>
|
|
Packit Service |
76cb02 |
<xsl:otherwise>
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="$target" mode="xref"/>
|
|
Packit Service |
76cb02 |
</xsl:otherwise>
|
|
Packit Service |
76cb02 |
</xsl:choose>
|
|
Packit Service |
76cb02 |
</xsl:with-param>
|
|
Packit Service |
76cb02 |
</xsl:call-template>
|
|
Packit Service |
76cb02 |
</xsl:when>
|
|
Packit Service |
76cb02 |
<xsl:otherwise>
|
|
Packit Service |
76cb02 |
<xsl:value-of select="$text"/>
|
|
Packit Service |
76cb02 |
</xsl:otherwise>
|
|
Packit Service |
76cb02 |
</xsl:choose>
|
|
Packit Service |
76cb02 |
<xsl:text>"</xsl:text>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:choose>
|
|
Packit Service |
76cb02 |
<xsl:when test="position()=last()">
|
|
Packit Service |
76cb02 |
<xsl:text>.</xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:when>
|
|
Packit Service |
76cb02 |
<xsl:otherwise>
|
|
Packit Service |
76cb02 |
<xsl:text>, </xsl:text>
|
|
Packit Service |
76cb02 |
</xsl:otherwise>
|
|
Packit Service |
76cb02 |
</xsl:choose>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossentry" mode="xref">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates select="./glossterm" mode="xref"/>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
<xsl:template match="glossterm" mode="xref">
|
|
Packit Service |
76cb02 |
<xsl:apply-templates/>
|
|
Packit Service |
76cb02 |
</xsl:template>
|
|
Packit Service |
76cb02 |
|
|
Packit Service |
76cb02 |
</xsl:stylesheet>
|
|
Packit Service |
76cb02 |
|