and $linenumbering.extension != '0'">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf-with-callouts"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
+ <xsl:with-param name="pi.context"
+ select="programlisting|screen"/>
</xsl:call-template>
<xsl:apply-templates select="calloutlist"/>
</xsl:when>
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
- <!-- Obey the <?dbfo linenumbering.everyNth="x"?> PI -->
- <xsl:variable name="pi.linenumbering.everyNth">
- <xsl:call-template name="dbfo-attribute">
- <xsl:with-param name="attribute" select="'everyNth'"/>
- </xsl:call-template>
- </xsl:variable>
-
- <xsl:variable name="everyNth">
- <xsl:choose>
- <xsl:when test="$pi.linenumbering.everyNth != ''">
- <xsl:value-of select="$pi.linenumbering.everyNth"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$linenumbering.everyNth"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
-
- <!-- Obey the <?dbfo linenumbering.separator="x"?> PI -->
- <xsl:variable name="pi.linenumbering.separator">
- <xsl:call-template name="dbfo-attribute">
- <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
- </xsl:call-template>
- </xsl:variable>
-
- <xsl:variable name="separator">
- <xsl:choose>
- <xsl:when test="$pi.linenumbering.separator != ''">
- <xsl:value-of select="$pi.linenumbering.separator"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$linenumbering.separator"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
-
<xsl:choose>
<xsl:when test="$suppress-numbers = '0'
and @linenumbering = 'numbered'
xsl:use-attribute-sets="monospace.verbatim.properties">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$separator"/>
</xsl:call-template>
</fo:block>
</xsl:when>
xsl:use-attribute-sets="monospace.verbatim.properties">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
</xsl:call-template>
</fo:block>
</xsl:when>
xsl:use-attribute-sets="verbatim.properties">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
</xsl:call-template>
</fo:block>
</xsl:otherwise>
xsl:use-attribute-sets="verbatim.properties">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
</xsl:call-template>
</fo:block>
</xsl:when>
<xsl:template name="number.rtf.lines">
<xsl:param name="rtf" select="''"/>
- <!-- the following parameters must have these names ... -->
- <xsl:param name="linenumbering.everyNth" select="1"/>
- <xsl:param name="linenumbering.width" select="3"/>
- <xsl:param name="linenumbering.separator" select="' |'"/>
+ <xsl:param name="pi.context" select="."/>
+
+ <!-- Save the global values -->
+ <xsl:variable name="global.linenumbering.everyNth"
+ select="$linenumbering.everyNth"/>
+
+ <xsl:variable name="global.linenumbering.separator"
+ select="$linenumbering.separator"/>
+
+ <xsl:variable name="global.linenumbering.width"
+ select="$linenumbering.width"/>
+
+ <!-- Extract the <?dbfo linenumbering.*?> PI values -->
+ <xsl:variable name="pi.linenumbering.everyNth">
+ <xsl:call-template name="dbfo-attribute">
+ <xsl:with-param name="pis"
+ select="$pi.context/processing-instruction('dbfo')"/>
+ <xsl:with-param name="attribute" select="'linenumbering.everyNth'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="pi.linenumbering.separator">
+ <xsl:call-template name="dbfo-attribute">
+ <xsl:with-param name="pis"
+ select="$pi.context/processing-instruction('dbfo')"/>
+ <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="pi.linenumbering.width">
+ <xsl:call-template name="dbfo-attribute">
+ <xsl:with-param name="pis"
+ select="$pi.context/processing-instruction('dbfo')"/>
+ <xsl:with-param name="attribute" select="'linenumbering.width'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <!-- Construct the 'in-context' values -->
+ <xsl:variable name="linenumbering.everyNth">
+ <xsl:choose>
+ <xsl:when test="$pi.linenumbering.everyNth != ''">
+ <xsl:value-of select="$pi.linenumbering.everyNth"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$global.linenumbering.everyNth"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="linenumbering.separator">
+ <xsl:choose>
+ <xsl:when test="$pi.linenumbering.separator != ''">
+ <xsl:value-of select="$pi.linenumbering.separator"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$global.linenumbering.separator"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="linenumbering.width">
+ <xsl:choose>
+ <xsl:when test="$pi.linenumbering.width != ''">
+ <xsl:value-of select="$pi.linenumbering.width"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$global.linenumbering.width"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>
<div class="{name(.)}">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf-with-callouts"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
+ <xsl:with-param name="pi.context"
+ select="programlisting|screen"/>
</xsl:call-template>
<xsl:apply-templates select="calloutlist"/>
</div>
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
- <!-- Obey the <?dbhtml linenumbering.everyNth="x"?> PI -->
- <xsl:variable name="pi.linenumbering.everyNth">
- <xsl:call-template name="dbhtml-attribute">
- <xsl:with-param name="attribute" select="'everyNth'"/>
- </xsl:call-template>
- </xsl:variable>
-
- <xsl:variable name="everyNth">
- <xsl:choose>
- <xsl:when test="$pi.linenumbering.everyNth != ''">
- <xsl:value-of select="$pi.linenumbering.everyNth"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$linenumbering.everyNth"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
-
- <!-- Obey the <?dbhtml linenumbering.separator="x"?> PI -->
- <xsl:variable name="pi.linenumbering.separator">
- <xsl:call-template name="dbhtml-attribute">
- <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
- </xsl:call-template>
- </xsl:variable>
-
- <xsl:variable name="separator">
- <xsl:choose>
- <xsl:when test="$pi.linenumbering.separator != ''">
- <xsl:value-of select="$pi.linenumbering.separator"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$linenumbering.separator"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
-
<xsl:if test="@id">
<a href="{$id}"/>
</xsl:if>
<pre class="{name(.)}">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$separator"/>
</xsl:call-template>
</pre>
</xsl:when>
-
<xsl:otherwise>
<pre class="{name(.)}">
<xsl:apply-templates/>
<pre class="{name(.)}">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
</xsl:call-template>
</pre>
</xsl:when>
<div class="{name(.)}">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
</xsl:call-template>
</div>
</xsl:otherwise>
<div class="{name(.)}">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
- <xsl:with-param name="linenumbering.everyNth"
- select="$linenumbering.everyNth"/>
- <xsl:with-param name="linenumbering.width"
- select="$linenumbering.width"/>
- <xsl:with-param name="linenumbering.separator"
- select="$linenumbering.separator"/>
</xsl:call-template>
</div>
</xsl:when>
<xsl:template name="number.rtf.lines">
<xsl:param name="rtf" select="''"/>
- <!-- the following parameters must have these names ... -->
- <xsl:param name="linenumbering.everyNth" select="1"/>
- <xsl:param name="linenumbering.width" select="3"/>
- <xsl:param name="linenumbering.separator" select="' |'"/>
+ <xsl:param name="pi.context" select="."/>
+
+ <!-- Save the global values -->
+ <xsl:variable name="global.linenumbering.everyNth"
+ select="$linenumbering.everyNth"/>
+
+ <xsl:variable name="global.linenumbering.separator"
+ select="$linenumbering.separator"/>
+
+ <xsl:variable name="global.linenumbering.width"
+ select="$linenumbering.width"/>
+
+ <!-- Extract the <?dbhtml linenumbering.*?> PI values -->
+ <xsl:variable name="pi.linenumbering.everyNth">
+ <xsl:call-template name="dbhtml-attribute">
+ <xsl:with-param name="pis"
+ select="$pi.context/processing-instruction('dbhtml')"/>
+ <xsl:with-param name="attribute" select="'linenumbering.everyNth'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="pi.linenumbering.separator">
+ <xsl:call-template name="dbhtml-attribute">
+ <xsl:with-param name="pis"
+ select="$pi.context/processing-instruction('dbhtml')"/>
+ <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="pi.linenumbering.width">
+ <xsl:call-template name="dbhtml-attribute">
+ <xsl:with-param name="pis"
+ select="$pi.context/processing-instruction('dbhtml')"/>
+ <xsl:with-param name="attribute" select="'linenumbering.width'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <!-- Construct the 'in-context' values -->
+ <xsl:variable name="linenumbering.everyNth">
+ <xsl:choose>
+ <xsl:when test="$pi.linenumbering.everyNth != ''">
+ <xsl:value-of select="$pi.linenumbering.everyNth"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$global.linenumbering.everyNth"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="linenumbering.separator">
+ <xsl:choose>
+ <xsl:when test="$pi.linenumbering.separator != ''">
+ <xsl:value-of select="$pi.linenumbering.separator"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$global.linenumbering.separator"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="linenumbering.width">
+ <xsl:choose>
+ <xsl:when test="$pi.linenumbering.width != ''">
+ <xsl:value-of select="$pi.linenumbering.width"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$global.linenumbering.width"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>