mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-01-19 13:37:39 +00:00
7b7c3d88bc
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@4726 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
187 lines
5.4 KiB
XML
187 lines
5.4 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">
|
|
|
|
<!-- screen -->
|
|
<xsl:template match="screen">
|
|
<xsl:choose>
|
|
<xsl:when test="child::* = userinput">
|
|
<pre class="userinput">
|
|
<xsl:apply-templates/>
|
|
</pre>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<pre class="{name(.)}">
|
|
<xsl:apply-templates/>
|
|
</pre>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="userinput">
|
|
<xsl:choose>
|
|
<xsl:when test="ancestor::screen">
|
|
<kbd class="command">
|
|
<xsl:apply-templates/>
|
|
</kbd>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:apply-imports/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<!-- segementedlist -->
|
|
<xsl:template match="seg">
|
|
<xsl:variable name="segnum" select="count(preceding-sibling::seg)+1"/>
|
|
<xsl:variable name="seglist" select="ancestor::segmentedlist"/>
|
|
<xsl:variable name="segtitles" select="$seglist/segtitle"/>
|
|
<!-- Note: segtitle is only going to be the right thing in a well formed
|
|
SegmentedList. If there are too many Segs or too few SegTitles,
|
|
you'll get something odd...maybe an error -->
|
|
<div class="seg">
|
|
<strong>
|
|
<span class="segtitle">
|
|
<xsl:apply-templates select="$segtitles[$segnum=position()]" mode="segtitle-in-seg"/>
|
|
<xsl:text>: </xsl:text>
|
|
</span>
|
|
</strong>
|
|
<span class="seg">
|
|
<xsl:apply-templates/>
|
|
</span>
|
|
</div>
|
|
</xsl:template>
|
|
|
|
|
|
<!-- variablelist -->
|
|
<xsl:template match="variablelist">
|
|
<xsl:choose>
|
|
<xsl:when test="@role">
|
|
<div class="{@role}">
|
|
<xsl:apply-imports/>
|
|
</div>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:apply-imports/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
|
|
<!-- Body attributes -->
|
|
<xsl:template name="body.attributes">
|
|
<xsl:attribute name="id">
|
|
<xsl:text>lfs</xsl:text>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="class">
|
|
<xsl:value-of select="substring-after(/book/bookinfo/subtitle, ' ')"/>
|
|
</xsl:attribute>
|
|
</xsl:template>
|
|
|
|
<!-- External URLs in italic font -->
|
|
<xsl:template match="ulink" name="ulink">
|
|
<a>
|
|
<xsl:if test="@id">
|
|
<xsl:attribute name="id">
|
|
<xsl:value-of select="@id"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
<xsl:attribute name="href"><xsl:value-of select="@url"/></xsl:attribute>
|
|
<i>
|
|
<xsl:choose>
|
|
<xsl:when test="count(child::node())=0">
|
|
<xsl:value-of select="@url"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:apply-templates/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</i>
|
|
</a>
|
|
</xsl:template>
|
|
|
|
<!-- The <code> xhtml tag have look issues in some browsers, like Konqueror and.
|
|
isn't semantically correct (a filename isn't a code fragment) We will use <tt> for now. -->
|
|
<xsl:template name="inline.monoseq">
|
|
<xsl:param name="content">
|
|
<xsl:call-template name="anchor"/>
|
|
<xsl:call-template name="simple.xlink">
|
|
<xsl:with-param name="content">
|
|
<xsl:apply-templates/>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
</xsl:param>
|
|
<tt class="{local-name(.)}">
|
|
<xsl:if test="@dir">
|
|
<xsl:attribute name="dir">
|
|
<xsl:value-of select="@dir"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
<xsl:copy-of select="$content"/>
|
|
</tt>
|
|
</xsl:template>
|
|
|
|
<xsl:template name="inline.boldmonoseq">
|
|
<xsl:param name="content">
|
|
<xsl:call-template name="anchor"/>
|
|
<xsl:call-template name="simple.xlink">
|
|
<xsl:with-param name="content">
|
|
<xsl:apply-templates/>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
</xsl:param>
|
|
<!-- don't put <strong> inside figure, example, or table titles -->
|
|
<!-- or other titles that may already be represented with <strong>'s. -->
|
|
<xsl:choose>
|
|
<xsl:when test="local-name(..) = 'title' and (local-name(../..) = 'figure'
|
|
or local-name(../..) = 'example' or local-name(../..) = 'table' or local-name(../..) = 'formalpara')">
|
|
<tt class="{local-name(.)}">
|
|
<xsl:if test="@dir">
|
|
<xsl:attribute name="dir">
|
|
<xsl:value-of select="@dir"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
<xsl:copy-of select="$content"/>
|
|
</tt>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<strong class="{local-name(.)}">
|
|
<tt>
|
|
<xsl:if test="@dir">
|
|
<xsl:attribute name="dir">
|
|
<xsl:value-of select="@dir"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
<xsl:copy-of select="$content"/>
|
|
</tt>
|
|
</strong>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template name="inline.italicmonoseq">
|
|
<xsl:param name="content">
|
|
<xsl:call-template name="anchor"/>
|
|
<xsl:call-template name="simple.xlink">
|
|
<xsl:with-param name="content">
|
|
<xsl:apply-templates/>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
</xsl:param>
|
|
<em class="{local-name(.)}">
|
|
<tt>
|
|
<xsl:if test="@dir">
|
|
<xsl:attribute name="dir">
|
|
<xsl:value-of select="@dir"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
<xsl:copy-of select="$content"/>
|
|
</tt>
|
|
</em>
|
|
</xsl:template>
|
|
|
|
|
|
</xsl:stylesheet>
|