|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
XSLT Stylesheet DocBook -> LaTeX
|
|
Packit |
0f19cf |
############################################################################ -->
|
|
Packit |
0f19cf |
<xsl:param name="index.tocdepth">5</xsl:param>
|
|
Packit |
0f19cf |
<xsl:param name="index.numbered">1</xsl:param>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="index.print">
|
|
Packit |
0f19cf |
<xsl:param name="node" select="."/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="$node/@sortas">
|
|
Packit |
0f19cf |
<xsl:call-template name="scape.index">
|
|
Packit |
0f19cf |
<xsl:with-param name="string" select="$node/@sortas"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:text>@{</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="scape.index">
|
|
Packit |
0f19cf |
<xsl:with-param name="string" select="$node"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:if test="$node/@sortas">
|
|
Packit |
0f19cf |
<xsl:text>}</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexterm" name="indexterm">
|
|
Packit |
0f19cf |
<xsl:param name="close" select="''"/>
|
|
Packit |
0f19cf |
<xsl:param name="seealso" select="0"/>
|
|
Packit |
0f19cf |
<xsl:text>\index{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="index.print">
|
|
Packit |
0f19cf |
<xsl:with-param name="node" select="./primary"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:if test="./secondary">
|
|
Packit |
0f19cf |
<xsl:text>!</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="index.print">
|
|
Packit |
0f19cf |
<xsl:with-param name="node" select="./secondary"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:if test="./tertiary">
|
|
Packit |
0f19cf |
<xsl:text>!</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="index.print">
|
|
Packit |
0f19cf |
<xsl:with-param name="node" select="./tertiary"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:if test="./see">
|
|
Packit |
0f19cf |
<xsl:text>|see{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="normalize-scape">
|
|
Packit |
0f19cf |
<xsl:with-param name="string" select="./see"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:text>}</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:if test="$seealso = 1 and ./seealso">
|
|
Packit |
0f19cf |
<xsl:text>|seealso{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="normalize-scape">
|
|
Packit |
0f19cf |
<xsl:with-param name="string" select="./seealso"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:text>}</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="$close!=''">
|
|
Packit |
0f19cf |
<xsl:value-of select="$close"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="@class='startofrange'">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:variable name="id" select="(@id|@xml:id)[1]"/>
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="//indexterm[@class='endofrange' and @startref=$id]">
|
|
Packit |
0f19cf |
<xsl:text>|(</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:message>
|
|
Packit |
0f19cf |
<xsl:text>Error: cannot find indexterm[@startref='</xsl:text>
|
|
Packit |
0f19cf |
<xsl:value-of select="$id"/>
|
|
Packit |
0f19cf |
<xsl:text>'] end of range</xsl:text>
|
|
Packit |
0f19cf |
</xsl:message>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
<xsl:text>}</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
self::simpara]">
|
|
Packit |
0f19cf |
<xsl:text>
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
range -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexterm[@class='endofrange']">
|
|
Packit |
0f19cf |
<xsl:variable name="id" select="@startref"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
(@id=$id or @xml:id=$id)]">
|
|
Packit |
0f19cf |
<xsl:with-param name="close" select="'|)'"/>
|
|
Packit |
0f19cf |
</xsl:apply-templates>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
'see also' -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexterm[seealso]">
|
|
Packit |
0f19cf |
<xsl:call-template name="indexterm"/>
|
|
Packit |
0f19cf |
<xsl:call-template name="indexterm">
|
|
Packit |
0f19cf |
<xsl:with-param name="seealso" select="1"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="primary|secondary|tertiary|see|seealso"/>
|
|
Packit |
0f19cf |
<xsl:template match="indexentry"/>
|
|
Packit |
0f19cf |
<xsl:template match="primaryie|secondaryie|tertiaryie|seeie|seealsoie"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexterm" mode="latex.programlisting">
|
|
Packit |
0f19cf |
<xsl:param name="co-tagin" select="'<'"/>
|
|
Packit |
0f19cf |
<xsl:param name="rnode" select="/"/>
|
|
Packit |
0f19cf |
<xsl:param name="probe" select="0"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="verbatim.embed">
|
|
Packit |
0f19cf |
<xsl:with-param name="co-taging" select="$co-tagin"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="rnode" select="$rnode"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="probe" select="$probe"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexterm" mode="toc.skip"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="index|setindex">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="label.id"/>
|
|
Packit |
0f19cf |
<xsl:text>\printindex
</xsl:text>
|
|
Packit |
0f19cf |
-->
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="printindex">
|
|
Packit |
0f19cf |
<xsl:if test="number($index.numbered) = 0">
|
|
Packit |
0f19cf |
<xsl:text>\setcounter{secnumdepth}{-1}
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="set-tocdepth">
|
|
Packit |
0f19cf |
<xsl:with-param name="depth" select="number($index.tocdepth) - 1"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:text>\printindex
</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="number($index.numbered) = 0">
|
|
Packit |
0f19cf |
<xsl:call-template name="section.unnumbered.end">
|
|
Packit |
0f19cf |
<xsl:with-param name="tocdepth" select="number($index.tocdepth)"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="index/title"></xsl:template>
|
|
Packit |
0f19cf |
<xsl:template match="index/subtitle"></xsl:template>
|
|
Packit |
0f19cf |
<xsl:template match="index/titleabbrev"></xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexdiv">
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="indexdiv/title">
|
|
Packit |
0f19cf |
<xsl:call-template name="label.id">
|
|
Packit |
0f19cf |
<xsl:with-param name="object" select=".."/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="itermset">
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="index[@type='endnotes']">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="." mode="endnotes"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
</xsl:stylesheet>
|