diff options
Diffstat (limited to 'doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl')
-rw-r--r-- | doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl | 781 |
1 files changed, 781 insertions, 0 deletions
diff --git a/doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl b/doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl new file mode 100644 index 0000000..5c23e1b --- /dev/null +++ b/doc/editor_configs/serna/scons/docbook-xsl-serna/blocks.xsl @@ -0,0 +1,781 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:fo="http://www.w3.org/1999/XSL/Format" + xmlns:dtm="http://syntext.com/Extensions/DocumentTypeMetadata-1.0" + extension-element-prefixes="dtm" + version='1.0'> + + <dtm:doc dtm:idref="block.object"/> + <xsl:template name="block.object" dtm:id="block.object"> + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="para"/> + <xsl:template match="para" dtm:id="para"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="sconsdoc"/> + <xsl:template match="sconsdoc" dtm:id="sconsdoc"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="simpara"/> + <xsl:template match="simpara" dtm:id="simpara"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="date-releaseinfo"/> + <xsl:template match="date|releaseinfo" dtm:id="date-releaseinfo"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="abstract"/> + <xsl:template match="abstract" dtm:id="abstract"> + <fo:block> + <xsl:choose> + <xsl:when test="title"> + <xsl:apply-templates select="title" mode="plain.formal.title.mode"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="formal.title.gentext"> + <xsl:with-param name="key" select="'abstract'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + <xsl:apply-templates select="*[local-name(.) != 'title']"/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="blockquote"/> + <xsl:template match="blockquote" dtm:id="blockquote"> + <fo:block xsl:use-attribute-sets="blockquote.properties"> + <fo:block> + <xsl:if test="title"> + <fo:block xsl:use-attribute-sets="formal.title.properties"> + <xsl:apply-templates select="title" mode="plain.formal.title.mode"/> + </fo:block> + </xsl:if> + <xsl:apply-templates select="*[not(self::title or self::attribution) + or self::processing-instruction('se:choice')]"/> + </fo:block> + <xsl:if test="attribution"> + <fo:block text-align="right"> + <xsl:text>— </xsl:text> + <xsl:apply-templates select="attribution"/> + </fo:block> + </xsl:if> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="formalpara"/> + <xsl:template match="formalpara" dtm:id="formalpara"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates mode="formalpara"/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="title.formalpara.formalpara"/> + <xsl:template match="formalpara/title" mode="formalpara" dtm:id="title.formalpara.formalpara"> + <xsl:variable name="titleStr" select="."/> + <xsl:variable name="lastChar"> + <xsl:if test="$titleStr != ''"> + <xsl:value-of select="substring($titleStr,string-length($titleStr),1)"/> + </xsl:if> + </xsl:variable> + + <fo:inline font-weight="bold" + keep-with-next.within-line="always" + padding-right="1em"> + <xsl:apply-templates/> + <xsl:if test="$lastChar != '' + and not(contains($title.end.punct, $lastChar))"> + <xsl:value-of select="$default.title.end.punct"/> + </xsl:if> + </fo:inline> + </xsl:template> + + <dtm:doc dtm:idref="para.formalpara.formalpara"/> + <xsl:template match="formalpara/para" mode="formalpara" dtm:id="para.formalpara.formalpara"> + <xsl:choose> + <xsl:when test="itemizedlist|orderedlist|segmentedlist|variablelist"> + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:when> + <xsl:otherwise> + <fo:inline> + <xsl:apply-templates/> + </fo:inline> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <dtm:doc dtm:idref="indexterm.formalpara"/> + <xsl:template match="indexterm" mode="formalpara" dtm:id="indexterm.formalpara"> + <xsl:if test="$show.preamble.editing"> + <fo:block xsl:use-attribute-sets="preamble.attributes"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="name" select="'draftarea'"/> + <xsl:with-param name="context" select="'empty'"/> + </xsl:call-template> + <xsl:text> "</xsl:text> + <xsl:value-of select="local-name(.)"/> + <xsl:text>" </xsl:text> + <xsl:apply-templates/> + </fo:block> + </xsl:if> + </xsl:template> + + <dtm:doc dtm:idref="niwct"/> + <xsl:template match="note|important|warning|caution|tip" dtm:id="niwct"> + <fo:block xsl:use-attribute-sets="note.properties"> + <fo:block xsl:use-attribute-sets="admonition.title.properties"> + <xsl:choose> + <xsl:when test="title[not(self::processing-instruction('se:choice'))]"> + <xsl:apply-templates select="title"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="local-name(.)"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </fo:block> + + <fo:block> + <xsl:apply-templates select="*[not(self::title) + or self::processing-instruction('se:choice')]"/> + </fo:block> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="authorgroup"/> + <xsl:template match="authorgroup" dtm:id="authorgroup"> + <fo:block> + <xsl:apply-templates mode="authorgroup.mode"/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="node.authorgroup-mode"/> + <xsl:template match="node()" mode="authorgroup.mode" dtm:id="node.authorgroup-mode"> + <xsl:apply-templates select='.'/> + <xsl:choose> + <xsl:when test="position() != last()"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:text>.</xsl:text> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <dtm:doc dtm:idref="legalnotice"/> + <xsl:template match="legalnotice" dtm:id="legalnotice"> + <xsl:choose> + <xsl:when test="title"> + <xsl:apply-templates select="title" mode="plain.formal.title.mode"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="formal.title.gentext"> + <xsl:with-param name="key" select="'legalnotice'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + <xsl:apply-templates select="*[not(self::title) + or self::processing-instruction('se:choice')]"/> + </xsl:template> + + <!-- Allow revhistory in context --> + + <dtm:doc dtm:idref="revhistory"/> + <xsl:template match="revhistory" dtm:id="revhistory"> + <xsl:apply-templates select="." mode="rev.mode"/> + </xsl:template> + + <dtm:doc dtm:idref="revhistory.rev-mode"/> + <xsl:template match="revhistory" mode="rev.mode" dtm:id="revhistory.rev-mode"> + <fo:block> + <xsl:call-template name="formal.title.gentext"> + <xsl:with-param name="key" select="'revhistory'"/> + </xsl:call-template> + <xsl:apply-templates select="revision" mode="rev.mode"/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="revision.rev-mode"/> + <xsl:template match="revision" mode="rev.mode" dtm:id="revision.rev-mode"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates mode="rev.mode"/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="revnumber.rev-mode"/> + <xsl:template match="revnumber" mode="rev.mode" dtm:id="revnumber.rev-mode"> + <fo:block> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'revision'"/> + </xsl:call-template> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="authorinitials.rev-mode"/> + <xsl:template match="authorinitials" mode="rev.mode" dtm:id="authorinitials.rev-mode"> + <fo:block> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'revisedby'"/> + </xsl:call-template> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="all.rev-mode"/> + <xsl:template match="*" mode="rev.mode" dtm:id="all.rev-mode"> + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="address"/> + <xsl:template match="address" dtm:id="address"> + <fo:block + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="footnote"/> + <xsl:template match="footnote" dtm:id="footnote"> + <fo:block font-size="{$footnote.font.size}"> + <xsl:if test="@id"> + <fo:inline font-style="italic"> + <xsl:text>[</xsl:text> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'empty'"/> + <xsl:with-param name="name" select="'footnote'"/> + </xsl:call-template> + <xsl:text>: </xsl:text> + <xsl:value-of select="@id"/> + <xsl:text>]</xsl:text> + </fo:inline> + </xsl:if> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="programlisting"/> + <xsl:template match="programlisting|screen|synopsis|literallayout" name="programlisting" dtm:id="programlisting"> + <xsl:choose> + <xsl:when test="$shade.verbatim != 0"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="shade.verbatim.style verbatim.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:when> + <xsl:otherwise> + <fo:block + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <dtm:doc dtm:idref="summary"/> + <xsl:template match="summary" dtm:id="summary"> + <fo:block xsl:use-attribute-sets="admonition.title.properties"> + <xsl:text>Summary</xsl:text> + </fo:block> + + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="builder"/> + <xsl:template match="builder" dtm:id="builder"> + <fo:block xsl:use-attribute-sets="admonition.title.properties"> + <xsl:text>Builder '</xsl:text> + <xsl:value-of select="@name"/> + <xsl:text>'</xsl:text> + </fo:block> + + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="cvar"/> + <xsl:template match="cvar" dtm:id="cvar"> + <fo:block xsl:use-attribute-sets="admonition.title.properties"> + <xsl:text>CVar '</xsl:text> + <xsl:value-of select="@name"/> + <xsl:text>'</xsl:text> + </fo:block> + + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="function"/> + <xsl:template match="function" dtm:id="function"> + <fo:block xsl:use-attribute-sets="admonition.title.properties"> + <xsl:text>Function '</xsl:text> + <xsl:value-of select="@name"/> + <xsl:text>'</xsl:text> + </fo:block> + + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="tool"/> + <xsl:template match="tool" dtm:id="tool"> + <fo:block xsl:use-attribute-sets="admonition.title.properties"> + <xsl:text>Tool '</xsl:text> + <xsl:value-of select="@name"/> + <xsl:text>'</xsl:text> + </fo:block> + + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="scons_example"/> + <xsl:template match="scons_example" name="scons_example" dtm:id="scons_example"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#94caee"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="example_commands"/> + <xsl:template match="example_commands" name="example_commands" dtm:id="example_commands"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#94caee"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="scons_example_file"/> + <xsl:template match="scons_example_file" name="scons_example_file" dtm:id="scons_example_file"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#eed27b"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + + <dtm:doc dtm:idref="scons_output"/> + <xsl:template match="scons_output" name="scons_output" dtm:id="scons_output"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#94caee"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="scons_output_command"/> + <xsl:template match="scons_output_command" name="scons_output_command" dtm:id="scons_output_command"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="shade.verbatim.style verbatim.properties"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="sconstruct"/> + <xsl:template match="sconstruct" name="sconstruct" dtm:id="sconstruct"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#94caee"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="file"/> + <xsl:template match="file" name="file" dtm:id="file"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#eed27b"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="directory"/> + <xsl:template match="directory" name="directory" dtm:id="directory"> + <fo:block + white-space-treatment='preserve' + white-space-collapse='false' + linefeed-treatment="preserve" + xsl:use-attribute-sets="verbatim.properties" + background-color="#eed27b"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + +<dtm:doc dtm:idref="epigraph"/> +<xsl:template match="epigraph" dtm:id="epigraph"> + <fo:block> + <xsl:apply-templates select="para|simpara|formalpara|literallayout"/> + <fo:inline> + <xsl:text>— </xsl:text> + <xsl:apply-templates select="attribution"/> + </fo:inline> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="sidebar"/> +<xsl:template match="sidebar" dtm:id="sidebar"> + <fo:block xsl:use-attribute-sets="sidebar.properties"> + <xsl:if test="./title"> + <fo:block font-weight="bold"> + <xsl:apply-templates select="./title" mode="sidebar.title.mode"/> + </fo:block> + </xsl:if> + + <xsl:apply-templates select="*[not(self::title) + or self::processing-instruction('se:choice')]"/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="title.sidebar.sidebar-title-mode"/> +<xsl:template match="sidebar/title" mode="sidebar.title.mode" dtm:id="title.sidebar.sidebar-title-mode"> + <xsl:apply-templates/> +</xsl:template> + +<dtm:doc dtm:idref="msgset"/> +<xsl:template match="msgset" dtm:id="msgset"> + <xsl:apply-templates/> +</xsl:template> + +<dtm:doc dtm:idref="msgentry"/> +<xsl:template match="msgentry" dtm:id="msgentry"> + <xsl:call-template name="block.object"/> +</xsl:template> + +<dtm:doc dtm:idref="simplemsgentry"/> +<xsl:template match="simplemsgentry" dtm:id="simplemsgentry"> + <xsl:call-template name="block.object"/> +</xsl:template> + +<dtm:doc dtm:idref="msg"/> +<xsl:template match="msg" dtm:id="msg"> + <xsl:call-template name="block.object"/> +</xsl:template> + +<dtm:doc dtm:idref="msgmain"/> +<xsl:template match="msgmain" dtm:id="msgmain"> + <xsl:apply-templates/> +</xsl:template> + +<dtm:doc dtm:idref="msgsub"/> +<xsl:template match="msgsub" dtm:id="msgsub"> + <xsl:apply-templates/> +</xsl:template> + +<dtm:doc dtm:idref="msgrel"/> +<xsl:template match="msgrel" dtm:id="msgrel"> + <xsl:apply-templates/> +</xsl:template> + +<dtm:doc dtm:idref="msgtext"/> +<xsl:template match="msgtext" dtm:id="msgtext"> + <xsl:apply-templates/> +</xsl:template> + +<dtm:doc dtm:idref="msginfo"/> +<xsl:template match="msginfo" dtm:id="msginfo"> + <xsl:call-template name="block.object"/> +</xsl:template> + +<dtm:doc dtm:idref="msglevel"/> +<xsl:template match="msglevel" dtm:id="msglevel"> + <fo:block> + <fo:inline font-weight="bold"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'msglevel'"/> + </xsl:call-template> + </fo:inline> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="msgorig"/> +<xsl:template match="msgorig" dtm:id="msgorig"> + <fo:block> + <fo:inline font-weight="bold"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'msgorig'"/> + </xsl:call-template> + </fo:inline> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="msgaud"/> +<xsl:template match="msgaud" dtm:id="msgaud"> + <fo:block> + <fo:inline font-weight="bold"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'msgaud'"/> + </xsl:call-template> + </fo:inline> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="msgexplan"/> +<xsl:template match="msgexplan" dtm:id="msgexplan"> + <xsl:call-template name="block.object"/> +</xsl:template> + +<dtm:doc dtm:idref="title.msgexplan"/> +<xsl:template match="msgexplan/title" dtm:id="title.msgexplan"> + <fo:block font-weight="bold"> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="ackno"/> +<xsl:template match="ackno" dtm:id="ackno"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="highlights"/> +<xsl:template match="highlights" dtm:id="highlights"> + <xsl:call-template name="block.object"/> +</xsl:template> + +<dtm:doc dtm:idref="calclines"/> +<xsl:template name="calclines" dtm:id="calclines"> + <xsl:param name="marks"/> + <xsl:param name="text" select="text()"/> + <xsl:param name="curline" select="0"/> + <xsl:variable name="lfeed" select="'
'"/> + <xsl:variable name="num" select="concat(' ', $curline, ' ')"/> + <xsl:choose> + <xsl:when test="contains($marks, $num)"> + <xsl:variable name="str" select="concat(substring-before($marks, $num), substring-after($marks, $num))"/> + <xsl:variable name="mark" select="substring-before(substring-after(substring-after($marks, $num), '('), ')')"/> + <xsl:value-of select="concat('(', $mark, ')')"/> + <xsl:call-template name="calclines"> + <xsl:with-param name="marks" select="$str"/> + <xsl:with-param name="text" select="$text"/> + <xsl:with-param name="curline" select="$curline"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="contains($text, $lfeed)"> + <xsl:value-of select="$lfeed"/> + <xsl:call-template name="calclines"> + <xsl:with-param name="marks" select="$marks"/> + <xsl:with-param name="text" select="substring-after($text, $lfeed)"/> + <xsl:with-param name="curline" select="$curline + 1"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> +</xsl:template> + +<dtm:doc dtm:idref="areaspec.calc"/> +<xsl:template match="areaspec" mode="calc" dtm:id="areaspec.calc"> + <xsl:apply-templates mode="calc"/> +</xsl:template> + +<dtm:doc dtm:idref="areaset.calc"/> +<xsl:template match="areaset" mode="calc" dtm:id="areaset.calc"> + <xsl:apply-templates mode="calc"/> + <xsl:value-of select="concat('(', string(position()), ')')"/> +</xsl:template> + +<dtm:doc dtm:idref="area.calc"/> +<xsl:template match="area" mode="calc" dtm:id="area.calc"> + <xsl:variable name="pos" select="number(normalize-space(@coords))"/> + <xsl:if test="not($pos = 'NaN')"> + <xsl:text> </xsl:text> + <xsl:value-of select="string($pos)"/> + <xsl:text> </xsl:text> + </xsl:if> + <xsl:if test="not(parent::areaset)"> + <xsl:value-of select="concat('(', string(position()), ')')"/> + </xsl:if> +</xsl:template> + +<dtm:doc dtm:idref="programlisting.programlistingco"/> +<xsl:template match="programlistingco/programlisting" dtm:id="programlisting.programlistingco"> + <xsl:variable name="marks"> + <xsl:apply-templates select="../areaspec" mode="calc"/> + </xsl:variable> + <xsl:variable name="lines"> + <xsl:call-template name="calclines"> + <xsl:with-param name="marks" select="$marks"/> + </xsl:call-template> + </xsl:variable> + <fo:table> + <fo:table-column column-number="1"/> + <fo:table-column column-number="2" column-width="2cm" /> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <xsl:call-template name="programlisting"/> + </fo:table-cell> + <fo:table-cell> + <fo:block linefeed-treatment="preserve" + xsl:use-attribute-sets="shade.verbatim.style verbatim.properties"> + <xsl:value-of select="$lines"/> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> +</xsl:template> + +<dtm:doc dtm:idref="programlistingco"/> +<xsl:template match="programlistingco|areaspec|areaset|area|screenco" dtm:id="programlistingco"> + <fo:block xsl:use-attribute-sets="normal.para.properties"> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="calloutlist"/> +<xsl:template match="calloutlist" dtm:id="calloutlist"> + <fo:block> + <xsl:apply-templates + select="title[not(self::processing-instruction('se:choice'))]" + mode="plain.formal.title.mode"/> + + <fo:list-block xsl:use-attribute-sets="list.block.spacing" + provisional-label-separation="0.2em"> + <xsl:attribute name="provisional-distance-between-starts"> + <xsl:choose> + <xsl:when test="$label-width != ''"> + <xsl:value-of select="$label-width"/> + </xsl:when> + <xsl:otherwise>2em</xsl:otherwise> + </xsl:choose> + </xsl:attribute> + <xsl:apply-templates select="callout"/> + </fo:list-block> + </fo:block> +</xsl:template> + +<dtm:doc dtm:idref="callout.calloutlist"/> +<xsl:template match="calloutlist/callout" dtm:id="callout.calloutlist"> + <fo:list-item xsl:use-attribute-sets="list.item.spacing"> + <fo:list-item-label end-indent="label-end()"> + <fo:block> + <xsl:variable name="x" select="id(@arearefs)"/> + <xsl:for-each select="$x[1]/parent::*[1]/*"> + <xsl:if test="@id = $x/@id"> + <xsl:value-of select="concat('(', string(position()), ')')"/> + </xsl:if> + </xsl:for-each> + </fo:block> + </fo:list-item-label> + <fo:list-item-body start-indent="body-start()"> + <xsl:apply-templates/> + </fo:list-item-body> + </fo:list-item> +</xsl:template> + +<dtm:doc dtm:idref="co"/> +<xsl:template match="co" dtm:id="co"> + <fo:inline> + <xsl:text>(</xsl:text> + <xsl:value-of select="position() div 2"/> + <xsl:text>)</xsl:text> + </fo:inline> +</xsl:template> + +<!-- Indexterms --> + <dtm:doc dtm:idref="indexterm"/> + <xsl:template match="indexterm" dtm:id="indexterm"> + <xsl:if test="'1' = $show.preamble.editing"> + <fo:block background-color="#e0e0e0" + border-width="1pt" + border-color="black"> + <xsl:choose> + <xsl:when test="@class='endofrange'"> + <xsl:text>End of range</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="startofrange"/> + </xsl:otherwise> + </xsl:choose> + </fo:block> + </xsl:if> + </xsl:template> + + <dtm:doc dtm:idref="primary.startofrange"/> + <xsl:template match="primary" mode="startofrange" dtm:id="primary.startofrange"> + <fo:block> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="tertiary.startofrange"/> + <xsl:template match="tertiary" mode="startofrange" dtm:id="tertiary.startofrange"> + <fo:block start-indent="4em"> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + + <dtm:doc dtm:idref="see.startofrange"/> + <xsl:template match="seealso|see|secondary" mode="startofrange" dtm:id="see.startofrange"> + <fo:block start-indent="2em"> + <xsl:if test="local-name(.)='seealso'"> + <xsl:text>See also: </xsl:text> + </xsl:if> + <xsl:if test="local-name(.)='see'"> + <xsl:text>See: </xsl:text> + </xsl:if> + <xsl:apply-templates/> + </fo:block> + </xsl:template> + +</xsl:stylesheet> |