|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
-->
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
|
|
Packit |
e4b6da |
xmlns="http://docbook2x.sourceforge.net/xmlns/Texi-XML"
|
|
Packit |
e4b6da |
exclude-result-prefixes="doc"
|
|
Packit |
e4b6da |
version='1.0'
|
|
Packit |
e4b6da |
xml:lang="en">
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
$Id: lists.xsl,v 1.30 2004/08/22 22:46:07 stevecheng Exp $
|
|
Packit |
e4b6da |
********************************************************************
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
(C) 2000-2004 Steve Cheng <stevecheng@users.sourceforge.net>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
This file is part of the docbook2X XSLT stylesheets for
|
|
Packit |
e4b6da |
converting DocBook to Texinfo.
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
See ../../COPYING for the copyright status of this software.
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
******************************************************************** -->
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<doc:reference xmlns="">
|
|
Packit |
e4b6da |
<title>All sorts of lists</title>
|
|
Packit |
e4b6da |
</doc:reference>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="itemizedlist">
|
|
Packit |
e4b6da |
<xsl:call-template name="formal-object-title" />
|
|
Packit |
e4b6da |
<itemize>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:attribute name="markchar">
|
|
Packit |
e4b6da |
<xsl:text>•</xsl:text>
|
|
Packit |
e4b6da |
</xsl:attribute>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:apply-templates select="listitem"/>
|
|
Packit |
e4b6da |
</itemize>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="orderedlist">
|
|
Packit |
e4b6da |
<xsl:variable name="start">
|
|
Packit |
e4b6da |
<xsl:choose>
|
|
Packit |
e4b6da |
<xsl:when test="@continuation='continues'">
|
|
Packit |
e4b6da |
<xsl:call-template name="orderedlist.starting.number" />
|
|
Packit |
e4b6da |
</xsl:when>
|
|
Packit |
e4b6da |
<xsl:otherwise>1</xsl:otherwise>
|
|
Packit |
e4b6da |
</xsl:choose>
|
|
Packit |
e4b6da |
</xsl:variable>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="formal-object-title" />
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<enumerate>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:if test="$start != '1'">
|
|
Packit |
e4b6da |
<xsl:attribute name="start">
|
|
Packit |
e4b6da |
<xsl:value-of select="$start"/>
|
|
Packit |
e4b6da |
</xsl:attribute>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
<xsl:apply-templates select="listitem"/>
|
|
Packit |
e4b6da |
</enumerate>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="variablelist">
|
|
Packit |
e4b6da |
<xsl:call-template name="formal-object-title" />
|
|
Packit |
e4b6da |
<varlist>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<xsl:apply-templates />
|
|
Packit |
e4b6da |
</varlist>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="listitem">
|
|
Packit |
e4b6da |
<listitem>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</listitem>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="varlistentry">
|
|
Packit |
e4b6da |
<varlistentry>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<xsl:apply-templates />
|
|
Packit |
e4b6da |
</varlistentry>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="varlistentry/term">
|
|
Packit |
e4b6da |
<term><xsl:apply-templates /></term>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="varlistentry/listitem">
|
|
Packit |
e4b6da |
<listitem><xsl:apply-templates/></listitem>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="simplelist[@type='horiz']">
|
|
Packit |
e4b6da |
<xsl:variable name="columns">
|
|
Packit |
e4b6da |
<xsl:choose>
|
|
Packit |
e4b6da |
<xsl:when test="@columns">
|
|
Packit |
e4b6da |
<xsl:value-of select="@columns"/>
|
|
Packit |
e4b6da |
</xsl:when>
|
|
Packit |
e4b6da |
<xsl:otherwise>1</xsl:otherwise>
|
|
Packit |
e4b6da |
</xsl:choose>
|
|
Packit |
e4b6da |
</xsl:variable>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<multitable cols="{$columns}">
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-horiz">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$columns" />
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
</multitable>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="simplelist">
|
|
Packit |
e4b6da |
<xsl:variable name="columns">
|
|
Packit |
e4b6da |
<xsl:choose>
|
|
Packit |
e4b6da |
<xsl:when test="@columns">
|
|
Packit |
e4b6da |
<xsl:value-of select="@columns"/>
|
|
Packit |
e4b6da |
</xsl:when>
|
|
Packit |
e4b6da |
<xsl:otherwise>1</xsl:otherwise>
|
|
Packit |
e4b6da |
</xsl:choose>
|
|
Packit |
e4b6da |
</xsl:variable>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<multitable cols="{$columns}">
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
same width -->
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-vert">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$columns" />
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
</multitable>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="simplelist[@type='inline']">
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template name="simplelist-horiz">
|
|
Packit |
e4b6da |
<xsl:param name="cols">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="cell">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="members" select="./member"/>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:if test="$cell <= count($members)">
|
|
Packit |
e4b6da |
<row>
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-horiz-row">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="cell" select="$cell"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="members" select="$members"/>
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
</row>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-horiz">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="cell" select="$cell + $cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="members" select="$members"/>
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template name="simplelist-horiz-row">
|
|
Packit |
e4b6da |
<xsl:param name="cols">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="cell">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="members" select="./member"/>
|
|
Packit |
e4b6da |
<xsl:param name="curcol">1</xsl:param>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:if test="$curcol <= $cols">
|
|
Packit |
e4b6da |
<entry>
|
|
Packit |
e4b6da |
<xsl:if test="$members[position()=$cell]">
|
|
Packit |
e4b6da |
<xsl:apply-templates select="$members[position()=$cell]"/>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-horiz-row">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="cell" select="$cell+1"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="members" select="$members"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="curcol" select="$curcol+1"/>
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
</entry>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template name="simplelist-vert">
|
|
Packit |
e4b6da |
<xsl:param name="cols">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="cell">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="members" select="./member"/>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
select="floor((count($members)+$cols - 1) div $cols)"/>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:if test="$cell <= $rows">
|
|
Packit |
e4b6da |
<row>
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-vert-row">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="rows" select="$rows"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="cell" select="$cell"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="members" select="$members"/>
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
</row>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-vert">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="cell" select="$cell+1"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="members" select="$members"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="rows" select="$rows"/>
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template name="simplelist-vert-row">
|
|
Packit |
e4b6da |
<xsl:param name="cols">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="rows">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="cell">1</xsl:param>
|
|
Packit |
e4b6da |
<xsl:param name="members" select="./member"/>
|
|
Packit |
e4b6da |
<xsl:param name="curcol">1</xsl:param>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:if test="$curcol <= $cols">
|
|
Packit |
e4b6da |
<entry>
|
|
Packit |
e4b6da |
<xsl:if test="$members[position()=$cell]">
|
|
Packit |
e4b6da |
<xsl:apply-templates select="$members[position()=$cell]"/>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="simplelist-vert-row">
|
|
Packit |
e4b6da |
<xsl:with-param name="cols" select="$cols"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="rows" select="$rows"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="cell" select="$cell+$rows"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="members" select="$members"/>
|
|
Packit |
e4b6da |
<xsl:with-param name="curcol" select="$curcol+1"/>
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
</entry>
|
|
Packit |
e4b6da |
</xsl:if>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="member">
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="simplelist[@type='inline']/member">
|
|
Packit |
e4b6da |
<xsl:call-template name="gentext-text">
|
|
Packit |
e4b6da |
<xsl:with-param name="key" select="'inline-list-separator'" />
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="simplelist[@type='inline']/member[1]" priority="1">
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="procedure">
|
|
Packit |
e4b6da |
<xsl:call-template name="formal-object-title" />
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<enumerate>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</enumerate>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="substeps">
|
|
Packit |
e4b6da |
<enumerate>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</enumerate>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="step">
|
|
Packit |
e4b6da |
<listitem>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
<xsl:call-template name="formal-object-title" />
|
|
Packit |
e4b6da |
<xsl:apply-templates />
|
|
Packit |
e4b6da |
</listitem>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="segmentedlist">
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="segtitle">
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="segtitle" mode="segtitle-in-seg">
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="seglistitem">
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:template match="seg">
|
|
Packit |
e4b6da |
<xsl:variable name="segnum" select="position()"/>
|
|
Packit |
e4b6da |
<xsl:variable name="seglist" select="ancestor::segmentedlist"/>
|
|
Packit |
e4b6da |
<xsl:variable name="segtitles" select="$seglist/segtitle"/>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
Note: segtitle is only going to be the right thing in a well formed
|
|
Packit |
e4b6da |
SegmentedList. If there are too many Segs or too few SegTitles,
|
|
Packit |
e4b6da |
you'll get something odd...maybe an error
|
|
Packit |
e4b6da |
-->
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<para>
|
|
Packit |
e4b6da |
<xsl:call-template name="anchor" />
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
mode="segtitle-in-seg"/>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:call-template name="gentext-text">
|
|
Packit |
e4b6da |
<xsl:with-param name="key" select="'seg-separator'" />
|
|
Packit |
e4b6da |
</xsl:call-template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
<xsl:apply-templates/>
|
|
Packit |
e4b6da |
</para>
|
|
Packit |
e4b6da |
</xsl:template>
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
|
|
Packit |
e4b6da |
</xsl:stylesheet>
|
|
Packit |
e4b6da |
|