mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-01-18 21:17:38 +00:00
f7bd105db3
Removed contrib/, index-pdf.xml and goTidy. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@4428 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
160 lines
5.3 KiB
XML
160 lines
5.3 KiB
XML
<?xml version='1.0' encoding='ISO-8859-1'?>
|
|
|
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
|
xmlns="http://www.w3.org/1999/xhtml"
|
|
version="1.0">
|
|
|
|
<!-- General settings -->
|
|
<xsl:param name="generate.toc">
|
|
appendix nop
|
|
book toc,title,figure,table,example,equation
|
|
chapter nop
|
|
part toc
|
|
preface nop
|
|
qandadiv nop
|
|
qandaset nop
|
|
reference nop
|
|
sect1 nop
|
|
sect2 nop
|
|
sect3 nop
|
|
sect4 nop
|
|
sect5 nop
|
|
section nop
|
|
set nop
|
|
</xsl:param>
|
|
|
|
<xsl:param name="toc.section.depth">1</xsl:param>
|
|
|
|
<xsl:param name="toc.max.depth">3</xsl:param>
|
|
|
|
<!-- Making the TOC -->
|
|
<xsl:template name="make.toc">
|
|
<xsl:param name="toc-context" select="."/>
|
|
<xsl:param name="nodes" select="/NOT-AN-ELEMENT"/>
|
|
<xsl:if test="$nodes">
|
|
<div class="toc">
|
|
<h3>
|
|
<xsl:call-template name="gentext">
|
|
<xsl:with-param name="key">TableofContents</xsl:with-param>
|
|
</xsl:call-template>
|
|
</h3>
|
|
<ul>
|
|
<xsl:apply-templates select="$nodes" mode="toc">
|
|
<xsl:with-param name="toc-context" select="$toc-context"/>
|
|
</xsl:apply-templates>
|
|
</ul>
|
|
</div>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<!-- Making the subtocs -->
|
|
<xsl:template name="subtoc">
|
|
<xsl:param name="toc-context" select="."/>
|
|
<xsl:param name="nodes" select="NOT-AN-ELEMENT"/>
|
|
<xsl:variable name="subtoc">
|
|
<ul>
|
|
<xsl:apply-templates mode="toc" select="$nodes">
|
|
<xsl:with-param name="toc-context" select="$toc-context"/>
|
|
</xsl:apply-templates>
|
|
</ul>
|
|
</xsl:variable>
|
|
<xsl:variable name="depth">
|
|
<xsl:choose>
|
|
<xsl:when test="local-name(.) = 'sect1'">1</xsl:when>
|
|
<xsl:otherwise>0</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
<xsl:variable name="depth.from.context"
|
|
select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
|
|
<li class="{name(.)}">
|
|
<xsl:call-template name="toc.line">
|
|
<xsl:with-param name="toc-context" select="$toc-context"/>
|
|
</xsl:call-template>
|
|
<xsl:if test="$toc.section.depth > $depth and count($nodes)>0
|
|
and $toc.max.depth > $depth.from.context">
|
|
<xsl:copy-of select="$subtoc"/>
|
|
</xsl:if>
|
|
</li>
|
|
</xsl:template>
|
|
|
|
<!--Adding the h* tags and dropping redundats links-->
|
|
<xsl:template name="toc.line">
|
|
<xsl:param name="toc-context" select="."/>
|
|
<xsl:param name="depth" select="1"/>
|
|
<xsl:param name="depth.from.context" select="8"/>
|
|
<xsl:choose>
|
|
<xsl:when test="local-name(.) = 'sect1'">
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="href.target">
|
|
<xsl:with-param name="context" select="$toc-context"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
|
</a>
|
|
</xsl:when>
|
|
<xsl:when test="local-name(.) = 'appendix'">
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="href.target">
|
|
<xsl:with-param name="context" select="$toc-context"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:variable name="label">
|
|
<xsl:apply-templates select="." mode="label.markup"/>
|
|
</xsl:variable>
|
|
<xsl:copy-of select="$label"/>
|
|
<xsl:if test="$label != ''">
|
|
<xsl:value-of select="$autotoc.label.separator"/>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
|
</a>
|
|
</xsl:when>
|
|
<xsl:when test="local-name(.) = 'chapter' or local-name(.) = 'preface'">
|
|
<h4>
|
|
<xsl:variable name="label">
|
|
<xsl:apply-templates select="." mode="label.markup"/>
|
|
</xsl:variable>
|
|
<xsl:copy-of select="$label"/>
|
|
<xsl:if test="$label != ''">
|
|
<xsl:value-of select="$autotoc.label.separator"/>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
|
</h4>
|
|
</xsl:when>
|
|
<xsl:when test="local-name(.) = 'part'">
|
|
<h3>
|
|
<xsl:variable name="label">
|
|
<xsl:apply-templates select="." mode="label.markup"/>
|
|
</xsl:variable>
|
|
<xsl:copy-of select="$label"/>
|
|
<xsl:if test="$label != ''">
|
|
<xsl:value-of select="$autotoc.label.separator"/>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
|
</h3>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<h3>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="href.target">
|
|
<xsl:with-param name="context" select="$toc-context"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:variable name="label">
|
|
<xsl:apply-templates select="." mode="label.markup"/>
|
|
</xsl:variable>
|
|
<xsl:copy-of select="$label"/>
|
|
<xsl:if test="$label != ''">
|
|
<xsl:value-of select="$autotoc.label.separator"/>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
|
</a>
|
|
</h3>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
</xsl:stylesheet>
|